/*
 * premium.money.it - layout editoriale
 * Testata su carta bianca, titoli in Newsreader, interfaccia in Mulish, blu e verde Money.
 * Classi con prefisso pm- per non scontrarsi con main.css (Tailwind), che resta caricato per
 * i componenti non rifatti (player video, moduli dei commenti).
 */
:root{
  --pm-paper:#ffffff;
  --pm-paper-2:#f2f4f7;
  --pm-ink:#1b2a3f;
  --pm-ink-2:#24354d;
  --pm-muted:#5f6b7c;
  --pm-rule:#d9dee6;
  --pm-green:#3a9f05;
  --pm-green-strong:#45c203;
  --pm-green-ink:#0d1a05;
  --pm-band:#152235;
  --pm-band-fg:#e9eef5;
  --pm-band-muted:#9aa8bb;
  --pm-band-rule:#2a3a52;
  --pm-img-a:#2b3f5c;
  --pm-img-b:#4f6582;
  --pm-danger:#b42318;
  --pm-display:"Newsreader", Georgia, "Times New Roman", serif;
  --pm-ui:"Mulish", system-ui, -apple-system, "Segoe UI", sans-serif;
  --pm-wrap:1180px;
  --pm-gutter:20px;
}

/* ------------------------------------------------------------------ base */
body.pm{background:var(--pm-paper);color:var(--pm-ink-2);font-family:var(--pm-ui) !important;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;margin:0}
.pm *,.pm *::before,.pm *::after{box-sizing:border-box}
.pm a{color:inherit;text-decoration:none}
.pm a:focus-visible,.pm button:focus-visible,.pm input:focus-visible,.pm summary:focus-visible{outline:2px solid var(--pm-green-strong);outline-offset:3px}
.pm img{max-width:100%;height:auto}
.pm-wrap{max-width:var(--pm-wrap);margin:0 auto;padding-inline:var(--pm-gutter)}
.pm-sr{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pm-skip{position:absolute;left:12px;top:-60px;z-index:50;background:var(--pm-ink);color:#fff;padding:8px 14px;border-radius:4px;font-weight:700}
.pm-skip:focus{top:12px}

/* tipografia comune */
.pm-kick{display:inline-block;font:800 11px/1.3 var(--pm-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--pm-green)}
.pm-h{font-family:var(--pm-display);color:var(--pm-ink);font-weight:500;letter-spacing:-.01em;margin:0;text-wrap:balance}
.pm-dek{color:var(--pm-muted);margin:0;font-size:15px}
.pm-meta{font-size:12.5px;color:var(--pm-muted);display:flex;gap:6px 8px;flex-wrap:wrap;align-items:center;margin:0}
.pm-meta b{color:var(--pm-ink-2);font-weight:700}
a:hover .pm-h,a.pm-h:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.pm-lock{display:inline-flex;align-items:center;gap:6px}
.pm-lock::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pm-green-strong)}

/* bottoni */
.pm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 14px/1.2 var(--pm-ui);letter-spacing:.02em;padding:11px 20px;border-radius:4px;border:1px solid transparent;cursor:pointer;background:var(--pm-green-strong);color:var(--pm-green-ink) !important;text-align:center}
.pm-btn:hover{background:#3db003}
.pm-btn--sm{padding:7px 14px;font-size:13px}
.pm-btn--ghost{background:transparent;color:var(--pm-ink) !important;border-color:var(--pm-rule)}
.pm-btn--ghost:hover{background:var(--pm-paper-2)}
.pm-btn--ink{background:var(--pm-ink);color:#fff !important}
.pm-btn--ink:hover{background:var(--pm-ink-2)}
.pm-btn--block{width:100%}
.pm-link{color:var(--pm-ink);font-weight:700;text-decoration:underline !important;text-underline-offset:3px}

/* immagini: logo da www o segnaposto */
.pm-media{position:relative;display:block;aspect-ratio:16/9;max-width:100%;overflow:hidden;background:linear-gradient(135deg,var(--pm-img-a),var(--pm-img-b))}
.pm-media--43{aspect-ratio:4/3}
.pm-media--wide{aspect-ratio:21/9}
.pm-media img,.pm-media .pm-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pm-media--vuoto::after{content:"";position:absolute;inset:0;background:url("../assets/logo_moneypremium_bianco.png") center/34% auto no-repeat;opacity:.18}
.pm-play{position:absolute;left:50%;top:50%;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:rgba(255,255,255,.92);z-index:1}
.pm-play::before{content:"";position:absolute;left:21px;top:16px;border-left:16px solid var(--pm-band);border-block:11px solid transparent}
.pm-play--sm{width:34px;height:34px;margin:-17px 0 0 -17px}
.pm-play--sm::before{left:13px;top:10px;border-left-width:11px;border-block-width:7px}

/* ---------------------------------------------------------------- testata */
.pm-util{border-bottom:1px solid var(--pm-rule);font-size:13px;color:var(--pm-muted)}
.pm-util .pm-wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:46px}
.pm-util__acts{display:flex;gap:14px;align-items:center;margin-left:auto}
.pm-util__acts a:not(.pm-btn):hover{color:var(--pm-ink)}
.pm-mast{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding-block:22px 16px}
.pm-mast__logo{grid-column:2;display:block;line-height:0}
.pm-mast__logo img{width:196px;height:auto}
.pm-mast__tag{grid-column:1/-1;text-align:center;font:italic 400 16px var(--pm-display);color:var(--pm-muted);margin:4px 0 0}
.pm-mast__side{display:flex;align-items:center;gap:8px}
.pm-mast__side--r{justify-content:flex-end}
.pm-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--pm-ink);background:transparent;border:0;cursor:pointer}
.pm-icon-btn:hover{background:var(--pm-paper-2)}
.pm-icon-btn svg{width:22px;height:22px}
.pm-nav{border-block:1px solid var(--pm-ink)}
.pm-nav ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:clamp(14px,3vw,34px);flex-wrap:wrap}
.pm-nav a{display:block;padding:11px 0;font:700 12px var(--pm-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--pm-ink)}
.pm-nav a:hover{color:var(--pm-green)}
.pm-nav a[aria-current]{box-shadow:inset 0 -3px 0 var(--pm-green-strong)}
.pm-menu{position:relative}
.pm-menu summary{list-style:none}
.pm-menu summary::-webkit-details-marker{display:none}
.pm-menu__panel{position:absolute;right:0;top:calc(100% + 8px);z-index:40;min-width:230px;background:var(--pm-paper);border:1px solid var(--pm-rule);box-shadow:0 12px 32px rgba(21,34,53,.14);padding:6px 0}
.pm-menu__panel a{display:block;padding:9px 16px;font-size:14px;color:var(--pm-ink-2)}
.pm-menu__panel a:hover{background:var(--pm-paper-2)}
.pm-menu__panel hr{border:0;border-top:1px solid var(--pm-rule);margin:6px 0}
.pm-menu__head{padding:8px 16px 10px;font-size:12.5px;color:var(--pm-muted)}
.pm-menu__head b{display:block;color:var(--pm-ink);font-size:14px}
.pm-burger{display:none}
.pm-drawer{display:none}

/* ------------------------------------------------------------- sezioni */
.pm-sect-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:2px solid var(--pm-ink);padding-top:10px;margin-bottom:20px}
.pm-sect-h h2,.pm-sect-h h1{font:600 26px/1.15 var(--pm-display);color:var(--pm-ink);margin:0}
.pm-sect-h a{font:700 12px var(--pm-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--pm-muted);white-space:nowrap}
.pm-sect-h a:hover{color:var(--pm-ink)}
.pm-page-h{padding-block:36px 8px;display:grid;gap:10px;max-width:760px}
.pm-page-h h1{font:500 clamp(34px,5vw,54px)/1.04 var(--pm-display);color:var(--pm-ink);letter-spacing:-.02em;margin:0;text-wrap:balance}
.pm-page-h p{font:400 19px/1.45 var(--pm-display);color:var(--pm-muted);margin:0}
.pm-section{padding-block:40px}
.pm-section + .pm-section{padding-top:0}

/* --------------------------------------------------------------- card */
.pm-card{display:grid;gap:10px;align-content:start;min-width:0}
.pm-card .pm-h{font-size:22px;line-height:1.18}
.pm-card--sm .pm-h{font-size:19px;line-height:1.22}
.pm-lead{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px;padding-block:34px 40px}
.pm-lead__main{display:grid;gap:14px;min-width:0}
.pm-lead__main .pm-h{font-size:clamp(30px,4vw,46px);line-height:1.05}
.pm-lead__main .pm-dek{font:400 19px/1.45 var(--pm-display);color:var(--pm-ink-2)}
.pm-pop{border-left:1px solid var(--pm-rule);padding-left:28px;min-width:0}
.pm-pop h2{font:800 12px var(--pm-ui);letter-spacing:.16em;text-transform:uppercase;margin:0 0 4px;color:var(--pm-ink)}
.pm-pop ol{list-style:none;margin:0;padding:0;counter-reset:pm-pop}
.pm-pop li{counter-increment:pm-pop;display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;padding-block:16px;border-bottom:1px solid var(--pm-rule)}
.pm-pop li:last-child{border-bottom:0}
.pm-pop li::before{content:counter(pm-pop);font:400 40px/.9 var(--pm-display);color:var(--pm-green)}
.pm-pop .pm-h{font-size:18px;line-height:1.25}
.pm-grid{display:grid;gap:32px}
.pm-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pm-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.pm-trio{padding-bottom:44px;border-bottom:1px solid var(--pm-rule)}
.pm-row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:14px;padding-block:16px;border-bottom:1px solid var(--pm-rule)}
.pm-row time{font:700 12px var(--pm-ui);color:var(--pm-muted);font-variant-numeric:tabular-nums;padding-top:4px}
.pm-row .pm-h{font-size:19px;line-height:1.22;margin-block:4px 6px}
.pm-row--img{grid-template-columns:minmax(0,1fr) 168px;align-items:start}
.pm-row--img .pm-media{order:2}
.pm-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
.pm-feed > .pm-sect-h{grid-column:1/-1}
.pm-feed__col{min-width:0}
.pm-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}
.pm-day{font:600 22px var(--pm-display);color:var(--pm-ink);border-top:2px solid var(--pm-ink);padding-top:10px;margin:28px 0 0}

/* banda scura video / interviste */
.pm-band{background:var(--pm-band);color:var(--pm-band-fg);padding-block:40px 46px;margin-top:44px}
.pm-band .pm-sect-h{border-color:var(--pm-band-fg)}
.pm-band .pm-sect-h h2{color:var(--pm-band-fg)}
.pm-band .pm-sect-h a{color:var(--pm-band-muted)}
.pm-band .pm-h{color:var(--pm-band-fg)}
.pm-band .pm-dek,.pm-band .pm-meta{color:var(--pm-band-muted)}
.pm-band .pm-kick{color:var(--pm-green-strong)}
.pm-vids{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px}
.pm-vids__big .pm-h{font-size:28px;line-height:1.12}
.pm-vids__side{display:grid;gap:22px;align-content:start}
.pm-vids__side a{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:start}
.pm-vids__side .pm-h{font-size:19px;line-height:1.22;margin-top:4px}

/* abbonamento */
.pm-sub{background:var(--pm-paper-2);border-block:1px solid var(--pm-rule)}
.pm-sub .pm-wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px;padding-block:44px;align-items:center}
.pm-sub .pm-h{font-size:clamp(28px,3.4vw,38px);line-height:1.1}
.pm-checks{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.pm-checks li{display:flex;gap:10px}
.pm-checks li::before{content:"";flex:none;width:16px;height:2px;background:var(--pm-green-strong);margin-top:11px}
.pm-sub__cta{display:grid;gap:14px;justify-items:start}
.pm-sub__offer{font:500 30px/1.15 var(--pm-display);color:var(--pm-ink)}
.pm-sub__offer small{display:block;font:600 14px var(--pm-ui);color:var(--pm-muted);margin-top:4px}

/* ---------------------------------------------------------- paginazione */
.pm-pager{margin-top:36px;display:flex;justify-content:center}
.pm-pager .pagination,.pm-pager nav{display:block}
.pm-pager ul,.pm-pager .pagination-items{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.pm-pager a,.pm-pager .on,.pm-pager strong,.pm-pager .pagination-item-label{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--pm-rule);font:700 14px var(--pm-ui);color:var(--pm-ink);font-variant-numeric:tabular-nums}
.pm-pager a:hover{background:var(--pm-paper-2)}
.pm-pager .on,.pm-pager strong,.pm-pager .pagination-item.on .pagination-item-label{background:var(--pm-ink);border-color:var(--pm-ink);color:#fff}
.pm-pager .sep,.pm-pager .tbc{border:0;min-width:auto}

/* ----------------------------------------------------------- articolo */
.pm-art{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,700px) minmax(0,1fr);column-gap:40px;padding-block:34px 10px}
.pm-art > *{grid-column:2;min-width:0}
.pm-crumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font:700 12px var(--pm-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--pm-muted)}
.pm-crumb a{color:var(--pm-green)}
.pm-art h1{font:500 clamp(32px,4.6vw,50px)/1.06 var(--pm-display);color:var(--pm-ink);letter-spacing:-.015em;margin:14px 0 16px;text-wrap:balance}
.pm-stand{font:400 21px/1.45 var(--pm-display);color:var(--pm-ink-2);margin:0 0 22px}
.pm-byl{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-block:1px solid var(--pm-rule);padding-block:12px;margin-bottom:26px}
.pm-byl__who{display:flex;gap:12px;align-items:center;min-width:0}
.pm-av{flex:none;width:42px;height:42px;border-radius:50%;background:var(--pm-ink-2);color:#fff;display:grid;place-items:center;font:700 13px var(--pm-ui);overflow:hidden}
.pm-av img{width:100%;height:100%;object-fit:cover}
.pm-byl__who div{font-size:13px;color:var(--pm-muted);line-height:1.4}
.pm-byl__who b{display:block;color:var(--pm-ink);font-size:14px}
.pm-share{display:flex;gap:8px;flex-wrap:wrap}
.pm-share a,.pm-share button{display:inline-flex;align-items:center;gap:6px;font:700 12px var(--pm-ui);background:transparent;border:1px solid var(--pm-rule);color:var(--pm-ink-2);border-radius:999px;padding:6px 12px;cursor:pointer}
.pm-share a:hover,.pm-share button:hover{background:var(--pm-paper-2)}
.pm-share svg{width:14px;height:14px}
.pm-fig{grid-column:1/-1 !important;max-width:1100px;width:100%;margin:0 auto 8px}
.pm-fig figcaption{max-width:700px;margin:8px auto 0;font-size:12.5px;color:var(--pm-muted)}

/* corpo del testo (HTML prodotto da SPIP) */
.pm-prose{font:400 19px/1.7 var(--pm-display);color:var(--pm-ink-2)}
.pm-prose > *{margin:0 0 1.1em}
.pm-prose p{margin:0 0 1.1em}
.pm-prose h2,.pm-prose h3,.pm-prose h4,.pm-prose .h3,.pm-prose .spip_intertitre{font:600 26px/1.2 var(--pm-display);color:var(--pm-ink);margin:1.6em 0 .6em;letter-spacing:-.01em}
.pm-prose h3,.pm-prose h4{font-size:22px}
.pm-prose a{color:var(--pm-ink);text-decoration:underline;text-decoration-color:var(--pm-green-strong);text-decoration-thickness:2px;text-underline-offset:3px}
.pm-prose a:hover{color:var(--pm-green)}
.pm-prose strong,.pm-prose b{font-weight:600;color:var(--pm-ink)}
.pm-prose ul,.pm-prose ol{padding-left:1.3em}
.pm-prose li{margin-bottom:.4em}
.pm-prose li::marker{color:var(--pm-green)}
.pm-prose blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:3px solid var(--pm-green-strong);font-style:italic;font-size:22px;line-height:1.5;color:var(--pm-ink)}
.pm-prose img{height:auto;display:block;margin-inline:auto}
.pm-prose figure,.pm-prose .spip_doc_inline,.pm-prose .spip_documents{max-width:100%;margin:1.4em auto}
.pm-prose figcaption,.pm-prose .spip_doc_legende,.pm-prose .spip_doc_titre,.pm-prose .spip_doc_descriptif{font:400 13px/1.5 var(--pm-ui);color:var(--pm-muted);margin-top:8px}
.pm-prose table{width:100%;border-collapse:collapse;font:400 15px/1.45 var(--pm-ui)}
.pm-prose .pm-table,.pm-prose .table-wrap{overflow-x:auto}
.pm-prose th,.pm-prose td{border-bottom:1px solid var(--pm-rule);padding:9px 10px;text-align:left;vertical-align:top}
.pm-prose th,.pm-prose thead td{font-weight:800;color:var(--pm-ink);border-bottom:2px solid var(--pm-ink)}
.pm-prose iframe,.pm-prose video{max-width:100%}
.pm-prose hr{border:0;border-top:1px solid var(--pm-rule);margin:2em 0}
.pm-prose--cap > p:first-of-type::first-letter{float:left;font:500 72px/.8 var(--pm-display);color:var(--pm-ink);padding:6px 10px 0 0}
.pm-copy{font-size:12.5px;color:var(--pm-muted);letter-spacing:.06em;text-transform:uppercase;margin:24px 0 0}

/* paywall */
.pm-fade{position:relative;max-height:22em;overflow:hidden}
.pm-fade::after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(to bottom,rgba(255,255,255,0),var(--pm-paper))}
.pm-wall{border:1px solid var(--pm-rule);border-top:3px solid var(--pm-green-strong);background:var(--pm-paper-2);padding:28px;display:grid;gap:14px;margin:8px 0 10px}
.pm-wall .pm-h{font-size:28px;line-height:1.15}
.pm-wall p{margin:0}
.pm-wall .pm-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;font-size:14px}
.pm-wall__acts{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:13.5px;color:var(--pm-muted)}
.pm-wall__or{border-top:1px solid var(--pm-rule);padding-top:14px;font-size:13.5px;color:var(--pm-muted)}

/* commenti */
.pm-comments{margin-top:44px;border-top:2px solid var(--pm-ink);padding-top:12px}
.pm-comments h2{font:600 24px var(--pm-display);color:var(--pm-ink);margin:0 0 16px}
.pm-comment{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding-block:16px;border-bottom:1px solid var(--pm-rule)}
.pm-comment__who{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:13px;color:var(--pm-muted)}
.pm-comment__who b{color:var(--pm-ink);font-size:14px}
.pm-comment__text{font-size:15.5px;line-height:1.6;color:var(--pm-ink-2);margin-top:4px}
.pm-comment__text p{margin:0 0 .6em}
.pm-comments textarea{width:100%;min-height:110px;padding:14px;border:1px solid var(--pm-rule);border-radius:4px;font:400 15px var(--pm-ui);background:var(--pm-paper)}
.pm-comments textarea:focus{outline:2px solid var(--pm-green-strong);border-color:transparent}
.pm-note{font-size:13.5px;color:var(--pm-muted)}

/* leggi anche */
.pm-rel{padding-block:44px 10px}

/* dialog abbonamento (commenti per non abbonati) */
.pm-dialog{border:0;padding:0;max-width:520px;width:calc(100% - 32px);background:transparent}
.pm-dialog::backdrop{background:rgba(21,34,53,.55)}
.pm-dialog .pm-wall{margin:0;background:var(--pm-paper)}
.pm-dialog__close{justify-self:end;background:none;border:0;font:700 13px var(--pm-ui);color:var(--pm-muted);cursor:pointer;padding:0}

/* --------------------------------------------------------------- video */
.pm-vhero{background:var(--pm-band);color:var(--pm-band-fg);padding-block:34px 40px}
.pm-vhero .pm-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:40px;align-items:center}
.pm-vhero h1{font:500 clamp(28px,3.6vw,42px)/1.08 var(--pm-display);color:var(--pm-band-fg);margin:12px 0 16px;text-wrap:balance}
.pm-vhero .pm-meta{color:var(--pm-band-muted)}
.pm-vhero .pm-meta b{color:var(--pm-band-fg)}
.pm-vhero .pm-kick{color:var(--pm-green-strong)}
.pm-vhero .pm-share a{color:var(--pm-band-fg);border-color:var(--pm-band-rule)}
.pm-vhero .pm-share a:hover{background:var(--pm-band-rule)}
.pm-player{min-width:0;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.pm-tabs{display:flex;gap:8px;flex-wrap:wrap;padding-block:22px 0}
.pm-tabs a{font:700 12px var(--pm-ui);letter-spacing:.08em;text-transform:uppercase;padding:8px 14px;border:1px solid var(--pm-rule);border-radius:999px;color:var(--pm-ink-2)}
.pm-tabs a:hover{background:var(--pm-paper-2)}
.pm-tabs a[aria-current]{background:var(--pm-ink);border-color:var(--pm-ink);color:#fff}
.pm-shelf{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 66px) / 4);gap:22px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory}
.pm-shelf > *{scroll-snap-align:start}

/* --------------------------------------------------------------- corsi */
.pm-courses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.pm-course{display:grid;align-content:start;border:1px solid var(--pm-rule);background:var(--pm-paper);min-width:0}
.pm-course:hover{border-color:var(--pm-ink-2)}
.pm-course__body{padding:16px 18px 20px;display:grid;gap:10px}
.pm-course .pm-h{font-size:21px;line-height:1.2}
.pm-course__desc{font-size:14px;color:var(--pm-muted);margin:0}
.pm-badge{display:inline-flex;align-items:center;gap:6px;font:800 10.5px var(--pm-ui);letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;border-radius:3px;background:var(--pm-paper-2);color:var(--pm-ink-2)}
.pm-badge--ok{background:#e6f6dc;color:#24600a}
.pm-badge--free{background:#e6f6dc;color:#24600a}
.pm-progress{display:grid;gap:6px}
.pm-progress__bar{height:4px;background:var(--pm-rule);overflow:hidden}
.pm-progress__bar i{display:block;height:100%;background:var(--pm-green-strong)}
.pm-progress__label{display:flex;justify-content:space-between;font-size:12.5px;color:var(--pm-muted);font-variant-numeric:tabular-nums}
.pm-band .pm-progress__bar{background:var(--pm-band-rule)}
.pm-band .pm-progress__label{color:var(--pm-band-muted)}

.pm-chero{background:var(--pm-band);color:var(--pm-band-fg)}
.pm-chero .pm-wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:44px;padding-block:44px;align-items:center}
.pm-chero h1{font:500 clamp(32px,4.4vw,52px)/1.05 var(--pm-display);color:var(--pm-band-fg);margin:10px 0 14px;letter-spacing:-.015em;text-wrap:balance}
.pm-chero .pm-intro{font:400 18px/1.55 var(--pm-display);color:#c9d3e0}
.pm-chero .pm-intro p{margin:0 0 .8em}
.pm-chero .pm-kick{color:var(--pm-green-strong)}
.pm-chero__facts{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0 22px;font-size:13px;color:var(--pm-band-muted)}
.pm-chero__facts b{display:block;font:500 26px var(--pm-display);color:var(--pm-band-fg)}
.pm-chero__cta{display:grid;gap:12px;justify-items:start}
.pm-chero__cta form{margin:0}
.pm-chero__note{font-size:13px;color:var(--pm-band-muted)}
.pm-chero__note a{color:var(--pm-band-fg);text-decoration:underline;text-underline-offset:3px}
.pm-chero__img{min-width:0}

.pm-course-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;padding-block:44px}
.pm-syllabus{display:grid;gap:14px}
.pm-module{border:1px solid var(--pm-rule);background:var(--pm-paper)}
.pm-module summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px}
.pm-module summary::-webkit-details-marker{display:none}
.pm-module__n{font:400 34px/1 var(--pm-display);color:var(--pm-green);font-variant-numeric:lining-nums}
.pm-module__t{font:600 20px/1.25 var(--pm-display);color:var(--pm-ink);margin:0}
.pm-module__c{font-size:12.5px;color:var(--pm-muted);white-space:nowrap}
.pm-module summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--pm-ink-2);border-bottom:2px solid var(--pm-ink-2);transform:rotate(45deg);margin:-4px 4px 0 0;transition:transform .15s}
.pm-module[open] summary::after{transform:rotate(-135deg);margin-top:4px}
.pm-module summary{grid-template-columns:48px minmax(0,1fr) auto 14px}
.pm-module__desc{padding:0 18px 4px 80px;font-size:14px;color:var(--pm-muted)}
.pm-module__desc p{margin:0 0 .6em}
.pm-lessons{list-style:none;margin:0;padding:4px 18px 14px 80px;display:grid}
.pm-lesson{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:12px;align-items:center;padding-block:9px;border-top:1px solid var(--pm-rule);font-size:15px}
.pm-lesson a{color:var(--pm-ink-2)}
.pm-lesson a:hover{color:var(--pm-ink);text-decoration:underline;text-underline-offset:3px}
.pm-lesson[aria-current] a{color:var(--pm-ink);font-weight:800}
.pm-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--pm-rule);display:inline-block}
.pm-dot--iniziata{border-color:var(--pm-green-strong);background:linear-gradient(90deg,var(--pm-green-strong) 50%,transparent 50%)}
.pm-dot--completata{border-color:var(--pm-green-strong);background:var(--pm-green-strong) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%230d1a05' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.pm-tag{font:800 10px var(--pm-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--pm-muted)}
.pm-tag--free{color:#24600a}
.pm-aside{display:grid;gap:22px;align-content:start}
.pm-aside__box{border-top:2px solid var(--pm-ink);padding-top:12px;display:grid;gap:12px}
.pm-aside__box h2{font:800 12px var(--pm-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--pm-ink);margin:0}
.pm-author{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:start}
.pm-author .pm-av{width:56px;height:56px}
.pm-author b{display:block;font:600 18px var(--pm-display);color:var(--pm-ink)}
.pm-author p{margin:4px 0 0;font-size:13.5px;color:var(--pm-muted)}
.pm-done{border:1px solid #b9e3a3;background:#f1faeb;padding:16px 18px;display:grid;gap:6px;margin-bottom:22px}
.pm-done b{font:600 20px var(--pm-display);color:var(--pm-ink)}

/* lezione */
.pm-lesson-layout{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 120px)}
.pm-outline{background:var(--pm-paper-2);border-right:1px solid var(--pm-rule);padding:26px 22px 40px}
.pm-outline__inner{position:sticky;top:16px;display:grid;gap:16px;max-height:calc(100vh - 32px);overflow-y:auto;padding-right:4px}
.pm-outline__course{font:600 21px/1.2 var(--pm-display);color:var(--pm-ink)}
.pm-outline__course:hover{text-decoration:underline;text-underline-offset:3px}
.pm-outline h3{font:800 11px var(--pm-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--pm-muted);margin:10px 0 2px}
.pm-outline ol{list-style:none;margin:0;padding:0;display:grid}
.pm-outline li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;padding-block:7px;font-size:14px;line-height:1.35}
.pm-outline li .pm-dot{width:14px;height:14px;margin-top:2px}
.pm-outline li[aria-current]{font-weight:800;color:var(--pm-ink)}
.pm-outline li[aria-current] a{color:var(--pm-ink)}
.pm-outline li a{color:var(--pm-ink-2)}
.pm-outline li a:hover{text-decoration:underline;text-underline-offset:3px}
.pm-outline__toggle{display:none}
.pm-lesson-main{padding:34px clamp(20px,5vw,64px) 60px;min-width:0}
.pm-lesson-main__inner{max-width:720px;margin:0 auto}
.pm-lesson-main h1{font:500 clamp(30px,4vw,44px)/1.08 var(--pm-display);color:var(--pm-ink);margin:12px 0 14px;letter-spacing:-.015em;text-wrap:balance}
.pm-lesson-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;border-top:1px solid var(--pm-rule);margin-top:34px;padding-top:20px}
.pm-lesson-nav form{margin:0}
.pm-lesson-nav__prev{justify-self:start}
.pm-lesson-nav__next{justify-self:end;text-align:right}
.pm-lesson-nav__prev a,.pm-lesson-nav__next a{display:grid;gap:2px;font-size:13px;color:var(--pm-muted)}
.pm-lesson-nav__prev b,.pm-lesson-nav__next b{font:600 16px/1.3 var(--pm-display);color:var(--pm-ink)}
.pm-lesson-nav__prev a:hover b,.pm-lesson-nav__next a:hover b{text-decoration:underline;text-underline-offset:3px}

/* ----------------------------------------------------------- moduli */
.pm-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.pm-input{flex:1 1 260px;min-width:0;height:46px;padding:0 14px;border:1px solid var(--pm-rule);border-radius:4px;font:400 16px var(--pm-ui);color:var(--pm-ink);background:var(--pm-paper)}
.pm-input:focus{outline:2px solid var(--pm-green-strong);border-color:transparent}
.pm-empty{padding:40px 0;color:var(--pm-muted);font-size:16px}
.pm-static{padding-block:10px 50px}

/* --------------------------------------------------------------- piede */
.pm-foot{border-top:2px solid var(--pm-ink);margin-top:56px;padding-block:30px 44px;font-size:12.5px;color:var(--pm-muted)}
.pm-foot .pm-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:start}
.pm-foot__brand img{width:150px;height:auto;margin-bottom:10px}
.pm-foot p{margin:0 0 6px}
.pm-foot nav ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13.5px;color:var(--pm-ink-2)}
.pm-foot nav a:hover{color:var(--pm-ink);text-decoration:underline;text-underline-offset:3px}

/* -------------------------------------------------------------- mobile */
@media (max-width:1024px){
  .pm-lesson-layout{grid-template-columns:minmax(0,1fr)}
  .pm-outline{border-right:0;border-bottom:1px solid var(--pm-rule);padding:0}
  .pm-outline__toggle{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:14px var(--pm-gutter);background:none;border:0;font:700 14px var(--pm-ui);color:var(--pm-ink);cursor:pointer;text-align:left}
  .pm-outline__inner{position:static;max-height:none;padding:0 var(--pm-gutter) 22px}
  .pm-outline:not(.is-open) .pm-outline__inner{display:none}
}
@media (max-width:900px){
  .pm-lead,.pm-vids,.pm-sub .pm-wrap,.pm-vhero .pm-wrap,.pm-chero .pm-wrap,.pm-course-layout{grid-template-columns:minmax(0,1fr)}
  .pm-pop{border-left:0;padding-left:0;border-top:2px solid var(--pm-ink);padding-top:12px}
  .pm-grid--3,.pm-list,.pm-courses{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pm-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pm-feed{grid-template-columns:minmax(0,1fr)}
  .pm-art{grid-template-columns:minmax(0,1fr)}
  .pm-art > *,.pm-fig{grid-column:1 !important}
  .pm-nav{display:none}
  .pm-burger{display:inline-flex}
  .pm-drawer{display:block}
  .pm-drawer:not([open]) .pm-drawer__panel{display:none}
  .pm-chero__img{order:-1}
  .pm-shelf{grid-auto-columns:calc((100% - 22px) / 2.3)}
}
@media (max-width:640px){
  :root{--pm-gutter:16px}
  .pm-grid--3,.pm-grid--4,.pm-list,.pm-courses{grid-template-columns:minmax(0,1fr)}
  .pm-mast{padding-block:14px 10px}
  .pm-mast__logo img{width:150px}
  .pm-mast__tag{display:none}
  .pm-util__date{display:none}
  .pm-vids__side a{grid-template-columns:112px minmax(0,1fr)}
  .pm-row--img{grid-template-columns:minmax(0,1fr) 104px}
  .pm-wall{padding:20px}
  .pm-wall .pm-checks{grid-template-columns:minmax(0,1fr)}
  .pm-prose{font-size:18px}
  .pm-module summary{grid-template-columns:36px minmax(0,1fr) 14px;padding:14px}
  .pm-module__c{display:none}
  .pm-module__desc,.pm-lessons{padding-left:14px;padding-right:14px}
  .pm-lesson-nav{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .pm-lesson-nav__done{grid-column:1/-1;grid-row:1}
  .pm-foot .pm-wrap{grid-template-columns:minmax(0,1fr)}
  .pm-shelf{grid-auto-columns:76%}
}
.pm-drawer__panel{position:absolute;left:0;right:0;top:100%;z-index:45;background:var(--pm-paper);border-block:1px solid var(--pm-rule);box-shadow:0 18px 30px rgba(21,34,53,.12)}
.pm-drawer__panel ul{list-style:none;margin:0;padding:8px var(--pm-gutter) 14px}
.pm-drawer__panel a{display:block;padding:12px 0;border-bottom:1px solid var(--pm-rule);font:700 13px var(--pm-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--pm-ink)}
.pm-drawer summary{list-style:none}
.pm-drawer summary::-webkit-details-marker{display:none}
.pm-head{position:relative;background:var(--pm-paper)}
@media (prefers-reduced-motion:reduce){.pm *{transition:none !important;scroll-behavior:auto !important}}
.pm-lesson-layout + .pm-foot{margin-top:0}

/* sezioni in home */
.pm-sezioni{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 32px}
.pm-sezione{display:grid;gap:10px;align-content:start;border-top:1px solid var(--pm-rule);padding-top:14px;min-width:0}
.pm-sezione h3{font:800 12px var(--pm-ui);letter-spacing:.14em;text-transform:uppercase;margin:0;color:var(--pm-green)}
.pm-sezione h3 a:hover{color:var(--pm-ink)}
.pm-sezione ol{list-style:none;margin:0;padding:0;display:grid}
.pm-sezione li{padding-block:10px;border-bottom:1px solid var(--pm-rule)}
.pm-sezione li:last-child{border-bottom:0}
.pm-sezione .pm-h{font-size:18px;line-height:1.25}
.pm-sezione__all{font:700 12px var(--pm-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--pm-muted)}
.pm-sezione__all:hover{color:var(--pm-ink)}
@media (max-width:900px){.pm-sezioni{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pm-sezioni{grid-template-columns:minmax(0,1fr)}}
