/*
Theme Name: feinbaeckerei-thume
Theme URI: https://feinbaeckerei-thume.de/
Template: hello-elementor
Author: Sergiy Pereyaslavskyy
Author URI: https://sigmacreativity.com/
Version: 1.0.1.1
Updated: 2025-04-14 11:47:22

*/

@font-face {
  font-family: 'font-accent';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/accent-font.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Jost';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/Jost-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/*
@font-face {
  font-family: 'Poppins';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/Poppins-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/Poppins-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Poppins';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/Poppins-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
*/
@font-face {
  font-family: 'Montserrat Alternates';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/MontserratAlternates-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat Alternates';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/MontserratAlternates-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat Alternates';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/MontserratAlternates-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat Alternates';
  src: url('/wp-content/themes/feinbaeckerei-thume/fonts/MontserratAlternates-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}


body, .montserrat {
  font-family: 'Montserrat Alternates', sans-serif;
}

h1, h2, h4, .jost{
  font-family: 'Jost', sans-serif;
  font-weight: 700;
  letter-spacing: -.05em;
}

h3, .font-accent{
   font-family: 'font-accent', sans-serif;	
   font-weight: 400;
}

:root {
    --padding-title: 120px;
    --padding-l: 80px;
    --padding-m: 50px;
    --padding-s: 15px;
	--border-radius-s: 2px;
	--border-radius-m: 4px;
	--border-radius-l: 8px;
}
div.padding-title, div.padding-vl {
    padding-top: var(--padding-m);
    padding-bottom: var(--padding-m);
}
div.padding-vs, div.padding-vm {
    padding-top: var(--padding-s);
    padding-bottom: var(--padding-s);
}
div.padding-fl, div.padding-fm, div.padding-fs {
    padding: var(--padding-s);
}
@media screen and (min-width: 768px) {
    div.padding-vl {
        padding-top: var(--padding-l);
        padding-bottom: var(--padding-l);
    }
    div.padding-vm {
        padding-top: var(--padding-m);
        padding-bottom: var(--padding-m);
    }
    div.padding-title {
        padding-top: var(--padding-title);
        padding-bottom: var(--padding-title);
    }
    div.padding-fl {
        padding: var(--padding-l);
    }
    div.padding-fm {
        padding: var(--padding-m);
    }
}
div .fadeInLeft {
    animation-name: newfadeInLeft;
}
div .fadeInRight {
    animation-name: newfadeInRight;
}
div .fadeInUp {
    animation-name: newfadeInUp;
}
div .fadeInDown {
    animation-name: newfadeInDown;
}
@keyframes newfadeInLeft {
    from {
        opacity: 0;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: translate3d(-10%, 0, 0);
    }
    to {
        opacity: 1;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: none;
    }
}
@keyframes newfadeInRight {
    from {
        opacity: 0;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: translate3d(10%, 0, 0);
    }
    to {
        opacity: 1;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: none;
    }
}
@keyframes newfadeInUp {
    from {
        opacity: 0;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: translate3d(0, 10%, 0);
    }
    to {
        opacity: 1;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: none;
    }
}
@keyframes newfadeInDown {
    from {
        opacity: 0;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: translate3d(0, -10%, 0);
    }
    to {
        opacity: 1;
        animation-timing-function: cubic-bezier(0.6, 0.2, 0.3, 1);
        transform: none;
    }
}
body .sc-flex-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
body .sc-flex-col {
    width: 100%;
    padding: 10px;
}
@media screen and (min-width: 768px) {
    body .sc-flex-col-16 {
        width: 16%;
    }
    body .sc-flex-col-25 {
        width: 25%;
    }
    body .sc-flex-col-30 {
        width: 30%;
    }
    body .sc-flex-col-33 {
        width: 33%;
    }
    body .sc-flex-col-40 {
        width: 40%;
    }
    body .sc-flex-col-50 {
        width: 50%;
    }
    body .sc-flex-col-60 {
        width: 60%;
    }
    body .sc-flex-col-67 {
        width: 67%;
    }
    body .sc-flex-col-75 {
        width: 75%;
    }
    body .sc-flex-col-84 {
        width: 84%;
    }
    body .sc-flex-col-100 {
        width: 100%;
    }
}
body .align-center {
    -ms-flex-align: center;
    align-items: center;
}
body .justify-center {
    -ms-flex-pack: center;
    justify-content: center;
}
@media screen and (max-width: 768px) {
    body .align-center-mobile {
        -ms-flex-align: center;
        align-items: center;
    }
    body .justify-center-mobile {
        -ms-flex-pack: center;
        justify-content: center;
    }
}




/****** SITEWIDE ******/
a {
    color: var(--e-global-color-secondary);
}
.comments-area a, .page-content a {
    text-decoration: none;
}

/**/
.sc-carousel .elementor-image-carousel .swiper-slide img{
	height: 40vh;
    object-fit: cover;
}
.sc-carousel-two .elementor-image-carousel .swiper-slide img{
	height: 250px;
    object-fit: cover;
}

.sc-gallery .gallery-item img{
	height: 25vw;
    object-fit: cover;
}

@media screen and (max-width: 768px) {
.sc-gallery .gallery-item img{
	height: 50vw;
}	
}

.text-center{
	text-align: center;
}


/**/
.elementor-button{
    color: var(--e-global-color-secondary);	
	background-color: var(--e-global-color-primary);
	border: 2px solid var(--e-global-color-primary);
    border-radius: var(--border-radius-s);
    padding: 16px 24px;
	position: relative;
}
.elementor-button:visited {
    color: var(--e-global-color-secondary);	
}
.elementor-button:hover, .elementor-button:focus{
    color: var(--e-global-color-primary);
	background-color: var(--e-global-color-secondary);
	border-color: var(--e-global-color-secondary);
    transform: scale(1.1);	
}


.sc-button-two .elementor-button{
    color: var(--e-global-color-primary);
	background-color: var(--e-global-color-secondary);
	border: 2px solid var(--e-global-color-secondary);
}
.sc-button-two .elementor-button:hover{
    color: var(--e-global-color-secondary);	
	background-color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
}

.sc-button-light .elementor-button{
    background-color: var(--e-global-color-a7c0767);
    border-color: var(--e-global-color-a7c0767);
}
.sc-button-light .elementor-button:hover{
    background-color: var(--e-global-color-a7c0767);
    border-color: var(--e-global-color-a7c0767);
    color: var(--e-global-color-accent);
}

.sc-button-dark .elementor-button{
    background-color: var(--e-global-color-text);
    border-color: var(--e-global-color-text);
    color: var(--e-global-color-primary);
}
.sc-button-dark .elementor-button:hover{
    background-color: var(--e-global-color-accent);
    border-color: var(--e-global-color-accent);
    color: var(--e-global-color-a7c0767);
}




.sc-button-style-one .elementor-button{
	background-color: var(--e-global-color-primary);
    color: var(--e-global-color-secondary);	
	border-color: var(--e-global-color-primary);
}
.sc-button-style-one .elementor-button::before{
    content: "";
    width: calc(100% + 12px);
    height: calc(100% + 12px);
    position: absolute;
    top: -6px;
    left: -6px;
    border: 1px solid var(--e-global-color-primary);
    transition: .3s;
}
.sc-button-style-one .elementor-button:hover{
	background-color: var(--e-global-color-secondary);	
    color: var(--e-global-color-primary);
	border-color: var(--e-global-color-secondary);		
}
.sc-button-style-one .elementor-button:hover::before{
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-color: var(--e-global-color-secondary);	
}


.sc-button-simple .elementor-button{
    background: transparent;
    border: none;
    padding: 0;	
}
.sc-button-simple .elementor-button:hover, .sc-button-simple .elementor-button:focus{
	transform: none;
	background: transparent;
}
.sc-button-simple .elementor-button .elementor-button-icon{
    transition: .3s;
}
.sc-button-simple .elementor-button:hover .elementor-button-icon{
    transform: translateX(10px);	
}


/**/
.hover-box:before{
	transition: .5s;
}
.hover-box:hover:before{
	transform: scale(1.1);
	transition: .5s;
}
.hover-box .elementor-widget-heading .elementor-heading-title{
	z-index: 10;
	position: relative;
}
.hover-box:after{
    content: "";
    width: 200px;
    height: 200px;
    position: absolute;
	background-color: var(--e-global-color-primary);
    border-radius: 50%;
    top: calc(50% - 100px);
    left: calc(50% - 100px);
    z-index: 5;
	opacity: .5;
	transition: .5s;
}
.hover-box:hover:after{
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
	background-color: var(--e-global-color-secondary);
	opacity: .5;
	border-radius: 0;
}
.hover-box .elementor-widget-heading .elementor-heading-title:after{
    content: "";
    width: 80px;
    height: 2px;
    position: absolute;
    background: var(--e-global-color-primary);
    bottom: 10px;
    left: calc(50% - 40px);
    opacity: 0;
    transition: .3s;
}
.hover-box:hover .elementor-widget-heading .elementor-heading-title:after{
    opacity: 1;
    transform: translateY(20px);
}

/**/
.gsap-fade-up.elementor-element, .gsap-fade-down.elementor-element, .gsap-fade-left.elementor-element, .gsap-fade-right.elementor-element, .gsap-zoom-in.elementor-element, .gsap-zoom-out.elementor-element, .gsap-rotate.elementor-element{
transition-duration: initial;
    transition-delay: initial;
}


/**/
.text-wrap-balance{
    text-wrap: balance;	
}

.elementor-element.sc-position-sticky{
	position: sticky;
	position: -webkit-sticky;
	top: 50px;
}

/* kenburns effect on slider 
.kenburns-container .swiper-slide-active > .e-con {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.kenburns-container .swiper-slide-active > .e-con::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: inherit;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: -1;
  transform: scale(1);
  animation: kenburns-zoom 12.5s ease-in-out infinite;
}

@keyframes kenburns-zoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}
*/

/****** HEADER ******/	
.hfe-nav-menu__layout-horizontal {
    width: 100% !important;
}
header .hfe-nav-menu li a{
	transition:.3s;
	border-radius:  var(--border-radius-s);
}



/****** FOOTER ******/	



/****** CONTACT FORM /******/
.wpcf7 label {
    width: 100%;
	line-height: 1.5em;
}
.wpcf7 br{
	display: none;
}
.wpcf7  .wpcf7-list-item {
    margin: 0;
}

.wpcf7 input[type=date], .wpcf7 input[type=email], .wpcf7 input[type=number], .wpcf7 input[type=password], .wpcf7 input[type=search], .wpcf7 input[type=tel], .wpcf7 input[type=text], .wpcf7 input[type=url], .wpcf7 select, .wpcf7 textarea {
    border: none;
    border-bottom: 2px solid #d6dbcb;
    background: #fff;
    border-radius: 0;
    padding: 1rem;
}
.wpcf7 input[type=date]:focus, .wpcf7 input[type=email]:focus, .wpcf7 input[type=number]:focus, .wpcf7 input[type=password]:focus, .wpcf7 input[type=search]:focus, .wpcf7 input[type=tel]:focus, .wpcf7 input[type=text]:focus, .wpcf7 input[type=url]:focus, .wpcf7 select:focus, .wpcf7 textarea:focus {
    outline: none;
    border-bottom: 2px solid var(--e-global-color-primary);
}

.sc-upload {
    background: #fff;
    padding: 20px;
    margin: 8px 0;
    height: 100px;
    border: 2px dashed var(--e-global-color-b906d91);
    border-radius: 2px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
}
.sc-upload:focus, .sc-upload:hover {
    border: 2px dashed var(--e-global-color-primary);
}
.sc-upload svg {
    width: 20px;
    height: 20px;
    margin-right: 15px;
    fill: var(--e-global-color-secondary);
}
.sc-upload-input, .sc-upload-lebenslauf{
    display: none !important;
}
.wpcf7 #sc-form .wpcf7-not-valid-tip {
    margin-top: 10px;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    background: #46b450;
    text-align: center;
    color: #fff;
}

/* quiz */

.sc-quiz-title {
    text-align: center;
}
.sc-quiz-title h3 {
    color: var(--e-global-color-5f9f2e8);
    font-size: var(--e-global-typography-8e9e3d9-font-size);	
}
.sc-quiz-title p {
    font-size: var(--e-global-typography-primary-font-size);
}

.sc-quiz-checkbox .wpcf7-checkbox, .sc-quiz-checkbox .wpcf7-radio {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 10px;
    column-gap: 10px;
    -ms-flex-pack: center;
    justify-content: center;
}
.sc-quiz-checkbox .wpcf7-list-item {
    display: -ms-flexbox;
    display: flex;
    margin: 0;
}
body .sc-quiz-checkbox .wpcf7-list-item label {
    width: 450px;
    max-width: 100%;
    min-height: 325px;
	padding: 20px;
	color: #ffffff;
    display: -ms-flexbox;
    display: flex;
    background-color: var(--e-global-color-1c1631b);
    background-size: cover;
    background-position: center;
	border-radius: 4px;
    cursor: pointer;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-pack: start;
    justify-content: flex-start;
    position: relative;
    overflow: hidden;
    transition: 0.3s;
}
@media screen and (max-width: 768px) {
body .sc-quiz-checkbox .wpcf7-list-item label {
    max-width: 330px;
    min-height: 280px;
}
}
body .sc-step-one .sc-quiz-checkbox label:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgb(0 0 0 / 20%);
    transition: 0.3s;
	top: 0;
	left: 0;
}

.sc-quiz-checkbox .wpcf7-list-item label input {
    display: none;
}
.sc-quiz-checkbox .wpcf7-list-item-label {
    font-size: var(--e-global-typography-secondary-font-size);
    max-width: 100%;
    z-index: 100;
    transition: 0.3s;
}
body .sc-step-one .sc-quiz-checkbox label:hover:before {
    background: rgb(0 0 0 / 40%);
}
body .sc-step-two .sc-quiz-checkbox .wpcf7-list-item label, body .sc-step-three .sc-quiz-checkbox .wpcf7-list-item label{
	background-size: 100%;
    width: 365px;
    min-height: 325px;
}
@media screen and (max-width: 768px) {
body .sc-step-two .sc-quiz-checkbox .wpcf7-list-item label, body .sc-step-three .sc-quiz-checkbox .wpcf7-list-item label{
	background-size: 100%;
    width: 330px;
    min-height: 280px;
}	
}


body .sc-step-two .sc-quiz-checkbox .wpcf7-list-item label:hover, body .sc-step-three .sc-quiz-checkbox .wpcf7-list-item label:hover{
	background-size: 110%;
}
.sc-quiz-checkbox .wpcf7-list-item-label:after {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    top: 10px;
    right: 10px;
    box-shadow: 0 0 0 2px #ffffff inset;
    border-radius: 50%;
    transition: 0.3s;
}
.sc-quiz-checkbox input:checked + .wpcf7-list-item-label:after {
    content: url("/wp-content/uploads/2025/05/chekbox-eight.svg");
    box-shadow: 0 0 0 2px #ffffff inset;
}
.sc-quiz .wpcf7-date, .sc-quiz .wpcf7-date:active, .sc-quiz .wpcf7-date:focus {
    background: var(--e-global-color-1c1631b);
}
.sc-quiz-date .wpcf7-form-control-wrap, .sc-quiz-date .wpcf7-form-control-wrap:focus {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
}

.wpcf7-form .fieldset-cf7mls .cf7mls-btns {
    display: -ms-flexbox;
    display: flex;
    row-gap: 10px;
    column-gap: 10px;
    -ms-flex-pack: center;
    justify-content: center;
}
.wpcf7-form .cf7mls-btns .cf7mls_next {
    background: var(--e-global-color-primary);
	border: 1px solid var(--e-global-color-primary);
    transition: 0.3s;
}
.wpcf7-form .cf7mls-btns .cf7mls_next:hover {
    color: var(--e-global-color-primary);
    background-color: var(--e-global-color-20a964a);
}

.cf7mls-btns .cf7mls_next.action-button, .cf7mls-btns .cf7mls_back.action-button {
    padding: 10px 24px;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: .4px;
    border-radius: 0;
}


.cf7mls-btns .cf7mls_back.action-button {
    border: 1px solid var(--e-global-color-primary);
    color: var(--e-global-color-secondary);
    background-color: transparent;
}


.cf7mls-btns .cf7mls_back.action-button :hover, .cf7mls-btns .cf7mls_next.action-button:hover{
     animation: button0pulse 1s infinite ease-out;
 }
 
 .cf7mls-btns .cf7mls_next.action-button:hover{
	border: 1px solid var(--e-global-color-primary);
    background-color: var(--e-global-color-primary);
	color: #fff;
}


/****** MAP ******/
.wpgmza_infowindow_address{
	display: none;
}

.wpgmza_infowindow_description h3{
	font-size: 2.5em;
    color: var(--e-global-color-5f9f2e8);
}

.wpgmza_infowindow_description p {
    font-size: 1rem;
    color: var(--e-global-color-04417dc);
    line-height: 1.5em;
}




/****** Fachgeschaefte | filiale ******/
.sc-filiale{
	overflow: hidden;
	border-radius: 2px;
}
.e-con.sc-filiale-description, .e-con.sc-filiale-footer{
	padding: 5px 20px 25px;
	z-index: 10;
}

.sc-filiale-footer > .e-con{
	padding: 0;
}
.sc-filiale-description p, .sc-filiale-footer p{
    margin-bottom: 0;
}

.sc-filiale-footer{
	min-height: 100px;
}



/**************** JOBS ****************/

.sc-testimonials .elementor-image-box-img img {
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
}
.sc-testimonials .elementor-image-box-description{
    font-family: 'font-accent', sans-serif;
    line-height: 1em !important;
}





















