/*
! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com
*/ /*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
    box-sizing: border-box; /* 1 */
    border-width: 0; /* 2 */
    border-style: solid; /* 2 */
    border-color: currentColor; /* 2 */
}

::before,
::after {
    --tw-content: "";
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
*/

html {
    line-height: 1.5; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -moz-tab-size: 4; /* 3 */
    tab-size: 4; /* 3 */
    font-family: Ubuntu, ui-sans-serif, sans-serif; /* 4 */
    font-feature-settings: normal; /* 5 */
    font-variation-settings: normal; /* 6 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
    margin: 0; /* 1 */
    line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
    height: 0; /* 1 */
    color: inherit; /* 2 */
    border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
    text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
    color: inherit;
    text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
    font-weight: bolder;
}

/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
        "Liberation Mono", "Courier New", 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;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
    text-indent: 0; /* 1 */
    border-color: inherit; /* 2 */
    border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
    font-family: inherit; /* 1 */
    font-feature-settings: inherit; /* 1 */
    font-variation-settings: inherit; /* 1 */
    font-size: 100%; /* 1 */
    font-weight: inherit; /* 1 */
    line-height: inherit; /* 1 */
    color: inherit; /* 1 */
    margin: 0; /* 2 */
    padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
    text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button; /* 1 */
    background-color: transparent; /* 2 */
    background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
    outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
    box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
    vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-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.
*/

::-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 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
    display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
    margin: 0;
}

fieldset {
    margin: 0;
    padding: 0;
}

legend {
    padding: 0;
}

ol,
ul,
menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
    padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
    resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::placeholder,
textarea::placeholder {
    opacity: 1; /* 1 */
    color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
    cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
    cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
    display: block; /* 1 */
    vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
    max-width: 100%;
    height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
    display: none;
}
/* ubuntu-300 - latin */
@font-face {
    font-display: swap;
    font-family: "Ubuntu";
    font-style: normal;
    font-weight: 300;
    src: url("../Fonts/ubuntu-v20-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-regular - latin */
@font-face {
    font-display: swap;
    font-family: "Ubuntu";
    font-style: normal;
    font-weight: 400;
    src: url("../Fonts/ubuntu-v20-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-500 - latin */
@font-face {
    font-display: swap;
    font-family: "Ubuntu";
    font-style: normal;
    font-weight: 500;
    src: url("../Fonts/ubuntu-v20-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ubuntu-700 - latin */
@font-face {
    font-display: swap;
    font-family: "Ubuntu";
    font-style: normal;
    font-weight: 700;
    src: url("../Fonts/ubuntu-v20-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
html,
body {
    font-family: Ubuntu, ui-sans-serif, sans-serif;
    font-weight: 400;
    --tw-text-opacity: 1;
    color: rgb(0 0 0 / var(--tw-text-opacity));
}

nav,
header,
a,
button {
    font-weight: 400;
}

/*
Default heading styles.

A tag selector can always be overridden with a class selector regardless of
CSS order.
*/

h1,
.h1 {
    margin-bottom: 0.75rem;
    font-size: 2.5rem;
    line-height: 3rem;
    font-weight: 300;
    letter-spacing: -0.02em;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}

@media (min-width: 1280px) {
    h1,
    .h1 {
        margin-bottom: 1rem;
        font-size: 4rem;
        line-height: 4.8rem;
    }
}

h2,
.h2 {
    margin-bottom: 0.5rem;
    font-size: 2rem;
    line-height: 2.625rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}

@media (min-width: 1280px) {
    h2,
    .h2 {
        margin-bottom: 0.75rem;
        font-size: 3.5rem;
        line-height: 4.2rem;
        line-height: 64px;
    }
}

h3,
.h3 {
    margin-bottom: 1rem;
    font-size: 1.75rem;
    line-height: 2.125rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}

@media (min-width: 1280px) {
    h3,
    .h3 {
        font-size: 2rem;
        line-height: 2.625rem;
    }
}

h4,
.h4 {
    margin-bottom: 0.75rem;
    font-size: 1.5rem;
    line-height: 2.25rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}

@media (min-width: 1280px) {
    h4,
    .h4 {
        font-size: 1.75rem;
        line-height: 2.125rem;
    }
}

h5,
.h5 {
    margin-bottom: 0.5rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}

h6,
.h6 {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}

.lead {
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}

@media (min-width: 1280px) {
    .lead {
        font-size: 1.5rem;
        line-height: 2.25rem;
    }
}

.menu-primary {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}

.menu-secondary {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 400;
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}

.kicker {
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.05rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    --tw-text-opacity: 1;
    color: rgb(207 0 61 / var(--tw-text-opacity));
}

p {
    margin-bottom: 1rem;
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}

@media (min-width: 1280px) {
    p {
        font-size: 1.5rem;
        line-height: 2.25rem;
    }
}

p:last-child {
    margin-bottom: 0px !important;
}

label,
span,
h1,
h2,
h3 {
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: normal;
    hyphens: none;
}

a {
    overflow-wrap: break-word;
    word-break: break-word;
}

@media (max-width: 1279px) {
    p {
        overflow-wrap: break-word;
        word-break: break-word;
    }
}

li {
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}

ul {
    margin-bottom: 0.875rem;
}

ul:last-child {
    margin-bottom: 0px !important;
}
/* only keyvisual */
ul.list-style-checkmark-01 {
    display: flex;
    flex-wrap: wrap;
    row-gap: 0.5rem;
    column-gap: 2rem;
}
ul.list-style-checkmark-01 li {
    position: relative;
    margin-left: 1.5rem;
    font-size: 1.0625rem;
    line-height: 1.625rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}
ul.list-style-checkmark-01 li::before {
    position: absolute;
    top: 0.25rem;
    left: -1.5rem;
    display: inline-block;
    height: 1rem;
    width: 1rem;
    background-image: url(../Icons/checkmark-16.svg);
    background-repeat: no-repeat;
    --tw-content: "";
    content: var(--tw-content);
}
/* only specific elements */
ul.list-style-plus {
    display: flex;
    flex-direction: column;
}
ul.list-style-plus li {
    position: relative;
    list-style: disc;
    margin-left: 1.5rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 300;
}
/*
ul.list-style-plus li::before {
    position: absolute;
    top: 0.375rem;
    left: -1.5rem;
    display: inline-block;
    height: 1rem;
    width: 1rem;
    background-image: url(../Icons/plus-16.svg);
    background-repeat: no-repeat;
    --tw-content: "";
    content: var(--tw-content);
}
*/
/* chooseable style in rte */
/* default class for ul in rte */
ul.list-style-checkmark-02 {
    display: flex;
    flex-direction: column;
}
ul.list-style-checkmark-02 li {
    position: relative;
    margin-left: 2rem;
    margin-bottom: 0.75rem;
    font-size: 1.0625rem;
    line-height: 1.625rem;
    font-weight: 300;
}
ul.list-style-checkmark-02 li::before {
    position: absolute;
    top: 0.375rem;
    left: -2rem;
    display: inline-block;
    height: 1.25rem;
    width: 1.25rem;
    background-image: url(../Icons/checkmark-20.svg);
    background-repeat: no-repeat;
    --tw-content: "";
    content: var(--tw-content);
}
/* chooseable style in rte */
ul.list-style-plus-02 {
    display: flex;
    flex-direction: column;
}
ul.list-style-plus-02 li {
    position: relative;
    margin-left: 2rem;
    margin-bottom: 0.75rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 300;
}
ul.list-style-plus-02 li::before {
    position: absolute;
    top: 0.375rem;
    left: -2rem;
    display: inline-block;
    height: 1.25rem;
    width: 1.25rem;
    background-image: url(../Icons/plus-20.svg);
    background-repeat: no-repeat;
    --tw-content: "";
    content: var(--tw-content);
}
/* chooseable style in rte */
ul.list-style-contact {
    display: flex;
    flex-direction: column;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 300;
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}
ul.list-style-contact li:first-of-type {
    position: relative;
    margin-left: 1.75rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 300;
}
ul.list-style-contact li:first-of-type::before {
    position: absolute;
    top: 0.125rem;
    left: -1.75rem;
    display: inline-block;
    height: 1rem;
    width: 1rem;
    --tw-content: url(../Icons/mail-rte.svg);
    content: var(--tw-content);
}
ul.list-style-contact li:nth-of-type(2) {
    position: relative;
    margin-left: 1.75rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 300;
}
ul.list-style-contact li:nth-of-type(2)::before {
    position: absolute;
    top: 0.25rem;
    left: -1.75rem;
    display: inline-block;
    height: 1rem;
    width: 1rem;
    --tw-content: url(../Icons/phone-rte.svg);
    content: var(--tw-content);
}

ol {
    margin-bottom: 0.875rem;
}

ol:last-child {
    margin-bottom: 0px !important;
}
/* chooseable style in rte */
ol.list-style-01 {
    display: flex;
    flex-direction: column;
    counter-reset: first_item;
}
ol.list-style-01 li {
    position: relative;
    margin-left: 2rem;
    margin-bottom: 0.75rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 300;
}
ol.list-style-01 li::before {
    position: absolute;
    left: -2rem;
    top: 0.375rem;
    display: flex;
    height: 1.25rem;
    width: 1.25rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(0 125 182 / var(--tw-bg-opacity));
    font-size: 0.75rem;
    line-height: 0.9375rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
    content: counter(first_item);
    counter-increment: first_item;
}
main a {
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(79 125 141 / var(--tw-text-opacity));
}
@media (hover: hover) and (pointer: fine) {
    main a:hover {
        --tw-text-opacity: 1;
        color: rgb(93 191 192 / var(--tw-text-opacity));
    }
}
main a.footer {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 400;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}
@media (hover: hover) and (pointer: fine) {
    main a.footer:hover {
        --tw-text-opacity: 1;
        color: rgb(93 191 192 / var(--tw-text-opacity));
    }
}
html {
    height: 100%;
}

*,
::before,
::after {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
}

::backdrop {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
}
.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 1rem;
    padding-left: 1rem;
}
@media (min-width: 380px) {
    .container {
        max-width: 380px;
    }
}
@media (min-width: 480px) {
    .container {
        max-width: 480px;
    }
}
@media (min-width: 768px) {
    .container {
        max-width: 768px;
    }
}
@media (min-width: 960px) {
    .container {
        max-width: 960px;
    }
}
@media (min-width: 1280px) {
    .container {
        max-width: 1280px;
    }
}
@media (min-width: 1417px) {
    .container {
        max-width: 1417px;
    }
}
@media (min-width: 2160px) {
    .container {
        max-width: 2160px;
    }
}
@media (min-width: 2362px) {
    .container {
        max-width: 2362px;
    }
}
/* for escape-left elements */
/* for escape-right elements */
.container-left {
    padding-left: 1rem;
    margin-left: 0;
    margin-right: auto;
}
@media (max-width: 1279px) {
    .container {
        max-width: 100%;
    }
}
@media (min-width: 1280px) {
    .container-right,
    .container-left {
        max-width: calc(var(--breakpoint) + var(--outer-gap));
    }
    /* for escape-right elements */
    .container-left {
        padding-left: 3.75rem;
    }
    .container {
        padding-left: 3.75rem;
        padding-right: 3.75rem;
    }
}
@media (min-width: 2160px) {
    .container {
        max-width: 1417px;
    }
}
@media (min-width: 1417px) {
    .container.section-narrow {
        margin-left: var(--outer-gap);
    }
    .section-narrow .container {
        margin-right: 0;
        padding-right: 0;
    }
}
/*no responsive variants for this class, max-width should only affect desktop anyway.*/
@media (min-width: 1280px) {
    .section.section-narrow {
        margin-left: var(--outer-gap);
        /*needs to be specific enough to override .container*/
    }
}
@media (min-width: 1417px) {
    .section.section-narrow,
    .section.section-narrow.container {
        max-width: 916px;
    }
}
@media (min-width: 1280px) {
    :root .with-sidebar__content .container.section-narrow {
        margin-left: var(--outer-gap);
    }
}
.fixed {
    position: fixed;
}
.absolute {
    position: absolute;
}
.relative {
    position: relative;
}
.-bottom-2 {
    bottom: -0.5rem;
}
.-left-1 {
    left: -0.25rem;
}
.-left-\[44px\] {
    left: -44px;
}
.-right-1 {
    right: -0.25rem;
}
.-top-16 {
    top: -4rem;
}
.bottom-0 {
    bottom: 0px;
}
.left-0 {
    left: 0px;
}
.left-14 {
    left: 3.5rem;
}
.left-4 {
    left: 1rem;
}
.left-\[50\%\] {
    left: 50%;
}
.right-0 {
    right: 0px;
}
.right-14 {
    right: 3.5rem;
}
.right-4 {
    right: 1rem;
}
.right-\[-1rem\] {
    right: -1rem;
}
.top-0 {
    top: 0px;
}
.top-1 {
    top: 0.25rem;
}
.top-1\.5 {
    top: 0.375rem;
}
.top-1\/2 {
    top: 50%;
}
.top-20 {
    top: 5rem;
}
.top-4 {
    top: 1rem;
}
.top-6 {
    top: 1.5rem;
}
.top-6\.5 {
    top: 1.625rem;
}
.top-\[-1rem\] {
    top: -1rem;
}
.top-\[140px\] {
    top: 140px;
}
.top-\[57px\] {
    top: 57px;
}
.-z-10 {
    z-index: -10;
}
.z-50 {
    z-index: 50;
}
.z-60 {
    z-index: 60;
}
.z-70 {
    z-index: 70;
}
.z-80 {
    z-index: 80;
}
.m-6 {
    margin: 1.5rem;
}
.mx-4 {
    margin-left: 1rem;
    margin-right: 1rem;
}
.mx-auto {
    margin-left: auto;
    margin-right: auto;
}
.my-3 {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
}
.\!-mt-0 {
    margin-top: -0px !important;
}
.\!mb-7 {
    margin-bottom: 1.75rem !important;
}
.\!mt-0 {
    margin-top: 0px !important;
}
.-ml-1 {
    margin-left: -0.25rem;
}
.-ml-1\.5 {
    margin-left: -0.375rem;
}
.-ml-2 {
    margin-left: -0.5rem;
}
.-mr-1 {
    margin-right: -0.25rem;
}
.-mr-1\.5 {
    margin-right: -0.375rem;
}
.-mr-2 {
    margin-right: -0.5rem;
}
.-mr-3 {
    margin-right: -0.75rem;
}
.-mt-1 {
    margin-top: -0.25rem;
}
.-mt-12 {
    margin-top: -3rem;
}
.-mt-3 {
    margin-top: -0.75rem;
}
.-mt-3\.5 {
    margin-top: -0.875rem;
}
.mb-0 {
    margin-bottom: 0px;
}
.mb-1 {
    margin-bottom: 0.25rem;
}
.mb-10 {
    margin-bottom: 2.5rem;
}
.mb-12 {
    margin-bottom: 3rem;
}
.mb-14 {
    margin-bottom: 3.5rem;
}
.mb-2 {
    margin-bottom: 0.5rem;
}
.mb-3 {
    margin-bottom: 0.75rem;
}
.mb-3\.5 {
    margin-bottom: 0.875rem;
}
.mb-4 {
    margin-bottom: 1rem;
}
.mb-5 {
    margin-bottom: 1.25rem;
}
.mb-6 {
    margin-bottom: 1.5rem;
}
.mb-7 {
    margin-bottom: 1.75rem;
}
.mb-8 {
    margin-bottom: 2rem;
}
.mb-9 {
    margin-bottom: 2.25rem;
}
.ml-2 {
    margin-left: 0.5rem;
}
.ml-4 {
    margin-left: 1rem;
}
.ml-6 {
    margin-left: 1.5rem;
}
.ml-auto {
    margin-left: auto;
}
.mr-1 {
    margin-right: 0.25rem;
}
.mr-12 {
    margin-right: 3rem;
}
.mr-3 {
    margin-right: 0.75rem;
}
.mr-4 {
    margin-right: 1rem;
}
.mr-5 {
    margin-right: 1.25rem;
}
.mr-6 {
    margin-right: 1.5rem;
}
.mr-9 {
    margin-right: 2.25rem;
}
.mr-auto {
    margin-right: auto;
}
.mt-0 {
    margin-top: 0px;
}
.mt-0\.5 {
    margin-top: 0.125rem;
}
.mt-0\.75 {
    margin-top: 0.188rem;
}
.mt-1 {
    margin-top: 0.25rem;
}
.mt-14 {
    margin-top: 3.5rem;
}
.mt-2 {
    margin-top: 0.5rem;
}
.mt-25 {
    margin-top: 6.25rem;
}
.mt-3 {
    margin-top: 0.75rem;
}
.mt-4 {
    margin-top: 1rem;
}
.mt-\[3px\] {
    margin-top: 3px;
}
.block {
    display: block;
}
.flex {
    display: flex;
}
.grid {
    display: grid;
}
.contents {
    display: contents;
}
.\!hidden {
    display: none !important;
}
.hidden {
    display: none;
}
.aspect-3\/2 {
    aspect-ratio: 3 / 2;
}
.aspect-4\/3 {
    aspect-ratio: 4 / 3;
}
.aspect-square {
    aspect-ratio: 1 / 1;
}
.aspect-video {
    aspect-ratio: 16 / 9;
}
.h-0 {
    height: 0px;
}
.h-1 {
    height: 0.25rem;
}
.h-1\.5 {
    height: 0.375rem;
}
.h-10 {
    height: 2.5rem;
}
.h-11 {
    height: 2.75rem;
}
.h-112 {
    height: 28rem;
}
.h-12 {
    height: 3rem;
}
.h-136 {
    height: 34rem;
}
.h-14 {
    height: 3.5rem;
}
.h-154 {
    height: 38.5rem;
}
.h-166 {
    height: 41.5rem;
}
.h-20 {
    height: 5rem;
}
.h-208 {
    height: 52rem;
}
.h-25 {
    height: 6.25rem;
}
.h-3 {
    height: 0.75rem;
}
.h-3\.5 {
    height: 0.875rem;
}
.h-32 {
    height: 8rem;
}
.h-4 {
    height: 1rem;
}
.h-5 {
    height: 1.25rem;
}
.h-6 {
    height: 1.5rem;
}
.h-7 {
    height: 1.75rem;
}
.h-70 {
    height: 17.5rem;
}
.h-88 {
    height: 22rem;
}
.h-9 {
    height: 2.25rem;
}
.h-\[380px\] {
    height: 380px;
}
.h-\[758px\] {
    height: 758px;
}
.h-auto {
    height: auto;
}
.h-fit {
    height: fit-content;
}
.h-full {
    height: 100%;
}
.max-h-126 {
    max-height: 31.5rem;
}
.max-h-\[72px\] {
    max-height: 72px;
}
.max-h-\[90vh\] {
    max-height: 90vh;
}
.max-h-\[95vh\] {
    max-height: 95vh;
}
.min-h-10 {
    min-height: 2.5rem;
}
.min-h-112 {
    min-height: 28rem;
}
.min-h-136 {
    min-height: 34rem;
}
.min-h-14 {
    min-height: 3.5rem;
}
.min-h-166 {
    min-height: 41.5rem;
}
.min-h-20 {
    min-height: 5rem;
}
.min-h-208 {
    min-height: 52rem;
}
.min-h-25 {
    min-height: 6.25rem;
}
.min-h-32 {
    min-height: 8rem;
}
.min-h-88 {
    min-height: 22rem;
}
.min-h-9 {
    min-height: 2.25rem;
}
.min-h-\[380px\] {
    min-height: 380px;
}
.min-h-\[820px\] {
    min-height: 820px;
}
.w-0 {
    width: 0px;
}
.w-1 {
    width: 0.25rem;
}
.w-1\.5 {
    width: 0.375rem;
}
.w-10 {
    width: 2.5rem;
}
.w-100\.5 {
    width: 25.175rem;
}
.w-11 {
    width: 2.75rem;
}
.w-12 {
    width: 3rem;
}
.w-14 {
    width: 3.5rem;
}
.w-20 {
    width: 5rem;
}
.w-25 {
    width: 6.25rem;
}
.w-28 {
    width: 7rem;
}
.w-3 {
    width: 0.75rem;
}
.w-3\.5 {
    width: 0.875rem;
}
.w-32 {
    width: 8rem;
}
.w-4 {
    width: 1rem;
}
.w-44 {
    width: 11rem;
}
.w-45 {
    width: 11.25rem;
}
.w-5 {
    width: 1.25rem;
}
.w-6 {
    width: 1.5rem;
}
.w-7 {
    width: 1.75rem;
}
.w-70 {
    width: 17.5rem;
}
.w-9 {
    width: 2.25rem;
}
.w-95 {
    width: 23.75rem;
}
.w-\[196px\] {
    width: 196px;
}
.w-\[353px\] {
    width: 353px;
}
.w-\[780px\] {
    width: 780px;
}
.w-\[856px\] {
    width: 856px;
}
.w-\[87vw\] {
    width: 87vw;
}
.w-\[96\%\] {
    width: 96%;
}
.w-auto {
    width: auto;
}
.w-fit {
    width: fit-content;
}
.w-full {
    width: 100%;
}
.min-w-10 {
    min-width: 2.5rem;
}
.min-w-100\.5 {
    min-width: 25.175rem;
}
.min-w-14 {
    min-width: 3.5rem;
}
.min-w-20 {
    min-width: 5rem;
}
.min-w-25 {
    min-width: 6.25rem;
}
.min-w-32 {
    min-width: 8rem;
}
.min-w-70 {
    min-width: 17.5rem;
}
.min-w-full {
    min-width: 100%;
}
.max-w-136 {
    max-width: 34rem;
}
.max-w-162 {
    max-width: 40.5rem;
}
.max-w-203 {
    max-width: 50.75rem;
}
.max-w-208 {
    max-width: 52rem;
}
.max-w-214 {
    max-width: 53.5rem;
}
.max-w-\[1297px\] {
    max-width: 1297px;
}
.max-w-\[188px\] {
    max-width: 188px;
}
.max-w-\[477px\] {
    max-width: 477px;
}
.max-w-\[856px\] {
    max-width: 856px;
}
.max-w-\[977px\] {
    max-width: 977px;
}
.flex-shrink-0 {
    flex-shrink: 0;
}
.shrink-0 {
    flex-shrink: 0;
}
.-translate-x-2\/4 {
    --tw-translate-x: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y))
        rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
        scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2 {
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y))
        rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
        scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-90 {
    --tw-rotate: -90deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y))
        rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
        scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-180 {
    --tw-rotate: 180deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y))
        rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
        scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-90 {
    --tw-rotate: 90deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y))
        rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
        scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.cursor-pointer {
    cursor: pointer;
}
.select-none {
    user-select: none;
}
.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}
.flex-col {
    flex-direction: column;
}
.flex-wrap {
    flex-wrap: wrap;
}
.items-center {
    align-items: center;
}
.justify-end {
    justify-content: flex-end;
}
.justify-center {
    justify-content: center;
}
.justify-between {
    justify-content: space-between;
}
.gap-0 {
    gap: 0px;
}
.gap-0\.5 {
    gap: 0.125rem;
}
.gap-1 {
    gap: 0.25rem;
}
.gap-12 {
    gap: 3rem;
}
.gap-2 {
    gap: 0.5rem;
}
.gap-3 {
    gap: 0.75rem;
}
.gap-4 {
    gap: 1rem;
}
.gap-5 {
    gap: 1.25rem;
}
.gap-6 {
    gap: 1.5rem;
}
.gap-7 {
    gap: 1.75rem;
}
.gap-x-10 {
    column-gap: 2.5rem;
}
.gap-x-12 {
    column-gap: 3rem;
}
.gap-x-4 {
    column-gap: 1rem;
}
.gap-x-8 {
    column-gap: 2rem;
}
.gap-y-1 {
    row-gap: 0.25rem;
}
.gap-y-10 {
    row-gap: 2.5rem;
}
.gap-y-16 {
    row-gap: 4rem;
}
.gap-y-4 {
    row-gap: 1rem;
}
.gap-y-6 {
    row-gap: 1.5rem;
}
.gap-y-7 {
    row-gap: 1.75rem;
}
.gap-y-8 {
    row-gap: 2rem;
}
.overflow-auto {
    overflow: auto;
}
.overflow-hidden {
    overflow: hidden;
}
.overflow-x-auto {
    overflow-x: auto;
}
.overflow-y-hidden {
    overflow-y: hidden;
}
.hyphens-auto {
    hyphens: auto;
}
.whitespace-nowrap {
    white-space: nowrap;
}
.break-words {
    overflow-wrap: break-word;
}
.rounded-2lg {
    border-radius: 0.625rem;
}
.rounded-2xl {
    border-radius: 1rem;
}
.rounded-3xl {
    border-radius: 1.5rem;
}
.rounded-full {
    border-radius: 9999px;
}
.rounded-lg {
    border-radius: 0.5rem;
}
.rounded-sm {
    border-radius: 0.125rem;
}
.rounded-xl {
    border-radius: 0.75rem;
}
.rounded-b-2lg {
    border-bottom-right-radius: 0.625rem;
    border-bottom-left-radius: 0.625rem;
}
.rounded-tl-2xl {
    border-top-left-radius: 1rem;
}
.rounded-tr-2xl {
    border-top-right-radius: 1rem;
}
.border {
    /* border-width: 1px; */
}
.border-2 {
    border-width: 2px;
}
.border-b {
    border-bottom-width: 1px;
}
.border-b-2 {
    border-bottom-width: 2px;
}
.border-r {
    border-right-width: 1px;
}
.border-r-2 {
    border-right-width: 2px;
}
.border-black {
    --tw-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--tw-border-opacity));
}
.border-grey-400 {
    --tw-border-opacity: 1;
    border-color: rgb(204 204 204 / var(--tw-border-opacity));
}
.border-greycoal {
    --tw-border-opacity: 1;
    border-color: rgb(45 54 59 / var(--tw-border-opacity));
}
.border-greymouse-200 {
    --tw-border-opacity: 1;
    border-color: rgb(229 236 238 / var(--tw-border-opacity));
}
.border-greymouse-400 {
    --tw-border-opacity: 1;
    border-color: rgb(167 190 198 / var(--tw-border-opacity));
}
.border-paragraph-400 {
    --tw-border-opacity: 1;
    border-color: rgb(45 54 59 / var(--tw-border-opacity));
}
.border-white {
    --tw-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--tw-border-opacity));
}
.\!bg-night {
    --tw-bg-opacity: 1 !important;
    background-color: rgb(3 67 106 / var(--tw-bg-opacity)) !important;
}
.bg-black {
    --tw-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.bg-cloud-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(252 252 253 / var(--tw-bg-opacity));
}
.bg-cloud-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
.bg-cloud-300 {
    --tw-bg-opacity: 1;
    background-color: rgb(244 246 247 / var(--tw-bg-opacity));
}
.bg-greycoal-200 {
    --tw-bg-opacity: 1;
    background-color: rgb(213 215 216 / var(--tw-bg-opacity));
}
.bg-greymouse {
    --tw-bg-opacity: 1;
    background-color: rgb(79 125 141 / var(--tw-bg-opacity));
}
.bg-greysteel {
    --tw-bg-opacity: 1;
    background-color: rgb(35 83 100 / var(--tw-bg-opacity));
}
.bg-night {
    --tw-bg-opacity: 1;
    background-color: rgb(3 67 106 / var(--tw-bg-opacity));
}
.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.object-cover {
    object-fit: cover;
}
.p-3 {
    padding: 0.75rem;
}
.p-4 {
    padding: 1rem;
}
.p-5 {
    padding: 1.25rem;
}
.p-6 {
    padding: 1.5rem;
}
.p-8 {
    padding: 2rem;
}
.px-2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}
.px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
}
.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.pb-14 {
    padding-bottom: 3.5rem;
}
.pb-28 {
    padding-bottom: 7rem;
}
.pb-6 {
    padding-bottom: 1.5rem;
}
.pb-8 {
    padding-bottom: 2rem;
}
.pl-0 {
    padding-left: 0px;
}
.pl-0\.5 {
    padding-left: 0.125rem;
}
.pl-1 {
    padding-left: 0.25rem;
}
.pl-1\.5 {
    padding-left: 0.375rem;
}
.pl-12 {
    padding-left: 3rem;
}
.pl-4 {
    padding-left: 1rem;
}
.pr-1 {
    padding-right: 0.25rem;
}
.pr-1\.5 {
    padding-right: 0.375rem;
}
.pr-2 {
    padding-right: 0.5rem;
}
.pr-3 {
    padding-right: 0.75rem;
}
.pr-5 {
    padding-right: 1.25rem;
}
.pt-10 {
    padding-top: 2.5rem;
}
.pt-12 {
    padding-top: 3rem;
}
.pt-2 {
    padding-top: 0.5rem;
}
.pt-20 {
    padding-top: 5rem;
}
.pt-5 {
    padding-top: 1.25rem;
}
.pt-6 {
    padding-top: 1.5rem;
}
.pt-7 {
    padding-top: 1.75rem;
}
.pt-8 {
    padding-top: 2rem;
}
.pt-\[94px\] {
    padding-top: 94px;
}
.text-left {
    text-align: left;
}
.text-center {
    text-align: center;
}
.text-2lg {
    font-size: 1.5rem;
    line-height: 2.25rem;
}
.text-2xs {
    font-size: 0.875rem;
    line-height: 1.05rem;
}
.text-3lg {
    font-size: 1.75rem;
    line-height: 2.125rem;
}
.text-base {
    font-size: 1.125rem;
    line-height: 1.75rem;
}
.text-lg {
    font-size: 1.25rem;
    line-height: 1.75rem;
}
.text-sm {
    font-size: 1rem;
    line-height: 1.5rem;
}
.text-xl {
    font-size: 2rem;
    line-height: 2.625rem;
}
.text-xs {
    font-size: 0.75rem;
    line-height: 0.9375rem;
}
.font-bold {
    font-weight: 700;
}
.font-light {
    font-weight: 300;
}
.font-medium {
    font-weight: 500;
}
.font-normal {
    font-weight: 400;
}
.font-semibold {
    font-weight: 600;
}
.uppercase {
    text-transform: uppercase;
}
.leading-6 {
    line-height: 1.5rem;
}
.leading-6\.5 {
    line-height: 1.625rem;
}
.leading-7 {
    line-height: 1.75rem;
}
.tracking-wider {
    letter-spacing: 0.05em;
}
.\!text-white {
    --tw-text-opacity: 1 !important;
    color: rgb(255 255 255 / var(--tw-text-opacity)) !important;
}
.text-black {
    --tw-text-opacity: 1;
    color: rgb(0 0 0 / var(--tw-text-opacity));
}
.text-grey-600 {
    --tw-text-opacity: 1;
    color: rgb(102 102 144 / var(--tw-text-opacity));
}
.text-greychalk-400 {
    --tw-text-opacity: 1;
    color: rgb(204 220 216 / var(--tw-text-opacity));
}
.text-greycoal {
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}
.text-greymouse {
    --tw-text-opacity: 1;
    color: rgb(79 125 141 / var(--tw-text-opacity));
}
.text-greymouse-400 {
    --tw-text-opacity: 1;
    color: rgb(167 190 198 / var(--tw-text-opacity));
}
.text-moss {
    --tw-text-opacity: 1;
    color: rgb(93 191 192 / var(--tw-text-opacity));
}
.text-night {
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}
.text-paragraph {
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}
.text-paragraph-400 {
    --tw-text-opacity: 1;
    color: rgb(45 54 59 / var(--tw-text-opacity));
}
.text-red {
    --tw-text-opacity: 1;
    color: rgb(207 0 61 / var(--tw-text-opacity));
}
.text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}
.opacity-0 {
    opacity: 0;
}
.opacity-100 {
    opacity: 1;
}
.shadow {
    --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color),
        0 1px 2px -1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-shadow01 {
    --tw-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.25);
    --tw-shadow-colored: 0px 4px 20px 0px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-shadow02 {
    --tw-shadow: 0px 16px 32px rgba(12, 12, 13, 0.4);
    --tw-shadow-colored: 0px 16px 32px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-shadow03 {
    --tw-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.25);
    --tw-shadow-colored: 0px 10px 20px 0px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-shadow04 {
    --tw-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.15);
    --tw-shadow-colored: 0px 4px 4px 0px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-shadow06 {
    --tw-shadow: 0px 7px 12px 0px rgba(0, 0, 0, 0.25);
    --tw-shadow-colored: 0px 7px 12px 0px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.outline-0 {
    outline-width: 0px;
}
.blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
        var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert)
        var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
        var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert)
        var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.transition-\[width\] {
    transition-property: width;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
.transition-all {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
.transition-opacity {
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
.duration-300 {
    transition-duration: 300ms;
}
.duration-500 {
    transition-duration: 500ms;
}
.duration-700 {
    transition-duration: 700ms;
}
.section {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
@media (min-width: 1280px) {
    .section {
        max-width: var(--breakpoint);
    }
}
.section.with-sidebar {
    max-width: none;
}
@media (min-width: 1280px) {
    .section-escape-left,
    .section-escape-right {
        max-width: calc(var(--outer-gap) + var(--breakpoint));
    }
}
.section-escape-right {
    margin-left: auto;
    margin-right: 0;
}
.section-full {
    max-width: 100%;
}
.line-clamp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.line-clamp--2 {
    -webkit-line-clamp: 2;
    line-clamp: 2;
}
.line-clamp--4 {
    -webkit-line-clamp: 5;
    line-clamp: 5;
}
.line-clamp--5 {
    -webkit-line-clamp: 5;
    line-clamp: 5;
}
.line-clamp--6 {
    -webkit-line-clamp: 6;
    line-clamp: 6;
}
.line-clamp--tiles-slider-headline {
    -webkit-line-clamp: 3;
    line-clamp: 3;
}
@media (min-width: 480px) {
    .line-clamp--tiles-slider-headline {
        -webkit-line-clamp: 2;
        line-clamp: 2;
    }
}
.line-clamp--tiles-slider-text {
    -webkit-line-clamp: 7;
    line-clamp: 7;
}
@media (min-width: 480px) {
    .line-clamp--tiles-slider-text {
        -webkit-line-clamp: 4;
        line-clamp: 4;
    }
}
/*prevent gray background in iOS Safari and cancel button chrome*/
input[type="search"] {
    background: initial;
    appearance: none;
    -webkit-appearance: none;
}
input[type="search"]::-webkit-search-cancel-button {
    display: none;
}
/* reset rounded borders in safari */
input,
select,
textarea {
    border-radius: 0px;
}
:root,
*::after,
*::before {
    --nav-height: 6.25rem;
    --outline-default: 2px solid #000;
    --focus-outline: var(--outline-default);

    --breakpoint: 100vw;

    /*
  This is a bit hacky, needed to realize the
  section-escape-left, section-escape-right, container-left and container-right classes.

  As the "scrollbar width" is set via JS, this causes some layout flickering on page
  load in desktop Chromium or any other browser which has a scrollbar that takes up space.

  Note that the otherwise valid unitless 0 is not allowed in calc expressions.
  */
    --outer-gap: 0px;
}
@media (min-width: 480px) {
    :root,
    *::after,
    *::before {
        --outer-gap: calc(
            0.5 *
                (
                    100vw - var(--breakpoint) -
                        var(--vertical-scrollbar-width, 0px)
                )
        );
    }
}
@media (min-width: 380px) {
    :root,
    *::after,
    *::before {
        --breakpoint: 380px;
    }
}
@media (min-width: 480px) {
    :root,
    *::after,
    *::before {
        --breakpoint: 480px;
    }
}
@media (min-width: 768px) {
    :root,
    *::after,
    *::before {
        --breakpoint: 768px;
    }
}
@media (min-width: 960px) {
    :root,
    *::after,
    *::before {
        --breakpoint: 960px;
    }
}
@media (min-width: 1280px) {
    :root,
    *::after,
    *::before {
        --breakpoint: 1280px;
    }
}
@media (min-width: 1417px) {
    :root,
    *::after,
    *::before {
        --breakpoint: 1417px;
    }
}
:root,
*::after,
*::before {
    --narrow-width: var(--breakpoint);
}
@media (min-width: 1417px) {
    :root,
    *::after,
    *::before {
        --narrow-width: calc(var(--breakpoint) - 501px);
    }
}
/*
  Tailwind removes unused styles from blocks inside @layer base,
  but that does not affect tag selectors.
*/
/**
Using @layer components here to place output before Tailwind utilities,
to allow overriding with utilities.
**/
:root,
:root body {
    scroll-behavior: smooth;
}
@media (min-width: 1417px) {
    .with-sidebar {
        display: flex;
    }

    .with-sidebar__content > .with-sidebar.section {
        margin-left: 0;
    }
    .with-sidebar__content > .with-sidebar.section .container {
        margin-left: auto;
    }
    @media (min-width: 1280px) {
        .with-sidebar.section {
            max-width: calc(var(--outer-gap) + var(--breakpoint));
        }
    }
    .with-sidebar.section {
        margin-left: 0;
        margin-right: auto;
    }
}
@media (max-width: 1416px) {
    .with-sidebar.section {
        display: flex;
        flex-direction: column;
    }
}
.with-sidebar__aside {
    order: 9999;
    margin-bottom: 3.5rem;
    display: block;
    flex-shrink: 0;
}
@media (max-width: 1416px) {
    .with-sidebar__aside {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        padding-right: 1rem;
        padding-left: 1rem;
    }

    @media (min-width: 380px) {
        .with-sidebar__aside {
            max-width: 380px;
        }
    }

    @media (min-width: 480px) {
        .with-sidebar__aside {
            max-width: 480px;
        }
    }

    @media (min-width: 768px) {
        .with-sidebar__aside {
            max-width: 768px;
        }
    }

    @media (min-width: 960px) {
        .with-sidebar__aside {
            max-width: 960px;
        }
    }

    @media (min-width: 1280px) {
        .with-sidebar__aside {
            max-width: 1280px;
        }
    }

    @media (min-width: 1417px) {
        .with-sidebar__aside {
            max-width: 1417px;
        }
    }

    @media (min-width: 2160px) {
        .with-sidebar__aside {
            max-width: 2160px;
        }
    }

    @media (min-width: 2362px) {
        .with-sidebar__aside {
            max-width: 2362px;
        }
    }
    @media (max-width: 1279px) {
        .with-sidebar__aside {
            max-width: 100%;
        }
    }

    @media (min-width: 1280px) {
        .with-sidebar__aside {
            padding-left: 3.75rem;
            padding-right: 3.75rem;
        }
    }

    @media (min-width: 2160px) {
        .with-sidebar__aside {
            max-width: 1417px;
        }
    }
    @media (min-width: 1417px) {
        .with-sidebar__aside.section-narrow {
            margin-left: var(--outer-gap);
        }
        .section-narrow .with-sidebar__aside {
            margin-right: 0;
            padding-right: 0;
        }
        .with-sidebar__aside .section.section-narrow {
            max-width: 916px;
        }
    }
    @media (min-width: 1280px) {
        :root .with-sidebar__content .with-sidebar__aside.section-narrow {
            margin-left: var(--outer-gap);
        }
    }
}
@media (min-width: 1280px) {
    .with-sidebar__aside {
        margin-bottom: 5rem;
    }
}
@media (min-width: 1417px) {
    .with-sidebar__aside {
        margin-left: 64px;
        margin-right: 1rem;
        margin-bottom: 0px;
        width: 375px;
    }
}
/*
Complex selectors (instead of utilities in HTML)
are used here to allow reusing elements next to the sidebar
using the same markup as without the sidebar, without needing
to adjust classes.

This does not respect responsive classes like md:section-escape-left etc.
Some content elements just don't work next to the sidebar.
*/
@media (min-width: 1417px) {
    .with-sidebar__content > .section:not(.section-full, .section-escape-left),
    .with-sidebar__content .container {
        max-width: var(--narrow-width);
        min-width: var(--narrow-width);
    }
    .with-sidebar__content > .section {
        margin-left: var(--outer-gap);
    }
}
.with-sidebar__content > .section-full,
.with-sidebar__content > .section-escape-left {
    margin-left: 0;
}
.with-sidebar__content > .section-full .container,
.with-sidebar__content > .section-escape-left .container {
    margin-left: auto;
}
@media (min-width: 480px) {
    .with-sidebar__content > .sm\:section-full,
    .with-sidebar__content > .sm\:section-escape-left {
        margin-left: 0;
    }
    .with-sidebar__content > .sm\:section-full .container,
    .with-sidebar__content > .sm\:section-escape-left .container {
        margin-left: auto;
    }
}
@media (min-width: 768px) {
    .with-sidebar__content > .md\:section-full,
    .with-sidebar__content > .md\:section-escape-left {
        margin-left: 0;
    }
    .with-sidebar__content > .md\:section-full .container,
    .with-sidebar__content > .md\:section-escape-left .container {
        margin-left: auto;
    }
}
@media (min-width: 960px) {
    .with-sidebar__content > .lg\:section-full,
    .with-sidebar__content > .lg\:section-escape-left {
        margin-left: 0;
    }
    .with-sidebar__content > .lg\:section-full .container,
    .with-sidebar__content > .lg\:section-escape-left .container {
        margin-left: auto;
    }
}
@media (min-width: 1280px) {
    .with-sidebar__content > .xl\:section-full,
    .with-sidebar__content > .xl\:section-escape-left {
        margin-left: 0;
    }
    .with-sidebar__content > .xl\:section-full .container,
    .with-sidebar__content > .xl\:section-escape-left .container {
        margin-left: auto;
    }
}
@media (min-width: 1417px) {
    .with-sidebar__content > .2xl\:section-full,
    .with-sidebar__content > .2xl\:section-escape-left {
        margin-left: 0;
    }
    .with-sidebar__content > .2xl\:section-full .container,
    .with-sidebar__content > .2xl\:section-escape-left .container {
        margin-left: auto;
    }
}
@keyframes splide-loading {
    0% {
        transform: rotate(0);
    }
    to {
        transform: rotate(1turn);
    }
}
.splide__track--draggable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.splide__track--fade > .splide__list > .splide__slide {
    margin: 0 !important;
    opacity: 0;
    z-index: 0;
}
.splide__track--fade > .splide__list > .splide__slide.is-active {
    opacity: 1;
    z-index: 1;
}
.splide--rtl {
    direction: rtl;
}
.splide__track--ttb > .splide__list {
    display: block;
}
.splide__container {
    box-sizing: border-box;
    position: relative;
}
.splide__list {
    backface-visibility: hidden;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
}
.splide.is-initialized:not(.is-active) .splide__list {
    display: block;
}
.splide__pagination {
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0;
    pointer-events: none;
}
.splide__pagination li {
    display: inline-block;
    line-height: 1;
    list-style-type: none;
    margin: 0;
    pointer-events: auto;
}
.splide:not(.is-overflow) .splide__pagination {
    display: none;
}
.splide__progress__bar {
    width: 0;
}
.splide {
    position: relative;
    visibility: hidden;
}
.splide.is-initialized,
.splide.is-rendered {
    visibility: visible;
}
.splide__slide {
    backface-visibility: hidden;
    box-sizing: border-box;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    list-style-type: none !important;
    margin: 0;
    position: relative;
}
.splide__slide img {
    vertical-align: bottom;
}
.splide__spinner {
    animation: splide-loading 1s linear infinite;
    border: 2px solid #999;
    border-left-color: transparent;
    border-radius: 50%;
    bottom: 0;
    contain: strict;
    display: inline-block;
    height: 20px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 20px;
}
.splide__sr {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
    display: none;
}
.splide__toggle.is-active .splide__toggle__pause {
    display: inline;
}
.splide__track {
    overflow: hidden;
    position: relative;
    z-index: 0;
}
/* frame space after */
.frame-space-after-extra-small,
.frame-space-after-extra-small > div > section.section {
    margin-bottom: 1.75rem !important;
}
@media (min-width: 1280px) {
    .frame-space-after-extra-small,
    .frame-space-after-extra-small > div > section.section {
        margin-bottom: 2.25rem !important;
    }
}
.frame-space-after-small,
.frame-space-after-small > div > section.section {
    margin-bottom: 2.5rem !important;
}
@media (min-width: 1280px) {
    .frame-space-after-small,
    .frame-space-after-small > div > section.section {
        margin-bottom: 3.5rem !important;
    }
}
.frame-space-after-medium,
.rame-space-after-medium > div > section.section {
    margin-bottom: 2.75rem !important;
}
@media (min-width: 1280px) {
    .frame-space-after-medium,
    .frame-space-after-medium > div > section.section {
        margin-bottom: 4rem !important;
    }
}
.frame-space-after-large,
.frame-space-after-large > div > section.section {
    margin-bottom: 3.5rem !important;
}
@media (min-width: 1280px) {
    .frame-space-after-large,
    .frame-space-after-large > div > section.section {
        margin-bottom: 7.5rem !important;
    }
}
.frame-space-after-extra-large,
.frame-space-after-extra-large > div > section.section {
    margin-bottom: 8rem !important;
}
@media (min-width: 1280px) {
    .frame-space-after-extra-large,
    .frame-space-after-extra-large > div > section.section {
        margin-bottom: 16rem !important;
    }
}
/* none */
.frame-space-after-none,
.frame-space-after-none > div > section.section {
    margin-bottom: 0 !important;
}
.override\:text-center > p {
    text-align: center;
}
.checkbox-container input:checked ~ .checkmark:after {
    display: block;
}
/* Customize container */
.checkbox-container-02 {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
/* Show checkmark when checked */
.checkbox-container-02 input:checked ~ .checkmark:after {
    display: block;
}
/* checkmark style */
.checkbox-container-02 .checkmark:after {
    content: "";
    width: 7px;
    height: 10px;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
[data-header-search-input] {
    outline: 0;
}
.outline-search-input[data-header-search-input] {
    outline: revert;
}
:root.modal-open {
    overflow: hidden;
}
/*
  In an ideal world, we'd instead use:
    scrollbar-gutter: stable

  Unfortunately, this leaves a white gap next to the modal backdrop in place of the scrollbar.
  */
:root.modal-open,
:root.modal-open #page-header {
    padding-right: var(--vertical-scrollbar-width);
}
#modals-container {
    pointer-events: none;
    position: fixed;
    inset: 0px;
    z-index: 40;
    display: flex;
    height: 100vh;
    width: 100vw;
    overflow-y: scroll;
    background-color: rgb(0 0 0 / var(--tw-bg-opacity));
    --tw-bg-opacity: 0.7;
    opacity: 0;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}
.modal-open #modals-container {
    pointer-events: auto;
    opacity: 1;
}
.modal {
    position: relative;
    margin: auto;
    display: none;
    opacity: 0;
    transition-duration: 500ms;
}
.modal.modal--showing,
.modal.modal--hiding,
.modal.modal--show {
    display: block;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
.modal.modal--showing,
.modal.modal--show {
    opacity: 1;
}
.modal.modal--hiding {
    opacity: 0;
}
.modal__content {
    max-height: 90vh;
    max-width: 95vw;
    overflow: auto;
}
.button-small {
    display: flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-radius: 1.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(207 0 61 / var(--tw-bg-opacity));
    padding-top: 9px;
    padding-bottom: 9px;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    line-height: 1.25;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}
@media (hover: hover) and (pointer: fine) {
    .button-small:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(131 1 39 / var(--tw-bg-opacity));
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity));
    }
}
.button-default {
    margin-top: 1.75rem;
    display: flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(207 0 61 / var(--tw-bg-opacity));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}
.button-default:first-child {
    margin-top: 0px !important;
}
@media (hover: hover) and (pointer: fine) {
    .button-default:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(131 1 39 / var(--tw-bg-opacity));
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity));
    }
}
@media (min-width: 1280px) {
    .button-default {
        margin-top: 2.5rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
        padding-left: 2.25rem;
        padding-right: 2.25rem;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }
}
.button-02 {
    margin-top: 1.75rem;
    display: flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 2px;
    --tw-border-opacity: 1;
    border-color: rgb(207 0 61 / var(--tw-border-opacity));
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    padding-top: 0.438rem;
    padding-bottom: 0.438rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(207 0 61 / var(--tw-text-opacity));
}
.button-02:first-child {
    margin-top: 0px !important;
}
@media (hover: hover) and (pointer: fine) {
    .button-02:hover {
        --tw-border-opacity: 1;
        border-color: rgb(131 1 39 / var(--tw-border-opacity));
        --tw-text-opacity: 1;
        color: rgb(131 1 39 / var(--tw-text-opacity));
    }
}
@media (min-width: 1280px) {
    .button-02 {
        margin-top: 2.5rem;
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem;
        padding-left: 2.25rem;
        padding-right: 2.25rem;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }
}
.button-03 {
    display: flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(252 252 253 / var(--tw-bg-opacity));
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(3 67 106 / var(--tw-text-opacity));
}
@media (hover: hover) and (pointer: fine) {
    .button-03:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(3 67 106 / var(--tw-bg-opacity));
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity));
    }
}
.button-default-rte-first {
    margin-top: 1.75rem;
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(207 0 61 / var(--tw-bg-opacity));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}
.button-default-rte-first:first-child {
    margin-top: 0px !important;
}
@media (hover: hover) and (pointer: fine) {
    .button-default-rte-first:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(131 1 39 / var(--tw-bg-opacity));
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity));
    }
}
@media (min-width: 1280px) {
    .button-default-rte-first {
        padding-top: 1rem;
        padding-bottom: 1rem;
        padding-left: 2.25rem;
        padding-right: 2.25rem;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }
}
.button-default-rte-second {
    margin-top: 1.75rem;
    margin-left: 1rem;
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 2px;
    --tw-border-opacity: 1;
    border-color: rgb(207 0 61 / var(--tw-border-opacity));
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    padding-top: 0.438rem;
    padding-bottom: 0.438rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    --tw-text-opacity: 1;
    color: rgb(207 0 61 / var(--tw-text-opacity));
}
.button-default-rte-second:first-child {
    margin-top: 0px !important;
}
@media (hover: hover) and (pointer: fine) {
    .button-default-rte-second:hover {
        --tw-border-opacity: 1;
        border-color: rgb(131 1 39 / var(--tw-border-opacity));
        --tw-text-opacity: 1;
        color: rgb(131 1 39 / var(--tw-text-opacity));
    }
}
@media (min-width: 1280px) {
    .button-default-rte-second {
        margin-left: 1.75rem;
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem;
        padding-left: 2.25rem;
        padding-right: 2.25rem;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }
}
/* .arrow-01 {
  @apply w-6 h-auto;
}
 */
html.mobile-nav-is-open {
    overflow: hidden;
}
/* < 1280px device draggable slider, > 1280px automove slider */
@media (max-width: 1279px) {
    .logo-slider-container-mobile {
        display: flex;
        height: 3.5rem;
        user-select: none;
    }
}
.logo-slider-logo-container {
    column-gap: 3rem;
    align-items: center;
}
@media (min-width: 960px) {
    .logo-slider-logo-container {
        column-gap: 6rem;
    }
}
@media (min-width: 1280px) {
    .logo-slider-logo-container {
        column-gap: 0px;
    }
}
@media (max-width: 1279px) {
    .logo-slider-logo-container {
        margin: auto;
        display: inline-flex;
        overflow: auto;
        align-items: center;
    }
}
@media (min-width: 1280px) {
    @media (hover: hover) {
        .logo-slider-logo-container {
            overflow: hidden;
        }
    }
}
.logo-slider-container-mobile img {
    max-height: 80px;
    width: auto;
    object-fit: contain;
}
@media (max-width: 1279px) {
    .logo-slider-container-mobile img {
        max-height: 3.5rem;
        width: auto;
    }
}
.logo-slider-container-mobile .image-container {
    width: max-content;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width: 1279px) {
    .logo-slider-container-mobile .image-container {
        height: 3.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .logo-slider-container-mobile .slide {
        margin-bottom: 1.25rem;
        display: flex;
        align-items: center;
    }

    .logo-slider-container-mobile .mobile-none {
        display: none;
    }
}
.logo-slider-container-mobile .slide {
    display: flex;
    align-items: center;
    height: 100px;
}
@media (min-width: 1280px) {
    .marquee-desktop {
        position: relative;
        display: flex;
        user-select: none;
        gap: 6rem;
        overflow: hidden;
    }

    .marquee-content-desktop {
        display: flex;
        min-width: 100%;
        flex-shrink: 0;
        align-items: baseline;
        justify-content: space-around;
        gap: 6rem;
    }
}
.marquee-content-desktop {
    will-change: transform;
}
@keyframes scroll {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(calc(-100% - 96px), 0, 0);
    }
}
@media (min-width: 1280px) {
    .enable-animation .marquee-content-desktop {
        animation: scroll 30s linear infinite;
    }
}
.splide__pagination.style01 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}
.splide__pagination.style01 .splide__pagination__page {
    pointer-events: none;
    display: flex;
    height: 0.5rem;
    width: 0.5rem;
    cursor: pointer;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(167 190 198 / var(--tw-bg-opacity));
    transition: background-color 0.3s ease;
}
.splide__pagination.style01 .splide__pagination__page.is-active {
    height: 1rem;
    width: 1rem;
    --tw-bg-opacity: 1;
    background-color: rgb(79 125 141 / var(--tw-bg-opacity));
}
@media (max-width: 479px) {
    .smmax\:container-right {
        padding-right: 1rem;
        margin-left: auto;
        margin-right: 0;
    }

    @media (min-width: 1280px) {
        .smmax\:container-right {
            max-width: calc(var(--breakpoint) + var(--outer-gap));
        }
        /* for escape-left elements */
        .smmax\:container-right {
            padding-right: 3.75rem;
        }
    }
}
.placeholder\:text-base::placeholder {
    font-size: 1.125rem;
    line-height: 1.75rem;
}
.before\:absolute::before {
    content: var(--tw-content);
    position: absolute;
}
.before\:-top-14::before {
    content: var(--tw-content);
    top: -3.5rem;
}
.before\:bottom-0::before {
    content: var(--tw-content);
    bottom: 0px;
}
.before\:left-0::before {
    content: var(--tw-content);
    left: 0px;
}
.before\:right-0::before {
    content: var(--tw-content);
    right: 0px;
}
.before\:top-0::before {
    content: var(--tw-content);
    top: 0px;
}
.before\:-z-10::before {
    content: var(--tw-content);
    z-index: -10;
}
.before\:mx-auto::before {
    content: var(--tw-content);
    margin-left: auto;
    margin-right: auto;
}
.before\:h-auto::before {
    content: var(--tw-content);
    height: auto;
}
.before\:h-full::before {
    content: var(--tw-content);
    height: 100%;
}
.before\:w-32::before {
    content: var(--tw-content);
    width: 8rem;
}
.before\:w-full::before {
    content: var(--tw-content);
    width: 100%;
}
.before\:rounded-2xl::before {
    content: var(--tw-content);
    border-radius: 1rem;
}
.before\:rounded-tl-2xl::before {
    content: var(--tw-content);
    border-top-left-radius: 1rem;
}
.before\:rounded-tr-2xl::before {
    content: var(--tw-content);
    border-top-right-radius: 1rem;
}
.before\:bg-gradient-01::before {
    content: var(--tw-content);
    background-image: linear-gradient(
        180deg,
        rgba(3, 67, 106, 0) 30%,
        #03436a 85%
    );
}
.before\:bg-gradient-to-t::before {
    content: var(--tw-content);
    background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.before\:to-70\%::before {
    content: var(--tw-content);
    --tw-gradient-to-position: 70%;
}
.before\:content-wheregroup-bg-xs::before {
    --tw-content: url(../Icons/whreregroup-bg-xs.svg);
    content: var(--tw-content);
}
.after\:absolute::after {
    content: var(--tw-content);
    position: absolute;
}
.after\:-top-\[1px\]::after {
    content: var(--tw-content);
    top: -1px;
}
.after\:left-\[2px\]::after {
    content: var(--tw-content);
    left: 2px;
}
.after\:hidden::after {
    content: var(--tw-content);
    display: none;
}
.after\:content-checked-checkbox::after {
    --tw-content: url(../Icons/check-checkbox.svg);
    content: var(--tw-content);
}
.last\:mb-0:last-child {
    margin-bottom: 0px;
}
.last-of-type\:border-0:last-of-type {
    border-width: 0px;
}
@media (hover: hover) and (pointer: fine) {
    .hover\:bg-greymouse:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(79 125 141 / var(--tw-bg-opacity));
    }

    .hover\:bg-greysteellight:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(48 96 112 / var(--tw-bg-opacity));
    }

    .hover\:bg-white:hover {
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    }

    .hover\:text-greymouse:hover {
        --tw-text-opacity: 1;
        color: rgb(79 125 141 / var(--tw-text-opacity));
    }

    .hover\:text-moss:hover {
        --tw-text-opacity: 1;
        color: rgb(93 191 192 / var(--tw-text-opacity));
    }

    .hover\:text-night:hover {
        --tw-text-opacity: 1;
        color: rgb(3 67 106 / var(--tw-text-opacity));
    }

    .hover\:text-red:hover {
        --tw-text-opacity: 1;
        color: rgb(207 0 61 / var(--tw-text-opacity));
    }

    .hover\:opacity-100:hover {
        opacity: 1;
    }

    .hover\:shadow-shadow05:hover {
        --tw-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.25);
        --tw-shadow-colored: 0px 10px 20px 0px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
            var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    }

    .hover\:shadow-shadow06:hover {
        --tw-shadow: 0px 7px 12px 0px rgba(0, 0, 0, 0.25);
        --tw-shadow-colored: 0px 7px 12px 0px var(--tw-shadow-color);
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
            var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    }

    .hover\:grayscale-0:hover {
        --tw-grayscale: grayscale(0);
        filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
            var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert)
            var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
    }
}
.focus\:text-red:focus {
    --tw-text-opacity: 1;
    color: rgb(207 0 61 / var(--tw-text-opacity));
}
@media (hover: hover) and (pointer: fine) {
    .group\/first:hover .group-hover\/first\:block {
        display: block;
    }

    .group\/first:hover .group-hover\/first\:flex {
        display: flex;
    }

    .group\/first:hover .group-hover\/first\:h-1 {
        height: 0.25rem;
    }

    .group\/first:hover .group-hover\/first\:h-1\.75 {
        height: 0.438rem;
    }

    .group\/first:hover .group-hover\/first\:w-1 {
        width: 0.25rem;
    }

    .group\/first:hover .group-hover\/first\:w-1\.75 {
        width: 0.438rem;
    }

    .group\/first:hover .group-hover\/first\:bg-red {
        --tw-bg-opacity: 1;
        background-color: rgb(207 0 61 / var(--tw-bg-opacity));
    }

    .group:hover .group-hover\:bg-moss {
        --tw-bg-opacity: 1;
        background-color: rgb(93 191 192 / var(--tw-bg-opacity));
    }

    .group\/button:hover .group-hover\/button\:text-white {
        --tw-text-opacity: 1;
        color: rgb(255 255 255 / var(--tw-text-opacity));
    }

    .group\/first:hover .group-hover\/first\:text-red {
        --tw-text-opacity: 1;
        color: rgb(207 0 61 / var(--tw-text-opacity));
    }

    .group\/second:hover .group-hover\/second\:text-red {
        --tw-text-opacity: 1;
        color: rgb(207 0 61 / var(--tw-text-opacity));
    }

    .group:hover .group-hover\:text-moss {
        --tw-text-opacity: 1;
        color: rgb(93 191 192 / var(--tw-text-opacity));
    }

    .group:hover .group-hover\:opacity-100 {
        opacity: 1;
    }

    @media (hover: hover) and (pointer: fine) {
        .group\/second:hover .group-hover\/second\:hover\:text-red:hover {
            --tw-text-opacity: 1;
            color: rgb(207 0 61 / var(--tw-text-opacity));
        }
    }
}
.group\/current.current .group-current\/current\:block {
    display: block;
}
.group\/current.current .group-current\/current\:hidden {
    display: none;
}
.group\/current.current .group-current\/current\:bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.group\/current.current .group-current\/current\:opacity-100 {
    opacity: 1;
}
.group\/current.current .group-current\/current\:shadow-shadow06 {
    --tw-shadow: 0px 7px 12px 0px rgba(0, 0, 0, 0.25);
    --tw-shadow-colored: 0px 7px 12px 0px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.group\/current.current .group-current\/current\:grayscale-0 {
    --tw-grayscale: grayscale(0);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
        var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert)
        var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.group\/expanded.expanded .group-expanded\/expanded\:flex {
    display: flex;
}
.group\/expanded.expanded .group-expanded\/expanded\:hidden {
    display: none;
}
.group\/expanded.expanded .group-expanded\/expanded\:w-full {
    width: 100%;
}
.group\/expanded.expanded .group-expanded\/expanded\:bg-black {
    --tw-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--tw-bg-opacity));
}
.group\/expanded.expanded .group-expanded\/expanded\:shadow-none {
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
        var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.group\/expandednested.expandednested
    .group-expandednested\/expandednested\:flex {
    display: flex;
}
.group\/expandednested.expandednested
    .group-expandednested\/expandednested\:hidden {
    display: none;
}
.group\/expandednested.expandednested
    .group-expandednested\/expandednested\:h-12 {
    height: 3rem;
}
.group\/expandednested.expandednested
    .group-expandednested\/expandednested\:w-5 {
    width: 1.25rem;
}
.group\/expandednested.expandednested
    .group-expandednested\/expandednested\:w-full {
    width: 100%;
}
.group\/expandednested.expandednested
    .group-expandednested\/expandednested\:rotate-180 {
    --tw-rotate: 180deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y))
        rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y))
        scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.current\:flex.current.current {
    display: flex;
}
.current\:text-red.current.current {
    --tw-text-opacity: 1;
    color: rgb(207 0 61 / var(--tw-text-opacity));
}
.expanded\:h-20.expanded.expanded {
    height: 5rem;
}
@media (min-width: 380px) {
    .xs\:h-104 {
        height: 26rem;
    }

    .xs\:min-h-104 {
        min-height: 26rem;
    }

    .xs\:flex-row {
        flex-direction: row;
    }

    .xs\:p-12 {
        padding: 3rem;
    }

    .xs\:p-8 {
        padding: 2rem;
    }
}
@media (min-width: 480px) {
    .sm\:top-1 {
        top: 0.25rem;
    }

    .sm\:my-5 {
        margin-top: 1.25rem;
        margin-bottom: 1.25rem;
    }

    .sm\:mr-8 {
        margin-right: 2rem;
    }

    .sm\:\!flex {
        display: flex !important;
    }

    .sm\:hidden {
        display: none;
    }

    .sm\:h-126 {
        height: 31.5rem;
    }

    .sm\:w-100\.5 {
        width: 25.175rem;
    }

    .sm\:w-104 {
        width: 26rem;
    }

    .sm\:min-w-100\.5 {
        min-width: 25.175rem;
    }

    .sm\:min-w-104 {
        min-width: 26rem;
    }

    .sm\:p-10 {
        padding: 2.5rem;
    }

    .sm\:p-8 {
        padding: 2rem;
    }

    .sm\:px-10 {
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }

    .sm\:text-center {
        text-align: center;
    }
}
@media (min-width: 768px) {
    .md\:my-8 {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .md\:-mt-24 {
        margin-top: -6rem;
    }

    .md\:-mt-4 {
        margin-top: -1rem;
    }

    .md\:mb-0 {
        margin-bottom: 0px;
    }

    .md\:mb-1 {
        margin-bottom: 0.25rem;
    }

    .md\:mb-3 {
        margin-bottom: 0.75rem;
    }

    .md\:mr-16 {
        margin-right: 4rem;
    }

    .md\:block {
        display: block;
    }

    .md\:flex {
        display: flex;
    }

    .md\:hidden {
        display: none;
    }

    .md\:aspect-auto {
        aspect-ratio: auto;
    }

    .md\:h-126 {
        height: 31.5rem;
    }

    .md\:h-14 {
        height: 3.5rem;
    }

    .md\:h-full {
        height: 100%;
    }

    .md\:w-45 {
        width: 11.25rem;
    }

    .md\:w-\[93vw\] {
        width: 93vw;
    }

    .md\:max-w-96 {
        max-width: 24rem;
    }

    .md\:basis-\[calc\(100\%\*\(4\/9\)\)\] {
        flex-basis: calc(100% * (4 / 9));
    }

    .md\:basis-\[calc\(100\%\*5\/9\)\] {
        flex-basis: calc(100% * 5 / 9);
    }

    .md\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:flex-row {
        flex-direction: row;
    }

    .md\:flex-col {
        flex-direction: column;
    }

    .md\:items-center {
        align-items: center;
    }

    .md\:justify-end {
        justify-content: flex-end;
    }

    .md\:justify-between {
        justify-content: space-between;
    }

    .md\:gap-0 {
        gap: 0px;
    }

    .md\:overflow-visible {
        overflow: visible;
    }

    .md\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .md\:pb-28 {
        padding-bottom: 7rem;
    }

    .md\:pl-12 {
        padding-left: 3rem;
    }

    .md\:pr-12 {
        padding-right: 3rem;
    }
}
@media (min-width: 960px) {
    .lg\:absolute {
        position: absolute;
    }

    .lg\:top-25 {
        top: 6.25rem;
    }

    .lg\:-mt-0 {
        margin-top: -0px;
    }

    .lg\:mb-0 {
        margin-bottom: 0px;
    }

    .lg\:mb-12 {
        margin-bottom: 3rem;
    }

    .lg\:mb-2 {
        margin-bottom: 0.5rem;
    }

    .lg\:mb-9 {
        margin-bottom: 2.25rem;
    }

    .lg\:mt-32 {
        margin-top: 8rem;
    }

    .lg\:flex {
        display: flex;
    }

    .lg\:hidden {
        display: none;
    }

    .lg\:min-h-25 {
        min-height: 6.25rem;
    }

    .lg\:w-\[477px\] {
        width: 477px;
    }

    .lg\:w-\[70\%\] {
        width: 70%;
    }

    .lg\:w-\[977px\] {
        width: 977px;
    }

    .lg\:max-w-56 {
        max-width: 14rem;
    }

    .lg\:max-w-\[338px\] {
        max-width: 338px;
    }

    .lg\:grid-cols-1 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .lg\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lg\:flex-row {
        flex-direction: row;
    }

    .lg\:flex-col {
        flex-direction: column;
    }

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

    .lg\:items-start {
        align-items: flex-start;
    }

    .lg\:items-center {
        align-items: center;
    }

    .lg\:justify-start {
        justify-content: flex-start;
    }

    .lg\:justify-center {
        justify-content: center;
    }

    .lg\:justify-between {
        justify-content: space-between;
    }

    .lg\:gap-x-6 {
        column-gap: 1.5rem;
    }

    .lg\:gap-y-10 {
        row-gap: 2.5rem;
    }

    .lg\:text-left {
        text-align: left;
    }

    .group\/expandednested.expandednested
        .group-expandednested\/expandednested\:lg\:flex {
        display: flex;
    }

    .group\/expandednested.expandednested
        .group-expandednested\/expandednested\:lg\:hidden {
        display: none;
    }

    .expanded\:lg\:h-25.expanded.expanded {
        height: 6.25rem;
    }
}
@media (min-width: 1280px) {
    .xl\:top-10 {
        top: 2.5rem;
    }

    .xl\:mb-12 {
        margin-bottom: 3rem;
    }

    .xl\:mb-20 {
        margin-bottom: 5rem;
    }

    .xl\:mb-24 {
        margin-bottom: 6rem;
    }

    .xl\:mb-25 {
        margin-bottom: 6.25rem;
    }

    .xl\:mb-27 {
        margin-bottom: 6.75rem;
    }

    .xl\:mb-3 {
        margin-bottom: 0.75rem;
    }

    .xl\:mb-30 {
        margin-bottom: 7.5rem;
    }

    .xl\:mb-5 {
        margin-bottom: 1.25rem;
    }

    .xl\:mb-7 {
        margin-bottom: 1.75rem;
    }

    .xl\:mb-8 {
        margin-bottom: 2rem;
    }

    .xl\:mb-9 {
        margin-bottom: 2.25rem;
    }

    .xl\:mt-20 {
        margin-top: 5rem;
    }

    .xl\:mt-28 {
        margin-top: 7rem;
    }

    .xl\:block {
        display: block;
    }

    .xl\:hidden {
        display: none;
    }

    .xl\:h-136 {
        height: 34rem;
    }

    .xl\:h-154 {
        height: 38.5rem;
    }

    .xl\:h-208 {
        height: 52rem;
    }

    .xl\:h-30 {
        height: 7.5rem;
    }

    .xl\:min-h-136 {
        min-height: 34rem;
    }

    .xl\:min-h-208 {
        min-height: 52rem;
    }

    .xl\:min-h-30 {
        min-height: 7.5rem;
    }

    .xl\:w-30 {
        width: 7.5rem;
    }

    .xl\:w-40 {
        width: 10rem;
    }

    .xl\:w-\[80vw\] {
        width: 80vw;
    }

    .xl\:min-w-30 {
        min-width: 7.5rem;
    }

    .xl\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .xl\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .xl\:justify-normal {
        justify-content: normal;
    }

    .xl\:gap-6 {
        gap: 1.5rem;
    }

    .xl\:px-10 {
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }

    .xl\:px-12 {
        padding-left: 3rem;
        padding-right: 3rem;
    }

    .xl\:pb-12 {
        padding-bottom: 3rem;
    }

    .xl\:pb-16 {
        padding-bottom: 4rem;
    }

    .xl\:pb-18 {
        padding-bottom: 4.5rem;
    }

    .xl\:pb-8 {
        padding-bottom: 2rem;
    }

    .xl\:pl-5 {
        padding-left: 1.25rem;
    }

    .xl\:pt-10 {
        padding-top: 2.5rem;
    }

    .xl\:pt-16 {
        padding-top: 4rem;
    }

    .xl\:pt-20 {
        padding-top: 5rem;
    }

    .xl\:pt-25 {
        padding-top: 6.25rem;
    }

    .xl\:pt-32 {
        padding-top: 8rem;
    }

    .xl\:text-2lg {
        font-size: 1.5rem;
        line-height: 2.25rem;
    }

    .xl\:text-2xl2 {
        font-size: 3rem;
        line-height: 3.75rem;
    }

    .xl\:text-3lg {
        font-size: 1.75rem;
        line-height: 2.125rem;
    }

    .xl\:text-sm {
        font-size: 1rem;
        line-height: 1.5rem;
    }

    .xl\:text-xl {
        font-size: 2rem;
        line-height: 2.625rem;
    }

    .xl\:before\:-top-16::before {
        content: var(--tw-content);
        top: -4rem;
    }

    .xl\:before\:w-48::before {
        content: var(--tw-content);
        width: 12rem;
    }

    .xl\:before\:content-wheregroup-bg-small::before {
        --tw-content: url(../Icons/whreregroup-bg-small.svg);
        content: var(--tw-content);
    }
}
@media (max-width: 1279px) {
    .xlmax\:hidden {
        display: none;
    }
}
@media (min-width: 1417px) {
    .\32xl\:-mt-4 {
        margin-top: -1rem;
    }

    .\32xl\:flex {
        display: flex;
    }

    .\32xl\:grid {
        display: grid;
    }

    .\32xl\:w-\[364px\] {
        width: 364px;
    }

    .\32xl\:w-\[65vw\] {
        width: 65vw;
    }

    .\32xl\:w-full {
        width: 100%;
    }

    .\32xl\:max-w-344 {
        max-width: 86rem;
    }

    .\32xl\:max-w-80 {
        max-width: 20rem;
    }

    .\32xl\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .\32xl\:flex-wrap {
        flex-wrap: wrap;
    }

    .\32xl\:justify-center {
        justify-content: center;
    }

    .\32xl\:p-7 {
        padding: 1.75rem;
    }

    .\32xl\:px-18 {
        padding-left: 4.5rem;
        padding-right: 4.5rem;
    }

    .\32xl\:px-4 {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .\32xl\:py-6 {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .\32xl\:py-6\.5 {
        padding-top: 1.625rem;
        padding-bottom: 1.625rem;
    }

    .\32xl\:pt-4 {
        padding-top: 1rem;
    }
}
@media (min-width: 2362px) {
    .\34xl\:w-\[478px\] {
        width: 478px;
    }
}
@media (hover: hover) {
    .hover-hover\:mr-5 {
        margin-right: 1.25rem;
    }

    .hover-hover\:hidden {
        display: none;
    }

    .hover-hover\:px-3 {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    .hover-hover\:pr-4 {
        padding-right: 1rem;
    }

    .hover-hover\:pt-2 {
        padding-top: 0.5rem;
    }

    .hover-hover\:opacity-50 {
        opacity: 0.5;
    }

    .hover-hover\:shadow-none {
        --tw-shadow: 0 0 #0000;
        --tw-shadow-colored: 0 0 #0000;
        box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000),
            var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    }

    .hover-hover\:grayscale {
        --tw-grayscale: grayscale(100%);
        filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast)
            var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert)
            var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
    }
}
@media (min-width: 1280px) {
    @media (hover: hover) {
        .xl\:hover-hover\:invisible {
            visibility: hidden;
        }

        .xl\:hover-hover\:\!block {
            display: block !important;
        }

        .xl\:hover-hover\:block {
            display: block;
        }

        .xl\:hover-hover\:opacity-0 {
            opacity: 0;
        }

        @media (hover: hover) and (pointer: fine) {
            .group\/current:hover
                .xl\:hover-hover\:group-hover\/current\:opacity-0 {
                opacity: 0;
            }

            .group\/current:hover
                .xl\:hover-hover\:group-hover\/current\:opacity-100 {
                opacity: 1;
            }
        }
    }
}
@media (hover: hover) {
    @media (min-width: 1417px) {
        .hover-hover\:2xl\:block {
            display: block;
        }

        .hover-hover\:2xl\:hidden {
            display: none;
        }

        .hover-hover\:2xl\:max-w-16 {
            max-width: 4rem;
        }

        .hover-hover\:2xl\:max-w-44 {
            max-width: 11rem;
        }

        .hover-hover\:2xl\:pb-6 {
            padding-bottom: 1.5rem;
        }

        .hover-hover\:2xl\:pb-6\.5 {
            padding-bottom: 1.625rem;
        }

        .hover-hover\:2xl\:pt-8 {
            padding-top: 2rem;
        }

        .hover-hover\:2xl\:pt-8\.5 {
            padding-top: 2.125rem;
        }
    }
}

/* Custom: Text2Tiles Kachel-Headlines - keine Worttrennung */
.text2tiles-tile-headline {
    hyphens: none !important;
    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* Custom: Text2Tiles Headline - gleiche Größe wie h3 */
.text2tiles-headline {
    font-size: 1.75rem !important;
    line-height: 2.125rem !important;
}

@media (min-width: 1280px) {
    .text2tiles-headline {
        font-size: 2rem !important;
        line-height: 2.625rem !important;
    }
}

/* Custom: MapLibre Karten - Fix für Zentrierung und Abschneiden */
.osm-map-container {
    overflow: hidden !important;
}

.osm-map-container .maplibregl-canvas-container,
.osm-map-container .maplibregl-canvas {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

/* Custom: Text mit Bild - Überschrift oben am Bildrand */
@media (min-width: 768px) {
    .textimage-grid {
        align-items: flex-start !important;
    }

    /* Ganzen Content-Block nach oben verschieben, damit Überschrift am Bildrand ist */
    .textimage-with-kicker-offset {
        margin-top: -2rem !important;
    }
}

/* Custom: Text mit Bild - Mobil immer Text vor Bild */
@media (max-width: 767px) {
    .textimage-grid-layout {
        display: flex !important;
        flex-direction: column !important;
    }

    /* Text immer als erstes */
    .textimage-content {
        order: 1 !important;
    }

    /* Bild immer als zweites */
    .textimage-image-left,
    .textimage-image-right {
        order: 2 !important;
    }
}

/* Custom: Keyvisual Headlines - keine feste Breite, damit kurze Texte nicht umbrechen */
.max-w-136 {
    max-width: max-content !important;
}
/* Accordion: toggle plus/minus on open */
details.accordion-item[open] .accordion-icon-plus {
    display: none !important;
}
details.accordion-item[open] .accordion-icon-minus {
    display: inline !important;
}
