@media (min-width:520px)
{
    .entities .entity:not(.rack) {
        width: 380px;
    }

    footer {
        justify-content: center;
        padding: 0 12px;
        gap: 18px;
    }
    footer a {
        width: calc(90px + 2vh);
    }
    footer .footer-link {
        flex: none;
    }

    .top-right-element {
        top: 22px;
        right: 22px;
    }

    #content .home .header-image {
        width: 30vh;
        min-width: 380px;
        display: flex;
        justify-content: center;
    }

    .cachwir-modal-overlay > .menu-modal.share-modal a:not(.cancel-button) {
        padding: 0 0 0 25px;
        gap: 20px;
    }

    input[type="date"],
    input[type="time"],
    #form_perimeter_id {
        min-width: 180px;
    }
}

@media (min-width:700px)
{
    .relative-full-page,
    .fake-modal-page {
        max-width: 700px;
        width: 70vw;
        max-height: 80vh;
        overflow-y: auto;
        border-radius: 16px;
    }
    .relative-full-page.tour_details {
        display: flex;
        flex-direction: column;
    }
    .relative-full-page.tour_details .page-container {
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        overflow-y: hidden;
    }
    .tour_details .page-container .page-body {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        width: 100%;
        overflow: hidden;
    }
    .tour_details .page-container .page-body .content-container {
        overflow: auto;
        margin-bottom: 0;
        padding-bottom: 40px;
    }
    .tour_details .content-container {
        width: 620px;
    }

    .cachwir-modal-overlay > div {
        display: flex !important;
        align-items: center;
        justify-content: center;
    }

    .modal_page.relative-full-page .illustrated-radio-form {
        width: calc(100% + 34px);
    }

    .modal_page.tour_details {
        max-width: 1100px;
        width: 100%;
    }

    #content .select-mega-perimeter .start-buttons {
        max-width: 600px;
        border-radius: 16px;
        margin: 0 auto;
        overflow-y: hidden;
        z-index: 1;
        margin-bottom: 5vh;
    }
    .select-mega-perimeter .illustrated-radio-form {
        width: calc(100% + 20px);
        margin-left: -10px;
        padding-left: 10px;
    }

    .activity_details .toggle-full-hours,
    .activity_details .display-full-description {
        display: block;
        margin-left: 6px;
    }

    .cachwir-modal-overlay > .menu-modal.share-modal a:not(.cancel-button) {
        padding: 0 0 0 40px;
        gap: 25px;
    }

    .illustrated-radio-form,
    .activity_details .activities-photos,
    .home .categories-container,
    .entities-rack .rack,
    .entities-list-menu {
        scroll-snap-type: x mandatory; /* Optional, for snapping */
        scrollbar-width: thin; /* Firefox */
    }

    .ai-chatbox .ai-chatbox-content {
        width: 640px;
    }
}

@media (min-width:1120px)
{
    footer a {
        width: calc(50px + 2vh);
    }
}