/* Copridivano Calmante — advertorial
   Visual authority: thedogslanding.com/pages/dog-owners-are-switching
   Valori da component-vertorial-*.css + custom.css (tema Atlantic).
   Non e' il look Felici del cuscino: si copia la pagina USA. */

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
    margin: 0;
    font-family: Montserrat, Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #003744;
    background: #fff;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
[hidden] { display: none !important; }
h1, h2, h3, h4, h5, h6 { margin: 0; }
p { margin: 0; }

.vertorial-container {
    max-width: 1240px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
}

/* ── Header fisso (component-vertorial-header) ───────────── */
.vertorial-header-main-wrapper {
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 0;
}
.vertorial-header-announcement-bar {
    background: #003744;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.vertorial-header-announcement-bar h6 {
    color: #fff;
    margin: 0;
    padding: 0;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    font-family: "Barlow", "Brandon Text", sans-serif;
    letter-spacing: .02em;
}
.vertorial-header-announcement-bar h6 strong { font-weight: 700; }
.vertorial-header-main {
    background-color: #fff;
    box-shadow: 0 6px 6px #00000010;
}
.vertorial-header-main .vertorial-container {
    display: flex;
    justify-content: space-between;
    height: 66px;
    align-items: center;
}
.logo-link { margin-top: 5px; display: flex; align-items: center; }
.logo-link img { width: 140px; height: auto; }
.cta-btn {
    background-color: #fc0;
    color: #fff;
    text-transform: lowercase;
    display: block;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-size: 16px;
    font-weight: 700;
    padding: 15px;
    text-align: center;
    border-radius: 5px;
    text-decoration: none;
    white-space: nowrap;
}
.vertorial-header-main .cta-btn {
    padding-right: 30px;
    padding-left: 30px;
    height: 35px;
    display: flex;
    align-items: center;
    line-height: 1;
}
.cta-btn:hover { color: #fff; background-color: #efc417; }
.cta-btn:focus-visible { outline: 3px solid #003744; outline-offset: 3px; }

@media only screen and (max-width: 768px) {
    .vertorial-header-announcement-bar { height: 30px; }
    .vertorial-header-announcement-bar h6 { font-size: 11px; padding: 0 10px; text-align: center; }
    .vertorial-header-main .vertorial-container { height: 50px; }
    .logo-link { width: 100px; margin-top: 5px; }
    .logo-link img { width: 100px; }
    .vertorial-header-main .cta-btn {
        height: 32px;
        padding-right: 14px;
        padding-left: 14px;
        font-size: clamp(12px, 3.4vw, 16px);
    }
}

/* ── Hero (component-listsickle-cp-hero) ─────────────────── */
.vertorial-hero-mobile { display: none; }
.vertorial-hero {
    background-color: #003744;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1920' height='500' viewBox='0 0 1920 500' fill='none'><rect width='1920' height='500' fill='%23003744'/><path d='M1920 308L0 409V500H1920V308Z' fill='%23065163'/></svg>");
    height: 500px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    margin-top: 104px;
}
.vertorial-hero-reviews h2 {
    color: #fff;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.2;
}
.vertorial-hero-left { position: relative; }
.vertorial-hero-reviews {
    display: flex;
    gap: 10px;
    flex-direction: column;
    align-items: center;
    position: absolute;
    left: 300px;
    top: 40px;
}
.cp-listsickle-img1 {
    filter: drop-shadow(0px 0px 60px #ffffff80);
    width: 358px;
    margin-left: 19px;
    margin-top: -34px;
}
.cp-listsickle-img2 {
    position: absolute;
    bottom: 0;
    left: 140px;
    width: 264px;
}
.vertorial-hero .vertorial-container {
    position: relative;
    height: 500px;
    display: grid;
    grid-template-columns: .9fr 1.2fr;
    align-items: center;
}
.vertorial-hero-right p {
    color: #fff;
    line-height: 24px;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    font-weight: 500;
    margin: 0 0 16px;
}
.vertorial-hero-right h1 {
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    font-family: "Barlow", "Brandon Text", sans-serif;
    line-height: 38px;
    text-align: start;
    margin: 0 0 14px;
}
.vertorial-hero-right-review {
    background-color: #fff;
    padding: 20px 88px;
    border-radius: 5px;
}
.vertorial-hero-right-review p {
    color: #003744;
    margin: 0;
    padding: 0;
    text-align: center;
    font-family: Montserrat, sans-serif;
    font-weight: 500;
    line-height: 21px;
    font-size: 14px;
}
.vertorial-hero-right-review svg {
    display: block;
    margin-right: auto;
    margin-left: auto;
}
.vertorial-hero-right-review h2 {
    color: #003744;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    font-family: "Barlow", "Brandon Text", sans-serif;
    margin-top: 10px;
}

@media only screen and (max-width: 1150px) {
    .vertorial-hero .vertorial-container { grid-template-columns: 1fr 1fr; }
    .vertorial-hero-right-review { padding-right: 40px; padding-left: 40px; }
}
@media only screen and (max-width: 1020px) {
    .vertorial-hero-reviews { left: 260px; top: 50px; }
    .cp-listsickle-img2 { position: absolute; bottom: 0; left: 200px; width: 330px; }
}
@media only screen and (max-width: 940px) {
    .cp-listsickle-img2 { position: absolute; bottom: 0; left: 130px; width: 350px; }
    .vertorial-hero-right p { font-size: 12px; line-height: 18px; }
    .vertorial-hero-reviews { left: 220px; top: 50px; }
    .vertorial-hero .vertorial-container { grid-template-columns: 1fr .9fr; }
    .vertorial-hero-right h1 { margin-top: 5px; font-size: 28px; line-height: 32px; }
    .vertorial-hero-right-review { padding-right: 20px; padding-left: 20px; }
}
@media only screen and (max-width: 768px) {
    .vertorial-hero-desktop { display: none; }
    .vertorial-hero-mobile { display: block; }
    .vertorial-hero-mobile .vertorial-container {
        grid-template-columns: 1fr;
        align-items: unset;
        padding-top: 20px;
        height: unset;
    }
    .vertorial-hero-left { display: none; }
    .vertorial-hero {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='768' height='703' viewBox='0 0 768 703' fill='none'><rect width='768' height='686' fill='%23003744'/><path d='M768 526L2.04785 550.6V703H768V526Z' fill='%23065163'/></svg>");
        background-color: #003744;
        height: unset;
        padding-bottom: 20px;
        margin-top: 80px;
    }
    .vertorial-hero .vertorial-container { height: unset; }
    .cp-listsickle-img2 { position: unset; margin-right: 20px; width: 100%; }
    .vertorial-img-1-container {
        display: grid;
        gap: 10px;
        justify-content: center;
        grid-template-columns: 1.5fr 1fr;
        justify-items: center;
        align-items: center;
        margin-bottom: 10px;
    }
    .cp-listsickle-img1 { position: unset; width: 100%; margin: 0; filter: drop-shadow(0px 0px 60px #ffffff80); }
    .vertorial-hero-reviews {
        display: flex;
        flex-direction: column;
        align-items: center;
        position: unset;
        gap: 0;
    }
    .vertorial-hero-reviews svg { margin: 0; padding: 0; width: 100%; max-width: 112px; }
    .vertorial-hero-reviews h2 { color: #fff; text-align: center; font-size: 16px; line-height: 27px; }
    .vertorial-hero-right h1 { font-size: 24px; line-height: 30px; }
}
@media only screen and (max-width: 540px) {
    .vertorial-hero {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='768' height='796' viewBox='0 0 768 796' fill='none'><rect width='768' height='686' fill='%23003744'/><path d='M768 526L2 563.525V796H768V526Z' fill='%23065163'/></svg>");
    }
    .vertorial-hero-right-review { padding: 10px 20px; }
}

/* ── 5 motivi (step1–5) ──────────────────────────────────── */
.vertorial-step1,
.vertorial-step3,
.vertorial-step5 { background-color: #eafbff; }
.vertorial-step2,
.vertorial-step4 { background-color: #f5fdff; }

.vertorial-step1 .vertorial-container,
.vertorial-step3 .vertorial-container,
.vertorial-step5 .vertorial-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 136px;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 30px;
}
.vertorial-step2 .vertorial-container,
.vertorial-step4 .vertorial-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
    padding-top: 30px;
    padding-bottom: 30px;
    grid-auto-flow: dense;
}
.vertorial-step2-right,
.vertorial-step4-right { grid-column: 1; }
.vertorial-step2-left,
.vertorial-step4-left { grid-column: 2; }

.vertorial-step1-title-wrapper,
.vertorial-step2-title-wrapper,
.vertorial-step3-title-wrapper,
.vertorial-step4-title-wrapper,
.vertorial-step5-title-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
}
.vertorial-step1-title-number,
.vertorial-step2-title-number,
.vertorial-step3-title-number,
.vertorial-step4-title-number,
.vertorial-step5-title-number {
    font-family: "Barlow Condensed", Swiss721, sans-serif;
    font-size: 113px;
    font-weight: 800;
    color: #fc0;
    line-height: 1;
    flex: 0 0 auto;
}
.vertorial-step1-title-text,
.vertorial-step2-title-text,
.vertorial-step3-title-text,
.vertorial-step4-title-text,
.vertorial-step5-title-text {
    font-size: 36px;
    color: #003744;
    font-family: "Barlow", "Brandon Text", sans-serif;
    line-height: 42px;
    font-weight: 700;
}
.vertorial-step1-left p,
.vertorial-step2-left p,
.vertorial-step3-left p,
.vertorial-step4-left p,
.vertorial-step5-left p {
    font-size: 14px;
    font-family: Montserrat, sans-serif;
    color: #003744;
    line-height: 21px;
    margin-top: 12px;
}
.vertorial-step1-right img,
.vertorial-step2-right img,
.vertorial-step3-right img,
.vertorial-step4-right img,
.vertorial-step5-right img {
    border-radius: 5px;
    max-width: 100%;
}
.vertorial-step2-left ul,
.vertorial-step4-left ul {
    margin: 12px 0 0;
    padding: 0;
}
.vertorial-step2-left ul li {
    list-style-type: disc;
    list-style-position: inside;
    color: #003744;
    font-family: Montserrat, sans-serif;
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 14px;
}

@media only screen and (max-width: 1050px) {
    .vertorial-step1 .vertorial-container,
    .vertorial-step2 .vertorial-container,
    .vertorial-step3 .vertorial-container,
    .vertorial-step4 .vertorial-container,
    .vertorial-step5 .vertorial-container { gap: 20px; }
}
@media only screen and (max-width: 768px) {
    .vertorial-step1 .vertorial-container,
    .vertorial-step2 .vertorial-container,
    .vertorial-step3 .vertorial-container,
    .vertorial-step4 .vertorial-container,
    .vertorial-step5 .vertorial-container {
        grid-template-columns: 1fr;
        justify-items: center;
        padding-top: 10px;
        padding-bottom: 20px;
    }
    .vertorial-step1-title-text,
    .vertorial-step2-title-text,
    .vertorial-step3-title-text,
    .vertorial-step4-title-text,
    .vertorial-step5-title-text { font-size: 24px; line-height: 34px; }
    .vertorial-step1-title-wrapper,
    .vertorial-step2-title-wrapper,
    .vertorial-step3-title-wrapper,
    .vertorial-step4-title-wrapper,
    .vertorial-step5-title-wrapper { padding: 0; min-height: 100px; height: auto; margin-top: 10px; }
    .vertorial-step1-title-number,
    .vertorial-step2-title-number,
    .vertorial-step3-title-number,
    .vertorial-step4-title-number,
    .vertorial-step5-title-number { font-size: 80px; }
    .vertorial-step2-right, .vertorial-step2-left,
    .vertorial-step4-right, .vertorial-step4-left { grid-column: unset; }
}

/* ── CTA Natale / Capodanno ──────────────────────────────── */
.vertorial-cta {
    background-color: #064e60;
    padding-top: 30px;
    padding-bottom: 30px;
}
.vertorial-cta-christmas {
    background-image: linear-gradient(180deg, #0a3d4a 0%, #064e60 45%, #0b2f38 100%);
    background-position: center;
    background-size: cover;
}
.vertorial-cta-reviews-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.vertorial-cta p {
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    padding: 0;
    margin: 0;
    text-align: center;
}
.vertorial-cta-reviews-row-christmas .reviews-row {
    display: flex;
    align-items: center;
    gap: 5px;
    justify-content: center;
}
.vertorial-cta-reviews-row-christmas .reviews-row h2 {
    font-size: 22px;
    color: #fff;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
}
.vertorial-cta-reviews-row-christmas h1 {
    font-size: 30px;
    color: #fff;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 700;
    text-align: center;
    margin: 8px 0 10px;
    line-height: 1.25;
}
.vertorial-cta .cta-btn {
    display: block;
    width: 285px;
    margin: 10px auto;
    white-space: nowrap;
    font-size: clamp(14px, 3.6vw, 16px);
}
.vertorial-sub-cta-text {
    font-family: Montserrat, sans-serif;
    font-size: 12px !important;
    font-weight: 500;
    margin-top: 6px !important;
}
@media only screen and (max-width: 768px) {
    .vertorial-cta-reviews-row-christmas .reviews-row {
        flex-direction: column;
        margin-top: 10px;
        margin-bottom: 10px;
    }
    .vertorial-cta-reviews-row-christmas .reviews-row h2 { font-size: 16px; }
    .vertorial-cta-reviews-row-christmas h1 { font-size: 24px; line-height: 32px; }
    .vertorial-cta .cta-btn { width: unset; max-width: 90%; padding: 14px 22px; }
    .vertorial-cta p { font-size: 16px; }
}

/* ── Recensioni UGC (speak-for) ──────────────────────────── */
.vertorial-speak-for {
    background-color: #003744;
    padding-top: 30px;
    padding-bottom: 40px;
}
.vertorial-speak-for-title-wrapper {
    max-width: 1240px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
}
.vertorial-speak-for h1 {
    color: #fff;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 300;
    font-size: 24px;
    text-align: center;
    margin-bottom: 30px;
    text-transform: capitalize;
}
.vertorial-speak-for h1 .nce-pdp--h1-bold { font-weight: 700; }
.vertorial-speak-for-slider-wrapper {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 0 20px 12px;
    gap: 0;
    scrollbar-width: thin;
}
.vertorial-speak-for-card {
    background-color: #e7faff;
    width: 300px;
    min-width: 300px;
    border-radius: 5px;
    margin-right: 20px;
    scroll-snap-align: center;
    display: flex;
    flex-direction: column;
}
.vertorial-speak-for-card-text-wrapper { padding: 16px 20px 14px; }
.vertorial-speak-for-card h2 {
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 15px;
    text-align: center;
    color: #003744;
    margin-bottom: 8px;
}
.vertorial-speak-for-card p {
    font-family: Montserrat, sans-serif;
    font-size: 10px;
    font-weight: 500;
    line-height: 18px;
    text-align: center;
    color: #003744;
    margin: 0;
}
.vertorial-speak-for-card-review-name {
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    color: #003744;
    margin: 10px 0 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: wrap;
}
.vertorial-speak-for-card-review-name svg { display: inline-block; }
.vertorial-speak-for-card-verified {
    font-family: Montserrat, sans-serif;
    color: #003744;
    font-size: 12px;
    font-style: italic;
    line-height: 18px;
    background-color: #fc0;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 5px;
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
@media only screen and (max-width: 768px) {
    .vertorial-speak-for-card { width: 320px; min-width: 320px; }
    .vertorial-speak-for h1 { font-size: 24px; }
}

/* ── Tabella vs contraffatto ─────────────────────────────── */
.nce-pdp-cfp--compare-cfp {
    background-color: #eafbff;
    margin-top: 0;
    padding-top: 30px;
    padding-bottom: 30px;
}
.nce-pdp-cfp--compare-cfp .container {
    max-width: 1240px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 20px;
    padding-left: 20px;
}
.nce-pdp-cfp--compare-cfp h1 {
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 300;
    text-align: center;
    font-size: 24px;
    text-transform: capitalize;
    color: #003744;
}
.nce-pdp--h1-bold {
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 700;
}
.nce-pdp-cfp--compare-cfp table {
    width: 800px;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-top: 30px;
    border-collapse: collapse;
}
.nce-pdp-cfp--compare-cfp td {
    color: #003744;
    font-family: Montserrat, sans-serif;
    vertical-align: middle;
    height: 40px;
}
.nce-pdp-cfp--compare-cfp tbody td {
    background-color: #f3fdff;
    padding: 10px;
    text-align: center;
}
.nce-pdp-cfp--compare-cfp tbody .td-white-bg { background-color: #fff; }
.nce-pdp-cfp--compare-cfp tbody td:nth-child(1) {
    width: 190px;
    text-align: left;
}
.nce-pdp-cfp--compare-cfp tbody td:nth-child(2) {
    background-color: #2a4c53;
    text-align: center;
    width: 219px;
}
.nce-pdp-cfp--compare-cfp tbody td:nth-child(3),
.nce-pdp-cfp--compare-cfp tbody td:nth-child(4) {
    text-align: center;
    width: 100px;
}
.nce-pdp-cfp--compare-cfp tbody .td-dark { background-color: #003744 !important; }
.nce-pdp-cfp--compare-cfp thead tr th:nth-child(2) {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 14px;
    font-family: "Barlow", "Brandon Text", sans-serif;
    color: #fff;
    background-color: #003744;
    padding: 10px;
    border-radius: 15px 15px 0 0;
}
.nce-pdp-cfp--compare-cfp thead tr th:nth-child(3),
.nce-pdp-cfp--compare-cfp thead tr th:nth-child(4) {
    font-family: "Barlow", "Brandon Text", sans-serif;
    color: #003744;
    font-size: 14px;
    vertical-align: bottom;
    padding: 10px;
}
.nce-pdp-cfp--compare-cfp tfoot tr td:nth-child(2) {
    background-color: #2a4c53;
    border-radius: 0 0 15px 15px;
    padding: 10px;
}
.nce-pdp-cfp--compare-cfp tbody tr td p { margin: 3px 0 0; padding: 0; }
.nce-pdp-cfp--compare-cfpv2 img { max-width: 100%; padding: 5px; }
.nce-pdp-cfp--compare-cfp .cfp_img { width: 140px; }
.nce-pdp-cfp--compare-cfp thead th img {
    width: 140px;
    height: auto;
    margin: 0 auto 6px;
    object-fit: contain;
}
@media only screen and (max-width: 830px) {
    .nce-pdp-cfp--compare-cfp table { width: 100%; }
}
@media only screen and (max-width: 600px) {
    .nce-pdp-cfp--compare-cfp tbody td:nth-child(2) { width: 35px; }
    .nce-pdp-cfp--compare-cfp tbody td:nth-child(3),
    .nce-pdp-cfp--compare-cfp tbody td:nth-child(4) { width: 45px; }
    .nce-pdp-cfp--compare-cfp tbody td:nth-child(1) { width: 100px; height: 62px; }
    .nce-pdp-cfp--compare-cfp thead th { font-size: 11px; }
    .nce-pdp-cfp--compare-cfp .cfp_img {
        padding: 0 !important;
        transform: scale(1.5);
        margin-bottom: 20px;
        width: 70px;
    }
    .nce-pdp-cfp--compare-cfp thead th img { width: 70px; }
}

/* ── Recensioni Trustpilot-style ─────────────────────────── */
.vertorial-tp {
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #003744;
}
.vertorial-tp-container {
    max-width: 1240px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
}
.vertorial-tp-track {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 10px;
    padding-bottom: 8px;
    scrollbar-width: thin;
}
.vertorial-tp-card {
    text-align: center;
    border: 1px solid #ffffff60;
    border-radius: 5px;
    padding: 20px 20px 10px;
    background-color: #194b56;
    box-shadow: 0 4px 4px #00000040;
    width: 390px;
    min-width: 390px;
    max-width: 100%;
    margin-right: 10px;
    scroll-snap-align: center;
}
.vertorial-tp-card p { color: #fff; font-family: Montserrat, sans-serif; font-size: 14px; line-height: 1.5; margin: 8px 0; }
.vertorial-tp-card h4 {
    font-family: Montserrat, sans-serif;
    font-style: italic;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
.vertorial-tp-card h2 {
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-size: 16px;
    font-weight: 700;
    margin-top: 10px;
    color: #fff;
}
.vertorial-tp-card h3 {
    color: #fff;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-size: 14px;
    font-weight: 700;
    margin: 10px 0;
}
.vertorial-tp-card svg { margin: 0 auto; }
.vertorial-tp a {
    text-decoration: underline;
    color: #fff;
    font-family: Montserrat, sans-serif;
    margin-top: 20px;
    display: block;
    text-align: center;
    font-weight: 500;
}
@media only screen and (max-width: 436px) {
    .vertorial-tp-card { width: 335px; min-width: 335px; }
}
@media only screen and (max-width: 768px) {
    .vertorial-tp a { margin-top: 40px; }
}

/* ── FAQ ─────────────────────────────────────────────────── */
.vertorial-faq {
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #eafbff;
}
.vertorial-faq h1 {
    color: #003744;
    font-size: 24px;
    font-weight: 300;
    margin-bottom: 20px;
    font-family: "Barlow", "Brandon Text", sans-serif;
    text-align: center;
}
.vertorial-faq-container {
    max-width: 765px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
}
.vertorial-faq .accordion {
    color: #003744;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    transition: .4s;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 700;
    font-size: 16px;
    min-height: 60px;
    height: auto;
    text-transform: capitalize;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background-color: #f9feff;
    line-height: 1.3;
}
.vertorial-faq .accordion.accordion-dark,
.vertorial-faq .accordion-section button:nth-child(4n-1) {
    background-color: #edfcff !important;
}
.vertorial-faq .accordion:hover,
.vertorial-faq .accordion.is-open {
    background-color: #def7fc;
}
.vertorial-faq .accordion::after {
    content: "+";
    color: #003744;
    font-weight: 700;
    font-size: 1.4em;
    margin-left: 5px;
    flex: 0 0 auto;
    line-height: 1;
}
.vertorial-faq .accordion.is-open::after { content: "\2212"; }
.vertorial-faq .panel {
    padding: 0 18px;
    max-height: 0;
    overflow: hidden;
    transition: max-height .2s ease-out;
    font-family: Montserrat, sans-serif;
    color: #003744;
}
.vertorial-faq .panel p {
    padding: 12px 0 18px;
    line-height: 1.55;
    font-size: 14px;
    font-weight: 500;
}
.vertorial-faq .accordion:focus-visible { outline: 3px solid #003744; outline-offset: 2px; }

/* ── Offerta lettori ─────────────────────────────────────── */
.vertorial-special { padding-top: 30px; padding-bottom: 30px; }
.vertorial-special .vertorial-container { max-width: 621px; }
.vertorial-special p {
    color: #003744;
    text-align: center;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.55;
}
.vertorial-special h1 {
    text-align: center;
    font-family: "Barlow", "Brandon Text", sans-serif;
    font-weight: 300;
    font-size: 24px;
    color: #003744;
    margin-bottom: 16px;
}
.vertorial-special h1 strong { font-weight: 700; }
@media only screen and (max-width: 768px) {
    .vertorial-special { padding-top: 20px; padding-bottom: 10px; }
}

/* ── Footer FI (pattern cuscino, senza WhatsApp) ─────────── */
.site-footer {
    background: #f7f7f7;
    padding: 34px 0;
    text-align: center;
    font-size: 14px;
    margin-top: 0;
    font-family: Montserrat, sans-serif;
}
.site-footer .wrap { max-width: 760px; margin: 0 auto; padding: 0 18px; }
.site-footer img { width: 210px; margin: 0 auto 14px; }
.site-footer p { margin: 0 0 8px; color: #1e1f24; }
.site-footer a { color: #1e1f24; }
.footer-legal-links a { display: inline-block; margin: 0 8px 6px; color: #1e1f24; }
.site-footer .legal { color: #666; font-size: 12px; margin-top: 14px; }

@media (max-width: 320px) {
    body { overflow-x: hidden; }
}
