:root {
    --light-goldish: #966f76    ;
    --goldish: #5c323e;
    --lightest-greyish: #aaa;
    --light-grey: #888;
    --greyish: #666666;
    --dark-greyish: rgb(80 80 80 / 80%);
    /* --green: #bda172; */
    --green: #8dafb9;
    --dark-green: #957648;
    --light-green: #d9bb89;
  }
  
  ul {
    margin-block-start: 0px;
  }
  
  body {
    font-family: 'Cormorant', serif;
    font-display: swap;
    /* max-width: 1100px; */
    margin-left: auto;
    margin-right: auto;
    color: var(--greyish);
  }
  
  a {
    text-decoration: none;
    color: var(--goldish);
  }
  
  a:hover {
    opacity: 50%;
  }
  
  p, li {
    font-family: 'Cormorant', serif;
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 1em;
  }
  
  .subtitle {
    font-family: 'Cormorant', serif;
    font-size: 36px;
    line-height: 1.4;
    margin-bottom: 2px; /* or 2px? */
    text-shadow: 0px 0px 5px rgba(0,0,0,.5), 0px 0px 100px rgba(50,0,0,1), 0px 0px 100px rgba(50,0,0,1);
    padding-left: 5%;
    padding-right: 5%;
    padding-top: 3%;
    padding-bottom: 3%;
  }
  
  li {
    margin-bottom: 0.3em;
    list-style-position: outside;
  }
  
  .payment-img {
    margin: 10px;
  }
  
  aside {
    font-size: 16px;
  }
  
  .event-description a {
    color: var(--light-goldish)
  }
  
  p a {
    color: var(--light-goldish)
  }
  
  h1 {
    font-size: 122px;
    margin-bottom: 5px;
    line-height: 1;
    font-weight: 300;
    /* letter-spacing: 0.1em; */
    font-variant: small-caps;
    text-shadow: 0px 0px 5px rgba(0,0,0,.5), 0px 0px 100px rgba(50,50,0,1), 0px 0px 100px rgba(50,50,0,1);
  
    /* color: rgba(50,50,50); */
  }
  
  @media screen and (max-width: 800px) {
    h1 {
      font-size: 12vw;
    }
  }
  
  section {
    padding-top: 60px;
  }
  .navbar {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 20px;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
    z-index: 5;
    position:relative;
    /* flex-wrap: wrap; */
  }
  @media screen and (max-width: 750px) {
    .navbar-title {
      display:none;
    }
  }
  
  .logo {
    display:flex;
    /* align-content: center; */
    align-items: center;
    gap: 20px;
    text-transform: uppercase;
    letter-spacing: 0.3em;
  }
  .logo-image {
  /*     transform: rotate(90deg); */
    width: 30px
  }
  .CTA-button-navbar, .CTA-button-chat {
    background: none;
    border: 0px;
    opacity: 50%;
    font-style: italic;
    display: inline-block;
    flex-shrink: 0;
  }
  
  .CTA-button {
    padding: 10px 15px;
    border-radius: 5px;
    margin-right: 10px;
  }
  .CTA-button.center {
    margin: 0 auto;
    display: block;
    max-width: 240px;
  }
  
  .CTA-button.primary {
    background: var(--goldish);
    color: white;
    margin-right: 10px;
  }
  
  .CTA-button.secondary {
    border: solid 1px var(--goldish);
    color: var(--goldish);
    margin-right: 10px;
    background: white;;
  }
  
.CTA-button.third {
  background: var(--goldish);
  color: white;
  font-size: 24px;
  padding: 12px 25px; /* Increased horizontal padding from 18px */
  opacity: 100%;
  display: block;
}
  
  @media screen and (max-width: 750px) {
    .CTA-button.third {
      max-width: 250px;
      margin-left: auto;
      margin-right: auto;
    }
  }
  
  .CTA-button.third:hover {
    background: var(--light-goldish);
  }
  a.CTA-button.third {
    display: block;
    margin-bottom: 10px;
  }
  
  .button-series {
    margin-top: 10px;
    margin-bottom: 10px;
    width: 400px;
    text-align: center;
  }
  .childcare {
    background: var(--goldish);
    display: block;
    color: white;
    min-width:220px;
    text-align: center;
  }
  .childcare h3 {
    color: white;
  }
  .childcare em {
    opacity: .8;
  }
  .child-price {
    margin-left:20px;
  }
  
  .top-image {
    width: 250px;
    height: 250px;
    margin-bottom: 36px;
  }
  
  .splash-image {
    width: 850px;
    margin-bottom: 36px;
    margin-left: auto;
    margin-right: auto;
  }
  @media (max-width: 700px) {
    .splash-image {
      width: 100%;
    }
  }
  
  .background-image {
    /* background-image: './background-wide-1.jpg'; */
    background-image: url('https://substackcdn.com/image/fetch/w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf303d6a-4412-485b-a790-88303552286d_926x679.jpeg');
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
    /* height: 800px; */
    position: relative;
  }

  @media (max-width: 920px) {
      .background-image {
        background-size: auto;
      }
  }
  
  .guests-title {
    text-align: center;
    margin: 75px 0 -25px 0;
  }
  
  .papers-title {
    text-align: center;
    margin: 75px 0 25px 0;
  }
  
  p a.green {
    color: var(--green);
  }
  
  .green {
    color: var(--green);
  }
  
  .guests {
    display: flex;
    flex-direction: row;
    justify-content: center; /* Changed to start to allow continuous flow from left */
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    width: 95vw;
    margin: 50px auto 50px auto;
    padding: 0 50px;
  }
  
  .guest-photo-wrapper {
    flex-shrink: 0;
    width: 180px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-shrink: 0;
    text-align: center;
    overflow: hidden; /* Added to crop any overflowing content */
  }
  
  .guest-photo {
    width: 180px;
    height: 180px;
    object-fit: cover;
    border-radius: 50%;
    margin: 10px;
  }
  
  .guest-name {
    font-size: 16px;
    margin-top: 12px;
    color: #222;
  }
  
  .guest-name-subtitle {
    font-size: 15px;
    color: #888;
    width: 200px;
  }
  
  /* it's hard to get the faces to look nice at all screen widths */
  @media (max-width: 1777px) {
    .guests {
      width: 100vw;
    }
    .guest-photo-wrapper {
      width: 180px;
    }
    .guest-photo {
      width: 180px;
      height: 180px;
    }
    .guest-name-subtitle {
      width: 160px;
    }
  }
  
  @media (max-width: 1687px) {
    .guests {
      width: 100vw;
    }
    .guest-photo-wrapper {
      width: 160px;
    }
    .guest-photo {
      width: 160px;
      height: 160px;
    }
    .guest-name-subtitle {
      width: 160px;
    }
  }
  
  @media (max-width: 1517px) {
    .guests {
      width: 100vw;
    }
    .guest-photo-wrapper {
      width: 200px;
    }
    .guest-photo {
      width: 200px;
      height: 200px;
    }
    .guest-name-subtitle {
      width: 160px;
    }
  }
  
  @media (max-width: 1399px) {
    .guests {
      width: 100vw;
    }
    .guest-photo-wrapper {
      width: 160px;
    }
    .guest-photo {
      width: 160px;
      height: 160px;
    }
    .guest-name-subtitle {
      width: 160px;
    }
  }
  
  @media (max-width: 1000px) {
    .guests {
      width: 100vw;
    }
    .guest-photo-wrapper {
      width: 120px;
    }
    .guest-photo {
      width: 120px;
      height: 120px;
    }
    .guest-name-subtitle {
      width: 120px;
    }
  }
  
    
  .paper-gallery {
    display: flex;
    max-width: 100%;
    /* justify-content: center; */
    align-items: flex-end;
    padding: 0%;
    /* flex-wrap:wrap; */
    margin: 0 auto;
    overflow: auto;
  }
  
  .gallery {
    display: flex;
    /* justify-content: center; */
    align-items: flex-end;
    /* flex-wrap:wrap; */
    /* width: 100%; */
    margin: 100px auto;
    overflow: auto;
  }
  
  .gallery-photo {
    /* width: 290px;
    height: 290px; */
    object-fit: cover;
    margin: 8px;
    border-radius: 5px;
  }
  
  .gallery-photo.smallest {
    width: 280px;
    object-position: right;
    height: 280px;
    margin-top: -8px;
  }
  
  .gallery-photo.small {
    width: 295px;
    object-position: right;
    height: 295px;
    margin-top: -4px;
  }
  
  .gallery-photo.large {
    width: 315px;
    height: 315px;
  }
  
  .gallery-photo.largest {
    width: 350px;
    height: 350px;
  }
  
  .gallery-photo.largester {
    width: 500px;
    height: 500px;
  }
  
  
  .splash-text {
    /* width: 420px; */
    top: -50px;
    /* left: calc(50% - 360px); */
    position: relative; /* changed from absolute */
    text-align: center;
    color: white;
    padding-top: 100px;
  }
  
  @media (max-width: 900px) {
    .splash-text {
      top: 525px;
    }
  }
  @media (max-width: 800px) {
    .splash-text {
      top: 450px;
    }
  }
  @media (max-width: 750px) {
    .splash-text {
      position: relative;
      left: 0;
      top: 0;
      margin-left: auto;
      margin-right: auto;
      margin-top: -50px;
      margin-bottom: 50px;
      width:100%; 
    }
  }
  @media (max-width: 500px) {
    h1 {
      font-size: 50px;
    }
  }
  
  .splash-title {
    font-size: 50px;
  }
  
  .condensed-image {
    width: 40%;
    margin-top: 0px;
  }
  
  .row {
    display: "flex",
  }
  
.cta-row {
  z-index: 2;
  margin-top: 4em; /* Changed from 10% to a font-relative unit for more consistent spacing */
}

/* Add this new CSS to your stylesheet */

/* This wrapper contains the button and anchors the banner */
.luma-button-wrapper {
  position: relative; /* Required for positioning the ::before pseudo-element */
  display: inline-block; /* Makes the wrapper fit the button's content */
  overflow: hidden; /* Hides the parts of the banner that stick out */
  border-radius: 5px; /* Matches the border-radius on your .CTA-button */
}

.luma-button-wrapper::before {
  content: '2024 EVENT';
  position: absolute;
  transform: rotate(-45deg);
  top: 22px;
  left: -56px;
  
  /* New "Parchment" Styling */
  background-color: bba57b;         /* A creamy, parchment-like off-white */
  color: var(--goldish);              /* Uses your theme's dark color for an "ink" look */
  border: 1px solid rgba(92, 50, 62, 0.4); /* A subtle border using your --goldish color */
  
  /* Retained sizing and font styles */
  font-family: 'Cormorant', serif;
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 2px 50px;
  box-shadow: 0 2px 3px rgba(0,0,0,0.2); /* Softened shadow for depth */
}
  
  .campus-section {
    display: flex;
  
    row-gap: 12px;
    column-gap: 50px;
    /* flex-flow: row wrap; */
    align-items: flex-end;
    flex-wrap: wrap;
    /* align-content: center; */
    /* justify-items: center; */
    justify-content: space-evenly
  }
  
  .blogroll-section {
    display: flex;
    flex-direction: row;
    /* row-gap: 12px; */
    column-gap: 80px;
    /* flex-flow: row wrap; */
    /* align-items: flex-end; */
    /* flex-wrap: wrap; */
    /* align-content: center; */
    /* justify-items: center; */
    justify-content: center;
    min-height: 600px;
    padding-left: 60px;
    padding-right: 60px;
    max-width:1600px;
    margin-left: auto;
    margin-right: auto;
  }
  
  .blogroll-title {
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    font-size: 26px;
  }
  
  .blogroll-subtitle {
    display: block;
    font-size: 19px;
    color: grey;
    font-style: italic;
    text-wrap: balance;
  }
  
  .ben-testimonial {
    width: 30%;
    text-align: left;
    margin-right: 100px;
    margin-top:10px;
    margin-bottom:auto;
  }
  
  .blogosphere {
    width: 80%;
    max-width: 1400px;
    align-items: center;
    justify-content: center;
    /* padding-top: 50px; */
    flex: 3.5;
    min-width: 300px;
    text-align: center;
  }
  
  .text-section {
    width: 60%;
    max-width: 550px;
    /* padding-top: 50px; */
    flex: 3.5;
    min-width: 300px;
  }
  
  .event-description {
    width: 60%;
    max-width: 450px;
    /* padding-top: 50px; */
    flex: 3.5;
    min-width: 300px;
  }
  
  .quote {
    margin-left: 20px;
    opacity: 0.7;
  }
  
  @media (max-width: 650px) {
    .CTA-button-navbar {
        display: none;
    }
  }
  
  h2 {
    font-family: 'Cormorant', serif;
    font-size: 28px;
    line-height: 38px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--dark-greyish);
    font-weight: 300;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  
  h3 {
    font-family: 'Cormorant', serif;
    font-style: normal;
    font-size: 23px;
    line-height: 25px;
    font-weight: 500;
    color: var(--greyish);
    margin-top: 10px;
    margin-bottom: 10px;
  }
  h3 a, h3 a:hover, h3 a:visited {
    color: var(--light-goldish);
  }
  
  .title {
    margin-bottom: 50px;
    margin-top: 60px;
  }
  
  .content-area {
    display: flex;
    flex-direction: column;
  }
  
  .event {
    display: flex;
    flex-direction: column;
    padding: 16px;
    /* box-shadow: 4px 4px 13px rgba(0, 0, 0, 0.1); */
    border-radius: 15px;
    max-width: 300px;
    min-width: 300px;
    flex: 1;
  }
  
  .event p {
    font-size:18px;
  }
  
  .events {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    justify-content: center;
  }
  
  h4 {
    font-family: 'Cormorant', serif;
    font-style: normal;
    font-weight: normal;
    font-size: 18px;
    line-height: 22px;
    color:  rgb(209, 164, 109);
    margin-bottom: 15px;
    fill: hsl(40deg 79% 52%);
  }
  
  .center-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 80vw;
    margin-left: auto;
    margin-right: auto;
  }
  .center-section h2 {
    text-align: center;
  }
  
  #timeline-section {
    max-width: 100%;
  }
  
  .FAQ-section {
    display: flex;
    flex-direction: row;
    /* align-items: center;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto; */
    /* row-gap: 12px; */
    column-gap: 90px;
    align-items: flex-start;
  
    /* justify-content: space-evenly */
  
    /* width: 720px;
    left: calc(50% - 460px);
    position: relative; changed from absolute */
  
  }
  
  .campus-section {
    display: flex;
  
    row-gap: 12px;
    column-gap: 50px;
    /* flex-flow: row wrap; */
    align-items: flex-end;
    flex-wrap: wrap;
    /* align-content: center; */
    /* justify-items: center; */
    justify-content: space-evenly
  }
  
  .faq-text {
    display: flex;
    flex-direction: column;
    align-items: start;
    margin-top: 0;
    width: 60%;
    padding-right: 16px;
  }
  
  .splash-text {
    /* width: 420px; */
    top: -20px;
    /* left: calc(50% - 360px); */
    position: relative; /* changed from absolute */
    text-align: center;
    color: white;
    padding-top: 100px;
    padding-bottom: 50px;
  }
  
  .event button {
    margin-top: auto;
    border: 0px;
    background: none;
    color: var(--light-goldish);
    padding: 0px;
  }
  
  .event h4 {
    display: flex;
    align-items: center;
  }
  
  .event-posting {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }
  
  .event img {
    height: 300px;
    width: 300px;
    margin-left: 0px;
    padding-bottom: 24px;
    object-fit: cover;
  }
  
  .event-posting h1 {
    margin-top: 50px;
  }
  
  .team-members {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(300px, 1fr));
  }
  
  .member {
    /* width: 250px; */
    max-width: 320px;
    min-width: 250px;
    flex: 1;
    display: block;
  }
  .buildings {
    margin-bottom:auto;
    margin-top:auto;
  }
  
  .buildings p, .buildings li {
    font-size: 18px;
  }
  .buildings li {
    position: relative;
    list-style-type: none;
  }
  
  .buildings li::before {
    content: ''; /* Empty content */
    width: 7px; /* Square size */
    height: 7px; /* Square size */
    border-radius:50%;
    background: var(--lightest-greyish); /* Color of the square */
    font-size: 20px; /* Adjust size as needed */
    position: absolute;
    left: -25px; /* Adjust position as needed */
    top: 50%;
    transform: translateY(-50%);
  }
  
  .buildings b {
    font-variant: small-caps;
    font-size: 18px;
    font-weight:500;
  }
  
  .photo-row {
    margin-left:-30px;
    margin-right:-30px;
    display: flex;
    justify-content: center;
    margin-top:0px;
    max-height: 680px;
    overflow: hidden;
    margin-bottom:20px;
  }
  
  .photo-link {
    min-width: 320px;
    width: 320px;
    height: 340px;
    display:flex;
    justify-content: center;
    align-items: center;
  }
  .photo-link:hover {
    opacity:1;
  }
  
  .event-photo {
    width: 300px;
    height: 300px;
    transition: all 0.2s ease-in-out;
    margin: 20px;
    border-radius:5px;
  }
  
  .photo-row-wide {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    max-width: 100%;
    width: 1500px;
    justify-content: center;
  }
  
  .photo-wide {
    min-width: 320px;
    width: 320px;
    display:flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s ease-in-out; 
    margin: 20px;
    border-radius:5px;
  }
  .photo-mosaic {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    grid-auto-rows: 210px; /* Adjusted to set a minimum row height */
    grid-gap: 10px; /* Adjusted the grid gap to ensure it's not larger than 10px */
    margin: 0 auto; /* Adjusted to center the content horizontally */
    max-width: 1350px;
    padding: 10px; /* Added padding to ensure content is not against the container edges */
  }
  
  .photo-mosaic .small {
    width: 100%; /* Adjusted to ensure the content scales with the grid */
    height: 100%; /* Adjusted to ensure the content scales with the grid */
    object-fit: cover;
    border-radius: 5px;
  }
  
  .large {
    grid-column: span 2; 
    grid-row: span 2;    
    width: 100%; /* Adjusted to ensure the content scales with the grid */
    height: 100%; /* Adjusted to ensure the content scales with the grid */
    object-fit: cover;
    border-radius: 5px;
  }
  
  .photo:hover {
    opacity:.8  ;
    /* width: 310px;
    height: 310px; */
  }
  
  /* Styles for the modal */
  .modal {
    display: none;
    position: fixed;
    z-index: 2;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    overflow: auto;
  }
  
  .modal-content {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
  #prev-button,
  #next-button {
    cursor: pointer;
    font-size: 32px;
    padding: 10px;
    margin: 0 20px;
  }
  
  /* Style for the close button */
  .close {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 30px;
    color: white;
    cursor: pointer;
  }
  
  .modal-photo {
    max-height:95vh;
  }
  
  @media (max-width: 500px) { 
    .CTA-button-navbar {
        display: none;
    }
  }
  @media (max-width: 735px) {
    .photo-link {
      width: 170px;
      height: 180px;
      min-width:170px;
      margin: 8px;
    }
  
    .p {
      font-size: 18px;
    }
  
    .photo {
      width: 170px;
      object-fit: contain;
      height: auto;
      margin: 8px;
    }
  
    .event {
      flex-direction: row;
      align-items: center;
      max-width: unset;
      padding: 4px;
    }
  
    .event img {
      width: calc(50% - 36px);
      height: auto;
      margin-right: 24px;
    }
  
    .event p {
      font-size: 16px;
    }
  /* 
    .campus-image {
      width: calc(100% - 30px);
    } */
  
    .ben-testimonial {
      width: calc(100% - 30px);
    }
  }
  
  .end-logo {
    margin-left: auto;
    margin-right: auto;
    margin-top: 75px;
    margin-bottom: 75px;
    width: 80px;
    height: 80px;
    opacity: .5
  }
  
  .testimonials {
    display: flex;
    flex-wrap:wrap;
    justify-content: center;
  }
  .testimonial {
    max-width: 35%;
    padding: 24px 48px;
    background: #efefef;
    color:rgba(0, 0, 0, 0.8);
    padding: 36px 36px 30px 36px;
    margin: 24px;
    border-radius:5px;
  }
  .testimonial p:last-of-type {
    margin-bottom: 0px;
    color: var(--light-grey);
  }
  
  .testimonial p {
    font-size: 18px;
    /* color: #888; */
  }
  .testimonial-author {
    text-align: right;
  }
  @media (max-width: 1000px) {
    .testimonial {
      margin: 16px;
      max-width: 50%;
    }
  }
  @media (max-width: 750px) {
    .testimonial {
      max-width: 100%;
      margin:0;
      padding: 24px;
    }
  }
  
  .hero-video {
    width: 100%;
    height: 80vh;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
  }
  
  .schelling-splash-image {
    width: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
  }
  
  .white-gradient-down {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 40%;
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    z-index: 1;
  }
  
  .white-gradient-up {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 40%;
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    z-index: 1;
  }
  
  .schelling-title {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 60vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 2;
    /* color: rgba(255,255,255,.9); */
    /* text-shadow: 0px 0px 10px rgba(0,0,0,0.5); */
  }
  
  .after-hero {
    margin-top:calc(50vh + 20px);
  }
  .schelling-season-section {
    max-width: 900px;
    margin: 0 auto;
    padding: 24px;
  }
  .center-text {
    text-align: center;
  }
  .schelling-season-section h2 {
    text-align: center;
  }
  
  .sticky {
    position: sticky;
    top: 64px;
  }
  
  .schelling-splash-text {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
    margin-bottom: 48px;
  }
  
  .schelling-title-h1 {
    margin-top: 15px;
    margin-bottom: 25px;
    text-align: center;
    color:rgba(0, 0, 0, 0.7);
    text-shadow: 0px 0px 20px rgba(255,255,255,0.6);
  }
  
  .schelling-season-background {
    background: url('public/schelling-splash.jpg')
  }
  
  .opening-text {
    line-height: 1.5em;
    max-width: 500px;
    margin: auto;
    margin-bottom: 25px;
    font-size: 1.2rem;
  }
  
  .faq h3 {
    text-align: left;
    margin-bottom: 25px;
    margin-top: 15px;
  }
  
  .white {
    color: white;
    text-shadow: 0px 0px 0px rgba(0,0,0,0.5);
  }
  
  .rooms {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .room-photo {
    display: block;
    width: 300px;
    height: 300px;
    object-fit: cover;
    margin: 10px;
    border-radius: 3px;
  }
  @media screen and (max-width: 1340px) {
    .room-photo {
      width: 200px;
      height: 200px;
    }
  }
  
  .ribbon {
    overflow: hidden;
    margin-top: 20px; /* Adjust the margin as needed */
  }
  
  .ribbon a {
    color: var(--dark-greyish); /* Set the default color for the links */
  }
  
  .ribbon a::hover {
    color: white; /* Set the color when hovering over the links */
  }
  .divider {
    margin: 0 5px; /* Adjust the spacing between names and dividers */
    color: var(--dark-greyish); /* Color of the divider */
  }
  
  .marquee {
    white-space: nowrap;
    animation: marquee 50s linear infinite;
  }
  
  @keyframes marquee {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
  }
  
  .blogs {
    /* white-space: nowrap; */
    position: relative;
    z-index: 1; /* Add a higher z-index value to override gradient*/  
    font-size: 18px; /* Remove the default font-size */
  }
  
  .blogs .attending a {
    display: inline-block;
    color: var(--green);
    opacity: 0.8;
    text-shadow: 0 0 0px #00000082;
    text-decoration: none;
    transition: color 0.1s;
    /* padding: 5px; Add padding for better click area */
    margin-right: 18px;
  }
  
  .blogs .not a {
    display: inline-block;
    color: var(--lightest-greyish);
    opacity: 0.8;
    text-shadow: 0 0 0px #00000082;
    text-decoration: none;
    transition: color 0.1s;
    /* padding: 5px; Add padding for better click area */
    margin-right: 18px;
  }
  
  .attending {
    color: var(--green);
  }
  
  .blogs a:hover {
    color: var(--light-goldish);
    opacity: 1;
  }
  
  .divider {
    margin: 0 5px; /* Adjust the spacing between names and dividers */
    color: var(--dark-greyish); /* Color of the divider */
  }
  
  .attendees-key {
    z-index: 1;
    padding-bottom: 20;
    position: relative;
    color: var(--green);
    font-size: 18px;
  }
  
  .blog-name {
    display: inline-block;
  }
  
  .hidden {
    display: none;
  }
  
  .faq-item {
    margin-bottom: 20px;
    display: flex;
    cursor: pointer;
  }
  
  .q-and-a {
    padding-left: 10px;
    display: flex;
    flex-direction: column;
  }
  
  .faqIcon {
    font-size: 20px;
    transition: all 0.2s ease-in-out;
    vertical-align: top;
    transform-origin: center;
  }
  
  .question {
    cursor: pointer;
  }
  
  .down {
    display: inline-block;
    color: var(--green);
    transform: rotate(90deg); /* Rotates the carrot to face down */
  }
  
  #toggleCheckbox {
    z-index: 1;
    position: relative;
    transform: scale(1.3); /* Adjust the scale value as needed */
    margin-right: 8px; /* Adjust the margin as needed */
  }
  
  .blog-checkbox:hover {
    color: var(--light-green);
  }
  
  .info {
    padding-bottom: 1.25em;
    font-size: 20px;
    text-shadow: 0px 0px 5px rgba(0,0,0,.5), 0px 0px 50px rgba(0,0,0,1), 0px 0px 50px rgba(0,0,0,1);
    padding-left: 5%;
    padding-right: 5%;
  }
  
  .height-shorten {
    margin-bottom: 20px;
  }
  
  .top-short {
    margin-top: 25px;
  }
  
  .splash-text .info-icon {
    display: inline-block;
    justify-content: center;
    align-items: center;
    font-size: 18px;
  }
  
  .splash-text .info-icon {
    font-size: 14px;
    vertical-align: super;
    position: relative;
    font-weight: 800;
  }
  
  .info-popup {
    display: none;
    color: rgba(0,0,0,0.87) !important;
    text-shadow: none;
    background-color: white;
    color: #fff;
    text-align: left;
    border-radius: 10px;
    padding: 8px;
    position: absolute;
    z-index: 1;
    opacity: 1;
    position: absolute;
    top: 37px;
    right: 0px;
    width: 230px;
  }
  
  .splash-text .info-popup p {
    margin-bottom: 0px;
  }
  
  .fa-circle-info:before, .fa-info-circle:before{
    content: "[1]" !important;
    font-size: 20px; 
  }
  
  .splash-text .fa-solid, .splash-text .fas {
    font-family: inherit !important;
    font-weight: 600 !important;
  }
  
  /* .info-icon .info-popup::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
  } */
  
  @keyframes pulseGlow {
    0% {
      text-shadow: 0 0 0px rgba(255, 255, 255, 0.7);
      opacity: .9;
    }
    50% {
      text-shadow: 0 0 5px rgba(255, 255, 255, 0.9);
      opacity: 1;
    }
    100% {
      text-shadow: 0 0 0px rgba(255, 255, 255, 0.7);
      opacity: .9;
    }
  }
  
  
  .info-icon {
    animation: pulseGlow 5s infinite;
  }
  
  .info-icon:hover .info-popup {
    display: inline-block;
    visibility: visible;
    opacity: 1;
    z-index: 2;
  }
  
  /* .blogroll-title-info {
  } */
  
  .footnote {
    position: relative;
    cursor: help;
    color: var(--light-goldish);
  }
  
  .tooltip {
    visibility: hidden;
    width: 150px;
    /* background-color: black; */
    color: var(--lightest-greyish);
    text-align: center;
    border-radius: 6px;
    padding: 5px 5px;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 100%;
    margin-top: -10px;
    margin-left: 10px;
    opacity: 0;
    transition: opacity 0.3s;
  }
  
  .footnote:hover .tooltip {
    visibility: visible;
    opacity: 1;
  }
  
  .campus-map {
    width: 60%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
    padding: 30px;
  }
  
  .tickets-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 20px;
  }
  
  .ticket-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    padding-top: 50px;
    padding-bottom: 40px;
  }
  
  .ticket {
    /* display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px;
    border-radius: 15px; */
    max-width: 300px;
    min-width: 300px;
    position: relative;
    /* flex: 1; */
  }
  
  input:checked + label {
    box-shadow: 1px 1px 7px #0000004f;
    border: 3px solid var(--green);
  }
  
  .ticket input {
    position: absolute;
    top: 16px;
    right: 16px;
    accent-color: var(--green);
  }
  
  .ticket h3 {
    margin-top: 0px;
  }
  
  .ticket label, .child-ticket {
    display: flex;
    height: 100%;
    /* align-items: center; */
    gap: 8px;
    flex-direction: column;
    padding: 16px;
    cursor: pointer;
    box-shadow: 2px 3px 5px #0000005c;
    border-radius: 8px;
    border: 3px solid transparent;
  }
  
  .ticket label ul {
    overflow: hidden;
    margin: 0px;
  }
  
  @media screen and (max-width: 800px) {
    .ticket label ul {
      height: 0px;
    }
    input:checked + label ul {
      height: inherit;
    }
  }
  
  .ticket label:hover {
    box-shadow: 2px 3px 8px #0000008c;
  }
  
  .ticket label p {
    margin-bottom: 0px;
  }
  
  .ticket label span {
    margin-top: 6px;
  }
  
  /* .buy-tickets-button {
    padding-top: 20px;
  } */
  
  .ticket-info {
    max-width: 750px;
    text-align: center;
  }
  
  .ticket-extra {
    text-align: center;
    margin-top: 30px;
  }
  
  .ticket-extra a {
    color: var(--green);
  }
  
  .price {
    font-size: 24px;
  }
  
  @media (max-width: 800px) {
    section.blogroll-section {
        display: block;
        padding-left: 8px;
        padding-right: 8px;
    }
  
    .event-description {
        margin-left: auto;
        margin-right: auto;
        width: unset;
        max-width: unset;
    }
  
    .blogosphere {
        margin-left: auto;
        margin-right: auto;
        text-align: left;
        width: unset;
        max-width: unset;
    }
  
    section.FAQ-section {
        display: block;
        padding: 8px;
    }
  
    .campus-map {
        margin-right: auto;
        margin-left: auto;
        width: unset;
    }
  
    .faq-text {
        margin-right: auto;
        margin-left: auto;
        width: unset;
    }
  
    section.campus-section {
        display: block;
    }
  
    .text-section.buildings {
        margin-right: auto;
        margin-left: auto;
        width: unset;
        max-width: unset;
        padding: 8px;
    }
  
    img.condensed-image {
        margin-left: auto;
        margin-right: auto;
        width: unset;
    }
  
    .tickets-section {
      padding: 8px;
      align-items: flex-start;
    }
  
    .tickets-section .title {
      margin-bottom: 20px;
    }
  
    .ticket-info {
      text-align: left;
    }
  
    .ticket {
      max-width: unset;
      min-width: unset;
      width: 100%;
    }
  
    .ticket-row {
      gap: 25px;
      padding-top: 20px;
    }
  
  }
  
  .ticket-price-note {
    color: black;
    opacity: .8;
    font-size: 24px;
    margin-bottom: -30px;
    margin-top: 25px;
    text-shadow: 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white, 0 0 20px white;
  }
  
  navigation {
    display: flex;
    justify-content: center;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 100;
    background-color: white;
    box-shadow: 0 0 3px rgba(0,0,0,0.2);
    width: 100%;
    overflow: hidden;
  }
  
  navigation a {
    display: inline-block;
    text-decoration: none;
    margin: 0 10px;
    padding: 10px;
    font-size: 18px;
    font-weight: 600;
    color: black;
    text-shadow: 0 0 5px rgba(255,255,255,0.5), 0 0 5px rgba(255,255,255,0.5), 0 0 5px rgba(255,255,255,0.5);
  }
  
  .sessions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
  }
  
  .session {
    flex: 1 1 200px;
    max-width: 280px;
    margin: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    color: rgb(51, 49, 49);
    font-size: 14px;
  }
  
  .session img {
    width: 100%;
    border-radius: 3px;
    height: 250px;
    object-fit: cover;
  }
  
  .session h3 {
    margin-top: 15px;
    font-size: 18px;
    text-align: center; 
    color: #888 !important;
  }
  
  .session p {
    color: #777;
    font-size: 14px;
    margin-top: 10px;
    text-align: center;
    max-width: 100%;
  }
  
  @media (max-width: 1000px) {
    .session {
      flex-basis: calc(33.333% - 20px);
    }
  }
  
  @media (max-width: 768px) {
    .session {
      flex-basis: calc(50% - 20px);
    }
  }
  
  @media (max-width: 480px) {
    .session {
      flex-basis: 100%;
    }
  }
  
  
  .session a {
    color: rgb(175, 111, 7);
  }
  @media screen and (max-width: 800px) {
    .session p {
      display: none;
    }
  }
  
  @media screen and (max-width: 800px) {
    navigation {
      display: none;
    }
  }
  
  .redBar {
    top: 47;
    text-align: center;
    background-color: lch(61.17 61.87 45.15 / 0.8);
    padding: 10px;
    color: white;
    z-index: 2;
    font-size: 25px;
  }
  
  .additional-ticket-section {
    display: flex;
    justify-content: center;
  }
  
  .additional-ticket {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    background: var(--goldish);
    color: white;
    padding: 12px 24px;
    min-width: 150px;
    border-radius: 3px;
  }
  
  .additional-ticket h3 {
    margin-top: 0;
    color: white;
  }
  
  .support-ticket, .day-pass-ticket {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    width: 350px;
    padding: 20px;
    font-size: .9em;
    margin: 20px;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
    border-radius: 5px;
  }
  
  .support-ticket h3, .day-pass-ticket h3 {
    margin-top: 0;
  }
  
  .support-ticket p, .day-pass-ticket p {
    margin-top: -10px;
    margin-bottom: 0;
  }
  
  .price {
    font-size: 17px;
    font-weight: 600;
    margin-top: -10px;
    opacity: .7;
  }
  
  .bonus-ticket-image {
    width: 200px;
    height: 200px;
    object-fit: cover;
  }
  
  .center {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
