.elementor-338 .elementor-element.elementor-element-d848a79{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:75px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-338 .elementor-element.elementor-element-d848a79:not(.elementor-motion-effects-element-type-background), .elementor-338 .elementor-element.elementor-element-d848a79 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#345689;}.elementor-338 .elementor-element.elementor-element-0acbb0d{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 50px 0px;}@media(max-width:767px){.elementor-338 .elementor-element.elementor-element-d848a79.e-con{--align-self:center;}}@media(min-width:768px){.elementor-338 .elementor-element.elementor-element-d848a79{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-0acbb0d *//* =====================================================
   TIME TABLE — CLEAN COMPLETE CODE WITH INTER
===================================================== */

.tt-section,
.tt-section * {
  font-family: "Inter", Arial, sans-serif !important;
}

.tt-section {
  background: #345689;
  padding: 70px 24px;
  width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
}

.tt-title {
  color: #ffffff;
  font-size: 42px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: center;
  margin: 0 auto 42px auto;
}


/* =====================================================
   SHARED COLORS + BOXES
===================================================== */

.tt-desktop,
.tt-mobile {
  --light-blue: #b9d4ea;
  --pale-blue: #dcebf7;
  --workshop: #f6eee8;
  --gold: #e9b765;
  --gray: #6d6f6b;
}

.tt-box,
.tt-pill,
.tt-break,
.tt-break-mobile {
  border: none;
  border-radius: 8px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 13px;
  line-height: 1.18;
}

.tt-box {
  padding: 12px;
}

.tt-pill {
  height: 36px;
  padding: 6px 10px;
}

.tt-seminar {
  background: var(--pale-blue);
}

.tt-workshop {
  background: var(--workshop);
  flex-direction: column;
  gap: 12px;
  padding: 12px 8px;
}

.tt-workshop div {
  font-size: 13px;
  line-height: 1.12;
}

.tt-workshop em {
  font-size: 12px;
  line-height: 1.08;
}

.tt-talk {
  background: var(--light-blue);
}

.tt-gold {
  background: var(--gold);
}

.tt-break,
.tt-break-mobile {
  background: var(--gray);
  color: #ffffff;
  height: 28px;
  font-size: 12px;
}


/* =====================================================
   DESKTOP VERSION
===================================================== */

.tt-desktop {
  max-width: 1080px;
  margin: 0 auto;
  color: #000000;

  display: grid;

  grid-template-columns:
    46px
    90px
    135px
    115px
    247px
    247px;

  grid-template-rows:
    auto
    132px
    132px
    28px
    132px
    132px
    36px;

  column-gap: 6px;
  row-gap: 18px;
}

.tt-mobile {
  display: none;
}


/* =====================================================
   DESKTOP HEADERS
===================================================== */

.tt-time-head {
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  justify-self: start;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  transform: translateY(8px);
}

.tt-time {
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
}

.tt-time-start {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  padding-top: 4px;
}

.tt-time-end {
  grid-column: 1;
  grid-row: 7;
  align-self: end;
}

.tt-day {
  text-align: center;
}

.tt-day-sat {
  grid-column: 2 / 5;
  grid-row: 1;
}

.tt-day-sun {
  grid-column: 5;
  grid-row: 1;
}

.tt-day-mon {
  grid-column: 6;
  grid-row: 1;
}

.tt-day-title,
.tt-day-subtitle {
  background: transparent;
  color: #9DACCF;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.15;
  padding: 11px 12px;
  border: 2px solid #ffffff;
  border-radius: 8px;
  box-sizing: border-box;
  text-align: center;
}

.tt-day-subtitle {
  margin-top: 4px;
}


/* =====================================================
   DESKTOP SIMULATION — VERTIKAL
===================================================== */

.tt-simulation {
  background: #9ec7e3;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  flex-direction: column;
  gap: 8px;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.05;
  padding: 10px 8px;
  white-space: nowrap;
}

.tt-simulation span,
.tt-simulation strong {
  display: block;
}

.tt-simulation strong {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.05;
}


/* =====================================================
   DESKTOP POSITIONS — SATURDAY
===================================================== */

.sat-1 { grid-column: 2; grid-row: 2; }
.sat-2 { grid-column: 3; grid-row: 2; }
.sat-3 { grid-column: 4; grid-row: 2; }

.sat-4 { grid-column: 2; grid-row: 3; }
.sat-5 { grid-column: 3; grid-row: 3; }
.sat-6 { grid-column: 4; grid-row: 3; }

.tt-break {
  grid-column: 2 / 7;
  grid-row: 4;
}

.sat-7 { grid-column: 2; grid-row: 5; }
.sat-8 { grid-column: 3; grid-row: 5; }
.sat-9 { grid-column: 4; grid-row: 5; }

.sat-10 { grid-column: 2; grid-row: 6; }
.sat-11 { grid-column: 3; grid-row: 6; }
.sat-12 { grid-column: 4; grid-row: 6; }

.sat-lecture {
  grid-column: 2 / 5;
  grid-row: 7;
}


/* =====================================================
   DESKTOP POSITIONS — SUNDAY
===================================================== */

.sun-1 { grid-column: 5; grid-row: 2; align-self: start; }
.sun-2 { grid-column: 5; grid-row: 2; margin-top: 54px; }

.sun-3 { grid-column: 5; grid-row: 3; align-self: start; }
.sun-4 { grid-column: 5; grid-row: 3; margin-top: 54px; }

.sun-5 { grid-column: 5; grid-row: 5; align-self: start; }
.sun-6 { grid-column: 5; grid-row: 5; margin-top: 54px; }

.sun-7 { grid-column: 5; grid-row: 6; }


/* =====================================================
   DESKTOP POSITIONS — MONDAY
===================================================== */

.mon-1 { grid-column: 6; grid-row: 2; }
.mon-2 { grid-column: 6; grid-row: 3; }

.mon-3 { grid-column: 6; grid-row: 5; align-self: start; }
.mon-4 { grid-column: 6; grid-row: 5; margin-top: 54px; }

.mon-5 { grid-column: 6; grid-row: 6; align-self: start; }


/* =====================================================
   TABLET + MOBILE VERSION
===================================================== */

@media (max-width: 1024px) {

  .tt-section {
    padding: 60px 20px;
  }

  .tt-title {
    font-size: 34px;
    margin-bottom: 34px;
  }

  .tt-desktop {
    display: none;
  }

  .tt-mobile {
    display: flex;
    flex-direction: column;
    gap: 38px;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    box-sizing: border-box;
  }

  .tt-mobile-day {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    box-sizing: border-box;
  }

  .tt-mobile-day .tt-day-title,
  .tt-mobile-day .tt-day-subtitle {
    width: 100%;
  }

  .tt-mobile-time {
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    text-align: left;
    padding-left: 4px;
  }

  .tt-mobile .tt-box,
  .tt-mobile .tt-pill,
  .tt-break-mobile {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  .tt-mobile .tt-box {
    min-height: 72px;
    height: auto;
    padding: 14px;
  }

  .tt-mobile .tt-pill {
    min-height: 44px;
    height: auto;
    padding: 12px;
  }

  .tt-break-mobile {
    min-height: 30px;
    height: 30px;
    writing-mode: horizontal-tb;
    transform: none;
  }

  .tt-simulation-mobile {
    background: #9ec7e3;
    writing-mode: horizontal-tb;
    transform: none;
    flex-direction: column;
    gap: 8px;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.15;
    min-height: 72px !important;
    white-space: normal;
  }

  .tt-simulation-mobile span,
  .tt-simulation-mobile strong {
    display: block;
  }

  .tt-simulation-mobile strong {
    font-size: 13px;
    font-weight: 700;
  }
}


/* =====================================================
   MOBILE FEINSCHLIFF
===================================================== */

@media (max-width: 767px) {

  .tt-section {
    padding: 50px 16px;
  }

  .tt-title {
    font-size: 30px;
    margin-bottom: 28px;
  }

  .tt-mobile {
    max-width: 100%;
    gap: 34px;
  }

  .tt-day-title,
  .tt-day-subtitle {
    font-size: 14px;
    padding: 10px 12px;
  }

  .tt-box,
  .tt-pill {
    font-size: 13px;
  }

  .tt-workshop div {
    font-size: 13px;
  }

  .tt-workshop em {
    font-size: 12px;
  }
}/* End custom CSS */