/* palmieri. · catalogo corsi, pagina corso, verifica attestato (D2-S10, D2-S11, tavole 08/corsi-*).
   Token pal. e site.css; colore solo sui segni dei dati (pallini di stato). Nessuna risorsa esterna. */
.c-h1{font-weight:var(--fw-regular);font-size:clamp(28px,3.2vw,40px);line-height:1.12;letter-spacing:-.02em}
.c-msg{font-size:14px;line-height:1.5;color:var(--text-2);padding:16px 0}
.c-msg a{text-underline-offset:3px}
.c-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:48px 32px;padding:32px 0 96px}
.c-card{display:flex;flex-direction:column;gap:12px;text-decoration:none}
.c-card__ph{position:relative;aspect-ratio:4/3;max-height:340px;width:100%;border-radius:var(--r-xs);--b:.75}
.c-card__tag{position:absolute;left:16px;top:16px;z-index:1;background:var(--bg);color:var(--text);padding:6px 10px;border-radius:var(--r-pill);font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.c-card__r{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.c-card__n{font-size:clamp(22px,2vw,26px);letter-spacing:-.02em;overflow-wrap:anywhere}
.c-card__p{font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap}
.c-card__d{font-size:15px;line-height:1.5;color:var(--text-2)}
.c-card__m{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2)}
.c-card:focus-visible{outline:2px solid var(--text);outline-offset:4px}

/* Pagina corso */
.c-hero{position:relative;min-height:clamp(420px,62vh,820px);display:flex;flex-direction:column}
.c-hero .ph{position:absolute;inset:0;--b:.6}
.c-hero .hd{position:relative;z-index:1}
.c-hero__b{position:relative;z-index:1;margin-top:auto;padding:0 var(--pad) 40px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px}
.c-hero__t{display:flex;flex-direction:column;gap:14px;max-width:760px}
.c-hero__t h1{font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-.03em}
.c-hero__a{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.c-price{font-size:clamp(26px,2.2vw,32px);font-variant-numeric:tabular-nums}
.c-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));border-bottom:1px solid var(--line)}
.c-stat{padding:28px 0;display:flex;flex-direction:column;gap:8px}
.c-stat b{font-weight:var(--fw-light);font-size:clamp(34px,3.4vw,48px);letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1}
.c-sec{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px 56px;padding:72px 0}
.c-sec p.big{font-size:clamp(22px,2.4vw,36px);line-height:1.2;letter-spacing:-.02em;white-space:pre-line}
.c-prog{padding-bottom:72px}
.c-prog__r{display:grid;grid-template-columns:60px minmax(0,1fr) 110px 80px;gap:16px;padding:20px 0;border-top:1px solid var(--line);font-size:clamp(16px,1.5vw,20px);align-items:baseline}
.c-prog__r .t12{white-space:nowrap}
.c-prog__r .t12:last-child{text-align:right}
.c-test{display:flex;flex-direction:column;gap:16px;padding:72px 0;border-top:1px solid var(--line);max-width:760px}
.c-test p.big{font-size:clamp(20px,2vw,28px);line-height:1.3}
.c-test .small{font-size:14px;line-height:1.5;color:var(--text-2)}
.c-end{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:48px 0 96px;border-top:1px solid var(--line)}
.c-end p{font-size:clamp(22px,2.4vw,32px);letter-spacing:-.02em;max-width:640px}
.c-end div{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
@media(max-width:640px){.c-prog__r{grid-template-columns:44px minmax(0,1fr) 64px}.c-prog__r .t12:nth-child(3){display:none}}

/* Verifica */
.v-wrap{max-width:760px;padding:40px 0 96px;display:flex;flex-direction:column;gap:20px}
@media(min-width:900px){.v-wrap{padding-top:64px}}
.v-form{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.v-form .field{flex:1 1 280px}
.v-res{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:var(--r-card);padding:24px}
.v-res .dot{font-size:12px;margin-bottom:12px}
.v-res dl{margin:0}
.v-res dl>div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--line);font-size:16px}
.v-res dt{color:var(--text-2)}
.v-res dd{text-align:right;overflow-wrap:anywhere}
.v-res .nota{font-size:13px;line-height:1.5;color:var(--text-2);padding-top:14px;border-top:1px solid var(--line)}
@media (prefers-reduced-motion:reduce){.c-card,.bt{transition:none}}
