/* Fond global */
    body,
    .site-content,
    .site-main,
    #content,
    .entry-content {
        background-color: #FBFAF7 !important;
    }

    /*
     * Blocksy : retire UNIQUEMENT le padding interne de la zone article
     * sans toucher le container du header ni du footer.
     * :not() préserve les containers du header et du footer Blocksy.
     */
    .ct-container:not(.ct-header-container):not(.ct-footer-container):not(.ct-topbar-container) {
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Zone de contenu principale - retire padding/margin Blocksy */
    #primary,
    .site-main,
    #content,
    .entry-content,
    .page-content,
    .ct-post-content {
        padding: 0 !important;
        margin: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        float: none !important;
    }

    /* Blocksy injecte un fond blanc sur la balise footer globalement -
       on force le transparent dans la section CTA bleue */
    #contact footer,
    #contact div,
    #vectisec-home footer {
        background: transparent !important;
        background-color: transparent !important;
    }
    @keyframes nodePulse {
        0%, 100% { box-shadow: 0 0 0 0 rgba(0, 119, 182, 0.4); }
        70%       { box-shadow: 0 0 0 10px rgba(0, 119, 182, 0); }
    }
    .v-step-node-active { animation: nodePulse 2s infinite; }

    #ressource .wpforms-container,
    #ressource .wpforms-form,
    #ressource .wpforms-field-container,
    #ressource .wpforms-submit-container { width: 100% !important; max-width: 100% !important; }
    #ressource .wpforms-container ul,
    #ressource .wpforms-container li { list-style: none !important; padding-left: 0 !important; margin-left: 0 !important; }
    #ressource .wpforms-container li::before { display: none !important; content: none !important; }
    #ressource #wpforms-3138,
    #ressource #wpforms-form-3138 { width: 100% !important; max-width: 100% !important; }
    #ressource #wpforms-3138 input[type="email"],
    #ressource #wpforms-form-3138 input[type="email"] {
        width: 100% !important; max-width: 100% !important; box-sizing: border-box !important;
        font-size: 18px !important; border-radius: 8px !important; border: 1px solid #e5e7eb !important;
        padding: 16px 20px !important; box-shadow: none !important;
    }
    #ressource #wpforms-3138 button[type="submit"],
    #ressource #wpforms-form-3138 button[type="submit"] {
        width: 100% !important; font-size: 18px !important; border-radius: 50px !important;
        text-transform: uppercase !important; font-weight: 700 !important; padding: 18px !important;
    }
    #ressource .resource-form-wrap { width: 100%; max-width: 640px; }
    @media (max-width: 767px) {
        #ressource .resource-visual-card { max-width: 280px; margin-inline: auto; }
    }

/* BEGIN VECTISEC EDITORIAL 20261026
   Accueil, sections sous le haut de page : mise en page éditoriale (sections ouvertes, sans cartes).
   Balisage : front-page.php, <div class="vx-ed">. Retour arrière : supprimer ce bloc et réactiver l'ancien balisage. */
.vx-ed {
    --ed-ink: #0f2a43; --ed-steel: #326586; --ed-signal: #0077b6; --ed-text: #3d4a5a; --ed-muted: #5d6b7b;
    --ed-paper: #FBFAF7; --ed-mist: #e8eef3; --ed-deep: #14304a; --ed-rule: #d9dee4;
    font-family: 'Poppins', sans-serif; color: var(--ed-text); font-size: 17px; line-height: 1.7;
}
.vx-ed *, .vx-ed *::before, .vx-ed *::after { box-sizing: border-box; }
.vx-ed p { margin: 0 0 16px; }
.vx-ed a { color: var(--ed-signal); }
.vx-ed-wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.vx-ed-sec { padding: clamp(72px, 9vw, 128px) 0; }
.vx-ed-sec--tight { padding: clamp(48px, 6vw, 80px) 0; }
.vx-ed-sec + .vx-ed-sec:not(.vx-ed-band) { padding-top: 0; }

/* Typographie */
.vx-ed .vx-ed-title { font-size: clamp(2rem, 3.6vw, 3.25rem); font-weight: 600; line-height: 1.08; letter-spacing: -0.02em; color: var(--ed-ink); margin: 0 0 24px; max-width: 18ch; text-wrap: balance; }
.vx-ed .vx-ed-small-title { font-size: clamp(1.25rem, 1.8vw, 1.5rem); font-weight: 600; line-height: 1.3; color: var(--ed-ink); margin: 0 0 12px; }
.vx-ed .vx-ed-lead { font-size: clamp(1.125rem, 1.45vw, 1.3rem); line-height: 1.6; color: var(--ed-text); max-width: 60ch; }
.vx-ed-head { margin-bottom: clamp(40px, 5vw, 64px); }
.vx-ed-head--row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 40px; }
.vx-ed-head--row .vx-ed-title { margin-bottom: 0; }
.vx-ed .vx-ed-link { font-weight: 600; text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.vx-ed .vx-ed-link:hover { text-decoration-thickness: 2px; }
.vx-ed .vx-ed-note { font-size: 15px; color: var(--ed-muted); }

/* Boutons */
.vx-ed .vx-ed-btn { display: inline-block; padding: 16px 30px; border-radius: 999px; background: var(--ed-signal); color: #fff; font-weight: 600; font-size: 16px; line-height: 1.2; text-decoration: none; transition: background-color .2s ease; }
.vx-ed .vx-ed-btn:hover { background: #005f92; color: #fff; }
.vx-ed .vx-ed-btn--ghost { background: transparent; color: var(--ed-ink); box-shadow: inset 0 0 0 1.5px var(--ed-ink); }
.vx-ed .vx-ed-btn--ghost:hover { background: var(--ed-ink); color: #fff; }
.vx-ed-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: 40px; }
.vx-ed-actions > span { font-size: 15px; color: var(--ed-muted); }

/* Deux colonnes */
.vx-ed-split { display: grid; gap: clamp(32px, 5vw, 80px); align-items: center; }
@media (min-width: 900px) { .vx-ed-split { grid-template-columns: 1fr 1fr; } }

/* À propos */
@media (min-width: 900px) { .vx-ed-split--portrait { grid-template-columns: 5fr 7fr; } }
.vx-ed-portrait { margin: 0; }
.vx-ed-portrait img { display: block; width: 100%; max-width: 440px; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 20px; }
.vx-ed-facts { margin: 32px 0 0; display: grid; gap: 16px; }
.vx-ed-facts > div { display: grid; gap: 4px 24px; padding-top: 16px; border-top: 1px solid var(--ed-rule); }
@media (min-width: 640px) { .vx-ed-facts > div { grid-template-columns: 9rem 1fr; } }
.vx-ed-facts dt { font-weight: 600; color: var(--ed-ink); font-size: 15px; }
.vx-ed-facts dd { margin: 0; font-size: 15px; }

/* Avis client : grande citation */
.vx-ed-quote .vx-ed-small-title { color: var(--ed-steel); }
.vx-ed-quote figure { margin: 0; max-width: 980px; }
.vx-ed-quote blockquote { margin: 0; padding: 0; border: 0; }
.vx-ed .vx-ed-quote__text { font-size: clamp(1.6rem, 3.2vw, 2.75rem); font-weight: 500; line-height: 1.25; letter-spacing: -0.015em; color: var(--ed-ink); margin: 0 0 28px; text-wrap: pretty; }
.vx-ed-quote__more p { font-size: 17px; max-width: 70ch; }
.vx-ed-quote__toggle { background: none; border: 0; padding: 0; font: inherit; font-weight: 600; color: var(--ed-signal); cursor: pointer; text-decoration: underline; text-underline-offset: 4px; }
.vx-ed-quote figcaption { margin-top: 28px; font-size: 15px; color: var(--ed-muted); }
.vx-ed-quote figcaption strong { display: block; color: var(--ed-ink); font-size: 17px; }
.vx-ed-quote figcaption a { font-weight: 600; margin-right: 24px; }

/* Parcours en trois étapes */
.vx-ed-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 48px; counter-reset: none; }
@media (min-width: 900px) { .vx-ed-steps { grid-template-columns: repeat(3, 1fr); gap: 40px; } }
.vx-ed-step { border-top: 2px solid var(--ed-ink); padding-top: 24px; display: flex; flex-direction: column; }
.vx-ed .vx-ed-step__n { display: flex; align-items: baseline; gap: 12px; font-weight: 600; color: var(--ed-steel); margin: 0 0 16px; }
.vx-ed-step__n span { font-size: 2.5rem; line-height: 1; color: var(--ed-ink); font-weight: 600; }
.vx-ed .vx-ed-step h3 { font-size: 1.375rem; font-weight: 600; color: var(--ed-ink); margin: 0 0 12px; line-height: 1.3; }
.vx-ed .vx-ed-step__price { margin-top: auto; padding-top: 8px; font-weight: 600; color: var(--ed-ink); }

/* Bandes pleine largeur */
.vx-ed-band { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.vx-ed-band--deep { background: var(--ed-deep); color: rgba(255,255,255,.86); }
.vx-ed-band--deep .vx-ed-title { color: #fff; }
.vx-ed-band--deep .vx-ed-lead { color: rgba(255,255,255,.88); }
.vx-ed-band--deep .vx-ed-note { color: rgba(255,255,255,.7); }
.vx-ed-band--deep .vx-ed-btn { background: #fff; color: var(--ed-ink); }
.vx-ed-band--deep .vx-ed-btn:hover { background: var(--ed-mist); color: var(--ed-ink); }
.vx-ed-band--mist { background: var(--ed-mist); }
.vx-ed-checks { list-style: none; margin: 24px 0 32px; padding: 0; display: grid; gap: 12px; }
.vx-ed-checks li { position: relative; padding-left: 32px; }
.vx-ed-checks li::before { content: ""; position: absolute; left: 2px; top: .55em; width: 14px; height: 8px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg); color: var(--ed-signal); }
.vx-ed-band--deep .vx-ed-checks li::before { color: #8fd0f5; }

/* Exemple de rapport (illustration) */
.vx-ed-report { background: #fff; color: var(--ed-ink); border-radius: 20px; padding: 32px; max-width: 420px; justify-self: center; width: 100%; }
.vx-ed-report__head { display: flex; align-items: center; gap: 20px; padding-bottom: 20px; border-bottom: 1px solid var(--ed-rule); margin-bottom: 16px; }
.vx-ed-report__score { width: 76px; height: 76px; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(#1f9d55 0 72%, #e5e7eb 72% 100%); flex: 0 0 76px; }
.vx-ed-report__score span { width: 56px; height: 56px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-weight: 700; font-size: 1.25rem; }
.vx-ed-report__head p { margin: 0; font-size: 14px; color: var(--ed-muted); line-height: 1.4; }
.vx-ed-report__head strong { display: block; color: var(--ed-ink); font-size: 16px; }
.vx-ed-report ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; font-size: 15px; }
.vx-ed-report li { display: flex; align-items: center; gap: 10px; }
.vx-ed-report li i { width: 10px; height: 10px; border-radius: 50%; flex: 0 0 10px; }
.vx-ed-report__caption { margin: 16px 0 0 !important; font-size: 13px; color: var(--ed-muted); }

/* Projets : lignes alternées */
.vx-ed-case { display: grid; gap: clamp(24px, 4vw, 64px); align-items: center; padding: clamp(32px, 4vw, 48px) 0; border-top: 1px solid var(--ed-rule); }
.vx-ed-case:last-child { border-bottom: 1px solid var(--ed-rule); }
@media (min-width: 900px) {
    .vx-ed-case { grid-template-columns: 5fr 7fr; }
    .vx-ed-case.is-reverse { grid-template-columns: 7fr 5fr; }
    .vx-ed-case.is-reverse .vx-ed-case__img { order: 2; }
}
.vx-ed-case__img img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 16px; }
.vx-ed .vx-ed-case h3 { font-size: clamp(1.4rem, 2.2vw, 1.85rem); font-weight: 600; line-height: 1.2; color: var(--ed-ink); margin: 0 0 20px; }
.vx-ed-case__ba { display: grid; gap: 16px; margin: 0; }
@media (min-width: 640px) { .vx-ed-case__ba { grid-template-columns: 1fr 1fr; gap: 32px; } }
.vx-ed-case__ba dt { font-weight: 600; font-size: 15px; color: var(--ed-muted); margin-bottom: 4px; }
.vx-ed-case__ba dd { margin: 0; }
.vx-ed-case__ba .is-after dt { color: var(--ed-signal); }
.vx-ed-case__ba .is-after dd { color: var(--ed-ink); font-weight: 500; }
.vx-ed .vx-ed-case__tags { margin: 20px 0 0; font-size: 14px; color: var(--ed-muted); }

/* Logos */
.vx-ed-logos { list-style: none; margin: 24px 0 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 28px 48px; }
.vx-ed-logos img { display: block; height: 36px; width: auto; max-width: 140px; object-fit: contain; filter: grayscale(1); opacity: .65; }

/* Chiffres (bande générée par functions.php) */
.vx-ed .vx-stats { margin: 0 !important; }
.vx-ed .vx-stats > h2 { text-align: left; font-size: clamp(2rem, 3.6vw, 3.25rem); font-weight: 600; line-height: 1.08; letter-spacing: -0.02em; color: var(--ed-ink); max-width: 18ch; margin: 0 0 20px; }
.vx-ed .vx-stats > p { text-align: left; margin: 0 0 48px; max-width: 60ch; font-size: clamp(1.125rem, 1.45vw, 1.3rem); }
.vx-ed .vx-stats__grid { gap: 40px; }
.vx-ed .vx-stat { background: none; border: 0; border-top: 2px solid var(--ed-ink); border-radius: 0; box-shadow: none; padding: 24px 0 0; }
.vx-ed .vx-stat__value { color: var(--ed-ink); font-weight: 600; font-size: 3rem; margin: 0 0 12px; }

/* Guides */
.vx-ed-posts { display: grid; gap: 48px 40px; }
@media (min-width: 900px) { .vx-ed-posts { grid-template-columns: repeat(3, 1fr); } }
.vx-ed-post img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 14px; margin-bottom: 20px; }
.vx-ed-post time { font-size: 14px; color: var(--ed-muted); }
.vx-ed .vx-ed-post h3 { font-size: 1.25rem; font-weight: 600; line-height: 1.35; margin: 6px 0 10px; }
.vx-ed .vx-ed-post h3 a { color: var(--ed-ink); text-decoration: none; }
.vx-ed .vx-ed-post h3 a:hover { color: var(--ed-signal); text-decoration: underline; text-underline-offset: 3px; }
.vx-ed-post p { font-size: 16px; color: var(--ed-muted); }

/* Formulaire check-list */
.vx-ed-form { background: #fff; border-radius: 20px; padding: clamp(24px, 3vw, 40px); }
.vx-ed-form .vx-ed-note { font-size: 13px; margin: 16px 0 0; }
#ressource #wpforms-form-3138 button[type="submit"].wpforms-submit, #ressource #wpforms-3138 button[type="submit"].wpforms-submit { text-transform: none !important; letter-spacing: 0 !important; font-weight: 600 !important; font-size: 16px !important; border-radius: 999px !important; }

/* Passerelle régie */
.vx-ed-aside { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 48px; padding-top: 32px; border-top: 1px solid var(--ed-rule); }
.vx-ed-aside > div { max-width: 70ch; }
.vx-ed-aside p { margin: 0; }

/* Appel final */
.vx-ed-final { margin: 0 calc(50% - 50vw) clamp(48px, 6vw, 96px); background: linear-gradient(135deg, #326586 0%, #1e4259 100%); color: rgba(255,255,255,.88); padding: clamp(72px, 9vw, 120px) 0; }
.vx-ed-final .vx-ed-title { color: #fff; }
.vx-ed-final .vx-ed-lead { color: rgba(255,255,255,.88); }
.vx-ed-final__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.vx-ed-final .vx-ed-btn { background: #fff; color: var(--ed-ink); }
.vx-ed-final .vx-ed-btn:hover { background: var(--ed-mist); }
.vx-ed-final .vx-ed-btn--ghost { background: transparent; color: #fff; box-shadow: inset 0 0 0 1.5px rgba(255,255,255,.7); }
.vx-ed-final .vx-ed-btn--ghost:hover { background: rgba(255,255,255,.12); color: #fff; }
.vx-ed-final address { font-style: normal; font-size: 15px; line-height: 1.8; margin-top: 16px; }
.vx-ed-final address a { color: #fff; }

@media (max-width: 899px) {
    .vx-ed .vx-ed-title { max-width: none; }
    .vx-ed-report { justify-self: stretch; }
}
/* Retouches Fergé (26/10) : avis client et parcours remis en cases ; espace sous les bandes pleine largeur. */
.vx-ed-band + .vx-ed-sec:not(.vx-ed-band) { padding-top: clamp(72px, 9vw, 128px); }
.vx-ed-quote > .vx-ed-wrap {
    background: #ffffff; border: 1px solid #e7ebef; border-radius: 28px; box-shadow: 0 10px 30px rgba(15, 42, 67, 0.06);
    padding: clamp(32px, 5vw, 64px); width: calc(100% - 48px); max-width: 1152px;
}
.vx-ed-quote figure { max-width: none; }
.vx-ed-steps { gap: 24px; }
.vx-ed-step {
    --step: var(--ed-signal);
    background: #ffffff; border: 1px solid #e7ebef; border-top: 4px solid var(--step); border-radius: 20px;
    box-shadow: 0 10px 30px rgba(15, 42, 67, 0.06); padding: 28px 28px 32px;
}
.vx-ed-step:nth-child(1) { --step: #27AE60; }
.vx-ed-step:nth-child(2) { --step: #0077b6; }
.vx-ed-step:nth-child(3) { --step: #326586; }
.vx-ed .vx-ed-step__n { color: var(--step); }
.vx-ed-step__n span { color: var(--step); }
.vx-ed .vx-ed-step__price { border-top: 1px solid #e7ebef; padding-top: 16px; margin-top: auto; }
@media (max-width: 640px) { .vx-ed-quote > .vx-ed-wrap { width: calc(100% - 32px); } }
/* Cartes : outils, chiffres et guides (retouches Fergé 26/10) */
.vx-ed-logos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 0; }
@media (min-width: 640px) { .vx-ed-logos { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .vx-ed-logos { grid-template-columns: repeat(6, 1fr); } }
.vx-ed-logos li { background: #ffffff; border: 1px solid #e7ebef; border-radius: 16px; padding: 22px 14px 16px; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; transition: border-color .2s ease, box-shadow .2s ease; }
.vx-ed-logos li:hover { border-color: #b9d3e6; box-shadow: 0 10px 24px rgba(15, 42, 67, 0.08); }
.vx-ed-logo { height: 48px; display: flex; align-items: center; justify-content: center; }
.vx-ed-logos img { height: auto; max-height: 44px; max-width: 120px; filter: none; opacity: 1; }
.vx-ed-logo__name { font-size: 13px; font-weight: 500; line-height: 1.35; color: var(--ed-muted); }

.vx-ed .vx-stats__grid { gap: 20px; }
.vx-ed .vx-stat { background: #ffffff; border: 1px solid #e7ebef; border-top: 4px solid var(--ed-signal); border-radius: 20px; box-shadow: 0 10px 30px rgba(15, 42, 67, 0.06); padding: 26px 24px 24px; }
.vx-ed .vx-stat.is-live { border-top-color: #10b981; }
.vx-ed .vx-stat__value { color: var(--ed-signal); }
.vx-ed .vx-stat.is-live .vx-stat__value { color: var(--ed-ink); }

.vx-ed-posts { gap: 24px; }
.vx-ed-post { background: #ffffff; border: 1px solid #e7ebef; border-radius: 20px; box-shadow: 0 10px 30px rgba(15, 42, 67, 0.06); overflow: hidden; display: flex; flex-direction: column; padding: 0 0 24px; }
.vx-ed-post__img { display: block; }
.vx-ed-post img { border-radius: 0; margin: 0 0 20px; }
.vx-ed-post time, .vx-ed .vx-ed-post h3, .vx-ed-post p, .vx-ed .vx-ed-post__more { margin-left: 24px; margin-right: 24px; }
.vx-ed .vx-ed-post__more { margin-top: auto; padding-top: 8px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
/* Tuiles homogènes, logos gris en couleur au survol, bloc ESN centré (retouches Fergé 26/10) */
.vx-ed .vx-ed-logos { grid-auto-rows: 1fr; }
.vx-ed .vx-ed-logos li { height: 100%; min-height: 128px; justify-content: center; }
.vx-ed .vx-ed-logo { height: 48px; width: 100%; }
.vx-ed .vx-ed-logos img { max-height: 40px; max-width: 110px; filter: grayscale(1); opacity: .6; transition: filter .25s ease, opacity .25s ease; }
.vx-ed .vx-ed-logos li:hover img, .vx-ed .vx-ed-logos li:focus-within img { filter: none; opacity: 1; }
.vx-ed .vx-ed-logo__name { min-height: 2.7em; display: flex; align-items: flex-start; justify-content: center; }
.vx-ed .vx-ed-band--mist + .vx-ed-sec--tight { padding: clamp(64px, 8vw, 112px) 0; }
.vx-ed .vx-ed-band--mist + .vx-ed-sec--tight .vx-ed-aside { border-top: 0; padding-top: 0; }
@media (prefers-reduced-motion: reduce) { .vx-ed .vx-ed-logos img { transition: none; } }
/* À propos et projets en cartes, logo Stormshield agrandi (retouches Fergé 26/10) */
.vx-ed #apropos > .vx-ed-wrap {
    background: #ffffff; border: 1px solid #e7ebef; border-radius: 28px; box-shadow: 0 10px 30px rgba(15, 42, 67, 0.06);
    padding: clamp(28px, 4vw, 56px); width: calc(100% - 48px); max-width: 1152px;
}
.vx-ed .vx-ed-case, .vx-ed .vx-ed-case:last-child {
    background: #ffffff; border: 1px solid #e7ebef; border-radius: 24px; box-shadow: 0 10px 30px rgba(15, 42, 67, 0.06);
    padding: clamp(20px, 3vw, 32px); margin-bottom: 24px;
}
.vx-ed .vx-ed-logos img[src*="Stormshield"] { max-height: 56px; max-width: 150px; }
@media (max-width: 640px) { .vx-ed #apropos > .vx-ed-wrap { width: calc(100% - 32px); } }
/* Avis client mis en forme (retouche Fergé 26/10) */
.vx-ed-quote > .vx-ed-wrap { position: relative; overflow: hidden; }
.vx-ed-quote > .vx-ed-wrap::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 6px; background: linear-gradient(180deg, #326586 0%, #0077b6 100%); }
.vx-quote__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin-bottom: 28px; }
.vx-ed .vx-quote__title { font-size: 1.05rem; font-weight: 600; color: var(--ed-steel); margin: 0; }
.vx-ed .vx-quote__source { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: #005f92; text-decoration: none !important; background: #eef5fa; border: 1px solid #d6e6f1; border-radius: 999px; padding: 7px 14px; }
.vx-ed .vx-quote__source::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #1e7d45; }
.vx-ed .vx-quote__source:hover { background: #e2eff8; }
.vx-quote { position: relative; margin: 0; padding-left: clamp(0px, 5vw, 72px); }
.vx-quote__mark { position: absolute; left: -6px; top: -36px; font-size: clamp(6rem, 10vw, 9rem); line-height: 1; font-weight: 700; color: #dbe8f2; pointer-events: none; font-family: Georgia, 'Times New Roman', serif; }
.vx-quote blockquote { position: relative; margin: 0; padding: 0; border: 0; }
.vx-ed .vx-quote .vx-ed-quote__text { font-size: clamp(1.45rem, 2.7vw, 2.3rem); line-height: 1.32; font-weight: 500; letter-spacing: -0.015em; color: var(--ed-ink); margin: 0 0 24px; max-width: 34ch; }
.vx-quote .vx-ed-quote__more { max-width: 70ch; margin-bottom: 8px; }
.vx-quote .vx-ed-quote__more p { font-size: 16px; color: var(--ed-text); }
.vx-quote__author { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 16px; margin-top: 28px; padding-top: 24px; border-top: 1px solid #e7ebef; font-size: 15px; color: var(--ed-muted); }
.vx-quote__avatar { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: 1.2rem; color: #fff; background: linear-gradient(135deg, #326586 0%, #0077b6 100%); }
.vx-quote__who { display: flex; flex-direction: column; line-height: 1.4; margin-right: auto; }
.vx-quote__who strong { color: var(--ed-ink); font-size: 16px; }
.vx-quote__toggle { font: inherit; font-weight: 600; font-size: 15px; color: var(--ed-ink); background: transparent; border: 1.5px solid var(--ed-ink); border-radius: 999px; padding: 10px 20px; cursor: pointer; transition: background-color .2s ease, color .2s ease; }
.vx-quote__toggle:hover, .vx-quote__toggle:focus-visible { background: var(--ed-ink); color: #fff; }
@media (max-width: 640px) { .vx-quote__mark { top: -24px; } .vx-quote__toggle { width: 100%; } }
/* END VECTISEC EDITORIAL 20261026 */
