/* Proposta isolata. Riferimenti: schede master/lauree e categoria approvata
   in template-definitivo (22/10/2026). Nessuna regola fuori da .tp-mockup. */
.tp-mockup { --tp-ink:#1a3a52; --tp-blue:#0878b0; --tp-line:#d7e4ed; --tp-soft:#f8f9fa; font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; color:#173b5b; font-size:17px; line-height:1.65; }
.tp-mockup.tp-static .container { width:100%;max-width:none;padding-inline:3.8vw;padding-block:0; }
.tp-mockup h2 { font-size:34px;line-height:1.15;letter-spacing:-.02em;margin:0 0 20px;font-weight:750; }
.tp-mockup h3 { font-size:26px;line-height:1.3;letter-spacing:-.015em; }
.tp-mockup p,.tp-mockup .font-16,.tp-mockup .font-14 { font-size:17px;line-height:1.65; }
.tp-mockup a { text-underline-offset:3px; }
.tp-mockup [id] { scroll-margin-top:calc(var(--fd-header-height,84px) + 24px); }
/* Misure e gradiente della hero master approvata, non del vecchio concept statiche. */
.fd-site .tp-mockup.tp-static .category-hero { isolation:isolate;position:relative;padding:58px 0;min-height:390px;border:0;background-color:#1a3a52!important;background-size:cover;background-position:center; }
.fd-site .tp-mockup.tp-static .category-hero-overlay { display:block;position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#1a3a52f5 0%,#1a3a52e8 29%,#1a3a5290 58%,#1a3a5220 100%); }
.fd-site .tp-mockup.tp-static .category-hero-content { max-width:850px;padding:0;margin:0; }
.tp-mockup .mockup-kicker { display:block;margin:0 0 14px;color:#7ac7ec;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase; }
.fd-site .tp-mockup.tp-static .category-hero h1 { max-width:850px;font-size:clamp(38px,3.6vw,54px);font-weight:800;line-height:1.1;letter-spacing:-.035em;text-transform:none;color:#fff!important;text-shadow:none;margin:0 0 22px; }
.fd-site .tp-mockup.tp-static .category-hero-subtitle { max-width:750px;font-size:19px;font-weight:400;line-height:1.6;color:#e0edf5!important;margin:0; }
.tp-mockup .category-hero-badges { display:flex;gap:0;flex-wrap:wrap;margin-top:32px; }
.tp-mockup.tp-static .category-hero .hero-badge { display:flex;align-items:center;gap:12px;padding:0 24px;min-height:48px;border:0;border-right:1px solid #ffffff40;border-radius:0;background:transparent;color:#fff;font-size:15px;line-height:1.4;font-weight:500;box-shadow:none; }
.tp-mockup.tp-static .category-hero .hero-badge:first-child { padding-left:0; }
.tp-mockup.tp-static .category-hero .hero-badge:last-child { border-right:0; }
.tp-mockup.tp-static .category-hero .hero-badge i { display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;border:1px solid #ffffff40;border-radius:50%;background:#ffffff24;color:#b8e8ff;font-size:23px;margin:0; }
/* Ritmo delle schede: fasce a tutta larghezza, 40px e 28px su mobile. */
.tp-mockup .about-page { padding:0;background:#fff;overflow:hidden; }
.tp-mockup .about-section { margin:0!important;padding-block:40px; }
.tp-mockup .about-section:nth-child(even) { background:#f8f9fa;box-shadow:0 0 0 100vmax #f8f9fa;clip-path:inset(0 -100vmax); }
.tp-mockup .about-intro { grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:22px; }
.tp-mockup .about-panel,.tp-mockup .about-step,.tp-mockup .about-area,.tp-mockup .about-proof-card,.tp-mockup .sedi-contact-card,.tp-mockup .sedi-region { padding:26px;border:1px solid #d7e4ed;border-radius:10px;background:#fff;box-shadow:none; }
.tp-mockup .about-panel h2 { font-size:26px;line-height:1.3; }
.tp-mockup .about-panel p,.tp-mockup .about-step p,.tp-mockup .about-area p,.tp-mockup .about-proof-card p { color:#496980;font-size:17px;line-height:1.65; }
.tp-mockup.tp-static .about-verify,.tp-mockup .sedi-contact-help { background:#1a3a52;border:0; }
.tp-mockup.tp-static .about-verify h2,.tp-mockup .sedi-contact-help h2 { color:#fff; }
.tp-mockup.tp-static .about-verify p,.tp-mockup.tp-static .about-verify li,.tp-mockup .sedi-contact-help p { color:#dceaf3; }
.tp-mockup.tp-static .about-verify .about-eyebrow,.tp-mockup.tp-static .about-verify .about-checklist i { color:#a9dff8; }
.tp-mockup .about-checklist li { padding-block:12px;border-bottom:1px solid #ffffff24;font-size:17px; }
.tp-mockup .about-checklist li:last-child { border:0; }
.tp-mockup.tp-static .about-verify .about-actions .btn-outline { color:#fff;border-color:#ffffff65; }
.tp-mockup .about-eyebrow { font-size:12px;letter-spacing:.1em;color:#0878b0; }
.tp-mockup .about-section-header { margin-bottom:26px; }
.tp-mockup .about-lead { max-width:950px;font-size:17px;line-height:1.65;color:#496980; }
.tp-mockup .about-steps { grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }
.tp-mockup .about-step:last-child { display:block;grid-column:auto; }
.tp-mockup .about-step:last-child .about-step-number { margin:0 0 18px; }
.tp-mockup .about-step-number { background:#e5f4fc;color:#0878b0;font-size:20px;width:48px;height:48px; }
.tp-mockup .about-step h3,.tp-mockup .about-area h3,.tp-mockup .about-proof-card h3 { color:#1a3a52;font-size:23px; }
.tp-mockup .about-areas { grid-template-columns:repeat(4,minmax(0,1fr));gap:22px; }
.tp-mockup .about-area { display:flex;flex-direction:column; }
.tp-mockup .about-area-icon { width:48px;height:48px;background:#e5f4fc;border-radius:50%;color:#0878b0;font-size:23px; }
.tp-mockup .about-area-links { margin-top:auto; }
.tp-mockup .about-area-links a { font-size:15px; }
.tp-mockup .about-proof { gap:22px; }
.tp-mockup .about-cta { border-radius:0;background:#1a3a52;box-shadow:0 0 0 100vmax #1a3a52;clip-path:inset(0 -100vmax);gap:40px; }
.tp-mockup .about-cta h2 { font-size:34px; }
.tp-mockup.tp-static .btn { display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:5px;min-height:50px;padding:13px 20px;font-size:16px;line-height:1.5;font-weight:700; }
.tp-mockup .btn-cta-form { background:#ff6505;border:1px solid #ff6505;color:#fff; }
.tp-mockup .btn-cta-form:hover { background:#df5100;border-color:#df5100; }
.tp-mockup .btn-light { background:#fff;color:#1a3a52; }
/* Sedi: contatti, elenco accessibile e mappa restano reali. */
.tp-mockup .sedi-section { padding-block:40px;background:#fff; }
.tp-mockup .sedi-intro { margin:0 0 26px;max-width:950px;text-align:left; }
.tp-mockup .sedi-intro p,.tp-mockup .sedi-lead { font-size:17px;line-height:1.65;color:#496980; }
.tp-mockup .sedi-contact { grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:22px;margin:0 0 40px; }
.tp-mockup .sedi-contact-card h2 { font-size:26px; }
.tp-mockup .sedi-contact-list li { font-size:17px;padding:12px 0; }
.tp-mockup .sedi-regions { column-count:4;column-gap:22px;margin-bottom:40px; }
.tp-mockup .sedi-region { padding:0;overflow:hidden;margin-bottom:22px; }
.tp-mockup .sedi-region h3 { margin:0;padding:18px 22px;border-radius:0;color:#1a3a52;background:#f8f9fa;font-size:20px; }
.tp-mockup .sedi-region a { padding:12px 22px;font-size:16px; }
.tp-mockup .sedi-region a:hover { background:#edf6fb; }
.tp-mockup .sedi-map-wrap { margin:24px 0 40px;border-radius:10px;background:#f8f9fa; }
.tp-mockup .sedi-map-wrap iframe { min-height:430px; }
.tp-mockup .sedi-bottom-cta { padding:30px;border-radius:10px;background:#1a3a52; }
/* Form invariati: stessi campi, action, reCAPTCHA, consensi e script. */
.tp-mockup.tp-static>section:not(.category-hero) { padding-block:40px; }
.tp-mockup .sidebar-box { border-radius:10px;box-shadow:none; }
.tp-mockup .sidebar-box-title { font-size:23px;font-weight:700;background:#1a3a52;padding:24px 26px; }
.tp-mockup .sidebar-form form { padding:26px; }
.tp-mockup .sidebar-cta { background:#1a3a52;color:#fff;border:0;padding:0 26px 26px; }
.tp-mockup .sidebar-cta .sidebar-box-title { margin-inline:-26px;background:transparent; }
.tp-mockup .sidebar-cta p,.tp-mockup .sidebar-cta .cta-hours { color:#dceaf3; }
.tp-mockup .sidebar-cta .cta-phone a { color:#fff; }
.tp-mockup .form-control { min-height:48px;padding:11px 14px;border:1px solid #c7dce9;border-radius:8px;background:#fff; }
.tp-mockup .checkbox-label { flex-wrap:nowrap;display:block; }
.tp-mockup .checkbox-label input { vertical-align:middle;margin-right:7px; }
.tp-mockup .checkbox-label a { text-decoration:underline; }
.tp-mockup[data-static-page=lavora-con-noi]>.pt-50>.container>.row { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.8fr);gap:40px;margin:0; }
.tp-mockup[data-static-page=lavora-con-noi]>.pt-50>.container>.row:before,.tp-mockup[data-static-page=lavora-con-noi]>.pt-50>.container>.row:after { display:none; }
.tp-mockup[data-static-page=lavora-con-noi]>.pt-50>.container>.row>div { width:auto;padding:0;min-width:0; }
.tp-mockup[data-static-page=lavora-con-noi] .bg-white { border:1px solid #d7e4ed;border-radius:10px!important;box-shadow:none!important;padding:26px; }
.tp-mockup[data-static-page=lavora-con-noi] .bg-white h4 { font-size:20px!important;line-height:1.3;color:#1a3a52;font-weight:700; }
.tp-mockup[data-static-page=lavora-con-noi] .bg-white>i { display:flex;align-items:center;justify-content:center;background:#e5f4fc;width:48px;height:48px;border-radius:50%;color:#0878b0; }
.tp-mockup[data-static-page=formacenter-point]>.pt-50 { background:#f8f9fa; }
.tp-mockup[data-static-page=formacenter-point]>.pt-50>.container>.row { display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:40px;margin:0;align-items:start; }
.tp-mockup[data-static-page=formacenter-point]>.pt-50>.container>.row:before,.tp-mockup[data-static-page=formacenter-point]>.pt-50>.container>.row:after { display:none; }
.tp-mockup[data-static-page=formacenter-point] .col-md-8.col-md-offset-2 { width:auto;margin:0;padding:0;min-width:0; }
.tp-mockup[data-static-page=formacenter-point] .bg-white { padding:30px;border-radius:10px!important; }
.tp-mockup .mockup-form-guide { background:#1a3a52;color:#fff;border-radius:10px;padding:28px; }
.tp-mockup .mockup-form-guide h2 { font-size:28px;color:#fff; }
.tp-mockup .mockup-form-guide p { color:#dceaf3; }
.tp-mockup .mockup-form-guide ol { padding-left:22px; }
.tp-mockup .mockup-form-guide li { padding:12px 0;border-bottom:1px solid #ffffff30;color:#dceaf3; }
.tp-mockup .mockup-form-guide a { color:#fff;text-decoration:underline; }
.tp-mockup .form-point-title { font-size:26px;line-height:1.3; }
.tp-mockup .form-point-section { display:flex;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid #d7e4ed;font-size:20px;color:#1a3a52; }
.tp-mockup .form-point-section i { color:#0878b0; }
/* Valutazione: tutte le condizioni restano affiancate ai punteggi. */
.tp-mockup .titoli-intro { max-width:950px; }
.tp-mockup .titoli-date { color:#496980;font-size:13px;background:#f8f9fa;border:1px solid #d7e4ed;border-radius:5px; }
.tp-mockup .titoli-index { gap:0;border:1px solid #d7e4ed;border-radius:8px;overflow:hidden;background:#f8f9fa; }
.tp-mockup .titoli-index a { flex:1 0 auto;border:0;border-right:1px solid #d7e4ed;border-radius:0;padding:14px 16px;font-size:14px; }
.tp-mockup .titoli-index a:hover { background:#1a3a52;color:#fff; }
.tp-mockup .titoli-block { padding-block:30px;margin:0; }
.tp-mockup .titoli-block+.titoli-block { border-top:1px solid #d7e4ed; }
.tp-mockup .titoli-block>header { background:transparent;color:#1a3a52;padding:0 0 20px;border-radius:0; }
.tp-mockup .titoli-block>header h2 { color:#1a3a52;font-size:30px; }
.tp-mockup .titoli-block>header p { color:#496980;font-size:16px; }
.tp-mockup .titoli-table-wrap { border:1px solid #d7e4ed;border-radius:10px; }
.tp-mockup .titoli-table thead th { padding:17px 24px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;background:#1a3a52;color:#fff; }
.tp-mockup .titoli-table td,.tp-mockup .titoli-table tbody th { padding:20px 24px;font-size:17px;line-height:1.65; }
.tp-mockup .titoli-table th:nth-child(1) { width:30%; }
.tp-mockup .titoli-table th:nth-child(3) { width:50%; }
.tp-mockup .titoli-table td:nth-child(2) { color:#0878b0;font-size:20px; }
.tp-mockup .titoli-table tbody tr:nth-child(even) { background:#f8f9fa; }
.tp-mockup .titoli-table tbody tr:nth-child(even) th { background:#f8f9fa; }
.tp-mockup .titoli-table-hint { display:none; }
.tp-mockup .titoli-notice { padding:20px 24px;border-radius:6px;background:#f8f9fa; }
.tp-mockup .titoli-source { font-size:14px; }
.tp-mockup .titoli-docs { margin-top:30px;padding:28px;background:#1a3a52;color:#fff;border:0;border-radius:10px; }
.tp-mockup .titoli-docs h2 { color:#fff;font-size:28px; }
.tp-mockup .titoli-docs p { color:#dceaf3; }
/* Documenti legali: contenitore del sito, titolo esteso e griglia contenuto/indice. */
.tp-mockup.tp-static--legal { padding:0 0 40px;background:#fff; }
.tp-mockup.tp-static--legal #service>.container>.row { display:block;margin:0; }
.tp-mockup.tp-static--legal .legal-page-content { width:100%;max-width:none;min-width:0;float:none;padding:0;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none; }
.tp-mockup.tp-static--legal .service_content { max-width:none;margin:0; }
.tp-mockup.tp-static--legal h1 { font-size:40px;line-height:1.15;letter-spacing:-.025em;color:#1a3a52;text-align:left;text-transform:none;padding:0 0 26px;margin:0 0 26px;border-bottom:1px solid #d7e4ed; }
.tp-mockup.tp-static--legal h4 { margin:30px 0 14px;color:#1a3a52;font-size:23px;line-height:1.35;letter-spacing:-.015em; }
.tp-mockup.tp-static--legal p,.tp-mockup.tp-static--legal li { font-size:17px;line-height:1.65;color:#496980; }
.tp-mockup.tp-static--legal p { margin:0 0 18px; }
.tp-mockup.tp-static--legal a { color:#0878b0;text-underline-offset:3px; }
.tp-mockup .legal-document-header { margin-bottom:32px; }
.tp-mockup .legal-document-header h1 { font-size:44px;margin:0;padding:0 0 28px; }
.tp-mockup .legal-document-kicker { display:block;margin-bottom:12px;color:#0878b0;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase; }
.tp-mockup .legal-document-grid { display:grid;grid-template-columns:minmax(0,3fr) minmax(250px,1fr);gap:40px;align-items:start; }
.tp-mockup .legal-document-grid .service_content { min-width:0;width:100%;max-width:100%; }
.tp-mockup .legal-document-grid .service_content>:first-child { margin-top:0; }
.tp-mockup .legal-outline { position:sticky;top:24px;border:1px solid #d7e4ed;border-radius:10px;background:#fff;overflow:hidden; }
.tp-mockup .legal-outline summary { padding:22px 24px;cursor:pointer;list-style:none;font-size:20px;font-weight:700;color:#1a3a52;line-height:1.3; }
.tp-mockup .legal-outline summary::-webkit-details-marker { display:none; }
.tp-mockup .legal-outline summary::after { content:'+';float:right; }
.tp-mockup .legal-outline[open] summary::after { content:'−'; }
.tp-mockup .legal-outline nav { padding:0 24px 12px;max-height:65vh;overflow:auto; }
.tp-mockup .legal-outline a { display:block;padding:12px 0;border-top:1px solid #d7e4ed;color:#496980;font-size:14px;line-height:1.5;text-decoration:none; }
.tp-mockup .legal-outline a:hover,.tp-mockup .legal-outline a[aria-current=location] { color:#0878b0;text-decoration:underline; }
@media(max-width:991px) {
 .tp-mockup .legal-document-grid { display:flex;flex-direction:column;gap:28px; }
 .tp-mockup .legal-outline { position:static;width:100%;order:-1; }
 .tp-mockup .legal-outline nav { max-height:none; }
 .tp-mockup .legal-document-header h1 { font-size:36px; }
}
@media(max-width:767px) {
 .tp-mockup .legal-document-header { margin-bottom:24px; }
 .tp-mockup .legal-document-header h1 { font-size:30px;padding-bottom:24px; }
 .tp-mockup .legal-outline summary { padding:18px 20px;font-size:18px; }
 .tp-mockup .legal-outline nav { padding-inline:20px; }
}
@media(min-width:1800px) { .tp-mockup.tp-static .container { width:1560px;max-width:100%;padding-inline:15px; } }
@media(max-width:1199px) { .tp-mockup .about-areas { grid-template-columns:repeat(2,minmax(0,1fr)); }.tp-mockup .sedi-regions { column-count:3; }.tp-mockup .category-hero-badges { max-width:800px; }.tp-mockup.tp-static .category-hero .hero-badge { padding-inline:15px;font-size:14px; } }
@media(max-width:991px) {
 .tp-mockup.tp-static .container { padding-inline:clamp(15px,3.125vw,24px); }
 .fd-site .tp-mockup.tp-static .category-hero { padding-block:42px;min-height:0; }
 .fd-site .tp-mockup.tp-static .category-hero h1 { font-size:36px;line-height:1.13; }
 .fd-site .tp-mockup.tp-static .category-hero-subtitle { font-size:17px; }
 .tp-mockup .about-intro,.tp-mockup .sedi-contact { grid-template-columns:1fr; }
 .tp-mockup[data-static-page=lavora-con-noi]>.pt-50>.container>.row,.tp-mockup[data-static-page=formacenter-point]>.pt-50>.container>.row { grid-template-columns:1fr;gap:26px; }
 .tp-mockup .sidebar-box { margin-top:0; }
 .tp-mockup .mockup-form-guide ol { display:flex;flex-wrap:wrap;gap:0 36px; }.tp-mockup .mockup-form-guide li { border:0; }
}
@media(max-width:767px) {
 .tp-mockup h2,.tp-mockup .about-cta h2 { font-size:28px; }
 .tp-mockup .about-section,.tp-mockup .sedi-section,.tp-mockup.tp-static>section:not(.category-hero) { padding-block:28px; }
 .fd-site .tp-mockup.tp-static .category-hero { padding:36px 0; }
 .fd-site .tp-mockup.tp-static .category-hero-overlay { background:linear-gradient(90deg,#1a3a52f0,#1a3a52bf); }
 .tp-mockup .category-hero-badges { display:grid;grid-template-columns:1fr;gap:14px;margin-top:26px; }
 .tp-mockup.tp-static .category-hero .hero-badge { min-height:44px;border:0;padding:0;font-size:15px; }
 .tp-mockup.tp-static .category-hero .hero-badge i { width:44px;height:44px;flex-basis:44px;font-size:21px; }
 .tp-mockup .about-steps,.tp-mockup .about-areas,.tp-mockup .about-proof { grid-template-columns:1fr;gap:16px; }
 .tp-mockup .about-step:last-child { min-height:0; }.tp-mockup .about-step { min-height:0; }
 .tp-mockup .about-panel,.tp-mockup .about-step,.tp-mockup .about-area,.tp-mockup .about-proof-card,.tp-mockup .sedi-contact-card { padding:22px; }
 .tp-mockup .about-panel h2 { font-size:24px; }
 .tp-mockup .about-cta { gap:22px; }
 .tp-mockup .sedi-regions { column-count:1; }
 .tp-mockup .sedi-map-wrap iframe { min-height:320px; }
 .tp-mockup .sidebar-form form,.tp-mockup[data-static-page=formacenter-point] .bg-white { padding:22px; }
 .tp-mockup .sidebar-box-title { padding:20px 22px;font-size:22px; }
 .tp-mockup .mockup-form-guide { padding:24px; }.tp-mockup .mockup-form-guide ol { display:block; }
 .tp-mockup .titoli-index { display:grid;grid-template-columns:1fr 1fr; }
 .tp-mockup .titoli-index a { border-bottom:1px solid #d7e4ed;padding:13px;font-size:13px; }
 .tp-mockup .titoli-block { padding-block:24px; }.tp-mockup .titoli-block>header h2 { font-size:26px; }
 .tp-mockup .titoli-table { min-width:0;display:block; }
 .tp-mockup .titoli-table thead { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
 .tp-mockup .titoli-table tbody { display:block; }
 .tp-mockup .titoli-table tr { display:grid;grid-template-columns:1fr;padding:20px;border-bottom:1px solid #d7e4ed; }
 .tp-mockup .titoli-table tbody th,.tp-mockup .titoli-table td { display:block;width:100%;border:0;padding:0;background:transparent!important;font-size:16px; }
 .tp-mockup .titoli-table tbody th { font-size:18px;font-weight:700; }
 .tp-mockup .titoli-table td:nth-child(2) { margin-block:10px;font-size:21px; }
 .tp-mockup .titoli-table td:nth-child(3)::before { content:'Condizioni';display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#496980;font-weight:700;margin-bottom:4px; }
 .tp-mockup .titoli-docs { padding:24px; }
 .tp-mockup.tp-static--legal #service { padding-top:24px; }
 .tp-mockup.tp-static--legal .legal-page-content { padding:0; }
 .tp-mockup.tp-static--legal h1 { font-size:30px; }
 .tp-mockup.tp-static--legal h4 { font-size:22px; }
 .tp-mockup.tp-static--legal p,.tp-mockup.tp-static--legal li { font-size:16px;line-height:1.75; }
}
@media(max-width:359px) { .fd-site .tp-mockup.tp-static .category-hero h1 { font-size:31px; } }
@media(prefers-reduced-motion:reduce) { .tp-mockup * { scroll-behavior:auto!important;transition:none!important; } }
/* Il reset legacy delle sezioni è !important: override limitato al documento. */
.tp-mockup.tp-static--legal #service { padding:40px 0 0!important; }
.tp-mockup .mockup-form-guide ol { list-style:decimal; }
@media(max-width:767px) { .tp-mockup.tp-static--legal #service { padding-top:24px!important; } }
@media(max-width:767px) {
 .tp-mockup .titoli-table tbody th:first-child { width:100%; }
}

/* Chi siamo: fotografie del catalogo e card di contatto separata dal footer. */
.tp-mockup[data-static-page=chi-siamo] .about-process-layout { display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:26px;align-items:stretch; }
.tp-mockup .about-process-photo { position:relative;min-height:510px;margin:0;overflow:hidden;border-radius:10px;background:#e5f4fc; }
.tp-mockup .about-process-photo img { position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:45% center; }
.tp-mockup .about-process-layout .about-steps { grid-template-columns:1fr;gap:18px; }
.tp-mockup .about-process-layout .about-step { display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 18px;min-height:0;padding:24px; }
.tp-mockup .about-process-layout .about-step .about-step-number { grid-column:1;grid-row:1 / 3;margin:0; }
.tp-mockup .about-process-layout .about-step h3,.tp-mockup .about-process-layout .about-step p,.tp-mockup .about-process-layout .about-step>div { grid-column:2; }
.tp-mockup[data-static-page=chi-siamo] .about-area { padding:0;overflow:hidden; }
.tp-mockup .about-area-photo { display:block;width:100%;height:175px;object-fit:cover;object-position:center 35%; }
.tp-mockup[data-static-page=chi-siamo] .about-area-icon { position:relative;margin:-24px 0 14px 22px;border:3px solid #fff;box-sizing:content-box;flex-shrink:0; }
.tp-mockup[data-static-page=chi-siamo] .about-area h3 { margin:0 22px 12px; }
.tp-mockup[data-static-page=chi-siamo] .about-area p { margin:0 22px 20px; }
.tp-mockup[data-static-page=chi-siamo] .about-area-links { margin:auto 22px 24px; }
.tp-mockup[data-static-page=chi-siamo] .about-contact { background:#f8f9fa;box-shadow:0 0 0 100vmax #f8f9fa;clip-path:inset(0 -100vmax); }
.tp-mockup[data-static-page=chi-siamo] .about-cta { padding:30px;border-radius:10px;background:#1a3a52;box-shadow:none;clip-path:none;gap:36px; }
.tp-mockup[data-static-page=chi-siamo] .about-cta h2 { color:#fff; }
.tp-mockup[data-static-page=chi-siamo] .about-cta p { color:#dceaf3;max-width:770px; }
.tp-mockup .about-cta-copy { display:flex;align-items:center;gap:22px; }
.tp-mockup .about-cta-icon { display:flex;align-items:center;justify-content:center;flex:0 0 68px;width:68px;height:68px;border-radius:50%;background:#ffffff18;color:#a9dff8;font-size:30px; }
.tp-mockup[data-static-page=chi-siamo] .about-cta .btn-outline { border-color:#ffffff65;color:#fff;background:transparent; }
@media(max-width:991px) {
 .tp-mockup .about-process-photo { min-height:0;height:320px; }
 .tp-mockup .about-process-photo img { object-position:center 40%; }
}
@media(max-width:767px) {
 .tp-mockup .about-process-photo { height:260px; }
 .tp-mockup .about-process-layout .about-step { padding:22px;grid-template-columns:38px minmax(0,1fr);gap:0 14px; }
 .tp-mockup .about-process-layout .about-step .about-step-number { width:38px;height:38px;font-size:17px; }
 .tp-mockup .about-area-photo { height:200px; }
 .tp-mockup[data-static-page=chi-siamo] .about-cta { padding:24px; }
 .tp-mockup .about-cta-copy { display:block; }
 .tp-mockup .about-cta-icon { margin-bottom:18px;width:56px;height:56px;font-size:26px; }
}

/* Sedi: figura di assistenza e ricerca delle località, dati canonici invariati. */
.tp-mockup[data-static-page=sedi] .sedi-contact { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); }
.tp-mockup .sedi-contact-heading { display:flex;align-items:center;gap:16px;margin-bottom:18px; }
.tp-mockup .sedi-contact-heading>span { display:flex;align-items:center;justify-content:center;width:52px;height:52px;flex:0 0 52px;border-radius:50%;background:#e5f4fc;color:#0878b0;font-size:28px; }
.tp-mockup .sedi-contact-heading h2 { margin:0; }
.tp-mockup[data-static-page=sedi] .sedi-contact-help { display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:14px;position:relative;overflow:hidden;padding:28px 24px 0 28px; }
.tp-mockup .sedi-help-copy { padding-bottom:28px;align-self:center;min-width:0; }
.tp-mockup .sedi-help-figure { display:block;width:170px;height:285px;max-width:100%;object-fit:contain;object-position:bottom;align-self:end; }
.tp-mockup .sedi-help-copy .btn { font-size:15px;padding-inline:14px; }
.tp-mockup .sedi-locator { padding-block:40px;background:#f8f9fa;box-shadow:0 0 0 100vmax #f8f9fa;clip-path:inset(0 -100vmax); }
.tp-mockup .sedi-locator-layout { display:grid;grid-template-columns:250px minmax(0,1fr);gap:26px;align-items:start; }
.tp-mockup .sedi-network-visual { padding:26px 22px;background:#fff;border:1px solid #d7e4ed;border-radius:10px;text-align:center; }
.tp-mockup .sedi-italy { display:flex;align-items:center;justify-content:center;width:180px;height:180px;margin:0 auto 24px;background:#1a3a52;border-radius:50%; }
.tp-mockup .sedi-italy img { display:block;width:115px;height:128px;object-fit:contain; }
.tp-mockup .sedi-network-counts { display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0 20px; }
.tp-mockup .sedi-network-counts>div { display:flex;flex-direction:column-reverse;gap:6px; }
.tp-mockup .sedi-network-counts>div+div { border-left:1px solid #d7e4ed; }
.tp-mockup .sedi-network-counts dd { margin:0;font-size:40px;line-height:1;font-weight:700;color:#0878b0; }
.tp-mockup .sedi-network-counts dt { font-size:14px;font-weight:400;color:#496980; }
.tp-mockup .sedi-network-summary>p { padding-top:18px;border-top:1px solid #d7e4ed;font-size:14px;line-height:1.5;color:#496980;margin:0; }
.tp-mockup .sedi-network-summary>p i { color:#0878b0;margin-right:6px; }
.tp-mockup .sedi-locator-results { min-width:0; }
.tp-mockup .sedi-locator-filters { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:16px;align-items:end;padding:22px;background:#fff;border:1px solid #d7e4ed;border-radius:10px; }
.tp-mockup .sedi-locator-filters label { display:block;font-size:14px;font-weight:700;margin-bottom:7px; }
.tp-mockup .sedi-search-input { position:relative; }
.tp-mockup .sedi-search-input>i { position:absolute;top:16px;left:14px;color:#0878b0;pointer-events:none; }
.tp-mockup .sedi-search-input input { padding-left:38px; }
.tp-mockup .sedi-locator-filters .btn { min-height:48px;padding:10px 14px;background:#fff;border:1px solid #a9c3d5;color:#1a3a52;font-size:14px; }
.tp-mockup .sedi-result-count { margin:18px 0;font-size:14px;font-weight:600;color:#496980; }
.tp-mockup[data-static-page=sedi] .sedi-regions { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;column-count:auto;margin:0;align-items:start; }
.tp-mockup[data-static-page=sedi] .sedi-region { display:block;margin:0;min-width:0; }
.tp-mockup[data-static-page=sedi] .sedi-region h3 { font-size:18px; }
.tp-mockup[data-static-page=sedi] .sedi-region a { font-size:15px; }
.tp-mockup .sedi-no-results { padding:24px;border:1px solid #d7e4ed;border-radius:10px;background:#fff;color:#496980; }
.tp-mockup .sedi-locator [hidden] { display:none!important; }
.tp-mockup .sedi-map-section { padding-top:40px; }
@media(max-width:1199px) {
 .tp-mockup[data-static-page=sedi] .sedi-contact { grid-template-columns:1fr 1fr; }
 .tp-mockup[data-static-page=sedi] .sedi-contact-help { grid-template-columns:minmax(0,1fr) 120px;padding-left:24px; }
 .tp-mockup .sedi-help-figure { width:120px;height:260px; }
 .tp-mockup .sedi-locator-layout { grid-template-columns:220px minmax(0,1fr);gap:22px; }
 .tp-mockup .sedi-locator-filters { grid-template-columns:1fr 1fr; }
 .tp-mockup .sedi-locator-filters .btn { grid-column:1 / -1;justify-self:start; }
 .tp-mockup[data-static-page=sedi] .sedi-regions { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .tp-mockup .sedi-italy { width:160px;height:160px; }
}
@media(max-width:991px) {
 .tp-mockup[data-static-page=sedi] .sedi-contact { grid-template-columns:1fr; }
 .tp-mockup[data-static-page=sedi] .sedi-contact-help { grid-template-columns:minmax(0,1fr) 180px; }
 .tp-mockup .sedi-help-figure { width:180px;height:260px; }
 .tp-mockup .sedi-locator-layout { grid-template-columns:1fr; }
 .tp-mockup .sedi-network-visual { display:flex;align-items:center;justify-content:center;gap:30px;padding:22px; }
 .tp-mockup .sedi-italy { flex:0 0 140px;width:140px;height:140px;margin:0; }
 .tp-mockup .sedi-italy img { width:90px;height:100px; }
 .tp-mockup .sedi-network-summary { min-width:0;flex:1;max-width:300px; }
}
@media(max-width:767px) {
 .tp-mockup .sedi-locator { padding-block:28px; }
 .tp-mockup[data-static-page=sedi] .sedi-contact-help { grid-template-columns:minmax(0,1fr) 105px;padding:22px 12px 0 22px;gap:8px; }
 .tp-mockup .sedi-help-figure { width:105px;height:230px; }
 .tp-mockup .sedi-help-copy { padding-bottom:22px; }
 .tp-mockup .sedi-help-copy h2 { font-size:23px; }
 .tp-mockup .sedi-help-copy p { font-size:16px; }
 .tp-mockup .sedi-help-copy .btn { font-size:14px;padding:10px; }
 .tp-mockup .sedi-network-visual { padding:20px 16px;gap:18px; }
 .tp-mockup .sedi-italy { flex-basis:100px;width:100px;height:100px; }
 .tp-mockup .sedi-italy img { width:65px;height:72px; }
 .tp-mockup .sedi-network-counts { margin-block:14px;gap:10px; }
 .tp-mockup .sedi-network-counts dd { font-size:32px; }
 .tp-mockup .sedi-network-summary>p { font-size:12px; }
 .tp-mockup .sedi-network-summary .about-eyebrow { font-size:10px;letter-spacing:.06em; }
 .tp-mockup .sedi-locator-filters { grid-template-columns:1fr;gap:14px;padding:20px; }
 .tp-mockup[data-static-page=sedi] .sedi-regions { grid-template-columns:1fr; }
 .tp-mockup .sedi-map-section { padding-top:28px; }
}

/* Collaborazione: fotografia editoriale e accreditamento evidenziato. */
.tp-mockup .partner-story-card { display:grid;grid-template-columns:minmax(0, .85fr) minmax(0, 1.6fr);margin-block:28px 32px;border:1px solid #d7e4ed;border-radius:10px;overflow:hidden;background:#fff; }
.tp-mockup .partner-story-photo { margin:0;min-width:0;background:#f8f9fa; }
.tp-mockup .partner-story-photo img { display:block;width:100%;height:100%;min-height:300px;object-fit:cover;object-position:46% center; }
.tp-mockup .partner-story-copy { padding:26px; }
.tp-mockup .partner-story-copy h3 { margin:0 0 18px; }
.tp-mockup .partner-story-copy p:last-child { margin-bottom:0; }
.tp-mockup .partner-onboarding { display:flex;align-items:flex-start;gap:20px;padding:28px;margin-block:32px;background:#1a3a52;border-radius:10px;color:#fff; }
.tp-mockup .partner-onboarding h3 { margin:0 0 16px!important;color:#fff; }
.tp-mockup .partner-onboarding p { margin:0;color:#fff; }
.tp-mockup .partner-onboarding-icon { display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:23px; }
.tp-mockup[data-static-page=lavora-con-noi] .sidebar-form { padding:0; }
/* Candidatura: guida illustrata, ancore alle sezioni e sola indicazione di compilazione. */
.tp-mockup[data-static-page=formacenter-point] .point-form-guide { padding:0;overflow:hidden;background:#fff;border:1px solid #d7e4ed;border-radius:10px;color:#1a3a52; }
.tp-mockup .point-guide-photo { display:block;width:100%;height:200px;object-fit:cover;object-position:center; }
.tp-mockup .point-guide-body { padding:26px; }
.tp-mockup .point-form-guide h2 { color:#1a3a52;font-size:28px;line-height:1.2;margin:4px 0 24px; }
.tp-mockup .point-form-progress { padding:18px 0;border-block:1px solid #d7e4ed;margin-bottom:20px; }
.tp-mockup .point-form-progress label { display:block;margin:0 0 9px;color:#496980;font-size:13px;font-weight:600; }
.tp-mockup .point-form-progress progress { display:block;width:100%;height:9px;accent-color:#0878b0;border:0;border-radius:9px;overflow:hidden; }
.tp-mockup .point-form-progress progress::-webkit-progress-bar { background:#e6eff5;border-radius:9px; }
.tp-mockup .point-form-progress progress::-webkit-progress-value { background:#0878b0;border-radius:9px; }
.tp-mockup .point-form-guide .point-progress-status { font-size:13px;color:#496980;margin:8px 0 0; }
.tp-mockup .point-form-index summary { cursor:pointer;color:#1a3a52;font-size:16px;font-weight:700; }
.tp-mockup .point-form-guide .point-form-index ol { display:block;list-style:none;counter-reset:point-steps;margin:14px 0 20px;padding:0; }
.tp-mockup .point-form-guide .point-form-index li { border:0;padding:0;margin:0;counter-increment:point-steps; }
.tp-mockup .point-form-guide .point-form-index a { display:flex;gap:12px;align-items:center;color:#496980;text-decoration:none;padding:11px 0;border-bottom:1px solid #e6eff5;font-size:15px; }
.tp-mockup .point-form-index a::before { content:counter(point-steps);display:flex;align-items:center;justify-content:center;flex:0 0 30px;height:30px;border-radius:50%;background:#e5f4fc;color:#0878b0;font-weight:700;font-size:13px; }
.tp-mockup .point-form-index a:hover { color:#0878b0; }
.tp-mockup .point-form-guide .point-guide-more { display:inline-flex;align-items:center;gap:9px;color:#0878b0;font-size:15px;font-weight:700;text-decoration:none;margin-top:8px; }
.tp-mockup .point-form-guide [hidden] { display:none!important; }
/* Valutazione titoli: introduzione fotografica e indice delle procedure. */
.tp-mockup .titoli-intro-layout { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:36px;align-items:stretch;margin-bottom:32px; }
.tp-mockup .titoli-intro-layout .titoli-intro { margin:0; }
.tp-mockup .titoli-intro-photo { position:relative;overflow:hidden;min-height:270px;border-radius:10px;background:#eef8fd;margin:0; }
.tp-mockup .titoli-intro-photo img { position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%; }
.tp-mockup[data-static-page=valutazione-titoli] .titoli-index { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;background:transparent;border:0;border-radius:0;overflow:visible;margin:0 0 20px; }
.tp-mockup[data-static-page=valutazione-titoli] .titoli-index a { display:flex;align-items:center;gap:12px;min-width:0;padding:18px;border:1px solid #d7e4ed;border-radius:10px;background:#fff;color:#1a3a52;font-size:15px;line-height:1.4; }
.tp-mockup[data-static-page=valutazione-titoli] .titoli-index a>i { margin-left:auto;color:#0878b0; }
.tp-mockup .titoli-procedure-icon { display:flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:#e5f4fc;color:#0878b0;font-size:21px; }
.tp-mockup[data-static-page=valutazione-titoli] .titoli-index a:hover,.tp-mockup[data-static-page=valutazione-titoli] .titoli-index a[aria-current=location] { border-color:#0878b0;background:#eef8fd; }
.tp-mockup .titoli-section-heading { display:flex;align-items:flex-start;gap:18px; }
.tp-mockup .titoli-section-heading>div { min-width:0; }
.tp-mockup .titoli-section-heading h2 { margin-top:4px; }
.tp-mockup[data-static-page=valutazione-titoli] .titoli-block { padding-block:36px; }
.tp-mockup[data-static-page=valutazione-titoli] .titoli-block:nth-of-type(even) { background:#f8f9fa;box-shadow:0 0 0 100vmax #f8f9fa;clip-path:inset(0 -100vmax); }
@media(max-width:1199px) {
 .tp-mockup[data-static-page=valutazione-titoli] .titoli-index { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:991px) {
 .tp-mockup .titoli-intro-photo { min-height:0;height:240px; }
 .tp-mockup .titoli-intro-photo img { object-position:center 30%; }
 .tp-mockup .point-guide-photo { height:180px; }
}
@media(max-width:767px) {
 .tp-mockup .partner-story-card { grid-template-columns:1fr; }
 .tp-mockup .partner-story-copy { padding:22px; }
 .tp-mockup .partner-story-photo img { height:220px;min-height:0;object-position:center 12%; }
 .tp-mockup .partner-onboarding { display:block;padding:22px; }
 .tp-mockup .partner-onboarding-icon { margin-bottom:18px; }
 .tp-mockup .point-guide-body { padding:22px; }
 .tp-mockup .point-guide-photo { height:150px; }
 .tp-mockup .point-form-guide h2 { font-size:26px;margin-bottom:20px; }
 .tp-mockup .titoli-intro-photo { height:210px; }
 .tp-mockup[data-static-page=valutazione-titoli] .titoli-index { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
 .tp-mockup[data-static-page=valutazione-titoli] .titoli-index a { padding:14px;flex-wrap:wrap;font-size:14px; }
 .tp-mockup[data-static-page=valutazione-titoli] .titoli-index a>span:not(.titoli-procedure-icon) { flex-basis:100%; }
 .tp-mockup[data-static-page=valutazione-titoli] .titoli-index a>i { display:none; }
 .tp-mockup .titoli-section-heading { gap:12px; }
 .tp-mockup .titoli-section-heading .titoli-procedure-icon { width:38px;height:38px;flex-basis:38px;font-size:18px; }
 .tp-mockup[data-static-page=valutazione-titoli] .titoli-block { padding-block:28px; }
}
.tp-mockup .point-form-index summary { list-style:none; }
.tp-mockup .point-form-index summary::-webkit-details-marker { display:none; }
.tp-mockup .point-form-index summary::after { content:'+';float:right;color:#0878b0;font-size:22px;line-height:1; }
.tp-mockup .point-form-index[open] summary::after { content:'−'; }

/* Lavora con noi: fotografia completa, anche contro lo shorthand legacy !important. */
.fd-site .tp-mockup[data-static-page=lavora-con-noi] .category-hero { background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important; }
@media(max-width:991px) {
 .fd-site .tp-mockup[data-static-page=lavora-con-noi] .category-hero { background-position:76% center!important; }
 .fd-site .tp-mockup[data-static-page=lavora-con-noi] .category-hero-overlay { background:linear-gradient(90deg,#1a3a52ed,#1a3a5299); }
}

/* Elenco centri: stessa tabella su desktop e mobile, con lettura orizzontale quando necessaria. */
.tp-mockup .sedi-table-wrap{overflow-x:auto;background:#fff;border:1px solid #d7e4ed;border-radius:10px}
.tp-mockup .sedi-table{width:100%;margin:0;border-collapse:collapse;color:#496980;font-size:16px;line-height:1.5}
.tp-mockup .sedi-table thead{background:#1a3a52;color:#fff}
.tp-mockup .sedi-table th,.tp-mockup .sedi-table td{padding:16px 20px;text-align:left;vertical-align:top}
.tp-mockup .sedi-table tbody th{width:25%;font-weight:700;color:#1a3a52}
.tp-mockup .sedi-table tbody tr+tr{border-top:1px solid #d7e4ed}
.tp-mockup .sedi-table tbody tr:nth-child(even){background:#f5f9fc}
.tp-mockup .sedi-table small{display:block;margin-top:3px;font-weight:400;font-size:13px;color:#496980}
@media(max-width:767px){.tp-mockup .sedi-table{min-width:620px}.tp-mockup .sedi-table th,.tp-mockup .sedi-table td{padding:14px 16px}}
@media(max-width:991px){.tp-mockup[data-static-page=chi-siamo] .about-process-layout{grid-template-columns:minmax(0,1fr)}}
.fd-site .tp-mockup[data-static-page=sedi] .category-hero.sedi-hero{background-size:cover!important;background-repeat:no-repeat!important;background-position:center 42%!important}
@media(max-width:991px){.fd-site .tp-mockup[data-static-page=sedi] .category-hero.sedi-hero{background-position:78% center!important}}

/* Italia/statistiche e filtri nella stessa riga; risultati a tutta larghezza. */
.tp-mockup .sedi-locator-toolbar{display:grid;grid-template-columns:320px minmax(0,1fr);gap:22px;align-items:stretch}
.tp-mockup .sedi-locator-toolbar .sedi-network-visual{display:flex;align-items:center;justify-content:center;gap:16px;padding:18px 20px;text-align:left}
.tp-mockup .sedi-locator-toolbar .sedi-italy{width:82px;height:92px;flex:0 0 82px;margin:0;background:transparent;border-radius:0}
.tp-mockup .sedi-locator-toolbar .sedi-italy img{width:82px;height:92px;filter:brightness(0) saturate(100%) invert(18%) sepia(18%) saturate(1314%) hue-rotate(161deg) brightness(95%) contrast(92%)}
.tp-mockup .sedi-locator-toolbar .sedi-network-summary{flex:1;min-width:0;max-width:none}
.tp-mockup .sedi-locator-toolbar .about-eyebrow{font-size:11px;margin:0}
.tp-mockup .sedi-locator-toolbar .sedi-network-counts{margin:10px 0 0;gap:16px}
.tp-mockup .sedi-locator-toolbar .sedi-network-counts dd{font-size:28px}
.tp-mockup .sedi-locator-toolbar .sedi-network-counts dt{font-size:13px}
.tp-mockup .sedi-locator-toolbar .sedi-locator-filters{align-content:center}
.tp-mockup .sedi-table tbody th{width:20%}
.tp-mockup .sedi-table :is(th,td):last-child{width:145px}
.tp-mockup .sedi-map-link{display:inline-flex;align-items:center;gap:8px;color:#0878b0;font-weight:700;white-space:nowrap}
@media(max-width:991px){.tp-mockup .sedi-locator-toolbar{grid-template-columns:minmax(0,1fr);gap:18px}.tp-mockup .sedi-locator-toolbar .sedi-network-summary{flex:0 1 200px}}
@media(max-width:767px){.tp-mockup .sedi-table{min-width:760px}}

.tp-mockup .sedi-centro-nome{text-transform:uppercase}

.tp-mockup .sedi-locator-toolbar .sedi-network-counts>div+div{padding-left:16px}

/* Fotografia completa: nessuno scontorno o taglio nella card di orientamento. */
.tp-mockup[data-static-page=sedi] .sedi-contact-help .sedi-help-figure{width:100%;height:auto;aspect-ratio:1;object-fit:contain;object-position:center;align-self:center;border-radius:8px}
