/**
 * Main Frontend CSS file
 *
 * This file contains all structural and layout CSS that is needed in the frontend only (basic site layout, navigation, footer etc.).
 * It imports the editor.css which contains all CSS that is needed in the Gutenberg Editor too (typography, block css etc. ).
 */
@import "reset.css";
@import "../fonts/kapraneue/webfont.css";
@import "../fonts/juanablack/webfont.css";
@import "flags.css";
@import "editor.css";
@import "navigation.css";

/*
 * Basic Document styles.
 */
* {
	margin: 0;
}
html, body {
	background: #fff;
}
body {
	-webkit-font-smoothing: antialiased;
}
/*body.admin-bar {
	margin-top: 32px;
}*/
img, picture, video, canvas, svg {
	display: block;
	max-width: 100%;
}
p, h1, h2, h3, h4, h5, h6 {
	overflow-wrap: break-word;
}
@media screen and (max-width: 782px) {
	/*body.admin-bar {
		margin-top: 46px;
	}*/
}


/*
 * Basic Structure and elements.
 */
.editor-container {
	container: editor-container/ inline-size;
}
.content-container,
.main-content {
	padding: 0 22px;
}
.skip-to-main-content-link {
	position: absolute;
	left: -9999px;
	z-index: 100000;
	padding: 1em;
	background-color: #fff;
	color: var(--wp--preset--color--orange);
	opacity: 0;
	outline: 4px solid var(--wp--preset--color--orange);
	outline-offset: -4px;
}
.skip-to-main-content-link:focus {
	left: 10px;
	top: 10px;
	opacity: 1;
	-webkit-box-shadow: 0 0 5px 5px rgba(0,0,0,.6);
	box-shadow: 0 0 5px 5px rgba(0,0,0,.6);
}

@media screen and (min-width: 1240px) {
	.content-container {
		width: 100%;
		max-width: 1240px;
		margin: 0 auto;
		padding: 0;
	}
}

/* Fixed Quicklinks */
.fixed-links {
	position: fixed;
	right: 0;
	top: 25%;
	display: none;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	z-index: 1000;
}
.fixed-link {
	position: relative;
	display: block;
	height: 50px;
	padding: 10px 50px 10px 0;
	background-color: var(--isaqb-color-orange);
	color: var(--isaqb-text-color-light);
	text-decoration: none;
}
.fixed-link:hover {
	text-decoration: none;
}
.fixed-link:after {
	content: '';
	display: block;
	height: 50px;
	width: 50px;
	background: var(--isaqb-color-orange) center / 30px no-repeat;
	z-index: 2;
	position: absolute;
	top: 0;
	right: 0;
}
.fixed-link.fixed-calendar:after {
	background-image: url("../images/icon-cal.svg");
}
.fixed-link.fixed-contact:after {
	background-image: url("../images/icon-contact.svg");
}
.fixed-link.fixed-blog:after {
	background-image: url("../images/icon-blog.svg");
}
.fixed-link > span {
	position: relative;
	display: block;
	width: 120px;
	padding-left: 10px;
	margin-right: -130px;
	overflow: hidden;
	line-height: 30px;
	-webkit-transition: margin .2s linear 0s;
	-moz-transition: margin .2s linear 0s;
	-o-transition: margin .2s linear 0s;
	-ms-transition: margin .2s linear 0s;
	transition: margin .2s linear 0s;
}
.fixed-link:hover > span {
	margin-right: 0;
}
@media screen and (min-width: 800px) {
	.fixed-links {
		display: flex;
	}
}
@media screen and (min-height: 1000px) {
	.fixed-links {
		top: 15%;
	}
}

/* Fixed background image*/
.body-has-background {
	background-attachment: fixed;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top 80px center;
}
@media screen and (min-width: 1024px) {
	.body-has-background {
		background-size: 100% auto;
	}
}
@media screen and (min-width: 1240px) {
	.body-has-background {
		background-size: 1240px auto;
	}
}

/* Group */
.isaqb-group {
	padding-top: var(--wp--preset--spacing--xxl);
	padding-bottom: var(--wp--preset--spacing--xxl);
}
.isaqb-group.margin-top {
	margin-top: var(--wp--preset--spacing--xxl);
}
.isaqb-group.border-navy {
	border-top-color: var(--isaqb-color-navy);
	border-top-width: 14px;
	border-top-style: solid;
}
.isaqb-group.border-orange {
	border-top-color: var(--isaqb-color-orange);
	border-top-width: 14px;
	border-top-style: solid;
}

/* Align center */
.wp-block-image.aligncenter {
	margin-left: auto;
	margin-right: auto;
}

/*
 * Repeated Elements
 */

/* Pagination */
.post-content .pagination {
	margin-top: 2.333rem;
}
.pagination h5 {
	font-weight: 500;
}
.pagination ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.666rem;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.post-content .pagination ul {
	justify-content: flex-start;
}
.pagination ul li {
	padding: 0;
}
.pagination ul li.label {
	width: 100%;
}
.pagination ul li:before {
	display: none;
}
.pagination ul li > a,
.pagination ul li > span {
	display: inline-block;
	min-width: 50px;
	height: 50px;
	background-color: var(--isaqb-color-navy);
	text-align: center;
	line-height: 50px;
	color: var(--isaqb-text-color-light);
	padding: 0 10px;
}
.pagination ul li > .prev,
.pagination ul li > .next {
	padding: 0 20px;
	min-width: 170px;
}
.pagination ul li > span,
.pagination ul li a:hover {
	background-color: var(--isaqb-color-orange);
	text-decoration: none;
}
@container editor-container ( width > 759px) {
	.pagination ul li.label {
		width: auto;
	}
}

/* Social media Icons */
.social-media-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 11px;
	margin-top: 22px;
}
.social-media-wrap > span {
	display: inline-block;
	padding-right: 13px;
	flex-basis: 100%;
	color: var(--isaqb-color-orange);
}
.social-media-wrap a {
	display: inline-flex;
	width: 50px;
	height: 50px;
	background-color: var(--isaqb-color-orange);
	justify-content: center;
	align-items: center;
}
.social-media-wrap a svg {
	width: 100%;
	height: auto;
	fill: var(--isaqb-text-color-light);
}
.social-media-wrap a:hover,
.social-media-wrap a:focus {
	background-color: var(--isaqb-color-navy);
}
.social-media-wrap a:hover svg,
.social-media-wrap a:focus svg {
	fill: var(--isaqb-text-color-light);
}
.social-media-wrap svg.icon-bluesky {
	width: 30px;
}
.social-media-wrap svg.icon-code {
	width: 30px;
}
.social-media-wrap svg.icon-facebook {
	width: 20px;
}
.social-media-wrap svg.icon-linkedin {
	width: 28px;
}
.social-media-wrap svg.icon-mastodon {
	width: 30px;
}
.social-media-wrap svg.icon-x {
	width: 30px;
}
.social-media-wrap svg.icon-xing {
	width: 24px;
}
.social-media-wrap svg.icon-youtube {
	width: 34px;
}
@media screen and (min-width: 600px) {
	.social-media-wrap > span {
		flex-basis: auto;
	}
}
@media screen and (min-width: 1050px) {
	.social-media-wrap {
		margin-top: 0;
	}
}

/* Dialog */
dialog {
	margin: 0 auto;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	max-width: 800px;
	padding: 30px;
	border-color: var(--isaqb-color-navy);
	background-color: var(--isaqb-color-grey-light);
	-webkit-box-shadow: 0 0 #0000, 0 0 #0000, 0 25px 50px -12px rgba(0, 0, 0, 0.25);
	-moz-box-shadow: 0 0 #0000, 0 0 #0000, 0 25px 50px -12px rgba(0, 0, 0, 0.25);
	box-shadow: 0 0 #0000, 0 0 #0000, 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.dialog-card {
	position: relative;
}
dialog button.close-dialog {
	position: absolute;
	top: -15px;
	right: -15px;
	display: flex;
	cursor: pointer;
	align-items: center;
	flex-shrink: 0;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: 11px;
}
dialog button.close-dialog svg {
	width: 22px;
}
dialog button.close-dialog svg,
dialog button.close-dialog svg path {
	fill: var(--isaqb-text-color);
	-webkit-transition: fill .1s linear 0s;
	-moz-transition: fill .1s linear 0s;
	-o-transition: fill .1s linear 0s;
	-ms-transition: fill .1s linear 0s;
	transition: fill .1s linear 0s;
}
dialog button.close-dialog:focus,
dialog button.close-dialog:hover{
	color: var(--wp--preset--color--orange);
	outline: 4px solid var(--wp--preset--color--orange);
	outline-offset: -4px;
}
dialog button.close-dialog:focus svg path,
dialog button.close-dialog:hover svg path {
	fill: var(--wp--preset--color--orange);
}

/*
 * Header
 */
#header  {
	/*position: absolute;
	top: 20px;
	left: 0;*/
	width: 100%;
	background-color: var(--isaqb-color-navy);
	z-index: 1000;
	-webkit-transition: top .1s linear 0s, background-color .1s linear 0s;
	-moz-transition: top .1s linear 0s, background-color .1s linear 0s;
	-o-transition: top .1s linear 0s, background-color .1s linear 0s;
	-ms-transition: top .1s linear 0s, background-color .1s linear 0s;
	transition: top .1s linear 0s, background-color .1s linear 0s;
}


/* Fixed header */
.scrolling #header {
	background-color: #fff;
	position: fixed;
	top: 0;
}
.scrolling.admin-bar #header {
	position: fixed;
	top: 0;
}

/* Header inner container & logo */
.header-content {
	position: relative;
	height: 80px;
	display: flex;
	gap: 15px;
	align-items: center;
	justify-content: space-between;
	background-color: transparent;
}
#header .logo-link:focus {
	display: inline-block;
	outline: 4px solid var(--wp--preset--color--text-light);
	outline-offset: 8px;
}
#header .logo {
	max-width: 106px;
	padding-top: 5px;
}
#header .logo.scroll {
	display: none;
}

.scrolling #header .logo-link:focus {
	outline: 4px solid var(--wp--preset--color--orange);
}
.scrolling #header .logo {
	display: none;
}
.scrolling #header .logo.scroll {
	display: block;
}
@media screen and (min-width: 601px) {
	.scrolling.admin-bar #header {
		position: fixed;
		top: 46px;
	}
}
@media screen and (min-width: 783px) {
	.scrolling.admin-bar #header {
		position: fixed;
		top: 32px;
	}
}


/*
 * Main content area
 */
.main-content {
	min-height: 1000px;
}


/*
 * Breadcrumbs
 */
.breadcrumbs * {
	font-size: var(--isaqb-fontsize-small);
	font-weight: 300;
}
body .main-content .breadcrumbs a {
	text-decoration: none;
	color: var(--isaqb-text-color-headline);
}
body .breadcrumbs a:hover,
body .breadcrumbs a:focus {
	text-decoration: underline;
}
.breadcrumbs a:focus {
	outline-color: var(--isaqb-text-color-light);
}
.breadcrumbs .current-page {
	text-decoration: underline;
}

/*
 * Hero regular
 */
.hero-section {
	position: relative;
	overflow-x: hidden;
	margin-left: -22px;
	margin-right: -22px;
}
.hero-content-wrap {
	position: relative;
	margin: -100px 22px 0;
	z-index: 2;
}
.hero-content {
	color: var(--isaqb-text-color-headline);
	background-color: var(--isaqb-color-orange);
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	padding-top: 22px;
	padding-bottom: 22px;
}
.hero-content:before {
	content: '';
	color: var(--isaqb-text-color-headline);
	position: absolute;
	top: -10px;
	left: 0;
	display: block;
	width: 100px;
	height: 10px;
}
.hero-content #hero-title {
	font-family: var(--wp--preset--font-family--primary);
	color: var(--isaqb-text-color-headline);
	font-size: 1.555rem !important;
	font-weight: 400;
	line-height: 1.1em;
	margin-bottom: 6px;
}
.hero-content .hero-subtitle {
	font-weight: 400;
	margin-bottom: 15px;
	line-height: 1.2em;
}

.hero-section > picture {
	position: relative;
	width: 100%;
	height: 510px;
	overflow: hidden;
	z-index: 1;
	background: var(--isaqb-color-orange);
}
.hero-section > picture img {
	object-fit: cover;
	max-width: none;
	object-position: center;
	width: 100%;
	height: 100%;
}
.hero-section > picture:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
}

/* Hero Big */
.hero-section-big {
	background-color: var(--isaqb-color-navy);
}
.hero-section-big > picture {
	height: 700px;
	background-color: transparent;
}
.hero-section-big > picture .content-container {
	height: 100%;
	padding-top: 155px;
	padding-bottom: 22px;
}

.hero-section-big .hero-content-wrap {
	padding-top: 0;
	padding-bottom: 0;
	margin: 0 22px 0;
	display: block;
	position: absolute;
	top: 10px;
	left: 0;
}
.hero-section-big .hero-content {
	position: relative;
	width: calc(100% - 36px);
	max-width: 420px;
	padding-top: 22px;
	padding-bottom: 155px;
	background: var(--isaqb-color-orange) url("../images/bg_hero_big.svg") bottom center / 100% no-repeat;
}
.hero-section-big #hero-title {
	min-height: calc(1.1em + 50px);
}
.hero-section-big .hero-subtitle {
	margin-bottom: 1.388rem;
}
.hero-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 11px 30px;
	margin-top: 1.388rem;
}
.hero-buttons .isaqb-button:focus {
	outline: 2px dotted var(--isaqb-text-color-light);
	outline-offset: 4px;
}
@media screen and (max-width: 420px) {
	.hero-section-big > picture .content-container {
		margin-left: -22px;
		margin-right: -22px;
	}
}
@media screen and (min-width: 420px) {
	.hero-content {
		-ms-hyphens: none;
		-webkit-hyphens: none;
		hyphens: none;
	}
	.hero-section-big > picture {
		height: 620px;
	}
}
@media screen and (min-width: 500px) {
	.hero-content .hero-subtitle {
		font-size: 1.111rem;
	}
	.hero-section-big .hero-subtitle {
		margin-bottom: 1.777rem;
	}
	.hero-buttons {
		margin-top: 1.777rem;
	}
}
@media screen and (min-width: 600px) {
	.hero-content #hero-title {
		font-size: 2rem !important;
	}

	.hero-section-big > picture {
		height: 1200px;
	}
	.hero-section-big > picture .content-container {
		padding-top: 0;
		padding-bottom: 155px;
	}
	.hero-section-big .hero-content-wrap {
		top: auto;
		left: auto;
		right: 0;
		bottom: 60px;
	}
}
@media screen and (min-width: 800px) {
	.hero-content #hero-title {
		font-size: 2.777rem !important;
	}
}
@media screen and (min-width: 1024px) {

	.hero-section:not(.hero-section-big) .hero-content {
		background-color: transparent;
		padding: 0;
	}
	.hero-section:not(.hero-section-big) .hero-content:before {
		display: none;
	}
	.hero-section:not(.hero-section-big) .hero-content > * {
		max-width: 540px;
	}
	.hero-section:not(.hero-section-big) .hero-content-wrap {
		position: absolute;
		bottom: 0;
		width: 100%;
		height: 100%;
		z-index: 2;
		display: flex;
		align-items: center;
		margin: 0;
	}
	.hero-content #hero-title {
		min-height: calc(1.1em + 38px);
	}
	.hero-section > picture {
		height: 290px;
	}
	.hero-buttons {
		margin-top: 3.333rem;
	}
	.hero-section > picture:after {
		background-position: bottom -50px right;
		background-size: cover;
	}
	.hero-section:not(.hero-section-big) > picture img {
		display: block;
		width: 60vw;
		height: auto;
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		-o-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}

	.hero-section-big > picture {
		min-height: 720px;
	}
	.hero-section-big > picture .content-container {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.hero-section-big .hero-content-wrap {
		margin: 0;
		top: 50%;
		left: 0;
		right: auto;
		bottom: auto;
		-webkit-transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		-o-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}
	.hero-section-big .hero-content {
		max-width: 450px;
	}
}
@media screen and (min-width: 1240px) {
	.hero-section:not(.hero-section-big) .hero-content > * {
		max-width: calc(40vw - (50vw - 620px));
		padding-right: 2.333rem;
	}
	.hero-section-big .hero-content {
		padding-left: 22px;
		padding-right: 22px;
		margin-right: 0;
		margin-left: calc(50vw - 620px);
	}
}
@media screen and (min-width: 1350px) {
	.hero-section-big > picture .content-container {
		margin-left: calc(50vw - 575px);
		margin-right: calc(50vw - 675px);
	}
	.hero-section-big .hero-content {
		margin-left: calc(50vw - 675px);
	}
}
@media screen and (min-width: 1920px) {
	.hero-section > picture {
		height: 390px;
	}
	.hero-section:not(.hero-section-big) > picture {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
}

/*
 * Single Content
 */

/* Structure */
.archive-content,
.post-single,
.news-single {
	margin-top: 6.333rem;
	padding-bottom: 6.333rem;
}
.post-sidebar {
	position: relative !important;
}
article.has-sidebar,
.article-content.has-sidebar {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3.33rem;
}

.post-header h1 {
	margin-top: 0;
	font-family: var(--wp--preset--font-family--secondary);
}
.post-header .subtitle {
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 7px;
	margin-top: var(--wp--preset--spacing--xs);
}

.nav-provider-back {
	margin-top: var(--wp--preset--spacing--lg);
}

@media screen and (min-width: 1024px) {
	article.has-sidebar,
	.article-content.has-sidebar {
		grid-template-columns: 2fr 1fr;
	}
	.has-sidebar > header {
		grid-column: 1 / span 2;
	}
	.has-sidebar > .post-content {
		grid-column: 1;
	}
	.has-sidebar > .post-sidebar {
		grid-column: 2;
	}
	.has-sidebar > .related-posts {
		grid-column: 1 / span 2;
	}
}

/* Post meta */
ul.post-meta {
	list-style-type: none;
	margin: 20px 0 0;
}
ul.post-meta li {
	display: inline-block;
}
ul.post-meta li:not(:last-child):after {
	content: ' |';
}
ul.post-meta a {
	color: var(--isaqb-color-orange);
	text-decoration: none;
}
ul.post-meta a:hover {
	color: var(--isaqb-color-orange);
	text-decoration: underline;
}

/* Related posts */
.related-posts {
	padding-top: 50px;
}
.related-posts-list {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 2.777rem;
	margin-block-start: 2.777rem;
}
.rlp-post {
	width: 100%;
	max-width: 380px;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}
.rlp-post > * {
	width: 100%;
}
.rlp-post .rlp-thumbnail {
	cursor: pointer;
	-webkit-transition: opacity .1s linear 0s;
	-moz-transition: opacity .1s linear 0s;
	-o-transition: opacity .1s linear 0s;
	-ms-transition: opacity .1s linear 0s;
	transition: opacity .1s linear 0s;
}
.rlp-post .rlp-thumbnail:hover {
	opacity: 0.8;
}
.rlp-post h4 {
	font-size: var(--isaqb-text-size);
	margin-top: 1.388rem;
	line-height: 1.5rem;
}
.rlp-post h4 a {
	color: var(--isaqb-text-color);
}
.rlp-post h4 a:hover {
	color: var(--isaqb-color-orange);
	text-decoration: none;
}
.rlp-post footer {
	margin-top: 0.611rem;
	align-self: flex-end;
}
.rlp-post ul.post-meta {
	margin-top: 0;
}
.rlp-post ul.post-meta .post-date {
	color: var(--isaqb-color-orange);
	font-weight: 600;
}
.rlp-post footer .isaqb-button {
	margin-top: 1.388rem;
	-webkit-box-shadow: var(--wp--preset--shadow--regular);
	-moz-box-shadow: var(--wp--preset--shadow--regular);
	box-shadow: var(--wp--preset--shadow--regular);
}
@media screen and (min-width: 1024px) {
	.related-posts-list {
		gap: 3.333rem 2.333rem;
	}
	.related-posts .related-posts-list {
		margin-block-start: 3.333rem;
	}
}

/* Author List */
.author-list {
	list-style-type: none;
}
ul.author-list li {
	background-color: var(--isaqb-color-navy);
	color: var(--isaqb-text-color-light);
	font-weight: 300;
	padding: 2.111rem;
	margin-top: 2.333rem;
}
ul.author-list li:first-child {
	margin-top: 3.333rem;
}
.author-card {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.111rem;
}
.author-card .author-meta h6 {
	color: var(--isaqb-text-color-light);
}
.author-list .author-thumbnail {
	width: 150px;
	height: 150px;
	overflow: hidden;
	display: none;
}
.author-card .author-thumbnail img {
	width: 100%;
	height: auto;
}
.author-card .author-meta h6 .author-intro {
	display: block;
	font-weight: 400;
	text-transform: uppercase;
	margin-bottom: 1rem;
}
@container editor-container (width > 500px) {
	.author-card.has-thumbnail {
		grid-template-columns: 150px auto;
	}
	.author-list .author-thumbnail {
		display: block;
		grid-column: 1;
	}
	.author-card.has-thumbnail .author-meta {
		grid-column: 2;
	}
	.author-card.has-thumbnail .author-excerpt {
		grid-column: 1 / span 2;
	}
}

/*
 * Archive Pages
 */
.archive-content .ptc-columns {
	margin-block-start: 3.888rem;
	align-items: stretch;
}
.archive-content .ptc-columnteaser {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 0;
}
.archive-content .ptc-columnteaser .ptc-content {
	margin-top: 0;
	align-self: flex-end;
}
.archive-content ul.post-meta li {
	display: inline;
}
.archive-content ul.post-meta li:not(:last-child):after {
	content: ' | ';
}
.archive-content .ptc-columnteaser .excerpt {
	margin-top: 0.611rem;
}
.archive-content .ptc-columnteaser .readmore {
	margin-top: 1.777rem;
}
.archive-content .pagination {
	margin-block-start: 3.888rem;
}
@container post-teaser-cols (width > 768px) {
	.archive-content .ptc-columnteaser  .excerpt {
		min-height: 3.999rem;
	}
	.archive-content .ptc-columnteaser h4 {
		min-height: 2.56em;
	}
	.archive-content .ptc-columnteaser .excerpt {
		min-height: calc(5 * var(--isaqb-text-lineheight));
	}
}
@container post-teaser-cols (width > 790px) {
	.archive-content .ptc-columnteaser .excerpt {
		min-height: calc(4 * var(--isaqb-text-lineheight));
	}
}
@media screen and (min-width: 1100px) {
	.archive-content .ptc-columnteaser  .excerpt {
		min-height: 2.777rem;
	}
}

/*
 * Search results
 */
.search-form {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.search-form > * {
	margin-block-start: var(--wp--style--block-gap);
}
.search-results {
	display: flex;
	flex-wrap: wrap;
	margin-top: var(--wp--preset--spacing--md);
	gap: var(--wp--preset--spacing--md);
}
.search-results > * {
	width: 100%;
}
.search-results .search-content {
	margin-top: 0.611rem;
}
.search-results .readmore {
	margin-top: 1.777rem;
}
.search-results .no-results {
	text-align: center;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.search-results .search-form {
	text-align: center;
}

/*
 * 404
 */
.error404 .post-header {
	margin-bottom: var(--wp--preset--spacing--md);
}
.error404 .back-button {
	margin-top: var(--wp--preset--spacing--lg);
}

/*
 * Provider
 */
.provider-sidebar .wp-post-image {
	margin-bottom: 2.777rem;
	max-width: 100%;
	height: auto;
}
.provider-address .provider-meta,
.provider-address .social-media-wrap,
.provider-single .tpt-metalist {
	margin-top: 2.333rem;
}
.single-isaqbproviders .isaqb-provider-courselist {
	margin-top: var(--wp--preset--spacing--rg);
}

/*
 * Widgets
 */
.widget-area {
	container: widget-container/ inline-size;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 2.777rem;
}
.widget {
	width: 100%;
}
h3.widget-title {
	text-decoration: none;
	text-transform: uppercase;
	font-size: var(--isaqb-fontsize-small);
	font-weight: 600;
	display: inline-block;
	line-height: 1.333em;
	padding: 18px 34px;
	color: var(--isaqb-text-color-light);
	background-color: var(--isaqb-color-navy);
}
@media screen and (min-width: 1024px) {
	.widget-area {
		gap: 3.333rem 2.333rem;
	}
}
@container widget-container ( width > 380px) {
	.widget {
		max-width: 380px;
	}
}

/* Recent posts widget */
@media screen and (min-width: 1024px) {
	.isaqb_widget_recent_posts .related-posts-list {
		margin-block-start: 3.333rem;
	}
}
@container widget-container ( width > 380px) {
	.widget.isaqb_widget_recent_posts {
		max-width: 100%;
	}
}

/*
 * Footer
 */
body #page-footer {
	color: var(--isaqb-text-color-light);
	background-color: var(--isaqb-color-navy);
}
body #page-footer a {
	color: var(--isaqb-text-color-light);
	text-decoration: none;
}
body #page-footer a:hover,
body #page-footer a:focus {
	color: var(--isaqb-color-orange);
}
body #page-footer a:focus {
	outline: 2px dotted var(--isaqb-color-orange);
	outline-offset: 4px;
}
#page-footer .footer-wrap {
	padding-bottom: 150px;
	background: transparent url("../images/bg_lines.svg") bottom center / 150% 200px no-repeat;
}
#page-footer .footer-content {
	padding-top: 100px;
	padding-bottom: 100px;
}
#page-footer .subfooter {
	padding: 15px 0;
	min-height: 80px;
	background-color: var(--isaqb-color-navy);
}

#page-footer .footer-column-info *,
.footer-nav-title {
	font-size: 1.388rem;
	font-weight: 600;
	line-height: 1.2em;
}
#page-footer .footer-column-info p {
	margin-bottom: 29px;
}
#page-footer .footer-column-info a {
	color: var(--isaqb-color-orange);
}
#page-footer .footer-column-info a:hover,
#page-footer .footer-column-info a:focus {
	color: var(--isaqb-text-color-light);
}

.footer-content {
	display: grid;
	grid-template-columns: 1fr;
	gap: 22px 44px;
}
.footer-nav-title {
	margin-bottom: 6px;
}
.footer-column-nav li {
	font-weight: 300;
	line-height: 2.1em;
}
.footer-column-nav ul li:before {
	top: 11px;
	background-color: var(--isaqb-text-color-light);
}

/* Subfooter*/
#subfooter {
	font-size: 0.888rem;
	font-weight: 300;
}
.copyright-menu {
	display: block;
	margin-top: 11px;
}
.copyright-menu a {
	display: block;
}

#page-footer .social-media-wrap a:hover,
#page-footer .social-media-wrap a:focus {
	background-color: var(--isaqb-text-color-light);
}
#page-footer .social-media-wrap a:hover svg,
#page-footer .social-media-wrap a:focus svg {
	fill: var(--isaqb-color-orange);
}

@media screen and (min-width: 500px) {
	.footer-content {
		grid-template-columns: repeat(2, 1fr);
	}

	.copyright-menu a {
		display: inline-block;
		margin: 0 18px 0 0;
	}
}

@media screen and (min-width: 600px) {
	.copyright-menu {
		display: inline-block;
		margin-top: 0;
	}
	.copyright-menu a {
		display: inline-block;
		margin: 0 0 0 18px;
	}
}

@media screen and (min-width: 680px) {
	.footer-content {
		grid-template-columns: repeat(3, 1fr);
	}
	.footer-column-info {
		grid-column: 1 / span 3;
	}
}

@media screen and (min-width: 1050px) {
	#page-footer .footer-wrap {
		background-size: 100% 200px;
	}
	.footer-content {
		grid-template-columns: repeat(5, 1fr);
	}
	.footer-column-info {
		grid-column: 1 / span 2;
	}

	#subfooter > .content-container {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

/*
 * Forms
 */
.formrow {
	margin-block-start: 1.777rem;
}

/* CF7 specific */
.wpcf7-form-control,
.wpcf7-form-control-wrap{
	display: block;
}
.wpcf7-not-valid-tip {
	color: var(--isaqb-color-orange);
	font-weight: 600;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	border-color: var(--isaqb-color-orange);
}
.wpcf7-list-item {
	margin-left: 0;
	display: block;
}


/* Fields  */
/* Fix for input type=search on safari */
input[type="search"] {
	-webkit-appearance: textfield;
}

input[type=text], input[type=email], input[type=tel], input[type=password], input[type=number], input[type=url], input[type=search], input[type=phone], input[type=date],
input.input-text {
	display: inline-block;
	position: relative;
	padding: 15px;
	margin: 0;
	border: 2px solid var(--isaqb-text-color);
	background: #fff;
	color: var(--isaqb-text-color-headline) !important;
	width: 100%;
	max-width: 100%;
	line-height: var(--isaqb-text-lineheight);
	vertical-align: top;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
}

textarea {
	position: relative;
	padding: 15px;
	margin: 0;
	border: 2px solid var(--isaqb-text-color);
	background: #fff;
	color: var(--isaqb-text-color-headline) !important;
	overflow: auto;
	width: 100%;
	max-width: 100%;
	vertical-align: top;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
}

/* select styles are moved to editor.css due to their use in block filters. */

input:focus, textarea:focus {
	outline: 2px dotted var(--isaqb-color-orange);
	outline-offset: 2px;
	border-color: var(--isaqb-color-orange);
}

input[type=range] {
	appearance: none;
	width: 100%;
	height: 12px;
	border: 1px solid var(--isaqb-color-navy);
	background-color: var(--isaqb-text-color-light);
}
input[type=range]::-webkit-slider-thumb {
	appearance: none;
	background: var(--isaqb-color-orange);
	border: 2px solid var(--isaqb-color-orange);
	width: 30px;
	height: 30px;
	cursor: pointer;
}

input[type=range]::-moz-range-thumb {
	background: var(--isaqb-color-orange);
	border: 2px solid var(--isaqb-color-orange);
	width: 30px;
	height: 30px;
	cursor: pointer;
}

body ::-webkit-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body :-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body ::-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* firefox 19+ */
body :-ms-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* ie */
body input:-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }

body textarea::-webkit-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body textarea:-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body textarea::-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* firefox 19+ */
body textarea:-ms-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* ie */
body textarea:-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }

/* Checkbox */
.checkbox-wrap {
	position: relative;
	display: block;
	min-height: 30px;
}
.checkbox-wrap > input[type=checkbox],
.wpcf7-form-control label > input[type=checkbox] {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0;
	border: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
input[type=checkbox] + .wpcf7-list-item-label {
	display: block;
	padding-left: 40px;
	position: relative;
	cursor: pointer;
}
input[type=checkbox] + .wpcf7-list-item-label:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 3px;
	width: 30px;
	height: 30px;
	background-color: var(--isaqb-text-color-light);
	border: 2px solid var(--isaqb-text-color);
}
.checkbox-wrap input[type=checkbox] + .wpcf7-list-item-label:before {
	top: 0;
}
input[type=checkbox]:focus + .wpcf7-list-item-label:before {
	outline: 2px dotted var(--isaqb-color-orange);
	outline-offset: 2px;
	border-color: var(--isaqb-color-orange);
}
input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	border-color: var(--isaqb-color-orange);
	background: var(--isaqb-color-orange) url('../images/checkmark.svg') center / 24px no-repeat;
}

/* Radio */
label > input[type=radio] {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0;
	border: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
input[type=radio] + .wpcf7-list-item-label {
	display: block;
	padding-left: 40px;
	position: relative;
	cursor: pointer;
}
input[type=radio] + .wpcf7-list-item-label:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 3px;
	width: 30px;
	height: 30px;
	background-color: var(--isaqb-text-color-light);
	border: 2px solid var(--isaqb-text-color);
}
input[type=radio]:focus + .wpcf7-list-item-label:before {
	outline: 2px dotted var(--isaqb-color-orange);
	outline-offset: 2px;
	border-color: var(--isaqb-color-orange);
}
input[type=radio]:checked + .wpcf7-list-item-label:before {
	border-color: var(--isaqb-text-color-light);
	background: var(--isaqb-color-orange);
}

/*
 * Plugin: Shariff / Erecht24 Share
 */
body .shariff {
	display: flex !important;
	flex-wrap: wrap;
	gap: 0.666rem;
	align-items: center;
	margin-top: 2.333rem;
}
body .shariff ul {
	margin: 0 !important;
	gap: 0.666rem;
}
body .shariff li {
	margin: 0 !important;
}
body .shariff .ShariffHeadline {
	width: 100%;
}
body .shariff li a:hover {
	background-color: var(--isaqb-color-navy) !important;
}
body .shariff .buttonsize-large .whatsapp .shariff-icon svg {
	padding: 9px 0 9px 4px;
}
@container editor-container ( width > 759px) {
	body .shariff .ShariffHeadline {
		width: auto;
	}
}


