/* ---------- HERO ---------- */

.service-hero {

    background:
        linear-gradient(rgba(0,0,0,.4),
        rgba(0,0,0,.4)),
        url("/images/tcm-cover.jpg") center/cover;

    height:65vh;

    display:flex;
    align-items:center;
    /* color: #2D2D2D; */
    color:white;
}

.hero-overlay{
    width:100%;
}

.service-hero h1{
    font-size:3.4rem;
    margin-bottom:20px;
}

.service-hero p{
    max-width:650px;
    font-size:1.2rem;
    line-height:1.8;
    color: white;
}

/* ---------- INTRO ---------- */

.white-container{
    background: #f7faf7;
}
.service-intro{
    background-color: #f7faf7;
    display:grid;
    grid-template-columns:1fr 1fr;

    gap:70px;

    padding:100px 0;

    align-items:center;
    
}

.service-intro img{

    width:100%;
    border-radius:20px;
}

.service-intro h2{

    margin-bottom:25px;
}

.service-intro p{

    margin-bottom:18px;
    line-height:1.8;
}

/* ---------- BENEFITS ---------- */

.benefits{

    background:#f7faf7;
    padding:90px 0;
}

.benefits h2{

    text-align:center;
    margin-bottom:50px;
}

.benefit-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:30px;
}

.glass-card{

    padding:35px;
    border-radius:18px;

    background:white;

    box-shadow:
    0 8px 20px rgba(0,0,0,.06);

    transition:.3s;
}

.glass-card:hover{

    transform:translateY(-5px);
}

.glass-card h3{
    text-align: center;
    margin-bottom:15px;
}

/* ---------- CONDITIONS ---------- */

.conditions{

    padding:90px 0;
}

.conditions h2{

    text-align:center;
    margin-bottom:50px;
}

.condition-grid{

    display:grid;

    grid-template-columns:1fr;

    gap:80px;

    max-width:800px;

    margin:auto;
}

.condition-grid ul{

    list-style:none;
}

.condition-grid li{

    padding:14px 0;

    border-bottom:1px solid #ececec;
}

.conditions p{
    text-align: center;
}

/* ---------- TREATMENT ---------- */

.treatment{

    background:#f7faf7;

    padding:90px 0;
}

.treatment h2{

    text-align:center;

    margin-bottom:50px;
}

.steps{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(240px,1fr));

    gap:30px;
}

/* ---------- CTA ---------- */

.cta{

    padding:100px 20px;

    text-align:center;
}

.cta h2{

    margin-bottom:20px;
}

.cta p{

    max-width:700px;

    margin:0 auto 40px;
}

.btn{

    display:inline-block;

    padding:16px 40px;

    background:#7d9776;

    color:white;

    border-radius:999px;

    text-decoration:none;

    transition:.3s;
}

.btn:hover{

    background:#67805f;
}

/* ---------- MOBILE ---------- */

@media (max-width:900px){

    .service-hero h1,
    .service-hero h3,
    .service-hero p,
    .service-intro,
    .benefits,
    .conditions,
    .treatment, 
    .feature-image,
    .feature-content{
        padding-left:20px;
        padding-right:20px;
    }
    
    .service-intro{
        grid-template-columns:1fr;
    }

    .condition-grid{
        grid-template-columns:1fr;
        gap:0;
    }

    .service-hero{
        height:50vh;
    }

    .service-hero h1{
        font-size:2.5rem;
    }

}