/* ################# */
/*      DESKTOP      */
/* ################# */

header h1 {
    font-size: 2.8em;
}

#menu {
    float: right;
}

header #menu,
header .menu-btn:checked~#menu {
    overflow: visible;
    clear: none;
    display: inline-block;
    margin: 0 1.2em;
    width: auto;
    height: auto;
    max-height: none;
    /* ensure visible on desktop */
    animation: none;
    /* prevent fadeOut hiding */
}

header #menu li {
    padding: 1em 1.2em;
    display: inline-block;
    margin: 0.3em 0;
}

header .menu-icon {
    display: none;
}

main h2.titolo-pagina{
    font-size: 2.5em;
    margin-top: 0.4em;
    margin-bottom: 1em;
}

.landing img {
    width: 60%;
    border-radius: 1em;
    display: block;
}

.reserve img{
    width: 25%;
    border-radius: 1em;
    display: block;
}

.reserve-content{
    width: 50%;
}
.reserve-content p{
    font-size: 1.7em;
}

.presentation{
    max-width: 70%;
}
.story-timeline {
    max-width: 70%;
}


/* Desktop: auto-fit per 2-4 card per riga */
.lista-prodotti {
    gap: 2em;
}

.filtro-container {
    padding: 1em 6em;
}
/* filtro in esplora */
.filtro-container button {
    width: auto;
}


/* ######## PRODOTTI DESKTOP ######### */

main article.product {
    flex-direction: row;
    align-items: center;
    width: 90%;
    margin: 0 auto;
}

.product_img {
    width: 45%; 
    border-radius: 5%;
    
}

.product_img img {
    max-width: 100%; 
    height: auto;
    display: block;
}

.product_text {
    width: 45%;
    margin: 0;
}

.product_text p {
    text-align: center; }


/* TABELLA VISUALIZZAZIONE PRENOTAZIONI */
.generic-table {
    display: table; 
    border-collapse: collapse;
    width: 75%;
}

.generic-table thead {
    display: table-header-group;
}

.generic-table tr {
    display: table-row;
}

.generic-table th, 
.generic-table td, 
.generic-table th[scope="row"]{
    display: table-cell; 
    text-align: left;    
    padding: 12px;
    border: 1px solid var(--linkcolor);
}

.generic-table td:before, .generic-table th[scope="row"]:before {
    display: none;
}

.generic-table th {
    display: table-cell;
    background-color: rgba(0,0,0,0.05);
    font-weight: bold;
}

/* --- PULIZIA BORDI ESTERNI --- */
.generic-table tr:first-child th,
.generic-table tr:first-child td { border-top: none; }

.generic-table tr:last-child th[scope="row"],
.generic-table tr:last-child td {
    border-bottom: none;
}

.generic-table td:first-child, 
.generic-table th:first-child { border-left: none; }

.generic-table td:last-child, 
.generic-table th:last-child { border-right: none; }

@media screen and (min-width: 1200px) {
    /* TABELLA VISUALIZZAZIONE ADMIN PRODOTTI */
    .table-admin-prodotti {
        display: table; 
        border-collapse: collapse;
        width: 75%;
    }

    .table-admin-prodotti thead {
        display: table-header-group;
    }

    .table-admin-prodotti tr {
        display: table-row;
    }

    .table-admin-prodotti th, 
    .table-admin-prodotti td, 
    .table-admin-prodotti th[scope="row"]{
        display: table-cell; 
        text-align: left;    
        padding: 12px;
        border: 1px solid var(--linkcolor);
    }

    .table-admin-prodotti td:before, .table-admin-prodotti th[scope="row"]:before{
        display: none;
    }

    .table-admin-prodotti th {
        display: table-cell;
        background-color: rgba(0,0,0,0.05);
        font-weight: bold;
    }

    /* --- PULIZIA BORDI ESTERNI --- */
    .table-admin-prodotti tr:first-child th,
    .table-admin-prodotti tr:first-child td { border-top: none; }

    .table-admin-prodotti tr:last-child td,
    .table-admin-prodotti tr:last-child th[scope="row"] { border-bottom: none; }

    .table-admin-prodotti td:first-child, 
    .table-admin-prodotti th:first-child { border-left: none; }

    .table-admin-prodotti td:last-child, 
    .table-admin-prodotti th:last-child { border-right: none; }
}

/* ######## ERRORI DESKTOP ######### */

main article.error {
    flex-direction: row;
}

.error_testo {
    margin: auto;
    width: 50%;
}

.error_img {
    width: 50%;
}
