
.wp-block-ktp-ktp-ohjelma {
  border-right: #9b2237 3px solid;
  border-radius: 5px 5px 0 0;
  max-width: calc(var(--wp--style--global--content-size) + 4rem);
}

.wp-block-ktp-ohjelmarivi.normaali-rivi {
  padding-left: 2rem;
  min-height: 6rem;
  margin-bottom: 2rem;
}

.wp-block-ktp-ohjelmarivi.otsikkorivi h2 {
  border-radius: 5px 0 0 5px;
}


  .aikataulu {
    max-width: 600px;
    margin: auto;
  }
  
  .otsikko {
    background-color: #861446;
    color: white;
    padding: 0.6rem 1rem;
    font-weight: bold;
    font-size: 1.4rem;
    text-transform: uppercase;
    margin-bottom: 1rem;
  }
  
  .tapahtuma {
    display: flex;
    align-items: flex-start;
    margin-bottom: 1.5rem;
  }
  
  .aika {
    font-weight: normal;
    text-align: center;
    padding-right: 1rem;
    flex-shrink: 0;
    color: #fff;
    width: 80px;
  }
  
  .pisteviiva {
    position: relative;
    width: 120px;
    height: 100%;
    margin-right: 0;
  }

  @media (max-width: 768px) {
    .pisteviiva {
      width: 40px;
    }
  }
  
  .pisteviiva::before {
    content: "";
    position: absolute;
    top: 0px;
    left: 0;
    transform: translateX(-50%) translateY(50%);
    width: 14px;
    height: 14px;
    background-color: #861446;
    border-radius: 50%;
  }
  
  .pisteviiva::after {
    content: "";
    position: absolute;
    top: 0.8rem;
    left: 50%;
    transform: translateX(-50%) translateY(0px);
    width: 100%;
    height: 3px;
    background-color: #861446;
  }
  
  .tiedot {
    flex: 1;
  }

  .tiedot h3, .tiedot h4 {
    margin-top: 0;
    margin-bottom: 0;
  }
  
  .tiedot h4 + * {
    margin-top: 0.5rem;
  }

  .otsikko-teksti {
    font-weight: bold;
    text-transform: uppercase;
  }
  
  .alateksti {
    font-size: 0.9rem;
    margin-top: 0.2rem;
  }
  