/* ---- dc 2026-09-22 - Corso Affiliate, versione a blocchi nativi Gutenberg ----
   I contenitori usano solo classi dc-*, cosi' il markup salvato resta identico a quello
   che rigenera l'editor (nessun blocco segnalato come non valido). ---- */
.dc-sec{width:100%;box-sizing:border-box;}
.dc-in{max-width:1140px;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box;}
.dc-sec > .dc-in{margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box;}
:where(.dc-sec > .dc-in){display:flex;flex-direction:column;gap:24px;}
.dc-in > *{margin-block:0;}
:where(.dc-box){display:flex;flex-direction:column;gap:16px;}
:where(.dc-row){display:flex;flex-wrap:wrap;gap:24px;justify-content:center;}
.dc-card{background:#FFFFFF;border-radius:24px;padding:24px;box-shadow:0 0 16px rgba(0,0,0,.11);}
:where(.dc-card){display:flex;flex-direction:column;gap:12px;}
.dc-card-l{border-left:6px solid #FF5097;}
.dc-card-t{border-top:6px solid #12245B;}
.dc-pill{display:inline-block;width:max-content;margin-inline:auto;letter-spacing:.4px;text-transform:uppercase;}
.dc-cols{gap:40px;}
.dc-rev{flex-direction:row-reverse;}
:where(.dc-faq-wrap){display:flex;flex-direction:column;gap:16px;}
.dc-faq{background:#FFFFFF;border-radius:8px;padding:16px 20px;}
.dc-faq summary{font-weight:700;font-size:18px;color:#8343FF;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;}
.dc-faq summary::-webkit-details-marker{display:none;}
.dc-faq summary::after{content:"";width:16px;height:16px;flex:0 0 16px;background:#FF5097;clip-path:polygon(50% 75%,0 25%,100% 25%);transition:transform .2s;}
.dc-faq[open] summary::after{transform:rotate(180deg);}
.dc-faq > *:not(summary){margin-top:16px;}
.dc-list{list-style:none;margin:0;padding:0;}
:where(.dc-list){display:flex;flex-direction:column;gap:16px;}
.dc-list > li{position:relative;padding-left:36px;}
.dc-list > li::before{content:"";position:absolute;left:0;top:2px;width:24px;height:24px;background-repeat:no-repeat;background-size:contain;}
.dc-list-x > li::before{background-image:none;background:#FF5097;border-radius:50%;}
:where(.dc-tgrid){display:grid;grid-template-columns:repeat(2,1fr);gap:30px;}
.dc-tcard{background:#F1F1F1;border-radius:7px;padding:24px 28px;}
:where(.dc-tcard){display:flex;flex-direction:column;gap:10px;}
.dc-img img{max-width:100%;height:auto;}
.dc-sparkle-wrap{position:relative;}
.dc-sparkle{position:absolute;z-index:2;pointer-events:none;margin:0;}
.dc-sparkle-hero{top:18px;right:2%;width:85px;}
.dc-sparkle-cta{top:19px;right:12%;width:85px;}
.dc-sparkle-quote{top:-48px;right:-24px;width:75px;}
.dc-sparkle img{width:100%;height:auto;display:block;}
.text_pink{color:#FF5097;}
@media (max-width:1024px){
  .dc-sparkle-hero{top:23px;right:1%;width:75px;}
  .dc-sparkle-cta{top:13px;right:8%;width:75px;}
}
@media (max-width:767px){
  :where(.dc-sec > .dc-in){gap:20px;}
  .dc-cols{gap:24px;}
  :where(.dc-tgrid){grid-template-columns:1fr;}
  :where(.dc-row){flex-direction:column;}
  /* Le righe di Gutenberg con "Non mandare a capo" (is-nowrap) terrebbero tutto su una
     riga sola e la sezione uscirebbe dallo schermo: sul telefono vanno a capo comunque. */
  .wp-block-group.is-nowrap{flex-wrap:wrap;}
  .wp-block-group > *{min-width:0;}
  /* bottone a tutta larghezza con il testo che va a capo, invece che piu' largo dello schermo */
  .wp-block-buttons{width:100%;}
  .wp-block-button{width:100%;}
  .wp-block-button__link{display:block;text-align:center;white-space:normal;}
  /* ultima rete: niente scorrimento orizzontale di pagina se una decorazione
     (sparkle, tratto) sporge oltre il bordo della sezione */
  .alignfull{overflow-x:clip;}
  .dc-sparkle-hero{top:30px;right:-8px;width:56px;}
  .dc-sparkle-cta{top:-6px;right:6%;width:52px;}
  .dc-sparkle-quote{top:8px;right:-12px;width:48px;transform:rotate(30deg);}
}

/* sezioni generate dal layout Elementor */
.dc-s1{padding:80px 80px 80px 80px}
.dc-s1 > .dc-in{max-width:1140px;gap:30px}
.dc-s2{padding:80px 80px 80px 80px}
.dc-s2 > .dc-in{max-width:1140px}
.dc-s3{padding:80px 80px 80px 80px}
.dc-s3 > .dc-in{max-width:1000px;gap:30px}
.dc-s4{padding:80px 80px 80px 80px}
.dc-s4 > .dc-in{max-width:1000px}
.dc-s5{padding:80px 80px 80px 80px}
.dc-s5 > .dc-in{max-width:1000px}
.dc-s6{padding:80px 80px 80px 80px}
.dc-s6 > .dc-in{max-width:1140px;gap:40px}
.dc-s7{padding:80px 80px 80px 80px}
.dc-s7 > .dc-in{max-width:1000px;gap:30px}
.dc-img-w70 img{width:70%;height:auto}
.dc-s8{padding:75px 20px 85px 20px}
.dc-s8 > .dc-in{max-width:1000px;gap:40px}
.dc-s9{padding:80px 80px 80px 80px}
.dc-s9 > .dc-in{max-width:1150px}
.dc-s10{padding:80px 80px 80px 80px}
.dc-s10 > .dc-in{max-width:860px;gap:30px}
.dc-s11{padding:80px 80px 80px 80px}
.dc-s11 > .dc-in{max-width:860px;gap:40px}
.dc-list > li::before{background-image:url("https://lapennadelweb.academy/wp-content/uploads/2026/07/icon_check_circle.svg")}
.dc-s12{padding:80px 80px 80px 80px}
.dc-s12 > .dc-in{max-width:860px;gap:30px}
.dc-s13{padding:80px 80px 80px 80px}
.dc-s13 > .dc-in{max-width:860px;gap:40px}
.dc-s14{padding:80px 80px 80px 80px}
.dc-s14 > .dc-in{max-width:760px;gap:40px}
.dc-s15{padding:75px 20px 85px 20px}
.dc-s15 > .dc-in{max-width:760px;gap:0px}
.dc-list-pink > li::before{background-image:url("https://lapennadelweb.academy/wp-content/uploads/2026/09/icon_check_circle-pink.svg")}
.dc-s16{padding:80px 80px 80px 80px}
.dc-s16 > .dc-in{max-width:760px;gap:40px}
.dc-s17{padding:80px 24px 80px 24px}
.dc-s17 > .dc-in{max-width:760px;gap:30px}
.dc-s18{padding:24px 80px 24px 80px}
.dc-s18 > .dc-in{max-width:1150px;gap:30px}
.dc-img-w59 img{width:59%;height:auto}
.dc-s19{padding:100px 80px 50px 80px}
.dc-s19 > .dc-in{max-width:1140px}
.dc-s20{padding:0px 80px 0px 80px}
.dc-s20 > .dc-in{max-width:1140px;gap:50px}
@media (max-width:1024px){.dc-s1{padding:50px 40px 70px 40px}.dc-s2{padding:40px 40px 60px 40px}.dc-s3{padding:50px 40px 70px 40px}.dc-s4{padding:40px 40px 60px 40px}.dc-s5{padding:40px 40px 60px 40px}.dc-s7{padding:50px 40px 70px 40px}.dc-s9{padding:40px 40px 60px 40px}.dc-s10{padding:50px 40px 70px 40px}.dc-s11{padding:40px 40px 60px 40px}.dc-s12{padding:50px 40px 70px 40px}.dc-s13{padding:40px 40px 60px 40px}.dc-s14{padding:40px 40px 60px 40px}.dc-s16{padding:40px 40px 60px 40px}.dc-s17{padding:50px 40px 70px 40px}.dc-s18{padding:50px 40px 70px 40px}.dc-s19{padding:0px 40px 100px 40px}.dc-s20{padding:0px 40px 100px 40px}}
@media (max-width:767px){.dc-s1{padding:40px 32px 40px 32px}.dc-s3{padding:40px 32px 40px 32px}.dc-s6{padding:64px 20px 64px 20px}.dc-s7{padding:40px 32px 40px 32px}.dc-s8{padding:64px 20px 64px 20px}.dc-s9{padding:40px 24px 40px 24px}.dc-s10{padding:40px 32px 40px 32px}.dc-s12{padding:40px 32px 40px 32px}.dc-s15{padding:64px 20px 64px 20px}.dc-s17{padding:40px 32px 40px 32px}.dc-s18{padding:40px 32px 40px 32px}.dc-s19{padding:30px 30px 30px 30px}.dc-s20{padding:0px 40px 40px 40px}}

/* Testo dei bottoni: core/button dichiara skipSerialization per la tipografia, quindi
   dimensione e peso non finiscono nello stile inline del markup. Li fissiamo qui. */
.dc-sec .wp-block-button__link{font-size:16px;font-weight:700;line-height:1.2;}
@media (max-width:767px){.dc-sec .wp-block-button__link{font-size:15px;}}

/* dc 2026-09-22: le regole di layout stanno dentro :where() cosi' hanno specificita' zero
   e qualunque scelta fatta nel pannello Gutenberg (Stack, Riga, Griglia) le sovrascrive.
   Le proprieta' decorative (sfondo, raggio, padding) restano a specificita' normale. */
:where(.dc-btns){display:flex;flex-wrap:wrap;gap:16px;justify-content:center;}
:where(.dc-btns-left){justify-content:flex-start;}
:where(.dc-btns-right){justify-content:flex-end;}

/* dc 2026-09-22: colori e disegni di sfondo delle sezioni non stanno piu' qui.
   Il colore si imposta dall'editor (Blocco > Colore > Sfondo) e il disegno con le
   classi dc-bg / dc-bg-1..3 definite in dc-custom.css. Backup: dc-core.css.bak-prebg. */
