.elementor-224 .elementor-element.elementor-element-1526c79{--display:flex;}.elementor-224 .elementor-element.elementor-element-c83e41b{--display:flex;}.elementor-224 .elementor-element.elementor-element-80a2d36{--display:flex;}.elementor-224 .elementor-element.elementor-element-80a2d36.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-224 .elementor-element.elementor-element-80a2d36{--width:121.494%;}}/* Start custom CSS for html, class: .elementor-element-1784fc9 *//* ===========================
   ELECTRICIAN COST CALCULATOR
=========================== */

.ea-calculator{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:35px;
    max-width:1400px;
    margin:auto;
    font-family:Poppins,sans-serif;
}

.ea-left,
.ea-right{
    background:#ffffff;
    border:1px solid #ececec;
    border-radius:12px;
    padding:35px;
    box-shadow:0 12px 35px rgba(0,0,0,.05);
}

/* Heading */

.ea-title,
.summary-title{
    font-size:34px;
    font-weight:600;
    color:#212121;
    margin-bottom:30px;
}

/* Product Group */

.ea-product-group{
    border-left:2px solid #ececec;
    padding-left:25px;
}

.ea-group-header h3{
    font-size:24px;
    margin-bottom:30px;
}

.ea-group-header span{
    color:#8f8f8f;
}

/* Labels */

.ea-label{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    font-weight:600;
}

.pro-badge{
    background:#31c8ff;
    color:#fff;
    font-size:11px;
    padding:3px 8px;
    border-radius:20px;
}

/* Grid */

.ea-card-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    margin-bottom:35px;
}

/* Product Card */

.ea-card{
    position:relative;
    border:2px solid #e8e8e8;
    border-radius:10px;
    overflow:hidden;
    cursor:pointer;
    transition:.25s;
    background:#fff;
}

.ea-card:hover{
    border-color:#28c76f;
    transform:translateY(-3px);
}

.ea-card input{
    position:absolute;
    right:15px;
    bottom:15px;
}

.ea-card-image{
    background:#fafafa;
    padding:20px;
}

.ea-card-image img{
    width:100%;
    display:block;
}

.ea-card-info{
    padding:18px;
}

.ea-card-info h4{
    font-size:18px;
    margin-bottom:8px;
}

.ea-card-info p{
    color:#777;
}

/* Buttons */

.ea-buttons{
    display:flex;
    gap:15px;
    margin-top:15px;
    margin-bottom:40px;
}

.remove-btn,
.add-btn{
    padding:13px 24px;
    border-radius:8px;
    font-size:15px;
    cursor:pointer;
    transition:.3s;
}

.remove-btn{
    background:#fff;
    border:2px solid #ff6b6b;
    color:#ff6b6b;
}

.remove-btn:hover{
    background:#ff6b6b;
    color:#fff;
}

.add-btn{
    background:#fff;
    border:2px solid #22c55e;
    color:#22c55e;
}

.add-btn:hover{
    background:#22c55e;
    color:#fff;
}

/* Slider */

.ea-slider-box{
    margin-top:40px;
}

.ea-slider-header,
.ea-slider-footer{
    display:flex;
    justify-content:space-between;
    margin-bottom:12px;
}

.ea-slider-box input{
    width:100%;
    accent-color:#1ec970;
}

/* Toggle */

.ea-toggle-box{
    margin-top:45px;
}

.ea-toggle-title{
    font-weight:600;
    margin-bottom:15px;
}

.ea-switch{
    position:relative;
    display:inline-block;
    width:60px;
    height:32px;
}

.ea-switch input{
    display:none;
}

.slider{
    position:absolute;
    inset:0;
    background:#d8d8d8;
    border-radius:30px;
    transition:.3s;
}

.slider:before{
    content:"";
    position:absolute;
    width:26px;
    height:26px;
    left:3px;
    top:3px;
    background:#fff;
    border-radius:50%;
    transition:.3s;
}

.ea-switch input:checked + .slider{
    background:#23c16b;
}

.ea-switch input:checked + .slider:before{
    transform:translateX(28px);
}

/* Summary */

.summary-table{
    border:1px solid #ececec;
    border-radius:10px;
    overflow:hidden;
}

.summary-row{
    display:flex;
    justify-content:space-between;
    padding:16px 20px;
    border-bottom:1px solid #efefef;
    font-size:15px;
}

.summary-row.heading{
    background:#f7f7f7;
    font-weight:600;
}

.summary-row.total{
    background:#fafafa;
    font-size:20px;
}

.summary-btn{
    width:100%;
    margin-top:20px;
    padding:16px;
    border-radius:8px;
    border:2px solid #dcdcdc;
    background:#fff;
    cursor:pointer;
    font-size:16px;
    transition:.3s;
}

.summary-btn:hover{
    background:#22c55e;
    border-color:#22c55e;
    color:#fff;
}

/* Payment */

.payment-box{
    margin-top:30px;
    border:1px solid #ececec;
    border-radius:10px;
    padding:20px;
}

.payment-box h4{
    margin-bottom:20px;
}

.payment-option{
    display:flex;
    align-items:center;
    gap:12px;
    border:1px solid #ececec;
    padding:16px;
    border-radius:8px;
    margin-bottom:12px;
    cursor:pointer;
}

.payment-option:hover{
    border-color:#22c55e;
}

/* Order Button */

.order-btn{
    width:100%;
    margin-top:25px;
    background:#57d68d;
    color:#fff;
    border:none;
    border-radius:8px;
    padding:18px;
    font-size:20px;
    cursor:pointer;
    transition:.3s;
}

.order-btn:hover{
    background:#28c76f;
}

/* Responsive */

@media(max-width:991px){

.ea-calculator{
    grid-template-columns:1fr;
}

.ea-card-grid{
    grid-template-columns:1fr;
}

.ea-left,
.ea-right{
    padding:25px;
}

.ea-title,
.summary-title{
    font-size:28px;
}

}

@media(max-width:600px){

.ea-buttons{
    flex-direction:column;
}

.summary-row{
    font-size:14px;
}

.summary-row.total{
    font-size:18px;
}

}

.ea-card.selected{

border:2px solid #24c26b;

box-shadow:0 0 0 3px rgba(36,194,107,.15);

}

.ea-card.selected::after{

content:"✓";

position:absolute;

top:15px;

right:15px;

width:26px;

height:26px;

background:#24c26b;

color:#fff;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:14px;

font-weight:bold;

}/* End custom CSS */