/* Lo studio (template-studio.php) — allineamento all'XD.
   Caricato dopo theme.css, scoped a .pm-studio. Font ai px pieni dell'XD
   (1920 = 120rem → 1rem = 16px): P px → clamp(min, P/1920*100 vw, P/16 rem).
   I valori XD sono gli stessi di Servizi (servizi.css): hero 60, titoli 40,
   corpi 32/20, accreditamento 24. La gabbia (container 77.08% + gutter 0) è
   globale in theme.css. */

/* Hero: titolo 60px. */
.pm-studio .pm-page-hero h1 {
    font-size: clamp(2.5rem, 3.125vw, 3.75rem);
    line-height: 1.1;
}

/* Banda intro navy: titolo arancio 40px, corpo 32px (come intro Servizi). */
.pm-studio .pm-studio-intro .pm-parallax__title {
    font-size: clamp(2rem, 2.083vw, 2.5rem);
    line-height: 1.25;
}
.pm-studio .pm-studio-intro .pm-parallax__text,
.pm-studio .pm-studio-intro .pm-parallax__text p {
    font-size: clamp(1.5rem, 1.667vw, 2rem);
    line-height: 1.25;
    /* Nel XD il paragrafo occupa tutta la gabbia, non è ristretto: annulla il
       cap 980px di theme.css (e il 56rem del default .pm-parallax__text). */
    max-width: none;
}

/* Ancore alle sezioni (Analisi / Attività / Gestione e controllo): 32px.
   Nel XD la riga ancore ha 4 divisori verticali: bordo anche a sinistra di
   "Analisi" e a destra di "Gestione e controllo" (non solo i 2 interni).
   Elemento senza corrispettivo in Servizi. */
.pm-studio .pm-studio-anchors {
    margin-top: 5rem;
}
.pm-studio .pm-studio-anchors a {
    font-size: clamp(1.4rem, 1.667vw, 2rem);
    font-weight: 500;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
}
.pm-studio .pm-studio-anchors a:first-child {
    border-left: 1px solid rgba(255, 255, 255, 0.28);
}
.pm-studio .pm-studio-anchors a:last-child {
    border-right: 1px solid rgba(255, 255, 255, 0.28);
}

/* Bande arancio "Dispositivi e dotazioni per...": 40px (= default theme.css),
   ma nel XD sono allineate a SINISTRA sulla gabbia, non centrate. La banda è
   full-width: il testo parte al margine gabbia (11.46vw = (100-77.08)/2). */
.pm-studio .pm-device-band {
    text-align: left;
    padding-left: 11.46vw;
    padding-right: 11.46vw;
}

/* Righe dotazione FULL-BLEED come nel XD: le immagini sbordano fino al bordo
   pagina. La sezione esce dalla gabbia (container a tutta larghezza); il TESTO
   invece resta allineato alla gabbia col padding sul lato esterno (11.46vw). */
@media (min-width: 992px) {
    .pm-studio .pm-device-band + .pm-section > .container {
        width: 100%;
        max-width: none;
    }
    /* reverse = immagine a destra, testo a sinistra → gabbia a sinistra */
    .pm-studio .pm-device-row.flex-lg-row-reverse .pm-device-row__body {
        padding-left: 11.46vw;
        padding-right: 3.5vw;
    }
    /* normale = immagine a sinistra, testo a destra → gabbia a destra */
    .pm-studio .pm-device-row:not(.flex-lg-row-reverse) .pm-device-row__body {
        padding-right: 11.46vw;
        padding-left: 3.5vw;
    }
}

/* Righe dotazione: titolo 40px, corpo 20px (come le righe servizio). L'immagine
   resta full-bleed a metà riga (theme.css), non un quadrato centrato. */
.pm-studio .pm-device-row__title {
    font-size: clamp(2rem, 2.083vw, 2.5rem);
    line-height: 1.15;
}
.pm-studio .pm-device-row__text,
.pm-studio .pm-device-row__text > p {
    font-size: clamp(1rem, 1.25vw, 1.25rem);
    line-height: 1.4;
}

/* CTA "Attività/percorsi" (banda navy): titolo 40px, corpo 20px. */
.pm-studio .pm-studio-cta .pm-title--orange {
    font-size: clamp(1.75rem, 2.083vw, 2.5rem);
    line-height: 1.15;
}
.pm-studio .pm-studio-cta p {
    font-size: clamp(1rem, 1.25vw, 1.25rem);
}

/* Accreditamento: 24px. */
.pm-studio .pm-accredita__text {
    font-size: clamp(1.1rem, 1.25vw, 1.5rem);
}
