/* =========================================================================
   Mentetecnica - mt-site.css
   Design system autonomo per le pagine interne.
   NON dipende dal CSS del tema comprato (vendors/style/responsive/icon):
   quelle pagine caricano SOLO questo file (~20KB) invece di ~1,3MB.
   Palette presa dal logo reale: giallo #ffe21f, grigio #3a3c3d,
   blu base del tema #2946f3.
   ========================================================================= */

/* ---------- 1. Token ---------- */
:root{
  --mt-yellow:#ffe21f;
  --mt-yellow-dark:#e6c800;
  --mt-blue:#2946f3;
  --mt-blue-dark:#1c33c4;
  --mt-navy:#161a3d;
  --mt-navy-2:#232a63;
  --mt-ink:#15171c;
  --mt-body:#4a5058;
  --mt-muted:#6e7982;
  --mt-line:#e4e8ee;
  --mt-bg:#ffffff;
  --mt-bg-soft:#f5f7fb;
  --mt-green:#12a150;
  --mt-radius:14px;
  --mt-radius-sm:10px;
  --mt-shadow:0 1px 2px rgba(20,24,40,.04),0 8px 24px -12px rgba(20,24,40,.18);
  --mt-shadow-lg:0 2px 4px rgba(20,24,40,.05),0 24px 48px -20px rgba(20,24,40,.26);
  --mt-wrap:1180px;
  --mt-gap:clamp(1.25rem,3vw,2rem);
  --mt-section:clamp(3.25rem,7vw,5.5rem);
  --mt-font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* ---------- 2. Reset essenziale ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.mt-lean{
  margin:0;background:var(--mt-bg);color:var(--mt-body);
  font-family:var(--mt-font);font-size:clamp(1rem,.97rem + .15vw,1.0625rem);
  line-height:1.65;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.mt-lean img,.mt-lean svg,.mt-lean picture{max-width:100%;display:block}
.mt-lean img{height:auto}
.mt-lean h1,.mt-lean h2,.mt-lean h3,.mt-lean h4{
  color:var(--mt-ink);font-weight:750;line-height:1.15;
  letter-spacing:-.02em;margin:0 0 .6em;text-wrap:balance;
}
.mt-lean h1{font-size:clamp(2rem,1.35rem + 2.9vw,3.4rem)}
.mt-lean h2{font-size:clamp(1.6rem,1.2rem + 1.8vw,2.4rem)}
.mt-lean h3{font-size:clamp(1.15rem,1.05rem + .5vw,1.4rem)}
.mt-lean p{margin:0 0 1.1em;text-wrap:pretty}
.mt-lean p:last-child{margin-bottom:0}
.mt-lean a{color:var(--mt-blue);text-underline-offset:.18em}
.mt-lean ul,.mt-lean ol{margin:0 0 1.1em;padding-left:1.15em}
.mt-lean li{margin-bottom:.45em}
.mt-lean :where(a,button,summary,input,textarea):focus-visible{
  outline:3px solid var(--mt-blue);outline-offset:3px;border-radius:6px;
}
.mt-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mt-skip{position:absolute;left:-9999px;top:0;z-index:200;background:#fff;color:var(--mt-ink);padding:.75rem 1.1rem;font-weight:700}
.mt-skip:focus{left:.5rem;top:.5rem}

/* ---------- 3. Layout ---------- */
.mt-wrap{width:min(100% - 2.5rem,var(--mt-wrap));margin-inline:auto}
@media (max-width:480px){.mt-wrap{width:min(100% - 1.75rem,var(--mt-wrap))}}
.mt-sec{padding-block:var(--mt-section)}
.mt-sec--tight{padding-block:calc(var(--mt-section) * .62)}
.mt-sec--soft{background:var(--mt-bg-soft)}
.mt-sec--line{border-top:1px solid var(--mt-line)}
.mt-head{max-width:46rem;margin:0 auto clamp(2rem,4vw,3rem);text-align:center}
.mt-head p{color:var(--mt-muted);font-size:1.05em;margin-bottom:0}
.mt-head--left{margin-inline:0;text-align:left}
.mt-eyebrow{
  display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--mt-blue);margin-bottom:.85rem;
}
.mt-hero .mt-eyebrow{color:var(--mt-yellow)}

/* ---------- 4. Bottoni ---------- */
.mt-lean .mt-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  font:inherit;font-weight:750;line-height:1.2;text-decoration:none;cursor:pointer;
  padding:.95rem 1.6rem;border-radius:999px;border:2px solid transparent;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease;
  text-align:center;
}
.mt-lean .mt-btn svg{width:1.1em;height:1.1em;flex:none}
.mt-lean .mt-btn:hover{transform:translateY(-2px)}
.mt-lean .mt-btn--primary{background:var(--mt-yellow);color:#20232b;box-shadow:0 10px 22px -10px rgba(255,226,31,.9)}
.mt-lean .mt-btn--primary:hover{background:var(--mt-yellow-dark);color:#20232b}
.mt-lean .mt-btn--dark{background:var(--mt-ink);color:#fff}
.mt-lean .mt-btn--dark:hover{background:#000;color:#fff}
.mt-lean .mt-btn--blue{background:var(--mt-blue);color:#fff}
.mt-lean .mt-btn--blue:hover{background:var(--mt-blue-dark);color:#fff}
.mt-lean .mt-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.mt-lean .mt-btn--ghost:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}
.mt-lean .mt-btn--outline{background:#fff;color:var(--mt-ink);border-color:var(--mt-line)}
.mt-lean .mt-btn--outline:hover{border-color:var(--mt-ink)}
.mt-lean .mt-btn--wa{background:#25d366;color:#fff}
.mt-lean .mt-btn--wa:hover{background:#1ebe57;color:#fff}
.mt-lean .mt-btn--sm{padding:.6rem 1.1rem;font-size:.92rem}
.mt-btns{display:flex;flex-wrap:wrap;gap:.85rem}
.mt-btns--center{justify-content:center}
@media (max-width:400px){.mt-btn{width:100%}}

/* ---------- 5. Header / Menu ---------- */
.mt-topbar{background:var(--mt-yellow);color:#33362e;font-size:.82rem;font-weight:650}
.mt-topbar .mt-wrap{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;align-items:center;justify-content:space-between;padding-block:.5rem}
.mt-topbar a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}
.mt-topbar a:hover{text-decoration:underline}
.mt-topbar svg{width:1em;height:1em}
/* Fix UX/SEO 2026-08-29: prima l'intera barra extra spariva sotto i 700px
   e da mobile - dove il tocco-per-chiamare conta di piu' - non restava
   nessun contatto rapido in testata. Ora si nasconde solo il claim
   promozionale e l'email (meno urgente da smartphone): WhatsApp e
   telefono restano, solo senza etichetta testuale (il numero resta
   comunque leggibile agli screen reader tramite l'aria-label del link,
   quindi nascondere .mt-topbar__label non toglie nulla all'accessibilita'). */
@media (max-width:700px){
  .mt-topbar .mt-wrap{justify-content:center}
  .mt-topbar__tagline{display:none}
  .mt-topbar__mail{display:none}
  .mt-topbar__label{display:none}
}

.mt-header{position:sticky;top:0;z-index:60;background:var(--mt-navy);color:#fff}
/* Admin bar di WP (fixed, z-index 99999) sovrapposta al menu sticky: la abbassiamo dell'altezza esatta della barra */
body.admin-bar .mt-header{top:32px}
@media screen and (max-width:782px){body.admin-bar .mt-header{top:46px}}
.mt-header__in{display:flex;align-items:center;gap:1rem;justify-content:space-between;padding-block:.85rem}
.mt-logo{display:block;flex:none}
.mt-logo img{width:190px;height:auto}
@media (max-width:520px){.mt-logo img{width:158px}}
/* Raggruppa ricerca, burger e menu in UN SOLO figlio flex di
   .mt-header__in: lo spazio tra logo e il resto resta un semplice
   spazio a 2 elementi, e ricerca/burger stanno sempre incollati al
   menu invece di essere sparpagliati dallo space-between su 3+ figli. */
.mt-header__actions{display:flex;align-items:center;gap:.35rem}

.mt-burger{
  display:none;background:none;border:0;color:#fff;padding:.5rem;cursor:pointer;
  border-radius:8px;line-height:0;
}
.mt-burger svg{width:28px;height:28px}
.mt-burger[aria-expanded="true"] .mt-burger__open,
.mt-burger[aria-expanded="false"] .mt-burger__close{display:none}

.mt-nav ul{list-style:none;margin:0;padding:0}
.mt-nav>ul{display:flex;align-items:center;gap:.15rem}
.mt-nav li{margin:0;position:relative}
/* Voci con sottomenu (Software/Assistenza/Formazione): fix UX 2026-08-29,
   label e freccina sono ORA due elementi affiancati invece di un unico
   bottone toggle, cosi' la label porta davvero alla pagina di categoria
   e la freccina si limita ad aprire/chiudere il sottomenu. */
.mt-nav li.mt-nav__has-sub{display:flex;align-items:center;gap:.1rem}
.mt-nav a,.mt-nav__toggle{
  display:flex;align-items:center;gap:.35rem;white-space:nowrap;
  color:#fff;text-decoration:none;font-weight:650;font-size:.95rem;
  padding:.6rem .78rem;border-radius:9px;background:none;border:0;
  font-family:inherit;cursor:pointer;
}
.mt-nav a:hover,.mt-nav__toggle:hover{background:rgba(255,255,255,.12)}
.mt-nav a[aria-current="page"],
.mt-nav__link--current{color:var(--mt-yellow)}
.mt-nav__toggle{padding:.6rem .5rem}
.mt-nav__toggle svg{width:.7em;height:.7em;transition:transform .2s ease;opacity:.8}
.mt-nav__toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.mt-nav__cta a{background:var(--mt-yellow);color:#20232b}
.mt-nav__cta a:hover{background:var(--mt-yellow-dark)}
/* Il sottomenu parte ESATTAMENTE dal bordo inferiore della voce (top:100%)
   e crea lo stacco visivo con un padding-top trasparente invece che con un
   margine: cosi' il mouse non attraversa mai una zona "morta" scendendo,
   e il dropdown non si chiude a meta' strada. */
.mt-nav ul.mt-nav__sub{
  position:absolute;top:100%;left:0;min-width:16rem;
  padding:.35rem 0 0;display:none;
}
.mt-nav__sub > li{
  background:#fff;
}
.mt-nav__sub > li:first-child{border-radius:var(--mt-radius-sm) var(--mt-radius-sm) 0 0;overflow:hidden}
.mt-nav__sub > li:last-child{border-radius:0 0 var(--mt-radius-sm) var(--mt-radius-sm);overflow:hidden}
.mt-nav__sub::after{
  content:"";position:absolute;inset:.35rem 0 0;z-index:-1;
  background:#fff;border-radius:var(--mt-radius-sm);box-shadow:var(--mt-shadow-lg);
}
.mt-nav__sub a{color:var(--mt-ink);font-weight:600;font-size:.92rem;white-space:normal;padding:.6rem .7rem}
.mt-nav__sub a:hover{background:var(--mt-bg-soft);color:var(--mt-blue)}
.mt-nav__sub li+li{border-top:1px solid var(--mt-line)}
.mt-nav__toggle[aria-expanded="true"]+.mt-nav__sub{display:block}

@media (max-width:1040px){
  .mt-burger{display:block}
  .mt-nav{
    position:fixed;inset:0 0 0 auto;width:min(22rem,88vw);background:var(--mt-navy);
    padding:5.25rem 1.25rem 2rem;overflow-y:auto;transform:translateX(100%);
    transition:transform .25s ease;box-shadow:-20px 0 60px rgba(0,0,0,.4);
  }
  .mt-nav[data-open="true"]{transform:translateX(0)}
  .mt-nav>ul{flex-direction:column;align-items:stretch;gap:.15rem}
  .mt-nav a,.mt-nav__toggle{width:100%;justify-content:space-between;padding:.85rem .9rem;font-size:1rem}
  .mt-nav li.mt-nav__has-sub > .mt-nav__link{flex:1 1 auto;width:auto}
  .mt-nav li.mt-nav__has-sub > .mt-nav__toggle{width:auto;flex:0 0 auto;justify-content:center}
  .mt-nav ul.mt-nav__sub{position:static;display:none;box-shadow:none;background:rgba(255,255,255,.06);margin:.15rem 0 .4rem;padding:0}
  .mt-nav__sub::after{display:none}
  .mt-nav__sub > li{background:transparent;border-radius:0}
  .mt-nav__sub a{color:#e8ebf5}
  .mt-nav__sub a:hover{background:rgba(255,255,255,.1);color:#fff}
  .mt-nav__sub li+li{border-color:rgba(255,255,255,.12)}
  .mt-nav__cta a{justify-content:center}
  body[data-menu="open"]{overflow:hidden}
  .mt-backdrop{position:fixed;inset:0;background:rgba(8,10,25,.55);z-index:55;border:0}
}

/* ---------- 5b. Ricerca interna (fix UX/SEO 2026-08-29) ---------- */
.mt-search{position:relative}
.mt-search__toggle{
  display:flex;align-items:center;justify-content:center;
  width:2.6rem;height:2.6rem;padding:0;background:none;border:0;border-radius:9px;
  color:#fff;cursor:pointer;
}
.mt-search__toggle:hover{background:rgba(255,255,255,.12)}
.mt-search__toggle svg{width:1.15rem;height:1.15rem}
.mt-search__form{
  position:absolute;top:100%;right:0;margin-top:.6rem;
  display:none;gap:.4rem;background:#fff;padding:.5rem;
  border-radius:var(--mt-radius-sm);box-shadow:var(--mt-shadow-lg);
  width:min(20rem,88vw);
}
.mt-search[data-open="true"] .mt-search__form{display:flex}
.mt-search__form input{
  flex:1;min-width:0;border:1px solid var(--mt-line);border-radius:8px;
  padding:.55rem .7rem;font:inherit;color:var(--mt-ink);
}
.mt-search__form button{
  display:flex;align-items:center;justify-content:center;
  width:2.5rem;flex:none;border:0;border-radius:8px;background:var(--mt-blue);color:#fff;cursor:pointer;
}
.mt-search__form button:hover{background:var(--mt-blue-dark)}
.mt-search__form button svg{width:1.1rem;height:1.1rem}

/* ---------- 6. Hero ---------- */
.mt-hero{
  position:relative;color:#fff;overflow:hidden;
  background:
    radial-gradient(1100px 520px at 12% -10%,rgba(41,70,243,.55),transparent 60%),
    radial-gradient(900px 500px at 92% 0%,rgba(255,226,31,.16),transparent 55%),
    linear-gradient(160deg,var(--mt-navy-2),var(--mt-navy) 60%);
  padding-block:clamp(3rem,7vw,5.25rem);
}
.mt-hero::after{
  content:"";position:absolute;inset:auto 0 0;height:1px;background:rgba(255,255,255,.12);
}
.mt-hero h1{color:#fff;margin-bottom:.55em}
.mt-hero__lead{font-size:clamp(1.05rem,1rem + .5vw,1.28rem);color:#d5dcf5;max-width:40rem;margin-bottom:1.9rem}
.mt-hero__grid{display:grid;gap:clamp(2rem,4vw,3.25rem);align-items:center}
@media (min-width:900px){.mt-hero__grid{grid-template-columns:1.05fr .95fr}}
.mt-hero__note{margin-top:1.1rem;font-size:.9rem;color:#b9c2e4;display:flex;align-items:center;gap:.45rem}
.mt-hero__note svg{width:1.05em;height:1.05em;color:var(--mt-yellow);flex:none}
.mt-hero__media img{border-radius:var(--mt-radius);box-shadow:0 30px 60px -25px rgba(0,0,0,.65);width:100%}
.mt-hero--plain{padding-block:clamp(2.5rem,5.5vw,4rem)}
.mt-hero--plain .mt-hero__grid{grid-template-columns:1fr;justify-items:center;text-align:center}
.mt-hero--plain .mt-hero__lead{margin-inline:auto}
.mt-hero--plain .mt-btns{justify-content:center}

/* pannello valore nell'hero */
.mt-panel{background:#fff;color:var(--mt-body);border-radius:var(--mt-radius);padding:clamp(1.4rem,3vw,2rem);box-shadow:var(--mt-shadow-lg)}
.mt-panel h2,.mt-panel h3{font-size:1.05rem;margin-bottom:1rem}
.mt-panel ul{list-style:none;padding:0;margin:0}
.mt-panel li{display:flex;gap:.7rem;align-items:flex-start;padding:.62rem 0;border-top:1px solid var(--mt-line);font-size:.97rem;line-height:1.5;margin:0}
.mt-panel li:first-child{border-top:0;padding-top:0}
.mt-panel li svg{width:1.15rem;height:1.15rem;flex:none;color:var(--mt-green);margin-top:.15rem}
.mt-panel__foot{margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--mt-line);font-size:.86rem;color:var(--mt-muted);display:flex;gap:.45rem;align-items:center}
.mt-panel__foot svg{width:1.05em;height:1.05em;color:var(--mt-blue);flex:none}

/* ---------- 7. Breadcrumb ---------- */
.mt-crumb{background:var(--mt-bg-soft);border-bottom:1px solid var(--mt-line);font-size:.85rem}
.mt-crumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:.8rem 0}
.mt-crumb li{margin:0;display:flex;gap:.4rem;align-items:center;color:var(--mt-muted)}
.mt-crumb li+li::before{content:"›";color:var(--mt-line);font-weight:700}
.mt-crumb a{color:var(--mt-muted);text-decoration:none}
.mt-crumb a:hover{color:var(--mt-blue);text-decoration:underline}

/* ---------- 8. Griglie e card ---------- */
.mt-grid{display:grid;gap:var(--mt-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr))}
.mt-grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}
.mt-grid--4{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
/* Blocchi da 4 card "grandi": 2x2 invece di 3+1, che lascia un orfano. */
.mt-grid--duo{grid-template-columns:1fr}
@media (min-width:820px){.mt-grid--duo{grid-template-columns:repeat(2,1fr)}}
.mt-card{
  background:#fff;border:1px solid var(--mt-line);border-radius:var(--mt-radius);
  padding:clamp(1.35rem,2.4vw,1.75rem);box-shadow:var(--mt-shadow);
  display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
a.mt-card,.mt-card--link:hover{text-decoration:none}
.mt-card--link:hover{transform:translateY(-4px);box-shadow:var(--mt-shadow-lg);border-color:transparent}
.mt-card__icon{
  width:2.9rem;height:2.9rem;border-radius:12px;display:grid;place-items:center;
  background:rgba(41,70,243,.09);color:var(--mt-blue);margin-bottom:1rem;flex:none;
}
.mt-card__icon svg{width:1.5rem;height:1.5rem}
.mt-card h3{margin-bottom:.5rem;font-size:1.12rem}
.mt-card p{color:var(--mt-body);font-size:.97rem;margin-bottom:0}
.mt-card__more{margin-top:auto;padding-top:1rem;font-weight:700;font-size:.93rem;color:var(--mt-blue);display:inline-flex;align-items:center;gap:.4rem}
.mt-card__more svg{width:1em;height:1em;transition:transform .18s ease}
.mt-card--link:hover .mt-card__more svg{transform:translateX(3px)}

/* card su fondo scuro */
.mt-sec--dark{background:var(--mt-navy);color:#c9d1ec}
.mt-sec--dark h2,.mt-sec--dark h3{color:#fff}
.mt-sec--dark .mt-head p{color:#b3bcdd}
.mt-sec--dark .mt-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#c9d1ec;box-shadow:none}
.mt-sec--dark .mt-card p{color:#b8c1e0}
.mt-sec--dark .mt-card__icon{background:rgba(255,226,31,.16);color:var(--mt-yellow)}

/* ---------- 9. Steps ---------- */
.mt-steps{display:grid;gap:var(--mt-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));counter-reset:mtstep}
.mt-step{position:relative;padding-top:.5rem}
.mt-step::before{
  counter-increment:mtstep;content:counter(mtstep);
  display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;
  background:var(--mt-yellow);color:#20232b;font-weight:800;font-size:1.05rem;margin-bottom:.9rem;
}
.mt-step h3{font-size:1.05rem;margin-bottom:.4rem}
.mt-step p{font-size:.96rem;margin-bottom:0}

/* ---------- 10. Blocco testo + immagine ---------- */
.mt-split{display:grid;gap:clamp(1.75rem,4vw,3.25rem);align-items:center}
@media (min-width:860px){
  .mt-split{grid-template-columns:1fr 1fr}
  .mt-split--flip .mt-split__media{order:-1}
}
.mt-split__media img{border-radius:var(--mt-radius);box-shadow:var(--mt-shadow-lg);width:100%}
.mt-split h2{margin-bottom:.55em}
.mt-list{list-style:none;padding:0;margin:0 0 1.5rem}
.mt-list li{display:flex;gap:.7rem;align-items:flex-start;margin-bottom:.7rem}
.mt-list svg{width:1.2rem;height:1.2rem;flex:none;color:var(--mt-green);margin-top:.2rem}

/* ---------- 11. Tabella comparativa (responsive) ---------- */
.mt-tablewrap{overflow-x:auto;border:1px solid var(--mt-line);border-radius:var(--mt-radius);background:#fff;box-shadow:var(--mt-shadow)}
.mt-table{width:100%;border-collapse:collapse;font-size:.96rem;min-width:34rem}
.mt-table caption{caption-side:top;text-align:left;padding:1rem 1.15rem 0;font-weight:700;color:var(--mt-ink)}
.mt-table th,.mt-table td{padding:.9rem 1.15rem;text-align:left;border-bottom:1px solid var(--mt-line);vertical-align:top}
.mt-table thead th{background:var(--mt-bg-soft);color:var(--mt-ink);font-weight:750;font-size:.9rem;white-space:nowrap}
.mt-table tbody th{font-weight:650;color:var(--mt-ink)}
.mt-table tbody tr:last-child td,.mt-table tbody tr:last-child th{border-bottom:0}
.mt-table td[data-yes]{color:var(--mt-green);font-weight:700}
.mt-table td[data-no]{color:var(--mt-muted)}
.mt-table .mt-hl{background:rgba(255,226,31,.14)}
@media (max-width:700px){
  .mt-tablewrap{overflow:visible;border:0;background:none;box-shadow:none;border-radius:0}
  .mt-table,.mt-table tbody,.mt-table tr,.mt-table td,.mt-table th{display:block;min-width:0;width:100%}
  .mt-table thead{display:none}
  .mt-table tr{border:1px solid var(--mt-line);border-radius:var(--mt-radius);margin-bottom:1rem;background:#fff;box-shadow:var(--mt-shadow);overflow:hidden}
  .mt-table tbody th{background:var(--mt-bg-soft);font-size:1rem;padding:.85rem 1rem}
  .mt-table td{display:flex;justify-content:space-between;gap:1rem;text-align:right;padding:.75rem 1rem}
  .mt-table td::before{content:attr(data-label);font-weight:700;color:var(--mt-ink);text-align:left;flex:1}
  .mt-table td:last-child{border-bottom:0}
}

/* ---------- 12. Prezzi ---------- */
.mt-prices{display:grid;gap:var(--mt-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));align-items:start}
.mt-price{
  background:#fff;border:1px solid var(--mt-line);border-radius:var(--mt-radius);
  padding:clamp(1.5rem,2.6vw,2rem);box-shadow:var(--mt-shadow);display:flex;flex-direction:column;height:100%;
}
.mt-price--best{border:2px solid var(--mt-yellow);box-shadow:var(--mt-shadow-lg);position:relative}
.mt-price__tag{
  position:absolute;top:-.85rem;left:50%;transform:translateX(-50%);background:var(--mt-yellow);color:#20232b;
  font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .8rem;border-radius:999px;white-space:nowrap;
}
.mt-price__name{font-weight:750;color:var(--mt-ink);font-size:1.05rem;margin-bottom:.35rem}
.mt-price__fig{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.15rem}
.mt-price__fig b{font-size:clamp(2rem,1.6rem + 1.4vw,2.6rem);font-weight:800;color:var(--mt-ink);letter-spacing:-.03em;line-height:1}
.mt-price__fig span{font-size:.9rem;color:var(--mt-muted);font-weight:600}
.mt-price__from{font-size:.8rem;color:var(--mt-muted);font-weight:650;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}
.mt-price__note{font-size:.94rem;color:var(--mt-body);margin-bottom:1.25rem}
.mt-price ul{list-style:none;padding:0;margin:0 0 1.5rem}
.mt-price li{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem;margin-bottom:.6rem}
.mt-price li svg{width:1.1rem;height:1.1rem;flex:none;color:var(--mt-green);margin-top:.2rem}
.mt-price .mt-btn{margin-top:auto;width:100%}
.mt-price__after{font-size:.82rem;color:var(--mt-muted);text-align:center;margin-top:.7rem}

/* ---------- 13. FAQ (solo CSS, niente JS) ---------- */
.mt-faq{max-width:52rem;margin-inline:auto;display:grid;gap:.75rem}
.mt-faq details{background:#fff;border:1px solid var(--mt-line);border-radius:var(--mt-radius-sm);box-shadow:var(--mt-shadow)}
.mt-faq summary{
  cursor:pointer;list-style:none;padding:1.05rem 1.25rem;font-weight:700;color:var(--mt-ink);
  display:flex;justify-content:space-between;gap:1rem;align-items:center;font-size:1.02rem;
}
.mt-faq summary::-webkit-details-marker{display:none}
.mt-faq summary::after{
  content:"";width:.7rem;height:.7rem;flex:none;border-right:2.5px solid var(--mt-blue);
  border-bottom:2.5px solid var(--mt-blue);rotate:45deg;transition:rotate .2s ease;margin-top:-.25rem;
}
.mt-faq details[open] summary::after{rotate:225deg;margin-top:.2rem}
.mt-faq details[open] summary{border-bottom:1px solid var(--mt-line)}
.mt-faq__a{padding:1.05rem 1.25rem;color:var(--mt-body);font-size:.98rem}

/* ---------- 13b. Programma corso (curriculum ad accordion) ---------- */
.mt-curr__intro{display:grid;gap:1.75rem;margin-bottom:clamp(2rem,4vw,3rem);align-items:center}
@media (min-width:960px){.mt-curr__intro{grid-template-columns:1.3fr 1fr}}
.mt-curr__intro .mt-eyebrow{display:block}
.mt-curr__intro h2{margin-bottom:.5em}
.mt-curr__intro .mt-lead{margin-bottom:1.25rem}
.mt-curr__media img{border-radius:var(--mt-radius);box-shadow:var(--mt-shadow-lg);width:100%}
.mt-curr__meta{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem}
.mt-curr__meta span{display:inline-flex;align-items:center;gap:.45rem;font-size:.92rem;color:var(--mt-muted);font-weight:600}
.mt-curr__meta svg{width:1.05rem;height:1.05rem;color:var(--mt-blue);flex:none}
.mt-curr__meta b{color:var(--mt-ink);font-weight:800}
.mt-curr{max-width:52rem;display:grid;gap:.75rem}
.mt-curr__intro + .mt-curr{margin-inline:auto}
.mt-curr__item{background:#fff;border:1px solid var(--mt-line);border-radius:var(--mt-radius-sm);box-shadow:var(--mt-shadow)}
.mt-curr__item summary{
  cursor:pointer;list-style:none;padding:1.1rem 1.25rem;display:flex;align-items:center;gap:1rem;
}
.mt-curr__item summary::-webkit-details-marker{display:none}
.mt-curr__num{
  flex:none;width:2.35rem;height:2.35rem;border-radius:50%;display:grid;place-items:center;
  background:var(--mt-bg-soft);color:var(--mt-navy);font-weight:800;font-size:.92rem;
}
.mt-curr__item[open] .mt-curr__num{background:var(--mt-yellow);color:var(--mt-navy)}
.mt-curr__ico{flex:none;width:2.35rem;height:2.35rem;border-radius:12px;display:grid;place-items:center;background:rgba(41,70,243,.09);color:var(--mt-blue)}
.mt-curr__ico svg{width:1.25rem;height:1.25rem}
.mt-curr__head{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.35rem}
.mt-curr__title{font-weight:750;color:var(--mt-ink);font-size:1rem;line-height:1.35}
.mt-curr__tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.mt-curr__durata{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--mt-muted);font-weight:600}
.mt-curr__durata svg{width:.9rem;height:.9rem}
.mt-curr__livello{display:inline-flex;padding:.15rem .55rem;border-radius:99px;font-size:.76rem;font-weight:800;letter-spacing:.01em}
.mt-curr__livello--base{background:rgba(18,161,80,.12);color:var(--mt-green)}
.mt-curr__livello--intermedio{background:rgba(41,70,243,.1);color:var(--mt-blue)}
.mt-curr__livello--avanzato{background:rgba(22,26,61,.09);color:var(--mt-navy)}
.mt-curr__chev{
  flex:none;width:.65rem;height:.65rem;border-right:2.5px solid var(--mt-blue);border-bottom:2.5px solid var(--mt-blue);
  rotate:45deg;transition:rotate .2s ease;margin-top:-.15rem;
}
.mt-curr__item[open] .mt-curr__chev{rotate:225deg;margin-top:.15rem}
.mt-curr__item[open] summary{border-bottom:1px solid var(--mt-line)}
.mt-curr__body{padding:1.1rem 1.25rem 1.25rem 4.55rem;color:var(--mt-body);font-size:.96rem}
.mt-curr__body p{margin-bottom:.85rem}
.mt-curr__points{margin-bottom:0}
.mt-curr__points li{margin-bottom:.5rem;font-size:.94rem}
.mt-curr__cta{justify-content:center;margin-top:1.75rem}
@media (max-width:600px){
  .mt-curr__item summary{padding:.9rem 1rem;gap:.65rem}
  .mt-curr__num,.mt-curr__ico{width:2.05rem;height:2.05rem}
  .mt-curr__body{padding-left:1rem}
}


/* ---------- 14. CTA ---------- */
.mt-cta{
  border-radius:var(--mt-radius);padding:clamp(1.75rem,4vw,2.9rem);color:#fff;
  background:linear-gradient(135deg,var(--mt-navy-2),var(--mt-navy));
  display:grid;gap:1.5rem;align-items:center;box-shadow:var(--mt-shadow-lg);
}
@media (min-width:820px){.mt-cta{grid-template-columns:1.4fr auto}}
.mt-cta h2{color:#fff;font-size:clamp(1.35rem,1.1rem + 1vw,1.85rem);margin-bottom:.4rem}
.mt-cta p{color:#c3cbe9;margin-bottom:0;font-size:1rem}
.mt-cta .mt-btns{flex-wrap:wrap}
@media (max-width:819px){.mt-cta .mt-btns{justify-content:flex-start}}

/* ---------- 15. Trust / numeri ---------- */
.mt-stats{display:grid;gap:var(--mt-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));text-align:center}
.mt-stat b{display:block;font-size:clamp(1.8rem,1.5rem + 1.2vw,2.4rem);font-weight:800;color:var(--mt-ink);letter-spacing:-.03em;line-height:1.1}
.mt-sec--dark .mt-stat b{color:var(--mt-yellow)}
.mt-stat span{font-size:.93rem;color:var(--mt-muted)}
.mt-sec--dark .mt-stat span{color:#b3bcdd}

/* ---------- 16. Contatti ---------- */
.mt-contacts{display:grid;gap:var(--mt-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}
.mt-contact{
  display:flex;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--mt-line);
  border-radius:var(--mt-radius);padding:1.4rem;text-decoration:none;box-shadow:var(--mt-shadow);
  transition:transform .2s ease,box-shadow .2s ease;
}
.mt-contact:hover{transform:translateY(-3px);box-shadow:var(--mt-shadow-lg)}
.mt-contact__ico{width:2.7rem;height:2.7rem;border-radius:12px;display:grid;place-items:center;flex:none;background:rgba(41,70,243,.09);color:var(--mt-blue)}
.mt-contact__ico svg{width:1.4rem;height:1.4rem}

/* ---------- 16b. Griglia contatti + form ---------- */
.mt-contactgrid{display:grid;gap:2.5rem}
@media (min-width:960px){.mt-contactgrid{grid-template-columns:1.5fr 1fr;align-items:start}}
.mt-contactgrid__side{background:var(--mt-bg-soft);border:1px solid var(--mt-line);border-radius:var(--mt-radius);padding:1.5rem}
.mt-contactgrid__side h3{margin-bottom:1rem;font-size:1.05rem}
.mt-contactgrid__side .mt-contacts{grid-template-columns:1fr;gap:.85rem}

/* ---------- 16c. Form di contatto ---------- */
.mt-form{display:grid;gap:1.15rem;max-width:44rem}
.mt-form__row{display:grid;gap:1.15rem}
@media (min-width:640px){.mt-form__row{grid-template-columns:1fr 1fr}}
.mt-form__field{display:grid;gap:.4rem}
.mt-form__field label{font-weight:650;font-size:.92rem;color:var(--mt-ink)}
.mt-form__field label span{font-weight:500;color:var(--mt-muted)}
.mt-form input[type=text],.mt-form input[type=email],.mt-form input[type=tel],.mt-form select,.mt-form textarea{
  width:100%;padding:.75rem .9rem;border:1px solid var(--mt-line);border-radius:var(--mt-radius-sm);
  font:inherit;color:var(--mt-ink);background:#fff;transition:border-color .15s ease,box-shadow .15s ease;
}
.mt-form input:focus,.mt-form select:focus,.mt-form textarea:focus{
  outline:none;border-color:var(--mt-blue);box-shadow:0 0 0 3px rgba(41,70,243,.15);
}
.mt-form textarea{resize:vertical;min-height:8rem;font-family:var(--mt-font)}
.mt-form select{
  appearance:none;cursor:pointer;padding-right:2.5rem;
  background-repeat:no-repeat;background-position:right .85rem center;background-size:1.1rem;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236e7982' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}
.mt-form__check{display:flex;gap:.65rem;align-items:flex-start;font-size:.9rem;color:var(--mt-body);cursor:pointer}
.mt-form__check input{margin-top:.2rem;flex:none;width:1.1rem;height:1.1rem;accent-color:var(--mt-blue)}
.mt-form__check a{color:var(--mt-blue);text-decoration:underline}
.mt-form__hp{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none;left:-9999px}
.mt-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem .25rem}
.mt-form__status{margin:0;font-size:.92rem;font-weight:650}
.mt-form.is-success .mt-form__status{color:var(--mt-green)}
.mt-form.is-error .mt-form__status{color:#c0392b}
.mt-form button[type=submit][disabled]{opacity:.7;cursor:progress}

.mt-contact b{display:block;color:var(--mt-ink);font-size:1.02rem;margin-bottom:.2rem}
.mt-contact span{color:var(--mt-body);font-size:.94rem;overflow-wrap:anywhere}

/* ---------- 17. Footer ---------- */
.mt-footer{background:var(--mt-navy);color:#a9b3d6;font-size:.95rem;padding-block:clamp(2.75rem,5vw,4rem) 0}
.mt-footer h2,.mt-footer h3{color:#fff;font-size:1rem;margin-bottom:1rem;letter-spacing:0}
.mt-footer a{color:#c8d0ec;text-decoration:none}
.mt-footer a:hover{color:var(--mt-yellow);text-decoration:underline}
.mt-footer ul{list-style:none;padding:0;margin:0}
.mt-footer li{margin-bottom:.55rem}
.mt-footer__grid{display:grid;gap:clamp(1.75rem,4vw,2.5rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}
.mt-footer__brand img{width:200px;margin-bottom:1rem}
.mt-footer__brand p{color:#a9b3d6;font-size:.93rem;max-width:26rem}
.mt-footer__social{display:flex;gap:.6rem;margin-top:1.1rem}
.mt-footer__social a{width:2.4rem;height:2.4rem;border-radius:10px;background:rgba(255,255,255,.08);display:grid;place-items:center}
.mt-footer__social a:hover{background:var(--mt-yellow);color:var(--mt-navy)}
.mt-footer__social svg{width:1.15rem;height:1.15rem}
.mt-footer__bar{margin-top:clamp(2rem,4vw,3rem);border-top:1px solid rgba(255,255,255,.12);padding-block:1.35rem;font-size:.87rem;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;color:#8e99c2}

/* ---------- 18. Utility ---------- */
.mt-center{text-align:center}
.mt-mt{margin-top:clamp(1.75rem,3.5vw,2.75rem)}
.mt-lead{font-size:1.08em;color:var(--mt-body)}
.mt-note{font-size:.88rem;color:var(--mt-muted)}
.mt-hide{display:none}

/* ---------- 19. Torna su ---------- */
.mt-top{
  position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:70;
  width:3rem;height:3rem;border-radius:50%;border:0;cursor:pointer;
  background:var(--mt-yellow);color:#20232b;display:grid;place-items:center;
  box-shadow:0 10px 24px -8px rgba(20,24,40,.5);
  opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
}
.mt-top[data-show="true"]{opacity:1;visibility:visible;transform:translateY(0)}
.mt-top:hover{background:var(--mt-yellow-dark)}
.mt-top svg{width:1.35rem;height:1.35rem;rotate:-90deg}

/* ---------- 20. Barra social laterale (come in home) ---------- */
.mt-side{
  position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:50;
  display:flex;flex-direction:column;gap:.25rem;padding:.5rem .35rem;
  background:var(--mt-navy);border-radius:0 var(--mt-radius-sm) var(--mt-radius-sm) 0;
  box-shadow:0 8px 24px -10px rgba(0,0,0,.5);
}
.mt-side a{
  display:flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none;
  font-size:.78rem;font-weight:650;padding:.5rem .55rem;border-radius:8px;white-space:nowrap;
}
.mt-side a:hover{background:var(--mt-yellow);color:var(--mt-navy)}
.mt-side svg{width:1.05rem;height:1.05rem;flex:none}
.mt-side span{display:none}
@media (max-width:1400px){.mt-side{display:none}}

/* ---------- 21. Blog "News": filtri, griglia e card ---------- */
.mt-blog-filters{display:flex;flex-wrap:wrap;gap:.65rem .75rem;margin:0 0 clamp(2rem,4vw,3rem)}
.mt-blog-filters a{
  display:inline-flex;align-items:center;padding:.6rem 1.2rem;border-radius:999px;
  background:#fff;color:var(--mt-body);font-weight:650;font-size:.88rem;text-decoration:none;
  border:1.5px solid var(--mt-line);transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease;
  white-space:nowrap;
}
.mt-blog-filters a:hover{border-color:var(--mt-yellow-dark);color:var(--mt-navy);background:var(--mt-bg-soft)}
.mt-blog-filters a.is-active{background:var(--mt-yellow);color:var(--mt-navy);border-color:var(--mt-yellow);box-shadow:0 8px 18px -10px rgba(255,226,31,.8)}
@media (max-width:560px){
  .mt-blog-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.4rem;gap:.55rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .mt-blog-filters::-webkit-scrollbar{display:none}
  .mt-blog-filters a{flex:none}
}

.mt-blog-grid{display:grid;gap:var(--mt-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr))}
.mt-blog-empty{color:var(--mt-muted);font-size:1.02rem;text-align:center;padding:3rem 1rem}
.mt-blog-card{
  display:flex;flex-direction:column;background:#fff;border:1px solid var(--mt-line);border-radius:var(--mt-radius);
  overflow:hidden;box-shadow:var(--mt-shadow);text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.mt-blog-card:hover{transform:translateY(-4px);box-shadow:var(--mt-shadow-lg);border-color:transparent}
.mt-blog-card__media{position:relative;aspect-ratio:8/5;background:var(--mt-bg-soft);overflow:hidden}
.mt-blog-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.mt-blog-card__ph{width:100%;height:100%;display:grid;place-items:center;color:var(--mt-line);background:linear-gradient(135deg,var(--mt-bg-soft),#fff)}
.mt-blog-card__ph svg{width:2.4rem;height:2.4rem}
.mt-blog-card__cat{
  position:absolute;top:.85rem;left:.85rem;background:var(--mt-navy);color:#fff;font-size:.74rem;font-weight:750;
  padding:.3rem .7rem;border-radius:999px;letter-spacing:.02em;
}
.mt-blog-card__body{padding:1.35rem;display:flex;flex-direction:column;flex:1}
.mt-blog-card__meta{font-size:.82rem;color:var(--mt-muted);font-weight:650;margin-bottom:.5rem}
.mt-blog-card__body h3{font-size:1.08rem;margin-bottom:.5rem;color:var(--mt-ink)}
.mt-blog-card__body p{color:var(--mt-body);font-size:.95rem;margin-bottom:0;flex:1}
.mt-blog-card__body .mt-card__more{margin-top:1rem;padding-top:0}
.mt-blog-card:hover .mt-card__more svg{transform:translateX(3px)}

/* ---------- 22. Blog "News": articolo singolo ---------- */
.mt-article__head{padding-block:clamp(2rem,4vw,3rem) 0}
.mt-lean .mt-article__cat{
  display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--mt-blue);text-decoration:none;margin-bottom:.85rem;
}
.mt-lean .mt-article__cat:hover{text-decoration:underline}
.mt-article__head h1{max-width:46rem;margin-bottom:1rem}
.mt-article__meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:2rem}
.mt-article__meta span{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--mt-muted);font-weight:600}
.mt-article__meta svg{width:1rem;height:1rem;color:var(--mt-blue)}
.mt-lean .mt-article__meta a{color:var(--mt-muted);text-decoration:none}
.mt-lean .mt-article__meta a:hover{color:var(--mt-blue);text-decoration:underline}
.mt-article__hero{margin-bottom:clamp(2rem,4vw,3rem)}
.mt-article__hero img{width:100%;border-radius:var(--mt-radius);box-shadow:var(--mt-shadow-lg)}

.mt-article__body{max-width:42rem;margin-inline:auto;font-size:1.06rem;line-height:1.75;color:var(--mt-body)}
.mt-article__body h2{margin-top:2.2em;margin-bottom:.6em;font-size:1.45rem;color:var(--mt-ink)}
.mt-article__body h3{margin-top:1.8em;margin-bottom:.55em;font-size:1.2rem;color:var(--mt-ink)}
.mt-article__body p{margin-bottom:1.3em}
.mt-article__body ul,.mt-article__body ol{margin:0 0 1.3em;padding-left:1.4em}
.mt-article__body li{margin-bottom:.5em}
.mt-lean .mt-article__body a{color:var(--mt-blue);text-decoration:underline;text-underline-offset:.15em}
.mt-article__body strong{color:var(--mt-ink)}
.mt-article__body blockquote,.mt-article__body .wp-block-quote{
  margin:1.8em 0;padding:.3em 1.5em;border-left:3px solid var(--mt-yellow);
  font-size:1.1rem;font-style:italic;color:var(--mt-ink);
}
.mt-article__body img,.mt-article__body .wp-block-image img{max-width:100%;height:auto;border-radius:var(--mt-radius);display:block}
.mt-article__body figure{margin:1.8em 0}
.mt-article__body figcaption{margin-top:.6em;font-size:.86rem;color:var(--mt-muted);text-align:center}
.mt-article__body hr{border:0;border-top:1px solid var(--mt-line);margin:2.5em 0}
.mt-article__body code{background:var(--mt-bg-soft);padding:.15em .4em;border-radius:5px;font-size:.9em}
.mt-article__body pre{background:var(--mt-navy);color:#e3e7fb;padding:1.2em;border-radius:var(--mt-radius-sm);overflow-x:auto;margin-bottom:1.3em}
.mt-article__body pre code{background:none;padding:0;color:inherit}
.mt-article__body table{width:100%;border-collapse:collapse;margin-bottom:1.5em;font-size:.95em}
.mt-article__body th,.mt-article__body td{padding:.6em .8em;border-bottom:1px solid var(--mt-line);text-align:left}

.mt-authorbox{
  display:flex;gap:1.1rem;align-items:flex-start;max-width:42rem;margin:clamp(2.5rem,5vw,3.5rem) auto 0;
  padding-top:clamp(2rem,4vw,2.75rem);border-top:1px solid var(--mt-line);
}
.mt-authorbox__avatar{border-radius:50%;flex:none}
.mt-authorbox__label{display:block;font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:var(--mt-muted);margin-bottom:.2rem}
.mt-lean .mt-authorbox__name{display:block;font-weight:750;font-size:1.05rem;color:var(--mt-ink);text-decoration:none;margin-bottom:.35rem}
.mt-lean .mt-authorbox__name:hover{color:var(--mt-blue)}
.mt-authorbox p{color:var(--mt-body);font-size:.95rem;margin-bottom:0}
.mt-authorbox--big{max-width:none;border-top:0;padding-top:0;margin-top:0}
.mt-authorbox--big .mt-authorbox__avatar{width:96px;height:96px}

/* ---------- 23. Blog "News": paginazione ---------- */
.mt-pagination{margin-top:clamp(2rem,4vw,3rem);display:flex;justify-content:center}
.mt-pagination ul{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0}
.mt-pagination a.page-numbers,.mt-pagination span.page-numbers{
  display:inline-flex;align-items:center;gap:.35rem;min-width:2.6rem;height:2.6rem;padding:0 .9rem;
  border-radius:var(--mt-radius-sm);border:1px solid var(--mt-line);font-weight:650;font-size:.92rem;
  color:var(--mt-ink);text-decoration:none;justify-content:center;
}
.mt-pagination a.page-numbers:hover{border-color:var(--mt-blue);color:var(--mt-blue)}
.mt-pagination span.page-numbers.current{background:var(--mt-navy);border-color:var(--mt-navy);color:#fff}
.mt-pagination svg{width:.9rem;height:.9rem}
.mt-pagination .prev span,.mt-pagination .next span{display:none}
@media (min-width:480px){.mt-pagination .prev span,.mt-pagination .next span{display:inline}}

@media print{.mt-top,.mt-side,.mt-header,.mt-topbar{display:none !important}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .mt-lean .mt-btn:hover,.mt-card--link:hover,.mt-contact:hover{transform:none}
  .mt-cards--pro .mt-card:hover .mt-card__icon{transform:none}
  .mt-top{transition:opacity .01ms}
}

/* ---------- 24. Mappa del sito ---------- */
.mt-sitemap{display:grid;gap:clamp(1.75rem,4vw,2.5rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
.mt-sitemap__group h2{display:flex;align-items:center;gap:.55rem;font-size:1.05rem;margin:0 0 1rem;color:var(--mt-ink)}
.mt-sitemap__group svg{width:1.25rem;height:1.25rem;color:var(--mt-yellow-dark);flex:none}
.mt-sitemap__group ul{list-style:none;margin:0;padding:0}
.mt-sitemap__group li{margin-bottom:.6rem;padding-bottom:.6rem;border-bottom:1px solid var(--mt-line)}
.mt-sitemap__group li:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.mt-lean .mt-sitemap__group a{color:var(--mt-body);text-decoration:none;font-size:.95rem}
.mt-lean .mt-sitemap__group a:hover{color:var(--mt-blue);text-decoration:underline}

/* ---------- 25. Grafici (barre + anello) — solo HTML/SVG inline, zero librerie ---------- */
.mt-barchart{display:grid;gap:1.75rem;max-width:40rem;margin-inline:auto}
.mt-bar__head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.45rem}
.mt-bar__label{font-weight:700;color:var(--mt-ink);font-size:1rem}
.mt-bar__value{font-weight:800;color:var(--mt-blue);font-size:1.15rem;font-variant-numeric:tabular-nums}
.mt-bar--accent .mt-bar__value{color:var(--mt-yellow-dark)}
.mt-bar__track{height:1rem;border-radius:999px;background:#fff;border:1px solid var(--mt-line);overflow:hidden}
.mt-bar__fill{height:100%;border-radius:999px;background:var(--mt-blue);width:0;animation:mtbarfill 1.1s ease .1s forwards}
.mt-bar--accent .mt-bar__fill{background:var(--mt-yellow-dark)}
@keyframes mtbarfill{from{width:0}}
.mt-bar__note{margin:.4rem 0 0;font-size:.87rem;color:var(--mt-muted)}
.mt-ringwrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;text-align:center;padding-inline:1rem}
.mt-ring{width:min(210px,80%);height:auto;flex:none}
.mt-ring__track{fill:none;stroke:var(--mt-line);stroke-width:14}
.mt-ring__fill{fill:none;stroke:var(--mt-navy);stroke-width:14;stroke-linecap:round;transform:rotate(-90deg);transform-origin:50% 50%}
.mt-ring__num{font-size:2.1rem;font-weight:800;fill:var(--mt-ink);font-family:var(--mt-font)}
.mt-ring__label{max-width:15.5rem;color:var(--mt-muted);font-size:.92rem;margin:0}
/* Fonte del grafico: nel cerchio eredita lo spazio dal gap del flex (niente margine
   proprio, altrimenti si sommerebbe), nelle barre serve un margine esplicito perche'
   li' e' un semplice paragrafo dopo un div, non un figlio del flex. */
.mt-chart__source{font-size:.82rem;color:var(--mt-muted);margin:0}
.mt-chart__source a{color:var(--mt-muted)}
.mt-barchart + .mt-chart__source{margin-top:.85rem}
@media (max-width:380px){.mt-ring{width:170px}}

/* ---------- 26. Card premium (variante "pro" di .mt-card) ----------
   Attivata solo passando 'pro'=>true a mt_cards(): aggiunge la classe
   .mt-cards--pro alla section, il markup e .mt-card restano identici.
   Così le altre pagine (Chi Siamo, Computer, Backup, ecc.) che usano
   mt_cards() senza 'pro' non cambiano di una virgola.
   Nota tecnica: il layout icona+testo affiancato (sotto) usa un media
   query sullo stesso breakpoint di .mt-grid--duo, NON una @container query
   sulla card stessa — testato dal vivo: i browser ignorano una @container
   query che tenta di cambiare il "display" dello stesso elemento che fa da
   container (dipendenza circolare bloccata dal motore di rendering). */
.mt-cards--pro .mt-card{
  position:relative;overflow:hidden;
  border-radius:calc(var(--mt-radius) + 4px);
  background:linear-gradient(175deg,#fff 55%,var(--mt-bg-soft));
  transition:transform .3s cubic-bezier(.22,.7,.3,1),box-shadow .3s ease,border-color .3s ease;
}
/* barra accento animata in cima, non un bordo colorato fisso: si "accende"
   solo all'hover, così a riposo le card restano pulite e coerenti. */
.mt-cards--pro .mt-card::before{
  content:"";position:absolute;inset:0 0 auto 0;height:3px;
  background:linear-gradient(90deg,var(--mt-blue),var(--mt-yellow));
  transform:scaleX(0);transform-origin:0 50%;transition:transform .4s ease;
}
.mt-cards--pro .mt-card:hover::before,
.mt-cards--pro .mt-card:focus-visible::before{transform:scaleX(1)}
/* il "lift" (sollevamento) resta solo sulle card cliccabili, per non far
   sembrare interattiva una card che non lo è. */
.mt-cards--pro .mt-card--link:hover,
.mt-cards--pro .mt-card--link:focus-visible{
  transform:translateY(-6px);box-shadow:var(--mt-shadow-lg);border-color:transparent;
}
.mt-cards--pro .mt-card__icon{
  width:3.4rem;height:3.4rem;border-radius:13px;
  background:linear-gradient(150deg,rgba(41,70,243,.14),rgba(41,70,243,.05));
  box-shadow:inset 0 0 0 1px rgba(41,70,243,.14);
  transition:transform .35s ease,background .35s ease,color .35s ease;
}
/* l'icona reagisce all'hover su TUTTE le card, anche quelle non cliccabili:
   è il segnale premium principale, senza dover simulare un link che non c'è. */
.mt-cards--pro .mt-card:hover .mt-card__icon{
  transform:scale(1.08) rotate(-4deg);
  background:linear-gradient(150deg,var(--mt-blue),var(--mt-blue-dark));
  color:#fff;
}
/* Layout icona+testo affiancato SOLO nella griglia --duo (card larghe, es.
   "Trasparenza"): stesso breakpoint di .mt-grid--duo (sezione 8), così le
   card diventano a 2 colonne e larghe esattamente quando questo layout ha
   senso. Nella griglia normale (3-4 colonne, card più strette) restano
   impilate icona-sopra, invariate. */
@media (min-width:820px){
  .mt-cards--pro .mt-grid--duo .mt-card{
    display:grid;grid-template-columns:auto 1fr;grid-template-rows:repeat(3,auto);
    column-gap:1.4rem;align-items:start;
  }
  .mt-cards--pro .mt-grid--duo .mt-card__icon{grid-column:1;grid-row:1/-1;margin-bottom:0}
  .mt-cards--pro .mt-grid--duo .mt-card h3{grid-column:2;grid-row:1;margin-bottom:.4rem}
  .mt-cards--pro .mt-grid--duo .mt-card p{grid-column:2;grid-row:2}
  .mt-cards--pro .mt-grid--duo .mt-card__more{grid-column:2;grid-row:3;margin-top:.65rem;padding-top:0}
}

/* =====================================================================
   FASE 2 (2026-10-03) - Menu con descrizioni, sezione Prodotti, Syncrocheck
   Autore: Gennaro Canfora
   ===================================================================== */

/* ---------- Sottomenu "premium": icona + titolo + descrizione ---------- */
/* Il pannello bianco resta il ::after gia' esistente (niente zone morte
   per il mouse): qui si azzerano gli sfondi dei singoli <li>. */
.mt-nav ul.mt-nav__sub{padding:.75rem .45rem .45rem;min-width:19.5rem}
.mt-nav__sub > li,
.mt-nav__sub > li:first-child,
.mt-nav__sub > li:last-child{background:transparent;border-radius:0;overflow:visible}
.mt-nav__sub li+li{border-top:0}
.mt-nav__sub a{align-items:flex-start;gap:.75rem;padding:.6rem .65rem;border-radius:10px;white-space:normal}
.mt-nav__ico{flex:none;width:2.25rem;height:2.25rem;border-radius:10px;display:grid;place-items:center;background:rgba(41,70,243,.08);color:var(--mt-blue);transition:background-color .18s ease,color .18s ease}
.mt-nav__ico svg{width:1.1rem;height:1.1rem}
.mt-nav__txt{display:block;min-width:0}
.mt-nav__txt b{display:block;font-weight:700;color:var(--mt-ink);font-size:.93rem;line-height:1.3}
.mt-nav__txt small{display:block;font-weight:500;color:var(--mt-muted);font-size:.8rem;line-height:1.4;margin-top:.12rem}
.mt-nav__sub a:hover .mt-nav__ico{background:var(--mt-blue);color:#fff}
.mt-nav__sub a:hover .mt-nav__txt b{color:var(--mt-blue)}

/* Sottomenu largo con card di anteprima (Prodotti) */
.mt-nav ul.mt-nav__sub--wide{min-width:35rem}
.mt-nav__toggle[aria-expanded="true"]+.mt-nav__sub--wide{display:grid;grid-template-columns:1fr 15rem;gap:.35rem;align-items:start}
.mt-nav__feature{grid-column:2;grid-row:1 / span 6}
.mt-nav__sub .mt-nav__feature a{flex-direction:column;gap:.6rem;background:var(--mt-navy);border-radius:12px;padding:.65rem}
.mt-nav__feature img{display:block;width:100%;height:auto;border-radius:7px}
.mt-nav__feature .mt-nav__txt b{color:#fff}
.mt-nav__feature .mt-nav__txt small{color:#aab4d8}
.mt-nav__sub .mt-nav__feature a:hover{background:var(--mt-navy-2)}
.mt-nav__sub .mt-nav__feature a:hover .mt-nav__txt b{color:var(--mt-yellow)}

@media (max-width:1040px){
  .mt-nav ul.mt-nav__sub,.mt-nav ul.mt-nav__sub--wide{padding:.25rem;min-width:0}
  .mt-nav__toggle[aria-expanded="true"]+.mt-nav__sub--wide{display:block}
  .mt-nav .mt-nav__sub a{justify-content:flex-start;padding:.6rem .55rem}
  .mt-nav__ico{width:2rem;height:2rem;background:rgba(255,255,255,.08);color:var(--mt-yellow)}
  .mt-nav__txt b{color:#fff}
  .mt-nav__txt small{color:#aab4d8}
  .mt-nav__sub a:hover .mt-nav__txt b{color:#fff}
  .mt-nav__feature{display:none}
}

/* ---------- Badge (es. "Beta aperta") ---------- */
.mt-badge{display:inline-flex;align-items:center;gap:.5rem;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mt-blue);margin-bottom:.9rem}
.mt-badge::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--mt-green);box-shadow:0 0 0 4px rgba(18,161,80,.22)}
.mt-prodhero .mt-badge,.mt-prod .mt-badge{color:var(--mt-yellow)}

/* ---------- Screenshot in cornice browser ---------- */
.mt-shot{margin:0;border-radius:14px;overflow:hidden;background:#fff;border:1px solid rgba(22,26,61,.12);
  box-shadow:0 2px 4px rgba(20,24,40,.06),0 30px 60px -28px rgba(20,24,40,.45)}
.mt-shot__bar{display:flex;align-items:center;gap:.4rem;padding:.55rem .8rem;background:#eef1f7;border-bottom:1px solid rgba(22,26,61,.08)}
.mt-shot__bar i{width:.6rem;height:.6rem;border-radius:50%;flex:none}
.mt-shot__bar i:nth-child(1){background:#ff5f57}
.mt-shot__bar i:nth-child(2){background:#febc2e}
.mt-shot__bar i:nth-child(3){background:#28c840}
.mt-shot__bar span{margin-left:.6rem;flex:0 1 18rem;min-width:0;font-size:.72rem;color:var(--mt-muted);background:#fff;border-radius:6px;padding:.2rem .6rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-shot img{display:block;width:100%;height:auto}

/* ---------- Hero prodotto (Syncrocheck) ---------- */
/* Griglia sottile in dissolvenza: elemento firma "tecnico" del sito. */
.mt-prodhero{position:relative;overflow:hidden;color:#c9d1ec;padding-block:clamp(3.25rem,8vw,5.5rem) 0;
  background:radial-gradient(60rem 26rem at 15% -10%,rgba(41,70,243,.45),transparent 60%),
             radial-gradient(40rem 22rem at 95% 10%,rgba(255,226,31,.10),transparent 60%),var(--mt-navy)}
.mt-prodhero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:radial-gradient(70% 60% at 50% 0%,#000,transparent 75%);mask-image:radial-gradient(70% 60% at 50% 0%,#000,transparent 75%)}
.mt-prodhero .mt-wrap{position:relative}
.mt-prodhero__in{max-width:48rem;margin:0 auto;text-align:center}
.mt-prodhero h1{color:#fff;font-size:clamp(2.6rem,7vw,4.4rem);letter-spacing:-.035em;line-height:1.02;margin:0 0 .5rem}
.mt-prodhero__tag{font-size:clamp(1.15rem,2.6vw,1.55rem);color:#fff;font-weight:700;line-height:1.3;margin:0 0 1rem}
.mt-prodhero__tag em{font-style:normal;color:var(--mt-yellow)}
.mt-prodhero__lead{font-size:1.06rem;color:#b9c2e2;margin:0 auto 1.75rem;max-width:40rem}
.mt-prodhero .mt-btns{justify-content:center}
.mt-prodhero__shot{margin:clamp(2.25rem,5vw,3.5rem) auto 0;max-width:68rem}
.mt-prodhero__shot .mt-shot{border-radius:14px 14px 0 0;border-bottom:0;border-color:rgba(255,255,255,.16)}

/* ---------- Intro a due colonne ---------- */
.mt-intro2{display:grid;gap:1rem 3rem}
@media (min-width:900px){.mt-intro2{grid-template-columns:.9fr 1.1fr;align-items:start}}
.mt-intro2 h2{margin:0}
.mt-intro2 p{color:var(--mt-body);font-size:1.07rem;margin:0 0 1rem}
.mt-intro2 strong{color:var(--mt-ink)}

/* ---------- Moduli alternati testo + screenshot ---------- */
.mt-feat{display:grid;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.mt-feat+.mt-feat{margin-top:clamp(3.25rem,8vw,5.5rem)}
@media (min-width:900px){
  .mt-feat{grid-template-columns:.85fr 1.15fr}
  .mt-feat--flip{grid-template-columns:1.15fr .85fr}
  .mt-feat--flip .mt-feat__txt{order:2}
}
.mt-feat__num{display:block;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mt-blue);margin-bottom:.6rem}
.mt-feat h3{font-size:clamp(1.45rem,3vw,2rem);letter-spacing:-.02em;line-height:1.15;margin:0 0 .85rem}
.mt-feat p{color:var(--mt-body);margin:0 0 1.1rem}
.mt-feat .mt-feat__why{margin:0;border-left:3px solid var(--mt-yellow);background:#fff;border-radius:0 10px 10px 0;padding:.85rem 1rem;font-size:.95rem}
.mt-feat__why b{display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mt-ink);margin-bottom:.25rem}

/* ---------- Scheda tecnica ---------- */
.mt-specs{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))} /* 6 voci: 3x2 su desktop */
.mt-spec{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);border-radius:var(--mt-radius);padding:1.2rem 1.25rem}
.mt-spec code{display:inline-block;font:700 .82rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--mt-yellow);background:rgba(255,226,31,.1);border-radius:6px;padding:.2rem .5rem;margin-bottom:.6rem}
.mt-spec p{margin:0;color:#b8c1e0;font-size:.95rem}

/* ---------- Fascia prodotto in evidenza ---------- */
.mt-prod{position:relative;overflow:hidden;border-radius:calc(var(--mt-radius) * 1.6);color:#c9d1ec;padding:clamp(1.5rem,4vw,3rem);
  background:radial-gradient(40rem 20rem at 0% 0%,rgba(41,70,243,.5),transparent 60%),linear-gradient(160deg,var(--mt-navy-2),var(--mt-navy));
  display:grid;gap:2rem;align-items:center}
@media (min-width:960px){.mt-prod{grid-template-columns:1fr 1.15fr}}
.mt-prod h2{color:#fff;font-size:clamp(2rem,4vw,2.8rem);letter-spacing:-.03em;margin:0 0 .35rem}
.mt-prod .mt-prod__tag{color:#fff;font-weight:700;font-size:1.12rem;margin:0 0 .9rem}
.mt-prod p{color:#b9c2e2}
.mt-prod ul{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.45rem}
.mt-prod li{display:flex;gap:.55rem;align-items:flex-start;color:#dfe4f5}
.mt-prod li svg{width:1.1em;height:1.1em;color:var(--mt-yellow);flex:none;margin-top:.2em}
.mt-prod .mt-shot{border-color:rgba(255,255,255,.16)}
@media (min-width:960px) and (prefers-reduced-motion:no-preference){
  .mt-prod .mt-shot{transform:perspective(1600px) rotateY(-7deg);transform-origin:left center;transition:transform .5s ease}
  .mt-prod:hover .mt-shot{transform:none}
}

/* ---------- Card prodotto compatta ---------- */
.mt-prodmini{display:grid;gap:1.25rem;align-items:center;background:#fff;border:1px solid var(--mt-line);border-radius:var(--mt-radius);
  padding:1.1rem;box-shadow:var(--mt-shadow);text-decoration:none;color:inherit;transition:box-shadow .2s ease,transform .2s ease}
.mt-prodmini:hover{box-shadow:var(--mt-shadow-lg);transform:translateY(-2px)}
@media (min-width:760px){.mt-prodmini{grid-template-columns:20rem 1fr;padding:1.4rem}}
.mt-prodmini .mt-shot{box-shadow:none}
.mt-prodmini h3{margin:0 0 .4rem}
.mt-prodmini p{color:var(--mt-body);margin:0 0 .8rem}
.mt-prodmini__more{font-weight:750;color:var(--mt-blue);display:inline-flex;gap:.4rem;align-items:center}
.mt-prodmini__more svg{width:1em;height:1em}
@media (prefers-reduced-motion:reduce){.mt-prodmini,.mt-prodmini:hover{transition:none;transform:none}}
/* Eyebrow leggibile sulle sezioni scure (il blu su navy non aveva contrasto). */
.mt-sec--dark .mt-eyebrow{color:var(--mt-yellow)}

/* =====================================================================
   FASE 4 (2026-10-03) - Blocchi premium (inc/mt-blocks-pro.php)
   Autore: Gennaro Canfora
   ===================================================================== */

/* ---------- Bento ---------- */
.mt-bento{display:grid;gap:1rem;grid-template-columns:1fr}
@media (min-width:720px){.mt-bento{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){
  .mt-bento{grid-template-columns:repeat(3,1fr);grid-auto-flow:dense}
  .mt-tile--lg{grid-column:span 2;grid-row:span 2}
  .mt-tile--wide{grid-column:span 2}
}
@media (min-width:720px) and (max-width:1023px){.mt-tile--lg,.mt-tile--wide{grid-column:span 2}}
.mt-tile{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.35rem;border-radius:calc(var(--mt-radius) * 1.3);
  padding:clamp(1.3rem,2.6vw,1.9rem);border:1px solid var(--mt-line);background:#fff;color:var(--mt-body);text-decoration:none;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.mt-tile h3{margin:0;font-size:1.2rem;letter-spacing:-.01em;color:var(--mt-ink)}
.mt-tile p{margin:.15rem 0 0;font-size:.97rem}
.mt-tile--lg h3{font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.02em;max-width:22ch}
.mt-tile--lg p{font-size:1.03rem;max-width:46ch}
.mt-tile__icon{width:2.9rem;height:2.9rem;border-radius:12px;display:grid;place-items:center;margin-bottom:.6rem;
  background:linear-gradient(135deg,var(--mt-blue),#6b7cff);color:#fff;box-shadow:0 10px 20px -10px rgba(41,70,243,.7)}
.mt-tile__icon svg{width:1.4rem;height:1.4rem}
.mt-tile__kicker{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mt-blue)}
.mt-tile__more{margin-top:auto;padding-top:1rem;display:inline-flex;align-items:center;gap:.4rem;font-weight:750;font-size:.93rem;color:var(--mt-blue);text-decoration:none}
.mt-tile__more svg,.mt-tile__links svg{width:1em;height:1em;transition:transform .18s ease}
.mt-tile--link:hover,.mt-tile--link:focus-visible{transform:translateY(-4px);box-shadow:var(--mt-shadow-lg);border-color:transparent}
.mt-tile--link:hover .mt-tile__more svg,.mt-tile__more:hover svg{transform:translateX(3px)}
.mt-tile__links{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.mt-tile__links a{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .85rem;border-radius:999px;font-size:.88rem;font-weight:650;text-decoration:none;
  background:var(--mt-bg-soft);color:var(--mt-ink);border:1px solid var(--mt-line);transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.mt-tile__links a:hover{background:var(--mt-blue);border-color:var(--mt-blue);color:#fff}
.mt-tile__links a:hover svg{transform:translateX(2px)}
/* Toni */
.mt-tile--dark{background:radial-gradient(34rem 18rem at 100% 0%,rgba(41,70,243,.45),transparent 60%),linear-gradient(160deg,var(--mt-navy-2),var(--mt-navy));
  color:#b9c2e2;border-color:transparent}
.mt-tile--dark h3{color:#fff}
.mt-tile--dark .mt-tile__kicker,.mt-tile--dark .mt-tile__more{color:var(--mt-yellow)}
.mt-tile--dark .mt-tile__icon{background:rgba(255,226,31,.14);color:var(--mt-yellow);box-shadow:none}
.mt-tile--dark .mt-tile__links a{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:#fff}
.mt-tile--dark .mt-tile__links a:hover{background:var(--mt-yellow);border-color:var(--mt-yellow);color:var(--mt-navy)}
.mt-tile--dark::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:36px 36px;
  -webkit-mask-image:linear-gradient(200deg,#000,transparent 60%);mask-image:linear-gradient(200deg,#000,transparent 60%)}
.mt-tile--dark > *{position:relative;z-index:1}
.mt-tile--accent{background:var(--mt-yellow);border-color:transparent;color:#3b3a24}
.mt-tile--accent h3{color:var(--mt-navy)}
.mt-tile--accent .mt-tile__icon{background:var(--mt-navy);color:var(--mt-yellow);box-shadow:none}
.mt-tile--accent .mt-tile__kicker,.mt-tile--accent .mt-tile__more{color:var(--mt-navy)}
.mt-sec--soft .mt-tile--light{box-shadow:var(--mt-shadow)}

/* ---------- Mockup d'interfaccia (HTML/CSS) ---------- */
.mt-mock{margin:0;border-radius:14px;overflow:hidden;background:#fff;border:1px solid rgba(22,26,61,.12);
  box-shadow:0 2px 4px rgba(20,24,40,.06),0 34px 70px -30px rgba(20,24,40,.5);font-size:.78rem;color:var(--mt-ink);position:relative}
.mt-mock__body{position:relative;padding:.9rem;background:#f7f8fc}
.mt-mock figcaption{font-size:.72rem;color:var(--mt-muted);padding:.5rem .9rem;border-top:1px solid var(--mt-line);background:#fff}
.mt-mock__toast{position:absolute;right:.9rem;bottom:.9rem;display:flex;gap:.45rem;align-items:center;background:var(--mt-navy);color:#fff;
  font-weight:650;font-size:.72rem;padding:.5rem .7rem;border-radius:10px;box-shadow:0 14px 28px -12px rgba(22,26,61,.7);max-width:70%}
.mt-mock__toast svg{width:1em;height:1em;color:var(--mt-yellow);flex:none}
@media (prefers-reduced-motion:no-preference){
  .mt-mock__toast{animation:mt-toast 4.5s ease-in-out infinite}
  @keyframes mt-toast{0%,12%{opacity:0;transform:translateY(8px)}22%,82%{opacity:1;transform:none}100%{opacity:0;transform:translateY(8px)}}
}
.mt-hero__media--mock .mt-mock{box-shadow:0 30px 60px -25px rgba(0,0,0,.65);border-color:rgba(255,255,255,.14)}
/* Agenda */
.mt-agenda__top{display:flex;align-items:center;gap:.6rem;margin-bottom:.7rem}
.mt-agenda__top b{font-size:.95rem}
.mt-agenda__top span{color:var(--mt-muted)}
.mt-agenda__top em{margin-left:auto;font-style:normal;font-weight:700;background:var(--mt-blue);color:#fff;border-radius:8px;padding:.3rem .6rem}
.mt-agenda{display:grid;grid-template-columns:3.1rem repeat(3,1fr);grid-template-rows:auto repeat(7,2.15rem);gap:.3rem;
  background:#fff;border:1px solid var(--mt-line);border-radius:10px;padding:.5rem;padding-bottom:2.8rem}
.mt-agenda__h{grid-row:1;font-weight:700;color:var(--mt-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .2rem}
.mt-agenda__t{grid-column:1;color:var(--mt-muted);font-size:.68rem;padding-top:.15rem;border-top:1px dashed var(--mt-line)}
.mt-appt{border-radius:8px;padding:.35rem .5rem;font-weight:650;font-size:.7rem;line-height:1.25;border-left:3px solid;overflow:hidden}
.mt-appt--a{background:#e7f8ef;border-color:#12a150;color:#0b6b35}
.mt-appt--b{background:#e9edff;border-color:var(--mt-blue);color:#1c33c4}
.mt-appt--c{background:#f3e9ff;border-color:#8b5cf6;color:#5b2bbf}
.mt-appt--d{background:#fff7cc;border-color:#e6c800;color:#6b5c00}
/* Archivio */
.mt-rec__top{display:flex;gap:.6rem;align-items:center;margin-bottom:.6rem;flex-wrap:wrap}
.mt-rec__search{flex:1;min-width:10rem;display:flex;gap:.4rem;align-items:center;background:#fff;border:1px solid var(--mt-line);border-radius:8px;padding:.45rem .6rem;color:var(--mt-muted)}
.mt-rec__search svg{width:1em;height:1em}
.mt-rec__role{font-weight:700;background:var(--mt-navy);color:#fff;border-radius:8px;padding:.45rem .6rem}
.mt-rec__chips{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.6rem}
.mt-rec__chips span{border:1px solid var(--mt-line);background:#fff;border-radius:999px;padding:.2rem .6rem;color:var(--mt-muted);font-weight:600}
.mt-rec__chips .is-on{background:var(--mt-blue);border-color:var(--mt-blue);color:#fff}
.mt-rec__table{background:#fff;border:1px solid var(--mt-line);border-radius:10px;overflow:hidden;margin-bottom:2.6rem}
.mt-rec__row{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:.5rem;padding:.55rem .7rem;border-top:1px solid var(--mt-line);align-items:center}
.mt-rec__row--h{border-top:0;background:#f2f4fa;font-weight:700;color:var(--mt-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}
.mt-rec__row span:first-child{font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-rec__st{justify-self:start;border-radius:999px;padding:.12rem .5rem;font-weight:700;font-size:.68rem}
.mt-rec__st--ok{background:#e7f8ef;color:#0b6b35}
.mt-rec__st--warn{background:#fff3d6;color:#8a5a00}
.mt-rec__st--off{background:#eef0f5;color:#5d6675}
/* Showcase: mockup leggermente inclinato su desktop */
@media (min-width:900px) and (prefers-reduced-motion:no-preference){
  .mt-showcase__media .mt-mock{transform:perspective(1600px) rotateY(-6deg) rotateX(2deg);transition:transform .5s ease}
  .mt-split--flip .mt-showcase__media .mt-mock{transform:perspective(1600px) rotateY(6deg) rotateX(2deg)}
  .mt-showcase:hover .mt-showcase__media .mt-mock{transform:none}
}

/* ---------- Timeline ---------- */
.mt-sec--glow.mt-sec--dark{background:radial-gradient(50rem 24rem at 10% 0%,rgba(41,70,243,.35),transparent 60%),var(--mt-navy)}
.mt-timeline{list-style:none;margin:0 auto;padding:0;max-width:56rem;position:relative;display:grid;gap:1rem}
.mt-timeline::before{content:"";position:absolute;left:4.6rem;top:.6rem;bottom:.6rem;width:2px;background:linear-gradient(var(--mt-yellow),rgba(255,226,31,.08))}
.mt-timeline li{display:grid;grid-template-columns:4rem 1fr;gap:1.6rem;align-items:start;margin:0;position:relative}
.mt-timeline li::before{content:"";position:absolute;left:4.32rem;top:.55rem;width:.75rem;height:.75rem;border-radius:50%;background:var(--mt-yellow);box-shadow:0 0 0 5px rgba(255,226,31,.18)}
.mt-timeline__time{font:800 1rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--mt-yellow);text-align:right;padding-top:.15rem}
.mt-timeline__card{border-radius:var(--mt-radius);padding:1.05rem 1.25rem;background:#fff;border:1px solid var(--mt-line);box-shadow:var(--mt-shadow)}
.mt-timeline__card h3{margin:0 0 .3rem;font-size:1.08rem}
.mt-timeline__card p{margin:0;color:var(--mt-body);font-size:.96rem}
.mt-sec--dark .mt-timeline__card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);box-shadow:none}
.mt-sec--dark .mt-timeline__card p{color:#b8c1e0}
@media (max-width:560px){
  .mt-timeline::before{left:.35rem}
  .mt-timeline li{grid-template-columns:1fr;gap:.35rem;padding-left:1.6rem}
  .mt-timeline li::before{left:0}
  .mt-timeline__time{text-align:left}
}

/* ---------- Prima / Dopo ---------- */
.mt-ba{display:grid;gap:1rem;align-items:stretch}
@media (min-width:880px){.mt-ba{grid-template-columns:1fr auto 1fr}}
.mt-ba__col{border-radius:calc(var(--mt-radius) * 1.3);padding:clamp(1.3rem,3vw,2rem)}
.mt-ba__col h3{margin:.3rem 0 1rem;font-size:1.25rem}
.mt-ba__col ul{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.mt-ba__col li{display:flex;gap:.65rem;align-items:flex-start;margin:0}
.mt-ba__col li svg{width:1.1rem;height:1.1rem;flex:none;margin-top:.2rem}
.mt-ba__tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.25rem .7rem}
.mt-ba__col--before{background:#fff;border:1px dashed #cfd5e2;color:var(--mt-muted)}
.mt-ba__col--before .mt-ba__tag{background:#eef0f5;color:#5d6675}
.mt-ba__col--before li svg{color:#d14343}
.mt-ba__col--before h3{color:#5d6675}
.mt-ba__col--after{background:linear-gradient(160deg,var(--mt-navy-2),var(--mt-navy));color:#dfe4f5;box-shadow:var(--mt-shadow-lg)}
.mt-ba__col--after h3{color:#fff}
.mt-ba__col--after .mt-ba__tag{background:var(--mt-yellow);color:var(--mt-navy)}
.mt-ba__col--after li svg{color:var(--mt-yellow)}
.mt-ba__arrow{display:grid;place-items:center;color:var(--mt-blue)}
.mt-ba__arrow svg{width:2rem;height:2rem}
@media (max-width:879px){.mt-ba__arrow svg{transform:rotate(90deg)}}

/* ---------- Manifesto ---------- */
.mt-manifesto{list-style:none;margin:0;padding:0;display:grid;gap:0}
@media (min-width:900px){.mt-manifesto{grid-template-columns:repeat(2,1fr);column-gap:3.5rem}}
.mt-manifesto li{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;padding:1.6rem 0;border-top:1px solid var(--mt-line);margin:0}
.mt-manifesto__n{font-size:clamp(2.2rem,4vw,3rem);font-weight:800;line-height:1;letter-spacing:-.04em;
  background:linear-gradient(135deg,var(--mt-blue),#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}
.mt-manifesto h3{margin:.2rem 0 .4rem;font-size:1.2rem}
.mt-manifesto p{margin:0;color:var(--mt-body)}
.mt-sec--dark .mt-manifesto li{border-color:rgba(255,255,255,.12)}
.mt-sec--dark .mt-manifesto__n{background:linear-gradient(135deg,var(--mt-yellow),#ffb21f);-webkit-background-clip:text;background-clip:text}
.mt-sec--dark .mt-manifesto p{color:#b8c1e0}

/* ---------- Da dove parti? ---------- */
.mt-path{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr))}
.mt-path__opt{display:flex;flex-direction:column;gap:.8rem;padding:1.35rem;border-radius:calc(var(--mt-radius) * 1.2);background:#fff;border:1px solid var(--mt-line);
  text-decoration:none;color:var(--mt-ink);box-shadow:var(--mt-shadow);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.mt-path__opt:hover,.mt-path__opt:focus-visible{transform:translateY(-4px);box-shadow:var(--mt-shadow-lg);border-color:var(--mt-blue)}
.mt-path__ico{width:2.6rem;height:2.6rem;border-radius:12px;display:grid;place-items:center;background:rgba(41,70,243,.08);color:var(--mt-blue)}
.mt-path__ico svg{width:1.3rem;height:1.3rem}
.mt-path__need{font-weight:750;font-size:1.06rem;line-height:1.35}
.mt-path__pick{margin-top:auto;padding-top:.8rem;border-top:1px dashed var(--mt-line);display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-weight:750;color:var(--mt-blue)}
.mt-path__pick small{flex-basis:100%;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--mt-muted)}
.mt-path__pick svg{width:1em;height:1em;transition:transform .18s ease}
.mt-path__opt:hover .mt-path__pick svg{transform:translateX(3px)}

/* ---------- Autovalutazione ---------- */
.mt-check{display:grid;gap:clamp(1.5rem,4vw,3rem);align-items:start}
@media (min-width:920px){.mt-check{grid-template-columns:.9fr 1.1fr}.mt-check__intro{position:sticky;top:7rem}}
.mt-check__intro h2{margin-bottom:.5rem}
.mt-check__intro > p{color:var(--mt-body)}
.mt-check__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:1.25rem 0 1.4rem;padding:1.1rem 1.25rem;border-radius:var(--mt-radius);
  background:var(--mt-bg-soft);border:1px solid var(--mt-line);transition:background-color .3s ease,border-color .3s ease}
.mt-check__score b{font-size:2.4rem;line-height:1;font-weight:800;color:var(--mt-ink)}
.mt-check__score > span{color:var(--mt-muted);font-weight:700}
.mt-check__score p{flex-basis:100%;margin:.35rem 0 0;color:var(--mt-body);font-weight:600}
.mt-check.is-go .mt-check__score{background:var(--mt-navy);border-color:var(--mt-navy)}
.mt-check.is-go .mt-check__score b{color:var(--mt-yellow)}
.mt-check.is-go .mt-check__score p,.mt-check.is-go .mt-check__score > span{color:#dfe4f5}
.mt-check__list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.mt-check__list li{margin:0}
.mt-check__list label{display:flex;gap:.85rem;align-items:center;padding:1rem 1.1rem;border-radius:12px;background:#fff;border:1px solid var(--mt-line);
  cursor:pointer;font-weight:600;color:var(--mt-ink);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.mt-check__list label:hover{border-color:var(--mt-blue)}
.mt-check__list input{position:absolute;opacity:0;width:1px;height:1px}
.mt-check__box{flex:none;width:1.5rem;height:1.5rem;border-radius:7px;border:2px solid #c3cad8;display:grid;place-items:center;color:transparent;transition:all .18s ease}
.mt-check__box svg{width:1rem;height:1rem}
.mt-check__list input:checked + .mt-check__box{background:var(--mt-blue);border-color:var(--mt-blue);color:#fff}
.mt-check__list label:has(input:checked){border-color:var(--mt-blue);box-shadow:0 0 0 3px rgba(41,70,243,.12)}
.mt-check__list input:focus-visible + .mt-check__box{outline:3px solid rgba(41,70,243,.35);outline-offset:2px}
.mt-path__text{color:var(--mt-body);font-size:.94rem;line-height:1.5}
/* Riquadro grande: link in basso e anelli concentrici decorativi (riempiono
   lo spazio verticale senza immagini da scaricare). */
.mt-tile--lg .mt-tile__links,.mt-tile--lg .mt-tile__more{margin-top:auto;padding-top:1.5rem}
.mt-tile--lg.mt-tile--dark::before{content:"";position:absolute;right:-5rem;bottom:-5rem;width:20rem;height:20rem;border-radius:50%;pointer-events:none;
  border:1px solid rgba(255,226,31,.28);box-shadow:0 0 0 2.6rem rgba(255,226,31,.05),0 0 0 5.2rem rgba(255,226,31,.035),0 0 0 7.8rem rgba(255,226,31,.02)}
@media (prefers-reduced-motion:no-preference){
  .mt-tile--lg.mt-tile--dark::before{transition:transform .6s ease}
  .mt-tile--lg.mt-tile--dark:hover::before{transform:scale(1.08)}
}
/* Timeline: colonna orari piu' larga (anche etichette testuali come "Alla fine")
   e pallino centrato nello spazio tra orario e card. */
@media (min-width:561px){
  .mt-timeline::before{left:6.94rem}
  .mt-timeline li{grid-template-columns:6rem 1fr;gap:2rem}
  .mt-timeline li::before{left:6.625rem}
  .mt-timeline__time{font-size:.95rem}
}
.mt-path__opt .mt-path__need{color:var(--mt-ink)} .mt-path__opt .mt-path__text{color:var(--mt-body)}
/* Riquadri interamente cliccabili: il testo non eredita il colore dei link. */
.mt-lean .mt-tile p{color:var(--mt-body)}
.mt-lean .mt-tile--dark p{color:#b9c2e2}
.mt-lean .mt-tile--accent p{color:#3b3a24}
.mt-lean .mt-prodmini p,.mt-lean .mt-prodmini h3{color:var(--mt-body)}
.mt-lean .mt-prodmini h3{color:var(--mt-ink)}
