@font-face {
    font-family: 'Eurostile LT';
    src: url('../../font/EurostileLT-Demi.woff2') format('woff2'),
        url('../../font/EurostileLT-Demi.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Eurostile LT';
    src: url('../../font/EurostileLT-Bold.woff2') format('woff2'),
        url('../../font/EurostileLT-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Eurostile LT';
    src: url('../../font/EurostileLT.woff2') format('woff2'),
        url('../../font/EurostileLT.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

html {
	font-size: 62.5%;
}

body {
	line-height: var(--base-line-height);
	font-size: var(--base-font-size);
    font-family: var(--font-family-primary);
    color: var(--color-text);
}

::selection { color: #fff; background: var(--color-links); }
::-moz-selection { color: #fff; background: var(--color-links); }
::-webkit-selection { color: #fff; background: var(--color-links); }

*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box
}

h1, h2, h3, h4, h5, h6 {
	line-height: var(--headings-line-height);
    font-family: var(--font-family-secondary);
    color: var(--headings-color);
}

h1 {
	margin: 0 0 1.25em;
	font-size: 4rem;
}

.main h1,
.main h2,
.main h3,
.main h4 {
	margin: 0 0 0.75em;
	font-weight: 600;
	font-size: 4.8rem;
}

.main h1 .inner,
.main h2 .inner,
.main h3 .inner,
.main h4 .inner {
	position: relative;
	display: inline-block;
}

.main h1 .inner:before,
.main h2 .inner:before,
.main h3 .inner::before,
.main h4 .inner::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -0.7rem;
	right: -1.4rem;
	width: 2.5rem;
	height: 2.5rem;
	background: url("../../img/sprite.svg") no-repeat -3rem 0 / 30rem 30rem;
}

.main .no-squares .inner::before,
.main .no-squares .inner::before,
.main .no-squares .inner::before {
	display: none;
}

@media only screen and (max-width: 65em) {
	
	.main h1,
	.main h2,
	.main h3,
	.main h4 {
		font-size: 3.6rem;
	}
}

@media only screen and (max-width: 45em) {
	
	.main h1,
	.main h2,
	.main h3,
	.main h4 {
		font-size: 2.8rem;
	}
	
	.main h1 .inner:before,
	.main h2 .inner:before,
	.main h3 .inner::before,
	.main h4 .inner::before {
		transform: scale(0.8);
	}
}

p, ul, ol {
	margin: 0 0 3rem;
}

ol {
	list-style-position: inside;
}

a {
	-webkit-transition: all 0.35s;
	-o-transition: all 0.35s;
	transition: all 0.35s;
	color: var(--color-links);
	text-decoration: none;
}

a:hover {
	color: var(--color-links-lighter);
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

.ce_image {
	margin: 0 0 3rem;
}

.ce_text + .ce_image {
	margin: 5rem 0 3rem;
}

#headerbild .ce_image {
	margin: 0;
}

.wrapper .inside {
	margin: 0 auto;
	padding: 0 3rem;
	max-width: var(--wrapper-width);
}

.wrapper.small .inside {
	max-width: var(--wrapper-small-width);
}

body:not(.home) .main .mod_article {
	padding: 9rem 0 6rem;
}

body:not(.home) .main .mod_article.margin-0 {
	padding: 0;
}

@media only screen and (max-width: 65em) {

	.wrapper .inside {
		padding: 0 2rem;
	}	
}






.instagram-wrapper {
	position: relative;
}

.instagram-wrapper .btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	white-space: nowrap;
}

.instagram-wrapper .btn a {
	padding: 1rem 3rem;
	font-weight: 600;
	font-size: 2.3rem;
}







.ce_table {
	overflow-x: auto;
	margin: 0 0 5rem;
}

table {
	max-width: 100%;
	border: 1px solid #323844;
	white-space: nowrap;
}

.table-width-100 table {
	width: 100%;
}

table tr:nth-child(2n+1) {
	background: #252a33;
}

table tr:nth-child(2n) {
	background: #323844;
}

table th {
	padding: 2rem;
	border: 1px solid #ec4858;
	color: #fff;
	font-weight: 400;
	letter-spacing: 0.2rem;
	text-align: left;
    background: var(--color-brand);
}

table td {
	padding: 1rem 2rem;
}

table tr:nth-child(2n) td {
	border-right: 1px solid #252a33;
}

table tr:nth-child(2n+1) td {
	border-right: 1px solid #323844;
}

.table-hover table tr:hover td {
	background: #404754;
}