@media (min-width: 520px) {
    :root {
        --container--width: 480px;
    }




    .site-header li:first-child {
        left: calc((var(--viewport--width) - var(--container--width)) / 2);
    }

    .site-header li:nth-child(2) {
        left: calc(((var(--viewport--width) - var(--container--width)) / 2) + 97px + 16px);
    }




    .home-page .achievements .media {
        height: 64px;
        width: 64px;
    }

    .home-page .achievements h3 {
        margin-bottom: 28px;
        padding-left: 100px;
    }
}




@media (min-width: 580px) {
    :root {
        --container--width: calc(var(--viewport--width) - 100px);
    }




    .site-container.inactive {
        margin: 0 auto;
        width: var(--container--width);
    }




    .home-page .articles .container {
        display: grid;
        grid-gap: 32px 20px;
        grid-template-columns: repeat(2, 1fr);
    }

    .home-page .articles .title {
        padding-left: 0;
    }

    .home-page .articles article {
        width: auto;
    }

    .home-page .articles article:first-child {
        padding-left: 0;
    }

    .home-page .articles article:not(:last-child) {
        margin-right: 0;
    }

    .home-page .articles article:last-child {
        padding-right: 0;
    }

    .home-page .articles .button {
        margin: auto;
        width: auto;
    }
}




@media (min-width: 780px) {
    :root {
        --container--width: 680px;
    }




    .site-articles {
        display: grid;
        grid-gap: 32px 20px;
        grid-template-columns: repeat(2, 1fr);
    }

    .site-articles article:not(:last-child) {
        margin-bottom: 0;
    }




    .home-page .quote blockquote {
        padding-right: 190px;
    }

    .home-page .quote .media {
        right: calc((var(--viewport--width) - var(--container--width)) / 2);
    }

    .home-page .quote .site-image {
        width: 100%;
    }




    .blog-page .archive-pagination {
        grid-column-start: span 2;
    }
}




@media (min-width: 1101px) {
    :root {
        --container--width: calc(var(--viewport--width) - 100px);
    }




    .site-container.active,
    .site-container.inactive {
        max-width: 1200px;
    }


    .site-header li:first-child,
    .site-header li:nth-child(2) {
        bottom: auto;
        left: auto;
        position: static;
        z-index: auto;
    }

    .site-header li:first-child a,
    .site-header li:nth-child(2) button {
        background-color: var(--color--dark-blue-transparent-10);
        box-shadow: none;
        font-family: inherit;
        padding: 8px 16px 5px;
    }


    .site-articles {
        grid-gap: 48px 40px;
        grid-template-columns: repeat(4, 1fr);
    }


    .site-media.aspect-ratio-3 {
        padding-top: 50%;
    }




    .wp-content {
        margin: 0 auto;
        width: 680px;
    }




    .home-page {
        margin-bottom: 96px;
    }


    .home-page .intro {
        height: calc(100vh - 72px - 98px);
    }


    .home-page .mission-and-values .site-container,
    .home-page .sport .site-container {
        display: grid;
        grid-column-gap: 40px;
        grid-template-columns: repeat(2, 1fr);
    }

    .home-page .mission-and-values span:first-child {
        display: block;
        font-weight: 700;
        margin-bottom: 20px;
    }

    .home-page .mission-and-values span:last-child {
        display: block;
    }


    .home-page .sport.rugby {
        background-color: var(--color--dark-blue-transparent-10);
        padding: 48px 0;
    }

    .home-page .sport p {
        border-bottom: none;
        padding-bottom: 0;
    }

    .home-page .sport ul:first-of-type:not(:last-child) {
        border-bottom: 1px solid var(--color--dark-blue-transparent-10);
        padding-bottom: 20px;
    }


    .home-page .achievements {
        background-color: var(--color--dark-blue-transparent-10);
        padding: 48px 0 0;
    }

    .home-page .achievements h2 {
        left: calc((var(--viewport--width) - var(--container--width)) / 2);
        position: absolute;
    }

    .home-page .achievements .container:last-child {
        padding-bottom: 81px;
    }

    .home-page .achievements .container:not(:last-child) {
        margin-bottom: 129px;
    }

    .home-page .achievements article {
        border-left: none;
        display: grid;
        grid-column-gap: 40px;
        grid-template-columns: repeat(2, 1fr);
        overflow: visible;
        padding-top: 0;
        position: relative;
    }

    .home-page .achievements article:nth-child(odd):not(:first-child) .media::before,
    .home-page .achievements article:nth-child(odd) .media::after {
        background-color: var(--color--dark-blue-transparent-10);
        content: "";
        height: 41px;
        position: absolute;
        right: 110px;
        width: 1px;
    }

    .home-page .achievements article:nth-child(odd):not(:first-child) .media::before {
        top: -41px;
    }

    .home-page .achievements article:nth-child(odd) .media::after {
        bottom: -41px;
    }

    .home-page .achievements article:nth-child(even) .media::before,
    .home-page .achievements article:nth-child(even) .media::after {
        background-color: var(--color--dark-blue-transparent-10);
        content: "";
        height: 41px;
        left: 110px;
        position: absolute;
        width: 1px;
    }

    .home-page .achievements article:nth-child(even) .media::before {
        top: -41px;
    }

    .home-page .achievements article:nth-child(even) .media::after {
        bottom: -41px;
    }

    .home-page .achievements article:nth-child(odd) .media {
        padding-left: calc(100% - 220px);
    }

    .home-page .achievements article:nth-child(even) .media {
        grid-row: 1;
        grid-column: 2;
        padding-right: calc(100% - 220px);
    }

    .home-page .achievements article:nth-child(even) .content {
        text-align: right;
    }

    .home-page .achievements article:not(:last-child) {
        margin-bottom: 81px;
        padding-bottom: 0;
    }

    .home-page .achievements article:last-child::before {
        background-color: var(--color--dark-blue-transparent-10);
        bottom: -81px;
        content: "";
        display: block;
        height: 41px;
        left: calc(50% + 130px);
        position: absolute;
        right: 0;
        width: 1px;
    }

    .home-page .achievements article::after {
        background-color: var(--color--dark-blue-transparent-10);
        bottom: -41px;
        content: "";
        display: block;
        height: 1px;
        left: 0;
        margin: 0 auto;
        position: absolute;
        right: 0;
        width: 260px;
    }

    .home-page .achievements .media {
        height: auto;
        left: auto;
        position: relative;
        top: auto;
        width: auto;
    }

    .home-page .achievements article span {
        margin-bottom: 20px;
        position: static;
    }

    .home-page .achievements h3 {
        margin-bottom: 20px;
        min-height: 0;
        padding-left: 0;
    }

    .home-page .achievements p {
        padding-left: 0;
    }

    .home-page .achievements button {
        bottom: 48px;
        margin: 0 auto;
        position: relative;
        width: 480px;
    }




    .home-page .articles {
        position: relative;
    }

    .home-page .articles .container {
        grid-gap: 0 40px;
        grid-template-columns: repeat(4, 1fr);
    }

    .home-page .articles .button {
        position: absolute;
        right: calc((var(--viewport--width) - var(--container--width)) / 2);
        top: 4px;
        width: calc((var(--container--width) - 40px) / 2);
    }




    .blog-page {
        margin-bottom: 96px;
        padding-top: 48px;
    }


    .blog-page .archive-pagination {
        grid-column-start: span 4;
        padding-top: 0;
    }




    .article-page {
        margin-bottom: 96px;
        padding-top: 48px;
    }

    .article-page .comments {
        box-sizing: border-box;
        margin-left: auto;
        margin-right: auto;
        padding-left: 40px;
        padding-right: 40px;
        width: 680px;
    }




    .site-footer .container {
        display: grid;
        grid-column-gap: 40px;
        grid-template-columns: repeat(2, 1fr);
    }

    .site-footer .about {
        margin: -96px 0 0;
        padding-bottom: 48px;
        padding-left: 40px;
        padding-right: 40px;
        width: auto;
    }
}




@media (min-width: 1301px) {
    .home-page .quote .media {
        right: calc((var(--viewport--width) - 1200px) / 2);
    }


    .home-page .achievements h2 {
        left: calc((var(--viewport--width) - 1200px) / 2);
    }


    .home-page .articles .button {
        position: absolute;
        right: calc((var(--viewport--width) - 1200px) / 2);
        width: calc((1200px - 40px) / 2);
    }
}
