.elementor-27507 .elementor-element.elementor-element-12d7b134 > .elementor-container > .elementor-row{align-items:stretch;}.elementor-27507 .elementor-element.elementor-element-ab0c51c > .elementor-container > .elementor-row{align-items:stretch;}.elementor-27507 .elementor-element.elementor-element-c2e48d8 > .elementor-container > .elementor-row{align-items:stretch;}.elementor-27507 .elementor-element.elementor-element-f38d869 > .elementor-container > .elementor-row{align-items:stretch;}.elementor-27507 .elementor-element.elementor-element-8dd1045{--spacer-size:50px;}.elementor-27507 .elementor-element.elementor-element-9c5cec4 > .elementor-container > .elementor-row{align-items:stretch;}/* Start custom CSS for tm-tabs, class: .elementor-element-3a6041f *//* =====================================================
   TABELLA CORSI BASE
===================================================== */

.tabella-corsi-base {
    width: 100%;
    border-collapse: collapse;
    font-size: 16px;
    background: #ffffff;
}

.tabella-corsi-base tr {
    border-bottom: 1px solid #e6e6e6;
    transition: background 0.2s ease;
    position: relative;
}

.tabella-corsi-base tr:first-child {
    border-top: 1px solid #e6e6e6;
}

.tabella-corsi-base tr:hover {
    background: #f8f9fa;
}

.tabella-corsi-base td {
    padding: 26px 12px;
    vertical-align: middle;
}

/* COLONNA DATE */
.tabella-corsi-base .date {
    text-align: center;
    white-space: nowrap;
    font-weight: 500;
    width: 230px;
    color: #444;
    font-size: 14px;
}

/* ICONA CALENDARIO */
.tabella-corsi-base .calendar-icon {
    margin-right: 6px;
    font-size: 14px;
    opacity: 0.6;
}

/* CORSI PASSATI */
.tabella-corsi-base tr.is-past td {
    opacity: 0.78;
}

/* BADGE CONCLUSO */
.tabella-corsi-base tr.is-past td:first-child {
    position: relative;
    padding-top: 60px;
    text-align: center;
}

.tabella-corsi-base tr.is-past td:first-child::before {
    content: "CONCLUSO";
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.07em;
    padding: 5px 16px;
    border-radius: 999px;
    background: #f4f6f8;
    color: #3a3f44;
    border: 1px solid #d8dde3;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

/* =====================================================
   BOTTONE ISCRIZIONI – CENTRATURA PERFETTA
===================================================== */

.tabella-corsi-base .disponibile {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    margin-top: 10px;
    padding: 6px 18px;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 0.06em;

    background: #ffffff;
    color: #9e1b22;
    border: 2px solid #9e1b22;
    border-radius: 999px;
    text-decoration: none;

    height: 34px;
    line-height: normal;
    box-sizing: border-box;

    transition: all 0.25s ease;
}

/* micro correzione ottica baseline font */
.tabella-corsi-base .disponibile span {
    display: inline-block;
    transform: translateY(-1px);
}

.tabella-corsi-base .disponibile:hover {
    background: #9e1b22;
    color: #ffffff;
}

/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 767px) {
  .tabella-corsi-base,
  .tabella-corsi-base tr,
  .tabella-corsi-base td {
    display: block;
    width: 100%;
  }

  .tabella-corsi-base td {
    padding: 18px 10px;
  }

  .tabella-corsi-base .date {
    text-align: left;
    white-space: normal;
    width: 100%;
    margin-top: 6px;
  }

  .tabella-corsi-base .disponibile {
    width: 100%;
  }

  .tabella-corsi-base tr.is-past td:first-child {
    padding-top: 70px;
  }
}

/* =====================================================
   GERARCHIA TESTO
===================================================== */

.tabella-corsi-base td:first-child {
  color: #555;
  line-height: 1.35;
}

.tabella-corsi-base td:first-child em {
  font-style: normal;
  font-weight: 700;
  color: #222;
  display: inline-block;
  margin-top: 4px;
}

/* =====================================================
   ANIMAZIONE CONTENUTO TAB
===================================================== */

.elementor-tab-content {
    min-height: 300px;
    transition: opacity 0.2s ease-in-out;
}

.elementor-tab-content:not(.elementor-active) {
    opacity: 0;
}

.elementor-tab-content.elementor-active {
    opacity: 1;
}

/* =====================================================
   TABS EDUMALL (BASE / SPEC / AVANZATO)
   Variante Rosso Brand
===================================================== */

a.edumall-tab-title{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  transition: all .25s ease !important;
  background: #f4f6f8 !important;
  border: 1px solid #e5e7eb !important;
}

a.edumall-tab-title .nav-tab-title{
  color: #444 !important;
}

a.edumall-tab-title:hover{
  background: #e9ecef !important;
}

li.active > a.edumall-tab-title,
li.is-active > a.edumall-tab-title,
a.edumall-tab-title.active,
a.edumall-tab-title[aria-selected="true"]{
  background: #9e1b22 !important;
  border-color: #9e1b22 !important;
  box-shadow: 0 8px 18px rgba(158,27,34,0.18) !important;
  transform: translateY(-1px);
}

li.active > a.edumall-tab-title .nav-tab-title,
li.is-active > a.edumall-tab-title .nav-tab-title,
a.edumall-tab-title.active .nav-tab-title,
a.edumall-tab-title[aria-selected="true"] .nav-tab-title{
  color: #ffffff !important;
}

a.edumall-tab-title{
  box-shadow: 0 1px 0 rgba(0,0,0,0.02);
}

/* Transizione contenuti */
.elementor-tab-content{
  transition: opacity .25s ease, transform .25s ease !important;
  transform: translateY(6px);
}

.elementor-tab-content.elementor-active{
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.elementor-tab-content:not(.elementor-active){
  opacity: 0 !important;
  pointer-events: none;
}/* CENTRATURA OTTICA PERFETTA - ISCRIZIONI APERTE */

.tabella-corsi-base .disponibile{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 9px 22px 11px 22px !important;  /* +1px sotto */
  line-height: 1 !important;

  height: auto !important;
}/* CENTRATURA OTTICA PERFETTA - ISCRIZIONI APERTE */

.tabella-corsi-base .disponibile{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 10px 22px !important;
  line-height: 1 !important;
  height: auto !important;
}

/* Spostiamo SOLO il testo di 1px */
.tabella-corsi-base .disponibile .btn-label{
  display: inline-block;
  transform: translateY(-1px);
}/* =========================
   DATE + BOTTONE: layout pulito (bottone sotto)
========================= */
.tabella-corsi-base .date{
  white-space: normal;              /* permette andare a capo senza allargare colonna */
}

.tabella-corsi-base .date .date-text{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  white-space: nowrap;              /* la data resta su una riga */
}

.tabella-corsi-base .date .btn-wrapper{
  margin-top: 10px;
  display: flex;
  justify-content: center;
}

/* Il bottone resta “a blocco”, quindi non si mette mai affianco */
.tabella-corsi-base .disponibile{
  display: inline-flex !important;
}

/* Centra il testo nel bottone (solo testo, pill invariato) */
.tabella-corsi-base .disponibile .btn-label{
  display: inline-block;
  transform: translateY(-1px);
}.tabella-corsi-base td a{
  color: inherit;
  text-decoration: none;
  transition: color .2s ease;
}

.tabella-corsi-base td a:hover{
  color: #9e1b22;
}/* SOLO titoli dei corsi CONCLUSI (esclude il pulsante) */
.tabella-corsi-base tr.is-past td a:not(.disponibile){
  color: inherit !important;
  text-decoration: none !important;
  transition: color .2s ease !important;
}

/* Hover: colora sia <a> che il testo dentro (<em>) */
.tabella-corsi-base tr.is-past td a:not(.disponibile):hover,
.tabella-corsi-base tr.is-past td a:not(.disponibile):hover em{
  color: #9e1b22 !important;
}/* End custom CSS */