
.services-hero{
    padding: clamp(56px, 6vw, 96px) 0 clamp(28px, 4vw, 56px);
}

.services-hero__title{
    margin-bottom:7rem;
    font-weight:650;
    letter-spacing:-0.02em;
    line-height:1.02;
    font-size: clamp(46px, 5.6vw, 98px);
}
.services-hero__title .is-accent{ color: var(--accent); }

.services-hero__subtitle{
    margin-top: clamp(18px, 2.2vw, 28px);
    margin-bottom: 12rem;
    font-weight:650;
    letter-spacing:-0.02em;
    line-height:1.05;
    color: var(--text);
    font-size: clamp(40px, 5vw, 90px);
}

.services-hero__kicker{
    margin-top: clamp(34px, 5vw, 70px);
    font-size: 14px;
    font-weight:650;
    color: var(--text);
}

/* blocchi servizi */
.services-block{
    padding: clamp(44px, 5vw, 84px) 0;
    position: relative;
    z-index: 1;
}

/* overlap leggero per “pagina continuativa” */
.services-block--overlap{
    margin-top: clamp(-34px, -3vw, -56px);
    padding-top: clamp(60px, 6vw, 96px);
    z-index: 2;
}

.services-block__grid{
    display:grid;
    grid-template-columns: 1.1fr .9fr;
    gap: clamp(18px, 3.2vw, 54px);
    align-items:start;
}

.services-block__title{
    margin:0 0 14px;
    font-weight:650;
    letter-spacing:-0.02em;
    line-height:1.05;
    font-size: clamp(24px, 2.4vw, 36px);
}

.services-block__text p{
    margin: 0 0 12px;
    color: #2B2B2B;
    line-height: 1.6;
    font-size: 13px;
}

.services-block__media{
    height: clamp(220px, 24vw, 360px);
    border-radius: 26px;
    background: #EFEFEF;
    border: 1px solid rgba(220,220,224,.9);
}

/* reverse layout */
.services-block--reverse .services-block__grid{
    grid-template-columns: .9fr 1.1fr;
}
.services-block--reverse .services-block__content{
    order: 2;
}
.services-block--reverse .services-block__media{
    order: 1;
}

/* testo più centrato (come mock seconda section) */
.services-block__content--center{
    text-align: center;
}
.services-block__text--center{
    max-width: 52ch;
    margin-inline: auto;
}

/* VSE */
.services-vse{
    padding: clamp(44px, 5vw, 84px) 0;
    position: relative;
    z-index: 3;
}

.services-vse__grid{
    display:grid;
    grid-template-columns: 1.05fr .95fr;
    gap: clamp(18px, 3.2vw, 54px);
    align-items:start;
}

.services-vse__title{
    margin:0 0 12px;
    font-weight:650;
    letter-spacing:-0.02em;
    line-height:1.05;
    font-size: clamp(28px, 2.8vw, 40px);
}

.services-vse__text p{
    margin: 0 0 12px;
    color:#2B2B2B;
    line-height:1.6;
    font-size: 13px;
}

.services-vse__text ul{
    margin: 10px 0 0 18px;
    color:#2B2B2B;
    line-height:1.6;
    font-size: 13px;
}

.services-vse__media{
    height: clamp(260px, 30vw, 420px);
    border-radius: 26px;
    background: #EFEFEF;
    border: 1px solid rgba(220,220,224,.9);
}

/* responsive */
@media (max-width: 980px){
    .services-block__grid,
    .services-vse__grid{
        grid-template-columns: 1fr;
    }

    .services-block--reverse .services-block__content,
    .services-block--reverse .services-block__media{
        order: unset;
    }

    .services-block__content--center{ text-align:left; }
    .services-block__text--center{ margin-inline: 0; max-width: none; }
}
