/**
    SITE.CSS

    This file combines all the stylesheets into one file. The order should be
    thought with specificity in mind, so that the most universal rules are at
    the top and the more specific one's are on the bottom.

    For more info on that see https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity
*/

/* Tailwind preflight */

*, ::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:  ;
	--tw-contain-size:  ;
	--tw-contain-layout:  ;
	--tw-contain-paint:  ;
	--tw-contain-style:  ;
}

::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:  ;
	--tw-contain-size:  ;
	--tw-contain-layout:  ;
	--tw-contain-paint:  ;
	--tw-contain-style:  ;
}

/*! tailwindcss v3.4.12 | 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: #e5e7eb; /* 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.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */ /* 3 */
  tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
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]) {
  -webkit-text-decoration: underline dotted;
          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. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. 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-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
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 */
  letter-spacing: 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,
input:where([type='button']),
input:where([type='reset']),
input:where([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;
}

/*! purgecss start ignore */

/* Global styles */

/* Global */

/* Header menu */

/* Buttons, cards and forms */

/**
	GLOBAL STYLING

	Variables and styles for basic HTML tags like headings, text, ...
 */

html {
	scrollbar-width: thin;
	scrollbar-color: #afafaf55 #00088;
	scroll-behavior: smooth;
	font-family: Montserrat Regular, sans-serif;
}

html::-webkit-scrollbar {
		height: 10px;
		width: 10px;
	}

html::-webkit-scrollbar-track {
		background: #00040; /** 25% transparency **/
	}

html::-webkit-scrollbar-thumb{
	border-radius: 9999px;
		background: #afafafCC;
}

html::-webkit-scrollbar-thumb:hover {
			background: #afafafFF;
		}

body.modal-opened{
	height: 100vh;
	overflow: hidden;
}

@media (min-width: 64rem){

	body.modal-opened{
		height: auto;
		overflow: auto;
	}
}

blockquote{
	font-style: italic;
	line-height: 1.5;
	border-left-width: 2px;
	border-style: solid;
	padding-left: 1.5rem;
	border-color: 	#1E3250;
}

hr{
	margin-left: auto;
	margin-right: auto;
	border-top-width: 2px;
}

@media (min-width: 48rem){

	hr{
		width: 16rem;
	}
}

@media (min-width: 64rem){

	hr{
		width: auto;
		max-width: 20rem;
	}
}

hr {
	border-color: 	#1E3250;
}

ul{
	list-style-type: disc;
	padding-left: 1.25rem;
}

ol{
	list-style-type: decimal;
	padding-left: 1.25rem;
}

picture{
	display: contents;
}

figcaption{
	font-size: 0.875rem;
	line-height: 1.25rem;
	font-style: italic;
	--tw-text-opacity: 1;
	color: rgb(107 114 128 / var(--tw-text-opacity));
}

video{
	width: 100%;
}

iframe{
	max-width: 100%;
}

[data-object-fit=cover] {
	object-fit: cover;
}

[data-object-fit=contain] {
	object-fit: contain;
}

[x-cloak]{
	display: none !important;
}

.flatpickr-day[x-cloak] {
  visibility: hidden !important;
}

/**
	BARD BUILDER STYLING
 */

.bard__module{
	margin-bottom: 2rem;
}

.bard > h1,
	.bard > h2,
	.bard > h3,
	.bard > h4,
	.bard > h5,
	.bard > h6,
	.bard > p,
	.bard > ul,
	.bard > ol,
	.bard > blockquote,
	.bard > table,
	.bard__module > h1,
	.bard__module > h2,
	.bard__module > h3,
	.bard__module > h4,
	.bard__module > h5,
	.bard__module > h6,
	.bard__module > p,
	.bard__module > ul,
	.bard__module > ol,
	.bard__module > blockquote,
	.bard__module > table{
	margin-bottom: 1.75rem;
}

.bard p:empty, .bard__module p:empty{
	margin-bottom: 0px;
}

.bard p:empty:after, .bard__module p:empty:after {
            content: '\00a0';
        }

.bard:last-child,
	.bard > :last-child,
	.bard__module:last-child,
	.bard__module > :last-child{
	margin-bottom: 0px;
}

/**
    TYPOGRAPHY.CSS

    This file contains style rules related to typography, such as
        - font-face declarations
        - link styling
        - hyphenation
*/

@font-face {
    font-family: 'Amoret Script';
    src: url('/fonts/AmoretScript.woff2') format('woff2'),
        url('/fonts/AmoretScript.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Amoret Script Alt';
    src: url('/fonts/AmoretScriptAlt.woff2') format('woff2'),
        url('/fonts/AmoretScriptAlt.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Amoret Sans';
    src: url('/fonts/AmoretSans.woff2') format('woff2'),
        url('/fonts/AmoretSans.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
	font-family: "Montserrat Regular";
	src: local("Montserrat Regular"), local("Montserrat-Regular"), url("/fonts/Montserrat-Regular.ttf") format("truetype");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

.hyphenate {
	-webkit-hyphens: auto;
	        hyphens: auto;
	hyphenate-limit-chars: 12 4 4;
}

.no-hyphenation h1, .no-hyphenation h2, .no-hyphenation h3, .no-hyphenation h4, .no-hyphenation h5, .no-hyphenation h6 {
		-webkit-hyphens: manual;
		        hyphens: manual;
	}

.link-primary{
	text-decoration-line: underline;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
    color: 	#1E3250;
}

.link-primary:hover,
    .link-primary:focus,
    .link-primary:active {
        color: #afafaf;
    }

h1, h2, h3, h4, h5, h6{
	line-height: 1.5;
}

@media screen and (max-width: 64rem) {

h1, h2, h3, h4, h5, h6 {
	-webkit-hyphens: auto;
	        hyphens: auto;
	hyphenate-limit-chars: 12 4 4;
}
	}

h1{
	font-family: Amoret Script, sans-serif;
	font-size: 8rem;
	line-height: 1;
}

@media (min-width: 64rem){

	h1{
		font-size: 10rem;
	}
}

h1{
	line-height: 1;
}

h2{
	font-family: Amoret Sans, sans-serif;
	font-size: 1.5rem;
	line-height: 2rem;
}

@media (min-width: 64rem){

	h2{
		font-size: 2.25rem;
		line-height: 2.5rem;
	}
}

h2{
	line-height: 1.5;
}

h3{
	font-family: Amoret Script, sans-serif;
	font-size: 8rem;
	line-height: 1;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	line-height: 1em;
}

h4{
	font-family: Amoret Sans, sans-serif;
	font-size: 1.25rem;
	line-height: 1.75rem;
}

@media (min-width: 64rem){

	h4{
		font-size: 1.5rem;
		line-height: 2rem;
	}
}

h5{
	font-family: Amoret Script, sans-serif;
	font-size: 8rem;
	line-height: 1;
	line-height: 2rem;
}

h6{
	font-family: Amoret Sans, sans-serif;
	font-size: 1rem;
	line-height: 1.5rem;
	font-weight: 700;
}

p{
	font-family: Montserrat Regular, sans-serif;
	line-height: 1.5;
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

strong{
	font-weight: 900;
}

small {
	font-size: 80%;
	display: inherit;
}

/**
	PAGE BUILDER STYLING
 */

.base-container{
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	.base-container{
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.fullscreen-container{
	max-width: none;
}

@media (min-width: 64rem){

	.fullscreen-container{
		padding-left: 0px;
		padding-right: 0px;
	}
}

.page{
	margin-top: 7rem;
}

@media (min-width: 64rem){

	.page{
		margin-top: 8rem;
	}
}

.page__module{
	z-index: 10;
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	.page__module{
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.page__module{
	position: relative;
	margin-bottom: 7rem;
}

@media (min-width: 64rem){

	.page__module{
		margin-bottom: 8rem;
	}
}

/* Apply less spacing after the content module, as it is often used for headlines */

.page__module.content{
	margin-bottom: 4rem;
}

@media (min-width: 64rem){

	.page__module.content{
		margin-bottom: 5rem;
	}
}

/* Apply less spacing before the button_container, as they are often used directly after certain other modules */

.page__module.button_container{
	margin-top: -4rem;
}

@media (min-width: 64rem){

	.page__module.button_container{
		margin-top: -5rem;
	}
}

.page__module.bg-enabled{
	padding-top: 3.5rem;
	padding-bottom: 3.5rem;
}

@media (min-width: 64rem){

	.page__module.bg-enabled{
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
}

.page__module.bg-enabled{
	max-width: none;
}

@media (min-width: 64rem){

	.page__module.bg-enabled{
		padding-left: 0px;
		padding-right: 0px;
	}
}

.page__module.bg-enabled{
	--tw-bg-opacity: 1;
	background-color: rgb(244 243 243 / var(--tw-bg-opacity));
}

.page__module.bg-enabled > *{
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	.page__module.bg-enabled > *{
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.page__module.bg-enabled + .page__module.bg-enabled{
	margin-top: -7rem;
}

@media (min-width: 64rem){

	.page__module.bg-enabled + .page__module.bg-enabled{
		margin-top: -8rem;
	}
}

/**
	TABLE MODULE STYLING

	The generic table used in bards.
 */

table{
	width: 100%;
	border-collapse: collapse;
	overflow-x: auto;
}

table th{
	text-align: left;
	font-family: Amoret Script, sans-serif;
		color: 	#1E3250;
}

table th p{
	font-weight: 700;
}

table th, table td{
	border-bottom-width: 2px;
	--tw-border-opacity: 1;
	border-color: rgb(30 50 80 / var(--tw-border-opacity));
	padding-top: 1rem;
	padding-bottom: 1rem;
	padding-right: 1.5rem;
	white-space: normal;
	overflow-wrap: break-word;
}

table th p, table th strong, table td p, table td strong{
	line-height: 1.25rem;
}

.scrollbar {
	scrollbar-width: thin;
	scrollbar-color: #afafaf55 #00088;
	scroll-behavior: smooth;
	font-family: Montserrat Regular, sans-serif;
}

.scrollbar::-webkit-scrollbar {
		height: 10px;
		width: 10px;
	}

.scrollbar::-webkit-scrollbar-track {
		background: #00040; /** 25% transparency **/
	}

.scrollbar::-webkit-scrollbar-thumb{
	border-radius: 9999px;
		background: #afafafCC;
}

.scrollbar::-webkit-scrollbar-thumb:hover {
			background: #afafafFF;
		}

/**
	STANDARD BUTTON STYLING

	Standard button classes, e.g. primary, download, etc.
 */

button:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.button-primary{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.background .button-primary {
        justify-content: center;
    }

.button-primary{
	cursor: pointer;
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
	text-decoration-line: none;
	--tw-bg-opacity: 1;
	background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
	border-radius: 0rem;
}

.button-primary:hover{
	--tw-bg-opacity: 1;
	background-color: rgb(175 175 175 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

.button-secondary{
	display: inline-block;
	align-items: center;
	justify-content: center;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.background .button-secondary {
        justify-content: center;
    }

.button-secondary{
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
	text-decoration-line: none;
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.button-secondary span{
	border-bottom-width: 2px;
	--tw-border-opacity: 1;
	border-bottom-color: rgb(30 50 80 / var(--tw-border-opacity));
	padding-bottom: 0.25rem;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.button-secondary span:hover{
	--tw-border-opacity: 1;
	border-bottom-color: rgb(175 175 175 / var(--tw-border-opacity));
	--tw-text-opacity: 1;
	color: rgb(175 175 175 / var(--tw-text-opacity));
}

.button-download{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.background .button-download {
        justify-content: center;
    }

.button-download{
	cursor: pointer;
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
	text-decoration-line: none;
	--tw-bg-opacity: 1;
	background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
	border-radius: 0rem;
}

.button-download:hover{
	--tw-bg-opacity: 1;
	background-color: rgb(175 175 175 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

.headermenu-items .nav-item:hover > .nav-item-spacing > .button-download,
		.headermenu-items .nav-item.active > .nav-item-spacing > .button-download{
	--tw-bg-opacity: 1;
	background-color: rgb(175 175 175 / var(--tw-bg-opacity));
}

@media screen and (min-width: 64rem) {

			.headermenu-items .nav-item .button-download{
		height: 100%;
		border-radius: 0px;
		--tw-bg-opacity: 1;
		background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	}

				@media (min-width: 64rem) {

			.headermenu-items .nav-item .button-download {
					height: 4rem
			}
				}
}

.button-download svg{
	margin-right: 0.75rem;
	margin-left: -0.5rem;
	height: 1.25rem;
	width: 1.25rem;
	flex-shrink: 0;
}

.button-download span{
	margin-right: 0.5rem;
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
}

.button-upload{
	width: 100%;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
    box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
    border: 2px solid transparent;
    border-radius: 0rem;
    padding: 0.5rem 0.75rem;
    color: #1E3250;
    font-weight: 700;
}

.button-upload,.button-upload:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.button-upload:focus {
        box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
        border: 2px solid 	#1E3250;
    }

.button-upload:placeholder{
	--tw-text-opacity: 1;
	color: rgb(156 163 175 / var(--tw-text-opacity));
}

.button-upload[disabled]{
	--tw-border-opacity: 1;
	border-color: rgb(156 163 175 / var(--tw-border-opacity));
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
	pointer-events: none;
	cursor: not-allowed;
}

.button-upload[disabled] + .icon-calendar{
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
}

.button-upload{
	position: relative;
	display: flex;
	cursor: pointer;
	align-items: center;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	font-weight: 400;
	--tw-text-opacity: 1;
	color: rgb(107 114 128 / var(--tw-text-opacity));
}

.button-upload:hover{
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.button-upload svg{
	height: 1.25rem;
	width: 1.25rem;
}

.button-upload span{
	margin-left: 1rem;
	cursor: pointer;
}

.button-upload input[type="file"]{
	position: absolute;
	left: 0px;
	top: 0px;
	height: 100%;
	width: 100%;
	pointer-events: none;
	opacity: 0;
}

.button-icon{
	display: inline-flex;
	align-items: center;
	column-gap: 0.75rem;
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
}

.button-icon svg{
	height: 1.5rem;
	width: 1.5rem;
	flex-shrink: 0;
}

.button-icon span{
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
}

.button-icon:hover{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.button-arrow{
	display: inline-flex;
	align-items: center;
	column-gap: 0.75rem;
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
}

.button-arrow svg{
	height: 1.5rem;
	width: 1.5rem;
	flex-shrink: 0;
}

.button-arrow span{
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
}

.button-arrow:hover{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.button-arrow{
	flex-direction: row-reverse;
	font-family: Montserrat Regular, sans-serif;
}

.button-arrow svg{
	height: 0.75rem;
	width: 0.75rem;
	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));
	transition-property: transform;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.button-arrow:hover svg{
	--tw-translate-x: 0.25rem;
	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));
}

.button-arrow.left{
	flex-direction: row;
}

.button-arrow.left svg{
	--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));
}

.button-arrow.left:hover svg{
	--tw-translate-x: -0.25rem;
	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));
}

/**
	BUTTON CONTAINER STYLING
 */

.button-container{
	display: flex;
	flex-wrap: wrap;
	column-gap: 1.5rem;
	row-gap: 1rem;
}

.button-container.align-left{
	justify-content: flex-start;
}

.background .button-container.align-left {
        justify-content: flex-start;
    }

.button-container.align-center{
	justify-content: center;
}

.background .button-container.align-center {
        justify-content: center;
    }

.button-container.align-right{
	justify-content: flex-end;
}

.background .button-container.align-right {
        justify-content: flex-end;
    }

.button-container.align-justified{
	justify-content: space-between;
}

.button-container.align-vertical{
	flex-direction: column;
	align-items: flex-start;
}

/* Navigation styles */

/**
    ALERT NOTICE STYLING
 */

.alert-notice{
	position: absolute;
	top: 100%;
	left: 0px;
	width: 100%;
	--tw-bg-opacity: 1;
	background-color: rgb(30 50 80 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

.alert-notice__close-button{
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
}

.alert-notice__close-button svg{
	height: 1.5rem;
	width: 1.5rem;
}

.alert-notice__close-button:hover svg{
	--tw-text-opacity: 1;
	color: rgb(244 243 243 / var(--tw-text-opacity));
}

.alert-notice__container{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

@media (min-width: 40rem){

	.alert-notice__container{
		flex-direction: row;
		align-items: center;
	}
}

.alert-notice__container{
	padding: 1rem;
	padding-right: 3rem;
}

@media (min-width: 64rem){

	.alert-notice__container{
		padding: 1.5rem;
		padding-right: 4rem;
	}
}

.alert-notice__container:hover .alert-notice__arrow{
	--tw-translate-x: 0.25rem;
	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));
}

@media (min-width: 40rem){

	.alert-notice__content{
		margin-right: 1.5rem;
	}
}

.alert-notice__content{
	text-align: justify;
}

@media (min-width: 64rem){

	.alert-notice__content{
		text-align: left;
	}
}

.alert-notice__content .bard > p{
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

.alert-notice__arrow{
	height: 1.5rem;
	width: 1.5rem;
	flex-shrink: 0;
	transition-property: transform;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.alert-notice__link{
	position: absolute;
	left: 0px;
	top: 0px;
	height: 100%;
	width: 100%;
}

/**
	HEADERMENU DROPDOWN STYLING
 */

.headermenu .nav-item .nav-dropdown-toggle{
	position: absolute;
	top: 0.25rem;
	right: 0.25rem;
	width: 100%;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	display: flex;
	justify-content: flex-end;
}

.background .headermenu .nav-item .nav-dropdown-toggle {
        justify-content: flex-end;
    }

.headermenu .nav-item .nav-dropdown-toggle svg{
	height: 1.5rem;
	width: 1.5rem;
	transform-origin: center;
	transition-property: transform;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	will-change: transform;
}

.headermenu .nav-item .nav-dropdown-toggle[aria-pressed="true"] svg{
	--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));
}

.headermenu .nav-item .nav-dropdown-toggle svg{
	font-size: 1.5rem;
	line-height: 2rem;
}

.headermenu .nav-dropdown{
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	background-color: #fff;
}

.headermenu .nav-dropdown .nav-link{
	display: block;
	padding: 0.25rem;
}

.headermenu .nav-dropdown .nav-dropdown-item{
	font-size: 1.125rem;
	line-height: 1.75rem;
}

@media (min-width: 64rem){

	.headermenu .nav-dropdown .nav-dropdown-item{
		font-size: 0.875rem;
		line-height: 1.25rem;
	}
}

@media (min-width: 80rem){

	.headermenu .nav-dropdown .nav-dropdown-item{
		font-size: 1rem;
		line-height: 1.5rem;
	}
}

.headermenu .nav-dropdown .nav-dropdown-item:hover,
		.headermenu .nav-dropdown .nav-dropdown-item.active {
			color: #1E3250;
		}

/* Breakpoint: Mobile -> Desktop */

@media screen and (min-width: 64rem) {
		.headermenu .nav-item .nav-dropdown-toggle{
		display: none;
	}

.flatpickr-day.headermenu .nav-item .nav-dropdown-toggle {
  visibility: hidden;
}
	
		.headermenu .nav-item:hover .nav-dropdown{
		display: flex !important;
	}

	.headermenu .nav-dropdown{
		width: auto;
		align-items: center;
		text-align: right;
		position: absolute;
		top: 100%;
		display: none;
	}

.flatpickr-day.headermenu .nav-dropdown {
  visibility: hidden;
}

	.headermenu .nav-dropdown {
		min-width: max(100%, 8rem);
		box-shadow: 0 6px 6px 0 rgb(44 62 80 / 10%), 0 7px 7px -5px rgb(44 62 80 / 10%);
	}

	.headermenu .nav-dropdown-item .nav-link,
	.nav-dropdown-item-button{
		padding-left: 1rem;
		padding-right: 1rem;
		padding-top: 0.25rem;
		padding-bottom: 0.25rem;
	}

	@media (min-width: 64rem){

		.headermenu .nav-dropdown-item .nav-link,
	.nav-dropdown-item-button{
			padding-left: 1.5rem;
			padding-right: 1.5rem;
		}
	}

	.nav-dropdown-item-button{
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}

.background .nav-dropdown-item-button {
        justify-content: flex-end;
    }

	.headermenu .nav-dropdown-item{
		font-weight: 400;
		transition-property: all;
		transition-timing-function: ease-in-out;
		transition-duration: 300ms;
	}

		.headermenu .nav-dropdown-item:last-child{
		margin-bottom: 0.5rem;
	}
}

/**
	HEADERMENU STYLING

	Headermenu with collapsing navigation menu on mobile.
 */

.headermenu{
	position: fixed;
	top: 0px;
	z-index: 50;
	display: flex;
	width: 100%;
	flex-direction: column;
	transition: height 300ms cubic-bezier(0.37, 0, 0.63, 1);
	background-color: #fff;
	box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
}

.headermenu .logo{
	height: 100%;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.headerdummy {
	width: 100%;
	height: 3.5rem;
}

.headermenu-mobile{
	display: flex;
	justify-content: space-between;
	padding-left: 1rem;
	padding-right: 1rem;
}

@media (min-width: 64rem){

	.headermenu-mobile{
		padding-right: 0px;
	}
}

.headermenu-mobile {
	height: 3.5rem;
}

.headermenu-items{
	display: none;
	width: 100%;
	overflow: auto;
}

.flatpickr-day.headermenu-items {
  visibility: hidden;
}

.headermenu-items{
	flex-direction: column;

	height: calc(100vh - 3.5rem);
	color: #000;
}

.headermenu-items .nav-item{
	font-family: Montserrat Regular, sans-serif;
	font-size: 1.25rem;
	line-height: 1.75rem;
}

@media (min-width: 64rem){

	.headermenu-items .nav-item{
		font-size: 0.875rem;
		line-height: 1.25rem;
	}
}

@media (min-width: 80rem){

	.headermenu-items .nav-item{
		font-size: 1rem;
		line-height: 1.5rem;
	}
}

.headermenu-items .nav-item{
	position: relative;
	margin-bottom: 1rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.background .headermenu-items .nav-item {
        justify-content: center;
    }

.headermenu-items .nav-item > .nav-link{
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.headermenu-items .nav-item:hover > .nav-link,
		.headermenu-items .nav-item.active > .nav-link {
			color: #1E3250;
		}

.headermenu-items .nav-item:hover > .nav-item-spacing > .button-primary,
		.headermenu-items .nav-item.active > .nav-item-spacing > .button-primary{
	--tw-bg-opacity: 1;
	background-color: rgb(175 175 175 / var(--tw-bg-opacity));
}

.headermenu-items .nav-item-spacing{
	padding-left: 1rem;
	padding-right: 1rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

@media (min-width: 80rem){

	.headermenu-items .nav-item-spacing{
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}

.headermenu-items .logo{
	display: none;
}

.flatpickr-day.headermenu-items .logo {
  visibility: hidden;
}

.headermenu-item-group{
	display: flex;
	flex-direction: column;
}

/* Breakpoint: Mobile -> Desktop */

@media screen and (min-width: 64rem) {

	.headermenu{
		flex-direction: row;
	}

	.headermenu,
	.headerdummy {
		height: 4rem;
	}

	.headermenu-mobile{
		display: none;
	}

.flatpickr-day.headermenu-mobile {
  visibility: hidden;
}

	.headermenu-items{
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		overflow: visible;
		height: 4rem;
	}

		.headermenu-items .logo{
		display: block;
	}

		.headermenu-items .nav-item{
		margin-bottom: 0px;
		font-size: 0.875rem;
		line-height: 1.25rem;
	}

		@media (min-width: 80rem){

		.headermenu-items .nav-item{
			font-size: 1rem;
			line-height: 1.5rem;
		}
	}

		.headermenu-items .nav-item{
		height: 100%;
		flex-direction: row;
	}

			.headermenu-items .nav-item .button-primary{
		height: 100%;
		border-radius: 0px;
		--tw-bg-opacity: 1;
		background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	}

				@media (min-width: 64rem) {

			.headermenu-items .nav-item .button-primary {
					height: 4rem
			}
				}

	.headermenu-item-group{
		flex-direction: row;
	}
}

/* Breakpoint: Mobile -> Desktop */

@media screen and (min-width: 64rem) {

.headermenu-transparent{
		background-color: transparent;
		--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);
        height: 6rem;
	}

        .headermenu-transparent nav {
            /* The navigation menu */
            background-color: transparent;
            --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);
        }

        .headermenu-transparent .dropdown {
            transition: all 300ms cubic-bezier(0.37, 0, 0.63, 1);
            top: 75%;
            background-color: transparent;
            --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);
        }
    }

/**
	HAMBURGER STYLING

	<button class="hamburger" aria-pressed="false" aria-label="Hamburger Menu">
		<span></span>
	</button>
 */

button.hamburger {
	height: 100%;
}

button.hamburger span {
		position: relative;
		display: block;
		transition: transform, top, bottom 0ms 300ms;
	}

button.hamburger span,
		button.hamburger span::before,
		button.hamburger span::after {
			width: 35px;
			height: 2px;
			background-color: #000;
		}

button.hamburger span::before,
		button.hamburger span::after {
			content: "";
			position: absolute;
			left: 0;
			transform: rotate(0deg);
			transform-origin: center;
			will-change: transform;
		}

button.hamburger span::before {
			bottom: 10px;
			transition: bottom 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
		}

button.hamburger span::after {
			top: 10px;
			transition: top 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
		}

button.hamburger[aria-pressed="true"] span {
			background-color: transparent !important;
		}

button.hamburger[aria-pressed="true"] span::before {
				bottom: 0;
				transform: rotate(-45deg);
				transition: bottom 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
			}

button.hamburger[aria-pressed="true"] span::after {
				top: 0;
				transform: rotate(45deg);
				transition: top 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
			}

@media screen and (min-width: 64rem) {

button.hamburger {
		display: none
}
	}

.language-selection-toggle{
	margin-left: -0.5rem;
	margin-right: -0.5rem;
	display: flex;
	flex-direction: row;
	align-items: center;
}

.language-selection-toggle .language{
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	font-weight: 700;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.language-selection-toggle .language:hover, 
        .language-selection-toggle .language.active{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.language-selection-toggle .language-divider{
	height: 1.25rem;
	--tw-bg-opacity: 1;
	background-color: rgb(0 0 0 / var(--tw-bg-opacity));
        width: 2px;
}

.language-selection-dropdown > .nav-link{
	display: flex;
	align-items: center;
	cursor: default;
	font-weight: 400;
}

.language-selection-dropdown > .nav-link .arrow-down{
	margin-left: 0.5rem;
	display: none;
	width: 1rem;
}

.flatpickr-day.language-selection-dropdown > .nav-link .arrow-down {
  visibility: hidden;
}

@media (min-width: 64rem){

	.language-selection-dropdown > .nav-link .arrow-down{
		display: block;
	}
}

/* Form styles */

.checkbox input[type="checkbox"]{
	display: none;
}

.flatpickr-day.checkbox input[type="checkbox"] {
  visibility: hidden;
}

.checkbox input[type="checkbox"] + label{
	position: relative;
	display: inline-block;
	cursor: pointer;
	-webkit-user-select: none;
	        user-select: none;
	padding-left: 2rem;
}

.checkbox input[type="checkbox"] + label p{
	display: inline;
}


.flatpickr-calendar.checkbox input[type="checkbox"] + label p {
  opacity: 1;
  max-height: 640px;
  visibility: visible;
}

.flatpickr-calendar.checkbox input[type="checkbox"] + label p {
  display: block;
  position: relative;
  top: 2px;
}

.checkbox input[type="checkbox"] + label:last-child{
	margin-bottom: 0px;
}

.checkbox input[type="checkbox"] + label::before{
	position: absolute;
	left: 0px;
	display: block;
	height: 1.25rem;
	width: 1.25rem;
	border-radius: 9999px;
	border-width: 2px;
            top: 2px;
            border-color: #000;
            content: '';
            transition: all .12s, border-color .08s;
}

.checkbox input[type="checkbox"]:checked + label::before{
	width: 0.75rem;
	border-radius: 0px;
	opacity: 1;
            border-bottom-width: 3px;
            border-right-width: 3px;
            background-color: transparent;
            border-color: #000;
            border-top-color: transparent;
            border-left-color: transparent;
            transform: rotate(45deg) translateX(-50%) translateY(-50%);
            top: 0.6rem;
}

.checkbox input[type="checkbox"]:not(:checked):disabled + label::before {
            border-color: #a3a3a3;
        }

.checkbox input[type="checkbox"]:checked:disabled + label::before{
	border-style: solid;
            border-bottom-width: 3px;
            border-right-width: 3px;
            border-right-color: #a3a3a3;
            border-bottom-color: #a3a3a3;
}

.checkbox input[type="checkbox"]:disabled + label {
            color: #a3a3a3;
        }

.radio input[type="radio"] {
		display: none;
	}

.radio input[type="radio"] + label {
			position: relative;
			display: inline-block;
			padding-left: 2rem;
			cursor: pointer;
			-webkit-user-select: none;
			        user-select: none;
		}

.radio input[type="radio"] + label::before,
		.radio input[type="radio"] + label::after {
			content: "";
			position: absolute;
			border-radius: 50%;
			display: block;
		}

.radio input[type="radio"] + label::before {
			top: 0.25rem;
			left: 0;
			border: 2px solid 	#1E3250;
			width: 1rem;
			height: 1rem;
		}

.radio input[type="radio"] + label::after {
			content: "";
			top: 0.5rem;
			left: 0.25rem;
			width: 0.5rem;
			height: 0.5rem;
			background-color: 	#1E3250;
			transform: scale(0);
			transition: transform 0.28s ease-in-out;
		}

.radio input[type="radio"]:checked + label::after {
			transform: scale(1);
		}

.radio input[type="radio"]:disabled + label {
            color: #a3a3a3;
        }

.radio input[type="radio"]:disabled + label::before {
            border-color: #a3a3a3;
        }

.radio input[type="radio"]:disabled + label::after {
            background-color: #a3a3a3;
        }

/* Basic select styling */

.form-field select{
	width: 100%;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
    box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
    border: 2px solid transparent;
    border-radius: 0rem;
    padding: 0.5rem 0.75rem;
    color: #1E3250;
    font-weight: 700;
}

.form-field select,.form-field select:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.form-field select:focus {
        box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
        border: 2px solid 	#1E3250;
    }

.form-field select:placeholder{
	--tw-text-opacity: 1;
	color: rgb(156 163 175 / var(--tw-text-opacity));
}

.form-field select[disabled]{
	--tw-border-opacity: 1;
	border-color: rgb(156 163 175 / var(--tw-border-opacity));
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
	pointer-events: none;
	cursor: not-allowed;
}

.form-field select[disabled] + .icon-calendar{
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
}

.form-field select{
	position: relative;
	width: 100%;
	cursor: pointer;
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	background-position: center;
	background-repeat: no-repeat;
    background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z"/></svg>');
    background-position-x: calc(100% - 0.5rem);
    background-size: 1.2rem;
}

.form-field select option{
	--tw-text-opacity: 1;
	color: rgb(0 0 0 / var(--tw-text-opacity));
}

/* Custom dropdown-menu styling */

.dropdown-menu{
	position: relative;
}

.dropdown-menu select{
	display: none;
}

.flatpickr-day.dropdown-menu select {
  visibility: hidden;
}

/* If native picker is requested (e.g. for mobile devices) */

.dropdown-menu.use-native-picker select{
	position: absolute;
	left: 0px;
	top: 0px;
	display: block;
	height: 100%;
	width: 100%;
	opacity: 0;
}

.dropdown-menu .dropdown-head{
	position: relative;
	cursor: pointer;
	font-weight: 400;
	--tw-text-opacity: 1;
	color: rgb(107 114 128 / var(--tw-text-opacity));
}

.dropdown-menu .dropdown-head[aria-expanded="true"] .dropdown-arrow{
	--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));
}

.dropdown-menu:not([multiple]).has-value .dropdown-head{
	font-weight: 700;
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.dropdown-menu .dropdown-search{
	height: 100%;
	width: 100%;
}

.dropdown-menu .dropdown-search:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.dropdown-menu .dropdown-value{
	display: block;
	-webkit-user-select: none;
	        user-select: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.dropdown-menu .dropdown-arrow{
	position: absolute;
	top: 0px;
	bottom: 0px;
	right: 0px;
	margin-right: 0.5rem;
	display: flex;
	align-items: center;
	pointer-events: none;
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 100ms;
}

.dropdown-menu .dropdown-arrow svg{
	height: 1.25rem;
	width: 1.25rem;
}

.dropdown-menu .dropdown-body{
	position: absolute;
	z-index: 10;
	margin-top: 0.25rem;
	width: 100%;
	border-radius: 0.375rem;
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255 / var(--tw-bg-opacity));
	--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.dropdown-menu .dropdown-body .dropdown-listbox{
	max-height: 15rem;
	overflow: auto;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	scrollbar-width: thin;
	scrollbar-color: #afafaf55 #00088;
	scroll-behavior: smooth;
	font-family: Montserrat Regular, sans-serif;
}

.dropdown-menu .dropdown-body .dropdown-listbox::-webkit-scrollbar {
		height: 10px;
		width: 10px;
	}

.dropdown-menu .dropdown-body .dropdown-listbox::-webkit-scrollbar-track {
		background: #00040; /** 25% transparency **/
	}

.dropdown-menu .dropdown-body .dropdown-listbox::-webkit-scrollbar-thumb{
	border-radius: 9999px;
		background: #afafafCC;
}

.dropdown-menu .dropdown-body .dropdown-listbox::-webkit-scrollbar-thumb:hover {
			background: #afafafFF;
		}

.dropdown-menu .dropdown-body .dropdown-option{
	position: relative;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	padding-left: 0.75rem;
	cursor: pointer;
	-webkit-user-select: none;
	        user-select: none;
}

.dropdown-menu .dropdown-body .dropdown-option .checkmark{
	position: absolute;
	top: 0px;
	bottom: 0px;
	right: 0px;
	padding-right: 1rem;
	display: flex;
	align-items: center;
}

.dropdown-menu .dropdown-body .dropdown-option .checkmark svg{
	height: 1.25rem;
	width: 1.25rem;
}

.dropdown-menu .dropdown-body .dropdown-option.focused{
	--tw-bg-opacity: 1;
	background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}

.dropdown-menu .dropdown-body .dropdown-option.selected{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.dropdown-menu .dropdown-no-results{
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	cursor: default;
	-webkit-user-select: none;
	        user-select: none;
	font-size: 0.875rem;
	line-height: 1.25rem;
	--tw-text-opacity: 1;
	color: rgb(107 114 128 / var(--tw-text-opacity));
}

.dropdown-menu .dropdown-tags{
	margin-top: 0.5rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.dropdown-menu .dropdown-tag{
	display: flex;
	align-items: center;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	padding-left: 0.5rem;
	padding-right: 0px;
	font-size: 0.875rem;
	line-height: 1.25rem;
        border-radius: 0rem;
        box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
}

.dropdown-menu .dropdown-tag .close{
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	cursor: pointer;
	font-size: 1.125rem;
	line-height: 1.75rem;
	line-height: 1;
}

.dropdown-menu .dropdown-tag .close:hover{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.flatpickr-calendar {
  background: transparent;
  opacity: 0;
  display: none;
  text-align: center;
  visibility: hidden;
  padding: 0;
  animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 307.875px;
  box-sizing: border-box;
  touch-action: manipulation;
  background: #fff;
  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
}

.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  max-height: 640px;
  visibility: visible;
}

.flatpickr-calendar.open {
  display: inline-block;
  z-index: 99999;
}

.flatpickr-calendar.animate.open {
  animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}

.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}

.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
  box-shadow: none !important;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}

.flatpickr-calendar.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6;
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}

.flatpickr-calendar:before,
.flatpickr-calendar:after {
  position: absolute;
  display: block;
  pointer-events: none;
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  left: 22px;
}

.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.arrowRight:before,
.flatpickr-calendar.rightMost:after,
.flatpickr-calendar.arrowRight:after {
  left: auto;
  right: 22px;
}

.flatpickr-calendar.arrowCenter:before,
.flatpickr-calendar.arrowCenter:after {
  left: 50%;
  right: 50%;
}

.flatpickr-calendar:before {
  border-width: 5px;
  margin: 0 -5px;
}

.flatpickr-calendar:after {
  border-width: 4px;
  margin: 0 -4px;
}

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
  bottom: 100%;
}

.flatpickr-calendar.arrowTop:before {
  border-bottom-color: #e6e6e6;
}

.flatpickr-calendar.arrowTop:after {
  border-bottom-color: #fff;
}

.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
  top: 100%;
}

.flatpickr-calendar.arrowBottom:before {
  border-top-color: #e6e6e6;
}

.flatpickr-calendar.arrowBottom:after {
  border-top-color: #fff;
}

.flatpickr-calendar:focus {
  outline: 0;
}

.flatpickr-wrapper {
  position: relative;
  display: inline-block;
}

.flatpickr-months {
  display: flex;
}

.flatpickr-months .flatpickr-month {
  background: transparent;
  color: rgba(0,0,0,0.9);
  fill: rgba(0,0,0,0.9);
  height: 34px;
  line-height: 1;
  text-align: center;
  position: relative;
  -webkit-user-select: none;
          user-select: none;
  overflow: hidden;
  flex: 1;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  -webkit-user-select: none;
          user-select: none;
  text-decoration: none;
  cursor: pointer;
  position: absolute;
  top: 0;
  height: 34px;
  padding: 10px;
  z-index: 3;
  color: rgba(0,0,0,0.9);
  fill: rgba(0,0,0,0.9);
}

.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
  display: none;
}

.flatpickr-months .flatpickr-prev-month i,
.flatpickr-months .flatpickr-next-month i {
  position: relative;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
/*
      /*rtl:begin:ignore*/
/*
      */
  left: 0;
/*
      /*rtl:end:ignore*/
/*
      */
}

/*
      /*rtl:begin:ignore*/

/*
      /*rtl:end:ignore*/

.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
/*
      /*rtl:begin:ignore*/
/*
      */
  right: 0;
/*
      /*rtl:end:ignore*/
/*
      */
}

/*
      /*rtl:begin:ignore*/

/*
      /*rtl:end:ignore*/

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  color: #959ea9;
}

.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
  fill: #f64747;
}

.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
  width: 14px;
  height: 14px;
}

.flatpickr-months .flatpickr-prev-month svg path,
.flatpickr-months .flatpickr-next-month svg path {
  transition: fill 0.1s;
  fill: inherit;
}

.numInputWrapper {
  position: relative;
  height: auto;
}

.numInputWrapper input,
.numInputWrapper span {
  display: inline-block;
}

.numInputWrapper input {
  width: 100%;
}

.numInputWrapper input::-ms-clear {
  display: none;
}

.numInputWrapper input::-webkit-outer-spin-button,
.numInputWrapper input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.numInputWrapper span {
  position: absolute;
  right: 0;
  width: 14px;
  padding: 0 4px 0 2px;
  height: 50%;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
  border: 1px solid rgba(57,57,57,0.15);
  box-sizing: border-box;
}

.numInputWrapper span:hover {
  background: rgba(0,0,0,0.1);
}

.numInputWrapper span:active {
  background: rgba(0,0,0,0.2);
}

.numInputWrapper span:after {
  display: block;
  content: "";
  position: absolute;
}

.numInputWrapper span.arrowUp {
  top: 0;
  border-bottom: 0;
}

.numInputWrapper span.arrowUp:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid rgba(57,57,57,0.6);
  top: 26%;
}

.numInputWrapper span.arrowDown {
  top: 50%;
}

.numInputWrapper span.arrowDown:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgba(57,57,57,0.6);
  top: 40%;
}

.numInputWrapper span svg {
  width: inherit;
  height: auto;
}

.numInputWrapper span svg path {
  fill: rgba(0,0,0,0.5);
}

.numInputWrapper:hover {
  background: rgba(0,0,0,0.05);
}

.numInputWrapper:hover span {
  opacity: 1;
}

.flatpickr-current-month {
  font-size: 135%;
  line-height: inherit;
  font-weight: 300;
  color: inherit;
  position: absolute;
  width: 75%;
  left: 12.5%;
  padding: 7.48px 0 0 0;
  line-height: 1;
  height: 34px;
  display: inline-block;
  text-align: center;
  transform: translate3d(0px, 0px, 0px);
}

.flatpickr-current-month span.cur-month {
  font-family: inherit;
  font-weight: 700;
  color: inherit;
  display: inline-block;
  margin-left: 0.5ch;
  padding: 0;
}

.flatpickr-current-month span.cur-month:hover {
  background: rgba(0,0,0,0.05);
}

.flatpickr-current-month .numInputWrapper {
  width: 6ch;
  width: 7ch\0;
  display: inline-block;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: rgba(0,0,0,0.9);
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: rgba(0,0,0,0.9);
}

.flatpickr-current-month input.cur-year {
  background: transparent;
  box-sizing: border-box;
  color: inherit;
  cursor: text;
  padding: 0 0 0 0.5ch;
  margin: 0;
  display: inline-block;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  line-height: inherit;
  height: auto;
  border: 0;
  border-radius: 0;
  vertical-align: initial;
  appearance: textfield;
}

.flatpickr-current-month input.cur-year:focus {
  outline: 0;
}

.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
  font-size: 100%;
  color: rgba(0,0,0,0.5);
  background: transparent;
  pointer-events: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
  appearance: menulist;
  background: transparent;
  border: none;
  border-radius: 0;
  box-sizing: border-box;
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
  font-weight: 300;
  height: auto;
  line-height: inherit;
  margin: -1px 0 0 0;
  outline: none;
  padding: 0 0 0 0.5ch;
  position: relative;
  vertical-align: initial;
  -webkit-box-sizing: border-box;
  -webkit-appearance: menulist;
  -moz-appearance: menulist;
  width: auto;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
  outline: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
  background: rgba(0,0,0,0.05);
}

.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
  background-color: transparent;
  outline: none;
  padding: 0;
}

.flatpickr-weekdays {
  background: transparent;
  text-align: center;
  overflow: hidden;
  width: 100%;
  display: flex;
  align-items: center;
  height: 28px;
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
  display: flex;
  flex: 1;
}

span.flatpickr-weekday {
  cursor: default;
  font-size: 90%;
  background: transparent;
  color: rgba(0,0,0,0.54);
  line-height: 1;
  margin: 0;
  text-align: center;
  display: block;
  flex: 1;
  font-weight: bolder;
}

.dayContainer,
.flatpickr-weeks {
  padding: 1px 0 0 0;
}

.flatpickr-days {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-start;
  width: 307.875px;
}

.flatpickr-days:focus {
  outline: 0;
}

.dayContainer {
  padding: 0;
  outline: 0;
  text-align: left;
  width: 307.875px;
  min-width: 307.875px;
  max-width: 307.875px;
  box-sizing: border-box;
  display: inline-block;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  justify-content: space-around;
  transform: translate3d(0px, 0px, 0px);
  opacity: 1;
}

.dayContainer + .dayContainer {
  box-shadow: -1px 0 0 #e6e6e6;
}

.flatpickr-day {
  background: none;
  border: 1px solid transparent;
  border-radius: 150px;
  box-sizing: border-box;
  color: #393939;
  cursor: pointer;
  font-weight: 400;
  width: 14.2857143%;
  flex-basis: 14.2857143%;
  max-width: 39px;
  height: 39px;
  line-height: 39px;
  margin: 0;
  display: inline-block;
  position: relative;
  justify-content: center;
  text-align: center;
}

.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
  cursor: pointer;
  outline: 0;
  background: #e6e6e6;
  border-color: #e6e6e6;
}

.flatpickr-day.today {
  border-color: #959ea9;
}

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
  border-color: #959ea9;
  background: #959ea9;
  color: #fff;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
  background: #569ff7;
  box-shadow: none;
  color: #fff;
  border-color: #569ff7;
}

.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange,
.flatpickr-day.endRange.startRange {
  border-radius: 50px 0 0 50px;
}

.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange,
.flatpickr-day.endRange.endRange {
  border-radius: 0 50px 50px 0;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  box-shadow: -10px 0 0 #569ff7;
}

.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange,
.flatpickr-day.endRange.startRange.endRange {
  border-radius: 50px;
}

.flatpickr-day.inRange {
  border-radius: 0;
  box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
  color: rgba(57,57,57,0.3);
  background: transparent;
  border-color: transparent;
  cursor: default;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
  cursor: not-allowed;
  color: rgba(57,57,57,0.1);
}

.flatpickr-day.week.selected {
  border-radius: 0;
  box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
}

.flatpickr-day.hidden {
  visibility: hidden;
}

.rangeMode .flatpickr-day {
  margin-top: 1px;
}

.flatpickr-weekwrapper {
  float: left;
}

.flatpickr-weekwrapper .flatpickr-weeks {
  padding: 0 12px;
  box-shadow: 1px 0 0 #e6e6e6;
}

.flatpickr-weekwrapper .flatpickr-weekday {
  float: none;
  width: 100%;
  line-height: 28px;
}

.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
  display: block;
  width: 100%;
  max-width: none;
  color: rgba(57,57,57,0.3);
  background: transparent;
  cursor: default;
  border: none;
}

.flatpickr-innerContainer {
  display: block;
  display: flex;
  box-sizing: border-box;
  overflow: hidden;
}

.flatpickr-rContainer {
  display: inline-block;
  padding: 0;
  box-sizing: border-box;
}

.flatpickr-time {
  text-align: center;
  outline: 0;
  display: block;
  height: 0;
  line-height: 40px;
  max-height: 40px;
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
}

.flatpickr-time:after {
  content: "";
  display: table;
  clear: both;
}

.flatpickr-time .numInputWrapper {
  flex: 1;
  width: 40%;
  height: 40px;
  float: left;
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
  border-bottom-color: #393939;
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
  border-top-color: #393939;
}

.flatpickr-time.hasSeconds .numInputWrapper {
  width: 26%;
}

.flatpickr-time.time24hr .numInputWrapper {
  width: 49%;
}

.flatpickr-time input {
  background: transparent;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  text-align: center;
  margin: 0;
  padding: 0;
  height: inherit;
  line-height: inherit;
  color: #393939;
  font-size: 14px;
  position: relative;
  box-sizing: border-box;
  appearance: textfield;
}

.flatpickr-time input.flatpickr-hour {
  font-weight: bold;
}

.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
  font-weight: 400;
}

.flatpickr-time input:focus {
  outline: 0;
  border: 0;
}

.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
  height: inherit;
  float: left;
  line-height: inherit;
  color: #393939;
  font-weight: bold;
  width: 2%;
  -webkit-user-select: none;
          user-select: none;
  align-self: center;
}

.flatpickr-time .flatpickr-am-pm {
  outline: 0;
  width: 18%;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus {
  background: #eee;
}

.flatpickr-input[readonly] {
  cursor: pointer;
}

@keyframes fpFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange, 
.flatpickr-day.selected:focus, 
.flatpickr-day.startRange:focus, 
.flatpickr-day.endRange:focus, 
.flatpickr-day.selected:hover, 
.flatpickr-day.startRange:hover, 
.flatpickr-day.endRange:hover, 
.flatpickr-day.selected.prevMonthDay, 
.flatpickr-day.startRange.prevMonthDay, 
.flatpickr-day.endRange.prevMonthDay, 
.flatpickr-day.selected.nextMonthDay, 
.flatpickr-day.startRange.nextMonthDay, 
.flatpickr-day.endRange.nextMonthDay{
	--tw-border-opacity: 1;
	border-color: rgb(30 50 80 / var(--tw-border-opacity));
	--tw-bg-opacity: 1;
	background-color: rgb(30 50 80 / var(--tw-bg-opacity));
}

.flatpickr-months .flatpickr-prev-month:hover svg, 
.flatpickr-months .flatpickr-next-month:hover svg {
    fill: 	#1E3250;
}

.flatpickr-current-month option{
	font-size: 1rem;
	line-height: 1.5rem;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
    background: transparent;
}

.asset-wrapper .selected-files{
	width: 100%;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
    box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
    border: 2px solid transparent;
    border-radius: 0rem;
    padding: 0.5rem 0.75rem;
    color: #1E3250;
    font-weight: 700;
}

.asset-wrapper .selected-files,.asset-wrapper .selected-files:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.asset-wrapper .selected-files:focus {
        box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
        border: 2px solid 	#1E3250;
    }

.asset-wrapper .selected-files:placeholder{
	--tw-text-opacity: 1;
	color: rgb(156 163 175 / var(--tw-text-opacity));
}

.asset-wrapper .selected-files[disabled]{
	--tw-border-opacity: 1;
	border-color: rgb(156 163 175 / var(--tw-border-opacity));
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
	pointer-events: none;
	cursor: not-allowed;
}

.asset-wrapper .selected-files[disabled] + .icon-calendar{
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
}

.asset-wrapper .selected-files{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1rem;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	padding-left: 1.25rem;
	padding-right: 0.5rem;
        border: 2px solid transparent;
        color: #1E3250;
}

.asset-wrapper .selected-files .selected-file{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.asset-wrapper .selected-files .button-remove{
	height: 1.5rem;
	width: 1.5rem;
	--tw-text-opacity: 1;
	color: rgb(0 0 0 / var(--tw-text-opacity));
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	cursor: pointer;
}

.asset-wrapper .selected-files .button-remove:hover{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.asset-wrapper .selected-files .file-name{
	font-size: 0.75rem;
	line-height: 1rem;
}

@media (min-width: 48rem){

	.asset-wrapper .selected-files .file-name{
		font-size: 1rem;
		line-height: 1.5rem;
	}
}

.asset-wrapper .selected-files .file-name {
            word-break: break-word;
        }

.asset-wrapper .uploaded-image{
	margin-right: 2rem;
	margin-bottom: 1rem;
	height: 8rem;
	width: 8rem;
	overflow: hidden;
	border-radius: 9999px;
	--tw-bg-opacity: 1;
	background-color: rgb(156 163 175 / var(--tw-bg-opacity));
	background-size: cover;
	background-position: center;
}

.form-component{
	width: 100%;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
    box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
    border: 2px solid transparent;
    border-radius: 0rem;
    padding: 0.5rem 0.75rem;
    color: #1E3250;
    font-weight: 700;
}

.form-component, .form-component:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.form-component:focus {
        box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
        border: 2px solid 	#1E3250;
    }

.form-component:placeholder{
	--tw-text-opacity: 1;
	color: rgb(156 163 175 / var(--tw-text-opacity));
}

.form-component[disabled]{
	--tw-border-opacity: 1;
	border-color: rgb(156 163 175 / var(--tw-border-opacity));
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
	pointer-events: none;
	cursor: not-allowed;
}

.form-component[disabled] + .icon-calendar{
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
}

form input[type='text'],
    form input[type='email'],
    form input[type='number'],
    form input[type='password'],
    form input[type='tel'],
    form input[type='date'],
    form textarea{
	width: 100%;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
    box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
    border: 2px solid transparent;
    border-radius: 0rem;
    padding: 0.5rem 0.75rem;
    color: #1E3250;
    font-weight: 700;
}

form input[type='text'],form input[type='text']:focus,
    form input[type='email'],
    form input[type='email']:focus,
    form input[type='number'],
    form input[type='number']:focus,
    form input[type='password'],
    form input[type='password']:focus,
    form input[type='tel'],
    form input[type='tel']:focus,
    form input[type='date'],
    form input[type='date']:focus,
    form textarea,
    form textarea:focus{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

form input[type='text']:focus,
    form input[type='email']:focus,
    form input[type='number']:focus,
    form input[type='password']:focus,
    form input[type='tel']:focus,
    form input[type='date']:focus,
    form textarea:focus {
        box-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 6px 0 rgb(44 62 80 / 10%);
        border: 2px solid 	#1E3250;
    }

form input[type='text']:placeholder,
    form input[type='email']:placeholder,
    form input[type='number']:placeholder,
    form input[type='password']:placeholder,
    form input[type='tel']:placeholder,
    form input[type='date']:placeholder,
    form textarea:placeholder{
	--tw-text-opacity: 1;
	color: rgb(156 163 175 / var(--tw-text-opacity));
}

form input[type='text'][disabled],
    form input[type='email'][disabled],
    form input[type='number'][disabled],
    form input[type='password'][disabled],
    form input[type='tel'][disabled],
    form input[type='date'][disabled],
    form textarea[disabled]{
	--tw-border-opacity: 1;
	border-color: rgb(156 163 175 / var(--tw-border-opacity));
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
	pointer-events: none;
	cursor: not-allowed;
}

form input[type='text'][disabled] + .icon-calendar,
    form input[type='email'][disabled] + .icon-calendar,
    form input[type='number'][disabled] + .icon-calendar,
    form input[type='password'][disabled] + .icon-calendar,
    form input[type='tel'][disabled] + .icon-calendar,
    form input[type='date'][disabled] + .icon-calendar,
    form textarea[disabled] + .icon-calendar{
	--tw-text-opacity: 1;
	color: rgb(75 85 99 / var(--tw-text-opacity));
}

form .section{
	margin-bottom: 1rem;
	margin-top: 1.5rem;
}

form .section p{
	margin-top: 0.5rem;
}

form input[name="_token"] + .section{
	margin-top: 0px;
}

form .form-field-wrapper{
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	column-gap: 1.5rem;
}

form .form-field{
	display: flex;
	flex-direction: column;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

form .form-field > label{
	margin-bottom: 0.25rem;
}

form .icon-calendar{
	pointer-events: none;
	height: 1.25rem;
	width: 1.25rem;
	position: absolute;
	right: 1rem;
	top: 50%;
	--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));
}

@media (min-width: 48rem) {
        form .width-25{
		grid-column: span 1 / span 1;
	}
    
        form .width-33{
		grid-column: span 2 / span 2;
	}
    
        form .width-50{
		grid-column: span 3 / span 3;
	}
    
        form .width-66{
		grid-column: span 4 / span 4;
	}
    
        form .width-75{
		grid-column: span 5 / span 5;
	}
    }

form .width-100{
	grid-column: span 6 / span 6;
}

form .success-message{
	margin-bottom: 0.75rem;
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

form .error-message{
	margin-bottom: 0.75rem;
	--tw-text-opacity: 1;
	color: rgb(153 27 27 / var(--tw-text-opacity));
}

form .button-submit .animate-spin{
	height: 1.25rem;
	width: 1.25rem;
	margin-left: -0.25rem;
	margin-right: 0.75rem;
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

form .button-submit:hover .animate-spin{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

/* Template module styles */

/**
	ACCORDION STYLING
 */

.accordion-title {
    display: block;
    position: relative;
    margin-top: 0.5rem;
    border-color: 	#1E3250;
    border-bottom-width: 2px;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-right: 2.5rem;
    cursor: pointer;
    -webkit-user-select: none;
            user-select: none;
    font-family: Montserrat Regular, sans-serif;
    font-weight: 700;
}

.accordion-title::before, .accordion-title::after {
        content: '';
        position: absolute;
        top: 50%;
        right: 1.25rem;
        transform: translateY(-50%);
        transform-origin: top;
        width: 2px;
        height: 1rem;
        background-color: 	#1E3250;
        transition-property: transform;
        transition-timing-function: ease-in-out;
        transition-duration: 300ms;
    }

.accordion-title::after {
        transform: rotate(90deg) translateY(-50%);
    }

.accordion-toggle {
    display: none;
}

.accordion-toggle:checked + .accordion-title::before {
            transform: rotate(90deg) translateY(-50%);
        }

.accordion-content{
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);

    overflow: hidden;
    height: 0;
}

.accordion-container{
	padding-top: 2rem;
	padding-bottom: 2rem;
}

@media (min-width: 64rem){

	.accordion-container{
		padding-left: 3rem;
		padding-right: 3rem;
	}
}

.anchor-id[id] {
    scroll-margin-top: calc(6rem - (4rem - 3.5rem));
}

@media (min-width: 64rem) {

.anchor-id[id] {
        scroll-margin-top: 6rem
}
    }

.content .bard{
	display: flex;
	flex-direction: column;
}

.content .bard__module.text{
	width: 100%;
}

.content .bard__module > h1{
	margin-bottom: 0px;
}

.content .bard.limited{
	margin-left: auto;
	margin-right: auto;
	max-width: 48rem;
}

/**
    DEFAULT COOKIE BYTE STYLING

    Here we define basic styles for e.g. buttons or checkboxes. You can
    reuse each or replace them with your own to match your site's design.
 */

.ddm {
    --ddm-color-primary: #000;
    --ddm-color-secondary: #fff;
    --ddm-color-disabled: #a3a3a3;
    --ddm-color-background: #fff;
    --ddm-color-text: #000;
}

.ddm * {
        box-sizing: border-box;
    }

.ddm-button {
    -webkit-appearance: button;
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0.375rem 1.25rem;
    font-weight: bold;
    text-decoration: none;
    transition: all ease-in-out 300ms;

    background-color: var(--ddm-color-primary);
    border: 2px solid var(--ddm-color-primary);
    color: var(--ddm-color-secondary);
}

.ddm-button:hover {
        background-color: var(--ddm-color-secondary);
        color: var(--ddm-color-primary);
    }

.ddm-button:focus {
        outline: 2px solid transparent;
        outline-offset: 2px;
    }

.ddm-button.inverted {
    color: var(--ddm-color-primary);
    background-color: var(--ddm-color-secondary);
    border: 2px solid var(--ddm-color-secondary);
}

.ddm-button.inverted:hover {
        color: var(--ddm-color-secondary);
        background-color: var(--ddm-color-primary);
        border: 2px solid var(--ddm-color-primary);
    }

/* Checkboxes */

.ddmcm .checkbox input[type='checkbox'] {
    display: none;
}

.ddmcm .checkbox input[type='checkbox'] + label {
        position: relative;
        display: block;
        padding-left: 2rem;

        cursor: pointer;
        -webkit-user-select: none;
                user-select: none;
    }

.ddmcm .checkbox input[type='checkbox']:disabled + label {
        color: var(--ddm-color-disabled);
    }

.ddmcm .checkbox input[type='checkbox'] + label::before {
        display: block;
        width: 1.25rem;
        height: 1.25rem;
        position: absolute;
        top: 0.15rem;
        left: 0;

        border: 2px solid var(--ddm-color-primary);
        content: '';
        transition: all .12s, border-color .08s;
    }

.ddmcm .checkbox input[type='checkbox']:disabled + label::before {
        border-color: var(--ddm-color-disabled);
    }

.ddmcm .checkbox input[type='checkbox']:checked + label::before {
        width: 0.75rem;
        top: 0.5rem;
        transform: rotate(45deg) translate(-50%, -50%);

        background-color: transparent;
        border-color: transparent;
        border-right-color: var(--ddm-color-primary);
        border-bottom-color: var(--ddm-color-primary);
        border-right-width: 2px;
        border-bottom-width: 2px;
    }

.ddmcm .checkbox input[type='checkbox']:checked:disabled + label::before {
        border-right-color: var(--ddm-color-disabled);
        border-bottom-color: var(--ddm-color-disabled);
    }

/* Adds some basic styling to the modal's content itself. */

.ddmcm-content h2:not(:last-child), .ddmcm-content p:not(:last-child), .ddmcc-content h2:not(:last-child), .ddmcc-content p:not(:last-child) {
            padding-bottom: 1rem;
        }

.ddmcm-content h2, .ddmcc-content h2 {
        font-size: 1.125rem;
        line-height: 1.75rem;
    }

@media screen and (min-width: 64rem) {

.ddmcm-content h2, .ddmcc-content h2 {
            font-size: 1.25rem;
            line-height: 1.75rem
    }
        }

/** Let's play safe: H2 is sometimes used for enormously huge texts,
     * so we define our own size, everything else is up to the other styles. */

.ddmcm-content .ddmcm-title, .ddmcc-content .ddmcm-title {
        position: sticky;
        top: 0;
        padding: 1rem 0;
        background-color: var(--ddm-color-background);
    }

/*
    COOKIE MODAL STYLING

    This is our pre-defined cookie modal styling.

    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    !!! Warning to the creative people out there                             !!!
    !!! ````````````````````````````````````````                             !!!
    !!! In this stylesheet are some pretty useful categories, which deletion !!!
    !!! could make some of the settings in the control panel, well, useless. !!!
    !!! Drive safe and most importantly: be careful.                         !!!
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 */

/** This is the background layer, which fills the whole screen. */

.ddmcm {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: opacity ease-in-out 300ms;
    pointer-events: none;
    z-index: 100;
}

/** These categories add the CP option to select a visible background layer. */

.ddmcm.back-light {
        background: rgba(64, 64, 64, .3);
        -webkit-backdrop-filter: saturate(180%) blur(3px);
                backdrop-filter: saturate(180%) blur(3px);
        pointer-events: auto;
    }

.ddmcm.back-heavy {
        background: rgba(64, 64, 64, .6);
        -webkit-backdrop-filter: saturate(180%) blur(3px);
                backdrop-filter: saturate(180%) blur(3px);
        pointer-events: auto;
    }

/** The relative wrapper, prepping the modal to be placed somewhere. */

.ddmcm-wrapper {
    position: relative;
    height: 100vh;
}

/** Controls the placement of the modal itself. */

.ddmcm-box {
    /* Initially, the modal is centered on the screen */
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    max-width: 28rem;
    max-height: 90vh;
    transform: translate(-50%, -50%);
    overflow-x: hidden;
    overflow-y: auto;
    pointer-events: auto;

    background-color: var(--ddm-color-background);
    color: var(--ddm-color-text);
    box-shadow: 0 0px 15px 3px rgba(44, 62, 80, 0.1), 0 0 6px 0 rgba(44, 62, 80, 0.1);
}

/* Make the modal a little wider on desktops */

@media screen and (min-width: 64rem) {

.ddmcm-box {
        max-width: 34rem
}
    }

/* Position the modal as defined by the categories above tablets */

@media screen and (min-width: 48rem) {
        .ddmcm-box.top {
            top: 2rem;
            bottom: auto;
        }

        .ddmcm-box.left {
            left: 2rem;
            right: auto;
        }

        .ddmcm-box.right {
            right: 2rem;
            left: auto;
        }

        .ddmcm-box.bottom {
            bottom: 2rem;
            top: auto;
        }

        .ddmcm-box:not(.center) {
            transform: none;
        }
            .ddmcm-box.center.left, .ddmcm-box.center.right {
                transform: translateY(-50%);
            }

            .ddmcm-box.center.top, .ddmcm-box.center.bottom {
                transform: translateX(-50%);
            }
    }

.ddmcm-content {
    margin: 0 1.5rem 1.5rem 1.5rem;
}

.ddmcm-buttons {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media screen and (min-width: 64rem) {

.ddmcm-buttons {
        flex-direction: row
}
    }

/** Accordion styling **/

.ddmcm-accordion-item .ddmcm-accordion-toggle {
        cursor: default;
        display: flex;
        align-items: center;
        -webkit-user-select: none;
                user-select: none;
    }

.ddmcm-accordion-item .ddmcm-accordion-arrow {
        display: flex;
        width: 1rem;
        height: 1rem;
        margin-left: 0.3rem;
        transition: transform 150ms ease-in-out;
        /* Thanks to bootstrap icons for this cool chevron icon (name: chevron-down) */
        background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22currentColor%22%20viewBox%3D%220%200%2016%2016%22%3E%0A%20%20%3Cpath%20fill-rule%3D%22evenodd%22%20d%3D%22M1.646%204.646a.5.5%200%200%201%20.708%200L8%2010.293l5.646-5.647a.5.5%200%200%201%20.708.708l-6%206a.5.5%200%200%201-.708%200l-6-6a.5.5%200%200%201%200-.708z%22%2F%3E%0A%3C%2Fsvg%3E") no-repeat;
    }

.ddmcm-accordion-item.has-content .ddmcm-accordion-toggle {
        cursor: pointer;
    }

.ddmcm-accordion-toggle input[type="checkbox"] {
    display: none;
}

.ddmcm-accordion-toggle input[type="checkbox"]:checked + .ddmcm-accordion-arrow {
        transform: rotate(180deg);
    }

.ddmcm-accordion-content {
    transition: 500ms all cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
    height: 0;
    font-size: 0.9em;
}

/* Add some spacing on top and bottom of the content wrapper */

.ddmcm-accordion-content:before, .ddmcm-accordion-content:after {
        content: '';
        height: 10px;
        display: block;
    }

/* Basic table styling, let's keep it compact and simple */

.ddmcm-accordion-content table td {
        padding: 0.25rem 1rem 0.25rem 0;
        border: none;
        vertical-align: top;
    }

.ddmcm-accordion-content table td h2, .ddmcm-accordion-content table td p {
            margin-bottom: 0;
        }

.ddmcm-accordion-content table td:last-child {
            padding-right: 0;
        }

/** Now it's time to align the checkboxes. */

.ddmcm-categories {
    margin-bottom: 1.5rem;
}

.ddmcm-categories .checkbox {
        display: flex;
        justify-content: space-between;
    }

@media screen and (min-width: 48rem) {

.ddmcm-categories .checkbox {
            display: block
    }
        }

.ddmcm-categories .ddmcm-category {
        display: flex;
    }

.ddmcm-categories .ddmcm-category:not(:last-child) {
            margin-bottom: 0.5rem;
        }

/*
    COOKIE COVER STYLING
    This is our pre-defined cookie cover styling.
 */

.ddmcc {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: opacity ease-in-out 300ms;
    z-index: 10;
    max-width: 100%;
}

.ddmcc-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 20rem;
    background-color: rgba(0, 0, 0, .5);
}

.ddmcc-content {
    padding: 1.5rem;
}

.ddmcc-content h2, .ddmcc-content p {
        text-align: center;
        color: #fff;
    }

.ddmcc-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
}

[data-html-snippet] {
    display: none;
}

#ddmcm-button-all, .ddmcc-button-accept {
    all: unset;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.background #ddmcm-button-all,.background  .ddmcc-button-accept {
        justify-content: center;
    }

#ddmcm-button-all, .ddmcc-button-accept{
	cursor: pointer;
	font-family: Montserrat Regular, sans-serif;
	font-weight: 700;
	text-decoration-line: none;
	--tw-bg-opacity: 1;
	background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	appearance: none;
	border-radius: 0rem;
}

#ddmcm-button-all:hover, .ddmcc-button-accept:hover{
	--tw-bg-opacity: 1;
	background-color: rgb(175 175 175 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

.headermenu-items .nav-item:hover > .nav-item-spacing > #ddmcm-button-all,
		.headermenu-items .nav-item.active > .nav-item-spacing > #ddmcm-button-all,.headermenu-items .nav-item:hover > .nav-item-spacing >  .ddmcc-button-accept,
		.headermenu-items .nav-item.active > .nav-item-spacing >  .ddmcc-button-accept{
	--tw-bg-opacity: 1;
	background-color: rgb(175 175 175 / var(--tw-bg-opacity));
}

@media screen and (min-width: 64rem) {

			.headermenu-items .nav-item #ddmcm-button-all,.headermenu-items .nav-item  .ddmcc-button-accept{
		height: 100%;
		border-radius: 0px;
		--tw-bg-opacity: 1;
		background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	}

				@media (min-width: 64rem) {

			.headermenu-items .nav-item #ddmcm-button-all,.headermenu-items .nav-item  .ddmcc-button-accept {
					height: 4rem
			}
				}
}

.ddmcm-buttons{
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 1rem;
}

@media (min-width: 48rem){

	.ddmcm-buttons{
		flex-direction: row;
	}
}

.page__module.design_element{
	z-index: 0;
	max-width: none;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	.page__module.design_element{
		padding-left: 0px;
		padding-right: 0px;
	}
}

.design-element{
	position: relative;
}

.design-element.relative-to-container{
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	.design-element.relative-to-container{
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.design-element.mobile-hidden{
	display: none;
}

.flatpickr-day.design-element.mobile-hidden {
  visibility: hidden;
}

@media (min-width: 64rem){

	.design-element.mobile-hidden{
		display: block;
	}

	.design-element.desktop-hidden{
		display: none;
	}
}

.design-element__image{
	pointer-events: none;
	position: absolute;
	z-index: 0;
	-webkit-user-select: none;
	        user-select: none;
}

.error-page{
	display: flex;
	height: 100%;
	min-height: 100vh;
	width: 100%;
	justify-content: center;
}

.background .error-page {
        justify-content: center;
    }

@media (min-width: 64rem){

	.error-page{
		height: 100vh;
	}
}

.error-page{
	position: relative;
	overflow: hidden;
	background-size: cover;
	background-repeat: no-repeat;
    background-position: center;
}

.error-page:before {
        content: "";
        position: absolute;
        left: 0px;
        top: 0px;
        height: 100vh;
        width: 100vw;
        background: black;
        opacity: 0.4;
    }

.error-page .content-wrapper{
	width: 100%;
}

@media (min-width: 40rem){

	.error-page .content-wrapper{
		max-width: 40rem;
	}
}

@media (min-width: 48rem){

	.error-page .content-wrapper{
		max-width: 48rem;
	}
}

@media (min-width: 64rem){

	.error-page .content-wrapper{
		max-width: 64rem;
	}
}

@media (min-width: 80rem){

	.error-page .content-wrapper{
		max-width: 80rem;
	}
}

@media (min-width: 96rem){

	.error-page .content-wrapper{
		max-width: 96rem;
	}
}

.error-page .content-wrapper{
	margin-left: auto;
	margin-right: auto;
	height: 100%;
	width: 100%;
	max-width: 56rem;
}

@media (min-width: 64rem){

	.error-page .content-wrapper{
		height: auto;
	}
}

.error-page .content-wrapper{
	inset: 0px;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}

@media (min-width: 48rem){

	.error-page .content-wrapper{
		padding-left: 3rem;
		padding-right: 3rem;
	}
}

@media (min-width: 64rem){

	.error-page .content-wrapper{
		padding-left: 4rem;
		padding-right: 4rem;
		padding-top: 0px;
		padding-bottom: 0px;
	}
}

.error-page .content-wrapper{
	position: absolute;
	top: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.background .error-page .content-wrapper {
        justify-content: center;
    }

.error-page .content-wrapper {
        transform: translateY(-50%);
        color: white;
    }

.error-page .content-wrapper .bard > .bard__module.text > p{
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
}

.error-page .button-container{
	justify-content: center;
}

.background .error-page .button-container {
        justify-content: center;
    }

@media (min-width: 48rem){

	.error-page .button-container [class*="button"]:not(:last-child){
		margin-right: 3rem;
	}
}

.error-page .button-container [class*="button"] svg {
                color: white;
            }

.error-page .bard .bard__module:last-child{
	margin-bottom: 0px !important;
}

.background{
	margin: auto;
	display: flex;
	width: 100%;
	align-items: center;
}

.background .justify-end {
        justify-content: flex-end;
    }

.background .justify-start {
        justify-content: flex-start;
    }

.background .justify-center {
        justify-content: center;
    }

.image-wrapper{
	display: flex;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}

.image-wrapper.small .image{
	max-width: 28rem;
}

.image-wrapper.medium .image{
	max-width: 48rem;
}

.image-wrapper.large .image{
	max-width: none;
}

/**
    IMAGE GALLERY MODULE STYLING
 */

.masonry:after {
    content: '';
    display: block;
    clear: both;
}

.grid-sizer, .masonry-brick {
    width: 100%;
}

.gutter-sizer {
    width: 20px;
}

.masonry-brick {
    float: left;
    margin-bottom: 20px;
}

.masonry-brick img {
        display: block;
        max-width: 100%;
    }

@media (min-width: 48rem) {
    .grid-sizer, .masonry-brick {
        width: calc(50% - 20px);
    }
}

@media (min-width: 64rem) {
    .gutter-sizer {
        width: 30px;
    }

    .grid-sizer, .masonry-brick {
        width: calc(33.3333% - 20px);
    }

    .masonry-brick {
        margin-bottom: 30px;
    }
}

/**
	IMAGE TEXT MODULE STYLING

	A module with an image next to a bard module. The position can be swapped
	between left- and right-handed.
 */

.image-text{
	display: flex;
	flex-direction: column;
}

@media (min-width: 64rem){

	.image-text{
		flex-direction: row;
		align-content: space-between;
	}
}

.image-text > .image, .image-text > .text{
	display: flex;
	width: 100%;
	align-items: center;
}

@media (min-width: 64rem){

	.image-text > .image, .image-text > .text{
		width: 50%;
	}
}

.image-text > .image{
	align-items: center;
}

.image-text > .image.right{
	justify-content: flex-end;
}

.background .image-text > .image.right {
        justify-content: flex-end;
    }

@media (min-width: 64rem) {

.image-text > .image.right {
				order: 3
		}

.image-text > .text.right{
		order: 3;
	}
			}

.image-text .spacer{
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}

@media (min-width: 64rem){

	.image-text .spacer{
		order: 2;
		padding-left: 3rem;
		padding-right: 3rem;
	}
}

.image-text img[data-object-fit='cover']{
	min-height: 20rem;
	width: 100%;
}

@media (min-width: 64rem){

	.image-text img[data-object-fit='cover']{
		max-height: 32rem;
		min-height: 28rem;
	}
}

/**
    MEDIA-VIEWER MODULE STYLING
 */

.media-viewer .media-viewer-item{
	cursor: pointer;
}

.multicolumn-container{
	display: grid;
	column-gap: 3rem;
	row-gap: 2rem;
}

.multicolumn-container.gap-sm{
	column-gap: 1.5rem;
}

.multicolumn-container.gap-lg{
	column-gap: 6rem;
}

@media (min-width: 48rem) {

.multicolumn-container:not(.break-early) {
			grid-template-columns: repeat(2, minmax(0, 1fr))
	}
		}

@media (min-width: 64rem) {

		.multicolumn-container.halfs {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

			.multicolumn-container.halfs .bard .bard__module.text h2{
		padding-top: 0px;
	}
 

		.multicolumn-container.thirds {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		} 
	}

.social-media{
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.social-media .sm-link{
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
	background-image: none;
}

.social-media .sm-link, .social-media .sm-link img, .social-media .sm-link svg{
	height: 1.5rem;
	width: 1.5rem;
}

.social-media .sm-link:hover{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

.spacing{
	margin-bottom: 0px;
}

.spacing > .none{
	margin-top: -7rem;
}

@media (min-width: 64rem){

	.spacing > .none{
		margin-top: -8rem;
	}
}

.spacing > .extra_small{
	margin-top: -5rem;
}

@media (min-width: 64rem){

	.spacing > .extra_small{
		margin-top: -6rem;
	}
}

.spacing > .small{
	margin-top: -2.5rem;
}

@media (min-width: 64rem){

	.spacing > .small{
		margin-top: -3.5rem;
	}
}

.spacing > .regular{
	display: none;
}

.flatpickr-day.spacing > .regular {
  visibility: hidden;
}

.spacing > .large{
	padding-bottom: 2rem;
}

@media (min-width: 64rem){

	.spacing > .large{
		padding-bottom: 4rem;
	}
}

.spacing > .extra_large{
	padding-bottom: 5rem;
}

@media (min-width: 64rem){

	.spacing > .extra_large{
		padding-bottom: 7rem;
	}
}

.page__module.video{
	padding-left: 0px;
	padding-right: 0px;
	max-width: none;
}

@media (min-width: 64rem){

	.page__module.video{
		padding-left: 0px;
		padding-right: 0px;
	}
}

.page__module.video > .video-wrapper:not(.fullscreen){
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	.page__module.video > .video-wrapper:not(.fullscreen){
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

.video-wrapper{
	position: relative;
	display: flex;
}

.video-wrapper .video-player,
    .video-wrapper .video-player video{
	position: relative;
	height: 100%;
	width: 100%;
}

.video-wrapper iframe {
        aspect-ratio: 16 / 9;
    }

.video-wrapper.small .video-player{
	max-height: 32rem;
	max-width: 28rem;
}

.video-wrapper.medium .video-player{
	max-width: 40rem;
}

.video-wrapper.large .video-player{
	max-height: 100vh;
	max-width: 64rem;
}

.video-wrapper.fullscreen .video-player{
	max-width: none;
}

.video-wrapper.fullscreen .video-player video{
	height: 100vh;
	object-fit: cover;
}

.video-wrapper .button-play{
	position: absolute;
	left: 0px;
	top: 0px;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.background .video-wrapper .button-play {
        justify-content: center;
    }

.video-wrapper .button-play{
	background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	--tw-bg-opacity: 0.2;
}

.video-wrapper .button-play svg{
	width: 4rem;
	transition-property: transform;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.video-wrapper .button-play:hover svg{
	--tw-scale-x: 1.05;
	--tw-scale-y: 1.05;
	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));
}

/**
    EMMA MODULE STYLING
 */

@media (min-width: 64rem){

	.page__module.emma{
		max-width: none;
		padding-left: 0px;
		padding-right: 0px;
	}
}

@media (min-width: 96rem){

	.page__module.emma{
		max-width: 96rem;
	}
}

.emma-container{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

@media (min-width: 64rem){

	.emma-container{
		flex-direction: row;
		align-items: center;
	}
}

.emma-container{
	margin-left: auto;
}

@media (min-width: 96rem){

	.emma-container{
		padding-left: 1.5rem;
	}
}

.emma-container .emma-wrapper{
	display: flex;
	width: 100%;
	flex-direction: column;
	border-radius: 0.5rem;
}

@media (min-width: 64rem){

	.emma-container .emma-wrapper{
		z-index: 20;
		margin-right: -8rem;
		margin-left: 2rem;
		width: 40%;
	}
}

@media (min-width: 80rem){

	.emma-container .emma-wrapper{
		margin-right: -12rem;
	}
}

.emma-container .emma-wrapper .card-content{
	display: flex;
	width: 100%;
	flex-direction: column;
	justify-content: center;
	border-bottom-right-radius: 0.5rem;
	border-bottom-left-radius: 0.5rem;
	padding: 2rem;
}

.background .emma-container .emma-wrapper .card-content {
        justify-content: center;
    }

.emma-container .text{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.background .emma-container .text {
        justify-content: center;
    }

@media (min-width: 64rem){

	.emma-container .text{
		z-index: 20;
	}
}

.emma-container .text > .button-container {
        margin-top: 2rem;
    }

@media (min-width: 64rem) {
        .emma-container .cover {
            position: absolute;
            width: 100%;
            height: 100%;
            background: linear-gradient(270deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 64%, rgba(255,255,255,0.8) 100%);
            inset: 0px;
        }
    }

.emma-container > .image{
	position: relative;
	z-index: 10;
	display: flex;
	width: 100%;
	overflow: hidden;
}

@media (min-width: 64rem){

	.emma-container > .image{
		max-height: 75vh;
		width: 75%;
	}
}

.emma-container > .spacer{
	padding: 1rem;
}

.cards-anton {
    display: grid;
	grid-gap: 1.5rem;
}

@media (min-width: 48rem) {

.cards-anton {
		grid-template-columns: repeat(2, minmax(0, 1fr))
}
	}

@media (min-width: 64rem) {

.cards-anton {
		gap: 3rem
}

		.cards-anton.thirds {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}
	}

.card-anton{
	position: relative;
}

.card-anton .card-layout, .card-anton .card-content{
	display: flex;
	height: 100%;
	flex-direction: column;
}

.card-anton .card-layout{
	--tw-bg-opacity: 1;
	background-color: rgb(244 243 243 / var(--tw-bg-opacity));
	padding: 0.5rem;
}

.card-anton .card-content{
	padding: 1.5rem;
}

@media (min-width: 48rem){

	.card-anton .card-content{
		padding: 2rem;
	}
}

.card-anton .card-content .card-arrow {
            width: 2rem;
            height: .75rem;
        }

.card-anton a.card-link {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;

    }

.card-anton a.card-link + .card-layout, .card-anton a.card-link + .card-content {
            pointer-events: none;
            -webkit-user-select: none;
                    user-select: none;
            transition-property: all;
            transition-timing-function: ease-in-out;
            transition-duration: 300ms;
        }

.card-anton.clickable:hover .card-layout{
	--tw-shadow: 0 0px 15px 3px rgb(44 62 80 / 10%), 0 0 13px 2px rgb(44 62 80 / 10%);
	--tw-shadow-colored: 0 0px 15px 3px var(--tw-shadow-color), 0 0 13px 2px var(--tw-shadow-color);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
	transition-property: all;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.card-anton [class^="button"]{
	margin-top: auto;
	padding-top: 1rem;
}

.card-anton .spacer{
	padding: 0.75rem;
}

footer{
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

footer .footer-container{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	max-width: 80rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

@media (min-width: 64rem){

	footer .footer-container{
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

footer .footer-container{
	row-gap: 2.5rem;
}

footer .footer-col{
	display: flex;
	width: 100%;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

@media (min-width: 64rem){

	footer .footer-col{
		align-items: flex-start;
		text-align: left;
	}
}

footer .footer-col:empty{
	display: none;
}

footer.flatpickr-day .footer-col:empty {
  visibility: hidden;
}

@media (min-width: 64rem){

	footer .footer-col:empty{
		display: block;
	}

footer .footer-col {
			width: calc(25% - 1rem * 2)
    }
}

footer .footer-col .link-primary{
	margin-bottom: 0.75rem;
	font-family: Montserrat Regular, sans-serif;
	--tw-text-opacity: 1;
	color: rgb(0 0 0 / var(--tw-text-opacity));
	text-decoration-line: none;
}

footer .footer-col .link-primary:hover{
	--tw-text-opacity: 1;
	color: rgb(30 50 80 / var(--tw-text-opacity));
}

footer .bard > .bard__module.text{
	text-align: center;
	--tw-text-opacity: 1;
	color: rgb(0 0 0 / var(--tw-text-opacity));
}

@media (min-width: 64rem){

	footer .bard > .bard__module.text{
		text-align: left;
	}
}

footer .bard > .bard__module.text{
	margin-bottom: 1.5rem;
}

footer .bard > .bard__module.text .bard,
			footer .bard > .bard__module.text .bard > p,
			footer .bard > .bard__module.text .bard > ul,
			footer .bard > .bard__module.text .bard > ol,
			footer .bard > .bard__module.text .bard > blockquote,
			footer .bard > .bard__module.text .bard > table{
	margin-bottom: 1.75rem !important;
	--tw-text-opacity: 1 !important;
	color: rgb(0 0 0 / var(--tw-text-opacity)) !important;
}

footer .bard > .bard__module.text .bard > h2,
			footer .bard > .bard__module.text .bard > h3,
			footer .bard > .bard__module.text .bard > h4,
			footer .bard > .bard__module.text .bard > h5,
			footer .bard > .bard__module.text .bard > h6{
	margin-bottom: 1.5rem !important;
}

footer .bard > .bard__module.text .bard:last-child,
			footer .bard > .bard__module.text .bard > :last-child{
	margin-bottom: 0px;
}

footer .bard > .bard__module.text.text > p{
	--tw-text-opacity: 1 !important;
	color: rgb(0 0 0 / var(--tw-text-opacity)) !important;
}

footer .bard > [class*="footer/link"]{
	margin-bottom: 1rem;
}

footer .image-link{
	position: relative;
}

footer .image-link > a{
	position: absolute;
	height: 100%;
	width: 100%;
}

footer .image-link img{
	width: 100%;
			max-width: 8rem;
}

@media (min-width: 64rem) {

footer .image-link img {
				max-width: 12rem
		}
			}

footer .divider{
	height: 1px;
	width: 100%;
	--tw-bg-opacity: 1;
	background-color: rgb(156 163 175 / var(--tw-bg-opacity));
	display: none;
}

footer.flatpickr-day .divider {
  visibility: hidden;
}

@media (min-width: 64rem){

	footer .divider{
		display: block;
	}
}

/*
	HERO STYLING: FULLSIZE IMAGE VARIANT

	This is a hero with a large background image with text placed above it.
 */

.hero.michaela{
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.background .hero.michaela {
        justify-content: center;
    }

.hero.michaela {
	position: relative; 
	min-height: calc(90vh - 4rem);
	width: 100%;
}

.hero.michaela .hero-image{
	position: absolute;
	object-fit: contain;
		top:0;
		left:0;
}

/* @apply opacity-75; */

.hero.michaela .hero-image::after {
			content: "";
			position: absolute;
			display: block;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			width: 100%;
			height: 100%;
			background: rgba(0, 0, 0, 0.25);
		}

.hero.michaela .hero-image, .hero.michaela .hero-image img {
			width: 100%;
			min-height: calc(90vh - 3.5rem);
		}

@media (min-width: 64rem) {

.hero.michaela .hero-image, .hero.michaela .hero-image img {
				height: calc(88vh - 4rem)
		}
			}

.hero.michaela .hero-title{
	z-index: 20;
		max-width: 100%;
}

.hero.michaela .hero-wrapper{
	--tw-bg-opacity: 1;
	background-color: rgb(30 50 80 / var(--tw-bg-opacity));
	--tw-text-opacity: 1;
	color: rgb(255 255 255 / var(--tw-text-opacity));
		padding: 3rem 0rem;
		z-index: 10;
}

@media (min-width: 48rem) {

.hero.michaela .hero-wrapper {
			padding: 3rem
	}
		}

@media (min-width: 64rem) {

.hero.michaela .hero-wrapper{
		--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
		--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
		box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
			position: absolute;
			right: 0;
			bottom: 3.5rem;
			width: 29%;
			min-height: 17rem;
			display: flex;
			align-items: center;
	}
		}

@media screen and (max-width: 64rem) {

.hero.michaela .hero-content{
		margin-left: auto;
		margin-right: auto;
		max-width: 80rem;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

@media (min-width: 64rem){

		.hero.michaela .hero-content{
			padding-left: 2rem;
			padding-right: 2rem;
		}
	}
		}

.hero.michaela .hero-content{
		
		display: flex;
		flex-direction: column;
		justify-content: center;
}

@media screen and (width: 1024px) and (min-height: 1024px) {
	.hero.michaela {
		height: calc(50vh - 3.5rem);
		min-height: calc(50vh - 3.5rem);
	}

		.hero.michaela .hero-title {
			top: auto;
			left: 5rem;
			bottom: 9rem;
		}
	
		.hero.michaela .hero-content .bard {
			width: 100%;
		}
			.hero.michaela .hero-image, .hero.michaela .hero-image img {
				height: calc(48vh - 3.5rem);
			}
}

/**
    KLARA MODULE STYLING
 */

.klara-container{
	align-items: flex-end;
	display: flex;
	flex-direction: column-reverse;
	justify-content: space-between;
	padding: 0;
}

.klara-container > .image {
		max-height: 35rem;
		position: relative;
		width: 100%;
		margin-top: 3rem;
		z-index: 0;
		overflow: hidden;
	}

.klara-container > .text {
		display: flex;
		flex-direction: column-reverse;
		justify-content: space-between;
		width: 100%;
		z-index: 10;
	}

.klara-container > .text > .par{
	margin-top: 1.5rem;
	padding-top: 0px;
}

@media (min-width: 64rem){

	.klara-container > .text > .par{
		margin: 0px;
		padding-bottom: 2rem;
		padding-left: 5rem;
	}

.klara-container {
		flex-direction: row
}

		.klara-container > .image{
		position: relative;
			max-height: 35rem;
			width: 60%;
			margin-top: 0;
	}

			.klara-container > .image .overlay{
		z-index: 20;
				background: linear-gradient(165deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 75%, rgba(255,255,255,0.8) 100%);
				position: absolute;
				width: 100%;
				height: 100%;
				inset: 0px;
	}

		.klara-container > .text {
			flex-direction: column;
			width: 40%;
		}

            .klara-container > .text > .title{
		max-width: 24rem;
		font-size: 2.25rem;
		line-height: 2.5rem;
		--tw-text-opacity: 1;
		color: rgb(30 50 80 / var(--tw-text-opacity));
                transform: translate(-50%, 50%);
	}
}

.divider{
	top: 2.5rem;
	margin-left: auto;
	margin-right: auto;
	height: 1px;
	width: 11rem;
	--tw-bg-opacity: 1;
	background-color: rgb(0 0 0 / var(--tw-bg-opacity));
	display: none;
}

.flatpickr-day.divider {
  visibility: hidden;
}

@media (min-width: 64rem){

	.divider{
		display: block;
	}
}

/* Customer-specific styles */

/*! purgecss end ignore */

/* Tailwind component and utility classes */

.container{
	width: 100%;
}

@media (min-width: 40rem){

	.container{
		max-width: 40rem;
	}
}

@media (min-width: 48rem){

	.container{
		max-width: 48rem;
	}
}

@media (min-width: 64rem){

	.container{
		max-width: 64rem;
	}
}

@media (min-width: 80rem){

	.container{
		max-width: 80rem;
	}
}

@media (min-width: 96rem){

	.container{
		max-width: 96rem;
	}
}

.collapse{
	visibility: collapse;
}

.static{
	position: static;
}

.absolute{
	position: absolute;
}

.relative{
	position: relative;
}

.col-span-2{
	grid-column: span 2 / span 2;
}

.col-span-full{
	grid-column: 1 / -1;
}

.m-auto{
	margin: auto;
}

.mx-auto{
	margin-left: auto;
	margin-right: auto;
}

.my-3{
	margin-top: 0.75rem;
	margin-bottom: 0.75rem;
}

.my-4{
	margin-top: 1rem;
	margin-bottom: 1rem;
}

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

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

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

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

.mb-4{
	margin-bottom: 1rem;
}

.ml-1{
	margin-left: 0.25rem;
}

.ml-2{
	margin-left: 0.5rem;
}

.mr-2{
	margin-right: 0.5rem;
}

.mt-1{
	margin-top: 0.25rem;
}

.mt-2{
	margin-top: 0.5rem;
}

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

.block{
	display: block;
}

.inline{
	display: inline;
}

.flex{
	display: flex;
}

.table{
	display: table;
}

.grid{
	display: grid;
}

.hidden{
	display: none;
}

.h-6{
	height: 1.5rem;
}

.h-full{
	height: 100%;
}

.min-h-screen{
	min-height: 100vh;
}

.w-10\/12{
	width: 83.333333%;
}

.w-6{
	width: 1.5rem;
}

.w-full{
	width: 100%;
}

.max-w-prose{
	max-width: 65ch;
}

.max-w-screen-md{
	max-width: 48rem;
}

.transform{
	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));
}

@keyframes spin{

	to{
		transform: rotate(360deg);
	}
}

.animate-spin{
	animation: spin 1s linear infinite;
}

.cursor-pointer{
	cursor: pointer;
}

.select-none{
	-webkit-user-select: none;
	        user-select: none;
}

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

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

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

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

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

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

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

.gap-2{
	gap: 0.5rem;
}

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

.gap-y-1{
	row-gap: 0.25rem;
}

.overflow-hidden{
	overflow: hidden;
}

.truncate{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.rounded{
	border-radius: 0.25rem;
}

.rounded-xl{
	border-radius: 0.75rem;
}

.border{
	border-width: 1px;
}

.border-none{
	border-style: none;
}

.bg-red-500{
	--tw-bg-opacity: 1;
	background-color: rgb(239 68 68 / var(--tw-bg-opacity));
}

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

.p-0{
	padding: 0px;
}

.p-2{
	padding: 0.5rem;
}

.p-4{
	padding: 1rem;
}

.px-16{
	padding-left: 4rem;
	padding-right: 4rem;
}

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

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

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

.py-1{
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
}

.py-2{
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.py-8{
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.text-center{
	text-align: center;
}

.text-right{
	text-align: right;
}

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

.text-9xl{
	font-size: 8rem;
	line-height: 1;
}

.text-sm{
	font-size: 0.875rem;
	line-height: 1.25rem;
}

.text-xs{
	font-size: 0.75rem;
	line-height: 1rem;
}

.font-medium{
	font-weight: 500;
}

.uppercase{
	text-transform: uppercase;
}

.lowercase{
	text-transform: lowercase;
}

.italic{
	font-style: italic;
}

.text-black{
	--tw-text-opacity: 1;
	color: rgb(0 0 0 / var(--tw-text-opacity));
}

.text-red-500{
	--tw-text-opacity: 1;
	color: rgb(239 68 68 / var(--tw-text-opacity));
}

.text-red-800{
	--tw-text-opacity: 1;
	color: rgb(153 27 27 / var(--tw-text-opacity));
}

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

.opacity-0{
	opacity: 0;
}

.opacity-100{
	opacity: 1;
}

.opacity-25{
	opacity: 0.25;
}

.opacity-75{
	opacity: 0.75;
}

.shadow-lg{
	--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px 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-sm{
	--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
	--tw-shadow-colored: 0 1px 2px 0 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-none{
	outline: 2px solid transparent;
	outline-offset: 2px;
}

.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{
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
	transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.transition-transform{
	transition-property: transform;
	transition-timing-function: ease-in-out;
	transition-duration: 300ms;
}

.duration-100{
	transition-duration: 100ms;
}

.ease-in{
	transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.hover\:scale-110:hover{
	--tw-scale-x: 1.1;
	--tw-scale-y: 1.1;
	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));
}

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

.hover\:opacity-75:hover{
	opacity: 0.75;
}

@media (min-width: 64rem){

	.lg\:w-4\/12{
		width: 33.333333%;
	}
}
