.calendarlist {
  position: relative;
  height: 5em; }
  .calendarlist .bground {
    height: 4em; }
  .calendarlist .horizon {
    height: 1.6em !important;
    bottom: 1em; }
  .calendarlist .slideback, .calendarlist .slidefwd {
    position: absolute;
    font-size: 3em;
    cursor: pointer; }
    .calendarlist .slideback .icon, .calendarlist .slidefwd .icon {
      margin: 0; }
  .calendarlist .slidefwd {
    right: 0; }
  .calendarlist .viewport {
    margin: 0 3em;
    overflow: hidden;
    height: 5.3em;
    position: absolute;
    bottom: 0;
    left: 1em;
    right: 1em; }
  .calendarlist .calendar {
    position: absolute;
    width: 300000px;
    white-space: nowrap;
    z-index: 2; }
    .calendarlist .calendar .month {
      font-family: "NDRSansCondRegular", sans-serif;
      position: absolute;
      top: 0;
      padding-left: 0.2em; }
    .calendarlist .calendar ul {
      display: inline-block;
      padding: 0;
      margin: 0.5em 0 0 0; }
      .calendarlist .calendar ul li {
        list-style: none;
        display: block;
        float: left;
        padding: 0.5em 0 0 0; }
        .calendarlist .calendar ul li a {
          text-decoration: none; }
        .calendarlist .calendar ul li span {
          display: block;
          text-align: center; }
        .calendarlist .calendar ul li .date {
          font-family: "NDRSansCondRegular", sans-serif;
          font-size: 1.4em;
          color: #939292;
          padding: 0.2em 0.3em 0 0.3em;
          width: 1em; }
        .calendarlist .calendar ul li a .date {
          color: #fff; }
        .calendarlist .calendar ul li a:hover .date, .calendarlist .calendar ul li a:focus .date {
          background-color: #82a2b2;
          color: #dedede; }
        .calendarlist .calendar ul li .day {
          color: #5993cc;
          font-size: 0.9em;
          margin-top: 0.3em; }
  .calendarlist .marker {
    position: absolute;
    width: 0;
    height: 0;
    border-width: 1em;
    border-left-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-style: solid;
    bottom: -0.7em;
    left: -9999px;
    z-index: 1; }

.detailview {
  padding: 0 2em 1em 2em;
  position: relative; }
  .detailview .modulepadding {
    padding-right: 0; }
  .detailview .teaserimage {
    width: 8em; }
  .detailview .teaserpadding {
    padding-top: 0;
    padding-right: 12em; }
  .detailview .button {
    position: absolute;
    right: 2em;
    top: 1em; }
  .detailview .cta:hover, .detailview .cta:focus {
    background-color: #fff;
    color: #dedede; }

.kk_datenav h1 {
  color: #fff; }

.kk_kalender .form_element {
  width: auto; }

#program_schedule.kk_kalender {
  font-family: "NDRSansCondRegular",sans-serif;
  border-top: 4px solid #2568b4; }
  #program_schedule.kk_kalender li {
    padding: 0;
    position: relative;
    min-height: 7em; }
  #program_schedule.kk_kalender .timeandplay {
    width: 17%;
    padding-left: 11%;
    text-align: left; }
    #program_schedule.kk_kalender .timeandplay .time {
      font-size: 2em; }
    #program_schedule.kk_kalender .timeandplay .brandeddate {
      color: #fff;
      padding-left: 0.5em;
      margin-right: 0.5em;
      margin-bottom: 1px;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      width: 9%;
      min-width: 3em; }
      #program_schedule.kk_kalender .timeandplay .brandeddate span {
        display: block; }
        #program_schedule.kk_kalender .timeandplay .brandeddate span.date {
          color: #fff;
          font-size: 2em;
          margin: 0.2em 0; }
  #program_schedule.kk_kalender .ndrsinfonieorchester .timeandplay .brandeddate,
  #program_schedule.kk_kalender .ndrsinfonieorchester .timeandplay .brandeddate span.date {
    color: rgba(0, 0, 0, 0.6); }
  #program_schedule.kk_kalender .thumbnail {
    width: 20%; }
  #program_schedule.kk_kalender .details {
    width: 45%; }
    #program_schedule.kk_kalender .details .abo {
      clear: left; }
  #program_schedule.kk_kalender .brandeddate, #program_schedule.kk_kalender .performedby, #program_schedule.kk_kalender .thumbnail, #program_schedule.kk_kalender .details {
    display: block;
    padding: 0.5em 0 0 0;
    margin-bottom: 0.5em; }
  #program_schedule.kk_kalender .nodata {
    text-align: center;
    font-size: 1.6em;
    padding: 1em 0;
    margin-bottom: 2em;
    list-style: none;
    border-bottom: 1px solid #e7e8e9; }

.kk_datenav label {
  background-color: #214683;
  padding: 0.2em 0.5em 0.1em 0.5em;
  text-decoration: none;
  border-radius: 2px;
  color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
  left: 1.8em; }

.kk_datenav .icon {
  top: 0; }

.kk_datenav a.daynext {
  line-height: 2.8em; }

.kk_kalender h1 a {
  border-bottom: 1px solid #0c327d; }

@media screen and (max-width: 40em) {
  .detailview {
    padding: 0 1em 1em 1em; }
    .detailview .button {
      right: 0; }

  #program_schedule.kk_kalender .timeandplay {
    width: 23%;
    padding-left: 13%; }
    #program_schedule.kk_kalender .timeandplay .brandeddate {
      padding-left: 0.2em;
      overflow: hidden; }
    #program_schedule.kk_kalender .timeandplay .brandeddate span.date {
      font-size: 1.5em; }
    #program_schedule.kk_kalender .timeandplay .time {
      font-size: 1.5em; }
  #program_schedule.kk_kalender .thumbnail {
    display: none; }
  #program_schedule.kk_kalender .details {
    width: 60%; }
  #program_schedule.kk_kalender .epgbutton {
    display: none; }

  .kk_datenav label {
    left: 0.9em; } }
@media screen and (max-width: 30em) {
  .detailview .teaserpadding {
    padding-right: 1em; }
  .detailview .button {
    position: relative;
    top: 0;
    clear: left; }

  .kk_datenav a {
    color: transparent !important; }

  .kk_datenav a span {
    color: #fff !important; } }
