/* ==========================================================
   ON ZON SU SCHOOL
   TEMPLATE DEFINITIVO PAGINE CORSI LOCALI 2026
   File: css/corsi/corsi-layout.css
   Struttura desktop, layout generale e componenti riutilizzabili
   ========================================================== */

:root {
  --ozs-arancio: #E67E22;
  --ozs-arancio-scuro: #B35400;
  --ozs-testo: #333333;
  --ozs-testo-soft: #444444;
  --ozs-muted: #666666;
  --ozs-fondo-chiaro: #fbf9f6;
  --ozs-fondo-sezione: #fcf8f2;
  --ozs-bordo: #eae6e0;
  --ozs-grigio-menu: #f7f3ee;
}

/* =========================
   CONTENITORI GENERALI
   ========================= */

.corso-locale-2026,
.percorso-attestati-corso,
.programma-corso-full,
.iscrizione-corso-2026,
.sede-corso-2026,
.network-corsi {
  width: 100%;
}

.corso-locale-2026 .container,
.percorso-attestati-corso .container,
.programma-corso-full .container,
.iscrizione-corso-2026 .container,
.sede-corso-2026 .container,
.network-corsi .container {
  max-width: 1180px;
}

.corso-locale-2026 {
  background: #fff;
  padding-top: 40px;
  padding-bottom: 40px;
}

.percorso-attestati-corso,
.programma-corso-full,
.sede-corso-2026 {
  background: #fff;
  padding-top: 40px;
  padding-bottom: 40px;
}

.iscrizione-corso-2026 {
  background: var(--ozs-fondo-sezione);
  border-top: 1px solid #eeeeee;
  padding-top: 40px;
  padding-bottom: 40px;
}

/* =========================
   HERO PAGINA
   ========================= */

.page-header h1 {
  font-size: 32px;
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 10px;
}

.page-header .hero-subtitle-parma,
.page-header .hero-subtitle-corso {
  font-size: 16px;
  color: #fff;
  margin-top: 12px;
  line-height: 1.5;
  font-weight: 400;
}

/* =========================
   HERO INTERNO CORSO
   ========================= */

.corso-hero-intro {
  text-align: center;
  margin-bottom: 35px;
}

.corso-hero-intro h2 {
  font-size: 28px;
  font-weight: 700;
  color: var(--ozs-testo);
  margin: 0 0 15px;
  text-transform: none;
}

.corso-hero-intro .data-corso-evidenza {
  font-size: 18px;
  font-weight: 700;
  color: var(--ozs-arancio);
  margin: 0 0 15px;
  text-align: center;
}

.corso-hero-intro p:not(.data-corso-evidenza) {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--ozs-testo-soft);
  text-align: center;
}

.corso-hero-intro .cta-hero-corso {
  display: inline-block;
  background: var(--ozs-arancio);
  color: #fff !important;
  padding: 10px 20px;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none !important;
  text-transform: none;
  border-radius: 4px;
  line-height: 1.4;
  margin-top: 26px;
  margin-bottom: 18px;
  transition: opacity .2s ease;
}

.corso-hero-intro .cta-hero-corso:hover,
.corso-sidebar .cta-sidebar-corso:hover,
.cta-percorso-corso a:hover {
  opacity: .9;
}

/* =========================
   INFO RAPIDE
   ========================= */

.info-rapide-corso {
  margin-bottom: 40px;
}

.info-rapide-corso > div {
  margin-bottom: 15px;
}

.info-rapide-corso .info-card {
  background: var(--ozs-fondo-chiaro);
  border: 1px solid var(--ozs-bordo);
  border-left: 4px solid var(--ozs-arancio);
  padding: 15px;
  border-radius: 6px;
  text-align: center;
  min-height: 105px;
  height: 100%;
}

.info-rapide-corso .info-label {
  display: block;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #777777;
  font-weight: 600;
  margin-bottom: 5px;
}

.info-rapide-corso .info-value {
  display: block;
  font-size: 16px;
  color: var(--ozs-testo);
  font-weight: 700;
  line-height: 1.4;
}

/* =========================
   MENU INTERNO AD ANCORE
   ========================= */

.ancoraggi-corso {
  max-width: 940px;
  margin: 0 auto 35px;
  padding: 22px 24px;
  background: var(--ozs-grigio-menu);
  border: 1px solid #e4ddd4;
  border-radius: 6px;
}

.ancoraggi-corso ul {
  list-style: none;
  padding-left: 0;
  margin: 0 auto;
  max-width: 720px;
  display: grid;
  grid-template-columns: repeat(2, minmax(240px, 1fr));
  column-gap: 24px;
  row-gap: 10px;
}

.ancoraggi-corso li {
  margin: 0;
}

.ancoraggi-corso a {
  display: block;
  color: #7a3d00;
  text-decoration: underline;
  font-weight: 600;
  text-align: left;
}
/* ==========================================================
   Menu interno corso - larghezza coerente con info rapide
   Solo PC
   ========================================================== */

@media screen and (min-width: 992px) {

  .ancoraggi-corso {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .ancoraggi-corso ul {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

}
/* =========================
   LAYOUT PRINCIPALE 8/4
   ========================= */

.corso-layout-shell {
  margin-top: 10px;
}

.corso-main {
  padding-right: 34px;
}

.corso-article,
.corso-main article {
  margin-bottom: 40px;
}

.corso-main h2,
.percorso-attestati-corso h2,
.programma-corso-full h2,
.sede-corso-2026 h2,
.network-corsi h2 {
  font-size: 24px;
  line-height: 1.25;
  color: var(--ozs-testo);
  font-weight: 700;
  margin: 0 0 15px;
  text-transform: none;
  border-bottom: 2px solid var(--ozs-arancio);
  padding-bottom: 8px;
  display: inline-block;
}

.iscrizione-corso-2026 h2 {
  font-size: 24px;
  line-height: 1.25;
  color: var(--ozs-testo);
  font-weight: 700;
  margin: 0 0 15px;
  text-align: center;
  text-transform: none;
}

.corso-main h3,
.percorso-attestati-corso h3,
.programma-corso-full h3,
.iscrizione-corso-2026 h3,
.sede-corso-2026 h3 {
  font-size: 18px;
  line-height: 1.35;
  color: var(--ozs-testo);
  font-weight: 700;
  margin: 25px 0 15px;
  text-transform: none;
}

.corso-main h4,
.percorso-attestati-corso h4,
.programma-corso-full h4,
.iscrizione-corso-2026 h4,
.sede-corso-2026 h4 {
  font-size: 15px;
  color: var(--ozs-testo);
  font-weight: 700;
  margin: 15px 0 8px;
}

.corso-main p,
.corso-main li,
.percorso-attestati-corso p,
.percorso-attestati-corso li,
.programma-corso-full p,
.programma-corso-full li,
.iscrizione-corso-2026 p,
.iscrizione-corso-2026 li,
.sede-corso-2026 p,
.sede-corso-2026 li {
  font-size: 15px;
  line-height: 1.6;
  color: var(--ozs-testo-soft);
}

.corso-main p,
.percorso-attestati-corso p,
.programma-corso-full p,
.iscrizione-corso-2026 p,
.sede-corso-2026 p {
  margin-bottom: 15px;
}

.corso-main ul,
.percorso-attestati-corso ul,
.iscrizione-corso-2026 ul,
.sede-corso-2026 ul {
  padding-left: 20px;
  margin-bottom: 25px;
}

.corso-main li,
.percorso-attestati-corso li,
.iscrizione-corso-2026 li,
.sede-corso-2026 li {
  margin-bottom: 8px;
}

/* =========================
   BOX E NOTE
   ========================= */

.notice-tradizione {
  background: var(--ozs-fondo-chiaro);
  border-left: 4px solid var(--ozs-arancio);
  padding: 15px 20px;
  margin: 0 0 30px;
  border-radius: 0 4px 4px 0;
}

.notice-tradizione p,
.box-avvertenza-professionale p,
.tutela-corso-box p {
  margin-bottom: 0;
}

.box-avvertenza-professionale {
  background: #fff8f0;
  border-left: 4px solid #333333;
  padding: 20px;
  border-radius: 0 4px 4px 0;
  margin: 10px 0 25px;
}

/* =========================
   SIDEBAR
   ========================= */

.corso-sidebar {
  padding-left: 20px;
}

.sidebar-inner-corso {
  position: sticky;
  top: 90px;
}

.side-card-corso {
  background: var(--ozs-fondo-chiaro);
  border: 1px solid var(--ozs-bordo);
  border-radius: 6px;
  padding: 20px;
  margin-bottom: 20px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}

.side-card-corso h3 {
  font-size: 18px;
  color: var(--ozs-testo);
  font-weight: 700;
  margin: 0 0 15px;
  text-transform: none;
}

.side-card-corso p,
.side-card-corso li {
  font-size: 15px;
  line-height: 1.5;
  color: var(--ozs-testo-soft);
}

.side-card-corso ul {
  padding-left: 15px;
  margin-bottom: 0;
  line-height: 1.6;
}

.side-card-corso li {
  margin-bottom: 4px;
}

.corso-sidebar .cta-sidebar-corso {
  display: block;
  background: var(--ozs-arancio);
  color: #fff !important;
  text-align: center;
  padding: 8px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none !important;
  border-radius: 4px;
  transition: opacity .2s ease;
}

.side-contatti {
  background: #333333;
  color: #ffffff;
}

.side-contatti h3 {
  color: #ffffff;
  border-bottom: 1px solid #555555;
  padding-bottom: 5px;
}

.side-contatti p,
.side-contatti strong {
  color: #ffffff;
}

.side-contatti a {
  font-weight: 700;
  text-decoration: underline;
}

.side-contatti a[href^="https://wa.me"] {
  color: #25D366;
  font-size: 16px;
}

.side-contatti a[href^="mailto:"] {
  color: #ffffff;
}

.side-card-corso a {
  color: var(--ozs-arancio);
  text-decoration: none;
}

/* =========================
   PERCORSO E ATTESTATI
   ========================= */

.percorso-attestati-corso .intro-percorso-attestati,
.programma-corso-full .intro-programma-corso,
.iscrizione-corso-2026 .col-lg-12.text-center p {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
  font-size: 16px;
  line-height: 1.7;
  color: var(--ozs-testo-soft);
}

.percorso-attestati-corso .container > .row:nth-of-type(2),
.iscrizione-corso-2026 .container > .row:nth-of-type(2),
.sede-corso-2026 .sede-corso-box > .row {
  display: flex;
  flex-wrap: wrap;
}

.card-percorso-corso,
.iscrizione-corso-2026 .about-details,
.box-iscrizione-corso,
.box-preiscrizione-full-corso,
.card-contatti-sede-corso {
  background: #ffffff;
  border: 1px solid var(--ozs-bordo);
  border-radius: 6px;
  padding: 25px;
}

.card-percorso-corso,
.iscrizione-corso-2026 .about-details,
.box-iscrizione-corso {
  height: 100%;
}

.card-percorso-corso {
  background: var(--ozs-fondo-chiaro);
}

.box-iscrizione-corso {
  border-top: 4px solid var(--ozs-arancio);
  user-select: text;
  -webkit-user-select: text;
}

.cta-percorso-corso {
  text-align: center;
  margin-top: 5px;
}

.cta-percorso-corso a {
  display: inline-block;
  background: var(--ozs-arancio);
  color: #ffffff !important;
  padding: 14px 24px;
  font-weight: 800;
  font-size: 18px;
  line-height: 1.6;
  border-radius: 4px;
  text-decoration: none !important;
  text-transform: uppercase;
  word-spacing: .05em;
  transition: opacity .2s ease;
}

/* =========================
   PIANO DI STUDI
   ========================= */

.programma-corso-full h2,
.programma-corso-full .sottotitolo-programma,
.programma-corso-full .intro-programma-corso {
  text-align: center;
}

.programma-corso-full .sottotitolo-programma {
  font-size: 18px;
  font-weight: 600;
  color: #555555;
  margin-top: 5px;
  margin-bottom: 15px;
  border: none;
  display: block;
}

.img-programma-corso {
  margin-bottom: 35px;
  text-align: center;
}

.img-programma-corso img {
  max-width: 800px;
  width: 100%;
  height: auto;
  border-radius: 6px;
  display: block;
  margin: 0 auto;
}

.programma-lista-corso {
  column-count: 2;
  column-gap: 50px;
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  margin-top: 30px;
  margin-bottom: 0;
}

.programma-lista-corso li {
  display: inline-block;
  width: 100%;
  break-inside: avoid;
  list-style: none !important;
  list-style-type: none !important;
  border-left: 3px solid var(--ozs-arancio);
  background: #ffffff;
  padding: 16px 18px;
  margin-left: 0 !important;
  margin-bottom: 18px;
  font-size: 15px;
  line-height: 1.65;
  box-shadow: 0 3px 10px rgba(0,0,0,0.035);
}

.programma-lista-corso li::before,
.programma-lista-corso li::after {
  content: none !important;
  display: none !important;
}

.programma-lista-corso a {
  color: var(--ozs-arancio);
  text-decoration: underline;
  font-weight: 600;
}

/* =========================
   ISCRIZIONE
   ========================= */

.iscrizione-corso-2026 .col-lg-12.text-center {
  margin-bottom: 35px;
}

.iscrizione-corso-2026 .col-lg-6,
.sede-corso-2026 .col-lg-6,
.percorso-attestati-corso .col-lg-6 {
  margin-bottom: 20px;
}

.iscrizione-corso-2026 .about-details h3 {
  border-bottom: 2px solid var(--ozs-arancio);
  padding-bottom: 6px;
  display: inline-block;
}

.lista-contatti-iscrizione-corso {
  list-style: none;
  padding-left: 0 !important;
  margin-bottom: 20px;
  font-size: 15px;
}

.lista-contatti-iscrizione-corso li {
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  line-height: 1.6;
}

.lista-contatti-iscrizione-corso a {
  color: var(--ozs-arancio-scuro);
  text-decoration: underline;
  font-weight: 700;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.lista-contatti-iscrizione-corso a[href^="https://wa.me"] {
  color: #25D366;
}

.box-messaggio-corso {
  background: #f9f9f9;
  border-left: 3px solid #666666;
  padding: 12px 15px;
  margin-bottom: 15px;
  border-radius: 4px;
}

.box-messaggio-corso blockquote {
  font-style: italic;
  font-size: 14px;
  margin: 0;
  padding: 0;
  border: none;
  color: var(--ozs-testo);
  line-height: 1.5;
}

.box-preiscrizione-full-corso {
  margin-top: 10px;
  margin-bottom: 25px;
}

.tutela-corso-box {
  background: #fff8f0;
  border-left: 4px solid #333333;
  padding: 25px;
  border-radius: 0 6px 6px 0;
}

.tutela-corso-box hr {
  border-top: 1px dashed rgba(0,0,0,0.15);
  margin: 15px 0;
}

.tutela-corso-box p:last-child {
  font-size: 14px;
  color: var(--ozs-muted);
  font-style: italic;
}

/* =========================
   SEDE E MAPPA
   ========================= */

.sede-corso-box {
  background: #ffffff;
}

.sede-corso-2026 .row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.sede-corso-2026 img {
  max-width: 100%;
  height: auto;
  border-radius: 4px;
}

.sede-corso-2026 .col-lg-6:first-child > div {
  background: var(--ozs-fondo-chiaro);
  border: 1px solid var(--ozs-bordo);
  padding: 8px;
  border-radius: 6px;
}

.card-contatti-sede-corso {
  background: var(--ozs-fondo-chiaro);
  margin-bottom: 20px;
}

.card-contatti-sede-corso a[href^="https://wa.me"] {
  color: #25D366;
  font-weight: 700;
  text-decoration: underline;
}

.card-contatti-sede-corso a[href^="mailto:"] {
  color: var(--ozs-arancio-scuro);
  font-weight: 700;
  text-decoration: underline;
}

.sede-corso-2026 address {
  font-style: normal;
  line-height: 1.6;
  font-size: 16px;
  color: #555555;
  margin-bottom: 20px;
  padding-left: 10px;
  border-left: 3px solid var(--ozs-arancio);
}

.sede-corso-2026 address strong {
  color: var(--ozs-testo);
}

.sede-corso-2026 a[href*="maps"] {
  display: inline-block;
  background: var(--ozs-arancio-scuro);
  color: #ffffff !important;
  padding: 12px 25px;
  border-radius: 50px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none !important;
  box-shadow: 0 2px 5px rgba(0,0,0,0.15);
  transition: opacity .2s ease;
}

.filosofia-radici-corso {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  background: var(--ozs-fondo-chiaro);
  border: 1px solid var(--ozs-bordo);
  padding: 25px;
  border-radius: 6px;
  margin-top: 25px;
  margin-bottom: 35px;
  align-items: center;
}

.filosofia-radici-corso > div:first-child {
  flex: 0 0 180px;
  text-align: center;
  margin: 0 auto;
}

.testo-filosofia-corso {
  flex: 1;
  min-width: 280px;
}

.testo-filosofia-corso h4 {
  color: var(--ozs-arancio-scuro);
  margin-top: 0;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}

.testo-filosofia-corso div {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 15px;
  flex-wrap: wrap;
}

.testo-filosofia-corso a {
  font-weight: 700;
  text-decoration: underline;
  color: var(--ozs-testo);
  font-size: 14px;
}

.testo-filosofia-corso img {
  height: 32px;
  width: auto;
  display: block;
}

.mappa-corso {
  margin-top: 25px;
}

.mappa-corso h3 {
  margin-top: 0;
}

.google-maps {
  position: relative;
  padding-bottom: 350px;
  height: 0;
  overflow: hidden;
  border: 1px solid var(--ozs-bordo);
  border-radius: 6px;
  background: #f9f9f9;
}

.google-maps iframe {
  border: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* =========================
   NETWORK CORSI ITALIA
   ========================= */

.network-corsi {
  background: #fcfcfc;
  padding-top: 50px;
  padding-bottom: 60px;
  border-top: 1px solid #eaeaea;
  text-align: center;
}

.network-corsi h2 {
  margin-top: 0;
  margin-bottom: 30px;
}

.network-grid-corsi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.network-grid-corsi a {
  display: inline-block;
  background-color: #ffffff;
  border: 1px solid #dddddd;
  color: var(--ozs-testo-soft);
  font-weight: 600;
  padding: 10px 20px;
  border-radius: 25px;
  text-decoration: none;
  font-size: 15px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.02);
  transition: all .2s ease;
}

.network-grid-corsi a:hover,
.network-grid-corsi a.network-current {
  background-color: var(--ozs-arancio);
  border-color: var(--ozs-arancio);
  color: #ffffff;
  font-weight: 700;
  box-shadow: 0 3px 6px rgba(230,126,34,0.2);
}

/* =========================
   WIDGET MACROLIBRARSI
   ========================= */

.macrolibrarsi-widget-corso {
  margin: 30px auto 50px;
  min-height: 150px;
  text-align: center;
  max-width: 100%;
  overflow: hidden;
}
/* ==========================================================
   Liste con icona di spunta: elimina pallini doppi
   ========================================================== */

.lista-check-corso {
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.lista-check-corso li {
  list-style: none !important;
  list-style-type: none !important;
  margin-left: 0 !important;
}

.lista-check-corso li::before,
.lista-check-corso li::after {
  content: none !important;
  display: none !important;
}
/* ==========================================================
   FORZA LISTE CHECK VERDI - / Pagine corsi
   Icona quadrata verde con spunta bianca
   ========================================================== */

.corso-locale-2026 .lista-check-verde,
.lista-check-verde {
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  margin-top: 15px !important;
  margin-bottom: 20px !important;
}

.corso-locale-2026 .lista-check-verde li,
.lista-check-verde li {
  position: relative !important;
  display: block !important;
  list-style: none !important;
  list-style-type: none !important;
  margin-left: 0 !important;
  margin-bottom: 10px !important;
  padding-left: 36px !important;
  line-height: 1.6 !important;
}

.corso-locale-2026 .lista-check-verde li::marker,
.lista-check-verde li::marker {
  content: "" !important;
  display: none !important;
  font-size: 0 !important;
}

.corso-locale-2026 .lista-check-verde li::before,
.lista-check-verde li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 3px !important;
  width: 20px !important;
  height: 20px !important;
  background-color: #2ecc71 !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
  text-align: center !important;
  display: inline-block !important;
}

.corso-locale-2026 .lista-check-verde li::after,
.lista-check-verde li::after {
  content: none !important;
  display: none !important;
}

.voce-check-titolo {
  font-weight: 700;
  color: #333;
}

.intro-lista-check {
  font-size: 1.1em;
  font-weight: 600;
  margin-top: 35px;
}

.sottotitolo-lista-check {
  margin-top: 30px;
  font-weight: 700;
  color: #555;
}
/* ==========================================================
   Organizzazione percorsi - variazioni visive liste
   ========================================================== */

/* 1) Elenco "Prima / Seconda / Terza annualità"
   icone arancio On Zon Su + spunta bianca
   inizio frase arancio */
.lista-check-moduli-arancio li::before {
  background: #B35400 !important;
  border-color: #B35400 !important;
  color: #ffffff !important;
  content: "✓" !important;
}

.lista-check-moduli-arancio .voce-check-titolo {
  color: #B35400 !important;
  font-weight: 700 !important;
}

/* 2) Elenco "Struttura modulare e orizzontale"
   icone color avio + spunta bianca
   inizio frase verde */
.lista-check-struttura-avio li::before {
  background: #6F8FA3 !important;
  border-color: #6F8FA3 !important;
  color: #ffffff !important;
  content: "✓" !important;
}

.lista-check-struttura-avio .voce-check-titolo {
  color: #2E8B57 !important;
  font-weight: 700 !important;
}
/* ==========================================================
   Calendario corsi - stile On Zon Su School
   ========================================================== */

.calendario-corso-wrap {
  margin-bottom: 40px;
}

.calendario-corso-card {
  background: #fcf8f2;
  border: 1px solid #e7dfd5;
  border-left: 5px solid #B35400;
  border-radius: 8px;
  padding: 28px 30px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.04);
}

.calendario-corso-header {
  text-align: center;
  margin-bottom: 22px;
}

.calendario-corso-label {
  font-size: 13px;
  color: #777;
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
}

.calendario-corso-titolo {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  color: #B35400;
  font-size: 26px;
  line-height: 1.3;
  font-weight: 700;
}

.calendario-corso-nota {
  max-width: 820px;
  margin: 0 auto 26px;
  background: #fff;
  border: 1px solid #eadfd2;
  border-radius: 7px;
  padding: 20px 22px;
  text-align: center;
}

.calendario-corso-programmazione {
  font-size: 19px;
  font-weight: 700;
  color: #333;
  margin-bottom: 6px;
}

.calendario-corso-avviso {
  font-size: 15px;
  line-height: 1.55;
  color: #666;
  font-style: italic;
  margin-bottom: 16px;
}

.calendario-corso-cta {
  display: inline-block;
  background: #E67E22;
  color: #fff !important;
  padding: 11px 20px;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none !important;
}

.calendario-corso-cta:hover {
  opacity: .9;
}

.calendario-date-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  gap: 8px 18px;
  max-width: 860px;
  margin: 0 auto;
}

.calendario-data-item {
  display: flex;
  align-items: center;
  background: #fff;
  border: 1px solid #eadfd2;
  border-left: 1px solid #eadfd2;
  border-radius: 6px;
  padding: 9px 14px;
  font-size: 16px;
  color: #333;
  line-height: 1.34;
}

.calendario-numero {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 27px;
  margin-right: 11px;
  background: #B35400;
  color: #fff;
  border-radius: 4px;
  font-weight: 700;
  font-size: 14px;
}

.calendario-data-item time {
  font-weight: 600;
  color: #333;
}


/* ==========================================================
   Sidebar corsi - pulizia liste, date, etichette
   ========================================================== */

.sidebar-corso-locale .side-card-corso {
  border-left: 4px solid #E67E22;
}

.side-info-label {
  font-weight: 700;
  color: #333;
}

.side-prezzo-evidenza {
  font-weight: 700;
  color: #333;
  font-size: 16px;
}

.sidebar-calendar-corso,
.sidebar-indice-corso {
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.sidebar-calendar-corso li,
.sidebar-indice-corso li {
  list-style: none !important;
  list-style-type: none !important;
}

.sidebar-calendar-corso li::marker,
.sidebar-indice-corso li::marker {
  content: "" !important;
  font-size: 0 !important;
}

.sidebar-calendar-corso li {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border-bottom: 1px solid #eee;
  padding: 8px 0;
  margin-bottom: 0;
  line-height: 1.45;
}

.sidebar-calendar-corso li:last-child {
  border-bottom: none;
}

.side-date-num {
  flex: 0 0 auto;
  min-width: 30px;
  height: 24px;
  background: #B35400;
  color: #fff;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 700;
  line-height: 24px;
  text-align: center;
}

.sidebar-calendar-corso time {
  color: #333;
}

.sidebar-indice-corso li {
  border-bottom: 1px solid #eee;
  padding: 7px 0;
  margin-bottom: 0;
}

.sidebar-indice-corso li:last-child {
  border-bottom: none;
}

.sidebar-indice-corso a {
  color: #B35400;
  text-decoration: underline;
  font-weight: 600;
}
/* ==========================================================
   Correzione definitiva pallini arancio sidebar calendario corsi
   ========================================================== */

.side-card-calendario-corso .sidebar-calendar-corso,
.side-card-calendario-corso .sidebar-calendar-corso li {
  list-style: none !important;
  list-style-type: none !important;
  background-image: none !important;
}

.side-card-calendario-corso .sidebar-calendar-corso {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.side-card-calendario-corso .sidebar-calendar-corso li {
  position: relative !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  background: none !important;
}

.side-card-calendario-corso .sidebar-calendar-corso li::before,
.side-card-calendario-corso .sidebar-calendar-corso li::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  border: 0 !important;
}

.side-card-calendario-corso .sidebar-calendar-corso li::marker {
  content: "" !important;
  font-size: 0 !important;
}
/* ==========================================================
   Sidebar corsi - rifiniture icone, quote, contatti
   ========================================================== */

.side-info-icon-oro {
  background: #fff7e6;
  color: #B35400;
}

.side-email-link-corso {
  color: #B35400 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  word-break: break-word;
  overflow-wrap: anywhere;
}
/* ==========================================================
   Indirizzo sede corsi - box armonizzato con layout On Zon Su
   versione più visibile
   ========================================================== */

.box-indirizzo-sede-corso {
  background: #f4fbfb;
  border: 1px solid #cfe8e8;
  border-left: 5px solid #168C96;
  border-radius: 0 8px 8px 0;
  padding: 22px 25px;
  margin: 34px 0 26px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.04);
}

.titolo-indirizzo-sede {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 0;
  margin-bottom: 18px;
  color: #333;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
}

.titolo-indirizzo-sede i {
  color: #168C96;
  font-size: 23px;
}

.riga-indirizzo-info {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  color: #333;
  font-size: 17px;
  line-height: 1.5;
}

.riga-indirizzo-info i {
  color: #168C96;
  font-size: 19px;
}

.label-indirizzo-sede {
  font-weight: 700;
  color: #333;
}

.indirizzo-sede-corso {
  font-style: normal;
  font-size: 18px;
  line-height: 1.65;
  margin-bottom: 0;
  background: #ffffff;
  border: 1px solid #cfe8e8;
  border-radius: 6px;
  padding: 16px 18px;
  box-shadow: 0 2px 8px rgba(22,140,150,0.06);
}

.riga-indirizzo-sede {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-bottom: 8px;
  color: #333;
}

.riga-indirizzo-sede:last-child {
  margin-bottom: 0;
}

.riga-indirizzo-sede i {
  flex: 0 0 auto;
  color: #168C96;
  font-size: 19px;
  margin-top: 3px;
}

.riga-indirizzo-secondaria {
  padding-left: 28px;
  color: #555;
}

.titolo-indirizzo-sede {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 0;
  margin-bottom: 18px;
  color: #333;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
}

.titolo-indirizzo-sede i {
  color: #5B9EA6;
  font-size: 22px;
}

.riga-indirizzo-info {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  color: #333;
  font-size: 17px;
  line-height: 1.5;
}

.riga-indirizzo-info i {
  color: #5B9EA6;
  font-size: 18px;
}

.label-indirizzo-sede {
  font-weight: 700;
  color: #333;
}

.indirizzo-sede-corso {
  font-style: normal;
  font-size: 18px;
  line-height: 1.65;
  margin-bottom: 0;
  background: #fff;
  border: 1px solid #efe3d6;
  border-radius: 6px;
  padding: 16px 18px;
}

.riga-indirizzo-sede {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-bottom: 8px;
  color: #333;
}

.riga-indirizzo-sede:last-child {
  margin-bottom: 0;
}

.riga-indirizzo-sede i {
  flex: 0 0 auto;
  color: #5B9EA6;
  font-size: 18px;
  margin-top: 3px;
}
.blocco-indirizzo-sede {
  display: block;
  min-width: 0;
}

.cap-citta-sede {
  display: inline-block;
  margin-top: 2px;
  color: #555;
  line-height: 1.45;
}

.localita-sede-nowrap {
  white-space: nowrap;
}
.testo-indirizzo-info {
  display: block;
  min-width: 0;
}
.spazio-prima-sede-corso {
  margin-bottom: 40px;
}
.riga-indirizzo-secondaria {
  padding-left: 28px;
  color: #555;
}

/* ==========================================================
   Mappa sede corsi 2026 - blocco isolato da .google-maps
   ========================================================== */

.mappa-corso-2026 {
  width: 100%;
  margin: 30px 0 30px;
  overflow: visible !important;
}

.mappa-corso-frame {
  width: 100%;
  height: 420px;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  background: #f4fbfb;
}

.mappa-corso-frame iframe {
  display: block;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

.mappa-corso-info {
  margin-top: 12px;
  padding: 12px 16px;
  background: #f4fbfb;
  border: 1px solid #cfe8e8;
  border-left: 5px solid #168C96;
  border-radius: 0 6px 6px 0;
}

.mappa-corso-info p {
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.5;
  color: #555;
}

.mappa-corso-info p:last-child {
  margin-bottom: 0;
}

.mappa-corso-info a {
  color: #168C96;
  text-decoration: underline;
  font-weight: 700;
}
/* ==========================================================
   Mappa corso - titolo centrato e respiro laterale
   ========================================================== */

.titolo-mappa-corso {
  margin-top: 40px;
  margin-bottom: 22px;
  font-size: 20px;
  line-height: 1.35;
  color: #333;
  font-weight: 700;
  text-align: center;
}

.mappa-corso-2026 {
  padding-left: 12px;
  padding-right: 12px;
  box-sizing: border-box;
}

.mappa-corso-frame {
  border: 1px solid #cfe8e8;
  box-sizing: border-box;
}
/* ==========================================================
   Riduzione spazio sopra blocco full width template
   ========================================================== */

.corso-fullwidth-section {
  padding-top: 24px !important;
}

.corso-fullwidth-section .corso-fullwidth-row:first-child {
  margin-top: 0 !important;
}
/* ==========================================================
   Piano didattico - immagine centrata e lista a due colonne
   ========================================================== */

.lista-programma-locale-corso {
  width: 100% !important;
  margin-top: 30px !important;
  padding-left: 20px !important;
  list-style-type: disc !important;
  column-count: 1 !important;
  column-gap: 0 !important;
}

.lista-programma-locale-corso li {
  display: list-item !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
  margin-bottom: 15px !important;
  line-height: 1.6 !important;
}

@media screen and (min-width: 992px) {
  .lista-programma-locale-corso {
    column-count: 2 !important;
    -webkit-column-count: 2 !important;
    column-gap: 60px !important;
    -webkit-column-gap: 60px !important;
  }
}

/* ==========================================================
   Piano didattico - immagine centrata
   ========================================================== */

.contenuti-corso-2026 figure {
  text-align: center !important;
  margin: 30px auto 35px !important;
}

.contenuti-corso-2026 figure img {
  display: inline-block !important;
  max-width: 800px !important;
  width: 100% !important;
  height: auto !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}

.lista-programma-locale-corso {
  width: 100% !important;
  margin: 28px 0 0 !important;
  padding-left: 0 !important;
  list-style: none !important;
  column-count: 1 !important;
  column-gap: 0 !important;
}

.lista-programma-locale-corso li {
  position: relative !important;
  display: block !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
  margin-bottom: 13px !important;
  padding-left: 23px !important;
  line-height: 1.6 !important;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

.lista-programma-locale-corso li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0.02em;
  color: #B35400;
  font-size: 21px;
  line-height: 1;
  font-weight: 800;
}

.lista-programma-locale-corso li:last-child {
  margin-bottom: 0 !important;
}

@media screen and (min-width: 992px) {
  .lista-programma-locale-corso {
    column-count: 2 !important;
    -webkit-column-count: 2 !important;
    column-gap: 54px !important;
    -webkit-column-gap: 54px !important;
  }
}

/* Etichetta grafica iniziale voci piano didattico */
.programma-voce-guida {
  color: #168C96;
  font-weight: 700;
}

.lista-programma-locale-corso a {
  color: #B35400 !important;
  font-weight: 700;
  text-decoration: underline;
}
/* ==========================================================
   Piano didattico corso - alternanza cromatica continua
   Verde / arancio / blu su parole guida e icone
   ========================================================== */

/* Verde: voci 1, 4, 7, 10, 13, 16 */
.lista-programma-locale-corso li:nth-child(3n+1) .programma-voce-guida,
.lista-programma-locale-corso li:nth-child(3n+1) .programma-voce-guida a {
  color: #1E7A46 !important;
  font-weight: 700 !important;
}

.lista-programma-locale-corso li:nth-child(3n+1)::before {
  background: #1E7A46 !important;
  border-color: #1E7A46 !important;
  color: #ffffff !important;
}

/* Arancio On Zon Su: voci 2, 5, 8, 11, 14 */
.lista-programma-locale-corso li:nth-child(3n+2) .programma-voce-guida,
.lista-programma-locale-corso li:nth-child(3n+2) .programma-voce-guida a {
  color: #B35400 !important;
  font-weight: 700 !important;
}

.lista-programma-locale-corso li:nth-child(3n+2)::before {
  background: #B35400 !important;
  border-color: #B35400 !important;
  color: #ffffff !important;
}

/* Blu avio: voci 3, 6, 9, 12, 15 */
.lista-programma-locale-corso li:nth-child(3n) .programma-voce-guida,
.lista-programma-locale-corso li:nth-child(3n) .programma-voce-guida a {
  color: #2F5F9F !important;
  font-weight: 700 !important;
}

.lista-programma-locale-corso li:nth-child(3n)::before {
  background: #2F5F9F !important;
  border-color: #2F5F9F !important;
  color: #ffffff !important;
}

/* ==========================================================
   Piano didattico - titolo centrato sopra immagine
   ========================================================== */

.intestazione-piano-didattico-corso {
  text-align: center;
  margin-bottom: 24px;
}

.intestazione-piano-didattico-corso .titolo-sezione-corso {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.intestazione-piano-didattico-corso h4 {
  text-align: center;
  margin-top: 8px;
  margin-bottom: 0;
  color: #555;
  font-weight: 600;
}
/* ==========================================================
   Sidebar corso - icone decorative sobrie
   ========================================================== */

.side-card-title-icon {
  display: flex;
  align-items: center;
  gap: 9px;
}

.side-card-title-icon i {
  color: #E67E22;
  font-size: 19px;
  line-height: 1;
}

.side-info-riga {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.side-info-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin-top: 1px;
  border-radius: 5px;
  background: #fff3e7;
  color: #E67E22;
  font-size: 14px;
}

.side-info-icon-blu {
  background: #f4f9fc;
  color: #3498db;
}

.side-card-prossimo-corso .side-info-label,
.side-card-orari-corso .side-info-label {
  color: #B35400;
  font-weight: 700;
}

/* ==========================================================
   Iscrizioni corso - pannelli visuali On Zon Su School
   ========================================================== */

.iscrizione-visual-corso {
  position: relative;
}

.iscrizione-card-corso {
  position: relative;
  margin: 24px 0;
  padding: 22px 25px;
  border-radius: 0 8px 8px 0;
  border: 1px solid #eadfd2;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.iscrizione-card-corso h4 {
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.35;
}

.iscrizione-card-corso h4 i {
  flex: 0 0 auto;
  font-size: 21px;
}

.iscrizione-card-corso p:last-child {
  margin-bottom: 0;
}

.iscrizione-card-intro {
  background: #fffcf9;
  border-left: 5px solid #E67E22;
}

.iscrizione-card-intro h4 i {
  color: #E67E22;
}

.iscrizione-card-percorso {
  background: #fffaf5;
  border: 1px solid #f1d8bd;
  border-left: 5px solid #E67E22;
}

.iscrizione-card-percorso h4 i {
  color: #E67E22;
}

.iscrizione-card-percorso .durata-voce-guida {
  color: #B35400;
  font-weight: 700;
}

.iscrizione-card-percorso .lista-iscrizione-check li,
.iscrizione-card-percorso .lista-percorso-riflessologo li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.iscrizione-card-percorso .check-verde-piccolo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  border-radius: 50%;
  background: #E67E22;
  color: #ffffff !important;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  margin-top: 2px;
}

.iscrizione-card-durata {
  background: #f4fbfb;
  border-left: 5px solid #168C96;
  border-color: #cfe8e8;
}

.iscrizione-card-durata h4 i {
  color: #168C96;
}

.iscrizione-card-corso a {
  font-weight: 700;
  text-decoration: underline;
}

.iscrizione-card-intro a {
  color: #B35400;
}

.iscrizione-card-percorso a {
  color: #B35400;
}
/* ==========================================================
   Blocco Diventare riflessologo - inizio frase arancione
   ========================================================== */

.iscrizione-card-diventare-riflessologo .durata-voce-guida,
.iscrizione-card-percorso .durata-voce-guida {
  color: #B35400 !important;
  font-weight: 700 !important;
}

.iscrizione-card-durata a {
  color: #168C96;
}

@media screen and (max-width: 767px) {

  .iscrizione-card-corso {
    padding: 20px 18px;
  }

  .iscrizione-card-corso h4 {
    align-items: flex-start;
    font-size: 18px;
  }

  .iscrizione-card-corso h4 i {
    margin-top: 2px;
  }

}

/* ==========================================================
   Contatti diretti iscrizione - spaziature corrette
   ========================================================== */

.contatto-email-corso {
  margin-top: 8px !important;
  margin-bottom: 0 !important;
}

.contatto-telefono-corso {
  margin-top: -6px !important;
  margin-bottom: 18px !important;
}

.contatto-telefono-corso span:first-child {
  margin-bottom: 16px !important;
}

/* ==========================================================
   Sede corso - layout due colonne stile On Zon Su School
   ========================================================== */

.sezione-sede-corso {
  position: relative;
}

.figure-sede-corso {
  text-align: center;
  margin: 0 auto 32px;
}

.figure-sede-corso img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 3px 12px rgba(0,0,0,0.08);
}

/* Allineamento sezione sede con i blocchi successivi */

.spazio-prima-sede-corso {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.spazio-prima-sede-corso > [class*="col-"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.sede-grid-corso,
.sezione-sede-corso .sede-grid-corso {
  margin-top: 10px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.sede-grid-corso > [class*="col-"],
.sezione-sede-corso .sede-grid-corso > [class*="col-"] {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.sede-grid-corso > div {
  margin-bottom: 18px;
}

.sede-colonna-card {
  height: 100%;
}

.titolo-box-sede-corso {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 0;
  margin-bottom: 16px;
  font-weight: 700;
  color: #333;
}

.titolo-box-sede-corso i {
  font-size: 21px;
}

.titolo-box-sede-corso-verde i {
  color: #2ecc71;
}

/* Box sede isolati dalle vecchie classi box-dinamico-* */

.box-sede-corso {
  padding: 18px 24px !important;
  margin-bottom: 16px !important;
  border: 1px solid #eadfd2;
  border-radius: 0 8px 8px 0;
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.box-sede-contatti-principali {
  background: #f6fff8;
  border-color: #d7f1df;
  border-left: 5px solid #2ecc71 !important;
}

.box-sede-email {
  background: #fffcf9;
  border-color: #f1d8bd;
  border-left: 5px solid #E67E22 !important;
}

/* Rende il box indirizzo più armonico nella colonna destra */

.sede-colonna-card .box-indirizzo-sede-corso {
  margin-top: 0;
  margin-bottom: 0;
  height: auto;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

@media screen and (max-width: 991px) {
  .sede-grid-corso {
    display: block;
  }
}

@media screen and (max-width: 767px) {

  .figure-sede-corso {
    margin-bottom: 26px;
  }

  .box-sede-corso {
    padding: 16px 18px !important;
  }

  .titolo-box-sede-corso {
    font-size: 20px;
    align-items: flex-start;
  }

}

/* Titolo principale sezione sede centrato */

.titolo-sede-principale-corso {
  text-align: center;
  margin-left: 0;
  margin-bottom: 28px;
}

/* ==========================================================
   Etichette grafiche On Zon Su - evita uso improprio di strong
   ========================================================== */

.etichetta-frase-corso {
  color: #B35400;
  font-weight: 700;
}

.etichetta-verde-corso {
  color: #198754;
  font-weight: 700;
}

.etichetta-blu-corso {
  color: #004e6a;
  font-weight: 700;
}

.etichetta-contatto-corso {
  color: #333;
  font-weight: 700;
}

.evidenza-grafica-corso {
  color: #B35400;
  font-weight: 700;
}

.lista-vantaggi-iscrizione {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.lista-vantaggi-iscrizione li {
  position: relative;
  padding-left: 34px;
  margin-bottom: 9px;
  line-height: 1.55;
}

.lista-vantaggi-iscrizione li:last-child {
margin-bottom: 0;
}

.lista-vantaggi-iscrizione li::before {
content: "✓";
position: absolute;
left: 0;
top: 1px;
width: 22px;
height: 22px;
border-radius: 5px;
background: #2ecc71;
color: #ffffff;
font-size: 14px;
font-weight: 800;
line-height: 22px;
text-align: center;
}
/* ==========================================================
   Modalità iscrizione - due colonne desktop On Zon Su School
   ========================================================== */

.iscrizione-intro-corso {
  margin: 0 0 22px;
  padding: 16px 22px;
  background: #fffcf9;
  border: 1px solid #eadfd2;
  border-left: 5px solid #B35400;
  border-radius: 0 8px 8px 0;
  box-shadow: 0 3px 12px rgba(0,0,0,0.03);
}

.iscrizione-intro-corso p {
  margin-bottom: 0;
}

.iscrizione-grid-operativa-corso {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
  margin-top: 22px !important;
}

.iscrizione-colonna-operativa {
  min-width: 0 !important;
}

.box-iscrizione-operativa {
  padding: 18px 24px !important;
  margin: 0 0 18px !important;
  border-radius: 0 8px 8px 0;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.titolo-box-operativo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 0;
  margin-bottom: 14px;
  font-size: 19px;
  font-weight: 700;
  color: #333;
  line-height: 1.35;
}

.titolo-box-operativo i {
  flex: 0 0 auto;
  font-size: 21px;
}

.box-iscrizione-vantaggi {
  border-left: 5px solid #2ecc71;
}

.box-iscrizione-vantaggi .titolo-box-operativo i {
  color: #2ecc71;
}

.box-testo-email-corso {
  border-left: 5px solid #E67E22;
}

.box-testo-email-corso .titolo-box-operativo i {
  color: #E67E22;
}

.box-dati-ricontatto-corso {
  border-left: 5px solid #3498db;
}

.box-dati-ricontatto-corso .titolo-box-operativo i {
  color: #3498db;
}

.lista-dati-iscrizione-corso {
  list-style: none;
  padding-left: 0;
  margin: 14px 0 0;
}

.lista-dati-iscrizione-corso li {
  position: relative;
  margin-bottom: 9px;
  padding-left: 34px;
  line-height: 1.5;
}

.lista-dati-iscrizione-corso li:last-child {
  margin-bottom: 0;
}

.lista-dati-iscrizione-corso li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  width: 22px;
  height: 22px;
  border-radius: 5px;
  background: #3498db;
  color: #fff;
  text-align: center;
  line-height: 22px;
  font-weight: 800;
  font-size: 14px;
}

.lista-dati-iscrizione-corso li span {
  font-weight: 700;
  color: #004e6a;
}

.box-contatti-operativi-corso {
  margin-bottom: 18px;
  padding: 18px 22px 20px;
  background: #fdfdfd;
  border: 1px solid #eadfd2;
  border-left: 5px solid #95a5a6;
  border-radius: 0 8px 8px 0;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.box-contatti-operativi-corso h4 {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #333;
}

.box-contatti-operativi-corso h4 i {
  color: #95a5a6;
}

.box-contatti-operativi-corso .box-dinamico-arancio,
.box-contatti-operativi-corso .box-dinamico-verde {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.box-importante-corso {
  border-left: 5px solid #3498db;
}
/* Nota normativa finale a tutta larghezza */

.mini-box-legge-full {
  margin-top: 24px;
  margin-bottom: 62px;
  padding: 18px 24px;
  background: #f4fbfb;
  border: 1px solid #cfe8e8;
  border-left: 5px solid #168C96;
  border-radius: 0 8px 8px 0;
  box-shadow: 0 4px 14px rgba(22,140,150,0.06);
}

.mini-box-legge-full p {
  line-height: 1.65;
}

.mini-box-legge-full i {
  color: #168C96;
  margin-right: 8px;
}
/* Spazio tra blocco iscrizione e blocco sede */

.spazio-prima-sede-corso {
  margin-top: 55px !important;
}
/* ==========================================================
Struttura Camminando - scheda sede stile On Zon Su School
========================================================== */

.box-struttura-camminando-corso {
margin: 36px 0 28px;
padding: 22px 25px;
background: #f4fbfb;
border: 1px solid #cfe8e8;
border-left: 5px solid #168C96;
border-radius: 0 8px 8px 0;
box-shadow: 0 4px 14px rgba(22,140,150,0.06);
}

.titolo-struttura-camminando {
display: flex;
align-items: center;
gap: 10px;
margin-top: 0;
margin-bottom: 16px;
font-size: 20px;
font-weight: 700;
color: #333;
line-height: 1.35;
}

.titolo-struttura-camminando i {
color: #168C96;
font-size: 22px;
}

.evidenza-struttura-corso {
color: #168C96;
font-weight: 700;
}

.lista-struttura-camminando {
list-style: none;
padding-left: 0;
margin: 18px 0 18px;
}

.lista-struttura-camminando li {
position: relative;
margin-bottom: 11px;
padding: 12px 14px 12px 46px;
background: #ffffff;
border: 1px solid #cfe8e8;
border-left: 4px solid #168C96;
border-radius: 0 6px 6px 0;
line-height: 1.55;
color: #333;
box-shadow: 0 2px 8px rgba(22,140,150,0.04);
}

.lista-struttura-camminando li:last-child {
margin-bottom: 0;
}

.lista-struttura-camminando li::before {
content: "✓";
position: absolute;
left: 14px;
top: 13px;
width: 22px;
height: 22px;
border-radius: 5px;
background: #168C96;
color: #ffffff;
font-size: 14px;
font-weight: 800;
line-height: 22px;
text-align: center;
}

.etichetta-struttura-corso {
color: #168C96;
font-weight: 700;
}

.nota-struttura-camminando {
margin: 0;
padding: 12px 15px;
background: #ffffff;
border: 1px solid #cfe8e8;
border-radius: 6px;
font-style: italic;
color: #555;
line-height: 1.55;
}

.nota-struttura-camminando i {
color: #168C96;
margin-right: 7px;
}

@media screen and (max-width: 767px) {

.box-struttura-camminando-corso {
padding: 20px 18px;
}

.titolo-struttura-camminando {
font-size: 19px;
align-items: flex-start;
}

.lista-struttura-camminando li {
padding: 11px 13px 11px 42px;
}

.lista-struttura-camminando li::before {
left: 12px;
}

}
/* ==========================================================
   Ritocchi cromatici sezione Camminando
   Terra / Fuoco / Aria-Acqua
   ========================================================== */

/* Elimina eventuali pallini/arredi ereditati dal CSS vecchio */
.about-details .lista-struttura-camminando,
.box-struttura-camminando-corso .lista-struttura-camminando {
  list-style: none !important;
  padding-left: 0 !important;
}

.about-details .lista-struttura-camminando li,
.box-struttura-camminando-corso .lista-struttura-camminando li {
  list-style: none !important;
}

.about-details .lista-struttura-camminando li::marker,
.box-struttura-camminando-corso .lista-struttura-camminando li::marker {
  content: "" !important;
  font-size: 0 !important;
}

/* Icona quadrata: forza la spunta e impedisce pallini arancioni ereditati */
.box-struttura-camminando-corso .lista-struttura-camminando li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 14px !important;
  top: 13px !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 5px !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 22px !important;
  text-align: center !important;
}

/* 1. Sala Terra - terra di Siena / terra bruciata tenue */
.lista-struttura-camminando li:nth-child(1) {
  border-left-color: #A65A2E !important;
}

.lista-struttura-camminando li:nth-child(1)::before {
  background: #A65A2E !important;
}

.lista-struttura-camminando li:nth-child(1) .etichetta-struttura-corso {
  color: #A65A2E !important;
}

/* 2. Sala Fuoco - arancio vivo verso il rosso */
.lista-struttura-camminando li:nth-child(2) {
  border-left-color: #E85D24 !important;
}

.lista-struttura-camminando li:nth-child(2)::before {
  background: #E85D24 !important;
}

.lista-struttura-camminando li:nth-child(2) .etichetta-struttura-corso {
  color: #E85D24 !important;
}

/* 3. Studi Aria e Acqua - invariato petrolio */
.lista-struttura-camminando li:nth-child(3) {
  border-left-color: #168C96 !important;
}

.lista-struttura-camminando li:nth-child(3)::before {
  background: #168C96 !important;
}

.lista-struttura-camminando li:nth-child(3) .etichetta-struttura-corso {
  color: #168C96 !important;
}
/* ==========================================================
   Correzione distanza icone sezione Camminando
   ========================================================== */

.box-struttura-camminando-corso .lista-struttura-camminando li {
  padding-left: 56px !important;
  padding-top: 13px !important;
  padding-bottom: 13px !important;
}

.box-struttura-camminando-corso .lista-struttura-camminando li::before {
  left: 18px !important;
  top: 14px !important;
}
/* ==========================================================
   Struttura sede corso - ponte template nuove classi
   Mantiene la grafica Camminando sulle classi generiche sede
   ========================================================== */

.box-struttura-sede-corso {
  margin: 36px 0 28px !important;
  padding: 22px 25px !important;
  background: #f4fbfb !important;
  border: 1px solid #cfe8e8 !important;
  border-left: 5px solid #168C96 !important;
  border-radius: 0 8px 8px 0 !important;
  box-shadow: 0 4px 14px rgba(22,140,150,0.06) !important;
  box-sizing: border-box !important;
}

.titolo-struttura-sede-corso {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #333333 !important;
  line-height: 1.35 !important;
}

.titolo-struttura-sede-corso i {
  color: #168C96 !important;
  font-size: 22px !important;
  flex: 0 0 auto !important;
}

.lista-struttura-sede-corso {
  list-style: none !important;
  list-style-type: none !important;
  padding-left: 0 !important;
  margin: 18px 0 18px !important;
}

.lista-struttura-sede-corso li {
  position: relative !important;
  list-style: none !important;
  list-style-type: none !important;
  margin-bottom: 11px !important;
  padding: 13px 14px 13px 56px !important;
  background: #ffffff !important;
  border: 1px solid #cfe8e8 !important;
  border-left: 4px solid #168C96 !important;
  border-radius: 0 6px 6px 0 !important;
  line-height: 1.55 !important;
  color: #333333 !important;
  box-shadow: 0 2px 8px rgba(22,140,150,0.04) !important;
  box-sizing: border-box !important;
}

.lista-struttura-sede-corso li:last-child {
  margin-bottom: 0 !important;
}

.lista-struttura-sede-corso li::marker {
  content: "" !important;
  font-size: 0 !important;
}

.lista-struttura-sede-corso li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 18px !important;
  top: 14px !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 5px !important;
  background: #168C96 !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 22px !important;
  text-align: center !important;
}

/* Colori interni: Terra / Fuoco / Aria-Acqua */
.lista-struttura-sede-corso li:nth-child(1) {
  border-left-color: #A65A2E !important;
}

.lista-struttura-sede-corso li:nth-child(1)::before {
  background: #A65A2E !important;
}

.lista-struttura-sede-corso li:nth-child(1) .etichetta-struttura-corso {
  color: #A65A2E !important;
}

.lista-struttura-sede-corso li:nth-child(2) {
  border-left-color: #E85D24 !important;
}

.lista-struttura-sede-corso li:nth-child(2)::before {
  background: #E85D24 !important;
}

.lista-struttura-sede-corso li:nth-child(2) .etichetta-struttura-corso {
  color: #E85D24 !important;
}

.lista-struttura-sede-corso li:nth-child(3) {
  border-left-color: #168C96 !important;
}

.lista-struttura-sede-corso li:nth-child(3)::before {
  background: #168C96 !important;
}

.lista-struttura-sede-corso li:nth-child(3) .etichetta-struttura-corso {
  color: #168C96 !important;
}

.nota-struttura-sede-corso {
  margin: 0 !important;
  padding: 12px 15px !important;
  background: #ffffff !important;
  border: 1px solid #cfe8e8 !important;
  border-radius: 6px !important;
  font-style: italic !important;
  color: #555555 !important;
  line-height: 1.55 !important;
}

.nota-struttura-sede-corso i {
  color: #168C96 !important;
  margin-right: 7px !important;
}

/* Mobile nuove classi struttura sede */
@media screen and (max-width: 767px) {

  .box-struttura-sede-corso {
    padding: 20px 18px !important;
  }

  .titolo-struttura-sede-corso {
    font-size: 19px !important;
    align-items: flex-start !important;
  }

  .titolo-struttura-sede-corso i {
    margin-top: 2px !important;
  }

  .lista-struttura-sede-corso li {
    padding: 11px 13px 11px 50px !important;
  }

  .lista-struttura-sede-corso li::before {
    left: 14px !important;
    top: 12px !important;
  }

}
/* ==========================================================
   Navbar On Zon Su School 2026 - pagine corsi
   Compatibilità nuova navbar con menu a cascata
   ========================================================== */

.navbar-onzonsu-2026 .nav-dropdown-button {
  display: block;
  position: relative;
  padding: 15px 15px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  line-height: 20px;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}

.navbar-onzonsu-2026 .nav-dropdown-button:hover,
.navbar-onzonsu-2026 .nav-dropdown-button:focus,
.navbar-onzonsu-2026 .open > .nav-dropdown-button {
  color: #B35400;
  background: transparent;
  outline: none;
}

.navbar-onzonsu-2026 .nav-dropdown-button .caret {
  margin-left: 5px;
}

.navbar-onzonsu-2026 .registered-mark {
  font-size: 0.68em;
  line-height: 0;
  vertical-align: super;
}

.navbar-onzonsu-2026 .dropdown-overview {
  font-weight: 700;
  color: #B35400;
}

.navbar-onzonsu-2026 .dropdown-overview::after {
  content: "";
  display: block;
  margin-top: 7px;
  border-bottom: 1px solid rgba(179, 84, 0, 0.22);
}

.navbar-onzonsu-2026 a:focus,
.navbar-onzonsu-2026 button:focus {
  outline: 2px solid rgba(179, 84, 0, 0.45);
  outline-offset: 2px;
}

/* Mobile */
@media screen and (max-width: 767px) {

  .navbar-onzonsu-2026 .nav-dropdown-button {
    width: 100%;
    padding: 12px 15px;
  }

  .navbar-onzonsu-2026 .drop-down {
    position: static;
    width: 100%;
  }

}
/* ==========================================================
   Navbar On Zon Su School 2026 - maiuscolo grafico menu
   ========================================================== */

.navbar-onzonsu-2026 .navbar-nav > li > a,
.navbar-onzonsu-2026 .navbar-nav > li > .nav-dropdown-button {
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-weight: 700;
}
/* Sottomenu non maiuscolo: più leggibile e più elegante */

.navbar-onzonsu-2026 .drop-down a,
.navbar-onzonsu-2026 .navbar-nav .drop-down a {
  text-transform: none !important;
  letter-spacing: normal !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 500;
}
/* ==========================================================
   Liste check verdi - testo più ordinato e giustificato
   ========================================================== */

.lista-check-verde li {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
  line-height: 1.65;
}

.lista-check-verde .voce-check-titolo {
  display: inline;
  font-weight: 700;
  color: #168C96;
}

/* ==========================================================
   Costi e attestati corso - template corsi locali
   ========================================================== */

.blocco-costi-attestati-corso {
  margin-bottom: 40px;
}

.box-costi-attestati-corso {
  border-left: 4px solid #B35400;
  padding-left: 25px;
}

.box-quota-corso p:first-child {
  font-size: 1.1em;
  margin-bottom: 8px;
}

.box-quota-corso p:last-child {
  margin-bottom: 0;
  color: #444;
}

.titolo-attestati-corso {
  margin-top: 35px;
  scroll-margin-top: 40px;
  font-weight: 700;
}

.testo-attestati-intro {
  margin-bottom: 12px;
}

.link-normativa-corso {
  text-decoration: underline;
}

/* ==========================================================
   Lista attestati e diploma - allineamento e giustificazione
   ========================================================== */

.lista-attestati-corso {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 18px 0 0 !important;
}

.lista-attestati-corso li {
  position: relative;
  margin-bottom: 12px !important;
  padding-left: 24px !important;
  line-height: 1.65 !important;
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

.lista-attestati-corso li:last-child {
  margin-bottom: 0 !important;
}

.lista-attestati-corso li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0.05em;
  font-size: 21px;
  line-height: 1;
  font-weight: 700;
}

/* ==========================================================
   Lista attestati corso - tre gruppi cromatici distinti
   Pallini + inizio frase, senza icone nei sottocapitoli
   ========================================================== */

/* Gruppo 1: voci 1-3 - verde scuro */
.lista-attestati-corso li:nth-child(-n+3)::before {
  color: #0F6B3A !important;
}

.lista-attestati-corso li:nth-child(-n+3) .etichetta-attestati-corso,
.lista-attestati-corso li:nth-child(-n+3) .etichetta-attestati-link {
  color: #0F6B3A !important;
  font-weight: 700 !important;
}

/* Gruppo 2: voci 4-6 - arancio On Zon Su centrale */
.lista-attestati-corso li:nth-child(n+4):nth-child(-n+6)::before {
  color: #B35400 !important;
}

.lista-attestati-corso li:nth-child(n+4):nth-child(-n+6) .etichetta-attestati-corso,
.lista-attestati-corso li:nth-child(n+4):nth-child(-n+6) .etichetta-attestati-link {
  color: #B35400 !important;
  font-weight: 700 !important;
}

/* Gruppo 3: voci 7-9 - blu profondo */
.lista-attestati-corso li:nth-child(n+7):nth-child(-n+9)::before {
  color: #1F4E8C !important;
}

.lista-attestati-corso li:nth-child(n+7):nth-child(-n+9) .etichetta-attestati-corso,
.lista-attestati-corso li:nth-child(n+7):nth-child(-n+9) .etichetta-attestati-link {
  color: #1F4E8C !important;
  font-weight: 700 !important;
}

/* ==========================================================
   Link testuali nei contenuti - arancio On Zon Su School
   ========================================================== */

.about-details a:not(.read-more):not(.cta-hero-corso):not(.cta-sidebar-corso),
.box-dinamico-blu a,
.box-dinamico-verde a,
.box-dinamico-arancio a,
.box-dinamico-grigio a,
.mini-box-corso a {
  color: #B35400 !important;
  font-weight: 700;
  text-decoration: underline;
}

.about-details a:not(.read-more):not(.cta-hero-corso):not(.cta-sidebar-corso):hover,
.about-details a:not(.read-more):not(.cta-hero-corso):not(.cta-sidebar-corso):focus,
.box-dinamico-blu a:hover,
.box-dinamico-blu a:focus,
.box-dinamico-verde a:hover,
.box-dinamico-verde a:focus,
.box-dinamico-arancio a:hover,
.box-dinamico-arancio a:focus,
.box-dinamico-grigio a:hover,
.box-dinamico-grigio a:focus,
.mini-box-corso a:hover,
.mini-box-corso a:focus {
  color: #E67E22 !important;
  text-decoration: underline;
}

/* ==========================================================
   Costi e attestati corso - icone focus principali evergreen
   Solo su: Quota complessiva, Diploma e attestati, Un percorso formativo
   ========================================================== */

/* Icona inizio frase: Quota complessiva */
.box-quota-corso .evidenza-grafica-corso {
  color: #B35400 !important;
  font-weight: 700 !important;
}

.box-quota-corso .evidenza-grafica-corso::before {
  content: "€";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.55em;
  height: 1.55em;
  margin-right: 7px;
  border-radius: 50%;
  background: #B35400;
  color: #ffffff;
  font-size: 0.82em;
  font-weight: 800;
  line-height: 1;
  vertical-align: middle;
}

/* Icona titolo: Diploma e attestati */
.titolo-attestati-corso::before {
  content: "◆";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.45em;
  height: 1.45em;
  margin-right: 8px;
  border-radius: 50%;
  background: #1F4E8C;
  color: #ffffff;
  font-size: 0.72em;
  font-weight: 800;
  line-height: 1;
  vertical-align: middle;
}

/* Icona inizio frase: Un percorso formativo */
.testo-attestati-intro .etichetta-attestati-blu {
  color: #0F6B3A !important;
  font-weight: 700 !important;
}

.testo-attestati-intro .etichetta-attestati-blu::before {
  content: "◎";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5em;
  height: 1.5em;
  margin-right: 7px;
  border-radius: 50%;
  background: #0F6B3A;
  color: #ffffff;
  font-size: 0.78em;
  font-weight: 800;
  line-height: 1;
  vertical-align: middle;
}
/* ==========================================================
   FIX finale pallini lista attestati - tre colori distinti
   Da tenere in fondo a corsi-layout.css
   ========================================================== */

/* Base pallino: solo pallino testuale, nessuna icona */
.box-costi-attestati-corso .lista-attestati-corso li::before {
  content: "•" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.05em !important;
  font-size: 21px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  background: transparent !important;
  border: 0 !important;
}

/* Voci 1-3: verde scuro */
.box-costi-attestati-corso .lista-attestati-corso li:nth-child(-n+3)::before {
  color: #0F6B3A !important;
}

/* Voci 4-6: arancio On Zon Su */
.box-costi-attestati-corso .lista-attestati-corso li:nth-child(n+4):nth-child(-n+6)::before {
  color: #B35400 !important;
}

/* Voci 7-9: blu profondo */
.box-costi-attestati-corso .lista-attestati-corso li:nth-child(n+7):nth-child(-n+9)::before {
  color: #1F4E8C !important;
}

/* ==========================================================
Orari corso - scheda UX On Zon Su School
========================================================== */

.box-orari-corso-2026 {
padding: 20px 24px !important;
border-left: 5px solid #E67E22;
border-radius: 0 8px 8px 0;
box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.lista-orari-corso {
list-style: none;
padding-left: 0;
margin: 0;
}

.lista-orari-corso li {
display: flex;
align-items: flex-start;
gap: 12px;
margin-bottom: 14px;
padding: 12px 14px;
background: #ffffff;
border: 1px solid #f1d8bd;
border-left: 4px solid #E67E22;
border-radius: 0 6px 6px 0;
line-height: 1.6;
text-align: justify;
text-justify: inter-word;
hyphens: auto;
-webkit-hyphens: auto;
overflow-wrap: break-word;
}

.lista-orari-corso li:last-child {
margin-bottom: 0;
}

.icona-orari-corso {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
width: 26px;
height: 26px;
margin-top: 2px;
border-radius: 5px;
background: #fff3e7;
color: #E67E22;
font-size: 14px;
}

.etichetta-orari-corso {
color: #168C96;
font-weight: 700;
}

.nota-orari-corso {
margin: 16px 0 0;
padding: 12px 15px;
background: #fffaf5;
border: 1px solid #f1d8bd;
border-radius: 6px;
color: #666;
font-size: 0.95em;
font-style: italic;
line-height: 1.6;
}

.nota-orari-corso i {
color: #E67E22;
margin-right: 7px;
}

@media screen and (max-width: 767px) {

.box-orari-corso-2026 {
padding: 18px 18px !important;
}

.lista-orari-corso li {
padding: 11px 12px;
text-align: justify;
}

.icona-orari-corso {
width: 24px;
height: 24px;
font-size: 13px;
}

}
/* ==========================================================
Orari corso - scheda pulita con sole icone
========================================================== */

.box-orari-corso-2026 {
padding: 20px 24px !important;
border-left: 0 !important;
border-radius: 8px;
box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.lista-orari-corso {
list-style: none !important;
padding-left: 0 !important;
margin: 0 !important;
}

.lista-orari-corso li {
position: relative;
display: flex !important;
align-items: flex-start !important;
gap: 12px !important;
margin-bottom: 14px !important;
padding: 12px 14px !important;
background: #ffffff;
border: 1px solid #f1d8bd;
border-left: 0 !important;
border-radius: 6px;
line-height: 1.6;
text-align: justify;
text-justify: inter-word;
hyphens: auto;
-webkit-hyphens: auto;
overflow-wrap: break-word;
}

/* elimina pallini o pseudo-elementi ereditati */
.lista-orari-corso li::before,
.lista-orari-corso li::after {
content: none !important;
display: none !important;
}

.lista-orari-corso li:last-child {
margin-bottom: 0 !important;
}

.icona-orari-corso {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
width: 28px;
height: 28px;
min-width: 28px;
margin-top: 2px;
border-radius: 6px;
background: #fff3e7;
color: #E67E22;
font-size: 15px;
}

.etichetta-orari-corso {
color: #168C96;
font-weight: 700;
}

.nota-orari-corso {
margin: 16px 0 0;
padding: 12px 15px;
background: #fffaf5;
border: 1px solid #f1d8bd;
border-radius: 6px;
color: #666;
font-size: 0.95em;
font-style: italic;
line-height: 1.6;
text-align: justify;
text-justify: inter-word;
hyphens: auto;
-webkit-hyphens: auto;
overflow-wrap: break-word;
}

.nota-orari-corso i {
color: #E67E22;
margin-right: 7px;
}
/* ==========================================================
   Orari lezioni - wrapper sezione corsi locali
   ========================================================== */

.blocco-orari-lezioni-corso {
  margin-bottom: 40px;
}

.orari-lezioni-corso-box {
  border-left: 4px solid #B35400;
  padding-left: 25px;
}
/* ==========================================================
   Liste iscrizione - spunta verde e guida frase
   ========================================================== */

.lista-iscrizione-check {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 18px 0 0 !important;
}

.lista-iscrizione-check li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 7px !important;
  margin-bottom: 5px !important;
  padding: 6px 9px !important;
  line-height: 1.42;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

/* Spegne pallini o vecchie spunte generate dal CSS precedente */
.lista-iscrizione-check li::before,
.lista-iscrizione-check li::after {
  content: none !important;
  display: none !important;
}

.lista-iscrizione-check li:last-child {
  margin-bottom: 0 !important;
}

.check-verde-piccolo {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  min-width: 22px;
  margin-top: 3px;
  border-radius: 5px;
  background: #2ecc71;
  color: #ffffff;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
}

.testo-check-corso {
  display: block;
  min-width: 0;
}

.durata-voce-guida {
  color: #168C96 !important;
  font-weight: 700;
}
/* ==========================================================
   Recensioni - rimozione barra laterale duplicata
   ========================================================== */

.recensioni-senza-barra {
  border-left: 0 !important;
  padding-left: 0 !important;
}
/* ==========================================================
Collegamenti sede - box UX On Zon Su School
========================================================== */

.box-collegamenti-sede-corso {
padding: 20px 24px !important;
border-left: 5px solid #3498db;
border-radius: 0 8px 8px 0;
box-shadow: 0 4px 14px rgba(0,0,0,0.035);
}

.titolo-collegamenti-sede {
display: flex;
align-items: center;
gap: 10px;
margin-top: 0;
margin-bottom: 16px;
font-weight: 700;
color: #333;
line-height: 1.35;
}

.titolo-collegamenti-sede i {
color: #3498db;
font-size: 21px;
}

.lista-collegamenti-sede {
list-style: none !important;
padding-left: 0 !important;
margin: 0 !important;
}

.lista-collegamenti-sede li {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin-bottom: 12px;
  padding: 9px 9px 9px 7px;
  background: #ffffff;
  border: 1px solid #dbeaf5;
  border-radius: 6px;
  line-height: 1.55;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

.lista-collegamenti-sede li:last-child {
margin-bottom: 0;
}

.lista-collegamenti-sede li::before,
.lista-collegamenti-sede li::after {
content: none !important;
display: none !important;
}

.icona-collegamenti-sede {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 21px;
  height: 21px;
  min-width: 21px;
  margin-top: 3px;
  border-radius: 5px;
  background: #edf7fd;
  color: #3498db;
  font-size: 12px;
}

.testo-collegamenti-sede {
display: block;
min-width: 0;
}

.etichetta-collegamenti-sede {
color: #168C96;
font-weight: 700;
}

.cta-collegamenti-sede {
text-align: center;
margin-top: 22px;
}

/* ==========================================================
CTA collegamenti sede - bottone Moovit leggibile
========================================================== */

.cta-collegamenti-sede {
text-align: center;
margin-top: 22px;
}

.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede,
.cta-collegamenti-sede .btn-collegamenti-sede {
display: inline-flex !important;
align-items: center;
justify-content: center;
gap: 8px;
background: #B35400 !important;
color: #ffffff !important;
padding: 12px 26px;
border-radius: 5px;
text-decoration: none !important;
font-weight: 700;
font-size: 16px;
line-height: 1.35;
cursor: pointer !important;
user-select: none;
-webkit-user-select: none;
box-shadow: 0 3px 8px rgba(0,0,0,0.12);
transition: background-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede i,
.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede .testo-collegamenti-cta,
.cta-collegamenti-sede .btn-collegamenti-sede i,
.cta-collegamenti-sede .btn-collegamenti-sede .testo-collegamenti-cta {
color: #ffffff !important;
cursor: pointer !important;
text-decoration: none !important;
}

.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede:hover,
.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede:focus,
.cta-collegamenti-sede .btn-collegamenti-sede:hover,
.cta-collegamenti-sede .btn-collegamenti-sede:focus {
background: #E67E22 !important;
color: #ffffff !important;
text-decoration: none !important;
transform: translateY(-1px);
box-shadow: 0 5px 12px rgba(0,0,0,0.16);
}

.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede:hover i,
.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede:hover .testo-collegamenti-cta,
.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede:focus i,
.box-dinamico-blu .cta-collegamenti-sede .btn-collegamenti-sede:focus .testo-collegamenti-cta,
.cta-collegamenti-sede .btn-collegamenti-sede:hover i,
.cta-collegamenti-sede .btn-collegamenti-sede:hover .testo-collegamenti-cta,
.cta-collegamenti-sede .btn-collegamenti-sede:focus i,
.cta-collegamenti-sede .btn-collegamenti-sede:focus .testo-collegamenti-cta {
color: #ffffff !important;
text-decoration: none !important;
}

.cta-collegamenti-sede .btn-collegamenti-sede:focus {
outline: 2px solid rgba(179,84,0,0.45);
outline-offset: 3px;
}

/* ==========================================================
   CTA iscrizione sezione corso - On Zon Su School
   ========================================================== */

.cta-iscrizione-sezione-corso {
  text-align: center;
  margin: 30px 0 18px;
}

.box-dinamico-blu .btn-iscrizione-sezione-corso,
.btn-iscrizione-sezione-corso {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  padding: 13px 24px;
  background: #E67E22 !important;
  color: #ffffff !important;
  border-radius: 6px;
  text-decoration: none !important;
  font-weight: 800;
  font-size: 17px;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  box-shadow: 0 3px 9px rgba(0,0,0,0.12);
  transform: translateY(0);
  transition: background-color 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease;
  cursor: pointer;
}
.box-dinamico-blu .btn-iscrizione-sezione-corso,
.btn-iscrizione-sezione-corso,
.box-dinamico-blu .btn-iscrizione-sezione-corso i,
.box-dinamico-blu .btn-iscrizione-sezione-corso span,
.btn-iscrizione-sezione-corso i,
.btn-iscrizione-sezione-corso span {
  cursor: pointer !important;
  user-select: none;
  -webkit-user-select: none;
}
.box-dinamico-blu .btn-iscrizione-sezione-corso i,
.btn-iscrizione-sezione-corso i {
  color: #ffffff !important;
  font-size: 17px;
}

.box-dinamico-blu .btn-iscrizione-sezione-corso .testo-btn-iscrizione,
.btn-iscrizione-sezione-corso .testo-btn-iscrizione {
  display: inline-block;
  color: #ffffff !important;
  animation: testoIscrizioneRespiro 2.4s ease-in-out infinite;
}

@keyframes testoIscrizioneRespiro {
  0% {
    color: #ffffff;
    opacity: 1;
  }

  50% {
    color: #fff3d6;
    opacity: 0.9;
  }

  100% {
    color: #ffffff;
    opacity: 1;
  }
}

.box-dinamico-blu .btn-iscrizione-sezione-corso:hover,
.box-dinamico-blu .btn-iscrizione-sezione-corso:focus,
.btn-iscrizione-sezione-corso:hover,
.btn-iscrizione-sezione-corso:focus {
  background: #B35400 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-2px);
  box-shadow: 0 5px 14px rgba(0,0,0,0.18);
}

.box-dinamico-blu .btn-iscrizione-sezione-corso:hover .testo-btn-iscrizione,
.box-dinamico-blu .btn-iscrizione-sezione-corso:focus .testo-btn-iscrizione,
.btn-iscrizione-sezione-corso:hover .testo-btn-iscrizione,
.btn-iscrizione-sezione-corso:focus .testo-btn-iscrizione {
  color: #ffe6b8 !important;
  animation: testoIscrizioneHover 0.75s ease-in-out infinite alternate;
}

@keyframes testoIscrizioneHover {
  from {
    color: #ffffff;
  }

  to {
    color: #ffe6b8;
  }
}

.box-dinamico-blu .btn-iscrizione-sezione-corso:hover i,
.box-dinamico-blu .btn-iscrizione-sezione-corso:focus i,
.btn-iscrizione-sezione-corso:hover i,
.btn-iscrizione-sezione-corso:focus i {
  color: #ffffff !important;
}

.btn-iscrizione-sezione-corso:focus {
  outline: 2px solid rgba(179,84,0,0.45);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .box-dinamico-blu .btn-iscrizione-sezione-corso,
  .btn-iscrizione-sezione-corso,
  .box-dinamico-blu .btn-iscrizione-sezione-corso .testo-btn-iscrizione,
  .btn-iscrizione-sezione-corso .testo-btn-iscrizione {
    animation: none !important;
    transition: none !important;
  }

  .box-dinamico-blu .btn-iscrizione-sezione-corso:hover,
  .box-dinamico-blu .btn-iscrizione-sezione-corso:focus,
  .btn-iscrizione-sezione-corso:hover,
  .btn-iscrizione-sezione-corso:focus {
    transform: none;
  }
}
/* ==========================================================
Titoli pagine corsi 2026 - stile On Zon Su School
Desktop / base
========================================================== */

/* Titolo principale contenuto pagina */
.titolo-principale-corso {
font-family: Arial, Helvetica, sans-serif;
font-size: 34px;
line-height: 1.25;
font-weight: 800;
color: #333;
margin-top: 0;
margin-bottom: 22px;
letter-spacing: 0.01em;
}

/* Titolo principale contenuto pagina */
.titolo-principale-corso {
color: #333;
}

/* Titoli principali di sezione */
.titolo-sezione-corso {
font-family: Arial, Helvetica, sans-serif;
font-size: 27px;
line-height: 1.3;
font-weight: 800;
color: #333;
margin-top: 0;
margin-bottom: 22px;
letter-spacing: 0.01em;
}

/* Piccola sottolineatura visiva coerente per i titoli di sezione */
.titolo-sezione-corso::after {
content: "";
display: block;
width: 58px;
height: 3px;
margin-top: 10px;
background: #B35400;
border-radius: 3px;
}

/* Titoli centrati: niente sottolineatura decentrata */
.intestazione-piano-didattico-corso .titolo-sezione-corso::after,
.titolo-sede-principale-corso::after {
margin-left: auto;
margin-right: auto;
}

/* Titolo calendario */
.calendario-corso-titolo {
font-family: Arial, Helvetica, sans-serif;
font-size: 26px;
line-height: 1.3;
font-weight: 800;
color: #333;
}

/* Titoli sidebar */
.side-card-corso h3,
.side-card-title-icon,
.ancoraggi-corso h3 {
font-family: Arial, Helvetica, sans-serif;
font-size: 20px;
line-height: 1.35;
font-weight: 800;
color: #333;
margin-top: 0;
margin-bottom: 15px;
}

/* Titoli box interni e sotto-sezioni */
.iscrizione-card-corso h4,
.titolo-box-operativo,
.titolo-box-sede-corso,
.titolo-indirizzo-sede,
.titolo-struttura-camminando,
.box-contatti-operativi-corso h4,
.mini-box-corso h4,
.about-details > h4,
.box-dinamico-grigio h4 {
font-family: Arial, Helvetica, sans-serif;
font-size: 21px;
line-height: 1.35;
font-weight: 800;
color: #333;
margin-top: 0;
margin-bottom: 14px;
}

/* Sottotitoli più piccoli */
.sottotitolo-lista-check,
.titolo-collegamenti-sede {
font-family: Arial, Helvetica, sans-serif;
font-size: 18px;
line-height: 1.35;
font-weight: 800;
color: #333;
margin-top: 0;
margin-bottom: 14px;
}

/* Icone nei titoli: allineamento stabile */
.side-card-title-icon i,
.iscrizione-card-corso h4 i,
.titolo-box-operativo i,
.titolo-box-sede-corso i,
.titolo-indirizzo-sede i,
.titolo-struttura-camminando i,
.titolo-collegamenti-sede i,
.mini-box-corso h4 i {
flex: 0 0 auto;
line-height: 1;
}

/* Titoli centrati sopra immagini o blocchi editoriali */
.intestazione-piano-didattico-corso {
text-align: center;
margin-bottom: 24px;
}

.intestazione-piano-didattico-corso h4 {
font-family: Arial, Helvetica, sans-serif;
font-size: 20px;
line-height: 1.4;
font-weight: 700;
color: #555;
margin-top: 8px;
margin-bottom: 0;
}

/* Titolo blocco rimando altre sedi */
.blocco-rimando-sedi-corso h4,
div[style*="border: 2px dashed"] h4 {
font-family: Arial, Helvetica, sans-serif;
line-height: 1.3;
}
/* ==========================================================
Hero corso - brand grafico non gerarchico
========================================================== */

.hero-corso-titolo-cta .hero-brand-corso,
p.hero-brand-corso {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto 8px auto !important;
  padding-top: 12px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 26px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  color: #333 !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}
.hero-corso-titolo-cta {
  text-align: center !important;
}

.hero-corso-titolo-cta .hero-prenotazioni-aperte,
.hero-corso-titolo-cta .spazio-bottone-iscrizione {
  text-align: center !important;
}
/* ==========================================================
   CTA rimando altre sedi - On Zon Su School
   ========================================================== */

.box-rimando-sedi-corso {
  text-align: center;
  padding: 22px 20px 30px;
  margin-top: 0;
  border: 2px dashed #e2ddd6;
  border-radius: 12px;
  background-color: #ffffff;
}

.box-rimando-sedi-corso h4 {
  color: #333;
  font-weight: 800;
  margin-top: 0;
  font-size: 24px;
  line-height: 1.3;
  margin-bottom: 12px;
}

.box-rimando-sedi-corso p {
  text-align: center;
  color: #666;
  max-width: 750px;
  margin: 0 auto 22px auto;
  font-size: 16px;
  line-height: 1.6;
}

.btn-rimando-sedi-corso {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #E67E22 !important;
  color: #ffffff !important;
  padding: 12px 24px;
  border-radius: 6px;
  text-decoration: none !important;
  font-weight: 800;
  font-size: 15px;
  line-height: 1.35;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  box-shadow: 0 3px 8px rgba(0,0,0,0.14);
  transition: background-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
  cursor: pointer;
}

.btn-rimando-sedi-corso i,
.btn-rimando-sedi-corso span {
  color: #ffffff !important;
  text-decoration: none !important;
  cursor: pointer;
}

.btn-rimando-sedi-corso:hover,
.btn-rimando-sedi-corso:focus {
  background: #B35400 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px);
  box-shadow: 0 5px 12px rgba(0,0,0,0.18);
}

.btn-rimando-sedi-corso:focus {
  outline: 2px solid rgba(179,84,0,0.45);
  outline-offset: 3px;
}
/* ==========================================================
   Hero pagina corsi locali 2026 - pulizia inline style
   ========================================================== */

.page-header-corso h1 {
  font-size: xx-large;
  color: #ffffff;
}

.page-header-corso .hero-subtitle-corso {
  font-size: medium;
  color: #ffffff;
}

.hero-corso-titolo-cta {
  text-align: center;
  margin-top: 10px;
}

.hero-prenotazioni-aperte {
  color: #E67E22 !important;
  text-decoration: underline !important;
  font-weight: 800 !important;
  display: inline-block !important;
  margin-top: 4px !important;
  margin-bottom: 8px !important;
  font-size: 21px !important;
  line-height: 1.25 !important;
}
/* ==========================================================
   Page header corsi 2026 - titolo e sottotitolo allineati
   ========================================================== */

.page-header-corso .page-header-corso-copy {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.page-header-corso .page-header-corso-copy h1 {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
  color: #ffffff;
  text-align: center;
}

.page-header-corso .page-header-corso-copy .hero-subtitle-corso {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  color: #ffffff;
  text-align: center;
}
/* ==========================================================
   Organizzazione percorsi formativi - pagina corsi 
   ========================================================== */

.blocco-organizzazione-percorsi-corso {
  margin-bottom: 40px;
}

.organizzazione-percorsi-corso-box {
  border-left: 4px solid #B35400;
  padding-left: 25px;
}

.organizzazione-percorsi-corso-box .box-dinamico-grigio h4 {
  margin-top: 0;
  font-weight: 700;
  color: #555;
}
/* ==========================================================
   CTA sedi alternative corsi - template 2026
   ========================================================== */

.sedi-alternative-corso {
  text-align: center;
  margin-bottom: 20px;
  padding: 10px;
  border-top: 1px solid #f0f0f0;
}

.sedi-alternative-corso h3 {
  color: #B35400;
  font-weight: 700;
  font-size: 18px;
  margin-top: 0;
  margin-bottom: 6px;
}

.sedi-alternative-corso p {
  color: #444;
  font-size: 14px;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.5;
}

.sedi-alternative-col {
  margin-bottom: 8px;
}

/* ==========================================================
   CTA sedi alternative corsi - card PC con cornici sottili
   ========================================================== */

@media screen and (min-width: 768px) {

  .sedi-alternative-card {
    background: #ffffff !important;
    border-radius: 10px !important;
    padding: 14px 15px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.06) !important;
  }

  /* Auto - arancio On Zon Su */
  .sedi-alternative-card-auto {
    border: 1px solid #D98A3A !important;
    border-top: 4px solid #E67E22 !important;
    background: #fffaf5 !important;
  }

  /* Formula 1/2 w.e. - verde */
  .sedi-alternative-card-smart {
    border: 1px solid #74C89B !important;
    border-top: 4px solid #2ecc71 !important;
    background: #f8fff9 !important;
  }

  /* Metro & Treno - blu/avio */
  .sedi-alternative-card-trasporti {
    border: 1px solid #6FAED6 !important;
    border-top: 4px solid #3498db !important;
    background: #f7fbfe !important;
  }

}

.sedi-alternative-title {
  font-weight: 700;
  color: #333333;
  margin: 0 0 8px 0;
  font-size: 0.85rem;
  text-align: center;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.sedi-alternative-title svg {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.cta-alt-link {
  display: block;
  border: 1px solid #eeeeee;
  padding: 5px 8px;
  border-radius: 5px;
  margin-bottom: 5px;
  text-decoration: none;
}

.cta-alt-link:last-child {
  margin-bottom: 0;
}

.cta-alt-link-evidenza-arancio {
  background: #fffcf9;
  border-color: #fbe6d4;
}

.cta-alt-link-evidenza-verde {
  background: #f6fff8;
  border-color: #dcf6e5;
}

.cta-alt-link-evidenza-blu {
  background: #f4f9fc;
  border-color: #dceef9;
}

.cta-alt-link-neutro {
  background: #fdfdfd;
}

.cta-alt-riga {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 2px;
  gap: 8px;
}

.cta-alt-sede {
  font-weight: 800;
  font-size: 1.1rem;
  color: #333333;
}

.cta-alt-azione {
  font-size: 0.7rem;
  font-weight: 600;
  white-space: nowrap;
}

.cta-alt-azione-arancio {
  color: #E67E22;
}

.cta-alt-azione-verde {
  color: #27ae60;
}

.cta-alt-azione-blu {
  color: #2980b9;
}

.cta-alt-descrizione {
  display: block;
  color: #666666;
  font-size: 0.75rem;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cta-alt-descrizione-soft {
  color: #888888;
}
/* ==========================================================
   CTA sedi alternative corsi - spazio dopo il blocco
   ========================================================== */

.sedi-alternative-grid {
  margin-bottom: 42px !important;
}
/* ==========================================================
   Piano didattico corso - template corsi locali
   ========================================================== */

.blocco-piano-didattico-corso {
  margin-bottom: 40px;
}

.box-piano-didattico-corso {
  border-left: 4px solid #B35400;
  padding-left: 25px;
}

.intestazione-piano-didattico-corso {
  text-align: center;
}

.intestazione-piano-didattico-corso .titolo-sezione-corso {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.intestazione-piano-didattico-corso .titolo-sezione-corso::after {
  margin-left: auto;
  margin-right: auto;
}

/* ==========================================================
   Piano didattico corso - immagine centrata stabile
   ========================================================== */

.box-piano-didattico-corso > figure,
.box-piano-didattico-corso .immagine-piano-didattico-corso {
  display: block !important;
  width: 100% !important;
  max-width: 800px !important;
  margin: 30px auto 35px auto !important;
  padding: 0 !important;
  text-align: center !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
}

.box-piano-didattico-corso > figure img,
.box-piano-didattico-corso .immagine-piano-didattico-corso img {
  display: block !important;
  width: 100% !important;
  max-width: 800px !important;
  height: auto !important;
  margin: 0 auto !important;
  float: none !important;
  clear: both !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}
/* ==========================================================
   Iscrizioni corso - blocco introduttivo template corsi
   ========================================================== */

.blocco-iscrizione-corso {
  margin-bottom: 40px;
}

/* ==========================================================
   Iscrizioni corso - gabbia interna corretta
   Evita titolo a filo bordo pagina
   ========================================================== */

.iscrizione-visual-corso {
  border-left: 0 !important;
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.titolo-card-iscrizione-corso {
  margin-bottom: 10px;
  color: #555;
}

.link-mobile-iscrizione-corso {
  margin-top: 20px;
  margin-bottom: 30px;
}

.link-mobile-iscrizione-corso a {
  color: #A04000;
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  text-decoration: underline;
  display: inline-block;
  padding: 15px;
  min-width: 44px;
  min-height: 44px;
}
/* ==========================================================
   Iscrizioni corso - blocco diventare riflessologo
   ========================================================== */

.iscrizione-card-diventare-riflessologo {
  position: relative;
}
/* ==========================================================
   Recensioni corso - template corsi locali
   ========================================================== */

.blocco-recensioni-corso {
  margin-bottom: 40px;
}

.recensioni-corso-box {
  border-left: 0 !important;
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.testo-intro-recensioni-corso {
  margin-bottom: 25px;
}

.widget-recensioni-corso {
  min-height: 480px;
  width: 100%;
}

/* ==========================================================
   FIX info rapide corso - card compatte e isolate
   ========================================================== */

.info-rapide-corso {
  margin-top: 22px !important;
  margin-bottom: 24px !important;
}

.info-rapide-corso > [class*="col-"] {
  margin-bottom: 14px !important;
}

.info-rapide-corso .info-card {
  height: auto !important;
  min-height: 92px !important;
  max-height: none !important;
  padding: 15px 12px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

.info-rapide-corso .info-label {
  display: block !important;
  margin-bottom: 6px !important;
  line-height: 1.25 !important;
}

.info-rapide-corso .info-value {
  display: block !important;
  line-height: 1.35 !important;
}
/* ==========================================================
   FIX sede corso - ripristino griglia PC e distanza corretta
   ========================================================== */

.spazio-prima-sede-corso {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 18px !important;
}

.spazio-prima-sede-corso > [class*="col-"] {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.sezione-sede-corso {
  border-left: 0 !important;
  padding-left: 25px !important;
  padding-right: 25px !important;
}

.sede-grid-corso {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  margin-left: -8px !important;
  margin-right: -8px !important;
}

.sede-grid-corso > [class*="col-"] {
  padding-left: 8px !important;
  padding-right: 8px !important;
  margin-bottom: 0 !important;
}

.sede-colonna-card {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.box-sede-corso {
  margin-bottom: 14px !important;
}

.box-sede-email {
  margin-bottom: 0 !important;
}

.sede-colonna-card .box-indirizzo-sede-corso {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  height: 100% !important;
}

.box-struttura-camminando-corso {
  margin-top: 18px !important;
  margin-left: 25px !important;
  margin-right: 25px !important;
  margin-bottom: 32px !important;
}
/* ==========================================================
   FIX Struttura Camminando - bordo coerente con card sede
   ========================================================== */

.box-struttura-camminando-corso {
  background: #ffffff !important;
  border: 1px solid #eadfd2 !important;
  border-left: 5px solid #E67E22 !important;
  border-radius: 0 8px 8px 0 !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035) !important;
  padding: 20px 24px !important;
  box-sizing: border-box !important;
}

.box-struttura-camminando-corso .titolo-struttura-camminando {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  color: #333 !important;
  font-weight: 700 !important;
}

.box-struttura-camminando-corso .titolo-struttura-camminando i {
  color: #E67E22 !important;
}
/* ==========================================================
   Sede corso - template corsi On Zon Su School
   Layout generico per sede, contatti, indirizzo, struttura,
   mappa e collegamenti
   ========================================================== */

.spazio-prima-sede-corso {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.spazio-prima-sede-corso > [class*="col-"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.box-sede-principale-corso {
  border-left: 0 !important;
  padding-left: 0 !important;
}

.titolo-sede-principale-corso {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 28px;
}

.figure-sede-corso {
  text-align: center;
  margin: 0 auto 32px;
}

.figure-sede-corso img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  box-shadow: 0 3px 12px rgba(0,0,0,0.08);
}

.sede-grid-corso,
.sezione-sede-corso .sede-grid-corso {
  margin-top: 10px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.sede-grid-corso > [class*="col-"],
.sezione-sede-corso .sede-grid-corso > [class*="col-"] {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.sede-grid-corso > div {
  margin-bottom: 18px;
}

.sede-colonna-card {
  height: 100%;
}

/* Titoli box sede */

.titolo-box-sede-corso,
.titolo-indirizzo-sede,
.titolo-struttura-sede-corso,
.titolo-collegamenti-sede {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 0;
  margin-bottom: 16px;
  font-weight: 700;
  color: #333333;
  line-height: 1.35;
}

.titolo-box-sede-corso i,
.titolo-indirizzo-sede i,
.titolo-struttura-sede-corso i,
.titolo-collegamenti-sede i {
  flex: 0 0 auto;
  font-size: 21px;
  color: #B35400;
}

.titolo-box-sede-corso-verde i {
  color: #2ecc71;
}

/* Box principali sede */

.box-sede-corso,
.box-indirizzo-sede-corso,
.box-struttura-sede-corso,
.box-collegamenti-sede-corso {
  padding: 18px 24px !important;
  margin-bottom: 16px !important;
  border: 1px solid #eadfd2;
  border-radius: 0 8px 8px 0;
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(0,0,0,0.035);
  box-sizing: border-box;
}

.box-sede-contatti-principali {
  background: #f6fff8;
  border-color: #d7f1df;
  border-left: 5px solid #2ecc71 !important;
}

.box-sede-email {
  background: #fffcf9;
  border-color: #f1d8bd;
  border-left: 5px solid #E67E22 !important;
}

.box-indirizzo-sede-corso {
  background: #f4fbfb;
  border-color: #cfe8e8;
  border-left: 5px solid #168C96 !important;
}

.box-struttura-sede-corso {
  background: #fffcf9;
  border-color: #f1d8bd;
  border-left: 5px solid #E67E22 !important;
  margin-top: 18px !important;
  margin-bottom: 28px !important;
}

.box-collegamenti-sede-corso {
  background: #f4fbfb;
  border-color: #cfe8e8;
  border-left: 5px solid #168C96 !important;
  margin-top: 26px !important;
  margin-bottom: 30px !important;
}

/* Contatti sede */

.referente-sede-corso {
  margin-bottom: 12px;
}

.riga-contatto-sede-corso {
  display: block;
  margin-bottom: 14px;
  line-height: 1.6;
}

.riga-contatto-sede-corso:last-child {
  margin-bottom: 0;
}

.link-contatto-sede-corso {
  display: inline-block;
  margin-top: 5px;
  color: #B35400;
  font-size: 1.08em;
  font-weight: 700;
  text-decoration: underline;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.link-contatto-sede-corso:hover,
.link-contatto-sede-corso:focus {
  color: #E67E22;
  text-decoration: underline;
}

.link-whatsapp-corso {
  color: #25D366;
}

.link-whatsapp-corso:hover,
.link-whatsapp-corso:focus {
  color: #1DA851;
}

/* Indirizzo sede */

.riga-indirizzo-info,
.riga-indirizzo-sede {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  line-height: 1.6;
}

.riga-indirizzo-info {
  margin-bottom: 14px;
}

.indirizzo-sede-corso {
  margin: 0;
  font-style: normal;
}

.riga-indirizzo-sede i,
.riga-indirizzo-info i {
  flex: 0 0 auto;
  margin-top: 3px;
  color: #168C96;
}

.label-indirizzo-sede {
  color: #168C96;
  font-weight: 700;
}

.blocco-indirizzo-sede {
  display: block;
}

.localita-sede-nowrap {
  white-space: nowrap;
}

/* Struttura sede */

.evidenza-struttura-corso {
  color: #B35400;
  font-weight: 700;
}

.lista-struttura-sede-corso {
  list-style: none;
  padding-left: 0;
  margin: 16px 0 0;
}

.lista-struttura-sede-corso li {
  position: relative;
  padding-left: 26px;
  margin-bottom: 10px;
  line-height: 1.6;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

.lista-struttura-sede-corso li::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 0.62em;
  width: 8px;
  height: 8px;
  border: 2px solid #B35400;
  border-radius: 50%;
  background: transparent;
  box-sizing: border-box;
}

.etichetta-struttura-corso {
  color: #B35400;
  font-weight: 700;
}

.nota-struttura-sede-corso {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 18px 0 0;
  padding: 12px 14px;
  background: #fff7ef;
  border: 1px solid #f1d8bd;
  border-radius: 6px;
  color: #555555;
  line-height: 1.55;
}

.nota-struttura-sede-corso i {
  flex: 0 0 auto;
  margin-top: 3px;
  color: #B35400;
}

/* Mappa corso */

.titolo-mappa-corso {
  margin-top: 28px;
  margin-bottom: 16px;
  text-align: center;
  font-weight: 700;
  color: #333333;
}

.mappa-corso-2026 {
  width: 100%;
  margin: 30px 0 30px;
  overflow: visible !important;
  box-sizing: border-box;
}

.mappa-corso-frame {
  width: 100%;
  height: 420px;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  background: #f4fbfb;
}

.mappa-corso-frame iframe {
  display: block;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

.mappa-corso-info {
  margin-top: 12px;
  padding: 12px 16px;
  background: #f4fbfb;
  border: 1px solid #cfe8e8;
  border-left: 5px solid #168C96;
  border-radius: 0 6px 6px 0;
}

.mappa-corso-info p {
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 1.5;
  color: #555555;
}

.mappa-corso-info p:last-child {
  margin-bottom: 0;
}

.mappa-corso-info a {
  color: #168C96;
  text-decoration: underline;
  font-weight: 700;
}

.mappa-corso-info a:hover,
.mappa-corso-info a:focus {
  color: #B35400;
}

/* Come raggiungerci */

.lista-collegamenti-sede {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.lista-collegamenti-sede li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 12px;
  padding: 9px 9px 9px 7px;
  background: #ffffff;
  border: 1px solid #dbeaf5;
  border-radius: 6px;
  line-height: 1.55;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}

.lista-collegamenti-sede li:last-child {
  margin-bottom: 0;
}

.icona-collegamenti-sede {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 21px;
  height: 21px;
  min-width: 21px;
  margin-top: 3px;
  border-radius: 5px;
  background: #edf7fd;
  color: #3498db;
  font-size: 12px;
}

.testo-collegamenti-sede {
  display: block;
}

.etichetta-collegamenti-sede {
  color: #168C96;
  font-weight: 700;
}

.cta-collegamenti-sede {
  margin-top: 18px;
  text-align: center;
}

.btn-collegamenti-sede {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 18px;
  border-radius: 6px;
  background: #168C96;
  color: #ffffff !important;
  font-weight: 700;
  text-decoration: none !important;
  box-shadow: 0 3px 10px rgba(22,140,150,0.18);
}

.btn-collegamenti-sede:hover,
.btn-collegamenti-sede:focus {
  background: #B35400;
  color: #ffffff !important;
  text-decoration: none !important;
}

.testo-collegamenti-cta {
  display: inline-block;
}
/* ==========================================================
   FIX PC - allineamento bordi sinistri blocchi full width
   Costi / Piano didattico / Struttura sede
   Solo desktop, non tocca il responsive
   ========================================================== */

@media screen and (min-width: 768px) {

  /* Ripristina la gabbia colonna per Costi e Piano Didattico */
  .blocco-costi-attestati-corso,
  .blocco-piano-didattico-corso {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .blocco-costi-attestati-corso > [class*="col-"],
  .blocco-piano-didattico-corso > [class*="col-"] {
    padding-left: 30px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
  }

  .box-costi-attestati-corso,
  .box-piano-didattico-corso {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 30px !important;
    padding-right: 25px !important;
    box-sizing: border-box !important;
  }

    /* Struttura sede: mantiene il rientro corretto già trovato */
  .box-struttura-sede-corso {
    margin-left: 8px !important;
    margin-right: 0 !important;
    margin-top: 18px !important;
    margin-bottom: 32px !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Footer On Zon Su School - template corsi 2026
   Layout stabile dopo chiusura media query PC
   ========================================================== */

.main-footer,
.footer-onzonsu-school {
  background: #ffffff !important;
  color: #333333 !important;
}

/* Area superiore footer */
.main-footer .footer-widget-area,
.footer-onzonsu-school .footer-area-superiore,
.footer-area-superiore {
  background: #e6e6e6 !important;
  padding-top: 28px !important;
  padding-bottom: 18px !important;
  border-top: 1px solid #dddddd !important;
  color: #333333 !important;
}

/* Area copyright */
.main-footer .footer-contents,
.footer-onzonsu-school .footer-area-legale,
.footer-area-legale {
  background: #ffffff !important;
  padding-top: 15px !important;
  padding-bottom: 50px !important;
  border-top: 1px solid #eaeaea !important;
  color: #666666 !important;
}

/* Reset visuale interno footer */
.main-footer .footer-widget,
.main-footer .sidebar-widget-wrapper,
.main-footer .textwidget,
.main-footer .contact-details,
.main-footer address {
  background: transparent !important;
  color: #333333 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}

/* Logo */
.main-footer .footer-logo-link,
.main-footer .footer-widget:first-child .textwidget a {
  display: inline-block !important;
  margin-top: 0 !important;
}

.main-footer .footer-logo-img,
.main-footer .footer-widget-logo img,
.main-footer .footer-widget:first-child img {
  max-width: 178px !important;
  height: auto !important;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

/* Dati azienda */
.main-footer .dati-azienda-footer {
  margin-bottom: 12px !important;
  line-height: 1.45 !important;
}

.main-footer .dati-azienda-titolo {
  display: block !important;
  color: #333333 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  margin-top: 0 !important;
  margin-bottom: 3px !important;
}

.main-footer .dati-azienda-titolare {
  display: block !important;
  color: #E67E22 !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  margin-bottom: 3px !important;
}

.main-footer .dati-azienda-fisco {
  display: block !important;
  color: #666666 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

/* Claim centrale */
.main-footer .claim-footer-onzonsu,
.main-footer .contact-details p {
  color: #444444 !important;
  text-align: center !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

.main-footer .claim-footer-onzonsu span {
  color: #D87019 !important;
  font-style: italic !important;
}

/* Link rapidi */
.main-footer .footer-quick-links {
  border-top: 0 !important;
  padding-top: 6px !important;
  display: flex !important;
  justify-content: center !important;
}

.main-footer .footer-links-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 12px !important;
  row-gap: 12px !important;
}

.main-footer .footer-seo-link {
  color: #B35400 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

.main-footer .footer-seo-link-metodo {
  flex-basis: 100% !important;
  text-align: center !important;
  justify-content: center !important;
}

/* Contatti */
.main-footer .footer-contatti-address,
.main-footer .contatti-address {
  font-style: normal !important;
  text-align: left !important;
  padding-left: 10px !important;
}

.main-footer .footer-contatto-riga,
.main-footer .mobile-compatto.mobile-center-flex {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-bottom: 8px !important;
  color: #333333 !important;
}

.main-footer .footer-contatto-riga i,
.main-footer .mobile-compatto.mobile-center-flex i {
  width: 25px !important;
  min-width: 25px !important;
  text-align: center !important;
  margin-right: 12px !important;
  color: #E67E22 !important;
  font-size: 18px !important;
  position: static !important;
  display: inline-block !important;
}

.main-footer .footer-link-cellulare {
  font-weight: 700 !important;
}

/* Social */
.main-footer .social-links,
.main-footer .footer-social-links {
  border-top: 0 !important;
  padding-top: 6px !important;
}

.main-footer .footer-social-riga {
  margin-bottom: 5px !important;
}

.main-footer .fa-facebook-square,
.main-footer .icona-facebook-footer {
  color: #3b5998 !important;
  font-size: 24px !important;
}

.main-footer .fa-youtube-play,
.main-footer .icona-youtube-footer {
  color: #c4302b !important;
  font-size: 24px !important;
}

.main-footer .icona-telegram-footer,
.main-footer img.icona-telegram-footer {
  width: 22px !important;
  height: 22px !important;
  margin-left: 2px !important;
  margin-right: 13px !important;
  position: static !important;
  display: inline-block !important;
}

/* Link footer */
.main-footer .footer-social-link,
.main-footer .footer-legal-link {
  color: #B35400 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

.main-footer .footer-seo-link:hover,
.main-footer .footer-seo-link:focus,
.main-footer .footer-social-link:hover,
.main-footer .footer-social-link:focus,
.main-footer .footer-legal-link:hover,
.main-footer .footer-legal-link:focus {
  color: #E67E22 !important;
  text-decoration: underline !important;
}
/* Testi contatti */
.main-footer .testo-contatti-scuro {
  color: #333333 !important;
}

/* Copyright */
.main-footer .footer-copyright,
.main-footer .footer-contents p {
  color: #666666 !important;
  font-size: 13px !important;
  line-height: 1.8 !important;
  margin: 0 !important;
  text-align: center !important;
}
/* ==========================================================
   Footer - link rapidi interni più evidenti
   Hover deciso + stato attivo fino al click successivo
   ========================================================== */

.main-footer .footer-quick-links .footer-seo-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px 11px !important;
  border-radius: 5px !important;
  color: #B35400 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  transition:
    color 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease !important;
}

/* Passaggio mouse / focus */
.main-footer .footer-quick-links .footer-seo-link:hover,
.main-footer .footer-quick-links .footer-seo-link:focus {
  color: #ffffff !important;
  background: #E67E22 !important;
  border-color: #E67E22 !important;
  text-decoration: none !important;
  box-shadow: 0 3px 10px rgba(179, 84, 0, 0.16) !important;
}

/* Link cliccato: resta acceso fino al click successivo */
.main-footer .footer-quick-links .footer-seo-link.footer-link-attivo {
  color: #ffffff !important;
  background: #B35400 !important;
  border-color: #B35400 !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(179, 84, 0, 0.22) !important;
}

/* Hover sul link già attivo */
.main-footer .footer-quick-links .footer-seo-link.footer-link-attivo:hover,
.main-footer .footer-quick-links .footer-seo-link.footer-link-attivo:focus {
  color: #ffffff !important;
  background: #E67E22 !important;
  border-color: #E67E22 !important;
}
/* ==========================================================
   Footer - link social stile On Zon Su School
   Risposta immediata senza ritardi UX/Core Web Vitals
   Hover su tutta la riga + stato attivo dopo click
   ========================================================== */

.main-footer .footer-social-links .footer-social-link,
.main-footer .social-links .footer-social-link {
  display: inline-flex !important;
  align-items: center !important;
  padding: 5px 9px !important;
  border-radius: 5px !important;
  color: #B35400 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  outline: 0 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  box-shadow: none !important;
  transition: none !important;
  animation: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Elimina cornici browser/bootstrap su focus e click */
.main-footer .footer-social-links .footer-social-link:focus,
.main-footer .footer-social-links .footer-social-link:active,
.main-footer .social-links .footer-social-link:focus,
.main-footer .social-links .footer-social-link:active {
  outline: 0 !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* Hover immediato sul link */
.main-footer .footer-social-links .footer-social-link:hover,
.main-footer .footer-social-links .footer-social-link:focus,
.main-footer .footer-social-links .footer-social-link:active,
.main-footer .social-links .footer-social-link:hover,
.main-footer .social-links .footer-social-link:focus,
.main-footer .social-links .footer-social-link:active {
  color: #ffffff !important;
  background: #E67E22 !important;
  border-color: #E67E22 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: none !important;
}

/* Hover immediato anche quando si passa sopra tutta la riga social */
.main-footer .footer-social-riga:hover .footer-social-link,
.main-footer .mobile-center-flex:hover .footer-social-link {
  color: #ffffff !important;
  background: #E67E22 !important;
  border-color: #E67E22 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: none !important;
}

/* Social cliccato: resta acceso fino al click successivo */
.main-footer .footer-social-links .footer-social-link.footer-link-attivo,
.main-footer .social-links .footer-social-link.footer-link-attivo {
  color: #ffffff !important;
  background: #B35400 !important;
  border-color: #B35400 !important;
  outline: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: none !important;
}

/* Hover sul social già attivo */
.main-footer .footer-social-links .footer-social-link.footer-link-attivo:hover,
.main-footer .footer-social-links .footer-social-link.footer-link-attivo:focus,
.main-footer .footer-social-links .footer-social-link.footer-link-attivo:active,
.main-footer .social-links .footer-social-link.footer-link-attivo:hover,
.main-footer .social-links .footer-social-link.footer-link-attivo:focus,
.main-footer .social-links .footer-social-link.footer-link-attivo:active,
.main-footer .footer-social-riga:hover .footer-social-link.footer-link-attivo,
.main-footer .mobile-center-flex:hover .footer-social-link.footer-link-attivo {
  color: #ffffff !important;
  background: #E67E22 !important;
  border-color: #E67E22 !important;
  outline: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: none !important;
}

/* Protezione icone social: niente cornici, niente ritardi */
.main-footer .footer-social-riga img,
.main-footer .icona-telegram-footer,
.main-footer .footer-social-links i,
.main-footer .social-links i {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  transition: none !important;
  animation: none !important;
}
/* ==========================================================
   Gabbia editoriale corso - Costi allineato ai blocchi alti
   Solo PC
   ========================================================== */

@media screen and (min-width: 992px) {

  .gabbia-editoriale-corso .box-costi-attestati-corso {
    max-width: calc(100% - 190px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Gabbia editoriale corso - Piano didattico allineato ai blocchi alti
   Solo PC
   Valore verificato su Costi: 185px
   ========================================================== */

@media screen and (min-width: 992px) {

  .gabbia-editoriale-piano-corso .box-piano-didattico-corso {
    max-width: calc(100% - 190px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Gabbia editoriale corso - Iscrizioni allineato ai blocchi alti
   Solo PC
   Valore verificato: 185px
   ========================================================== */

@media screen and (min-width: 992px) {

  .gabbia-editoriale-iscrizione-corso .iscrizione-visual-corso {
    max-width: calc(100% - 200px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Gabbia editoriale corso - Recensioni allineate ai blocchi alti
   Solo PC
   Valore verificato: 185px
   ========================================================== */

@media screen and (min-width: 992px) {

  .gabbia-editoriale-recensioni-corso .recensioni-corso-box {
    max-width: calc(100% - 195px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Gabbia editoriale corso - Modalità iscrizione allineata ai blocchi alti
   Solo PC
   Valore verificato: 185px
   ========================================================== */

@media screen and (min-width: 992px) {

  .gabbia-editoriale-modalita-corso #modalita_iscrizione_sesto,
  .gabbia-editoriale-modalita-corso .box-modalita-iscrizione-corso {
    max-width: calc(100% - 250px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

}

/* ==========================================================
   Modalità iscrizione corso - template corsi On Zon Su School
   Regole generali fuori dalla gabbia PC
   ========================================================== */

.box-modalita-iscrizione-corso {
  border-left: 4px solid #B35400;
  padding-left: 25px;
}

.blocco-modalita-iscrizione-corso {
  margin-bottom: 40px;
}

.nota-copia-email-corso {
  font-size: 0.9em;
  margin-bottom: 8px;
  color: #666666;
}

.testo-preiscrizione-corso {
  margin: 0;
  padding: 0;
  border: none;
  color: #333333;
  font-size: 1.05em;
  font-style: italic;
  line-height: 1.6;
  user-select: text;
  -webkit-user-select: text;
}

.box-testo-email-corso {
  user-select: text;
  -webkit-user-select: text;
}

.titolo-box-operativo,
.titolo-mini-box-corso {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 0;
  margin-bottom: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.titolo-box-operativo i,
.titolo-mini-box-corso i {
  flex: 0 0 auto;
  font-size: 20px;
  color: #B35400;
}

.box-contatto-operativo-corso {
  padding: 14px 20px;
}

.contatto-email-corso {
  padding-bottom: 8px;
}

.contatto-telefono-corso {
  padding-top: 12px;
  padding-bottom: 16px;
}

.riga-contatto-operativo-corso {
  display: block;
  margin-bottom: 16px;
  line-height: 1.6;
}

.riga-contatto-operativo-corso:last-child {
  margin-bottom: 0;
}

.link-contatto-operativo-corso {
  display: inline-block;
  margin-top: 6px;
  color: #B35400;
  font-size: 1.05em;
  font-weight: 700;
  text-decoration: underline;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.link-contatto-operativo-corso:hover,
.link-contatto-operativo-corso:focus {
  color: #E67E22;
  text-decoration: underline;
}

.link-whatsapp-corso {
  color: #25D366;
}

.link-whatsapp-corso:hover,
.link-whatsapp-corso:focus {
  color: #1DA851;
}

.testo-importante-corso {
  margin-bottom: 0;
  color: #004e6a;
}

.testo-legge-corso {
  margin: 0;
  color: #555555;
  font-style: italic;
  line-height: 1.6;
}

.lista-dati-iscrizione-corso span {
  font-weight: 700;
  color: #B35400;
}
/* ==========================================================
   Gabbie editoriali corso - Sede, collegamenti, rimando, Macrolibrarsi
   Solo PC - valori verificati
   ========================================================== */

@media screen and (min-width: 992px) {

  /* Sede corso */
  .gabbia-editoriale-sede-corso .sezione-sede-corso {
    max-width: calc(100% - 158px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* Come raggiungerci */
  .gabbia-editoriale-collegamenti-corso {
    max-width: calc(100% - 23px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* CTA rimando altre sedi */
  .gabbia-editoriale-rimando-corso .box-rimando-sedi-corso {
    max-width: calc(100% - 255px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* Macrolibrarsi */
  .macrolibrarsi-widget-corso {
    max-width: calc(100% - 260px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Menu interno corso - due colonne centrate e coerenti
   Solo PC
   Pallino vuoto arancione On Zon Su School
   ========================================================== */

@media screen and (min-width: 992px) {

  .ancoraggi-corso {
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .ancoraggi-corso ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(230px, 310px)) !important;
    justify-content: center !important;
    column-gap: 34px !important;
    row-gap: 10px !important;
    max-width: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
  }

  .ancoraggi-corso li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .ancoraggi-corso li::marker {
    content: "" !important;
    font-size: 0 !important;
  }

  .ancoraggi-corso li::before,
  .ancoraggi-corso li::after {
    content: none !important;
    display: none !important;
  }

  .ancoraggi-corso li a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 42px !important;
    padding: 8px 13px 8px 27px !important;
    box-sizing: border-box !important;
    text-align: justify !important;
    text-align-last: left !important;
    line-height: 1.35 !important;
  }

  .ancoraggi-corso li a::before {
    content: "" !important;
    position: absolute !important;
    left: 9px !important;
    top: 50% !important;
    width: 7px !important;
    height: 7px !important;
    transform: translateY(-50%) !important;
    border: 2px solid #B35400 !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

}
/* ==========================================================
   Menu interno corso - hover e stato attivo On Zon Su School
   Accensione al passaggio mouse + link cliccato evidenziato
   ========================================================== */

@media screen and (min-width: 992px) {

  /* Stato normale */
  .ancoraggi-corso li a {
    color: #333333 !important;
    background: #ffffff !important;
    border: 1px solid #eadfd2 !important;
    border-radius: 6px !important;
    transition:
      color 0.22s ease,
      background-color 0.22s ease,
      border-color 0.22s ease,
      box-shadow 0.22s ease !important;
  }

  /* Pallino normale */
  .ancoraggi-corso li a::before {
    border-color: #B35400 !important;
    background: transparent !important;
    transition:
      border-color 0.22s ease,
      background-color 0.22s ease !important;
  }

  /* Passaggio mouse: accensione arancio On Zon Su */
  .ancoraggi-corso li a:hover,
  .ancoraggi-corso li a:focus {
    color: #B35400 !important;
    background: #fffaf5 !important;
    border-color: #E67E22 !important;
    box-shadow: 0 3px 10px rgba(179, 84, 0, 0.08) !important;
    text-decoration: none !important;
  }

  .ancoraggi-corso li a:hover::before,
  .ancoraggi-corso li a:focus::before {
    border-color: #E67E22 !important;
    background: #E67E22 !important;
  }

  /* Link cliccato: resta attivo fino al clic successivo */
  .ancoraggi-corso li a.ancoraggio-attivo {
    color: #ffffff !important;
    background: #B35400 !important;
    border-color: #B35400 !important;
    box-shadow: 0 4px 12px rgba(179, 84, 0, 0.18) !important;
    text-decoration: none !important;
  }

  .ancoraggi-corso li a.ancoraggio-attivo::before {
    border-color: #ffffff !important;
    background: transparent !important;
  }

  /* Hover sul link già attivo: resta leggibile */
  .ancoraggi-corso li a.ancoraggio-attivo:hover,
  .ancoraggi-corso li a.ancoraggio-attivo:focus {
    color: #ffffff !important;
    background: #E67E22 !important;
    border-color: #E67E22 !important;
  }

}