/*
Theme Name: Heidelbeerhugo Theme
Template: hello-elementor
Text Domain: hello-elementor-child
*/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    margin-block-start: 0px !important;
    margin-block-end: 0px !important;
}

/* logo mobile with text */
#logo-mobile {
	.st0{fill:#222222 !important;}
	.st1{fill:#FFFFFF !important;}
	.st2{fill:#519B0A !important;}
	.st3{fill:#6ABF10 !important;}
	.st4{fill:#417708 !important;}
	.st5{fill:#135ACE !important;}
	.st6{fill:#073A8C !important;}
	.st7{fill:#E5A9DD !important;}
	.st8{fill:#C6C6C6 !important;}  
}
.color-changing-header.scrolled {
    #logo-mobile .st0{fill:#fff !important;}
}  

/* Standard Hintergrundfarbe */
.color-changing-header {
    background-color: var(--e-global-color-e86fefb) !important;
    transition: background-color 0.3s ease !important;
}

/* Hintergrundfarbe, wenn gescrollt wird */
.color-changing-header.scrolled {
    background-color: var(--e-global-color-primary) !important; /* Deine gewünschte Farbe */

    .color-changing-svg{

        #path114, #path110, #path106, #path102, #path98, #path94, #path90, #path86, #path22{
            fill: white !important;
        }

        path:not(#path114, #path110, #path106, #path102, #path98, #path94, #path90, #path86, #path22) {
            fill: var(--e-global-color-primary) !important; /* Ersetze "red" mit der gewünschten Farbe */
        }

    }
    .color-changing-svg-text {
        .st7 {
            fill: #ffffff !important;
        }
    }

    a.elementor-item{
        color: white !important;
    }

    .burger-menu-icon svg{
        fill: white !important;
    }
}

.color-changing-svg{
    height: 140px;
    width: fit-content;
}

@media screen and (max-width:1200px){
    .color-changing-svg{
        height: 100px;
        width: fit-content;
    }
}

.elementor-shortcode{
    height: 100%;
    width: fit-content;
}

.auftritt-ort-details{
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 2px;
}

.auftritt-ort-details > p{
    font-family: "Sofia Sans Condensed", Sans-serif;
    font-size: 20px;
    font-weight: 900;
    line-height: 100%;
    color: var(--e-global-color-text);
    text-transform: uppercase;
}

.auftritt-ort-details > a{
    font-family: "Sofia Sans Condensed", Sans-serif !important;
    font-size: 16px;
    font-weight: 900 !important;
    line-height: 96% !important;
    color: var(--e-global-color-text);
    text-transform: uppercase;
}

.auftritt-datum-details{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: center;
    gap: 14px;

    height: inherit;
}

.auftritt-datum-details > div{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    gap: 2px;
}

.auftritt-datum-details > div > p{
    margin-block-end: -3px !important;
}

.auftritt-datum-details > div > .wochentag{
    color: var(--e-global-color-text);
    font-family: Montserrat;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 90%; /* 14.4px */
    text-transform: uppercase;
}

.auto-resize {
    display: block;
    width: 100%; /* Volle Breite des Parent-Elements */
    text-align: center;
    white-space: nowrap; /* Kein Zeilenumbruch */
    overflow: hidden; /* Falls nötig, um Überlauf zu verhindern */
}

.auftritt-datum-details > div > .tag{
    color: var(--e-global-color-text);
    text-align: center;

    /* Mobile/H2 */
    font-family: Montserrat;
    font-size: 35px;
    font-style: normal;
    font-weight: 800;
    line-height: 90%;
    text-transform: uppercase;
}

.auftritt-datum-details > div > .monat{
    color: var(--e-global-color-text);
    text-align: center;

    /* Mobile/H6 */
    font-family: Montserrat;
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
    line-height: normal;
    text-transform: uppercase;
}

.auftritt-datum-details > div > .jahr{
    color: var(--e-global-color-text);
    text-align: center;
    font-family: Montserrat;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 90%; /* 14.4px */
}

.auftritt-datum-details > .zeit{
    color: var(--e-global-color-text);
    font-family: "Sofia Sans Condensed" !important;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    display: none;
}

.auftritt-status a{
    display: flex;
    width: 110px;
    height: 54px;
    padding: 10px;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.auftritt-status > a{
    text-align: center;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

.auftritt-status:has(.status-tickets) a {
    background-color: var(--e-global-color-7b55876);
    color: var(--e-global-color-e86fefb);
}

.auftritt-status > .status-tickets,
.auftritt-status > .status-ausverkauft{
    color: var(--e-global-color-e86fefb) !important;
}

.auftritt-status:has(.status-restkarten) a {
    background-color: var(--e-global-color-secondary);
}

.auftritt-status:has(.status-ausverkauft) a {
    background-color: var(--e-global-color-b2a2f8d);
    color: var(--e-global-color-e86fefb);
    pointer-events: none;
}


.auftritt-status:has(.status-info-folgt) {
    background-color: transparent;
    color: var(--e-global-color-41d57a9) !important;
    border-color: var(--e-global-color-41d57a9) !important;
    border: 2px solid;
    pointer-events: none;
}

.status-info-folgt{
    color: var(--e-global-color-41d57a9) !important;
}

.status-unsichtbar{
    display: none;
}

.auftritt-status > .status-unknown {
    background-color: #6c757d; /* Grau für unbekannten Status */
}

.auftritt-ort-infos{
    width: 40% !important;
}

@media screen and (min-width: 1040px) {
    .auftritt-datum-details > div > .wochentag{
        font-size: calc(16px * 1.25) !important;
    }

    .auftritt-datum-details > div > .tag{
        font-size: calc(34px * 1.25) !important;
    }

    .auftritt-datum-details > div > .monat{
        font-size: calc(18px * 1.25) !important;
    }

    .auftritt-datum-details > .zeit{
        font-size: calc(16px * 1.25) !important;
        display: none;
    }

    .auftritt-status > a{
        font-size: 16px !important;
    }

    .auftritt-ort-details > a{
        font-size: 22px !important;
    }

    .auftritt-ort-details > p{
        font-size: 27px !important;
    }

    .auftritt-status a {
        width: 140px !important;
        height: 70px !important;
    }
}

.faq .e-n-accordion-item{
    border-bottom: solid var(--e-global-color-accent) 2px;
    gap: 1vh;
    padding-top: 2vh;
    padding-bottom: 2vh;
}

.faq .e-opened{
    transform: rotate(45deg);
}

.faq .e-closed{
    transform: rotate(0deg);

}

.download-gallery-pic img{
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.download-link > div > p > a{
    font-family: var(--e-global-typography-d7a0046-font-family), Sans-serif;
    font-size: var(--e-global-typography-d7a0046-font-size);
    font-weight: var(--e-global-typography-d7a0046-font-weight);
    text-transform: var(--e-global-typography-d7a0046-text-transform);
    line-height: var(--e-global-typography-d7a0046-line-height);
}

.download-link > div > p:hover{
    a{
        color: var(--e-global-color-accent);
    }

    i{
        color: var(--e-global-color-accent);
    }
}

/*Kontaktformular Gravity*/

.contact-form {

    & .elementor-shortcode{
        width: 100% !important;
    }

    &  .gform_validation_errors {
        display:none !important;
    }

    & form{
        display: flex !important;
        flex-direction: column !important;
        gap: 6vh !important;
        justify-content: center;
        width: 50% !important;


        & .gform-body  {

            & div.gform_fields {
                display: flex !important;
                flex-direction: column;
            }

            & .gfield_label{
                font-family: var(--e-global-typography-a013f4e-font-family), Sans-serif !important;
                font-size: var(--e-global-typography-a013f4e-font-size)!important;
                font-weight: var(--e-global-typography-a013f4e-font-weight)!important;
                line-height: var(--e-global-typography-a013f4e-line-height)!important;
                text-transform: var(--e-global-typography-primary-text-transform)!important;

                padding-bottom: 10px !important;
            }

            & .gfield_required{
                color: var(--e-global-color-text) !important;
                font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
                font-size: var(--e-global-typography-text-font-size) !important;
                font-weight: var(--e-global-typography-text-font-weight) !important;
                line-height: var(--e-global-typography-text-line-height) !important;
                text-transform: none !important;
            }

            & input[type="text"], input[type="email"]{
                border-radius: 0px !important;
            }

            & textarea{
                border-radius: 0px !important;
            }



            & .ginput_container_consent {
                align-items: baseline;

                & label {
                    height: 18px;

                    & a {
                        font-size: inherit;
                    }
                }
            }
        }

        & .gform-footer{
            align-self: center !important;

            & input[type="submit"]{
                font-family: var(--e-global-typography-d7a0046-font-family), Sans-serif !important;
                font-size: var(--e-global-typography-d7a0046-font-size) !important;
                font-weight: var(--e-global-typography-d7a0046-font-weight) !important;
                text-transform: var(--e-global-typography-d7a0046-text-transform) !important;
                line-height: var(--e-global-typography-d7a0046-line-height) !important;
                color: var(--e-global-color-e86fefb) !important;
                border-style: none !important;
                border-radius: 0px 0px 0px 0px !important;
                box-shadow: 8px 8px 0px 0px #FEEE5B !important;
                padding: 012px 022px 012px 022px !important;

                background-color: var(--e-global-color-primary) !important;

                transform: rotate(-4.5deg);
            }
        }
    }

    & .gform_confirmation_message {
        outline: 1px solid var(--e-global-color-primary);
        text-align: center;
        padding: 3rem 0;
        box-shadow: 10px 10px 0px 0px #FEEE5B;
    }
}



@media screen and (max-width:1200px){

    .contact-form > div > div > div > form{
        width: 100% !important;
    }
}







.review-stars{
    font-size: 1.4vw;
}

@media screen and (max-width:1024px){
    .review-stars{
        font-size: 20px;
    }
}

.fa-star{
    color: var(--e-global-color-secondary);
}

.fa-star-o{
    color: #c3c3c3;
}

.category-dropdown{
    width: 400px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.search-filter-base{
    width: 25%;
    min-width: 300px;
}

@media screen and (max-width:787px){
    .search-filter-base{
        width: 100%;
    }
}

.search-filter-label{
    font-family: var(--e-global-typography-a013f4e-font-family), Sans-serif;
    font-size: var(--e-global-typography-a013f4e-font-size);
    font-weight: var(--e-global-typography-a013f4e-font-weight);
    line-height: var(--e-global-typography-a013f4e-line-height);
    letter-spacing: var(--e-global-typography-a013f4e-letter-spacing);
    word-spacing: var(--e-global-typography-a013f4e-word-spacing);
    text-transform: uppercase;
    color: var(--e-global-color-text);
}

.search-filter-component-combobox-base, .search-filter-input-text{
    border: 2px solid var(--e-global-color-text);
    border-radius: 0px;
}

.search-filter-component-combobox__actions-input{
    color: var(--e-global-color-text) !important;
}

.search-filter-component-combobox__listbox-toggle svg{
    fill: var(--e-global-color-text) !important;
}

.search-filter-component-combobox__listbox-toggle::before{
    border-left: 2px solid var(--e-global-color-text);
}

.search-filter-icon__svg{
    fill: var(--e-global-color-text) !important;
}

.yt-video{
    min-width: 560px !important;
    max-width: 560px;
}

@media screen and (max-width: 787px){
    .yt-video{
        min-width: 100% !important;
        max-width: 100%;
    }
}

.spacer > div > div > div{
    height: 80px !important;
}

.elementor-widget-off-canvas{
    --e-off-canvas-animation-duration: 0.5s !important;
}

.hidden{
    display: none !important;
}


/*changes from Monika*/

/*single product page -> background color quantity and variations*/
table.variations th.label, td.value {
    background-color: white !important;
}

/*cart -> product thumbnail bigger*/
.elementor-widget-woocommerce-cart .woocommerce table.cart img{
    width:300px !important;
}

/*checkout process -> order-summery title*/
p.wc-block-components-checkout-order-summary__title-text{
    font-weight: var(--e-global-typography-secondary-font-weight) !important;
    text-transform: var(--e-global-typography-secondary-text-transform);
    line-height: var(--e-global-typography-secondary-line-height);
	font-size: var(--e-global-typography-236e2bd-font-size)
}

/*checkout process -> sidebar -> product title*/
.wc-block-checkout__sidebar h3.wc-block-components-product-name {
    font-size: 20px;
    font-weight: 700;
}

/*checkout process -> sidebar -> product picture*/
.wc-block-components-order-summary .wc-block-components-order-summary-item__image>img {
    border: solid #eeeeee;
}

/*checkout process -> sidebar -> background-color*/
.wc-gzd-checkout .wc-block-components-order-summary, .wc-gzd-checkout .wc-block-components-order-summary.is-large {
    background-color: #ffffff !important;
}

/*checkout process -> sidebar -> buttons*/
button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained {
    background-color: var(--e-global-color-primary);
    color: var(--e-global-color-e86fefb);
    font-weight: var(--e-global-typography-secondary-font-weight);
    box-shadow: 8px 8px 0px 0px var(--e-global-color-secondary);
    text-transform: var(--e-global-typography-a5afea1-text-transform);
    border: none;
    border-radius: 0;
    margin-bottom: 10px !important;
}

#wc-block-components-totals-coupon__form button{
    color: var(--e-global-color-text);
    font-weight: var(--e-global-typography-secondary-font-weight);
    text-transform: var(--e-global-typography-a5afea1-text-transform);
    border: solid 2px var(--e-global-color-text);
    border-radius: 0 !important;

    &:hover{
        background-color: var(--e-global-color-text);
        color: var(--e-global-color-e86fefb);
    }
	&[disabled],
    &:disabled {
        border-color: #8C8C8C !important;
    }
}

/*checkout process -> button for delivery address change*/
.wc-block-components-address-card > span.wc-block-components-address-card__edit{
    text-decoration: underline;
    
    &:hover{
    background-color: var(--e-global-color-text);
    color: var(--e-global-color-e86fefb);
    }
}

/*woocommerce message-modals*/
.woocommerce-message, .cart-empty.woocommerce-info {
    font-family: var(--e-global-typography-primary-font-family) !important;

    a{
        text-decoration: underline;
    }
}

a.added_to_cart.wc-forward{
    text-decoration: underline !important;
	font-family: var(--e-global-typography-primary-font-family) !important;
}