:root {
	/* Primary colors */
	--color-primary: #004994;
	--color-primary-80: #0063AF;
	--color-primary--light: #D4EDFC;
	--color-secondary: #AFCA0B;
	--color-secondary--light: #D5DF95;

	/* Secondary colors */
	--blue-10: #D4EDFC;
	--blue-20: #A1DAF8;
	--blue-30: #4EBFEF;
	--gruen-20: #D5DF95;
	--gruen-30: #AFCA0B;
	--red-60: #D51317;

	/* Graphit colors */
	--black: 			#000000;
	--black-80: 	#3C3C3C;
	--black-60: 	#555555;
	--black-40: 	#999999;
	--black-30: 	#9C9C9C;
	--black-20: 	#dadada;
	--black-10:		#ededed;
	--white:			#ffffff;

	--link-hover: #002c59;

	/* Base colors */
	--base-error:		#dd0000;

	/* 	Other */
	--dev-note: #f2e59d;
	--gelb:			#fac800;
	--gruen:		#8cb423;
	--rot:			#eb5a2d;

	/* Spacing */
	--component-gap: 2rem;
	--component-gap--small: 2rem;
	--component-gap--medium: 4rem;
	--component-gap--large: 6rem;
	--gap: 1rem;

	--box-shadow-default: 0px 0px 1px 0px rgba(40, 41, 61, 0.08), 0px 1px 3px 0px rgba(0, 0, 0, 0.32);

	/* Font Families */
	--ss3-bold:						700 "SourceSans3",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Segoe UI,Roboto,Oxygen,sans-serif;
	--ss3-bold-italic:		600 italic "SourceSans3",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Segoe UI,Roboto,Oxygen,sans-serif;
	--ss3-medium:					500 "SourceSans3",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Segoe UI,Roboto,Oxygen,sans-serif;
	--ss3-medium-italic:	500 italic "SourceSans3",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Segoe UI,Roboto,Oxygen,sans-serif;
	--ss3-regular:				400 "SourceSans3",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Segoe UI,Roboto,Oxygen,sans-serif;
	--ss3-regular-italic:	400 italic "SourceSans3",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Segoe UI,Roboto,Oxygen,sans-serif;

	--h1: 900 1.875rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--h2: 900 1.75rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--h3: 900 1.625rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--h4: 900 1.5rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--h5: 900 1.375rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--h6: 900 1.25rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;

	--xxl: 400 1.5rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--xl:  400 1.25rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--l:   400 1.125rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--m:   400 1rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--s:   400 0.875rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--xs:  400 0.75rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--xxs: 400 0.625rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;

	--xxl-bold: 700 1.5rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--xl-bold:  700 1.25rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--l-bold:   700 1.15rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--m-bold:   700 1rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--s-bold:   700 0.875rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--xs-bold:  700 0.75rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	--xxs-bold: 700 0.625rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
}

@media(min-width: 50em) {
	:root {
		--h1: 900 2.5rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--h2: 900 2.25rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--h3: 900 2rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--h4: 900 1.75rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--h5: 900 1.5rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--h6: 900 1.375rem/1.2 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;

		--xxl: 400 1.5rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--xl:  400 1.25rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--l:   400 1.15rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--m:   400 1rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--s:   400 0.875rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--xs:  400 0.75rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--xxs: 400 0.625rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;

		--xxl-bold: 700 1.5rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--xl-bold:  700 1.25rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--l-bold:   700 1.15rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--m-bold:   700 1rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--s-bold:   700 0.875rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--xs-bold:  700 0.75rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
		--xxs-bold: 700 0.625rem/1.5 "SourceSans3", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Segoe UI, Roboto, Oxygen, sans-serif;
	}
}

html {
	font: var(--m);
	color: var(--color-primary);
	background-color: rgb(254, 255, 254);
}

@media(min-width: 1440px) {
	html {
		font-size: 110%;
	}
}

body {
	position: relative;
}

strong {
	font-weight: 600;
}

ul {
	list-style: bullet;
}

ol {
	list-style: decimal;
}

/* ----------------------------------------------------------------------------------- */

:root {
	--xwide-max-width: 1920px;
	--wide-max-width: 1440px;
	--default-max-width: 1280px;
	--narrow-max-width: 856px;
	--default-padding: 1rem;
}

@media(min-width: 800px) {
	:root {
		--default-padding: 4rem;
	}
}

@media(min-width: 1280px) {
	:root {
		--default-padding: 0;
	}
}

.section-xwide {
	margin: auto;
	padding-right: var(--default-padding);
	padding-left: var(--default-padding);
	max-width: var(--xwide-max-width);
}

.section-wide {
	margin: auto;
	padding-right: var(--default-padding);
	padding-left: var(--default-padding);
	max-width: var(--wide-max-width);
}

.section-default {
	margin: auto;
	padding-right: var(--default-padding);
	padding-left: var(--default-padding);
	max-width: var(--default-max-width);
}

.section-narrow {
	margin: auto;
	padding-right: var(--default-padding);
	padding-left: var(--default-padding);
	max-width: var(--narrow-max-width);
}

/* ----------------------------------------------------------------------------------- */

a {
	color: var(--color-primary);
	text-decoration: none;
	text-underline-offset: 0.25em;
}

a:hover {
	color: var(--link-hover);
	text-decoration: underline;
}

a:focus {
	text-decoration: none;
	outline: 2px solid var(--color-primary);
}

a.link-more {
	padding-right: 1.2em;
	background-size: 1em;
	background-image: url(/assets/icons/caret-right--primary.svg);
	background-repeat: no-repeat;
	background-position: right center;
}

a.link-more:hover {
	background-image: url(/assets/icons/caret-right.svg);
}

[href^="tel:"] {
	padding-left: 1.75em;
	background-repeat: no-repeat;
	background-size: 1.2em;
	background-image: url(/assets/icons/phone--primary.svg);
}

[href^="mailto:"] {
	padding-left: 1.75em;
	background-repeat: no-repeat;
	background-size: 1.2em;
	background-image: url(/assets/icons/envelope--primary.svg);
}

a[href^="https://"] {
	padding-right: 1.3em;
	background-size: 1em;
	background-image: url(/assets/icons/arrow-square-out--primary.svg);
	background-repeat: no-repeat;
	background-position: right center;
}

a[href^="https://"]:hover {
	background-image: url(/assets/icons/arrow-square-out.svg);
}

a[download] {
	padding-right: 1.25em;
	background-size: 1em;
	background-image: url(/assets/icons/download-simple--primary.svg);
	background-repeat: no-repeat;
	background-position: right center;
}

a[download]:hover {
	background-image: url(/assets/icons/download-simple.svg);
}

/* ----------------------------------------------------------------------------------- */

h1 {
	margin-top: 1rem;
	margin-bottom: 1rem;
	font: var(--h1);
}

h2 {
	font: var(--h2);
}

h3 {
	font: var(--h3);
}

h4 {
	font: var(--h4);
}

h5 {
	font: var(--h5);
}

h6 {
	font: var(--h6);
}

.xxl {
  font: var(--xxl);
}

.xl {
  font: var(--xl);
}

.lg {
  font: var(--lg);
}

.md {
  font: var(--md);
}

.sm {
  font: var(--sm);
}

.xs {
  font: var(--xs);
}

.xxs {
  font: var(--xxs);
}

.xxl-bold {
  font: var(--xxl-bold);
}

.xl-bold {
  font: var(--xl-bold);
}

.lg-bold {
  font: var(--lg-bold);
}

.md-bold {
  font: var(--md-bold);
}

.sm-bold {
  font: var(--sm-bold);
}

.xs-bold {
  font: var(--xs-bold);
}

.xxs-bold {
  font: var(--xxs-bold);
}

.h1 {
  font: var(--h1);
}

.h2 {
  font: var(--h2);
}

.h3 {
  font: var(--h3);
}

.h4 {
  font: var(--h4);
}

.h5 {
  font: var(--h5);
}

.h6 {
  font: var(--h6);
}

/* ----------------------------------------------------------------------------------- */

[data-component^="cid-"] {
	margin-bottom: var(--component-gap--medium);
}

ul [data-component^="cid-"] {
	margin-bottom: 0;
}

[data-component="cid-1"] {
	margin-bottom: 0;
}

[data-component="cid-2"] [data-component^="cid-6"] {
	margin-bottom: 0;
}

[data-component="cid-4"] {
	margin-bottom: 0;
}

[data-component="cid-9"] {
	margin-bottom: 0;
}

[data-component="cid-10"] {
	margin-bottom: var(--component-gap--medium);
}

[data-component="cid-13"] {
	margin-bottom: var(--component-gap--medium);
}

[data-component="cid-26"] [data-component="cid-13"] {
	margin-bottom: 0;
}

ul [data-component="cid-13"] {
	margin-bottom: 0;
}

[data-component="cid-14"] {
	margin-bottom: var(--component-gap--medium);
}

[data-component="cid-14"] [data-component="cid-14"] {
	margin-bottom: 0;
}

[data-component="cid-33"] [data-component="cid-14"] {
	margin-bottom: 0;
}

[data-component="cid-15"] {
	margin-top: var(--component-gap--large);
	margin-bottom: var(--component-gap--large);
}

[data-component="cid-24"] [data-component="cid-22"] {
	margin-bottom: 0;
}

[data-component="cid-29"] {
	margin-bottom: 0;
}

[data-component="cid-37"] [data-component="cid-29"] {
	margin-bottom: var(--component-gap--small);
}

[data-component^="cid-30"] {
	margin-bottom: var(--component-gap--medium);
}

[data-component="cid-38"] [data-component="cid-34"] {
	margin-bottom: var(--component-gap--small);
}

ul [data-component="cid-39"] {
	margin-bottom: var(--component-gap--small);
}

[data-component="cid-40"] {
	margin-bottom: var(--component-gap--medium);
}

[data-component="cid-43"] {
	margin-bottom: var(--component-gap--medium);
}

[data-component="cid-44"] {
	margin-bottom: 0;
}

[data-component="cid-45"] {
	margin-bottom: var(--component-gap--medium);
}

.site-footer {
	margin-top: var(--component-gap--medium);
}
