/* Cascina Bonfiglio — SEZIONE: Prova le nostre box (Figma 118:2138). */

.cb-ctabox {
    position: relative;
    width: 100%;
    aspect-ratio: 1728 / 590;
    background: #ffffff;
    overflow: hidden;
}

.cb-ctabox__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    user-select: none;
    pointer-events: none;
}

.cb-ctabox__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 24px;
    z-index: 2;
}

.cb-ctabox__kicker {
    margin: 0 0 4px;
    font-family: var(--cb-font-body);
    font-weight: 700;
    font-size: 14px;
    line-height: 47px;
    letter-spacing: 1.174px;
    text-transform: uppercase;
    color: #ffffff;
}

.cb-ctabox__title {
    margin: 0 0 18px;
    font-family: var(--cb-font-body);
    font-weight: 400;
    font-size: 36px;
    line-height: 47px;
    letter-spacing: 1.174px;
    color: #ffffff;
}
.cb-ctabox__title-accent {
    font-family: var(--cb-font-accent); font-style: italic;
    font-weight: 700;
    font-size: 1.35em;
    color: #ffffff;
    padding-left: .05em;
}

/* Figma 118:2140 Regular 18px / normal — paragrafo ctabox */
.cb-ctabox__text {
    margin: 0 0 26px;
    max-width: 724px;
    font-family: var(--cb-font-body);
    font-weight: 400;
    font-size: 18px;
    line-height: normal;
    color: #ffffff;
}

.cb-ctabox__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #A8C780;
    color: #ffffff;
    font-family: var(--cb-font-body);
    font-weight: 700;
    font-size: 16px;
    letter-spacing: .7px;
    padding: 13px 34px;
    border-radius: 100px;
    transition: background .2s;
}
.cb-ctabox__btn:hover {
    background: #94b66e;
}

@media (max-width: 1024px) {
    .cb-ctabox { aspect-ratio: 1728 / 720; }
    .cb-ctabox__title { font-size: 30px; line-height: 40px; }
    .cb-ctabox__text { font-size: 16px; }
}

@media (max-width: 640px) {
    .cb-ctabox {
        aspect-ratio: auto;
        min-height: 430px;
        padding: 70px 24px 90px;
        margin: 0 0;
        position: relative;
        overflow: hidden;
    }
    .cb-ctabox__content { padding: 0 12px; }
    .cb-ctabox__bg { object-position: 30%; opacity: 1; }
    .cb-ctabox::after {
        content: "";
        position: absolute;
        inset: 0;
        background: transparent;
        z-index: 1;
    }
    /* Cliente: "Prova le nostre box aggiustare allineamento testi ed interlinea
       e anche i vari a capo". I <br> dal multiline ACF su mobile spezzano male
       le righe; li annullo e lascio fluire il paragrafo. */
    .cb-ctabox__kicker {
        font-size: 12px;
        line-height: 1.4;
        letter-spacing: 1px;
        margin-bottom: 10px;
    }
    .cb-ctabox__title {
        font-size: 28px;
        line-height: 1.2;
        letter-spacing: 0.5px;
        margin: 0 auto 18px;
        max-width: none;
        text-wrap: balance;
        white-space: nowrap;
    }
    .cb-ctabox__title-accent { font-size: 1.4em; padding-left: .08em; }
    .cb-ctabox__text {
        font-size: 16px;
        line-height: 1.55;
        margin: 0 auto 32px;
        max-width: 500px;
        text-wrap: balance;
        padding: 0 8px;
    }
    /* I <br> hardcoded (da \n nei campi ACF) creano righe brutte su 390px:
       li nascondo e lascio fluire il paragrafo naturalmente. */
    .cb-ctabox__text br { display: none; }
    .cb-ctabox__btn { font-size: 17px; padding: 16px 36px; width: auto; min-width: 200px; max-width: 280px; justify-content: center; }
}
