@media (min-width: 1024px) {

  .tile-section,
  .mystery-tile-section,
  .index-tile-section {
    overflow-y: scroll;
    display: flex;
    flex: 0 0 100%;  
    flex-direction: row;
    padding: 15px;
    gap: 15px;
    scroll-snap-type: x mandatory;
  }

  .local-roots-tile-section {
    margin-top: 130px;
    overflow-y: scroll;
    display: flex;
    flex-direction: row;
    padding: 15px;
    gap: 15px;
  }

  .mystery-hero {
    margin-top: 130px;
  }
  .site-header {
    height: 180px;
  }
  
  .nav-menu {
    margin-top: 30px;
    display: flex;              /* override display:none */
    position: absolute;         /* keep it under header */
    top: 150px;
    left: 0;
    transform: none;
    width: 100%;    
    justify-content: center;    /* keeps links grouped */
    padding: 0;
  }

  .nav-menu a {
    color: #ffffff;
    text-decoration: none;
    padding: 15px 20px;
    display: block;
  }

  .main-nav {
    
    display: flex;
    flex-direction: row;
    text-align: center;
    justify-content: center;
    gap: 10px;
  }

  .nav-toggle {
    display: none;
  }

  .mobile-contact img {
    visibility: hidden;
  }

  .has-submenu {
    position: relative;
  }

  .sub-menu {
    display: none;
    text-align: right;
    position: absolute;
    top: 100%;
    margin-top: 23px;
    left: 0;
    background: rgba(82,73,86,.8);
    min-width: 220px;
    padding: 10px 0;
    z-index: 1000;
  }

  .sub-menu.active {
   display: block;
  }

  .sub-menu a {
    display: block;
    padding: 10px 20px;
  }

.archive-photo-slider {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-areas:
      "viewport caption"
      "thumbs thumbs";
    align-items: stretch;
  }

  .archive-viewport {
    grid-area: viewport;
  }

  .archive-caption {
    grid-area: caption;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center; /* optional, usually looks better on desktop */
  }

  .archive-thumbs {
    grid-area: thumbs;

    display: flex;
    overflow-x: auto; /* 👈 allows scrolling instead of cutting off */
    gap: 10px;
    padding-bottom: 10px;
  }

  .archive-thumbs img {
    flex: 0 0 auto; /* 👈 prevents squishing */
    width: 100px;
    height: auto;
  }

  .cast-photo-slider {
    margin-top: 114px;
    background-color: #000000;
  }
}