/* =====================================================================
   CMA · pagina di un concorso (/concorsi/<corpo>/<concorso>/)
   Stessa estetica delle pagine dei corpi (nero militare, avorio, rosso, etichette in mono),
   ma leggera: niente 3D né GSAP, tutto il testo è nell'HTML.
   ===================================================================== */
body.cpage{background:#0b0e0a;color:var(--bone)}
.cpage{--c-bg:#0b0e0a;--c-bg2:#11150f;--c-line:rgba(242,241,236,.1);--c-mut:rgba(242,241,236,.66);--c-acc:#ff5a5f}
.cpage .hdr{color:#fff;background:rgba(11,12,10,.94);backdrop-filter:blur(10px)}
.cpage main a{color:inherit}
.cpage .wrap{max-width:1240px}
.ck{font:500 11.5px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--mil-l)}
/* testata */
.chero{position:relative;overflow:hidden;padding:calc(var(--hdr) + 54px) 0 64px;background:radial-gradient(ellipse 60% 80% at 80% 30%,color-mix(in srgb,var(--hc) 22%,transparent),transparent 65%),radial-gradient(ellipse 70% 70% at 10% 10%,#1c2618,transparent 60%),var(--c-bg);border-bottom:1px solid var(--c-line)}
.chero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:center}
.ccrumb{display:flex;flex-wrap:wrap;gap:8px;font:500 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--c-mut)}
.ccrumb a{text-decoration:none} .ccrumb a:hover{color:var(--bone)} .ccrumb span{opacity:.45} .ccrumb b{color:var(--red);font-weight:500}
.clvl{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:7px 12px;border:1px solid var(--c-line);border-radius:999px;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mil-l)}
.clvl i{width:7px;height:7px;background:var(--red);transform:rotate(45deg)}
.chero h1{margin-top:16px;font:700 clamp(38px,5.2vw,72px)/.96 var(--font);letter-spacing:-.045em;text-wrap:balance;animation:cUp .6s cubic-bezier(.16,1,.3,1) both}
.chero h1 em{font-style:normal;color:var(--red)}
.chero .lead{margin-top:18px;max-width:58ch;font-size:clamp(16px,1.4vw,19px);line-height:1.55;color:var(--c-mut)}
.cctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn-line{border:1px solid rgba(242,241,236,.3);color:var(--bone)} .btn-line:hover{border-color:var(--bone)}
@keyframes cUp{from{transform:translateY(14px)}to{transform:none}}
/* esagono con la foto del corpo */
.chex{position:relative;display:grid;place-items:center;aspect-ratio:1}
.chex .rg{position:absolute;inset:4%;border-radius:50%;border:1px dashed color-mix(in srgb,var(--hc) 60%,transparent);animation:cSpin 50s linear infinite}
.chex .hx{position:relative;width:78%;aspect-ratio:1.136;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:var(--hc);padding:4px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.6))}
.chex .hx>div{width:100%;height:100%;clip-path:inherit;overflow:hidden;background:#12170e;display:grid;place-items:center}
.chex img{width:100%;height:100%;object-fit:cover;object-position:50% 28%}
.chex .hx svg{width:46%;height:46%}
@keyframes cSpin{to{transform:rotate(360deg)}}
/* numeri del bando */
.cfacts{background:var(--c-bg2);border-bottom:1px solid var(--c-line)}
.cfacts .row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.cfacts .f{padding:26px 22px;border-left:1px solid var(--c-line)} .cfacts .f:first-child{border-left:0;padding-left:0}
.cfacts b{display:block;font:700 clamp(24px,2.6vw,36px)/1 var(--font);letter-spacing:-.04em}
.cfacts span{display:block;margin-top:8px;font:500 11px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c-mut)}
/* corpo della pagina: indice + contenuto */
.cbody{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;padding-top:64px;padding-bottom:80px}
.cnav{position:sticky;top:calc(var(--hdr) + 24px);align-self:start;display:grid;gap:2px}
.cnav b{margin-bottom:10px;font:500 11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--c-mut)}
.cnav a{display:flex;gap:10px;padding:8px 10px;border-radius:10px;font-size:14.5px;text-decoration:none;color:var(--c-mut);transition:background .2s,color .2s}
.cnav a i{font:500 11px/1.8 var(--mono);font-style:normal;color:var(--red)}
.cnav a:hover{background:rgba(242,241,236,.05);color:var(--bone)}
.csec{scroll-margin-top:calc(var(--hdr) + 20px)} .csec+.csec{margin-top:64px;padding-top:56px;border-top:1px solid var(--c-line)}
.csec h2{margin-top:10px;font:700 clamp(26px,2.8vw,38px)/1.05 var(--font);letter-spacing:-.04em}
.csec h2 em{font-style:normal;color:var(--red)}
.csec .cintro{margin-top:12px;max-width:64ch;font-size:17px;line-height:1.6;color:var(--c-mut)}
/* requisiti */
.creqs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-top:24px}
.crq{padding:18px;border-radius:18px;background:var(--c-bg2);border:1px solid var(--c-line)}
.crq small{display:flex;align-items:center;gap:8px;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mil-l)}
.crq small svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.crq b{display:block;margin-top:10px;font:700 17px/1.3 var(--font);letter-spacing:-.01em} .crq span{display:block;margin-top:4px;font-size:14px;line-height:1.45;color:var(--c-mut)}
/* fasi */
.csteps{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:10px;margin-top:24px;counter-reset:s;padding:0}
.csteps li{position:relative;padding:18px 16px;border-radius:16px;background:var(--c-bg2);border:1px solid var(--c-line);counter-increment:s}
.csteps li::before{content:counter(s,decimal-leading-zero);display:block;font:500 12px/1 var(--mono);color:var(--red)}
.csteps b{display:block;margin-top:10px;font:700 16px/1.25 var(--font)} .csteps span{display:block;margin-top:4px;font-size:13.5px;color:var(--c-mut)}
.cwarn{display:flex;gap:14px;margin-top:20px;padding:16px 18px;border-radius:16px;background:rgba(215,38,61,.1);border:1px solid rgba(215,38,61,.35);font-size:15.5px;line-height:1.5}
.cwarn b{flex-shrink:0;font:500 11px/1.9 var(--mono);letter-spacing:.14em;color:var(--c-acc)}
/* testo del fascicolo (dalla Libretta CMA) */
.ctext{margin-top:20px;max-width:780px;font-size:16.5px;line-height:1.68;color:rgba(242,241,236,.86)}
.ctext>*+*{margin-top:.9em}
.ctext h5{margin-top:1.6em;font:700 18px/1.3 var(--font);color:var(--bone)}
.ctext .lb{margin-top:1.4em;font:500 11.5px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mil-l)}
.ctext ul{padding-left:1.2em} .ctext li+li{margin-top:.35em} .ctext li::marker{color:var(--red)} .ctext ul ul{margin-top:.4em}
.ctext strong,.ctext b{color:var(--bone)}
.ctext table{width:100%;border-collapse:collapse;font-size:15px} .ctext td,.ctext th{padding:9px 10px;border-bottom:1px solid var(--c-line);text-align:left}
/* preparazione */
.cserv{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;margin-top:24px}
.csv{display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:20px;background:var(--c-bg2);border:1px solid var(--c-line);text-decoration:none;transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s}
.csv:hover{transform:translateY(-4px);border-color:rgba(215,38,61,.6)}
.csv small{font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mil-l)} .csv b{font:700 20px/1.15 var(--font);letter-spacing:-.02em} .csv p{font-size:14.5px;line-height:1.5;color:var(--c-mut)} .csv span{margin-top:auto;font:700 14px var(--font);color:var(--c-acc)}
/* FAQ */
.cfaq details{border-bottom:1px solid var(--c-line)} .cfaq details:first-of-type{border-top:1px solid var(--c-line);margin-top:20px}
.cfaq summary{display:flex;justify-content:space-between;gap:16px;padding:18px 0;cursor:pointer;list-style:none;font:700 18px/1.3 var(--font)}
.cfaq summary::-webkit-details-marker{display:none} .cfaq summary::after{content:"+";color:var(--red);font-size:22px;transition:transform .25s} .cfaq details[open] summary::after{transform:rotate(45deg)}
.cfaq details p{padding:0 0 18px;font-size:16.5px;line-height:1.65;color:var(--c-mut)}
/* altri concorsi */
.cother{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px;margin-top:22px}
.cother a{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:16px;border:1px solid var(--c-line);text-decoration:none;transition:border-color .25s,background .25s}
.cother a:hover{border-color:rgba(242,241,236,.35);background:rgba(242,241,236,.03)}
.cother small{font:500 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mil-l)} .cother b{font:700 17px/1.25 var(--font)} .cother span{font-size:13.5px;color:var(--c-mut)}
.cdisc{margin-top:28px;font-size:13.5px;line-height:1.5;color:var(--c-mut)} .cdisc a{text-decoration:underline}
/* fascia finale */
.cfinal{padding:72px 0;background:radial-gradient(ellipse 60% 100% at 50% 0%,rgba(215,38,61,.18),transparent 70%),var(--c-bg2);border-top:1px solid var(--c-line);text-align:center}
.cfinal h2{font:700 clamp(30px,3.6vw,50px)/1 var(--font);letter-spacing:-.045em;text-wrap:balance} .cfinal h2 em{font-style:normal;color:var(--red)}
.cfinal p{margin:14px auto 0;max-width:56ch;font-size:17px;line-height:1.55;color:var(--c-mut)} .cfinal .cctas{justify-content:center}
@supports (animation-timeline: view()){ .crq,.csteps li,.csv,.cother a{animation:cIn linear both;animation-timeline:view();animation-range:entry 0% entry 35%} }
@keyframes cIn{from{opacity:.001;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (max-width: 960px){ .chero .wrap{grid-template-columns:1fr} .chex{width:100%;max-width:300px;margin:0 auto} .cbody{grid-template-columns:1fr} .cnav{display:none} .cfacts .row{grid-template-columns:1fr 1fr} .cfacts .f:nth-child(3){border-left:0;padding-left:0} .cfacts .f{padding:20px 16px} }
@media (prefers-reduced-motion: reduce){ .cpage *{animation:none!important;transition:none!important} }

/* sezioni lunghe del bando chiuse con sfumatura e "Leggi di più", su computer e telefono (8 nov 2026) */
.cmore{display:none}
.csec.long:not(.open) .ctext{max-height:300px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.csec.long .cmore{display:inline-flex;align-items:center;min-height:46px;margin-top:10px;padding:0 20px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.04);color:#fff;font:600 14.5px/1 var(--font);cursor:pointer}
.csec.long .cmore:hover{border-color:rgba(215,38,61,.6)}
/* i percorsi con i video dentro la pagina del concorso */
.cperc .pblk:first-child{margin-top:32px}
