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

*{
	box-sizing: border-box;
}


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

/**
 * Variables
 */

:root{

	--c_fontColor: #5A2E68;
	--c_lightPink: #eee9ef;
	--c_pink:#941A82;
	--c_beige:#ECEAE3;

	--fs_20:.8rem;
	--fs_30:1.2rem;
	--fs_35:1.4rem;

	--fw_bold:700;

	--grid__gutter:.64rem;
}

/**
 * Basic element formatting
 */
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;
}
img{
	display:block;
	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;
}
a{
	color:inherit;
	text-decoration:none;
	transition:color .2s;
}
strong{
	font-weight:var(--fw_bold);
}
/**
 * Default font settings
 */

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

 
body {
	font-family: "Montserrat";
	color:var(--c_fontColor);
	font-weight:400;
	line-height:1.8;
}
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-size:100%;
	line-height:1.2em;
	margin-bottom:1em;
	font-weight:normal;
}
h1 {
	font-size:3.2rem;
	color:#fff;
	text-shadow:0 3px 5px rgba(0,0,0,.5);
	margin-bottom:0;
}
h2 {
	font-size:2.4rem;
	text-align:center;
	margin-bottom:2rem;
	text-align:center;
}
h3 {
	font-size:var(--fs_35);
	color:var(--c_pink);
	font-weight:500;
}
h4 {
	font-size:1rem;
	color:var(--c_pink);
	font-weight:500;
}
table {
	font-size:inherit;
}
caption,th {
	font-weight:bold;
}

/**
 * Fontsizes
 */

.fs_20 {
	font-size:var(--fs_20);
}

.fs_30 {
	font-size:var(--fs_30);
}

.fs_35 {
	font-size:var(--fs_35);
}

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