/*!
 * This file is part of Contao.
 *
 * (c) Leo Feyer
 *
 * @license LGPL-3.0-or-later
 */

/**
 * Fix rendering HTML5 elements in IE
 */
 header,footer,nav,section,aside,main,article,figure,figcaption {
	display:block;
}

:root{
    --grid__gutter: 16px;

    --blue: #2E2C77;
    --yellow: #FFC646;
	--yellow_hover: #ffcf6a;
	--light-gray_1: #D9DBE1;
	--light-gray_2: #ECEDF0;
	--background-grey: #F5F5F5;
    --font-color: #333333;
	--font-color-light:#585858;
	--border-radius:.2rem;
	--box-shadow:0 0 .6rem -.1rem rgba(0,0,0,.16);
	--text-shadow:0 .1rem .2rem rgba(-3,0,0,.6);
	--fs_bigger:1.2em;
	--fs_small:.8em;
	--fs_extra_small:.7em;
	--fs_h2: 2.2rem;
	--fs_h3: 1.32rem;
	--fw_medium: 400;
	--fw_bold: 700;
	--fw_semi_bold:500;
	--scroll_transition: .4s;

}

html {
    box-sizing: border-box;
    font-size:16px;
}

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

@media screen and (min-width: 320px) {
    html {
        font-size: calc(16px + 6 * ((100vw - 320px) / 680));
    }
}

@media screen and (min-width: 1000px) {
    html {
        font-size: 22px;
    }
}

body{
	hyphens: auto;
}

/**
 * Reset the margin and padding of the block elements
 */
body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea {
	margin:0;
	padding:0;
}

/**
 * Basic element formatting
 */
table {
	border-spacing:0;
	border-collapse:separate;
}
caption,th,td {
	text-align:left;
	text-align:start; /* see #4596 */
	vertical-align:top;
}
abbr,acronym {
	font-variant:normal;
	border-bottom:1px dotted #666;
	cursor:help;
}
/* blockquote,q {
	quotes:none;
} */
fieldset,img,iframe {
	border:0;
	display:block;
}

ul {
	list-style-type:none;
}
sup {
	vertical-align:text-top;
}
sub {
	vertical-align:text-bottom;
}
del {
	text-decoration:line-through;
}
ins {
	text-decoration:none;
}

/**
 * Default font settings
 */
body {
	font-family: "Asap",Verdana,sans-serif;
	color:var(--font-color);
    font-weight:100;
    line-height:1.6;
    letter-spacing:0.056em;
}
strong{
	font-weight:500;
}
input,button,textarea,select {
	font-family:inherit;
	line-height:1.6rem;
	font-weight:inherit;
	border-radius:5px;
}
button{
	cursor:pointer;
}
pre,code {
	font-family:Monaco,monospace;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
	margin-bottom:1em;
	line-height:1.2em;
	text-wrap: balance;
}
h1 {
	color:var(--blue);
	font-size:3rem;
	font-weight:500;
	text-align:center;
}

h2{
	font-size:2.2rem;
	color:var(--blue);
	font-weight:500;
}

h1 > strong,
h2 > strong{
	font-weight:700;
}


h3 {
	font-size:1.32em;
	font-weight:600;
}
h4 {
	font-size:1.2em; /* 16px */
}
table {
	font-size:inherit;
}
caption,th {
	font-weight:bold;
}
a {
	color:inherit;
	text-decoration:none;
}

figure{
	display: table;
}

figcaption{
	display: table-caption;
	caption-side: bottom ; 
}

p{
	text-wrap: pretty;
}

@media (prefers-reduced-motion: no-preference){
	:has(:target){
		scroll-behavior: smooth;
		scroll-padding-top: 6rem;
	}
}

/**
 * Hide invisible elements
 */
 .invisible {
	border:0;
	clip:rect(0 0 0 0);
	height:1px;
	margin:-1px;
	overflow:hidden;
	padding:0;
	position:absolute;
	width:1px;
}

/**
 * Custom layout sections
 */
.custom {
	display:block;
}
#container:after,
.custom:after,
.content-text.media:after{
	content:"";
	display:table;
	clear:both;
}

/**
 * SlickFix
 */

.slider,
.slider > div,
.slider > div > div,
.slider > div > div > div,
.slider > div > div > div > div,
.slider > div > div > div > div > div,
.slider > div > div > div > div > div > div{
	height:100%;
}
