.benessere-section__text h3,
.two-columns__text h3,
.double-content-box__text h3,
.benessere-musica__text h3, .hospice-ambiente__text h3  {
    margin: 0px 0 25px;
    font-size: 24px;
    line-height: 27px;
    font-weight: 400;
}
.two-columns--green .two-columns__text h3,
.two-columns--blue .two-columns__text h3,
.double-content-box__text h3,
.benessere-musica__text h3{
    color: #fff;
}
.two-columns--white .two-columns__text h3,
.benessere-section__text h3 {
    color: #3D93A8;
}

.giornata-text h4.text-pom {
  font-size: 30px;
  font-weight: bold;
  color: #2E6C8D;
}

.h2-pom {
  font-size: 30px;
  font-weight: normal;
  line-height: 34px;
  letter-spacing: -1px;
  color: #3D93A8;
  margin: 20px 0 35px;
}
.internal-page-title,
.info-utili__title,
.ammissione-intro__title,
.odc-destinato__title,
.odc-salute__title {
    font-weight: 800;
    letter-spacing: -1.5px;
    font-size: 40px;
}
/* =========================================================
   HERO PAGINE INTERNE
   ========================================================= */

.internal-hero {
    margin-top: 30px;
    margin-bottom: 30px;
    padding: 30px 32px 35px;

    color: #97F6FF;

    background-color: #469AB8;
    background-image: url("../images/bg-menu-servizi.png");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;

    border-radius: 10px;
}
/* =========================================================
   BREADCRUMB
   ========================================================= */

.internal-hero__breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;

    margin-bottom: 55px;

    font-size: 12px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: 1.2px;

    text-transform: uppercase;
}

.internal-hero__breadcrumb a {
    color: #fff;
    text-decoration: none;
}

.internal-hero__breadcrumb a:hover {
    text-decoration: underline;
}

.internal-hero__separator,
.internal-hero__current {
    color: #97F6FF;
}


/* =========================================================
   TITOLO
   ========================================================= */

.internal-hero__title {
    margin: 0;

    color: #fff;

    font-size: 50px;
    line-height: 1;
    font-weight: 600;
}


/* Se c'è il submenu */

.internal-hero__title:has(+ .internal-hero__submenu) {
    margin-bottom: 18px;
}


/* =========================================================
   SUBMENU
   ========================================================= */

.internal-hero__submenu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;

    gap: 25px;
}

.internal-hero__submenu a {
    color: #fff;

    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;

    text-decoration: underline;
}

.internal-hero__submenu a:hover {
    text-decoration: none;
}

.internal-hero__submenu a.is-active {
    color: #97F6FF;
    text-decoration: none;
}
.internal-hero__submenu-mobile {
    display: none;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    .internal-hero {
        padding: 25px;
    }

    .internal-hero__breadcrumb {
        margin-bottom: 40px;
    }

    .internal-hero__title {
        font-size: 42px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .internal-hero {
        margin-top: 15px;
        margin-bottom: 25px;
        padding: 20px;

        background-position: right center;
        width: 95.5%
    }

    .internal-hero__breadcrumb {
        margin-bottom: 30px;

        font-size: 10px;
        line-height: 1.4;

        letter-spacing: .7px;
    }

    .internal-hero__title {
        font-size: 34px;
        line-height: 1.05;
    }

    .internal-hero__submenu {
        gap: 12px 18px;
    }

    .internal-hero__submenu a {
        font-size: 13px;
    }

    .internal-hero__submenu {
        display: none;
    }

    .internal-hero__submenu-mobile {
        display: block;
        width: 100%;
        margin-top: 20px;
    }

    .internal-hero__select {
        width: 100%;
        height: 46px;
        padding: 0 45px 0 16px;

        background-color: #fff;
        color: #454446;

        border: none;
        border-radius: 8px;

        font-family: inherit;
        font-size: 16px;

        cursor: pointer;

        appearance: none;
        -webkit-appearance: none;

        background-image:
            linear-gradient(45deg, transparent 50%, #3D93A8 50%),
            linear-gradient(135deg, #3D93A8 50%, transparent 50%);

        background-position:
            calc(100% - 19px) 20px,
            calc(100% - 14px) 20px;

        background-size: 5px 5px;
        background-repeat: no-repeat;
    }
    .benessere-section__text h3,
.two-columns__text h3,
.double-content-box__text h3,
.benessere-musica__text h3,  .hospice-ambiente__text h3 {
    margin: 0px 0 25px;
    font-size: 20px;
    line-height: 24px;
    font-weight: 400;
}
.h2-pom {
  font-size: 22px;
  line-height: 24px;
}
    .giornata-text h4.text-pom {
  font-size: 26px;
line-height: 30px;
}

}
.internal-hero__submenu-separator {
    color: #97F6FF;
    font-size: 14px;
    font-weight: 700;
}
/* =========================================================
   TWO COLUMNS
   ========================================================= */

.two-columns {
    margin-top: 40px;
    margin-bottom: 30px;
}

.two-columns__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
}

.two-columns__content {
    min-width: 0;
}

.two-columns__title {
    margin: 0 0 25px;

    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.two-columns__text {
    color: var(--color-black);
    font-size: 18px;
    line-height: 24px;
}
.two-columns__text p {
    margin: 0;
}

.two-columns__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

/* immagine a sinistra */
.two-columns--image-left .two-columns__content {
    order: 2;
}

.two-columns--image-left .two-columns__image {
    order: 1;
}
@media (max-width: 991px) {

    .two-columns__grid {
        gap: 40px;
    }

    .two-columns__title {
        font-size: 34px;
    }


}

@media (max-width: 767px) {

    .two-columns {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .two-columns__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .two-columns__title {
        font-size: 28px;
        margin-bottom: 18px;
    }



    .two-columns--image-left .two-columns__content,
    .two-columns--image-left .two-columns__image {
        order: initial;
    }
    .two-columns__text {
        font-size: 16px;
    line-height: 20px;
    }
}
/* =========================================================
   LE RESIDENZE - STRUTTURE
   ========================================================= */

.residenze-strutture {
    margin-top: 50px;
    margin-bottom: 60px;
}

.residenze-strutture__box {
    padding: 50px;
background: #6C9E36 url("../images/pattern-green-4col.png") left / cover no-repeat;
    border-radius: 10px;
    color: #fff;
}

.residenze-strutture__intro {
    margin-bottom: 35px;
    font-size: 24px;
    line-height: 1.35;
    letter-spacing:-1px;
}

.residenze-strutture__intro p {
    margin: 0;
}

.residenze-strutture__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 48px;
}

.residenze-strutture__item {
    min-width: 0;
}

.residenze-strutture__heading {
    min-height: 70px;
    margin-bottom: 10px;
}

.residenze-strutture__item h3 {
    margin: 0;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 700;
}

.residenze-strutture__subtitle {
    margin-top: 3px;
    font-size: 18px;
    line-height: 1.15;
}

.residenze-strutture__subtitle a {
    color: inherit;
    text-decoration: underline;
}

.residenze-strutture__image img {
    display: block;
    width: 100%;
    aspect-ratio: 0.76;
    object-fit: cover;
    border-radius: 9px;
}

.residenze-strutture__text {
    margin-top: 35px;
    font-size: 18px;
    line-height: 1.3;
}

.residenze-strutture__text p {
    margin: 0 0 20px;
}

.residenze-strutture__text p:last-child {
    margin-bottom: 0;
}

.residenze-strutture__cta {
    margin-top: 30px;
    text-align: center;
}
@media (max-width: 991px) {

    .residenze-strutture__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 35px;
    }

    .residenze-strutture__heading {
        min-height: auto;
    }
}

@media (max-width: 767px) {

    .residenze-strutture {
        margin-top: 35px;
        margin-bottom: 40px;
    }

    .residenze-strutture__box {
        padding: 30px 20px;
    }

    .residenze-strutture__grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .residenze-strutture__intro {
        font-size: 19px;
    }

    .residenze-strutture__item h3 {
        font-size: 24px;
    }

    .residenze-strutture__image img {
        aspect-ratio: auto;
    }

    .residenze-strutture__text {
        font-size: 17px;
    }
}
.btn {
  background: #3D93A8;
  background-position-x: 0%;
  background-position-y: 0%;
  background-image: none;
  background-size: auto;
  color: #FFFFFF;
  font-size: 18px;
  font-weight: bold;
  border-radius: 50px;
  padding: 14px 40px;
  cursor: pointer;
  display: inline-block;
  min-width: 180px;
  margin: 0 auto;
  text-align: center;
  text-decoration: none
}
.btn:hover {
  background-color: #2E6C8D;
  color: #FFFFFF;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
/* =========================================================
   LE RESIDENZE - MAPPA
   ========================================================= */

.residenze-mappa {
    margin-top: 50px;
    margin-bottom: 60px;
}

.residenze-mappa img {
    display: block;
    width: 100%;
    height: auto;
}

.two-columns--blue .two-columns__title, .two-columns--green .two-columns__title {
  font-size: 30px;
  font-weight: 700;
}
@media (max-width: 767px) {

    .residenze-mappa {
        margin-top: 35px;
        margin-bottom: 40px;
    }
    .two-columns--blue .two-columns__title, .two-columns--green .two-columns__title {
  font-size: 26px;
}

}
/* =========================================================
   TWO COLUMNS - VARIANTI
   ========================================================= */

.two-columns--white {
    background: #fff;
}

.two-columns__inner {
    width: 100%;
}

.two-columns--blue .two-columns__inner,
.two-columns--green .two-columns__inner {
    padding: 45px;
    border-radius: 10px;
    color: #fff;
}

.two-columns--blue .two-columns__inner {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
}

.two-columns--green .two-columns__inner {
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;
}



/* Nei blocchi colorati titolo e testo devono diventare bianchi */

.two-columns--blue .two-columns__title,
.two-columns--green .two-columns__title,
.two-columns--blue .two-columns__text,
.two-columns--green .two-columns__text,
.two-columns--blue .two-columns__highlight,
.two-columns--green .two-columns__highlight {
    color: #fff;
}
.two-columns__highlight {
    margin-bottom: 12px;
    color: var(--color-blue-3);
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.two-columns__highlight p {
    margin: 0;
}
.two-columns__cta {
    margin-top: 30px;
    text-align: center;
}
.two-columns__text p {
    margin: 0 0 18px;
}

.two-columns__text p:last-child {
    margin-bottom: 0;
}
.two-columns__highlight p {
    margin: 0 0 12px;
}

.two-columns__highlight p:last-child {
    margin-bottom: 0;
}
.two-columns__title--top {
    margin-bottom: 25px;
}
.two-columns--green .two-columns__title--top {
    color: #fff;
}
/* =========================================================
   RSA - LA STRUTTURA
   ========================================================= */

.rsa-structure-box {
    margin-top: 40px;
    margin-bottom: 40px;
}

.rsa-structure-box__inner {
    padding: 45px;

    background-color: #6C9E36;
    background-image: url("../images/pattern-table-green.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;
    color: #fff;
}

.rsa-structure-box__title {
    margin: 0 0 25px;

    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -1px;
}

.rsa-structure-box__top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.rsa-structure-box__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.rsa-structure-box__text {
    font-size: 18px;
    line-height: 1.25;
}

.rsa-structure-box__text p {
    margin: 0 0 18px;
}

.rsa-structure-box__text p:last-child {
    margin-bottom: 0;
}

.rsa-structure-box__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;

    margin-top: 30px;
}

.rsa-structure-box__subtitle {
    margin: 0 0 20px;

    color: #fff;
    font-size: 27px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -1px;
}

.rsa-structure-box__text--top {
    font-size: 24px;
    line-height:27px;
}
/* Tablet */

@media (max-width: 991px) {

    .rsa-structure-box__inner {
        padding: 35px;
    }

    .rsa-structure-box__top,
    .rsa-structure-box__bottom {
        gap: 35px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .rsa-structure-box {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .rsa-structure-box__inner {
        padding: 30px 20px;
    }

    .rsa-structure-box__title {
        font-size: 28px;
    }

    .rsa-structure-box__top,
    .rsa-structure-box__bottom {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsa-structure-box__bottom {
        margin-top: 25px;
    }

    .rsa-structure-box__subtitle {
        font-size: 25px;
    }

    .rsa-structure-box__text {
        font-size: 17px;
    }
    .rsa-structure-box__text--top {
font-size: 20px !important;
    line-height: 25px !important;
}
    .two-columns__highlight {
  color: var(--color-blue-3);
  font-size: 22px;
  line-height: 24px;
  letter-spacing: -1px;
}

}
/* =========================================================
   RSA - GALLERY
   ========================================================= */

.rsa-gallery {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 35px;

    margin-top: 35px;
    margin-bottom: 35px;
}

.rsa-gallery__image {
    min-width: 0;
}

.rsa-gallery__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.rsa-gallery__image--large {
    aspect-ratio: 2 / 1;
}

.rsa-gallery__image--small {
    aspect-ratio: 1 / 1;
}

@media (max-width: 767px) {

    .rsa-gallery {
        grid-template-columns: 1fr;
        gap: 20px;

        margin-top: 25px;
        margin-bottom: 25px;
    }

}
/* =========================================================
   RSA - CTA
   ========================================================= */

.rsa-cta {
    margin-bottom: 50px;
    padding: 30px;

    background-color: #6C9E36;
    background-image: url("../images/pattern-table-green.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;

    border-radius: 10px;

    text-align: center;
    color: #fff;
}

.rsa-cta__text {
    margin-bottom: 15px;

    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.rsa-cta__button .btn {
    background: #fff;
    color: #3D93A8;
}

.rsa-cta__button .btn:hover {
    background: #3D93A8;
    color: #fff;
}

@media (max-width: 767px) {

    .rsa-cta {
        margin-bottom: 35px;
        padding: 25px 20px;
    }

    .rsa-cta__text {
        font-size: 18px;
    }

}
/* =========================================================
   RSA - FISIOTERAPIA E ATTIVITA
   ========================================================= */

.rsa-physio {
    margin-top: 45px;
    margin-bottom: 40px;
}

.rsa-physio__inner {
    padding: 45px;

    background-color: #3D93A8;
    background-image: url("../images/pattern-table-blue.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;
    color: #fff;
}
.rsa-physio__right .rsa-physio__text {
  margin-top: 0;
  margin-bottom: 40px;
}

.rsa-physio__title {
    margin: 0 0 25px;

    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -1px;
}

.rsa-physio__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}

.rsa-physio__left,
.rsa-physio__right {
    min-width: 0;
}

.rsa-physio__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.rsa-physio__text {
    margin-top: 25px;

    font-size: 18px;
    line-height: 1.3;
}

.rsa-physio__text p {
    margin: 0 0 18px;
}

.rsa-physio__text p:last-child {
    margin-bottom: 0;
}

.rsa-physio__highlight {
    margin-bottom: 45px;

    font-size: 30px;
    line-height: 1;
    letter-spacing: -1px;
}

.rsa-physio__highlight p {
    margin: 0 0 15px;
}

.rsa-physio__highlight p:last-child {
    margin-bottom: 0;
}

.rsa-physio__image--bottom {
    margin-top: 30px;
}


/* Tablet */

@media (max-width: 991px) {

    .rsa-physio__inner {
        padding: 35px;
    }

    .rsa-physio__grid {
        gap: 35px;
    }

}


/* Mobile */

@media (max-width: 767px) {

    .rsa-physio {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .rsa-physio__inner {
        padding: 30px 20px;
    }

    .rsa-physio__title {
        font-size: 28px;
    }

    .rsa-physio__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsa-physio__text {
        margin-top: 20px;
        font-size: 17px;
    }

    .rsa-physio__highlight {
        margin-bottom: 20px;
        font-size: 21px;
    }

    .rsa-physio__image--bottom {
        margin-top: 25px;
    }

}
/* =========================================================
   RSA - ASSISTENZA MEDICA - TESTI INFERIORI
   ========================================================= */

.rsa-salute-medical-bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    margin-bottom: 45px;
}

.rsa-salute-medical-bottom__col {
    min-width: 0;

    color: var(--color-black);
    font-size: 18px;
    line-height: 1.3;
}

.rsa-salute-medical-bottom__col p {
    margin: 0 0 18px;
}

.rsa-salute-medical-bottom__col p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {

    .rsa-salute-medical-bottom {
        grid-template-columns: 1fr;
        gap: 20px;

        margin-top: 25px;
        margin-bottom: 30px;
    }

    .rsa-salute-medical-bottom__col {
        font-size: 16px;
    }

}
/* =========================================================
   BENESSERE - DOUBLE CONTENT BOX
   ========================================================= */

.double-content-box {
    margin-top: 40px;
    margin-bottom: 40px;
}

.double-content-box__inner {
    padding: 40px;

    background-color: #2E6C8D;
    background-image: url("../images/pattern-table-blue.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;
    color: #fff;
}

.double-content-box__title {
    margin: 0 0 25px;

    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -1px;
}

.double-content-box__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px;
}

.double-content-box__column {
    min-width: 0;
}

.double-content-box__image {
    margin-bottom: 22px;
}

.double-content-box__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.double-content-box__text {
    font-size: 18px;
    line-height: 1.3;
}

.double-content-box__text p {
    margin: 0 0 18px;
}

.double-content-box__text p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {

    .double-content-box {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .double-content-box__inner {
        padding: 30px 20px;
    }

    .double-content-box__title {
        font-size: 28px;
    }

    .double-content-box__grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .double-content-box__text {
        font-size: 16px;
    }

}
/* =========================================================
   BENESSERE - SEZIONI BIANCHE
   ========================================================= */

.benessere-section {
    margin-top: 40px;
    margin-bottom: 40px;
}

.benessere-section__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: start;
}

.benessere-section__content {
    min-width: 0;
}

.benessere-section__title {
    margin: 0;

    color: var(--color-black);
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1px;
}

.benessere-section__subtitle {
    margin-top: 3px;
    margin-bottom: 20px;

    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
}

.benessere-section__highlight {
    margin-bottom: 18px;

    color: var(--color-blue-3);
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.benessere-section__highlight p {
    margin: 0;
}

.benessere-section__text {
    color: var(--color-black);
    font-size: 18px;
    line-height: 1.3;
}
.benessere-section__text p {
    margin: 0 0 18px;
}

.benessere-section__text p:last-child {
    margin-bottom: 0;
}

.benessere-section__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* =========================================================
   BENESSERE - LAVANDERIA
   ========================================================= */

.benessere-text {
    margin-top: 40px;
    margin-bottom: 40px;
}

.benessere-text__title {
    margin: 0 0 15px;

    color: var(--color-black);
    font-size: 30px;
    line-height: 1.1;
    font-weight: 800;
}

.benessere-text__content {
    color: var(--color-black);
    font-size: 18px;
    line-height: 1.3;
}

.benessere-text__content p {
    margin: 0 0 18px;
}

.benessere-text__content p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {

    .benessere-section__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .benessere-section__title,
    .benessere-text__title {
        font-size: 28px;
    }

    .benessere-section__highlight {
        font-size: 20px;
    }

    .benessere-section__text,
    .benessere-text__content {
        font-size: 16px;
    }

}
/* =========================================================
   BENESSERE - PET THERAPY
   ========================================================= */

.benessere-section__text ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.benessere-section__text li {
    position: relative;

    padding-left: 24px;
    margin-bottom: 24px;

    font-size: 18px;
    line-height: 24px;
    color: #3F434D;

    word-wrap: break-word;
    overflow-wrap: break-word;
}

.benessere-section__text li::before {
    content: "";

    position: absolute;
    left: 0;
    top: 5px;

    width: 13px;
    height: 13px;

    background-color: #3D93A8;
    border-radius: 4px;
}

.benessere-section__text li:last-child {
    margin-bottom: 0;
}
.benessere-section--pet .benessere-section__text ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.benessere-section--pet .benessere-section__text li {
    position: relative;

    padding-left: 24px;
    margin-bottom: 24px;

    font-size: 18px;
    line-height: 24px;
    color: #3F434D;

    word-wrap: break-word;
    overflow-wrap: break-word;
}

.benessere-section--pet .benessere-section__text li::before {
    content: "";

    position: absolute;
    left: 0;
    top: 5px;

    width: 13px;
    height: 13px;

    background-color: #3D93A8;
    border-radius: 4px;
}


/* =========================================================
   BENESSERE - MUSICOTERAPIA
   ========================================================= */

.benessere-musica {
    margin-top: 40px;
    margin-bottom: 40px;
}

.benessere-musica__inner {
    padding: 45px;

    background-color: #3D93A8;
    background-image: url("../images/pattern-table-blue-2.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;
    color: #fff;
}

.benessere-musica__header {
    margin-bottom: 30px;
}

.benessere-musica__title {
    margin: 0 0 6px;

    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
}

.benessere-musica__subtitle {
    color: #fff;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
}

.benessere-musica__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.benessere-musica__image {
    min-width: 0;
}

.benessere-musica__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.benessere-musica__content {
    min-width: 0;
}

.benessere-musica__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.3;
}

.benessere-musica__text p {
    margin: 0 0 20px;
}

.benessere-musica__text p:last-child {
    margin-bottom: 0;
}

.benessere-musica__text ul {
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.benessere-musica__text li {
    position: relative;

    margin: 0 0 16px;
    padding-left: 25px;

    color: #fff;
    font-size: 18px;
    line-height: 1.3;
}

.benessere-musica__text li::before {
    content: "";

    position: absolute;
    left: 0;
    top: 5px;

    width: 13px;
    height: 13px;

    background-color: #fff;
    border-radius: 4px;
}

.benessere-musica__text li:last-child {
    margin-bottom: 0;
}

.benessere-musica__cta {
    margin-top: 35px;
    text-align: center;
}

.benessere-musica__cta .btn {
    display: block;
    width: 100%;

    background: #fff;
    color: #3D93A8;
}

.benessere-musica__cta .btn:hover {
    background: #fff;
    color: #3D93A8;
}


/* MOBILE */

@media (max-width: 767px) {

    .benessere-musica {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .benessere-musica__inner {
        padding: 30px 20px;
    }

    .benessere-musica__header {
        margin-bottom: 25px;
    }

    .benessere-musica__title {
        font-size: 28px;
    }

    .benessere-musica__subtitle {
        font-size: 17px;
    }

    .benessere-musica__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .benessere-musica__text,
    .benessere-musica__text li {
        font-size: 16px;
    }

    .benessere-musica__cta {
        margin-top: 25px;
    }

}
.art-ter-h2 {
  margin-bottom: 15px;
  color: #2E6C8D;
}
.color-blu {
  color: #3D93A8;
  font-weight: 400;
  letter-spacing: -1px;
  font-size: 24px;
  line-height: 29px;
  margin-bottom: 10px;
}
@media (max-width: 767px) {

    .two-columns--blue .two-columns__inner,
    .two-columns--green .two-columns__inner {
        padding: 30px 20px;
    }
    .benessere-section--pet .benessere-section__text li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 24px;
  font-size: 16px;
  line-height: 20px;
  color: #3F434D;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

}
/* ==========================================================================
   RSA - LA GIORNATA TIPO
   ========================================================================== */

.giornata-tipo-page {
    padding-bottom: 0;
}


/* INTRO
   ========================================================================== */

.giornata-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.giornata-intro__title {
    margin: 0 0 15px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.giornata-intro__text {
    color: var(--color-blue-3);
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.giornata-intro__text p {
    margin: 0;
}

.giornata-intro__text strong {
    font-weight: 700;
}


/* RIGHE
   ========================================================================== */

.giornata-row {
    margin-bottom: 35px;
}

.giornata-row__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch;
}

.giornata-row__content {
    min-width: 0;
}

.giornata-row__image {
    min-width: 0;
}

.giornata-row__image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 340px;
    object-fit: cover;
    border-radius: 10px;
}


/* TESTI WYSIWYG
   ========================================================================== */

.giornata-text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.giornata-text p {
    margin: 0 0 20px;
}

.giornata-text p:last-child {
    margin-bottom: 0;
}

.giornata-text h3 {
    margin: 0 0 10px;
    color: var(--color-black);
    font-size: 29px;
    line-height: 1.08;
    font-weight: 700;
}
.giornata-text h3:not(:first-child) {
    margin-top: 40px;
}

.giornata-text h4 {
    margin: 0 0 12px;
    color: var(--color-blue-3);
    font-size: 24px;
    line-height: 25px;
    font-weight: 400;
}
.giornata-text h4 strong {
    font-weight: 700;
}


/* BOX COLORATI
   ========================================================================== */

.giornata-box {
    padding: 40px;
    border-radius: 10px;
    color: #fff;
    overflow: hidden;
}

.giornata-box--green {
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left bottom / auto 100%
        no-repeat;
}

.giornata-box--blue {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left bottom / auto 100%
        no-repeat;
}

.giornata-box.giornata-text,
.giornata-box.giornata-text p,
.giornata-box.giornata-text h3,
.giornata-box.giornata-text h4 {
    color: #fff;
}

.giornata-box.giornata-text h3 {
    margin-bottom: 18px;
    font-weight: normal
}

.giornata-box.giornata-text h4 {
    font-size: 26px;
    line-height: 1.15;
}

.giornata-box.giornata-text p {
    font-size: 18px;
    line-height: 1.3;
}


/* CTA FINALE
   ========================================================================== */

.giornata-cta {
    margin-top: 15px;
    margin-bottom: 50px;
}

.giornata-cta__inner {
    padding: 30px 40px;
    text-align: center;
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;
    border-radius: 10px;
}

.giornata-cta__text {
    margin-bottom: 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.giornata-cta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}

.giornata-cta__inner .btn:hover {
    background: #fff;
    color: var(--color-blue-3);
}


/* TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .giornata-intro__title {
        font-size: 34px;
    }

    .giornata-intro__text {
        font-size: 24px;
    }

    .giornata-row__grid {
        gap: 35px;
    }

    .giornata-text h3 {
        font-size: 26px;
    }

    .giornata-text h4 {
        font-size: 22px;
    }

    .giornata-box {
        padding: 32px;
    }

}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .giornata-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .giornata-intro__title {
        margin-bottom: 12px;
        font-size: 28px;
    }

    .giornata-intro__text {
        font-size: 21px;
        line-height: 1.2;
    }


    .giornata-row {
        margin-bottom: 30px;
    }

    .giornata-row__grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .giornata-row__image img {
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
    }


    .giornata-text {
        font-size: 17px;
        line-height: 1.4;
    }

    .giornata-text h3 {
        margin-bottom: 10px;
        font-size: 24px;
    }

    .giornata-text h3:not(:first-child) {
        margin-top: 30px;
    }

    .giornata-text h4 {
        font-size: 21px;
        line-height: 1.18;
    }


    .giornata-box {
        padding: 30px 22px;
    }

    .giornata-box.giornata-text h4 {
        font-size: 23px;
    }

    .giornata-box.giornata-text p {
        font-size: 16px;
    }


    .giornata-cta {
        margin-top: 5px;
        margin-bottom: 35px;
    }

    .giornata-cta__inner {
        padding: 28px 20px;
    }

    .giornata-cta__text {
        font-size: 17px;
    }

}
/* ==========================================================================
   RSA - RETTE
   ========================================================================== */


/* INTRO
   ========================================================================== */

.rette-intro {
    margin-top: 40px;
    margin-bottom: 55px;
}

.rette-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: start;
}

.rette-intro__content,
.rette-intro__image {
    min-width: 0;
}

.rette-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.rette-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rette-intro__text p {
    margin: 0 0 22px;
}

.rette-intro__text p:first-child {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.rette-intro__text p:last-child {
    margin-bottom: 0;
}

.rette-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* SEZIONI
   ========================================================================== */

.rette-section {
    margin-bottom: 45px;
}

.rette-section__title {
    margin: 0 0 20px;
    color: #6EA136;
    font-size: 30px;
    line-height: 1.15;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: -1px;
}

.rette-section__intro {
    margin-bottom: 25px;
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rette-section__intro p {
    margin: 0 0 15px;
}

.rette-section__intro p:last-child {
    margin-bottom: 0;
}


/* LISTA RETTE
   ========================================================================== */

.rette-list {
    width: 100%;
}

.rette-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 20px 0;
    border-bottom: 1px solid #D8D8D8;
}

.rette-item:first-child {
    border-top: 0;
}

.rette-item__content {
    min-width: 0;
}

.rette-item__title {
    margin-bottom: 3px;
    color: #56ACCA;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 600;
    text-transform: uppercase;
}

.rette-item__description {
    color: #000000;
    font-size: 18px;
    line-height: 1.25;
}

.rette-item__price {
    flex: 0 0 auto;
    padding:0.9rem 1.2rem;
    background: #ECECEC;
    border-radius: 12px;

    color: #3F434D;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;

    white-space: nowrap;
}


/* NUCLEO
   ========================================================================== */

.rette-section__footer-text {
    margin-top: 20px;
    color: #3F434D;
    font-size: 17px;
    line-height: 1.35;
}

.rette-section__footer-text p {
    margin: 0;
}

.rette-section__cta {
    margin-top: 30px;
    text-align: center;
}


/* CTA FINALE
   ========================================================================== */

.rette-cta {
    margin-top: 30px;
    margin-bottom: 50px;
}

.rette-cta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
}

.rette-cta__text {
    margin-bottom: 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.rette-cta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .rette-intro {
        margin-top: 30px;
        margin-bottom: 40px;
    }

    .rette-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rette-intro__title {
        font-size: 28px;
    }

    .rette-intro__text {
        font-size: 17px;
    }

    .rette-intro__text p:first-child {
        font-size: 21px;
    }


    .rette-section {
        margin-bottom: 35px;
    }

    .rette-section__title {
        font-size: 24px;
    }


    .rette-item {
        gap: 15px;
        padding: 15px 0;
    }

    .rette-item__title {
        font-size: 17px;
    }

    .rette-item__description {
        font-size: 15px;
    }

    .rette-item__price {
        padding: 10px 12px;
        font-size: 14px;
        border-radius: 10px;
    }


    .rette-section__intro,
    .rette-section__footer-text {
        font-size: 16px;
    }


    .rette-cta {
        margin-top: 20px;
        margin-bottom: 35px;
    }

    .rette-cta__inner {
        padding: 28px 20px;
    }

}
/* ==========================================================================
   RSA - INFORMAZIONI UTILI
   ========================================================================== */


/* RIGHE GENERALI
   ========================================================================== */

.info-utili-row {
    margin-top: 40px;
    margin-bottom: 40px;
}

.info-utili-row__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch;
}

.info-utili-row__content,
.info-utili-row__image {
    min-width: 0;
}

.info-utili-row__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* INTRO
   ========================================================================== */

.info-utili-row--intro {
    margin-top: 40px;
}

.info-utili__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.info-utili__intro {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.info-utili__intro p {
    margin: 0 0 20px;
}

.info-utili__intro p:last-child {
    margin-bottom: 0;
}

.info-utili__intro strong {
    font-weight: 700;
}

.info-utili__intro-cta {
    margin-top: 25px;
}


/* TESTI CENTRALI
   ========================================================================== */

.info-utili__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.info-utili__text p {
    margin: 0 0 20px;
}

.info-utili__text p:last-child {
    margin-bottom: 0;
}

.info-utili__text h3 {
    margin: 0 0 20px;
    color: var(--color-blue-3);
    font-size: 24px;
    line-height: 1.18;
    font-weight: 400;
}

.info-utili__text h3 strong {
    font-weight: 700;
}


/* CTA CARTA DEI SERVIZI - BLU
   ========================================================================== */

.info-carta {
    margin-top: 45px;
    margin-bottom: 30px;
}

.info-carta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}

.info-carta__text {
    margin-bottom: 18px;
    color: #fff;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
}

.info-carta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}

.info-carta__inner .btn:hover {
    background: #fff;
    color: var(--color-blue-3);
}


/* CTA FINALE - VERDE
   ========================================================================== */

.info-cta {
    margin-top: 0;
    margin-bottom: 50px;
}

.info-cta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
}

.info-cta__text {
    margin-bottom: 18px;
    color: #fff;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
}

.info-cta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}

.info-cta__inner .btn:hover {
    background: #fff;
    color: var(--color-blue-3);
}


/* TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .info-utili-row__grid {
        gap: 35px;
    }

    .info-utili__title {
        font-size: 34px;
    }

    .info-utili__intro {
        font-size: 24px;
    }

    .info-utili__text {
        font-size: 17px;
    }

    .info-utili__text h3 {
        font-size: 22px;
    }

}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .info-utili-row {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .info-utili-row__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .info-utili__title {
        margin-bottom: 14px;
        font-size: 28px;
    }

    .info-utili__intro {
        font-size: 21px;
        line-height: 1.2;
    }

    .info-utili__intro-cta {
        margin-top: 22px;
    }


    .info-utili__text {
        font-size: 17px;
        line-height: 1.4;
    }

    .info-utili__text h3 {
        font-size: 21px;
    }


    .info-utili-row__image img {
        width: 100%;
        height: auto;
    }


    .info-carta {
        margin-top: 35px;
        margin-bottom: 25px;
    }

    .info-carta__inner {
        padding: 28px 20px;
    }

    .info-carta__text {
        font-size: 17px;
    }


    .info-cta {
        margin-bottom: 35px;
    }

    .info-cta__inner {
        padding: 28px 20px;
    }

    .info-cta__text {
        font-size: 17px;
    }

}
/* ==========================================================================
   RSA - DOMANDA DI AMMISSIONE
   ========================================================================== */


/* INTRO
   ========================================================================== */

.ammissione-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.ammissione-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ammissione-intro__content,
.ammissione-intro__image {
    min-width: 0;
}

.ammissione-intro__title {
    margin: 0 0 10px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 700;
}

.ammissione-intro__subtitle {
    margin-bottom: 12px;
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
    font-weight: 400;
}

.ammissione-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ammissione-intro__text p {
    margin: 0 0 20px;
}

.ammissione-intro__text p:last-child {
    margin-bottom: 0;
}

.ammissione-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* CTA INTRO
   ========================================================================== */

.ammissione-intro__cta {
    margin-top: 30px;
    text-align: center;
}


/* BLOCCO PRINCIPALE
   ========================================================================== */

.ammissione-main {
    margin-top: 45px;
    margin-bottom: 50px;
}

.ammissione-main__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}


/* DOCUMENTI - COLONNA SINISTRA
   ========================================================================== */

.ammissione-docs {
    padding: 35px 30px;
    background: #F5F2F2;
    border-radius: 10px;
}

.ammissione-docs__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ammissione-docs__text p {
    margin: 0 0 20px;
}

.ammissione-docs__text p:last-child {
    margin-bottom: 0;
}

.ammissione-docs__text h2 {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
}

.ammissione-docs__text h3 {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 24px;
    line-height: 1.15;
    font-weight: 700;
}

.ammissione-docs__text h3 {
    color: var(--color-blue-3);
    font-size: 25px;
}
.ammissione-docs__text h2:not(:first-child),
.ammissione-docs__text h3:not(:first-child) {
    margin-top: 28px;
}

.ammissione-docs__text strong {
    font-weight: 700;
}

/* LISTE DOCUMENTI
   ========================================================================== */

.ammissione-docs__text ul {
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.ammissione-docs__text li {
    position: relative;
    margin-bottom: 16px;
    padding-left: 24px;
    color: #3F434D;
    font-size: 17px;
    line-height: 1.35;
}

.ammissione-docs__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    width: 10px;
    height: 10px;
    background: #3D93A8;
    border-radius: 2px;
}

.ammissione-docs__text li:last-child {
    margin-bottom: 0;
}


/* CTA QUESTIONARIO
   ========================================================================== */

.ammissione-docs__cta {
    margin-top: 25px;
}


/* PROCEDURA - COLONNA DESTRA
   ========================================================================== */

.ammissione-procedura {
    min-width: 0;
    padding: 35px 30px
}

.ammissione-procedura__title {
    margin: 0 0 25px;
    color: var(--color-black);
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
}

.ammissione-procedura__text {
    color: #3F434D;
    font-size: 17px;
    line-height: 1.35;
}


/* LISTA NUMERATA
   ========================================================================== */

.ammissione-procedura__text ol {
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: procedura-step;
}

.ammissione-procedura__text li {
    position: relative;
    margin-bottom: 24px;
    padding-left: 45px;
    counter-increment: procedura-step;
}

.ammissione-procedura__text li::before {
    content: counter(procedura-step);
    position: absolute;
    left: 0;
    top: 0;
    color: #3D93A8;
    font-size: 26px;
    line-height: 1;
    font-weight: 700;
}

.ammissione-procedura__text li:last-child {
    margin-bottom: 0;
}

.ammissione-procedura__text strong {
    font-weight: 700;
}


/* IMMAGINE PROCEDURA
   ========================================================================== */

.ammissione-procedura__image {
    margin-top: 35px;
}

.ammissione-procedura__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* CTA FINALE
   ========================================================================== */

.ammissione-cta {
    margin-top: 20px;
    margin-bottom: 50px;
}

.ammissione-cta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
}

.ammissione-cta__text {
    margin-bottom: 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.ammissione-cta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}

.ammissione-cta__inner .btn:hover {
    background: #fff;
    color: var(--color-blue-3);
}
/* Lista annidata documenti */

.ammissione-docs__text ul ul {
    margin: 18px 0 0;
    padding-left: 22px;
    list-style: disc;
}

.ammissione-docs__text ul ul li {
    margin-bottom: 10px;
    padding-left: 0;
    font-size: 17px;
    line-height: 1.35;
}

/* Toglie il quadratino azzurro dal secondo livello */
.ammissione-docs__text ul ul li::before {
    display: none;
}

.ammissione-docs__text ul ul li:last-child {
    margin-bottom: 0;
}


/* TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .ammissione-intro__grid,
    .ammissione-main__grid {
        gap: 35px;
    }

    .ammissione-intro__title {
        font-size: 34px;
    }

    .ammissione-intro__subtitle {
        font-size: 24px;
    }

    .ammissione-procedura__title {
        font-size: 27px;
    }

    .ammissione-docs {
        padding: 30px 25px;
    }

}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .ammissione-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .ammissione-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ammissione-intro__title {
        margin-bottom: 8px;
        font-size: 28px;
    }

    .ammissione-intro__subtitle {
        margin-bottom: 12px;
        font-size: 21px;
    }

    .ammissione-intro__text {
        font-size: 17px;
        line-height: 1.4;
    }

    .ammissione-intro__cta {
        margin-top: 25px;
    }


    .ammissione-main {
        margin-top: 35px;
        margin-bottom: 35px;
    }

    .ammissione-main__grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }


    .ammissione-docs {
        padding: 28px 22px;
    }

    .ammissione-docs__text {
        font-size: 17px;
    }

    .ammissione-docs__text h2 {
        font-size: 24px;
    }

    .ammissione-docs__text h3 {
        font-size: 20px;
    }

    .ammissione-docs__text li {
        font-size: 16px;
    }


    .ammissione-procedura__title {
        margin-bottom: 22px;
        font-size: 25px;
    }

    .ammissione-procedura__text {
        font-size: 16px;
    }

    .ammissione-procedura__text li {
        margin-bottom: 22px;
        padding-left: 38px;
    }

    .ammissione-procedura__text li::before {
        font-size: 23px;
    }

    .ammissione-procedura__image {
        margin-top: 30px;
    }


    .ammissione-cta {
        margin-top: 10px;
        margin-bottom: 35px;
    }

    .ammissione-cta__inner {
        padding: 28px 20px;
    }

    .ammissione-cta__text {
        font-size: 17px;
    }

}
/* ==========================================================================
   OSPEDALE DI COMUNITÀ - COS'È
   ========================================================================== */


/* ORARI E VISITE
   ========================================================================== */

.odc-orari {
    margin-top: 40px;
    margin-bottom: 40px;
}

.odc-orari__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.odc-orari__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.odc-orari__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 85px;
}

.odc-orari__column {
    color: #fff;
    font-size: 18px;
    line-height: 1.3;
}

.odc-orari__column p {
    margin: 0 0 18px;
}

.odc-orari__column p:last-child {
    margin-bottom: 0;
}

.odc-orari__column strong {
    font-weight: 700;
}

.odc-orari__column h3 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 24px;
    line-height: 27px;
    font-weight: 400;
}


/* GALLERY
   ========================================================================== */

.odc-gallery {
    margin-top: 40px;
    margin-bottom: 50px;
}

.odc-gallery__grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 35px;
}

.odc-gallery__big,
.odc-gallery__small {
    min-width: 0;
}

.odc-gallery img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.odc-gallery__big {
    aspect-ratio: 2 / 1;
}

.odc-gallery__small {
    aspect-ratio: 1 / 1;
}


/* TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .odc-orari__grid {
        gap: 30px;
    }

    .odc-orari__column {
        font-size: 17px;
    }

}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .odc-orari {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .odc-orari__inner {
        padding: 30px 22px;
    }

    .odc-orari__title {
        font-size: 26px;
    }

    .odc-orari__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .odc-orari__column {
        font-size: 17px;
    }


    .odc-gallery {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .odc-gallery__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .odc-gallery__big,
    .odc-gallery__small {
        aspect-ratio: auto;
    }

    .odc-gallery img {
        height: auto;
    }
    .odc-orari__column h3 {
  margin: 0px;
  color: #fff;
  font-size: 20px;
  line-height: 25px;

}

}
/* ==========================================================================
   OSPEDALE DI COMUNITÀ - A CHI È DESTINATO
   ========================================================================== */

.odc-destinato {
    margin-top: 40px;
    margin-bottom: 50px;
}

.odc-destinato__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}

.odc-destinato__content,
.odc-destinato__image {
    min-width: 0;
}

.odc-destinato__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.odc-destinato__intro {
    margin-bottom: 25px;
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.odc-destinato__intro p {
    margin: 0;
}

.odc-destinato__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.odc-destinato__text h3 {
    margin: 0 0 6px;
    color: #2E6C8D;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 700;
}

.odc-destinato__text h3:not(:first-child) {
    margin-top: 30px;
}

.odc-destinato__text p {
    margin: 0;
}

.odc-destinato__text strong {
    font-weight: 700;
}

.odc-destinato__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TABLET */

@media (max-width: 991px) {

    .odc-destinato__grid {
        gap: 40px;
    }

    .odc-destinato__title {
        font-size: 34px;
    }

    .odc-destinato__intro {
        font-size: 24px;
    }

    .odc-destinato__text h3 {
        font-size: 22px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .odc-destinato {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .odc-destinato__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .odc-destinato__title {
        margin-bottom: 14px;
        font-size: 28px;
    }

    .odc-destinato__intro {
        margin-bottom: 22px;
        font-size: 21px;
        line-height: 1.2;
    }

    .odc-destinato__text {
        font-size: 17px;
        line-height: 1.4;
    }

    .odc-destinato__text h3 {
        font-size: 21px;
    }

    .odc-destinato__text h3:not(:first-child) {
        margin-top: 25px;
    }

}
/* ==========================================================================
   OSPEDALE DI COMUNITÀ - PER LA SUA SALUTE
   ========================================================================== */

.odc-salute {
    margin-top: 40px;
    margin-bottom: 50px;
}

.odc-salute__title {
    margin: 0 0 20px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px
}

.odc-salute__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
    margin-bottom: 35px;
}

.odc-salute__row:last-child {
    margin-bottom: 0;
}

.odc-salute__content,
.odc-salute__image {
    min-width: 0;
}

.odc-salute__subtitle {
    margin: 0 0 15px;
    color: #2E6C8D;
    font-size: 30px;
    line-height: 32px;
    font-weight: 700;
}

.odc-salute__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.odc-salute__text p {
    margin: 0 0 22px;
}

.odc-salute__text p:last-child {
    margin-bottom: 0;
}

.odc-salute__text strong {
    font-weight: 700;
}

.odc-salute__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TABLET */

@media (max-width: 991px) {

    .odc-salute__row {
        gap: 35px;
    }

    .odc-salute__title {
        font-size: 34px;
    }

    .odc-salute__subtitle {
        font-size: 25px;
    }

    .odc-salute__text {
        font-size: 17px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .odc-salute {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .odc-salute__title {
        margin-bottom: 22px;
        font-size: 28px;
    }

    .odc-salute__row {
        grid-template-columns: 1fr;
        gap: 22px;
        margin-bottom: 35px;
    }

    .odc-salute__subtitle {
        font-size: 23px;
        line-height: 25px
    }

    .odc-salute__text {
        font-size: 17px;
        line-height: 1.4;
    }

}
/* ==========================================================================
   OSPEDALE DI COMUNITÀ - PER IL SUO BENESSERE
   ========================================================================== */

.odc-benessere {
    margin-top: 40px;
    margin-bottom: 30px;
}

.odc-benessere__title {
    margin: 0;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}


/* RISTORAZIONE
   ========================================================================== */

.odc-ristorazione {
    margin-bottom: 45px;
}

.odc-ristorazione__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.odc-ristorazione__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.odc-ristorazione__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px;
}

.odc-ristorazione__column {
    min-width: 0;
}

.odc-ristorazione__image {
    margin-bottom: 20px;
}

.odc-ristorazione__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.odc-ristorazione__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.odc-ristorazione__text p {
    margin: 0 0 18px;
}

.odc-ristorazione__text p:last-child {
    margin-bottom: 0;
}

.odc-ristorazione__text strong {
    font-weight: 700;
}


/* PARRUCCHIERE ED ESTETISTA
   ========================================================================== */

.odc-cura {
    margin-bottom: 40px;
}

.odc-cura__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.odc-cura__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.odc-cura__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.odc-cura__image,
.odc-cura__text {
    min-width: 0;
}

.odc-cura__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.odc-cura__text {
    color: #fff;
    font-size: 17px;
    line-height: 1.35;
}

.odc-cura__text p {
    margin: 0 0 18px;
}

.odc-cura__text p:last-child {
    margin-bottom: 0;
}

.odc-cura__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 26px;
    line-height: 1.15;
    font-weight: 400;
}

.odc-cura__text strong {
    font-weight: 700;
}


/* LISTINI
   ========================================================================== */

.odc-listini {
    margin-bottom: 50px;
}

.odc-listini__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
}

.odc-listino {
    min-width: 0;
}

.odc-listino__title {
    margin: 0 0 18px;
    color: #6EA136;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 400;
    letter-spacing: -1px;
}

.odc-listino__items {
    width: 100%;
}

.odc-listino__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    padding: 13px 0;
    border-bottom: 1px solid #D8D8D8;
}

.odc-listino__service {
    min-width: 0;

    color: #56ACCA;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 600;
    text-transform: uppercase;
}

.odc-listino__price {
    flex: 0 0 auto;

    padding: 9px 1.2rem;
    background: #ECECEC;
    border-radius: 15px;

    color: #3F434D;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;

    white-space: nowrap;
}

.odc-ristorazione__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 27px;
}
.odc-cura__text h2 {
  font-weight: normal;
  font-size: 30px;
  line-height: 33px;
  margin-top: 0;
}


/* TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .odc-benessere__title {
        font-size: 34px;
    }

    .odc-ristorazione__grid,
    .odc-cura__grid {
        gap: 30px;
    }

    .odc-listini__grid {
        gap: 35px;
    }

}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .odc-benessere {
        margin-top: 30px;
        margin-bottom: 25px;
    }

    .odc-benessere__title {
        font-size: 28px;
    }


    .odc-ristorazione {
        margin-bottom: 30px;
    }

    .odc-ristorazione__inner {
        padding: 30px 22px;
    }

    .odc-ristorazione__title {
        font-size: 25px;
    }

    .odc-ristorazione__grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }


    .odc-cura {
        margin-bottom: 30px;
    }

    .odc-cura__inner {
        padding: 30px 22px;
    }

    .odc-cura__title {
        font-size: 25px;
    }

    .odc-cura__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .odc-cura__text h3 {
        font-size: 22px;
    }


    .odc-listini {
        margin-bottom: 35px;
    }

    .odc-listini__grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .odc-listino__title {
        font-size: 24px;
    }

    .odc-listino__service {
        font-size: 16px;
    }

    .odc-listino__price {
        padding: 8px 12px;
        font-size: 13px;
    }
    .odc-cura__text h2 {

  font-size: 22px;
  line-height: 27px;

}
    .odc-ristorazione__text h3 {
  font-weight: normal;
  font-size: 20px;
  line-height: 25px;
}
    .odc-ristorazione__text {
  color: #fff;
  font-size: 16px;
  line-height: 1.35;
}

}
/* ==========================================================================
   OSPEDALE DI COMUNITÀ - COME RICHIEDERE IL SERVIZIO
   ========================================================================== */

.odc-accesso-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.odc-accesso-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.odc-accesso-intro__content,
.odc-accesso-intro__image {
    min-width: 0;
}

.odc-accesso-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.odc-accesso-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.odc-accesso-intro__text p {
    margin: 0 0 18px;
}

.odc-accesso-intro__text p:first-child {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.odc-accesso-intro__text p:last-child {
    margin-bottom: 0;
}

.odc-accesso-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* BOX */

.odc-accesso-boxes {
    margin-bottom: 45px;
}

.odc-accesso-boxes__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: stretch;
}

.odc-accesso-box {
    padding: 35px 30px;
    border-radius: 10px;
}

.odc-accesso-box--blue {
    color: #fff;
    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;
}

.odc-accesso-box--gray {
    background: #F5F2F2;
    color: #3F434D;
}

.odc-accesso-box__title {
    margin: 0 0 18px;
    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1px;
}

.odc-accesso-box--blue .odc-accesso-box__title {
    color: #fff;
}

.odc-accesso-box--gray .odc-accesso-box__title {
    color: var(--color-black);
}

.odc-accesso-box__text {
    font-size: 17px;
    line-height: 1.35;
}

.odc-accesso-box__text p {
    margin: 0 0 18px;
}

.odc-accesso-box__text p:last-child {
    margin-bottom: 0;
}

.odc-accesso-box--blue .odc-accesso-box__text,
.odc-accesso-box--blue .odc-accesso-box__text p,
.odc-accesso-box--blue .odc-accesso-box__text li {
    color: #fff;
}


/* LISTA BOX BLU */

.odc-accesso-box__text ul {
    margin: 0 0 35px;
    padding: 0;
    list-style: none;
}

.odc-accesso-box__text li {
    position: relative;
    margin-bottom: 14px;
    padding-left: 24px;
}

.odc-accesso-box__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 11px;
    height: 11px;
    background: #fff;
    border-radius: 3px;
}

.odc-accesso-box__text li:last-child {
    margin-bottom: 0;
}

.odc-accesso-box__cta {
    margin-top: 25px;
}

.odc-accesso-box--blue .btn {
    background: #fff;
    color: var(--color-blue-3);
}


/* CTA CARTA SERVIZI */

.odc-accesso-carta {
    margin-bottom: 50px;
}

.odc-accesso-carta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
}

.odc-accesso-carta__text {
    margin-bottom: 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.odc-accesso-carta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}

.odc-accesso-intro__text h2, .hospice-intro__text h2, .hospice-serenita-intro__text h2, .cpd-serenita-intro__text h2, .cpd-intro__text h2, .cpd-accesso-intro__text h2, .nucleo-intro__text h2 {
  font-weight: normal;
  font-size: 30px;
  line-height: 34px;
  letter-spacing: -1px;
  color: #3D93A8;
  margin: 20px 0 10px;
}
.odc-accesso-box__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 29px;
  letter-spacing: -0.5px;
	margin: 15px 0 25px;
}

/* TABLET */

@media (max-width: 991px) {

    .odc-accesso-intro__grid,
    .odc-accesso-boxes__grid {
        gap: 35px;
    }

    .odc-accesso-intro__title {
        font-size: 34px;
    }

    .odc-accesso-intro__text p:first-child {
        font-size: 24px;
    }

    .odc-accesso-box__title {
        font-size: 25px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .odc-accesso-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .odc-accesso-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .odc-accesso-intro__title {
        font-size: 28px;
    }

    .odc-accesso-intro__text {
        font-size: 17px;
    }

    .odc-accesso-intro__text p:first-child {
        font-size: 21px;
    }


    .odc-accesso-boxes {
        margin-bottom: 30px;
    }

    .odc-accesso-boxes__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .odc-accesso-box {
        padding: 30px 22px;
    }

    .odc-accesso-box__title {
        font-size: 22px;
        line-height: 27px;
    }

    .odc-accesso-box__text {
        font-size: 16px;
    }


    .odc-accesso-carta {
        margin-bottom: 35px;
    }

    .odc-accesso-carta__inner {
        padding: 28px 20px;
    }

    .odc-accesso-carta__text {
        font-size: 17px;
    }
    .odc-accesso-intro__text h2, .hospice-intro__text h2, .hospice-serenita-intro__text h2, .cpd-serenita-intro__text h2, .cpd-intro__text h2, .cpd-accesso-intro__text h2, .nucleo-intro__text h2 {
  font-weight: normal;
  font-size: 22px;
  line-height: 24px;
  letter-spacing: -1px;
  color: #3D93A8;
  margin: 20px 0 10px;
}
    .odc-accesso-box__text h3 {
  font-size: 20px;
  line-height: 25px;

}

}
/* ==========================================================================
   HOSPICE - COS'È
   ========================================================================== */


/* INTRO
   ========================================================================== */

.hospice-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.hospice-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.hospice-intro__content,
.hospice-intro__image {
    min-width: 0;
}

.hospice-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.hospice-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-intro__text p {
    margin: 0 0 18px;
}

.hospice-intro__text p:first-child {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.hospice-intro__text p:last-child {
    margin-bottom: 0;
}

.hospice-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* AMBIENTE PROTETTO
   ========================================================================== */

.hospice-ambiente {
    margin-bottom: 45px;
}

.hospice-ambiente__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-ambiente__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.hospice-ambiente__grid {
    display: grid;
    grid-template-columns: 0.72fr 1.28fr;
    gap: 40px;
    align-items: start;
}

.hospice-ambiente__text,
.hospice-ambiente__caption {
    color: #fff;
    font-size: 17px;
    line-height: 1.35;
}

.hospice-ambiente__text p,
.hospice-ambiente__caption p {
    margin: 0 0 18px;
}

.hospice-ambiente__text p:last-child,
.hospice-ambiente__caption p:last-child {
    margin-bottom: 0;
}

.hospice-ambiente__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.hospice-ambiente__caption {
    margin-top: 15px;
    font-size: 15px;
}


/* SOSTEGNO
   ========================================================================== */

.hospice-sostegno {
    margin-bottom: 50px;
}

.hospice-sostegno__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-sostegno__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.hospice-sostegno__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.hospice-sostegno__image,
.hospice-sostegno__text {
    min-width: 0;
}

.hospice-sostegno__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.hospice-sostegno__text {
    color: #fff;
    font-size: 17px;
    line-height: 1.35;
}

.hospice-sostegno__text p {
    margin: 0 0 18px;
}

.hospice-sostegno__text p:last-child {
    margin-bottom: 0;
}

.hospice-sostegno__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 25px;
    line-height: 1.15;
    font-weight: 400;
}
.hospice-sostegno__text h2 {
  font-size: 30px;
  font-weight: normal;
  margin: 0 0 25px;
  line-height: 34px;
  letter-spacing: -1px;
}


/* TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .hospice-intro__grid {
        gap: 35px;
    }

    .hospice-intro__title {
        font-size: 34px;
    }

    .hospice-intro__text p:first-child {
        font-size: 24px;
    }

    .hospice-ambiente__grid,
    .hospice-sostegno__grid {
        gap: 30px;
    }

}


/* MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .hospice-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .hospice-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hospice-intro__title {
        font-size: 28px;
    }

    .hospice-intro__text {
        font-size: 17px;
    }

    .hospice-intro__text p:first-child {
        font-size: 21px;
    }


    .hospice-ambiente {
        margin-bottom: 30px;
    }

    .hospice-ambiente__inner {
        padding: 30px 22px;
    }

    .hospice-ambiente__title {
        font-size: 25px;
    }

    .hospice-ambiente__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hospice-ambiente__text {
        font-size: 17px;
    }

    .hospice-ambiente__caption {
        font-size: 15px;
    }


    .hospice-sostegno {
        margin-bottom: 35px;
    }

    .hospice-sostegno__inner {
        padding: 30px 22px;
    }

    .hospice-sostegno__title {
        font-size: 25px;
    }

    .hospice-sostegno__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hospice-sostegno__text {
        font-size: 17px;
    }

    .hospice-sostegno__text h3 {
        font-size: 22px;
    }
	.hospice-sostegno__text h2 {
  font-size: 24px;
  line-height: 29px;
}

}
/* ==========================================================================
   HOSPICE - PER LA SUA SERENITÀ
   ========================================================================== */


/* INTRO */

.hospice-serenita-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.hospice-serenita-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.hospice-serenita-intro__content,
.hospice-serenita-intro__image {
    min-width: 0;
}

.hospice-serenita-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.hospice-serenita-intro__text {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.hospice-serenita-intro__text p {
    margin: 0;
}

.hospice-serenita-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* PROFESSIONALITÀ */

.hospice-prof {
    margin-bottom: 45px;
}

.hospice-prof__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-prof__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1px;
}

.hospice-prof__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.hospice-prof__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-prof__text p {
    margin: 0 0 18px;
}

.hospice-prof__text ul {
    margin: 18px 0;
    padding: 0;
    list-style: none;
}

.hospice-prof__text li {
    position: relative;
    margin-bottom: 13px;
    padding-left: 24px;
    color: #fff;
}

.hospice-prof__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 11px;
    height: 11px;
    background: #fff;
    border-radius: 3px;
}

.hospice-prof__text h3 {
    margin: 20px 0 0;
    color: #fff;
    font-size: 23px;
    line-height: 1.15;
    font-weight: 400;
}

.hospice-prof__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.hospice-prof__footer {
    margin-top: 20px;
    color: #fff;
    font-size: 15px;
    line-height: 1.35;
}

.hospice-prof__footer p {
    margin: 0;
}


/* AFFETTO FEDELE */

.hospice-affetto {
    margin-bottom: 45px;
}

.hospice-affetto__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-affetto__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.hospice-affetto__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.hospice-affetto__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.hospice-affetto__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
    /*! font-weight: normal; */
}

.hospice-affetto__text p {
    margin: 0 0 18px;
}

.hospice-affetto__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 400;
}


/* ACCOGLIENZA */

.hospice-accoglienza {
    margin-bottom: 50px;
}

.hospice-accoglienza__inner {
    padding: 40px;
    background: #F5F2F2;
    border-radius: 10px;
}

.hospice-accoglienza__title {
    margin: 0 0 25px;
    color: var(--color-black);
    font-size: 30px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -1px;
}

.hospice-accoglienza__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

.hospice-accoglienza__column {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-accoglienza__column p {
    margin: 0 0 18px;
}

.hospice-accoglienza__column p:last-child {
    margin-bottom: 0;
}

.hospice-affetto__text h2 {
  font-weight: normal;
  letter-spacing: -1px;
  font-size: 30px;
  margin: 0px 0 20px 0;
  line-height: 34px;
}

.hospice-accoglienza__column h3 {
  color: #3F434D;
  font-size: 24px;
  line-height: 29px;
  margin: 0 0 20px;
  font-weight: normal;
  letter-spacing: -1px;
}
/* TABLET */

@media (max-width: 991px) {

    .hospice-serenita-intro__grid {
        gap: 35px;
    }

    .hospice-serenita-intro__title {
        font-size: 34px;
    }

    .hospice-serenita-intro__text {
        font-size: 24px;
    }

    .hospice-prof__grid,
    .hospice-affetto__grid {
        gap: 30px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .hospice-serenita-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .hospice-serenita-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hospice-serenita-intro__title {
        font-size: 28px;
    }

    .hospice-serenita-intro__text {
        font-size: 21px;
    }


    .hospice-prof,
    .hospice-affetto {
        margin-bottom: 30px;
    }

    .hospice-prof__inner,
    .hospice-affetto__inner,
    .hospice-accoglienza__inner {
        padding: 30px 22px;
    }

    .hospice-prof__title,
    .hospice-affetto__title,
    .hospice-accoglienza__title {
        font-size: 25px;
    }

    .hospice-prof__grid,
    .hospice-affetto__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hospice-prof__text,
    .hospice-affetto__text {
        font-size: 16px;
    }


    .hospice-accoglienza {
        margin-bottom: 35px;
    }

    .hospice-accoglienza__grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .hospice-accoglienza__column {
        font-size: 17px;
    }
    .hospice-prof__text h3 {
  font-size: 20px;
  line-height:25px;

}
    .hospice-affetto__text h2 { font-size:22px; font-weight: normal; line-height: 27px; margin-top: 0}

}
/* ==========================================================================
   HOSPICE - INFORMAZIONI UTILI
   ========================================================================== */


/* TITOLO PAGINA */

.hospice-info-header {
    margin-top: 40px;
    margin-bottom: 35px;
}

.hospice-info-header__title {
    margin: 0;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}


/* ORARI DI VISITA */

.hospice-info-orari {
    margin-bottom: 45px;
}

.hospice-info-orari__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-info-orari__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.hospice-info-orari__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: start;
}

.hospice-info-orari__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-info-orari__text p {
    margin: 0 0 20px;
}

.hospice-info-orari__text p:last-child {
    margin-bottom: 0;
}

.hospice-info-orari__text strong {
    font-weight: 700;
}

.hospice-info-orari__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 400;
}


/* PER L'ULTIMO SALUTO */

.hospice-info-saluto {
    margin-bottom: 50px;
}

.hospice-info-saluto__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-info-saluto__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.hospice-info-saluto__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.hospice-info-saluto__image,
.hospice-info-saluto__text {
    min-width: 0;
}

.hospice-info-saluto__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.hospice-info-saluto__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-info-saluto__text p {
    margin: 0 0 20px;
}

.hospice-info-saluto__text p:last-child {
    margin-bottom: 0;
}

.hospice-info-saluto__text h3 {
    margin: 0 0 20px;
    color: #fff;
    font-size: 26px;
    line-height: 1.15;
    font-weight: 400;
}

.hospice-info-saluto__text strong {
    font-weight: 700;
}

.hospice-info-saluto__text h2 {
  font-size: 30px;
  font-weight: normal;
  line-height: 34px;
  letter-spacing: -1px;
  margin: 0px 0 20px 0;
}

/* TABLET */

@media (max-width: 991px) {

    .hospice-info-header__title {
        font-size: 34px;
    }

    .hospice-info-orari__grid {
        gap: 35px;
    }

    .hospice-info-saluto__grid {
        gap: 30px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .hospice-info-header {
        margin-top: 30px;
        margin-bottom: 25px;
    }

    .hospice-info-header__title {
        font-size: 28px;
    }


    .hospice-info-orari {
        margin-bottom: 30px;
    }

    .hospice-info-orari__inner {
        padding: 30px 22px;
    }

    .hospice-info-orari__title {
        font-size: 25px;
    }

    .hospice-info-orari__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hospice-info-orari__text {
        font-size: 18px;
        line-height: 1.35;
    }


    .hospice-info-saluto {
        margin-bottom: 35px;
    }

    .hospice-info-saluto__inner {
        padding: 30px 22px;
    }

    .hospice-info-saluto__title {
        font-size: 25px;
    }

    .hospice-info-saluto__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hospice-info-saluto__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .hospice-info-saluto__text h3 {
        font-size: 23px;
    }
    .hospice-info-saluto__text h2 {
  font-size: 22px;

  line-height: 27px;

}
    .hospice-info-orari__text h3 {
  font-size: 20px;
  line-height:25px;

}

}
/* ==========================================================================
   HOSPICE - TESTIMONIANZE
   ========================================================================== */


/* INTRO */

.hospice-testimonianze-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.hospice-testimonianze-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.hospice-testimonianze-intro__content,
.hospice-testimonianze-intro__image {
    min-width: 0;
}

.hospice-testimonianze-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.hospice-testimonianze-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-testimonianze-intro__text p {
    margin: 0 0 20px;
}

.hospice-testimonianze-intro__text p:last-child {
    margin-bottom: 0;
}

.hospice-testimonianze-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* GALLERY */

.hospice-testimonianze-gallery {
    margin-bottom: 50px;
}

.hospice-testimonianze-gallery__inner {
    padding: 40px;
    background: #F5F2F2;
    border-radius: 10px;
}

.hospice-testimonianze-gallery__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 45px 40px;
    align-items: start;
}

.hospice-testimonianze-gallery__item {
    display: block;
    min-width: 0;
    text-decoration: none;
}

.hospice-testimonianze-gallery__item {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    text-decoration: none;
}

.hospice-testimonianze-gallery__item img {
    display: block;

    width: auto;
    max-width: 100%;
    height: 340px;

    object-fit: contain;

    background: #fff;
    border-radius: 5px;

    box-shadow:
        0 3px 12px rgba(0, 0, 0, 0.18),
        0 1px 4px rgba(0, 0, 0, 0.12);

    transition: transform 0.2s ease;
}

.hospice-testimonianze-gallery__item:hover img {
    transform: translateY(-3px);
}


/* fallback PDF senza anteprima */

.hospice-testimonianze-gallery__pdf-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;

    min-height: 260px;
    padding: 20px;

    background: #fff;
    border-radius: 5px;

    box-shadow:
        0 3px 12px rgba(0, 0, 0, 0.18),
        0 1px 4px rgba(0, 0, 0, 0.12);
}

.hospice-testimonianze-gallery__pdf-placeholder span {
    color: #3D93A8;
    font-size: 24px;
    font-weight: 700;
}
.hospice-testimonianze-gallery__item {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
}

.hospice-testimonianze-gallery__item img {
    display: block;

    width: 280px;
    height: 340px;
    object-fit: cover;
    object-position: center top;

    border-radius: 5px;

    box-shadow:
        0 3px 12px rgba(0, 0, 0, 0.18),
        0 1px 4px rgba(0, 0, 0, 0.12);
}


/* TABLET */

@media (max-width: 991px) {

    .hospice-testimonianze-intro__grid {
        gap: 35px;
    }

    .hospice-testimonianze-intro__title {
        font-size: 34px;
    }

    .hospice-testimonianze-gallery__grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 35px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .hospice-testimonianze-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .hospice-testimonianze-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hospice-testimonianze-intro__title {
        font-size: 28px;
    }

    .hospice-testimonianze-intro__text {
        font-size: 18px;
        line-height: 1.35;
    }


    .hospice-testimonianze-gallery {
        margin-bottom: 35px;
    }

    .hospice-testimonianze-gallery__inner {
        padding: 25px 20px;
    }

    .hospice-testimonianze-gallery__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px 20px;
    }

}


@media (max-width: 420px) {

    .hospice-testimonianze-gallery__grid {
        grid-template-columns: 1fr;
    }

}
/* ==========================================================================
   HOSPICE - COME RICHIEDERE IL SERVIZIO
   ========================================================================== */


/* INTRO */

.hospice-accesso-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.hospice-accesso-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.hospice-accesso-intro__content,
.hospice-accesso-intro__image {
    min-width: 0;
}

.hospice-accesso-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.hospice-accesso-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-accesso-intro__text p {
    margin: 0 0 18px;
}

.hospice-accesso-intro__text p:last-child {
    margin-bottom: 0;
}

.hospice-accesso-intro__cta {
    margin-top: 22px;
}

.hospice-accesso-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ITER */

.hospice-accesso-iter {
    margin-bottom: 45px;
}

.hospice-accesso-iter__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.hospice-accesso-iter__title {
    margin: 0 0 28px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.hospice-accesso-iter__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.hospice-accesso-iter__left,
.hospice-accesso-iter__right {
    min-width: 0;
}

.hospice-accesso-iter__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.hospice-accesso-iter__text p {
    margin: 0 0 18px;
}

.hospice-accesso-iter__text p:last-child {
    margin-bottom: 0;
}

.hospice-accesso-iter__image {
    margin-bottom: 30px;
}

.hospice-accesso-iter__image--bottom {
    margin-top: 25px;
    margin-bottom: 0;
}

.hospice-accesso-iter__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.hospice-accesso-iter__subtitle {
    margin: 0 0 12px;
    color: #fff;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
}


/* CTA CARTA SERVIZI */

.hospice-accesso-carta {
    margin-bottom: 25px;
}

.hospice-accesso-carta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
}

.hospice-accesso-carta__text {
    margin-bottom: 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
}

.hospice-accesso-carta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}


/* CTA CONTATTI */

.hospice-accesso-contatti {
    margin-bottom: 50px;
}

.hospice-accesso-contatti__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}

.hospice-accesso-contatti__text {
    margin-bottom: 15px;
    color: #fff;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
}

.hospice-accesso-contatti__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}
.hospice-accesso-iter__text h3 {
  font-size: 24px;
  font-weight: normal;
  line-height: 27px;
}

/* TABLET */

@media (max-width: 991px) {

    .hospice-accesso-intro__grid,
    .hospice-accesso-iter__grid {
        gap: 35px;
    }

    .hospice-accesso-intro__title {
        font-size: 34px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .hospice-accesso-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .hospice-accesso-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hospice-accesso-intro__title {
        font-size: 28px;
    }

    .hospice-accesso-intro__text {
        font-size: 18px;
        line-height: 1.35;
    }


    .hospice-accesso-iter {
        margin-bottom: 30px;
    }

    .hospice-accesso-iter__inner {
        padding: 30px 22px;
    }

    .hospice-accesso-iter__title {
        font-size: 25px;
    }

    .hospice-accesso-iter__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .hospice-accesso-iter__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .hospice-accesso-iter__subtitle {
        font-size: 23px;
    }


    .hospice-accesso-carta,
    .hospice-accesso-contatti {
        margin-bottom: 25px;
    }

    .hospice-accesso-carta__inner,
    .hospice-accesso-contatti__inner {
        padding: 28px 20px;
    }
    .hospice-accesso-iter__text h3 {
  font-size: 20px;
  line-height: 25px;
}

}
/* ==========================================================================
   CURE PALLIATIVE DOMICILIARI - COME FUNZIONANO
   ========================================================================== */


/* INTRO */

.cpd-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.cpd-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cpd-intro__content,
.cpd-intro__image {
    min-width: 0;
}

.cpd-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.cpd-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-intro__text p {
    margin: 0 0 18px;
}

.cpd-intro__text p:first-child {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.cpd-intro__text p:last-child {
    margin-bottom: 0;
}

.cpd-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* SOSTEGNO - VERDE */

.cpd-sostegno {
    margin-bottom: 45px;
}

.cpd-sostegno__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cpd-sostegno__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cpd-sostegno__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.cpd-sostegno__image,
.cpd-sostegno__text {
    min-width: 0;
}

.cpd-sostegno__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.cpd-sostegno__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-sostegno__text p {
    margin: 0 0 18px;
}

.cpd-sostegno__text p:last-child {
    margin-bottom: 0;
}

.cpd-sostegno__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 400;
}


/* DOLORE - BLU */

.cpd-dolore {
    margin-bottom: 50px;
}

.cpd-dolore__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cpd-dolore__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cpd-dolore__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.cpd-dolore__text,
.cpd-dolore__image {
    min-width: 0;
}

.cpd-dolore__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-dolore__text p {
    margin: 0 0 18px;
}

.cpd-dolore__text p:last-child {
    margin-bottom: 0;
}

.cpd-dolore__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 26px;
    line-height: 1.15;
    font-weight: 400;
}

.cpd-dolore__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TABLET */

@media (max-width: 991px) {

    .cpd-intro__grid {
        gap: 35px;
    }

    .cpd-intro__title {
        font-size: 34px;
    }

    .cpd-intro__text p:first-child {
        font-size: 24px;
    }

    .cpd-sostegno__grid,
    .cpd-dolore__grid {
        gap: 30px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cpd-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .cpd-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cpd-intro__title {
        font-size: 28px;
    }

    .cpd-intro__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .cpd-intro__text p:first-child {
        font-size: 21px;
    }


    .cpd-sostegno,
    .cpd-dolore {
        margin-bottom: 30px;
    }

    .cpd-sostegno__inner,
    .cpd-dolore__inner {
        padding: 30px 22px;
    }

    .cpd-sostegno__title,
    .cpd-dolore__title {
        font-size: 25px;
    }

    .cpd-sostegno__grid,
    .cpd-dolore__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .cpd-sostegno__text,
    .cpd-dolore__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .cpd-sostegno__text h3,
    .cpd-dolore__text h3 {
        font-size: 20px;
        line-height: 25px
    }

}
/* ==========================================================================
   CURE PALLIATIVE DOMICILIARI - PER LA SUA SERENITÀ
   ========================================================================== */


/* INTRO */

.cpd-serenita-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.cpd-serenita-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cpd-serenita-intro__content,
.cpd-serenita-intro__image {
    min-width: 0;
}

.cpd-serenita-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.cpd-serenita-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-serenita-intro__text p {
    margin: 0 0 18px;
}

.cpd-serenita-intro__text p:first-child {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.cpd-serenita-intro__text p:last-child {
    margin-bottom: 0;
}

.cpd-serenita-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* INTERVENTI */

.cpd-interventi {
    margin-bottom: 45px;
}

.cpd-interventi__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cpd-interventi__title {
    margin: 0 0 28px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cpd-interventi__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 45px;
}

.cpd-interventi__column {
    min-width: 0;
}

.cpd-interventi__column-title {
    margin: 0 0 18px;
    color: #fff;
    font-size: 24px;
    line-height: 1.1;
    font-weight: 700;
}

.cpd-interventi__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-interventi__text p {
    margin: 0 0 18px;
}

.cpd-interventi__text p:last-child {
    margin-bottom: 0;
}


/* COME FUNZIONANO */

.cpd-come {
    margin-bottom: 50px;
}

.cpd-come__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cpd-come__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cpd-come__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.cpd-come__image,
.cpd-come__text {
    min-width: 0;
}

.cpd-come__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.cpd-come__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-come__text p {
    margin: 0 0 18px;
}

.cpd-come__text p:last-child {
    margin-bottom: 0;
}

.cpd-come__text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 400;
}


/* TABLET */

@media (max-width: 991px) {

    .cpd-serenita-intro__grid {
        gap: 35px;
    }

    .cpd-serenita-intro__title {
        font-size: 34px;
    }

    .cpd-serenita-intro__text p:first-child {
        font-size: 24px;
    }

    .cpd-interventi__grid {
        gap: 30px;
    }

    .cpd-come__grid {
        gap: 30px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cpd-serenita-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .cpd-serenita-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cpd-serenita-intro__title {
        font-size: 28px;
    }

    .cpd-serenita-intro__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .cpd-serenita-intro__text p:first-child {
        font-size: 21px;
    }


    .cpd-interventi {
        margin-bottom: 30px;
    }

    .cpd-interventi__inner {
        padding: 30px 22px;
    }

    .cpd-interventi__title {
        font-size: 25px;
    }

    .cpd-interventi__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .cpd-interventi__column-title {
        font-size: 20px;
    }

    .cpd-interventi__text {
        font-size: 16px;
        line-height: 1.25;
    }


    .cpd-come {
        margin-bottom: 35px;
    }

    .cpd-come__inner {
        padding: 30px 22px;
    }

    .cpd-come__title {
        font-size: 25px;
    }

    .cpd-come__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .cpd-come__text {
        font-size: 16px;
        line-height: 1.35;
    }

    .cpd-come__text h3 {
        font-size: 20px;
    }

}/* ==========================================================================
   CURE PALLIATIVE DOMICILIARI - COME RICHIEDERE IL SERVIZIO
   ========================================================================== */


/* INTRO */

.cpd-accesso-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.cpd-accesso-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cpd-accesso-intro__content,
.cpd-accesso-intro__image {
    min-width: 0;
}

.cpd-accesso-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.cpd-accesso-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-accesso-intro__text p {
    margin: 0 0 18px;
}

.cpd-accesso-intro__text p:first-child {
    color: var(--color-blue-3);
    font-size: 28px;
    line-height: 1.15;
}

.cpd-accesso-intro__text p:last-child {
    margin-bottom: 0;
}

.cpd-accesso-intro__cta {
    margin-top: 22px;
}

.cpd-accesso-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ITER + PRESTAZIONI */

.cpd-accesso-boxes {
    margin-bottom: 45px;
}

.cpd-accesso-boxes__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: stretch;
}

.cpd-accesso-iter,
.cpd-accesso-prestazioni {
    padding: 40px;
    border-radius: 10px;
}

.cpd-accesso-iter {
    color: #fff;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
}

.cpd-accesso-prestazioni {
    background: #F5F2F2;
    color: #3F434D;
}

.cpd-accesso-iter__title {
    margin: 0 0 20px;
    color: #fff;
    font-size: 24px;
    line-height: 1.1;
    font-weight: 700;
}

.cpd-accesso-iter__text,
.cpd-accesso-prestazioni__text {
    font-size: 18px;
    line-height: 1.35;
}

.cpd-accesso-iter__text {
    color: #fff;
}

.cpd-accesso-prestazioni__text {
    color: #3F434D;
}

.cpd-accesso-iter__text p,
.cpd-accesso-prestazioni__text p {
    margin: 0 0 18px;
    font-size: 16px;
}

.cpd-accesso-iter__text p:last-child,
.cpd-accesso-prestazioni__text p:last-child {
    margin-bottom: 0;
}

.cpd-accesso-prestazioni__text h3 {
    margin: 0 0 25px;
    color: #3F434D;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 400;
}


/* LISTA PRESTAZIONI */

.cpd-accesso-prestazioni__text ul {
    margin: 25px 0;
    padding: 0;
    list-style: none;
}

.cpd-accesso-prestazioni__text li {
    position: relative;
    margin-bottom: 22px;
    padding-left: 25px;

    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cpd-accesso-prestazioni__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;

    width: 11px;
    height: 11px;

    background: #3D93A8;
    border-radius: 3px;
}


/* CTA CARTA */

.cpd-accesso-carta {
    margin-bottom: 25px;
}

.cpd-accesso-carta__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
}

/* Come richiesto: titolo CTA 20px */

.cpd-accesso-carta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.cpd-accesso-carta__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}


/* CTA CONTATTI */

.cpd-accesso-contatti {
    margin-bottom: 50px;
}

.cpd-accesso-contatti__inner {
    padding: 30px 40px;
    text-align: center;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}

/* Come richiesto: titolo CTA 20px */

.cpd-accesso-contatti__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.cpd-accesso-contatti__inner .btn {
    background: #fff;
    color: var(--color-blue-3);
}
.cpd-accesso-iter__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 27px
}

/* TABLET */

@media (max-width: 991px) {

    .cpd-accesso-intro__grid,
    .cpd-accesso-boxes__grid {
        gap: 35px;
    }

    .cpd-accesso-intro__title {
        font-size: 34px;
    }

    .cpd-accesso-intro__text p:first-child {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cpd-accesso-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .cpd-accesso-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cpd-accesso-intro__title {
        font-size: 28px;
    }

    .cpd-accesso-intro__text {
        font-size: 16px;
        line-height: 1.35;
    }

    .cpd-accesso-intro__text p:first-child {
        font-size: 21px;
    }


    .cpd-accesso-boxes {
        margin-bottom: 30px;
    }

    .cpd-accesso-boxes__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cpd-accesso-iter,
    .cpd-accesso-prestazioni {
        padding: 30px 22px;
    }

    .cpd-accesso-iter__title {
        font-size: 20px;
    }

    .cpd-accesso-iter__text,
    .cpd-accesso-prestazioni__text,
    .cpd-accesso-prestazioni__text li {
        font-size: 16px;
        line-height: 1.35;
    }


    .cpd-accesso-carta,
    .cpd-accesso-contatti {
        margin-bottom: 25px;
    }

    .cpd-accesso-carta__inner,
    .cpd-accesso-contatti__inner {
        padding: 28px 20px;
    }

    .cpd-accesso-carta__title,
    .cpd-accesso-contatti__title {
        font-size: 20px;
    }
    .cpd-accesso-iter__text h3, .cpd-accesso-prestazioni__text h3 {
  font-size: 20px;
  line-height: 25px
}

}
/* ==========================================================================
   NUCLEO PROTETTO - COS'È
   ========================================================================== */


/* INTRO */

.nucleo-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.nucleo-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.nucleo-intro__content,
.nucleo-intro__image {
    min-width: 0;
}

.nucleo-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.nucleo-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-intro__text p {
    margin: 0 0 18px;
}

.nucleo-intro__text p:first-child {
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
}

.nucleo-intro__text p:last-child {
    margin-bottom: 0;
}

.nucleo-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX
   ========================================================================== */

.nucleo-box {
    margin-bottom: 40px;
}

.nucleo-box__inner {
    padding: 40px;
    border-radius: 10px;
    color: #fff;
    overflow: hidden;
}

.nucleo-box__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-box__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.nucleo-box__image,
.nucleo-box__text {
    min-width: 0;
}

.nucleo-box__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.nucleo-box__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-box__text p {
    margin: 0 0 18px;
}

.nucleo-box__text p:last-child {
    margin-bottom: 0;
}


/* VERDE */

.nucleo-box--green .nucleo-box__inner {
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;
}


/* BLU */

.nucleo-box--blue .nucleo-box__inner {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
}


/* AZZURRO */

.nucleo-box--cyan .nucleo-box__inner {
    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;
}


/* ==========================================================================
   CTA FINALE
   ========================================================================== */

.nucleo-cta {
    margin-top: 10px;
    margin-bottom: 45px;
}

.nucleo-cta__inner {
    padding: 30px 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.nucleo-cta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.nucleo-cta .btn {
    background: #fff;
    color: #3D93A8;
}
.nucleo-box__text h3 {
  font-size: 24px;
  line-height: 27px;
  font-weight: normal;
}

/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .nucleo-intro__grid,
    .nucleo-box__grid {
        gap: 35px;
    }

    .nucleo-intro__title {
        font-size: 34px;
    }

    .nucleo-intro__text p:first-child {
        font-size: 24px;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .nucleo-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .nucleo-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-intro__title {
        font-size: 28px;
    }

    .nucleo-intro__text,
    .nucleo-box__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .nucleo-intro__text p:first-child {
        font-size: 21px;
    }


    /* BOX */

    .nucleo-box {
        margin-bottom: 30px;
    }

    .nucleo-box__inner {
        padding: 30px 22px;
    }

    .nucleo-box__title {
        margin-bottom: 22px;
        font-size: 25px;
    }

    .nucleo-box__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }


    /*
     * Nel box blu il desktop è:
     * testo -> immagine
     * quindi su mobile rimane già nell'ordine corretto.
     *
     * Nei box verde e azzurro:
     * immagine -> testo
     * e manteniamo lo stesso ordine.
     */


    /* CTA */

    .nucleo-cta {
        margin-bottom: 30px;
    }

    .nucleo-cta__inner {
        padding: 28px 20px;
    }

    .nucleo-cta__title {
        font-size: 20px;
    }
    .nucleo-box__text h3 {
  font-size: 20px;
  line-height: 25px;
}

}
/* ==========================================================================
   NUCLEO PROTETTO - PER LA SUA SALUTE
   ========================================================================== */


/* ASSISTENZA MEDICA */

.nucleo-salute-medica {
    margin-top: 40px;
    margin-bottom: 45px;
}

.nucleo-salute-medica__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.nucleo-salute-medica__content,
.nucleo-salute-medica__image {
    min-width: 0;
}

.nucleo-salute-medica__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.nucleo-salute-medica__text,
.nucleo-salute-medica__bottom-text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-salute-medica__text p,
.nucleo-salute-medica__bottom-text p {
    margin: 0 0 18px;
}

.nucleo-salute-medica__text p:last-child,
.nucleo-salute-medica__bottom-text p:last-child {
    margin-bottom: 0;
}

.nucleo-salute-medica__highlight {
    margin-top: 22px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.nucleo-salute-medica__highlight p {
    margin: 0;
}

.nucleo-salute-medica__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.nucleo-salute-medica__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    margin-top: 30px;
}


/* FISIOTERAPIA */

.nucleo-salute-fisio {
    margin-bottom: 45px;
}

.nucleo-salute-fisio__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.nucleo-salute-fisio__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-salute-fisio__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px 40px;
    align-items: start;
}



.nucleo-salute-fisio__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


.nucleo-salute-fisio__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-salute-fisio__text p {
    margin: 0 0 18px;
}

.nucleo-salute-fisio__text p:last-child {
    margin-bottom: 0;
}

.nucleo-salute-fisio__highlight {
    margin-top: 22px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.nucleo-salute-fisio__highlight p {
    margin: 0;
}


/* CTA */

.nucleo-salute-cta {
    margin-bottom: 45px;
}

.nucleo-salute-cta__inner {
    padding: 30px 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.nucleo-salute-cta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.nucleo-salute-cta .btn {
    background: #fff;
    color: #3D93A8;
}


/* TABLET */

@media (max-width: 991px) {

    .nucleo-salute-medica__grid,
    .nucleo-salute-medica__bottom,
    .nucleo-salute-fisio__grid {
        gap: 35px;
    }

    .nucleo-salute-medica__title {
        font-size: 34px;
    }

    .nucleo-salute-medica__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .nucleo-salute-medica {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .nucleo-salute-medica__grid,
    .nucleo-salute-medica__bottom {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-salute-medica__title {
        font-size: 28px;
    }

    .nucleo-salute-medica__text,
    .nucleo-salute-medica__bottom-text {
        font-size: 16px;
        line-height: 20px;
    }

    .nucleo-salute-medica__highlight {
        font-size: 22px;
        line-height: 24px;
    }


    .nucleo-salute-fisio {
        margin-bottom: 30px;
    }

    .nucleo-salute-fisio__inner {
        padding: 30px 22px;
    }

    .nucleo-salute-fisio__title {
        font-size: 25px;
    }

    .nucleo-salute-fisio__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-salute-fisio__text {
        font-size: 16px;
        line-height: 20px;
    }

    .nucleo-salute-fisio__highlight {
        font-size: 22px;
        line-height: 26px;
    }

    .nucleo-salute-fisio__text--bottom,
    .nucleo-salute-fisio__image--bottom {
        margin-top: 0;
    }


    .nucleo-salute-cta {
        margin-bottom: 30px;
    }

    .nucleo-salute-cta__inner {
        padding: 28px 20px;
    }

}
/* ==========================================================================
   NUCLEO PROTETTO - PER IL SUO BENESSERE
   ========================================================================== */

.nucleo-benessere-header {
    margin-top: 40px;
    margin-bottom: 30px;
}

.nucleo-benessere-header__title {
    margin: 0;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}


/* TESTI COMUNI */

.nucleo-benessere-box__text,
.nucleo-pet__text,
.nucleo-doll__text,
.nucleo-musica__text,
.nucleo-arte__text {
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-benessere-box__text p,
.nucleo-pet__text p,
.nucleo-doll__text p,
.nucleo-musica__text p,
.nucleo-arte__text p {
    margin: 0 0 18px;
}

.nucleo-benessere-box__text p:last-child,
.nucleo-pet__text p:last-child,
.nucleo-doll__text p:last-child,
.nucleo-musica__text p:last-child,
.nucleo-arte__text p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   ATTIVITÀ CREATIVE
   ========================================================================== */

.nucleo-benessere-box {
    margin-bottom: 40px;
}

.nucleo-benessere-box__inner {
    padding: 40px;
    border-radius: 10px;
    color: #fff;
}

.nucleo-benessere-box--blue .nucleo-benessere-box__inner {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
}

.nucleo-benessere-box__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-benessere-box__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.nucleo-benessere-box__text {
    color: #fff;
}

.nucleo-benessere-box__highlight {
    margin-top: 20px;
    color: #fff;
    font-size: 24px;
    line-height: 27px;
}

.nucleo-benessere-box__highlight p {
    margin: 0;
}

.nucleo-benessere-box__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   PET THERAPY
   ========================================================================== */

.nucleo-pet {
    margin-bottom: 40px;
}

.nucleo-pet__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.nucleo-pet__title {
    margin: 0 0 5px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-pet__subtitle {
    margin-bottom: 25px;
    color: #fff;
    font-size: 24px;
    line-height: 1.2;
}

.nucleo-pet__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.nucleo-pet__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.nucleo-pet__image--second {
    margin-top: 25px;
}

.nucleo-pet__text {
    color: #fff;
}

.nucleo-pet__highlight {
    color: #fff;
    font-size: 24px;
    line-height: 27px;
    margin-bottom: 25px
}

.nucleo-pet__highlight p {
    margin: 0;
}


/* ==========================================================================
   DOLL THERAPY
   ========================================================================== */

.nucleo-doll {
    margin-bottom: 40px;
}

.nucleo-doll__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.nucleo-doll__title {
    margin: 0 0 5px;
    color: var(--color-black);
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-doll__subtitle {
    margin-bottom: 25px;
    color: #3F434D;
    font-size: 24px;
    line-height: 1.2;
}

.nucleo-doll__text {
    color: #3F434D;
}

.nucleo-doll__highlight {
    margin-top: 20px;
    color: #3F434D;
    font-size: 24px;
    line-height: 1.15;
    letter-spacing: -1px;
}

.nucleo-doll__highlight p {
    margin: 0;
}

.nucleo-doll__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.nucleo-doll__text--right {
    margin-top: 20px;
}


/* ==========================================================================
   MUSICOTERAPIA
   ========================================================================== */

.nucleo-musica {
    margin-bottom: 40px;
}

.nucleo-musica__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.nucleo-musica__title {
    margin: 0 0 5px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-musica__subtitle {
    margin-bottom: 25px;
    color: #fff;
    font-size: 24px;
    line-height: 1.2;
}

.nucleo-musica__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.nucleo-musica__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.nucleo-musica__text {
    color: #fff;
}

.nucleo-musica__highlight {
    margin-top: 20px;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
}

.nucleo-musica__highlight p {
    margin: 0;
}

.nucleo-pet__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 27px;
}

/* ==========================================================================
   ARTETERAPIA
   ========================================================================== */

.nucleo-arte {
    margin-bottom: 45px;
}

.nucleo-arte__header {
    margin-bottom: 25px;
}

.nucleo-arte__title {
    margin: 0 0 5px;
    color: var(--color-black);
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-arte__subtitle {
    color: #3F434D;
    font-size: 21px;
    line-height: 1.2;
}

.nucleo-arte__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.nucleo-arte__text {
    color: #3F434D;
}

.nucleo-arte__highlight {
    margin-top: 20px;
    color: #3F434D;
    font-size: 24px;
    line-height: 28px;
}

.nucleo-arte__highlight p {
    margin: 0;
}

.nucleo-arte__image--first {
    margin-top: 25px;
}

.nucleo-arte__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}




/* ==========================================================================
   CTA
   ========================================================================== */

.nucleo-benessere-cta {
    margin-bottom: 45px;
}

.nucleo-benessere-cta__inner {
    padding: 30px 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.nucleo-benessere-cta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

.nucleo-benessere-cta__inner .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

.nucleo-benessere-cta__inner .btn:hover {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .nucleo-benessere-header {
        margin-top: 30px;
        margin-bottom: 25px;
    }

    .nucleo-benessere-header__title {
        font-size: 28px;
    }

    .nucleo-benessere-box__inner,
    .nucleo-pet__inner,
    .nucleo-musica__inner {
        padding: 30px 22px;
    }

    .nucleo-benessere-box__grid,
    .nucleo-pet__grid,
    .nucleo-doll__grid,
    .nucleo-musica__grid,
    .nucleo-arte__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-benessere-box__title,
    .nucleo-pet__title,
    .nucleo-doll__title,
    .nucleo-musica__title,
    .nucleo-arte__title {
        font-size: 25px;
    }

    .nucleo-benessere-box__text,
    .nucleo-pet__text,
    .nucleo-doll__text,
    .nucleo-musica__text,
    .nucleo-arte__text {
        font-size: 18px;
        line-height: 1.35;
    }

    .nucleo-benessere-box__highlight,
    .nucleo-pet__highlight,
    .nucleo-doll__highlight,
    .nucleo-musica__highlight,
    .nucleo-arte__highlight {
        font-size: 21px;
    }

    .nucleo-pet__image--second,
    .nucleo-doll__text--right,
    .nucleo-arte__image--first,
    .nucleo-arte__text--right {
        margin-top: 0;
    }

}
.nucleo-musica__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-top: 25px;
}

.nucleo-musica__bottom-text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-musica__bottom-text p {
    margin: 0 0 18px;
}

.nucleo-musica__bottom-text p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .nucleo-musica__bottom {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}
/* ==========================================================================
   NUCLEO PROTETTO - LA GIORNATA TIPO
   ========================================================================== */


/* INTRO */

.nucleo-giornata-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.nucleo-giornata-intro__title {
    margin: 0 0 18px;
    color: var(--color-black);
    font-size: 40px;
    line-height: 1.08;
}

.nucleo-giornata-intro__text {
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
}

.nucleo-giornata-intro__text p {
    margin: 0;
}


/* ==========================================================================
   GRID PRINCIPALE
   ========================================================================== */

.nucleo-giornata {
    margin-bottom: 40px;
}

.nucleo-giornata__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px 40px;
    align-items: start;
}

.nucleo-giornata__content,
.nucleo-giornata__image,
.nucleo-giornata__box {
    min-width: 0;
}


/* TESTI */

.nucleo-giornata__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-giornata__text p {
    margin: 0 0 18px;
}

.nucleo-giornata__text p:last-child {
    margin-bottom: 0;
}

.nucleo-giornata__text h2 {
    margin: 0 0 12px;
    color: #3D93A8;
    font-size: 30px;
    font-weight: normal;
    letter-spacing: -1px;
    line-height: 34px
    

}

.nucleo-giornata__text h3 {
    color: #3D93A8;
    font-weight: normal;
    letter-spacing: -1px;
        font-size: 24px;
    line-height: 29px;
}

.nucleo-giornata__text strong {
    font-weight: 700;
}


/* IMMAGINI */

.nucleo-giornata__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX PRANZO / CENA
   ========================================================================== */

.nucleo-giornata__box {
    padding: 35px;
    border-radius: 10px;
    color: #fff;
}

.nucleo-giornata__box--green {
    background:
        #6C9E36 url("../images/pattern-table-green.png") left center / auto 100% no-repeat;
}

.nucleo-giornata__box--blue {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
}

.nucleo-giornata__box-text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-giornata__box-text p {
    margin: 0 0 18px;
}

.nucleo-giornata__box-text p:last-child {
    margin-bottom: 0;
}

,
.nucleo-giornata__box-text h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-giornata__box-text strong {
    font-weight: 700;
}
.nucleo-giornata__box-text h2 { font-size: 30px; font-weight: normal; line-height:34px; letter-spacing: -1px;margin-top: 0;}


/* ==========================================================================
   CTA
   ========================================================================== */

.nucleo-giornata-cta {
    margin-bottom: 45px;
}

.nucleo-giornata-cta__inner {
    padding: 30px 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.nucleo-giornata-cta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

/* CTA verde = bottone sempre bianco */

.nucleo-giornata-cta__inner .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

.nucleo-giornata-cta__inner .btn:hover {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}
.nucleo-giornata__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: stretch;
}

/* Box colorato */
.nucleo-giornata__box {
    height: 100%;
    box-sizing: border-box;
}

/* Contenitore immagine */
.nucleo-giornata__image {
    height: 100%;
    min-height: 0;
}

/* Immagine */
.nucleo-giornata__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.nucleo-giornata__text h4 {
  font-size: 30px;
  margin: 0 0 10px;
  line-height: 32px;
}
/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .nucleo-giornata-intro__title {
        font-size: 34px;
    }

    .nucleo-giornata-intro__text {
        font-size: 24px;
    }

    .nucleo-giornata__grid {
        gap: 30px;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .nucleo-giornata-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .nucleo-giornata-intro__title {
        font-size: 28px;
    }

    .nucleo-giornata-intro__text {
        font-size: 21px;
    }


    .nucleo-giornata__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-giornata__text,
    .nucleo-giornata__box-text {
        font-size: 16px;
        line-height: 1.25;
    }

    .nucleo-giornata__text h2,
    .nucleo-giornata__text h3,
    .nucleo-giornata__box-text h2,
    .nucleo-giornata__box-text h3 {
        font-size: 22px;
        line-height: 24px;
    }
   
    .nucleo-giornata__box-text h2{
        font-size: 24px;
        line-height: 28px;
    }

    .nucleo-giornata__box {
        padding: 30px 22px;
    }


    .nucleo-giornata-cta {
        margin-bottom: 30px;
    }

    .nucleo-giornata-cta__inner {
        padding: 28px 20px;
    }
    .nucleo-giornata__text h4 {
  font-size: 26px;
  margin: 0 0 10px;
  line-height: 30px;
}

}
/* ==========================================================================
   NUCLEO PROTETTO - SALA MULTISENSORIALE SNOEZELEN
   ========================================================================== */


/* INTRO */

.nucleo-sala-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.nucleo-sala-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.nucleo-sala-intro__content,
.nucleo-sala-intro__media {
    min-width: 0;
}

.nucleo-sala-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
}

.nucleo-sala-intro__highlight {
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
    margin-bottom: 15px;
}

.nucleo-sala-intro__highlight p {
    margin: 0;
}

.nucleo-sala-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-sala-intro__text p {
    margin: 0 0 18px;
}

.nucleo-sala-intro__text p:last-child {
    margin-bottom: 0;
}

.nucleo-sala-intro__video {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* COME FUNZIONA */

.nucleo-sala-funzione {
    margin-bottom: 40px;
}

.nucleo-sala-funzione__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.nucleo-sala-funzione__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.nucleo-sala-funzione__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.nucleo-sala-funzione__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.nucleo-sala-funzione__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-sala-funzione__text p {
    margin: 0 0 18px;
}

.nucleo-sala-funzione__text p:last-child {
    margin-bottom: 0;
}

.nucleo-sala-funzione__highlight {
    margin-top: 20px;
    color: #fff;
    font-size: 24px;
    line-height: 1.15;
}

.nucleo-sala-funzione__highlight p {
    margin: 0;
}


/* GALLERY */

.nucleo-sala-gallery {
    margin-bottom: 40px;
}

.nucleo-sala-gallery__top {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 35px;
    margin-bottom: 35px;
}

.nucleo-sala-gallery__bottom {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
}

.nucleo-sala-gallery__image {
    min-width: 0;
}

.nucleo-sala-gallery__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.nucleo-sala-gallery__top .nucleo-sala-gallery__image {
    aspect-ratio: 2 / 1;
}

.nucleo-sala-gallery__top .nucleo-sala-gallery__image--small {
    aspect-ratio: 1 / 1;
}

.nucleo-sala-gallery__bottom .nucleo-sala-gallery__image {
    aspect-ratio: 1 / 1.25;
}


/* CTA */

.nucleo-sala-cta {
    margin-bottom: 45px;
}

.nucleo-sala-cta__inner {
    padding: 30px 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.nucleo-sala-cta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

/* Fondo verde = bottone bianco */
.nucleo-sala-cta__inner .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

.nucleo-sala-cta__inner .btn:hover {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}


/* MOBILE */

@media (max-width: 767px) {

    .nucleo-sala-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .nucleo-sala-intro__grid,
    .nucleo-sala-funzione__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-sala-intro__title {
        font-size: 28px;
    }

    .nucleo-sala-intro__highlight {
        font-size: 21px;
    }

    .nucleo-sala-intro__text,
    .nucleo-sala-funzione__text {
        font-size: 16px;
        line-height: 1.25;
    }

    .nucleo-sala-funzione__inner {
        padding: 30px 22px;
    }

    .nucleo-sala-funzione__title {
        font-size: 25px;
    }

    .nucleo-sala-funzione__highlight {
        font-size: 21px;
    }

    .nucleo-sala-gallery__top,
    .nucleo-sala-gallery__bottom {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .nucleo-sala-gallery__top {
        margin-bottom: 20px;
    }

    .nucleo-sala-gallery__top .nucleo-sala-gallery__image,
    .nucleo-sala-gallery__top .nucleo-sala-gallery__image--small,
    .nucleo-sala-gallery__bottom .nucleo-sala-gallery__image {
        aspect-ratio: auto;
    }

    .nucleo-sala-gallery__image img {
        height: auto;
    }

}
/* ==========================================================================
   NUCLEO PROTETTO - RETTE
   ========================================================================== */


/* INTRO */

.nucleo-rette-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.nucleo-rette-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.nucleo-rette-intro__content,
.nucleo-rette-intro__image {
    min-width: 0;
}

.nucleo-rette-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
}

.nucleo-rette-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.nucleo-rette-intro__text p {
    margin: 0 0 18px;
}

.nucleo-rette-intro__text p:first-child {
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
}

.nucleo-rette-intro__text p:last-child {
    margin-bottom: 0;
}

.nucleo-rette-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TARIFFE */

.nucleo-rette-list {
    margin-bottom: 35px;
}

.nucleo-rette-list__row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 30px;
    align-items: center;

    padding: 18px 0;
    border-bottom: 1px solid #D9D9D9;
}

.nucleo-rette-list__camera {
    color: #56ACCA;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 600;
    text-transform: uppercase;
}

.nucleo-rette-list__price {
    padding: 0.9rem 1.2rem;

    background: #ECECEC;
    border-radius: 15px;

    color: #3F434D;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}


/* CTA */

.nucleo-rette-cta {
    margin-bottom: 45px;
}

.nucleo-rette-cta__inner {
    padding: 30px 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.nucleo-rette-cta__title {
    margin: 0 0 16px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}

/* CTA verde = bottone bianco */
.nucleo-rette-cta__inner .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

.nucleo-rette-cta__inner .btn:hover {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}


.nucleo-rette-intro__text h2 {
  font-weight: normal;
  font-size: 30px;
  line-height: 34px;
  letter-spacing: -1px;
  color: #3D93A8;
}
/* TABLET */

@media (max-width: 991px) {

    .nucleo-rette-intro__grid {
        gap: 35px;
    }

    .nucleo-rette-intro__title {
        font-size: 34px;
    }

    .nucleo-rette-intro__text p:first-child {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .nucleo-rette-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .nucleo-rette-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .nucleo-rette-intro__title {
        font-size: 28px;
    }

    .nucleo-rette-intro__text {
        font-size: 16px;
        line-height: 1.25;
    }

    .nucleo-rette-intro__text p:first-child {
        font-size: 21px;
    }

    .nucleo-rette-list__row {
        gap: 15px;
    }

    .nucleo-rette-list__camera {
        font-size: 18px;
    }

    .nucleo-rette-list__price {
        min-width: auto;
        padding: 9px 13px;
        font-size: 15px;
    }

    .nucleo-rette-cta {
        margin-bottom: 30px;
    }

    .nucleo-rette-cta__inner {
        padding: 28px 20px;
    }
    .nucleo-rette-intro__text h2 {
  font-weight: normal;
  font-size: 22px;
  line-height: 24px;
  letter-spacing: -1px;
  color: #3D93A8;
}

}
/* ==========================================================================
   CENTRO DIURNO - COS'È
   ========================================================================== */


/* INTRO */

.cd-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.cd-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-intro__content,
.cd-intro__image {
    min-width: 0;
}

.cd-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
}

.cd-intro__highlight {
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
    margin-bottom: 15px;
}

.cd-intro__highlight p {
    margin: 0;
}

.cd-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-intro__text p {
    margin: 0 0 18px;
}

.cd-intro__text p:last-child {
    margin-bottom: 0;
}

.cd-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TRASPORTO */

.cd-trasporto {
    margin-bottom: 40px;
}

.cd-trasporto__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cd-trasporto__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cd-trasporto__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.cd-trasporto__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.cd-trasporto__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-trasporto__text p {
    margin: 0 0 18px;
}

.cd-trasporto__text p:last-child {
    margin-bottom: 0;
}


/* AMBIENTI E TERRAZZA */

.cd-ambienti {
    margin-bottom: 40px;
}

.cd-ambienti__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cd-ambienti__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cd-ambienti__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.cd-ambienti__column {
    min-width: 0;
}

.cd-ambienti__image {
    margin-bottom: 20px;
}

.cd-ambienti__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.cd-ambienti__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-ambienti__text p {
    margin: 0 0 18px;
}

.cd-ambienti__text p:last-child {
    margin-bottom: 0;
}


/* GALLERY */

.cd-gallery {
    margin-bottom: 45px;
}

.cd-gallery__grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 35px;
}

.cd-gallery__image {
    min-width: 0;
}

.cd-gallery__image--wide {
    aspect-ratio: 2 / 1;
}

.cd-gallery__image--small {
    aspect-ratio: 1 / 1;
}

.cd-gallery__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}
.cd-trasporto__text h3, .cd-ambienti__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 27px;
  margin-top: 0;
}


/* TABLET */

@media (max-width: 991px) {

    .cd-intro__grid,
    .cd-trasporto__grid,
    .cd-ambienti__grid {
        gap: 35px;
    }

    .cd-intro__title {
        font-size: 34px;
    }

    .cd-intro__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cd-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .cd-intro__grid,
    .cd-trasporto__grid,
    .cd-ambienti__grid,
    .cd-gallery__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cd-intro__title {
        font-size: 28px;
    }

    .cd-intro__highlight {
        font-size: 21px;
    }

    .cd-intro__text,
    .cd-trasporto__text,
    .cd-ambienti__text {
        font-size: 16px;
        line-height: 1.25;
    }

    .cd-trasporto__inner,
    .cd-ambienti__inner {
        padding: 30px 22px;
    }

    .cd-trasporto__title,
    .cd-ambienti__title {
        font-size: 25px;
    }

    .cd-gallery__image--wide,
    .cd-gallery__image--small {
        aspect-ratio: auto;
    }

    .cd-gallery__image img {
        height: auto;
    }
    .cd-trasporto__text h3, .cd-ambienti__text h3 {
  font-size: 20px;
  line-height: 25px;
  margin-top: 0;
}


}
/* ==========================================================================
   CENTRO DIURNO - A CHI È DESTINATO
   ========================================================================== */


/* INTRO */

.cd-dest-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.cd-dest-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-dest-intro__content,
.cd-dest-intro__image {
    min-width: 0;
}

.cd-dest-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
}

.cd-dest-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
}

.cd-dest-intro__highlight p {
    margin: 0;
}

.cd-dest-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-dest-intro__text p {
    margin: 0 0 18px;
}

.cd-dest-intro__text p:last-child {
    margin-bottom: 0;
}

.cd-dest-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* BOX DESTINATARI */

.cd-dest-box {
    margin-bottom: 45px;
}

.cd-dest-box__inner {
    padding: 40px;
    background: #F7F5F5;
    border-radius: 10px;
}

.cd-dest-box__title {
    margin-bottom: 28px;
    color: #3F434D;
    font-size: 30px;
    line-height: 1.25;
    letter-spacing: -1.5px;
}

.cd-dest-box__title p {
    margin: 0;
}

.cd-dest-box__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-dest-box__left,
.cd-dest-box__right {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-dest-box__left p,
.cd-dest-box__right p {
    margin: 0 0 18px;
}

.cd-dest-box__left p:last-child,
.cd-dest-box__right p:last-child {
    margin-bottom: 0;
}


/* LISTA A SINISTRA */

.cd-dest-box__left ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.cd-dest-box__left li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 22px;
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-dest-box__left li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 13px;
    height: 13px;
    background: #3D93A8;
    border-radius: 4px;
}

.cd-dest-box__left li:last-child {
    margin-bottom: 0;
}


/* TABLET */

@media (max-width: 991px) {

    .cd-dest-intro__grid,
    .cd-dest-box__grid {
        gap: 35px;
    }

    .cd-dest-intro__title {
        font-size: 34px;
    }

    .cd-dest-intro__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cd-dest-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .cd-dest-intro__grid,
    .cd-dest-box__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cd-dest-intro__title {
        font-size: 28px;
    }

    .cd-dest-intro__highlight {
        font-size: 21px;
    }

    .cd-dest-intro__text,
    .cd-dest-box__left,
    .cd-dest-box__right,
    .cd-dest-box__left li {
        font-size: 16px;
        line-height: 20px;
    }

    .cd-dest-box__inner {
        padding: 30px 22px;
    }

    .cd-dest-box__title {
        font-size: 26px;
        margin-bottom: 24px;
        line-height: 29px;
    }
}
/* ==========================================================================
   CENTRO DIURNO - PER IL SUO BENESSERE
   ========================================================================== */


/* HEADER PAGINA */

.cd-benessere-header {
    margin-top: 40px;
    margin-bottom: 30px;
}

.cd-benessere-header__title {
    margin: 0;
    font-size: 40px;
    line-height: 1.08;
}


/* ==========================================================================
   SERVIZI PRINCIPALI
   ========================================================================== */

.cd-benessere-main {
    margin-bottom: 40px;
}

.cd-benessere-main__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cd-benessere-main__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 45px;
    align-items: start;
}

.cd-benessere-card {
    min-width: 0;
}

.cd-benessere-card__image {
    margin-bottom: 18px;
}

.cd-benessere-card__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.cd-benessere-card__title {
    margin: 0 0 6px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1px
}

.cd-benessere-card__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-benessere-card__text p {
    margin: 0 0 18px;
}

.cd-benessere-card__text p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   RELIGIOSA + TRASPORTO
   ========================================================================== */

.cd-benessere-extra {
    margin-bottom: 45px;
}

.cd-benessere-extra__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cd-benessere-extra__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px 40px;
    align-items: start;
}

.cd-benessere-extra__image,
.cd-benessere-extra__content {
    min-width: 0;
}

.cd-benessere-extra__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.cd-benessere-extra__title {
    margin: 0 0 15px;
    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1px;
}

.cd-benessere-extra__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-benessere-extra__text p {
    margin: 0 0 18px;
}

.cd-benessere-extra__text p:last-child {
    margin-bottom: 0;
}


/* TABLET */

@media (max-width: 991px) {

    .cd-benessere-main__grid {
        gap: 25px;
    }

    .cd-benessere-card__title,
    .cd-benessere-extra__title {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cd-benessere-header {
        margin-top: 30px;
        margin-bottom: 25px;
    }

    .cd-benessere-header__title {
        font-size: 28px;
    }

    .cd-benessere-main__inner,
    .cd-benessere-extra__inner {
        padding: 30px 22px;
    }

    .cd-benessere-main__grid,
    .cd-benessere-extra__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cd-benessere-card__title,
    .cd-benessere-extra__title {
        font-size: 22px;
        line-height: 27px;
    }

    .cd-benessere-card__text,
    .cd-benessere-extra__text {
        font-size: 16px;
        line-height: 1.25;
    }

}
/* ==========================================================================
   CENTRO DIURNO - LA GIORNATA TIPO
   ========================================================================== */


/* INTRO */

.cd-giornata-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.cd-giornata-intro__title {
    margin: 0 0 15px;
    font-size: 40px;
    letter-spacing: -1.5px;
}

.cd-giornata-intro__text {
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
}

.cd-giornata-intro__text p {
    margin: 0;
}


/* ==========================================================================
   MATTINA
   ========================================================================== */

.cd-giornata-mattina {
    margin-bottom: 40px;
}

.cd-giornata-mattina__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-giornata-mattina__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-giornata-mattina__text h2,
.cd-giornata-mattina__text h3 {
    margin: 0 0 10px;
    color: #3F434D;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
}

.cd-giornata-mattina__text p {
    margin: 0 0 30px;
}

.cd-giornata-mattina__text p:last-child {
    margin-bottom: 0;
}

.cd-giornata-mattina__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX VERDE 10 - 12
   ========================================================================== */

.cd-giornata-attivita {
    margin-bottom: 35px;
}

.cd-giornata-attivita__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cd-giornata-attivita__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;

}

.cd-giornata-attivita__title {
    margin: 0 0 20px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cd-giornata-attivita__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-giornata-attivita__text p {
    margin: 0 0 18px;
}

.cd-giornata-attivita__text p:last-child {
    margin-bottom: 0;
}

.cd-giornata-attivita__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   LISTINI
   ========================================================================== */

.cd-giornata-listini {
    margin-bottom: 55px;
}

.cd-giornata-listini__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}

.cd-giornata-listino {
    min-width: 0;
}

.cd-giornata-listino__title {
    margin: 0 0 18px;
    color: #6EA136;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: -1px;
}

.cd-giornata-listino__row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 20px;
    align-items: center;

    min-height: 64px;
    border-bottom: 1px solid #D9D9D9;
}

.cd-giornata-listino__service {
    color: #56ACCA;
    font-size: 20px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 600;
}

.cd-giornata-listino__price {
    /*! min-width: 85px; */
    padding: 9px 1.2rem;

    background: #ECECEC;
    border-radius: 12px;

    color: #333;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}


/* ==========================================================================
   POMERIGGIO E RIENTRO
   ========================================================================== */

.cd-giornata-pomeriggio {
    margin-bottom: 45px;
}

.cd-giornata-pomeriggio__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-giornata-pomeriggio__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-giornata-pomeriggio__text h2,
.cd-giornata-pomeriggio__text h3 {
    margin: 0 0 10px;
    color: #3F434D;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
}

.cd-giornata-pomeriggio__text p {
    margin: 0 0 30px;
}

.cd-giornata-pomeriggio__text p:last-child {
    margin-bottom: 0;
}

.cd-giornata-pomeriggio__text p + h2,
.cd-giornata-pomeriggio__text p + h3 {
    margin-top: 35px;
}


/* IMMAGINI DESTRA */

.cd-giornata-pomeriggio__images {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.cd-giornata-pomeriggio__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}
.cd-giornata-mattina__text h4, .cd-giornata-pomeriggio__text h4 {
  font-size: 30px;
  color: #454446;
  margin: 0 0 8px;
}
.cd-giornata-attivita__text h2 {
  font-weight: normal;
  margin-top: 0;
  letter-spacing: -1px;
  font-size: 30px;
  line-height: 34px;
}

/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .cd-giornata-mattina__grid,
    .cd-giornata-attivita__grid,
    .cd-giornata-pomeriggio__grid {
        gap: 35px;
    }

    .cd-giornata-intro__text {
        font-size: 24px;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .cd-giornata-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .cd-giornata-intro__text {
        font-size: 22px;
        line-height: 24px;
        letter-spacing: -1px;
    }


    /* GRID */

    .cd-giornata-mattina__grid,
    .cd-giornata-attivita__grid,
    .cd-giornata-listini__grid,
    .cd-giornata-pomeriggio__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }


    /* TESTI NORMALI MOBILE = 16px / 20px */

    .cd-giornata-mattina__text,
    .cd-giornata-attivita__text,
    .cd-giornata-pomeriggio__text {
        font-size: 16px;
        line-height: 20px;
    }


    /* TITOLI INTERNI */

    .cd-giornata-mattina__text h2,
    .cd-giornata-mattina__text h3,
    .cd-giornata-pomeriggio__text h2,
    .cd-giornata-pomeriggio__text h3 {
        font-size: 22px;
        line-height: 1.15;
    }

    .cd-giornata-attivita__title {
        font-size: 24px;
    }


    /* BOX VERDE */

    .cd-giornata-attivita__inner {
        padding: 30px 22px;
    }


    /* LISTINI */

    .cd-giornata-listini {
        margin-bottom: 40px;
    }

    .cd-giornata-listino__title {
        font-size: 22px;
    }

    .cd-giornata-listino__service {
        font-size: 15px;
        line-height: 20px;
    }

    .cd-giornata-listino__price {
        font-size: 14px;
    }


    /* POMERIGGIO */


    .cd-giornata-pomeriggio__text p + h2,
    .cd-giornata-pomeriggio__text p + h3 {
        margin-top: 30px;
    }

    .cd-giornata-pomeriggio__images {
        gap: 20px;
    }
    .cd-giornata-intro__title {font-size: 30px;
    line-height: 32px;}
    .cd-giornata-mattina__text h4, .cd-giornata-pomeriggio__text h4 {
  font-size: 26px;

}
    .cd-giornata-attivita__text h2 {
  font-size: 22px;
  line-height: 27px;
}

}
/* ==========================================================================
   CENTRO DIURNO - RETTE
   ========================================================================== */


/* INTRO */

.cd-rette-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.cd-rette-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-rette-intro__content,
.cd-rette-intro__image {
    min-width: 0;
}

.cd-rette-intro__title {
    margin: 0 0 15px;
    font-size: 40px;
}

.cd-rette-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px
}

.cd-rette-intro__highlight p {
    margin: 0;
}

.cd-rette-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-rette-intro__text p {
    margin: 0 0 18px;
}

.cd-rette-intro__text p:last-child {
    margin-bottom: 0;
}

.cd-rette-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TARIFFE */

.cd-rette-list {
    margin-bottom: 25px;
}

.cd-rette-list--transport {
    margin-top: 40px;
    margin-bottom: 40px;
}

.cd-rette-list__title {
    margin: 0 0 12px;
    color: #6EA136;
    font-size: 30px;
    line-height: 34px;
    font-weight: normal;
    letter-spacing: -1px;
}

.cd-rette-list__row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 25px;
    align-items: center;

    min-height: 80px;
    border-bottom: 1px solid #D9D9D9;
}

.cd-rette-list__label {
    color: #56ACCA;
    font-size: 22px;
    font-weight: 600;
    text-transform: uppercase;
}

.cd-rette-list__price {
    padding: 0.9rem 1.2rem;

    background: #ECECEC;
    border-radius: 15px;

    color: #333;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}


/* CTA */

.cd-rette-cta {
    margin-top: 35px;
    margin-bottom: 45px;
}

.cd-rette-cta__inner {
    padding: 30px 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.cd-rette-cta__text {
    max-width: 760px;
    margin: 0 auto 18px;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-rette-cta__text p {
    margin: 0;
}

.cd-rette-cta__inner .btn {
    background: #39C2D4;
    color: #fff;
    border-color: #39C2D4;
}

.cd-rette-cta__inner .btn:hover {
    background: #39C2D4;
    color: #fff;
    border-color: #39C2D4;
}


/* TABLET */

@media (max-width: 991px) {

    .cd-rette-intro__grid {
        gap: 35px;
    }

    .cd-rette-intro__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .cd-rette-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .cd-rette-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cd-rette-intro__highlight {
        font-size: 22px;
        line-height: 24px;
        letter-spacing: -1px;
    }

    /* Testi normali mobile */
    .cd-rette-intro__text,
    .cd-rette-cta__text {
        font-size: 16px;
        line-height: 20px;
    }

    .cd-rette-list__title {
        font-size: 22px;
    }

    .cd-rette-list__row {
        min-height: 54px;
        gap: 15px;
    }

    .cd-rette-list__label {
        font-size: 16px;
        line-height: 20px;
    }

    .cd-rette-list__price {
        min-width: auto;
        padding: 9px 13px;
        font-size: 14px;
    }

    .cd-rette-cta {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .cd-rette-cta__inner {
        padding: 28px 20px;
    }
    .cd-rette-intro__title {
    font-size: 30px;
        line-height: 32px
}

}
/* ==========================================================================
   CENTRO DIURNO - COME RICHIEDERE IL SERVIZIO
   ========================================================================== */


/* ==========================================================================
   INTRO
   ========================================================================== */

.cd-accesso-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.cd-accesso-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.cd-accesso-intro__content,
.cd-accesso-intro__image {
    min-width: 0;
}

.cd-accesso-intro__title {
    margin: 0 0 18px;
}

.cd-accesso-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.cd-accesso-intro__text p {
    margin: 0 0 18px;
}

.cd-accesso-intro__text p:last-child {
    margin-bottom: 0;
}

.cd-accesso-intro__cta {
    margin-top: 20px;
}

.cd-accesso-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   ITER DI VALUTAZIONE
   ========================================================================== */

.cd-accesso-iter {
    margin-bottom: 40px;
}

.cd-accesso-iter__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch;
}

.cd-accesso-iter__image,
.cd-accesso-iter__box {
    min-width: 0;
}

.cd-accesso-iter__image {
    height: 100%;
}

.cd-accesso-iter__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.cd-accesso-iter__box {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.cd-accesso-iter__title {
    margin: 0 0 18px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.cd-accesso-iter__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.cd-accesso-iter__text p {
    margin: 0 0 18px;
}

.cd-accesso-iter__text p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   CTA FINALI
   ========================================================================== */

.cd-accesso-cta {
    margin-bottom: 30px;
}

.cd-accesso-cta__inner {
    padding: 30px 40px;
    border-radius: 10px;
    text-align: center;
}

.cd-accesso-cta--green .cd-accesso-cta__inner {
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;
}

.cd-accesso-cta--blue .cd-accesso-cta__inner {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        center / cover
        no-repeat;
}

.cd-accesso-cta__title {
    margin: 0 0 18px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}


/* BOTTONI CTA FINALI BIANCHI */

.cd-accesso-cta__inner .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

.cd-accesso-cta__inner .btn:hover {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}


/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .cd-accesso-intro__grid,
    .cd-accesso-iter__grid {
        gap: 35px;
    }

    .cd-accesso-iter__title {
        font-size: 24px;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .cd-accesso-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .cd-accesso-intro__grid,
    .cd-accesso-iter__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }


    /* TESTI NORMALI MOBILE */

    .cd-accesso-intro__text,
    .cd-accesso-iter__text {
        font-size: 16px;
        line-height: 20px;
    }


    /* INTRO */

    .cd-accesso-intro__cta {
        margin-top: 18px;
    }


    /* ITER */

    .cd-accesso-iter__box {
        padding: 30px 22px;
    }

    .cd-accesso-iter__title {
        font-size: 24px;
        line-height: 1.15;
    }

    .cd-accesso-iter__image {
        height: auto;
    }

    .cd-accesso-iter__image img {
        height: auto;
    }


    /* CTA */

    .cd-accesso-cta {
        margin-bottom: 25px;
    }

    .cd-accesso-cta__inner {
        padding: 28px 20px;
    }

    .cd-accesso-cta__title {
        font-size: 20px;
        line-height: 1.2;
    }
    .cd-accesso-intro__title {
  margin: 0 0 18px;
        font-size: 30px;
        line-height: 32px
}

}
/* ==========================================================================
   RSA APERTA - COS'È
   ========================================================================== */


/* INTRO */

.rsa-aperta-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.rsa-aperta-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.rsa-aperta-intro__content,
.rsa-aperta-intro__image {
    min-width: 0;
}

.rsa-aperta-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.rsa-aperta-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.rsa-aperta-intro__highlight p {
    margin: 0;
}

.rsa-aperta-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-intro__text p {
    margin: 0 0 18px;
}

.rsa-aperta-intro__text p:last-child {
    margin-bottom: 0;
}

.rsa-aperta-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX BLU
   ========================================================================== */

.rsa-aperta-box {
    margin-bottom: 45px;
}

.rsa-aperta-box__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.rsa-aperta-box__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;
}

.rsa-aperta-box__column {
    min-width: 0;
}

.rsa-aperta-box__image {
    margin-bottom: 20px;
}

.rsa-aperta-box__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.rsa-aperta-box__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-box__text p {
    margin: 0 0 18px;
}

.rsa-aperta-box__text p:last-child {
    margin-bottom: 0;
}

.rsa-aperta-box__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 27px;
}

/* TABLET */

@media (max-width: 991px) {

    .rsa-aperta-intro__grid {
        gap: 35px;
    }

    .rsa-aperta-intro__highlight {
        font-size: 24px;
    }

    .rsa-aperta-box__grid {
        gap: 30px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rsa-aperta-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .rsa-aperta-intro__grid,
    .rsa-aperta-box__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsa-aperta-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .rsa-aperta-intro__highlight {
        font-size: 21px;
        line-height: 1.2;
    }

    /* Testi normali mobile */
    .rsa-aperta-intro__text,
    .rsa-aperta-box__text {
        font-size: 16px;
        line-height: 20px;
    }

    .rsa-aperta-box__inner {
        padding: 30px 22px;
    }

    .rsa-aperta-box__image {
        margin-bottom: 16px;
    }
    
.rsa-aperta-box__text h3 {
  font-weight: normal;
  font-size: 20px;
  line-height: 25px;
}

}
/* ==========================================================================
   RSA APERTA - A CHI È DESTINATA
   ========================================================================== */


/* INTRO */

.rsa-aperta-dest-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.rsa-aperta-dest-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.rsa-aperta-dest-intro__content,
.rsa-aperta-dest-intro__image {
    min-width: 0;
}

.rsa-aperta-dest-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.rsa-aperta-dest-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.rsa-aperta-dest-intro__highlight p {
    margin: 0;
}

.rsa-aperta-dest-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-dest-intro__text p {
    margin: 0 0 18px;
}

.rsa-aperta-dest-intro__text p:last-child {
    margin-bottom: 0;
}

.rsa-aperta-dest-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX DESTINATARI
   ========================================================================== */

.rsa-aperta-dest-box {
    margin-bottom: 45px;
}

.rsa-aperta-dest-box__inner {
    padding: 40px;
    background: #F6F3F3;
    border-radius: 10px;
}

.rsa-aperta-dest-box__title {
    margin-bottom: 25px;
    color: #3F434D;
    font-size: 24px;
    line-height: 1.3;
}

.rsa-aperta-dest-box__title p {
    margin: 0;
}

.rsa-aperta-dest-box__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.rsa-aperta-dest-box__column {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-dest-box__column p {
    margin: 0 0 18px;
}

.rsa-aperta-dest-box__column p:last-child {
    margin-bottom: 0;
}


/* LISTA COLONNA SINISTRA */

.rsa-aperta-dest-box__column ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.rsa-aperta-dest-box__column li {
    position: relative;
    margin: 0 0 24px;
    padding-left: 26px;
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-dest-box__column li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;

    width: 13px;
    height: 13px;

    background: #3D93A8;
    border-radius: 4px;
}

.rsa-aperta-dest-box__column li:last-child {
    margin-bottom: 0;
}


/* TABLET */

@media (max-width: 991px) {

    .rsa-aperta-dest-intro__grid,
    .rsa-aperta-dest-box__grid {
        gap: 35px;
    }

    .rsa-aperta-dest-intro__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rsa-aperta-dest-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .rsa-aperta-dest-intro__grid,
    .rsa-aperta-dest-box__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsa-aperta-dest-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .rsa-aperta-dest-intro__highlight {
        font-size: 21px;
        line-height: 1.2;
    }

    /* testi normali mobile */
    .rsa-aperta-dest-intro__text,
    .rsa-aperta-dest-box__column,
    .rsa-aperta-dest-box__column li {
        font-size: 16px;
        line-height: 20px;
    }

    .rsa-aperta-dest-box__inner {
        padding: 30px 22px;
    }

    .rsa-aperta-dest-box__title {
        font-size: 20px;
        line-height: 1.3;
        margin-bottom: 22px;
    }

    .rsa-aperta-dest-box__column li {
        padding-left: 24px;
        margin-bottom: 20px;
    }
    .rsa-aperta-dest-box__column li::before {
        top: 4px;
    }

}
/* ==========================================================================
   RSA APERTA - PER IL SUO BENESSERE
   ========================================================================== */


/* INTRO */

.rsa-aperta-benessere-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.rsa-aperta-benessere-intro__title {
    margin: 0;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}


/* ==========================================================================
   PERSONE CON DEMENZA
   ========================================================================== */

.rsa-aperta-demenza {
    margin-bottom: 40px;
}

.rsa-aperta-demenza__inner {
    padding: 40px;

    background:
        #2E6C8D url("../images/pattern-table-blue.png") left center / cover no-repeat;

    border-radius: 10px;
    color: #fff;
}

.rsa-aperta-demenza__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.rsa-aperta-demenza__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.rsa-aperta-demenza__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-demenza__text p {
    margin: 0 0 18px;
}

.rsa-aperta-demenza__text p:last-child {
    margin-bottom: 0;
}


/* LISTA CON QUADRATINI BIANCHI */

.rsa-aperta-demenza__text ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.rsa-aperta-demenza__text li {
    position: relative;
    margin: 0 0 20px;
    padding-left: 25px;

    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-demenza__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;

    width: 13px;
    height: 13px;

    background: #fff;
    border-radius: 4px;
}

.rsa-aperta-demenza__text li:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   ANZIANI NON AUTOSUFFICIENTI
   ========================================================================== */

.rsa-aperta-anziani {
    margin-bottom: 45px;
}

.rsa-aperta-anziani__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.rsa-aperta-anziani__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.rsa-aperta-anziani__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;

}

.rsa-aperta-anziani__image,
.rsa-aperta-anziani__text {
    min-width: 0;
}

.rsa-aperta-anziani__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.rsa-aperta-anziani__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-anziani__text p {
    margin: 0 0 18px;
}

.rsa-aperta-anziani__text p:last-child {
    margin-bottom: 0;
}


.rsa-aperta-demenza__text h3 {
  font-weight: normal;
  font-size: 24px;
  line-height: 27px;
  margin-top: 0;
}

.rsa-aperta-anziani__text h3 {
  font-size: 24px;
  font-weight: normal;
  margin-top: 0;
  line-height: 24px;
}
/* TABLET */

@media (max-width: 991px) {

    .rsa-aperta-demenza__grid,
    .rsa-aperta-anziani__grid {
        gap: 35px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rsa-aperta-benessere-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .rsa-aperta-benessere-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .rsa-aperta-demenza__grid,
    .rsa-aperta-anziani__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsa-aperta-demenza__inner,
    .rsa-aperta-anziani__inner {
        padding: 30px 22px;
    }

    .rsa-aperta-demenza__title,
    .rsa-aperta-anziani__title {
        font-size: 26px;
        line-height: 1.15;
        margin-bottom: 22px;
    }

    /* testi normali mobile */
    .rsa-aperta-demenza__text,
    .rsa-aperta-demenza__text li,
    .rsa-aperta-anziani__text {
        font-size: 16px;
        line-height: 20px;
    }

    .rsa-aperta-demenza__text li {
        padding-left: 24px;
        margin-bottom: 18px;
    }

    .rsa-aperta-demenza__text li::before {
        top: 4px;
    }
    .rsa-aperta-demenza__text h3, .rsa-aperta-anziani__text h3 {
  font-weight: normal;
  font-size: 20px;
  line-height: 25px;
  margin-top: 0;
}
}
/* ==========================================================================
   RSA APERTA - COME RICHIEDERE IL SERVIZIO
   ========================================================================== */


/* INTRO */

.rsa-aperta-accesso-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.rsa-aperta-accesso-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.rsa-aperta-accesso-intro__content,
.rsa-aperta-accesso-intro__image {
    min-width: 0;
}

.rsa-aperta-accesso-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.rsa-aperta-accesso-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-accesso-intro__text p {
    margin: 0 0 18px;
}

.rsa-aperta-accesso-intro__text p:last-child {
    margin-bottom: 0;
}

.rsa-aperta-accesso-intro__cta {
    margin-top: 20px;
}

.rsa-aperta-accesso-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX ITER + INFO
   ========================================================================== */

.rsa-aperta-accesso-boxes {
    margin-bottom: 35px;
}

.rsa-aperta-accesso-boxes__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch;
}


/* BOX BLU */

.rsa-aperta-accesso-iter {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.rsa-aperta-accesso-iter__title {
    margin: 0 0 18px;
    color: #fff;
    font-size: 24px;
    line-height: 27px;
    font-weight: 700;
}

.rsa-aperta-accesso-iter__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-accesso-iter__text p {
    margin: 0 0 18px;
}

.rsa-aperta-accesso-iter__text p:last-child {
    margin-bottom: 0;
}


/* BOX CHIARO */

.rsa-aperta-accesso-info {
    padding: 40px;
    background: #F6F3F3;
    border-radius: 10px;
}

.rsa-aperta-accesso-info__title {
    margin-bottom: 20px;
    color: #3F434D;
    font-size: 24px;
    line-height: 29px;
    letter-spacing: -1px;
}

.rsa-aperta-accesso-info__title p {
    margin: 0;
}

.rsa-aperta-accesso-info__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}
.rsa-aperta-accesso-info__text h3 {font-size: 24px; line-height: 29px; letter-spacing: -1px; font-weight: normal}

.rsa-aperta-accesso-info__text p {
    margin: 0 0 18px;
}

.rsa-aperta-accesso-info__text p:last-child {
    margin-bottom: 0;
}

.rsa-aperta-accesso-info__text ul {
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
}

.rsa-aperta-accesso-info__text li {
    position: relative;
    margin: 0 0 20px;
    padding-left: 26px;

    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.rsa-aperta-accesso-info__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;

    width: 13px;
    height: 13px;

    background: #3D93A8;
    border-radius: 4px;
}


/* ==========================================================================
   CTA
   ========================================================================== */

.rsa-aperta-accesso-cta {
    margin-bottom: 30px;
}

.rsa-aperta-accesso-cta__inner {
    padding: 30px 40px;
    border-radius: 10px;
    text-align: center;
}

.rsa-aperta-accesso-cta--green .rsa-aperta-accesso-cta__inner {
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        center / cover
        no-repeat;
}

.rsa-aperta-accesso-cta--blue .rsa-aperta-accesso-cta__inner {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        center / cover
        no-repeat;
}

.rsa-aperta-accesso-cta__title {
    margin: 0 0 18px;
    color: #fff;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
}


/* CTA bianche */

.rsa-aperta-accesso-cta__inner .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}

.rsa-aperta-accesso-cta__inner .btn:hover {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}


/* TABLET */

@media (max-width: 991px) {

    .rsa-aperta-accesso-intro__grid,
    .rsa-aperta-accesso-boxes__grid {
        gap: 35px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .rsa-aperta-accesso-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .rsa-aperta-accesso-intro__grid,
    .rsa-aperta-accesso-boxes__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .rsa-aperta-accesso-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    /* testi normali mobile */
    .rsa-aperta-accesso-intro__text,
    .rsa-aperta-accesso-iter__text,
    .rsa-aperta-accesso-info__text,
    .rsa-aperta-accesso-info__text li {
        font-size: 16px;
        line-height: 20px;
    }

    .rsa-aperta-accesso-iter,
    .rsa-aperta-accesso-info {
        padding: 30px 22px;
    }

    .rsa-aperta-accesso-iter__title {
        font-size: 20px;
        line-height: 25px;
    }

    .rsa-aperta-accesso-info__title {
        font-size: 20px;
        line-height: 1.3;
    }

    .rsa-aperta-accesso-info__text li {
        padding-left: 24px;
        margin-bottom: 18px;
    }

    .rsa-aperta-accesso-info__text li::before {
        top: 4px;
    }

    .rsa-aperta-accesso-cta__inner {
        padding: 28px 20px;
    }

    .rsa-aperta-accesso-cta__title {
        font-size: 20px;
    }
    .rsa-aperta-accesso-info__text h3 {
  font-size: 20px;
  line-height: 25px;
}

}
/* ==========================================================================
   ALLOGGI PROTETTI - COSA SONO
   ========================================================================== */


/* INTRO */

.ap-cosa-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.ap-cosa-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ap-cosa-intro__content,
.ap-cosa-intro__image {
    min-width: 0;
}

.ap-cosa-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.ap-cosa-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ap-cosa-intro__text p {
    margin: 0 0 18px;
}

.ap-cosa-intro__highlight {
    margin-top: 18px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.ap-cosa-intro__highlight p {
    margin: 0;
}

.ap-cosa-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX BLU - SENTIRSI A CASA
   ========================================================================== */

.ap-casa {
    margin-bottom: 40px;
}

.ap-casa__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.ap-casa__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 30px;
    line-height: 35px;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.ap-casa__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;

}

.ap-casa__image,
.ap-casa__text {
    min-width: 0;
}

.ap-casa__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.ap-casa__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-casa__text p {
    margin: 0 0 18px;
}

.ap-casa__text p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   BOX VERDE - SPAZIO SICURO
   ========================================================================== */

.ap-sicuro {
    margin-bottom: 45px;
}

.ap-sicuro__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.ap-sicuro__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -1px
}

.ap-sicuro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;

}

.ap-sicuro__text,
.ap-sicuro__image {
    min-width: 0;
}

.ap-sicuro__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-sicuro__text p {
    margin: 0 0 18px;
}

.ap-sicuro__text p:last-child {
    margin-bottom: 0;
}

.ap-sicuro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* LISTA CON QUADRATINI BIANCHI */

.ap-sicuro__text ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.ap-sicuro__text li {
    position: relative;
    margin: 0 0 18px;
    padding-left: 25px;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-sicuro__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 13px;
    height: 13px;
    background: #fff;
    border-radius: 4px;
}

.ap-sicuro__text li:last-child {
    margin-bottom: 0;
}


/* TABLET */

@media (max-width: 991px) {

    .ap-cosa-intro__grid,
    .ap-casa__grid,
    .ap-sicuro__grid {
        gap: 35px;
    }

    .ap-cosa-intro__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .ap-cosa-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .ap-cosa-intro__grid,
    .ap-casa__grid,
    .ap-sicuro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ap-cosa-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .ap-cosa-intro__highlight {
        font-size: 22px;
        line-height: 24px;
    }

    /* testi normali mobile */
    .ap-cosa-intro__text,
    .ap-casa__text,
    .ap-sicuro__text,
    .ap-sicuro__text li {
        font-size: 16px;
        line-height: 20px;
    }

    .ap-casa__inner,
    .ap-sicuro__inner {
        padding: 30px 22px;
    }

    .ap-casa__title,
    .ap-sicuro__title {
        font-size: 24px;
        line-height: 1.15;
        margin-bottom: 22px;
    }

    .ap-sicuro__text li {
        padding-left: 24px;
    }

    .ap-sicuro__text li::before {
        top: 4px;
    }

}
/* ==========================================================================
   ALLOGGI PROTETTI - A CHI SONO DESTINATI
   ========================================================================== */


/* INTRO */

.ap-dest-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.ap-dest-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ap-dest-intro__content,
.ap-dest-intro__image {
    min-width: 0;
}

.ap-dest-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.ap-dest-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.ap-dest-intro__highlight p {
    margin: 0;
}

.ap-dest-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ap-dest-intro__text p {
    margin: 0 0 18px;
}

.ap-dest-intro__text p:last-child {
    margin-bottom: 0;
}

.ap-dest-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   BOX AZZURRO
   ========================================================================== */

.ap-dest-casa {
    margin-bottom: 45px;
}

.ap-dest-casa__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.ap-dest-casa__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 30px;
    line-height: 35px;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.ap-dest-casa__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}

.ap-dest-casa__text,
.ap-dest-casa__image {
    min-width: 0;
}

.ap-dest-casa__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-dest-casa__text p {
    margin: 0 0 18px;
}

.ap-dest-casa__text p:last-child {
    margin-bottom: 0;
}

.ap-dest-casa__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* TABLET */

@media (max-width: 991px) {

    .ap-dest-intro__grid,
    .ap-dest-casa__grid {
        gap: 35px;
    }

    .ap-dest-intro__highlight {
        font-size: 24px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .ap-dest-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .ap-dest-intro__grid,
    .ap-dest-casa__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ap-dest-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .ap-dest-intro__highlight {
        font-size: 21px;
        line-height: 1.2;
    }

    .ap-dest-intro__text,
    .ap-dest-casa__text {
        font-size: 16px;
        line-height: 20px;
    }

    .ap-dest-casa__inner {
        padding: 30px 22px;
    }

    .ap-dest-casa__title {
        font-size: 24px;
        line-height: 1.15;
        margin-bottom: 22px;
    }

}
/* ==========================================================================
   ALLOGGI PROTETTI - COSA OFFRIAMO
   ========================================================================== */

/* INTRO */

.ap-servizi-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.ap-servizi-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ap-servizi-intro__content,
.ap-servizi-intro__image {
    min-width: 0;
}

.ap-servizi-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.ap-servizi-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
}

.ap-servizi-intro__highlight p {
    margin: 0;
}

.ap-servizi-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ap-servizi-intro__text p {
    margin: 0 0 18px;
}

.ap-servizi-intro__text p:last-child {
    margin-bottom: 0;
}

.ap-servizi-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   SERVIZI INCLUSI
   ========================================================================== */

.ap-servizi-inclusi {
    margin-bottom: 40px;
}

.ap-servizi-inclusi__inner {
    padding: 40px;
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
    border-radius: 10px;
    color: #fff;
}

.ap-servizi-inclusi__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.ap-servizi-inclusi__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.ap-servizi-inclusi__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-servizi-inclusi__text p {
    margin: 0 0 18px;
}

.ap-servizi-inclusi__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   SERVIZI AGGIUNTIVI
   ========================================================================== */

.ap-servizi-extra {
    margin-bottom: 40px;
}

.ap-servizi-extra__inner {
    padding: 40px;
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;
    border-radius: 10px;
    color: #fff;
}

.ap-servizi-extra__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 700;
}

.ap-servizi-extra__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ap-servizi-extra__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.ap-servizi-extra__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-servizi-extra__text p {
    margin: 0 0 18px;
}

.ap-servizi-extra__cta {
    margin-top: 25px;
}

.ap-servizi-extra__cta .btn {
    background: #fff;
    color: #3D93A8;
    border-color: #fff;
}


/* LISTE NEI BOX COLORATI */

.ap-servizi-inclusi__text ul,
.ap-servizi-extra__text ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
}

.ap-servizi-inclusi__text li,
.ap-servizi-extra__text li {
    position: relative;
    margin: 0 0 20px;
    padding-left: 25px;
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-servizi-inclusi__text li::before,
.ap-servizi-extra__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 13px;
    height: 13px;
    background: #fff;
    border-radius: 4px;
}


/* ==========================================================================
   CHIUSURA
   ========================================================================== */

.ap-servizi-finale {
    margin-top: 40px;
    margin-bottom: 45px;
}

.ap-servizi-finale__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}

.ap-servizi-finale__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ap-servizi-finale__text p {
    margin: 0 0 18px;
}

.ap-servizi-finale__text p:last-child {
    margin-bottom: 0;
}

.ap-servizi-finale__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.ap-servizi-finale__text h2 {
  font-weight: normal;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: -1px;
}

/* MOBILE */

@media (max-width: 767px) {

    .ap-servizi-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .ap-servizi-intro__grid,
    .ap-servizi-inclusi__grid,
    .ap-servizi-extra__grid,
    .ap-servizi-finale__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ap-servizi-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .ap-servizi-intro__highlight {
        font-size: 21px;
        line-height: 1.2;
    }

    .ap-servizi-inclusi__inner,
    .ap-servizi-extra__inner {
        padding: 30px 22px;
    }

    .ap-servizi-inclusi__title,
    .ap-servizi-extra__title {
        font-size: 24px;
        line-height: 1.15;
    }

    .ap-servizi-intro__text,
    .ap-servizi-inclusi__text,
    .ap-servizi-extra__text,
    .ap-servizi-inclusi__text li,
    .ap-servizi-extra__text li,
    .ap-servizi-finale__text {
        font-size: 16px;
        line-height: 20px;
    }

    .ap-servizi-inclusi__text li,
    .ap-servizi-extra__text li {
        padding-left: 24px;
    }

    .ap-servizi-inclusi__text li::before,
    .ap-servizi-extra__text li::before {
        top: 4px;
    }
    
.ap-servizi-finale__text h2 {
  font-weight: normal;
  font-size: 20px;
  line-height: 24px;
}

}
/* ==========================================================================
   ALLOGGI PROTETTI - RETTE
   ========================================================================== */


/* INTRO */

.ap-rette-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.ap-rette-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ap-rette-intro__content,
.ap-rette-intro__image {
    min-width: 0;
}

.ap-rette-intro__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.ap-rette-intro__highlight {
    margin-bottom: 15px;
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.15;
}

.ap-rette-intro__highlight p {
    margin: 0;
}

.ap-rette-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ap-rette-intro__text p {
    margin: 0 0 18px;
}

.ap-rette-intro__text p:last-child {
    margin-bottom: 0;
}

.ap-rette-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   TABELLA DESKTOP
   ========================================================================== */

.ap-rette-table-section {
    margin-bottom: 40px;
}

.ap-rette-table-wrap {
    width: 100%;
}

.ap-rette-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: auto;
}

.ap-rette-table th,
.ap-rette-table td {
    padding: 16px;
    text-align: center;
    vertical-align: middle;
    border-bottom: 1px solid #D8D8D8;
}
.ap-rette-table th {
    border-bottom: none;
}

.ap-rette-table th {
    color: #56ACCA;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 600;
    text-transform: uppercase;
}

.ap-rette-table td {
    color: #222;
    font-size: 18px;
    line-height: 1.35;
}


/* PILLOLE PREZZO */

.ap-rette-table__price {
    display: inline-block;
    min-width: 100px;
    padding: 10px 18px;

    background: #fff;
    border: 2px solid #E3E3E3;
    border-radius: 14px;

    text-align: center;
    white-space: nowrap;
}

.ap-rette-table__price--total {
    background: #ECECEC;
    border-color: #eeeeee;
    font-weight: 700;
}


/* ==========================================================================
   CTA
   ========================================================================== */

.ap-rette-cta {
    margin-bottom: 40px;
}

.ap-rette-cta__inner {
    padding: 30px 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        center / cover
        no-repeat;

    border-radius: 10px;
    text-align: center;
}

.ap-rette-cta__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
    max-width: 670px;
        margin:0 auto;
    letter-spacing: -0.5px;
}

.ap-rette-cta__text p {
    margin: 0;
}

.ap-rette-cta__button {
    margin-top: 18px;
}

.ap-rette-cta__button .btn {
    background: #3DBED3;
    color: #fff;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .ap-rette-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .ap-rette-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ap-rette-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .ap-rette-intro__highlight {
        font-size: 21px;
        line-height: 1.2;
    }

    .ap-rette-intro__text {
        font-size: 16px;
        line-height: 20px;
    }


    /* ----------------------------------------------------------
       TABELLA -> CARD
       ---------------------------------------------------------- */

    .ap-rette-table,
    .ap-rette-table tbody,
    .ap-rette-table tr,
    .ap-rette-table td {
        display: block;
        width: 100%;
    }

    .ap-rette-table thead {
        display: none;
    }

    .ap-rette-table {
        border-collapse: separate;
    }

    .ap-rette-table tbody {
        display: grid;
        gap: 25px;
    }

    .ap-rette-table tr {
        padding: 14px 20px;

        background: #fff;
        border: 1px solid #dedede;
        border-radius: 18px;

        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    }

    .ap-rette-table td {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;

        padding: 13px 4px;

        border-bottom: 1px solid #d8d8d8;

        font-size: 16px;
        line-height: 20px;
        text-align: right;
    }

    .ap-rette-table td:last-child {
        border-bottom: 0;
    }


    /* ETICHETTA MOBILE */

    .ap-rette-table td::before {
        content: attr(data-label);

        flex: 0 0 48%;

        color: #44B4D4;
        font-size: 15px;
        line-height: 1.2;
        font-weight: 600;

        text-align: left;
    }


    /* VALORI */

    .ap-rette-table__price {
        min-width: 0;
        padding: 8px 14px;

        font-size: 16px;
        line-height: 20px;

        border-radius: 14px;
    }

    .ap-rette-table__price--total {
        padding: 10px 17px;
        font-weight: 800;
    }


    /* CTA */

    .ap-rette-cta__inner {
        padding: 28px 20px;
    }

    .ap-rette-cta__text {
        font-size: 16px;
        line-height: 20px;
    }

}
/* ==========================================================================
   ALLOGGI PROTETTI - COME RICHIEDERE IL SERVIZIO
   ========================================================================== */

.ap-accesso-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.ap-accesso-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.ap-accesso-intro__content,
.ap-accesso-intro__image {
    min-width: 0;
}

.ap-accesso-intro__title {
    margin: 0 0 18px;
    color: #3F434D;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.ap-accesso-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.ap-accesso-intro__text p {
    margin: 0 0 18px;
}

.ap-accesso-intro__text p:last-child {
    margin-bottom: 0;
}

.ap-accesso-intro__cta {
    margin-top: 20px;
}

.ap-accesso-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ITER */

.ap-accesso-iter {
    margin-bottom: 35px;
}

.ap-accesso-iter__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch;
}

.ap-accesso-iter__image,
.ap-accesso-iter__box {
    min-width: 0;
}

.ap-accesso-iter__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.ap-accesso-iter__box {
    padding: 40px;

    background:
        #2E6C8D url("../images/pattern-table-blue.png") left center / cover no-repeat;

    border-radius: 10px;
    color: #fff;
}

.ap-accesso-iter__title {
    margin: 0 0 20px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    font-weight: bold;
    letter-spacing: -1px;
}

.ap-accesso-iter__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.ap-accesso-iter__text p {
    margin: 0 0 18px;
}

.ap-accesso-iter__text p:last-child {
    margin-bottom: 0;
}


/* CTA FINALI */

.ap-accesso-cta {
    margin-bottom: 35px;
}

.ap-accesso-cta__inner {
    padding: 30px 40px;
    border-radius: 10px;
    text-align: center;
}

.ap-accesso-cta--green .ap-accesso-cta__inner {
    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;
}

.ap-accesso-cta--blue .ap-accesso-cta__inner {
    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;
}

.ap-accesso-cta__title {
    margin-bottom: 18px;
    color: #fff;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 700;
}

.ap-accesso-cta__button {
    background: #fff;
    color: #3D93A8;
}

.ap-accesso-cta__button:hover {
    background: #fff;
    color: #3D93A8;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .ap-accesso-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .ap-accesso-intro__grid,
    .ap-accesso-iter__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .ap-accesso-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .ap-accesso-intro__text,
    .ap-accesso-iter__text {
        font-size: 16px;
        line-height: 20px;
    }

    .ap-accesso-iter {
        margin-bottom: 25px;
    }

    .ap-accesso-iter__box {
        padding: 30px 20px;
    }

    .ap-accesso-iter__title {
        font-size: 24px;
    }

    .ap-accesso-iter__image img {
        height: auto;
    }

    .ap-accesso-cta {
        margin-bottom: 25px;
    }

    .ap-accesso-cta__inner {
        padding: 28px 20px;
    }

    .ap-accesso-cta__title {
        font-size: 18px;
    }
}
/* ==========================================================================
   CHI SIAMO - LA STORIA
   ========================================================================== */


/* INTRO */

.storia-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.storia-intro__grid,
.storia-intro__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.storia-intro__bottom {
    margin-top: 30px;
    align-items: center;
}

.storia-intro__title {
    margin: 0 0 20px;
    color: #454446;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.storia-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.storia-intro__text p {
    margin: 0 0 18px;
}

.storia-intro__text p:last-child {
    margin-bottom: 0;
}

.storia-intro__video video {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.storia-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   NOME BASSANI
   ========================================================================== */

.storia-bassani {
    margin-bottom: 40px;
}

.storia-bassani__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.storia-bassani__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1px;
}

.storia-bassani__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;

}

.storia-bassani__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.storia-bassani__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.storia-bassani__text p {
    margin: 0 0 18px;
}


/* ==========================================================================
   TIMELINE
   ========================================================================== */

.storia-timeline {
    margin-bottom: 45px;
}

.storia-timeline__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.storia-timeline__title {
    margin: 0 0 30px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1px;
}

.storia-timeline__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.storia-timeline__row + .storia-timeline__row {
    margin-top: 35px;
}

.storia-timeline__images {
    display: flex;
    flex-direction: column;
    gap: 25px;
    min-width: 0;
}

.storia-timeline__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.storia-timeline__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.storia-timeline__text p {
    margin: 0 0 18px;
}

.storia-timeline__text ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.storia-timeline__text li {
    position: relative;
    margin-bottom: 18px;
    padding-left: 24px;
    color: #fff;
}

.storia-timeline__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 11px;
    height: 11px;
    background: #fff;
    border-radius: 4px;
}

.storia-timeline__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.storia-timeline__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.storia-timeline__text p {
    margin: 0 0 18px;
}

.storia-timeline__text ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.storia-timeline__text li {
    position: relative;
    margin-bottom: 18px;
    padding-left: 24px;
    color: #fff;
}

.storia-timeline__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 11px;
    height: 11px;
    background: #fff;
    border-radius: 4px;
}


/* ==========================================================================
   SVILUPPI RECENTI
   ========================================================================== */

.storia-recenti {
    margin-bottom: 45px;
}

.storia-recenti__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}

.storia-recenti__title {
    margin: 0 0 18px;
    color: #3D93A8;
    font-size: 24px;
    line-height: 29px;
    font-weight: 700;
    letter-spacing: -1px;
}

.storia-recenti__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.storia-recenti__text p {
    margin: 0 0 18px;
}

.storia-recenti__text ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.storia-recenti__text li {
    position: relative;
    margin-bottom: 12px;
    padding-left: 22px;
}

.storia-recenti__text li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 11px;
    height: 11px;
    background: #3D93A8;
    border-radius: 4px;
}

.storia-recenti__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .storia-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .storia-intro__grid,
    .storia-intro__bottom,
    .storia-bassani__grid,
    .storia-timeline__grid,
    .storia-recenti__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .storia-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .storia-intro__text,
    .storia-bassani__text,
    .storia-timeline__text,
    .storia-recenti__text {
        font-size: 16px;
        line-height: 20px;
    }

    .storia-bassani__inner,
    .storia-timeline__inner {
        padding: 30px 22px;
    }

    .storia-bassani__title,
    .storia-timeline__title {
        font-size: 24px;
        line-height: 1.15;
    }

    .storia-recenti__title {
        font-size: 21px;
    }

    .storia-timeline__text li,
    .storia-recenti__text li {
        font-size: 16px;
        line-height: 20px;
    }
	 .storia-timeline__row {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .storia-timeline__row + .storia-timeline__row {
        margin-top: 20px;
    }

    .storia-timeline__text,
    .storia-timeline__text li {
        font-size: 16px;
        line-height: 20px;
    }

}
/* ==========================================================================
   CHI SIAMO - CONSIGLIO DI AMMINISTRAZIONE
   ========================================================================== */


/* INTRO */

.cda-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.cda-intro__text {
    color: #3D93A8;
    font-size: 28px;
    line-height: 1.2;
}

.cda-intro__text p {
    margin: 0;
}


/* ==========================================================================
   BOX CONSIGLIO
   ========================================================================== */

.cda-consiglio {
    margin-bottom: 45px;
}

.cda-consiglio__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}


/* GRID */

.cda-consiglio__grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 40px 25px;
    align-items: start;
}


/* I PRIMI DUE OCCUPANO LA PRIMA RIGA */

.cda-card--1 {
    grid-column: 1;
}

.cda-card--2 {
    grid-column: 2;
}

.cda-card--3 {
    grid-column: 1;
}

.cda-card--4 {
    grid-column: 2;
}

.cda-card--5 {
    grid-column: 3;
}

.cda-card--6 {
    grid-column: 4;
}

.cda-card--7 {
    grid-column: 5;
}


/* CARD */

.cda-card {
    min-width: 0;
}

.cda-card__name {
    margin: 0 0 7px;
    color: #fff;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
}

.cda-card__role {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, 0.75);
    font-size: 18px;
    line-height: 1.2;
}

.cda-card__image {
    overflow: hidden;
    border-radius: 8px;
}

.cda-card__image img {
    display: block;
    width: 100%;
    height: 160px;
    object-fit: cover;
}


/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .cda-consiglio__grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 35px 25px;
    }

    .cda-card--1,
    .cda-card--2,
    .cda-card--3,
    .cda-card--4,
    .cda-card--5,
    .cda-card--6,
    .cda-card--7 {
        grid-column: auto;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .cda-intro {
        margin-top: 30px;
        margin-bottom: 25px;
    }

    .cda-intro__text {
        font-size: 21px;
        line-height: 1.25;
    }

    .cda-consiglio__inner {
        padding: 30px 22px;
    }

    .cda-consiglio__grid {
        grid-template-columns: 1fr 1fr;
        gap: 30px 18px;
    }

    .cda-card__name {
        font-size: 16px;
        line-height: 20px;
    }

    .cda-card__role {
        margin-bottom: 12px;
        font-size: 16px;
        line-height: 20px;
    }

    .cda-card__image img {
        height: 150px;
    }

}


/* MOBILE PICCOLO */

@media (max-width: 480px) {

    .cda-consiglio__grid {
        grid-template-columns: 1fr;
    }

    .cda-card__image img {
        height: auto;
        aspect-ratio: 4 / 3;
    }

}
/* ==========================================================================
   CHI SIAMO - ORGANISMO DI VIGILANZA
   ========================================================================== */

.odv-content {
    margin-top: 40px;
    margin-bottom: 45px;
}


/* EVIDENZA */

.odv-content__highlight {
    margin-bottom: 12px;
    color: #3D93A8;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.odv-content__highlight p {
    margin: 0;
}


/* TESTI */

.odv-content__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.odv-content__text p {
    margin: 0 0 18px;
}

.odv-content__text p:last-child {
    margin-bottom: 0;
}

.odv-content__strong {
    margin-top: 28px;
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 700;
}

.odv-content__strong p {
    margin: 0;
}


/* ==========================================================================
   MEMBRI
   ========================================================================== */

.odv-members {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    margin-top: 35px;
    margin-bottom: 30px;

    padding: 0 20px;

    background: #f6f4f4;
    border-radius: 10px;
}

.odv-members__item {
    padding: 26px 20px;

    color: #3F434D;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}


/* TESTO FINALE */

.odv-content__text--final {
    margin-top: 5px;
}
.odv-content__text--final p {
    font-size: 16px

}


/* ==========================================================================
   EMAIL
   ========================================================================== */

.odv-email {
    margin-top: 40px;
    text-align: center;
}

.odv-email__button {
    min-width: 300px;
    background: #3D93A8;
    color: #fff;
}

.odv-email__button:hover {
    background: #3D93A8;
    color: #fff;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .odv-content {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .odv-content__highlight {
        font-size: 21px;
        line-height: 1.2;
    }

    .odv-content__text,
    .odv-content__strong {
        font-size: 16px;
        line-height: 20px;
    }

    .odv-content__strong {
        margin-top: 24px;
    }

    .odv-members {
        grid-template-columns: 1fr;
        padding: 0 18px;
        margin-top: 28px;
        margin-bottom: 28px;
    }

    .odv-members__item {
        padding: 18px 5px;

        font-size: 16px;
        line-height: 20px;

        border-bottom: 1px solid #ddd;
    }

    .odv-members__item:last-child {
        border-bottom: 0;
    }

    .odv-email {
        margin-top: 30px;
    }

    .odv-email__button {
        min-width: 0;
        width: 100%;
        max-width: 300px;
    }

}
/* ==========================================================================
   CHI SIAMO - IL PERSONALE
   ========================================================================== */


/* GENERALE */

.personale-page h3 {
    margin: 0 0 8px;
    font-size: 24px;
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: -1px;
}

.personale-video {
    min-width: 0;
}

.personale-video video {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   INTRO
   ========================================================================== */

.personale-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.personale-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.personale-intro__title {
    margin: 0 0 20px;
    color: #454446;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.personale-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.personale-intro__text p {
    margin: 0 0 18px;
}

.personale-intro__text p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   TITOLI BOX
   ========================================================================== */

.personale-section-title {
    margin: 0 0 30px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1px;
}


/* ==========================================================================
   SALUTE
   ========================================================================== */

.personale-salute {
    margin-bottom: 40px;
}

.personale-salute__inner {
    padding: 40px;

    background:
        #6C9E36
        url("../images/pattern-table-green.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}

.personale-list {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.personale-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
    align-items: start;
}

.personale-row__content {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.personale-row__content h3 {
    color: #fff;
}

.personale-row__content p {
    margin: 0 0 18px;
}

.personale-row__content p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   BENESSERE
   ========================================================================== */

.personale-benessere {
    margin-bottom: 40px;
}

.personale-benessere__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}

.personale-benessere__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
    margin-top: 35px;
    align-items: center;
}

.personale-benessere__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.personale-benessere__text h3 {
    color: #fff;
    margin-top: 25px;
}

.personale-benessere__text h3:first-child {
    margin-top: 0;
}

.personale-benessere__text p {
    margin: 0 0 18px;
}

.personale-benessere__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   AMBIENTE SICURO
   ========================================================================== */

.personale-ambiente {
    margin-bottom: 45px;
}

.personale-ambiente__inner {
    padding: 40px;

    background:
        #3D93A8
        url("../images/pattern-table-blue-2.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
}

.personale-ambiente__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px 50px;
}

.personale-ambiente__item {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.personale-ambiente__item h3 {
    color: #fff;
}

.personale-ambiente__item p {
    margin: 0;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .personale-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .personale-intro__grid,
    .personale-row,
    .personale-benessere__bottom,
    .personale-ambiente__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .personale-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .personale-intro__text,
    .personale-row__content,
    .personale-benessere__text,
    .personale-ambiente__item {
        font-size: 16px;
        line-height: 20px;
    }

    .personale-page h3 {
        font-size: 18px;
        line-height: 1.2;
    }

    .personale-section-title {
        margin-bottom: 25px;
        font-size: 24px;
        line-height: 1.15;
    }

    .personale-salute__inner,
    .personale-benessere__inner,
    .personale-ambiente__inner {
        padding: 30px 22px;
    }

    .personale-list {
        gap: 30px;
    }

    .personale-benessere__bottom {
        margin-top: 30px;
    }

}
/* ==========================================================================
   CHI SIAMO - I VOLONTARI
   ========================================================================== */


/* INTRO */

.volontari-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.volontari-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.volontari-intro__title {
    margin: 0 0 20px;
    color: #454446;
    font-size: 40px;
    line-height: 42px;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.volontari-intro__text {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.volontari-intro__text p {
    margin: 0 0 18px;
}

.volontari-intro__text p:last-child {
    margin-bottom: 0;
}

.volontari-video video {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}


/* ==========================================================================
   ASSOCIAZIONE AMBA
   ========================================================================== */

.volontari-amba {
    margin-bottom: 40px;
}

.volontari-amba__inner {
    padding: 40px;

    background:
        #2E6C8D
        url("../images/pattern-table-blue.png")
        left center / auto 100%
        no-repeat;

    border-radius: 10px;
    color: #fff;
}

.volontari-amba__title {
    margin: 0 0 25px;
    color: #fff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1.3px;
}

.volontari-amba__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;

}

.volontari-amba__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.volontari-amba__text {
    color: #fff;
    font-size: 18px;
    line-height: 1.35;
}

.volontari-amba__text p {
    margin: 0 0 18px;
}

.volontari-amba__text p:last-child {
    margin-bottom: 0;
}

.volontari-amba__cta {
    margin-top: 25px;
}

.volontari-amba__cta .btn {
    background: #fff;
    color: #3D93A8;
}

.volontari-amba__cta .btn:hover {
    background: #fff;
    color: #3D93A8;
}


/* ==========================================================================
   ATTIVITÀ
   ========================================================================== */

.volontari-attivita {
    margin-bottom: 45px;
}

.volontari-attivita__inner {
    padding: 40px;
    background: #f6f4f4;
    border-radius: 10px;
}

.volontari-attivita__title {
    margin: 0 0 25px;
    color: #3F434D;
    font-size: 30px;
    line-height: 34px;
    font-weight: 400;
    letter-spacing: -1px;
}

.volontari-attivita__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
}

.volontari-attivita__column {
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.volontari-attivita__column p {
    margin: 0 0 18px;
}

.volontari-attivita__column ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.volontari-attivita__column li {
    position: relative;
    margin-bottom: 22px;
    padding-left: 24px;
    color: #3F434D;
}

.volontari-attivita__column li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 11px;
    height: 11px;
    background: #3D93A8;
    border-radius: 4px;
}

.volontari-attivita__finale {
    margin-top: 20px;
    color: #3F434D;
    font-size: 18px;
    line-height: 1.35;
}

.volontari-attivita__finale p {
    margin: 0;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .volontari-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .volontari-intro__grid,
    .volontari-amba__grid,
    .volontari-attivita__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .volontari-intro__title {
        font-size: 30px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .volontari-intro__text,
    .volontari-amba__text,
    .volontari-attivita__column,
    .volontari-attivita__finale {
        font-size: 16px;
        line-height: 20px;
    }

    .volontari-amba__inner,
    .volontari-attivita__inner {
        padding: 30px 22px;
    }

    .volontari-amba__title {
        font-size: 24px;
        line-height: 1.15;
    }

    .volontari-attivita__title {
        font-size: 22px;
        line-height: 1.2;
    }

    .volontari-attivita__column li {
        font-size: 16px;
        line-height: 20px;
    }

}
/* ==========================================================================
   AMMINISTRAZIONE TRASPARENTE
   ========================================================================== */

.amm-trasparente {
    margin-top: 45px;
    margin-bottom: 50px;
    color: #3F434D;
    font-size: 16px;
    line-height: 1.45;
}
.amm-trasparente__title {
    margin: 0 0 30px;
    color: #3F434D;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -1px;
}

.amm-trasparente__section {
    margin-bottom: 20px;
}

.amm-trasparente__section-title {
    margin: 0 0 14px;
    color: #252525;
    font-size: 20px;
    line-height: 22px;
    font-weight: 700;
    text-transform: uppercase;
}

.amm-trasparente__subtitle {
    margin: 22px 0 10px;
    color: #252525;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    text-transform: uppercase;
}

.amm-trasparente__list,
.amm-trasparente__sublist {
    margin: 0;
    padding-left: 25px;
}

.amm-trasparente__list li,
.amm-trasparente__sublist li {
    margin-bottom: 7px;
    padding-left: 0;
    color: #3F434D;
    font-size: 16px;
    line-height: 1.4;
}

/*
 * Qui neutralizziamo eventuali bullet custom globali
 * usati in altre sezioni del sito.
 */
.amm-trasparente__list li::before,
.amm-trasparente__sublist li::before {
    display: none;
}

.amm-trasparente__list {
    list-style: disc;
}

.amm-trasparente__sublist {
    margin-top: 7px;
    list-style: disc;
}

.amm-trasparente a {
    color: #3F434D;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.amm-trasparente a:hover {
    color: #3D93A8;
}

.amm-trasparente__text {
    margin: 0;
}


/* CTA FINALI */

.amm-trasparente__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
}

.amm-trasparente__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 1.6rem;

    background: #3D93A8;
    border-radius: 999px;

    color: #fff !important;

    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;

    text-decoration: none !important;
    text-transform: uppercase;
}

.amm-trasparente__btn:hover {
    background: #2E6C8D;
    color: #fff !important;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .amm-trasparente {
        margin-top: 30px;
        margin-bottom: 35px;

        font-size: 16px;
        line-height: 20px;
    }

    .amm-trasparente__title {
        margin-bottom: 25px;
        font-size: 20px;
    }

    .amm-trasparente__section-title {
        font-size: 18px;
        line-height: 22px;
    }

    .amm-trasparente__subtitle {
        font-size: 16px;
        line-height: 20px;
    }

    .amm-trasparente__list,
    .amm-trasparente__sublist {
        padding-left: 20px;
    }

    .amm-trasparente__list li,
    .amm-trasparente__sublist li {
        font-size: 16px;
        line-height: 20px;
    }

    .amm-trasparente__buttons {
        flex-direction: column;
    }

    .amm-trasparente__btn {
        width: 100%;
        font-size: 13px;
        text-align: center;
    }

}
/* ==========================================================================
   CHI SIAMO - WHISTLEBLOWING
   ========================================================================== */

.whistle-page {
    color: #3F434D;
}


/* ==========================================================================
   GENERALE
   ========================================================================== */

.whistle-title {
    margin: 0 0 16px;

    color: #454446;

    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    letter-spacing: -1px;
}

.whistle-text {
    color: #454446;

    font-size: 18px;
    line-height: 24px;
}

.whistle-text p {
    margin: 0 0 18px;
}

.whistle-text p:last-child {
    margin-bottom: 0;
}

.whistle-text a {
    color: #3F434D;
    text-decoration: underline;
}


/* ==========================================================================
   INTRO
   ========================================================================== */

.whistle-intro {
    margin-top: 40px;
    margin-bottom: 35px;
}

.whistle-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: start;
}


/* ==========================================================================
   BOX CHI PUÒ SEGNALARE
   ========================================================================== */

.whistle-who {
    margin-bottom: 40px;
}

.whistle-who__inner {
    padding: 35px 40px;

    background: #f6f4f4;

    border-radius: 10px;
}

.whistle-who__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
}

.whistle-who__finale {
    margin-top: 25px;
}


/* ==========================================================================
   LISTE
   ========================================================================== */

.whistle-list ul {
    margin: 0;
    padding: 0;

    list-style: none;
}

.whistle-list li {
    position: relative;

    margin-bottom: 20px;
    padding-left: 24px;

    color: #3F434D;

    font-size: 18px;
    line-height: 24px;
}

.whistle-list li::before {
    content: "";

    position: absolute;

    left: 0;
    top: 6px;

    width: 11px;
    height: 11px;

    background: #3D93A8;

    border-radius: 4px;
}


/* ==========================================================================
   BLOCCHI CENTRALI
   ========================================================================== */

.whistle-columns {
    margin-bottom: 40px;
}

.whistle-columns__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: start;
}


/* ==========================================================================
   CTA
   ========================================================================== */

.whistle-cta {
    margin-top: 22px;
}

.whistle-buttons {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 12px;

    margin-top: 22px;
}

.whistle-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;



    padding: 8px 44px;

    border: 1px solid #35AECC;
    border-radius: 999px;

    background: #fff;

    color: #56ACCA !important;

    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
    text-decoration: none !important;

    transition:
        background-color .2s ease,
        color .2s ease;
}

.whistle-btn:hover {
    background: #35AECC;
    color: #fff !important;
}


/* ==========================================================================
   MODALITÀ
   ========================================================================== */

.whistle-modalita {
    margin-top: 50px;
    margin-bottom: 50px;
}

.whistle-modalita__title {
    margin: 0 0 20px;

    color: #3F434D;

    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}

.whistle-modalita__intro {
    margin-bottom: 25px;

    font-weight: 700;
}

.whistle-modalita__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 55px;

    align-items: start;
}

.whistle-modalita__incontro {
    margin-top: 30px;
}

.whistle-nota {
    margin-top: 35px;

    font-size: 16px;
    line-height: 1.4;
}
.whistle-who__inner h2 {
  font-size: 18px;
}

/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .whistle-intro__grid,
    .whistle-who__grid,
    .whistle-columns__grid,
    .whistle-modalita__grid {
        gap: 35px;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .whistle-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .whistle-intro__grid,
    .whistle-who__grid,
    .whistle-columns__grid,
    .whistle-modalita__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .whistle-title {
        font-size: 18px;
        line-height: 22px;
		overflow-wrap: anywhere;
word-break: break-word;
    }

    .whistle-text,
    .whistle-list li {
        font-size: 16px;
        line-height: 20px;
    }

    .whistle-who {
        margin-bottom: 30px;
    }

    .whistle-who__inner {
        padding: 28px 22px;
    }

    .whistle-columns {
        margin-bottom: 30px;
    }

    .whistle-modalita {
        margin-top: 35px;
        margin-bottom: 35px;
    }

    .whistle-modalita__title {
        font-size: 22px;
        line-height: 26px;
    }

    .whistle-modalita__intro {
        margin-bottom: 20px;
    }

    .whistle-buttons {
        align-items: stretch;
    }

    .whistle-btn {
        width: 100%;
        min-width: 0;

        font-size: 14px;
    }

    .whistle-nota {
        font-size: 16px;
        line-height: 20px;
    }

}
/* ==========================================================================
   WHISTLEBLOWING - MODALITÀ DI SEGNALAZIONE
   Correzione bullet / elenco numerato
   ========================================================================== */


/* Il primo paragrafo di ciascuna modalità ha il quadratino azzurro */

.whistle-modalita .whistle-list > p:first-child {
    position: relative;
    padding-left: 24px;
}

.whistle-modalita .whistle-list > p:first-child::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;

    width: 11px;
    height: 11px;

    background: #3D93A8;
    border-radius: 4px;
}


/* ==========================================================================
   ELENCO NUMERATO DELLA POSTA
   ========================================================================== */

.whistle-modalita .whistle-list ol {
    margin: 25px 0 0 30px;
    padding-left: 25px;

    list-style: decimal;
}

.whistle-modalita .whistle-list ol li {
    position: static;

    margin-bottom: 22px;
    padding-left: 8px;

    color: #3F434D;

    font-size: 16px;
    line-height: 1.45;
}


/* togliamo il quadratino dagli elementi 1, 2, 3 */

.whistle-modalita .whistle-list ol li::before {
    display: none;
    content: none;
}


/* ultimo elemento */

.whistle-modalita .whistle-list ol li:last-child {
    margin-bottom: 0;
}
/* ==========================================================================
   COME SOSTENERCI - I NOSTRI SOSTENITORI
   INTRO
   ========================================================================== */

.sostenitori-intro {
    margin-top: 40px;
    margin-bottom: 30px;
}

.sostenitori-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.sostenitori-intro__title {
    margin: 0 0 15px;

    color: #3F434D;

    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
}

.sostenitori-intro__text {
    color: #3F434D;

    font-size: 18px;
    line-height: 1.35;
}

.sostenitori-intro__text p {
    margin: 0 0 18px;
}

.sostenitori-intro__text p:last-child {
    margin-bottom: 0;
}

.sostenitori-intro__image img {
    display: block;

    width: 100%;
    height: auto;

    border-radius: 10px;
}

.sostenitori-intro__cta {
    margin-top: 25px;
    text-align: center;
}

.sostenitori-tabelle {
    margin-bottom: 50px;
}


/* MOBILE */

@media (max-width: 767px) {

    .sostenitori-intro {
        margin-top: 30px;
    }

    .sostenitori-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .sostenitori-intro__title {
        font-size: 30px;
        line-height: 1.08;
    }

    .sostenitori-intro__text {
        font-size: 16px;
        line-height: 20px;
    }

    .sostenitori-intro__cta {
        margin-top: 20px;
    }

}
/* ==========================================================================
   COME SOSTENERCI - I NOSTRI SOSTENITORI
   ========================================================================== */

.title-donazioni-table {
    margin: 3.5rem 0 10px;
    color: #3F434D;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
}

.don-header,
.don-row {
    display: grid;
    grid-template-columns: 120px 1fr 2fr;
    gap: 20px;

    padding: 15px 0;

    border-bottom: 1px solid #D8D8D8;
}

.don-header {
    color: #57ADCB;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 18px;
    letter-spacing: -0.5px;
}

.don-row {
    color: black;
    font-size: 18px;
    line-height: 1.35;
}


/* ==========================================================================
   TABELLE A 2 COLONNE
   ========================================================================== */

.don-header.don-2col,
.don-row.don-2col {
    grid-template-columns: 1fr 180px;
    align-items: center;
}

.don-2col > div:last-child {
    justify-self: end;
    text-align: right;
}

.don-2col > div:last-child .value {
    font-weight: 400;
}


/* ==========================================================================
   TITOLI
   ========================================================================== */

.tit-table-don {
    padding-top: 40px;

    color: #3F434D;

    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}

.sot-table-don {
    margin-top: 3px;

    color: #3F434D;

    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
}

.sot-table-don.pt40 {
    padding-top: 40px;
}


/* ==========================================================================
   TOTALI
   ========================================================================== */

.text-final {
    margin-top: 15px;
    font-weight: 700;
}

.don-row.don-2col:last-child {
    border-bottom: 0;
}

.box-totale-def {
    display: grid;
    grid-template-columns: 1fr 1fr;

    margin-top: 30px;
    padding-top: 30px;

    border-top: 1px solid #D8D8D8;

    color: #2E6C8D;

    font-size: 21px;
    line-height: 1.25;
    font-weight: 700;
}

.box-totale-def > div:last-child {
    text-align: right;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .title-donazioni-table {
        margin-top: 25px;

        font-size: 18px;
        line-height: 22px;
    }


    /* intestazione desktop nascosta */

    .don-header {
        display: none;
    }


    /* ogni riga diventa una card verticale */

    .don-row {
        display: block;

        padding: 18px 4px;

        border-bottom: 1px solid #D8D8D8;

        font-size: 16px;
        line-height: 20px;
    }


    /*
     * Ogni singolo dato:
     *
     * ANNO:          1960
     * DONATORE:      Nico Castellini
     * DESCRIZIONE:   Lascito
     */

    .don-row > div {
        display: grid;
        grid-template-columns: minmax(110px, auto) 1fr;
        gap: 15px;

        margin-bottom: 5px;

        align-items: start;
    }

    .don-row > div:last-child {
        margin-bottom: 0;
    }


    /* etichetta generata dal data-label */

    .don-row > div::before {
        content: attr(data-label);

        color: #57ADCB;

        font-size: 15px;
        line-height: 20px;
        font-weight: 700;

        text-transform: uppercase;
    }

    /* aggiungiamo i ":" come nello screenshot */

    .don-row > div[data-label]::before {
        content: attr(data-label) ":";
    }


    /* valore a destra */

    .don-row > div .value {
        display: block;

        justify-self: end;

        color: black;

        font-size: 15px;
        line-height: 20px;

        text-align: right;
    }


    /* ==========================================================================
       TABELLE 2 COLONNE MOBILE
       ========================================================================== */

    .don-row.don-2col {
        display: grid;

        grid-template-columns: 1fr auto;
        gap: 20px;

        align-items: center;
    }

    .don-row.don-2col > div {
        display: block;
        margin: 0;
    }

    /*
     * Nelle tabelle a due colonne non vogliamo
     * DONATORE: / VALORE:
     */

    .don-row.don-2col > div::before {
        display: none;
        content: none;
    }

    .don-row.don-2col > div .value {
        justify-self: initial;
    }

    .don-row.don-2col > div:first-child .value {
        text-align: left;
    }

    .don-row.don-2col > div:last-child .value {
        text-align: right;
    }


    /* TOTALI 2 COLONNE */

    .don-row.don-2col.mob-tot {
        display: grid;

        grid-template-columns: 1fr auto;

        border-bottom: 0;
    }

    .don-row.don-2col.mob-tot .tot-tab:first-child {
        text-align: left;
    }

    .don-row.don-2col.mob-tot .tot-tab:last-child {
        text-align: right;
    }


    /* TITOLI */

    .tit-table-don {
        padding-top: 35px;

        font-size: 20px;
        line-height: 24px;
    }

    .sot-table-don {
        font-size: 16px;
        line-height: 20px;
    }


    /* TOTALE COMPLESSIVO */

    .box-totale-def {
        grid-template-columns: 1fr auto;
        gap: 15px;

        margin-top: 25px;
        padding-top: 25px;

        font-size: 18px;
        line-height: 22px;
    }

}
/* ==========================================================================
   COME SOSTENERCI - I NOSTRI SOSTENITORI
   INTRO
   ========================================================================== */

.sostenitori-intro {
    margin-top: 40px;
    margin-bottom: 30px;
}

.sostenitori-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: start;
}

.sostenitori-intro__title {
    margin: 0 0 15px;

    color: #454446;

    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
}

.sostenitori-intro__text {
    color: #3F434D;

    font-size: 24px;
    line-height: 28px;
    letter-spacing: -1px;
}

.sostenitori-intro__text p {
    margin: 0 0 18px;
}

.sostenitori-intro__text p:last-child {
    margin-bottom: 0;
}

.sostenitori-intro__image img {
    display: block;

    width: 100%;
    height: auto;

    border-radius: 10px;
}

.sostenitori-intro__cta {
    margin-top: 25px;
    text-align: center;
}

.sostenitori-tabelle {
    margin-bottom: 50px;
}


/* MOBILE */

@media (max-width: 767px) {

    .sostenitori-intro {
        margin-top: 30px;
    }

    .sostenitori-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .sostenitori-intro__title {
        font-size: 30px;
        line-height: 1.08;
    }

    .sostenitori-intro__text {
        font-size: 18px;
        line-height: 20px;
    }

    .sostenitori-intro__cta {
        margin-top: 20px;
    }

}
/* ==========================================================================
   COME SOSTENERCI - I PROGETTI REALIZZATI
   ========================================================================== */


/* ==========================================================================
   INTRO
   ========================================================================== */

.progetti-intro {
    margin-top: 40px;
    margin-bottom: 45px;
}

.progetti-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: start;
}

.progetti-intro__title {
    margin: 0 0 10px;

    color: #3F434D;

    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
}

.progetti-intro__highlight {
    margin-bottom: 12px;

    color: #3D93A8;

    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.progetti-intro__text {
    color: #3F434D;

    font-size: 18px;
    line-height: 1.35;
}

.progetti-intro__text p {
    margin: 0 0 18px;
}

.progetti-intro__text p:last-child {
    margin-bottom: 0;
}

.progetti-intro__image img {
    display: block;

    width: 100%;
    height: auto;

    border-radius: 10px;
}


/* ==========================================================================
   WRAPPER PROGETTI
   ========================================================================== */

.progetti-realizzati {
    position: relative;

    margin-bottom: 50px;
}


/* ==========================================================================
   TAB
   ========================================================================== */

.pr-tabs {
    position: relative;
    z-index: 2;

    display: flex;

    gap: 8px;

    margin-left: 20px;
    margin-bottom: -1px;
}

.pr-tab {
    min-width: 90px;

    padding: 10px 20px;

    border: 0;
    border-radius: 10px 10px 0 0;

    background: #929292;

    color: #fff;

    font-family: inherit;
    font-size: 15px;
    font-weight: 700;

    text-transform: uppercase;

    cursor: pointer;
}

.pr-tab.active {
    background: #56ACCA;
}

.pr-tabs-select {
    display: none;
}


/* ==========================================================================
   BOX
   ========================================================================== */

.box-pro-rea {
    padding: 40px;

    border: 1px solid #3D93A8;
    border-radius: 10px;

    background: #fff;
}

.pr-content {
    display: none;
}

.pr-content.active {
    display: block;
}


/* ==========================================================================
   GRUPPI
   ========================================================================== */

.progetti-realizzati-int {
    margin-bottom: 35px;
}

.progetti-realizzati-int:last-child {
    margin-bottom: 0;
}

.progetti-realizzati-int h2 {
    margin: 0 0 15px;

    color: #6C9E36;

    font-size: 30px;
    line-height: 34px;
    font-weight: 500;
}

.progetti-realizzati-int.compact {
    margin-bottom: 32px;
}

/* ==========================================================================
   TESTO INTRO ANNI PASSATI
   ========================================================================== */

.box-text-progetti {
    margin-bottom: 40px;
    padding: 25px 28px;

    background: #f6f4f4;

    border-radius: 10px;

    color: #454446;

    font-size: 18px;
    line-height: 23px;
}


/* ==========================================================================
   RIGHE
   ========================================================================== */

.riga-progetto {
    display: grid;

    grid-template-columns: 100px 1fr 160px;

    gap: 20px;

    align-items: center;

    min-height: 55px;

    padding: 7px 0 15px;

    border-bottom: 1px solid #dedede;
}


/* 2024 non ha la colonna anno */

.compact .riga-progetto {
    grid-template-columns: 1fr 160px;
}


/* ==========================================================================
   ANNO
   ========================================================================== */

.riga-progetto .anno {
    display: flex;

    align-items: center;
    justify-content: center;

    /*! min-height: 38px; */

    padding: 10px 10px;

    background: #2E6C8D;

    border-radius: 5px;

    color: #fff;

    font-size: 21px;
    line-height: 1;
    font-weight: 700;
}

.riga-progetto .anno.invisibile {
    background: transparent;
}


/* ==========================================================================
   DESCRIZIONE
   ========================================================================== */

.riga-progetto .descrizione {
    color: #333;

    font-size: 18px;
    line-height: 1.3;
}


/* ==========================================================================
   COSTO
   ========================================================================== */

.riga-progetto .costo {
    justify-self: end;

    min-width: 180px;

    padding: 12px 20px;

    background: #ECECEC;

    border-radius: 9px;

    color: #333;

    font-size: 18px;
  

    font-weight: 700;

    text-align: right;
}


/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 991px) {

    .progetti-intro__grid {
        gap: 35px;
    }

    .box-pro-rea {
        padding: 30px;
    }

    .riga-progetto {
        grid-template-columns: 70px 1fr 145px;
        gap: 15px;
    }

    .compact .riga-progetto {
        grid-template-columns: 1fr 145px;
    }

    .riga-progetto .costo {
        min-width: 135px;
    }

}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    /* INTRO */

    .progetti-intro {
        margin-top: 30px;
        margin-bottom: 35px;
    }

    .progetti-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .progetti-intro__title {
        font-size: 30px;
        line-height: 1.08;
    }

    .progetti-intro__highlight {
        font-size: 22px;
        line-height: 26px;
    }

    .progetti-intro__text {
        font-size: 16px;
        line-height: 20px;
    }


    /* SELECT */

    .pr-tabs {
        display: none;
    }

    .pr-tabs-select {
        display: block;

        width: 100%;

        margin-bottom: 15px;
        padding: 11px 40px 11px 15px;

        border: 1px solid #3D93A8;
        border-radius: 6px;

        background: #fff;

        color: #3F434D;

        font-family: inherit;
        font-size: 16px;
        line-height: 20px;
    }


    /* BOX */

    .box-pro-rea {
        padding: 22px 18px;

        border-radius: 8px;
    }


    /* TESTO INTRO */

    .box-text-progetti {
        margin-bottom: 25px;
        padding: 20px;

        font-size: 16px;
        line-height: 20px;
    }


    /* TITOLI */

    .progetti-realizzati-int h2 {
        margin-bottom: 14px;

        font-size: 22px;
        line-height: 26px;
    }


    /* RIGA */

    .riga-progetto,
    .compact .riga-progetto {
        display: grid;

        grid-template-columns: 1fr auto;

        gap: 10px 15px;

        min-height: 0;

        padding: 15px 0;
    }


    /* ANNO */

    .riga-progetto .anno {
        grid-column: 1;
        grid-row: 1;

        justify-self: start;

        min-width: 65px;

        font-size: 14px;
    }

    .riga-progetto .anno.invisibile {
        display: none;
    }


    /* DESCRIZIONE */

    .riga-progetto .descrizione {
        grid-column: 1;
        grid-row: 2;

        font-size: 16px;
        line-height: 20px;
    }


    /* COSTO */

    .riga-progetto .costo {
        grid-column: 2;
        grid-row: 1 / span 2;

        align-self: center;

        min-width: 110px;

        padding: 9px 12px;

        font-size: 14px;
    }


    /*
     * Nelle righe senza anno la descrizione
     * parte subito dalla prima riga.
     */

    .riga-progetto:has(.anno.invisibile) .descrizione {
        grid-row: 1 / span 2;
        align-self: center;
    }


    /* 2024 */

    .compact .riga-progetto .descrizione {
        grid-column: 1;
        grid-row: 1;

        align-self: center;
    }

    .compact .riga-progetto .costo {
        grid-column: 2;
        grid-row: 1;
    }

}
/* ==========================================================================
   COME SOSTENERCI - COME DONARE
   ========================================================================== */


/* INTRO */

.donazioni-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.donazioni-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: start;
}

.donazioni-intro__title {
    margin: 0 0 18px;

    color: #3F434D;

    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
}

.donazioni-intro__evidenza {
    color: #3D93A8;

    font-size: 28px;
    line-height: 1.15;
}

.donazioni-intro__evidenza p {
    margin: 0 0 15px;
}

.donazioni-intro__evidenza p:last-child {
    margin-bottom: 0;
}

.donazioni-intro__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

/* ==========================================================================
   GIARDINO
   ========================================================================== */

.donazioni-giardino {
    margin-bottom: 40px;
}

.donazioni-giardino__inner {
    padding: 45px;

    background-color: #2E6C8D;
    background-image: url("../images/pattern-table-blue.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;
}

.donazioni-giardino__grid {
    display: grid;
    grid-template-columns: 1fr 485px;
    gap: 60px;
    align-items: start;
}

.donazioni-giardino__title {
    margin: 0 0 20px;

    color: #fff;

    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1px;
}

.donazioni-giardino__text {
    color: #fff;

    font-size: 18px;
    line-height: 1.35;
}

.donazioni-giardino__text p {
    margin: 0 0 22px;
}

.donazioni-giardino__text p:last-child {
    margin-bottom: 0;
}

.donazioni-giardino__raccolto {
    margin-top: 25px;
    padding: 10px 20px;

    background: #fff;

    border-radius: 999px;

    color: #000009;

    font-size: 24px;
    line-height: 1;
    font-weight: 700;

    text-align: center;
}


/* DONORBOX */

.donazioni-donorbox {
    width: 100%;
    max-width: 425px;
}

.donazioni-donorbox iframe {
    display: block;
    width: 100%;
    max-width: 425px;
    margin-bottom: 12px;
}

.donazioni-donorbox .doner-menotti {
    display: block;
    width: 100%;
}


/* ==========================================================================
   BONIFICO
   ========================================================================== */

.donazioni-bonifico {
    margin-bottom: 40px;
}

.donazioni-bonifico__inner {
    padding: 40px 45px;

    background-color: #3D93A8;
    background-image: url("../images/pattern-table-blue-2.png");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;

    border-radius: 10px;
}

.donazioni-bonifico__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}

.donazioni-bonifico__column {
    color: #fff;

    font-size: 18px;
    line-height: 1.35;
}

.donazioni-bonifico__column h2,
.donazioni-bonifico__column h3,
.donazioni-bonifico__column h4 {
    margin: 0 0 12px;
    color: #fff;
}

.donazioni-bonifico__column p {
    margin: 0 0 22px;
}

.donazioni-bonifico__column p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   LASCITI
   ========================================================================== */

.donazioni-lasciti {
    margin-bottom: 50px;
}

.donazioni-lasciti__inner {
    padding: 35px 40px;

    background: #f6f4f4;

    border-radius: 10px;
}

.donazioni-lasciti__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.donazioni-lasciti__title {
    margin: 0 0 12px;

    color: #454446;

    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -1px;
}

.donazioni-lasciti__text,
.donazioni-lasciti__cta-text {
    color: #3F434D;

    font-size: 18px;
    line-height: 24px;
}

.donazioni-lasciti__cta {
    text-align: center;
    max-width: 440px;
    margin: 0 auto;
}

.donazioni-lasciti__cta-text {
    margin-bottom: 20px;
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
}
.donazioni-bonifico__column h2 {
  font-weight: normal;
  font-size: 24px;
  letter-spacing: -1px;
}

/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .donazioni-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .donazioni-intro__grid,
    .donazioni-giardino__grid,
    .donazioni-bonifico__grid,
    .donazioni-lasciti__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .donazioni-intro__title {
        font-size: 30px;
        line-height: 1.08;
    }

    .donazioni-intro__evidenza {
        font-size: 22px;
        line-height: 26px;
    }

    .donazioni-giardino__inner {
        padding: 30px 20px;
    }

    .donazioni-giardino__title {
        font-size: 24px;
        line-height: 28px;
    }

    .donazioni-giardino__text,
    .donazioni-bonifico__column,
    .donazioni-lasciti__text,
    .donazioni-lasciti__cta-text {
        font-size: 16px;
        line-height: 20px;
    }

    .donazioni-donorbox {
        max-width: 100%;
    }

    .donazioni-donorbox iframe {
        max-width: 100%;
        min-width: 0 !important;
    }

    .donazioni-bonifico__inner {
        padding: 30px 20px;
    }

    .donazioni-lasciti__inner {
        padding: 28px 22px;
    }

    .donazioni-lasciti__title {
        font-size: 20px;
        line-height: 24px;
    }

}
.doner-menotti-top {
  background-color: #FFFFFF;
  margin: 0 auto 15px auto;
  border-radius: 10px;
  padding: 20px;
}
/* ==========================================================================
   COME SOSTENERCI - 5X1000
   ========================================================================== */


/* INTRO */

.cinquemille-intro {
    margin-top: 40px;
    margin-bottom: 40px;
}

.cinquemille-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: start;
}

.cinquemille-intro__title {
    margin: 0 0 18px;

    color: #454446;

    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -1.5px;
}

.cinquemille-intro__evidenza {
    color: #3D93A8;

    font-size: 30px;
    line-height: 34px;
    letter-spacing: -1px;
}

.cinquemille-intro__evidenza p {
    margin: 0;
}

.cinquemille-intro__image img {
    display: block;

    width: 100%;
    height: auto;

    border-radius: 10px;
}


/* ==========================================================================
   BOX BLU
   ========================================================================== */

.cinquemille-info {
    margin-bottom: 40px;
}

.cinquemille-info__inner {
    padding: 42px 45px;

    background-color: #2E6C8D;
    background-image: url("../images/pattern-table-blue.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;

    color: #fff;
}

.cinquemille-info__title {
    margin: 0 0 18px;

    color: #fff;

    font-size: 30px;
    line-height: 34px;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.cinquemille-info__intro {
    margin-bottom: 25px;

    color: #fff;

    font-size: 24px;
    line-height: 27px;
}

.cinquemille-info__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
}

.cinquemille-info__column {
    color: #fff;

    font-size: 18px;
    line-height: 1.35;
}

.cinquemille-info__column h2,
.cinquemille-info__column h3,
.cinquemille-info__column h4 {
    margin: 0 0 12px;
    color: #fff;
    font-weight: normal;
    font-size: 24px;
}

.cinquemille-info__column p {
    margin: 0 0 18px;
}

.cinquemille-info__column p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   SHARE BOX
   ========================================================================== */

.cinquemille-share {
    margin-bottom: 50px;
}

.cinquemille-share__inner {
    padding: 45px;

    background-color: #6C9E36;
    background-image: url("../images/pattern-table-green.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;

    border-radius: 10px;

    color: #fff;
}

.cinquemille-share__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    align-items: center;
}

.cinquemille-share__title {
    margin: 0 0 18px;

    color: #fff;

    font-size: 40px;
    line-height: 42px;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.cinquemille-share__text {
    color: #fff;

    font-size: 17px;
    line-height: 1.35;
}

.cinquemille-share__text p {
    margin: 0;
}


/* CTA */

.cinquemille-share__actions {
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.cinquemille-share__btn {
    display: flex;
    align-items: center;

    gap: 11px;

    width: 90%;
    max-width: 385px;

    padding: 13px 35px;

    background: #FDFDFD;

    border-radius: 999px;

    color: #5E7433;

    font-size: 20px;
    line-height: 1;
    font-weight: 700;

    text-decoration: none;

    transition:
        transform .2s ease,
        opacity .2s ease;
}

.cinquemille-share__btn:hover {
    transform: translateY(-1px);
    opacity: .92;
}

.cinquemille-share__btn img {
    display: block;

    width: 30px;
    height: 30px;

    flex: 0 0 22px;

    object-fit: contain;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 767px) {

    .cinquemille-intro {
        margin-top: 30px;
        margin-bottom: 30px;
    }

    .cinquemille-intro__grid,
    .cinquemille-info__grid,
    .cinquemille-share__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .cinquemille-intro__title {
        font-size: 30px;
        line-height: 1.08;
    }

    .cinquemille-intro__evidenza {
        font-size: 22px;
        line-height: 26px;
    }

    .cinquemille-info__inner {
        padding: 30px 20px;
    }

    .cinquemille-info__title {
        font-size: 24px;
        line-height: 28px;
    }

    .cinquemille-info__intro,
    .cinquemille-info__column,
    .cinquemille-share__text {
        font-size: 16px;
        line-height: 20px;
    }

    .cinquemille-share__inner {
        padding: 30px 20px;
    }

    .cinquemille-share__title {
        font-size: 26px;
        line-height: 30px;
    }

    .cinquemille-share__btn {
        max-width: none;

        font-size: 16px;
        line-height: 20px;
    }

}
/* =========================================================
   NEWS ARCHIVE
   ========================================================= */

.news-archive {
    padding: 25px 0 45px;
}


/* BOX GENERALE */

.news-archive__box {
    background: #f4f3f3;
    border-radius: 10px;
    padding: 30px 48px 55px;
}


/* =========================================================
   NEWS IN EVIDENZA
   ========================================================= */

.news-featured {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
    gap: 55px;
    align-items: start;
    margin-bottom: 55px;
}

.news-featured__content {
    padding-top: 3px;
}

.news-featured__title {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 1.03;
    font-weight: 800;
    color: #444;
    letter-spacing: -1.5px;
}

.news-featured__title a {
    color: inherit;
    text-decoration: none;
}

.news-featured__title a:hover {
    color: #3D93A8;
}

.news-featured__date {
    margin-bottom: 16px;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 600;
    color: #6C9E36;
}

.news-featured__excerpt {
    max-width: 560px;
    margin-bottom: 18px;
    font-size: 17px;
    line-height: 1.32;
    color: #555;
}

.news-featured__excerpt p {
    margin: 0;
}

.news-featured__image {
    display: block;
    overflow: hidden;
    border-radius: 8px;
}

.news-featured__image img {
    display: block;
    width: 100%;
    height: 290px;
    object-fit: cover;
}


/* =========================================================
   LEGGI TUTTO
   ========================================================= */

.news-read-more {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #3D93A8;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
    text-decoration: none;
}

.news-read-more:hover {
    text-decoration: underline;
}

.news-read-more__icon {
    position: relative;
    width: 14px;
    height: 12px;
    flex: 0 0 14px;
}

.news-read-more__icon::before,
.news-read-more__icon::after {
    content: "";
    position: absolute;
    left: 0;
    height: 2px;
    background: #6C9E36;
    border-radius: 2px;
}

.news-read-more__icon::before {
    top: 2px;
    width: 14px;
    box-shadow: 0 4px 0 #6C9E36;
}

.news-read-more__icon::after {
    top: 10px;
    width: 8px;
}


/* =========================================================
   GRIGLIA NEWS
   ========================================================= */

.news-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 27px;
}

.news-card {
    min-width: 0;
}

.news-card__image {
    display: block;
    overflow: hidden;
    width: 130px;
   aspect-ratio: 1 / 1;
    margin-bottom: 18px;
    border-radius: 8px;
}

.news-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.news-card__title {
    margin: 0 0 9px;
    font-size: 23px;
    line-height: 1.08;
    font-weight:bold;
    color: #444;
    letter-spacing: -1px;
}

.news-card__title a {
    color: inherit;
    text-decoration: none;
}

.news-card__title a:hover {
    color: #3D93A8;
}

.news-card__date {
    margin-bottom: 14px;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 600;
    color: #6C9E36;
}

.news-card__excerpt {
    margin-bottom: 18px;
    font-size: 16px;
    line-height: 1.3;
    color: #555;
}

.news-card__excerpt p {
    margin: 0;
}


/* =========================================================
   LOAD MORE
   ========================================================= */

.news-load-more-wrap {
    display: flex;
    justify-content: center;
    padding-top: 32px;
}

.news-load-more {
    min-width: 260px;
    border: 0;
    cursor: pointer;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    .news-archive__box {
        padding: 30px;
    }

    .news-featured {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }

    .news-featured__title {
        font-size: 34px;
    }

    .news-featured__image img {
        height: 260px;
    }

    .news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 40px 30px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .news-archive {
        padding: 30px 0 40px;
    }

    .news-archive__box {
        padding: 24px 20px 35px;
    }


    /* featured */

    .news-featured {
        display: flex;
        flex-direction: column;
        gap: 22px;
        margin-bottom: 45px;
    }

    .news-featured__content {
        padding-top: 0;
    }

    .news-featured__title {
        font-size: 30px;
        line-height: 1.07;
        margin-bottom: 14px;
    }

    .news-featured__date {
        font-size: 12px;
        margin-bottom: 14px;
    }

    .news-featured__excerpt {
        font-size: 16px;
        line-height: 1.3;
    }

    .news-featured__image {
        order: -1;
        width: 100%;
    }

    .news-featured__image img {
        height: auto;
        aspect-ratio: 16 / 9;
        object-fit: cover;
    }


    /* cards */

    .news-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .news-card__image {
        aspect-ratio: 3 / 1;
        margin-bottom: 16px;
        width: 100%
    }

    .news-card__title {
        font-size: 24px;
    }

    .news-card__excerpt {
        font-size: 16px;
        line-height: 1.3;
    }


    /* load more */

    .news-load-more-wrap {
        padding-top: 25px;
    }

    .news-load-more {
        width: 100%;
        min-width: 0;
        max-width: 280px;
    }

}
/* =========================================================
   SINGLE NEWS
   ========================================================= */

.news-single {
    padding: 0px 0 60px;
}


/* =========================================================
   TORNA ALLE NEWS
   ========================================================= */

.news-single__back {
    margin-bottom: 32px;
}

.news-single__back a {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: #3D93A8;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;

    text-decoration: none;
}

.news-single__back a:hover {
    text-decoration: underline;
}


/* =========================================================
   TESTATA
   ========================================================= */

.news-single__header {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(400px, 1fr);

    gap: 65px;
    align-items: start;

    margin-bottom: 42px;
}

.news-single__header--no-image {
    grid-template-columns: minmax(0, 720px);
}


/* titolo */

.news-single__title {
    margin: 0 0 18px;

    color: #444;

    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
}


/* data */

.news-single__date {
    margin-bottom: 22px;

    color: #6C9E36;

    font-size: 13px;
    line-height: 1.4;
    font-weight: 600;
}


/* intro azzurra */

.news-single__intro {
    max-width: 630px;

    color: #3D93A8;

    font-size: 25px;
    line-height: 1.12;
    font-weight: 400;
}

.news-single__intro p {
    margin: 0;
}


/* immagine principale */

.news-single__featured {
    overflow: hidden;

    border-radius: 8px;
}

.news-single__featured img {
    display: block;

    width: 100%;
    height: auto;

    max-height: 390px;

    object-fit: cover;
}


/* =========================================================
   CORPO NEWS
   ========================================================= */

.news-single__body {
    color: #555;

    font-size: 18px;
    line-height: 1.48;
}


/* paragrafi */

.news-single__body p {
    margin: 0 0 20px;
}


/* titoli */

.news-single__body h2 {
    margin: 38px 0 12px;

    color: #3D93A8;

    font-size: 30px;
    line-height: 1.15;
    font-weight: 600;
}

.news-single__body h3 {
    margin: 30px 0 10px;

    color: #3D93A8;

    font-size: 25px;
    line-height: 1.2;
    font-weight: 600;
}

.news-single__body h4 {
    margin: 26px 0 8px;

    color: #444;

    font-size: 18px;
    line-height: 1.25;
    font-weight: 700;
}


/* strong */

.news-single__body strong {
    font-weight: 700;
}


/* link */

.news-single__body a {
    color: #3D93A8;
    font-weight: 600;

    text-decoration: underline;
}

.news-single__body a:hover {
    text-decoration: none;
}


/* =========================================================
   IMMAGINI GUTENBERG
   ========================================================= */

.news-single__body figure {
    margin: 32px 0;
}

.news-single__body img {
    max-width: 100%;
    height: auto;
}

.news-single__body .wp-block-image img {
    display: block;
    max-width: 100%;
    height: auto;

    margin-left: auto;
    margin-right: auto;

    border-radius: 8px;
}

.news-single__body figcaption {
    margin-top: 8px;

    color: #777;

    font-size: 13px;
    line-height: 1.4;
}


/* immagini larghe */

.news-single__body .alignwide {
    width: 100%;
    max-width: 100%;
}


/* =========================================================
   LISTE
   ========================================================= */

.news-single__body ul,
.news-single__body ol {
    margin: 0 0 22px;
    padding-left: 24px;
}

.news-single__body li {
    margin-bottom: 8px;
}


/* bullet personalizzato */

.news-single__body ul {
    list-style: none;
    padding-left: 0;
}

.news-single__body ul > li {
    position: relative;
    padding-left: 22px;
}

.news-single__body ul > li::before {
    content: "";

    position: absolute;
    top: .5em;
    left: 0;

    width: 10px;
    height: 10px;

    background: #3D93A8;
    border-radius: 3px;
}


/* =========================================================
   BUTTON GUTENBERG
   ========================================================= */

.news-single__body .wp-block-buttons {
    display: flex;
    flex-wrap: wrap;

    gap: 12px;

    margin: 22px 0 30px;
}

.news-single__body .wp-block-button__link,
.news-single__body .wp-element-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 160px;

    padding: 11px 25px;

    background: #3D93A8;
    border-radius: 999px;

    color: #fff;

    font-size: 16px;
    line-height: 1;
    font-weight: 700;

    text-decoration: none;
}

.news-single__body .wp-block-button__link:hover,
.news-single__body .wp-element-button:hover {
    color: #fff;
    opacity: .85;
}


/* =========================================================
   CITAZIONI
   ========================================================= */

.news-single__body blockquote {
    margin: 30px 0;
    padding: 20px 25px;

    border-left: 4px solid #3D93A8;

    background: #f4f3f3;
}

.news-single__body blockquote p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   SEPARATOR
   ========================================================= */

.news-single__body .wp-block-separator {
    margin: 35px 0;

    border: 0;
    border-top: 1px solid #ddd;
}


.post-1582 img {
  width: auto;
}
/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    .news-single__header {
        grid-template-columns: 1fr 1fr;
        gap: 35px;
    }

    .news-single__title {
        font-size: 34px;
    }

    .news-single__intro {
        font-size: 23px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .news-single {
        padding: 24px 0 40px;
    }


    .news-single__back {
        margin-bottom: 25px;
    }


    .news-single__header {
        display: flex;
        flex-direction: column;

        gap: 24px;

        margin-bottom: 30px;
    }


    .news-single__heading {
        width: 100%;
    }


    .news-single__title {
        margin-bottom: 12px;

        font-size: 30px;
        line-height: 1.08;
    }


    .news-single__date {
        margin-bottom: 16px;

        font-size: 12px;
    }


    .news-single__intro {
        max-width: none;

        font-size: 22px;
        line-height: 1.25;
    }


    .news-single__featured {
        order: -1;

        width: 100%;
    }

    .news-single__featured img {
        width: 100%;
        max-height: none;

        aspect-ratio: 16 / 9;

        object-fit: cover;
    }


    .news-single__body {
        font-size: 16px;
        line-height: 1.45;
    }


    .news-single__body h2 {
        margin-top: 32px;

        font-size: 26px;
    }

    .news-single__body h3 {
        font-size: 22px;
    }


    .news-single__body figure {
        margin: 25px 0;
    }


    .news-single__body .wp-block-buttons {
        gap: 10px;
    }

    .news-single__body .wp-block-button {
        width: 100%;
    }

    .news-single__body .wp-block-button__link,
    .news-single__body .wp-element-button {
        width: 100%;
    }
    
.post-1582 img {
  width: 45%;
   
  aspect-ratio: auto;
}

}
.news-single__body .news-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0 30px;
}

.news-single__body .news-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;

    background: #3D93A8;
    border-radius: 999px;

    color: #fff;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    text-decoration: none;
    min-width: 180px
}

.news-single__body .news-button:hover {
    color: #fff;
    text-decoration: none;
    background-color: #2E6C8D;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
    
}
.news-single__body img.news-image-full {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}
.news-single__body .news-image-centered {
    text-align: center;
    margin: 35px 0;
}

.news-single__body .news-image-centered img {
    display: inline-block;
    width: auto;
    max-width: 550px;
    height: auto;
}
@media (max-width: 767px) {
    .news-single__body .news-image-centered img {
        width: 100%;
        max-width: 100%;
    }
}
/* =========================================================
   NEWS GALLERY
   ========================================================= */

.news-single__body .news-gallery {
    display: grid;
    grid-template-columns: repeat(
        auto-fit,
        minmax(min(260px, 100%), 1fr)
    );
    gap: 28px;

    margin: 35px 0;
    align-items: start;
}

.news-single__body .news-gallery img {
    display: block;

    width: 100%;
    object-fit: cover;

    border-radius: 10px;
}


/* se c'è una sola immagine */
.news-single__body .news-gallery img:only-child {
    height: auto;
    max-height: 600px;
    object-fit: contain;
}


/* mobile */
@media (max-width: 767px) {

    .news-single__body .news-gallery {
        grid-template-columns: 1fr;
        gap: 18px;
        margin: 28px 0;
    }

    .news-single__body .news-gallery img {
        width: 100%;
        height: auto;
    }

}
/* =========================================================
   CONTATTI
   ========================================================= */

.contatti-section {
    padding: 0x 0 35px;
}

.contatti-box {
    padding: 32px 45px 42px;
    background: #f4f3f3;
    border-radius: 10px;
}


/* INTRO */

.contatti-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
    gap: 65px;
    align-items: start;
}

.contatti-intro__title {
    margin: 0 0 18px;

    color: #454446;

    font-size: 40px;
    line-height: 42px;
    font-weight: 800;
    letter-spacing: -1.5px
}

.contatti-intro__text {
    max-width: 560px;

    color: #555;

    font-size: 17px;
    line-height: 1.45;
}

.contatti-intro__text p {
    margin: 0 0 15px;
}

.contatti-intro__text p:last-child {
    margin-bottom: 0;
}

.contatti-intro__image {
    overflow: hidden;
    border-radius: 8px;
}

.contatti-intro__image img {
    display: block;

    width: 100%;
    height: 260px;

    object-fit: cover;
}


/* 3 COLONNE */

.contatti-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 70px;

    margin-top: 45px;
}

.contatti-card__icon {
    display: block;

    width: 52px;
    height: 52px;

    object-fit: contain;

    margin-bottom: 18px;
}

.contatti-card__title {
    margin: 0 0 16px;

    color: #454446;

    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
}

.contatti-card__text {
    color: #555;

    font-size: 18px;
    line-height: 24px;
}

.contatti-card__text p {
    margin: 0 0 16px;
}

.contatti-card__text p:last-child {
    margin-bottom: 0;
}

.contatti-card__text a {
    color: inherit;
    text-decoration: none;
}

.contatti-card__text a:hover {
    color: #3D93A8;
}


/* TABLET */

@media (max-width: 1024px) {

    .contatti-intro {
        grid-template-columns: 1fr 1fr;
        gap: 35px;
    }

    .contatti-grid {
        gap: 35px;
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .contatti-section {
        padding: 30px 0 40px;
    }

    .contatti-box {
        padding: 25px 20px 30px;
    }

    .contatti-intro {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .contatti-intro__title {
        font-size: 30px;
    }

    .contatti-intro__text {
        font-size: 16px;
    }

    .contatti-intro__image img {
        height: auto;
        aspect-ratio: 16 / 9;
    }

    .contatti-grid {
        grid-template-columns: 1fr;
        gap: 35px;

        margin-top: 35px;
    }

    .contatti-card__icon {
        width: 48px;
        height: 48px;

        margin-bottom: 14px;
    }

    .contatti-card__title {
        margin-bottom: 10px;

        font-size: 23px;
    }

    .contatti-card__text {
        font-size: 16px;
    }

}
/* =========================================================
   LAVORA CON NOI
   ========================================================= */


/* INTRO */

.lavora-intro {
    padding-top: 20px;
    padding-bottom: 35px;
}

.lavora-intro__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
    gap: 70px;
    align-items: start;
}

.lavora-intro__title {
    margin: 0 0 18px;

    color: #444;
    font-size: 40px;
    line-height: 1.05;
    font-weight: 800;
}

.lavora-intro__text {
    color: #555;
    font-size: 17px;
    line-height: 1.45;
}

.lavora-intro__text p {
    margin: 0 0 15px;
}

.lavora-intro__image {
    overflow: hidden;
    border-radius: 8px;
}

.lavora-intro__image img {
    display: block;
    width: 100%;
    height: 280px;
    object-fit: cover;
}


/* =========================================================
   ACCORDION
   ========================================================= */

.lavora-jobs {
    padding-bottom: 45px;
}


.lavora-accordion__button {
    display: flex;
    align-items: center;
    gap: 16px;

    width: 100%;
    padding: 15px 8px;

    border: 0;
    background: transparent;

    text-align: left;
    cursor: pointer;
}

.lavora-accordion__icon {
    position: relative;

    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    background: #f1f1f1;
    border-radius: 9px;
}

.lavora-accordion__icon::before,
.lavora-accordion__icon::after {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: 14px;
    height: 4px;

    background: #222;

    transform: translate(-50%, -50%);
}

.lavora-accordion__icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: opacity .2s ease;
}

.lavora-accordion__button[aria-expanded="true"]
.lavora-accordion__icon::after {
    opacity: 0;
}

.lavora-accordion__label {
    color: #42A3C0;

    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    font-family: 'Montserrat', Arial, sans-serif;
}


/* CONTENT */

.lavora-accordion__content {
    display: none;
    padding: 5px 65px 35px;
}

.lavora-accordion__item.is-open
.lavora-accordion__content {
    display: block;
}


/* JOB */

.lavora-job {
    color: #000;

    font-size: 18px;
    line-height: 1.45;
}

.lavora-job__intro {
    margin: 0 0 25px;
}

.lavora-job__columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 65px;
}

.lavora-job__column h3 {
    margin: 0 0 8px;

    color: #222;

    font-size: 16px;
    line-height: 1.3;
    font-weight: 800;
}

.lavora-job__column h3:not(:first-child) {
    margin-top: 28px;
}

.lavora-job__column p {
    margin: 0 0 15px;
}

.lavora-job__column ul {
    margin: 0;
    padding-left: 20px;
}

.lavora-job__column li {
    margin-bottom: 4px;
}

.lavora-job__column a {
    color: #42A3C0;
}

.lavora-job__legal {
    margin: 25px 0 20px;

    font-size: 16px;
    line-height: 1.3;
}

.lavora-job__cta {
    display: inline-flex;
}


/* =========================================================
   GALLERY
   ========================================================= */

.lavora-gallery {
    padding-bottom: 50px;
}

.lavora-gallery__grid {
    display: grid;
    grid-template-columns: repeat(
        auto-fit,
        minmax(min(260px, 100%), 1fr)
    );
    gap: 40px;
}

.lavora-gallery__item {
    overflow: hidden;
    border-radius: 8px;
}

.lavora-gallery__item img {
    display: block;

    width: 100%;
    aspect-ratio: 3 / 4;

    object-fit: cover;
}


.lavora-accordion__item {
  border-bottom: 1px solid #ddd;
}
/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .lavora-intro {
        padding-top: 30px;
        padding-bottom: 35px;
    }

    .lavora-intro__grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .lavora-intro__title {
        font-size: 30px;
    }

    .lavora-intro__text {
        font-size: 16px;
    }

    .lavora-intro__image img {
        height: auto;
        aspect-ratio: 16 / 9;
    }


    /* ACCORDION */

    .lavora-jobs {
        padding-bottom: 35px;
    }

    .lavora-accordion__button {
        align-items: flex-start;
        gap: 12px;

        padding: 14px 0;
    }

    .lavora-accordion__icon {
        flex-basis: 28px;

        width: 28px;
        height: 28px;
    }

    .lavora-accordion__label {
        padding-top: 4px;

        font-size: 18px;
    }

    .lavora-accordion__content {
        padding: 10px 0 30px;
    }

    .lavora-job {
        font-size: 16px;
    }

    .lavora-job__columns {
        grid-template-columns: 1fr;
        gap: 25px;
    }


    /* GALLERY */

    .lavora-gallery {
        padding-bottom: 35px;
    }

    .lavora-gallery__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .lavora-gallery__item img {
        aspect-ratio: auto;
        height: auto;
    }


}
/* =========================================================
   PAGINE LEGALI / ISTITUZIONALI
   ========================================================= */

.legal-page__content {
    padding-top: 15px;
    padding-bottom: 35px;

    color: #454446;

    font-size: 18px;
    line-height: 1.25;
}

/* primo elemento senza spazio extra */

.legal-page__content > *:first-child {
    margin-top: 0;
}


/* =========================================================
   PARAGRAFI
   ========================================================= */

.legal-page__content p {
    margin: 0 0 18px;
}


/* =========================================================
   TITOLI
   ========================================================= */

.legal-page__content h2 {
    margin: 34px 0 12px;

    color: #3F434D;

    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -1px;
}

.legal-page__content h3 {
    margin: 26px 0 8px;

    color: #454446;

    font-size: 18px;
    line-height: 1.25;
    font-weight: 800;
}

.legal-page__content h4 {
    margin: 22px 0 8px;

    color: #454446;

    font-size: 16px;
    line-height: 1.3;
    font-weight: 800;
}


/* =========================================================
   TESTO
   ========================================================= */

.legal-page__content strong {
    font-weight: 700;
}

.legal-page__content em {
    font-style: italic;
}


/* =========================================================
   LINK
   ========================================================= */

.legal-page__content a {

    text-decoration: underline;
}

.legal-page__content a:hover {
    text-decoration: none;
}


/* =========================================================
   LISTE
   ========================================================= */

.legal-page__content ul,
.legal-page__content ol {
    margin: 0 0 20px;

    padding-left: 22px;
}

.legal-page__content li {
    margin-bottom: 6px;
}


/* =========================================================
   CTA / PULSANTI
   CLASSIC EDITOR
   ========================================================= */

.legal-page__content .legal-buttons {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 12px;

    margin: 20px 0 35px;
}


/* il Classic Editor spesso inserisce un <p> */
.legal-page__content .legal-buttons p {
    margin: 0;
}


/* pulsante */
.legal-page__content .legal-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 48px;
    padding: 11px 30px;

    color: #fff !important;
    background: #3D93A8;

    border-radius: 999px;

    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;

    text-decoration: none !important;

    transition:
        background-color .2s ease,
        box-shadow .2s ease;
}


/* elimina eventuali br messi dentro il link */
.legal-page__content .legal-button br {
    display: none;
}


.legal-page__content .legal-button:hover {
    color: #fff !important;
    background: #2E6C8D;

    text-decoration: none !important;

    box-shadow: 0 5px 12px rgba(0, 0, 0, .12);
}

/* =========================================================
   TABELLE
   COOKIE POLICY
   ========================================================= */

.legal-page__content table {
    width: 100%;

    margin: 25px 0 35px;

    border-collapse: collapse;

    font-size: 14px;
    line-height: 1.4;
}

.legal-page__content th {
    padding: 10px 8px;

    color: #3D93A8;

    font-weight: 700;
    text-align: left;

    border-bottom: 1px solid #d8d8d8;
}

.legal-page__content td {
    padding: 10px 8px;

    vertical-align: top;

    border-bottom: 1px solid #d8d8d8;
}


/* =========================================================
   IMMAGINI EVENTUALI
   ========================================================= */

.legal-page__content img {
    display: block;

    max-width: 100%;
    height: auto;
}

.legal-page__content .aligncenter {
    margin-left: auto;
    margin-right: auto;
}

.legal-page__content .alignleft {
    float: left;

    margin: 0 25px 20px 0;
}

.legal-page__content .alignright {
    float: right;

    margin: 0 0 20px 25px;
}


/* =========================================================
   SEPARATORI
   ========================================================= */

.legal-page__content hr {
    margin: 32px 0;

    border: 0;
    border-top: 1px solid #ddd;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .legal-page__content {
        padding-top: 25px;
        padding-bottom: 35px;

        font-size: 16px;
        line-height: 1.45;

        overflow-wrap: anywhere;
    }


    /* titoli */

    .legal-page__content h2 {
        margin-top: 28px;

        font-size: 22px;
        line-height: 1.2;
    }

    .legal-page__content h3 {
        font-size: 18px;
    }

    .legal-page__content h4 {
        font-size: 16px;
    }


    /* pulsanti */

    .legal-page__content .legal-buttons {
        align-items: stretch;
    }

    .legal-page__content .legal-button {
        width: 100%;

        text-align: center;
    }


    /* immagini */

    .legal-page__content .alignleft,
    .legal-page__content .alignright {
        float: none;

        margin: 20px auto;
    }


    /* tabelle */

    .legal-page__content table {
        display: block;

        width: 100%;

        overflow-x: auto;

        white-space: nowrap;

        -webkit-overflow-scrolling: touch;
    }

}

.table-cookie {
  max-width: 100%;
  margin-top: 30px;
  border-collapse: collapse;
  margin: 20px auto 10px auto;
}

.don-header-k,
.don-row-k {
  display: grid;
  grid-template-columns: 260px 160px 2fr 1fr 1fr;
  padding: 10px 0;
  border-bottom: 1px solid #D8D8D8;
  color: black;
}

.don-header-k {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: -0.5px;
  font-size: 15px;
  color: #57ADCB;
}

.don-row-k div {
  padding-right: 10px;
  font-size: 15px;
  line-height: 20px;
}

.title-table-cookie {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 20px;
  line-height: 20px;
}
.don-header-k div:last-child, .don-row-k div:last-child {
  text-align: left;
  padding-right: 0
}
		@media (max-width: 768px) {
  .don-header-k {
    display: none; /* Nasconde l'intestazione */
  }

  .don-row-k {
    display: block;
    padding: 15px 0;
    border-bottom: 1px solid #D8D8D8;
    font-size: 15px;
  }

  .don-row-k div {
    display: flex;
    justify-content: space-between;
    padding: 4px 0;
    font-size: 15px;
    line-height:15px;
  }

  .don-row-k div::before {
    content: attr(data-label) ": ";
    font-weight: bold;
    color: #57ADCB; /* colore evidenziato */
    text-transform: uppercase;
    font-size: 15px;
  }
  .table-cookie {
  max-width: 90%;
}
  
.title-table-cookie {
width: 90%;
padding: 0px 1.2rem 0px 1.2rem;
margin-bottom: 10px;
}
  .don-row-k div {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 10px;
  }

  /* Allinea i valori lunghi a destra */
  .don-row-k div span.value {
    text-align: right;
    flex: 1;
    display: block;
    word-break: break-word;
  }
}
	
.mt20 {margin-top: 20px !important;}