:root {
    /*colori*/
    --green-color: #245758;
    --white-color: #F9F6F1;
    /*spazi*/
    --sm: 0.5rem;
    --md: 1rem;
    --lg: 2rem;
    --xl: 5rem;
    /*font size*/
    --fs-md:1.1rem;
    --fs-lg:1.5rem;
    --fs-xl:3.3rem;

    --ff-condor: "condor-condensed", serif;
    --ff-sans:sans-serif;
}

@media (max-width:1200px) {
    :root {
        --xl:3rem;
    }
}
@media (max-width:576px) {
    :root {
        --xl: 2rem;
    }
}

* {
    margin: 0;
    padding: 0;
}

html, body {
    -webkit-font-smoothing: antialiased;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
    -moz-osx-font-smoothing: grayscale;
    -webkit-overflow-scrolling: touch;
    scroll-behavior:smooth;
}

* {
    outline: none !important;
}

a {
    text-decoration: none;
    color: inherit;
    transition: color 0.2s;
}

    a:hover {
        color: inherit;
        text-decoration: none;
    }

    a:not([href]):not([tabindex]) {
        color: inherit;
        text-decoration: none;
    }

li {
    list-style:none;
}

body{
    padding:0;
    margin:0;
    background-color: var(--green-color) !important;
    font-family: var(--ff-condor);
    font-style: normal !important;
    font-size: 15px !important;
    color:var(--white-color) !important;
}

nav ul li {
    font-family: var(--ff-sans) !important;
}

p {
    font-size: var(--fs-md);
    font-family: var(--ff-sans);
}

h1 {
    padding-bottom: var(--md);
    font-size: var(--fs-xl);
    font-weight:500;
}

h2 {
    font-size:var(--fs-lg);
    font-weight:300;
}

.row:not(.top-bar, .footer){
    margin-bottom:var(--xl);
}

.row>* {
    padding-right:0;
    padding-left:0;
}

.row{
    width:100%;
    margin:auto;
}

.col {
    padding-inline:0;
}

header {
    position: fixed;
    width: 100%;
    height: 90px;
    top: 0;
    z-index: 8888;
}

.navbar {
    padding: 0 var(--xl);
    width: 100%;
    height: 100%;
}

.navigazione {
    padding-inline:0;
    margin: 5px 0;
}

.hero {
    height:100dvh;
    align-content:flex-end;
}

.container-main {
    position: relative;
    overflow: hidden;
    padding: 0;
}

.container {
    padding-inline: var(--xl);
    max-width:100%;
}

.top-bar {
    padding-top: var(--md);
    padding-bottom: var(--md);
    margin: auto;
    position: fixed;
}

.indirizzo {
    white-space: nowrap;
    position: absolute;
    height: 60px;
    display: flex;
    align-items: center;
    top: var(--md);
    left: var(--xl);

    font-family:var(--ff-sans);
}

.indirizzo ul {
    margin-block:auto;
}

.vocimenu .nav-link {
    color: var(--white-color);
    border: 1px solid var(--white-color);
    background-color:var(--green-color);
    border-radius: 100vw;
    padding: .5rem 1.5rem !important;
    text-align: center; /* testo centrato orizzontalmente nel pulsante */
}

    .vocimenu .nav-link.active {
        background-color: var(--white-color); /* colore di sfondo quando è attiva */
        color: var(--green-color);
        border: 1px solid var(--green-color);
    }


/* Bottoni delle voci di menu al passaggio del mouse */
    .vocimenu .nav-link:hover {
        background-color: var(--white-color);
        color: var(--green-color);
        border-color: var(--green-color);
    }

.navbar-toggler {
    border: 1px solid var(--white-color);
    border-radius: var(--lg);
    padding: var(--sm);
    background-color: var(--green-color);
}
    .navbar-toggler:focus {
        box-shadow:none;
    }

    .navbar-toggler-icon {
        display: inline-block;
        width: 1.5em;
        height: 1.5em;
        vertical-align: middle;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28249, 246, 241, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: center;
        background-size: 100%;
    }

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba%28249, 246, 241, 1%29' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M8 8 L24 24 M8 24 L24 8'/%3E%3C/svg%3E");
}

    img {
        width: 100%;
        height: intrinsic;
        height:auto;
        object-fit: cover;
    }

.storia {
    margin-bottom: 100px;
}

.white-box {
    background-color: var(--white-color);
    color: var(--green-color);
    padding:calc(var(--xl)*1.5) 0 0 0;
}

    .white-box .img-piatti {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, 1fr);
        grid-column-gap: var(--lg);
        grid-row-gap: var(--lg);
    }

.proposte-row {
    padding-top: var(--xl);
}

.proposte {
    background-color: var(--green-color);
    color: var(--white-color);
    padding: var(--md);
    margin:0;
}

.card-menu-container {
    display: flex;
    gap: var(--md);
    flex-direction: row;
    padding-top:var(--md)
}

.card-menu {
    flex:1;
    border-radius: 0;
    min-width:300px;
    height: 250px;
    background-color: transparent;
    border: 2px solid var(--green-color);
    padding:var(--md);
    display:flex;
    align-items:flex-end;
    position:relative;
}

    .card-menu::after {
        content: '';
        display: block;
        position: absolute;
        top: var(--md);
        right: var(--md);
        width: var(--lg);
        height: var(--lg);
        background-image: url("../img/arrow.svg");
        background-position: center;
        background-repeat: no-repeat;
        transform: rotate(-45deg);
        transition: 100ms ease-in-out;
    }

    .card-menu:hover::after {
        transform: rotate(0deg);
    }

.card-menu.card-text {
    color: var(--green-color);
}

.contenitore4 {
    padding-right: 150px;
    padding-left: 150px;
    padding-top: 50px;
    padding-bottom: 30px;
    background-color: var(--green-color);
    color: var(--white-color);
}

footer {
    background-color:var(--green-color);
    font-family:var(--ff-sans);
    font-size:var(--fs-md);
    padding-top:calc(var(--xl)*2);
    padding-bottom:var(--lg);
}
footer ul {
    padding-left: 0;
}

footer ul li {
    margin-bottom:calc(var(--md)/3);
}

footer .extra {
    width:100%;
    display:inline-flex;
    justify-content:space-between;
}

hr {
    margin-block:var(--lg);
}

.socials {
    margin-top:var(--lg);
    display:flex;
    justify-content:flex-end;
    gap:1rem;
    align-content:center;
}


/* Media queries */

@media (max-width: 1200px) {
    .contenitore2, .contenitore3, .contenitore0, .contenitore4 {
        padding-left: 100px;
        padding-right: 100px;
    }

    .contenitore1{
        padding-top: 200px;
    }

    .menu {
        height: 200px;
    }

}

@media (max-width: 992px) {
    .contenitore2, .contenitore3, .contenitore0, .contenitore4 {
        padding-left: 50px;
        padding-right: 50px;
    }

    .top-bar {
        padding-top: var(--md);
        padding-bottom: var(--md);
        margin: auto;
        position: inherit;
    }

    .vocimenu {
        margin-top: 50px;
    }

    .vocimenu li:not(:last-of-type) {
        padding-bottom:var(--sm);
    }

    .navbar-expand-lg .vocimenu .nav-link:hover{
        text-decoration: underline;
    }

    .vocimenu .nav-link.active {
        text-decoration: underlineA;
    }

    .menu {
        height: 150px;
    }

    .contenitore1{
        padding-top: 100px;
    }
    footer .extra {
        width: 100%;
        display: flex;
        flex-direction:column;
        text-align:center;
    }

}

@media (max-width: 768px) {
    .contenitore2, .contenitore3, .contenitore0, .contenitore4 {
        padding-left: 20px;
        padding-right: 20px;
    }

    .contenitore1{
        padding-top: 30px;
    }

    .riga {
        padding-bottom: 20px;
    }

    .contenitore3{
        padding-top: 65px;
        padding-bottom: 50px;
    }

    .storia {
        margin-bottom: 50px;
    }

    .menu {
        margin-bottom: 15px;
    }

    .titolo {
        padding-bottom: 15px;
        padding-top: 50px;
    }

    .contenitore4 {
        padding-top: 25px;
        padding-bottom: 15px;
    }

    .hero {
        height: 60lvh;
        align-content: flex-end;
    }

    .slider_row1 .swiper-slide img, .slider_row2 .swiper-slide img {
        height: 300px;
    }

    .socials {
        margin-top: var(--lg);
        display: flex;
        justify-content: center;
        gap: 1rem;
        align-content: center;
    }

}

/*slider*/

.image-slider-container {
    padding-top:var(--xl);
    margin-bottom:0!important;
}

.slider_row1 .swiper-slide, .slider_row2 .swiper-slide {
    width: auto;
    padding: 0 10px 0 10px;
}

.swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
    -o-transition-timing-function: linear !important;
    transition-timing-function: linear !important;
}

/* scroll fix */
#menu {
    scroll-margin-top: var(--md);
}