/* ========== Hero Alt block (.ms-heroalt) — landing two-column hero, unique classes ========== */
body.template-block-builder .ms-heroalt, body.template-page .ms-heroalt,
.editor-styles-wrapper .ms-heroalt {
    --ms-heroalt-sage: #4a5e52;
    --ms-heroalt-sage-light: #6b7f73;
    --ms-heroalt-sage-pale: #f8f7f0;
    --ms-heroalt-sand: #f8f7f0;
    --ms-heroalt-white: #ffffff;
    --ms-heroalt-ink: #241f21;
    --ms-heroalt-ink-soft: #4a4547;
    --ms-heroalt-gold: #a08c5b;
    --ms-heroalt-gold-light: #c4ad82;
    --ms-heroalt-green: #284227;
    --ms-heroalt-green-mid: #46704c;
    --ms-heroalt-serif: var(--font-heading, 'Lora', Georgia, serif);
    --ms-heroalt-sans: var(--font-body, 'Roboto', sans-serif);
}

body.template-block-builder .ms-heroalt .ms-heroalt__inner, body.template-page .ms-heroalt .ms-heroalt__inner,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__inner {
    display: grid;
    grid-template-columns: 5fr 7fr;
    min-height: 92vh;
}

body.template-block-builder .ms-heroalt .ms-heroalt__copy, body.template-page .ms-heroalt .ms-heroalt__copy,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 64px 60px 56px;
    background: var(--ms-heroalt-sand);
    color: var(--ms-heroalt-ink);
    font-family: var(--ms-heroalt-sans);
    font-weight: 300;
}

body.template-block-builder .ms-heroalt .ms-heroalt__eyebrow, body.template-page .ms-heroalt .ms-heroalt__eyebrow,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__eyebrow {
    font-family: var(--ms-heroalt-sans);
    font-weight: 400;
    font-size: 0.72rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--ms-heroalt-gold);
    margin-bottom: 32px;
    display: flex;
    align-items: center;
    gap: 12px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__eyebrow::before, body.template-page .ms-heroalt .ms-heroalt__eyebrow::before,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__eyebrow::before {
    content: '';
    display: inline-block;
    width: 28px;
    height: 1px;
    background: var(--ms-heroalt-gold);
    flex-shrink: 0;
}

body.template-block-builder .ms-heroalt .ms-heroalt__headline, body.template-page .ms-heroalt .ms-heroalt__headline,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__headline {
    font-family: var(--ms-heroalt-serif);
    font-size: clamp(2.4rem, 3.6vw, 3.5rem);
    font-weight: 400;
    line-height: 1.2;
    color: var(--ms-heroalt-green);
    margin: 0 0 36px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__headline em, body.template-page .ms-heroalt .ms-heroalt__headline em,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__headline em {
    font-style: italic;
    color: var(--ms-heroalt-green-mid);
}

body.template-block-builder .ms-heroalt .ms-heroalt__sub, body.template-page .ms-heroalt .ms-heroalt__sub,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__sub {
    font-family: var(--ms-heroalt-sans);
    font-weight: 300;
    font-size: 1rem;
    line-height: 1.85;
    color: var(--ms-heroalt-ink-soft);
    max-width: 520px;
    margin: 0 0 52px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__sub p, body.template-page .ms-heroalt .ms-heroalt__sub p,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__sub p {
    margin: 0;
}

body.template-block-builder .ms-heroalt .ms-heroalt__sub a, body.template-page .ms-heroalt .ms-heroalt__sub a,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__sub a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__divider, body.template-page .ms-heroalt .ms-heroalt__divider,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__divider {
    width: 40px;
    height: 1px;
    background: var(--ms-heroalt-gold);
    margin-bottom: 40px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__cta, body.template-page .ms-heroalt .ms-heroalt__cta,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__cta {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
}

body.template-block-builder .ms-heroalt .ms-heroalt__cta-label, body.template-page .ms-heroalt .ms-heroalt__cta-label,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__cta-label {
    font-family: var(--ms-heroalt-sans);
    font-weight: 400;
    font-size: 1rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ms-heroalt-green);
    margin-bottom: 10px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__btn-call, body.template-page .ms-heroalt .ms-heroalt__btn-call,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__btn-call {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--ms-heroalt-green);
    color: var(--ms-heroalt-white);
    font-family: var(--ms-heroalt-serif);
    font-size: 1.2rem;
    font-weight: 400;
    font-style: italic;
    letter-spacing: 0.04em;
    text-decoration: none;
    padding: 16px 40px;
    transition: background 0.25s;
    border-radius: 8px;
    border: 0;
    cursor: pointer;
}

body.template-block-builder .ms-heroalt a.ms-heroalt__btn-call:hover, body.template-page .ms-heroalt a.ms-heroalt__btn-call:hover,
.editor-styles-wrapper .ms-heroalt a.ms-heroalt__btn-call:hover {
    background: var(--ms-heroalt-sage);
}

body.template-block-builder .ms-heroalt .ms-heroalt__btn-call--static, body.template-page .ms-heroalt .ms-heroalt__btn-call--static,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__btn-call--static {
    cursor: default;
}

body.template-block-builder .ms-heroalt .ms-heroalt__cta-note, body.template-page .ms-heroalt .ms-heroalt__cta-note,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__cta-note {
    font-family: var(--ms-heroalt-sans);
    font-weight: 300;
    font-size: 0.75rem;
    color: var(--ms-heroalt-ink-soft);
    letter-spacing: 0.05em;
    opacity: 0.75;
    padding-left: 2px;
}

body.template-block-builder .ms-heroalt .ms-heroalt__media, body.template-page .ms-heroalt .ms-heroalt__media,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__media {
    position: relative;
    overflow: hidden;
    background: var(--ms-heroalt-sage-pale);
}

body.template-block-builder .ms-heroalt .ms-heroalt__media::after, body.template-page .ms-heroalt .ms-heroalt__media::after,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, rgba(74, 94, 82, 0.15) 0%, transparent 55%);
    pointer-events: none;
}

body.template-block-builder .ms-heroalt .ms-heroalt__img, body.template-page .ms-heroalt .ms-heroalt__img,
.editor-styles-wrapper .ms-heroalt .ms-heroalt__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (max-width: 860px) {
    body.template-block-builder .ms-heroalt .ms-heroalt__inner, body.template-page .ms-heroalt .ms-heroalt__inner,
    .editor-styles-wrapper .ms-heroalt .ms-heroalt__inner {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    body.template-block-builder .ms-heroalt .ms-heroalt__media, body.template-page .ms-heroalt .ms-heroalt__media,
    .editor-styles-wrapper .ms-heroalt .ms-heroalt__media {
        order: -1;
        min-height: 280px;
    }
    body.template-block-builder .ms-heroalt .ms-heroalt__copy, body.template-page .ms-heroalt .ms-heroalt__copy,
    .editor-styles-wrapper .ms-heroalt .ms-heroalt__copy {
        padding: 56px 28px 64px;
    }
    body.template-block-builder .ms-heroalt .ms-heroalt__sub, body.template-page .ms-heroalt .ms-heroalt__sub,
    .editor-styles-wrapper .ms-heroalt .ms-heroalt__sub {
        max-width: 100%;
    }
}

