/*
Theme Name: Knorke Theme Child
Theme URI: 
Author: Knorke Media GmbH
Author URI: 
Description: 
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: knorke-theme
Text Domain: knorke-theme-child
Tags: 
*/

html { scroll-behavior: smooth; margin-top: 0!important; }
:root :where(.is-layout-constrained) > * {
    margin-block-start: 0!important;
}
.entry-content { margin: 0; }
header .wp-block-navigation-item {
	padding-bottom: 8px!important;
    border-bottom: 3px solid transparent;
    margin-top: 11px;
}
header .wp-block-navigation-item.current-menu-item,
header .wp-block-navigation-item:hover {
    border-bottom: 3px solid #F15779;
}
#headerSticky {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 999;
}
#headerSticky.sticky {
    position: fixed!important;
    top: 0;
    width: 100%;
    z-index: 999;
	box-shadow: 0 5px 30px -10px #123f524d !important;
}

@media (max-width: 1199px){
	.menu-desktop { display: none; }
}

@media (min-width: 1200px){
	.menu-mobile { display: none!important; }
}



footer a {
	color: #ffffff!important;
}
a:-webkit-any-link {
	color: inherit!important;
}
footer a:hover,
a:-webkit-any-link:hover,
.stk-block-button--style-footer-link a:hover{
	text-decoration: none;
}
.stk-block-button--style-footer-link a {
	text-decoration: underline;
	color: #ffffff!important;
}
.stk-block-timeline__date {
	height: 259px;
    display: flex;
    justify-content: end;
    padding: 0px 25px;
    top: 18px;
    position: relative;
}
.step-nr {
	width: 40px;
    height: 40px;
    background: white;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 26px;
    font-weight: bold;
}
.bl-badge { display: flex; }
.bl-badge .stk-block-column {
	width: 140px;
    height: 140px;
}

@media (max-width: 1024px){
	.stk-block-timeline__date {
		height: 183px;
		padding: 0px 12px;
		top: 12px;
	}
	.step-nr {
		width: 32px;
		height: 32px;
		font-size: 22px;
	}
}
@media (max-width: 768px){
	.bl-badge .stk-block-column {
		width: 110px;
		height: 110px;
	}
}
@media (max-width: 767px){
	.stk-block-timeline__date {
		height: 100%;
        padding: 0;
        top: 12px;
        aspect-ratio: 5 / 3;
	}
	.step-nr {
        margin-right: 8px;
    }
	.stk-block-timeline--left .stk-block-timeline__middle {
		grid-column: auto;
	}
}

/* Contact form */
input[type="text"],
input[type="email"],
input[type="tel"], 
textarea {
	width: 100%;
	border-radius: 0!important;
	border: 2px solid #f8f5ee;
	font-family: 'Bricolage Grotesque 96pt ExtraBold';
	font-size: 21px;
	color: #2E3192!important;
	font-weight: 600!important;
}
input[type="text"]:focus-visible,
input[type="email"]:focus-visible,
input[type="tel"]:focus-visible, 
textarea:focus-visible {
	outline: 2px solid #2E3192;
}
#contact-form {
	display: flex;
    flex-direction: column;
    gap: 12px;
}
#contact-form input:not([type="checkbox"]),
#contact-form textarea {
	padding: 16px 32px;
}
#contact-form .row {
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
}
#contact-form .row .col {
	display: flex;
    flex-direction: column;
    margin: 0 auto;
    flex-grow: 1;
	padding: 0;
	max-width: 100%!important;
}
#contact-form .row .col p {
	margin: 0!important;
}
#contact-form .row .col p span {
	display: flex;
	width: auto;
}
.wpcf7-not-valid {
	border: 2px solid #F15779!important;
}
input::placeholder, 
textarea::placeholder {
	color: #8182A3!important;
	font-weight: 600!important;
}
.wpcf7-not-valid-tip {
	display: none!important;
}
textarea {
	height: 136px;
}
.wpcf7-checkbox .wpcf7-list-item {
	margin: 0;
}
.wpcf7-acceptance label {
	display: flex;
    flex-direction: row;
}
.wpcf7-acceptance label span.wpcf7-list-item-label {
	display: block!important;
}
.wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}
input[type="checkbox"] {
	appearance: none;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 16px;
    max-width: 16px;
    max-height: 16px;
    border: 1px solid #030547;
    border-radius: 0;
    margin-top: 4px;
	margin-right: 8px;
    margin-left: 0;
    margin-bottom: 0;
}
input[type="checkbox"]::before {
    content: url(./assets/icons/check.svg);
	width: 100%;
    height: 100%;
    transform: scale(0);
    transition: 120ms transform ease-in-out;
}
input[type="checkbox"]:checked::before {
    transform: scale(1);
}
.submit-btn p {
	text-align: end;
}
.wpcf7-submit {
	font-size: 21px;
	background-color: #F15779;
    border: 2px solid #F15779;
	color: #ffffff;
	cursor: pointer!important;
}
.wpcf7-submit:disabled{
 	background-color: #EEECE8;
    border: 2px solid #EEECE8;
	color: #030547;
	cursor: not-allowed!important;
}
.wpcf7-spinner {
	display: none!important;
}

@media (max-width: 1200px){
	input[type="text"],
	input[type="email"],
	input[type="tel"], 
	textarea {
		font-size: 18px;
	}
}

/* Marquee styles */
@keyframes marquee-left {
	0% { transform: translateX(0%); }
	100% { transform: translateX(-100%); }
}

@keyframes marquee-right {
	0% { transform: translateX(-100%); }
	100% { transform: translateX(0%); }
}

.is-style-marquee {
	overflow: hidden;
	white-space: nowrap;
	position: relative;
}

.is-style-marquee > .wp-block-group {
	display: inline-flex;
	gap: 2rem;
	min-width: max-content;
	align-items: center;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	  
}

.is-style-marquee.direction-left > .wp-block-group {
  	animation-name: marquee-left;
}

.is-style-marquee.direction-right > .wp-block-group {
  	animation-name: marquee-right;
}
.is-style-marquee.speed-normal > .wp-block-group {
  	animation-duration: 35s;
}
.is-style-marquee h2 {
	flex-shrink: 0;
	margin: 0;
	font-size: 2rem;
}

/* TIMELINE */
@media (max-width: 767px){
	.stk-block-timeline {
		background-position: 63px 0!important;
	}
	.stk-0ff7d31.stk-block-timeline > .stk-inner-blocks::after {
		top: 20px !important;
		height: 900px !important;
	  }

  .stk-block-timeline + .stk-block-timeline > .stk-inner-blocks::after {
    top: -16px !important;
    height: 900px !important;
  }

  .stk-block-timeline.stk-is-last > .stk-inner-blocks::after {
    height: 40px !important;
    top: -16px !important;
  }

  :is(.stk-0ff7d31, .stk-7b26abc, .stk-ccea0be, .stk-3191c90, .stk-888e9d1) .stk-inner-blocks::after {
    top: -16px !important;
  }

  .stk-0ff7d31.stk-block-timeline > .stk-inner-blocks::after {
    top: 20px !important;
  }

  :is(.stk-0ff7d31, .stk-7b26abc, .stk-ccea0be, .stk-3191c90, .stk-888e9d1, .stk-88b1b23) .stk-block-timeline__middle {
    margin-top: 0px !important;
  }

}

