.hgp-elementor-editor-hint {
    width: 100%;
    padding: 14px 16px;
    border: 1px dashed #8b9b91;
    border-radius: 8px;
    background: #f8f6f1;
    color: #004731;
    font: 500 13px/1.45 Inter, sans-serif;
}

.hgp-elementor-author-posts__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.hgp-elementor-author-posts__card {
    min-width: 0;
    overflow: hidden;
    border-radius: 14px;
    background: #fff;
}

.hgp-elementor-author-posts--compact .hgp-elementor-author-posts__card {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.hgp-elementor-author-posts--compact .hgp-elementor-author-posts__image-link {
    flex: 0 0 100px;
    width: 100px;
}

.hgp-elementor-author-posts--compact .hgp-elementor-author-posts__image,
.hgp-elementor-author-posts--compact .elementor-post__thumbnail {
    width: 100%;
    height: 100px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    object-fit: cover;
}

.hgp-elementor-author-posts__image-link,
.hgp-elementor-author-posts__image {
    display: block;
    width: 100%;
}

.hgp-elementor-author-posts__image {
    aspect-ratio: 4 / 3;
    height: auto;
    object-fit: cover;
}

.hgp-elementor-author-posts__content {
    padding: 20px;
}

.hgp-elementor-author-posts__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0 0 10px;
    color: #6b7b6e;
    font: 400 13px/1.5 Inter, sans-serif;
}

.hgp-elementor-author-posts__category,
.hgp-elementor-author-posts__author {
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-author-posts__title {
    margin: 0 0 12px;
    color: #004731;
    font: 600 22px/1.25 "Playfair Display", serif;
}

.hgp-elementor-author-posts__title a {
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-author-posts__excerpt {
    margin: 0 0 16px;
    color: #4b5d51;
    font: 400 15px/1.65 Inter, sans-serif;
}

.hgp-elementor-author-posts__read-more {
    color: #004731;
    font: 500 13px/1.4 "JetBrains Mono", monospace;
    text-decoration: none;
}

.hgp-elementor-author-posts__pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 32px;
}

.hgp-elementor-author-posts__page {
    display: inline-flex;
    min-width: 38px;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 71, 49, .2);
    border-radius: 999px;
    color: #004731;
    text-decoration: none;
}

.hgp-elementor-author-posts__page.is-current {
    border-color: #004731;
    background: #004731;
    color: #fff;
}

.hgp-elementor-category-nav__list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hgp-elementor-category-nav__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 7px 14px;
    border: 1px solid rgba(255, 255, 255, .42);
    border-radius: 999px;
    color: inherit;
    font: 500 13px/1.35 Inter, sans-serif;
    text-decoration: none;
}

.hgp-elementor-category-nav__link:hover,
.hgp-elementor-category-nav__link.is-current {
    border-color: currentColor;
    background: rgba(255, 255, 255, .14);
}

.hgp-elementor-category-count {
    color: inherit;
    font: 500 14px/1.4 Inter, sans-serif;
}

.hgp-elementor-category-posts__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
}

.hgp-elementor-category-posts__card {
    min-width: 0;
    overflow: hidden;
    border-radius: 14px;
    background: #fff;
}

.hgp-elementor-category-posts--compact .hgp-elementor-category-posts__card {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.hgp-elementor-category-posts--compact .hgp-elementor-category-posts__image-link {
    flex: 0 0 110px;
    width: 110px;
}

.hgp-elementor-category-posts__image-link,
.hgp-elementor-category-posts__image {
    display: block;
    width: 100%;
}

.hgp-elementor-category-posts__image {
    height: 270px;
    object-fit: cover;
}

.hgp-elementor-category-posts__content {
    padding: 20px;
}

.hgp-elementor-category-posts__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0 0 10px;
    color: #6b7b6e;
    font: 400 13px/1.5 Inter, sans-serif;
}

.hgp-elementor-category-posts__meta a {
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-category-posts__title {
    margin: 0 0 12px;
    color: #004731;
    font: 600 22px/1.25 "Playfair Display", serif;
}

.hgp-elementor-category-posts__title a {
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-category-posts__excerpt {
    margin: 0 0 16px;
    color: #4b5d51;
    font: 400 15px/1.65 Inter, sans-serif;
}

.hgp-elementor-category-posts__read-more {
    color: #004731;
    font: 500 13px/1.4 "JetBrains Mono", monospace;
    text-decoration: none;
}

.hgp-elementor-category-posts__pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 32px;
}

.hgp-elementor-category-posts__page {
    display: inline-flex;
    min-width: 38px;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0, 71, 49, .2);
    border-radius: 999px;
    color: #004731;
    text-decoration: none;
}

.hgp-elementor-category-posts__page.is-current {
    border-color: #004731;
    background: #004731;
    color: #fff;
}

.hgp-elementor-consent-settings {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.hgp-elementor-consent-settings__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: inherit;
    cursor: pointer;
}

.hgp-elementor-consent-settings__button:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}

.hgp-elementor-consent-settings__button[aria-busy="true"] {
    cursor: wait;
}

.hgp-elementor-consent-settings__button[aria-invalid="true"] {
    text-decoration: underline;
    text-decoration-thickness: .08em;
    text-underline-offset: .18em;
}

.hgp-elementor-consent-settings__icon {
    flex: 0 0 auto;
}

.hgp-elementor-consent-settings__status {
    flex: 1 0 100%;
    margin: 8px 0 0;
    color: inherit;
    font-size: .875em;
    line-height: 1.45;
}

.hgp-elementor-consent-settings__status[hidden] {
    display: none;
}

.hgp-elementor-consent-settings__privacy-link,
.hgp-elementor-consent-settings__privacy-missing {
    display: block;
    margin-top: 4px;
}

.hgp-elementor-consent-settings__privacy-link {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: .16em;
}

.hgp-elementor-author-profile__card {
    display: grid;
    grid-template-columns: minmax(220px, 420px) minmax(0, 1fr);
    align-items: stretch;
    overflow: hidden;
    border: 1px solid #e3e8e1;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 14px 42px rgb(18 52 36 / 8%);
}

.hgp-elementor-author-profile__image {
    display: block;
    width: 100%;
    min-height: 430px;
    height: 100%;
    object-fit: cover;
}

.hgp-elementor-author-profile__image-link {
    display: block;
    min-width: 0;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-author-profile__content {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    padding: clamp(30px, 6vw, 72px);
}

.hgp-elementor-author-profile__eyebrow {
    margin: 0 0 12px;
    color: #9a7a22;
    font: 700 12px/1.4 Inter, sans-serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hgp-elementor-author-profile__name {
    margin: 0 0 8px;
    color: #004731;
    font: 700 28px/1.2 "Playfair Display", serif;
}

.hgp-elementor-author-profile__name .hgp-elementor-author-profile__name-link,
.hgp-elementor-author-profile__name .hgp-elementor-author-profile__name-link:hover {
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-author-profile__image-link:focus-visible,
.hgp-elementor-author-profile__name-link:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.hgp-elementor-author-profile__job,
.hgp-elementor-author-profile__bio,
.hgp-elementor-author-profile__count,
.hgp-elementor-author-profile__subtitle {
    color: #4b5d51;
    font: 400 15px/1.65 Inter, sans-serif;
}

.hgp-elementor-author-profile__job {
    margin: 0 0 10px;
    color: #9a7a22;
    font-weight: 600;
}

.hgp-elementor-author-profile__bio {
    margin: 0 0 18px;
}

.hgp-elementor-author-profile__button,
.hgp-elementor-author-profile__social,
.hgp-elementor-author-profile__specialty {
    color: #1e5b43;
}

.hgp-elementor-author-profile__button {
    display: inline-flex;
    text-decoration: none;
    font: 700 12px/1.4 Inter, sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.hgp-elementor-author-profile__socials,
.hgp-elementor-author-profile__specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hgp-elementor-author-profile__social,
.hgp-elementor-author-profile__specialty {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 12px;
    border: 1px solid currentColor;
    border-radius: 999px;
    text-decoration: none;
    font: 600 12px/1.3 Inter, sans-serif;
}

.hgp-elementor-authors-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.hgp-elementor-authors-grid__card {
    min-width: 0;
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
}

.hgp-elementor-authors-grid__image-link,
.hgp-elementor-authors-grid__image {
    display: block;
    width: 100%;
}

.hgp-elementor-authors-grid__image {
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: cover;
}

.hgp-elementor-authors-grid__content {
    padding: 22px;
}

.hgp-elementor-authors-grid__name {
    margin: 0 0 7px;
    color: #004731;
    font: 700 22px/1.25 "Playfair Display", serif;
}

.hgp-elementor-authors-grid__name a,
.hgp-elementor-authors-grid__button {
    color: inherit;
    text-decoration: none;
}

.hgp-elementor-authors-grid__job {
    margin: 0 0 10px;
    color: #9a7a22;
    font: 600 13px/1.4 Inter, sans-serif;
}

.hgp-elementor-authors-grid__bio,
.hgp-elementor-authors-grid__count {
    margin: 0 0 14px;
    color: #4b5d51;
    font: 400 14px/1.6 Inter, sans-serif;
}

.hgp-elementor-authors-grid__button {
    color: #1e5b43;
    font: 700 12px/1.4 Inter, sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.hgp-cpt-author-box {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr);
    gap: 28px;
    align-items: center;
    margin: 50px 0 30px;
    padding: 28px;
    overflow: hidden;
    color: #4a4a4a;
    border: 1px solid #d9e2dc;
    border-radius: 16px;
    background: #f8f6f1;
}

.hgp-cpt-author-box--no-image {
    grid-template-columns: minmax(0, 1fr);
}

.hgp-cpt-author-box__media,
.hgp-cpt-author-box__image {
    display: block;
    width: 100%;
}

.hgp-cpt-author-box__media {
    align-self: stretch;
    min-height: 160px;
}

.hgp-cpt-author-box__image {
    height: 160px;
    object-fit: cover;
    object-position: center top;
    border-radius: 12px;
}

.hgp-cpt-author-box__content {
    min-width: 0;
}

.hgp-cpt-author-box__name {
    margin: 0 0 5px;
    color: #004731;
    font: 600 26px/1.2 "Playfair Display", serif;
}

.hgp-cpt-author-box__name a,
.hgp-cpt-author-box__cta a {
    color: inherit;
    text-decoration: none;
}

.hgp-cpt-author-box__name a:hover,
.hgp-cpt-author-box__name a:focus-visible,
.hgp-cpt-author-box__cta a:hover,
.hgp-cpt-author-box__cta a:focus-visible {
    text-decoration: underline;
    text-underline-offset: .16em;
}

.hgp-cpt-author-box__role {
    margin: 0 0 10px;
    color: #8a6b1f;
    font: 600 13px/1.45 Inter, sans-serif;
}

.hgp-cpt-author-box__bio {
    margin: 0;
    font: 400 15px/1.6 Inter, sans-serif;
}

.hgp-cpt-author-box__cta {
    margin: 13px 0 0;
    color: #004731;
    font: 700 13px/1.4 Inter, sans-serif;
}

@media (max-width: 1024px) {
    .hgp-elementor-author-posts__grid,
    .hgp-elementor-authors-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .hgp-elementor-author-posts__grid,
    .hgp-elementor-authors-grid {
        grid-template-columns: 1fr;
    }

    .hgp-elementor-author-profile__card {
        grid-template-columns: 1fr;
    }

    .hgp-elementor-author-profile__image {
        min-height: 320px;
        max-height: 440px;
    }

    .hgp-cpt-author-box {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 22px;
    }

    .hgp-cpt-author-box__media,
    .hgp-cpt-author-box__image {
        height: 280px;
    }
}
