/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
*/


.gradient_image .image_wrapper::after {
	content:'';
	position: absolute;
	height: 100%;
	width: 100%;
	top:0;
	left: 0;
	background: linear-gradient(to top, rgba(14, 17, 22, 0.9), rgba(14, 17, 22, 0.1));
	border-radius: 26px;
}

.gradient_image .image_wrapper {
	position: relative;
}
.absolute_class  {
	position: absolute;
	bottom: 32px;
	left: 32px;
	z-index: 9;
}

.banner_bck  {
	position: relative;
}
.banner_bck::after {
	content:'';
	position: absolute;
	height: 100%;
	width: 100%;
	top:0;
	left: 0;
	background:#0e1116d1;

}

.box_shadow_se:hover{
	transform: translateY(-6px) !important;
    box-shadow: 0 22px 44px -24px rgba(14, 17, 22, 0.35) !important;
}
.box_shadow_se {
	    transition: transform 0.25s, box-shadow 0.25s;
}

.elementor-element.e-div-block-base.border_top_div {

	border-top: 3px solid #e2001a;
}

.damit_box .e-div-block-base {
    padding-top: 0 !important;
    border: 1px solid #eaecef;
    border-radius: 22px !important;
}

.damit_box .e-div-block-base.noborder{
    border: 0px solid #eaecef;
    border-radius: 0px 0px 22px 22px !important;
    padding-top: 22px;

}

.elementor-element.e-div-block-base.single_border {
	    border-top: 1px solid rgb(234, 236, 239);
    padding-top: 22px;
}
.box_shadow_se.damit_box {
    width: 33%;
}

/* Contact Form */

/*.custom-contact-form {
        margin: 0 auto;
}
*/
.custom-contact-form label {
    display: block;
  
    margin-bottom: 12px;

        /*display: grid;*/
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
    color: rgb(60, 68, 78);

      font-family: 'DM Sans';

}

.cf7-row {
    display: flex;
    gap: 20px;
    margin-bottom: 25px;
}

.cf7-col {
    flex: 1;
}

.cf7-full {
    margin-bottom: 25px;
}


 .custom-contact-form input:focus-visible,
.custom-contact-form select:focus-visible,
.custom-contact-form textarea:focus-visible,
 .custom-contact-form input:focus,
.custom-contact-form select:focus,
.custom-contact-form textarea:focus {
 	    box-shadow: none;
    outline: 0px solid #000;
    outline-offset: 0px;
 }
.custom-contact-form input,
.custom-contact-form select,
.custom-contact-form textarea {
    width: 100% !important;
    height: 49px !important;
       
    font-size: 16px !important;
    color: #555 !important;
    box-sizing: border-box !important;

    padding: 15px 16px !important;
    border-radius: 14px !important;
    border: 1px solid rgb(221, 225, 230) !important;
    background: rgb(255, 255, 255);
    outline: none;

        font-family: 'DM Sans' !important;
    font-style: normal !important;
    font-weight: 400 !important;
}

.custom-contact-form select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='M2 2l6 6 6-6' stroke='%23000' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 20px center;
    padding-right: 50px;
    line-height: 1;
}

.custom-contact-form textarea {
    height: 100px !important;
    resize: vertical;
    padding-top: 18px;
}

.cf7-consent {
    /*margin: 25px 0 35px;*/
    color: #5a6270;
    font-size: 16px;
}

.cf7-consent a {
    color: #ff001e;
    text-decoration: none;
}

.cf7-consent input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 12px;
}

.cf7-submit .wpcf7-submit {
       margin-top: 8px !important;
    justify-self: start !important;
    padding: 17px 36px !important;
    background: rgb(226, 0, 26) !important;
    color: rgb(255, 255, 255) !important;
    border-width: medium !important;
    border-style: none !important;
    border-color: currentcolor !important;
    border-image: none !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    cursor: pointer !important;
        display: inline-block !important;
    width: auto !important;
    line-height: 1;
}
/*
.cf7-submit .wpcf7-submit:hover {
    transform: translateY(-2px);
}
*/
.wpcf7-spinner {
    display: none;
}
.custom-contact-form p br {
	display: none;
}
select.wpcf7-form-control.wpcf7-select {
    background-size: 12px;
}
input[type="checkbox"] {
    height: auto !important;
    width: auto !important;
}
.wpcf7-list-item label {
	display: flex;
	align-items: center;
	gap: 5px;
}
span.wpcf7-list-item-label {
    color: rgb(90, 98, 108) !important;
}

.border_top_header {
	border-top:1px solid rgb(237, 239, 242);
}

.link_color a {
	color: #E2001A;
	text-decoration: none;
}
img.image_filter  {
	    filter: invert(1) grayscale(1) brightness(2.2);
}
@keyframes edFloat{
0%, 100% {
    transform: translateY(0);
}


50% {
    transform: translateY(-12px);
}
}

.animated_image {
        animation: 6s ease-in-out 0s infinite normal none running edFloat;
            filter: drop-shadow(rgba(0, 0, 0, 0.5) 0px 40px 60px);
            z-index: 99999;
}

a {
    text-decoration: none !important;
}


/* Progress bar */
.
.step-info{
    font-size:18px;
    font-weight:700;
    color:#e1001a;
    margin-bottom:20px;
}

.progress{
    width:100%;
    height:8px;
    background:#e5e5e5;
    border-radius:100px;
    overflow:hidden;
    margin-bottom:50px;
}

.progress-bar{
    width:0;
    height:100%;
    background:#e1001a;
    transition:.4s;
}

.cards{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px;
}

.card{
    background:#fff;
    border:1px solid #ddd;
    border-radius:24px;
    overflow:hidden;
    cursor:pointer;
}
.card:hover {
    border:1px solid #E2001A;
}
.card img{
    width:100%;
    height:280px;
    object-fit:cover;
    display:block;
}

.card h3{
    margin:0;
    padding:25px 25px 10px;
    font-size:24px;
}

.card p{
    margin:0;
    padding:0 25px 25px;
    color:#666;
    line-height:1.6;
}

.step-footer{
    margin-top:50px;
    display:flex;
    justify-content:end;
    align-items:center;
}

.prevSlideBtn,
.nextSlideBtn{
    border:none;
    cursor:pointer;
    border-radius:999px;
    padding:16px 45px;
    font-size:18px;
}

.prevSlideBtn{
    background:#E2001A;
    color:#fff;
    
}

.nextSlideBtn{
    background:#E2001A;
    color:#fff;
}
.checkout_text {
        font-size: 14px;
    color: rgb(107, 115, 125);
    font-weight: 400;
}
a.hfe-menu-item.elementor-button:focus {
    color: #ffffff !important;
}
@media(max-width:450px){

.font12 h2 {
	font-size: 14px !important;
	 word-wrap: break-word;
    overflow-wrap: break-word;
}
}

@media(max-width:768px){
	.cf7-row{
		display: block !important;
	}
.box_shadow_se.damit_box {
    width: 100%;
}
   

    .cards{
        grid-template-columns:1fr;
    }

    .card img{
        height:220px;
    }

    .step-footer{
        gap:15px;
    }

    .prevSlideBtn,
    .nextSlideBtn{
        flex:1;
    }

}





/* ==========================================================
   HIOPOS MOBILE MENU
   FINAL CSS FOR ACTUAL HFE STRUCTURE
   ========================================================== */

@media (max-width: 767px) {

    /* ------------------------------------------------------
       GLOBAL OVERFLOW FIX
       ------------------------------------------------------ */

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: clip !important;
    }


    /* ------------------------------------------------------
       NAVIGATION WIDGET POSITIONING
       Keeps hamburger / close icon in same position
       ------------------------------------------------------ */

    .elementor-widget-navigation-menu,
    .elementor-widget-navigation-menu > .elementor-widget-container {
        position: relative !important;
    }


    /* ------------------------------------------------------
       HAMBURGER + CLOSE ICON
       SAME POSITION WHETHER MENU IS OPEN OR CLOSED
       ------------------------------------------------------ */

    .hfe-nav-menu__toggle,
    .hfe-flyout-trigger {
        position: absolute !important;

        top: 50% !important;
        right: 18px !important;
        left: auto !important;
        bottom: auto !important;

        transform: translateY(-50%) !important;

        margin: 0 !important;
        padding: 0 !important;

        z-index: 10001 !important;
    }

    .hfe-nav-menu-icon {
        width: 42px !important;
        height: 42px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin: 0 !important;
        padding: 0 !important;

        line-height: 1 !important;

        transform: none !important;
    }

    .hfe-nav-menu-icon svg {
        display: block !important;

        width: 22px !important;
        height: 22px !important;

        margin: 0 !important;
    }


    /* ------------------------------------------------------
       ACTUAL HFE MOBILE DROPDOWN
       ------------------------------------------------------ */

    nav.hfe-dropdown-expandible {
        box-sizing: border-box !important;

        width: 100vw !important;
        max-width: 100vw !important;

        background: #ffffff !important;

        border-top: 1px solid #edeff2 !important;

        padding: 12px 20px 24px !important;

        max-height: calc(100vh - 82px) !important;

        overflow-x: hidden !important;
        overflow-y: auto !important;

        z-index: 9999 !important;
    }


    /* Do not let active state change panel styling */
    nav.hfe-dropdown-expandible.menu-is-active {
        width: 100vw !important;
        max-width: 100vw !important;

        padding: 12px 20px 24px !important;

        background: #ffffff !important;
    }


    /* ------------------------------------------------------
       MAIN UL
       ------------------------------------------------------ */

    nav.hfe-dropdown-expandible > ul.hfe-nav-menu {
        display: grid !important;

        grid-template-columns: 1fr !important;

        gap: 2px !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;

        background: transparent !important;
    }


    /* ------------------------------------------------------
       RESET HFE DEFAULT LI STYLES
       ------------------------------------------------------ */

    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li {

        position: static !important;

        display: block !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        float: none !important;

        background: transparent !important;

        border: 0 !important;

        list-style: none !important;

        box-sizing: border-box !important;
    }


    /* Remove HFE borders/backgrounds */
    nav.hfe-dropdown-expandible a.hfe-menu-item,
    nav.hfe-dropdown-expandible a.hfe-sub-menu-item {

        box-shadow: none !important;
        text-decoration: none !important;

        box-sizing: border-box !important;
    }


    /* ======================================================
       GESCHÄFTSTYPEN
       ====================================================== */

    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    > .hfe-has-submenu-container {

        display: block !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;

        border: 0 !important;

        /* Parent cannot be clicked */
        pointer-events: none !important;
        cursor: default !important;
    }


    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    > .hfe-has-submenu-container
    > a.hfe-menu-item {

        display: block !important;

        width: 100% !important;

        margin: 0 !important;

        padding: 12px 12px 6px !important;

        background: transparent !important;

        color: #8d959e !important;

        font-size: 11px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;

        letter-spacing: 0.16em !important;
        text-transform: uppercase !important;

        border: 0 !important;
        border-radius: 0 !important;

        pointer-events: none !important;
        cursor: default !important;
    }


    /* Completely remove dropdown arrow */
    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    .hfe-menu-toggle,

    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    .sub-arrow,

    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    .hfe-menu-toggle i {

        display: none !important;
    }


    /* ======================================================
       FORCE GESCHÄFTSTYPEN SUBMENU ALWAYS OPEN
       ====================================================== */

    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    > ul.sub-menu {

        display: block !important;

        visibility: visible !important;

        opacity: 1 !important;

        position: static !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        transform: none !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;

        border: 0 !important;

        box-shadow: none !important;

        overflow: visible !important;

        pointer-events: auto !important;
    }


    /* ------------------------------------------------------
       BUSINESS TYPE LI
       ------------------------------------------------------ */

    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    > ul.sub-menu
    > li {

        display: block !important;

        position: static !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        float: none !important;

        border: 0 !important;

        background: transparent !important;

        visibility: visible !important;

        opacity: 1 !important;
    }


    /* ------------------------------------------------------
       BUSINESS TYPE LINKS
       ------------------------------------------------------ */

    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    > ul.sub-menu
    > li
    > a.hfe-sub-menu-item {

        display: block !important;

        width: 100% !important;

        margin: 0 !important;

        padding: 14px 12px !important;

        background: transparent !important;

        color: #0e1116 !important;

        font-size: 17px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;

        border: 0 !important;

        border-radius: 12px !important;

        text-decoration: none !important;

        box-sizing: border-box !important;
    }


    nav.hfe-dropdown-expandible
    li.menu-item-has-children
    > ul.sub-menu
    > li
    > a.hfe-sub-menu-item:hover {

        background: #f7f8f9 !important;

        color: #e2001a !important;
    }


    /* ------------------------------------------------------
       DIVIDER AFTER BUSINESS TYPES
       ------------------------------------------------------ */

    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li.menu-item-has-children {

        margin: 0 0 8px !important;

        padding: 0 0 8px !important;

        border-bottom: 1px solid #edeff2 !important;
    }


    /* ======================================================
       HARDWARE + KASSEN-KONFIGURATOR
       ====================================================== */

    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li:not(.menu-item-has-children):not(:last-child) {

        margin: 0 !important;
        padding: 0 !important;

        border: 0 !important;
    }


    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li:not(.menu-item-has-children):not(:last-child)
    > a.hfe-menu-item {

        display: block !important;

        width: 100% !important;

        margin: 0 !important;

        padding: 14px 12px !important;

        background: transparent !important;

        color: #0e1116 !important;

        font-size: 17px !important;
        line-height: 1.3 !important;
        font-weight: 600 !important;

        border: 0 !important;

        border-radius: 12px !important;

        text-decoration: none !important;

        box-sizing: border-box !important;
    }


    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li:not(.menu-item-has-children):not(:last-child)
    > a.hfe-menu-item:hover {

        background: #f7f8f9 !important;

        color: #e2001a !important;
    }


    /* Gap before Hardware */
    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li.menu-item-has-children
    + li {

        margin-top: 8px !important;
    }


    /* ======================================================
       CONTACT BUTTON
       ====================================================== */

    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li:last-child {

        margin: 12px 0 0 !important;

        padding: 0 0 14px !important;

        border: 0 !important;
    }


    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li:last-child
    > a.hfe-menu-item {

        display: flex !important;

        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;

        min-height: 52px !important;

        margin: 0 !important;

        padding: 16px 20px !important;

        background: #e2001a !important;

        color: #ffffff !important;

        font-size: 16px !important;
        line-height: 1 !important;
        font-weight: 700 !important;

        text-align: center !important;

        border: 0 !important;

        border-radius: 999px !important;

        text-decoration: none !important;

        box-sizing: border-box !important;
    }


    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu
    > li:last-child
    > a.hfe-menu-item:hover {

        background: #c90017 !important;

        color: #ffffff !important;
    }


    /* Extra white space below Contact */
    nav.hfe-dropdown-expandible
    > ul.hfe-nav-menu::after {

        content: "";

        display: block;

        width: 100%;

        height: 8px;
    }
}

@media (max-width: 767px) {
    nav.hfe-dropdown-expandible.menu-is-active {
		margin-top: 18px !important;
	}}






