main{
    margin-top: 80px;
}

.hero {
    position: relative;
    width: 100%;
    height: 60vh; 
    min-height: 300px; 
    background: url('./../content/orso.webp') no-repeat center center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
    padding: 20px 0;
    margin: 0;
}

.hero h1 {
    font-size: 2.5rem; 
    font-weight: bold;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.7);
    padding: 0 15px;
}

.hero::before, .hero::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.hero::before {
    background: rgba(255, 0, 0, 0.25);
    backdrop-filter: blur(3px); 
}

.hero::after {
    background-color: rgba(255, 0, 0, 0.151);
}

.hero > * {
    position: relative;
    z-index: 2;
}

_card__img {
    max-width: 100% !important;
    height: auto !important;
}

#cards-container {
    text-rendering: optimizeLegibility !important;
    -moz-osx-font-smoothing: grayscale !important;
    -webkit-font-smoothing: antialiased !important;
    font-size: 100% !important;
}

_card__h1,
_card__h2,
_card__h3,
_card__h4,
_card__h5 {
    font-weight: 800 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#cards-container{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    color: #ffffff;
    background-color: white;
    margin-bottom: 7vh;
}

/* Stile per le carte (aggiungi se necessario per dimensioni uniformi) */
._card {
    width: 25%;  /* 3 carte per riga su schermo grande (desktop) */
    margin: 10px;  /* Distanza tra le carte */
    box-sizing: border-box; /* Includi margini e padding nella larghezza totale */
    margin-top: 10vh;
}

._card-hover {
    width: 100%;
    height: 500px;
    position: relative;
    box-sizing: border-box;
    box-shadow: 0 0 32px -10px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

._card-hover::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.5s ease-in-out;
    transform: scale(1) translateY(-5vh);
}

._card-hover:hover::before {
    transform: scale(1.2) translateY(-15px);
}


._card-hover:has(._card-hover__link:hover) ._card-hover__extra {
    transform: translateY(0) !important;
    transition: transform 0.35s ease-out !important;
}

._card-hover:hover ._card-hover__content {
    background-color: #cc0000 !important;
    bottom: 100% !important;
    transform: translateY(100%) !important;
    padding: 50px 60px !important;
    transition: all 0.35s ease-out !important;
}

._card-hover:hover ._card-hover__link {
    z-index: 5 !important;
    opacity: 1 !important;
    transform: translate(-50%, 0) !important;
    transition: all 0.35s ease-out !important;
}

._card-hover:hover img {
    transform: scale(1) !important;
    transition: all 0.35s ease-out !important;
}

._card-hover__content {
    width: 100% !important;
    text-align: center !important;
    background-color: #cc0000 !important;
    padding: 0 60px 50px !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    transform: translateY(0) !important;
    transition: all 0.35s ease-out !important;
    will-change: bottom, background-color, transform, padding !important;
    z-index: 10 !important;
}

._card-hover__content::before,
._card-hover__content::after {
    content: "" !important;
    width: 100% !important;
    height: 120px !important;
    background-color: inherit !important;
    position: absolute !important;
    left: 0 !important;
    z-index: -1 !important;
}

._card-link {
    display: block; /* Fa sì che il link occupi tutta la card */
    text-decoration: none; /* Rimuove la sottolineatura */
    color: inherit; /* Mantiene il colore originale del testo */
}

._card-hover__title,
._card-hover__text {
    color: white !important; /* Assicura che il testo rimanga bianco */
}

._card-hover__content::before {
    top: -80px !important;
    clip-path: ellipse(60% 80px at bottom center) !important;
}

._card-hover__content::after {
    bottom: -80px !important;
    clip-path: ellipse(60% 80px at top center) !important;
}

._card-hover__title {
    z-index: 999 !important;
    font-size: 1.5rem !important;
    margin-bottom: 1em !important;
    font-size: 2rem !important;
    font-family: Arial, Helvetica, sans-serif;
}

._card-hover__title span {
    color: #ffffff !important;
}

._card-hover__text {
    font-size: 0.75rem !important;
}

._card-hover__link {
    position: absolute !important;
    bottom: 1rem !important;
    left: 50% !important;
    transform: translate(-50%, 10%) !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    text-decoration: none !important;
    color: #2d7f0b !important;
    opacity: 0 !important;
    padding: 10px !important;
    transition: all 0.35s !important;
}

._card-hover__text {
    font-size: 1rem !important; /* Cambia la dimensione del testo */
    color: white !important; /* Assicura che rimanga bianco */
    font-weight: 600 !important; /* Rende il testo più leggero */
}

._card-hover__link:hover svg {
    transform: translateX(4px) !important;
}

._card-hover__link svg {
    width: 18px !important;
    margin-left: 4px !important;
    transition: transform 0.3s !important;
    color: white;
}

._card__span{
    font-size: 1.3rem;
    font-weight: bold;
}

._card-hover__extra {
    height: 50% !important;
    position: absolute !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    width: 100% !important;
    font-size: 1.5rem !important;
    text-align: center !important;
    background-color: #86b971 !important;
    padding: 80px !important;
    bottom: 0 !important;
    z-index: 0 !important;
    color: #dee8c2 !important;
    transform: translateY(100%) !important;
    will-change: transform !important;
    transition: transform 0.35s !important;
}

._card-hover__extra span {
    color: #2d7f0b !important;
}

._card-hover img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    z-index: 0 !important;
    transform: scale(1.2) !important;
    transition: transform 0.2s ease-out !important;
}

@media (max-width: 1222px) {
    ._card {
        width: 45%; /* 2 carte per riga */
    }
}

@media (max-width: 800px) {
    ._card {
        width: 85%; /* 2 carte per riga */
    }
}

@media (min-width: 768px) {
    .hero {
        height: 400px;
        padding: 50px 0;
    }
    
    .hero h1 {
        font-size: 4rem;
    }
}