

/* =====================================================
   SERVICES HEADING
===================================================== */

.services {position: relative;

    background: var(--cream);
    background: url(../images/home/services/bg.png);
}


.services::before {
    content: "";
    position: absolute;
    width: 13px;
    height: 224px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../images/common/left_side.png) no-repeat center;
    background-size: contain;
}
.services::after {
    content: "";
    position: absolute;
    width: 13px;
    height: 224px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../images/common/right_side.png) no-repeat center;
    background-size: contain;
}

.section-heading {

    max-width: 720px;

    margin: 0 auto 55px;

    text-align: center;
}


.section-heading .section-label {

    justify-content: center;
}


.section-heading h2 {

       font-size: clamp(30px, 3.2vw, 46px);
    line-height: 1.15;

    margin-top: 20px;
}


.section-heading h2 em {

    color: var(--gold);

    font-weight: 400;
        font-style: normal;
}


.section-heading p {

    max-width: 600px;

    margin: 15px auto 0;

    font-size: 14px;

    line-height: 1.8;

    color: var(--muted);
}



/* =====================================================
   SERVICE CARDS
===================================================== */

.services-grid {

    max-width: 1250px;

    margin: auto;

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 28px;
}


.service-card {

    background: white;

    border: 1px solid #e7e3db;

    transition:
        transform .5s ease,
        box-shadow .5s ease;

    overflow: hidden;
}


.service-card:hover {

    transform: translateY(-10px);

    box-shadow:
        0 25px 60px rgba(30,45,55,.10);
}


.service-image {

    position: relative;

    height: 290px;

    overflow: hidden;
}


.service-image img {

    height: 100%;

    object-fit: cover;

    transition:
        transform .8s cubic-bezier(.2,.7,.2,1);
}


.service-card:hover .service-image img {

    transform: scale(1.08);
}


.service-number {

    position: absolute;

    left: 22px;

    top: 20px;

    color: white;

    font-family: var(--serif);

    font-size: 30px;

    text-shadow: 0 2px 15px rgba(0,0,0,.4);
}


.service-content {

    padding: 30px;
}


.service-icon {

    color: var(--gold);

    font-size: 18px;

    margin-bottom: 18px;
}


.service-label {

   font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: #d71920;
    text-transform: uppercase;
}


.service-content h3 {

    margin-top: 10px;

    font-family: var(--serif);

    font-size: 30px;

    line-height: 1.05;

    font-weight: 400;

    color: var(--navy);
}


.service-content p {

    margin-top: 15px;

    color: var(--muted);

    font-size: 14px;

    line-height: 1.8;
}


.service-content a {

    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-top: 25px;

    font-size: 13px;

    font-weight: 700;

    color: var(--navy);

    transition: .3s;
        text-transform: uppercase;
}


.service-content a span {

    color: var(--gold);

    font-size: 18px;

    transition: .3s;
}


.service-content a:hover {

    color: var(--gold);
}


.service-content a:hover span {

    transform: translateX(5px);
}
