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

:root{
	
    --fw-light: 300;
    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;
    --fw-extrabold: 800;

	--fs-h1: 2.5rem;
	--fs-h2: 2rem;
	--fs-h3: 1.5rem;
	--fs-h4: 1.15rem;
	--fs-small: .8rem;

	--c-fontcolor: #24332C;
    --c-green: #007D40;
    --c-lightgreen: #F3F2E7;

	--br: .75rem;
	--bs: 0 .5rem 1rem rgba(0, 0, 0, .5);

	--line: .15rem;
	--btn-padding: .5rem 2rem;
	--navBtn-padding: .5rem;

	--tt: .3s;
	--grid__gutter: .8rem;
	--row__gap: 4rem;
}


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

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

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



/**
 * Basic element formatting
 */
ul > li::marker {
  color: var(--c-green);
}
.row{
	row-gap: var(--row__gap);
}
table {
	border-spacing:0;
	border-collapse:collapse;
}
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;
}
img{
    width:100%;
    height:auto;
}
ul {
	list-style-type:none;
}
sup {
	vertical-align:text-top;
}
sub {
	vertical-align:text-bottom;
}
del {
	text-decoration:line-through;
}
ins {
	text-decoration:none;
}

@media (prefers-reduced-motion: no-preference) {
    :has(:target) {
        scroll-behavior: smooth;
        scroll-padding-top: 12rem;
    }
}
/**
 * Default font settings
 */

html {
	font-size:clamp(15px, 2vw, 20px);
	font-family: "OpenSans";
	color:var(--c-fontcolor);
	font-weight:var(--fw-regular);
	line-height:1.4;
	letter-spacing: .05rem;
}

input,button,textarea,select {
	font-family:inherit;
	font-size:99%;
	font-weight:inherit;
}
pre,code {
	font-family:Monaco,monospace;
}
h1,h2,h3,h4,h5,h6 {
    font-family:'OpenSans_C_Bold';
	font-size:100%;
	font-weight:var(--fw-bold);
	line-height:1em;
	hyphens: auto;
}
h1 {
	font-size:var(--fs-h1);
    text-transform: uppercase;
}

h2 {
	font-size:var(--fs-h2);
    text-transform: uppercase;
}
h3 {
	font-size:var(--fs-h3);
    text-transform: uppercase;
}
h4 {
	font-size:1.3333em; /* 16px */
}
table {
	font-size:inherit;
}
caption,th {
	font-weight:bold;
}
a {
	color:inherit;
	text-decoration:none;
}

strong{
	font-weight:var(--fw-bold);
}


/**
 * 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:"";
	display:table;
	clear:both;
}