@media (min-width: 1201px) {
  section.navigation.header-hidden {
    transform: translateY(-100%);
    pointer-events: none;
  }

  section.navigation.header-visible {
    transform: translateY(0);
    pointer-events: auto;
  }
}

/* Responsive nav kicks in */
@media screen and (max-width: 1200px) {

    section.navigation {
        background-color: #ffffff00 !important;
    }
    
    .navigation.header-visible {
        display: block !important;
    }
    
    .nav-toggle {
        display: block;
    }
    
    .header-nav {
        position: fixed;
        inset: 0;
        background-color: transparent;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: background-color 0.3s ease, opacity 0.3s ease, visibility 0s 0.3s;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 11000;
    }
    
    .header-nav.open {
        height: 500vh;
        background-color: hsla(0, 0%, 0%, 1);
        opacity: 0.95;
        visibility: visible;
        pointer-events: auto;
        transition-delay: 0s;
    }
    
    /* USE PADDING TO MOVE "TABLE OF CONTENTS" UP OR DOWN */
    .primary-nav {
        display: flex;
        flex-direction: column;
        gap: 15px;
        margin: 0;
        padding: 15vh 0;
        list-style: none;
        text-align: center;
    }
    
    .primary-nav li a {
        color: black;
        font-size: 26px;
        font-weight: 600;
        text-transform: uppercase;
        text-decoration: none;
        padding: 10px 0;
        transition: color 0.3s ease;
    }
    
    .primary-nav li a:hover,
    .primary-nav li a:focus {
        color: #333300;
    }

    .center-logo .logo img {
        width: 100px;
        height: auto;    /* keeps the aspect ratio */
    }

    .swiper-button-prev, .swiper-button-next {
        visibility: hidden;
    }


    .features {
        padding-bottom: 0;
    }

    .features .device-showcase,
    .features-extra .macbook-wrap {
        display: none;
    }

    .features .responsive-feature-img,
    .features-extra .responsive-feature-img {
        display: block;
        width: 85%;
        margin: 15% auto 0;
    }

    .features .responsive-feature-img img,
    .features-extra .responsive-feature-img img {
        width: 100%;
    }

    .rsvp {
        padding-top: 40px;
    }

    footer {
        display: block;
    }

    footer .footer-links {
        margin: 60px 0 60px 0;
    }
}

@media screen and (max-width: 640px) {
    .hero .hero-content {
        padding-top: 100%;
    }
    
    footer ul.footer-group {
        border-top: none;
    }

    footer ul.footer-group li a {
        font-size: 13px;
        text-transform: uppercase;
        padding: 20px 0;
        display: block;
        border-bottom: dashed 1px #4E566C;
    }

    footer ul.footer-group li {
        display: block;
    }

    footer .footer-links {
        margin: 50px 0 50px 0;
    }

}

@media screen and (max-width: 480px) {
    .hero .hero-content {
        padding-top: 110%;
    }
    
    .hero .hero-content img {
        width: 65%;
    }

    .hero .btn {
        display: block;
        width: 80%;
        margin: 0 auto;
    }

    .hero .btn:first-of-type {
        margin-bottom: 20px;
    }

    .hero h1 {
        font-size: 50px;
    }

    .btn-margin-right {
        margin-right: 0px;
    }

    .features .device-showcase-left {
        position: absolute;
        bottom: -392px;
        left: 41%;
        right: auto;
        transform: translateX(-50%);
    }

    .features {
        padding-bottom: 0;
    }

    .down-arrow {
        display: none;
    }

}

@media screen and (max-width: 320px) {
    .hero .hero-content {
        padding-top: 130%;
    }

    .rsvp {
        padding-top: 20px;
    }
}