/* ==========================================================================
   Blog: index cards (query loop), post hero, post body, post CTA.
   ========================================================================== */
.mm-post-grid .mm-cards { list-style: none; padding: 0; margin: 0; }
.mm-post-card { padding: 0 !important; overflow: hidden; }
.mm-post-card > * { margin: 0 !important; }
.mm-post-card .wp-block-post-featured-image { overflow: hidden; }
.mm-post-card .wp-block-post-featured-image img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; transition: transform 1s var(--mm-ease); }
.mm-post-card:hover .wp-block-post-featured-image img { transform: scale(1.05); }
.mm-post-card .mm-post-card__date { padding: 22px 24px 0; font-family: var(--mm-cond); font-weight: 700; font-size: .8125rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mm-orange-dark); }
.mm-post-card .wp-block-post-title { padding: 8px 24px 0; font-size: 1.25rem !important; line-height: 1.25 !important; }
.mm-post-card .wp-block-post-title a { color: var(--mm-navy); text-decoration: none; }
.mm-post-card .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }
.mm-post-card .mm-link-arrow { padding: 16px 24px 26px; color: var(--mm-navy); margin-top: auto !important; }
.mm-post-card .wp-block-read-more { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
.mm-post-card .wp-block-read-more::after { content: ""; width: 34px; height: 14px; background: var(--mm-orange); -webkit-mask: var(--mm-i-arrow) right center / 18px 18px no-repeat, linear-gradient(#000 0 0) left center / calc(100% - 6px) 2px no-repeat; mask: var(--mm-i-arrow) right center / 18px 18px no-repeat, linear-gradient(#000 0 0) left center / calc(100% - 6px) 2px no-repeat; transition: width .4s var(--mm-ease); }
.mm-post-card:hover .wp-block-read-more::after { width: 46px; }
.wp-block-query-pagination { margin-top: clamp(2rem, 4vw, 3rem) !important; gap: 8px; font-family: var(--mm-cond); font-weight: 700; }
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding: 0 12px; border: 1.5px solid var(--mm-line); color: var(--mm-navy); text-decoration: none; }
.wp-block-query-pagination .current { background: var(--mm-navy); border-color: var(--mm-navy); color: #fff; }

/* Post hero (single.html) */
.mm-post-hero .wp-block-post-featured-image { position: absolute; inset: 0; z-index: -2; margin: 0 !important; max-width: none; }
.mm-post-hero .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.08); mix-blend-mode: luminosity; opacity: .5; }
/* line length capped with padding (not max-width), so the title stays left-aligned with the eyebrow and date */
.mm-post-hero h1 { font-size: clamp(2.4rem, 5vw, 4.6rem) !important; padding-right: max(clamp(0px, 22vw, 340px), calc(100% - 22ch)); }
.mm-post-hero .mm-eyebrow a { color: #fff; text-decoration: none; }
.mm-post-hero__date { font-family: var(--mm-cond); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mm-tan); }
.mm-post__body > .wp-block-post-content { max-width: 760px !important; margin-inline: auto !important; }

/* Post CTA (template part) */
.mm-post-cta { background: var(--mm-orange); color: #fff; padding: clamp(48px, 6vw, 88px) var(--mm-gutter); position: relative; overflow: hidden; isolation: isolate; }
.mm-post-cta::before { content: ""; position: absolute; right: -4vw; top: 50%; translate: 0 -50%; width: clamp(200px, 26vw, 420px); aspect-ratio: 400 / 345; background: var(--mm-red); opacity: .6; -webkit-mask: url("../../brand/elements/pattern-lines.svg") center / contain no-repeat; mask: url("../../brand/elements/pattern-lines.svg") center / contain no-repeat; z-index: -1; }
.mm-post-cta__inner { max-width: var(--mm-wide); margin-inline: auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; }
.mm-post-cta__inner > * { margin: 0 !important; }
.mm-post-cta__title { font-family: var(--mm-display); font-size: var(--wp--preset--font-size--heading-lg); line-height: .92; text-transform: uppercase; }
.mm-post-cta .wp-block-button__link.mm-btn { --mm-btn-bg: #fff; --mm-btn-fg: var(--mm-navy); --mm-btn-sweep: var(--mm-navy); --mm-btn-sweep-fg: #fff; font-size: 1.375rem; }
.mm-post-card .mm-post-card__excerpt { padding: 10px 24px 0; color: var(--mm-muted); font-size: .9688rem; line-height: 1.6; }
.mm-post-card .mm-post-card__excerpt .wp-block-post-excerpt__more-text { display: none; }
