.elementor-135 .elementor-element.elementor-element-7915206{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-135 .elementor-element.elementor-element-bf86727 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-135 .elementor-element.elementor-element-5037363{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-135 .elementor-element.elementor-element-caea6a7{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-135 .elementor-element.elementor-element-e1a51d7{--display:flex;--padding-top:140px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-135 .elementor-element.elementor-element-573d5e3{text-align:center;}.elementor-135 .elementor-element.elementor-element-573d5e3 .elementor-heading-title{font-weight:500;}.elementor-135 .elementor-element.elementor-element-51cb0af{--display:flex;--min-height:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-135 .elementor-element.elementor-element-4dd324d{--display:flex;--padding-top:160px;--padding-bottom:160px;--padding-left:0px;--padding-right:0px;}.elementor-135 .elementor-element.elementor-element-255d12b{text-align:center;}.elementor-135 .elementor-element.elementor-element-255d12b .elementor-heading-title{font-weight:600;}.elementor-135 .elementor-element.elementor-element-f5af492{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-135 .elementor-element.elementor-element-72f5c90{--display:flex;}.elementor-135 .elementor-element.elementor-element-4bc83ce{text-align:center;}.elementor-135 .elementor-element.elementor-element-e49f23c{margin:-12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-135 .elementor-element.elementor-element-785190b .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-135 .elementor-element.elementor-element-2aa4750{--display:flex;}.elementor-135 .elementor-element.elementor-element-5399ac9{text-align:center;}.elementor-135 .elementor-element.elementor-element-5204d91{margin:-12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-135 .elementor-element.elementor-element-afbbe9b .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-135 .elementor-element.elementor-element-3eee907{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-135 .elementor-element.elementor-element-b90e06a{--display:flex;}.elementor-135 .elementor-element.elementor-element-2e3c8b6{text-align:center;}.elementor-135 .elementor-element.elementor-element-9db1092{margin:-12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-135 .elementor-element.elementor-element-e69714a .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-135 .elementor-element.elementor-element-59fe3c4{--display:flex;}.elementor-135 .elementor-element.elementor-element-f7e912d{text-align:center;}.elementor-135 .elementor-element.elementor-element-f7e912d .elementor-heading-title{text-transform:uppercase;}.elementor-135 .elementor-element.elementor-element-3d58be1{margin:-12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-135 .elementor-element.elementor-element-92692cb .elementor-button-content-wrapper{flex-direction:row-reverse;}@media(min-width:768px){.elementor-135 .elementor-element.elementor-element-f5af492{--content-width:1320px;}.elementor-135 .elementor-element.elementor-element-3eee907{--content-width:1320px;}}@media(max-width:1024px){.elementor-135 .elementor-element.elementor-element-e1a51d7{--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-896d2d2 *//* ===== TABLE BASE ===== */
.calendar {
  width: 100%;
  max-width: 1200px;
  margin: 40px auto;
  border-collapse: collapse;
  table-layout: fixed;
  font-family: Montserrat, sans-serif;
  background: #000;
  color: #fff;
}

/* ===== RESET TOTALE CELLE ===== */
.calendar th,
.calendar td {
  padding: 0;
  border: none;                 /* ⬅ UCCIDE IL BIANCO */
  text-align: center;
}

/* ===== COLONNE ===== */
.col-time { width: 80px; }
.col-course { width: 120px; }

/* ===== ORARI ===== */
.time {
  text-align: left;
  font-size: 13px;
  opacity: 0.6;
  padding-left: 6px;
}

/* ===== HEADER GIORNI ===== */
.days-row th {
  padding: 0;
}

.day {
  display: block;
  padding: 40px 0 22px;          /* ⬅ VERO PADDING */
  font-size: 16px;
  letter-spacing: 1px;
}

/* ===== HEADER SALE ===== */
.rooms-row th {
  padding: 0;
}

.room {
  display: block;
  padding: 10px 0 32px;          /* ⬅ VERO PADDING */
  font-size: 11px;
  opacity: 0.6;
}

/* ===== RIGHE ===== */
.calendar tbody tr {
  height: 78px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.calendar tbody tr:last-child {
  border-bottom: none;
}

/* ===== SEPARATORI GIORNI ===== */
.calendar th:nth-child(4),
.calendar th:nth-child(6),
.calendar th:nth-child(8),
.calendar th:nth-child(10),
.calendar td:nth-child(4),
.calendar td:nth-child(6),
.calendar td:nth-child(8),
.calendar td:nth-child(10) {
  border-left: 1px solid rgba(255,255,255,0.06);
}

/* ===== CORSI ===== */
.course {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;                   /* ⬅ MAI OLTRE COLONNA */
  max-width: 110px;              /* ⬅ RESPIRO */
  padding: 24px 0;
  box-sizing: border-box;        /* ⬅ CHIAVE */
  font-size: 12px;
  font-weight: 700;
  border-radius: 999px;
  color: #000;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.course:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.35);
}

/* ===== COLORI ===== */
.boxe { background:#4deeea; }
.kickboxing { background:#b6ff3b; }
.posturale { background:#ff4fd8; }
.pilates { background:#a78bfa; }
.mfg { background:#4ade80; }
.shinkido { background:#fbbf24; }

/* NASCONDI DESKTOP */
@media (max-width: 768px) {
  .calendar-wrap {
    display: none;
  }

  .calendar-mobile {
    display: block;
    padding: 20px;
    color: #fff;
    font-family: Montserrat, sans-serif;
  }

  .day-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 20px;
  }

  .day-tabs button {
    flex: 1;
    padding: 12px 0;
    background: #111;
    color: #fff;
    border: none;
    border-radius: 999px;
    font-weight: 700;
    opacity: 0.5;
  }

  .day-tabs button.active {
    opacity: 1;
    background: #fff;
    color: #000;
  }

  .time-block {
    margin-bottom: 24px;
  }

  .time-label {
    font-size: 14px;
    opacity: 0.6;
    margin-bottom: 8px;
  }

  .course-row {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
  }

  .course-row .course {
    width: auto;
    flex: 1;
  }

  .course-row .room-label {
    font-size: 11px;
    opacity: 0.6;
    margin-top: 4px;
    text-align: center;
  }
}/* End custom CSS */