@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

body {
    font-family: "Montserrat", sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-color: #0D1B2A;
    overflow-x: hidden;
}

.centrato {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Homepage */

.homepage-fullscreen {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background-image:
        radial-gradient(circle, rgba(13, 102, 194, 0.25) 0%, rgba(13, 102, 194, 0.40) 60%),
        url(../../assets/img/homepage/Immagine\ WhatsApp\ 2025-12-01\ ore\ 22.38.31_0510c670.jpg);
    background-size: cover;
    background-position: center center;
    min-height: 100svh;
}

.homepage-fullscreen-backtxt {
    width: 95%;
    flex-direction: column;
}

.homepage-fullscreen-txts {
    display: flex;
    justify-content: center;
    width: 100%;
    height: 50%;
    text-align: center;
    color: white;
    max-width: 40rem;
}

.homepage-fullscreen-txts h1 {
    font-weight: 500;
    width: 90%;
    font-size: 2rem;
}

.homepage-fullscreen-txts p {
    width: 65%;
    font-size: 1rem;
}

#homepage-fullscreen-txts-title {
    align-items: end;
}

#homepage-fullscreen-txts-paragrafo {
    align-items: start;
}

/* Homepage Info e Gallery */

.homepage-info {
    background-color: white;
    width: 100%;
    height: auto;
    flex-direction: column;
}

/* Galleria Normale */
#homepage-info-gallery{
    display: flex;
    flex-direction: column;
}

.homepage-info-gallery-grid {
    margin: 0 10px;
    margin-top: 60px;
    min-height: 250px; /* o 250px, o 300px */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 2fr));
}

.homepage-info-gallery-grid a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: white;
    font-size: 1.8rem;
}

.homepage-info-gallery-grid a:hover {
    transition: 0.3s;
    background-image: radial-gradient(rgba(42, 171, 238, 0.25) 100%);
}

/* ===== GALLERY LOOP DESKTOP ===== */

.homepage-gallery-loop {
    width: 80%;
    overflow: hidden;
    margin-top: 40px;
    margin-bottom: 20px;
}

.homepage-gallery-track {
    display: flex;
    gap: 20px;

}

.homepage-gallery-item {
    min-width: 300px;
    height: 250px;
    background-size: cover;
    background-position: center;
    display: flex;
}

.homepage-gallery-item a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    color: white;
    font-size: 1.6rem;
    background-image: radial-gradient(rgba(0,0,0,0.25) 100%);
}

.homepage-gallery-item a:hover {
    background-image: radial-gradient(rgba(42, 171, 238, 0.35) 100%);
    transition: 0.3s;
}


/* CLASSI DI SFONDO DINAMICHE */

.bg-arezzo {
    background-image:
        radial-gradient(rgba(0, 0, 0, 0.25) 100%),
        url(../img/homepage/arezzo.jpg); 
}
.bg-salabolognese {
    background-image:
        radial-gradient(rgba(0, 0, 0, 0.25) 100%),
        url(../img/homepage/salabolognese.jpg);
}
.bg-prato {
    background-image:
        radial-gradient(rgba(0, 0, 0, 0.25) 100%),
        url(../img/homepage/prato.jpg);
}
.bg-sangiorgio{
        background-image:
        radial-gradient(rgba(0, 0, 0, 0.25) 100%),
        url(../img/homepage/sangiorgio.jpeg);
}
.bg-abbadia{
        background-image:
        radial-gradient(rgba(0, 0, 0, 0.25) 100%),
        url(../img/homepage/ospedale-abbadia-san-salvatore.jpg);  
} 
.bg-aquila{
    background-image:
        radial-gradient(rgba(0, 0, 0, 0.25) 100%),
        url(../img/homepage/ospedale-aquila.jpg);
}

/* ===============================
   GALLERY SCROLLBAR
================================ */

.homepage-gallery-scrollbar {
    width: 100%;
    max-width: 500px;
    height: 6px;
    background: rgba(0,0,0,0.15);
    border-radius: 4px;
    margin: 25px auto 0;
    position: relative;
    cursor: pointer;
    
}

.homepage-gallery-thumb {
    width: 80px;
    height: 100%;
    background: #2aabee;
    border-radius: 4px;
    position: absolute;
    left: 0;
    top: 0;
    cursor: grab;
    cursor: black;
}

.homepage-gallery-thumb:active {
    cursor: grabbing;
}


.homepage-info-box {
    max-width: 70rem;
    width: 95%;
    height: 60%;
    flex-direction: column;
    margin-bottom: 10px;
}

.homepage-info-box-gridtxt {
    width: 100%;
    height: 80%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#homepage-info-box-gridtxt-title {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 20%;
}

#homepage-info-box-gridtxt-title h3 {

    width: 90%;
    height: 80%;
    font-size: 1.3rem;
    font-weight: 500;
    color: #cf2e2e;
    text-align: center;
}

#homepage-info-box-gridtxt-txt p {
    text-align: center;
    width: 90%;
    font-size: 1rem;
    max-width: 1200px;
    color: black;
}

#homepage-info-box-gridtxt-txt a {
    cursor: pointer;
    text-decoration: none;
    border: none;
    background-color: #005EE9;
    font-size: 0.7rem;
    color: white;
    letter-spacing: 3px;
    padding: 15px 30px;
    margin-top: 10px;
}

#homepage-info-box-gridtxt-txt a:hover {
    transition: 0.3s;
    background-color: #cf2e2e;
}


/* Homepage Costruisci */

.homepage-costruisci {
    flex-direction: column;
    width: 100%;
    height: auto;
    padding: 75px 0;
    background-color: #005EE9;
    background-image: radial-gradient(circle, rgba(13, 102, 194, 0.30) 0%, rgba(13, 102, 194, 0.50) 60%), url(../img/homepage/buildwithus.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position:  center center;
}

.homepage-costruisci-box {
    flex-direction: column;
    width: 95%;
    text-align: center;
}

.homepage-costruisci-box h3 {
    color: white;
    font-weight: 500;
    font-style: italic;
    font-size: 1.6rem;
    margin-bottom: 8px;
}

.homepage-costruisci-box p {
    width: 80%;
    font-size: 0.9rem;
    color: white;
}

.homepage-costruisci-box a {
    text-decoration: none;
    cursor: pointer;
    border: solid 1px #2aabee;
    background-color: white;
    font-size: 0.7rem;
    color: black;
    letter-spacing: 2px;
    padding: 15px 30px;
    margin-top: 15px;
}


.homepage-costruisci-box a:hover {
    transition: 0.3s;
    border: solid 1px white;
    background-color: #cf2e2e;
}
