:root
{
  --cassiopeia-color-primary: #f12855;
  --cassiopeia-color-link: #f12855;
  --link-color: #f12855;
  --link-color-rgb: 241, 40, 85;
  --cassiopeia-color-hover: #c21845;
  --link-hover-color: #c21845;
  --link-hover-color-rgb: 194, 24, 69;
  --cassiopeia-color-primary-25: rgba(241, 40, 85, 0.25);
  --body-font-size: 20px;  /* Express font-size in em relative to this, except special cases  */
}

.metismenu.mod-menu .metismenu-item a
{
  font-size: 1.500em;
}

h1
{
  font-size: 1.500em;
  font-weight: 400;
}

h2
{
  font-size: 1.300em;
  font-weight: 400;
}

h3
{
  font-size: 1.150em;
  font-weight: 400;
}

div #name
{
  margin-top: 10px;
}

div #name a
{
  font-size: 2.400em;
  color: #fff;
  text-decoration: none;
}

.container-header
{
  background-image: none;
}

/* Gallery */
/* --------------------------------------------------------------------------------*/

img.gallery
{
  margin-bottom: 10px;
  width: 100%;
}

/* Home page layout */
/* --------------------------------------------------------------------------------*/

.home-container
{
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.part-left
{
  flex: 1 1 60%;
}

.part-right
{
  flex: 1 1 35%;
}

.part-left table
{
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 1530px)
{
  .home-container
  {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .part-left,
  .part-right
  {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 1500px;
    box-sizing: border-box;
  }

  .part-right iframe
  {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    padding-top: 20px;
  }
}

#classSchedule
{
  border-collapse: collapse;
  max-height: 400px;
}

#classSchedule th, #classSchedule td
{
  text-align: left;
  vertical-align: top;
  padding: 8px;
}

#classSchedule th
{
  border-bottom: 1px solid var(--cassiopeia-color-primary);
}

#classSchedule td
{
  border-bottom: 1px solid var(--cassiopeia-color-primary-25);
}

#classSchedule th:nth-child(1), #classSchedule td:nth-child(1)
{width: 15.0%;}
#classSchedule th:nth-child(2), #classSchedule td:nth-child(2)
{width: 25.0%;}
#classSchedule th:nth-child(3), #classSchedule td:nth-child(3)
{width: 17.5%;}
#classSchedule th:nth-child(4), #classSchedule td:nth-child(4)
{width: 12.5%;}
#classSchedule th:nth-child(5), #classSchedule td:nth-child(5)
{width: 30.0%;}

.hiddenrow
{
  display: none;
}


/* Contact form */
/* --------------------------------------------------------------------------------*/

#contact-form legend
{
  display: none;
}

#jform_contact_message
{
  height: 120px; /* Adjust height as needed to control number of lines */
  resize: vertical; /* Allow vertical resizing if desired */
}

.form-control /* Text boxes on Contact form */
{
  border: var(--border-width) solid var(--cassiopeia-color-primary-25);
}

.form-check-input /* Send copy to yourself */
{
  border: var(--border-width)solid var(--cassiopeia-color-primary-25);
}