/*! HTML5 Boilerplate v6.0.1 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
	color: #222;
	font-family: "museo-sans", sans-serif;
	font-size: 1.042vw;
	line-height: 1.2;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
	background: #b3d4fc;
	text-shadow: none;
}

::selection {
	background: #b3d4fc;
	text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #000;
	margin: 1em 0;
	padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
	resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
	background: #ff3333;
	color: #fff;
	left: 0;
	margin: 0;
	padding: 16px;
	position: fixed;
	right: 0;
	top: 0;
}

/* ==========================================================================
   Author's custom styles

   red #d92424

   font-family: 'museo-sans', sans-serif; (weights: 100, 300, 300 italic, 700)
   ========================================================================== */

* { box-sizing: border-box; }
html, body { margin: 0; }
img, embed, object { max-width: 100%; height: auto; width: 100%; }
a, a:visited { color: inherit; cursor: pointer; text-decoration: none; }
a:hover { color: inherit; text-decoration: none; }
#container {}
nav ul { list-style: none; margin: 0; padding: 0; }


/* ==================================================
   responsive iframe/video embed
   ================================================== */

.embed-container,
.video-embed { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }

.embed-container iframe, .embed-container object, .embed-container embed,
.video-embed iframe, .video-embed object, .video-embed embed { border: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* ==================================================
   fullscreen bg
   ================================================== */

body { background-color: #000; }

.bg {
	background-image: url('/fileadmin/swissef/img/bg/1_1920.jpg');
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-repeat: no-repeat;
	background-position: center center fixed;
	background-size: cover;

	bottom: 0;
	left: 0;
	opacity: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity .5s ease-out;
	z-index: 1;
}


/* ==================================================
   responsive iframe
   ================================================== */

.embed-container,
.mediaelement-video {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	margin-top: 16px;
	overflow: hidden;
	max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed,
.mediaelement-video iframe,
.mediaelement-video object,
.mediaelement-video embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* ==================================================
   some transitions
   exceptions are made directly at the selector
   ================================================== */

/*a,
table tr {
	-webkit-transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	transition: all .2s ease-out;
}*/


/* ==================================================
   general form definitions
   ================================================== */

label {
	font-size: .729166667vw;
}

input[type="text"],
input[type="search"],
input[type="email"],
select,
textarea {
	background: #fff;
	border: 1px solid #fff;
	font-size: .729166667vw;
	margin-bottom: .416666667vw;
	padding: .416666667vw;
	transition: border-color .2s;
	width: 100%;
}

input[type="text"]:focus,
input[type="text"]:hover,
input[type="email"]:focus,
input[type="email"]:hover,
select:focus,
select:hover,
textarea:focus,
textarea:hover { border: 1px solid #545454; }

input[type="radio"] { margin: 0; }
input[type="checkbox"] { margin: 0; }

input[type="submit"] {
	background: #fff;
	border: 1px solid #fff;
	color: #000;
	display: block;
	font-size: .729166667vw;
	margin: 0;
	padding: .416666667vw .833333333vw;
	transition: border-color .2s;
	width: auto;

	-webkit-border-radius: 0;
	border-radius: 0;
}

input[type="submit"]:focus,
input[type="submit"]:hover { border: 1px solid #545454; }


/* ==================================================
   main area
   ================================================== */

.main {
	color: #000;
	display: grid;
	grid-column-gap: .833333333vw;
	grid-template-columns: 15.853658537% auto;
	grid-template-rows: 1fr;
	height: 100vh;
	margin: 0 auto;
	padding: 0;
	position: relative;
	width: 85.416666667%;
	z-index: 2;
}

.no-cssgrid .main { height: auto; }

.sidebar {
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto auto 1fr;
	-ms-overflow-style: none;
	overflow: auto;
}

.no-cssgrid .sidebar { float: left; width: 15.853658537%; }
.page-home .content { height: 100vh; -ms-overflow-style: none; overflow: auto; }
.no-cssgrid .content { float: right; height: auto; width: 83.170731707%; }


/* ==================================================
   logo
   ================================================== */

.logo-swissef {
	background: #fff;
	margin-bottom: 0.833vw;
	padding: 1.75vw 0;
}

a.logo-swissef__link {
	background: url('/fileadmin/swissef/img/logo_swissef.svg') no-repeat center center;
	background-size: contain;
	display: block;
	height: 5vw;
	margin: 0 auto;
	width: 10.42vw;
}


/* ==================================================
   menu-btn
   ================================================== */

.menu-btn {
	background: #d92424 url('/fileadmin/swissef/img/menu-btn.svg') no-repeat center center;
	background-size: 24px;
	cursor: pointer;
	display: none;
}


/* ==================================================
   nav
   ================================================== */

.nav {
	background: #fff;
	font-weight: 300;
	margin-bottom: .833vw;
	padding: 0 1.667vw ;
}


/* =========================
   nav-main
   ========================= */

.nav-main {
	font-size: 1.5625vw;
	line-height: 1.2;
	padding: 1.041666667vw 0 3.125vw;
}

.nav-main__item { border-bottom: 1px solid #d92424; padding: .625vw 0; }
.nav-main__item:last-child { border-bottom: none }
a.nav-main__link { color: #d92424; transition: color .2s; }
a.nav-main__link:hover { color: #000; }
a.nav-main__link--cur { color: #000; font-style: italic; }


/* =========================
   nav-meta
   ========================= */

.nav-meta { margin-bottom: .416666667vw; }
.nav-meta__item { border-bottom: 1px solid #d92424; padding: .416666667vw 0; }
a.nav-meta__link { color: #d92424; transition: color .2s; }
a.nav-meta__link:hover { color: #000; }
.nav-meta__sep { color: #d92424; margin: .26vw; }


/* =========================
   nav-social
   ========================= */

.nav-social { border-bottom: 1px solid #d92424; margin-bottom: .416666667vw; padding-bottom: .416666667vw; }
.nav-social__item { float: left; margin-right: 1.458333333vw; }

.nav-social__icon {
	background-repeat: no-repeat;
	background-position: bottom left;
	background-size: contain;
	display: block;
}

.nav-social__icon--facebook { background-image: url('/fileadmin/swissef/img/facebook--red.svg'); height: 1.614583333vw; width: .833333333vw; }
.nav-social__icon--twitter { background-image: url('/fileadmin/swissef/img/twitter--red.svg'); height: 1.614583333vw; width: 1.5625vw; }
.nav-social__icon--linkedin { background-image: url('/fileadmin/swissef/img/linkedin--red.svg'); height: 1.614583333vw; width: 1.614583333vw; }


/*<nav class="nav-social" role="navigation">
	<ul class="clearfix nav-social__list">
		<li class="nav-social__item"><a href="https://www.facebook.com/" target="_blank"><span class="nav-social__icon facebook"></span>[icon]</a></li>
		<li class="nav-social__item"><a href="https://www.twitter.com/" target="_blank"><span class="icon twitter"></span>[icon]</a></li>
	</ul>
</nav>*/


/* =========================
   kesearch
   ========================= */

/* searchbox in sidebar */

.sidebar div.kesearchbox { margin-bottom: .9375vw; position: relative; }

.sidebar #ke_search_searchfield_sword {
	background:#fff;
	border: 1px solid #95989a;
	box-shadow: none;
	display: inline;
	height: auto;
	margin: 0;
	padding: .15625vw 1.5625vw .15625vw .15625vw;
	width: 100%;
}

.sidebar #ke_search_searchfield_sword::-webkit-input-placeholder { color: #b9b9b9; }
.sidebar #ke_search_searchfield_sword:-ms-input-placeholder { color: #b9b9b9; }
.sidebar #ke_search_searchfield_sword::-ms-input-placeholder { color: #b9b9b9; }
.sidebar #ke_search_searchfield_sword::placeholder { color: #b9b9b9; }

.sidebar #ke_search_searchfield_submit {
	background: url('/fileadmin/swissef/img/glass.svg') no-repeat center center;
	background-size: 100%;
	border: none;
	height: 1vw;
	padding: 0;
	position: absolute;
	right: 0.25vw;
	top: 0.25vw;
	transition: opacity .2s;
	width: 1vw;
}

.sidebar #ke_search_searchfield_submit:hover { opacity: .5; }


/* searchbox in content */
.content #form_kesearch_pi1 { background: #ebebeb; margin-bottom: 1.666666666vw; padding: .833333333vw; }
.content #form_kesearch_pi1 .resetbutt { display: none; }
.content #form_kesearch_pi1 fieldset.kesearch_searchbox { position: relative; }
.content #form_kesearch_pi1 fieldset.kesearch_searchbox .clearer { display: none; }
.content #ke_search_sword { margin: 0; }


.content #form_kesearch_pi1 .submitbutt input[type="submit"] {
	background: url('/fileadmin/swissef/img/glass.svg') no-repeat center center;
	background-size: 100%;
	border: none;
	color: transparent;
	height: 1vw;
	padding: 0;
	position: absolute;
	right: 0.25vw;
	top: 0.25vw;
	transition: opacity .2s;
	width: 1vw;
}

.content #form_kesearch_pi1 .submitbutt input[type="submit"]:hover { opacity: .5; }


/* results */

.content .tx-kesearch-pi1 #kesearch_num_results { margin-bottom: 1.666666666vw; }
.content .tx-kesearch-pi1 .result-list-item { margin-bottom: .833333333vw; }
.content .tx-kesearch-pi1 .result-title { color: #d92424; }
.content .tx-kesearch-pi1 img { width: auto; }
/*.tx-kesearch-pi1 .hit { color: #d92424; }*/


/* ==================================================
   pagefooter
   ================================================== */

.pagefooter {
	background: #d92424;
	color: #fff;
	font-weight: 300;
	padding: 1.25vw 1.666666667vw;
}

.address p { margin: 0; }
.address a { color: #fff; }

.nav-footer__item { border-top: 1px solid #fff; margin-top: .9375vw; padding-top: .9375vw; }
a.nav-footer__link { color: #fff; }


/* ==================================================
   hero
   ================================================== */

.hero {
	align-items: center;
	display: flex;
	/*height: 41.729323308vw;*/
	justify-content: center;
	min-height: 20.833333333vw !important;
}

h1.hero__h1 {
	color: #d92424;
	font-size: 4.6875vw;
	font-weight: 100;
	line-height: 1.2;
	text-align: center;
}

.hero__hr {
	border-top: .15625vw solid #d92424;
	margin: 1.25vw auto;
	width: 28vw;
}

.hero__icon {
	background: url('/fileadmin/swissef/img/arrow-down.svg') no-repeat center center;
	background-size: 100%;
	display: block;
	height: 2.1875vw;
	margin: 1vw auto 0;
	width: 4.010416667vw;
}


/* ==================================================
   content
   ================================================== */

.content { height: 100%; }
h1 { color: #d92424; font-size: 1.5625em; font-weight: 300; margin: 0; }
h2 { color: #d92424; font-size: 1em; font-weight: 300; margin: 0; }
h3 { color: #868686; font-size: 1em; font-weight: 300; margin: 0; }
p { margin: 0 0 1em; }
.font-size--l { font-size: 1.5625vw; }
.font-color--red { color: #d92424; }
.frame-space-after-large { margin-bottom: 5.2vw; }
.frame-space-after-medium { margin-bottom: 2.604166667vw; }
.frame-space-after-small {  margin-bottom: 1.3vw; }
.frame-space-before-large {  margin-top: 5.2vw; }
.frame-space-before-medium {  margin-top: 2.604166667vw; }
.frame-space-before-small {  margin-top: 1.3vw; }
.font-color--red { color: #d92424; }
.font-size--l { font-size: 1.5625vw; }
#stiftungsrat { margin-top: 3.833333333vw; }
figure { margin: 0; }
figcaption.image-caption { margin: .416666667vw 0 .833333333vw; }

.content ul {
	list-style: none;
	margin: 0;
	padding: 0 0 0 1.5625vw;
}

.content ul > li:before {
	content: "—";
	display: inline-block;
	float: left;
	margin-left: -1.5625vw;
	width: 1.5625vw;
}

ul.nav-sub { background: #fff; line-height: 3vw; margin-bottom: .833333333vw; padding: 0 1.666666667vw; position: fixed; }
ul.nav-sub li { display: inline-block; }
ul.nav-sub > li:before { content: ""; }
ul.nav-sub a { color: #d92424; }


/* ==================================================
   uploads
   ================================================== */

.ce-uploads-filetype { text-transform: uppercase; }


/* ==================================================
   columns
   ================================================== */

.columns {
	display: flex;
	justify-content: space-between;
	/*display: flex;*/
	/*height: 100%;*/
	/*justify-content: space-between;*/
	/*margin-bottom: 1.666666667vw;*/
}

.column--50 {
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto 1fr;
	height: 100vh;
	-ms-overflow-style: none;
	overflow: auto;
	width: 49.4%;
}

.no-cssgrid .column--50 { height: auto; }

/*.column--66 { width: 64%; }*/
/*.column--50 { width: 49.4%; }*/
/*.column--33 { width: 31.5%; }*/
/*.column--25 { width: 23%; }*/


/* ==================================================
   gridelements
   ================================================== */

/* =========================
   ge-box-white
   ========================= */

.ge-box--white {
	background: #fff;
	margin-bottom: .833333333vw;
	padding: 1.25vw 1.666666667vw;
}

.ge-box--white:last-child { margin-bottom: 0; }

.ge-box--white--fullheight { height: 100vh; -ms-overflow-style: none; overflow: auto; }
.no-cssgrid .ge-box--white--fullheight { height: auto; }


/* ==================================================
   content-elements
   ================================================== */

/* =========================
   ce-quote
   ========================= */

.ce-quote { color: #d92424; margin-bottom: 1em; }
p.ce-quote__text { font-size: 1.5625vw; margin-bottom: 0; }
p.ce-quote__name { margin-bottom: 0; }

/* =========================
   ce-person
   ========================= */

.ce-person { margin-bottom: .833333333vw; }
.ce-person__img { float: left; margin: 0 .833333333vw 0 -1.666666667vw; max-width: 43%; }
.ce-person__text p { margin-bottom: .25em; }
a.ce-person__linkedin { background: url('/fileadmin/swissef/img/linkedin-bug--black.png') no-repeat center left; background-size: contain; display: inline-block; width: 25px;}
p.ce-quote__text { font-size: 1.5625vw; margin-bottom: 0; }
p.ce-quote__name { margin-bottom: 0; }

/* =========================
   ce-donator
   ========================= */

.ce-donator { border-bottom: 1px solid #d92424; margin-bottom: .833333333vw; padding: 0 0 .833333333vw 0; }
.ce-donator__link { display: block; }
.ce-donator__content { align-items: center; display: flex; }
.ce-donator__img-wrap { margin-right: 7.5%; width: 25%; }
.ce-donator__text { flex-grow: 1; }
.ce-donator__text p { margin: 0; }


/* ==================================================
   powermail
   ================================================== */

.tx-powermail { background: #ebebeb; margin: -.416666667vw -.833333334vw; padding: .833333333vw; }
.tx-powermail legend { display: none; }
.tx-powermail h3 { display: none; }
.tx-powermail .powermail_fieldwrap_datenschutzbestimmungen  { margin: .416666667vw 0 .833333334vw; }
.tx-powermail .powermail_fieldwrap_datenschutzbestimmungen > label { display: none; }
.tx-powermail .powermail_fieldwrap_datenschutzbestimmungen a { color: #d92424; }

ul.parsley-errors-list {
	color: #d92424;
	font-size: .729166667vw;
	list-style: none;
	margin: 0 0 .833333333vw;
	padding: 0;
}

ul.parsley-errors-list > li:before { content: ""; }
input.parsley-error { border: 1px solid #d92424; }


/* ==================================================
   clever reach newsletter form
   ================================================== */

.cr_form { background: #ebebeb; margin: -.416666667vw -.833333334vw; padding: .833333333vw; }
.cr_button {
	background: #fff;
	border: 1px solid #fff;
	color: #000;
	display: block;
	font-size: .729166667vw;
	margin: 0;
	padding: .416666667vw .833333333vw;
	transition: border-color .2s;
	width: auto;

	-webkit-border-radius: 0;
	border-radius: 0;
}

.cr_button:focus,
.cr_button:hover { border: 1px solid #545454; }

input[type="text"].clever_form_error,
input[type="email"].clever_form_error,
select.clever_form_error,
textarea.clever_form_error { border: 1px solid #d92424; }


/* ==================================================
   news
   ================================================== */

/* =========================
   grid-article
   ========================= */

.news-list-view .gutter-sizer { width: 1.173881145%; }

.news-list-view .grid-article {
	background: #fff;
	margin-bottom: .833333333vw;
	padding: 0 1.5625vw 1.5625vw 1.5625vw;
	position: relative;
	width: 49.413059428%;
}

.news-list-view .grid-article h2 {
	float: left;
	font-size: 2.083333333vw;
	font-weight: 700;
	line-height: 1.2;
	margin: 2.1vw 0 1.302083333vw;
	max-width: 24.479166667vw;
}

.news-list-view .grid-article .news-list-date {
	background: #d92424;
	color: #fff;
	display: inline-block;
	float: left;
	margin-right: 1.5625vw;
	padding: .15625vw .833333333vw .260416667vw;
	text-align: center;
	width: 4.010416667vw;
}

.news-list-view .grid-article .news-list-date-month { display: block; font-size: 2.083333333vw; font-weight: 300; }
.news-list-view .grid-article .news-list-date-year { display: block; font-weight: 100; }

.news-list-view .grid-article a.more {
	background: url('/fileadmin/swissef/img/plus--red.svg') no-repeat center center;
	background-size: contain;
	display: block;
	height: 1.197916667vw;
	position: absolute;
	right: 1.041666667vw;
	top: .833333333vw;
	width: 1.197916667vw;
}


/* =========================
   latest-article
   ========================= */

.latest-article {
	background: #d92424;
	color: #fff;
	margin-bottom: .833333333vw;
	padding: 1.5625vw;
	position: relative;
	width: 100%;
	z-index: 2;
}

.latest-article--fixed {
	position: fixed;
	top: 0;
}

.latest-article .news-img-wrap {
	float: left;
	margin-right: 3%;
	width: 25%;
}

.latest-article__text { float: right; width: 72%; }

.latest-article h2 {
	color: #fff;
	font-size: 2.083333333vw;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 1.302083333vw;
	max-width: 24.479166667vw;
}

.latest-article h2 a { color: #fff; }

.latest-article a.more {
	background: url('/fileadmin/swissef/img/plus--white.svg') no-repeat center center;
	background-size: contain;
	display: block;
	height: 1.197916667vw;
	position: absolute;
	right: 1.041666667vw;
	top: .833333333vw;
	width: 1.197916667vw;
}


/* =========================
   news-single
   ========================= */

.news-single .news-img-wrap { margin: 0 0 .833333333vw; }
.news-single .news-img-caption { margin: .416666667vw 0 0; }
.mediaelement-video iframe { border: none; }


/* ==================================================
   ext: cookies
   ================================================== */

#tx_cookies_inner {
	background: #000;
	bottom: 0;
	color: #fff;
	font-size: 12px;
	left: 0;
	padding: 25px;
	position: fixed;
	right: 0;
	z-index: 999999999999;
}

#tx_cookies_accept input[type="submit"] {
	background: #000;
	border: 2px solid #fff;
	color: #fff;
	float: right;
	font-size: 12px;
	line-height: 1;
	text-transform: uppercase;
	transition: opacity .2s;
	width: auto;
}

#tx_cookies_close {
	display: none;

	background: #000;
	border: none;
	color: #fff;
	margin: 0 0 10px;
	padding: 0;
	text-align: right;
	text-decoration: underline;
	width: 100%;
}

#tx_cookies_close:hover { text-decoration: none; }
#tx_cookies_inner h3 { display: none; }
.cookie_text { float: left; margin-top: 0; max-width: 70%; }
.cookie_text p { margin: 0; }
#tx_cookies_link a { color: #fff; text-decoration: underline; }
#tx_cookies_link a:hover { text-decoration: none; }
#tx_cookies_accept input[type="submit"]:hover { opacity: .5; }



/* ==================================================
   fancybox
   ================================================== */

/*.fancybox-caption-wrap { background: transparent !important; }*/
.fancybox-caption { border-top: 0 !important; }


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
	display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	-webkit-clip-path: none;
	clip-path: none;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
	white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
	visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
	content: " "; /* 1 */
	display: table; /* 2 */
}

.clearfix:after {
	clear: both;
}