/*
Theme Name: MA — Master in Product Management
Theme URI: https://masterproductmanagement.it
Author: Castro & Partners
Author URI: https://www.managementacademy.it
Description: Block theme FSE per il Master in Product Management di Management Academy (Castro & Partners). Sales page + pillar SEO ottimizzato per Google + GEO (ChatGPT, Claude, Perplexity).
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.9
Requires PHP: 8.1
License: Proprietary
License URI: https://www.managementacademy.it
Text Domain: ma-mpm
Tags: block-theme, full-site-editing, sales-page, product
*/

/* Phase 2 base: reset, skip-link, header/footer wrappers. Tokens in theme.json. */

*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100%; height: auto; display: block; }
.skip-link { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; z-index: 9999; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; width: auto; height: auto; overflow: visible; background: var(--wp--preset--color--ma-navy); color: #fff; padding: 12px 20px; border-radius: 4px; font-weight: 700; font-size: 14px; text-decoration: none; z-index: 9999; }
.ma-site-header { background: #fff; border-bottom: 1px solid var(--wp--preset--color--ma-line); }
.ma-site-header__inner { display: flex; gap: 32px; padding: 18px 32px; max-width: 1240px; margin: 0 auto; align-items: center; justify-content: space-between; }
.ma-site-footer { background: var(--wp--preset--color--ma-navy-ink); color: rgba(232,239,246,0.8); padding: 32px 0; }
.ma-site-footer__inner { max-width: 1240px; margin: 0 auto; padding: 0 32px; }
.ma-site-footer a { color: rgba(232,239,246,0.8); text-decoration: none; }

/* Phase 3 — Sales page + pillar CSS. Source: notes/phase-3-mock-reference.html.
   Tokens: theme.json palette (Phase 2). Allowed hex: #0F2A44, #fff, rgba(*). */

.ma-topbar { background: var(--wp--preset--color--ma-navy-ink); color: #fff; padding: 14px 28px; font-family: var(--wp--preset--font-family--montserrat); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; font-size: 13px; display: flex; gap: 32px; align-items: center; }
.ma-topbar__brand, .ma-topbar .wp-block-site-title, .ma-topbar .wp-block-site-title a { color: #fff; text-decoration: none; letter-spacing: 0.16em; font-family: var(--wp--preset--font-family--montserrat); font-weight: 800; font-size: 13px; text-transform: uppercase; }
.ma-topbar__nav { display: flex; gap: 24px; font-size: 11px; }
.ma-topbar__nav a, .ma-topbar__nav .wp-block-navigation-item__content { color: rgba(255,255,255,0.7); font-family: var(--wp--preset--font-family--montserrat); font-weight: 600; letter-spacing: 0.12em; font-size: 11px; text-transform: uppercase; text-decoration: none; }

.hero { background: var(--wp--preset--color--ma-navy); color: #fff; padding: 80px 28px 96px; position: relative; overflow: hidden; }
.hero::after { content: ""; position: absolute; right: -120px; top: -120px; width: 360px; height: 360px; border-radius: 50%; background: var(--wp--preset--color--mpm-accent); opacity: 0.18; filter: blur(8px); pointer-events: none; }
.hero-inner { max-width: 1100px; margin: 0 auto; position: relative; z-index: 1; }
.eyebrow { font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); margin: 0 0 18px; }
.hero__h1 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: clamp(38px, 5vw, 56px); line-height: 1.05; letter-spacing: -0.02em; margin: 0 0 20px; max-width: 760px; color: #fff; }
.hero__h1 em { font-style: normal; color: var(--wp--preset--color--mpm-accent); }
.hero .lede { font-size: 18px; line-height: 1.55; max-width: 620px; color: rgba(255,255,255,0.82); margin: 0 0 36px; }

.cta-row { display: flex; gap: 14px; flex-wrap: wrap; }
.btn-primary { background: var(--wp--preset--color--mpm-accent); color: #0F2A44; border-radius: 999px; padding: 16px 28px; font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; text-decoration: none; border: 0; cursor: pointer; display: inline-block; }
.btn-ghost { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,0.4); border-radius: 999px; padding: 14.5px 26.5px; font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; text-decoration: none; display: inline-block; }

.badge-strip { margin-top: 56px; display: flex; gap: 32px; align-items: center; color: rgba(255,255,255,0.5); font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; flex-wrap: wrap; }
.badge-strip b { color: var(--wp--preset--color--mpm-accent); }

.vp { padding: 80px 28px; background: var(--wp--preset--color--ma-bg); }
.vp-inner { max-width: 1100px; margin: 0 auto; }
.vp__h2, .vp h2 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: clamp(28px, 3.6vw, 36px); letter-spacing: -0.01em; margin: 0 0 8px; color: var(--wp--preset--color--ma-navy-ink); }
.vp .sub { color: var(--wp--preset--color--ma-ink-3); margin: 0 0 48px; font-size: 16px; }
.vp-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.vp-card { border: 1px solid var(--wp--preset--color--ma-line); border-radius: 12px; padding: 28px; background: var(--wp--preset--color--ma-bg); box-shadow: 0 1px 0 rgba(15,42,68,0.04); }
.vp-card .label { font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); margin-bottom: 10px; }
.vp-card .claim { font-family: var(--wp--preset--font-family--montserrat); font-weight: 800; font-size: 22px; line-height: 1.2; margin: 0 0 12px; color: var(--wp--preset--color--ma-navy-ink); }
.vp-card p { margin: 0; font-size: 14px; color: var(--wp--preset--color--ma-ink-3); line-height: 1.55; }

.modulo { padding: 64px 28px; background: var(--wp--preset--color--ma-bg-warm); }
.modulo-inner { max-width: 1100px; margin: 0 auto; }
.modulo h2 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 32px; letter-spacing: -0.01em; margin: 0 0 8px; color: var(--wp--preset--color--ma-navy-ink); }
.modulo-sub { color: var(--wp--preset--color--ma-ink-3); margin: 0 0 32px; font-size: 15px; max-width: 760px; }
.modulo-sub b { color: var(--wp--preset--color--ma-navy-ink); }
.module-card { background: var(--wp--preset--color--ma-bg); border: 1px solid var(--wp--preset--color--ma-line); border-left: 4px solid var(--wp--preset--color--mpm-accent); border-radius: 12px; padding: 24px 28px; display: grid; grid-template-columns: 60px 1fr auto; gap: 24px; align-items: center; margin-bottom: 14px; }
.module-card--bonus { border-left-color: var(--wp--preset--color--ma-navy-ink); }
.module-num { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 36px; color: var(--wp--preset--color--mpm-accent); line-height: 1; }
.module-card--bonus .module-num { color: var(--wp--preset--color--ma-navy-ink); }
.mtitle, .module-body .mtitle { font-family: var(--wp--preset--font-family--montserrat); font-weight: 800; font-size: 18px; margin: 0 0 4px; color: var(--wp--preset--color--ma-navy-ink); }
.mdesc, .module-body .mdesc { margin: 0; color: var(--wp--preset--color--ma-ink-3); font-size: 14px; line-height: 1.55; }
.module-meta { font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ma-ink-3); font-weight: 600; white-space: nowrap; }

.docenti { background: var(--wp--preset--color--ma-bg-warm); border-top: 1px solid var(--wp--preset--color--ma-line); border-bottom: 1px solid var(--wp--preset--color--ma-line); padding: 80px 28px; }
.docenti .vp-grid, .docenti__grid { grid-template-columns: repeat(2, 1fr); }
.docenti__claim { font-size: 18px; }

.ma-clients { background: var(--wp--preset--color--ma-bg); padding: 64px 28px; border-top: 1px solid var(--wp--preset--color--ma-line); }
.ma-clients__inner { max-width: 1100px; margin: 0 auto; }
.ma-clients__header { text-align: center; margin-bottom: 40px; }
.ma-clients__eyebrow { font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); margin-bottom: 12px; }
.ma-clients__h2 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 30px; letter-spacing: -0.01em; margin: 0; color: var(--wp--preset--color--ma-navy-ink); }
.ma-clients__sub { color: var(--wp--preset--color--ma-ink-3); margin: 12px auto 0; font-size: 15px; max-width: 680px; }
.ma-clients__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; align-items: stretch; border: 1px solid var(--wp--preset--color--ma-line); border-radius: 12px; overflow: hidden; background: var(--wp--preset--color--ma-line); }
.ma-clients__cell { padding: 36px 24px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; background: var(--wp--preset--color--ma-bg); }
.ma-clients__logo { margin: 0; display: flex; align-items: center; justify-content: center; min-height: 60px; }
.ma-clients__cell img { max-width: 100%; max-height: 60px; width: auto; height: auto; }
.ma-clients__cap { font-family: var(--wp--preset--font-family--montserrat); font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ma-ink-3); font-weight: 600; text-align: center; }
.ma-clients__more { background: var(--wp--preset--color--ma-bg-warm); }
.ma-clients__more-title { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 24px; color: var(--wp--preset--color--ma-navy-ink); margin: 0; }
.ma-clients__accred { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--wp--preset--color--ma-line); text-align: center; }
.ma-clients__accred-eyebrow { font-family: var(--wp--preset--font-family--montserrat); font-size: 10px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--ma-ink-3); margin-bottom: 18px; }
.ma-clients__accred-row { display: flex; gap: 32px; justify-content: center; flex-wrap: wrap; font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wp--preset--color--ma-navy-ink); font-weight: 700; }
.ma-clients__accred-sep { color: var(--wp--preset--color--ma-line); }

.home-faq { padding: 80px 28px; background: var(--wp--preset--color--ma-bg-warm); }
.home-faq__inner { max-width: 1100px; margin: 0 auto; }
.home-faq__h2 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 32px; letter-spacing: -0.01em; margin: 0 0 8px; color: var(--wp--preset--color--ma-navy-ink); }
.home-faq__lede { font-family: var(--wp--preset--font-family--inter); font-size: 16px; color: var(--wp--preset--color--ma-ink-3); line-height: 1.55; margin: 0 0 48px; max-width: 720px; }
.home-faq__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; }
.home-faq__q { font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 17px; line-height: 1.3; margin: 0 0 8px; color: var(--wp--preset--color--ma-navy-ink); }
.home-faq__a { font-family: var(--wp--preset--font-family--inter); font-size: 14px; color: var(--wp--preset--color--ma-ink-3); line-height: 1.55; margin: 0 0 24px; }
.home-faq__a a { color: var(--wp--preset--color--mpm-accent); text-decoration: underline; text-underline-offset: 3px; }
.home-faq__more { text-align: center; margin-top: 32px; }
.home-faq__cta-link { font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); text-decoration: underline; text-underline-offset: 4px; }

.ma-pillar-hero { background: var(--wp--preset--color--ma-navy); color: #fff; padding: 64px 28px; }
.ma-pillar-hero__inner { max-width: 1100px; margin: 0 auto; }
.ma-pillar-hero__title { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: clamp(32px, 4vw, 48px); line-height: 1.1; letter-spacing: -0.02em; color: #fff; margin: 0; }

.pillar-eyebrow { font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); margin: 0 0 18px; line-height: 1; }
.pillar-lede { font-family: var(--wp--preset--font-family--inter); font-weight: 400; font-size: 18px; line-height: 1.55; color: var(--wp--preset--color--ma-ink-3); max-width: 720px; margin: 0 0 32px; }

.ma-brochure-strip { background: var(--wp--preset--color--ma-navy-ink); color: #fff; padding: 48px 28px; }
.ma-brochure-strip__inner { max-width: 1200px; margin: 0 auto; display: flex; gap: 32px; align-items: center; flex-wrap: wrap; }
.ma-brochure-strip__title { font-family: var(--wp--preset--font-family--montserrat); font-weight: 800; font-size: 22px; line-height: 1.3; margin: 0; flex: 1; min-width: 260px; color: #fff; }
.ma-brochure-strip__title em { font-style: normal; color: var(--wp--preset--color--mpm-accent); }
.ma-brochure-strip__cta { background: var(--wp--preset--color--mpm-accent); color: #0F2A44; border-radius: 999px; padding: 16px 28px; font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; text-decoration: none; flex-shrink: 0; }

.blog { background: var(--wp--preset--color--ma-bg); padding: 80px 28px; border-top: 1px solid var(--wp--preset--color--ma-line); }
.blog-inner { max-width: 1100px; margin: 0 auto; }
.blog-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 40px; flex-wrap: wrap; }
.blog-eyebrow { font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); margin-bottom: 12px; }
.blog-h2 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 34px; letter-spacing: -0.01em; margin: 0; color: var(--wp--preset--color--ma-navy-ink); max-width: 620px; }
.blog-sub { color: var(--wp--preset--color--ma-ink-3); margin: 12px 0 0; font-size: 16px; max-width: 620px; }
.blog-more { font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ma-navy-ink); text-decoration: none; border-bottom: 2px solid var(--wp--preset--color--mpm-accent); padding-bottom: 4px; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.blog-card { border: 1px solid var(--wp--preset--color--ma-line); border-radius: 12px; background: var(--wp--preset--color--ma-bg); box-shadow: 0 1px 0 rgba(15,42,68,0.04); overflow: hidden; display: flex; flex-direction: column; }
.blog-card__header { background: linear-gradient(135deg, var(--wp--preset--color--ma-navy) 0%, var(--wp--preset--color--ma-navy-ink) 100%); padding: 28px 24px; min-height: 120px; display: flex; align-items: end; position: relative; }
.blog-card__badge { position: absolute; top: 16px; right: 16px; background: var(--wp--preset--color--mpm-accent); color: #0F2A44; font-family: var(--wp--preset--font-family--montserrat); font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; }
.blog-card__cat { font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); }
.blog-card__body { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.blog-card__h3 { font-family: var(--wp--preset--font-family--montserrat); font-weight: 800; font-size: 18px; line-height: 1.3; margin: 0 0 12px; color: var(--wp--preset--color--ma-navy-ink); }
.blog-card__excerpt { color: var(--wp--preset--color--ma-ink-3); font-size: 14px; line-height: 1.55; margin: 0 0 20px; flex: 1; }
.blog-card__link { font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--ma-navy-ink); text-decoration: none; border-bottom: 1px solid var(--wp--preset--color--mpm-accent); padding-bottom: 3px; align-self: start; }

.ma-footer { background: var(--wp--preset--color--ma-navy-ink); color: rgba(255,255,255,0.85); padding: 64px 28px 32px; font-family: var(--wp--preset--font-family--inter); }
.ma-footer__inner { max-width: 1200px; margin: 0 auto; }
.ma-footer__newsletter { border: 1px solid rgba(255,255,255,0.15); border-radius: 12px; padding: 32px; margin-bottom: 48px; background: rgba(255,255,255,0.03); display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; }
.ma-footer__newsletter-title { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 22px; color: #fff; margin-bottom: 6px; }
.ma-footer__newsletter-sub { font-size: 14px; color: rgba(255,255,255,0.65); line-height: 1.5; }
.ma-footer__newsletter-form { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.ma-footer__newsletter-form input[type="email"] { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.2); border-radius: 999px; padding: 12px 18px; color: #fff; font-family: var(--wp--preset--font-family--inter); font-size: 14px; min-width: 240px; outline: none; }
.ma-footer__newsletter-form button { background: var(--wp--preset--color--mpm-accent); color: #0F2A44; border: 0; border-radius: 999px; padding: 12px 22px; font-family: var(--wp--preset--font-family--montserrat); font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; cursor: pointer; }
.ma-footer__cols { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr; gap: 32px; padding-bottom: 40px; border-bottom: 1px solid rgba(255,255,255,0.12); }
.ma-footer__col-heading { font-family: var(--wp--preset--font-family--montserrat); font-weight: 700; font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--mpm-accent); margin-bottom: 16px; margin-top: 0; }
.ma-footer__brand { font-family: var(--wp--preset--font-family--montserrat); font-weight: 900; font-size: 18px; color: #fff; letter-spacing: 0.06em; margin-bottom: 6px; }
.ma-footer__brand-sub { font-family: var(--wp--preset--font-family--montserrat); font-size: 12px; color: rgba(255,255,255,0.55); text-transform: uppercase; letter-spacing: 0.14em; font-weight: 600; margin-bottom: 20px; }
.ma-footer__contact { font-style: normal; font-size: 13px; line-height: 1.7; color: rgba(255,255,255,0.78); }
.ma-footer__contact a { color: rgba(255,255,255,0.78); text-decoration: none; border-bottom: 1px dotted rgba(255,255,255,0.35); }
.ma-footer__contact-meta { color: rgba(255,255,255,0.5); font-size: 12px; display: inline-block; margin-top: 8px; }
.ma-footer__list { list-style: none; padding: 0; margin: 0; font-size: 13px; line-height: 2.1; }
.ma-footer__list a { color: rgba(255,255,255,0.75); text-decoration: none; }
.ma-footer__list li.is-strong a { color: #fff; font-weight: 600; }
.ma-footer__list--muted { font-size: 12px; line-height: 2; }
.ma-footer__list--muted a { color: rgba(255,255,255,0.6); }
.ma-footer__accreditations { padding: 32px 0; display: flex; gap: 20px; flex-wrap: wrap; justify-content: center; border-bottom: 1px solid rgba(255,255,255,0.12); font-family: var(--wp--preset--font-family--montserrat); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: rgba(255,255,255,0.55); font-weight: 600; text-align: center; }
.ma-footer__accreditations-sep { color: rgba(255,255,255,0.2); }
.ma-footer__copyright { padding-top: 24px; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: 12px; color: rgba(255,255,255,0.5); }

/* Phase 03.1 — stat strip (D7) + accreditations strip (D2) + teachers-companies grid (D3) */
.stat-strip {background:var(--wp--preset--color--ma-bg-warm);padding:48px 28px;border-top:1px solid var(--wp--preset--color--ma-line);border-bottom:1px solid var(--wp--preset--color--ma-line)}
.stat-strip__inner,.accreditations-strip__inner,.teachers-companies-grid__inner,.home-reviews__inner,.certificate-strip__inner {max-width:1100px;margin:0 auto}
.stat-strip__header {text-align:center;margin-bottom:32px}
.stat-strip__eyebrow,.accreditations-strip__eyebrow,.teachers-companies-grid__eyebrow,.home-reviews__eyebrow,.certificate-strip__eyebrow {font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--wp--preset--color--mpm-accent)}
.accreditations-strip__eyebrow,.teachers-companies-grid__eyebrow,.home-reviews__eyebrow,.certificate-strip__eyebrow {margin-bottom:12px}
.stat-strip__grid {display:grid;grid-template-columns:repeat(4,1fr);align-items:center}
.stat-strip__cell {padding:16px 24px;text-align:center}
.stat-strip__cell + .stat-strip__cell {border-left:1px solid var(--wp--preset--color--ma-line)}
.stat-strip__value {font-family:var(--wp--preset--font-family--montserrat);font-weight:900;font-size:44px;line-height:1;letter-spacing:-0.02em;color:var(--wp--preset--color--ma-navy-ink)}
.stat-strip__value--accent {color:var(--wp--preset--color--mpm-accent)}
.stat-strip__stars {color:var(--wp--preset--color--mpm-accent);font-size:24px;letter-spacing:2px;vertical-align:middle}
.stat-strip__label {font-family:var(--wp--preset--font-family--inter);font-weight:600;font-size:14px;line-height:1.35;color:var(--wp--preset--color--ma-ink-3);margin-top:8px}
.accreditations-strip {padding:64px 28px;background:var(--wp--preset--color--ma-bg)}
.home-reviews {padding:64px 28px;background:var(--wp--preset--color--ma-bg)}
.certificate-strip {padding:64px 28px;background:var(--wp--preset--color--ma-bg)}
.teachers-companies-grid {padding:64px 28px;background:var(--wp--preset--color--ma-bg);border-top:1px solid var(--wp--preset--color--ma-line)}
.accreditations-strip__header {text-align:center;margin-bottom:40px}
.teachers-companies-grid__header,.home-reviews__header,.certificate-strip__header {text-align:center;margin-bottom:32px}
.accreditations-strip__h2,.teachers-companies-grid__h2,.home-reviews__h2,.certificate-strip__h2 {font-family:var(--wp--preset--font-family--montserrat);font-weight:700;letter-spacing:-0.01em;margin:0;color:var(--wp--preset--color--ma-navy-ink)}
.accreditations-strip__h2,.home-reviews__h2 {font-size:30px}
.teachers-companies-grid__h2,.certificate-strip__h2 {font-size:28px}
.accreditations-strip__sub,.teachers-companies-grid__sub,.home-reviews__lede {color:var(--wp--preset--color--ma-ink-3);margin:12px auto 0}
.accreditations-strip__sub,.home-reviews__lede {font-size:15px;max-width:680px}
.teachers-companies-grid__sub {font-size:14px;max-width:600px}
.accreditations-strip__grid,.teachers-companies-grid__grid {display:grid;grid-template-columns:repeat(6,1fr);gap:1px;align-items:stretch;border:1px solid var(--wp--preset--color--ma-line);border-radius:12px;overflow:hidden;background:var(--wp--preset--color--ma-line);margin-top:24px}
.accreditations-strip__cell,.teachers-companies-grid__cell {display:flex;align-items:center;justify-content:center;background:var(--wp--preset--color--ma-bg)}
.accreditations-strip__cell {padding:32px 20px;flex-direction:column;gap:12px}
.teachers-companies-grid__cell {padding:28px 18px}
.accreditations-strip__logo,.teachers-companies-grid__logo {margin:0;display:flex;align-items:center;justify-content:center}
.accreditations-strip__cell img {max-width:100%;max-height:60px;width:auto;height:auto}
.teachers-companies-grid__cell img {max-width:100%;max-height:50px;width:auto;height:auto}
.accreditations-strip__name {font-family:var(--wp--preset--font-family--inter);font-weight:600;font-size:12px;color:var(--wp--preset--color--ma-navy-ink);text-align:center;line-height:1.3}
.accreditations-strip__cta {margin-top:32px}
.accreditations-strip__cta-link {font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--wp--preset--color--mpm-accent);text-decoration:underline;text-underline-offset:4px}
.teachers-companies-grid__footnote {font-family:var(--wp--preset--font-family--inter);font-size:12px;color:var(--wp--preset--color--ma-ink-3);text-align:center;margin-top:16px}
.home-reviews__grid {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
.home-reviews__card,.chi-siamo__alumni-card {background:var(--wp--preset--color--ma-bg-warm);border:1px solid var(--wp--preset--color--ma-line);border-radius:12px}
.home-reviews__card {padding:24px}
.home-reviews__quote,.chi-siamo__alumni-quote {font-family:var(--wp--preset--font-family--inter);font-size:16px;line-height:1.55;color:var(--wp--preset--color--ma-navy-ink);margin:0}
.home-reviews__quote::before {content:'"';color:var(--wp--preset--color--mpm-accent);font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:28px;line-height:0;vertical-align:-0.2em;margin-right:4px}
.home-reviews__meta {font-family:var(--wp--preset--font-family--inter);font-weight:600;font-size:14px;color:var(--wp--preset--color--ma-ink-3);margin-top:16px}
.home-trustpilot {max-width:1100px;margin:40px auto 0}
.home-trustpilot__caption {font-family:var(--wp--preset--font-family--inter);font-size:13px;color:var(--wp--preset--color--ma-ink-3);text-align:center;margin:0 0 16px}
.home-trustpilot .trustpilot-widget {min-height: 240px;width:100%}
.home-trustpilot__cta {text-align:center;margin-top:16px}
.home-trustpilot__cta-link {font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--wp--preset--color--mpm-accent);text-decoration:underline;text-underline-offset:4px}
.certificate-strip__card {max-width:720px;margin:0 auto;border:1px solid var(--wp--preset--color--ma-line);border-top:4px solid var(--wp--preset--color--mpm-accent);border-radius:12px;padding:32px;text-align:center}
.certificate-strip__figure {margin:0}
.certificate-strip__img,.chi-siamo__cert-figure img {max-width:100%;max-height:480px;width:auto;height:auto}
.certificate-strip__img {display:block;margin:0 auto}
.certificate-strip__caption {font-family:var(--wp--preset--font-family--inter);font-size:16px;line-height:1.55;color:var(--wp--preset--color--ma-ink-3);max-width:600px;margin:24px auto 0}
/* Phase 03.1 Plan 04 — /chi-siamo/ (D10) */
.chi-siamo-section--alt {background:var(--wp--preset--color--ma-bg-warm);padding:48px 28px}
.chi-siamo__num-badge {display:inline-block;width:32px;height:32px;line-height:32px;text-align:center;background:var(--wp--preset--color--mpm-accent);color:#FFFFFF;font-family:var(--wp--preset--font-family--montserrat);font-weight:900;font-size:14px;border-radius:4px;margin-right:12px;vertical-align:middle}
.chi-siamo__cert-figure {margin:32px auto;max-width:720px;text-align:center;border:1px solid var(--wp--preset--color--ma-line);border-top:4px solid var(--wp--preset--color--mpm-accent);border-radius:12px;padding:24px}
.chi-siamo__cert-figure figcaption {font-family:var(--wp--preset--font-family--inter);font-size:14px;color:var(--wp--preset--color--ma-ink-3);margin-top:16px;line-height:1.5}
.chi-siamo__alumni-card {padding:20px 24px;margin:16px 0}
.chi-siamo__alumni-meta {font-family:var(--wp--preset--font-family--inter);font-size:14px;color:var(--wp--preset--color--ma-ink-3);margin:0 0 8px}
.chi-siamo__alumni-meta strong {color:var(--wp--preset--color--ma-navy-ink);font-weight:600}
.chi-siamo__contact-dl {display:grid;grid-template-columns:200px 1fr;gap:12px 24px;max-width:720px;margin:24px auto;font-family:var(--wp--preset--font-family--inter)}
.chi-siamo__contact-dl dt {font-weight:600;font-size:14px;color:var(--wp--preset--color--ma-ink-3)}
.chi-siamo__contact-dl dd {font-size:15px;color:var(--wp--preset--color--ma-navy-ink);margin:0}
.chi-siamo__contact-dl a {color:var(--wp--preset--color--ma-navy-soft);text-decoration:underline;text-underline-offset:4px}

@media (max-width: 720px) {
  .hero { padding: 60px 20px 72px; }
  .hero__h1 { font-size: 38px; }
  .badge-strip { gap: 16px; margin-top: 36px; }
  .vp, .docenti, .home-faq, .blog { padding: 56px 20px; }
  .vp-grid, .docenti .vp-grid, .docenti__grid { grid-template-columns: 1fr; }
  .module-card { grid-template-columns: 1fr; gap: 12px; }
  .module-meta { white-space: normal; }
  .ma-topbar { flex-wrap: wrap; gap: 16px; }
  .ma-clients__grid { grid-template-columns: repeat(2, 1fr); }
  .home-faq__grid { grid-template-columns: 1fr; gap: 0; }
  .ma-footer__cols { grid-template-columns: 1fr; }
  .ma-footer__newsletter { grid-template-columns: 1fr; }
  .blog-grid { grid-template-columns: 1fr; }
  .ma-brochure-strip__inner { gap: 20px; }
  .stat-strip__grid { grid-template-columns: repeat(2, 1fr); gap: 32px; }
  .stat-strip__cell + .stat-strip__cell { border-left: none; }
  .stat-strip__value { font-size: 32px; }
  .accreditations-strip__grid { grid-template-columns: repeat(2, 1fr); }
  .teachers-companies-grid__grid { grid-template-columns: repeat(3, 1fr); }
  .stat-strip, .accreditations-strip, .teachers-companies-grid, .home-reviews, .certificate-strip { padding: 48px 20px; }
  .home-reviews__grid { grid-template-columns: 1fr; }
  .certificate-strip__card { padding: 24px; }
  .chi-siamo-section--alt { padding: 32px 20px; }
  .chi-siamo__num-badge { width: 28px; height: 28px; line-height: 28px; font-size: 12px; margin-right: 8px; }
  .chi-siamo__contact-dl { grid-template-columns: 1fr; gap: 4px 0; }
  .chi-siamo__contact-dl dt { margin-top: 12px; }
  /* Quick 260521-qd2 — Mobile (≤720px) estensione: header padding, brochure strip stack, footer/newsletter compatti, touch target ≥44px, anti-zoom iOS. */
  .ma-site-header__inner { padding: 14px 20px; gap: 16px; }
  .ma-brochure-strip { padding: 36px 20px; }
  .ma-brochure-strip__inner { flex-direction: column; align-items: stretch; gap: 16px; }
  .ma-brochure-strip__title { min-width: 0; font-size: 18px; }
  .ma-brochure-strip__cta { display: block; text-align: center; }
  .ma-footer { padding: 48px 20px 24px; }
  .ma-footer__newsletter { padding: 24px; }
  .ma-footer__newsletter-form input[type="email"] { min-width: 0; width: 100%; font-size: 16px; }
  .btn-primary, .btn-ghost, .ma-brochure-strip__cta, .lead-magnet__submit { min-height: 44px; }
  .blog-more, .blog-card__link, .home-faq__cta-link, .home-trustpilot__cta-link, .accreditations-strip__cta-link { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 0; }
  .lead-magnet__input { font-size: 16px; }
}

/* Phase 5 — ma/lead-magnet block. Local shorthands scope to .lead-magnet. */
.lead-magnet{--b:1px solid #E5DDD0;--ink:var(--wp--preset--color--ma-navy-ink);--mu:var(--wp--preset--color--ma-ink-3);--ac:var(--wp--preset--color--mpm-accent);--wa:var(--wp--preset--color--ma-bg-warm);--mo:var(--wp--preset--font-family--montserrat);padding:64px 28px;background:var(--wa);max-width:640px;margin:0 auto}
.lead-magnet__eyebrow{font-family:var(--mo);font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ac);margin:0 0 14px}
.lead-magnet__title{font-family:var(--mo);font-weight:900;font-size:clamp(24px,3.5vw,32px);color:var(--ink);margin:0 0 12px;line-height:1.15}
.lead-magnet__lede,.lead-magnet__disclaimer,.lead-magnet__success-sub{font-size:13px;color:var(--mu);margin:0}
.lead-magnet__lede{font-size:16px;margin:0 0 32px}
.lead-magnet__form{display:flex;flex-direction:column;gap:18px}
.lead-magnet__field{display:flex;flex-direction:column;gap:6px}
.lead-magnet__label{font-family:var(--mo);font-weight:600;font-size:13px;color:var(--ink)}
.lead-magnet__optional{font-weight:400;color:var(--mu)}
.lead-magnet__input{border:var(--b);border-radius:8px;padding:12px 16px;font-size:15px;color:var(--ink);background:#fff;width:100%}
.lead-magnet__input:focus{border-color:var(--ac);box-shadow:0 0 0 3px rgba(212,163,58,.15);outline:none}
.lead-magnet__field--gdpr .lead-magnet__label--gdpr{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:13px;color:var(--mu);cursor:pointer}
.lead-magnet__checkbox{flex-shrink:0;margin-top:2px;width:16px;height:16px;accent-color:var(--ac)}
.lead-magnet__submit{margin-top:4px;width:100%}
.lead-magnet__submit:disabled{opacity:.55;cursor:not-allowed}
.lead-magnet__disclaimer{text-align:center}
.lead-magnet__success{border:var(--b);border-left:4px solid #2D8A5E;border-radius:12px;padding:28px 24px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.lead-magnet__success-check{font-size:40px;line-height:1;color:#2D8A5E;margin:0}
.lead-magnet__success-msg{font-family:var(--mo);font-weight:700;font-size:17px;color:var(--ink);margin:0}
.lead-magnet__download-btn{display:inline-block;text-align:center}
.lead-magnet__error{border:var(--b);border-left:4px solid var(--ac);border-radius:12px;padding:20px 24px;margin-bottom:24px;font-size:15px;color:var(--ink);line-height:1.55}
.lead-magnet__error p{margin:0 0 12px}.lead-magnet__error p:last-child{margin-bottom:0}
.lead-magnet__error a{color:var(--ac);text-underline-offset:3px}
.lead-magnet__hp{position:absolute;left:-9999px;height:0;width:0;overflow:hidden}
@media(max-width:720px){.lead-magnet{padding:48px 20px}.lead-magnet__submit{display:block;text-align:center}}

/* Phase 5 GEO + CTA blocks — appended 2026-05-20 by 05-03-PLAN Task 2. Budget: ~1.5KB. Refer to UI-SPEC Performance Contract. */
.ma-faq{padding:var(--wp--preset--spacing--60) var(--wp--preset--spacing--40)}.ma-faq__h2{font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:clamp(24px,3vw,32px);margin:0 0 24px;color:var(--wp--preset--color--ma-navy-ink)}.ma-faq__item{border-bottom:1px solid #E5DDD0;padding:16px 0}.ma-faq__q{cursor:pointer;font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:18px;color:var(--wp--preset--color--ma-navy-ink);list-style:none;padding-right:32px;position:relative}.ma-faq__q::-webkit-details-marker{display:none}.ma-faq__q::after{content:"▶";position:absolute;right:0;top:0;color:var(--wp--preset--color--mpm-accent);font-size:14px;transition:transform .2s}details[open]>.ma-faq__q::after{transform:rotate(90deg)}.ma-faq__a{padding:12px 0 0;font-size:16px;line-height:1.6;color:#444}
.ma-howto{padding:var(--wp--preset--spacing--60) var(--wp--preset--spacing--40)}.ma-howto__h2{font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:clamp(24px,3vw,32px);margin:0 0 32px;color:var(--wp--preset--color--ma-navy-ink)}.ma-howto__list{list-style:none;padding:0;margin:0}.ma-howto__step{display:flex;gap:20px;margin-bottom:28px;align-items:flex-start}.ma-howto__num{flex:0 0 48px;width:48px;height:48px;border-radius:999px;background:var(--wp--preset--color--ma-navy-ink);color:#fff;font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center}.ma-howto__name{font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:18px;margin:0 0 4px;color:var(--wp--preset--color--ma-navy-ink)}.ma-howto__text{margin:0;font-size:16px;line-height:1.6;color:#444}.ma-howto__step img{display:block;margin-top:12px;max-width:100%;height:auto;border-radius:8px}
.ma-cta-product{background:var(--wp--preset--color--ma-bg-warm);border:1px solid #E5DDD0;border-radius:12px;padding:32px;box-shadow:0 4px 16px rgba(15,42,68,.06)}.ma-cta-product__title{font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:22px;margin:0 0 8px;color:var(--wp--preset--color--ma-navy-ink)}.ma-cta-product__desc{margin:0 0 20px;font-size:16px;line-height:1.5;color:#444}
.ma-key-takeaway{background:var(--wp--preset--color--ma-bg-warm);border-left:4px solid var(--wp--preset--color--mpm-accent);border-radius:12px;padding:24px 32px;margin:24px 0}.ma-key-takeaway>.eyebrow{display:block;margin:0 0 12px}.ma-key-takeaway__list{list-style:disc;padding-left:20px;margin:0}.ma-key-takeaway__list li{font-size:16px;line-height:1.6;color:var(--wp--preset--color--ma-navy-ink);margin-bottom:6px}
@media (max-width: 720px){.ma-howto__step{gap:14px}.ma-cta-product{padding:24px}.ma-key-takeaway{padding:20px 24px}}


/* Phase blog v1: single post + archive + blog index loop */
.ma-blog-main__inner,.ma-archive-main__inner,.ma-single-main__inner{padding-left:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40)}
.ma-blog-head{margin-bottom:var(--wp--preset--spacing--70);text-align:left}
.blog-grid-query{margin-top:0}
.blog-grid-query .wp-block-post-template{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin:0}
.blog-grid-query .wp-block-post-template>li{list-style:none}
.blog-grid-query .blog-card{border:1px solid var(--wp--preset--color--ma-line);border-radius:12px;background:#fff;box-shadow:0 1px 0 rgba(15,42,68,.04);overflow:hidden;display:flex;flex-direction:column;height:100%;padding:0}
.blog-grid-query .blog-card__header{padding:20px 24px;background:linear-gradient(135deg,var(--wp--preset--color--ma-navy) 0%,var(--wp--preset--color--ma-navy-ink) 100%);min-height:auto;display:flex}
.blog-grid-query .blog-card__header .blog-card__cat,.blog-grid-query .blog-card__cat,.blog-grid-query .blog-card__cat a{font-family:var(--wp--preset--font-family--montserrat);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--wp--preset--color--mpm-accent);text-decoration:none}
.blog-grid-query .blog-card__body{padding:24px;display:flex;flex-direction:column;flex:1}
.blog-grid-query .blog-card__h3{font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:18px;line-height:1.3;margin:0 0 12px;color:var(--wp--preset--color--ma-navy-ink)}
.blog-grid-query .blog-card__h3 a{color:inherit;text-decoration:none}
.blog-grid-query .blog-card__h3 a:hover{color:var(--wp--preset--color--mpm-accent)}
.blog-grid-query .blog-card__excerpt{color:var(--wp--preset--color--ma-ink-3);font-size:14px;line-height:1.55;margin:0 0 20px;flex:1}
.blog-grid-query .blog-card__excerpt a,.blog-grid-query .wp-block-post-excerpt__more-link{font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:13px;letter-spacing:.05em;color:var(--wp--preset--color--ma-navy);text-decoration:none;text-transform:uppercase}
.blog-grid-query .blog-card__excerpt a:hover,.blog-grid-query .wp-block-post-excerpt__more-link:hover{color:var(--wp--preset--color--mpm-accent)}
.wp-block-query-pagination{margin-top:var(--wp--preset--spacing--60);gap:12px}
.wp-block-query-pagination a,.wp-block-query-pagination span{font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:14px;padding:8px 14px;border:1px solid var(--wp--preset--color--ma-line);border-radius:8px;color:var(--wp--preset--color--ma-navy-ink);text-decoration:none}
.wp-block-query-pagination a:hover,.wp-block-query-pagination .current{background:var(--wp--preset--color--ma-navy);color:#fff;border-color:var(--wp--preset--color--ma-navy)}

/* Single post */
.ma-single-head{margin-bottom:var(--wp--preset--spacing--60)}
.ma-single-cat,.ma-single-cat a{font-family:var(--wp--preset--font-family--montserrat);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--wp--preset--color--mpm-accent);text-decoration:none;margin-bottom:16px;display:inline-block}
.ma-single-title{font-family:var(--wp--preset--font-family--montserrat);font-weight:900;font-size:clamp(28px,4vw,44px);line-height:1.15;letter-spacing:-.01em;color:var(--wp--preset--color--ma-navy-ink);margin:0 0 24px}
.ma-post-meta{font-family:var(--wp--preset--font-family--inter);font-size:14px;color:var(--wp--preset--color--ma-ink-3);gap:12px;align-items:center}
.ma-post-meta__author{font-weight:600;color:var(--wp--preset--color--ma-navy-ink)}
.ma-post-meta__date{color:var(--wp--preset--color--ma-ink-3)}
.ma-single-content{font-family:var(--wp--preset--font-family--inter);font-size:18px;line-height:1.7;color:var(--wp--preset--color--ma-ink-2)}
.ma-single-content h2{font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:28px;color:var(--wp--preset--color--ma-navy-ink);margin:48px 0 16px;letter-spacing:-.01em}
.ma-single-content h3{font-family:var(--wp--preset--font-family--montserrat);font-weight:700;font-size:22px;color:var(--wp--preset--color--ma-navy-ink);margin:32px 0 12px}
.ma-single-content p{margin:0 0 20px}
.ma-single-content ul,.ma-single-content ol{padding-left:24px;margin:0 0 20px}
.ma-single-content li{margin-bottom:8px}
.ma-single-content a{color:var(--wp--preset--color--ma-navy);text-decoration:underline}
.ma-single-content blockquote{border-left:4px solid var(--wp--preset--color--mpm-accent);padding:8px 0 8px 24px;margin:24px 0;font-style:italic;color:var(--wp--preset--color--ma-navy-ink)}

/* Author bio */
.ma-author-bio{margin-top:var(--wp--preset--spacing--70);padding:32px;background:var(--wp--preset--color--ma-bg-alt);border-radius:12px;border:1px solid var(--wp--preset--color--ma-line)}
.ma-author-bio__inner{gap:20px;align-items:flex-start}
.ma-author-bio__avatar img{border-radius:999px;width:80px;height:80px}
.ma-author-bio__eyebrow{font-family:var(--wp--preset--font-family--montserrat);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--wp--preset--color--mpm-accent);margin:0 0 6px}
.ma-author-bio__name,.ma-author-bio__name a{font-family:var(--wp--preset--font-family--montserrat);font-weight:800;font-size:20px;color:var(--wp--preset--color--ma-navy-ink);text-decoration:none;margin:0 0 8px;display:block}
.ma-author-bio__desc{font-size:15px;color:var(--wp--preset--color--ma-ink-3);margin:0;line-height:1.5}

@media (max-width:900px){.blog-grid-query .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.blog-grid-query .wp-block-post-template{grid-template-columns:1fr}.ma-author-bio__inner{flex-direction:column}}

@media (min-width: 601px) and (max-width: 1024px) {
  /* Quick 260521-qd2 — Tablet breakpoint (601-1024px): griglie 4-6 col → 3 col, padding sezioni ridotti. NO token override, solo layout. */
  .vp-grid { grid-template-columns: repeat(2, 1fr); }
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
  .ma-clients__grid { grid-template-columns: repeat(3, 1fr); }
  .accreditations-strip__grid { grid-template-columns: repeat(3, 1fr); }
  .teachers-companies-grid__grid { grid-template-columns: repeat(4, 1fr); }
  .home-reviews__grid { grid-template-columns: repeat(2, 1fr); }
  .ma-footer__cols { grid-template-columns: repeat(3, 1fr); }
  .stat-strip__value { font-size: 36px; }
  .ma-site-header__inner { padding: 16px 24px; }
  .ma-topbar { padding: 12px 24px; }
  .hero { padding: 64px 24px 80px; }
  .vp, .modulo, .docenti, .home-faq, .blog { padding: 64px 24px; }
}

@media (max-width: 480px) {
  /* Quick 260521-qd2 — Mobile tight (≤480px) iPhone SE / Galaxy S: ulteriore compressione padding + tipografia. */
  body { font-size: 16px; }
  .hero { padding: 48px 16px 56px; }
  .hero__h1 { font-size: 30px; line-height: 1.1; }
  .hero .lede { font-size: 16px; margin-bottom: 28px; }
  .cta-row { flex-direction: column; align-items: stretch; }
  .cta-row .btn-primary, .cta-row .btn-ghost { text-align: center; width: 100%; }
  .badge-strip { font-size: 10px; gap: 12px; margin-top: 28px; }
  .vp, .modulo, .docenti, .home-faq, .blog, .accreditations-strip, .teachers-companies-grid, .home-reviews, .certificate-strip, .stat-strip { padding-left: 16px; padding-right: 16px; }
  .vp__h2, .vp h2, .modulo h2, .home-faq__h2, .ma-clients__h2, .accreditations-strip__h2, .teachers-companies-grid__h2, .home-reviews__h2, .certificate-strip__h2, .blog-h2 { font-size: 24px; line-height: 1.2; }
  .module-card { padding: 20px; }
  .module-num { font-size: 30px; }
  .ma-clients__grid { grid-template-columns: 1fr; }
  .accreditations-strip__grid { grid-template-columns: 1fr; }
  .teachers-companies-grid__grid { grid-template-columns: repeat(2, 1fr); }
  .stat-strip__value { font-size: 28px; }
  .ma-topbar { padding: 12px 16px; gap: 12px; font-size: 11px; }
  .ma-site-header__inner { padding: 12px 16px; }
  .ma-pillar-hero { padding: 48px 16px; }
  .ma-single-content { font-size: 16px; line-height: 1.6; }
  .ma-single-content h2 { font-size: 22px; margin: 32px 0 12px; }
  .ma-single-content h3 { font-size: 18px; }
}
