h1, h2, h3 {
    hyphens: auto;
}
header {
    padding: var(--s0) var(--s2);
}
.brand-logo img {
    width: 120px;
}
.navbar-brand {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    .site-description {
        font-size: 1.6rem;
        font-weight: 700;
    }
}
.sidebar--right {
    background-color: #f5f5f5;
    height: 100%;
    padding: var(--s2);
}
.page .container-banner,
.page .banner-overlay {
    height: 20vh;
}
.h1 {
    --fluid-type-min: 2.5rem;
  --fluid-type-max: var(--h1size);
  --fluid-type-target: 5vw;
    font-size: clamp(var(--fluid-type-min,1rem),calc(1rem + var(--fluid-type-target,3vw)),var(--fluid-type-max,1.3rem));
    font-weight: 600;
}
.container-banner {
    height: auto;
}
.container-banner .camera_caption {
    background: rgba(0, 0, 0, 0.6);
    bottom: auto !important;
    top: 0;
}
.container-banner .camera_caption > div {
    background: transparent;
    max-width: var(--wrapperwidth);
    margin: 0 auto;
    padding: 0;
}
.container-banner .camera_caption {
    padding: var(--s1) var(--s2);
}
.container-banner .camera_caption_title {
    font-size: 2.3rem;
}
.camera_caption_desc {
    font-size: 2rem;
}
.container-sidebar .moduletable ~ .moduletable {
  margin-top: 3rem;
}
.item-title a {
  text-decoration: none;
}
.blog-item:has(:not(figure)) .item-content {
    padding-block-start: var(--s1);
}
.partner h3 {
  text-align: center;
}
footer .nav-item.active a, footer a:hover {
  color: #a8c1fc;
}
/* Timeline Simple */
.timeline {
  border-left: 2px solid #f2f2f2;
  padding: 15px 0 5px;
  margin: 20px 0 20px 20px;
  position: relative;
}
.timeline::before,
.timeline::after {
  content: "";
  display: block;
  height: 20px;
  width: 2px;
  position: absolute;
  left: -2px;
}
.timeline::before {
  background: linear-gradient(to bottom, #ffffff 0%, #f2f2f2 100%);
  top: 0;
}
.timeline::after {
  background: linear-gradient(to top, #ffffff 0%, #f2f2f2 100%);
  bottom: 0;
}
.timeline-post {
  border: 0 none;
  padding: 0 0 10px 70px;
  margin-left: -20px;
  position: relative;
}
.timeline-post .timeline-time {
  background: #fff;
  color: #e12208;
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 1.2rem;
  font-weight: bold;
  padding-block: .5rem;
  text-align: center;
  position: absolute;
  top: 10px;
  left: 0px;
}
.timeline-post .timeline-content {
  background: #f5f5f5;
  border: 1px solid #f2f2f2;
  border-radius: 3px;
  padding: 15px 20px;
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px,1fr));
  gap: 2rem;
}
.timeline-post .timeline-content::before,
.timeline-post .timeline-content::after {
  border: 8px solid transparent;
  content: "";
  display: block;
  position: absolute;
  top: 26px;
}
.timeline-post .timeline-content::before {
  border-right-color: #f2f2f2;
  left: -16px;
}
.timeline-post .timeline-content::after {
  border-right-color: #f5f5f5;
  left: -15px;
}