/* ══════════════════════════════════════════════════════════════════
 * snippet_legacy.css — CSS retrocompat per vecchi snippet (wi-snippet-NN)
 *
 * Caricato SOLO in modalità new (contentbuilder_mode: new) per
 * garantire che il contenuto DB prodotto con i vecchi snippet
 * continui a essere stilato correttamente dopo la migrazione.
 *
 * ══════════════════════════════════════════════════════════════════ */

.image-overlap {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    position: relative;
}

.image-overlap .content {
    position: relative;
    background-color: #151515;
    color: #ffffff;
    margin-top: 16px;
    margin-left: 30px;
    margin-right: 30px;
    padding: 7px 15px;
}

.team-bundle {
    justify-content: space-evenly;
    align-items: center;
    text-align: center;
}

.team-bundle img {
    width: 140px;
    border-radius: 100%;
    margin: 0 auto;
    height: auto;
}

.team-bundle p {
    margin-bottom: 0;
}

.service-bundle {
    text-align: center;
}

.service-bundle img {
    text-align: left;
    margin-inline: auto;
    width: auto;
}

.service-bundle p {
    margin-bottom: 0;
}

.service-bundle .btn {
    display: inline-flex;
    align-items: center;
    border: 1px solid #151515;
    background-color: transparent;
    color: #151515;
    border-radius: 4px;
    font-family: inherit;
    font-size: 12px;
    line-height: 16px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 7px 16px;
}

.service-bundle .btn:hover {
    border: 1px solid transparent;
    background-color: #151515;
    color: #fff;
}

.service-bundle .box {
    background: #fafafa 0% 0% no-repeat padding-box;
    border: 1px solid #d6d6d6;
    border-radius: 4px;
    text-align: left;
    padding: 20px 16px;
    margin-right: 30px;
}

.service-bundle .box img {
    margin-left: 0;
}

.service-bundle .box p {
    margin: 0;
}

.service-bundle .box:last-child {
    margin: 0;
}

.snippet-counter strong {
    font-size: 32px;
    font-weight: bold;
    color: #333;
    text-align: center;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.snippet-counter strong.counting {
    opacity: 1;
}

.counter-title {
    margin-bottom: 20px;
}

.counter-bundle {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

.counter-bundle .counter-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 255px;
    text-align: center;
    aspect-ratio: 1;
    flex-grow: 1;
    overflow: hidden;
    padding: 0 16px;
    margin: 16px 0;
}

.counter-bundle .counter-item img {
    width: auto;
    height: auto;
}

.counter-bundle .counter-item>h2 {
    margin-bottom: 4px;
}

.counter-bundle .counter-item>h4 {
    font-size: 20px;
    line-height: 26px;
    font-weight: 400;
}

.accordion {
    width: 100%;
    min-height: 50px;
}

.accordion .accordion-item {
    margin-bottom: 10px;
}

.accordion .accordion-item .accordion-header {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ccc;
}

.accordion .accordion-item .accordion-header img {
    transition: all 0.2s ease;
}

.accordion .accordion-item .accordion-content {
    transition: all 0.2s ease;
    overflow: hidden;
    height: 0;
    opacity: 0;
}

.is-builder .accordion .accordion-item .accordion-content {
    height: auto;
    opacity: 1;
}

.accordion .accordion-item.active .accordion-header img {
    transform: rotate(180deg);
}

.accordion .accordion-item.active .accordion-content {
    height: auto;
    opacity: 1;
}

/* ────────────────────────────────────────────────────────────────
 * wi-snippet-NN specifici old, estratti da snippet.css §D
 * ──────────────────────────────────────────────────────────────── */

.wi-snippet-42 .content {
    background-color: #383d40 !important;
}

.wi-snippet-42 h4 {
    color: white !important;
}

.wi-snippet-43 div {
    overflow: hidden;
    max-height: 160px;
}

.wi-snippet-43 div img {
    object-fit: cover;
    height: 100%;
}

.wi-snippet-43 div:nth-child(even) {
    padding-left: 0px !important;
}

.wi-snippet-47 {
    padding: 10px;
    display: flex;
    flex-direction: row;
}

.wi-snippet-47 .item {
    margin: 20px;
    color: #909090;
    text-align: center;
    width: 140px;
    height: 200px;
}

.wi-snippet-47 .item .item-text {
    margin-top: 10px;
    text-align: center;
}

.wi-snippet-47 .item .figure {
    background-color: #f2f2f2;
    width: 140px;
    height: 140px;
    margin-bottom: 20px;
    -webkit-clip-path: circle(50% at 50% 50%);
    clip-path: circle(50% at 50% 50%);
    position: relative;
    margin: 0 auto;
}

.wi-snippet-47 .item .figure .img_flex {
    width: 100%;
    transform: scale(1.1);
    transition: all 0.5s;
}

.wi-snippet-47 .item .figure .nome {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 20%);
    color: #ffffff;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    opacity: 0;
    transition: all 0.5s;
}

.wi-snippet-47 .item .figure:hover .nome {
    opacity: 1;
    transform: translate(-50%, -10%);
}

.wi-snippet-47 .item .figure:hover .img_flex {
    transform: scale(1);
    filter: blur(1px) brightness(70%);
}

@media (max-width: 992px) {

    .wi-snippet-19 .content,
    .wi-snippet-22 .content,
    .wi-snippet-27.img-fluid,
    .wi-snippet-28 .img-fluid {
        margin: 0;
        width: 100%;
    }

    .wi-snippet-42 .col-md-10,
    .wi-snippet-42 .column.two-sixth {
        margin-bottom: 0 !important;
    }

    .wi-snippet-42 .col-md-2,
    .wi-snippet-42 .column.sixth {
        padding-top: 0;
        display: flex;
        align-items: center;
    }

    .wi-snippet-42 .col-12 {
        width: 100% !important;
    }

    .wi-snippet-42 .content {
        padding: 40px 24px 64px;
    }

    .wi-snippet-42 .content h4 {
        text-align: center;
    }

    .wi-snippet-43 div {
        margin-bottom: 0;
    }

    .wi-snippet-46 {
        padding: 7.5px;
    }

    .wi-snippet-46 a {
        width: auto;
        padding: 0 7.5px;
    }

    .wi-snippet-37 iframe,
    .wi-snippet-40-yt iframe {
        width: 100%;
        height: 52.6vw;
    }
}

.is-builder .wi-snippet-30::after {
    content: ' (hidden)';
    font-size: 12px;
    color: red;
}

.is-builder .wi-snippet-31::after {
    content: ' (hidden)';
    font-size: 12px;
    color: red;
}

.order-1 {
    -ms-flex-order: 1;
    order: 1;
}

.order-2 {
    -ms-flex-order: 2;
    order: 2;
}

.wi-snippet-48 {
    height: 10px;
}

.wi-snippet-49 {
    height: 20px;
}

.wi-snippet-50 {
    height: 30px;
}

.wi-snippet-51 {
    height: 50px;
}

.spacer .spacer-label {
    display: none;
}

.is-builder .spacer {
    background-color: #e7e7e7;
    text-align: center;

    .spacer-label {
        width: 100%;
        margin: 0;
        font-size: 8px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

@media (min-width: 992px) {

    .image-overlap {
        align-items: flex-end;
        flex-direction: row;
    }

    .image-overlap .content {
        position: absolute;
    }

    .wi-snippet-42 .content {
        margin-left: -15vw;
        padding-inline: 46px;
    }

    .wi-snippet-42> :first-child {
        width: calc(100% - 16.6667%) !important;
    }

    .wi-snippet-43>div {
        height: 506px;
    }

    .wi-snippet-44 {
        padding-inline: 7.5px !important;
    }

    .wi-snippet-44>a,
    .wi-snippet-44 .column.sixth>a {
        height: auto;
        padding-inline: 7.5px !important;
        display: block;
    }

    .wi-snippet-43>div,
    .wi-snippet-44>a,
    .wi-snippet-44 .column.sixth {
        overflow: hidden;
    }

    .wi-snippet-43>div {
        max-height: 495px;
    }

    .wi-snippet-43 :nth-child(even) {
        padding-left: 0px !important;
    }

    .wi-snippet-43 img,
    .wi-snippet-44 img {
        width: 100%;
        height: auto;
    }

    .wi-snippet-46 a {
        width: auto;
        padding: 0 16px 0 0;
    }

    .wi-snippet-46 a:first-child {
        padding-left: 15px;
    }

    .embed-responsive {
        position: relative;
        display: block;
        width: 100%;
        padding: 0;
        overflow: hidden;
    }

    .embed-responsive-16by9::before {
        padding-top: 56.25%;
        display: block;
        content: '';
    }

    .embed-responsive iframe,
    .embed-responsive video,
    .embed-responsive object {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }

    .counter-title {
        margin-bottom: 20px;
    }

    .counter-bundle {
        padding-block: 20px;
    }

    .order-md-1 {
        -ms-flex-order: 1;
        order: 1;
    }

    .order-md-2 {
        -ms-flex-order: 2;
        order: 2;
    }

}

.wi-snippet-19 .image-overlap .content,
.wi-snippet-22 .image-overlap .content,
.wi-snippet-42 .content {
    color: #ffffff;
    background: rgba(21, 21, 21, 0.68) !important;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 14px;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.22);
    -webkit-backdrop-filter: blur(16px) saturate(125%);
    backdrop-filter: blur(16px) saturate(125%);
}

.wi-snippet-19 .image-overlap .content,
.wi-snippet-22 .image-overlap .content {
    padding: 14px 18px;
}

.wi-snippet-42 .content {
    padding-inline: clamp(24px, 4vw, 46px);
}

.wi-snippet-19 .image-overlap .content h4,
.wi-snippet-22 .image-overlap .content h4,
.wi-snippet-42 .content h4 {
    color: #ffffff !important;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.26);
}

.wi-snippet-60 {
    margin-left: 0;
    margin-right: 0;

    >[class*='col-'] {
        padding-left: 0;
        padding-right: 0;
    }

    .snippet-fullwidth {
        position: relative;
        left: 50%;
        right: 50%;
        width: 100vw;
        max-width: 100vw;
        margin-left: -50vw;
        margin-right: -50vw;
    }

    .snippet-fullwidth-image {
        display: block;
        width: 100%;
        height: auto;
    }
}

@media (max-width: 760px) {
    .wi-snippet-20 .column:not(:last-child),
    .wi-snippet-20 [class*="col-"]:not(:last-child) {
        margin-bottom: 15px;
    }
}

@media (max-width: 760px) {
    .wi-snippet-26 .column:not(:last-child),
    .wi-snippet-26 [class*="col-"]:not(:last-child) {
        margin-bottom: 30px;
    }
}

.text-image-bundle-third {
    display: flex;
    margin-inline: 0 !important;
    background-color: #fafafa;
    align-items: stretch;
}

.text-image-bundle-third>div:not(.is-tool) {
    justify-content: center;
    display: flex;
    flex-direction: column;
    align-items: baseline;
}

.text-image-bundle-third .content .btn {
    display: inline-flex;
    align-items: center;
    border: 1px solid #151515;
    background-color: transparent;
    border-radius: 4px;
    font-family: inherit;
    font-size: 12px;
    line-height: 16px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 7px 16px;
}

.text-image-bundle-third img {
    object-fit: cover;
    width: 100%;
}

.text-image-bundle-third .btn:hover {
    border: 1px solid transparent;
    background-color: #151515;
    color: #fff;
}
