/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.5.1768560374
Updated: 2026-01-16 10:46:14

*/
/* @import url("http://localhost/2026/newframe/style.css"); */

/*==================================
  Root Variables
===================================*/
:root {
  	--clr-primary: #a41e20;
	  --heading-color:#323e3e;
  	--clr-text: #323e3e;  	
}

/*==================================
  BASIC CSS RESET
===================================*/
*,
*::before,
*::after { margin: 0; padding: 0; box-sizing: border-box; }
html { font-size: 16px;  scroll-behavior: smooth; }
body { line-height: 1.6; color: var(--clr-text); background-color: #fff; -webkit-font-smoothing: antialiased; font-size: 16px;  }
input, button, textarea, select { font: inherit; outline: none; }

::selection { background-color: var(--clr-primary); color: #fff; }
.bg-red ::selection { background-color: #ffffff; color: var(--clr-primary); }

/*==================================
  TYPOGRAPHY
===================================*/
h1, h2, h3, h4, h5, h6, .elementor-heading-title { margin-bottom: 10px; line-height: 1.25; font-weight: 700; }
h1 { font-size: 60px; }
h2 { font-size: 44px; }
h3 { font-size: 33px; }
h4 { font-size: 24px; }
h5 { font-size: 20px; }
h6 { font-size: 18px; } 

a { color: inherit; text-decoration: none; transition: color 0.3s ease; }
a:focus { outline: none; }
a:hover { color: var(--clr-primary); }

p { font-size: 16px; font-weight: normal; line-height: 1.6; }
p:not(:last-child) { margin-bottom: 10px; }
p:empty { display: none; }

/*==================================
  Section Titles
===================================*/
.section-title h2,
.section-title h2.elementor-heading-title { font-size: 44px; font-weight: 600; color: var(--heading-color); }
.section-title h2 span,
.section-title h2.elementor-heading-title span { color: var(--clr-primary);}

.mb-0 { margin-bottom: 0;}
.mb-0 h2,
.mb-0 .elementor-heading-title { margin-bottom: 0; }
/*==================================
  General CSS
===================================*/
.section-space { padding: 100px 20px; }
.padding-7x { padding: 70px 20px;}

.bg-red { background-color: var(--clr-primary);}
.bg-red .elementor-heading-title,
.bg-red h2.elementor-heading-title { color: #ffffff; }
.bg-red .elementor-widget-text-editor { color: #ffffff;}
.bg-red p { color: #ffffff; }

.bg-grey { background-color: #f1f1f1; }


.max-width-80 { max-width: 80%; width: 100%; margin-inline: auto;}
.max-width-600 { max-width: 600px; width: 100%; margin-inline: auto;}
.max-width-700 { max-width: 700px; width: 100%; margin-inline: auto;}

/*==================================
   Button Styling
===================================*/
.site-button a.elementor-button { padding: 15px 30px; border-radius: 8px;   font-size: 18px; line-height: 1.5; font-weight: 600; border: 1px solid; min-height: 60px; display: inline-flex; align-items: center; justify-content: center;}

/* Primary button */
.site-button.primary-button a.elementor-button { background-color: var(--primary-color); border-color: var(--primary-color); }
.site-button.primary-button a.elementor-button:hover { background-color: var(--secondary-color); border-color: var(--secondary-color); color: var(--text-color); }
/* White button */
.site-button.white-button a.elementor-button { background-color: #ffffff; border-color: #ffffff; color: var(--clr-primary);}
.site-button.white-button a.elementor-button:hover { background-color: transparent; color: #ffffff; }
/* Red button */
.site-button.red-button a.elementor-button { background-color: var(--clr-primary); border-color: var(--clr-primary); color: #ffffff;}
.site-button.red-button a.elementor-button:hover { background-color: transparent; color: var(--clr-primary); }

/* Green button */
.site-button.green-button a.elementor-button { background-color: var(--green-color); border-color: var(--green-color); color: #ffffff;}
.site-button.green-button a.elementor-button:hover { background-color: var(--primary-color); border-color: var(--primary-color); color: #ffffff; }
/* Outline button */
.site-button.outline-button a.elementor-button { background-color: transparent; border-color: #000000; color: var(--text-color);}
.site-button.outline-button a.elementor-button:hover { background-color: var(--primary-color); border-color: var(--primary-color); color: #ffffff;}


/*==================================
Header
===================================*/

body.home .hl-menu { position: absolute; top: 0; left: 0; width: 100%; z-index: 100; background-color: transparent;}
.hl-menu { background-color:#ffffff; min-height:90px; padding-left: 20px; padding-right: 20px; }
/* .hl-menu.is-sticky { animation: slideDown 0.35s ease-in-out; background-color:#131313; position: fixed; padding: 10px 20px; } */
.hl-menu .elementor-nav-menu { margin-right: -15px;}
.hl-menu .elementor-nav-menu li a {  font-size: 16px; color:var(--clr-text); font-weight: 600; line-height: 1.3; padding: 10px 15px; position: relative;}
.hl-menu .elementor-nav-menu li a:hover,
.hl-menu .elementor-nav-menu li.current-menu-item a { padding: 10px 15px; color: var(--clr-primary); }

.hl-menu .elementor-nav-menu li:not(.menu-button) a:before { content: ''; position: absolute; bottom: 8px; left: 50%; background-color: var(--clr-primary); width: calc(100% - 30px); height: 1px; transform: translateX(-50%) scale(0) ; opacity: 0; transition: 0.3s all ease-in-out;}
.hl-menu .elementor-nav-menu li a:hover:before,
.hl-menu .elementor-nav-menu li.current-menu-item a:before { transform: translateX(-50%) scale(1) ; opacity: 1;}

.hl-menu .elementor-nav-menu li.menu-button a { padding: 18px 34px; font-size: 18px; line-height: 1.3; font-weight: 400; font-family: Fredoka, sans-serif; background-color: var(--yellow-color);
    border-radius: 50px; color: #ffffff; margin-left: 20px;  }
.hl-menu .elementor-nav-menu li.menu-button a:hover,
.hl-menu .elementor-nav-menu li.menu-button.current-menu-item a { background-color:var(--clr-primary); }

body.home .hl-menu .elementor-nav-menu li a { color: #ffffff; }

/* @keyframes slideDown {
	0% { transform: translateY(-100%); }
	100% { transform: translateY(0); }
}
 */

/* Hamburger Menu */
header .elementor-menu-toggle { background-color: var(--clr-primary); border: 1px solid var(--clr-primary); padding: 10px; border-radius: 5px;  box-shadow: 0px 8px 20px -4px rgba(15, 25, 40, 0.08), 0px 4px 12px -4px rgba(15, 25, 40, 0.04);}
header .elementor-menu-toggle svg { fill:#ffffff !important; }

header .elementor-nav-menu--dropdown.elementor-nav-menu__container { margin-top:25px !important; }
header .elementor-nav-menu--dropdown .elementor-nav-menu li a { padding:20px; background-color: #f1f1f1; color: #a41e20;  }
header .elementor-nav-menu--dropdown .elementor-nav-menu li a:hover,
header .elementor-nav-menu--dropdown .elementor-nav-menu li.current-menu-item a:hover  { padding:20px; }
body.home header .elementor-nav-menu--dropdown .elementor-nav-menu li a { color: #a41e20; }
header .elementor-nav-menu--dropdown .elementor-nav-menu li:not(:last-child) a { border-bottom: 1px solid #ffffff; }
header .elementor-nav-menu--dropdown .elementor-nav-menu li a.elementor-item-active, 
header .elementor-nav-menu--dropdown .elementor-nav-menu li a:hover { background-color: var(--clr-primary); color: #ffffff !important ; }

/*==================================
Hero Section
===================================*/
.hero_section { min-height: 100vh; position: relative; padding: 100px 20px;}
.hero_section h1.elementor-heading-title { font-size: 75px; font-weight: 600; line-height: 1.1; color: #ffffff; margin-bottom: 0; }
.hero_section h1.elementor-heading-title span { color:#ec4143; }
.hero_section .elementor-widget-text-editor,
.hero_section .elementor-widget-text-editor p { font-size: 20px; line-height: 1.5; font-weight: 500; color: #ffffff; margin-top: 15px; margin-bottom: 15px !important;}

/*==================================
Video Slider Section
===================================*/
.video-slider .elementor-heading-title { font-size: 22px; line-height: 1.3; font-weight: 600; color: var(--heading-color); }
.video-slider .e-n-carousel { max-width: calc(100% - 160px); width: 100%; margin-inline:auto; }
.video-slider .e-n-carousel .swiper-wrapper .swiper-slide{  border-radius: 20px; overflow: hidden; }
.elementor-swiper-button { width: 50px; height: 50px; background-color: var(--clr-primary);  border-radius: 50%; display: flex; align-items: center; justify-content: center;}

.video-slider .swiper-pagination { margin-top: 30px; }
.swiper-pagination .swiper-pagination-bullet { width: 15px; height: 15px; background-color: #dadada; opacity: 1; transition: 0.3s all ease-in-out;}
.swiper-pagination .swiper-pagination-bullet:hover,
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { background-color: var(--clr-primary);}

/*==================================
Ubetr Mich
===================================*/
.quote-msg { border-radius: 15px; background-color: #f1f1f1; padding: 50px; margin-top: 50px; margin-bottom: 50px;}
.quote-msg h3.elementor-heading-title { font-size: 33px; line-height: 1.3; font-weight: 600; color: var(--clr-primary); padding-inline: 100px; }
.quote-msg h4.elementor-heading-title { font-size: 18px; line-height: 1.3; font-weight: 600; color: var(--heading-color);}

.biografie { }
.biografie .biografie_image{ padding-right: 50px;}
.biografie .biografie_image img { border-radius: 15px;}
.biografie .biografie_content p:not(:last-child) { margin-bottom: 20px;}
.biografie .biografie_content ul { padding-left: 20px; }

/*==================================
CTA Red
===================================*/
.cta .site-button { margin-top: 20px; }

/*==================================
Tab Section
===================================*/
.tab-section h3 { text-align: center; font-size: 22px; line-height: 1.3; font-weight: 600; margin-bottom: 0; }

.e-n-tabs .e-n-tabs-heading {    border: 1px solid #b8bbc3; width: fit-content; padding: 5px; margin-inline: auto; border-radius: 10px; margin-bottom: 30px; margin-top: 10px; }
.e-n-tabs .e-n-tabs-heading .e-n-tab-title { background-color: transparent; border-radius: 8px; font-weight: 600; }
.e-n-tabs .e-n-tabs-heading .e-n-tab-title:hover,
.e-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=true] { background-color: var(--clr-primary) !important; }
.e-n-tabs .e-n-tabs-heading .e-n-tab-title .e-n-tab-title-text { font-size: 18px; }
.e-n-tabs .e-n-tabs-content .tab-content { text-align: center; }
.e-n-tabs .e-n-tabs-content .tab-content .elementor-widget-text-editor,
.e-n-tabs .e-n-tabs-content .tab-content .elementor-widget-text-editor p { text-align: center;}

.tab-content__middle { margin-block: 20px;}
.tab-content__middle .benefit { display: flex; gap: 30px; flex-flow: wrap;}
.tab-content__middle .benefit-box { background-color: #ffffff; padding: 40px; border-radius: 15px; flex: 0 0 calc((100% - 30px) / 2) ; max-width: calc((100% - 30px) / 2); width: 100%; }
.tab-content__middle .benefit-box .elementor-icon { width: 50px; height: 50px; font-size: 18px; background-color: var(--clr-primary); display: flex; align-items: center; justify-content: center; border-radius: 50%; margin-right: 10px;}
.tab-content__middle .benefit-box .elementor-icon svg { fill: #ffffff; }
.tab-content__middle .benefit-box .elementor-icon-box-title { margin-top: 0; font-size: 18px; font-weight: 600; line-height: 1.4; color: var(--heading-color); }

.steps { display: flex; gap: 30px ; flex-flow: wrap; counter-reset: step;}
.steps .step_item { flex: 0 0 calc((100% - 90px) / 4); max-width: calc((100% - 90px) / 4); width: 100%; background-color: #ffffff; border-radius: 15px; padding: 30px 20px; text-align: center;  counter-increment: step; position: relative;}
.steps .step_item .elementor-icon-box-title::before { content: counter(step, decimal-leading-zero); position: absolute; left: 50%; top: 0; width: 50px; height: 50px; background-color: var(--clr-primary); color: #fff; border-radius: 50%; font-weight: 600; transform: translateX(-50%); font-size: 18px; display: flex; align-items: center; justify-content: center; }
.steps .step_item .elementor-icon-box-title { margin-top: 0; padding-top: 70px; text-align: center; position: relative; font-size: 18px; line-height: 1.2; font-weight: 600; }
.steps .step_item .elementor-icon-box-description { text-align: center;}


.cta-inner { border-radius: 15px; }
/*==================================
Testimonials Section
===================================*/
.tm-slider { margin-top: 10px; }
.tm-slider .e-n-carousel { max-width: calc(100% - 160px); width: 100%; margin-inline:auto;  }
.tm-slider .e-n-carousel .swiper-wrapper .swiper-slide { background-color: #f1f1f1; border-radius: 15px; padding: 50px; }
.tm-slider .elementor-testimonial-content { font-size: 15px; font-weight: 600; line-height: 1.7; color: var(--clr-primary);}
.tm-slider .elementor-testimonial-meta .elementor-testimonial-name { font-size: 18px; font-weight: 600; line-height: 1.3; color: var(--clr-text); }
.tm-slider .swiper-pagination { margin-top: 20px; }

.swiper-pagination { margin-inline: auto; position: relative; left: auto !important; transform: translateX(0) !important;}

/*==================================
Project Section
===================================*/
.projects { display: flex; gap: 45px; flex-flow: wrap; margin-top: 20px; }
.projects .project_item { flex: 0 0 calc((100% - 90px) / 3); max-width: calc((100% - 90px) / 3); width: 100%; }
.projects .project_item .elementor-image-box-img { margin-bottom: 0 !important; background-color: #ffffff; border-radius: 8px; text-align: center; }
.projects .project_item .elementor-image-box-img img { border-radius: 8px; margin-inline: auto; }
.projects .project_item .elementor-image-box-content .elementor-image-box-title { font-size: 17px; font-weight: 600; line-height: 1.5; color: var(--heading-color);}
.projects .project_item .elementor-image-box-content .elementor-image-box-title a:hover { color: var(--clr-primary);}
.projects .project_item .elementor-image-box-content ul { margin-top: 30px; list-style: none;}
.projects .project_item .elementor-image-box-content ul li { font-size: 15px; font-weight: 500; line-height: 1.5; color: var(--clr-text);}
.projects .project_item .elementor-image-box-content ul li a { color: var(--clr-primary);}
.projects .project_item .elementor-image-box-content ul li a:hover { text-decoration: underline;}

/*==================================
Contact form Section
===================================*/
.form-row { display: flex; flex-wrap: wrap; gap: 15px; }
.form-group { width: 100%; }
.form-group p { margin-bottom: 0;}
.form-group.full-width { width: 100%; }
.form-group input,
.form-group select,
.form-group textarea { width: 100%; padding: 15px; border-radius: 8px; border: 1px solid #b4bebb; }
.form-group input:focus,
.form-group textarea:focus { border-color:var(--heading-color); }

.form-group .checkbox { font-size: 14px; }
.contact-form textarea { resize: none; }

.contact-preference { flex-direction: column; margin-top: 20px; gap: 10px; }
.contact-preference label { font-weight: 600; display: flex; align-items: center; gap: 10px; }
.contact-preference .wpcf7-radio { display: flex; flex-direction: column; gap: 15px; }
.contact-preference .wpcf7-radio .wpcf7-list-item { margin-left: 0; }
.contact-preference .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label { font-size: 14px; font-weight: 500; line-height: 1.3; color: var(--heading-color);  }
.contact-preference .wpcf7-radio input[type="radio"] { appearance: none; -webkit-appearance: none; width: 16px; height: 16px; border: 1px solid var(--heading-color); border-radius: 50%; position: relative; cursor: pointer; }
.contact-preference .wpcf7-radio input[type="radio"]:checked::before { content: ""; width: 10px; height: 10px; background: var(--heading-color); border-radius: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

.wpcf7-acceptance { margin-top: 20px; margin-bottom: 20px; display: inline-block; }
.wpcf7-acceptance .wpcf7-list-item { margin-left: 0; }
.wpcf7-acceptance .wpcf7-list-item label { display: flex; align-items: center; gap: 10px;} 
.wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label { font-size: 14px; font-weight: 500; line-height: 1.3; color: var(--heading-color); }
.wpcf7-acceptance input[type="checkbox"] { appearance: none; -webkit-appearance: none; width: 19px !important; height: 19px; border: 1px solid var(--heading-color); border-radius: 4px; position: relative; cursor: pointer; padding: 0; }
.wpcf7-acceptance input[type="checkbox"]:checked { background-color: var(--heading-color);}
.wpcf7-acceptance input[type="checkbox"]:checked::before { content: ''; position: absolute; top: 2px; left: 50%; width: 5px; height: 10px; border: solid #ffffff; border-width: 0 2px 2px 0; transform: translatex(-50%) rotate(45deg); }

.form-group .btn-submit { background-color: var(--clr-primary); color: #ffffff; padding: 15px; border-radius: 8px; width: 100%; font-size: 18px; cursor: pointer; border: 1px solid var(--clr-primary);}
.form-group .btn-submit[type=submit]:hover { background-color: transparent; color: var(--clr-primary);}

.contact-form select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath fill='%23666' d='M297.4 470.6C309.9 483.1 330.2 483.1 342.7 470.6L534.7 278.6C547.2 266.1 547.2 245.8 534.7 233.3C522.2 220.8 501.9 220.8 489.4 233.3L320 402.7L150.6 233.4C138.1 220.9 117.8 220.9 105.3 233.4C92.8 245.9 92.8 266.2 105.3 278.7L297.3 470.7z'/%3E%3C/svg%3E"); background-repeat: no-repeat;  background-position: right 16px center; background-size: 14px; padding-right: 44px; }

/*==================================
Footer
===================================*/
.footer_top { padding-top: 20px; padding-bottom: 20px; border-top: 1px solid #b4bebb; }
.footer_top .elementor-widget-text-editor { font-size: 14px; line-height: 1.3; }
.contact-details { list-style: none;}
.contact-details li { font-size: 14px; line-height: 1.3; font-weight: 500; color: var(--clr-text); margin-top: 10px; }

footer { padding: 0 20px;}
footer .copyright { border-top:1px solid #b4bebb; }
footer .copyright p { margin-bottom: 0; font-size: 14px; color: var(--clr-text); font-weight: 500; line-height: 1.5 ;}
footer .elementor-nav-menu--main .elementor-nav-menu li a { font-size: 14px; color: var(--clr-text); font-weight: 500; line-height: 1.5;  padding: 17px 10px;}
footer .elementor-nav-menu--main .elementor-nav-menu li a:hover,
footer .elementor-nav-menu--main .elementor-nav-menu li.current-menu-item a  { color: var(--clr-primary); padding: 17px 10px; }
footer .elementor-nav-menu--main .elementor-nav-menu li:last-child a { padding-right:0; }

/*==================================
Impressum Page
===================================*/
.page-title h1.elementor-heading-title { font-size: 44px; font-weight: 600; line-height: 1.2; color: var(--heading-color); } 



/*==================================
Responsive
===================================*/

@media only screen and (max-width:1365px) {
	
}
@media only screen and (max-width:1279px) {
	
}
@media only screen and (max-width:1169px) {
  .hero_section h1.elementor-heading-title { font-size: 60px; }
}
@media only screen and (max-width:1024px) {
  .max-width-80 { max-width: 100%; }
  .tab-content__middle .benefit-box { flex: 0 0 100%; max-width: 100%; }
  .steps .step_item { flex: 0 0 calc((100% - 30px) / 2); max-width: calc((100% - 30px) / 2);}
  .projects .project_item { flex: 0 0 calc((100% - 45px) / 2); max-width: calc((100% - 45px) / 2); }
  footer .elementor-nav-menu--main .elementor-nav-menu li a { padding: 17px 5px; }
  footer .elementor-nav-menu--main .elementor-nav-menu li a:hover, 
  footer .elementor-nav-menu--main .elementor-nav-menu li.current-menu-item a { padding: 17px 5px; }
  .hl-menu .elementor-nav-menu li:not(.menu-button) a:before { display: none;}
  .page-title h1.elementor-heading-title { font-size: 36px; }

}
@media only screen and (max-width:767px) {
  .hero_section h1.elementor-heading-title { font-size: 50px; }
  .hero_section .elementor-widget-text-editor, 
  .hero_section .elementor-widget-text-editor p { font-size: 16px; margin-top: 10px; margin-bottom: 10px !important; }
  .section-title h2, .section-title h2.elementor-heading-title { font-size: 36px; }
  h3 { font-size: 28px; }
  .section-space { padding: 70px 20px; }
  .padding-7x { padding: 50px 20px;}
  .elementor-swiper-button { width: 40px; height: 40px; }
  .elementor-element .swiper~.elementor-swiper-button svg { width: 18px; height: 18px;}
  .quote-msg { padding: 30px; margin-top: 30px; margin-bottom: 30px; }
  .quote-msg h3.elementor-heading-title { padding-inline: 0;  font-size: 28px; }
  .e-n-tabs .e-n-tabs-heading .e-n-tab-title { border: 1px solid var(--heading-color); }
  .projects .project_item { flex: 0 0 100%; max-width: 100%; }
  .biografie .biografie_image { padding-right: 0;}

  footer .copyright { padding: 17px 0px; }
  footer .elementor-nav-menu--main .elementor-nav-menu { margin-right: auto;}
  footer .elementor-nav-menu--main .elementor-nav-menu li a { padding: 0px 5px;}
  footer .elementor-nav-menu--main .elementor-nav-menu li a:hover, 
  footer .elementor-nav-menu--main .elementor-nav-menu li.current-menu-item a { padding: 0px 5px; }
  .page-title h1.elementor-heading-title { font-size: 30px; }
  
}
@media only screen and (max-width:639px) {
  .section-space { padding: 50px 20px; }
  .padding-7x { padding: 50px 20px;}
	.section-title h2, .section-title h2.elementor-heading-title { font-size: 30px; }
  h3 { font-size: 24px; }
  .video-slider .e-n-carousel { max-width: calc(100% - 100px); }
  .tm-slider .e-n-carousel { max-width: calc(100% - 100px); }
  .tm-slider .e-n-carousel .swiper-wrapper .swiper-slide { padding: 30px; }
  .tm-slider .elementor-testimonial-meta .elementor-testimonial-name { font-size: 16px; }
}
@media only screen and (max-width:575px) {
  .video-slider .e-n-carousel { max-width: 100%; }
  .tm-slider .e-n-carousel { max-width: 100%; }
  .tm-slider .elementor-swiper-button,
  .video-slider .elementor-swiper-button { display: none !important;}
  .steps .step_item { flex: 0 0 100%; max-width: 100%; }
  .hero_section h1.elementor-heading-title { font-size: 40px; line-height: 1.3; }
  .hero_section .elementor-widget-text-editor, .hero_section .elementor-widget-text-editor p { margin-top: 0px;  }
  .hero_section .site-button { width: 100%;}
  .hero_section .site-button .elementor-button { width: 100%;}
  .site-button a.elementor-button { padding: 10px 20px; font-size: 16px; min-height: 50px; }
  .tab-content__middle .benefit-box .elementor-icon { width: 30px; height: 30px; }
  .hero_section { padding: 100px 20px 30px; position: relative; z-index: 1; }
  .hero_section:after { content: ''; position: absolute; inset:0; width: 100%; height: 100%; background-image: linear-gradient(0deg, #A41E20 30%, #F2295B00 60%); z-index: -1; }
  .hero_section:before { display: none;} 
  .quote-msg h3.elementor-heading-title { font-size: 24px; }
  .quote-msg h4.elementor-heading-title { margin-bottom: 0; }
}
@media only screen and (max-width:479px) {
  .hero_section h1.elementor-heading-title { font-size: 34px; }	
  .section-title h2, .section-title h2.elementor-heading-title { font-size: 24px; }
  .tab-section h3 { font-size: 20px; }
  .tab-content__middle .benefit-box { padding: 20px; }
  .steps .step_item .elementor-icon-box-title::before { width: 40px; height: 40px; font-size: 16px; }
  .tm-slider .e-n-carousel .swiper-wrapper .swiper-slide { padding: 20px; }
  .tm-slider .elementor-testimonial-content { font-weight: 500; line-height: 1.5; }
  .wpcf7-acceptance input[type="checkbox"] { position: absolute; left: 0;}
  .wpcf7-acceptance .wpcf7-list-item label .wpcf7-list-item-label { padding-left: 30px; }
  footer .elementor-nav-menu--main .elementor-nav-menu { justify-content: center; }
}


