/* ==========================================================
   ABTECH SERVICE POPUP
========================================================== */

.ab-service-popup{

    position:fixed;

    inset:0;

    z-index:99999;

    display:flex;

    align-items:center;

    justify-content:center;

    opacity:0;

    visibility:hidden;

    transition:.35s ease;

    padding:20px;

}

/* ==========================================================
   SHOW
========================================================== */

.ab-service-popup.show{

    opacity:1;

    visibility:visible;

}

/* ==========================================================
   OVERLAY
========================================================== */

.ab-service-overlay{

    position:absolute;

    inset:0;

    background:rgba(15,23,42,.60);

    backdrop-filter:blur(8px);

}

/* ==========================================================
   BOX
========================================================== */

.ab-service-box{

    position:relative;

    width:100%;

    max-width:760px;

    max-height:88vh;

    background:#FFFFFF;

    border-radius:24px;

    overflow:hidden;

    display:flex;

    flex-direction:column;

    box-shadow:0 30px 80px rgba(15,23,42,.25);

    transform:translateY(40px) scale(.98);

    transition:.35s ease;

    z-index:2;

}

.ab-service-popup.show .ab-service-box{

    transform:translateY(0) scale(1);

}

/* ==========================================================
   HEADER
========================================================== */

.ab-service-header{

    display:flex;

    align-items:center;

    gap:18px;

    padding:26px 30px;

    border-bottom:1px solid #E5E7EB;

    background:#FFFFFF;

}

.ab-service-icon{

    width:72px;

    height:72px;

    border-radius:20px;

    background:#EEF4FF;

    color:#2563EB;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:30px;

    flex-shrink:0;

}

.ab-service-title{

    flex:1;

}

.ab-service-title span{

    display:block;

    font-size:13px;

    font-weight:600;

    color:#64748B;

    margin-bottom:6px;

}

.ab-service-title h2{

    margin:0;

    font-size:30px;

    color:#142B63;

    font-weight:800;

    line-height:1.2;

}

/* ==========================================================
   CLOSE
========================================================== */

.ab-popup-close{

    width:44px;

    height:44px;

    border:none;

    border-radius:50%;

    background:#F1F5F9;

    color:#142B63;

    cursor:pointer;

    font-size:18px;

    transition:.25s;

}

.ab-popup-close:hover{

    background:#2563EB;

    color:#FFFFFF;

}

/* ==========================================================
   CONTENT
========================================================== */

.ab-service-content{

    flex:1;

    overflow-y:auto;

    padding:28px 30px;

}

.ab-service-content::-webkit-scrollbar{

    width:6px;

}

.ab-service-content::-webkit-scrollbar-thumb{

    background:#CBD5E1;

    border-radius:20px;

}

#popupDescription{

    margin:0 0 24px;

    font-size:15px;

    line-height:1.8;

    color:#475569;

}

/* ==========================================================
   GRID
========================================================== */

#popupBody{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}

/* ==========================================================
   CARD
========================================================== */

.ab-popup-card{

    background:#F8FAFC;

    border:1px solid #E2E8F0;

    border-radius:18px;

    padding:20px;

    transition:.25s ease;

}

.ab-popup-card:hover{

    border-color:#2563EB;

    transform:translateY(-3px);

    box-shadow:0 10px 30px rgba(37,99,235,.08);

}

.ab-popup-card h3{

    margin:0 0 14px;

    font-size:17px;

    font-weight:700;

    color:#142B63;

}

/* ==========================================================
   LIST
========================================================== */

.ab-popup-card ul{

    margin:0;

    padding:0;

    list-style:none;

}

.ab-popup-card li{

    position:relative;

    padding-left:24px;

    margin-bottom:10px;

    color:#475569;

    font-size:14px;

    line-height:1.7;

}

.ab-popup-card li:last-child{

    margin-bottom:0;

}

.ab-popup-card li::before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    color:#2563EB;

    font-weight:700;

}

/* ==========================================================
   FOOTER
========================================================== */

.ab-service-footer{

    padding:22px 30px;

    border-top:1px solid #E5E7EB;

    background:#FFFFFF;

    display:flex;

    justify-content:flex-end;

}

.ab-service-footer .btn{

    min-width:220px;

    justify-content:center;

}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width:991px){

.ab-service-popup{

    padding:18px;

}

.ab-service-box{

    max-width:94%;

    max-height:90vh;

}

.ab-service-header{

    padding:24px;

}

.ab-service-content{

    padding:24px;

}

#popupBody{

    grid-template-columns:1fr;

    gap:16px;

}

.ab-service-footer{

    padding:20px 24px;

}

}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width:768px){

.ab-service-popup{

    align-items:flex-end;

    padding:0;

}

.ab-service-box{

    width:100%;

    max-width:100%;

    max-height:92vh;

    border-radius:24px 24px 0 0;

    animation:popupMobile .35s ease;

}

.ab-service-header{

    padding:20px;

    gap:14px;

}

.ab-service-icon{

    width:58px;

    height:58px;

    border-radius:16px;

    font-size:24px;

}

.ab-service-title span{

    font-size:12px;

}

.ab-service-title h2{

    font-size:22px;

}

#popupDescription{

    font-size:14px;

    margin-bottom:18px;

}

.ab-service-content{

    padding:20px;

}

.ab-popup-card{

    padding:16px;

    border-radius:14px;

}

.ab-popup-card h3{

    font-size:15px;

}

.ab-popup-card li{

    font-size:13px;

    line-height:1.6;

}

.ab-service-footer{

    padding:18px 20px;

}

.ab-service-footer .btn{

    width:100%;

    min-width:100%;

}

}

/* ==========================================================
   SMALL MOBILE
========================================================== */

@media (max-width:480px){

.ab-service-header{

    padding:18px;

}

.ab-service-icon{

    width:52px;

    height:52px;

    font-size:22px;

}

.ab-service-title h2{

    font-size:20px;

}

.ab-popup-close{

    width:38px;

    height:38px;

    font-size:16px;

}

.ab-service-content{

    padding:18px;

}

}

/* ==========================================================
   MOBILE ANIMATION
========================================================== */

@keyframes popupMobile{

from{

    transform:translateY(100%);

}

to{

    transform:translateY(0);

}

}
