.elementor-469 .elementor-element.elementor-element-c11dcdf{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-469 .elementor-element.elementor-element-b49142b{--display:flex;}.elementor-469 .elementor-element.elementor-element-31d9997{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-f5cde31{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-ae8bfbf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-870e3a3{--display:flex;}.elementor-widget-slides .elementor-slide-heading{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-slides .elementor-slide-description{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-slides .elementor-slide-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-469 .elementor-element.elementor-element-cc30a9b .swiper-slide{transition-duration:calc(5000ms*1.2);height:400px;}.elementor-469 .elementor-element.elementor-element-cc30a9b .swiper-slide-contents{max-width:66%;}.elementor-469 .elementor-element.elementor-element-cc30a9b .swiper-slide-inner{text-align:center;}.elementor-469 .elementor-element.elementor-element-9e43467{--display:flex;}.elementor-469 .elementor-element.elementor-element-a558ed1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:75px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-469 .elementor-element.elementor-element-b88feed{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-b091916{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-469 .elementor-element.elementor-element-1412554{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-469 .elementor-element.elementor-element-ad2d696{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-469 .elementor-element.elementor-element-515a65f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-469 .elementor-element.elementor-element-c433a6f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-469 .elementor-element.elementor-element-97d21f1 .elementor-icon-wrapper{text-align:center;}.elementor-469 .elementor-element.elementor-element-822d885{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-ce097bd{margin:-25px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-469 .elementor-element.elementor-element-86b4c2e{--display:flex;}.elementor-469 .elementor-element.elementor-element-8c9c0a6{--spacer-size:50px;}.elementor-469 .elementor-element.elementor-element-a70b175{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.3;}.elementor-469 .elementor-element.elementor-element-a70b175::before, .elementor-469 .elementor-element.elementor-element-a70b175 > .elementor-background-video-container::before, .elementor-469 .elementor-element.elementor-element-a70b175 > .e-con-inner > .elementor-background-video-container::before, .elementor-469 .elementor-element.elementor-element-a70b175 > .elementor-background-slideshow::before, .elementor-469 .elementor-element.elementor-element-a70b175 > .e-con-inner > .elementor-background-slideshow::before, .elementor-469 .elementor-element.elementor-element-a70b175 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://sunnypower.cz/wp-content/uploads/2025/07/carecky-scaled.png");--background-overlay:'';background-position:bottom left;}.elementor-469 .elementor-element.elementor-element-a70b175::before{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 6.8px ) hue-rotate( 0deg );}.elementor-469 .elementor-element.elementor-element-5f53b22{text-align:center;}.elementor-469 .elementor-element.elementor-element-73c2970{text-align:center;}.elementor-469 .elementor-element.elementor-element-5be0609{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-469 .elementor-element.elementor-element-2f95f96{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-58fa577{--icon-box-icon-margin:15px;}.elementor-469 .elementor-element.elementor-element-453bad5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-57828d6{--icon-box-icon-margin:15px;}.elementor-469 .elementor-element.elementor-element-9e98bde{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-1c0c20b{--icon-box-icon-margin:15px;}.elementor-469 .elementor-element.elementor-element-f61fb35{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-469 .elementor-element.elementor-element-726c3a4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-a4cc8e4{--icon-box-icon-margin:15px;}.elementor-469 .elementor-element.elementor-element-ecc6d27{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-20a4e8d{--icon-box-icon-margin:15px;}.elementor-469 .elementor-element.elementor-element-71d2fb7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-18008c2{--icon-box-icon-margin:15px;}.elementor-469 .elementor-element.elementor-element-6bd51fe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-e51dd11{text-align:center;}.elementor-469 .elementor-element.elementor-element-2c033df{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-469 .elementor-element.elementor-element-088ca1d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-469 .elementor-element.elementor-element-41a5744{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-469 .elementor-element.elementor-element-aa8076c .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-469 .elementor-element.elementor-element-aa8076c .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-469 .elementor-element.elementor-element-aa8076c{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-469 .elementor-element.elementor-element-aa8076c .elementor-icon-list-text{transition:color 0.3s;}.elementor-469 .elementor-element.elementor-element-c636b91{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-00d5668{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:75px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-469 .elementor-element.elementor-element-721bce3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-9f4587d .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-469 .elementor-element.elementor-element-9f4587d .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-469 .elementor-element.elementor-element-9f4587d{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-469 .elementor-element.elementor-element-9f4587d .elementor-icon-list-text{transition:color 0.3s;}.elementor-469 .elementor-element.elementor-element-177e0df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-e30166d .elementor-heading-title{color:#2C3E50;}.elementor-469 .elementor-element.elementor-element-36cf4cd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-d46f9d8{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;text-align:center;}.elementor-469 .elementor-element.elementor-element-d46f9d8.elementor-element{--align-self:center;}.elementor-469 .elementor-element.elementor-element-d46f9d8 .elementor-heading-title{color:#2C3E50;}.elementor-469 .elementor-element.elementor-element-0f0e83d{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-469 .elementor-element.elementor-element-0f0e83d.elementor-element{--align-self:center;}.elementor-469 .elementor-element.elementor-element-dda857f{--display:flex;}.elementor-469 .elementor-element.elementor-element-c4b9006{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;text-align:center;}.elementor-469 .elementor-element.elementor-element-c4b9006.elementor-element{--align-self:center;}.elementor-469 .elementor-element.elementor-element-c4b9006 .elementor-heading-title{color:#2C3E50;}.elementor-469 .elementor-element.elementor-element-3d709a4{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-469 .elementor-element.elementor-element-3d709a4.elementor-element{--align-self:center;}.elementor-469 .elementor-element.elementor-element-d1fe600{--display:flex;}.elementor-469 .elementor-element.elementor-element-907ed35{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;text-align:center;}.elementor-469 .elementor-element.elementor-element-907ed35.elementor-element{--align-self:center;}.elementor-469 .elementor-element.elementor-element-907ed35 .elementor-heading-title{color:#2C3E50;}.elementor-469 .elementor-element.elementor-element-cde4991{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-469 .elementor-element.elementor-element-cde4991.elementor-element{--align-self:center;}.elementor-469 .elementor-element.elementor-element-1d62a2f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-75a8ef8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-469 .elementor-element.elementor-element-5d6b3dd{text-align:center;}.elementor-469 .elementor-element.elementor-element-3ecf322{text-align:center;}@media(max-width:1024px){.elementor-469 .elementor-element.elementor-element-1412554{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-469 .elementor-element.elementor-element-b88feed{--width:50%;}.elementor-469 .elementor-element.elementor-element-ad2d696{--width:50%;}.elementor-469 .elementor-element.elementor-element-c433a6f{--width:15%;}.elementor-469 .elementor-element.elementor-element-822d885{--width:100%;}.elementor-469 .elementor-element.elementor-element-2f95f96{--width:33%;}.elementor-469 .elementor-element.elementor-element-453bad5{--width:33%;}.elementor-469 .elementor-element.elementor-element-9e98bde{--width:33%;}.elementor-469 .elementor-element.elementor-element-726c3a4{--width:33%;}.elementor-469 .elementor-element.elementor-element-ecc6d27{--width:33%;}.elementor-469 .elementor-element.elementor-element-71d2fb7{--width:33%;}.elementor-469 .elementor-element.elementor-element-41a5744{--width:50%;}.elementor-469 .elementor-element.elementor-element-c636b91{--width:50%;}.elementor-469 .elementor-element.elementor-element-721bce3{--width:20%;}.elementor-469 .elementor-element.elementor-element-177e0df{--width:100%;}.elementor-469 .elementor-element.elementor-element-1d62a2f{--content-width:80%;}}@media(max-width:767px){.elementor-469 .elementor-element.elementor-element-1412554{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for container, class: .elementor-element-c11dcdf *//* Celá první sekce - rodinné domy */
.sekce1 {
   background: white;
   padding: 80px 0;
   text-align: center;
}

.sekce1 .e-con-inner {
   max-width: 1000px;
   margin: 0 auto;
   padding: 0 20px;
}

/* Hlavní nadpis */
.sekce1 .nadpis .elementor-heading-title {
   font-size: 2.5rem !important;
   font-weight: 700 !important;
   color: #2d3748 !important;
   margin-bottom: 20px !important;
   line-height: 1.2 !important;
   position: relative !important;
}

.sekce1 .nadpis .elementor-heading-title::after {
   content: '';
   position: absolute;
   bottom: -10px;
   left: 50%;
   transform: translateX(-50%);
   width: 100px;
   height: 4px;
   background: linear-gradient(135deg, #FFC107, #FFB300);
   border-radius: 2px;
}

/* Podnadpis */
.sekce1 .hero-subtitle {
   font-size: 1.3rem !important;
   font-weight: 600 !important;
   color: #1e88e5 !important;
   margin: 40px 0 25px 0 !important;
   text-align: center !important;
}

/* Popis */
.sekce1 .hero-description {
   font-size: 1.1rem !important;
   color: #4a5568 !important;
   line-height: 1.7 !important;
   margin-bottom: 40px !important;
   text-align: center !important;
   max-width: 800px !important;
   margin-left: auto !important;
   margin-right: auto !important;
}

.sekce1 .hero-description strong {
   color: #2d3748 !important;
   font-weight: 600 !important;
}

/* CTA tlačítko */
.sekce1 #btn {
   background: linear-gradient(135deg, #FFC107, #FFB300) !important;
   color: #2d3748 !important;
   padding: 20px 45px !important;
   font-size: 1.2rem !important;
   font-weight: 700 !important;
   text-decoration: none !important;
   border-radius: 50px !important;
   transition: all 0.4s ease !important;
   box-shadow: 0 10px 30px rgba(255, 193, 7, 0.3) !important;
   text-transform: uppercase !important;
   letter-spacing: 0.5px !important;
   border: none !important;
   position: relative !important;
   overflow: hidden !important;
}

.sekce1 #btn::before {
   content: '';
   position: absolute;
   top: 0;
   left: -100%;
   width: 100%;
   height: 100%;
   background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
   transition: left 0.6s ease;
}

.sekce1 #btn:hover::before {
   left: 100%;
}

.sekce1 #btn:hover {
   transform: translateY(-3px) scale(1.02) !important;
   box-shadow: 0 15px 40px rgba(255, 193, 7, 0.4) !important;
   background: linear-gradient(135deg, #FFB300, #FF8F00) !important;
}

.sekce1 #btn .elementor-button-text {
   font-weight: 700 !important;
   font-size: 1.2rem !important;
   position: relative !important;
   z-index: 2 !important;
}

/* Responzivní design */
@media (max-width: 768px) {
   .sekce1 {
       padding: 60px 0;
   }

   .sekce1 .e-con-inner {
       padding: 0 15px;
   }

   .sekce1 .nadpis .elementor-heading-title {
       font-size: 2rem !important;
       margin-bottom: 18px !important;
   }

   .sekce1 .hero-subtitle {
       font-size: 1.2rem !important;
       margin: 30px 0 20px 0 !important;
   }

   .sekce1 .hero-description {
       font-size: 1rem !important;
       margin-bottom: 30px !important;
       line-height: 1.6 !important;
   }

   .sekce1 #btn {
       padding: 15px 35px !important;
       font-size: 1.1rem !important;
   }

   .sekce1 #btn .elementor-button-text {
       font-size: 1.1rem !important;
   }
}

@media (max-width: 480px) {
   .sekce1 {
       padding: 50px 0;
   }

   .sekce1 .nadpis .elementor-heading-title {
       font-size: 1.8rem !important;
   }

   .sekce1 .hero-subtitle {
       font-size: 1.1rem !important;
   }

   .sekce1 .hero-description {
       font-size: 0.95rem !important;
   }

   .sekce1 #btn {
       padding: 12px 30px !important;
       font-size: 1rem !important;
   }

   .sekce1 #btn .elementor-button-text {
       font-size: 1rem !important;
   }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-68fd9d4 *//* Proces sekce */
.process-section {
   padding: 80px 0;
   background: #f8fafc;
}

.process-container {
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 20px;
}

.process-title {
   font-size: 2.2rem;
   font-weight: 700;
   color: #2d3748;
   text-align: center;
   margin-bottom: 20px;
   position: relative;
}

.process-title::after {
   content: '';
   position: absolute;
   bottom: -10px;
   left: 50%;
   transform: translateX(-50%);
   width: 80px;
   height: 4px;
   background: linear-gradient(135deg, #FFC107, #FFB300);
   border-radius: 2px;
}

.process-subtitle {
   text-align: center;
   font-size: 1.1rem;
   margin: 20px auto 0 auto;
   color: #4a5568;
   max-width: 600px;
}

.process-steps {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
   gap: 30px;
   margin-top: 60px;
}

.process-step {
   background: white;
   padding: 35px 30px;
   border-radius: 12px;
   box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
   border: 1px solid #e6e9ed;
   position: relative;
   text-align: center;
   transition: all 0.3s ease;
   height: 100%;
   display: flex;
   flex-direction: column;
}

.process-step::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 4px;
   background: linear-gradient(90deg, #1e88e5, #1565c0);
   border-radius: 12px 12px 0 0;
}

.process-step:hover {
   transform: translateY(-5px);
   box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
   border-color: #FFC107;
}

.process-step:hover::before {
   background: linear-gradient(90deg, #FFC107, #FFB300);
}

.step-number {
   display: inline-block;
   width: 50px;
   height: 50px;
   background: linear-gradient(135deg, #1e88e5, #1565c0);
   color: white;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-weight: 700;
   font-size: 1.2rem;
   margin: 0 auto 20px auto;
   box-shadow: 0 4px 15px rgba(30, 136, 229, 0.3);
   transition: all 0.3s ease;
}

.process-step:hover .step-number {
   background: linear-gradient(135deg, #FFC107, #FFB300);
   color: #2d3748;
   transform: scale(1.1);
   box-shadow: 0 6px 20px rgba(255, 193, 7, 0.4);
}

.step-title {
   font-size: 1.3rem;
   font-weight: 600;
   color: #2d3748;
   margin-bottom: 15px;
   line-height: 1.3;
}



.step-description strong {
   color: #2d3748;
   font-weight: 600;
}

/* Responzivní design */
@media (max-width: 1024px) {
   .process-steps {
       grid-template-columns: repeat(2, 1fr);
       gap: 25px;
   }
}

@media (max-width: 768px) {
   .process-section {
       padding: 60px 0;
   }

   .process-container {
       padding: 0 15px;
   }

   .process-title {
       font-size: 1.8rem;
       margin-bottom: 18px;
   }

   .process-subtitle {
       font-size: 1rem;
   }

   .process-steps {
       grid-template-columns: 1fr;
       gap: 20px;
       margin-top: 40px;
   }

   .process-step {
       padding: 30px 25px;
   }

   .step-number {
       width: 45px;
       height: 45px;
       font-size: 1.1rem;
   }

   .step-title {
       font-size: 1.2rem;
   }

   .step-description {
       font-size: 0.9rem;
   }
}

@media (max-width: 480px) {
   .process-section {
       padding: 50px 0;
   }

   .process-title {
       font-size: 1.6rem;
   }

   .process-subtitle {
       font-size: 0.95rem;
   }

   .process-step {
       padding: 25px 20px;
   }

   .step-number {
       width: 40px;
       height: 40px;
       font-size: 1rem;
   }

   .step-title {
       font-size: 1.1rem;
   }

   .step-description {
       font-size: 0.85rem;
   }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae8bfbf *//* Reference sekce */
.realizovane {
    padding: 80px 0;
    background: white;
}

.realizovane .nadpis .elementor-heading-title {
    font-size: 2.2rem;
    font-weight: 700;
    color: #2d3748 !important;
    text-align: center;
    margin-bottom: 50px;
    position: relative;
}

.realizovane .nadpis .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #FFC107, #FFB300);
    border-radius: 2px;
}

/* Image carousel styling */
.sliderinos .elementor-image-carousel-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.sliderinos .swiper-slide {
    border-radius: 12px;
    overflow: hidden;
    margin: 0 10px;
}

.sliderinos .swiper-slide-inner {
    width: 100%;
    height: 400px;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    margin: 0;
}

.sliderinos .swiper-slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
    border-radius: 12px;
}

.sliderinos .swiper-slide:hover .swiper-slide-image {
    transform: scale(1.05);
}

/* Navigation buttons */
.sliderinos .elementor-swiper-button-prev,
.sliderinos .elementor-swiper-button-next {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #1e88e5, #1565c0);
    border: none;
    border-radius: 50%;
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(30, 136, 229, 0.3);
    z-index: 10;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.sliderinos .elementor-swiper-button-prev {
    left: 20px;
}

.sliderinos .elementor-swiper-button-next {
    right: 20px;
}

.sliderinos .elementor-swiper-button-prev:hover,
.sliderinos .elementor-swiper-button-next:hover {
    background: linear-gradient(135deg, #FFC107, #FFB300);
    color: #2d3748;
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 6px 20px rgba(255, 193, 7, 0.4);
}

.sliderinos .elementor-swiper-button svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

/* Pagination dots */
.sliderinos .swiper-pagination {
    position: relative;
    margin-top: 30px;
    text-align: center;
}

.sliderinos .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #e6e9ed;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 0 6px;
    opacity: 1;
}

.sliderinos .swiper-pagination-bullet-active {
    background: #FFC107;
    transform: scale(1.3);
}

.sliderinos .swiper-pagination-bullet:hover {
    background: #1e88e5;
}

/* Responsive */
@media (max-width: 768px) {
    .realizovane .nadpis .elementor-heading-title {
        font-size: 1.8rem;
        margin-bottom: 30px;
    }
    
    .sliderinos .swiper-slide-inner {
        height: 250px;
    }
    
    .sliderinos .elementor-swiper-button-prev,
    .sliderinos .elementor-swiper-button-next {
        width: 45px;
        height: 45px;
    }
    
    .sliderinos .elementor-swiper-button svg {
        width: 18px;
        height: 18px;
    }
    
    .sliderinos .elementor-swiper-button-prev {
        left: 15px;
    }
    
    .sliderinos .elementor-swiper-button-next {
        right: 15px;
    }
}

@media (max-width: 480px) {
    .realizovane {
        padding: 50px 0;
    }
    
    .realizovane .nadpis .elementor-heading-title {
        font-size: 1.6rem;
    }
    
    .sliderinos .swiper-slide-inner {
        height: 200px;
    }
    
    .sliderinos .elementor-swiper-button-prev {
        left: 10px;
    }
    
    .sliderinos .elementor-swiper-button-next {
        right: 10px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-870e3a3 *//* Testimonials sekce */
.elementor-element-870e3a3 {
    padding: 80px 0;
    background: #f8fafc;
}

.elementor-element-870e3a3 .nadpis .elementor-heading-title {
    font-size: 2.2rem;
    font-weight: 700;
    color: #2d3748 !important;
    text-align: center;
    margin-bottom: 50px;
    position: relative;
}

.elementor-element-870e3a3 .nadpis .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #FFC107, #FFB300);
    border-radius: 2px;
}

/* Swiper container */
.elementor-element-cc30a9b .elementor-slides-wrapper {
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

/* Individual slides */
.elementor-element-cc30a9b .swiper-slide {
    background: transparent !important;
    padding: 0 15px;
}

.elementor-element-cc30a9b .swiper-slide-inner {
    background: transparent !important;
    padding: 0;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 280px;
}

.elementor-element-cc30a9b .swiper-slide-contents {
    width: 100%;
    max-width: 100%;
    text-align: center;
    padding: 0;
}

.elementor-element-cc30a9b .elementor-slide-description {
    padding: 0;
}

/* Testimonial styling */
.elementor-element-cc30a9b .testimonial-item {
    background: white;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #e6e9ed;
    position: relative;
    transition: all 0.3s ease;
    min-height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 100%;
}

.elementor-element-cc30a9b .testimonial-item::before {
    content: '"';
    position: absolute;
    top: -10px;
    left: 30px;
    font-size: 4rem;
    color: #FFC107;
    font-weight: 700;
    line-height: 1;
}

.elementor-element-cc30a9b .testimonial-text {
    color: #4a5568 !important;
    line-height: 1.6;
    font-style: italic;
    margin: 20px 0;
    flex-grow: 1;
    display: flex;
    align-items: center;
    font-size: 1rem;
    text-align: left;
}

.elementor-element-cc30a9b .testimonial-author {
    font-weight: 600 !important;
    color: #2d3748 !important;
    text-align: right;
    margin-top: auto;
    font-style: normal !important;
    display: block;
    font-size: 1rem;
}

/* Navigation buttons */
.elementor-element-cc30a9b .elementor-swiper-button-prev,
.elementor-element-cc30a9b .elementor-swiper-button-next {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #1e88e5, #1565c0);
    border: none;
    border-radius: 50%;
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(30, 136, 229, 0.3);
    z-index: 10;
    margin-top: 0;
}

.elementor-element-cc30a9b .elementor-swiper-button-prev:hover,
.elementor-element-cc30a9b .elementor-swiper-button-next:hover {
    background: linear-gradient(135deg, #FFC107, #FFB300);
    color: #2d3748;
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(255, 193, 7, 0.4);
}

.elementor-element-cc30a9b .elementor-swiper-button svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}

/* Pagination dots */
.elementor-element-cc30a9b .swiper-pagination {
    position: relative;
    margin-top: 30px;
    text-align: center;
    bottom: auto;
    left: auto;
    right: auto;
}

.elementor-element-cc30a9b .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #e6e9ed;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 0 6px;
    opacity: 1;
}

.elementor-element-cc30a9b .swiper-pagination-bullet-active {
    background: #FFC107;
    transform: scale(1.3);
}

.elementor-element-cc30a9b .swiper-pagination-bullet:hover {
    background: #1e88e5;
}

/* Remove background effects */
.elementor-element-cc30a9b .swiper-slide-bg {
    display: none;
}

.elementor-element-cc30a9b .elementor-ken-burns--active {
    display: none;
}

/* Auto-play indicator */
.elementor-element-cc30a9b::after {
    content: 'Automatické přepínání každých 5 sekund';
    display: block;
    text-align: center;
    margin-top: 15px;
    font-size: 0.9rem;
    color: #6c757d;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
}

/* Responsive */
@media (max-width: 768px) {
    .elementor-element-870e3a3 .nadpis .elementor-heading-title {
        font-size: 1.8rem;
        margin-bottom: 30px;
    }
    
    .elementor-element-cc30a9b .elementor-slides-wrapper {
        margin: 0 15px;
    }
    
    .elementor-element-cc30a9b .testimonial-item {
        padding: 25px 20px;
        min-height: 220px;
    }
    
    .elementor-element-cc30a9b .elementor-swiper-button-prev,
    .elementor-element-cc30a9b .elementor-swiper-button-next {
        width: 45px;
        height: 45px;
    }
    
    .elementor-element-cc30a9b .elementor-swiper-button svg {
        width: 18px;
        height: 18px;
    }
}

@media (max-width: 480px) {
    .elementor-element-870e3a3 {
        padding: 50px 0;
    }
    
    .elementor-element-870e3a3 .nadpis .elementor-heading-title {
        font-size: 1.6rem;
    }
    
    .elementor-element-cc30a9b .testimonial-item {
        padding: 20px 15px;
        min-height: 200px;
    }
    
    .elementor-element-cc30a9b .testimonial-text {
        font-size: 0.9rem;
    }
    
    .elementor-element-cc30a9b .testimonial-author {
        font-size: 0.9rem;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f4b99df *//* Kontakt sekce */
.contact-section {
    padding: 80px 0;
    background: white;
    text-align: center;
    position: relative;
}

.contact-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #FFC107, #FFB300);
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.contact-title {
    font-size: 2.2rem;
    font-weight: 700;
    color: #2d3748;
    margin-bottom: 40px;
}

.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

.contact-item {
    background: #f8fafc;
    padding: 25px;
    border-radius: 12px;
    border: 2px solid #e6e9ed;
    transition: all 0.3s ease;
}

.contact-item:hover {
    border-color: #FFC107;
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(255, 193, 7, 0.2);
}

.contact-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #1e88e5, #1565c0);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px auto;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(30, 136, 229, 0.3);
}

.contact-icon svg {
    width: 28px;
    height: 28px;
    fill: white;
}

.contact-item:hover .contact-icon {
    background: linear-gradient(135deg, #FFC107, #FFB300);
    transform: scale(1.1);
}

.contact-item:hover .contact-icon svg {
    fill: #2d3748;
}

.contact-label {
    font-size: 1.1rem;
    color: #4a5568;
    margin-bottom: 8px;
    font-weight: 500;
}

.contact-value {
    font-size: 1.3rem;
    font-weight: 700;
    color: #1e88e5;
    transition: all 0.3s ease;
    display: block;
}

.contact-value a {
    color: inherit;
    text-decoration: none;
}

.contact-item:hover .contact-value {
    color: #FFC107;
}

/* Free consultation box */
.free-consultation {
    background: linear-gradient(135deg, #fff9c4, #fff3cd);
    padding: 30px;
    border-radius: 15px;
    border: 3px solid #FFC107;
    position: relative;
    margin-top: 40px;
}

.consultation-icon {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #28a745, #20c997);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px auto;
    box-shadow: 0 6px 20px rgba(40, 167, 69, 0.3);
}

.consultation-icon svg {
    width: 35px;
    height: 35px;
    fill: white;
}

.free-consultation-text {
    font-size: 1.5rem;
    font-weight: 700;
    color: #b8860b;
    margin: 0 0 10px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.consultation-subtext {
    font-size: 1.1rem;
    color: #8d6e15;
    margin: 0;
    font-weight: 500;
}

/* Responsive design */
@media (max-width: 768px) {
    .contact-title {
        font-size: 1.8rem;
    }
    
    .contact-info-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 480px) {
    .contact-section {
        padding: 50px 0;
    }
    
    .contact-title {
        font-size: 1.6rem;
    }
    
    .free-consultation-text {
        font-size: 1.3rem;
    }
    
    .consultation-subtext {
        font-size: 1rem;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-b7926a1 *//* Sekce Hybridní bateriové systémy */
#HybSek1 {
    background: white;
    padding: 80px 0;
    position: relative;
}


/* Levá strana - text a statistiky */
#HybSek1 .elementor-element-b88feed {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

/* Heading styling */
#nadpisHyb h1 {
    font-size: 2.5rem;
    font-weight: 800;
    color: #2c3e50;
    line-height: 1.3;
    margin-bottom: 20px;
}

/* Description text styling */
#popishyb {
    font-size: 1.1rem;
    color: #6c757d;
    line-height: 1.7;
    margin-bottom: 30px;
}

#popishyb span {
    font-weight: 800;
    color: #FFC107;
    font-size: 1.2em;
}

/* Grid pro statistiky */
#HybSek1 .elementor-element-1412554 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 30px;
}

/* Individual stat boxes */
#hybstat .elementor-icon-box-wrapper {
    background: white;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(52, 152, 219, 0.1);
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Hover efekt na stat boxy */
#hybstat:hover .elementor-icon-box-wrapper {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
    border-color: rgba(52, 152, 219, 0.3);
}

/* Modrý pruh nahoře u stat boxů */
#hybstat .elementor-icon-box-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #3498db, #2980b9);
    opacity: 0;
    transition: opacity 0.3s ease;
}

#hybstat:hover .elementor-icon-box-wrapper::before {
    opacity: 1;
}

/* Stat number styling */
#hybstat .elementor-icon-box-title span {
    font-size: 2.2rem;
    font-weight: 800;
    color: #3498db;
    display: block;
    margin-bottom: 8px;
    line-height: 1;
}

/* Stat label styling */
#hybstat .elementor-icon-box-description {
    color: #6c757d;
    font-size: 0.95rem;
    margin: 0;
    font-weight: 600;
}

/* Tlačítko - ŽLUTÉ podle konzistence */
#hybBtn .elementor-button {
    background: linear-gradient(135deg, #FFC107, #FFB300);
    color: #2c3e50;
    padding: 15px 35px;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    box-shadow: 0 8px 25px rgba(255, 193, 7, 0.3);
    border: 2px solid #FFB300;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    overflow: hidden;
}

/* Animovaný hover efekt na tlačítko */
#hybBtn .elementor-button::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    width: 300px;
    height: 300px;
    background: linear-gradient(135deg, #FFB300, #FF8F00);
    border-radius: 50%;
    transition: transform 0.6s ease;
    z-index: 0;
}

#hybBtn .elementor-button:hover::before {
    transform: translate(-50%, -50%) scale(1);
}

#hybBtn .elementor-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 35px rgba(255, 193, 7, 0.4);
    color: #2c3e50;
    border-color: #FF8F00;
    text-decoration: none;
}

#hybBtn .elementor-button-text {
    color: #2c3e50;
    font-weight: 700;
    position: relative;
    z-index: 2;
}

#hybBtn .elementor-button-content-wrapper {
    position: relative;
    z-index: 2;
}

/* Pravá strana - obrázek */
#obrHyb {
    background: white;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(52, 152, 219, 0.1);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Modrý pruh nahoře u obrázku */
#obrHyb::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #3498db, #2980b9);
}

#obrHyb img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    transition: transform 0.3s ease;
}

#obrHyb:hover img {
    transform: scale(1.05);
}

/* Responzivní design */
@media (max-width: 1024px) {
    #HybSek1 .e-con-inner {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }
    
    #nadpisHyb h1 {
        font-size: 2.2rem;
    }
    
    #HybSek1 .elementor-element-1412554 {
        max-width: 500px;
        margin: 0 auto 30px auto;
    }
}

@media (max-width: 768px) {
    #HybSek1 {
        padding: 60px 0;
    }
    
    #HybSek1 .e-con-inner {
        padding: 0 15px;
    }
    
    #nadpisHyb h1 {
        font-size: 1.8rem;
        margin-bottom: 15px;
    }
    
    #popishyb {
        font-size: 1rem;
        margin-bottom: 25px;
    }
    
    #HybSek1 .elementor-element-1412554 {
        grid-template-columns: 1fr;
        gap: 15px;
        margin-bottom: 25px;
    }
    
    #hybstat .elementor-icon-box-wrapper {
        padding: 20px;
    }
    
    #hybstat .elementor-icon-box-title span {
        font-size: 1.8rem;
    }
    
    #hybBtn .elementor-button {
        padding: 12px 30px;
        font-size: 0.9rem;
        width: 100%;
        max-width: 280px;
    }
    
    /* Skrytí obrázku na mobilech */
    #obrHyb {
        display: none;
    }
}

@media (max-width: 480px) {
    #nadpisHyb h1 {
        font-size: 1.5rem;
    }
    
    #hybstat .elementor-icon-box-wrapper {
        padding: 15px;
    }
    
    #hybstat .elementor-icon-box-title span {
        font-size: 1.6rem;
    }
    
    #hybstat .elementor-icon-box-description {
        font-size: 0.85rem;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-515a65f *//* Sekce Jak připravit */
.jakPripravit {
   margin-top: 40px;
   padding: 0;
}

.jakPripravit .e-con-inner {
   background: white;
   padding: 35px 30px;
   border-radius: 15px;
   border: 1px solid rgba(52, 152, 219, 0.1);
   box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
   transition: all 0.3s ease;
   display: flex;
   align-items: flex-start;
   gap: 30px;
   position: relative;
   overflow: hidden;
   min-height: 170px;
}

/* Hover efekt */
.jakPripravit:hover .e-con-inner {
   box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
   transform: translateY(-3px);
   border-color: rgba(52, 152, 219, 0.3);
}

/* Modrý pruh nahoře */
.jakPripravit .e-con-inner::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 4px;
   background: linear-gradient(90deg, #3498db, #2980b9);
   opacity: 0;
   transition: opacity 0.3s ease;
}

.jakPripravit:hover .e-con-inner::before {
   opacity: 1;
}

/* Ikona kontejner - levá strana */
.jakPripravit .e-con-inner > .e-con-full:first-child {
   flex-shrink: 0;
   margin-top: 5px;
}

/* Ikona styling */
.jakPripravit #ikoJak .elementor-icon {
   width: 55px;
   height: 55px;
   background: linear-gradient(135deg, #3498db, #2980b9);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 1.3rem;
   box-shadow: 0 6px 20px rgba(52, 152, 219, 0.3);
   transition: all 0.3s ease;
   position: relative;
}

/* Dekorativní kruh kolem ikony */
.jakPripravit #ikoJak .elementor-icon::before {
   content: '';
   position: absolute;
   top: -6px;
   left: -6px;
   right: -6px;
   bottom: -6px;
   border: 2px solid rgba(52, 152, 219, 0.2);
   border-radius: 50%;
   transition: all 0.3s ease;
}

.jakPripravit:hover #ikoJak .elementor-icon {
   transform: scale(1.1);
   box-shadow: 0 10px 25px rgba(52, 152, 219, 0.4);
}

.jakPripravit:hover #ikoJak .elementor-icon::before {
   border-color: rgba(255, 193, 7, 0.4);
   transform: scale(1.1);
}

.jakPripravit #ikoJak .elementor-icon svg {
   fill: white;
   width: 22px;
   height: 22px;
   filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
}

/* Text kontejner - pravá strana */
.jakPripravit .e-con-inner > .e-con-full:last-child {
   flex: 1;
   display: flex;
   flex-direction: column;
   gap: 15px;
   justify-content: flex-start;
}

/* Nadpis */
.jakPripravit #nadpisJak h3 {
   font-size: 1.2rem;
   font-weight: 700;
   color: #2c3e50;
   margin: 0;
   line-height: 1.3;
}

/* Text popis */
.jakPripravit #popisJak p {
   color: #6c757d;
   margin: 0 0 20px 0;
   line-height: 1.6;
   font-size: 0.95rem;
}

/* Tlačítko */
.jakPripravit #hybBtn .elementor-button {
   background: linear-gradient(135deg, #FFC107, #FFB300);
   color: #2c3e50;
   padding: 12px 25px;
   font-size: 0.9rem;
   font-weight: 700;
   border-radius: 25px;
   transition: all 0.3s ease;
   border: 2px solid #FFB300;
   text-decoration: none;
   display: inline-block;
   width: fit-content;
   text-transform: uppercase;
   letter-spacing: 0.5px;
   box-shadow: 0 4px 15px rgba(255, 193, 7, 0.3);
   position: relative;
   overflow: hidden;
}

/* Animovaný hover efekt na tlačítko */
.jakPripravit #hybBtn .elementor-button::before {
   content: '';
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%) scale(0);
   width: 300px;
   height: 300px;
   background: linear-gradient(135deg, #FFB300, #FF8F00);
   border-radius: 50%;
   transition: transform 0.5s ease;
   z-index: 0;
}

.jakPripravit #hybBtn .elementor-button:hover::before {
   transform: translate(-50%, -50%) scale(1);
}

.jakPripravit #hybBtn .elementor-button:hover {
   transform: translateY(-2px);
   box-shadow: 0 8px 25px rgba(255, 193, 7, 0.4);
   color: #2c3e50;
   border-color: #FF8F00;
   text-decoration: none;
}

.jakPripravit #hybBtn .elementor-button-text {
   position: relative;
   z-index: 2;
   color: #2c3e50;
   font-weight: 700;
}

.jakPripravit #hybBtn .elementor-button-content-wrapper {
   position: relative;
   z-index: 2;
}

/* Responzivní design */
@media (max-width: 768px) {
   .jakPripravit .e-con-inner {
       flex-direction: column;
       text-align: center;
       padding: 30px 25px;
       gap: 20px;
       min-height: auto;
   }
   
   .jakPripravit .e-con-inner > .e-con-full:first-child {
       margin-top: 0;
   }
   
   .jakPripravit .e-con-inner > .e-con-full:last-child {
       gap: 12px;
   }
   
   .jakPripravit #ikoJak .elementor-icon {
       width: 50px;
       height: 50px;
       font-size: 1.2rem;
   }
   
   .jakPripravit #ikoJak .elementor-icon svg {
       width: 20px;
       height: 20px;
   }
   
   .jakPripravit #nadpisJak h3 {
       font-size: 1.1rem;
   }
   
   .jakPripravit #popisJak p {
       font-size: 0.9rem;
       margin-bottom: 15px;
   }
   
   .jakPripravit #hybBtn .elementor-button {
       width: 100%;
       max-width: 250px;
       padding: 10px 20px;
       font-size: 0.85rem;
   }
}

@media (max-width: 480px) {
   .jakPripravit .e-con-inner {
       padding: 25px 20px;
   }
   
   .jakPripravit #nadpisJak h3 {
       font-size: 1rem;
   }
   
   .jakPripravit #popisJak p {
       font-size: 0.85rem;
       margin-bottom: 12px;
   }
   
   .jakPripravit #hybBtn .elementor-button {
       max-width: 220px;
       padding: 9px 18px;
       font-size: 0.8rem;
   }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-86b4c2e *//* Sekce Proč vlastnit hybridní solární elektrárnu */
#sekceDveHyb {
    background: #f8f9fa !important;
    padding: 80px 0 !important;
    position: relative !important;
}

#sekceDveHyb .e-con-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

/* Hlavní nadpis sekce */
#nadpisDveHyb h2 {
    text-align: center !important;
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: #2c3e50 !important;
    margin-bottom: 15px !important;
    position: relative !important;
}

#nadpisDveHyb h2::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 80px !important;
    height: 4px !important;
    background: linear-gradient(90deg, #FFC107, #FFB300) !important;
    border-radius: 2px !important;
}

/* Podnadpis */
#SubNadpisHyb p {
    text-align: center !important;
    font-size: 1.2rem !important;
    color: #6c757d !important;
    margin-bottom: 60px !important;
    font-weight: 400 !important;
    font-style: italic !important;
}



#sekceDveHyb .e-con-inner > .e-con-full:last-child {
    margin-bottom: 0 !important;
}

/* Vynucení stejné výšky pro všechny icon boxy */
.ikonoProchybr {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Icon boxy - PEVNÁ výška */
.ikonoProchybr .elementor-icon-box-wrapper {
    background: white !important;
    padding: 35px 25px !important;
    border-radius: 15px !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid rgba(52, 152, 219, 0.1) !important;
    transition: all 0.3s ease !important;
    height: 380px !important; /* PEVNÁ výška */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Hover efekt */
.ikonoProchybr:hover .elementor-icon-box-wrapper {
    transform: translateY(-8px) !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: rgba(52, 152, 219, 0.3) !important;
}

/* Modrý pruh nahoře */
.ikonoProchybr .elementor-icon-box-wrapper::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 4px !important;
    background: linear-gradient(90deg, #3498db, #2980b9) !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.ikonoProchybr:hover .elementor-icon-box-wrapper::before {
    opacity: 1 !important;
}

/* Ikony - vycentrované, fixní velikost */
.ikonoProchybr .elementor-icon-box-icon {
    margin-bottom: 25px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    flex-shrink: 0 !important;
}

.ikonoProchybr .elementor-icon {
    width: 80px !important;
    height: 80px !important;
    background: linear-gradient(135deg, #3498db 0%, #2980b9 100%) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: white !important;
    font-size: 2rem !important;
    box-shadow: 0 8px 25px rgba(52, 152, 219, 0.3) !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    margin: 0 auto !important;
}

/* Dekorativní kruh kolem ikony */
.ikonoProchybr .elementor-icon::before {
    content: '' !important;
    position: absolute !important;
    top: -12px !important;
    left: -12px !important;
    right: -12px !important;
    bottom: -12px !important;
    border: 2px solid rgba(52, 152, 219, 0.2) !important;
    border-radius: 50% !important;
    transition: all 0.3s ease !important;
}

.ikonoProchybr:hover .elementor-icon {
    transform: scale(1.1) !important;
    box-shadow: 0 12px 30px rgba(52, 152, 219, 0.4) !important;
}

.ikonoProchybr:hover .elementor-icon::before {
    border-color: rgba(255, 193, 7, 0.4) !important;
    transform: scale(1.1) !important;
}

.ikonoProchybr .elementor-icon svg {
    fill: white !important;
    width: 36px !important;
    height: 36px !important;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1)) !important;
}

/* Content kontejner - zabere zbytek prostoru */
.ikonoProchybr .elementor-icon-box-content {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    justify-content: flex-start !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
}

/* Nadpisy icon boxů - PEVNÁ výška */
.ikonoProchybr .elementor-icon-box-title {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    margin-bottom: 15px !important;
    line-height: 1.3 !important;
    transition: color 0.3s ease !important;
    flex-shrink: 0 !important;
    text-align: center !important;
    width: 100% !important;
    height: 80px !important; /* PEVNÁ výška pro nadpisy */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ikonoProchybr:hover .elementor-icon-box-title {
    color: #34495e !important;
}

/* Popisky icon boxů - zabere zbytek prostoru */
.ikonoProchybr .elementor-icon-box-description {
    font-size: 1rem !important;
    color: #7f8c8d !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    flex-grow: 1 !important;
    display: flex !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    justify-content: center !important;
}

/* Responzivní design */
@media (max-width: 1024px) {
    #nadpisDveHyb h2 {
        font-size: 2.2rem !important;
        margin-bottom: 12px !important;
    }
    
    #SubNadpisHyb p {
        font-size: 1.1rem !important;
        margin-bottom: 50px !important;
    }
    
    #sekceDveHyb .e-con-inner > .e-con-full {
        gap: 25px !important;
        margin-bottom: 25px !important;
    }
    
    .ikonoProchybr .elementor-icon-box-wrapper {
        height: 360px !important; /* PEVNÁ výška pro tablet */
    }
    
    .ikonoProchybr .elementor-icon-box-title {
        height: 75px !important;
        font-size: 1.1rem !important;
    }
    
    .ikonoProchybr .elementor-icon {
        width: 70px !important;
        height: 70px !important;
        font-size: 1.8rem !important;
    }
    
    .ikonoProchybr .elementor-icon svg {
        width: 32px !important;
        height: 32px !important;
    }
}

@media (max-width: 768px) {
    #sekceDveHyb {
        padding: 60px 0 !important;
    }
    
    #sekceDveHyb .e-con-inner {
        padding: 0 15px !important;
    }
    
    #nadpisDveHyb h2 {
        font-size: 1.8rem !important;
        margin-bottom: 10px !important;
    }
    
    #SubNadpisHyb p {
        font-size: 1rem !important;
        margin-bottom: 40px !important;
    }
    
    #sekceDveHyb .e-con-inner > .e-con-full {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        margin-bottom: 20px !important;
    }
    
    .ikonoProchybr .elementor-icon-box-wrapper {
        padding: 30px 20px !important;
        height: 320px !important; /* PEVNÁ výška pro mobil */
    }
    
    .ikonoProchybr .elementor-icon-box-title {
        height: 70px !important;
        font-size: 1.1rem !important;
    }
    
    .ikonoProchybr .elementor-icon {
        width: 65px !important;
        height: 65px !important;
        font-size: 1.6rem !important;
    }
    
    .ikonoProchybr .elementor-icon svg {
        width: 28px !important;
        height: 28px !important;
    }
    
    .ikonoProchybr .elementor-icon-box-description {
        font-size: 0.95rem !important;
    }
}

@media (max-width: 480px) {
    #nadpisDveHyb h2 {
        font-size: 1.5rem !important;
    }
    
    #SubNadpisHyb p {
        font-size: 0.95rem !important;
    }
    
    .ikonoProchybr .elementor-icon-box-wrapper {
        padding: 25px 15px !important;
        height: 300px !important; /* PEVNÁ výška pro malé mobily */
    }
    
    .ikonoProchybr .elementor-icon-box-title {
        height: 65px !important;
        font-size: 1rem !important;
    }
    
    .ikonoProchybr .elementor-icon {
        width: 60px !important;
        height: 60px !important;
        font-size: 1.4rem !important;
    }
    
    .ikonoProchybr .elementor-icon svg {
        width: 24px !important;
        height: 24px !important;
    }
    
    .ikonoProchybr .elementor-icon-box-description {
        font-size: 0.9rem !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a70b175 *//* Sekce Proč vlastnit hybridní solární elektrárnu */
#sekceDveHyb {
   background: #f8f9fa;
   padding: 80px 0;
   position: relative;
}

#sekceDveHyb .e-con-inner {
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 20px;
}

/* Hlavní nadpis sekce */
#nadpisDveHyb h2 {
   text-align: center;
   font-size: 2.5rem;
   font-weight: 800;
   color: #2c3e50;
   margin-bottom: 15px;
   position: relative;
}

#nadpisDveHyb h2::after {
   content: '';
   position: absolute;
   bottom: -10px;
   left: 50%;
   transform: translateX(-50%);
   width: 80px;
   height: 4px;
   background: linear-gradient(90deg, #FFC107, #FFB300);
   border-radius: 2px;
}

/* Podnadpis */
#SubNadpisHyb p {
   text-align: center;
   font-size: 1.2rem;
   color: #6c757d;
   margin-bottom: 60px;
   font-weight: 400;
   font-style: italic;
}



#sekceDveHyb .e-con-inner > .e-con-full:last-child {
   margin-bottom: 0;
}

/* Icon boxy - flex pro konzistentní výšky */
.ikonoProchybr .elementor-icon-box-wrapper {
   background: white;
   padding: 35px 25px;
   border-radius: 15px;
   box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
   border: 1px solid rgba(52, 152, 219, 0.1);
   transition: all 0.3s ease;
   height: 100%; /* Zabere celou dostupnou výšku */
   min-height: 320px; /* Minimální výška pro konzistenci */
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: flex-start;
   text-align: center;
   position: relative;
   overflow: hidden;
}

/* Hover efekt */
.ikonoProchybr:hover .elementor-icon-box-wrapper {
   transform: translateY(-8px);
   box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
   border-color: rgba(52, 152, 219, 0.3);
}

/* Modrý pruh nahoře */
.ikonoProchybr .elementor-icon-box-wrapper::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 4px;
   background: linear-gradient(90deg, #3498db, #2980b9);
   opacity: 0;
   transition: opacity 0.3s ease;
}

.ikonoProchybr:hover .elementor-icon-box-wrapper::before {
   opacity: 1;
}

/* Ikony - vycentrované, fixní velikost */
.ikonoProchybr .elementor-icon-box-icon {
   margin-bottom: 25px;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   flex-shrink: 0; /* Ikona nebude měnit velikost */
}

.ikonoProchybr .elementor-icon {
   width: 80px;
   height: 80px;
   background: linear-gradient(135deg, #3498db 0%, #2980b9 100%);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   color: white;
   font-size: 2rem;
   box-shadow: 0 8px 25px rgba(52, 152, 219, 0.3);
   transition: all 0.3s ease;
   position: relative;
   margin: 0 auto;
}

/* Dekorativní kruh kolem ikony */
.ikonoProchybr .elementor-icon::before {
   content: '';
   position: absolute;
   top: -12px;
   left: -12px;
   right: -12px;
   bottom: -12px;
   border: 2px solid rgba(52, 152, 219, 0.2);
   border-radius: 50%;
   transition: all 0.3s ease;
}

.ikonoProchybr:hover .elementor-icon {
   transform: scale(1.1);
   box-shadow: 0 12px 30px rgba(52, 152, 219, 0.4);
}

.ikonoProchybr:hover .elementor-icon::before {
   border-color: rgba(255, 193, 7, 0.4);
   transform: scale(1.1);
}

.ikonoProchybr .elementor-icon svg {
   fill: white;
   width: 36px;
   height: 36px;
   filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
}

/* Content kontejner - zabere zbytek prostoru */
.ikonoProchybr .elementor-icon-box-content {
   display: flex;
   flex-direction: column;
   flex-grow: 1; /* Zabere zbývající prostor */
   justify-content: flex-start;
   align-items: center;
   text-align: center;
   width: 100%;
}

/* Nadpisy icon boxů - fixní velikost */
.ikonoProchybr .elementor-icon-box-title {
   font-size: 1.25rem;
   font-weight: 700;
   color: #2c3e50;
   margin-bottom: 15px;
   line-height: 1.3;
   transition: color 0.3s ease;
   flex-shrink: 0; /* Nadpis nebude zmenšovat */
   text-align: center;
   width: 100%;
}

.ikonoProchybr:hover .elementor-icon-box-title {
   color: #34495e;
}

/* Popisky icon boxů - zabere zbytek prostoru */
.ikonoProchybr .elementor-icon-box-description {
   font-size: 1rem;
   color: #7f8c8d;
   line-height: 1.6;
   margin: 0;
   flex-grow: 1; /* Zabere zbytek prostoru */
   display: flex;
   align-items: center; /* Vycentruje text vertikálně */
   text-align: center;
   width: 100%;
   justify-content: center;
}

/* Responzivní design */
@media (max-width: 1024px) {
   #nadpisDveHyb h2 {
       font-size: 2.2rem;
       margin-bottom: 12px;
   }
   
   #SubNadpisHyb p {
       font-size: 1.1rem;
       margin-bottom: 50px;
   }
   
   #sekceDveHyb .e-con-inner > .e-con-full {
       gap: 25px;
       margin-bottom: 25px;
   }
   
   .ikonoProchybr .elementor-icon-box-wrapper {
       min-height: 300px;
   }
   
   .ikonoProchybr .elementor-icon {
       width: 70px;
       height: 70px;
       font-size: 1.8rem;
   }
   
   .ikonoProchybr .elementor-icon svg {
       width: 32px;
       height: 32px;
   }
}

@media (max-width: 768px) {
   #sekceDveHyb {
       padding: 60px 0;
   }
   
   #sekceDveHyb .e-con-inner {
       padding: 0 15px;
   }
   
   #nadpisDveHyb h2 {
       font-size: 1.8rem;
       margin-bottom: 10px;
   }
   
   #SubNadpisHyb p {
       font-size: 1rem;
       margin-bottom: 40px;
   }
   
   /* Na mobilech jednosloupcové rozložení */
   #sekceDveHyb .e-con-inner > .e-con-full {
       grid-template-columns: 1fr;
       gap: 20px;
       margin-bottom: 20px;
   }
   
   .ikonoProchybr .elementor-icon-box-wrapper {
       padding: 30px 20px;
       min-height: 280px;
   }
   
   .ikonoProchybr .elementor-icon {
       width: 65px;
       height: 65px;
       font-size: 1.6rem;
   }
   
   .ikonoProchybr .elementor-icon svg {
       width: 28px;
       height: 28px;
   }
   
   .ikonoProchybr .elementor-icon-box-title {
       font-size: 1.1rem;
   }
   
   .ikonoProchybr .elementor-icon-box-description {
       font-size: 0.95rem;
   }
}

@media (max-width: 480px) {
   #nadpisDveHyb h2 {
       font-size: 1.5rem;
   }
   
   #SubNadpisHyb p {
       font-size: 0.95rem;
   }
   
   .ikonoProchybr .elementor-icon-box-wrapper {
       padding: 25px 15px;
       min-height: 260px;
   }
   
   .ikonoProchybr .elementor-icon {
       width: 60px;
       height: 60px;
       font-size: 1.4rem;
   }
   
   .ikonoProchybr .elementor-icon svg {
       width: 24px;
       height: 24px;
   }
   
   .ikonoProchybr .elementor-icon-box-title {
       font-size: 1rem;
   }
   
   .ikonoProchybr .elementor-icon-box-description {
       font-size: 0.9rem;
   }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-088ca1d *//* Icon List styling */
#HybikoList .elementor-icon-list-items {
    list-style: none;
    padding: 0;
    margin: 0;
}

#HybikoList .elementor-icon-list-item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    padding: 15px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
    border-left: 4px solid #3498db;
    transition: all 0.3s ease;
}

#HybikoList .elementor-icon-list-item:hover {
    transform: translateX(5px);
    box-shadow: 0 5px 15px rgba(52, 152, 219, 0.15);
}

#HybikoList .elementor-icon-list-icon {
    width: 24px !important;
    height: 24px !important;
    background: linear-gradient(135deg, #3498db, #2980b9) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
}

#HybikoList .elementor-icon-list-icon svg {
    color: white !important;
    width: 12px !important;
    height: 12px !important;
}

#HybikoList .elementor-icon-list-text {
    color: #495057 !important;
    font-size: 0.95rem !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
}

/* Responzivní design */
@media (max-width: 768px) {
    #HybikoList .elementor-icon-list-item {
        padding: 12px;
        margin-bottom: 12px;
    }
    
    #HybikoList .elementor-icon-list-text {
        font-size: 0.9rem !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6bd51fe *//* Sekce Inteligentní systém řízení spotřeby */
.sekciafoot {
   background: white;
   padding: 80px 0;
   position: relative;
}


/* Nadpis */
#triNadpis .elementor-heading-title {
   font-size: 2.5rem;
   font-weight: 800;
   color: #2c3e50;
   text-align: center;
   margin-bottom: 20px;
   position: relative;
}

#triNadpis .elementor-heading-title::after {
   content: '';
   position: absolute;
   bottom: -10px;
   left: 50%;
   transform: translateX(-50%);
   width: 80px;
   height: 4px;
   background: linear-gradient(90deg, #FFC107, #FFB300);
   border-radius: 2px;
}

/* Popis */
#triPopisHyb p {
   font-size: 1.2rem;
   color: #6c757d;
   text-align: center;
   line-height: 1.7;
   margin-bottom: 50px;
   font-weight: 400;
}


/* Icon list styling */
#HybikoList .elementor-icon-list-items {
   list-style: none;
   margin: 0;
   padding: 0;
}

#HybikoList .elementor-icon-list-item {
   display: flex;
   align-items: center;
   margin-bottom: 20px;
   padding: 18px 20px;
   background: white;
   border-radius: 12px;
   box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
   border: 1px solid rgba(52, 152, 219, 0.1);
   transition: all 0.3s ease;
   position: relative;
   overflow: hidden;
}

#HybikoList .elementor-icon-list-item:hover {
   transform: translateY(-3px);
   box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
   border-color: rgba(52, 152, 219, 0.2);
}

/* Modrý pruh při hover */
#HybikoList .elementor-icon-list-item::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 3px;
   background: linear-gradient(90deg, #3498db, #2980b9);
   opacity: 0;
   transition: opacity 0.3s ease;
}

#HybikoList .elementor-icon-list-item:hover::before {
   opacity: 1;
}

/* Ikony checklist */
#HybikoList .elementor-icon-list-icon {
   width: 40px;
   height: 40px;
   background: linear-gradient(135deg, #27ae60, #229954);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-right: 15px;
   flex-shrink: 0;
   box-shadow: 0 4px 15px rgba(39, 174, 96, 0.3);
   transition: all 0.3s ease;
}

#HybikoList .elementor-icon-list-item:hover .elementor-icon-list-icon {
   transform: scale(1.1);
   box-shadow: 0 6px 20px rgba(39, 174, 96, 0.4);
}

#HybikoList .elementor-icon-list-icon svg {
   fill: white;
   width: 18px;
   height: 18px;
   filter: drop-shadow(0 1px 2px rgba(0,0,0,0.1));
}

/* Text u ikon */
#HybikoList .elementor-icon-list-text {
   font-size: 1rem;
   color: #2c3e50;
   font-weight: 600;
   line-height: 1.4;
   flex: 1;
}

/* Obrázek styling */
#obrHyb {
   background: white;
   padding: 30px;
   border-radius: 20px;
   box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
   border: 1px solid rgba(52, 152, 219, 0.1);
   position: relative;
   overflow: hidden;
   transition: all 0.3s ease;
}

#obrHyb:hover {
   transform: translateY(-5px);
   box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}

/* Modrý pruh nahoře u obrázku */
#obrHyb::before {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 4px;
   background: linear-gradient(90deg, #3498db, #2980b9);
}

#obrHyb img {
   max-width: 100%;
   height: auto;
   border-radius: 10px;
   transition: transform 0.3s ease;
}

#obrHyb:hover img {
   transform: scale(1.02);
}

/* Responzivní design */
@media (max-width: 1024px) {
   .sekciafoot .elementor-element-088ca1d {
       grid-template-columns: 1fr;
       gap: 40px;
       text-align: center;
   }
   
   #triNadpis .elementor-heading-title {
       font-size: 2.2rem;
   }
   
   #triPopisHyb p {
       font-size: 1.1rem;
       margin-bottom: 40px;
   }
}

@media (max-width: 768px) {
   .sekciafoot {
       padding: 60px 0;
   }
   
   .sekciafoot .e-con-inner {
       padding: 0 15px;
   }
   
   #triNadpis .elementor-heading-title {
       font-size: 1.8rem;
       margin-bottom: 15px;
   }
   
   #triPopisHyb p {
       font-size: 1rem;
       margin-bottom: 35px;
   }
   
   #HybikoList .elementor-icon-list-item {
       padding: 15px 18px;
       margin-bottom: 15px;
   }
   
   #HybikoList .elementor-icon-list-icon {
       width: 35px;
       height: 35px;
       margin-right: 12px;
   }
   
   #HybikoList .elementor-icon-list-icon svg {
       width: 16px;
       height: 16px;
   }
   
   #HybikoList .elementor-icon-list-text {
       font-size: 0.95rem;
   }
   
   #obrHyb {
       padding: 25px;
   }
}

@media (max-width: 480px) {
   #triNadpis .elementor-heading-title {
       font-size: 1.6rem;
   }
   
   #triPopisHyb p {
       font-size: 0.95rem;
   }
   
   #HybikoList .elementor-icon-list-item {
       padding: 12px 15px;
   }
   
   #HybikoList .elementor-icon-list-icon {
       width: 32px;
       height: 32px;
       margin-right: 10px;
   }
   
   #HybikoList .elementor-icon-list-icon svg {
       width: 14px;
       height: 14px;
   }
   
   #HybikoList .elementor-icon-list-text {
       font-size: 0.9rem;
   }
   
   #obrHyb {
       padding: 20px;
   }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-00d5668 *//* NZÚ první sekce */
#nzusporamSekce1 {
    background: white;
    padding: 80px 0;
    position: relative;
}

#nzusporamSekce1::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.02) 0%, rgba(52, 152, 219, 0.02) 100%);
    pointer-events: none;
}

/* Grid layout pro logo a obsah */
#nzusporamSekce1 .e-con-inner {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 50px;
    align-items: center;
    position: relative;
    z-index: 2;
    padding: 0 20px;
    max-width: 1200px;
    margin: 0 auto;
}

/* NZÚ logo - icon list styling - UPDATED podle žluto-modrého schématu */
#nzusporam .elementor-icon-list-items {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.1));
}

#nzusporam .elementor-icon-list-item {
    padding: 12px 25px;
    color: white;
    font-weight: 700;
    font-size: 0.95rem;
    text-transform: uppercase;
    position: relative;
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 100%, 0 100%);
    margin-top: -3px;
    min-width: 140px;
    transition: all 0.3s ease;
    letter-spacing: 0.5px;
}

#nzusporam .elementor-icon-list-item:hover {
    transform: translateX(5px);
    filter: brightness(1.1);
}

/* UPDATED barvy podle žluto-modrého schématu */
#nzusporam .elementor-icon-list-item:first-child {
    background: linear-gradient(135deg, #3498db 0%, #2980b9 100%);
    z-index: 3;
    margin-top: 0;
}

#nzusporam .elementor-icon-list-item:nth-child(2) {
    background: linear-gradient(135deg, #FFC107 0%, #FFB300 100%);
    z-index: 2;
    color: #2c3e50;
}

#nzusporam .elementor-icon-list-item:nth-child(3) {
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
    z-index: 1;
    color: white;
}

#nzusporam .elementor-icon-list-text {
    color: inherit !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Nadpis NZÚ */
#nzusporamNadpis .elementor-heading-title {
    font-size: 2.8rem;
    font-weight: 800;
    color: #2c3e50;
    margin-bottom: 25px;
    text-align: left;
    line-height: 1.2;
    position: relative;
}

#nzusporamNadpis .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #FFC107 0%, #FFB300 100%);
    border-radius: 2px;
}

/* Popis NZÚ */
#nzusporampopis .header-description,
#nzusporampopis p {
    font-size: 1.15rem;
    color: #555;
    line-height: 1.7;
    text-align: left;
    margin-bottom: 0;
    font-weight: 500;
}

/* Responzivní design */
@media (max-width: 1024px) {
    #nzusporamSekce1 .e-con-inner {
        gap: 40px;
    }
    
    #nzusporamNadpis .elementor-heading-title {
        font-size: 2.4rem;
    }
}

@media (max-width: 768px) {
    #nzusporamSekce1 {
        padding: 60px 0;
    }
    
    #nzusporamSekce1 .e-con-inner {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 35px;
        padding: 0 15px;
    }
    
    #nzusporamNadpis .elementor-heading-title {
        font-size: 2.2rem;
        text-align: center;
    }
    
    #nzusporamNadpis .elementor-heading-title::after {
        left: 50%;
        transform: translateX(-50%);
    }
    
    #nzusporampopis .header-description,
    #nzusporampopis p {
        text-align: center;
        font-size: 1.1rem;
    }
    
    #nzusporam .elementor-icon-list-items {
        align-items: center;
        filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.08));
    }
    
    #nzusporam .elementor-icon-list-item {
        padding: 10px 20px;
        font-size: 0.85rem;
        min-width: 120px;
    }
}

@media (max-width: 480px) {
    #nzusporamSekce1 {
        padding: 50px 0;
    }
    
    #nzusporamNadpis .elementor-heading-title {
        font-size: 1.9rem;
        margin-bottom: 20px;
    }
    
    #nzusporampopis .header-description,
    #nzusporampopis p {
        font-size: 1rem;
    }
    
    #nzusporam .elementor-icon-list-item {
        padding: 8px 18px;
        font-size: 0.8rem;
        min-width: 100px;
        clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 100%, 0 100%);
    }
    
    #nzusporam .elementor-icon-list-text {
        font-size: 0.8rem !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-36cf4cd *//* Sekce požadavků */
#sekciahaha {
    background: white;
    padding: 60px 0;
}

#sekciahaha .e-con-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Nadpis sekce */
#sekciahaha .elementor-heading-title {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 30px;
    text-align: left;
}

/* Kontejner tabulky požadavků */
#pozadavkyC33Table.table-container {
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(52, 152, 219, 0.1);
    overflow: hidden;
    position: relative;
    margin-bottom: 30px;
}

#pozadavkyC33Table.table-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #FFC107, #3498db);
}

/* Hlavní tabulka požadavků */
.req-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}

/* Hlavička tabulky požadavků */
.req-table thead th {
    background: #f8f9fa;
    color: #2c3e50;
    font-weight: 600;
    padding: 18px 15px;
    text-align: left;
    border-bottom: 2px solid #e9ecef;
    font-size: 0.95rem;
}

.header-parametr {
    width: 60%;
}

.header-oznaceni {
    width: 20%;
    text-align: center;
}

.header-c33 {
    width: 20%;
    text-align: center;
}

/* Buňky tabulky požadavků */
.req-table td {
    padding: 15px;
    border-bottom: 1px solid #f1f3f4;
    font-size: 0.9rem;
    vertical-align: middle;
}

.req-table tr:last-child td {
    border-bottom: none;
}

.req-table tr:hover {
    background: rgba(52, 152, 219, 0.02);
}

/* Název parametru */
.parameter-name {
    color: #495057;
    line-height: 1.5;
}

/* Jednotky */
.unit {
    color: #6c757d;
    font-weight: 600;
    text-align: center;
    font-size: 1rem;
}

/* Hodnoty */
.value-cell {
    color: #3498db;
    font-weight: 700;
    text-align: center;
    font-size: 1rem;
}

/* Responzivní design */
@media (max-width: 768px) {
    #sekciahaha {
        padding: 50px 0;
    }
    
    #sekciahaha .e-con-inner {
        padding: 0 15px;
    }
    
    #sekciahaha .elementor-heading-title {
        font-size: 1.7rem;
        margin-bottom: 25px;
    }
    
    .req-table thead th,
    .req-table td {
        padding: 10px 8px;
        font-size: 0.85rem;
    }
    
    .header-parametr {
        width: 50%;
    }
    
    .header-oznaceni,
    .header-c33 {
        width: 25%;
    }
    
    #pozadavkyC33Table.table-container {
        overflow-x: auto;
    }
}

@media (max-width: 480px) {
    #sekciahaha .elementor-heading-title {
        font-size: 1.5rem;
        line-height: 1.3;
    }
    
    .req-table {
        font-size: 0.8rem;
    }
    
    .req-table thead th,
    .req-table td {
        padding: 8px 6px;
    }
    
    .unit,
    .value-cell {
        font-size: 0.9rem;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1d62a2f *//* Info box sekce */
#ViceInfoText .info-box {
    background: #ffffff;
    padding: 40px 35px;
    border-radius: 8px;
    border: 1px solid #e6e9ed;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    position: relative;
    overflow: hidden;
    margin: 30px 0;
}

#ViceInfoText .info-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: #FFC107;
}

#ViceInfoText .info-box:hover {
    background: #ffffff;
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    border-color: #FFC107;
}

#ViceInfoText .info-box p {
    color: #4a5568;
    font-size: 1.1rem;
    line-height: 1.6;
    margin: 0;
    text-align: center;
    font-weight: 400;
}

#ViceInfoText .info-box strong {
    color: #2d3748;
    font-weight: 600;
}

#ViceInfoText .info-box a {
    color: #1e88e5;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    border-bottom: 2px solid transparent;
}

#ViceInfoText .info-box a:hover {
    color: #FFC107;
    border-bottom-color: #FFC107;
    text-decoration: none;
}

/* Čištění vnořených sekcí */
#ViceInfoText .main-content {
    padding: 0;
    background: transparent;
}

#ViceInfoText .container {
    max-width: none;
    padding: 0;
    margin: 0;
}

#ViceInfoText .cta-section {
    padding: 0;
    background: transparent;
    margin: 0;
}

/* Responzivní design */
@media (max-width: 768px) {
    #ViceInfoText .info-box {
        padding: 30px 25px;
        margin: 25px 0;
    }
    
    #ViceInfoText .info-box p {
        font-size: 1rem;
        text-align: left;
    }
}

@media (max-width: 480px) {
    #ViceInfoText .info-box {
        padding: 25px 20px;
        margin: 20px 0;
    }
    
    #ViceInfoText .info-box p {
        font-size: 0.95rem;
    }
    
    #ViceInfoText .info-box::before {
        height: 2px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-75a8ef8 *//* CTA sekce - Konzultace */
#KonzEle {
    padding: 80px 0;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    text-align: center;

    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

#KonzEle::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 50% 50%, rgba(255, 193, 7, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

#KonzEle .e-con-inner {
    padding: 0 20px;
    position: relative;
    z-index: 2;
}

/* Nadpis CTA */
#nadpisKonzEle .elementor-heading-title {
    font-size: 2rem;
    font-weight: 800;
    color: #2c3e50;
    margin-bottom: 20px;
    text-align: center;
    position: relative;
}

#nadpisKonzEle .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(135deg, #FFC107 0%, #FFB300 100%);
    border-radius: 2px;
}

/* Popis CTA */
#popisKonzEle .cta-text,
#popisKonzEle p {
    font-size: 1.2rem;
    color: #6c757d;
    margin-bottom: 40px;
    text-align: center;
    line-height: 1.6;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 500;
}

/* CTA tlačítko - hlavní styling podle tvého schématu */
#buttonKonzEle .elementor-button {
    background: linear-gradient(135deg, #FFC107 0%, #FFB300 100%) !important;
    color: #2c3e50 !important;
    padding: 18px 40px !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border-radius: 50px !important;
    border: none !important;
    transition: all 0.4s ease !important;
    box-shadow: 0 8px 25px rgba(255, 193, 7, 0.3) !important;
    display: inline-block !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    position: relative !important;
    overflow: hidden !important;
    min-width: 200px !important;
}

/* Animovaný efekt při hover */
#buttonKonzEle .elementor-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    transition: left 0.6s ease;
}

#buttonKonzEle .elementor-button:hover::before {
    left: 100%;
}

#buttonKonzEle .elementor-button:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 15px 40px rgba(255, 193, 7, 0.4) !important;
    background: linear-gradient(135deg, #FFB300 0%, #FF8F00 100%) !important;
    color: #2c3e50 !important;
}

#buttonKonzEle .elementor-button:active {
    transform: translateY(-1px) scale(1.01) !important;
    box-shadow: 0 5px 15px rgba(255, 193, 7, 0.3) !important;
}

#buttonKonzEle .elementor-button-content-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    z-index: 2 !important;
}

#buttonKonzEle .elementor-button-text {
    font-weight: 700 !important;
    font-size: 1.1rem !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Pulsing efekt pro přitažení pozornosti */
#buttonKonzEle .elementor-button::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: rgba(255, 193, 7, 0.3);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: pulse 2s infinite;
    z-index: 1;
}

@keyframes pulse {
    0% {
        width: 0;
        height: 0;
        opacity: 1;
    }
    100% {
        width: 300px;
        height: 300px;
        opacity: 0;
    }
}

/* Responzivní design */
@media (max-width: 1024px) {
    #KonzEle {
        padding: 70px 0;
    }
}

@media (max-width: 768px) {
    #KonzEle {
        padding: 60px 0;
    }
    
    #KonzEle .e-con-inner {
        padding: 0 15px;
    }
    
    #nadpisKonzEle .elementor-heading-title {
        font-size: 1.8rem;
        margin-bottom: 18px;
    }
    
    #popisKonzEle .cta-text,
    #popisKonzEle p {
        font-size: 1.1rem;
        margin-bottom: 35px;
    }
    
    #buttonKonzEle .elementor-button {
        padding: 15px 35px !important;
        font-size: 1rem !important;
        min-width: 180px !important;
    }
    
    #buttonKonzEle .elementor-button-text {
        font-size: 1rem !important;
    }
}

@media (max-width: 480px) {
    #KonzEle {
        padding: 50px 0;
    }
    
    #nadpisKonzEle .elementor-heading-title {
        font-size: 1.6rem;
        line-height: 1.3;
        margin-bottom: 16px;
    }
    
    #popisKonzEle .cta-text,
    #popisKonzEle p {
        font-size: 1rem;
        margin-bottom: 30px;
    }
    
    #buttonKonzEle .elementor-button {
        padding: 14px 30px !important;
        font-size: 0.95rem !important;
        min-width: 160px !important;
        letter-spacing: 0.3px !important;
    }
    
    #buttonKonzEle .elementor-button-text {
        font-size: 0.95rem !important;
    }
    
    @keyframes pulse {
        0% {
            width: 0;
            height: 0;
            opacity: 1;
        }
        100% {
            width: 200px;
            height: 200px;
            opacity: 0;
        }
    }
}/* End custom CSS */