/* Container styles for the services section */

@media (min-width: 992px) {
    .main-content.authenticated .page-header {
        position: relative;
        margin-left: -100px; /* Estende verso sinistra */
        padding-left: 100px; /* Mantiene il contenuto nella posizione corretta */
    }
}
.trovalasede:hover {
    text-decoration: underline;
    cursor: pointer;
}

.service .row {
    display: flex; /* Enable flexbox for horizontal layout */
    flex-wrap: wrap; /* Allow wrapping if there’s not enough space */
    justify-content: center; /* Center align the content */
    gap: 20px; /* Add spacing between cards */
}

.slogan p {
    color: var(--color-secondary);
    font-weight: 500;
    font-size: 18px;
}


/* Card styles */
.xb-services {
    flex: 1 1 calc(50% - 20px); /* Two cards per row with flexible width */
    max-width: calc(50% - 20px); /* Ensure cards don’t exceed half of the container */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow for cards */
    border-radius: 20px; /* Add rounded corners */
    overflow: hidden;
    background-color: #0B3948 !important; /* Background color for cards */
    transition: transform 0.3s, box-shadow 0.3s; /* Add interactive hover effect */
    padding: 20px; /* Add padding inside cards */
}



    .xb-services::before {
        content: '';
        position: absolute;
        background: #0B3948;
        background-color: ##0B3948;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: -1;
        background: #0B3948;
        background-color: ##0B3948;
        opacity: 1;
        -webkit-transition: 0.6s;
        -o-transition: 0.6s;
        transition: 0.6s;
    }

    .xb-services::after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: -1;
        background: #0B3948;
        background-color: ##0B3948 -webkit-transform: scaleY(0.96);
        transform: scale(0.96);
        transform-origin: bottom;
        -webkit-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
        bottom: 0;
        right: 0;
        border-radius: 20px;
        -webkit-border-radius: 20px;
        -moz-border-radius: 20px;
        -ms-border-radius: 20px;
        -o-border-radius: 20px;
    }

    /* Add hover effect for the cards */
    .xb-services:hover {
        transform: translateY(-10px); /* Lift on hover */
        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); /* Stronger shadow on hover */
    }

    /* Ensure images within the cards are properly sized */
    .xb-services .xb-item--img {
        width: 100%; /* Full width for the image container */
        height: 200px; /* Fixed height for the image container */
        overflow: hidden; /* Crop overflowing images */
        margin-bottom: 20px; /* Add spacing below the image */
    }

        .xb-services .xb-item--img img {
            width: 100%; /* Ensure images stretch to fit the container */
            height: 100%; /* Ensure images stretch to fit the container */
            object-fit: cover; /* Crop images to fit neatly */
            display: block;
        }

.bottoneservizi {
    margin-right: 20px;
}

.bottoneiniziaricerca {
    display: flex;
    height: 75px;
    width: 320px;
    text-align: center;
    align-items: center;
    align-content: center;
}

.titoliPiani {
    color: white;
}
/* Title and content styles */
.xb-item--title {
    font-size: 30px !important; /* Set font size for the title */
    font-weight: 600 !important;
    /* font-weight: bold;*/
    /* margin: 15px 0;*/ /* Add spacing above and below */
    text-align: left;
}

.xb-item--content {
    color: white;
    font-size: 1rem;
    color: #E8F1F2; /* Use subtle gray for content text */
    text-align: left;
    margin-bottom: 20px; /* Add spacing below the content */
}

/* List styles inside the card */
.xb-item--img .list-item {
    margin-top: 15px;
    margin-bottom: 15px;
    display: flex; /* Arrange icon and text in a row */
    align-items: center; /* Center align them vertically */
    gap: 10px; /* Add space between icon and text */
}

/* Stato iniziale */
.planpointer i.far.fa-angle-right {
    display: inline-block;
}

.planpointer i.fa-solid.fa-arrow-right {
    display: none;
}

.xb-services:hover .acquista {
    color: #E8F1F2;
}

/* Stato hover */
.xb-services:hover .planpointer {
    background-color: #D9AD63;
}

    .xb-services:hover .planpointer i.far.fa-angle-right {
        display: none;
    }

    .xb-services:hover .planpointer i.fa-solid.fa-arrow-right {
        display: inline-block;
    }

.acquista {
    color: #fff;
}

/*  GRADIENT HOVER TASTO ACQUISTA  */



/*  GRADIENT HOVER TASTO ACQUISTA  */

.price-tag {
    display: none;
    visibility: hidden;
}

.srv-btn {
    border-radius: 5%;
    background: linear-gradient(90deg, rgba(227,166,17,1) 0%, rgba(0,8,14,1) 71%);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
/* Center the price tag */
.price-tag {
    display: inline-block;
    padding: 10px 20px;
    margin: 20px auto; /* Space between the element and the button */
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    border-radius: 5%;
    background-image: linear-gradient( -225deg, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 40%, rgba(0, 255, 255, 0) 60%, rgb(0, 255, 255) 100% ), linear-gradient(45deg, rgb(48, 35, 174) 0%, rgb(255, 0, 153) 100%);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Icon styles */
.planpointer {
    width: 28px; /* Fixed width for the icon container */
    height: 28px; /* Fixed height for the icon container */
    display: flex; /* Center the icon inside the container */
    justify-content: center;
    align-items: center;
    background-color: #D9AD63; /* Light gray background for the icon */
    border-radius: 50%; /* Make the icon circular */
    font-size: 16px; /* Icon size */
    color: #333; /* Icon color */
    overflow: visible;
}

/* Text next to the icon */
.list-item-text {
    font-size: 1rem; /* Font size for the text */
    color: #E8F1F2; /* Text color */
    flex: 1; /* Allow text to take remaining space */
}

/* Button styles */
.srv-btn {
    display: inline-block; /* Button should be inline */
    margin: 20px auto; /* Center the button horizontally */
    padding: 10px 20px; /* Add padding inside the button */
    text-align: center;
    background-color: #0056b3; /* Blue background */
    color: #fff; /* White text */
    text-decoration: none; /* Remove underline from the text */
    border-radius: 5px; /* Rounded corners for the button */
    transition: background-color 0.3s; /* Smooth background-color transition */
}

    .srv-btn:hover {
        background-color: #003d80; /* Darker blue background on hover */
    }

.section-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px; /* Spazio tra sottotitolo e titolo */
}

    .section-title .sub-title {
        background-color: #e9d39d;
    }


.sub-title {
    display: block;
    font-size: 1.1rem;
    color: #666;
    margin-bottom: 10px;
}

.title {
    font-size: 2.5rem;
    /* font-weight: bold;*/
    color: #333;
    margin: 0;
}

/* Responsive adjustments for small screens */
@media (max-width: 768px) {
    .xb-services {
        flex: 1 1 100%; /* Full width for single column layout */
        max-width: 100%; /* Remove max-width constraint */
    }
}

.xb-services {
    position: relative;
    overflow: hidden;
}

.backgroundcard {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    object-fit: cover;
}

.xb-item--holder,
.xb-cta-list {
    position: relative;
    z-index: 1;
}



/* Stile di default per il primo pulsante (giallo) */
.xb-services:first-child .cta-button .thm-btn {
    background-color: #FFD470;
    color: #0B3948;
}

/* Stile di default per il secondo pulsante (bianco) */
.xb-services:nth-child(2) .cta-button .thm-btn {
    background-color: #FFFFFF;
    color: #0B3948;
}

/* Hover states - opzionale, puoi personalizzare l'effetto hover */
.xb-services:first-child .cta-button .thm-btn:hover {
    background-color: #FFE5A8;
}

.xb-services:nth-child(2) .cta-button .thm-btn:hover {
    background-color: #F5F5F5;
}

.xb-item--holder, .xb-cta-list, .cta-button {
    /* margin-left: 40px;*/
    position: relative;
    z-index: 1;
}

.xb-services {
    /* height: 610px;*/
    position: relative;
    overflow: hidden;
}

    /* Allineamento a sinistra per il titolo */
    .xb-services .xb-item--holder {
        text-align: left;
    }

        /* Allineamento a sinistra per il testo descrittivo */
        .xb-services .xb-item--holder p.xb-item--content {
            text-align: left;
        }

    /* Se ci sono altri elementi che potrebbero necessitare allineamento */
    .xb-services .xb-item--holder {
        text-align: left;
    }

        /* Rimuovere eventuali classi di allineamento al centro esistenti */
        .xb-services .xb-item--holder .text-center {
            text-align: left;
        }


    .xb-services .xb-item--holder {
        text-align: left !important;
    }

@media (max-width: 1200px) {
    .cta-button {
        padding: 0;
        font-size: 1.1rem;
    }
}

.xb-services:hover {
    transform: translateY(0px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}

.xb-item--holder {
    display: flex;
    flex-direction: column;
}

.xb-services .xb-item--title {
    color: white;
    font-weight: 300;
    /* font-size: 26px; */
    line-height: 18px;
    letter-spacing: -0.02em;
    text-transform: capitalize;
    font-family: var(--font-body);
    padding-bottom: 20px;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    text-align: left;
}

.xb-services:first-child .cta-button .thm-btn:hover {
    background-color: #Fff;
}

.xb-services:nth-child(2) .cta-button .thm-btn:hover {
    background-color: #FFD470;
    color: #0B3948;
}

.xb-services .xb-item--holder {
    /*margin-top: 40px;*/
    text-align: left !important;
}



.xb-cta {
    border-radius: 20px;
    padding: 50px;
    background: var(--color-secondary);
    width: 380px;
    background-image: url('../../img/backgrounds/card-02-bg.png');
    position: relative;
    padding-bottom: 75px; /* Spazio per il bottone */
}

.xb-cta .xb-item--title {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 30px;
    line-height: 38px;
    color: #fff;
}

.xb-cta .xb-item--title2 {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 30px;
    line-height: 38px;
    color: var(--color-yellow);
}

.xb-cta .xb-item--content {
    color: #d8e3f8;
    padding: 25px 0 38px 0;
    max-width: 458px;
}

.xb-cta-list {
    list-style: none;
    margin-bottom: 150px;
}

    .xb-cta-list .list-title {
        font-weight: 600;
        font-size: 20px;
        color: var(--color-body);
        padding-bottom: 28px;
        display: inline-block;
    }

    .xb-cta-list .cta-item {
        color: var(--color-white);
        margin-bottom: 10px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        font-size: 16px;
    }

        .xb-cta-list .cta-item:last-child {
            margin-bottom: 0;
        }

        .xb-cta-list .cta-item svg {
            margin-right: 10px;
        }



.plans-card-footer {
    position: absolute;
    bottom: 50px; /* Aumentato la distanza dal fondo */
    left: 50px; /* Allineato a sinistra, stessa distanza del padding della card */
}

    .plans-card-footer div {
        width: 200px; /* Larghezza fissa */
        height: 60px; /* Altezza fissa */
        margin: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background: var(--color-yellow);
    }

        .plans-card-footer div p {
            text-align: center;
            color: var(--color-secondary);
            font-weight: 900;
        }

    .plans-card-footer .plans-card-footer-text {
        margin-top: 10px;
        font-size: 14px;
        color: #d8e3f8;
    }

    .plans-card-footer .plans-card-footer-link {
        font-size: 18px;
        color: var(--color-body);
        text-decoration: underline;
        font-weight: 600;
        cursor: pointer;
    }

        .plans-card-footer .plans-card-footer-link:hover {
            color: var(--color-yellow);
        }


/* Media query per responsive */
@media (max-width: 767px) {

    .slogan p {
        font-size: 16px;
    }

    .xb-item--content {
        margin-bottom: 0;
        font-size: 15px;
    }

        .xb-cta-list .list-title {
            font-size: 15px;
        }

        .xb-cta-list .cta-item {
            font-size: 15px;
        }

    .xb-cta {
        padding-bottom: 100px;
    }
}
