.elementor-445 .elementor-element.elementor-element-5abe5fa{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-445 .elementor-element.elementor-element-ebaedb4{--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-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-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-445 .elementor-element.elementor-element-8713150 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-445 .elementor-element.elementor-element-8713150 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-445 .elementor-element.elementor-element-8713150{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-445 .elementor-element.elementor-element-8713150 .elementor-icon-list-text{transition:color 0.3s;}.elementor-445 .elementor-element.elementor-element-7727658{--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-445 .elementor-element.elementor-element-0b66401{--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-445 .elementor-element.elementor-element-7017a54{text-align:center;}.elementor-445 .elementor-element.elementor-element-7017a54 .elementor-heading-title{color:#2C3E50;}.elementor-445 .elementor-element.elementor-element-57f6c25{--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-445 .elementor-element.elementor-element-006e57c{text-align:center;}.elementor-445 .elementor-element.elementor-element-006e57c .elementor-heading-title{color:#2C3E50;}.elementor-445 .elementor-element.elementor-element-c55f581{text-align:center;}.elementor-445 .elementor-element.elementor-element-8e63905{--spacer-size:50px;}.elementor-445 .elementor-element.elementor-element-0e20840{--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-445 .elementor-element.elementor-element-f0a1e8a{--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-445 .elementor-element.elementor-element-79711e0 .elementor-heading-title{color:#2C3E50;}.elementor-445 .elementor-element.elementor-element-5aef374{--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-445 .elementor-element.elementor-element-37dd041{--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-445 .elementor-element.elementor-element-8be9adb{text-align:center;}.elementor-445 .elementor-element.elementor-element-8be9adb .elementor-heading-title{color:#2C3E50;}.elementor-445 .elementor-element.elementor-element-fd3ddbf{--display:flex;}.elementor-445 .elementor-element.elementor-element-026c5e7{--display:flex;}.elementor-445 .elementor-element.elementor-element-19e6b21{--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-445 .elementor-element.elementor-element-0baa63b{text-align:center;}.elementor-445 .elementor-element.elementor-element-0baa63b .elementor-heading-title{color:#2C3E50;}.elementor-445 .elementor-element.elementor-element-00b14e1{--display:flex;}.elementor-445 .elementor-element.elementor-element-44f3d4e{--spacer-size:50px;}.elementor-445 .elementor-element.elementor-element-a86f16c{--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-445 .elementor-element.elementor-element-b16c8a1{text-align:center;}.elementor-445 .elementor-element.elementor-element-39b8504{text-align:center;}.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 );}@media(min-width:768px){.elementor-445 .elementor-element.elementor-element-ebaedb4{--width:50%;}.elementor-445 .elementor-element.elementor-element-7727658{--width:50%;}.elementor-445 .elementor-element.elementor-element-f0a1e8a{--width:50%;}.elementor-445 .elementor-element.elementor-element-5aef374{--width:50%;}}/* Start custom CSS for container, class: .elementor-element-5abe5fa *//* Celá sekce servisu */
#sekciaServisu {
    padding: 60px 0;
    background: #f8fafc;
}

/* Nadpis servisu */
#nadpisServis .elementor-heading-title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #2d3748 !important;
    margin-bottom: 20px !important;
    line-height: 1.3 !important;
    position: relative !important;
}

#nadpisServis .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #FFC107, #FFB300);
    border-radius: 2px;
}

/* Popis servisu */
#poppisServis .intro-text {
    font-size: 1.1rem !important;
    color: #4a5568 !important;
    margin-bottom: 40px !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
}

/* Icon list servisu */
#iconServis .elementor-icon-list-items {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#iconServis .elementor-icon-list-item {
    display: flex !important;
    align-items: flex-start !important;
    margin-bottom: 25px !important;
    font-size: 0.95rem !important;
    color: #4a5568 !important;
    line-height: 1.6 !important;
    padding: 15px 20px !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid #e6e9ed !important;
    transition: all 0.3s ease !important;
}

#iconServis .elementor-icon-list-item:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    border-color: #FFC107 !important;
}

#iconServis .elementor-icon-list-icon {
    background: linear-gradient(135deg, #FFC107, #FFB300) !important;
    color: #2d3748 !important;
    border-radius: 50% !important;
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 18px !important;
    margin-top: 0px !important;
    flex-shrink: 0 !important;
    text-align: center !important;
    box-shadow: 0 2px 8px rgba(255, 193, 7, 0.3) !important;
}

#iconServis .elementor-icon-list-icon svg {
    fill: #2d3748 !important;
    width: 16px !important;
    height: 16px !important;
    display: block !important;
    line-height: 1 !important;
}

#iconServis .elementor-icon-list-text {
    color: #4a5568 !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
}

/* Obrázek servisu */
#obrazServis img {
    border-radius: 12px !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12) !important;
    width: 100% !important;
    height: auto !important;
    transition: all 0.3s ease !important;
}

#obrazServis img:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15) !important;
}

/* Responsivní design */
@media (max-width: 768px) {
    #sekciaServisu {
        padding: 50px 0;
    }

    /* Nadpis na mobilu */
    #nadpisServis .elementor-heading-title {
        font-size: 1.8rem !important;
        text-align: center !important;
        margin-bottom: 18px !important;
    }
    
    #nadpisServis .elementor-heading-title::after {
        left: 50%;
        transform: translateX(-50%);
    }
    
    /* Popis na mobilu */
    #poppisServis .intro-text {
        font-size: 1rem !important;
        text-align: center !important;
        margin-bottom: 35px !important;
    }
    
    /* Icon list na mobilu */
    #iconServis .elementor-icon-list-item {
        margin-bottom: 20px !important;
        font-size: 0.9rem !important;
        padding: 12px 15px !important;
    }
    
    #iconServis .elementor-icon-list-icon {
        width: 24px !important;
        height: 24px !important;
        margin-right: 15px !important;
    }
    
    #iconServis .elementor-icon-list-icon svg {
        width: 14px !important;
        height: 14px !important;
    }
    
    /* Skrytí obrázku na mobilu */
    #obrazServis {
        display: none !important;
    }
}

@media (max-width: 480px) {
    #sekciaServisu {
        padding: 40px 0;
    }

    #nadpisServis .elementor-heading-title {
        font-size: 1.6rem !important;
    }
    
    #poppisServis .intro-text {
        font-size: 0.95rem !important;
    }
    
    #iconServis .elementor-icon-list-item {
        font-size: 0.85rem !important;
        padding: 10px 12px !important;
    }
    
    #iconServis .elementor-icon-list-icon {
        width: 22px !important;
        height: 22px !important;
        margin-right: 12px !important;
    }
    
    #iconServis .elementor-icon-list-icon svg {
        width: 12px !important;
        height: 12px !important;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-fb14af9 *//* Celá sekce tabulky */
#tabulkos1 {
    padding: 60px 0;
    background: #f8fafc;
}

/* Nadpis tabulky */
#tabulkos1 .elementor-heading-title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #2d3748 !important;
    margin-bottom: 20px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    position: relative !important;
}

#tabulkos1 .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;
}

/* Hlavní container tabulky */
#serviceTable {
    background: white !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid #e6e9ed !important;
    overflow: hidden !important;
    position: relative !important;
    margin: 40px auto 0 auto !important;

}

/* Žlutý pruh nahoře */
#serviceTable::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 4px !important;
    background: linear-gradient(90deg, #FFC107, #FFB300) !important;
    z-index: 1 !important;
}

/* Samotná tabulka */
.service-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-top: 4px !important;
}

/* Hlavičky tabulky */
.table-header-group,
.table-header-description {
    background: linear-gradient(135deg, #1e88e5, #1565c0) !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 20px !important;
    text-align: left !important;
    border: none !important;
    font-size: 1rem !important;
}

.table-header-group {
    width: 25% !important;
}

.table-header-description {
    width: 75% !important;
}

/* Řádky tabulky */
.table-row td {
    padding: 18px 20px !important;
    border-bottom: 1px solid #f1f3f4 !important;
    font-size: 0.95rem !important;
    vertical-align: middle !important;
    transition: all 0.3s ease !important;
}

.table-row:last-child td {
    border-bottom: none !important;
}

.table-row:hover {
    background: #f8fafc !important;
}

/* Levý sloupec - kategorie */
.table-row td:first-child {
    font-weight: 600 !important;
    color: #1e88e5 !important;
    border-right: 1px solid #f1f3f4 !important;
    background: #f8fafc !important;
}

/* Pravý sloupec - popis práce */
.work-description {
    color: #4a5568 !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
}

/* Kategorie - jednotný styl */
.category-technology,
.category-components,
.category-modules,
.category-construction,
.category-documentation {
    color: #1e88e5 !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Hover efekt na řádky */
.table-row:hover td:first-child {
    background: #fff9c4 !important;
    color: #b8860b !important;
}

.table-row:hover .work-description {
    color: #2d3748 !important;
}

/* Responzivní design */
@media (max-width: 768px) {
    #tabulkos1 {
        padding: 50px 0;
    }

    #tabulkos1 .elementor-heading-title {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }

    #serviceTable {
        margin: 30px 15px 0 15px !important;
        border-radius: 8px !important;
    }

    .table-header-group,
    .table-header-description,
    .table-row td {
        padding: 15px 12px !important;
        font-size: 0.9rem !important;
    }

    .category-technology,
    .category-components,
    .category-modules,
    .category-construction,
    .category-documentation {
        font-size: 0.85rem !important;
    }

    /* Na mobilu zobrazit jako bloky */
    .service-table,
    .service-table thead,
    .service-table tbody,
    .service-table th,
    .service-table td,
    .service-table tr {
        display: block !important;
    }

    .service-table thead tr {
        position: absolute !important;
        top: -9999px !important;
        left: -9999px !important;
    }

    .table-row {
        background: white !important;
        border: 1px solid #e6e9ed !important;
        border-radius: 8px !important;
        margin-bottom: 15px !important;
        padding: 15px !important;
    }

    .table-row td {
        border: none !important;
        padding: 5px 0 !important;
        position: relative !important;
    }

    .table-row td:first-child {
        background: none !important;
        border: none !important;
        font-size: 0.8rem !important;
        color: #FFC107 !important;
        margin-bottom: 8px !important;
    }

    .work-description {
        font-size: 0.9rem !important;
    }
}

@media (max-width: 480px) {
    #tabulkos1 .elementor-heading-title {
        font-size: 1.6rem !important;
    }

    #serviceTable {
        margin: 25px 10px 0 10px !important;
    }

    .table-row {
        padding: 12px !important;
        margin-bottom: 12px !important;
    }

    .table-row td:first-child {
        font-size: 0.75rem !important;
    }

    .work-description {
        font-size: 0.85rem !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-57f6c25 *//* Celá sekce cenové tabulky */
#tabulkos2 {
    padding: 60px 0;
    background: #f8fafc;
}

/* Nadpis cenové tabulky */
#tabulkos2 .elementor-heading-title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #2d3748 !important;
    margin-bottom: 20px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    position: relative !important;
}

#tabulkos2 .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;
}

/* Hlavní container cenové tabulky */
#pricingTable {
    background: white !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid #e6e9ed !important;
    overflow: hidden !important;
    position: relative !important;
    margin: 40px auto 0 auto !important;

}

/* Žlutý pruh nahoře */
#pricingTable::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 4px !important;
    background: linear-gradient(90deg, #FFC107, #FFB300) !important;
    z-index: 1 !important;
}

/* Samotná tabulka */
.pricing-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-top: 4px !important;
}

/* Hlavičky tabulky */
.pricing-header-range,
.pricing-header-price {
    background: linear-gradient(135deg, #1e88e5, #1565c0) !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 20px !important;
    text-align: left !important;
    border: none !important;
    font-size: 1rem !important;
}

.pricing-header-range {
    width: 60% !important;
}

.pricing-header-price {
    width: 40% !important;
}

/* Řádky tabulky */
.pricing-row td {
    padding: 18px 20px !important;
    border-bottom: 1px solid #f1f3f4 !important;
    font-size: 0.95rem !important;
    vertical-align: middle !important;
    transition: all 0.3s ease !important;
}

.pricing-row:last-child td {
    border-bottom: none !important;
}

.pricing-row:hover {
    background: #f8fafc !important;
}

/* Levý sloupec - rozsah FVE */
.pricing-row td:first-child {
    font-weight: 600 !important;
    color: #1e88e5 !important;
    border-right: 1px solid #f1f3f4 !important;
    background: #f8fafc !important;
}

/* Rozsah FVE */
.pricing-range {
    color: #1e88e5 !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
}

/* Cenové hodnoty */
.pricing-value {
    color: #2d3748 !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
}

/* Speciální buňka pro individuální nabídku */
.pricing-value-custom {
    vertical-align: middle !important;
}

.custom-price {
    color: #2d3748 !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
    margin-bottom: 5px !important;
}

.pricing-note {
    color: #6c757d !important;
    font-size: 0.85rem !important;
    font-style: italic !important;
    line-height: 1.4 !important;
}

/* Hover efekt na řádky */
.pricing-row:hover td:first-child {
    background: #fff9c4 !important;
    color: #b8860b !important;
}

.pricing-row:hover .pricing-value,
.pricing-row:hover .custom-price {
    color: #FFC107 !important;
}

/* Responsivní design */
@media (max-width: 768px) {
    #tabulkos2 {
        padding: 50px 0;
    }

    #tabulkos2 .elementor-heading-title {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }

    #pricingTable {
        margin: 30px 15px 0 15px !important;
        border-radius: 8px !important;
    }

    .pricing-header-range,
    .pricing-header-price,
    .pricing-row td {
        padding: 15px 12px !important;
        font-size: 0.9rem !important;
    }
    
    .pricing-value,
    .custom-price {
        font-size: 1rem !important;
    }
    
    .pricing-note {
        font-size: 0.8rem !important;
    }

    /* Na mobilu zobrazit jako bloky */
    .pricing-table,
    .pricing-table thead,
    .pricing-table tbody,
    .pricing-table th,
    .pricing-table td,
    .pricing-table tr {
        display: block !important;
    }

    .pricing-table thead tr {
        position: absolute !important;
        top: -9999px !important;
        left: -9999px !important;
    }

    .pricing-row {
        background: white !important;
        border: 1px solid #e6e9ed !important;
        border-radius: 8px !important;
        margin-bottom: 15px !important;
        padding: 15px !important;
    }

    .pricing-row td {
        border: none !important;
        padding: 5px 0 !important;
        position: relative !important;
    }

    .pricing-row td:first-child {
        background: none !important;
        border: none !important;
        font-size: 0.8rem !important;
        color: #FFC107 !important;
        margin-bottom: 8px !important;
    }

    .pricing-value,
    .custom-price {
        font-size: 1.1rem !important;
        color: #2d3748 !important;
    }
}

@media (max-width: 480px) {
    #tabulkos2 .elementor-heading-title {
        font-size: 1.6rem !important;
    }

    #pricingTable {
        margin: 25px 10px 0 10px !important;
    }

    .pricing-row {
        padding: 12px !important;
        margin-bottom: 12px !important;
    }

    .pricing-row td:first-child {
        font-size: 0.75rem !important;
    }

    .pricing-value,
    .custom-price {
        font-size: 1rem !important;
    }

    .pricing-note {
        font-size: 0.75rem !important;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-79711e0 *//* Celá sekce servisu fotovoltaických systémů */
#servisfotovoltramc {
    padding: 60px 0;
    background: #f8fafc;
}

/* Nadpis sekce */
#servisfotovoltramc .elementor-heading-title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #2d3748 !important;
    margin-bottom: 20px !important;
    line-height: 1.3 !important;
    position: relative !important;
}

#servisfotovoltramc .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 80px;
    height: 4px;
    background: linear-gradient(135deg, #FFC107, #FFB300);
    border-radius: 2px;
}

/* Úvodní texty */
.intro-text {
    font-size: 1.1rem !important;
    color: #4a5568 !important;
    margin-bottom: 25px !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
}

/* Zvýrazněný text */
.highlight-text {
    font-weight: 600 !important;
    color: #1e88e5 !important;
    background: #e3f2fd !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
}

/* Obrázek servisu */
#servisfotovoltramc #obrazServis img {
    border-radius: 12px !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12) !important;
    width: 100% !important;
    height: auto !important;
    transition: all 0.3s ease !important;
}

#servisfotovoltramc #obrazServis img:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15) !important;
}

/* Responzivní design */
@media (max-width: 768px) {
    #servisfotovoltramc {
        padding: 50px 0;
    }

    #servisfotovoltramc .elementor-heading-title {
        font-size: 1.8rem !important;
        text-align: center !important;
        margin-bottom: 30px !important;
    }
    
    #servisfotovoltramc .elementor-heading-title::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .intro-text {
        font-size: 1rem !important;
        margin-bottom: 20px !important;
    }

    /* Skrytí obrázku na mobilu */
    #servisfotovoltramc #obrazServis {
        display: none !important;
    }
}

@media (max-width: 480px) {
    #servisfotovoltramc {
        padding: 40px 0;
    }

    #servisfotovoltramc .elementor-heading-title {
        font-size: 1.6rem !important;
    }

    .intro-text {
        font-size: 0.95rem !important;
        margin-bottom: 18px !important;
    }

    .highlight-text {
        padding: 1px 4px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-37dd041 *//* Celá sekce třetí tabulky */
#tabulkos3 {
    padding: 60px 0;
    background: #f8fafc;
}

/* Nadpis třetí tabulky */
#tabulkos3 .elementor-heading-title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #2d3748 !important;
    margin-bottom: 20px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    position: relative !important;
}

#tabulkos3 .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;
}

/* Container pro obě tabulky */
.table-container {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid #e6e9ed;
    overflow: hidden;
    position: relative;
    margin-bottom: 30px;
    max-width: 100%;
}

/* Žlutý pruh nahoře */
.table-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #FFC107, #FFB300);
    z-index: 1;
}

/* Samotná tabulka */
.revision-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 4px;
}

/* Hlavičky tabulky */
.revision-table th {
    background: linear-gradient(135deg, #1e88e5, #1565c0) !important;
    color: white !important;
    font-weight: 600;
    padding: 20px;
    text-align: left;
    border: none;
    font-size: 1rem;
}

/* Řádky tabulky */
.revision-table td {
    padding: 18px 20px;
    border-bottom: 1px solid #f1f3f4;
    font-size: 0.95rem;
    vertical-align: middle;
    transition: all 0.3s ease;
}

.revision-table tr:last-child td {
    border-bottom: none;
}

.revision-table tr:hover {
    background: #f8fafc;
}

/* Levý sloupec - kategorie/rozsah */
.revision-table td:first-child {
    font-weight: 600;
    color: #1e88e5;
    border-right: 1px solid #f1f3f4;
    background: #f8fafc;
}

/* Kategorie skupin */
.category-group {
    color: #1e88e5 !important;
    font-weight: 600;
    font-size: 0.95rem;
}

/* Popis práce */
.work-description {
    color: #4a5568 !important;
    line-height: 1.6;
    font-weight: 400;
}

/* Rozsah cenové tabulky */
.pricing-range {
    color: #1e88e5 !important;
    font-weight: 600;
    font-size: 0.95rem;
}

/* Cenové hodnoty */
.pricing-value {
    color: #2d3748 !important;
    font-weight: 700;
    font-size: 1.1rem;
}

/* Poznámka o individuální nabídce */
.pricing-note {
    color: #2d3748 !important;
    font-weight: 700;
    font-size: 1.1rem;
    font-style: normal;
}

/* Hover efekty */
.revision-table tr:hover td:first-child {
    background: #fff9c4 !important;
    color: #b8860b !important;
}

.revision-table tr:hover .pricing-value,
.revision-table tr:hover .pricing-note {
    color: #FFC107 !important;
}

/* Responzivní design */
@media (max-width: 768px) {
    #tabulkos3 {
        padding: 50px 0;
    }

    #tabulkos3 .elementor-heading-title {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }

    .table-container {
        margin: 0 15px 25px 15px;
        border-radius: 8px;
    }

    .revision-table th,
    .revision-table td {
        padding: 15px 12px;
        font-size: 0.9rem;
    }

    .pricing-value,
    .pricing-note {
        font-size: 1rem !important;
    }

    /* Na mobilu zobrazit jako bloky */
    .revision-table,
    .revision-table thead,
    .revision-table tbody,
    .revision-table th,
    .revision-table td,
    .revision-table tr {
        display: block !important;
    }

    .revision-table thead tr {
        position: absolute !important;
        top: -9999px !important;
        left: -9999px !important;
    }

    .revision-table tr {
        background: white !important;
        border: 1px solid #e6e9ed !important;
        border-radius: 8px !important;
        margin-bottom: 15px !important;
        padding: 15px !important;
    }

    .revision-table td {
        border: none !important;
        padding: 5px 0 !important;
        position: relative !important;
    }

    .revision-table td:first-child {
        background: none !important;
        border: none !important;
        font-size: 0.8rem !important;
        color: #FFC107 !important;
        margin-bottom: 8px !important;
    }

    .work-description,
    .pricing-value,
    .pricing-note {
        font-size: 0.9rem !important;
        color: #2d3748 !important;
    }
}

@media (max-width: 480px) {
    #tabulkos3 .elementor-heading-title {
        font-size: 1.6rem !important;
    }

    .table-container {
        margin: 0 10px 20px 10px;
    }

    .revision-table tr {
        padding: 12px !important;
        margin-bottom: 12px !important;
    }

    .revision-table td:first-child {
        font-size: 0.75rem !important;
    }

    .work-description,
    .pricing-value,
    .pricing-note {
        font-size: 0.85rem !important;
    }
}

/* Speciální styling pro grid layout na desktopu */
@media (min-width: 769px) {
    #tabulkos3 .e-con-inner {
        gap: 30px;
    }
    
    .table-container {
        height: fit-content;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-19e6b21 *//* Nadpis pro tabulkos5 */
#tabulkos5 .elementor-heading-title {
   font-size: 2.2rem !important;
   font-weight: 700 !important;
   color: #2d3748 !important;
   margin-bottom: 20px !important;
   line-height: 1.3 !important;
   text-align: center !important;
   position: relative !important;
}

#tabulkos5 .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;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a86f16c *//* 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 */