@media only screen and (max-width: 720px) {
    #contact h1 {
        font-size: 2rem;
        line-height: 2rem;
    }
}
@media only screen and (max-width: 1023px) {
    /* Text */
    h1 {
        font-size: 3rem;
        line-height: 3rem;
        /* font-size: 13vw; */
        /* line-height: 13vw; */
        /* line-height: 8rem; */
    }
    h2 {
        font-size: 2rem;
        line-height: 2.5rem;
        margin-bottom: 1.5rem;
    }

    /* Menu */
    .hamburger {
        padding: 15px 15px;
        padding-right : 0;
        display: inline-block;
        cursor: pointer;
        transition-property: opacity, filter;
        transition-duration: 0.15s;
        transition-timing-function: linear;
        font: inherit;
        color: inherit;
        text-transform: none;
        background-color: transparent;
        border: 0;
        margin: 0;
        overflow: visible; 
    }
    .hamburger:hover { opacity: 0.7; }
    .hamburger.is-active:hover { opacity: 0.7; }
    .hamburger.is-active .hamburger-inner,
    .hamburger.is-active .hamburger-inner::before,
    .hamburger.is-active .hamburger-inner::after { background-color: #000; }
    .hamburger-box {
        width: 40px;
        height: 24px;
        display: inline-block;
        position: relative; 
    }
    .hamburger-inner {
        display: block;
        top: 50%;
        margin-top: -2px; 
    }
    .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
        width: 40px;
        height: 4px;
        background-color: #000;
        border-radius: 4px;
        position: absolute;
        transition-property: transform;
        transition-duration: 0.15s;
        transition-timing-function: ease; 
    }
    .hamburger-inner::before, .hamburger-inner::after {
        content: "";
        display: block; 
    }
    .hamburger-inner::before { top: -10px; }
    .hamburger-inner::after { bottom: -10px; }

    .hamburger--spring .hamburger-inner {
        top: 2px;
        transition: background-color 0s 0.13s linear; 
    }
    .hamburger--spring .hamburger-inner::before {
        top: 10px;
        transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
    }
    .hamburger--spring .hamburger-inner::after {
        top: 20px;
        transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
    }

    .hamburger--spring.is-active .hamburger-inner {
        transition-delay: 0.22s;
        background-color: transparent !important;
    }
    .hamburger--spring.is-active .hamburger-inner::before {
        top: 0;
        transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 10px, 0) rotate(45deg); 
    }
    .hamburger--spring.is-active .hamburger-inner::after {
        top: 0;
        transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
        transform: translate3d(0, 10px, 0) rotate(-45deg); 
    }
    
    header li { opacity: 0; }
    header.is-active {
        background-color: #171817;
        height: 100%;
        margin-right: 100vw;
    }
    header.is-active .menu {
        position: fixed;
        height: calc(100vh - 100px);
        top: 140px;
        width: 100%;
        background-color: #171817;
        left: 0;
    }
    header.is-active li {
        font-size: 2rem;
        margin-bottom: 2rem;
        animation: showMenu .15s ease-in-out;
        animation-fill-mode: both;
        opacity: 1;
        margin-right: 20px;
    }
    header.is-active li:nth-child(1) { animation-delay: .1s; }
    header.is-active li:nth-child(2) { animation-delay: .20s; }
    header.is-active li:nth-child(3) { animation-delay: .3s; }
    header.is-active li:nth-child(4) { animation-delay: .4s; }
    header.is-active li:nth-child(5) { animation-delay: .5s; }

    @keyframes showMenu {
        0% { opacity: 0; }
        100% { opacity: 1; margin-right: 0; }
    }

    /* Contact */
    #contact iframe {
        width: 100%;
        height: 375px;
    }

    /* Footer */
    footer h2 {
        font-size: 36px;
        margin-bottom: 0px;
        line-height: 0;
        margin-bottom: 0px;
    }
}

/* Tablet */
@media (orientation: portrait) and (max-width: 1023px) {
    h1 {
        font-size: 3.2rem;
        line-height: 3.2rem;
    }
    h2 {
        font-size: 2.2rem;
        line-height: 2.7rem;
    }
      
    :not(header) .container {
        max-width: 700px;
        width: 100%;
        margin: 0 auto;
    }
    header .container, footer .container {
        max-width: 100%;
    }
}
