:is(.map-rich-text, .jodit-wysiwyg) {
    font-family: "Open Sans", Arial, sans-serif;
    line-height: 1.55;
}

:is(.map-rich-text, .jodit-wysiwyg) > :first-child { margin-top: 0; }
:is(.map-rich-text, .jodit-wysiwyg) > :last-child { margin-bottom: 0; }
:is(.map-rich-text, .jodit-wysiwyg) h1,
:is(.map-rich-text, .jodit-wysiwyg) h2,
:is(.map-rich-text, .jodit-wysiwyg) h3,
:is(.map-rich-text, .jodit-wysiwyg) h4 {
    font-family: Montserrat, "Open Sans", Arial, sans-serif;
}
:is(.map-rich-text, .jodit-wysiwyg) h1 { margin: 14px 0 8px; font-size: 24px; line-height: 1.25; }
:is(.map-rich-text, .jodit-wysiwyg) h2 { margin: 14px 0 8px; font-size: 21px; line-height: 1.3; }
:is(.map-rich-text, .jodit-wysiwyg) h3 { margin: 12px 0 6px; font-size: 18px; line-height: 1.35; }
:is(.map-rich-text, .jodit-wysiwyg) h4 { margin: 12px 0 6px; font-size: 16px; line-height: 1.4; }
:is(.map-rich-text, .jodit-wysiwyg) p { margin: 8px 0; }
:is(.map-rich-text, .jodit-wysiwyg) ul,
:is(.map-rich-text, .jodit-wysiwyg) ol { margin: 8px 0; padding-left: 24px; }
/* Preserve ordinary inline images and paragraph alignment from the editor.
   Block alignment is applied only when the author explicitly requested it. */
:is(.map-rich-text, .jodit-wysiwyg) img { max-width: 100%; height: auto; }
:is(.map-rich-text, .jodit-wysiwyg) img:is(.image-left, .image-center, .image-right, .image-full) { display: block; }
:is(.map-rich-text, .jodit-wysiwyg) .image-left,
:is(.map-rich-text, .jodit-wysiwyg) .figure-left { margin-left: 0; margin-right: auto; }
:is(.map-rich-text, .jodit-wysiwyg) .image-center,
:is(.map-rich-text, .jodit-wysiwyg) .figure-center { margin-left: auto; margin-right: auto; }
:is(.map-rich-text, .jodit-wysiwyg) .image-right,
:is(.map-rich-text, .jodit-wysiwyg) .figure-right { margin-left: auto; margin-right: 0; }
:is(.map-rich-text, .jodit-wysiwyg) .image-full,
:is(.map-rich-text, .jodit-wysiwyg) .figure-full { width: 100%; margin-left: 0; margin-right: 0; }
:is(.map-rich-text, .jodit-wysiwyg) figure { max-width: 100%; }
:is(.map-rich-text, .jodit-wysiwyg) .text-left { text-align: left; }
:is(.map-rich-text, .jodit-wysiwyg) .text-center { text-align: center; }
:is(.map-rich-text, .jodit-wysiwyg) .text-right { text-align: right; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
    align-items: center;
    margin: 12px 0;
    padding: 28px;
    overflow: hidden;
    border-radius: var(--tenant-corner-radius, 8px);
    background-color: #0b5275;
    color: #fff;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right {
    grid-template-columns: minmax(220px, 34%) minmax(0, 1fr);
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 34%);
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-content { min-width: 0; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left > .vs3-content-block-content { grid-column: 2; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left > img { grid-column: 1; grid-row: 1; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right > .vs3-content-block-content { grid-column: 1; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right > img { grid-column: 2; grid-row: 1; }

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block h1,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block h2,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block h3,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block h4,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block p,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block a,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block strong {
    color: inherit;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block h1,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block h2 {
    margin: 0 0 16px;
    font-size: clamp(30px, 5vw, 52px);
    line-height: 1.08;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block p { margin: 0 0 12px; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block p:last-child { margin-bottom: 0; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-kicker {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block > img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block > img.image-left {
    margin-left: 0;
    margin-right: auto;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block > img.image-center {
    margin-left: auto;
    margin-right: auto;
}

:is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block > img.image-right {
    margin-left: auto;
    margin-right: 0;
}

:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 26px;
}

:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > * {
    margin-top: 0;
    margin-bottom: 0;
}

:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > .text-center,
:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align: center"],
:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align:center"] {
    margin-left: auto;
    margin-right: auto;
}

:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > .text-right,
:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align: right"],
:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align:right"] {
    margin-left: auto;
}

:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > hr {
    flex: 1 0 100%;
    width: 100%;
}

:is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content a {
    color: inherit;
}

.jodit-wysiwyg.vs3-menu-editor-surface {
    padding: 14px 20px;
}

@media (max-width: 700px) {
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
        padding: 20px;
    }

    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left > .vs3-content-block-content,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right > .vs3-content-block-content,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left > img,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right > img {
        grid-column: 1;
    }

    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-left > img { grid-row: 1; }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-content-block-image-right > img { grid-row: auto; }

    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content {
        align-items: stretch;
        flex-direction: column;
    }

    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > .text-center,
    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > .text-right,
    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align: center"],
    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align:center"],
    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align: right"],
    :is(.map-rich-text, .jodit-wysiwyg).vs3-menu-content > [style*="text-align:right"] {
        margin-left: 0;
        margin-right: 0;
    }
}

/* Existing Action presentations use the same rules in VS3, Jodit and public pages. */
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation {
    display: grid;
    grid-template-columns: minmax(240px, 340px) minmax(0, 1fr);
    gap: 48px;
    align-items: center;
    margin: 0;
    padding: 36px;
    border: 1px solid #cfdaea;
    border-radius: var(--tenant-corner-radius, 8px);
    background: #f7f9fc;
    color: #17243a;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation > img {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    max-width: none;
    max-height: none;
    height: auto;
    margin: 0;
    object-fit: cover;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-content { grid-column: 2; grid-row: 1; min-width: 0; text-align: left; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-kicker {
    margin: 0 0 12px;
    color: #d77800;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-content > h1 {
    margin: 0 0 18px;
    color: #0f2d59;
    font-size: clamp(38px, 5vw, 60px);
    line-height: 1.04;
    letter-spacing: -.03em;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-lead {
    margin: 0 0 22px;
    color: #233d63;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.4;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-content > p:not([class]) { margin: 0; color: #22324a; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 28px;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-fact {
    min-width: 0;
    padding: 14px 16px;
    border-radius: var(--tenant-corner-radius, 8px);
    background: #fff;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-fact small {
    display: block;
    color: #71809a;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-fact strong {
    display: block;
    margin-top: 5px;
    color: #142c50;
    line-height: 1.35;
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-image-right {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 340px);
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-image-right > .vs3-presentation-content { grid-column: 1; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-image-right > img { grid-column: 2; grid-row: 1; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation > .vs3-presentation-content:only-child { grid-column: 1 / -1; }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-dark {
    border-color: var(--tenant-presentation-background, #0b4669);
    background: var(--tenant-presentation-background, linear-gradient(135deg, #082d4b, #0b5275));
    color: var(--tenant-presentation-text, #fff);
}
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-dark .vs3-presentation-kicker { color: var(--tenant-presentation-accent, #21d4e5); }
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-dark .vs3-presentation-content > h1,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-dark .vs3-presentation-lead,
:is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-dark .vs3-presentation-content > p:not([class]) { color: var(--tenant-presentation-text, #fff); }

@media (max-width: 860px) {
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-image-right {
        grid-template-columns: minmax(0, 1fr);
        gap: 26px;
        padding: 22px;
    }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation > img,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-image-right > img {
        grid-column: 1;
        grid-row: 1;
        width: min(100%, 360px);
        margin: 0 auto;
    }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation > .vs3-presentation-content,
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation.vs3-presentation-image-right > .vs3-presentation-content {
        grid-column: 1;
        grid-row: 2;
    }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation > .vs3-presentation-content:only-child { grid-row: 1; }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-content > h1 { font-size: clamp(34px, 12vw, 48px); }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-lead { font-size: 19px; }
    :is(.map-rich-text, .jodit-wysiwyg) .vs3-presentation-facts { grid-template-columns: 1fr; }
}
