/* Compac HubSpot Email Archive v0.5.6
   Scoped only to Email Update pages. */

body.single-compac_update #main,
body.post-type-archive-compac_update #main {
    background: #fff;
}

body.single-compac_update #main .sidebar,
body.post-type-archive-compac_update #main .sidebar {
    display: none !important;
}

body.single-compac_update #main .content,
body.post-type-archive-compac_update #main .content {
    width: 100% !important;
    border: 0 !important;
}

/* Enfold normally constrains/offsets blog content. Remove that on Email Updates. */
body.single-compac_update #main > .container_wrap > .container,
body.single-compac_update #main .container_wrap_first > .container,
body.single-compac_update #main .container {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
}

body.single-compac_update #main .post-entry,
body.single-compac_update #main article.post-entry {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

body.single-compac_update #main .entry-content-wrapper {
    position: static !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 740px !important;
    margin: 26px auto 0 !important;
    padding: 0 !important;
}

body.single-compac_update #main .entry-content-header,
body.single-compac_update #main header.entry-content-header {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    float: none !important;
}

body.single-compac_update #main .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

body.single-compac_update #main .post-meta-infos,
body.single-compac_update #main .entry-meta,
body.single-compac_update #main .blog-meta,
body.single-compac_update #main .minor-meta,
body.single-compac_update #main .text-sep,
body.single-compac_update #main .post_delimiter {
    display: none !important;
}

/* H1 and article now share exactly the same left edge. */
body.single-compac_update #main .post-title,
body.single-compac_update #main .entry-title,
body.single-compac_update #main h1.entry-title,
body.single-compac_update #main h1.post-title {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: #082a4e !important;
    font-size: clamp(36px, 3.6vw, 43px) !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    letter-spacing: -0.025em !important;
    text-align: left !important;
}

body.single-compac_update .chea-update-meta {
    margin: 0 0 30px !important;
    color: #6b7680 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

body.single-compac_update .chea-imported-email {
    width: 100% !important;
    max-width: 740px !important;
    margin: 0 auto 50px !important;
    padding: 0 !important;
    color: #17212b !important;
    font-size: 17px !important;
    line-height: 1.62 !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

body.single-compac_update .chea-imported-email > *:first-child {
    margin-top: 0 !important;
}

body.single-compac_update .chea-imported-email p,
body.single-compac_update .chea-imported-email li,
body.single-compac_update .chea-imported-email td,
body.single-compac_update .chea-imported-email span,
body.single-compac_update .chea-imported-email div {
    color: #17212b !important;
    font-family: inherit !important;
}

body.single-compac_update .chea-imported-email div,
body.single-compac_update .chea-imported-email span,
body.single-compac_update .chea-imported-email td {
    font-size: inherit !important;
    line-height: inherit !important;
}

body.single-compac_update .chea-imported-email p {
    margin: 0 0 20px !important;
    font-size: 17px !important;
    line-height: 1.62 !important;
}

body.single-compac_update .chea-imported-email h2,
body.single-compac_update .chea-imported-email h3,
body.single-compac_update .chea-imported-email h4 {
    margin-left: 0 !important;
    margin-right: 0 !important;
    color: #082a4e !important;
    font-family: inherit !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.018em !important;
    text-align: left !important;
}

body.single-compac_update .chea-imported-email h2 {
    margin-top: 46px !important;
    margin-bottom: 14px !important;
    font-size: 30px !important;
}

body.single-compac_update .chea-imported-email h3 {
    margin-top: 36px !important;
    margin-bottom: 12px !important;
    font-size: 24px !important;
}

body.single-compac_update .chea-imported-email h4 {
    margin-top: 30px !important;
    margin-bottom: 10px !important;
    font-size: 20px !important;
}

body.single-compac_update .chea-imported-email a {
    color: #00b9ad !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

body.single-compac_update .chea-imported-email a:hover {
    text-decoration: underline !important;
}

body.single-compac_update .chea-email-image {
    display: block !important;
    width: 100% !important;
    max-width: 740px !important;
    margin: 28px auto 32px !important;
    padding: 0 !important;
}

body.single-compac_update .chea-email-image img,
body.single-compac_update .chea-imported-email img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Preserve HubSpot's common text/image rows instead of flattening them into a
   single vertical article. The parser only adds this wrapper for genuine
   two-column sections, keeping all other email layouts on the legacy path. */
body.single-compac_update .chea-email-section--columns {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 36px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 34px 0 38px !important;
    padding: 0 !important;
}

body.single-compac_update .chea-email-column {
    min-width: 0 !important;
}

body.single-compac_update .chea-email-column > *:first-child {
    margin-top: 0 !important;
}

body.single-compac_update .chea-email-column > *:last-child {
    margin-bottom: 0 !important;
}

body.single-compac_update .chea-email-section--columns .chea-email-image {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Small HubSpot benefit/feature icons should stay icon-sized rather than being
   stretched to the full article width. Inline-block lets groups of icons sit
   neatly beside each other and wrap naturally on smaller screens. */
body.single-compac_update .chea-email-image--icon {
    display: inline-block !important;
    width: 110px !important;
    max-width: 110px !important;
    margin: 18px 22px 22px 0 !important;
    vertical-align: top !important;
}

body.single-compac_update .chea-email-image--icon img {
    width: auto !important;
    max-width: 110px !important;
    max-height: 110px !important;
    object-fit: contain !important;
}

/* HubSpot email layouts sometimes contain tables. Keep order but remove mail-client sizing. */
body.single-compac_update .chea-imported-email table {
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px auto !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
}

body.single-compac_update .chea-imported-email td,
body.single-compac_update .chea-imported-email th {
    width: auto !important;
    max-width: 100% !important;
    padding: 5px 0 !important;
    border: 0 !important;
    vertical-align: top !important;
}


/* Product "View ... Online" links stay as clean inline links rather than large buttons. */
body.single-compac_update .chea-email-text-link {
    margin: 10px 0 30px !important;
}

body.single-compac_update .chea-email-text-link a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    color: #00a99d !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

body.single-compac_update .chea-email-text-link a:hover {
    text-decoration: underline !important;
}

/* Restored HubSpot CTAs/product links are shown as real website buttons. */
body.single-compac_update .chea-email-link {
    margin: 22px 0 34px !important;
}

body.single-compac_update .chea-email-link a,
body.single-compac_update .chea-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 12px 22px !important;
    border-radius: 2px !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

body.single-compac_update .chea-email-link a,
body.single-compac_update .chea-btn--primary {
    background: #00b9ad !important;
    color: #fff !important;
    border: 1px solid #00b9ad !important;
}

body.single-compac_update .chea-btn--secondary {
    background: #fff !important;
    color: #082a4e !important;
    border: 1px solid #cbd4dc !important;
}

body.single-compac_update .chea-update-cta {
    width: 100% !important;
    max-width: 740px !important;
    margin: 0 auto 72px !important;
    padding: 24px 26px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 22px !important;
    background: #f3f6f7 !important;
    border-top: 3px solid #00b9ad !important;
    box-sizing: border-box !important;
}

body.single-compac_update .chea-update-cta__copy {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    color: #17212b !important;
}

body.single-compac_update .chea-update-cta__copy strong {
    color: #082a4e !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
}

body.single-compac_update .chea-update-cta__copy span {
    color: #4d5c67 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
}

body.single-compac_update .chea-update-cta__actions {
    display: flex !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
}

body.single-compac_update .chea-imported-email ul,
body.single-compac_update .chea-imported-email ol {
    margin: 0 0 22px 22px !important;
}

body.single-compac_update .chea-imported-email li {
    margin-bottom: 7px !important;
}


/* Final editorial polish -------------------------------------------------- */

/* Keep Enfold breadcrumbs on the same 740px reading line as the article.
   This makes the page feel like one deliberate layout rather than a full-width
   theme breadcrumb followed by a narrow email/article column. */
body.single-compac_update .title_container {
    padding: 16px 24px 0 !important;
    background: #fff !important;
    border: 0 !important;
}

body.single-compac_update .title_container .container {
    width: 100% !important;
    max-width: 740px !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

body.single-compac_update .title_container .breadcrumb,
body.single-compac_update .title_container .breadcrumb-trail {
    position: static !important;
    float: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    line-height: 1.4 !important;
}

/* If the theme outputs breadcrumbs outside title_container, cover the common
   Enfold breadcrumb wrappers as well without affecting other post types. */
body.single-compac_update #main .avia-breadcrumbs,
body.single-compac_update #main .breadcrumb-trail {
    max-width: 740px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* HubSpot text modules are not always marked up as headings. A short text
   line placed directly before an image is normally a section label such as
   Cinnabar / Olive Green, so give it a clear editorial treatment without
   requiring the client to add classes in HubSpot. */
@supports selector(p:has(+ figure)) {
    body.single-compac_update .chea-imported-email p:has(+ .chea-email-image) {
        margin-top: 38px !important;
        margin-bottom: 14px !important;
        color: #082a4e !important;
        font-size: 21px !important;
        line-height: 1.25 !important;
        font-weight: 600 !important;
        letter-spacing: -0.012em !important;
    }
}

/* Slightly calmer rhythm for consecutive text blocks. */
body.single-compac_update .chea-imported-email p + p {
    margin-top: -4px !important;
}

/* Keep product links feeling like part of the article, not email buttons. */
body.single-compac_update .chea-email-text-link {
    margin-top: 8px !important;
    margin-bottom: 28px !important;
}

/* Event/CTA buttons remain distinct but compact. */
body.single-compac_update .chea-email-link {
    margin-top: 18px !important;
    margin-bottom: 34px !important;
}

@media (max-width: 767px) {
    body.single-compac_update .chea-email-section--columns {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
        margin: 28px 0 32px !important;
    }

    body.single-compac_update .chea-email-image--icon {
        width: 84px !important;
        max-width: 84px !important;
        margin-right: 14px !important;
    }

    body.single-compac_update .chea-email-image--icon img {
        max-width: 84px !important;
        max-height: 84px !important;
    }

    body.single-compac_update #main > .container_wrap > .container,
    body.single-compac_update #main .container_wrap_first > .container,
    body.single-compac_update #main .container {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    body.single-compac_update .title_container {
        padding-left: 18px !important;
        padding-right: 18px !important;
        padding-top: 12px !important;
    }

    body.single-compac_update #main .entry-content-wrapper {
        max-width: 100% !important;
        margin-top: 26px !important;
    }

    body.single-compac_update #main .post-title,
    body.single-compac_update #main .entry-title,
    body.single-compac_update #main h1.entry-title,
    body.single-compac_update #main h1.post-title {
        font-size: 34px !important;
    }

    body.single-compac_update .chea-imported-email,
    body.single-compac_update .chea-imported-email p {
        font-size: 16px !important;
    }

    body.single-compac_update .chea-imported-email table,
    body.single-compac_update .chea-imported-email tbody,
    body.single-compac_update .chea-imported-email tr,
    body.single-compac_update .chea-imported-email td,
    body.single-compac_update .chea-imported-email th {
        display: block !important;
        width: 100% !important;
    }

    body.single-compac_update .chea-update-cta {
        padding: 22px !important;
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    body.single-compac_update .chea-update-cta__actions {
        width: 100% !important;
        flex-wrap: wrap !important;
    }
}

/* Updates & Inspiration archive ----------------------------------------- */
body.post-type-archive-compac_update .title_container,
body.post-type-archive-compac_update #main > .container_wrap,
body.post-type-archive-compac_update #main > .container_wrap_first {
    /* The archive uses its own clean layout below. Keep theme wrappers from adding blog spacing. */
}

.chea-updates-archive {
    background: #fff;
    padding: 78px 24px 96px;
}

.chea-archive-shell {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}

.chea-archive-hero {
    max-width: 760px;
    margin: 0 0 46px;
}

.chea-archive-eyebrow {
    display: block;
    margin: 0 0 10px;
    color: #00a99d;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: .12em;
}

.chea-archive-hero h1 {
    margin: 0 0 14px;
    color: #082a4e;
    font-size: clamp(38px, 4.6vw, 58px);
    line-height: 1.04;
    font-weight: 600;
    letter-spacing: -.035em;
}

.chea-archive-hero p {
    margin: 0;
    max-width: 680px;
    color: #4d5c67;
    font-size: 18px;
    line-height: 1.55;
}

.chea-archive-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

.chea-update-card {
    overflow: hidden;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff;
    border: 1px solid #dfe6ea;
    border-radius: 2px;
    box-shadow: none;
}

.chea-update-card__image {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #eef2f3;
}

.chea-update-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease;
}

.chea-update-card:hover .chea-update-card__image img {
    transform: scale(1.015);
}

.chea-update-card__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #f1f4f5 0%, #e5ebed 100%);
}

.chea-update-card__body {
    padding: 24px 26px 28px;
}

.chea-update-card__date {
    display: block;
    margin: 0 0 10px;
    color: #6b7680;
    font-size: 13px;
    line-height: 1.3;
}

.chea-update-card__title {
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #082a4e !important;
    font-size: 26px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
    letter-spacing: -.02em !important;
}

.chea-update-card__title a {
    color: inherit !important;
    text-decoration: none !important;
}

.chea-update-card__excerpt {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 0 18px !important;
    color: #4d5c67 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.chea-update-card__link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #00a99d !important;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 700;
    text-decoration: none !important;
}

.chea-update-card__link:hover {
    text-decoration: underline !important;
}

.chea-archive-pagination {
    margin: 48px 0 0;
}

.chea-archive-pagination .page-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.chea-archive-pagination .page-numbers li {
    margin: 0;
    padding: 0;
}

.chea-archive-pagination a.page-numbers,
.chea-archive-pagination span.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 14px;
    border: 1px solid #dfe6ea;
    color: #082a4e;
    background: #fff;
    text-decoration: none;
}

.chea-archive-pagination span.current {
    color: #fff;
    background: #082a4e;
    border-color: #082a4e;
}

.chea-archive-empty {
    padding: 36px 0;
    color: #4d5c67;
}

@media (max-width: 767px) {
    .chea-updates-archive {
        padding: 48px 18px 64px;
    }

    .chea-archive-hero {
        margin-bottom: 30px;
    }

    .chea-archive-hero h1 {
        font-size: 38px;
    }

    .chea-archive-hero p {
        font-size: 16px;
    }

    .chea-archive-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .chea-update-card__body {
        padding: 21px 20px 24px;
    }

    .chea-update-card__title {
        font-size: 23px !important;
    }
}
