/* Homepage-only hero lock. Loaded after the shared theme so slide geometry stays stable. */
.corp-home .corp-hero,
.corp-home .corp-hero__inner {
    height: 760px !important;
    min-height: 760px !important;
}

.corp-home .corp-hero__inner {
    align-items: center;
    padding: 40px 0 !important;
}

.corp-home .corp-hero__wash {
    background: linear-gradient(90deg, rgba(250, 249, 244, .18) 0%, rgba(250, 249, 244, .06) 48%, rgba(250, 249, 244, 0) 78%) !important;
}

.corp-home .corp-hero__slide > .corp-hero__background {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(.96) contrast(1.03) brightness(.94) !important;
}

.corp-home .corp-hero__slide-mark {
    right: clamp(28px, 4vw, 76px);
    width: clamp(360px, 34vw, 520px);
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.corp-home .corp-hero__content {
    width: min(820px, 58vw) !important;
    max-width: 820px !important;
    height: 640px !important;
    min-height: 640px !important;
    padding: 38px 48px 28px !important;
    border: 1px solid rgba(105, 129, 47, .28) !important;
    border-radius: 8px !important;
    background: rgba(253, 252, 248, .96) !important;
    box-shadow: 0 28px 68px rgba(39, 54, 31, .18) !important;
    backdrop-filter: blur(14px);
}

.corp-home .corp-hero__signature {
    margin: 0 0 20px !important;
    color: #53613f !important;
}

.corp-home .corp-hero .corp-kicker {
    margin-bottom: 12px;
    color: #69812f !important;
}

.corp-home .corp-hero h1 {
    max-width: 700px !important;
    color: #20362a !important;
    font-size: clamp(52px, 4.35vw, 68px) !important;
    letter-spacing: 0 !important;
    line-height: .98 !important;
    text-wrap: balance;
}

.corp-home .corp-hero h1 em {
    display: inline;
    margin: 0;
    color: #7f9935 !important;
}

.corp-home .corp-hero__content > p:not(.corp-kicker):not(.corp-hero__signature):not(.corp-hero__proof) {
    max-width: 650px;
    margin-top: 20px;
    color: #516258 !important;
    font-size: 15px !important;
    line-height: 1.58;
}

.corp-home .corp-hero .corp-actions {
    margin-top: 24px;
}

.corp-home .corp-hero__panel-footer {
    display: grid;
    grid-template-columns: auto minmax(270px, 1fr);
    gap: 18px;
    align-items: center;
    margin-top: auto;
    padding-top: 22px;
    border-top: 1px solid rgba(32, 54, 42, .14);
}

.corp-home .corp-hero__controls {
    gap: 8px;
    margin: 0;
    padding: 0;
    border: 0;
}

.corp-home .corp-hero__dots {
    gap: 4px;
}

.corp-home .corp-hero__dots button {
    width: 19px;
}

.corp-home .corp-hero__search {
    height: 48px;
    min-height: 48px;
    border: 1px solid rgba(105, 129, 47, .48);
    border-radius: 5px;
    background: rgba(255, 255, 255, .92);
}

.corp-home .corp-hero__search input {
    min-width: 0;
    width: 100%;
    height: 46px;
    min-height: 46px !important;
    padding: 0 15px !important;
    color: #20362a !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.corp-home .corp-hero__search input::placeholder {
    color: #69776e !important;
}

.corp-home .corp-hero__search button {
    width: auto !important;
    min-width: 104px;
    height: 46px;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    color: #fff !important;
    border: 0 !important;
    border-left: 1px solid rgba(105, 129, 47, .35) !important;
    border-radius: 0 !important;
    background: #8aa63a !important;
    box-shadow: none !important;
    transform: none !important;
}

.corp-home .corp-hero__search button:hover,
.corp-home .corp-hero__search button:focus-visible {
    background: #69812f !important;
}

.corp-home .corp-hero .corp-btn--white {
    color: #20362a !important;
    border-color: rgba(32, 54, 42, .28) !important;
    background: rgba(255, 255, 255, .88) !important;
}

.corp-home .corp-hero .corp-btn--white:hover,
.corp-home .corp-hero .corp-btn--white:focus-visible {
    border-color: #69812f !important;
    background: #fff !important;
}

@media (max-width: 1150px) {
    .corp-home .corp-hero__content {
        width: min(760px, 66vw) !important;
        padding-inline: 42px !important;
    }

    .corp-home .corp-hero h1 {
        font-size: clamp(50px, 5.35vw, 63px) !important;
    }
}

@media (max-width: 1024px) {
    .corp-home .corp-hero,
    .corp-home .corp-hero__inner {
        height: 780px !important;
        min-height: 780px !important;
    }

    .corp-home .corp-hero__content {
        width: min(700px, 76vw) !important;
        height: 660px !important;
        min-height: 660px !important;
        padding: 34px 38px 26px !important;
    }

    .corp-home .corp-hero__panel-footer {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .corp-home .corp-hero__search {
        max-width: 440px;
    }
}

@media (max-width: 720px) {
    .corp-home .corp-hero,
    .corp-home .corp-hero__inner {
        height: 900px !important;
        min-height: 900px !important;
    }

    .corp-home .corp-hero__inner {
        align-items: flex-end;
        padding: 250px 0 24px !important;
    }

    .corp-home .corp-hero__wash {
        background: linear-gradient(180deg, rgba(250, 249, 244, 0) 0%, rgba(250, 249, 244, .08) 42%, rgba(250, 249, 244, .18) 100%) !important;
    }

    .corp-home .corp-hero__slide-mark {
        top: 122px;
        right: 50%;
        width: 218px;
        padding: 0;
        border-width: 0;
        transform: translate(50%, -50%);
    }

    .corp-home .corp-hero__content {
        width: 100% !important;
        max-width: none !important;
        height: 626px !important;
        min-height: 626px !important;
        padding: 25px 23px 21px !important;
    }

    .corp-home .corp-hero h1 {
        max-width: 100% !important;
        font-size: clamp(37px, 10.6vw, 48px) !important;
    }

    .corp-home .corp-hero__content > p:not(.corp-kicker):not(.corp-hero__signature):not(.corp-hero__proof) {
        margin-top: 17px;
        font-size: 14px !important;
    }

    .corp-home .corp-hero .corp-actions {
        margin-top: 19px;
    }

    .corp-home .corp-hero__panel-footer {
        margin-top: auto;
        padding-top: 17px;
    }

    .corp-home .corp-hero__search {
        max-width: none;
    }

    .corp-home .corp-hero__search button {
        min-width: 96px;
        padding-inline: 13px !important;
    }
}

@media (max-width: 390px) {
    .corp-home .corp-hero,
    .corp-home .corp-hero__inner {
        height: 930px !important;
        min-height: 930px !important;
    }

    .corp-home .corp-hero__inner {
        padding-top: 244px !important;
    }

    .corp-home .corp-hero__content {
        height: 660px !important;
        min-height: 660px !important;
        padding-inline: 20px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .corp-home .corp-hero__slide > .corp-hero__background {
        transform: none !important;
    }
}
