/* 1. Resets
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
    line-height: 1.15;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
    margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
    display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
    background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
    border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
    /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
    /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
    display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
    display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
    display: none;
}

/* Considered reset
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* As well as using normalize, it is often advantageous to remove all margins from certain elements. */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
dl,
dd,
ol,
ul,
form,
fieldset,
legend,
figure,
table,
th,
td,
caption,
hr {
    margin: 0;
    padding: 0;
}

/* Give a help cursor to elements that give extra info on `:hover`. */
abbr[title],
dfn[title] {
    cursor: help;
}

/* Remove underlines from potentially troublesome elements. */
u,
ins {
    text-decoration: none;
}

/* Apply faux underlines to inserted text via `border-bottom`. */
ins {
    border-bottom: 1px solid;
}

/* 2. Generic
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Colour palettes
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Default Colours */
.primary {
    color: rgba(13, 110, 253, 1);
}

.secondary {
    color: rgba(108, 117, 125, 1);
}

.success {
    color: rgba(25, 135, 84, 1);
}

.danger {
    color: rgba(220, 53, 69, 1);
}

.warning {
    color: rgba(255, 193, 7, 1);
}

.info {
    color: rgba(13, 202, 240, 1);
}

.light {
    color: rgba(248, 249, 250, 1);
}

.dark {
    color: rgba(52, 58, 64, 1);
}

.black {
    color: rgba(33, 37, 41, 1);
}

.white {
    color: rgba(255, 255, 255, 1);
}

.bg--primary {
    background: rgba(13, 110, 253, 1);
}

.bg--secondary {
    background: rgba(108, 117, 125, 1);
}

.bg--success {
    background: rgba(25, 135, 84, 1);
}

.bg--danger {
    background: rgba(220, 53, 69, 1);
}

.bg--warning {
    background: rgba(255, 193, 7, 1);
}

.bg--info {
    background: rgba(13, 202, 240, 1);
}

.bg--light {
    background: rgba(248, 249, 250, 1);
}

.bg--dark {
    background: rgba(52, 58, 64, 1);
}

.bg--black {
    background: rgba(33, 37, 41, 1);
}

.bg--white {
    background: rgba(255, 255, 255, 1);
}

/* Shades of Grey */
.grey000 {
    color: rgba(173, 181, 189, 1);
}

.grey100 {
    color: rgba(248, 249, 250, 1);
}

.grey200 {
    color: rgba(233, 236, 239, 1);
}

.grey300 {
    color: rgba(222, 226, 230, 1);
}

.grey400 {
    color: rgba(206, 212, 218, 1);
}

.grey500 {
    color: rgba(173, 181, 189, 1);
}

.grey600 {
    color: rgba(108, 117, 125, 1);
}

.grey700 {
    color: rgba(73, 80, 87, 1);
}

.grey800 {
    color: rgba(52, 58, 64, 1);
}

.grey900 {
    color: rgba(33, 37, 41, 1);
}

.bg--grey000 {
    background: rgba(173, 181, 189, 1);
}

.bg--grey100 {
    background: rgba(248, 249, 250, 1);
}

.bg--grey200 {
    background: rgba(233, 236, 239, 1);
}

.bg--grey300 {
    background: rgba(222, 226, 230, 1);
}

.bg--grey400 {
    background: rgba(206, 212, 218, 1);
}

.bg--grey500 {
    background: rgba(173, 181, 189, 1);
}

.bg--grey600 {
    background: rgba(108, 117, 125, 1);
}

.bg--grey700 {
    background: rgba(73, 80, 87, 1);
}

.bg--grey800 {
    background: rgba(52, 58, 64, 1);
}

.bg--grey900 {
    background: rgba(33, 37, 41, 1);
}

/* Brand Colours */
.brand-accent: {
    color: rgba(33, 150, 243, 0.2);
}

.brand-blue: {
    color: rgba(41, 92, 137, 1);
}

.brand-turq: {
    color: rgba(161, 212, 228, 1);
}

.brand-grey: {
    color: rgba(90, 94, 94, 1);
}

.brand-sky: {
    color: rgba(96, 185, 240, 1);
}

.bg-brand-accent: {
    background: rgba(33, 150, 243, 0.2);
}

.bg-brand-blue: {
    background: rgba(41, 92, 137, 1);
}

.bg-brand-turq: {
    background: rgba(161, 212, 228, 1);
}

.bg-brand-grey: {
    background: rgba(90, 94, 94, 1);
}

.bg-brand-sky: {
    background: rgba(96, 185, 240, 1);
}

/* Colors
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* A better default palette for the web */
/* Light to dark */
/* Greys */
/* Flat UI palette */
/* Fonts
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* @font-face {
	font-family: "FONT_NAME";
	font-weight: normal;
	font-style: normal;
	src:url("./fonts/FONT_NAME.woff") format("woff"),
		url("./fonts/FONT_NAME.ttf") format("truetype");
} */
/* 3. Config
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Font stacks
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Spacings
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Base global styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Links
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Tables
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Forms
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Layout
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Container Padding */
/* Container Maximum Widths */
/* Responsive Breakpoints */
/* 4. Base
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Top-level page styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
html {
    font-size: 62.5%;
    height: 100%;
    box-sizing: border-box;
}

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

body {
    font-family: "Poppins", "Inter", apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.5;
    color: #10384d;
    min-height: 100%;
    background: #ffffff;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    position: relative;
}

html,
body {
    width: 100%;
    margin: 0px;
    padding: 0px;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

/* Slick Slider Flexbox Fix */
* {
    min-height: 0;
    min-width: 0;
}

/* Stop body scrolling when overlay is active */
body.no-scroll {
    height: 100vh;
    overflow-y: hidden;
}

/* Typography
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Body */
body {
    font-size: 1.4rem;
    line-height: 1.6;
}

@media (min-width: 992px) {
    body {
        font-size: 1.6rem;
    }
}

/* Paragraphs */
p {
    margin-bottom: 2rem;
    transition: all 0.3s ease-in-out;
}

p.large-paragraph {
    font-size: 1.7rem;
    font-weight: 600;
}

@media (min-width: 992px) {
    p.large-paragraph {
        font-size: 1.9rem;
    }
}

/* Headings */
h6,
.h6,
h5,
.h5,
h4,
.h4,
h3,
.h3,
h2,
.h2,
h1,
.h1 {
    margin-top: 0;
    margin-bottom: 2rem;
    font-family: "Poppins", "Inter", apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif;
    font-weight: 700;
    line-height: 1.2;
    color: #10384d;
    transition: all 0.3s ease-in-out;
}

h6 strong,
.h6 strong,
h5 strong,
.h5 strong,
h4 strong,
.h4 strong,
h3 strong,
.h3 strong,
h2 strong,
.h2 strong,
h1 strong,
.h1 strong {
    font-weight: 900;
}

.display-title {
    font-size: 4.5rem;
}

@media (min-width: 768px) {
    .display-title {
        font-size: 5.5rem;
    }
}

@media (min-width: 992px) {
    .display-title {
        font-size: 6rem;
    }
}

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

@media (min-width: 768px) {
    h1,
    .h1 {
        font-size: 4rem;
    }
}

@media (min-width: 992px) {
    h1,
    .h1 {
        font-size: 4.5rem;
    }
}

@media (min-width: 992px) {
    h1,
    .h1 {
        font-size: 5rem;
    }
}

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

@media (min-width: 768px) {
    h2,
    .h2 {
        font-size: 3rem;
    }
}

@media (min-width: 992px) {
    h2,
    .h2 {
        font-size: 3.5rem;
    }
}

@media (min-width: 992px) {
    h2,
    .h2 {
        font-size: 4rem;
    }
}

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

@media (min-width: 768px) {
    h3,
    .h3 {
        font-size: 2.5rem;
    }
}

@media (min-width: 992px) {
    h3,
    .h3 {
        font-size: 3rem;
    }
}

@media (min-width: 992px) {
    h3,
    .h3 {
        font-size: 3.5rem;
    }
}

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

@media (min-width: 768px) {
    h4,
    .h4 {
        font-size: 2rem;
    }
}

@media (min-width: 992px) {
    h4,
    .h4 {
        font-size: 2.5rem;
    }
}

@media (min-width: 992px) {
    h4,
    .h4 {
        font-size: 3rem;
    }
}

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

@media (min-width: 768px) {
    h5,
    .h5 {
        font-size: 1.5rem;
    }
}

@media (min-width: 992px) {
    h5,
    .h5 {
        font-size: 2rem;
    }
}

@media (min-width: 992px) {
    h5,
    .h5 {
        font-size: 2.5rem;
    }
}

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

@media (min-width: 768px) {
    h6,
    .h6 {
        font-size: 1rem;
    }
}

@media (min-width: 992px) {
    h6,
    .h6 {
        font-size: 1.5rem;
    }
}

@media (min-width: 992px) {
    h6,
    .h6 {
        font-size: 2rem;
    }
}

/* Other base typography styles */
p {
    margin-top: 0;
    margin-bottom: 1.5rem;
}

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

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

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: #f1c40f;
}

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

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    transition: all 0.3s ease-in-out;
    color: rgba(41, 92, 137, 1);
    text-decoration: none;
}

a:hover {
    color: rgba(90, 94, 94, 1);
}

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

pre,
code,
kbd,
samp {
    font-family: Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace;
    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: rgba(0, 0, 0, 0.5);
    word-wrap: break-word;
}

a > code {
    color: inherit;
}

kbd {
    padding: 0.1875rem 0.375rem;
    font-size: 0.875em;
    color: #f8fafd;
    background-color: #252525;
    border-radius: 0.25rem;
}

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

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: 1px solid;
    opacity: 0.25;
}

hr.dashed {
    border-bottom-style: dashed;
}

hr.dotted {
    border-bottom-style: dotted;
}

hr.thick {
    border-bottom-width: 2px;
}

/* Images
- - - - - - - - - - - - - - - - - - - - - - - - - */
figure {
    margin: 0 0 1rem;
}

img,
svg {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}

/* Lists
- - - - - - - - - - - - - - - - - - - - - - - - - */
ul,
ol {
    margin-bottom: 2rem;
}

/* Removes any indents and bullet points from lists. */
.list-bare {
    margin: 0;
    padding: 0;
    list-style: none;
    clear: both;
}

/* Displays a list of items in one line. */
.list-inline {
    margin: 0;
    padding: 0;
    list-style: none;
}

.list-inline > li {
    display: inline-block;
}

/* Circle-Checked List */
.list-checked {
    position: relative;
    margin: 0;
    padding: 0;
    list-style: none;
}

.list-checked li {
    display: flex;
    gap: 0.5rem;
    position: relative;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.4rem;
    align-items: center;
    margin-bottom: 0.75rem;
}

@media (min-width: 992px) {
    .list-checked li {
        font-size: 1.6rem;
    }
}

.list-checked li:before {
    content: "\f058";
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
    font-size: 3rem;
    margin-right: 1rem;
    position: relative;
    transition: all 0.2s ease-in-out;
    color: #2ecc71;
}

/* Tables
- - - - - - - - - - - - - - - - - - - - - - - - - */
table {
    caption-side: bottom;
    border-collapse: collapse;
}

caption {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: rgba(0, 0, 0, 0.75);
    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;
}

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

.table {
    background: #f8fafd;
    border-color: #10384d;
    width: 100%;
    margin-bottom: 1rem;
    color: 膵 "Inter", -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif;
    vertical-align: top;
}

.table > tbody {
    vertical-align: inherit;
}

.table > thead {
    vertical-align: bottom;
}

.table-group-divider {
    border-top: 2px solid currentcolor;
}

.caption-top {
    caption-side: top;
}

.table-sm > :not(caption) > * > * {
    padding: 0.25rem 0.25rem;
}

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

/* Tables with very tightly packed cells. */
.table--compact th,
.table--compact td {
    padding: 0.5rem;
}

/* Lightly packed cells. */
.table--cosy th,
.table--cosy td {
    padding: 1rem;
}

/* Tables with very widely padded cells. */
.table--comfy th,
.table--comfy td {
    padding: 2rem;
}

/* Add borders around a `table`. */
.table--cells th,
.table--cells td {
    border: 1px solid #10384d;
}

/* Add borders only to `table`鈥檚 rows. */
.table--rows,
.table--rows th,
.table--rows td {
    border: 0 solid #10384d;
}

.table--rows {
    border-top-width: 1px;
}

.table--rows th,
.table--rows td {
    border-bottom-width: 1px;
}

/* Add borders only to `table`鈥檚 columns. */
.table--columns,
.table--columns th,
.table--columns td {
    border: 0 solid #10384d;
}

.table--columns {
    border-left-width: 1px;
}

.table--columns th,
.table--columns td {
    border-right-width: 1px;
}

/* Forms
- - - - - - - - - - - - - - - - - - - - - - - - - */
.wpcf7-form-control-wrap {
    display: block;
    max-width: 100%;
}

/* Inputs */
input[type="text"],
input[type="email"],
input[type="search"],
input[type="number"],
input[type="password"],
input[type="tel"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="url"],
textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 0;
    outline: none;
    border-radius: 0;
    background: none;
    border: none;

    padding: 1.5rem 0;
    transition: all 0.3s ease-in-out;
    color: rgba(73, 80, 87, 1);
    border-bottom: 1px solid #000;
}

input[type="text"]:hover,
input[type="text"]:focus,
input[type="email"]:hover,
input[type="email"]:focus,
input[type="search"]:hover,
input[type="search"]:focus,
input[type="number"]:hover,
input[type="number"]:focus,
input[type="password"]:hover,
input[type="password"]:focus,
input[type="tel"]:hover,
input[type="tel"]:focus,
input[type="date"]:hover,
input[type="date"]:focus,
input[type="datetime"]:hover,
input[type="datetime"]:focus,
input[type="datetime-local"]:hover,
input[type="datetime-local"]:focus,
input[type="month"]:hover,
input[type="month"]:focus,
input[type="week"]:hover,
input[type="week"]:focus,
input[type="time"]:hover,
input[type="time"]:focus,
input[type="url"]:hover,
input[type="url"]:focus,
textarea:hover,
textarea:focus {
}

.wpcf7-form-control-wrap {
    margin-bottom: 2rem;
}

::-moz-placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: rgba(73, 80, 87, 1);
    opacity: 1;
    /* Firefox */
}

::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: rgba(73, 80, 87, 1);
    opacity: 1;
    /* Firefox */
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: rgba(73, 80, 87, 1);
}

::-ms-input-placeholder {
    /* Microsoft Edge */
    color: rgba(73, 80, 87, 1);
}

/* Select Dropdown */
select {
    /* A reset of styles, including removing the default dropdown arrow */
    /*   appearance: none;
    background-color: transparent;
    border: none;
    */
    padding: 0 1em 0 0;
    background-color: #ffffff;
    border: none;
    border-bottom: 1px solid rgba(222, 226, 230, 1);
    margin: 0;
    width: 100%;
    font-family: inherit;
    font-size: inherit;
    cursor: inherit;
    line-height: inherit;
    margin-bottom: 0;
    padding: 1.5rem 0;

    /* Stack above custom arrow */
    z-index: 1;

    /* Remove focus outline, will add on alternate element */
}

/* Remove dropdown arrow in IE10 & IE11 */
select::-ms-expand {
    display: none;
}

select {
    outline: none;
}

select {
    display: block;
    align-items: center;
    position: relative;

    min-width: 100%;
    max-width: 100%;

    border: 1px solid rgba(222, 226, 230, 1);
    border-radius: 0;
    padding: 1.5rem;
    color: rgba(73, 80, 87, 1);
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

select:hover,
select:focus {
    border: 1px solid rgba(73, 80, 87, 1);
}

select {
    background-color: #10384d;
}

/* Optional styles */
/* remove for transparency */
/* Custom arrow */
select:after {
    content: ">";
    justify-self: end;
    width: 20px;
    height: 15px;
    background-color: #777777;
}

/* Checkbox */
.wpcf7-list-item {
    margin: 0;
    padding: 0;
    margin-bottom: 1rem;
}

label {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    font-size: 1.4rem;
}

label input[type="checkbox"] {
    flex-basis: 20px;
}

label .wpcf7-list-item-label {
    flex-grow: 1;
    position: relative;
    top: -5px;
}

/* Submit Button */
input[type="submit"] {
    position: relative;
    background: none;
    color: #ffffff;
    border: none;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    position: relative;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.3rem;
    padding: 0;
}

input[type="submit"]:hover,
input[type="submit"]:focus {
    color: #ffffff;
    font-weight: 700;
}

input[type="submit"]:hover:before,
input[type="submit"]:focus:before {
    height: 0.2rem;
    left: 0;
    right: 50%;
}

input[type="submit"]:hover:after,
input[type="submit"]:focus:after {
    font-weight: 700;
    margin-left: 2rem;
    position: relative;
}

.wpcf7-submit {
    float: right;
}

.wpcf7-submit:after {
    content: "\f178";
    font-family: "Font Awesome 6 Pro";
    font-weight: 500;
    margin-left: 1rem;
    position: relative;
    transition: all 0.2s ease-in-out;
}

/* Errors */
input[type="text"].wpcf7-not-valid,
input[type="email"].wpcf7-not-valid,
input[type="search"].wpcf7-not-valid,
input[type="number"].wpcf7-not-valid,
input[type="password"].wpcf7-not-valid,
input[type="tel"].wpcf7-not-valid,
input[type="date"].wpcf7-not-valid,
input[type="datetime"].wpcf7-not-valid,
input[type="datetime-local"].wpcf7-not-valid,
input[type="month"].wpcf7-not-valid,
input[type="week"].wpcf7-not-valid,
input[type="time"].wpcf7-not-valid,
input[type="url"].wpcf7-not-valid,
textarea.wpcf7-not-valid {
    border: none;
    border-bottom: 1px solid rgba(220, 53, 69, 1);
}

.wpcf7-not-valid-tip {
    display: none;
}

.wpcf7-response-output {
    border: 1px solid rgba(255, 193, 7, 1);
    background: rgba(255, 193, 7, 1);
    color: #10384d;
    padding: 1.5rem;
    font-weight: 700;
    display: block;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #2ecc71;
    background: #2ecc71;
}

/* Layout
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* 576px and up */
/* 768px and up */
/* 992px and up */
/* 1200px and up */
/* 1400px and up */
/* 1920px and up */
/* Containers */
.container,
.container-normal {
    margin: 0 auto;
    padding: 0 2rem;
    max-width: 100%;
}

@media (min-width: 576px) {
    .container,
    .container-normal {
        max-width: 576px;
    }
}

@media (min-width: 768px) {
    .container,
    .container-normal {
        max-width: 768px;
    }
}

@media (min-width: 992px) {
    .container,
    .container-normal {
        max-width: 992px;
    }
}

@media (min-width: 992px) {
    .container,
    .container-normal {
        max-width: 1200px;
    }
}

@media (min-width: 1400px) {
    .container,
    .container-normal {
        max-width: 1400px;
    }
}

@media (min-width: 1920px) {
    .container,
    .container-normal {
        max-width: 1400px;
    }
}

/* Buttons
- - - - - - - - - - - - - - - - - - - - - - - - - */
a.btn,
.wpcf7-submit {
    padding: 1.5rem 3rem;
    border-width: 2px;
    border-style: solid;
    display: block;
    width: 100%;
    /* margin-bottom: $base-space!important; */
    text-align: center;
    font-size: 1.7rem;
    border-color: #10384d;
    color: #10384d;
    font-weight: 600;
    transition: all 0.2s ease-in-out;
    text-decoration: none;
    border-radius: 0.5rem;
}

a.btn:hover,
a.btn:focus,
.wpcf7-submit:hover,
.wpcf7-submit:focus {
    background: #10384d;
    color: #ffffff;
}

@media (min-width: 576px) {
    a.btn,
    .wpcf7-submit {
        width: auto;
    }
}

@media (min-width: 768px) {
    a.btn,
    .wpcf7-submit {
        display: inline-block;
        max-width: -moz-fit-content;
        max-width: fit-content;
    }
}

a.btn--small,
.wpcf7-submit--small {
    padding: 1rem 1.5rem;
    border-width: 2px;
    font-size: 1.6rem;
}

a.btn--small:hover,
a.btn--small:focus,
.wpcf7-submit--small:hover,
.wpcf7-submit--small:focus {
}

@media (min-width: 768px) {
    a.btn--small,
    .wpcf7-submit--small {
        max-width: -moz-fit-content;
        max-width: fit-content;
    }
}

a.btn--rounded,
.wpcf7-submit--rounded {
    border-radius: 0.5rem;
}

a.btn--black,
.wpcf7-submit--black {
    background: #10384d;
    border-color: #10384d;
    color: #ffffff;
}

a.btn--black:hover,
a.btn--black:focus,
.wpcf7-submit--black:hover,
.wpcf7-submit--black:focus {
    background: none;
    color: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
}

a.btn--white,
.wpcf7-submit--white {
    background: #ffffff;
    border-color: #ffffff;
    color: #10384d;
}

a.btn--white:hover,
a.btn--white:focus,
.wpcf7-submit--white:hover,
.wpcf7-submit--white:focus {
    background: none;
    color: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
}

a.btn--blue,
.wpcf7-submit--blue {
    background: rgba(41, 92, 137, 1);
    border-color: rgba(41, 92, 137, 1);
    color: #ffffff;
}

a.btn--blue:hover,
a.btn--blue:focus,
.wpcf7-submit--blue:hover,
.wpcf7-submit--blue:focus {
    background: none;
    color: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
}

a.btn--grey,
.wpcf7-submit--grey {
    background: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
    color: #ffffff;
}

a.btn--grey:hover,
a.btn--grey:focus,
.wpcf7-submit--grey:hover,
.wpcf7-submit--grey:focus {
    background: none;
    color: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
}

a.btn--light-grey,
.wpcf7-submit--light-grey {
    background: rgba(233, 236, 239, 1);
    border-color: rgba(233, 236, 239, 1);
    color: #10384d;
}

a.btn--light-grey:hover,
a.btn--light-grey:focus,
.wpcf7-submit--light-grey:hover,
.wpcf7-submit--light-grey:focus {
    background: none;
    color: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
}

a.btn--accent,
.wpcf7-submit--accent {
    background: rgba(33, 150, 243, 0.2);
    border-color: rgba(33, 150, 243, 0.2);
    color: #ffffff;
}

a.btn--accent:hover,
a.btn--accent:focus,
.wpcf7-submit--accent:hover,
.wpcf7-submit--accent:focus {
    background: none;
    color: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
}

.generic-content--black a.btn,
.generic-content--black .wpcf7-submit,
.generic-content--blue a.btn,
.generic-content--blue .wpcf7-submit,
.generic-content--grey a.btn,
.generic-content--grey .wpcf7-submit {
    border-color: #ffffff;
    color: #ffffff;
}

.generic-content--black a.btn:hover,
.generic-content--black a.btn:focus,
.generic-content--black .wpcf7-submit:hover,
.generic-content--black .wpcf7-submit:focus,
.generic-content--blue a.btn:hover,
.generic-content--blue a.btn:focus,
.generic-content--blue .wpcf7-submit:hover,
.generic-content--blue .wpcf7-submit:focus,
.generic-content--grey a.btn:hover,
.generic-content--grey a.btn:focus,
.generic-content--grey .wpcf7-submit:hover,
.generic-content--grey .wpcf7-submit:focus {
    background: rgba(73, 80, 87, 1);
    color: #ffffff;
}

.generic-content--black a.btn--black,
.generic-content--black .wpcf7-submit--black,
.generic-content--blue a.btn--black,
.generic-content--blue .wpcf7-submit--black,
.generic-content--grey a.btn--black,
.generic-content--grey .wpcf7-submit--black {
    background: #10384d;
    border-color: #10384d;
    color: #ffffff;
}

.generic-content--black a.btn--black:hover,
.generic-content--black a.btn--black:focus,
.generic-content--black .wpcf7-submit--black:hover,
.generic-content--black .wpcf7-submit--black:focus,
.generic-content--blue a.btn--black:hover,
.generic-content--blue a.btn--black:focus,
.generic-content--blue .wpcf7-submit--black:hover,
.generic-content--blue .wpcf7-submit--black:focus,
.generic-content--grey a.btn--black:hover,
.generic-content--grey a.btn--black:focus,
.generic-content--grey .wpcf7-submit--black:hover,
.generic-content--grey .wpcf7-submit--black:focus {
    background: none;
    color: #ffffff;
    border-color: #ffffff;
}

.generic-content--black a.btn--white,
.generic-content--black .wpcf7-submit--white,
.generic-content--blue a.btn--white,
.generic-content--blue .wpcf7-submit--white,
.generic-content--grey a.btn--white,
.generic-content--grey .wpcf7-submit--white {
    background: #ffffff;
    border-color: #ffffff;
    color: #10384d;
}

.generic-content--black a.btn--white:hover,
.generic-content--black a.btn--white:focus,
.generic-content--black .wpcf7-submit--white:hover,
.generic-content--black .wpcf7-submit--white:focus,
.generic-content--blue a.btn--white:hover,
.generic-content--blue a.btn--white:focus,
.generic-content--blue .wpcf7-submit--white:hover,
.generic-content--blue .wpcf7-submit--white:focus,
.generic-content--grey a.btn--white:hover,
.generic-content--grey a.btn--white:focus,
.generic-content--grey .wpcf7-submit--white:hover,
.generic-content--grey .wpcf7-submit--white:focus {
    background: none;
    color: #ffffff;
    border-color: #ffffff;
}

.generic-content--black a.btn--blue,
.generic-content--black .wpcf7-submit--blue,
.generic-content--blue a.btn--blue,
.generic-content--blue .wpcf7-submit--blue,
.generic-content--grey a.btn--blue,
.generic-content--grey .wpcf7-submit--blue {
    background: rgba(41, 92, 137, 1);
    border-color: rgba(41, 92, 137, 1);
    color: #ffffff;
}

.generic-content--black a.btn--blue:hover,
.generic-content--black a.btn--blue:focus,
.generic-content--black .wpcf7-submit--blue:hover,
.generic-content--black .wpcf7-submit--blue:focus,
.generic-content--blue a.btn--blue:hover,
.generic-content--blue a.btn--blue:focus,
.generic-content--blue .wpcf7-submit--blue:hover,
.generic-content--blue .wpcf7-submit--blue:focus,
.generic-content--grey a.btn--blue:hover,
.generic-content--grey a.btn--blue:focus,
.generic-content--grey .wpcf7-submit--blue:hover,
.generic-content--grey .wpcf7-submit--blue:focus {
    background: none;
    color: #ffffff;
    border-color: #ffffff;
}

.generic-content--black a.btn--grey,
.generic-content--black .wpcf7-submit--grey,
.generic-content--blue a.btn--grey,
.generic-content--blue .wpcf7-submit--grey,
.generic-content--grey a.btn--grey,
.generic-content--grey .wpcf7-submit--grey {
    background: rgba(73, 80, 87, 1);
    border-color: rgba(73, 80, 87, 1);
    color: #ffffff;
}

.generic-content--black a.btn--grey:hover,
.generic-content--black a.btn--grey:focus,
.generic-content--black .wpcf7-submit--grey:hover,
.generic-content--black .wpcf7-submit--grey:focus,
.generic-content--blue a.btn--grey:hover,
.generic-content--blue a.btn--grey:focus,
.generic-content--blue .wpcf7-submit--grey:hover,
.generic-content--blue .wpcf7-submit--grey:focus,
.generic-content--grey a.btn--grey:hover,
.generic-content--grey a.btn--grey:focus,
.generic-content--grey .wpcf7-submit--grey:hover,
.generic-content--grey .wpcf7-submit--grey:focus {
    background: none;
    color: #ffffff;
    border-color: #ffffff;
}

.generic-content--black a.btn--light-grey,
.generic-content--black .wpcf7-submit--light-grey,
.generic-content--blue a.btn--light-grey,
.generic-content--blue .wpcf7-submit--light-grey,
.generic-content--grey a.btn--light-grey,
.generic-content--grey .wpcf7-submit--light-grey {
    background: rgba(233, 236, 239, 1);
    border-color: rgba(233, 236, 239, 1);
    color: #10384d;
}

.generic-content--black a.btn--light-grey:hover,
.generic-content--black a.btn--light-grey:focus,
.generic-content--black .wpcf7-submit--light-grey:hover,
.generic-content--black .wpcf7-submit--light-grey:focus,
.generic-content--blue a.btn--light-grey:hover,
.generic-content--blue a.btn--light-grey:focus,
.generic-content--blue .wpcf7-submit--light-grey:hover,
.generic-content--blue .wpcf7-submit--light-grey:focus,
.generic-content--grey a.btn--light-grey:hover,
.generic-content--grey a.btn--light-grey:focus,
.generic-content--grey .wpcf7-submit--light-grey:hover,
.generic-content--grey .wpcf7-submit--light-grey:focus {
    background: none;
    color: #ffffff;
    border-color: #ffffff;
}

.generic-content--black a.btn--accent,
.generic-content--black .wpcf7-submit--accent,
.generic-content--blue a.btn--accent,
.generic-content--blue .wpcf7-submit--accent,
.generic-content--grey a.btn--accent,
.generic-content--grey .wpcf7-submit--accent {
    background: rgba(33, 150, 243, 0.2);
    border-color: rgba(33, 150, 243, 0.2);
    color: rgba(41, 92, 137, 1);
}

.generic-content--black a.btn--accent:hover,
.generic-content--black a.btn--accent:focus,
.generic-content--black .wpcf7-submit--accent:hover,
.generic-content--black .wpcf7-submit--accent:focus,
.generic-content--blue a.btn--accent:hover,
.generic-content--blue a.btn--accent:focus,
.generic-content--blue .wpcf7-submit--accent:hover,
.generic-content--blue .wpcf7-submit--accent:focus,
.generic-content--grey a.btn--accent:hover,
.generic-content--grey a.btn--accent:focus,
.generic-content--grey .wpcf7-submit--accent:hover,
.generic-content--grey .wpcf7-submit--accent:focus {
    background: none;
    color: #ffffff;
    border-color: #ffffff;
}

/* 5. Helpers
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Helper classes
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Clearfix */
.clearfix:before,
.clearfix:after,
.cf:before,
.cf:after {
    content: "";
    display: table;
}

.clearfix:after,
.cf:after {
    clear: both;
}

/* Hide visually AND from screen readers */
.hidden {
    overflow: hidden;
    display: none;
    visibility: hidden;
}

/* Hide visually BUT NOT from screen readers */
.visuallyhidden,
.screen-reader-text {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/* Hide visually AND from screen readers but maintain layout */
.invisible {
    visibility: hidden;
}

/* Generic separator */
.sep {
    margin: 0 5px;
}

/* Mute an element */
.muted {
    opacity: 0.4;
}

/* Embed Container For Responsive Videos */
.embed-container > p {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}

.embed-container > p iframe,
.embed-container > p object,
.embed-container > p embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Default Transition*/
.trans {
    transition: all 0.2s ease-in-out;
}

.trans--3 {
    transition: all 0.3s ease-in-out;
}

.trans--4 {
    transition: all 0.4s ease-in-out;
}

.trans--5 {
    transition: all 0.5s ease-in-out;
}

/* 6. Vendor
- - - - - - - - - - - - - - - - - - - - - - - - - */
/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the Hippocratic License 2.1 - http://firstdonoharm.dev
 *
 * Copyright (c) 2022 Animate.css
 */
:root {
    --animate-duration: 1s;
    --animate-delay: 1s;
    --animate-repeat: 1;
}

.animate__animated {
    animation-duration: 1s;
    animation-duration: var(--animate-duration);
    animation-fill-mode: both;
}

.animate__animated.animate__infinite {
    animation-iteration-count: infinite;
}

.animate__animated.animate__repeat-1 {
    animation-iteration-count: 1;
    animation-iteration-count: var(--animate-repeat);
}

.animate__animated.animate__repeat-2 {
    animation-iteration-count: calc(1 * 2);
    animation-iteration-count: calc(var(--animate-repeat) * 2);
}

.animate__animated.animate__repeat-3 {
    animation-iteration-count: calc(1 * 3);
    animation-iteration-count: calc(var(--animate-repeat) * 3);
}

.animate__animated.animate__delay-1s {
    animation-delay: 1s;
    animation-delay: var(--animate-delay);
}

.animate__animated.animate__delay-2s {
    animation-delay: calc(1s * 2);
    animation-delay: calc(var(--animate-delay) * 2);
}

.animate__animated.animate__delay-3s {
    animation-delay: calc(1s * 3);
    animation-delay: calc(var(--animate-delay) * 3);
}

.animate__animated.animate__delay-4s {
    animation-delay: calc(1s * 4);
    animation-delay: calc(var(--animate-delay) * 4);
}

.animate__animated.animate__delay-5s {
    animation-delay: calc(1s * 5);
    animation-delay: calc(var(--animate-delay) * 5);
}

.animate__animated.animate__faster {
    animation-duration: calc(1s / 2);
    animation-duration: calc(var(--animate-duration) / 2);
}

.animate__animated.animate__fast {
    animation-duration: calc(1s * 0.8);
    animation-duration: calc(var(--animate-duration) * 0.8);
}

.animate__animated.animate__slow {
    animation-duration: calc(1s * 2);
    animation-duration: calc(var(--animate-duration) * 2);
}

.animate__animated.animate__slower {
    animation-duration: calc(1s * 3);
    animation-duration: calc(var(--animate-duration) * 3);
}

@media print, (prefers-reduced-motion: reduce) {
    .animate__animated {
        animation-duration: 1ms;
        transition-duration: 1ms;
        animation-iteration-count: 1;
    }

    .animate__animated[class*="Out"] {
        opacity: 0;
    }
}

/* Attention seekers  */
@keyframes bounce {
    from,
    20%,
    53%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0);
    }

    40%,
    43% {
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -30px, 0) scaleY(1.1);
    }

    70% {
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        transform: translate3d(0, -15px, 0) scaleY(1.05);
    }

    80% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 0, 0) scaleY(0.95);
    }

    90% {
        transform: translate3d(0, -4px, 0) scaleY(1.02);
    }
}

.animate__bounce {
    animation-name: bounce;
    transform-origin: center bottom;
}

@keyframes flash {
    from,
    50%,
    to {
        opacity: 1;
    }

    25%,
    75% {
        opacity: 0;
    }
}

.animate__flash {
    animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
    from {
        transform: scale3d(1, 1, 1);
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.animate__pulse {
    animation-name: pulse;
    animation-timing-function: ease-in-out;
}

@keyframes rubberBand {
    from {
        transform: scale3d(1, 1, 1);
    }

    30% {
        transform: scale3d(1.25, 0.75, 1);
    }

    40% {
        transform: scale3d(0.75, 1.25, 1);
    }

    50% {
        transform: scale3d(1.15, 0.85, 1);
    }

    65% {
        transform: scale3d(0.95, 1.05, 1);
    }

    75% {
        transform: scale3d(1.05, 0.95, 1);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.animate__rubberBand {
    animation-name: rubberBand;
}

@keyframes shakeX {
    from,
    to {
        transform: translate3d(0, 0, 0);
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(-10px, 0, 0);
    }

    20%,
    40%,
    60%,
    80% {
        transform: translate3d(10px, 0, 0);
    }
}

.animate__shakeX {
    animation-name: shakeX;
}

@keyframes shakeY {
    from,
    to {
        transform: translate3d(0, 0, 0);
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        transform: translate3d(0, -10px, 0);
    }

    20%,
    40%,
    60%,
    80% {
        transform: translate3d(0, 10px, 0);
    }
}

.animate__shakeY {
    animation-name: shakeY;
}

@keyframes headShake {
    0% {
        transform: translateX(0);
    }

    6.5% {
        transform: translateX(-6px) rotateY(-9deg);
    }

    18.5% {
        transform: translateX(5px) rotateY(7deg);
    }

    31.5% {
        transform: translateX(-3px) rotateY(-5deg);
    }

    43.5% {
        transform: translateX(2px) rotateY(3deg);
    }

    50% {
        transform: translateX(0);
    }
}

.animate__headShake {
    animation-timing-function: ease-in-out;
    animation-name: headShake;
}

@keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg);
    }

    40% {
        transform: rotate3d(0, 0, 1, -10deg);
    }

    60% {
        transform: rotate3d(0, 0, 1, 5deg);
    }

    80% {
        transform: rotate3d(0, 0, 1, -5deg);
    }

    to {
        transform: rotate3d(0, 0, 1, 0deg);
    }
}

.animate__swing {
    transform-origin: top center;
    animation-name: swing;
}

@keyframes tada {
    from {
        transform: scale3d(1, 1, 1);
    }

    10%,
    20% {
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    }

    30%,
    50%,
    70%,
    90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }

    40%,
    60%,
    80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.animate__tada {
    animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
    from {
        transform: translate3d(0, 0, 0);
    }

    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    }

    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    }

    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    }

    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    }

    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__wobble {
    animation-name: wobble;
}

@keyframes jello {
    from,
    11.1%,
    to {
        transform: translate3d(0, 0, 0);
    }

    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }

    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg);
    }

    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }

    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }

    66.6% {
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }

    77.7% {
        transform: skewX(0.390625deg) skewY(0.390625deg);
    }

    88.8% {
        transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    }
}

.animate__jello {
    animation-name: jello;
    transform-origin: center;
}

@keyframes heartBeat {
    0% {
        transform: scale(1);
    }

    14% {
        transform: scale(1.3);
    }

    28% {
        transform: scale(1);
    }

    42% {
        transform: scale(1.3);
    }

    70% {
        transform: scale(1);
    }
}

.animate__heartBeat {
    animation-name: heartBeat;
    animation-duration: calc(1s * 1.3);
    animation-duration: calc(var(--animate-duration) * 1.3);
    animation-timing-function: ease-in-out;
}

/* Back entrances */
@keyframes backInDown {
    0% {
        transform: translateY(-1200px) scale(0.7);
        opacity: 0.7;
    }

    80% {
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInDown {
    animation-name: backInDown;
}

@keyframes backInLeft {
    0% {
        transform: translateX(-2000px) scale(0.7);
        opacity: 0.7;
    }

    80% {
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInLeft {
    animation-name: backInLeft;
}

@keyframes backInRight {
    0% {
        transform: translateX(2000px) scale(0.7);
        opacity: 0.7;
    }

    80% {
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInRight {
    animation-name: backInRight;
}

@keyframes backInUp {
    0% {
        transform: translateY(1200px) scale(0.7);
        opacity: 0.7;
    }

    80% {
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInUp {
    animation-name: backInUp;
}

/* Back exits */
@keyframes backOutDown {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    20% {
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: translateY(700px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutDown {
    animation-name: backOutDown;
}

@keyframes backOutLeft {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    20% {
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: translateX(-2000px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutLeft {
    animation-name: backOutLeft;
}

@keyframes backOutRight {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    20% {
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: translateX(2000px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutRight {
    animation-name: backOutRight;
}

@keyframes backOutUp {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    20% {
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }

    100% {
        transform: translateY(-700px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutUp {
    animation-name: backOutUp;
}

/* Bouncing entrances  */
@keyframes bounceIn {
    from,
    20%,
    40%,
    60%,
    80%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1);
    }

    40% {
        transform: scale3d(0.9, 0.9, 0.9);
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03);
    }

    80% {
        transform: scale3d(0.97, 0.97, 0.97);
    }

    to {
        opacity: 1;
        transform: scale3d(1, 1, 1);
    }
}

.animate__bounceIn {
    animation-duration: calc(1s * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    animation-name: bounceIn;
}

@keyframes bounceInDown {
    from,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0) scaleY(3);
    }

    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0) scaleY(0.9);
    }

    75% {
        transform: translate3d(0, -10px, 0) scaleY(0.95);
    }

    90% {
        transform: translate3d(0, 5px, 0) scaleY(0.985);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInDown {
    animation-name: bounceInDown;
}

@keyframes bounceInLeft {
    from,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0) scaleX(3);
    }

    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0) scaleX(1);
    }

    75% {
        transform: translate3d(-10px, 0, 0) scaleX(0.98);
    }

    90% {
        transform: translate3d(5px, 0, 0) scaleX(0.995);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInLeft {
    animation-name: bounceInLeft;
}

@keyframes bounceInRight {
    from,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    from {
        opacity: 0;
        transform: translate3d(3000px, 0, 0) scaleX(3);
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0) scaleX(1);
    }

    75% {
        transform: translate3d(10px, 0, 0) scaleX(0.98);
    }

    90% {
        transform: translate3d(-5px, 0, 0) scaleX(0.995);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInRight {
    animation-name: bounceInRight;
}

@keyframes bounceInUp {
    from,
    60%,
    75%,
    90%,
    to {
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }

    from {
        opacity: 0;
        transform: translate3d(0, 3000px, 0) scaleY(5);
    }

    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }

    75% {
        transform: translate3d(0, 10px, 0) scaleY(0.95);
    }

    90% {
        transform: translate3d(0, -5px, 0) scaleY(0.985);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInUp {
    animation-name: bounceInUp;
}

/* Bouncing exits  */
@keyframes bounceOut {
    20% {
        transform: scale3d(0.9, 0.9, 0.9);
    }

    50%,
    55% {
        opacity: 1;
        transform: scale3d(1.1, 1.1, 1.1);
    }

    to {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }
}

.animate__bounceOut {
    animation-duration: calc(1s * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    animation-name: bounceOut;
}

@keyframes bounceOutDown {
    20% {
        transform: translate3d(0, 10px, 0) scaleY(0.985);
    }

    40%,
    45% {
        opacity: 1;
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }

    to {
        opacity: 0;
        transform: translate3d(0, 2000px, 0) scaleY(3);
    }
}

.animate__bounceOutDown {
    animation-name: bounceOutDown;
}

@keyframes bounceOutLeft {
    20% {
        opacity: 1;
        transform: translate3d(20px, 0, 0) scaleX(0.9);
    }

    to {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0) scaleX(2);
    }
}

.animate__bounceOutLeft {
    animation-name: bounceOutLeft;
}

@keyframes bounceOutRight {
    20% {
        opacity: 1;
        transform: translate3d(-20px, 0, 0) scaleX(0.9);
    }

    to {
        opacity: 0;
        transform: translate3d(2000px, 0, 0) scaleX(2);
    }
}

.animate__bounceOutRight {
    animation-name: bounceOutRight;
}

@keyframes bounceOutUp {
    20% {
        transform: translate3d(0, -10px, 0) scaleY(0.985);
    }

    40%,
    45% {
        opacity: 1;
        transform: translate3d(0, 20px, 0) scaleY(0.9);
    }

    to {
        opacity: 0;
        transform: translate3d(0, -2000px, 0) scaleY(3);
    }
}

.animate__bounceOutUp {
    animation-name: bounceOutUp;
}

/* Fading entrances  */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.animate__fadeIn {
    animation-name: fadeIn;
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInDown {
    animation-name: fadeInDown;
}

@keyframes fadeInDownBig {
    from {
        opacity: 0;
        transform: translate3d(0, -2000px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInDownBig {
    animation-name: fadeInDownBig;
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInLeft {
    animation-name: fadeInLeft;
}

@keyframes fadeInLeftBig {
    from {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInLeftBig {
    animation-name: fadeInLeftBig;
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 0, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInRight {
    animation-name: fadeInRight;
}

@keyframes fadeInRightBig {
    from {
        opacity: 0;
        transform: translate3d(2000px, 0, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInRightBig {
    animation-name: fadeInRightBig;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInUp {
    animation-name: fadeInUp;
}

@keyframes fadeInUpBig {
    from {
        opacity: 0;
        transform: translate3d(0, 2000px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInUpBig {
    animation-name: fadeInUpBig;
}

@keyframes fadeInTopLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, -100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInTopLeft {
    animation-name: fadeInTopLeft;
}

@keyframes fadeInTopRight {
    from {
        opacity: 0;
        transform: translate3d(100%, -100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInTopRight {
    animation-name: fadeInTopRight;
}

@keyframes fadeInBottomLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInBottomLeft {
    animation-name: fadeInBottomLeft;
}

@keyframes fadeInBottomRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInBottomRight {
    animation-name: fadeInBottomRight;
}

/* Fading exits */
@keyframes fadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

.animate__fadeOut {
    animation-name: fadeOut;
}

@keyframes fadeOutDown {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(0, 100%, 0);
    }
}

.animate__fadeOutDown {
    animation-name: fadeOutDown;
}

@keyframes fadeOutDownBig {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(0, 2000px, 0);
    }
}

.animate__fadeOutDownBig {
    animation-name: fadeOutDownBig;
}

@keyframes fadeOutLeft {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, 0, 0);
    }
}

.animate__fadeOutLeft {
    animation-name: fadeOutLeft;
}

@keyframes fadeOutLeftBig {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(-2000px, 0, 0);
    }
}

.animate__fadeOutLeftBig {
    animation-name: fadeOutLeftBig;
}

@keyframes fadeOutRight {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 0, 0);
    }
}

.animate__fadeOutRight {
    animation-name: fadeOutRight;
}

@keyframes fadeOutRightBig {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(2000px, 0, 0);
    }
}

.animate__fadeOutRightBig {
    animation-name: fadeOutRightBig;
}

@keyframes fadeOutUp {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(0, -100%, 0);
    }
}

.animate__fadeOutUp {
    animation-name: fadeOutUp;
}

@keyframes fadeOutUpBig {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(0, -2000px, 0);
    }
}

.animate__fadeOutUpBig {
    animation-name: fadeOutUpBig;
}

@keyframes fadeOutTopLeft {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, -100%, 0);
    }
}

.animate__fadeOutTopLeft {
    animation-name: fadeOutTopLeft;
}

@keyframes fadeOutTopRight {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }

    to {
        opacity: 0;
        transform: translate3d(100%, -100%, 0);
    }
}

.animate__fadeOutTopRight {
    animation-name: fadeOutTopRight;
}

@keyframes fadeOutBottomRight {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 100%, 0);
    }
}

.animate__fadeOutBottomRight {
    animation-name: fadeOutBottomRight;
}

@keyframes fadeOutBottomLeft {
    from {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }

    to {
        opacity: 0;
        transform: translate3d(-100%, 100%, 0);
    }
}

.animate__fadeOutBottomLeft {
    animation-name: fadeOutBottomLeft;
}

/* Flippers */
@keyframes flip {
    from {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        animation-timing-function: ease-out;
    }

    40% {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        animation-timing-function: ease-out;
    }

    50% {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        animation-timing-function: ease-in;
    }

    80% {
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        animation-timing-function: ease-in;
    }

    to {
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        animation-timing-function: ease-in;
    }
}

.animate__animated.animate__flip {
    backface-visibility: visible;
    animation-name: flip;
}

@keyframes flipInX {
    from {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        animation-timing-function: ease-in;
        opacity: 0;
    }

    40% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        animation-timing-function: ease-in;
    }

    60% {
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1;
    }

    80% {
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    }

    to {
        transform: perspective(400px);
    }
}

.animate__flipInX {
    backface-visibility: visible;
    animation-name: flipInX;
}

@keyframes flipInY {
    from {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        animation-timing-function: ease-in;
        opacity: 0;
    }

    40% {
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        animation-timing-function: ease-in;
    }

    60% {
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1;
    }

    80% {
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    }

    to {
        transform: perspective(400px);
    }
}

.animate__flipInY {
    backface-visibility: visible;
    animation-name: flipInY;
}

@keyframes flipOutX {
    from {
        transform: perspective(400px);
    }

    30% {
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
    }

    to {
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0;
    }
}

.animate__flipOutX {
    animation-duration: calc(1s * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    animation-name: flipOutX;
    backface-visibility: visible;
}

@keyframes flipOutY {
    from {
        transform: perspective(400px);
    }

    30% {
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1;
    }

    to {
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0;
    }
}

.animate__flipOutY {
    animation-duration: calc(1s * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    backface-visibility: visible;
    animation-name: flipOutY;
}

/* Lightspeed */
@keyframes lightSpeedInRight {
    from {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }

    60% {
        transform: skewX(20deg);
        opacity: 1;
    }

    80% {
        transform: skewX(-5deg);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__lightSpeedInRight {
    animation-name: lightSpeedInRight;
    animation-timing-function: ease-out;
}

@keyframes lightSpeedInLeft {
    from {
        transform: translate3d(-100%, 0, 0) skewX(30deg);
        opacity: 0;
    }

    60% {
        transform: skewX(-20deg);
        opacity: 1;
    }

    80% {
        transform: skewX(5deg);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__lightSpeedInLeft {
    animation-name: lightSpeedInLeft;
    animation-timing-function: ease-out;
}

@keyframes lightSpeedOutRight {
    from {
        opacity: 1;
    }

    to {
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0;
    }
}

.animate__lightSpeedOutRight {
    animation-name: lightSpeedOutRight;
    animation-timing-function: ease-in;
}

@keyframes lightSpeedOutLeft {
    from {
        opacity: 1;
    }

    to {
        transform: translate3d(-100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
}

.animate__lightSpeedOutLeft {
    animation-name: lightSpeedOutLeft;
    animation-timing-function: ease-in;
}

/* Rotating entrances */
@keyframes rotateIn {
    from {
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateIn {
    animation-name: rotateIn;
    transform-origin: center;
}

@keyframes rotateInDownLeft {
    from {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInDownLeft {
    animation-name: rotateInDownLeft;
    transform-origin: left bottom;
}

@keyframes rotateInDownRight {
    from {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInDownRight {
    animation-name: rotateInDownRight;
    transform-origin: right bottom;
}

@keyframes rotateInUpLeft {
    from {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInUpLeft {
    animation-name: rotateInUpLeft;
    transform-origin: left bottom;
}

@keyframes rotateInUpRight {
    from {
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
    }

    to {
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInUpRight {
    animation-name: rotateInUpRight;
    transform-origin: right bottom;
}

/* Rotating exits */
@keyframes rotateOut {
    from {
        opacity: 1;
    }

    to {
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0;
    }
}

.animate__rotateOut {
    animation-name: rotateOut;
    transform-origin: center;
}

@keyframes rotateOutDownLeft {
    from {
        opacity: 1;
    }

    to {
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
}

.animate__rotateOutDownLeft {
    animation-name: rotateOutDownLeft;
    transform-origin: left bottom;
}

@keyframes rotateOutDownRight {
    from {
        opacity: 1;
    }

    to {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
}

.animate__rotateOutDownRight {
    animation-name: rotateOutDownRight;
    transform-origin: right bottom;
}

@keyframes rotateOutUpLeft {
    from {
        opacity: 1;
    }

    to {
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
}

.animate__rotateOutUpLeft {
    animation-name: rotateOutUpLeft;
    transform-origin: left bottom;
}

@keyframes rotateOutUpRight {
    from {
        opacity: 1;
    }

    to {
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0;
    }
}

.animate__rotateOutUpRight {
    animation-name: rotateOutUpRight;
    transform-origin: right bottom;
}

/* Specials */
@keyframes hinge {
    0% {
        animation-timing-function: ease-in-out;
    }

    20%,
    60% {
        transform: rotate3d(0, 0, 1, 80deg);
        animation-timing-function: ease-in-out;
    }

    40%,
    80% {
        transform: rotate3d(0, 0, 1, 60deg);
        animation-timing-function: ease-in-out;
        opacity: 1;
    }

    to {
        transform: translate3d(0, 700px, 0);
        opacity: 0;
    }
}

.animate__hinge {
    animation-duration: calc(1s * 2);
    animation-duration: calc(var(--animate-duration) * 2);
    animation-name: hinge;
    transform-origin: top left;
}

@keyframes jackInTheBox {
    from {
        opacity: 0;
        transform: scale(0.1) rotate(30deg);
        transform-origin: center bottom;
    }

    50% {
        transform: rotate(-10deg);
    }

    70% {
        transform: rotate(3deg);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

.animate__jackInTheBox {
    animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.animate__rollIn {
    animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    }
}

.animate__rollOut {
    animation-name: rollOut;
}

/* Zooming entrances */
@keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    50% {
        opacity: 1;
    }
}

.animate__zoomIn {
    animation-name: zoomIn;
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInDown {
    animation-name: zoomInDown;
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInLeft {
    animation-name: zoomInLeft;
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInRight {
    animation-name: zoomInRight;
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInUp {
    animation-name: zoomInUp;
}

/* Zooming exits */
@keyframes zoomOut {
    from {
        opacity: 1;
    }

    50% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 0;
    }
}

.animate__zoomOut {
    animation-name: zoomOut;
}

@keyframes zoomOutDown {
    40% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomOutDown {
    animation-name: zoomOutDown;
    transform-origin: center bottom;
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }

    to {
        opacity: 0;
        transform: scale(0.1) translate3d(-2000px, 0, 0);
    }
}

.animate__zoomOutLeft {
    animation-name: zoomOutLeft;
    transform-origin: left center;
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }

    to {
        opacity: 0;
        transform: scale(0.1) translate3d(2000px, 0, 0);
    }
}

.animate__zoomOutRight {
    animation-name: zoomOutRight;
    transform-origin: right center;
}

@keyframes zoomOutUp {
    40% {
        opacity: 1;
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomOutUp {
    animation-name: zoomOutUp;
    transform-origin: center bottom;
}

/* Sliding entrances */
@keyframes slideInDown {
    from {
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInDown {
    animation-name: slideInDown;
}

@keyframes slideInLeft {
    from {
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInLeft {
    animation-name: slideInLeft;
}

@keyframes slideInRight {
    from {
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInRight {
    animation-name: slideInRight;
}

@keyframes slideInUp {
    from {
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInUp {
    animation-name: slideInUp;
}

/* Sliding exits */
@keyframes slideOutDown {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        visibility: hidden;
        transform: translate3d(0, 100%, 0);
    }
}

.animate__slideOutDown {
    animation-name: slideOutDown;
}

@keyframes slideOutLeft {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        visibility: hidden;
        transform: translate3d(-100%, 0, 0);
    }
}

.animate__slideOutLeft {
    animation-name: slideOutLeft;
}

@keyframes slideOutRight {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        visibility: hidden;
        transform: translate3d(100%, 0, 0);
    }
}

.animate__slideOutRight {
    animation-name: slideOutRight;
}

@keyframes slideOutUp {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        visibility: hidden;
        transform: translate3d(0, -100%, 0);
    }
}

.animate__slideOutUp {
    animation-name: slideOutUp;
}

/* Slider */
.slick-slider {
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    display: table;

    content: "";
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* Slider */
.slick-loading .slick-list {
    background: #fff url("../../dist/images/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
    font-family: "slick";
    font-weight: normal;
    font-style: normal;

    src: url("../../images/fonts/slick.eot");
    src: url("../../images/fonts/slick.eot?#iefix") format("embedded-opentype"), url("../../images/fonts/slick.woff") format("woff"), url("../../images/fonts/slick.ttf") format("truetype"), url("../../images/fonts/slick.svg#slick") format("svg");
}

/* Arrows */
.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;

    opacity: 0.75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -25px;
}

[dir="rtl"] .slick-prev {
    right: -25px;
    left: auto;
}

.slick-prev:before {
    content: "鈫�";
}

[dir="rtl"] .slick-prev:before {
    content: "鈫�";
}

.slick-next {
    right: -25px;
}

[dir="rtl"] .slick-next {
    right: auto;
    left: -25px;
}

.slick-next:before {
    content: "鈫�";
}

[dir="rtl"] .slick-next:before {
    content: "鈫�";
}

/* Dots */
.slick-dotted.slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}

.slick-dots li {
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    font-family: "slick";
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: "鈥�";
    text-align: center;

    opacity: 0.25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    opacity: 0.75;
    color: black;
}

.slick-lightbox {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: black;
    transition: opacity 0.5s ease;
}

.slick-lightbox .slick-loading .slick-list {
    background-color: transparent;
}

.slick-lightbox .slick-prev {
    left: 15px;
}

.slick-lightbox .slick-next {
    right: 15px;
}

.slick-lightbox-hide {
    opacity: 0;
}

.slick-lightbox-hide.slick-lightbox-ie {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
}

.slick-lightbox-hide-init {
    position: absolute;
    top: -9999px;
    opacity: 0;
}

.slick-lightbox-hide-init.slick-lightbox-ie {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
}

.slick-lightbox-inner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slick-lightbox-slick-item {
    text-align: center;
    overflow: hidden;
}

.slick-lightbox-slick-item:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -0.25em;
}

.slick-caption-bottom .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    width: 100%;
    margin-bottom: 20px;
}

.slick-caption-dynamic .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
    display: block;
    text-align: center;
}

.slick-lightbox-slick-item-inner {
    display: inline-block;
    vertical-align: middle;
    max-width: 90%;
    max-height: 90%;
}

.slick-lightbox-slick-img {
    margin: 0 auto;
    display: block;
    max-width: 90%;
    max-height: 90%;
}

.slick-lightbox-slick-caption {
    margin: 10px 0 0;
    color: white;
}

.slick-lightbox-close {
    position: absolute;
    top: 15px;
    right: 15px;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0;
    font-size: 0;
    cursor: pointer;
    background: transparent;
    color: transparent;
    padding: 0;
    border: none;
}

.slick-lightbox-close:focus {
    outline: none;
}

.slick-lightbox-close:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.85;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "脳";
}

/* Magnific Popup CSS */
.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: 0.8;
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: none;
    -webkit-backface-visibility: hidden;
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box;
}

.mfp-container:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
    display: none;
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
    width: 100%;
    cursor: auto;
}

.mfp-ajax-cur {
    cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: zoom-out;
}

.mfp-zoom {
    cursor: pointer;
    cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
    cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.mfp-loading.mfp-figure {
    display: none;
}

.mfp-hide {
    display: none;
}

.mfp-preloader {
    color: #ccc;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044;
}

.mfp-preloader a {
    color: #ccc;
}

.mfp-preloader a:hover {
    color: #fff;
}

.mfp-s-ready .mfp-preloader {
    display: none;
}

.mfp-s-error .mfp-content {
    display: none;
}

button.mfp-close,
button.mfp-arrow {
    overflow: visible;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: none;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: 0.65;
    padding: 0 0 18px 10px;
    color: #fff;
    font-style: normal;
    font-size: 28px;
    font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
    opacity: 1;
}

.mfp-close:active {
    top: 1px;
}

.mfp-close-btn-in .mfp-close {
    color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    color: #fff;
    right: -6px;
    text-align: right;
    padding-right: 6px;
    width: 100%;
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
}

.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
    margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
    opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent;
}

.mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px;
}

.mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}

.mfp-arrow-left {
    left: 0;
}

.mfp-arrow-left:after {
    border-right: 17px solid #fff;
    margin-left: 31px;
}

.mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3f3f3f;
}

.mfp-arrow-right {
    right: 0;
}

.mfp-arrow-right:after {
    border-left: 17px solid #fff;
    margin-left: 39px;
}

.mfp-arrow-right:before {
    border-left: 27px solid #3f3f3f;
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
    top: -40px;
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000;
}

/* Main image in popup */
img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
    line-height: 0;
}

.mfp-figure:after {
    content: "";
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444;
}

.mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px;
}

.mfp-figure figure {
    margin: 0;
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto;
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #f3f3f3;
    word-wrap: break-word;
    padding-right: 36px;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
    /**
       * Remove all paddings around the image on small screen
       */
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0;
    }

    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }

    .mfp-img-mobile .mfp-figure:after {
        top: 0;
        bottom: 0;
    }

    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px;
    }

    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box;
    }

    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0;
    }

    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px;
    }

    .mfp-img-mobile .mfp-close {
        top: 0;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        text-align: center;
        padding: 0;
    }
}

@media all and (max-width: 900px) {
    .mfp-arrow {
        transform: scale(0.75);
    }

    .mfp-arrow-left {
        transform-origin: 0;
    }

    .mfp-arrow-right {
        transform-origin: 100%;
    }

    .mfp-container {
        padding-left: 6px;
        padding-right: 6px;
    }
}

/* 7. Theme
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Shared theme styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
.page-entry__content {
    position: relative;
    margin-top: -10px;
}

/* SECTION PADDING */
.section-padding {
    padding: 4rem 0;
}

@media (min-width: 576px) {
    .section-padding {
        padding: 3rem 0;
    }
}

@media (min-width: 768px) {
    .section-padding {
        padding: 6rem 0;
    }
}

@media (min-width: 992px) {
    .section-padding {
        padding: 8rem 0;
    }
}

.section-padding--reduced {
    padding: 4rem 0;
}

@media (min-width: 576px) {
    .section-padding--reduced {
        padding: 4rem 0;
    }
}

@media (min-width: 768px) {
    .section-padding--reduced {
        padding: 4rem 0;
    }
}

@media (min-width: 992px) {
    .section-padding--reduced {
        padding: 4rem 0;
    }
}

.section-padding--top {
    padding-bottom: 0;
}

.section-padding--bottom {
    padding-top: 0;
}

/* SECTION HEADER & TITLE */
.section-header {
    margin-bottom: 4rem;
}

@media (min-width: 576px) {
    .section-header {
        margin-bottom: 3rem;
    }
}

@media (min-width: 768px) {
    .section-header {
        margin-bottom: 6rem;
    }
}

@media (min-width: 992px) {
    .section-header {
        margin-bottom: 8rem;
    }
}

.section-header .section-title {
    color: rgba(41, 92, 137, 1);
}

.section-header > :last-child {
    margin-bottom: 0;
}

.section-header p {
    color: rgba(108, 117, 125, 1);
}

@media (min-width: 992px) {
    .section-header p {
        max-width: 80%;
        margin-left: 10%;
    }
}

@media (min-width: 992px) {
    .section-header p {
        max-width: 70%;
        margin-left: 15%;
    }
}

.section-header p a {
    font-weight: 600;
    color: rgba(41, 92, 137, 1);
    border-bottom: 1px dotted rgba(33, 37, 41, 1);
    padding-bottom: 2px;
}

.section-header p a:hover,
.section-header p a:focus {
    color: #3498db;
    border-bottom: 1px dotted #3498db;
}

/* FONT AWESOME LISTS */
ul {
    margin: 0;
    padding: 0;
    list-style: none;
    list-style-position: outside;
}

ul.list--arrow li {
    color: rgba(108, 117, 125, 1);
}

ul.list--arrow li:before {
    font-family: "Font Awesome 6 Pro";
    display: inline-block;
    margin-right: 1rem;
    vertical-align: middle;
    content: "\f061";
    font-weight: 700;
    color: rgba(41, 92, 137, 1);
}

ul.list--check li {
    color: rgba(108, 117, 125, 1);
}

ul.list--check li:before {
    font-family: "Font Awesome 6 Pro";
    display: inline-block;
    margin-right: 1rem;
    vertical-align: middle;
    content: "\f058";
    font-weight: 700;
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 768px) {
    ul.list--locations {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
    }
}

ul.list--locations li {
    color: rgba(33, 150, 243, 0.2);
    border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
    padding-bottom: 2px;
    font-size: 1.6rem;
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
    display: flex;
}

@media (min-width: 768px) {
    ul.list--locations li {
        flex-basis: 48%;
    }
}

@media (min-width: 992px) {
    ul.list--locations li {
        flex-basis: 32%;
        margin-bottom: 1rem;
        padding-bottom: 1rem;
    }
}

@media (min-width: 992px) {
    ul.list--locations li {
        flex-basis: 22%;
        font-size: 1.5rem;
    }
}

@media (min-width: 992px) {
    ul.list--locations li {
        font-size: 1.6rem;
    }
}

ul.list--locations li:before {
    font-family: "Font Awesome 6 Pro";
    display: inline-block;
    margin-right: 1rem;
    vertical-align: middle;
    content: "\f276";
    font-weight: 700;
    color: rgba(33, 150, 243, 0.2);
}

ul.list--locations li a {
    width: 100%;
    display: block;
    color: #ffffff;
    font-weight: 500;
    padding: 0;
    border: none;
}

ul.list--locations li:hover,
ul.list--locations li:focus,
ul.list--locations li:visited {
    border-bottom: 1px dotted rgba(33, 150, 243, 0.2);
}

ul.list--locations li:hover a,
ul.list--locations li:focus a,
ul.list--locations li:visited a {
    border: none;
    color: rgba(173, 181, 189, 1);
}

/* SITE BREADCRUMBS */
.site-breadcrumbs {
    padding: 0.5rem 0;
    background: rgba(108, 117, 125, 1);
    background: linear-gradient(to top, rgba(73, 80, 87, 1), rgba(52, 58, 64, 1));
}

.site-breadcrumbs p {
    color: #f5f5f5;
    font-size: 1.1rem;
    margin-bottom: 0;
}

.site-breadcrumbs a {
    color: rgba(33, 150, 243, 0.2);
    padding-bottom: 2px;
}

.site-breadcrumbs a:hover,
.site-breadcrumbs a:focus {
    color: rgba(255, 255, 255, 0.5);
}

.site-breadcrumbs .fa-arrow-right {
    margin: 0 0.4rem;
}

/* FLEX CONTAINERS */
.flex {
    display: flex;
}

.flex--centered {
    justify-content: center;
    align-items: center;
}

.flex--space-between {
    justify-content: space-between;
}

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

/* SITE HEADER & FOOTER BRANDING */
.site-header__branding__logo {
    margin-bottom: 0;
    transition: all 0.3s ease-in-out;
}

.site-header__branding__logo__link {
    transition: all 0.3s ease-in-out;
    display: block;
    max-width: 150px;
}

.site-header__branding__logo__link:hover,
.site-header__branding__logo__link:focus {
    transform: scale(0.9);
}

.site-header__branding__logo__link__image {
}

/* Inline Buttons */
@media (min-width: 768px) {
    .inline-buttons {
        display: flex;
        gap: 0 1rem;
    }

    .inline-buttons p:last-child {
        margin-bottom: 0;
    }

    .inline-buttons-centered {
        display: flex;
        gap: 0 1rem;
        justify-content: center;
    }
}

/* USP Bar */
.usp-bar {
    padding: 2rem 0;
    background: rgba(108, 117, 125, 1);
    background: linear-gradient(to bottom, rgba(73, 80, 87, 1), rgba(33, 37, 41, 1));
    background: rgba(33, 150, 243, 0.2);
}

.usp-bar ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.usp-bar ul li {
    text-align: center;
    display: block;
    font-weight: 400;
    font-size: 1.8rem;
    color: rgba(255, 255, 255, 0.9);
    color: black;
}

.usp-bar ul li .fa-duotone {
    color: rgba(255, 255, 255, 1);
    color: rgba(41, 92, 137, 1);
    margin-right: 2rem;
}

@media (min-width: 992px) {
    .usp-bar ul li .fa-duotone {
        margin-right: 1rem;
        font-size: 1.5rem;
    }
}

@media (min-width: 1400px) {
    .usp-bar ul li .fa-duotone {
        margin-right: 1rem;
        font-size: 1.7rem;
    }
}

@media (min-width: 992px) {
    .usp-bar ul li {
        font-size: 1.6rem;
    }
}

@media (min-width: 992px) {
    .usp-bar ul li {
        font-size: 1.4rem;
    }
}

@media (min-width: 1400px) {
    .usp-bar ul li {
        font-size: 1.6rem;
    }
}

.usp-bar ul .slide-navigation {
    position: absolute;
    top: 0;
    cursor: pointer;
    z-index: 10;
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
}

.usp-bar ul .slide-navigation:hover,
.usp-bar ul .slide-navigation:focus {
    opacity: 1;
}

.usp-bar ul .slide-navigation .fa-duotone {
    font-size: 2rem;
    font-weight: 300;
    color: rgba(255, 255, 255, 1);
}

@media (min-width: 992px) {
    .usp-bar ul .slide-navigation .fa-duotone {
        font-size: 3rem;
    }
}

.usp-bar ul .slide-navigation--left {
    border-radius: 100%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    left: -1rem;
}

@media (min-width: 992px) {
    .usp-bar ul .slide-navigation--left {
        left: -1rem;
    }
}

@media (min-width: 992px) {
    .usp-bar ul .slide-navigation--left {
        left: 1rem;
    }
}

.usp-bar ul .slide-navigation--right {
    border-radius: 100%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    right: -1rem;
}

@media (min-width: 992px) {
    .usp-bar ul .slide-navigation--right {
        right: -1rem;
    }
}

@media (min-width: 992px) {
    .usp-bar ul .slide-navigation--right {
        right: 1rem;
    }
}

/* SEARCH RESULTS PAGE */
.page__header__hero__title--search span {
    color: rgba(173, 181, 189, 1);
}

@media (min-width: 992px) {
    .search-result {
        max-width: 70%;
        margin-left: 15%;
    }
}

.search-result__title {
    font-size: 2rem;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgba(233, 236, 239, 1);
    transition: all 0.2s ease;
}

.search-result__title a {
    display: block;
    display: flex;
    justify-content: space-between;
}

.search-result__title:hover,
.search-result__title:focus {
    border-bottom: 1px solid rgba(173, 181, 189, 1);
}

.page__content--search .blog-pagination {
    margin-top: 5rem;
}

@media (min-width: 992px) {
    .page__content--search .blog-pagination {
        max-width: 70%;
        margin-left: 15%;
    }
}

.page-content--search__results__title {
    font-weight: 400;
    color: rgba(73, 80, 87, 1);
}

.page-content--search__results__title span {
    color: rgba(173, 181, 189, 1);
}

@media (min-width: 992px) {
    .page-content--search__results__title {
        margin-bottom: 5rem;
        max-width: 70%;
        margin-left: 15%;
    }
}

/* NUMERIC PAGINATION */
.blog-pagination {
    flex-basis: 100%;
    text-align: center;
    margin-bottom: 40px;
}

@media (min-width: 768px) {
    .blog-pagination {
        margin-bottom: 80px;
    }
}

.blog-pagination li {
    display: inline;
    float: left;
    margin-right: 5px;
    font-size: 1.5rem;
}

@media (min-width: 768px) {
    .blog-pagination li {
        margin-right: 10px;
        font-size: 1.7rem;
    }
}

.blog-pagination li a {
    color: #ffffff;
    padding: 5px 10px;
    border: 2px solid rgba(41, 92, 137, 1);
    border-radius: 2px;
    color: rgba(41, 92, 137, 1);
}

.blog-pagination li.active a,
.blog-pagination li:hover a {
    background: rgba(41, 92, 137, 1);
    color: white;
}

/* REVIEWS.IO BAR WIDGET */
.reviews-io-rating-bar-widget {
    padding: 1.5rem 0;
    background: black;
}

/* 404 PAGE */
.page__header__hero__title--404 {
    font-size: 3rem;
}

@media (min-width: 768px) {
    .page__header__hero__title--404 {
        font-size: 4rem;
    }
}

@media (min-width: 992px) {
    .page__header__hero__title--404 {
        font-size: 4rem;
    }
}

@media (min-width: 992px) {
    .page__header__hero__title--404 {
        font-size: 4rem;
    }
}

/* Pre-title */
.introduction .pre-title {
    text-transform: uppercase;
    font-weight: 500;
    border-top: 4px solid rgba(96, 185, 240, 1);
    padding-top: 1rem;
    margin: 0 auto;
    max-width: 70px;
    margin-bottom: 1rem;
}

.introduction h2 {
    text-transform: uppercase;
}

/* Contact us page */
.contact-us {
    color: white;
}

@media (min-width: 992px) {
    .contact-us {
        padding-top: 30rem;
    }
}

@media (min-width: 992px) {
    .contact-us .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

.contact-us .section-introduction {
    background: none;
}

@media (min-width: 992px) {
    .contact-us .section-introduction {
        flex-basis: 100%;
    }
}

.contact-us h1 {
}

.contact-us h2 span {
    display: inline-block;
    height: 3px;
    width: 30px;
    margin-right: 10px;
    background: rgba(96, 185, 240, 1);
}

.contact-us__left {
    background: rgba(41, 92, 137, 1);
    padding: 2rem;
}

@media (min-width: 992px) {
    .contact-us__left {
        flex-basis: 50%;
    }
}

.contact-us__left h5 {
    color: white;
    border-left: 3px solid rgba(96, 185, 240, 1);
    padding-left: 10px;
    font-size: 2rem;
}

.contact-us__left a {
    color: white;
}

.contact-us__right {
    color: black;
    padding: 2rem;
    background: #f5f5f5;
}

@media (min-width: 992px) {
    .contact-us__right {
        flex-basis: 50%;
    }
}

.contact-us .wpcf7-form-control-wrap {
    margin-bottom: 2rem;
}

.contact-us ::-moz-placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #10384d;
    opacity: 1;
    /* Firefox */
}

.contact-us ::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #10384d;
    opacity: 1;
    /* Firefox */
}

.contact-us :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #10384d;
}

.contact-us ::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #10384d;
}

/* Header theme styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
.site-header {
    display: none;
    background: linear-gradient(to top, #ffffff, #f5f5f5);
    background: rgba(255, 255, 255, 0.5);
    color: #ffffff;
    padding: 2rem 0;
    padding-bottom: 0;
    position: relative;
    z-index: 300;
}

@media (min-width: 768px) {
    .site-header {
        padding: 3rem 0;
        padding-bottom: 0;
    }
}

@media (min-width: 992px) {
    .site-header {
        position: fixed;
        width: 100%;
        background: rgba(255, 255, 255, 0.8);
    }
}

.site-header > .container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 2rem;
}

@media (min-width: 768px) {
    .site-header > .container {
        padding-bottom: 3rem;
    }
}

.site-header__branding {
    flex-basis: 50%;
}

@media (min-width: 992px) {
    .site-header__branding {
        flex: 1;
    }
}

@media (min-width: 992px) {
}

@media (min-width: 768px) {
    .site-header__branding__logo__link {
        max-width: 150px;
    }
}

.site-header__branding__logo__link__image {
}

.site-header__request-a-sample .btn {
    transition: all 0.2s ease-in-out;
    font-size: 1.4rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-right: 1rem;
    padding-left: 1rem;
    color: #ffffff;
    font-weight: 400;
}

.site-header__request-a-sample .btn:hover,
.site-header__request-a-sample .btn:focus {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
    background: none;
    color: rgba(41, 92, 137, 1);
    border-color: rgba(41, 92, 137, 1);
}

.site-header__secondary-nav {
    position: relative;
    display: none;
}

@media (min-width: 992px) {
    .site-header__secondary-nav {
        display: block;
        z-index: 100;
        margin-right: 3rem;
        display: block;
    }
}

@media (min-width: 992px) {
}

.site-header__secondary-nav > ul {
    display: flex;
    gap: 2rem;
}

.site-header__secondary-nav > ul > li {
    position: relative;
    font-size: 1.4rem;
}

@media (min-width: 992px) {
    .site-header__secondary-nav > ul > li {
        font-size: 1.6rem;
    }
}

.site-header__secondary-nav > ul > li > a {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    color: rgba(41, 92, 137, 1);
    padding-bottom: 2px;
    transition: all 0.2s ease-in-out;
    border-bottom: 1px dotted transparent;
}

.site-header__secondary-nav > ul > li > a:hover,
.site-header__secondary-nav > ul > li > a:focus {
    color: rgba(41, 92, 137, 1);
    border-bottom: 1px dotted rgba(41, 92, 137, 1);
}

.site-header__secondary-nav > ul > li > a > .sub-menu-trigger {
    font-size: 1rem;
    display: none;
}

.site-header__secondary-nav > ul > li > ul {
    display: none;
}

@media (min-width: 768px) {
    .site-header__secondary-nav > ul > li > ul {
        position: absolute;
        top: 100%;
        left: 0;
        min-width: 225px;
        background: rgba(41, 92, 137, 1);
        z-index: 100;
    }
}

@media (min-width: 992px) {
    .site-header__secondary-nav > ul > li > ul {
        min-width: 225px;
    }
}

.site-header__secondary-nav > ul > li > ul > li {
    font-size: 1.4rem;
}

@media (min-width: 992px) {
    .site-header__secondary-nav > ul > li > ul > li {
        font-size: 1.5rem;
    }
}

.site-header__secondary-nav > ul > li > ul > li > a {
    display: block;
    padding: 0.5rem 1rem;
    color: #ffffff;
}

@media (min-width: 992px) {
    .site-header__secondary-nav > ul > li > ul > li > a {
        padding: 1rem 1.5rem;
    }
}

.site-header__secondary-nav > ul > li > ul > li > a > .sub-menu-trigger {
    display: none;
}

.site-header__secondary-nav > ul > li > ul > li:hover a,
.site-header__secondary-nav > ul > li > ul > li:focus a {
    background: #ffffff;
    color: rgba(90, 94, 94, 1);
}

.site-header__secondary-nav > ul > li.menu-item-has-children > a > .sub-menu-trigger {
    display: inline-block;
}

.site-header__contact {
    flex-basis: 50%;
}

@media (min-width: 992px) {
    .site-header__contact {
        flex-basis: 30%;
    }
}

.site-header__contact p {
    margin-bottom: 0;
    font-weight: 700;
    line-height: 1.4;
    text-align: right;
}

@media (min-width: 768px) {
    .site-header__contact p {
        font-size: 1.7rem;
    }
}

@media (min-width: 992px) {
    .site-header__contact p {
        font-size: 2rem;
    }
}

.site-header__contact p a {
    display: block;
    color: #ffffff;
}

.site-header__contact p a:hover,
.site-header__contact p a:focus {
    color: rgba(33, 150, 243, 0.2);
}

@media (min-width: 768px) {
    .site-header__contact p a {
        display: inline;
    }
}

.site-header__menu-bar {
    transition: all 0.3s ease-in-out;
}

@media (min-width: 992px) {
    .site-header__menu-bar {
        padding: 1rem 0;
    }
}

.site-header__menu-bar > .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.site-header__menu-bar__hamburger {
    flex-basis: 60px;
}

@media (min-width: 992px) {
    .site-header__menu-bar__hamburger {
        flex-basis: 0px;
    }
}

.site-header__menu-bar__hamburger .ham {
    position: relative;
    left: -1.6rem;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: transform 400ms;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.site-header__menu-bar__hamburger .ham .line {
    transition: all 0.3s ease-in-out;
    fill: none;
    transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
    stroke: rgba(41, 92, 137, 1);
    stroke-width: 4.5;
    stroke-linecap: round;
}

.site-header__menu-bar__hamburger .ham:hover .line,
.site-header__menu-bar__hamburger .ham:focus .line {
    stroke: #e74c3c;
}

.site-header__menu-bar__hamburger .ham .top {
    stroke-dasharray: 40 121;
}

.site-header__menu-bar__hamburger .ham .bottom {
    stroke-dasharray: 40 121;
}

.site-header__menu-bar__hamburger .ham.active {
    transform: rotate(45deg);
}

.site-header__menu-bar__hamburger .ham.active .line {
    stroke: #e74c3c;
}

.site-header__menu-bar__hamburger .ham.active .top {
    stroke-dashoffset: -68px;
}

.site-header__menu-bar__hamburger .ham.active .bottom {
    stroke-dashoffset: -68px;
}

.site-header__menu-bar__navigation {
    display: none;
}

@media (min-width: 992px) {
    .site-header__menu-bar__navigation {
        display: block;
        flex: 1;
    }
}

.site-header__menu-bar__navigation > ul {
    display: flex;
    gap: 3rem;
}

.site-header__menu-bar__navigation > ul > li {
    position: relative;
    font-weight: 500;
}

@media (min-width: 992px) {
    .site-header__menu-bar__navigation > ul > li {
        font-size: 1.8rem;
    }
}

.site-header__menu-bar__navigation > ul > li > a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.2s ease-in-out;
    color: rgba(255, 255, 255, 0.6);
    color: rgba(41, 92, 137, 1);
}

.site-header__menu-bar__navigation > ul > li > a:hover,
.site-header__menu-bar__navigation > ul > li > a:focus {
    color: rgba(173, 181, 189, 1);
}

.site-header__menu-bar__navigation > ul > li > a > .sub-menu-trigger {
    font-size: 1.2rem;
}

.site-header__menu-bar__navigation > ul > li > ul {
    display: none;
}

@media (min-width: 768px) {
    .site-header__menu-bar__navigation > ul > li > ul {
        position: absolute;
        top: 100%;
        left: 0;
        min-width: -moz-fit-content;
        min-width: fit-content;
        background: rgba(41, 92, 137, 1);
    }
}

@media (min-width: 992px) {
    .site-header__menu-bar__navigation > ul > li > ul {
        min-width: 225px;
    }
}

.site-header__menu-bar__navigation > ul > li > ul > li {
    font-size: 1.4rem;
}

@media (min-width: 992px) {
    .site-header__menu-bar__navigation > ul > li > ul > li {
        font-size: 1.5rem;
    }
}

.site-header__menu-bar__navigation > ul > li > ul > li > a {
    display: block;
    padding: 0.5rem 1rem;
    color: #ffffff;
}

@media (min-width: 992px) {
    .site-header__menu-bar__navigation > ul > li > ul > li > a {
        padding: 1rem 1.5rem;
    }
}

.site-header__menu-bar__navigation > ul > li > ul > li > a > .sub-menu-trigger {
    display: none;
}

.site-header__menu-bar__navigation > ul > li > ul > li:hover a,
.site-header__menu-bar__navigation > ul > li > ul > li:focus a {
    background: #ffffff;
    color: rgba(90, 94, 94, 1);
}

.site-header__menu-bar__navigation > ul > li.menu-item-has-children > a > .sub-menu-trigger {
    display: inline-block;
}

.site-header__menu-bar__search {
    position: relative;
    flex: 1;
}

@media (min-width: 768px) {
    .site-header__menu-bar__search {
        flex: none;
        flex-basis: 40%;
    }
}

.site-header__menu-bar__search form {
    display: flex;
}

.site-header__menu-bar__search input {
    width: 100%;
    height: 30px;
    border-radius: 5px;
    padding: 0 2rem;
    background: rgba(0, 0, 0, 0.1);
    color: rgba(41, 92, 137, 1);
    border: 1px solid transparent;
    font-size: 1.4rem;
    transition: all 0.3s ease-in-out;
}

.site-header__menu-bar__search input:hover,
.site-header__menu-bar__search input:focus {
    background: rgba(255, 255, 255, 0);
    border: 1px solid rgba(41, 92, 137, 1);
}

.site-header__menu-bar__search button {
    font-size: 1.5rem;
    position: absolute;
    right: 0;
    border: none;
    background: none;
    bottom: 0;
    top: 0;
    width: 50px;
    color: rgba(41, 92, 137, 1);
}

.site-header__menu-bar__search ::-moz-placeholder {
    color: rgba(41, 92, 137, 1);
    opacity: 0.5;
}

.site-header__menu-bar__search ::placeholder {
    color: rgba(41, 92, 137, 1);
    opacity: 0.5;
}

.site-header__menu-bar__search :-ms-input-placeholder {
    color: rgba(41, 92, 137, 1);
}

.site-header__menu-bar__search ::-ms-input-placeholder {
    color: rgba(41, 92, 137, 1);
}

/* Main Menu */
/* MAIN MENU MOBILE */
.main-menu--mobile {
    display: none;
    background: #ffffff;
    padding: 0 0 3rem 0;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    padding-top: 26rem;
    overflow: scroll;
}

@media (min-width: 768px) {
    .main-menu--mobile {
        padding-top: 25rem;
    }
}

@media (min-width: 992px) {
    .main-menu--mobile {
        display: none;
    }
}

.main-menu--mobile .container {
}

.main-menu--mobile ul > li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.8rem;
    flex-wrap: wrap;
}

.main-menu--mobile ul > li > a {
    display: flex;
    font-weight: 600;
    flex-grow: 1;
    justify-content: space-between;
    padding: 1.5rem 0;
    color: rgba(41, 92, 137, 1);
}

.main-menu--mobile ul > li > a > .sub-menu-trigger {
    flex-basis: 18px;
    color: rgba(108, 117, 125, 1);
}

.main-menu--desktop {
    background: white;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 200;
}

.main-menu__block {
    display: none;
}

@media (min-width: 992px) {
    .main-menu__block {
        display: flex;
        flex-wrap: wrap;
        padding-top: 5rem;
        justify-content: space-between;
        padding-top: 28rem;
    }
}

.main-menu__block h4 {
    background: rgba(0, 0, 0, 0.05);
    padding: 2rem;
    border-radius: 5px;
    color: rgba(41, 92, 137, 1);
    font-size: 2rem;
}

@media (min-width: 992px) {
    .main-menu__block h4 {
        flex-basis: 100%;
        background: none;
        padding: 0;
        border-radius: 0;
        font-size: 2.4rem;
        margin-bottom: 4rem;
    }
}

@media (min-width: 1400px) {
    .main-menu__block h4 {
        font-size: 3rem;
    }
}

.main-menu__block__subitem {
    margin-bottom: 3rem;
}

@media (min-width: 992px) {
    .main-menu__block__subitem {
        flex-basis: 24%;
    }
}

.main-menu__block__subitem h5 {
    font-size: 1.8rem;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
    border-bottom: 1px solid rgba(222, 226, 230, 1);
}

@media (min-width: 992px) {
    .main-menu__block__subitem h5 {
        min-height: 65px;
    }
}

.main-menu__block__subitem p {
    font-size: 1.6rem;
    color: rgba(108, 117, 125, 1);
}

@media (min-width: 992px) {
    .main-menu__block__subitem p {
        font-size: 1.4rem;
        min-height: 75px;
    }
}

@media (min-width: 1400px) {
    .main-menu__block__subitem p {
        font-size: 1.6rem;
        min-height: 80px;
    }
}

.main-menu__block__subitem .btn {
    font-size: 1.4rem;
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .main-menu__block__subitem .btn {
        font-size: 1.2rem;
        width: 100%;
        max-width: 100%;
        padding: 1rem;
        display: flex;
        align-items: center;
        justify-content: space-around;
    }
}

@media (min-width: 1400px) {
    .main-menu__block__subitem .btn {
        font-size: 1.4rem;
    }
}

/* MAIN HEADER */
.main-header {
    position: relative;
    padding: 2rem 0;
    position: fixed;
    width: 100%;
    background: rgba(255, 255, 255, 0.7);
    z-index: 201;
}

/* Main Header Fixed On-Scroll */
.main-header.fixed {
    background: white;
    position: fixed;
    width: 100%;
    z-index: 300;
    padding: 1rem 0;
    /* padding-bottom: 0; */
}

.main-header.fixed > .container {
    padding-bottom: 2rem;
}

/* Main Header Container */
.main-header .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

@media (min-width: 992px) {
    .main-header .container {
        justify-content: flex-end;
        gap: 0 2.5rem;
    }
}

/* Main Header Secondary Navigation */
.main-header__secondary-navigation {
    display: none;
    padding: 2rem 0;
}

@media (min-width: 992px) {
    .main-header__secondary-navigation {
        display: block;
        flex-basis: 100%;
    }
}

@media (min-width: 992px) {
    .main-header__secondary-navigation {
        padding-bottom: 0;
    }
}

.main-header__secondary-navigation ul {
    display: flex;
    gap: 1.5rem;
    justify-content: flex-end;
}

.main-header__secondary-navigation ul li a {
    color: rgba(41, 92, 137, 1);
    transition: all 0.2s ease-in-out;
    border-bottom: 1px dotted transparent;
}

.main-header__secondary-navigation ul li a:hover,
.main-header__secondary-navigation ul li a:focus {
    color: rgba(41, 92, 137, 1);
    /* border-bottom: 1px dotted rgba(41, 92, 137, 1); */
}

/* Main Header Branding */
.main-header__branding {
    margin-bottom: 1rem;
    flex-basis: 100%;
}

@media (min-width: 992px) {
    .main-header__branding {
        flex-basis: 120px;
    }
}

@media (min-width: 992px) {
    .main-header__branding {
        flex-grow: 1;
    }
}

.main-header__branding__logo {
    margin-bottom: 0;
}

.main-header__branding__logo__link {
    display: block;
    max-width: 130px;
}

.main-header__branding__logo__link__image {
}

/* Main Header Main Navigation */
.main-header__main-navigation--desktop {
    display: none;
}

@media (min-width: 992px) {
    .main-header__main-navigation--desktop {
        display: block;
        flex-basis: 470px;
    }
}

@media (min-width: 992px) {
    .main-header__main-navigation--desktop {
        flex-basis: 475px;
    }
}

.main-header__main-navigation--desktop > ul {
    display: flex;
    gap: 2rem;
}

.main-header__main-navigation--desktop > ul > li {
    position: relative;
    font-weight: 500;
}

@media (min-width: 992px) {
    .main-header__main-navigation--desktop > ul > li {
        font-size: 1.5rem;
    }
}

@media (min-width: 992px) {
    .main-header__main-navigation--desktop > ul > li {
        font-size: 1.7rem;
    }
}

.main-header__main-navigation--desktop > ul > li > a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.2s ease-in-out;
    color: rgba(255, 255, 255, 0.6);
    color: rgba(41, 92, 137, 1);
}

.main-header__main-navigation--desktop > ul > li > a:hover,
.main-header__main-navigation--desktop > ul > li > a:focus {
    color: rgba(173, 181, 189, 1);
}

.main-header__main-navigation--desktop > ul > li > a > .sub-menu-trigger {
    font-size: 1.2rem;
}

/* Main Header Search */
.main-header__search {
    position: relative;
    flex-basis: 100%;
}

@media (min-width: 992px) {
    .main-header__search {
        flex-basis: 160px;
    }
}

@media (min-width: 992px) {
    .main-header__search {
        flex-basis: 230px;
    }
}

@media (min-width: 1400px) {
    .main-header__search {
        flex-basis: 300px;
    }
}

.main-header__search form {
    display: flex;
}

.main-header__search input {
    width: 100%;
    height: 40px;
    border-radius: 5px;
    padding: 0 2rem;
    background: rgba(0, 0, 0, 0.1);
    color: rgba(41, 92, 137, 1);
    border: 1px solid transparent;
    font-size: 1.4rem;
    transition: all 0.3s ease-in-out;
}

.main-header__search input:hover,
.main-header__search input:focus {
    background: rgba(255, 255, 255, 0);
    border: 1px solid rgba(41, 92, 137, 1);
}

.main-header__search button {
    font-size: 1.5rem;
    position: absolute;
    right: 0;
    border: none;
    background: none;
    bottom: 0;
    top: 0;
    width: 50px;
    color: rgba(41, 92, 137, 1);
}

.main-header__search ::-moz-placeholder {
    color: rgba(41, 92, 137, 1);
    opacity: 0.5;
}

.main-header__search ::placeholder {
    color: rgba(41, 92, 137, 1);
    opacity: 0.5;
}

.main-header__search :-ms-input-placeholder {
    color: rgba(41, 92, 137, 1);
}

.main-header__search ::-ms-input-placeholder {
    color: rgba(41, 92, 137, 1);
}

/* Main Header Hamburger */
.main-header__hamburger {
    flex-basis: 60px;
}

@media (min-width: 992px) {
    .main-header__hamburger {
        display: none;
    }
}

.main-header__hamburger .ham {
    position: relative;
    left: -1.6rem;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: transform 400ms;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.main-header__hamburger .ham .line {
    transition: all 0.3s ease-in-out;
    fill: none;
    transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
    stroke: rgba(41, 92, 137, 1);
    stroke-width: 4.5;
    stroke-linecap: round;
}

.main-header__hamburger .ham:hover .line,
.main-header__hamburger .ham:focus .line {
    stroke: #e74c3c;
}

.main-header__hamburger .ham .top {
    stroke-dasharray: 40 121;
}

.main-header__hamburger .ham .bottom {
    stroke-dasharray: 40 121;
}

.main-header__hamburger .ham.active {
    transform: rotate(45deg);
}

.main-header__hamburger .ham.active .line {
    stroke: #e74c3c;
}

.main-header__hamburger .ham.active .top {
    stroke-dashoffset: -68px;
}

.main-header__hamburger .ham.active .bottom {
    stroke-dashoffset: -68px;
}

/* Main Header Request A Sample */
.main-header__request-a-sample {
    flex-basis: 200px;
    text-align: right;
}

@media (min-width: 992px) {
    .main-header__request-a-sample {
        flex-basis: 125px;
    }
}

@media (min-width: 992px) {
    .main-header__request-a-sample {
        flex-basis: 145px;
    }
}

@media (min-width: 1400px) {
    .main-header__request-a-sample {
        flex-basis: 165px;
    }
}

.main-header__request-a-sample .btn {
    padding: 0.5rem;
    border-radius: 0.5rem;
}

@media (min-width: 992px) {
    .main-header__request-a-sample .btn {
        font-size: 1.2rem;
    }
}

@media (min-width: 992px) {
    .main-header__request-a-sample .btn {
        font-size: 1.4rem;
    }
}

@media (min-width: 1400px) {
    .main-header__request-a-sample .btn {
        max-width: 100%;
        padding: 0.5rem 1rem;
    }
}

/* Footer theme styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
.site-footer {
    background: white;
}

@media (min-width: 992px) {
    .site-footer .container {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.site-footer__branding {
    margin-bottom: 3rem;
}

.site-footer__branding__logo {
    margin-bottom: 2rem;
}

.site-footer__branding__logo__link {
    display: block;
    max-width: 250px;
}

.site-footer__branding__logo__link__image {
}

.site-footer__branding__social ul {
    display: flex;
    gap: 1.5rem;
}

.site-footer__branding__social ul li a {
    width: 50px;
    height: 50px;
    background: rgba(233, 236, 239, 1);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.site-footer__branding__social ul li a .fa-brands {
}

.site-footer__links__contact {
    margin-bottom: 2rem;
}

.site-footer__links__contact h4 {
    font-size: 2rem;
    border-left: 4px solid rgba(96, 185, 240, 1);
    padding-left: 1.5rem;
}

.site-footer__links__contact ul li a .fa-regular {
    margin-right: 1rem;
}

.site-footer__links__menu {
    margin-bottom: 2rem;
}

.site-footer__links__menu h4 {
    font-size: 2rem;
    border-left: 4px solid rgba(96, 185, 240, 1);
    padding-left: 1.5rem;
}

@media (min-width: 992px) {
    .site-footer__links__menu__navigation ul {
        display: flex;
        gap: 1rem;
    }
}

@media (min-width: 992px) {
    .site-footer__links__menu__navigation ul li {
        font-size: 1.4rem;
    }
}

.site-footer__links__menu__navigation ul li a {
}

.site-footer__links__menu__navigation ul li .sep {
}

@media (min-width: 992px) {
    .site-footer__newsletter {
        flex-basis: 30%;
    }
}

.site-footer__newsletter h4 {
    font-size: 2rem;
    border-left: 4px solid rgba(96, 185, 240, 1);
    padding-left: 1.5rem;
}

.site-footer__newsletter p {
}

.site-footer__newsletter form {
    display: flex;
    position: relative;
}

.site-footer__newsletter input {
    width: 100%;
    height: 55px;
    border-radius: 5px;
    padding: 0 2rem;
    background: rgba(0, 0, 0, 0.1);
    color: rgba(41, 92, 137, 1);
    border: 1px solid transparent;
    font-size: 1.4rem;
    transition: all 0.3s ease-in-out;
}

.site-footer__newsletter input:hover,
.site-footer__newsletter input:focus {
    background: rgba(255, 255, 255, 0);
    border: 1px solid rgba(41, 92, 137, 1);
}

.site-footer__newsletter button {
    background: rgba(96, 185, 240, 1);
    font-size: 1.5rem;
    position: absolute;
    right: 5px;
    border: none;
    bottom: 0;
    top: 5px;
    width: 45px;
    height: 45px;
    border-radius: 100%;
    color: rgba(41, 92, 137, 1);
}

.site-footer__newsletter ::-moz-placeholder {
    color: rgba(41, 92, 137, 1);
    opacity: 0.5;
}

.site-footer__newsletter ::placeholder {
    color: rgba(41, 92, 137, 1);
    opacity: 0.5;
}

.site-footer__newsletter :-ms-input-placeholder {
    color: rgba(41, 92, 137, 1);
}

.site-footer__newsletter ::-ms-input-placeholder {
    color: rgba(41, 92, 137, 1);
}

.site-copyright {
    background: rgba(41, 92, 137, 1);
    color: #ffffff;
    font-size: 1.3rem;
    padding: 2rem 0;
    text-align: center;
}

.site-copyright p {
    margin-bottom: 0;
}

/* News styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Blog Hero */
.blog .hero .hero__content h2 {
    font-weight: 300;
}

.blog .hero .hero__content h2 strong {
    display: block;
    font-weight: 700;
}

.archive .hero .hero__content h2 {
    font-weight: 300;
}

.archive .hero .hero__content h2 strong {
    display: block;
    font-weight: 700;
}

.category .hero .hero__content h2 {
    font-weight: 300;
}

.category .hero .hero__content h2 strong {
    display: block;
    font-weight: 700;
}

/* Singles */
.single__header {
    border-bottom: 1px solid rgba(206, 212, 218, 1);
    padding-bottom: 2rem;
    margin-bottom: 2rem;
}

@media (min-width: 768px) {
    .single__header {
        padding-bottom: 3rem;
        margin-bottom: 3rem;
    }
}

.single .single__header__hero {
    margin: 0;
    padding-bottom: 0;
}

.single .single__header__hero p {
    font-size: 1.6rem;
    color: rgba(52, 58, 64, 1);
}

/* 		max-width: 800px;
		margin: 0 auto; */
.single .hentry .blog-post-meta {
    margin-bottom: 4rem;
}

.single .hentry .avatar {
    border-radius: 100%;
}

.single .single-nav {
    max-width: 800px;
    margin: 0 auto;
    padding: 3rem 0;
}

@media (min-width: 992px) {
    .single .single-nav {
        padding: 5rem 0;
    }
}

.single .nav-links {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

/* Blog Archive */
.blog-categories {
    background: #f5f5f5;
    color: #10384d;
}

.blog-categories ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0rem;
}

@media (min-width: 768px) {
    .blog-categories ul {
        gap: 2rem;
    }
}

.blog-categories ul li {
    flex-basis: 100%;
}

@media (min-width: 768px) {
    .blog-categories ul li {
        flex-basis: auto;
    }
}

.blog-categories ul li a {
    color: #10384d;
    text-decoration: none;
}

.blog-categories ul li a:hover,
.blog-categories ul li a:focus {
    color: rgba(41, 92, 137, 1);
}

/* Blog Archive Post */
.blog-posts {
    background: #f5f5f5;
    margin-bottom: 3rem;
}

.blog-posts:last-child {
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .blog-posts {
        flex-basis: 48.5%;
    }
}

.blog-posts__content {
    position: relative;
    background: rgba(33, 37, 41, 1);
    color: #ffffff;
    padding: 2rem;
    max-width: 100%;
    z-index: 10;
}

@media (min-width: 768px) {
    .blog-posts__content {
        min-height: 200px;
    }
}

@media (min-width: 992px) {
    .blog-posts__content {
        min-height: 230px;
    }
}

@media (min-width: 992px) {
    .blog-posts__content {
        padding: 4rem;
        min-height: 300px;
    }
}

@media (min-width: 1400px) {
    .blog-posts__content {
        min-height: 270px;
    }
}

.blog-posts__content a {
    color: #ffffff;
    text-decoration: none;
}

.blog-posts__content__title {
    font-size: 2.2rem;
}

@media (min-width: 992px) {
    .blog-posts__content__title {
        font-size: 2.6rem;
    }
}

@media (min-width: 992px) {
    .blog-posts__content__title {
        font-size: 3rem;
    }
}

@media (min-width: 768px) {
    .blog-posts__content__meta {
        display: flex;
        position: absolute;
        bottom: 2rem;
        left: 2rem;
        right: 2rem;
    }
}

@media (min-width: 992px) {
    .blog-posts__content__meta {
        bottom: 4rem;
        left: 4rem;
        right: 4rem;
    }
}

.blog-posts__content__meta a {
    font-size: 1.4rem;
    display: block;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .blog-posts__content__meta a {
        flex-basis: 60%;
        margin-bottom: 0;
    }
}

@media (min-width: 992px) {
    .blog-posts__content__meta a {
        font-size: 1.6rem;
    }
}

.blog-posts__content__meta a:hover,
.blog-posts__content__meta a:focus {
    color: #ffffff;
}

.blog-posts__content__meta span {
    font-size: 1.4rem;
    color: rgba(173, 181, 189, 1);
}

@media (min-width: 768px) {
    .blog-posts__content__meta span {
        flex-basis: 40%;
        text-align: right;
    }
}

@media (min-width: 992px) {
    .blog-posts__content__meta span {
        font-size: 1.6rem;
    }
}

.blog-posts {
    background: rgba(33, 37, 41, 1);
    color: #ffffff;
    padding-bottom: 4rem;
}

@media (min-width: 576px) {
    .blog-posts {
        padding-bottom: 3rem;
    }
}

@media (min-width: 768px) {
    .blog-posts {
        padding-bottom: 6rem;
    }
}

@media (min-width: 992px) {
    .blog-posts {
        padding-bottom: 8rem;
    }
}

@media (min-width: 992px) {
    .blog-posts {
        padding-bottom: 10rem;
    }
}

@media (min-width: 1400px) {
    .blog-posts {
        padding-bottom: 12rem;
    }
}

@media (min-width: 768px) {
    .blog-posts > .container {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
    }
}

/* Blog Archive Posts */
.blog-archive-post {
    margin-bottom: 6rem;
    padding-bottom: 6rem;
    border-bottom: 1px solid rgba(41, 92, 137, 1);
}

.blog-archive-post:last-child {
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .blog-archive-post {
        flex-basis: 48.5%;
    }
}

.blog-archive-post__content {
    position: relative;
    background: rgba(0, 0, 0, 1);
    background: rgba(255, 255, 255, 1);
    background: none;
    color: rgba(41, 92, 137, 1);
    padding: 2rem;
    padding: 0;
    max-width: 100%;
    z-index: 10;
}

@media (min-width: 768px) {
    .blog-archive-post__content {
        min-height: 355px;
        min-height: 0;
    }
}

@media (min-width: 992px) {
    .blog-archive-post__content {
        min-height: 325px;
        min-height: 0;
    }
}

@media (min-width: 992px) {
    .blog-archive-post__content {
        padding: 4rem;
        padding: 0;
        min-height: 385px;
        min-height: 0;
    }
}

@media (min-width: 1400px) {
    .blog-archive-post__content {
        min-height: 385px;
        min-height: 0;
    }
}

.blog-archive-post__content a {
    color: rgba(41, 92, 137, 1);
    text-decoration: none;
}

.blog-archive-post__content a:hover,
.blog-archive-post__content a:focus {
    color: rgba(41, 92, 137, 1);
}

.blog-archive-post__content__image {
    margin-bottom: 3rem;
}

.blog-archive-post__content__title {
    font-size: 2.2rem;
}

@media (min-width: 992px) {
    .blog-archive-post__content__title {
        font-size: 3rem;
    }
}

@media (min-width: 992px) {
    .blog-archive-post__content__title {
        font-size: 4rem;
    }
}

.blog-archive-post__content__meta a {
    font-size: 1.4rem;
    display: block;
    margin-bottom: 1rem;
}

@media (min-width: 768px) {
    .blog-archive-post__content__meta a {
        flex-basis: 60%;
        margin-bottom: 0;
    }
}

@media (min-width: 992px) {
    .blog-archive-post__content__meta a {
        font-size: 1.6rem;
    }
}

.blog-archive-post__content__meta a:hover,
.blog-archive-post__content__meta a:focus {
    color: rgba(33, 37, 41, 1);
}

.blog-archive-post__content__meta span {
    font-size: 1.4rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.8);
    color: rgba(41, 92, 137, 1);
    margin-bottom: 1rem;
    display: inline-block;
}

@media (min-width: 768px) {
    .blog-archive-post__content__meta span {
        flex-basis: 40%;
        text-align: right;
    }
}

@media (min-width: 992px) {
    .blog-archive-post__content__meta span {
        font-size: 1.6rem;
    }
}

.blog-archive-post__content__meta span.blog-archive-post__content__meta__by {
    font-weight: 400;
}

.blog-archive-post__content__meta .blog-archive-post__content__meta__excerpt {
    font-size: 1.4rem;
}

.blog-archive-post__content__meta .btn--blue {
    margin-top: 4rem;
    border: 3px solid rgba(41, 92, 137, 1);
}

.blog-archive-post__content__meta .btn--blue:hover,
.blog-archive-post__content__meta .btn--blue:focus {
    background: none;
    border: 3px solid rgba(41, 92, 137, 1);
    color: rgba(41, 92, 137, 1);
}

/* Blog Pagination */
.blog-pagination {
    flex-basis: 100%;
    text-align: center;
    margin-bottom: 40px;
}

@media (min-width: 768px) {
    .blog-pagination {
        margin-bottom: 80px;
    }
}

.blog-pagination li {
    display: inline;
    float: left;
    margin-right: 5px;
    font-size: 1.5rem;
}

@media (min-width: 768px) {
    .blog-pagination li {
        margin-right: 10px;
        font-size: 1.7rem;
    }
}

.blog-pagination li a {
    color: #ffffff;
    padding: 5px 10px;
    border: 2px solid rgba(41, 92, 137, 1);
    border-radius: 2px;
    color: rgba(41, 92, 137, 1);
}

.blog-pagination li.active a,
.blog-pagination li:hover a {
    background: rgba(41, 92, 137, 1);
    color: white;
}

/* Contact styles
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* 8. Dynamic Page Components
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Component Overlay
- - - - - - - - - - - - - - - - - - - - - - - - - */
.site-overlay {
    background: rgba(0, 0, 0, 0.7);
    position: fixed;
    top: 0;
    bottom: 0;
    left: auto;
    right: 0;
    z-index: 1;
    transition: all 0.2s ease-in-out;
    opacity: 0;
    display: none;
}

.site-overlay.show {
    display: block;
    z-index: 103;
    opacity: 1;
}

/* @import 'components/_hero.css'; */
/* Component Hero New
- - - - - - - - - - - - - - - - - - - - - - - - - */
.hero--video {
    min-height: 500px;
    position: relative;
}

@media (min-width: 992px) {
    .hero--video {
        min-height: 600px;
    }
}

.hero .hero__video {
    position: static;
}

.hero__content {
    position: absolute;
    bottom: 3rem;
    left: 0;
    width: 100%;
    z-index: 90;
}

.hero__content h1 {
    color: white;
    font-size: 4rem;
}

@media (min-width: 992px) {
    .hero__content h1 {
        font-size: 8rem;
    }
}

.hero__content h1 span {
    display: block;
    font-weight: 300;
    border-left: 3px solid rgba(96, 185, 240, 1);
    padding-left: 2rem;
    margin-left: 3rem;
}

.hero__content p {
    color: white;
    margin-bottom: 0;
}

#videoBkg {
    position: fixed;
    z-index: -1;
}

@media (min-width: 992px) {
    #videoBkg {
        position: relative;
    }
}

/* MEDIA QUERIES for video background
----------------------------------------- */
@media (min-aspect-ratio: 16/9) {
    #videoBkg {
        width: 100%;
        height: auto;
    }
}

@media (max-aspect-ratio: 16/9) {
    #videoBkg {
        width: auto;
        height: 100%;
    }
}

/* Component Generic Content
- - - - - - - - - - - - - - - - - - - - - - - - - */
.generic-content {
    position: relative;
    background: none;
}

.generic-content--black {
    background: #10384d;
}

.generic-content--white {
    background: #ffffff;
}

.generic-content--blue {
    background: rgba(41, 92, 137, 1);
}

.generic-content--grey {
    background: rgba(73, 80, 87, 1);
}

.generic-content--light-grey {
    background: #f5f5f5;
}

.generic-content--fleuro-yellow {
    padding: 0;
}

.generic-content--fleuro-yellow .container {
    max-width: 100%;
    padding: 0;
    margin: 0;
}

.generic-content .container > :last-child {
    margin-bottom: 0;
}

/* ABOUT HERO */
.generic-content .about-hero {
    background: url("../image/about-hero.jpg") no-repeat center center;
    padding-top: 5rem;
}

@media (min-width: 992px) {
    .generic-content .about-hero {
        padding-top: 30rem;
    }
}

.generic-content .about-hero .container {
    max-width: 100%;
}

.generic-content .about-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .about-hero h1 {
        max-width: 50%;
    }
}

.generic-content .about-hero .blue-box {
    background: rgba(96, 185, 240, 0.5);
    color: white;
    padding: 2rem;
    margin-bottom: 2rem;
}

.generic-content .about-hero .blue-box p {
    color: white;
}

.generic-content .about-hero .blue-box p strong {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .about-hero .blue-box {
        max-width: 50%;
        position: relative;
        top: 5rem;
    }

    .generic-content .about-hero .blue-box p {
        color: white;
    }

    .generic-content .about-hero .blue-box p strong {
        color: white;
    }
}

/* ONE-STOP CLADDING SOLUTIONS HERO */
.generic-content .one-stop-hero {
    background: url("../image/one-stop-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .one-stop-hero {
        padding-top: 30rem;
    }
}

.generic-content .one-stop-hero .container {
    max-width: 100%;
}

.generic-content .one-stop-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .one-stop-hero h1 {
        max-width: 50%;
    }
}

/* ONE-STOP CLADDING SOLUTIONS HERO */
.generic-content .futural-cladding-systems-hero {
    background: url("../image/futural-cladding-systems.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .futural-cladding-systems-hero {
        padding-top: 30rem;
    }
}

.generic-content .futural-cladding-systems-hero .container {
    max-width: 100%;
}

.generic-content .futural-cladding-systems-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .futural-cladding-systems-hero h1 {
        max-width: 50%;
    }
}

/* QUALICOAT HERO */
.generic-content .qualicoat-hero {
    background: url("../images/qualicoat-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .qualicoat-hero {
        padding-top: 30rem;
    }
}

.generic-content .qualicoat-hero .container {
    max-width: 100%;
}

.generic-content .qualicoat-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .qualicoat-hero h1 {
        max-width: 50%;
    }
}

/* SUSTAINABLE CLADDING HERO */
.generic-content .sustainable-cladding-hero {
    background: url("../images/sustainable-cladding-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .sustainable-cladding-hero {
        padding-top: 30rem;
    }
}

.generic-content .sustainable-cladding-hero .container {
    max-width: 100%;
}

.generic-content .sustainable-cladding-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .sustainable-cladding-hero h1 {
        max-width: 50%;
    }
}

/* RE-CLADDING HERO */
.generic-content .re-cladding-hero {
    background: url("../images/re-cladding-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .re-cladding-hero {
        padding-top: 30rem;
    }
}

.generic-content .re-cladding-hero .container {
    max-width: 100%;
}

.generic-content .re-cladding-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .re-cladding-hero h1 {
        max-width: 50%;
    }
}

/* PROJECT HEROS */
.generic-content .park-heights-hero {
    background: url("../images/park-heights-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .park-heights-hero {
        padding-top: 30rem;
    }
}

.generic-content .park-heights-hero .container {
    max-width: 100%;
}

.generic-content .park-heights-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .park-heights-hero h1 {
        max-width: 50%;
    }
}

.generic-content .eldon-view-hero {
    background: url("../images/eldon-view-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .eldon-view-hero {
        padding-top: 30rem;
    }
}

.generic-content .eldon-view-hero .container {
    max-width: 100%;
}

.generic-content .eldon-view-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .eldon-view-hero h1 {
        max-width: 50%;
    }
}

.generic-content .nottingham-two-hero {
    background: url("../images/nottingham-two-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .nottingham-two-hero {
        padding-top: 30rem;
    }
}

.generic-content .nottingham-two-hero .container {
    max-width: 100%;
}

.generic-content .nottingham-two-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .nottingham-two-hero h1 {
        max-width: 50%;
    }
}

.generic-content .ac-marriott-hotel-hero {
    background: url("../images/ac-marriott-hotel-hero.jpg") no-repeat center center;
    padding-top: 35rem;
    padding-bottom: 10rem;
}

@media (min-width: 992px) {
    .generic-content .ac-marriott-hotel-hero {
        padding-top: 30rem;
    }
}

.generic-content .ac-marriott-hotel-hero .container {
    max-width: 100%;
}

.generic-content .ac-marriott-hotel-hero h1 {
    color: white;
}

@media (min-width: 992px) {
    .generic-content .ac-marriott-hotel-hero h1 {
        max-width: 50%;
    }
}

/* INTRO */
.generic-content .intro {
    padding-top: 0;
}

@media (min-width: 992px) {
    .generic-content .intro {
        padding-top: 26rem;
    }
}

.generic-content .intro__page-title {
    color: black;
    font-style: normal;
}

.generic-content .intro__page-title span {
    font-weight: 300;
}

@media (min-width: 992px) {
    .generic-content .intro__page-title {
        max-width: 50%;
    }
}

@media (min-width: 992px) {
    .generic-content ul.key-strengths {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
        text-align: center;
    }
}

@media (min-width: 992px) {
    .generic-content ul.key-strengths li {
        text-align: center;
        flex-basis: 30%;
        margin-bottom: 1rem;
        font-weight: 600;
    }

    .generic-content ul.key-strengths li .fa-square {
        margin-right: 2rem;
        color: rgba(41, 92, 137, 1);
    }
}

@media (min-width: 992px) {
    .generic-content .stats {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 3rem;
    }
}

.generic-content .stats p {
    text-align: center;
    font-weight: 700;
    color: white;
    font-size: 4rem;
}

.generic-content .stats p span {
    font-weight: 400;
    display: block;
    font-size: 1.4rem;
}

/* Light Backgrounds */
.generic-content h1,
.generic-content h2,
.generic-content h3,
.generic-content h4,
.generic-content h5,
.generic-content h6 {
    color: #10384d;
}

@media (min-width: 992px) {
    .generic-content h1.reduced-width,
    .generic-content h2.reduced-width,
    .generic-content h3.reduced-width,
    .generic-content h4.reduced-width,
    .generic-content h5.reduced-width,
    .generic-content h6.reduced-width {
        max-width: 80%;
    }
}

.generic-content p {
    color: rgba(108, 117, 125, 1);
}

.generic-content p strong {
    color: rgba(73, 80, 87, 1);
}

.generic-content p.large-paragraph {
    color: rgba(33, 37, 41, 1);
}

@media (min-width: 992px) {
    .generic-content p.reduced-width {
        max-width: 80%;
    }
}

.generic-content p a,
.generic-content a {
    font-weight: 600;
    color: rgba(41, 92, 137, 1);
    border-bottom: 1px dotted rgba(33, 37, 41, 1);
    padding-bottom: 2px;
}

.generic-content p a:hover,
.generic-content p a:focus,
.generic-content a:hover,
.generic-content a:focus {
    color: #3498db;
    border-bottom: 1px dotted #3498db;
}

.generic-content ul {
    margin-bottom: 2rem;
}

.generic-content ul li {
    color: rgba(33, 37, 41, 1);
}

/* Dark Backgrounds */
.generic-content--black h1,
.generic-content--black h2,
.generic-content--black h3,
.generic-content--black h4,
.generic-content--black h5,
.generic-content--black h6,
.generic-content--grey h1,
.generic-content--grey h2,
.generic-content--grey h3,
.generic-content--grey h4,
.generic-content--grey h5,
.generic-content--grey h6 {
    color: #ffffff;
}

@media (min-width: 992px) {
    .generic-content--black h1.reduced-width,
    .generic-content--black h2.reduced-width,
    .generic-content--black h3.reduced-width,
    .generic-content--black h4.reduced-width,
    .generic-content--black h5.reduced-width,
    .generic-content--black h6.reduced-width,
    .generic-content--grey h1.reduced-width,
    .generic-content--grey h2.reduced-width,
    .generic-content--grey h3.reduced-width,
    .generic-content--grey h4.reduced-width,
    .generic-content--grey h5.reduced-width,
    .generic-content--grey h6.reduced-width {
        max-width: 80%;
    }
}

.generic-content--black p,
.generic-content--grey p {
    color: rgba(173, 181, 189, 1);
}

.generic-content--black p strong,
.generic-content--grey p strong {
    color: #ffffff;
}

.generic-content--black p.large-paragraph,
.generic-content--grey p.large-paragraph {
    color: #ffffff;
}

@media (min-width: 992px) {
    .generic-content--black p.reduced-width,
    .generic-content--grey p.reduced-width {
        max-width: 80%;
    }
}

.generic-content--black p a,
.generic-content--black a,
.generic-content--grey p a,
.generic-content--grey a {
    font-weight: 600;
    color: #ffffff;
    border-bottom: 1px dotted rgba(173, 181, 189, 1);
    padding-bottom: 2px;
}

.generic-content--black p a:hover,
.generic-content--black p a:focus,
.generic-content--black a:hover,
.generic-content--black a:focus,
.generic-content--grey p a:hover,
.generic-content--grey p a:focus,
.generic-content--grey a:hover,
.generic-content--grey a:focus {
    color: rgba(33, 150, 243, 0.2);
    border-bottom: 1px dotted rgba(33, 150, 243, 0.2);
}

.generic-content--black .btn:hover,
.generic-content--black .btn:focus,
.generic-content--grey .btn:hover,
.generic-content--grey .btn:focus {
    border: 2px solid #ffffff;
    color: #ffffff;
    background: none;
}

.generic-content--black ul,
.generic-content--grey ul {
    margin-bottom: 2rem;
}

.generic-content--black ul li,
.generic-content--grey ul li {
    color: #ffffff;
}

.generic-content--black ul.list--arrow li,
.generic-content--grey ul.list--arrow li {
    color: rgba(173, 181, 189, 1);
}

.generic-content--black ul.list--arrow li:before,
.generic-content--grey ul.list--arrow li:before {
    color: rgba(33, 150, 243, 0.2);
}

.generic-content--black ul.list--check li,
.generic-content--grey ul.list--check li {
    color: rgba(173, 181, 189, 1);
}

.generic-content--black ul.list--check li:before,
.generic-content--grey ul.list--check li:before {
    color: rgba(33, 150, 243, 0.2);
}

.generic-content--blue h1,
.generic-content--blue h2 {
    color: #ffffff;
}

.generic-content--blue h3,
.generic-content--blue h4,
.generic-content--blue h5,
.generic-content--blue h6 {
    color: #ffffff;
}

@media (min-width: 992px) {
    .generic-content--blue h3.reduced-width,
    .generic-content--blue h4.reduced-width,
    .generic-content--blue h5.reduced-width,
    .generic-content--blue h6.reduced-width {
        max-width: 80%;
    }
}

.generic-content--blue p {
    color: rgba(206, 212, 218, 1);
}

.generic-content--blue p strong {
    color: #ffffff;
}

.generic-content--blue p.large-paragraph {
    color: #ffffff;
}

@media (min-width: 992px) {
    .generic-content--blue p.reduced-width {
        max-width: 80%;
    }
}

.generic-content--blue p strong {
    color: rgba(161, 212, 228, 1);
}

.generic-content--blue p a,
.generic-content--blue a {
    font-weight: 600;
    color: #ffffff;
    border-bottom: 1px dotted rgba(206, 212, 218, 1);
    padding-bottom: 2px;
}

.generic-content--blue p a:hover,
.generic-content--blue p a:focus,
.generic-content--blue a:hover,
.generic-content--blue a:focus {
    color: rgba(33, 150, 243, 0.2);
    border-bottom: 1px dotted rgba(33, 150, 243, 0.2);
}

.generic-content--blue .btn:hover,
.generic-content--blue .btn:focus {
    border: 2px solid #ffffff;
    color: #ffffff;
    background: none;
}

.generic-content--blue ul {
    margin-bottom: 2rem;
}

.generic-content--blue ul li {
    color: #ffffff;
}

.generic-content--blue ul.list--arrow li {
    color: rgba(173, 181, 189, 1);
}

.generic-content--blue ul.list--arrow li:before {
    color: rgba(33, 150, 243, 0.2);
}

.generic-content--blue ul.list--check li {
    color: rgba(173, 181, 189, 1);
}

.generic-content--blue ul.list--check li:before {
    color: rgba(33, 150, 243, 0.2);
}

/* INLINE BUTTONS */
@media (min-width: 768px) {
    .generic-content .inline-buttons {
        display: flex;
        gap: 0 1rem;
    }

    .generic-content .inline-buttons-centered {
        display: flex;
        gap: 0 1rem;
        justify-content: center;
    }
}

/* COLUMN LAYOUTS */
@media (min-width: 992px) {
    .generic-content .two-columns {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }

    .generic-content .two-columns > div {
        flex-basis: 48%;
    }

    .generic-content .two-columns > div > :last-child {
        margin-bottom: 0;
    }
}

/* TABLES */
.generic-content table {
    background: #ffffff;
    border-color: rgba(233, 236, 239, 1);
    width: 100%;
    margin-bottom: 1rem;
    color: "Inter", -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif;
    vertical-align: top;
}

.generic-content table > tbody {
    vertical-align: inherit;
}

.generic-content table > thead {
    vertical-align: bottom;
}

.generic-content table th,
.generic-content table td {
    padding: 1rem;
}

.generic-content table th,
.generic-content table td {
    border: 3px solid rgba(233, 236, 239, 1);
}

/* ONE-STOP CLADDING SOLUTIONS BENEFITS */
@media (min-width: 992px) {
    .generic-content .benefits {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

@media (min-width: 992px) {
    .generic-content .benefit {
        margin-bottom: 3rem;
        flex-basis: 48%;
    }

    .generic-content .benefit:nth-of-type(7) {
        flex-basis: 100%;
    }
}

.generic-content .benefit .fa-square {
    color: rgba(41, 92, 137, 1);
    margin-right: 1rem;
}

.generic-content .benefit p:nth-of-type(1) {
    color: rgba(41, 92, 137, 1);
}

/* PRODUCT OVERVIEW - A1 FUTURAL CLADDING PANELS */
@media (min-width: 992px) {
    .generic-content .product-overview {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

@media (min-width: 992px) {
    .generic-content .product-overview__left {
        flex-basis: 45%;
    }
}

@media (min-width: 992px) {
    .generic-content .product-overview__left {
        flex-basis: 40%;
    }
}

@media (min-width: 992px) {
    .generic-content .product-overview__right {
        flex-basis: 50%;
        border-left: 4px solid rgba(222, 226, 230, 1);
        padding-left: 4rem;
    }
}

@media (min-width: 992px) {
    .generic-content .product-overview__right {
        flex-basis: 55%;
    }
}

.generic-content .product-overview__right ul li {
    margin-bottom: 0.5rem;
}

.generic-content .product-overview__right ul li a {
    background: #ffffff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    border: none;
    padding: 1rem;
    border-radius: 5px;
    font-weight: 600;
}

.generic-content .product-overview__right ul li a:hover,
.generic-content .product-overview__right ul li a:focus {
    background: rgba(161, 212, 228, 1);
    color: #ffffff;
}

@media (min-width: 992px) {
    .generic-content .product-overview__right ul li a {
        font-size: 1.8rem;
        padding: 1.5rem 2rem;
    }
}

.generic-content .product-overview__right ul li a .fa-chevron-right {
    color: rgba(41, 92, 137, 1);
}

/* BENEFITS - FUTURAL CLADDING SYSTEMS */
.generic-content .a1-benefits {
    background: rgba(248, 249, 250, 1);
    padding: 2rem;
    border-radius: 5px;
}

@media (min-width: 992px) {
    .generic-content .a1-benefits {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.generic-content .a1-benefits__section {
    border-bottom: 3px solid rgba(233, 236, 239, 1);
    padding: 1rem;
    margin-bottom: 1rem;
}

.generic-content .a1-benefits__section:last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .generic-content .a1-benefits__section {
        flex-basis: 48%;
        padding: 2rem;
        margin-bottom: 2rem;
    }

    .generic-content .a1-benefits__section:last-child {
        flex-basis: 100%;
        border-bottom: none;
    }
}

.generic-content .a1-benefits__section h4 {
    position: relative;
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    text-transform: uppercase;
    font-size: 1.8rem;
    margin-bottom: 0.5rem;
}

.generic-content .a1-benefits__section h4 img {
    flex-basis: 20px;
}

.generic-content .a1-benefits__section p {
    margin-bottom: 0;
    padding-left: 25px;
}

@media (min-width: 992px) {
    .generic-content .a1-benefits__section p {
        padding-left: 30px;
    }
}

/* ADD TO SPEC */
.generic-content .add-to-spec {
    padding: 2rem 4rem;
    border-radius: 5px;
    background: rgba(233, 236, 239, 1);
}

.generic-content .add-to-spec p {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-bottom: 0;
}

/* DOWNLOADS - FUTURAL CLADDING SYSTEMS */
@media (min-width: 992px) {
    .generic-content .documents-classifications {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
    }
}

.generic-content .documents-classification {
    background: rgba(233, 236, 239, 1);
    padding: 2rem;
    border-radius: 5px;
    margin-bottom: 2rem;
}

.generic-content .documents-classification:last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .generic-content .documents-classification {
        flex-basis: 48%;
    }
}

.generic-content .documents-classification strong {
    font-size: 1.8rem;
    margin-bottom: 2rem;
}

@media (min-width: 992px) {
    .generic-content .documents-classification .btn {
        width: 100%;
        max-width: 100%;
        margin-bottom: 1rem;
    }
}

/* BENEFITS - FUTURAL CLADDING SYSTEMS */
@media (min-width: 992px) {
    .generic-content .a1-benefits.a1-benefits--cladding-systems .a1-benefits__section:nth-child(5) {
        border-bottom: none;
    }
}

@media (min-width: 992px) {
    .generic-content .a1-benefits.a1-benefits--cladding-systems .a1-benefits__section:last-child {
        flex-basis: 48%;
        border-bottom: none;
    }
}

/* PROJECTS */
/* PROJECT QUOTE */
.project-quote {
    position: relative;
    background: #10384d;
}

.project-quote .fa-solid {
    position: absolute;
    left: 50%;
    bottom: 80%;
    color: white;
    z-index: 10;
    font-size: 3rem;
}

@media (min-width: 992px) {
    .project-quote .fa-solid {
        bottom: 78%;
    }
}

.project-quote__item {
    background: rgba(73, 80, 87, 1);
    padding: 2rem;
    color: #ffffff;
}

@media (min-width: 992px) {
    .project-quote__item {
        padding: 3rem 5rem;
    }
}

/* PROJECT GALLERY */
.project-gallery__images {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
}

.project-gallery__images p {
    display: block;
    flex-basis: 48%;
}

@media (min-width: 768px) {
    .project-gallery__images p {
        flex-basis: 24%;
    }
}

.project-gallery__images p a {
    position: relative;
    display: block;
    width: 100%;
    border: none;
}

.project-gallery__images p a img {
    transition: all 0.2s ease-in-out;
}

.project-gallery__images p a .fa-solid {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 10;
    transition: all 0.2s ease-in-out;
    opacity: 0;
    color: white;
    font-size: 2.4rem;
}

.project-gallery__images p a:hover,
.project-gallery__images p a:focus {
    border: none;
}

.project-gallery__images p a:hover img,
.project-gallery__images p a:focus img {
    opacity: 0.7;
}

.project-gallery__images p a:hover .fa-solid,
.project-gallery__images p a:focus .fa-solid {
    opacity: 1;
}

/* Component Latest News
- - - - - - - - - - - - - - - - - - - - - - - - - */
.latest-news__posts {
    margin-bottom: 4rem;
}

@media (min-width: 576px) {
    .latest-news__posts {
        margin-bottom: 3rem;
    }
}

@media (min-width: 768px) {
    .latest-news__posts {
        margin-bottom: 6rem;
    }
}

@media (min-width: 992px) {
    .latest-news__posts {
        margin-bottom: 8rem;
    }
}

@media (min-width: 768px) {
    .latest-news__posts {
        display: flex;
        justify-content: space-between;
    }
}

.latest-news__posts__item {
    background: rgba(33, 37, 41, 1);
    margin-bottom: 2rem;
    transition: all 0.3s ease-in-out;
    border-radius: 5px;
}

@media (min-width: 768px) {
    .latest-news__posts__item {
        flex-basis: 32%;
        margin-bottom: 0;
    }

    .latest-news__posts__item:hover,
    .latest-news__posts__item:focus {
        background: #10384d;
    }
}

@media (min-width: 992px) {
    .latest-news__posts__item {
        flex-basis: 31%;
    }
}

.latest-news__posts__item__image {
    border-radius: 5px;
    transform: scale(1);
    transition: all 0.3s ease-in-out;
}

.latest-news__posts__item__image img {
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.latest-news__posts__item__image:hover img,
.latest-news__posts__item__image:focus img {
    transform: scale(0.98);
}

.latest-news__posts__item__image a {
    display: block;
    width: 100%;
    transition: all 0.3s ease-in-out;
    transform: scale(1);
}

.latest-news__posts__item__meta {
    padding: 2rem;
}

@media (min-width: 992px) {
    .latest-news__posts__item__meta {
        padding: 4rem;
    }
}

.latest-news__posts__item__meta__title {
    line-height: 1.4;
    font-size: 2.2rem;
    font-weight: 400;
    color: #ffffff;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .latest-news__posts__item__meta__title {
        font-size: 1.8rem;
    }
}

@media (min-width: 992px) {
    .latest-news__posts__item__meta__title {
        font-size: 2.2rem;
    }
}

.latest-news__posts__item__meta .btn {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .latest-news__posts__item__meta .btn {
        width: 50%;
        max-width: 50%;
    }
}

.latest-news__posts__item__meta .btn:hover,
.latest-news__posts__item__meta .btn:focus {
    background: none;
    color: rgba(33, 150, 243, 0.2);
    border-color: rgba(33, 150, 243, 0.2);
}

.latest-news__footer {
    text-align: center;
}

.latest-news__footer h5 {
    font-weight: 500;
    text-align: center;
    font-size: 1.8rem;
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .latest-news__footer h5 {
        font-size: 2.2rem;
    }
}

.latest-news__footer p {
    margin-bottom: 0;
}

/* Component Logo Carousel
- - - - - - - - - - - - - - - - - - - - - - - - - */
.logo-carousel {
    background: #ffffff;
}

.logo-carousel__logo-images {
    position: relative;
}

.logo-carousel__logo-images .slick-slide {
    padding: 0 1rem;
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slick-slide {
        padding: 0 2.5rem;
    }
}

.logo-carousel__logo-images__item a {
    transition: all 0.3s ease-in-out;
    display: block;
}

.logo-carousel__logo-images__item a:hover,
.logo-carousel__logo-images__item a:focus {
    transform: scale(0.9);
}

.logo-carousel__logo-images__item img {
    display: block;
    max-width: 100%;
}

@media (min-width: 992px) {
    .logo-carousel__logo-images__item img {
        max-width: 90%;
        margin: 0 auto;
    }
}

@media (min-width: 992px) {
    .logo-carousel__logo-images__item img {
        max-width: 75%;
    }
}

@media (min-width: 1400px) {
    .logo-carousel__logo-images__item img {
        max-width: 70%;
    }
}

.logo-carousel__logo-images .slide-navigation {
    position: absolute;
    top: 35%;
    cursor: pointer;
    z-index: 10;
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slide-navigation {
        top: 35%;
    }
}

.logo-carousel__logo-images .slide-navigation:hover,
.logo-carousel__logo-images .slide-navigation:focus {
    opacity: 1;
}

.logo-carousel__logo-images .slide-navigation .fa-duotone {
    font-size: 2rem;
    font-weight: 300;
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slide-navigation .fa-duotone {
        font-size: 3rem;
    }
}

.logo-carousel__logo-images .slide-navigation--left {
    background: white;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    left: -1rem;
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slide-navigation--left {
        width: 45px;
        height: 45px;
        left: -1rem;
    }
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slide-navigation--left {
        left: 1rem;
    }
}

.logo-carousel__logo-images .slide-navigation--right {
    background: white;
    border-radius: 100%;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    right: -1rem;
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slide-navigation--right {
        width: 45px;
        height: 45px;
        right: -1rem;
    }
}

@media (min-width: 992px) {
    .logo-carousel__logo-images .slide-navigation--right {
        right: 1rem;
    }
}

/* Component Buckets
- - - - - - - - - - - - - - - - - - - - - - - - - */
.buckets {
    background: rgba(222, 226, 230, 1);
}

@media (min-width: 768px) {
    .buckets__items {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
}

.buckets .bucket {
    background: #ffffff;
    margin-bottom: 2rem;
    position: relative;
    border-radius: 5px;
}

@media (min-width: 768px) {
    .buckets .bucket {
        flex-basis: 48%;
    }

    .buckets .bucket:nth-child(5),
    .buckets .bucket:nth-child(6) {
        margin-bottom: 0;
    }
}

@media (min-width: 992px) {
    .buckets .bucket {
        flex-basis: 32%;
    }

    .buckets .bucket:nth-child(4),
    .buckets .bucket:nth-child(5),
    .buckets .bucket:nth-child(6) {
        margin-bottom: 0;
    }
}

@media (min-width: 992px) {
    .buckets .bucket {
        margin-bottom: 2.5rem;
    }
}

@media (min-width: 1400px) {
    .buckets .bucket {
        margin-bottom: 3rem;
    }
}

.buckets .bucket:hover .bucket__link,
.buckets .bucket:focus .bucket__link {
    top: 0;
    display: block;
    border-radius: 5px;
}

.buckets .bucket:hover .bucket__image,
.buckets .bucket:focus .bucket__image {
    transform: scale(0.9);
}

.buckets .bucket__link {
    display: block;
    border-radius: 5px;
    background: linear-gradient(rgba(255, 255, 255, 0), rgba(33, 150, 243, 0.2));
    transition: all 0.6s ease-in-out;
    position: absolute;
    top: 100%;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
}

.buckets .bucket__image {
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.buckets .bucket__image img {
    border-radius: 5px;
}

.buckets .bucket__title {
    border-radius: 0 0 5px 5px;
    position: relative;
    z-index: 11;
}

.buckets .bucket__title h4 {
    border-radius: 0 0 5px 5px;
    position: relative;
    z-index: 12;
    background: rgba(33, 150, 243, 0.2);
    color: rgba(41, 92, 137, 1);
    padding: 1.5rem 0;
    text-align: center;
    margin-bottom: 0;
    font-size: 1.6rem;
}

@media (min-width: 768px) {
    .buckets .bucket__title h4 {
        font-size: 1.8rem;
    }
}

/* Component FAQs
- - - - - - - - - - - - - - - - - - - - - - - - - */
.faqs__content {
    margin-bottom: 4rem;
}

.faqs__content__item {
    transition: all 0.2s ease-in-out;
    border: 2px solid transparent;
    margin-bottom: 0.5rem;
    position: relative;
    cursor: pointer;
    background: rgba(222, 226, 230, 1);
    border-radius: 5px;
}

@media (min-width: 768px) {
    .faqs__content__item:hover,
    .faqs__content__item:focus {
        background: rgba(206, 212, 218, 1);
        border: 2px solid rgba(33, 37, 41, 1);
        color: rgba(73, 80, 87, 1);
    }
}

@media (min-width: 992px) {
    .faqs__content__item {
        max-width: 80%;
        margin-left: 10%;
    }
}

.faqs__content__item.active {
    background: #ffffff;
    border: 2px solid rgba(33, 37, 41, 1);
    color: rgba(73, 80, 87, 1);
}

.faqs__content__item.active .fa-duotone {
    color: rgba(33, 37, 41, 1);
}

.faqs__content__item__question {
    position: static;
    margin-bottom: 0;
    padding: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
    font-size: 1.8rem;
}

.faqs__content__item__question p {
    margin-bottom: 0;
    transition: none;
    color: rgba(41, 92, 137, 1);
}

.faqs__content__item__question .fa-duotone {
    color: rgba(41, 92, 137, 1);
    font-size: 1.8rem;
}

.faqs__content__item__answer {
    display: none;
    margin-bottom: 0;
    padding: 2rem;
    transition: all 0.3s ease-in-out;
    font-size: 1.4rem;
    font-weight: 500;
}

@media (min-width: 992px) {
    .faqs__content__item__answer {
        font-size: 1.6rem;
    }
}

.faqs__footer {
    text-align: center;
}

.faqs__footer h5 {
    font-weight: 500;
    text-align: center;
    font-size: 1.8rem;
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .faqs__footer h5 {
        font-size: 2.2rem;
    }
}

.faqs__footer p {
    margin-bottom: 0;
}

/* Component Meet The Team
- - - - - - - - - - - - - - - - - - - - - - - - - */
.meet-the-team {
    background: rgba(222, 226, 230, 1);
}

.meet-the-team__items {
    position: relative;
}

@media (min-width: 768px) {
    .meet-the-team__items {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
}

.meet-the-team__items__profile {
    background: rgba(222, 226, 230, 1);
    margin-bottom: 2rem;
    position: relative;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

@media (min-width: 768px) {
    .meet-the-team__items__profile {
        flex-basis: 48%;
    }

    .meet-the-team__items__profile:nth-child(5),
    .meet-the-team__items__profile:nth-child(6) {
        margin-bottom: 0;
    }
}

@media (min-width: 992px) {
    .meet-the-team__items__profile {
        flex-basis: 32%;
    }

    .meet-the-team__items__profile:nth-child(4),
    .meet-the-team__items__profile:nth-child(5),
    .meet-the-team__items__profile:nth-child(6) {
        margin-bottom: 0;
    }
}

@media (min-width: 992px) {
    .meet-the-team__items__profile {
        margin-bottom: 2.5rem;
    }
}

@media (min-width: 1400px) {
    .meet-the-team__items__profile {
        margin-bottom: 3rem;
    }
}

.meet-the-team__items__profile:hover,
.meet-the-team__items__profile:focus {
    box-shadow: 0px 0px 20px 5px rgba(0, 0, 0, 0.1);
}

.meet-the-team__items__profile:hover .meet-the-team__items__profile__link,
.meet-the-team__items__profile:focus .meet-the-team__items__profile__link {
    display: block;
    border-radius: 5px;
    background: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.1));
}

.meet-the-team__items__profile__link {
    display: block;
    border-radius: 5px;
    transition: all 1s ease-in-out;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 10;
}

.meet-the-team__items__profile__image {
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
}

.meet-the-team__items__profile__image img {
    border-radius: 5px;
}

.meet-the-team__items__profile__title {
    border-radius: 0 0 5px 5px;
    position: relative;
    z-index: 11;
}

.meet-the-team__items__profile__title h4 {
    border-radius: 0 0 5px 5px;
    position: relative;
    z-index: 12;
    background: rgba(41, 92, 137, 1);
    color: #ffffff;
    padding: 1.5rem 0;
    text-align: center;
    margin-bottom: 0;
    font-size: 1.6rem;
}

@media (min-width: 768px) {
    .meet-the-team__items__profile__title h4 {
        font-size: 1.8rem;
    }
}

.meet-the-team__items__profile__title span {
    display: block;
    font-size: 1.4rem;
    font-weight: 300;
}

.meet-the-team__items__profile__bio {
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 400;
    padding-top: 100px;
}

.meet-the-team__items__profile__bio.active {
    background: rgba(0, 0, 0, 0.4);
}

.meet-the-team__items__profile__bio .container {
    position: relative;
}

.meet-the-team__items__profile__bio__close {
    text-align: right;
}

.meet-the-team__items__profile__bio__close a {
    font-size: 2rem;
    color: #e74c3c;
}

.meet-the-team__items__profile__bio__content {
    border: 3px solid white;
    border-radius: 5px;
}

.meet-the-team__items__profile__bio__wrapper {
    background: #ffffff;
    padding: 3rem;
}

@media (min-width: 992px) {
    .meet-the-team__items__profile__bio__wrapper {
        max-width: 50%;
        margin-left: 25%;
        padding: 0;
        padding: 3rem;
    }
}

/* Component Request a Quote
- - - - - - - - - - - - - - - - - - - - - - - - - */
.request-a-quote {
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: bottom center;
    padding-top: 3rem;
    background: white;
}

@media (min-width: 992px) {
    .request-a-quote {
        margin-top: 10rem;
    }
}

.request-a-quote .container {
    position: relative;
    padding: 4rem 2rem;
}

@media (min-width: 576px) {
    .request-a-quote .container {
        padding: 3rem 2rem;
    }
}

@media (min-width: 768px) {
    .request-a-quote .container {
        padding: 6rem 2rem;
    }
}

@media (min-width: 992px) {
    .request-a-quote .container {
        padding: 8rem 2rem;
    }
}

.request-a-quote__content {
    position: relative;
    z-index: 100;
}

@media (min-width: 992px) {
    .request-a-quote__content {
        max-width: 40%;
    }
}

.request-a-quote__content h3 {
    font-size: 2.4rem;
    font-weight: 300;
}

.request-a-quote__content h3 strong {
    font-weight: 500;
}

@media (min-width: 992px) {
    .request-a-quote__content h3 {
        font-size: 3.6rem;
    }
}

.request-a-quote__front-image {
    position: absolute;
    right: 0;
    bottom: 0;
    text-align: right;
}

.request-a-quote__front-image img {
    max-width: 50%;
    margin-left: auto;
}

@media (min-width: 992px) {
    .request-a-quote__front-image img {
        max-width: 75%;
    }
}

/* Component Recent Projects
- - - - - - - - - - - - - - - - - - - - - - - - - */
.recent-projects {
    background: white;
}

@media (min-width: 992px) {
    .recent-projects__content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.recent-projects__content__item {
    text-align: center;
    margin-bottom: 3rem;
}

.recent-projects__content__item:last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .recent-projects__content__item {
        flex-basis: 48%;
    }
}

@media (min-width: 992px) {
    .recent-projects__content__item {
        flex-basis: 24%;
        margin-bottom: 0;
    }
}

.recent-projects__content__item__link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(45deg, #295c89 50%, #295c89 50.5%, rgba(255, 255, 255, 0) 50%);
    transition: all 0.2s ease-in-out;
    display: block;
    z-index: 100;
    opacity: 0;
    background: linear-gradient(-147deg, rgb(255, 255, 255, 0) 49.5%, #295c89 50.1%, #295c89);
}

.recent-projects__content__item__image {
    position: relative;
}

.recent-projects__content__item__image:hover .recent-projects__content__item__link {
    opacity: 0.7;
}
.recent-projects__content__item__location {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
.recent-projects__content__item {
    transition: transform 0.3s ease; /* 动画持续时间为0.3秒 */
    transform: translateY(0); /* 初始状态不移动 */
}
.recent-projects__content__item:hover {
    transform: translateY(-1rem); /* 鼠标悬停时向上移动10像素 */
}

@media (min-width: 992px) {
    .recent-projects__content__item__title {
        font-size: 2rem;
    }
}

/* Component Compliance
- - - - - - - - - - - - - - - - - - - - - - - - - */
.compliance {
    background: rgba(41, 92, 137, 1);
    color: #ffffff;
}

/* Pre-title */
.compliance .introduction .pre-title {
    border-top: 4px solid rgba(96, 185, 240, 1);
    color: #ffffff;
}

.compliance .introduction h2 {
    text-transform: uppercase;
    color: #ffffff;
}

.compliance .introduction p {
    color: #ffffff;
}

@media (min-width: 992px) {
    .compliance__content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.compliance__content__item {
    text-align: center;
    margin-bottom: 3rem;
}

.compliance__content__item:last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .compliance__content__item {
        flex-basis: 15%;
        margin-bottom: 0;
    }

    .compliance__content__item:nth-of-type(2),
    .compliance__content__item:nth-of-type(4) {
        padding-top: 3rem;
    }
}

.compliance__content__item__link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transition: all 0.2s ease-in-out;
    display: block;
}

.compliance__content__item__image {
    transition: all 0.2s ease-in-out;
    position: relative;
}

.compliance__content__item__image:hover {
    transform: scale(1);
    z-index: 100;
}

/* Component Services
- - - - - - - - - - - - - - - - - - - - - - - - - */
.services {
    background: white;
}

/* Pre-title */
.services .introduction p.pre-title {
    max-width: 120px;
}

@media (min-width: 992px) {
    .services__content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.services__content__item {
    position: relative;
    text-align: center;
    margin-bottom: 3rem;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
}

.services__content__item:last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .services__content__item {
        flex-basis: 23%;
        margin-bottom: 0;
    }
}

.services__content__item__overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.5);
    transition: all 0.2s ease-in-out;
}

.services__content__item__title {
    position: relative;
    z-index: 10;
    font-size: 2rem;
    text-transform: uppercase;
}

.services__content__item__link {
    color: white;
    margin-bottom: 0;
    transition: all 0.2s ease-in-out;
    display: block;
}

.services__content__item__image {
    transition: all 0.2s ease-in-out;
    position: relative;
}

/* Component Products
- - - - - - - - - - - - - - - - - - - - - - - - - */
.products {
    background: rgba(41, 92, 137, 1);
    color: #ffffff;
}

/* Pre-title */
.products .introduction .pre-title {
    max-width: 130px;
    border-top: 4px solid rgba(96, 185, 240, 1);
    color: #ffffff;
}

.products .introduction h2 {
    text-transform: uppercase;
    color: #ffffff;
}

.products .introduction p {
    color: #ffffff;
}

@media (min-width: 992px) {
    .products__content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        align-items: flex-start;
    }
}

.products__content__item {
    text-align: center;
    margin-bottom: 3rem;
}

.products__content__item:last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .products__content__item {
        flex-basis: 40%;
        margin-bottom: 0;
    }
}

.products__content__item__link {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(41, 92, 137, 1);
    transition: all 0.2s ease-in-out;
    display: block;
    z-index: 100;
    opacity: 0;
}

.products__content__item__image {
    border: 5px solid white;
    position: relative;
}

.products__content__item__image img {
    width: 100%;
}

.products__content__item__image:hover .recent-projects__content__item__link {
    opacity: 1;
}
.recent-projects__content__item__image {
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}
.recent-projects__content__item__image:hover img {
    transform: scale(1.2);
    transition: all 0.3s ease-in-out;
}

.products__content__item__content {
    background: white;
    padding: 3rem;
}

.products__content__item__content ul {
    margin-bottom: 2rem;
}

.products__content__item__content ul li {
    color: black;
}

/* Component Products
- - - - - - - - - - - - - - - - - - - - - - - - - */
.section-introduction {
    background: white;
}

@media (min-width: 992px) {
    .section-introduction .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

.section-introduction__images {
    margin-bottom: 3rem;
}

@media (min-width: 992px) {
    .section-introduction__images {
        flex-basis: 50%;
    }
}

.section-introduction__images__01 {
    max-width: 70%;
    position: relative;
}

.section-introduction__images__01__overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(96, 185, 240, 1);
    opacity: 0.8;
}

.section-introduction__images__02 {
    max-width: 70%;
    position: relative;
    margin-left: auto;
    margin-top: -60px;
}

@media (min-width: 992px) {
    .section-introduction__images__02 {
        margin-top: -320px;
    }
}

@media (min-width: 992px) {
    .section-introduction__content {
        flex-basis: 40%;
    }
}

.section-introduction__content h2 {
    position: relative;
    text-transform: none;
    font-weight: 400;
    font-size: 1.5rem;
}

.section-introduction__content h2 span {
    display: inline-block;
    width: 30px;
    background: rgba(96, 185, 240, 1);
    height: 4px;
    margin-right: 2rem;
}

@media (min-width: 992px) {
    .section-introduction__content h2 span {
        font-size: 1.8rem;
    }
}

.section-introduction__content h3 {
    font-size: 3.6rem;
}

@media (min-width: 992px) {
    .section-introduction__content h3 {
        font-size: 5rem;
    }
}

.section-introduction__content p:nth-of-type(2) {
    max-width: 80%;
    margin-left: auto;
}

/* Component Media Block
- - - - - - - - - - - - - - - - - - - - - - - - - */
.media-block {
    position: relative;
    background: none;
}

.media-block--black {
    background: #10384d;
}

.media-block--white {
    background: #ffffff;
}

.media-block--blue {
    background: rgba(41, 92, 137, 1);
}

.media-block--grey {
    background: rgba(73, 80, 87, 1);
}

.media-block--light-grey {
    background: #f2f2f2;
}

.media-block--fleuro-yellow {
    background: rgba(33, 150, 243, 0.2);
}

.media-block .container > :last-child {
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .media-block .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

@media (min-width: 992px) {
    .media-block--reverse .container {
        flex-flow: row-reverse;
    }
}

@media (min-width: 992px) {
    .media-block__content {
        flex-basis: 48%;
    }
}

.media-block__content .blue-box {
    background: rgba(96, 185, 240, 0.5);
    color: black;
    padding: 2rem;
}

@media (min-width: 992px) {
    .media-block__image {
        flex-basis: 48%;
    }
}

.media-block__image img {
    display: block;
}

@media (min-width: 992px) {
    .media-block__image img {
        max-width: 70%;
        margin-left: 15%;
    }
}

/* Light Backgrounds */
.media-block h1,
.media-block h2,
.media-block h3,
.media-block h4,
.media-block h5,
.media-block h6 {
    color: #10384d;
}

@media (min-width: 992px) {
    .media-block h1.reduced-width,
    .media-block h2.reduced-width,
    .media-block h3.reduced-width,
    .media-block h4.reduced-width,
    .media-block h5.reduced-width,
    .media-block h6.reduced-width {
        max-width: 80%;
    }
}

.media-block p {
    color: rgba(108, 117, 125, 1);
}

.media-block p strong {
    color: #295c89;
}

.media-block p.large-paragraph {
    color: rgba(33, 37, 41, 1);
}

@media (min-width: 992px) {
    .media-block p.reduced-width {
        max-width: 80%;
    }
}

.media-block p a,
.media-block a {
    font-weight: 600;
    color: rgba(41, 92, 137, 1);
    border-bottom: 1px dotted rgba(33, 37, 41, 1);
    padding-bottom: 2px;
}

.media-block p a:hover,
.media-block p a:focus,
.media-block a:hover,
.media-block a:focus {
    color: #3498db;
    border-bottom: 1px dotted #3498db;
}

.media-block ul {
    margin-bottom: 2rem;
}

.media-block ul li {
    color: rgba(33, 37, 41, 1);
}

/* Dark Backgrounds */
.media-block--black h1,
.media-block--black h2,
.media-block--black h3,
.media-block--black h4,
.media-block--black h5,
.media-block--black h6,
.media-block--grey h1,
.media-block--grey h2,
.media-block--grey h3,
.media-block--grey h4,
.media-block--grey h5,
.media-block--grey h6 {
    color: #ffffff;
}

@media (min-width: 992px) {
    .media-block--black h1.reduced-width,
    .media-block--black h2.reduced-width,
    .media-block--black h3.reduced-width,
    .media-block--black h4.reduced-width,
    .media-block--black h5.reduced-width,
    .media-block--black h6.reduced-width,
    .media-block--grey h1.reduced-width,
    .media-block--grey h2.reduced-width,
    .media-block--grey h3.reduced-width,
    .media-block--grey h4.reduced-width,
    .media-block--grey h5.reduced-width,
    .media-block--grey h6.reduced-width {
        max-width: 80%;
    }
}

.media-block--black p,
.media-block--grey p {
    color: rgba(173, 181, 189, 1);
}

.media-block--black p strong,
.media-block--grey p strong {
    color: #ffffff;
}

.media-block--black p.large-paragraph,
.media-block--grey p.large-paragraph {
    color: #ffffff;
}

@media (min-width: 992px) {
    .media-block--black p.reduced-width,
    .media-block--grey p.reduced-width {
        max-width: 80%;
    }
}

.media-block--black p a,
.media-block--black a,
.media-block--grey p a,
.media-block--grey a {
    font-weight: 600;
    color: #ffffff;
    border-bottom: 1px dotted rgba(173, 181, 189, 1);
    padding-bottom: 2px;
}

.media-block--black p a:hover,
.media-block--black p a:focus,
.media-block--black a:hover,
.media-block--black a:focus,
.media-block--grey p a:hover,
.media-block--grey p a:focus,
.media-block--grey a:hover,
.media-block--grey a:focus {
    color: rgba(33, 150, 243, 0.2);
    border-bottom: 1px dotted rgba(33, 150, 243, 0.2);
}

.media-block--black .btn:hover,
.media-block--black .btn:focus,
.media-block--grey .btn:hover,
.media-block--grey .btn:focus {
    border: 2px solid #ffffff;
    color: #ffffff;
    background: none;
}

.media-block--black ul,
.media-block--grey ul {
    margin-bottom: 2rem;
}

.media-block--black ul li,
.media-block--grey ul li {
    color: #ffffff;
}

.media-block--black ul.list--arrow li,
.media-block--grey ul.list--arrow li {
    color: rgba(173, 181, 189, 1);
}

.media-block--black ul.list--arrow li:before,
.media-block--grey ul.list--arrow li:before {
    color: rgba(33, 150, 243, 0.2);
}

.media-block--black ul.list--check li,
.media-block--grey ul.list--check li {
    color: rgba(173, 181, 189, 1);
}

.media-block--black ul.list--check li:before,
.media-block--grey ul.list--check li:before {
    color: rgba(33, 150, 243, 0.2);
}

.media-block--blue h1,
.media-block--blue h2 {
    color: #ffffff;
}

.media-block--blue h3,
.media-block--blue h4,
.media-block--blue h5,
.media-block--blue h6 {
    color: #ffffff;
}

@media (min-width: 992px) {
    .media-block--blue h3.reduced-width,
    .media-block--blue h4.reduced-width,
    .media-block--blue h5.reduced-width,
    .media-block--blue h6.reduced-width {
        max-width: 80%;
    }
}

.media-block--blue p {
    color: rgba(206, 212, 218, 1);
}

.media-block--blue p strong {
    color: #ffffff;
}

.media-block--blue p.large-paragraph {
    color: #ffffff;
}

@media (min-width: 992px) {
    .media-block--blue p.reduced-width {
        max-width: 80%;
    }
}

.media-block--blue p a,
.media-block--blue a {
    font-weight: 600;
    color: #ffffff;
    border-bottom: 1px dotted rgba(206, 212, 218, 1);
    padding-bottom: 2px;
}

.media-block--blue p a:hover,
.media-block--blue p a:focus,
.media-block--blue a:hover,
.media-block--blue a:focus {
    color: rgba(33, 150, 243, 0.2);
    border-bottom: 1px dotted rgba(33, 150, 243, 0.2);
}

.media-block--blue .btn:hover,
.media-block--blue .btn:focus {
    border: 2px solid #ffffff;
    color: #ffffff;
    background: none;
}

.media-block--blue ul {
    margin-bottom: 2rem;
}

.media-block--blue ul li {
    color: #ffffff;
}

.media-block--blue ul.list--arrow li {
    color: rgba(173, 181, 189, 1);
}

.media-block--blue ul.list--arrow li:before {
    color: rgba(33, 150, 243, 0.2);
}

.media-block--blue ul.list--check li {
    color: rgba(173, 181, 189, 1);
}

.media-block--blue ul.list--check li:before {
    color: rgba(33, 150, 243, 0.2);
}

/* Inline Buttons */
@media (min-width: 768px) {
    .media-block .inline-buttons {
        display: flex;
        gap: 0 1rem;
    }

    .media-block .inline-buttons-centered {
        display: flex;
        gap: 0 1rem;
        justify-content: center;
    }
}

/* Cladding Boxes
- - - - - - - - - - - - - - - - - - - - - - - - - */
.cladding-boxes {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-top: 3rem;
}

.cladding-boxes .cladding-box {
    flex-basis: 100%;
    max-width: 100%;
    text-align: center;
    margin-bottom: 1rem;
}

@media (min-width: 992px) {
    .cladding-boxes .cladding-box {
        margin-bottom: 3rem;
    }

    .cladding-boxes .cladding-box:nth-of-type(1) {
        flex-basis: 100%;
    }

    .cladding-boxes .cladding-box:nth-of-type(1) .cladding-box-wrapper {
        max-width: 50%;
        margin: 0 auto;
    }

    .cladding-boxes .cladding-box:nth-of-type(2) {
        flex-basis: 50%;
    }

    .cladding-boxes .cladding-box:nth-of-type(2) .cladding-box-wrapper {
        max-width: 96%;
        margin-right: auto;
    }

    .cladding-boxes .cladding-box:nth-of-type(3) {
        flex-basis: 50%;
    }

    .cladding-boxes .cladding-box:nth-of-type(3) .cladding-box-wrapper {
        max-width: 96%;
        margin-left: auto;
    }

    .cladding-boxes .cladding-box:nth-of-type(4) {
        flex-basis: 100%;
    }

    .cladding-boxes .cladding-box:nth-of-type(4) .cladding-box-wrapper {
        max-width: 50%;
        margin: 0 auto;
    }
}

.cladding-boxes .cladding-box h3 {
    color: #ffffff;
}

@media (min-width: 992px) {
    .cladding-boxes .cladding-box h3 {
        font-size: 2.2rem;
    }
}

.cladding-boxes .cladding-box p {
    color: rgba(161, 212, 228, 1);
    font-size: 1.7rem;
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .cladding-boxes .cladding-box p {
        font-size: 1.6rem;
    }
}

.cladding-boxes .cladding-box-wrapper {
    max-width: 100%;
    background: rgba(41, 92, 137, 1);
    padding: 2rem;
}

/* Component Finishes
- - - - - - - - - - - - - - - - - - - - - - - - - */
/* Product Data */
@media (min-width: 992px) {
    .finishes .container {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-wrap: wrap;
    }
}

.finishes {
    margin: 0 auto;
    max-width: 100%;
}

@media (min-width: 992px) {
    .finishes header {
        flex-basis: 100%;
    }
}

.finishes__tables {
    margin-bottom: 2rem;
}

@media (min-width: 992px) {
    .finishes__tables {
        flex-basis: 100%;
        padding-bottom: 2rem;
        border-bottom: 1px solid rgba(233, 236, 239, 1);
    }
}

@media (min-width: 992px) {
    .finishes__tables {
        border-bottom: none;
    }
}

.finishes__tables__title-tabs {
    background: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .finishes__tables__title-tabs > .container {
        padding: 0;
    }
}

@media (min-width: 992px) {
    .finishes__tables__content-tabs > .container {
        padding: 0;
    }
}

.finishes__tables ul.tabs {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    display: none;
}

@media (min-width: 992px) {
    .finishes__tables ul.tabs {
        display: flex;
    }
}

.finishes__tables ul.tabs li {
    font-weight: 600;
    cursor: pointer;
    background: rgba(41, 92, 137, 1);
    color: #ffffff;
    transition: all 0.2s ease-in-out;
    padding: 1rem 1.5rem;
    flex: 1;
    text-align: center;
    font-size: 1.6rem;
}

.finishes__tables ul.tabs li.active,
.finishes__tables ul.tabs li:hover,
.finishes__tables ul.tabs li:focus {
    background: rgba(161, 212, 228, 1);
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .finishes__tables ul.tabs li {
        font-size: 1.4rem;
    }
}

.finishes__tables .tab_container {
    border-top: none;
    width: 100%;
    overflow: auto;
}

.finishes__tables .tab_content {
    background: #ffffff;
    padding: 2rem;
    display: none;
}

@media (min-width: 992px) {
    .finishes__tables .tab_content {
        padding: 3rem 0;
        background: none;
    }

    .finishes__tables .tab_content .container {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.finishes__tables .tab_content h4 {
    color: rgba(41, 92, 137, 1);
}

@media (min-width: 992px) {
    .finishes__tables .tab_content h4 {
        flex-basis: 100%;
        padding-bottom: 1rem;
        margin-bottom: 3rem;
        border-bottom: 1px solid rgba(73, 80, 87, 1);
    }
}

.finishes__tables .tab_content p {
    color: rgba(108, 117, 125, 1);
}

.finishes__tables .tab_content p strong {
    color: rgba(73, 80, 87, 1);
}

.finishes__tables .tab_content p.large-paragraph {
    color: rgba(33, 37, 41, 1);
}

@media (min-width: 992px) {
    .finishes__tables .tab_content p.reduced-width {
        max-width: 80%;
    }
}

.finishes__tables .tab_content p a,
.finishes__tables .tab_content a {
    font-weight: 600;
    color: rgba(41, 92, 137, 1);
    border-bottom: 1px dotted rgba(33, 37, 41, 1);
    padding-bottom: 2px;
}

.finishes__tables .tab_content p a:hover,
.finishes__tables .tab_content p a:focus,
.finishes__tables .tab_content a:hover,
.finishes__tables .tab_content a:focus {
    color: #3498db;
    border-bottom: 1px dotted #3498db;
}

.finishes__tables .tab_content__info p {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.finishes__tables .tab_content__info p img {
    flex-basis: 50%;
}

@media (min-width: 992px) {
    .finishes__tables .tab_content__info p img {
        flex-basis: 20%;
    }
}

.finishes__tables .tab_drawer_heading {
    display: none;
}

/* FOR MOBILE */
@media screen and (max-width: 991px) {
    .finishes__tables .tabs {
        display: none;
    }

    .finishes__tables .tab_drawer_heading {
        background-color: rgba(41, 92, 137, 1);
        color: #ffffff;
        border-top: 1px solid #ffffff;
        margin: 0;
        padding: 1.5rem;
        display: block;
        cursor: pointer;
        font-size: 1.6rem;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
    }

    .finishes__tables .tab_drawer_heading:first-of-type {
        border-radius: 5px 5px 0 0;
    }

    .finishes__tables .tab_drawer_heading:last-of-type {
        border-radius: 0 0 5px 5px;
    }

    .finishes__tables .tab_drawer_heading:last-of-type.d_active {
        border-radius: 0;
    }

    .finishes__tables .tab_drawer_heading .fa-duotone {
        width: 25px;
    }

    .finishes__tables .d_active {
        background-color: rgba(161, 212, 228, 1);
        color: rgba(41, 92, 137, 1);
    }
}

/*# sourceMappingURL=maps/main.css.map */
