/* =========================
   HERO SECTION
========================= */

.lab-hero-section {
    background: linear-gradient(135deg, #eff6ff, #ffffff);
    padding: 120px 8% 90px;
    text-align: center;
}

.lab-hero-content {
    max-width: 850px;
    margin: 0 auto;
}

.lab-hero-content h1 {
    font-size: 3rem;
    color: #0f172a;
    margin: 20px 0;
    line-height: 1.2;
}

.lab-hero-content p {
    font-size: 1.1rem;
    color: #64748b;
    line-height: 1.8;
    margin-bottom: 35px;
}

.hero-btn-group {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
    text-decoration: none;
}

.hero-btn-group a{

    text-decoration:none;
}


/* =========================
   COMMON SECTIONS
========================= */

.importance-section,
.services-section,
.benefits-section,
.quality-section,
.coming-soon-section {
    padding: 90px 8%;
}


/* =========================
   IMPORTANCE CARDS
========================= */

.importance-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
    margin-top: 50px;
}
.importance-card{
    background:#fff;
    padding:25px;
    border-radius:18px;
    box-shadow:0 6px 18px rgba(0,0,0,.06);
    transition:.3s ease;
    text-align:center;
    min-height:320px;
}

.importance-card:hover{
    transform:translateY(-8px);
}

.importance-card img{
    width:120px;
    height:120px;
    object-fit:contain;
    margin-bottom:20px;
}

.importance-card h3{
    color:#1e40af;
    margin-bottom:12px;
    font-size:1.2rem;
}

.importance-card p{
    color:#64748b;
    line-height:1.7;
    font-size:.95rem;
}

/*====================================
            SERVICES
====================================*/

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:60px;
}

.service-card{
    background:#fff;
    border-radius:24px;
    padding:30px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,.06);
    transition:.3s ease;
    border:1px solid #eef2f7;
}

.service-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 35px rgba(28,182,241,.15);
}

.service-icon{
    width:80px;
    height:80px;
    margin:0 auto 20px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:36px;

    background:#e0f7ff;
    border-radius:50%;
}

.service-card h3{
    font-size:1.2rem;
    color:#28328c;
    margin-bottom:12px;
}

.service-card p{
    color:#64748b;
    line-height:1.7;
}


@media(max-width:1400px){

    .services-grid{
        grid-template-columns:repeat(3,1fr);
    }

}

@media(max-width:1024px){

    .services-grid{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

}

@media(max-width:768px){

    .services-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .service-card{
        padding:25px;
    }

    .service-icon{
        width:70px;
        height:70px;
        font-size:30px;
    }

}



/* =========================
   BENEFITS FLOW
========================= */

.benefits-section{
    padding:90px 8%;
    background:#f8fafc;
}

.benefits-flow{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-top:50px;
}

.benefit-step{
     position:relative;
   background:#dbeafe;
    color:#fff;
    padding:35px 30px;
    min-height:180px;
    border:1px solid #93c5fd;

    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;

    clip-path:polygon(
        0 0,
        88% 0,
        100% 50%,
        88% 100%,
        0 100%,
        8% 50%
    );

    transition:.3s ease;
}

.benefit-step:hover{
      transform:translateY(-6px);
      background:#bfdbfe;
}

.benefit-step span{
    display:inline-block;
    width:55px;
    height:55px;
    border-radius:50%;
    background:#67e8f9;
    color:#0f172a;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
}

.benefit-step h3{
     font-size:1.1rem;
    line-height:1.6;
    font-weight:600;
    color:#1e3a8a;
}

/* Tablet */

@media(max-width:992px){

   .benefits-flow{
        grid-template-columns:repeat(2,1fr);
    }

}

/* Mobile */

@media(max-width:768px){

     .benefits-flow{
        grid-template-columns:1fr;
    }

    .benefit-step{
        clip-path:none;
        border-radius:18px;
        min-height:120px;
    }

}


/* =========================
   QUALITY SECTION
========================= */

.quality-section{
    padding:90px 8%;
    background:#f8fafc;
}

.quality-badges{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
    margin-top:60px;
}

.quality-badge{
    background:white;
    padding:30px 20px;
    text-align:center;
    border-radius:20px;
    border-top:5px solid #1cb6f1;
    box-shadow:0 10px 25px rgba(0,0,0,.05);
    transition:.3s;
}

.quality-badge:hover{
    transform:translateY(-8px);
}

.badge-icon{
    width:70px;
    height:70px;
    margin:0 auto 20px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#e0f7ff;
    border-radius:50%;

    font-size:30px;
}

.quality-badge h3{
    color:#28328c;
    font-size:1.05rem;
    line-height:1.5;
}


/* Laptop */

@media(max-width:1200px){

    .quality-badges{
        grid-template-columns:repeat(2,1fr);
    }

}

/* Mobile */

@media(max-width:768px){

    .quality-badges{
        grid-template-columns:1fr;
        gap:20px;
    }

    .quality-badge{
        padding:25px;
    }

}

/* =========================
   COMING SOON
========================= */

.coming-soon-section {
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
    border-radius: 30px;
    margin: 80px 8%;
    text-align: center;
}

.coming-soon-content {
    max-width: 750px;
    margin: auto;
}

.coming-soon-content .section-tag {
    background: rgba(255,255,255,.15);
    color: white;
}

.coming-soon-content h2 {
    color: white;
    font-size: 2.3rem;
    margin: 20px 0;
}

.coming-soon-content p {
    color: rgba(255,255,255,.9);
    line-height: 1.8;
    margin-bottom: 30px;
}

.coming-soon-content .primary-btn {
    background: white;
    color: #2563eb;
    text-decoration: none;
}

.coming-soon-content .primary-btn:hover {
    background: #f8fafc;
    text-decoration: none;
}


/* =========================
   RESPONSIVE
========================= */

@media (max-width: 992px) {

    .lab-hero-content h1 {
        font-size: 2.4rem;
    }

    .coming-soon-content h2 {
        font-size: 2rem;
    }

}

@media (max-width: 768px) {

    .lab-hero-section,
    .importance-section,
    .services-section,
    .benefits-section,
    .quality-section,
    .coming-soon-section {
        padding: 70px 5%;
    }

    .lab-hero-content h1 {
        font-size: 2rem;
    }

    .lab-hero-content p {
        font-size: 1rem;
    }

    .coming-soon-content h2 {
        font-size: 1.7rem;
    }

}

@media (max-width: 480px) {

    .lab-hero-content h1 {
        font-size: 1.8rem;
    }

    .importance-card,
    .service-card,
    .benefit-card,
    .quality-card {
        padding: 24px;
    }

    .coming-soon-section {
        margin: 50px 5%;
    }

}


/*====================================
  JOURNEY SECTION
====================================*/

.journey-section{
    padding:100px 8%;
    background:#f8fafc;
}

.timeline-wrapper{
    position:relative;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:25px;
    margin-top:80px;
}

.timeline-line{
    position:absolute;
    top:45px;
    left:5%;
    width:90%;
    height:8px;
    background:#67e8f9;
    border-radius:30px;
    z-index:1;
}

.timeline-item{
    flex:1;
    position:relative;
    text-align:center;
    z-index:2;
}

.timeline-circle{
    width:90px;
    height:90px;
    margin:0 auto 25px;
    border-radius:50%;
    background:#fff;
    border:8px solid #67e8f9;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.4rem;
    font-weight:700;
    color:#2563eb;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
}

.timeline-item h3{
    font-size:1rem;
    color:#0f172a;
    margin-bottom:10px;
}

.timeline-item p{
    color:#64748b;
    font-size:.9rem;
    line-height:1.6;
    max-width:180px;
    margin:auto;
}


/*====================================
  LAPTOP (1024px - 1400px)
====================================*/

@media(max-width:1400px){

    .timeline-circle{
        width:80px;
        height:80px;
        font-size:1.2rem;
    }

    .timeline-item h3{
        font-size:.95rem;
    }

    .timeline-item p{
        font-size:.85rem;
    }
}


/*====================================
  TABLET / iPAD
====================================*/

@media(max-width:1024px){

    .timeline-wrapper{
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:40px;
    }

    .timeline-line{
        display:none;
    }

    .timeline-item{
        width:100%;
    }

    .timeline-item p{
        max-width:220px;
    }
}


/*====================================
  MOBILE
====================================*/

@media(max-width:768px){

    .journey-section{
        padding:70px 5%;
    }

    .timeline-wrapper{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:35px;
    }

    .timeline-item{
        width:100%;
        max-width:400px;
    }

    .timeline-circle{
        width:70px;
        height:70px;
        font-size:1.1rem;
        border-width:6px;
    }

    .timeline-item p{
        max-width:100%;
    }
}

/*====================================
  ELIGIBILITY & DOCUMENTS
====================================*/

.eligibility-section{

    background:#ffffff;

   padding:20px 5% 15px;

    margin: 0;



}

.eligibility-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

    margin-top:25px;

}

.eligibility-card{

    background:#f8fbff;

    border:1px solid #e5eef9;

    border-radius:20px;

    padding:35px;

    transition:.3s;
    display:flex;

    flex-direction:column;

    justify-content:center;
}

.eligibility-card ul{

    list-style:none;

    padding:0;

    margin:0 auto;

    width:80%;

}

.eligibility-card ul li{

    text-align:center;

    padding:12px 0;

    border-bottom:1px solid #edf2f7;

}

.eligibility-card:hover{

    transform:translateY(-6px);

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.eligibility-card h3{

    color:#28328c;

    margin-bottom:25px;

    display:flex;

    align-items:center;

    gap:12px;
    justify-content:center;


}

.eligibility-card h3 i{

    color:#1cb6f1;

    font-size:26px;

}

.eligibility-card ul{

    list-style:none;

    padding:0;

}

.eligibility-card ul li{

    padding:12px 0;

    border-bottom:1px solid #edf2f7;

    color:#555;

    font-size:16px;

}

.eligibility-card ul li:last-child{

    border:none;

}

.eligibility-card ul li::before{

    content:"✓";

    color:#1cb6f1;

    font-weight:bold;

    margin-right:10px;

}



/*==================================
            FAQ
==================================*/

.faq-section{

    padding:90px 8%;
    background:#f8fafc;
   margin: 0;

}

.faq-section .section-heading{

    margin-bottom:20px;

}

.faq-section details{
     margin-bottom:12px;

    padding:16px 22px;


    background:#fff;

    border-radius:15px;


    border-left:4px solid #1cb6f1;

    box-shadow:0 4px 12px rgba(0,0,0,.05);

    transition:.3s;
    overflow:hidden;
    

}

.faq-section details:hover{

    transform:translateY(-3px);

    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.faq-section summary{

    cursor:pointer;

    list-style:none;

    font-size:18px;

    font-weight:600;

    color:#28328c;

    display:flex;

    align-items:center;
     line-height:1.5;

}



.faq-section summary::-webkit-details-marker{

    display:none;

}

.faq-section summary::before{

    content:"+";

    font-size:24px;

    font-weight:bold;

    color:#1cb6f1;

    width:28px;

    margin-right:10px;

    transition:.3s;

}

.faq-section details[open] summary::before{

    content:"−";

}

.faq-section details p{

    margin-top:15px;

    padding-top:15px;

    border-top:1px solid #eef2f7;

    color:#666;

    line-height:1.8;

    font-size:15px;

}

.faq-section details:last-child{

    margin-bottom:0;

}


@media(max-width:768px){

    .faq-section{
        padding:70px 5%;
    }

    .faq-section summary{
        font-size:16px;
    }

    .faq-section details p{
        font-size:14px;
    }
}



/*====================================
  RESPONSIVE
====================================*/

@media(max-width:992px){

.eligibility-grid{

    grid-template-columns:1fr;

}

.cta-content h2{

    font-size:2.4rem;

}

}

@media(max-width:480px){

.section-heading h2{

    font-size:1.8rem;

}

.eligibility-card{

    padding:25px;

}

.eligibility-card h3{

    font-size:20px;

}

.eligibility-card ul li{

    font-size:15px;

}

.cta-section{

    border-radius:20px;

}

.cta-content h2{

    font-size:1.7rem;

}
}


/*======================================
        LARGE DESKTOP (1400px+)
======================================*/

@media (min-width:1400px){

    .eligibility-section{

    padding:40px 8% 20px;

}

.faq-section{

    padding:45px 8% 30px;

}
.eligibility-grid{

    grid-template-columns:repeat(2,1fr);

    gap:40px;

}

.eligibility-card{

    padding:40px;

}

.faq-container{

    max-width:950px;

    margin:50px auto 0;

}

.faq-item{

    padding:30px;

}

.cta-section{

    padding:110px 8%;

}

.cta-content{

    max-width:850px;

}

.cta-content h2{

    font-size:3.2rem;

}

}


/*======================================
            DESKTOP
======================================*/

@media (min-width:1200px) and (max-width:1399px){

    .eligibility-section{

    padding:35px 6% 20px;

}

.faq-section{

    padding:40px 6% 25px;

}

.eligibility-grid{

    grid-template-columns:repeat(2,1fr);

}

.faq-container{

    max-width:900px;

    margin:auto;

}

.cta-section{

    padding:90px 6%;

}

.cta-content h2{

    font-size:2.8rem;

}

}


/*======================================
              LAPTOP
======================================*/

@media (min-width:992px) and (max-width:1199px){


.eligibility-section{

    padding:35px 5% 20px;

}

.faq-section{

    padding:40px 5% 25px;

}

.eligibility-grid{

    grid-template-columns:repeat(2,1fr);

    gap:25px;

}

.eligibility-card{

    padding:30px;

}

.eligibility-card h3{

    font-size:22px;

}

.eligibility-card ul li{

    font-size:15px;

}

.faq-container{

    max-width:100%;

}

.faq-item{

    padding:24px;

}

.faq-item h3{

    font-size:19px;

}

.cta-section{

    padding:80px 5%;

}

.cta-content h2{

    font-size:2.5rem;

}

.cta-buttons{

    gap:15px;

}

}


/*======================================
              TABLET
======================================*/

@media (min-width:768px) and (max-width:991px){

.eligibility-section{

    padding:30px 5% 20px;

}

.faq-section{

    padding:35px 5% 25px;

}

.eligibility-grid{

    grid-template-columns:1fr;

    gap:25px;

}

.eligibility-card{

    padding:30px;

}

.eligibility-card h3{

    font-size:22px;

}

.faq-item{

    padding:22px;

}

.faq-item h3{

    font-size:18px;

}

.cta-section{

    padding:70px 5%;

}

.cta-content h2{

    font-size:2.2rem;

}

.cta-content p{

    font-size:17px;

}

.cta-buttons{

    justify-content:center;

    flex-wrap:wrap;

}

}


/*======================================
          LARGE MOBILE
======================================*/

@media (min-width:576px) and (max-width:767px){

.eligibility-section{

    padding:25px 5% 20px;

}

.faq-section{

    padding:30px 5% 25px;

}

.eligibility-grid{

    grid-template-columns:1fr;

}

.eligibility-card{

    padding:25px;

}

.eligibility-card h3{

    font-size:20px;

}

.eligibility-card ul li{

    font-size:15px;

}

.faq-item{

    padding:20px;

}

.faq-item h3{

    font-size:17px;

}

.faq-item p{

    font-size:15px;

}

.cta-section{

    padding:60px 5%;

    border-radius:20px;

}

.cta-content h2{

    font-size:2rem;

}

.cta-buttons{

    flex-direction:column;

    align-items:center;

}

.cta-buttons a{

    width:260px;

}

}


/*======================================
              MOBILE
======================================*/

@media (max-width:575px){

.eligibility-section{

    padding:20px 20px 15px;

}

.faq-section{

    padding:25px 20px 20px;

}

.eligibility-grid{

    grid-template-columns:1fr;

    gap:20px;

}

.eligibility-card{

    padding:20px;

    border-radius:15px;

}

.eligibility-card h3{

    font-size:18px;

}

.eligibility-card ul li{

    font-size:14px;

    padding:10px 0;

}

.faq-container{

    gap:15px;

}

.faq-item{

    padding:18px;

    border-radius:15px;

}

.faq-item h3{

    font-size:16px;

    line-height:1.5;

}

.faq-item p{

    font-size:14px;

    line-height:1.7;

}

.cta-section{

    padding:50px 20px;

    border-radius:18px;

    margin:50px 0;

}

.cta-content h2{

    font-size:1.8rem;

}

.cta-content p{

    font-size:15px;

}

.cta-buttons{

    flex-direction:column;

    gap:15px;

}

.cta-buttons a{

    width:100%;

    text-align:center;

}

}
