/* generale */

@media (max-width: 991px) {
    section {
        padding: 4rem 0;
    }
}

@media (min-width: 992px) {
    .mobile,
    img.mobile,
    .mobile-table {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .desktop,
    img.desktop {
        display: none !important;
    }
}

@media (max-width: 1199px) {
    body:after {
        display: none;
    }
}

/* Table */

@media (max-width: 992px) {
    table tr:nth-child(even) {
        background-color: #f5f5f5; /* Grigio chiaro */
    }

    table tr:nth-child(odd) {
        background-color: #ffffff; /* Bianco */
    }
}

/* Modal */

@media (max-width: 992px) {
    .modal.addtocart .modal-dialog {
        margin: auto;
    }

    .modal.addtocart .modal-content {
        padding: 2rem;
        gap: 3rem;
        flex-direction: column;
    }

    .modal.addtocart .modal-content img {
        height: 9rem;
    }

    .modal.addtocart  .modal-footer {
        display: block;
    }

    .modal.addtocart  .modal-footer a {
        display: block;
    }

    .modal.addtocart  .modal-footer a:first-child {
        margin-bottom: 1.5rem;
    }

    .modal.reserved .modal-content {
        padding: 1.5rem;
    }

    .modal.reserved .modal-header h2 {
        font-size: 2rem;
    }
    
    .modal.reserved.invite .modal-content {
        width: 80%;
    }

    .iti {
        margin-bottom: 2rem !important;
    }
}

/* font */

@media (max-width: 991px) {
    h2 {
        font-size: 3.5rem;
        margin-bottom: 1.8rem;
    }

    h3 {
        font-size: 3rem;
        margin-bottom: 1.5rem;
    }

    h4 {
        font-size: 2.5rem;
        margin-bottom: 1rem;
    }

    p {
        font-size: 1.5rem;
        line-height: 2rem;
        margin-bottom: 3rem;
    }

    li {
        font-size: 1.5rem;
    }
}

/* Navbar */
@media (max-width: 1440px) {
    header .menu-cantieri .responsive-cantieri.active {
        top: 200px;
    }
}

@media (max-width: 1199px) {
    header .navbar,
    header .carousel-bar,
    header .desktop-navbar {
        display: none !important;
    }

    header .close-shop.mobile {
        display: block !important;
    }
    
    header .menu-shop .responsive-shop {
        position: fixed;
        top: 0;
        width: 100%;
        padding: 20px 20px 40px 20px;
        z-index: 99;
    }

    header .menu-shop .category .btn::after {
        display: none;
    }

    header .menu-shop .responsive-cantieri {
        position: fixed;
        top: 0;
        left: -2000px;
        width: 100%;
        background-color: var(--LightGrey);
        padding: 5.5rem 0;
        z-index: 9999;
        height: 100%;
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        transform: translateX(100%);
        transition: all .3s ease-in;
    }

    header .menu-shop .responsive-cantieri.active {
        left: 0;
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        -ms-transform: translateX(0);
        -o-transform: translateX(0);
        transform: translateX(0);
        transition: all .3s ease-in-out;
    }
    
    header .menu-shop .btn.link {
        text-align: left;
    }
}

@media (min-width: 1200px) {
    header .nav-mobile,
    header .mobile-navbar,
    header .close-shop.mobile {
        display: none !important;
    }
    
}


/* Footer */

@media (max-width: 991px) {
    footer p {
        margin-bottom: 2rem;
    }
}

/* Widget */

@media (max-width: 991px) {
    .reserved-area-widget,
    .qr-widget {
        display: none !important;
    }
}

/* Card */

@media (max-width: 991px) {
    .owner {
        margin: 0;
    }

    .owner .shadow {
        padding: 1.5rem;
    }

    .owner .image-container .text .title {
        font-size: 2rem;
    }

    .team-member {
        margin: 0;
    }

    .team-member .image-container .overlay {
        padding: 1.5rem;
    }

    .team-member .image-container .overlay .text .title {
        font-size: 2rem;
    }

    .card.buttonBottom {
        border: 1px solid rgba(0, 0, 0, 0.15);
    }

    .card.buttonBottom.mini .title {
        height: 62px;
    }
    
    .card.blog .card-body {
        padding: 1.5rem;
    }

    .card.blog .card-body h4 {
        font-size: 2rem;
        margin-bottom: 1rem;
    }

    .card_shadow.gift {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .card_shadow.gift img {
        width: 70px;
    }
}

/* Filter */

@media (max-width: 991px) {
    .mini-filter {
        gap: 1rem;
        margin-bottom: 5rem;
    }

    .mini-filter button {
        font-size: 1.5rem;
        padding: 0.6rem 1.6rem;
    }

    .mini-filter a {
        font-size: 1.5rem;
        padding: 0.6rem 1.6rem;
    }
}

/* Carousel */

@media (max-width: 991px) {
    .carousel-logo {
        margin-top: 2rem;
    }
}

/* Special */

@media (max-width: 991px) {
    .row-people .col-6 {
        padding: 0;
    }
}

/* section carousel-home */

@media (max-width: 991px) {
    .carousel-home .slide::before {
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 100%;
        clip-path: unset;
    }
}

@media (max-width: 991px) {
    /* dett-prod */
    .dett-prod .title {
        font-size: 2rem;
    }

    .dett-prod .bold {
        font-size: 1.5rem;
    }

    /* section-1 */
    .section-1 .back {
        background-image: unset;
        padding: 0;
    }

    .section-1 .back img {
        display: none;
    }

    .section-1 .back .text {
        color: var(--Black);
        margin-bottom: 2.5rem;
    }

    /* section-2 */
    .section-2 .block {
        padding: 1.5rem 2rem;
    }

    /* section-3 */
    .section-3 {
        margin: 4rem 0;
        background-image: url('../image/interactive_section.jpg');
    }

    .section-3 h2,
    .section-3 p {
        color: var(--White);
    }

    .section-3 .grid-item {
        aspect-ratio: 213/250;
        width: auto;
        padding: 1.5rem;
        background-color: rgba(0, 0, 0, 0.6);
    }

    .section-3 .grid-item h2 {
        font-size: 3rem;
    }

    .section-3 .grid-item h3 {
        font-size: 2rem;
    }

    .section-3 .grid-item h3.grid-title {
        text-align: left;
    }

    .section-3 .grid-item .btn {
        width: fit-content;
    }

    /* section-8 */
    .section-8 .number {
        margin-bottom: 3rem;
    }

    .section-8 h2.red {
        margin-bottom: 1rem;
        font-size: 4rem;
    }

    /* section-9 */
    .section-9 {
        margin: 4rem 0;
    }

    /* section-11 */
    .section-11 h2 {
        font-size: 3rem;
    }

    /* section-10 */
    .section-10 .back {
        padding: 2rem 18rem 2rem 2rem;
    }

    .section-10 .back .text {
        font-size: 2.5rem;
    }
    
    /* section-15 */
    .section-15 .subtitle {
        font-size: 2.5rem;
        margin-bottom: 1.5rem;
        margin-top: 3.5rem;
    }

    .section-15 .btn {
        margin-top: 6rem;
    }

    .section-15 .grey .container,
    .section-15 .white .container {
        padding-top: 6rem;
        padding-bottom: 6rem;
    }

    .section-15 img {
        display: none;
    }

    /* section-16 */
    .section-16 img {
        height: 30rem;
        width: 100%;
        object-position: center;
    }
    
    /* section-22 */
    .section-22 .block {
        background-image: unset !important;
        background-color: var(--LightGrey);
        border: 0.2rem solid var(--Red);
        padding: 2rem;
    }

    /* section-23 */
    .section-23 h1 {
        font-size: 3.5rem;
        margin-bottom: 1rem;
    }
    
    .section-23 h3.h4 {
        font-size: 2.5rem;
        margin-bottom: 1rem;
    }
    
    .section-23 p {
        padding-top: 0;
    }

    /* section-24 */
    .section-24 img {
        width: 30rem;
        margin-bottom: 3rem;
    }

    .section-24 h3 {
        font-size: 2.5rem;
        line-height: normal;
    }
    
    /* section-27 */
    .section-27 h2 {
        font-size: 3.5rem;
        margin-bottom: 3rem;
    }


    /* section-31 */
    .section-31 h1 {
        font-size: 3.5rem;
        margin-bottom: 1.8rem;
    }

    .section-31.academy h1 {
        font-size: 2.5rem;
        margin-bottom: 1.8rem;
    }

    .section-31 h2 {
        font-size: 3rem;
        margin-bottom: 1.5rem;
    }

    .section-31 h3 {
        font-size: 2.5rem;
        margin-bottom: 1rem;
    }

    .section-31 h4 {
        font-size: 2.2rem;
        margin-bottom: 1rem;
    }

    .section-31 p {
        font-size: 1.5rem;
        line-height: 2rem;
        margin-bottom: 3rem;
    }

    .section-31 li {
        font-size: 1.5rem;
    }

    /* section various */
    
    .empty-cart h1 {
        font-size: 3rem;
        margin-bottom: 1.5rem;
    }

    /* section-access */
    section.access .image {
        padding: 2rem;
    }

    section.access .image .block {
        padding: 1.5rem;
    }

    /* card_shadow */
    .card_shadow h3.h4 {
        font-size: 2.5rem;
        margin-bottom: 1rem;
    }
    
}

@media (max-width: 740px) {
    /* section-3 */
    .section-3 .grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(4, 1fr);
    }
}