/* Pagine migrate dal vecchio sito WordPress (blog, archivio dei corsi, mini corsi, ringraziamenti, utilità).
   Stesse variabili dei tre temi (Classico, Gotico, Punk). Caricato dopo semplice.css. */

/* Intestazione della pagina */
.mg-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;min-height:clamp(340px,52svh,520px);padding:clamp(120px,16vw,170px) 0 clamp(46px,6vw,70px);background:#000 var(--arte) center 30%/cover no-repeat}
.mg-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--bg) 2%,color-mix(in srgb,var(--bg) 70%,transparent) 45%,color-mix(in srgb,var(--bg) 55%,transparent) 100%)}
.mg-hero::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2px,#0000002e 2px 3px);mix-blend-mode:multiply}
.mg-hero .cx-stripe{z-index:1}
.mg-hero-in{width:100%}
.mg-hero h1{font-family:var(--cx-display);text-transform:var(--cx-upper);font-size:clamp(2rem,1.1rem + 3.8vw,4.4rem);line-height:1.04;letter-spacing:-.02em;max-width:22ch;margin:0 0 14px;text-shadow:3px 0 0 color-mix(in srgb,var(--g1) 55%,transparent),-3px 0 0 color-mix(in srgb,var(--g2) 40%,transparent)}
html[data-tema="gotico"] .mg-hero h1{text-shadow:0 3px 0 #000a}
.mg-sotto{margin:0;color:var(--muted);font-size:var(--fs-lead);max-width:60ch}
.mg-cat{margin:12px 0 0;font-size:var(--fs-small);letter-spacing:.08em;text-transform:uppercase}
.mg-cat a{color:var(--a1);margin-right:14px}.mg-cat a:hover{color:var(--a2)}

/* Corpo: sezioni a colonna di lettura */
.mg-sec{padding-block:clamp(40px,6vw,84px)}
.mg-alt{background:color-mix(in srgb,var(--bg) 90%,var(--a1));border-block:1px solid var(--line)}
.mg-primo{padding-block:clamp(26px,4vw,48px) 0}
.mg-col{max-width:880px}
.mg-col>*+*{margin-top:1.1rem}
.mg-h{font-family:var(--cx-display);text-transform:var(--cx-upper);line-height:1.12;letter-spacing:-.01em;margin:1.8rem 0 .4rem}
h2.mg-h{font-size:clamp(1.55rem,1rem + 2vw,2.5rem)}
h3.mg-h{font-size:clamp(1.25rem,1rem + 1vw,1.7rem)}
h4.mg-h,h5.mg-h,h6.mg-h{font-size:var(--fs-lead)}
.mg-h1{font-family:var(--cx-display);text-transform:var(--cx-upper);font-size:clamp(1.7rem,1.1rem + 2.4vw,3rem);line-height:1.08;margin:0 0 .6rem}
.mg-col>.mg-h:first-child,.mg-col>.mg-h1:first-child{margin-top:0}
.mg-rich p{margin:0 0 1rem;color:var(--muted)}
.mg-rich strong{color:var(--text);font-weight:600}
.mg-rich a,.mg-articolo a:not(.button){color:var(--a1);border-bottom:1px solid color-mix(in srgb,var(--a1) 45%,transparent)}
.mg-rich a:hover{color:var(--a2)}
.mg-rich ul,.mg-rich ol{margin:0 0 1rem;padding-left:1.3rem;color:var(--muted)}
.mg-rich li{margin-bottom:.5rem}
.mg-rich blockquote{margin:1.4rem 0;padding:6px 0 6px 22px;border-left:4px solid var(--a1)}
.mg-rich blockquote p{color:var(--text);font-style:italic}
.mg-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mg-list li{position:relative;padding:12px 16px 12px 46px;background:var(--raised);border-left:3px solid var(--a1);color:var(--muted)}
.mg-list li::before{content:'';position:absolute;left:16px;top:50%;width:14px;height:8px;margin-top:-6px;border-left:3px solid var(--a1);border-bottom:3px solid var(--a1);transform:rotate(-45deg)}
.mg-list a{color:var(--text)}
.mg-img{margin:1.6rem 0}.mg-img img{width:100%;height:auto;border:1px solid var(--line)}
.mg-img figcaption{margin-top:8px;color:var(--muted);font-size:var(--fs-small)}
.mg-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:clamp(10px,1.6vw,18px);margin:1.6rem 0}
.mg-gallery .mg-img{margin:0}
.mg-video{margin:1.6rem 0}.mg-video video{width:100%;height:auto;background:#000;border:1px solid var(--line)}
.mg-video .video{width:100%}
.mg-vimeo{display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--a1) 35%,#000),#000 70%)!important}
.mg-vimeo span{position:relative;z-index:2;font-family:var(--cx-display);text-transform:var(--cx-upper);letter-spacing:.08em;padding:12px 22px;border:2px solid var(--a1);background:#000a}
.mg-vimeo:hover span{background:var(--a1);color:var(--on-a1)}
.mg-cta{margin:1.6rem 0;display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center}
.mg-cta .button,.mg-btn{width:auto;max-width:100%}
.mg-ancora{display:block;position:relative;top:-100px;height:0}
.mg-quote{display:flex;gap:18px;margin:1.6rem 0;padding:22px;background:var(--raised);border-left:4px solid var(--a1)}
.mg-quote-img{flex:0 0 76px}.mg-quote-img img{width:76px;height:76px;object-fit:cover;border-radius:50%}
.mg-quote p{margin:0 0 .6rem;color:var(--text);font-style:italic}
.mg-quote footer{color:var(--a2);font-size:var(--fs-small);letter-spacing:.06em;text-transform:uppercase}
.mg-acc{border-block-end:1px solid var(--line)}
.mg-acc:first-of-type{border-block-start:1px solid var(--line)}
.mg-acc summary{cursor:pointer;padding:18px 4px;font-family:var(--cx-display);font-size:var(--fs-lead);list-style:none}
.mg-acc summary::-webkit-details-marker{display:none}
.mg-acc summary::after{content:'+';float:right;color:var(--a1)}
.mg-acc[open] summary::after{content:'\2212'}
.mg-acc>div{padding:0 4px 18px}
.mg-social{list-style:none;margin:1.2rem 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.mg-soc{width:auto!important}

/* Avvisi (archivio, modulo non più attivo) */
.mg-avviso{margin:0 0 1rem;padding:18px 22px;background:color-mix(in srgb,var(--bg) 80%,var(--a1));border:1px solid color-mix(in srgb,var(--a1) 55%,transparent);border-left-width:5px}
.mg-avviso p{margin:0 0 .6rem}.mg-avviso p:last-child{margin:0}
.mg-avviso .text-link{margin-left:14px}
.mg-chiuso{margin:1.4rem 0}

/* Moduli dentro le pagine */
.mg-form{margin:1.6rem 0;max-width:560px}
.mg-newsletter .mg-col{max-width:640px}

/* Indice dell'articolo */
.mg-toc{padding:20px 24px;margin:0 0 2rem;background:var(--raised);border-left:4px solid var(--a1)}
.mg-toc ol{margin:.6rem 0 0;padding-left:1.2rem;display:grid;gap:6px;font-size:var(--fs-small)}
.mg-toc a{border:0!important;color:var(--text)!important}.mg-toc a:hover{color:var(--a1)!important}
.mg-articolo .mg-rich p{color:var(--text);opacity:.88}
.mg-articolo{max-width:820px}

/* Blog: schede, categorie */
.mg-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:clamp(24px,4vw,44px)}
.mg-chips a{padding:8px 16px;border:1px solid var(--line);font-size:var(--fs-small);letter-spacing:.06em;text-transform:uppercase}
.mg-chips a:hover{border-color:var(--a1);color:var(--a1)}
.mg-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:clamp(16px,2.4vw,30px)}
.mg-card{background:var(--raised);border:1px solid var(--line);transition:border-color .2s,transform .2s}
.mg-card:hover{border-color:var(--a1);transform:translateY(-3px)}
.mg-card a{display:flex;flex-direction:column;height:100%}
.mg-card img,.mg-card-ph{width:100%;aspect-ratio:16/10;object-fit:cover;background:linear-gradient(135deg,color-mix(in srgb,var(--a1) 30%,var(--bg)),var(--bg))}
.mg-card-t{padding:18px 20px 22px}
.mg-card-t h3{font-family:var(--cx-display);text-transform:var(--cx-upper);font-size:var(--fs-lead);line-height:1.2;margin:6px 0 10px}
.mg-card-t p{margin:0;color:var(--muted);font-size:var(--fs-small)}
.mg-card-t .mg-meta{color:var(--a2);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}

@media(max-width:760px){.mg-quote{flex-direction:column}.mg-avviso .text-link{margin:8px 0 0;display:inline-block}}

/* Home: blog, social dentro About, area membri */
.blog-home .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.about-title{position:static}
.about-social{order:9;grid-column:1/-1;margin-top:clamp(28px,4vw,56px);padding-top:clamp(24px,3vw,40px);border-top:1px solid var(--line)}
.about-social h3{font-family:var(--cx-display);text-transform:var(--cx-upper);font-size:clamp(1.3rem,1rem + 1vw,1.9rem);margin:0 0 20px}
.members-band{padding-block:clamp(40px,6vw,90px)}
.members-in{max-width:760px;margin-inline:auto;padding:clamp(28px,4vw,56px);text-align:center;background:var(--raised);border:1px solid var(--line);border-top:4px solid var(--a1)}
.members-in h2{font-family:var(--cx-display);text-transform:var(--cx-upper);font-size:clamp(1.7rem,1.1rem + 2.4vw,3rem);margin:0 0 .6rem}
.members-in p{color:var(--muted)}
.members-in .actions{justify-content:center;margin-top:1.4rem}
.about-social h3{text-align:center}
.about-social .social{justify-content:center}
.about-social .news-mini{max-width:760px;margin-inline:auto;text-align:center}
.about-social .news-mini .consent{text-align:left}
