/*
Theme Name: TAKTIQ (2025)
Theme URI: https://www.kaeding-anderson.de
Author: Kaeding Anderson
Author URI: https://wordpress.org/
Description: Theme für taktiq.de (2025). 
Version: 1.0
Text Domain: taktiq
*/
@charset "UTF-8";

/* VARIABLES */

:root {
--orange: #EC7405;
--orangehover: #cc6507;
--darkgrey: #6E6E6E;
--midgrey: #D8D8D8;
--lightgrey: #E9E9E9; /* #F6F6F6; */

--black: #262626;
--white: #FFFFFF;

--radius: .5rem;
--radius-sm: .25rem
}


/* ############################################ */

/* Mobile First */
body {
font-weight: 400;
font-family: "Segoe UI", "San Francisco", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans", "Open Sans", Helvetica, Arial, sans-serif;
color: var(--black);
}

#header {	
z-index: 2000;
transition: all ease .5s;
background-color: var(--white);
box-shadow: 0px 5px 100px rgba(0, 0, 0, 0.05);
border-bottom: 1px solid var(--white);
}

#header.is-sticky,
body.megamenu-visible #header {
background-color: var(--white);
box-shadow: 0px 5px 50px rgba(0, 0, 0, 0.075);
border-bottom: 1px solid var(--midgrey);
}
#content {
position: relative;
}
body.megamenu-visible #content:after {
content: '';
position: absolute;
left: 0;
right: 0;
top: 0;
height: 100%;
background-color: var(--black);
z-index: 0;
opacity: 0.5;
transition: all ease .5s;
}

#header .logo {
width: 120px;
height: auto;
display: inline;
transition: all ease .5s
}
#header .logo-link {
display: block;
}
#header .navbar-brand {
padding: 0;
margin: 0;
}

/*#header .logo-link-sticky {
display: none;
}
#header .logo-link-sticky .logo {
height: 55px;
width: auto;
}
#header.is-sticky .logo-link-sticky {
display: block;
}
#header.is-sticky .logo-link {
display: none;
}


/* Animated Burger 2022: https://jsfiddle.net/Beaniie/s8rm1f0q/5/ */
.navbar-toggler,
.navbar-toggler:focus {
border: none;
background: transparent !important;
padding-left: 0;
padding-right: 0;	
}  
.navbar-toggler .icon-bar {
transform: rotate(0deg) translate(0px, 0px);
transition: ease all .2s;
display: block;
width: 32px;
height: 2px;
background: var(--orange)
}
.navbar-toggler .icon-bar+.icon-bar {
margin-top: 6px;
}
.navbar-toggler.collapsed .icon-bar:nth-child(2) {
margin-left: 6px;
width: 26px
}
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(1) {
transform: rotate(45deg) translate(5px, 6px);
}
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(2) {
opacity: 0;
}
.navbar-toggler:not(.collapsed) .icon-bar:nth-child(3) {
transform: rotate(-45deg) translate(5px, -6px);
}


#main_nav {
position: fixed;
width: 100%;
background-color: var(--white);
z-index: 10000;
left: 0;
top:0;
box-shadow: 0px 100px 100px rgba(0, 0, 0, 0.25);
--bs-nav-link-font-size: 1rem
}
#main_nav.show {
display: flex;
flex-direction: column;
}
#main_nav.show > * {
width: 100%;
}

#main_nav_navbar > li:not(:last-child) {
border-bottom: 1px solid var(--darkgrey);
}

#main_nav_navbar > li > a {
--bs-nav-link-padding-x: 0;
--bs-navbar-nav-link-padding-x: 1rem;
font-weight: 400;
font-size: 1.1rem;
color: var(--black);
}
#main_nav_navbar > li > a:hover {
color: var(--orangehover)
}
#main_nav_navbar > li > ul > li > a {
--bs-dropdown-item-padding-x: 0;
--bs-nav-link-padding-y: .125rem;
color: var(--black)
}
/*#main_nav_navbar > li.active > a {
color: var(--orange);
}*/
#main_nav_navbar > li > ul > li.active > a {
font-weight: 600;
}
#main_nav_navbar > li.current-menu-ancestor > a,
#main_nav_navbar > li.current-menu-item > a {
	font-weight: 600!important;
}
#main_nav_navbar > li > ul > li > ul > li.current-menu-item > a {
	font-weight: 700!important;
}
#main_nav a:focus-visible {
outline: none;
}
#main_nav .dropdown-toggle {
display: inline-flex;
}
#main_nav .dropdown-toggle:after {
content: '\f107';
font-family: 'tq_iconfont';
border: 0;
transition: all ease .15s;
margin-left: .75rem;
}
#main_nav .dropdown-toggle:focus:after {
transform: rotate(180deg);
}
#main_nav .dropdown-menu {
border: 0;
border-radius: 1rem;
margin-top: 0rem;
display: block;
transition: all ease .15s;
opacity: 0;
padding-top: 0;
padding-bottom: 0;
}
#main_nav .dropdown-item.active, #main_nav .dropdown-item:active {
background: var(--lightgrey)
}
#main_nav .dropdown-item:hover, #main_nav .dropdown-item:hover {
background: var(--midgrey)
}
#main_nav .dropdown-menu.show {
margin-top: 1rem;
opacity: 1;
}
#main_nav .menu-icon {
display: inline-block;
height: 22px;
width: 22px;
margin-right: .5rem;
}
#main_nav li.menu-item-brand > a {
display: flex;
flex-direction: row;
align-items: center!important;
}
#main_nav li.menu-item-brand > a > .menu-icon-title {
font-weight: 700;
}
#main_nav li.menu-item-brand > a > .menu-icon {
height: 44px;
width: 44px;
margin-bottom: .5rem;
}
#main_nav li.menu-item-brand > a .menu-icon-subtitle  {
line-height: 1.2;
font-weight: 400;
}

#main_nav ul:has(>li.menu-item-co-brand) {
border-bottom-left-radius: .5rem!important;
}
#main_nav li.menu-item-co-brand > a {
display: inline-flex!important;
flex-direction: row!important;
align-items: center!important;
background-color: var(--lightgrey);
padding: .5rem .5rem!important;
border-radius: var(--radius)!important;
gap: .5rem;
margin-top: 1rem!important;
width: auto!important;
white-space: unset;
}
#main_nav li.menu-item-co-brand > a:hover {
background-color: var(--midgrey)!important;
}
#main_nav li.menu-item-co-brand > a small {
line-height: 1.2;
font-weight: 400;
}
#main_nav li.menu-item-co-brand > a > .menu-icon-title > br:first-child {
display: none;
}
#main_nav li.menu-item-co-brand > a img {
height: 34px;
width: 34px;
background-color: var(--white); padding: .25rem; border-radius: var(--radius);
}

#service_nav_navbar {
	overflow: hidden;
}

#service_nav_navbar > li {
	transition: all ease .5s;
}

#service_nav_navbar > li.cta > a {
	background-color: var(--orange);
	border-radius: .75rem;
	border-width: 1px!important;
	border-style: solid;
	color: var(--white);
	font-weight: 600;
	padding: .8rem 2rem!important;
	text-align: center;
	white-space: nowrap;
}

#service_nav_navbar > li.cta > a:hover {
	background-color: var(--orangehover);
}

.home #service_nav_navbar > li.cta {
	width: 0;
	opacity: 0;
	transform: translateX(170px);
	transition: all ease .5s;
}
.home .is-sticky #service_nav_navbar > li.cta {
	width: 170px;
	opacity: 1;
	transform: translateX(0);
}
	
#footer,
#footer a {
	color: var(--white);
}

#footer_newsletter {
	position: relative;
}
#footer_newsletter:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background-color: var(--lightgrey);
	z-index: -1;
}
/*.single-post #footer_newsletter:before {
	background-color: var(--white);
}*/

#footer_newsletter:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background-color: var(--black);
	z-index: -1;
}

.footer-logo {
	width: 70px;
	height: auto;
	background-color: var(--white);
	padding: .25rem;
	border-radius: var(--radius);
}

#footer_social_nav [class^="icon-"]:before, 
#footer_social_nav [class*=" icon-"]:before {
	margin: 0;
}

#footer_social_nav a {
	color: var(--white);
	font-size: 1.5rem;
	padding: 0 .5rem;
	line-height: 1;
}
#footer_social_nav a:hover {
	color: var(--lightgrey)
}

#footer_social_nav ul > li:first-child a,
#footer_legal_nav ul > li:first-child a {
	padding-left: 0;
}

#footer_legal_nav ul > li:last-child a {
	padding-right: 0;
}

.social_nav_jobs a {
	background: var(--white);
	border-radius: var(--radius);
	padding: .5rem
}



/* Typo */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-weight: 700;
}

.has-badge-font-size {
	display: inline-block;
	font-weight: 600;
	border-radius: .5rem;
	background-color: var(--midgrey);
	font-size: 1rem!important;
	color: var(--darkgrey);
	padding: .25rem 1rem;
}

.has-intro-font-size strong {
	font-weight: 700;
}

.has-h-0-font-size,
.has-h-1-font-size,
.has-h-2-font-size,
.has-h-3-font-size,
.has-h-4-font-size {
	line-height: 1.2;
	font-weight: 700;
}

h1, .h1, .has-h-1-font-size {
	font-size: clamp(1.75rem, calc(1.375rem + 1.5vw), 2.95rem)!important
}
.h2, .has-h-2-font-size {
	font-size: clamp(1.5rem, calc(1.325rem + .9vw), 2.2rem)!important
}
.h3, .has-h-3-font-size {
	font-size: clamp(1.3rem, calc(1.3rem + .6vw), 1.8rem)!important
}
.h4, .has-h-4-font-size {
	font-size: clamp(1.15rem, calc(1.15rem + .6vw), 1.4rem)!important
}

.wp-block-heading mark {
	padding: 0;
	background-color: transparent;
}


/* Links */
a {
	color: inherit;
	text-underline-offset: 3px;
}
a:hover {
	color: inherit;
}
a:not([class]):hover {
}


/* Blocks */
.entry-content > .wp-block-cover:first-child + .wp-block-group {
	margin-top: 0;
}
.wp-block-cover, .wp-block-cover__inner-container {
}
.wp-block-cover + .wp-block-group.alignfull {
	margin-top: 0;
}
.entry-content > .wp-block-group:last-of-type:not(.alignfull) {
	margin-bottom: 4rem;
}
.wp-block-media-text.has-media-on-the-right:not(.has-background) .wp-block-media-text__content {
	padding-left: 0;
}
.wp-block-media-text.has-background .wp-block-media-text__content {
	padding: 1rem;
}
.wp-block-column.has-background {
	padding: 1.5rem
}
.wp-block-columns .wp-block-column.has-white-background-color {
	padding-left: 0;
}
.entry-content > .wp-block-group.alignwide:not(.has-background) {
	padding-left: 0;
	padding-right: 0
}
.entry-content > .wp-block-group.has-background:not(.alignfull),
.entry-content > .wp-block-group > .wp-block-group.has-background:not(.alignfull) {
}

.wp-block-group.alignfull + .wp-block-group.alignfull {
	margin-top: 0;
}

.wp-block-group.alignfull:not(.has-background) + .wp-block-group.alignfull:not(.has-background) {
	padding-top: 0;
}

:where(body .is-layout-flow) > form {
	margin-top: 0;
}

.wp-block-media-text {
	overflow: hidden;
}

.wp-block-video video {
	border-radius: .5rem;
	border: 1px solid var(--lightgrey);
}
.wp-block-embed.is-type-video {
	border-radius: .5rem;
	border: 1px solid var(--lightgrey);
	overflow: hidden;
}

.wp-block-file,
.wp-fake-file-block {
	transition: all ease .5s;
}
.wp-block-file:hover,
.wp-fake-file-block:hover {
	border-color: var(--black)!important;
}

.wp-fake-file-block a {
	text-decoration: none;
}


/* Details */
.wp-block-details {
	padding: .75rem 1rem;
	border: 1px solid var(--midgrey);
	border-radius: var(--radius);
	transition: all ease .5s;
}
.wp-block-details.alignwide {
	padding: 1.25rem 2rem;
}
.wp-block-details.alignwide > *:last-child {
	margin-bottom: 1rem;
}
.wp-block-details[open],
.wp-block-details:hover {
	border-color: var(--black);
}
@keyframes details-show {
from {
	opacity:0;
	transform: var(--details-translate, translateY(-0.5em));
}
}
.wp-block-details[open] > *:not(summary) {
animation: details-show 300ms ease-in-out;
}
.wp-block-details summary::-webkit-details-marker {
	display:none;
}
.wp-block-details summary {
	font-size: 1.25rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	transition: all ease .3s;
}
/*.wp-block-details:hover summary {
	padding-left: .5rem;
}*/
.wp-block-details summary:after {
	content: '\F107';
	color: var(--darkgrey);
	font-size: 1.75rem;
	margin-left: auto;
	font-family: "tq_iconfont";
	font-style: normal;
	font-weight: normal;
	transition: all ease .3s;
}
.wp-block-details[open] summary:after {
	transform: rotate(180deg);
	color: var(--orange);
}
.wp-block-details:hover summary:after {
	color: var(--orange);
}
details.wp-block-details + details.wp-block-details {
	margin-top: 1rem;
}

/* Card */
.card-product {
	transition: all ease .5s;
}
.card-product:hover {
	border: 1px solid var(--black)!important;
}

/* Post */
#post_contactperson .card-contactperson {
	border: 1px solid var(--midgrey)!important;
}
.post_banner {
	position: relative;
	transition: all ease .5s;
}
.post_banner:hover {
	border: 1px solid var(--midgrey)!important;
}
.post_banner .wp-block-button__link::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
}

/* BQ */
blockquote mark {
	background-color: var(--orange);
	color: var(--white);
	padding: 0 .25rem;
	border-radius: .25rem;
}
.carousel-indicators [data-bs-target] {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	border: 1px solid var(--midgrey);
	opacity: 1;
}
.carousel-indicators [data-bs-target].active {
	background-color: var(--orange);
}
.carousel-inner {
  display: flex;
  gap: 1.5rem;
}
.carousel-item {
  flex: 0 0 100%;
}
.carousel-arrow-control {
	color: var(--orange);
	border: 0!important;
	box-shadow: none!important;
	font-size: 2rem;
}
.carousel-arrow-control:active {
	color: var(--orangehover);
	
}
.carousel-arrow-control:hover {
	color: var(--orangehover);
}

/* Lists */
.tinymce ul {
	padding-left: 1.75rem;
	list-style-type: square;
}
ul.wp-block-list:not(.is-style-checklist-clean):not(.is-style-checklist-boxed) {
	padding-left: 1.25rem;
	list-style-type: square;
}
.tinymce ul li::marker,
.wp-block-list:not(.is-style-checklist-clean):not(.is-style-checklist-boxed) li::marker,
.wp-block-list:not(.is-style-checklist-clean):not(.is-style-checklist-boxed) li::marker  {
  color: var(--orange);
}
.tinymce ul li:not(:last-child),
.wp-block-list:not(.is-style-checklist-clean):not(.is-style-checklist-boxed) li:not(:last-child) {
	margin-bottom: .25rem;
}
.single-job .tinymce ul {
	font-size: clamp(1rem, calc(1rem + .05vw), 1.1rem)
}

/* Forms */


/* Buttons */
.btn {
	font-weight: 600;
	border-radius: .5rem;
	border-width: 1px;
	--bs-btn-padding-x: 1rem;
}
.wp-block-button .wp-block-button__link {
	transition: all ease .5s;
	border: 1px solid var(--orange);
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.wp-block-button.is-style-fill .wp-block-button__link:hover {
	background-color: var(--orangehover);
	border: 1px solid var(--orangehover);
	color: var(--white);
}

.wp-block-button.is-style-outline .wp-block-button__link {
	border-color: var(--orange);
	color: var(--orange);
	background-color: transparent;
	transition: all ease .1s;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: transparent;
	border-color: var(--orangehover);
	color: var(--orangehover);
	outline: 1px solid var(--orangehover);
}

.wp-block-button.is-style-outline .wp-block-button__link.has-black-color {
	border-color: var(--black);
	color: var(--black);
	background-color: transparent;
}
.wp-block-button.is-style-outline .wp-block-button__link.has-black-color:hover {
	background-color: var(--black);
	border-color: var(--black);
	color: var(--white)!important
}


/* Accordion */
.accordion-item {
	background-color: var(--white);
	transition: all ease .3s
}
.accordion-button  {
	font-size: 1.25rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	transition: all ease .3s;
	background-color: transparent;
	position: relative;
	border: 0;
	-webkit-appearance: none;
	appearance: none;
}

.accordion-item:has(.accordion-button:not(.collapsed)),
.accordion-item:hover {
	border-color: var(--black)!important;
}

.accordion-button:after {
	position: absolute;
	right: 1rem;
	content: '\F107';
	color: var(--darkgrey);
	font-size: 1.75rem;
	margin-left: auto;
	font-family: "tq_iconfont";
	font-style: normal;
	font-weight: normal;
	transition: all ease .3s;
}

.accordion-button:not(.collapsed):after {
	transform: rotate(180deg);
	color: var(--orange);
}

.accordion-icon {
	height: 35px;
	width: auto;
}


/* MailPoet */
.mailpoet_text {
	border-radius: var(--radius)!important;
	border: 1px solid var(--darkgrey)!important;
	padding: .75rem 1rem!important;
	color: var(--darkgrey)!important;
}
.mailpoet_text:focus {
	outline: none!important;
	border-color: var(--orange)!important;
	box-shadow: 0 0 0 1px var(--orange)!important;
}
.mailpoet_checkbox[type="checkbox"] {
	accent-color: var(--orange)!important;
	width: 16px;
    height: 16px;
	margin-right: .25rem;
}
.mailpoet_submit {
	background-color: var(--orange)!important;
	color: var(--white)!important;
	border-radius: var(--radius)!important;
	border: 1px solid var(--orange)!important;
	padding: .75rem 1rem!important;
	font-weight: 600!important;
	transition: all ease .5s!important;
}

.mailpoet-manage-subscription > .mailpoet_paragraph {
	margin: 0 0 1rem 0;
}
.mailpoet-manage-subscription .mailpoet_text_label,
.mailpoet-manage-subscription .mailpoet_checkbox_label,
.mailpoet-manage-subscription .mailpoet_segment_label,
.mailpoet-manage-subscription .mailpoet_select_label {
	font-size: 1rem;
	font-weight: 600;
}

.mailpoet-manage-subscription .mailpoet_paragraph:has(.mailpoet_segment_label) {
	display: none;
}

.mailpoet_validate_success {
	color: var(--black)!important;
	border-radius: var(--radius)!important;
	border: 2px solid #7bdcb5!important;
	padding: 1rem!important;
	font-weight: 600!important;
}

.mailpoet_captcha_form {
	padding: 2rem 0!important;
}
.single-mailpoet_page .entry-content {
	min-height: 200px;
}


/* Utilities */
.hyphens {
	hyphens: auto
}

.small, small {
	font-size: .85rem;
}

#btn-to-top {
	width: 50px;
	height: 50px;
	font-size: 25px;
	line-height: 50px;
	padding: 0;
	position: fixed;
	z-index: 2000;
	bottom: 1.5rem;
	right: 1.5rem;
	display: none;
}

.aspect-ratio img.card-img {
	width: 100%!important;
	height: 100%!important;
	object-fit: cover;
}
.aspect-ratio-1-1 {
	aspect-ratio: 1 / 1;
}
.aspect-ratio-2-1 {
	aspect-ratio: 2 / 1;
}
.aspect-ratio-3-1 {
	aspect-ratio: 3 / 1;
}
.aspect-ratio-4-3 {
	aspect-ratio: 4 / 3;
}
.aspect-ratio-3-4 {
	aspect-ratio: 3 / 4;
}

.sticky.is-sticky {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	z-index: 1000;
	width: 100%;
}

:focus-visible {
    outline: none;
}
.navbar-toggler:focus {
    box-shadow: none;
}
.form-select:focus,
.form-select:hover {
	border-color: var(--orange);
	outline: 0;
	box-shadow: none;
}
.form-select option:hover {
  background-color: var(--orange);
  color: var(var(--white))
}
.form-select-lg {
	font-size: 1.1rem;
}

/* HubSpot */
.hs-form-html {
	margin: 0!important;
}
.hs-form-html .hsfc-Step__Content {
	padding: 1rem 0!important;
}
.hs-form-html .hsfc-TextInput {
	border-radius: var(--radius)!important;
	border: 1px solid var(--darkgrey)!important;
	padding: .75rem 1rem!important;
	color: var(--darkgrey)!important;
	background-color: var(--white)!important;
}
.hs-form-html .hsfc-PhoneField .hsfc-PhoneInput__FlagAndCaret {
	border-top-left-radius: var(--radius)!important;
	border-top-right-radius: 0!important;
	border-bottom-left-radius: var(--radius)!important;
	border-bottom-right-radius: 0!important;
	background-color: var(--lightgrey)!important;
	border-right: 0!important;
}
.hs-form-html .hsfc-PhoneField .hsfc-TextInput {
	border-top-left-radius: 0!important;
	border-top-right-radius: var(--radius)!important;
	border-bottom-left-radius: 0!important;
	border-bottom-right-radius: var(--radius)!important;
}

.hs-form-html .hsfc-Button {
	background-color: var(--orange)!important;
	color: var(--white)!important;
	border-radius: var(--radius)!important;
	border: 1px solid var(--orange)!important;
	padding: .75rem 1rem!important;
	font-weight: 600!important;
	transition: all ease .5s!important;
}
.hs-form-html .hsfc-Button:hover {
	background-color: var(--orangehover)!important;
	color: var(--white)!important;
	border-radius: var(--radius)!important;
	border: 1px solid var(--orangehover)!important;
	padding: .75rem 1rem!important;
	font-weight: 600!important;
	transition: all ease .5s!important;
}
.hs-form-html .hsfc-NavigationRow {
	margin-top: 0!important;
}
.hs-form-html .hsfc-RichText {
	color: var(--darkgrey)!important;
	line-height: 1.2!important;
}

.w-max-720 {
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}
.bg-half-white-lightgrey {
	position: relative;
}
.bg-half-white-lightgrey:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50%;
	background-color: var(--lightgrey);
	z-index: -1;
}

/* Posts */
.btn-collapse-toggle .icon {
	transition: all ease .3s;
	display: inline-flex;
}
div[aria-controls=tableofcontents][aria-expanded=false] .btn-collapse-toggle .icon {
	transform: rotate(180deg);
}
#tableofcontents a.active {
	text-decoration: underline!important;
}
#tableofcontents a:hover {
	color: var(--orange);
}

/* Pagination */
.pagination {
	white-space: nowrap;
}
.pagination .nav-links {
	display: flex;
	justify-content: center;
}
.pagination .page-numbers {
	width: 30px;
	height: 30px;
	padding: .125rem .5rem;
	display: flex;
	margin-right: .5rem;
	color: var(--darkgrey);
	background-color: var(--lightgrey);
	border-radius: .25rem;
	text-decoration: none;
	font-size: 1rem;
	justify-content: center;
	align-content: center;
	transition: all ease .3s;
}
.pagination .page-numbers:hover {
	color: var(--white);
	background-color: var(--black);
}
.pagination .current {
	color: var(--white);
	background-color: var(--orange);
}
.pagination .next,
.pagination .prev {
	width: auto;
}

/* Links */
a {
	text-underline-offset: 4px;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--black)
}
a:hover {
	text-decoration-color: var(--orange);
}

p.has-link-color.has-orange-color a {
	text-decoration: none;
}


/* Transitions */
a,
.wp-block-button__link {
	transition: all ease .3s;
}


/* Fade In Lazeloaded Content */
img[data-src] {
	opacity: 0;
}
img.lazyloaded {
	-webkit-transition: opacity .3s linear 0.15s;
	-moz-transition: opacity .3s linear 0.15s;
	transition: opacity .3s linear 0.15s;
	opacity: 1;
}




/* XXS */
@media screen and (max-width: 375px) {

	#header .logo {
		width: 100px;
	}
}


/* XS */
@media screen and (max-width: 575px) {
	
	.wp-block-group {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}	
	.wp-block-media-text .wp-block-media-text__content {
		padding: 1rem 0
	}
	.wp-block-group.is-layout-grid {
		display: block;
	}

	.wp-block-group.is-content-justification-center.is-nowrap .is-resized img[style]:not(:is(
		[src$=".svg" i],          /* …foo.svg */
		[src*=".svg?" i],         /* …foo.svg?ver=123 */
		[src^="data:image/svg+xml"],  /* data-URI */
		[srcset*=".svg" i],       /* srcset enthält .svg */
		[srcset^="data:image/svg+xml"]
		)) {
		width: auto!important;
		max-width: 100%!important;
		height: auto!important;
	}

	.wp-block-group.is-content-justification-center.is-nowrap:has(> figure:last-child:nth-child(2)) figure {
		max-width: 50%!important;
	}

}

/* XS-SM */
@media screen and (max-width: 767px) {

	.container-sm, .container {
		max-width: calc(100% - .5rem);
	}

	/* Mobile Tweacks */
	* {
	--wp--preset--spacing--60: 1.5rem;
	--wp--preset--spacing--50: 1.5rem;
	--wp--preset--spacing--80: 2rem;
	}
	#mailpoet_form_1 form.mailpoet_form {
		padding: 0!important;
	}
	.entry-content > .wp-block-group:first-child:has(.wp-block-image) > .wp-block-columns .wp-block-column:first-child,
	.entry-content > .wp-block-group:first-child:has(.wp-block-illustration) > .wp-block-columns .wp-block-column:first-child {
		order: 2;
	}
	.entry-content > .wp-block-group:first-child:has(.wp-block-image)> .wp-block-columns .wp-block-column:last-child,
	.entry-content > .wp-block-group:first-child:has(.wp-block-illustration) > .wp-block-columns .wp-block-column:last-child {
		order: 1;
	}

	.entry-content > .wp-block-group > .wp-block-columns.columns_mobile_fix {
		gap: 0!important;
	}
	.entry-content > .wp-block-group > .wp-block-columns > .wp-block-column > .wp-block-group.has-lightgrey-background-color:last-child {
		margin-bottom: 0!important;
	}
	.entry-content > .wp-block-group > .wp-block-columns > .wp-block-column > .wp-block-group.has-lightgrey-background-color .wp-block-buttons {
		flex-basis: 100%!important;
	}
	.entry-content > .wp-block-group > .wp-block-details > .wp-block-group.is-nowrap {
		flex-wrap: wrap!important;
	}
	.entry-content > .wp-block-group > .wp-block-details > .wp-block-group.is-nowrap > * {
		flex-basis: unset!important;
	}
	.entry-content > .wp-block-group > .wp-block-details > .wp-block-group.is-nowrap > .wp-block-image > img {
		object-fit: contain!important;
	}

	.wp-block-media-text__media { order: 0 !important; }
  	.wp-block-media-text__content { order: 1 !important; }

	.wp-block-columns:not(.is-style-framed) > .wp-block-column {
		order: 2; /* default = unten */
	}

	/* Spalten mit Bild oder Illustration zuerst */
	.wp-block-columns:not(.is-style-framed) > .wp-block-column:has(.wp-block-image),
	.wp-block-columns:not(.is-style-framed) > .wp-block-column:has(.wp-block-illustration) {
		order: 1;
	}

	.wp-block-group.is-nowrap.has-lightgrey-background-color:has(.wp-block-buttons) {
		flex-wrap: wrap!important;
	} 

	.taktiq_mission {
		flex-direction: column;
	}
	.taktiq_mission hr {
		transform: rotate(90deg);
		width: 40px!important;
	}
	.taktiq_mission > .wp-block-group:last-child {
		max-width: 50%!important;
	}

	.taktiq_testimonial {
		flex-wrap: wrap!important;
		gap: 0!important
	}
	.taktiq_testimonial > .wp-block-group {
		padding: 1rem!important;
	}
	.taktiq_testimonial figure {
		flex-basis: 100%!important;
		margin: 0!important;		
	}
	.taktiq_testimonial  img {
		width: 100%!important;
		height: auto!important;
		border-bottom-left-radius: 0!important;
		border-bottom-right-radius: 0!important;
	}

	.single-release .wp-block-group.has-white-background-color {
		padding: 1rem!important;
	}

	.wp-block-gallery:has(figure:nth-child(3)) {
		gap: 1rem!important;
	}
	.wp-block-gallery:has(figure:nth-child(3)) > figure {
		width: calc(33% - var(--wp--style--unstable-gallery-gap, 16px)/2)!important;
	}

}


/* XS-MD */
@media screen and (max-width: 991px) {
	#main_nav {
		overflow-y: auto;
	}	
	#main_nav_navbar > li {
		padding: .5rem 0
	}
	#main_nav_navbar > li > a {
		font-weight: 500;
	}
	#main_nav_navbar .dropdown-menu {
		height: 0;
		overflow: hidden;
	}
	#main_nav_navbar .dropdown-menu.show  .dropdown-menu {
		opacity: 1;
		height: auto;
	}
	#main_nav .dropdown-menu.show > li > a { /* Spaltentitel mobil */
		background-color: var(--lightgrey);
		display: inline-block;
		color: var(--darkgrey);
		width: auto;
		border-radius: var(--radius);
		pointer-events: none;
		padding: .25rem 1rem;
		margin: 1rem 0;
	}
	#main_nav_navbar .dropdown-menu.show  .dropdown-menu li a {
		padding: .25rem 0;
		font-size: 1rem;
	}
	#main_nav_navbar .dropdown-menu.show {
		height: auto;
	}

	#service_nav_navbar > li:first-child a { /* DL */
		padding-left: 0;
		padding-top: 1rem;
		font-weight: 500;
		font-size: 1.1rem;
		color: var(--black);
		margin-bottom: 1rem;
		margin-top: 0;
		border-top: 1px solid var(--darkgrey);
	}

	.grid_benefits > .wp-block-group,
	.grid_testimonials > .wp-block-group {
		margin-bottom: 1rem!important;
	}
	.grid_testimonial > .wp-block-group {
		gap: 0!important;
	}
	.grid_benefits {
		display: block!important;
	}
	.grid_benefits + .grid_benefits {
		margin-top: 0!important
	}
	
	
}

/* XS-LG */
@media screen and (max-width: 1199px) {

	.grid_benefits > .wp-block-group > .wp-block-group {
		padding-left: 0!important;
		padding-right: 0!important;
	}
}

/* XS-XXL++ */
@media screen and (max-width: 1599px) {

	/* Hyphens */
	h1, h2, h3, h4, .has-h-1-font-size, .has-h-2-font-size, .has-h-3-font-size, .has-h-4-font-size {
		hyphens: auto;
		-webkit-hyphenate-limit-chars: 15 8 7; /* Safari */
		-ms-hyphenate-limit-chars:  15 8 7;     /* alter IE */
		hyphenate-limit-chars: 15 8 7;         /* Standard */

		-webkit-hyphenate-limit-before: 8;
		-webkit-hyphenate-limit-after: 7;
	}
}

/* SM-LG */
@media screen and (min-width: 576px) and (max-width: 991px) {

	/*.container {
		max-width: unset;
	}*/

}


/* SM+ */
@media screen and (min-width: 576px) {	

	#header .logo {
		width: 140px;
	}

	.entry-content > .wp-block-cover:first-child + .wp-block-group {
		padding-top: 3rem;
	}

}


/* MD+ */
@media screen and (min-width: 768px) {

	.container-md, .container-sm, .container {
		max-width: calc(100% - 2rem);
	}

	.wp-block-group {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}	

}



/* LG+ */
@media screen and (min-width: 992px) {

	.container-lg, .container-md, .container-sm, .container {
		max-width: calc(100% - 2rem);
	}

	.wp-block-group {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}	

	#header.is-sticky {
		box-shadow: 0px 5px 75px rgba(0, 0, 0, 0.075);
	}

	.navbar {
		position: relative;
	}

	#main_nav {
		position: static;
		box-shadow: none;
		background-color: transparent;
	}

	#main_nav_navbar > li:not(:last-child) {
		border-bottom: none;
	}

	#main_nav .dropdown-menu {
		box-shadow: 0px 5px 20px rgba(0,0,0,.1);
		pointer-events: none;
	}
	#main_nav .dropdown-menu.show {
		pointer-events: unset;
	}
	#main_nav_navbar > li > ul > li > a {
		--bs-dropdown-item-padding-x: 1rem;
	}
	#main_nav .dropdown-menu > li:first-child > a {
		border-top-left-radius: 1rem;
		border-top-right-radius: 1rem;
	}	
	#main_nav .dropdown-menu > li.:last-child > a {

	}
	#main_nav .dropdown-menu > li:first-child > a {
		padding-top: 1rem;
	}
	#main_nav .dropdown-menu > li:last-child > a {
		padding-bottom: 1rem;
	}

	/* Mega Mega */
	#main_nav ul.nav > li > ul.dropdown-menu {
		left: -3rem;
		right: -3rem;
		top: 100%;
		margin-top: 0;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		border-left: 1px solid var(--midgrey);
		border-right: 1px solid var(--midgrey);
		border-bottom: 1px solid var(--midgrey);
		padding: 2rem 3rem;
		box-shadow: none;
		display: flex;
		gap: 4rem;
		justify-content: space-between;
		/*transform: translateY(-400px);*/
		transition: opacity ease .5s;
	}
	#main_nav ul.nav > li > ul.dropdown-menu.show {
		margin-top: 0;
		/*transform: translateY(0);*/
		transition: opacity ease .3s;
	}
	#main_nav .dropdown-menu.show li {
		flex: 1 1 auto;
		min-width: 0;
	}
	#main_nav_navbar > li > ul > li.active > a {
		font-weight: 400;
	}
	#main_nav .dropdown-toggle:focus {
		background-color: var(--lightgrey);
		border-radius: var(--radius);
	}
	#main_nav #main_nav_navbar > li.current-menu-ancestor > a,
	#main_nav #main_nav_navbar > li.current-menu-item > a {
		font-weight: 600!important;
	}
	#main_nav #main_nav_navbar > li > ul > li > ul > li.current-menu-item > a {
		font-weight: 700!important;
	}
	#main_nav .dropdown-menu.show > li > a { /* Spaltentitel */
		/*border-bottom: 1px solid var(--darkgrey);*/
		background-color: var(--lightgrey);
		display: inline-block;
		color: var(--darkgrey);
		width: auto;
		border-radius: var(--radius);
		pointer-events: none;
		padding: .25rem 1rem;
		margin-bottom: 1rem;
	}
	#main_nav .dropdown-menu.show ul {
		display: block;
		position: relative;
		opacity: 1;
		box-shadow: none;
		border-radius: 0;
		transition: none;
	}
	#main_nav .dropdown {
		position: unset;
	}
	#main_nav .dropdown-menu.show > li > ul > li > a { /* Sub-Navi */
		padding: .5rem 0;
		pointer-events: all;
		line-height: 1;
		font-weight: 500;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	#main_nav .dropdown-menu.show > li > ul > li > a:hover {
		border-radius: 0;
		color: var(--orange);
		background-color: transparent;
	}

	/* Sitemap */
	#footer_sitemap_nav > ul > li > ul {
		gap: 1rem
	}
	#footer_sitemap_nav > ul > li > a {
		font-size: 1.1rem;
		padding-left: 0;
		font-weight: 400;
		margin-bottom: .5rem;
		padding-top: 0;
		display: none;
	}
	#footer_sitemap_nav > ul > li > ul > li > a { /* Spaltentitel */
		background-color: var(--darkgrey);
		display: inline-block;
		color: var(--midgrey);
		width: auto;
		border-radius: var(--radius);
		pointer-events: none;
		padding: .25rem 1rem;
		margin-bottom: 0;
	}

	#footer_sitemap_nav > ul > li > ul > li > ul {
		margin-top: 1rem
	}

	#footer_sitemap_nav > ul > li > ul > li > ul > li > a { /* Sub-Navi */
		padding: .5rem 0;
		pointer-events: all;
		line-height: 1;
		font-weight: 500;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	#footer_sitemap_nav .menu-icon {
		display: inline-block;
		height: 22px;
		width: 22px;
		margin-right: .5rem;
		border-radius: var(--radius-sm);
		background-color: var(--white);
	}

	.accordion-icon {
		height: 45px;
	}
	.accordion_job_details .accordion-icon {
		height: 80px
	}

	*:not(.wp-block-column) > .wp-block-media-text.is-image-fill-element>.wp-block-media-text__media {
		min-height: 400px;
	}

}

/* LG-Tablet */
@media screen and (min-width: 992px) and (max-width: 1024px) {


}


/* XL+ */
@media screen and (min-width: 1200px) {

	.container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: calc(100% - 2rem);
	}

	.wp-block-group {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}

	.wp-block-media-text.has-background .wp-block-media-text__content {
		padding: 2rem;
	}

	#header .logo {
		width: 180px;
	}

	/* General Alignment */
	body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
	.wp-block-cover__inner-container > :where(:not(.alignleft):not(.alignright):not(.alignfull))  {
		max-width: var(--wp--style--global--content-size);
		margin-left: auto !important;
		margin-right: auto !important;
	}
	body .is-layout-constrained > .alignwide,
	.wp-block-cover__inner-container > .alignwide {
		max-width: var(--wp--style--global--wide-size);
		margin-left: auto !important;
		margin-right: auto !important;
	}

	#main .alignwide_overflow {
		margin-right: 0 !important;
		margin-left: calc(((100% - 1296px)/2)) !important;
		padding-right: 0 !important;
		max-width: none !important;
		overflow-x: auto;
	}

}

/* XL - XXL */
@media screen and (min-width: 1352px) and (max-width: 1599px)  {

	.container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1320px;
	}
}

/* XXL+ */
@media screen and (min-width: 1400px) {	

	.wp-block-group > .wp-block-columns.is-layout-flex {
		gap: 2.5rem;
	}

	.wp-block-group {
		padding-top: 6rem;
		padding-bottom: 6rem;
	}	

}

/* XXL++ */
@media screen and (min-width: 1600px) {	

	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1320px;
	}

	.wp-block-group > .wp-block-columns.is-layout-flex {
		gap: 3.5rem;
	}

	:root :where(.wp-block-group) {
		padding-top: 8rem;
		padding-bottom: 8rem;
	}

}

/* XXXL++ */
@media screen and (min-width: 1800px) {	

	.wp-block-group > .wp-block-columns.is-layout-flex {
		gap: 4.5rem;
	}
	
	:root :where(.wp-block-group) {
		padding-top: 9rem;
		padding-bottom: 9rem;
	}

}

/* XXXXL++ */
@media screen and (min-width: 2000px) {	

	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1620px;
	}

	:root {
		--wp--style--global--content-size: 1100px;
		--wp--style--global--wide-size: 1596px;
	}

	:root :where(.wp-block-group) {
		padding-top: 6.5rem;
		padding-bottom: 6.5rem;
	}

}


/* Safari 13: gap / :where Fix TODO! */
/* TEST IT! */

html.cssgridlegacy .is-layout-flex > * {
	margin-left: 1rem;
	margin-right: 1rem;
}
html.cssgridlegacy .is-layout-constrained > *:not(.alignleft):not(.alignright):not(.alignfull) {
	max-width: var(--wp--style--global--content-size);
	margin-left: auto !important;
	margin-right: auto !important;
}
html.cssgridlegacy .is-layout-constrained > *.alignwide {
	max-width: var(--wp--style--global--wide-size)!important;
}
html.cssgridlegacy .is-layout-constrained > *.alignfull {
	max-width: unset;
}