@media only screen and (max-width: 600px) {
  :root {
    --max-width: 100%;
    --padding: 30px;
    /* Proportional heading sizes at 600px - reduced by ~33% from base */
    --font-size-h1: calc(8px * 8);
    --font-size-h2: calc(8px * 5.5);
    --font-size-h3: calc(8px * 3);
    --font-size-h4: calc(8px * 2.25);
    --font-size-h5: calc(8px * 1.75);
    --font-size-h6: calc(8px * 1.45);
  }

  .content {
    padding-left: 0;
    padding-right: 0;
  }

  .two-columns {
    .cards-section {
      grid-template-columns: 1fr;

      .card {
        padding: calc(var(--padding) / 2) var(--padding);
      }
    }
  }
  /* Featured card responsive - mobile: style like news-card */
  .featured-card.two-columns {
    display: flex;
    flex-direction: column;
  }

  .featured-card.two-columns .wrapper {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    gap: 0;
    padding: calc(var(--padding) / 2);
  }

  .featured-card.two-columns:hover .wrapper {
    background: none;
    transform: none;
  }

  .featured-card.two-columns .left-column {
    order: 1;
    margin: calc(var(--padding) / -2);
    margin-bottom: 0;
    width: calc(100% + var(--padding));
  }

  .featured-card.two-columns .left-column img {
    aspect-ratio: 16 / 9;
    width: 100%;
  }

  .featured-card.two-columns .right-column {
    order: 2;
    border-top: none !important;
  }

  .featured-card.two-columns .right-column .content {
    padding: 0;
    padding-top: calc(var(--padding) / 2);
  }

  .below-top {
    .content {
      padding: 0;
    }
  }

  .top,
  .home-hero {

    & .site-branding{
      margin-top: -4em;
      width: 110%;
      margin-left: -5%;
      max-width: 100vw;
      z-index: 1;
    }

    /* Stack hero content vertically on mobile */
    .content {
      flex-direction: column;
      gap: var(--padding);
      padding: 0 var(--padding);
    }

    .hero-left {
      width: 100%;
      text-align: center;
      align-items: center;
    }

    .hero-left h1 {
      font-size: calc(8px * 10);
    }

    .hero-left h3.subtitle {
      font-size: 1.4rem;
      text-align: center;
    }

    .hero-left h5.intro {
      font-size: 1rem;
      text-align: center;
      max-width: 100%;
    }

    .hero-right {
      width: 100%;
      justify-content: center;
    }

    .hero-image-wrapper {
      width: 100%;
      max-width: 400px;
      height: auto;
      aspect-ratio: 1 / 1;
    }

    .hero-image-wrapper.has-frame {
      width: 100%;
      max-width: 400px;
      height: auto;
      aspect-ratio: 1 / 1;
      padding: 40px;
    }
  }

  .filled-section {
    .content {
      padding-left: var(--padding);
      padding-right: var(--padding);
    }
  }

  .map {
    & img {
      padding: 0;
      width: calc(100% + var(--padding) * 2);
      max-width: unset;
      margin-left: calc(var(--padding) * -1);
    }

    & h1 {
      font-size: calc(8px * 9) !important;
      padding-left: 0;
      padding-right: 0;
      margin-top: 0;
    }
  }

  .cards-section {
    grid-template-columns: minmax(0, 1fr);
  }

  .cards-section:has(.news-card) {
    grid-template-columns: minmax(0, 1fr);
  }

  .site-header {
    padding: 0 calc(var(--padding)/2);
  }

  /* Menu rules now in responsive-840.css */
  .menu-bar .sub-menu li {
    margin: 0 !important;
  }


/* Responsive pagination */
  .pagination {
    margin: 40px 0;
    padding: 20px 0;
  }

  .pagination .page-numbers {
    min-width: 40px;
    height: 40px;
    line-height: 40px;
    padding: 0 12px;
    font-size: var(--font-size-small);
  }

/* Responsive newsletter */
    .newsletter-content {
    grid-template-columns: 1fr;
    gap: 30px;
    text-align: center;
  }
  
  .newsletter-text {
    text-align: center;
  }
  
  .newsletter-button {
    text-align: center;
  }
  
  .pen-image {
    max-width: 250px;
    margin: 0 auto;
  }

  .puzzle-instructions-text{
    text-align: center;
  }

/* Responsive filters */

  .filters-grid-container {
    grid-template-columns: 1fr !important;
    gap: 40px;
    align-items: start;
  }
.facetwp-facet{
  margin-bottom: 0 !important;
}

  .filter-column .facetwp-checkbox,
  .filter-section .facetwp-checkbox {
    padding: 10px 40px 10px 58px !important;
    font-size: var(--font-size-small);
    min-height: 50px;
  }

  .filter-column .facetwp-checkbox::before,
  .filter-section .facetwp-checkbox::before {
    left: 11%;
    transform: translate(-50%, -50%);
    font-size: 24px;
  }

  .filter-column .tape-title .tape-text,
  .filter-section .tape-title .tape-text {
    padding: 12px 30px;
    font-size: var(--font-size-h3);
  }

  .filters-wrapper.corkboard-background {
    padding: 40px 0;
  }



  /* Flexible frame */
  .flexible-image-wrapper.has-frame {
    width: 100%;
    max-width: 400px;
    height: auto;
    aspect-ratio: 1 / 1;
    padding: 40px;
  }

  /* Content sections carousel only - not favorites */
  .carousel-section:not(.favorites-carousel) .carousel-image-wrapper {
    width: 90vw;
    max-width: 400px;
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .carousel-section:not(.favorites-carousel) .carousel-image-wrapper.has-frame {
    width: 90vw;
    max-width: 400px;
    height: auto;
    aspect-ratio: 1 / 1;
    padding: 40px;
  }

  .carousel-description {
    font-size: 1rem;
    margin-top: 1.5rem;
  }

/* Polaroid Grid */

  .corkboard-background {
    padding: 40px 0;
  }

  .tape-title {
    /* margin-bottom: 40px; */
  }

  .tape-title .tape-text {
    font-size: var(--font-size-h3);
    padding: 10px 20px;
  }

  .polaroid-description {
    font-size: calc(8px * 2);
  }

  .polaroid-card {
    min-width: 280px;
    max-width: 400px;
    margin: 0 auto;
  }

  .polaroid-frame {
    min-height: 350px;
  }

  .polaroid-image {
    aspect-ratio: 1 / 1;
  }

  /* Button Group  */
    .button-group {
    flex-direction: column;
    gap: 40px;
  }
  
  .button-group .button {
    width: 100%;
    max-width: 300px;
  }


  /* Favorite Books - hide bookshelf when wrapping to 2 columns */
  .favorite-books.bookshelf-background {
    background-image: none;
  }

  .favorite-books .books-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    transform: translateY(0);
  }

  .favorite-books {
    /* padding: 60px 0; */
  }

  /* Vinyl carousel responsive sizing */
  .favorites-carousel .carousel-image-wrapper {
    width: 350px;
    height: 350px;
  }

  .favorites-carousel .vinyl-info {
    max-width: 350px;
  }

  .quote-of-month {
    margin: 60px auto;
  }

  .quote-of-month .index-card-wrapper {
    min-height: unset;
  }

  .quote-of-month .quote-text-overlay {
    padding: 4% 10% 6% 10%;
    min-height: unset;
  }

  .quote-of-month .quote-header {
    /* font-size: 1.1rem; */
  }

  .quote-of-month .quote-content {
    font-size: var(--font-size-h4);
    line-height: 2;
  }

  .quote-of-month .quote-attribution {
    font-size: 0.9rem;
    margin-top: 0%;
  }


  .carousel-swiper .swiper-slide {
    width: 90vw !important;
  }

  .carousel-swiper .swiper-button-next,
  .carousel-swiper .swiper-button-prev {
    width: 40px;
    height: 40px;
  }

  .carousel-swiper .swiper-button-next:after,
  .carousel-swiper .swiper-button-prev:after {
    font-size: 16px;
  }

  .favorites-carousel .album-cover{
    width: 65%;
  }


  .newsletter-item {
    grid-template-columns: 1fr;
    gap: var(--padding);
  }

  .newsletter-item-image {
    max-width: 100%;
    order: -1; /* Move image above content on mobile */
  }

  .newsletter-category-heading {
    font-size: var(--font-size-h4);
  }

  .single-header {
    padding: calc(var(--padding) * 3) var(--padding) var(--padding) var(--padding);
  }

  .single-header .single-title {
    font-size: calc(8px * 8);
  }

  .single-header .single-subtitle {
    font-size: var(--font-size-h4);
  }

  .two-column-grid {
    grid-template-columns: 1fr;
    gap: calc(var(--padding) * 1.5);
  }

  .column-left {
    padding-right: 0;
  }

  .column-right {
    position: relative;
    top: 0;
    order: -1; /* Move image/video above content on mobile */
  }

  .sidebar-image,
  .sidebar-video {
    max-width: 100%;
    margin: 0 auto;
  }

  .related-heading {
    font-size: var(--font-size-h3);
  }

    .forminator-question .forminator-legend {
    font-size: var(--font-size-h5);
  }

  .forminator-question .forminator-answer label {
    padding: 0.75rem 1rem;
    font-size: 0.95rem;
  }

  .forminator-button {
    width: 100%;
    padding: 0.875rem 1.5rem !important;
  }

  .timeline-item {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .timeline-item-left .timeline-postit,
  .timeline-item-right .timeline-postit {
    grid-column: 1;
    justify-self: center;
    max-width: 100%;
  }

  .timeline-item-left .timeline-arrow,
  .timeline-item-right .timeline-arrow {
    display: none;
  }


  /* .timeline-postit {
    min-height: 250px;
    padding: 2rem 1.5rem;
  } */

  .top,
  .home-hero {
    padding: 0px 0px 0px 0px;
  }

.main-navigation li:hover > ul.sub-menu, ul.left-menu li:hover > ul.sub-menu, ul.right-menu li:hover > ul.sub-menu{
  z-index: 1;
}

section, .quote-of-month{
    margin-top: 40px !important;
  }


      .mail {
        /* padding: 0; */
        margin: 0;
        max-width: none;
    }

    .mail .hs-form .form-columns-2 {
        flex-direction: column;
        gap: 0;
    }

    .mail-title {
    }


    .envelope-arrow{
      display:none;
    }

    .contact-envelope-wrapper{
      gap: var(--spacing-sm);
    }

    .envelope-label-container {
    transform: none;
  }
.archive-count-wrapper {
       /* margin: 0 auto 4rem auto; */
}

.timeline-title{
  /* margin-top: 1.4rem; */
}

.search-form .search-submit span {
  display: none;
}

.search-form .search-submit {
  padding: 1rem !important;
}
}