/**
* Theme Name: R-Energy Child
* Description: This is a child theme of R-Energy, generated by Merlin WP.
* Author: <a href="http://ninetheme.com/about">Ninetheme</a>
* Template: r-energy
* Version: 260519-01
*/

@import url('fonts.css');

:root {
    /*
    --color-feh-blue: #094992;
    --color-feh-yellow: #fecf02;
    */

    /* new colors wanted by FEH */
    /*--color-feh-blue: #244191;*/

    --color-feh-blue: #4E789D;
    --color-feh-yellow: #f8d424;
    --color-feh-yellow-light: #f9e587;

    --color-feh-blue-dark: #4e789d;
    --color-feh-blue-light: #b6ccdf;

    --color-black: #000;
    --color-white: #fff;
    --color-gray-dark: #3b3838;
    --color-gray-medium: #7a7a7a;
    --color-gray-light: #d9d9d9;
    --color-gray-bright: #e6e6e6;

    /* Theme Colors bright gray is better */
    --color-gray-bright: #EFF2F5;

    --color-gray-bright: #f3f3f3;


    --color-text-default: var(--color-black);
    --color-text-default: var(--color-gray-dark);

    --ff-sans: "Roboto", sans-serif;
    --ff-default: var(--ff-sans);
    --ff-headline: var(--ff-default);
    --ff-text: var(--ff-default);

    /* Standart Button Sizes */
    --size-width--button: 130px;
    --size-height--button: 46px;

    --size-max-width: 2200px;

}



/***********/
/* GENERAL */
/***********/

::selection {
    color: #fff;
    background-color: var(--color-feh-blue);
}

body {
    font-family: var(--ff-default);
}

p {
    color: var(--color-text-default);
    max-width: 80ch;
}

a,
a:visited {
    color: var(--color-feh-blue);
}

p a,
p a:visited {
    text-decoration: underline;
}

h2 {
    font-family: var(--ff-headline);
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    color: var(--color-feh-blue);
    font-size: 4rem;
}

.about-welcome h3.title {
    font-size: 24px;
}

.subtitle::before {
    display: none !important;
}

.justify-content-center {
    justify-content: center !important;
}

.default-bg {
    background-color: var(--color-feh-blue-dark);
}

#header {
    /*padding: 15px 24px;*/
    /*box-shadow: 0 8px 8px -8px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 20px 15px -15px rgba(0, 0, 0, 0.05);*/
}

/**
  Header - Max-Width 2200px
**/
#header .container-fluid {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--size-max-width);
}

@media only screen and (min-width: 2200px) {
    #header .container-fluid .col-12 {
        padding: 0;
    }
}

.sticky-header.sticked {
    padding-left: 0;
    padding-right: 0;
}

@media only screen and (min-width: 1200px) {
    .sticky-header.sticked {
        padding: 15px 39px 15px 30px;
    }
}

main.main div[id] {
    scroll-margin-top: -200px;
}


/**
 Hero on sub-pages - Max-Width 2200px
**/
.promo-primary {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--size-max-width);
}

/**
  Hero-Element Padding
**/

.main-promo [class*="col-"] {
    /*padding: 0 24px;*/
}

.promo-primary .col-12 {
    /*padding: 0 24px;*/
}

/*
  Container Padding 
*/

.e-con-boxed {
    /*padding: 0 24px !important;*/
    padding: 0 15px !important;
}

.e-con-boxed .e-con-boxed {
    padding: 0 !important;
}

/**
  e-con buttons background-color
**/

.e-con .elementor-button {
    background-color: var(--color-feh-blue) !important;
}

.e-con .elementor-button:hover {
    background-color: var(--color-feh-yellow) !important;
}


/**
  e-con links color
**/
.e-con a[href*="mailto"] {
    color: var(--color-feh-blue) !important;
}

/*
.elementor-element .elementor-element {
    padding: 0;
}
*/


/**
  Project Cases
**/

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

    .elementor-widget-r-energy-cases-cpt-gallery-section .project-cases .cases-item {
        margin: 0 1px 30px 0;
    }
}

/*Button Style General**/
.r-button:hover::before {
    background-color: var(--color-feh-yellow) !important;
    color: var(--color-gray-dark) !important;
    transition: all 0.3s ease-in-out !important;
}

.r-button,
.elementor-button {
    border-radius: 5px;
    font-size: 1.125rem;
    letter-spacing: 0.5px;
    font-weight: 500;
}

.r-button {
    background-color: var(--color-feh-yellow) !important;
    color: var(--color-gray-dark) !important;
    transition: all 0.3s ease-in-out !important;
}

.r-button span {
    padding: 11px 30px !important;
}

.r-button span:hover {
    background-color: var(--color-feh-yellow) !important;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    padding: 11px, 30px !important;
}

.r-button:hover {
    border-color: var(--color-feh-yellow) !important;
    transition: all 0.3s ease-in-out !important;

}

.r-button:hover::before,
.r-button:hover:hover::before {
    display: none;
}

.r-button:hover span {
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
    background-color: var(--color-feh-yellow);
}

/*
* hide second r-button on home menu if below 1024px width
*/
@media only screen and (min-width: 1024px) {
    .hide-r-button {
        display: none;
    }
}



/* no colored overlay on images */
.overlay,
.info-box__img::before,
.main-gallery .gallery .gallery-item .overlay,
.main-gallery .gallery .gallery-item:hover .overlay,
.blog-item .img-holder:hover .overlay,
.project-gallery .gallery-item:hover .overlay,
.news-item--style-2:hover .overlay,
.info-box:hover .info-box__img::before {
    background-color: transparent !important;
}


/*******************/
/* Headings Widget */
/*******************/
.elementor-widget-heading h2.elementor-heading-title {
    line-height: initial !important;
    font-size: 2.5rem;
    /*font-weight: 300;*/
}

@media only screen and (max-width: 768px) {
    .elementor-widget-heading h2.elementor-heading-title {
        font-size: 1.7rem;
    }
}

/* FEH Banner special styles */
.elementor-element.feh-banner .elementor-widget-heading h2.elementor-heading-title {
    color: var(--color-white);
    text-shadow: 2px 2px rgba(0, 0, 0, 0.25)
}

.elementor-element.feh-banner .elementor-button {
    background-color: var(--color-feh-yellow) !important;
}

.elementor-element.feh-banner .elementor-button:hover {
    background-color: var(--color-feh-blue) !important;
}

/***************/
/* Text Widget */
/***************/
.elementor-widget-text-editor p {
    font-size: 1.25rem;
}

/* FEH Banner special styles */
.elementor-element.feh-banner .elementor-widget-text-editor p {
    color: var(--color-white);
    text-shadow: 2px 2px rgba(0, 0, 0, 0.25);
    font-size: 1.5rem;
    line-height: 1.375rem;
}

/**
  FEH-Banner - Max-Width 2220px
**/
.elementor-element.feh-banner {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--size-max-width);
}

/***********/
/* BUTTONS */
/***********/
/*
.elementor-button {
    border-radius: 3px;
    font-size: 1rem;
}

.elementor-button {
    padding: 11px 30px !important;
}
*/

.r-button.r-button--filled::before {
    background-color: var(--color-feh-yellow);
    color: var(--color-feh-blue);
}

.header .r-button span {
    background-color: var(--color-feh-blue);
    color: var(--color-gray-bright);
}

.header .r-button {
    border-style: none !important;
}

.header .r-button:hover span {
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;

    background: var(--color-feh-yellow);
    color: var(--color-gray-dark);
}

/**
* Slider Button
**/
.elementor-widget-r-energy-home-slider-one .main-promo .promo-slider .align-container .r-button span {
    background-color: var(--color-feh-yellow) !important;
    color: var(--color-gray-dark);
    padding: 12px 48px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}



/**
    button in the landing page banner & portfolio site
**/
.portfloio-button .elementor-button,
.elementor-widget-button .elementor-button {
    line-height: normal;
}

/**
* Form Buttons
**/
.form.contacts-page-form .r-button span:hover {
    background-color: var(--color-feh-yellow) !important;
    border-color: var(--color-feh-yellow);
    color: var(--color-gray-dark);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;

}

.form.contacts-page-form .r-button span {
    background-color: var(--color-feh-blue) !important;
    border-color: var(--color-feh-blue) !important;
    color: var(--color-gray-bright);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}

/**
* Upload Button
**/

.r-button.r-button--transparent.wpcf7-form-control.career-button {
    margin: 0 !important;
}

.wpcf7-form .form-upload [type="file"] {
    opacity: 0;
    z-index: -1;
    position: absolute;
    top: -1px;
    left: 0;
    width: 0.1px;
    height: 0.1px;
    user-select: none;
    margin: 0 !important;
    order: 1;
}

.wpcf7-form .form-upload input[type="file"]:focus+label[for="files"] {
    border: 1px solid #85E5FF;
}

.wpcf7-form .form-upload label {
    color: var(--color-gray-dark) !important;
    border: 2px solid var(--color-feh-blue);
    padding: 10px;
    color: #fff;
    font-family: sans-serif;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    transition: all 0.3s ease-in-out;
}

.wpcf7-form .form-upload label:hover {
    background: var(--color-feh-yellow);
    border-color: var(--color-feh-yellow);
    transition: all 0.3s ease-in-out;
}

/**
* more news
**/
#news-more-button {
    min-width: var(--size-width--button);
    background-color: var(--color-feh-blue);
}

#news-more-button:hover {
    background-color: var(--color-feh-yellow);
}

/**
    all buttons in the portfolio sub pages
**/
#portfolio-contact-button.elementor-button {
    line-height: normal !important;
}

@media only screen and (min-width: 1367px) {

    /* Contact Button */
    .header .r-button::before,
    .header .r-button span {
        padding: 12px 48px;
    }
}

#company-profile-btn {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/**
    scroll.up button
**/

.btn-scroll-top {
    z-index: 10 !important;
}

a.btn-scroll-top,
a.btn-scroll-top:visited {
    color: var(--color-white);
}

a.btn-scroll-top:hover,
a.btn-scroll-top:focus,
a.btn-scroll-top:active {
    background-color: var(--color-feh-yellow);
    border-color: var(--color-feh-yellow);
    color: var(--color-gray-dark);
    z-index: 10 !important;
}

a.btn-scroll-top svg {
    top: -3px;
}

/*
a,
a:visited {
    color: var(--color-gray-bright);
}
*/


/*************/
/* MAIN MENU */
/*************/

.main-menu>li>a,
.main-menu .sub-menu>li>a {
    font-size: 1.125rem;
    font-weight: 400;
    text-transform: none;
}

/*
.main-menu>li>a,
.main-menu .sub-menu>li>a {
    font-size: 0.9375rem;
}
*/

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

    .main-menu>li>a,
    .main-menu .sub-menu>li>a {
        font-size: 1rem;
    }
}

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

    .main-menu>li>a,
    .main-menu .sub-menu>li>a {
        font-size: 0.875rem;
    }
}

.main-menu .sub-menu {
    left: 0;
    background-color: var(--color-gray-dark);
    background-color: var(--color-gray-bright);
    color: var(--color-gray-dark);
}

.main-menu .sub-menu {
    padding: 10px 20px;
    width: auto;
    min-width: 200px;
}

.main-menu li.trp-language-switcher-container {
    display: none;
}

.main-menu li.trp-language-switcher-container .sub-menu {
    min-width: 0 !important;
}


.main-menu li.trp-language-switcher-container a {
    text-transform: lowercase;
}

.main-menu li.trp-language-switcher-container a::first-letter {
    text-transform: uppercase;
}

.main-menu .sub-menu li a,
.main-menu .sub-menu li a:visited,
.main-menu .sub-menu li a:hover,
.main-menu .sub-menu li a:focus,
.main-menu .sub-menu li a:active {
    color: var(--color-gray-dark);
}

.main-menu .sub-menu li.active a::after {
    width: 0% !important;
}

.main-menu .sub-menu li a:hover::after {
    width: 100% !important;
}

.main-menu>li.has-submenu {
    margin-right: 52px;
}

.main-menu>li.has-submenu>a>span::before,
.main-menu>li.has-submenu>a>span::after {
    top: 10px;
}

.main-menu>li.has-submenu>a>span::before {
    right: -12px;
}

.main-menu>li.has-submenu>a>span::after {
    right: -15px;
}


/***************/
/* LANG SWITCH */
/***************/

.main-menu>li.trp-language-switcher-container {
    margin-left: 100px !important;
    margin-right: 20px !important;
}

.main-menu li.trp-language-switcher-container ul.sub-menu {
    width: auto;
    padding: 5px;
}


/**********************/
/* Home Slider Widget */
/**********************/
.elementor-widget-r-energy-home-slider-one .main-promo .promo-slider .slider-item .overlay {
    background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 100%);
}

.elementor-widget-r-energy-home-slider-one .main-promo .promo-slider .align-container {
    position: relative;
    top: 80px;
}

.elementor-widget-r-energy-home-slider-one .main-promo .promo-slider .align-container .r-button span {
    padding: 11px 30px !important;
}

.elementor-widget-r-energy-home-slider-one .main-promo .promo-slider .align-container .r-button:hover span {
    background-color: var(--color-feh-blue) !important;
    color: #fff;
}

.elementor-widget-r-energy-home-slider-one .main-promo .slider-nav .container {
    text-align: right;
}

.elementor-widget-r-energy-home-slider-one .main-promo .slider-nav .container .row {
    justify-content: flex-end;
}

.elementor-widget-r-energy-home-slider-one .main-promo .promo-lower {
    background-color: var(--color-gray-dark);
    background-color: var(--color-gray-bright);

    display: none;
}

/*
* Slick-Dots
*/

@media only screen and (max-width: 768px) {
    .elementor-widget-r-energy-home-slider-one .main-promo .slider-nav {
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        width: 58.5%;
        bottom: 30px;
    }

    .elementor-widget-r-energy-home-slider-one .main-promo .slider-nav .col-xl-5 {
        display: flex;
        justify-content: center;
    }

    .elementor-widget-r-energy-home-slider-one .main-promo .slick-dots::after,
    .elementor-widget-r-energy-home-slider-one .main-promo .paging-info {
        display: none;
    }
}

@media only screen and (max-width: 435px) {
    .elementor-widget-r-energy-home-slider-one .main-promo .slider-nav {
        bottom: 45px
    }
}

@media only screen and (min-width: 320px) and (max-width: 384px) {
    .elementor-widget-r-energy-home-slider-one .main-promo .slider-nav {
        bottom: 85px;
    }
}

/**
Header (sub)-title Size
**/
.promo-slider .title,
.promo-primary .title {
    font-size: 4rem;
    font-weight: 900;
    letter-spacing: 0.5px;
    text-shadow: 2px 2px rgba(0, 0, 0, 0.25);
}

html[lang="en-US"] .promo-slider .title,
html[lang="en-US"] .promo-primary .title {
    font-size: 3.75rem;
}

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

    .promo-slider .title,
    .promo-primary .title {
        font-size: 3rem;
        line-height: 1.125;
    }

    html[lang="en-US"] .promo-slider .title,
    html[lang="en-US"] .promo-primary .title {
        font-size: 2.75rem;
    }

    .promo-slider .subtitle {
        font-size: 1.25rem;
    }
}

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

    .promo-slider .title,
    .promo-primary .title {
        font-size: 2rem;
    }

    html[lang="en-US"] .promo-slider .title,
    html[lang="en-US"] .promo-primary .title {
        font-size: 1.75rem;
    }
}

.promo-primary .title::before,
.promo-primary .title::after {
    content: none !important;
}


/***************/
/* SLIDER ITEM */
/***************/


.promo-slider .subtitle {
    font-size: 1.125rem;
    text-shadow: 2px 2px rgba(0, 0, 0, 0.25);
}

/**
  Promo-Slider - Max-Width 2200px
**/
.main-promo .promo-slider {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--size-max-width);
}

/********************/
/* Page Hero Widget */
/********************/

.elementor-widget-r-energy-page-hero-section .promo-primary .overlay {
    background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 100%);
}

.elementor-widget-r-energy-page-hero-section .promo-primary .align-item {
    top: 20px;
}




/**************************/
/* Section Heading Widget */
/**************************/

.elementor-widget-r-energy-section-heading .primary-heading .subtitle {
    /*font-family: var(--ff-headline);*/
    /*font-weight: 300;*/
    letter-spacing: initial;
    color: var(--color-feh-blue) !important;
}

/*
.primary-heading .title {
    display: none !important;
}
*/

.elementor-widget-r-energy-section-heading .desc p {
    font-size: 1.125rem;
    font-size: 1.25rem;
}



/**************/
/* ABOUT ITEM */
/**************/

.about .title {
    letter-spacing: initial;
}

.about-item {
    background-color: var(--color-gray-bright);
}

@media only screen and (min-width: 576px) {
    .about-item {
        padding: 36px 48px;
    }
}

.about-welcome .container {
    padding: 0;
}

.about-welcome .description .title {
    letter-spacing: initial;
}

/**.about-welcome [class*="col-"] {
    padding: 0;
}**/

@media only screen and (min-width: 992px) {
    .about-welcome .title-block {
        padding: 99px 30px 119px 65px;
        margin-bottom: 30px;

        padding: 72px 24px;
        text-align: center;
        margin: 0;
    }

    .about-welcome .align-items-center {
        align-items: flex-start !important;
    }
}

/**@media only screen and (min-width: 1024px) {

    .elementor-widget-r-energy-about-us-two-section .col-xl-4,
    .elementor-widget-r-energy-about-us-one-section .col-xl-5 {
        padding: 0;
    }
}**/

.elementor-widget-r-energy-about-us-one-section .about-item p {
    font-size: 1.125rem;
    font-size: 1.25rem;
}

.elementor-widget-r-energy-about-us-two-section .description p {
    font-size: 1.125rem;
    font-size: 1.25rem;
}

/*********************/
/* ICONS LIST WIDGET */
/*********************/
.elementor-widget .elementor-icon-list-item,
.elementor-widget .elementor-icon-list-item a {
    align-items: flex-start !important;
}

.elementor-widget .elementor-icon-list-icon {
    top: 5px !important;
}

.elementor-icon-list-icon i {
    color: var(--color-feh-blue) !important;

}



/*************/
/* TEAM ITEM */
/*************/
.team-item.team-item--grayscaled .img-holder {
    -webkit-filter: none !important;
    filter: none !important;
}


/*****************/
/* Banner Widget */
/*****************/
.elementor-widget-r-energy-banner-one .banner h2.title {
    color: var(--color-feh-blue);
    font-weight: 700;
    letter-spacing: initial;
}

.elementor-widget-r-energy-banner-one .banner p {
    font-size: 1.125rem;
    font-size: 1.25rem;
}

/********************/
/* BLOG GRID WIDGET */
/********************/
.elementor-widget-r-energy-blog-grid-section .blog-item .content-holder {
    min-height: 118px;
}

.elementor-widget-r-energy-blog-grid-section .blog-item .ribbon {
    padding-top: 12px;
    padding-left: 12px;
}

.elementor-widget-r-energy-blog-grid-section .blog-item .ribbon .day {
    font-size: 16px;
}

@media only screen and (max-width: 768px) {
    .elementor-widget-r-energy-blog-grid-section .col-md-4 {
        padding: 0;
    }
}


/***********/
/* Accordion-Item*/
/***********/
.accordion-item .content-block {
    font-size: 16px;
}

@media only screen and (max-width: 576px) {
    .accordion-item .title-block {
        padding: 15px 30px;
    }
}

.elementor-icon-list-items .elementor-icon-list-item span {
    font-size: 16px;
}

/***********/
/* Posts   */
/***********/
#news .ribbon p::after {
    content: "" !important;
}

/******************/
/* Pricing Widget */
/******************/
.elementor-widget-r-energy-pricing-item .pricing-table ul,
.elementor-widget-r-energy-pricing-item .r-button-holder {
    display: none !important;
}

/******************/
/* Counter Widget */
/******************/
.elementor-widget-r-energy-counter-up-item .statistics-item .counter {
    font-size: 80px;
}

.elementor-widget-r-energy-counter-up-item .statistics-item .description {
    text-transform: none;
}

/**********************/
/* Testimonial Widget */
/**********************/
.elementor-widget-r-energy-testimonials-one-section .testimonials--primary .slider-item p {
    font-size: 1.125rem;
    line-height: 1.625 !important;
}

.elementor-widget-r-energy-testimonials-one-section .testimonials--primary .testimonials-primary-slider .slick-dots {
    margin-top: 48px;
    width: 100%;
    text-align: center;
}

.elementor-widget-r-energy-testimonials-one-section .testimonials--primary .wrapper {
    background-color: var(--color-gray-bright);
}


/*******************/
/* Services Widget */
/*******************/

.elementor-widget-r-energy-services-section .services-inner::before {
    display: none;
}

.elementor-widget-r-energy-services-section .services-inner .content .container {
    padding-left: 0;
    padding-right: 0;
}

.elementor-widget-r-energy-services-section .info-box .info-box__inner {
    padding: 0 20px
}

.elementor-widget-r-energy-services-section .info-box .info-box__title {
    font-weight: 400;
    padding: 20px 0;
}

.elementor-widget-r-energy-services-section .info-box .info-box__hidden {
    padding-bottom: 10px;
}

.elementor-widget-r-energy-services-section .info-box p {
    color: var(--color-white);
    line-height: 1.5;
}

.elementor-widget-r-energy-services-section .info-box a,
.elementor-widget-r-energy-services-section .info-box a:visited {
    color: var(--color-white);
}

.elementor-widget-r-energy-services-section .info-box:hover .info-box__inner {
    background-color: var(--color-feh-blue);
}

.elementor-widget-r-energy-services-section .info-box__link.with--line::after {
    display: none;
}

.elementor-widget-r-energy-services-section .info-box a.box-link {
    height: 100%;
}


/**************************/
/* PROJECT DETAIL (CASES) */
/**************************/
.elementor-widget-r-energy-cases-cpt-post-information .information-details .row>div,
.elementor-widget-r-energy-cases-cpt-post-recommendation .recommendation-details .row>div {
    flex-basis: 100%;
    max-width: none;
}

.elementor-widget-r-energy-cases-cpt-post-information .cases-details .title {
    letter-spacing: initial;
}

.elementor-widget-r-energy-cases-cpt-post-information .information-details .icon {
    font-size: 22px;
}

.elementor-widget-r-energy-cases-cpt-post-recommendation .recommendation-details .title {
    color: var(--color-black);
    font-size: 1rem;
    text-transform: none;
}

/**************************/
/* PROJECT GALLERY SLIDER */
/**************************/

.elementor-widget-r-energy-project-gallery-slider-section .slick-slide {
    margin: 0 5px;
}

.elementor-widget-r-energy-project-gallery-slider-section .slick-list {
    margin: 0 -5px;
}

/********************/
/* INSTAGRAM SLIDER */
/********************/
.elementor-widget-r-energy-instagram-slider-section .instagram {
    padding: 40px 0 80px 0 !important;
    background: transparent;
}

.elementor-widget-r-energy-instagram-slider-section .instagram .slick-slide .img-holder i {
    display: none;
}


/*************/
/* Single Post */
/*************/
.blog-detail .live-comment {
    display: none !important;
}


/*************/
/* General Form */
/*************/
.wpcf7-form .input-label span,
.wpcf7-form .textarea-label span {
    color: var(--color-gray-dark) !important;
}

/* new css style update 12.02.25*/
.wpcf7-list-item {
    margin: 12px 0;
}

.wpcf7-form .form-textarea {
    /* r energy template defines position absolute for textareas, this tries to fix it */
    height: 120px;
    margin-bottom: 30px;
}

.wpcf7-form .form-upload {
    margin-bottom: 30px;
}

.wpcf7-form span.wpcf7-not-valid-tip {
    color: #f00 !important;
}

.wpcf7-form .form .input-label span,
.wpcf7-form .form .textarea-label span,
.wpcf7-form .form .input-label .form-field,
.wpcf7-form .form .textarea-label .form-field {
    font-size: 1.25rem;
}

.wpcf7-form .wpcf7-checkbox+.wpcf7-not-valid-tip {
    position: absolute;
    top: -30px;
}

.wpcf7-form .r-button {
    border-style: none;
    min-width: 180px;
    margin-top: 40px !important;
}

.wpcf7-form span.wpcf7-not-valid-tip {
    font-size: 0.875rem !important;
}

.wpcf7-form div.wpcf7-response-output {
    margin: 0 auto 24px auto !important;
}

.wpcf7-form.sent div.wpcf7-response-output {
    color: #155724 !important;
    background-color: #d4edda !important;
    border-color: #c3e6cb !important;
}

.wpcf7-form.invalid div.wpcf7-response-output {
    color: #721c24 !important;
    background-color: #f8d7da !important;
    border-color: #f5c6cb !important;
}

.wpcf7-form span.wpcf7-form-control-wrap[data-name^="checkbox-"] {
    display: inline !important;
}

.wpcf7-form span.wpcf7-form-control-wrap[data-name^="checkbox-"]+a {
    margin-left: 10px;
}

/*************/
/* Contact Form */
/*************/

/* ??? */
.elementor-5493 .elementor-element.elementor-element-9616090 {
    display: none !important;
}


.map-section .contacts-banner .container .row .col-12 {
    padding-left: 24px;
}

/*************/
/* Career Form */
/*************/
.wpcf7 input[type="file"] {
    margin-top: 80px !important;
}

.career-button {
    position: relative;
    margin-top: 85px !important;
}

/*
.upload-wrapper p {
    display: flex;
    justify-content: start;
    gap: 20px;
    align-items: center;
    height: 300px;
}

.upload-wrapper span {
    order: 2;
    width: 100px !important;
    top: 17px !important;
}

.upload-wrapper label {
    order: 0;
    margin-bottom: 0 !important;
}

.upload-wrapper .upload-hint {
    position: absolute;
    bottom: 90px;
    color: var(--color-gray-dark);
    height: auto;
}

.upload-wrapper br {
    display: none;
}
*/





/*************/
/* Footer */
/*************/

.footer-style-2 .elementor-widget-heading .elementor-heading-title>a:hover,
.footer-style-2 .elementor-widget-heading .elementor-heading-title>a:focus,
.footer-style-2 .elementor-widget-heading .elementor-heading-title>a:active {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a {
    text-decoration: none;
}

.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a:hover,
.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a:focus,
.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a:active {
    text-decoration: underline;
    color: #fff;
}

.footer .elementor-widget-heading h4.elementor-heading-title {
    font-size: 1.125rem;
}

.footer .elementor-widget-heading p.elementor-heading-title {
    font-size: 1rem;
}

.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a::after {
    content: "|";
    display: inline-block;
    margin: 0 8px;
}

.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a:last-child::after {
    display: none;
}

.footer .elementor-widget-heading.footer-custom-link .elementor-heading-title a .separator {
    display: none;
}


.footer .elementor-social-icon i {
    font-size: 24px !important;
    color: #C3C3C3;
}

.footer .elementor-social-icon:hover i {
    color: #fff !important;
}

.footer .custom-footer-menu ul li a {
    color: #C3C3C3;
}

.footer .custom-footer-menu ul li a:hover,
.footer .custom-footer-menu ul li a:focus,
.footer .custom-footer-menu ul li a:active {
    color: #fff;
    text-decoration: underline;
}

.footer .elementor-container {
    margin: 0;

}


/* FOOTER TOP AND BOTTOM */
.footer .elementor-container .elementor-column div.elementor-widget-wrap {
    /*padding: 24px;*/
}

.footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap {
    /*padding: 0;*/
}

/* FOOTER BOTTOM (Copyright etc) */
.footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container {
    display: flex;
    justify-content: space-between;
    margin: auto;
    padding: 0 15px;
}

.footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container>.elementor-column {
    width: auto;
}

.footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container>.elementor-column:nth-child(2)>div>div>div>div {
    line-height: 1.7;
}

.footer .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 15px;
}

@media only screen and (min-width: 1170px) {

    /** no padding for the first element of footer **/
    .footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section>.elementor-container>.elementor-column:nth-child(1)>.elementor-widget-wrap {
        padding-left: 0;
    }

    .footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container {
        padding: 0;
    }
}




@media only screen and (min-width: 1024px) {
    .footer .elementor-section:not(.footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)) {
        display: flex;
        justify-content: center;
    }
}



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

    .footer .elementor-container {
        justify-content: space-between;
        width: 90vw;
    }

    .footer .elementor-container .elementor-column {
        flex-basis: 50%;
    }

    .footer .elementor-container .elementor-column:nth-child(3) * {
        text-align: start;
    }

    .footer .elementor-container .elementor-column:nth-child(3) div div:nth-child(2) *,
    .footer .elementor-container .elementor-column:nth-child(3) div div:nth-child(2) *::before {
        padding: 0;
        left: 0 !important;
    }

    .footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container>.elementor-column:nth-child(2)>div>div>div>div {
        text-align: start;
    }

    .footer>.elementor>.elementor-section>.elementor-container>.elementor-column>.elementor-widget-wrap>.elementor-section:nth-child(2)>.elementor-container>.elementor-column:first-child {
        order: 1;
    }
}

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


    .footer .elementor-container .elementor-column {
        flex-basis: 100%;
    }
}



/********************/

/* What does it? */
.elementor-1131 .elementor-element.elementor-element-1a958d48:not(.elementor-motion-effects-element-type-background) {
    background-color: var(--color-gray-dark) !important;
}

.elementor-5489 .elementor-element.elementor-element-a0c8b3f .elementor-icon-list-icon i {
    position: relative !important;
    top: 0 !important;
}


main>#nt-page-container #nt-page {
    padding: 0;
}

#nt-page>.container>.justify-content-center {
    justify-content: start !important;
}

#nt-single>.promo-primary {
    display: none;
}

.nt-single .content-block p {
    font-size: 1.25rem;
    line-height: 1.75;
}


.nt-single .promo-holder img {
    width: 100%;
}

.nt-single .blog-detail {
    padding: 20px !important;
}

.nt-single .blog-detail .title {
    font-size: 2rem;
    word-break: initial;
}

.nt-single .blog-detail .elementor-widget-text-editor p {
    line-height: 1.75;
}

.nt-single .blog-detail .nt-theme-content-list {
    margin-bottom: 2rem !important;
    font-size: 1.25rem;
}

/*****************/
/* Mappress Maps */
/*****************/
.mapp-body p {
    line-height: 1.5em;
}

.mapp-iw .mapp-dir {
    color: var(--color-feh-blue);
}

.mapp-layout::after {
    content: "Bitte aktivieren Sie die Standortkarte in den Cookie-Einstellungen am Ende der Seite.";
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    padding: 20px;
}

/*****************/
/* Cookie Banner */
/*****************/
.cmplz-cookiebanner {
    z-index: 1000;
}

.cmplz-cookiebanner a {
    text-decoration: none !important;
}

.cmplz-cookiebanner .cmplz-close {
    position: relative;
    top: -3px;
}

.cmplz-cookiebanner .cmplz-header {
    padding-bottom: 12px;
}

.cmplz-cookiebanner .cmplz-title {
    font-size: 18px !important;
}

.cmplz-cookiebanner .cmplz-links.cmplz-documents {
    padding: 12px 0;
}

#cmplz-manage-consent .cmplz-manage-consent {
    border-bottom-left-radius: 5px !important;
    border-bottom-right-radius: 5px !important;
    border-radius: 5px !important;
    right: 90px !important;
    bottom: 0px !important;
}

.cmplz-buttons button {
    background-color: var(--color-feh-blue) !important;
    color: var(--color-gray-bright) !important;
    border-color: var(--color-feh-blue) !important;
    transition: all 0.3s ease-in-out;
}

.cmplz-buttons button:hover {
    background-color: var(--color-feh-yellow) !important;
    color: var(--color-gray-dark) !important;
    border-color: var(--color-feh-yellow) !important;
    transition: all 0.3s ease-in-out;
}

.cmplz-cookiebanner .cmplz-links .cmplz-link:hover {
    text-decoration: underline !important;
}

/***********/
/* UP-Counter */
/***********/

#beratung {
    scroll-padding-top: 50px;
    scroll-margin-top: 100px;
}

@media only screen and (max-width: 655px) {
    .elementor-widget-r-energy-counter-up-item {
        width: 40%;
    }
}

@media only screen and (max-width: 442px) {
    .elementor-widget-r-energy-counter-up-item {
        width: 100%;
    }
}

/* font-size */
@media only screen and (max-width: 965px) {
    .elementor-widget-r-energy-counter-up-item .statistics-item .counter {
        font-size: 60px;
    }
}

@media only screen and (max-width: 655px) {
    .elementor-widget-r-energy-counter-up-item .statistics-item .counter {
        font-size: 50px;
    }
}



/***********/
/* Tablet */
/***********/

/***********/
/* Mobile */
/***********/

/**
    mobile menu
**/
.mobile-nav {
    z-index: 10000;
}

.mobile-nav .nav-inner {
    display: flex;
    padding: 30px 24px 60px;
}

.mobile-nav .mobile-menu a {
    font-size: 20px;
    text-transform: none;
}

/**
  MOBILE MENU ICONS
**/
.mobile-menu>li.menu-item--has-child>a>span::before,
.mobile-menu>li.menu-item--has-child>a>span::after {
    content: "";
    display: block;
    width: 10px;
    height: 2px;
    background-color: var(--color-feh-blue);
    position: absolute;
    top: 17px;
}

/**
  LEFT SIDE OF ICON
**/
.mobile-menu>li.menu-item--has-child>a>span::before {
    right: -27px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(55deg);
}

/**
  LEFT SIDE OF ICON - OPEN
**/
.mobile-menu>li.menu-item--has-child.sub-menu-opened>a>span::before {
    transform: rotate(-55deg);
}

/**
  RIGHT SIDE OF ICON
**/
.mobile-menu>li.menu-item--has-child>a>span::after {
    right: -32px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-55deg);
}

/**
  RIGHT SIDE OF ICON - OPEN
**/
.mobile-menu>li.menu-item--has-child.sub-menu-opened>a>span::after {
    transform: rotate(55deg);
}

/**
  SUB-MENU OF MOBILE NAV
**/
.mobile-nav .mobile-menu .sub-menu li a {
    font-size: 18px;
}

.mobile-menu>li>a::after {
    background-color: var(--color-feh-blue);

}

.menu-contacts a {
    color: inherit !important;
    text-decoration: none !important;
}

.menu-contacts {
    color: #C3C3C3 !important;
}

.menu-contacts a:hover {
    text-decoration: underline !important;
    text-underline-offset: 4px !important;
    color: white !important;
}

.r-button.r-button--filled {
    border: none !important;
}

.r-button.r-button--filled span {
    transition: all 0.3s ease-in-out !important;
}

.r-button.r-button--filled span:hover {
    color: var(--color-gray-dark);
    transition: all 0.3s ease-in-out !important;
}