/* Pagina RUN/CAMMINATA 5.60 costruita con blocchi Gutenberg. */
.pic-560 {
    --event-green: #155532;
    --event-accent: #79a940;
    --event-light: #f4f6ed;
    background: #fff;
    color: #202920;
}

.pic-560 h1,
.pic-560 h2,
.pic-560 h3,
.pic-560 p {
    margin-top: 0;
}

.pic-560-hero {
    min-height: 610px;
    display: flex;
    align-items: center;
    padding: 72px 7vw;
    background: linear-gradient(90deg, rgba(10, 26, 16, .82) 0%, rgba(10, 26, 16, .48) 46%, rgba(10, 26, 16, .08) 78%), url('assets/images/560-hero-v5.webp') center / cover no-repeat;
}

.pic-560-hero > .wp-block-group__inner-container {
    width: 100%;
}

.pic-560-hero__content {
    width: min(760px, 100%);
    margin: 0;
}

.pic-560-kicker {
    margin-bottom: 8px;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .16em;
}

.pic-560-hero h1 {
    max-width: 760px;
    margin-bottom: 20px;
    font-size: clamp(52px, 7vw, 104px);
    line-height: .96;
    letter-spacing: -.04em;
}

.pic-560-subtitle {
    margin-bottom: 26px;
    font-size: clamp(21px, 2.2vw, 34px);
    font-style: italic;
}

.pic-560-badge {
    display: inline-block;
    margin-bottom: 0;
    padding: 12px 22px;
    border-radius: 999px;
    background: rgba(121, 169, 64, .92);
    font-size: 17px;
    font-weight: 800;
}

.pic-560-intro {
    max-width: 980px;
    margin: 0 auto;
    padding: 54px 28px 28px;
    text-align: center;
}

.pic-560-intro p {
    font-size: 18px;
    line-height: 1.65;
}

.pic-560-intro .pic-560-lead {
    margin-top: 22px;
    font-size: 22px;
    font-weight: 800;
}

.pic-560-facts {
    max-width: 1360px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    margin: 0 auto;
    padding: 24px 30px 72px;
}

.pic-560-facts > .wp-block-column {
    min-width: 0;
    padding: 28px 24px;
    border: 1px solid #e2e7dc;
    border-radius: 14px;
    background: #fff;
    text-align: center;
    box-shadow: 0 8px 28px rgba(30, 65, 40, .09);
}

.pic-560-icon {
    width: 82px;
    height: 82px;
    display: grid;
    place-items: center;
    margin: 0 auto 18px;
    border-radius: 50%;
    background: #ebf1dd;
    font-size: 18px;
    font-weight: 900;
}

.pic-560-facts h3 {
    margin-bottom: 12px;
    font-size: 18px;
    line-height: 1.2;
    text-transform: uppercase;
}

.pic-560-facts p:not(.pic-560-icon) {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.55;
}

.pic-560-community {
    padding: 42px 30px 48px;
    border-block: 1px solid #e2e7dc;
    background: linear-gradient(90deg, #faf9f2, var(--event-light), #faf9f2);
}

.pic-560-community > h2,
.pic-560-community > .wp-block-group__inner-container > h2 {
    margin-bottom: 30px;
    text-align: center;
    text-transform: uppercase;
}

.pic-560-community-grid {
    max-width: 1280px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0 auto;
}

.pic-560-community-grid > .wp-block-column {
    min-width: 0;
    padding: 4px 28px;
    border-right: 1px solid #d7ded1;
    text-align: center;
}

.pic-560-community-grid > .wp-block-column:last-child {
    border-right: 0;
}

.pic-560-community-icon {
    margin-bottom: 10px;
    font-size: 38px;
    line-height: 1;
}

.pic-560-community-grid p:last-child {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.5;
}

.pic-560-memories {
    max-width: 1380px;
    margin: 0 auto;
    padding: 64px 30px;
}

.pic-560-memories > h2,
.pic-560-memories > .wp-block-group__inner-container > h2 {
    margin-bottom: 10px;
    text-transform: uppercase;
}

.pic-560-memories > p,
.pic-560-memories > .wp-block-group__inner-container > p {
    max-width: 760px;
    margin-bottom: 30px;
    font-size: 17px;
}

.pic-560-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.pic-560-gallery > .wp-block-column {
    min-width: 0;
}

.pic-560-gallery figure {
    height: 100%;
    margin: 0;
}

.pic-560-gallery a {
    display: block;
    height: 100%;
}

.pic-560-gallery img {
    width: 100%;
    height: 310px;
    display: block;
    border-radius: 12px;
    object-fit: cover;
}

.pic-560-social {
    padding: 48px 30px;
    border-top: 1px solid #e2e7dc;
    background: var(--event-light);
}

.pic-560-social-grid {
    max-width: 1260px;
    display: grid;
    grid-template-columns: .9fr 1fr 1.25fr;
    gap: 0;
    margin: 0 auto;
}

.pic-560-social-grid > .wp-block-column {
    min-width: 0;
    padding: 8px 34px;
    border-right: 1px solid #d7ded1;
}

.pic-560-social-grid > .wp-block-column:last-child {
    border-right: 0;
}

.pic-560-social h2 {
    text-transform: uppercase;
}

.pic-560-signature {
    margin: 20px 0 0;
    font-family: "Segoe Script", "Brush Script MT", cursive;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1.1;
}

.editor-styles-wrapper .pic-560-hero {
    max-width: none;
    min-height: 430px;
}

@media (max-width: 1000px) {
    .pic-560-facts,
    .pic-560-community-grid,
    .pic-560-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pic-560-community-grid {
        row-gap: 34px;
    }

    .pic-560-community-grid > .wp-block-column:nth-child(2) {
        border-right: 0;
    }

    .pic-560-social-grid {
        grid-template-columns: 1fr;
    }

    .pic-560-social-grid > .wp-block-column {
        border-right: 0;
        border-bottom: 1px solid #d7ded1;
    }

    .pic-560-social-grid > .wp-block-column:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 680px) {
    .pic-560-hero {
        min-height: 520px;
        padding: 54px 22px;
        background-position: 44% center;
    }

    .pic-560-hero h1 {
        font-size: 52px;
    }

    .pic-560-badge {
        padding: 10px 16px;
        font-size: 14px;
    }

    .pic-560-intro {
        padding: 42px 22px 22px;
    }

    .pic-560-intro p {
        font-size: 16px;
    }

    .pic-560-facts,
    .pic-560-community-grid,
    .pic-560-gallery {
        grid-template-columns: minmax(0, 1fr);
    }

    .pic-560-facts {
        padding: 20px 20px 52px;
    }

    .pic-560-community {
        padding: 36px 22px;
    }

    .pic-560-community-grid > .wp-block-column {
        padding: 24px 4px;
        border-right: 0;
        border-bottom: 1px solid #d7ded1;
    }

    .pic-560-community-grid > .wp-block-column:last-child {
        border-bottom: 0;
    }

    .pic-560-memories {
        padding: 48px 20px;
    }

    .pic-560-gallery img {
        height: 280px;
    }

    .pic-560-social {
        padding: 38px 20px;
    }

    .pic-560-social-grid > .wp-block-column {
        padding: 24px 0;
    }
}
