/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */
/* playfair-display-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/playfair-display-v40-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* playfair-display-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/playfair-display-v40-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* playfair-display-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/playfair-display-v40-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* playfair-display-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  src: url('fonts/playfair-display-v40-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* playfair-display-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/playfair-display-v40-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* playfair-display-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 600;
  src: url('fonts/playfair-display-v40-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lato-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/lato-v25-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/lato-v25-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/lato-v25-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: url('fonts/lato-v25-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* Allgemein */
h1, h2, h3, h4, h5, h6 {
	font-family: 'Playfair Display', serif !important;
}
a {
	text-decoration: underline; 
	text-underline-offset: 0.3rem;
	font-size: 1.25rem;
	font-weight: bold;
	color: #E07800;
}
a:hover, a:focus, a:active {
	text-decoration: none;
}
	
ul.wp-block-list {
  padding-inline-start: 1em;
}
ul.wp-block-list li {
  line-height: 1.3;
  margin-bottom: 0.5rem;
}
:root h1.gspb_heading {
	font-size: clamp(2.5rem, 3vw, 4.5rem);
	line-height: 1.2;
	margin-bottom: 1rem;
}
:root h2.gspb_heading {
	font-size: clamp(2rem, 1.7vw, 3rem);
	line-height: 1.2;
	margin-bottom: 1rem;
}

:root h3.gspb_heading { 
	font-size: clamp(1.5rem,1.2vw,2.1rem);
	line-height: 1.2;
	margin-bottom: 1rem;
}

:root, body, p, a, li, input, button, blockquote, q, .button, .ct-button, .ct-button-ghost, [type="submit"], .wp-element-button, .wp-block-button__link, button.regform-button, button[class*="ajax"], .forminator-ui[data-design="none"] .forminator-button, .fluentform .ff-el-group button.ff-btn, .ct-button-secondary-text, label, figcaption, .wp-block-quote, .wp-block-pullquote, .ct-label, .site-title, .entry-meta, .ct-menu-badge, .entry-excerpt, .ct-post-title, .ct-breadcrumbs, .ct-header-text, .ct-product-sku, .ct-product-title, .ct-woo-card-stock, .author-box-bio, .author-box-name, .ct-contact-info, .site-description, .page-description, .mobile-menu a, .menu .ct-menu-link, .comment-reply-title, .ct-footer-copyright, .ct-language-switcher, :where(pre, code, samp, kbd) {
	font-family: 'Lato', Helvetica, sans-serif;
	line-height: 1.5;
}


/* Header */
.bt-karriere .ct-menu-link {
  background-color: var(--theme-palette-color-1) !important;
  color: var(--theme-palette-color-3) !important;
}
.bt-karriere .ct-menu-link:hover, .bt-karriere .ct-menu-link:focus, .bt-karriere .ct-menu-link:active {
  background-color: var(--theme-palette-color-2) !important;
  color: var(--theme-palette-color-7) !important;

}

.mobile-menu {
  max-width: 300px;
}

/* Startseite */
.teaser-container {
  position: relative; 
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 40px;
}
.usp-container {
  position: relative; 
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 40px;
}
.karriere.usp-container {
	gap: 80px 40px;
}
/* Inhalt */
.max-width {
  max-width: 700px;
  margin: 0 auto;
}

.bns-kicker {
  letter-spacing: 0.02rem;
  margin-bottom: 0;
  padding: 0;
  color: var(--theme-palette-color-2);
  display: inline-block;
  font-size: 1.25rem;
  font-weight: bold;
}

/* Formular */
.ct-form-fieldset {
  background-color: rgba(242, 247, 246, 0.5);
  border: 2px solid var(--theme-palette-color-5);
  border-radius: 20px;
  margin: 0 auto;
  position: relative;
  padding-top: 6rem;
  max-width: 700px;
}
.ct-form-fieldset legend {
  font-size: 15px;
  font-weight: 600;
  padding: calc(2rem/2);
  margin: -2px -2px 1rem;
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--theme-palette-color-2);
  color: var(--theme-palette-color-8);
  border-radius: 0 20px;
}
.ct-form-fieldset select, .ct-form-fieldset textarea, .ct-form-fieldset input:is([type="url"], [type="tel"], [type="text"], [type="time"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="number"], [type="search"], [type="password"]) {
	background-color: var(--theme-palette-color-6);	
}
.ct-form-fieldset select:hover, .ct-form-fieldset textarea:hover, .ct-form-fieldset input:is([type="url"], [type="tel"], [type="text"], [type="time"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="number"], [type="search"], [type="password"]):hover, .ct-form-fieldset select:focus, .ct-form-fieldset textarea:focus, .ct-form-fieldset input:is([type="url"], [type="tel"], [type="text"], [type="time"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="number"], [type="search"], [type="password"]):focus {
	background-color: var(--theme-palette-color-8);	
}
.ct-form-button {
	font-weight: 600;
	border-radius: 8px;
	padding: calc(2rem/2);
}
.wpcf7-form-control.ct-textarea {
  height: 8em;
}
.ct-fieldcontainer {
  display: flex;
  gap: 1em;
  margin-bottom: 1em;
}
/* Teaser-Boxen mit Icon */
.teaser-branchen .stk-block-icon-label.stk-block-icon-label--use-flex-basis .stk-inner-blocks {
  flex-direction: row-reverse;
  gap: 2rem;
}

/* Footer */
.ct-footer a {
	color: var(--theme-palette-color-2);
}
.ct-footer a:hover, .ct-footer a:focus, .ct-footer a:active {
	color: var(--theme-palette-color-1) !important;
}
[class*="ct-contact-info"] .contact-title, [class*="ct-contact-info"] .contact-text {
  font-weight: 600;
}
[class*="ct-contact-info"] .contact-title h3 {
	font-size: 1.25rem;
	margin-top: 0; 
	margin-bottom: 0;
}
/* Responsive */
@media only screen and (min-width: 1000px) {
	/* Footer */

}
@media only screen and (min-width: 1022px) {
	/* Startseite */
	.teaser-container {
	  grid-template-columns: repeat(auto-fit, minmax(440px, 1fr)) !important;
	}	
	.usp-container {
	  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
	}	

}
@media only screen and (max-width: 999.98px) {
	.bns-kicker {
		hyphens: auto;
		max-width: 70%;
	}

	/* Footer */
	[data-footer*="type-1"] .ct-footer [data-column="widget-area-1"] {
		--text-horizontal-alignment: flex-start;
		--horizontal-alignment: center;
	}
	[data-footer*="type-1"] .ct-footer [data-column="widget-area-2"] {
		--text-horizontal-alignment: flex-start;
		--horizontal-alignment: center;
	}
	.ct-footer [data-column="widget-area-2"] [class*="ct-contact-info"] ul {
	  align-items: flex-start;
	  margin-left: -20px;
	}
}
@media only screen and (max-width: 649px) {
	.ct-fieldcontainer {
	  flex-direction: column;
	  gap: 0.5em;
		margin-bottom: 0.5em;
	}
}
@media only screen and (min-width: 1000px) and (max-width: 1099.98px) {
	[data-header*="type-1"] .ct-header [data-id="logo"] .site-logo-container {
	  --logo-max-height: 70px;
	}
	#menu-main-menu.menu {
	  gap: 5px;
	}	
	.ct-menu-link:not(:empty) {
		padding-left: clamp(0.5rem, 0.8vw, 1rem);
		padding-right: clamp(0.5rem, 0.8vw, 1rem);
		font-size: 1rem;
	}	
}
@media only screen and (min-width: 1100px) and (max-width: 1279px) {
	[data-header*="type-1"] .ct-header [data-id="logo"] .site-logo-container {
	  --logo-max-height: 80px;
	}
	#menu-main-menu.menu {
	  gap: 5px;
	}	
	.ct-menu-link:not(:empty) {
		padding-left: clamp(0.5rem, 1vw, 1rem);
		padding-right: clamp(0.5rem, 1vw, 1rem);
	}	
}