.grove-posts-canvas {
	--grove-canvas-gap: 20px;
	--grove-canvas-columns: 4;
	--grove-canvas-tablet-columns: 2;
	--grove-canvas-mobile-columns: 1;
	--grove-canvas-visible: 4;
	--grove-canvas-tablet-visible: 2;
	--grove-canvas-mobile-visible: 1;
	--grove-canvas-radius: var(--grove-card-radius, 6px);
	--grove-canvas-border-width: 0px;
	--grove-canvas-card-bg: var(--grove-surface, #fff);
	--grove-canvas-card-text: var(--grove-text, #08090a);
	--grove-canvas-accent: var(--grove-accent, #08090a);
	position: relative;
	width: 100%;
	color: var(--grove-text, #08090a);
}

.grove-posts-canvas__header {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: clamp(1rem, 2.2vw, 1.75rem);
}
.grove-posts-canvas__eyebrow { margin: 0 0 .38rem; color: var(--grove-muted, #5e636b); font-size: .68rem; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.grove-posts-canvas__title { margin: 0; font-size: clamp(1.6rem, 3vw, 3rem); line-height: .98; }
.grove-posts-canvas__link { display: inline-flex; align-items: center; gap: .4rem; flex: 0 0 auto; padding-bottom: .2rem; border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 700; text-decoration: none; }
.grove-posts-canvas__link span { transition: transform 180ms ease; }
.grove-posts-canvas__link:hover span { transform: translate(2px, -2px); }

.grove-posts-canvas__items { display: grid; grid-template-columns: repeat(var(--grove-canvas-columns), minmax(0, 1fr)); gap: var(--grove-canvas-gap); }

.grove-canvas-card {
	position: relative;
	min-width: 0;
	background: transparent;
	color: var(--grove-canvas-card-text);
	border: 0;
	border-radius: 0;
	overflow: visible;
	transition: transform 180ms cubic-bezier(.2,.8,.2,1), box-shadow 180ms cubic-bezier(.2,.8,.2,1), border-color 180ms ease;
}
.grove-canvas-card__media { display: block; position: relative; margin: 0; overflow: hidden; background: var(--grove-raised, #edeeeb); border-radius: var(--grove-canvas-radius); }
.grove-canvas-card__media img,
.grove-canvas-card__placeholder { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; transition: transform 520ms cubic-bezier(.2,.8,.2,1); }
.grove-posts-canvas--image-wide .grove-canvas-card__media img,
.grove-posts-canvas--image-wide .grove-canvas-card__placeholder { aspect-ratio: 16 / 9; }
.grove-posts-canvas--image-square .grove-canvas-card__media img,
.grove-posts-canvas--image-square .grove-canvas-card__placeholder { aspect-ratio: 1; }
.grove-posts-canvas--image-portrait .grove-canvas-card__media img,
.grove-posts-canvas--image-portrait .grove-canvas-card__placeholder { aspect-ratio: 4 / 5; }
.grove-canvas-card:hover .grove-canvas-card__media img { transform: scale(1.025); }
.grove-canvas-card__placeholder { background: linear-gradient(145deg, var(--grove-raised, #edeeeb), color-mix(in srgb, var(--grove-raised, #edeeeb) 65%, var(--grove-canvas-card-text))); }

.grove-canvas-card__content { padding: .78rem 0 0; }
.grove-canvas-card__terms { display: flex; flex-wrap: wrap; gap: .3rem; margin-bottom: .5rem; }
.grove-canvas-card__terms a { display: inline-flex; padding: .22rem .45rem; background: color-mix(in srgb, var(--grove-canvas-accent) 8%, transparent); color: inherit; font-size: .62rem; font-weight: 750; letter-spacing: .05em; line-height: 1.2; text-decoration: none; text-transform: uppercase; }
.grove-canvas-card__title { margin: 0; font-size: clamp(1rem, 1.25vw, 1.32rem); line-height: 1.08; letter-spacing: -.025em; }
.grove-canvas-card__title a { color: inherit; text-decoration: none; }
.grove-posts-canvas--title-small .grove-canvas-card__title { font-size: clamp(.9rem, 1vw, 1.06rem); }
.grove-posts-canvas--title-large .grove-canvas-card__title { font-size: clamp(1.35rem, 2.15vw, 2.25rem); line-height: 1; }
.grove-posts-canvas--title-display .grove-canvas-card__title { font-size: clamp(2rem, 4vw, 4.6rem); line-height: .93; letter-spacing: -.045em; }
.grove-canvas-card__excerpt { margin: .55rem 0 0; color: color-mix(in srgb, var(--grove-canvas-card-text) 68%, transparent); font-size: .86rem; line-height: 1.48; }
.grove-canvas-card__meta { display: flex; flex-wrap: wrap; gap: .35rem .7rem; margin-top: .65rem; color: color-mix(in srgb, var(--grove-canvas-card-text) 58%, transparent); font-size: .66rem; font-weight: 650; }
.grove-canvas-card__meta a { color: inherit; text-decoration: none; }
.grove-canvas-card__meta > *:not(:last-child)::after { content: "·"; margin-left: .7rem; opacity: .45; }

/* Optional surfaces. Default is deliberately borderless. */
.grove-posts-canvas--card-flat .grove-canvas-card,
.grove-posts-canvas--card-outline .grove-canvas-card,
.grove-posts-canvas--card-glossy .grove-canvas-card { overflow: hidden; border-radius: var(--grove-canvas-radius); }
.grove-posts-canvas--card-flat .grove-canvas-card { background: var(--grove-canvas-card-bg); border: var(--grove-canvas-border-width) solid var(--grove-border, #d9dbde); }
.grove-posts-canvas--card-flat .grove-canvas-card__media { border-radius: 0; }
.grove-posts-canvas--card-flat .grove-canvas-card__content { padding: clamp(.9rem, 1.6vw, 1.25rem); }
.grove-posts-canvas--card-outline .grove-canvas-card { border: max(1px, var(--grove-canvas-border-width)) solid var(--grove-border, #d9dbde); }
.grove-posts-canvas--card-outline .grove-canvas-card__content { padding: clamp(.9rem, 1.6vw, 1.25rem); }
.grove-posts-canvas--card-outline .grove-canvas-card__media { border-radius: 0; }
.grove-posts-canvas--card-glossy .grove-canvas-card { background: linear-gradient(145deg, color-mix(in srgb, var(--grove-canvas-card-bg) 96%, transparent), color-mix(in srgb, var(--grove-raised, #edeeeb) 76%, transparent)); border: max(1px, var(--grove-canvas-border-width)) solid color-mix(in srgb, var(--grove-canvas-card-text) 10%, transparent); box-shadow: inset 0 1px 0 color-mix(in srgb, #fff 34%, transparent), var(--grove-shadow-soft, 0 16px 44px rgba(8,9,10,.08)); }
.grove-posts-canvas--card-glossy .grove-canvas-card__media { border-radius: 0; }
.grove-posts-canvas--card-glossy .grove-canvas-card__content { padding: clamp(.9rem, 1.6vw, 1.25rem); }

/* Reusable image-overlay cards, also used by all Tiles canvases. */
.grove-posts-canvas--card-overlay .grove-canvas-card,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card { display: grid; min-height: 280px; overflow: hidden; border-radius: var(--grove-canvas-radius); background: #111; color: #fff; }
.grove-posts-canvas--card-overlay .grove-canvas-card__media,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__media { grid-area: 1 / 1; height: 100%; border-radius: 0; }
.grove-posts-canvas--card-overlay .grove-canvas-card__media img,
.grove-posts-canvas--card-overlay .grove-canvas-card__placeholder,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__media img,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__placeholder { height: 100%; aspect-ratio: auto; }
.grove-posts-canvas--card-overlay .grove-canvas-card__content,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__content { grid-area: 1 / 1; align-self: end; z-index: 2; padding: clamp(1rem, 2.3vw, 1.8rem); background: linear-gradient(180deg, transparent 8%, rgba(5,6,7,.18) 35%, rgba(5,6,7,.92) 100%); color: #fff; }
.grove-posts-canvas--card-overlay .grove-canvas-card__terms a,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__terms a { background: rgba(255,255,255,.9); color: #08090a; }
.grove-posts-canvas--card-overlay .grove-canvas-card__excerpt,
.grove-posts-canvas--card-overlay .grove-canvas-card__meta,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__excerpt,
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card__meta { color: rgba(255,255,255,.75); }

/* Newsroom hero: lead story, two supporting stories and a compact top-stories rail. */
.grove-posts-canvas--newsroom .grove-posts-canvas__items { grid-template-columns: minmax(0, 1.75fr) minmax(220px, .82fr) minmax(240px, .88fr); grid-template-rows: repeat(4, minmax(112px, auto)); gap: 0; align-items: stretch; }
.grove-posts-canvas--newsroom .grove-canvas-card--1 { grid-column: 1; grid-row: 1 / 5; padding-right: clamp(1rem, 2.2vw, 1.8rem); border-right: 1px solid var(--grove-border); }
.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__title { font-size: clamp(2rem, 3.45vw, 4.1rem); line-height: .96; letter-spacing: -.045em; }
.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__excerpt { max-width: 62ch; font-size: .92rem; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 { grid-column: 2; grid-row: 1 / 3; display: grid; margin: 0 clamp(.85rem, 1.8vw, 1.4rem); overflow: hidden; border-radius: var(--grove-canvas-radius); background: #111; color: #fff; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__media,
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__content { grid-area: 1 / 1; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__media { height: 100%; border-radius: 0; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__media img { height: 100%; aspect-ratio: auto; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__content { align-self: end; z-index: 2; padding: 1rem; background: linear-gradient(180deg, transparent, rgba(5,6,7,.9)); }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__terms a { background: #fff; color: #08090a; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__meta { color: rgba(255,255,255,.72); }
.grove-posts-canvas--newsroom .grove-canvas-card--3 { grid-column: 2; grid-row: 3 / 5; margin: clamp(.85rem, 1.8vw, 1.4rem); margin-bottom: 0; padding-top: clamp(.85rem, 1.8vw, 1.4rem); border-top: 1px solid var(--grove-border); }
.grove-posts-canvas--newsroom .grove-canvas-card--3 .grove-canvas-card__media { max-height: 150px; }
.grove-posts-canvas--newsroom .grove-canvas-card--3 .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) { grid-column: 3; display: grid; grid-template-columns: 94px minmax(0, 1fr); gap: .85rem; align-items: center; padding: .75rem 0 .75rem 1.15rem; border-left: 1px solid var(--grove-border); border-bottom: 1px solid var(--grove-border); }
.grove-posts-canvas--newsroom .grove-canvas-card--4 { grid-row: 1; }
.grove-posts-canvas--newsroom .grove-canvas-card--5 { grid-row: 2; }
.grove-posts-canvas--newsroom .grove-canvas-card--6 { grid-row: 3; }
.grove-posts-canvas--newsroom .grove-canvas-card--7 { grid-row: 4; border-bottom: 0; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__media { border-radius: 3px; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__media img { aspect-ratio: 1; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__terms,
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__excerpt,
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__meta > *:not(time) { display: none; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__title { font-size: .88rem; }

/* Category lead. */
.grove-posts-canvas--category-lead .grove-posts-canvas__items { grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); }
.grove-posts-canvas--category-lead .grove-canvas-card--1 { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(320px, .94fr); min-height: 390px; border-bottom: 1px solid var(--grove-border); padding-bottom: clamp(1.3rem, 3vw, 2.3rem); }
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__media,
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__media img { height: 100%; }
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__media img { aspect-ratio: auto; }
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(1.5rem, 4vw, 3.5rem); }
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__title { font-size: clamp(1.8rem, 3.2vw, 3.7rem); line-height: .97; }
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) { display: grid; grid-template-columns: minmax(130px, 38%) minmax(0,1fr); gap: 1rem; padding-top: 1.2rem; border-top: 1px solid var(--grove-border); }
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) .grove-canvas-card__excerpt { display: none; }

/* Section feature: one strong lead with a right-side stack. */
.grove-posts-canvas--section-feature .grove-posts-canvas__items { grid-template-columns: minmax(0, 1.45fr) minmax(300px, .75fr); grid-auto-rows: minmax(110px, auto); gap: 0 clamp(1.2rem, 2.5vw, 2rem); }
.grove-posts-canvas--section-feature .grove-canvas-card--1 { grid-row: 1 / 7; padding-right: clamp(1rem, 2vw, 1.6rem); border-right: 1px solid var(--grove-border); }
.grove-posts-canvas--section-feature .grove-canvas-card--1 .grove-canvas-card__title { font-size: clamp(1.7rem, 2.8vw, 3rem); line-height: .98; }
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) { grid-column: 2; display: grid; grid-template-columns: 122px minmax(0,1fr); gap: .9rem; align-items: center; padding: .8rem 0; border-bottom: 1px solid var(--grove-border); }
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) .grove-canvas-card__media img { aspect-ratio: 4 / 3; }
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) .grove-canvas-card__excerpt,
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) .grove-canvas-card__terms { display: none; }
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) .grove-canvas-card__title { font-size: .93rem; }

/* Split feature: two feature cards and a compact two-column list. */
.grove-posts-canvas--split-feature .grove-posts-canvas__items { grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--grove-canvas-gap); }
.grove-posts-canvas--split-feature .grove-canvas-card:nth-child(-n+2) .grove-canvas-card__title { font-size: clamp(1.35rem, 2.2vw, 2.2rem); }
.grove-posts-canvas--split-feature .grove-canvas-card:nth-child(n+3) { display: grid; grid-template-columns: 140px minmax(0,1fr); gap: .9rem; padding-top: .9rem; border-top: 1px solid var(--grove-border); }
.grove-posts-canvas--split-feature .grove-canvas-card:nth-child(n+3) .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--split-feature .grove-canvas-card:nth-child(n+3) .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--split-feature .grove-canvas-card:nth-child(n+3) .grove-canvas-card__title { font-size: .92rem; }

/* Masonry. */
.grove-posts-canvas--masonry .grove-posts-canvas__items { display: block; columns: var(--grove-canvas-columns); column-gap: var(--grove-canvas-gap); }
.grove-posts-canvas--masonry .grove-canvas-card { break-inside: avoid; margin-bottom: var(--grove-canvas-gap); }

/* Lists and wide rows. */
.grove-posts-canvas--list .grove-posts-canvas__items,
.grove-posts-canvas--wide-1 .grove-posts-canvas__items,
.grove-posts-canvas--wide-2 .grove-posts-canvas__items,
.grove-posts-canvas--wide-3 .grove-posts-canvas__items,
.grove-posts-canvas--ranked .grove-posts-canvas__items { grid-template-columns: 1fr; }
.grove-posts-canvas--list .grove-canvas-card,
.grove-posts-canvas--wide-1 .grove-canvas-card,
.grove-posts-canvas--wide-2 .grove-canvas-card,
.grove-posts-canvas--wide-3 .grove-canvas-card { display: grid; grid-template-columns: minmax(180px, 34%) minmax(0, 1fr); align-items: stretch; padding-bottom: var(--grove-canvas-gap); border-bottom: 1px solid var(--grove-border); }
.grove-posts-canvas--list .grove-canvas-card__content,
.grove-posts-canvas--wide-1 .grove-canvas-card__content,
.grove-posts-canvas--wide-2 .grove-canvas-card__content,
.grove-posts-canvas--wide-3 .grove-canvas-card__content { padding: .2rem 0 .2rem clamp(1rem, 2.5vw, 2rem); }
.grove-posts-canvas--list .grove-canvas-card__media img,
.grove-posts-canvas--wide-1 .grove-canvas-card__media img,
.grove-posts-canvas--wide-2 .grove-canvas-card__media img,
.grove-posts-canvas--wide-3 .grove-canvas-card__media img { height: 100%; aspect-ratio: auto; }
.grove-posts-canvas--wide-1 .grove-canvas-card:nth-child(odd) { grid-template-columns: minmax(0,1.25fr) minmax(260px,.75fr); }
.grove-posts-canvas--wide-1 .grove-canvas-card:nth-child(odd) .grove-canvas-card__media { order: 2; }
.grove-posts-canvas--wide-2 .grove-canvas-card { grid-template-columns: minmax(260px,48%) minmax(0,1fr); }
.grove-posts-canvas--wide-3 .grove-canvas-card:nth-child(even) { grid-template-columns: minmax(0,1fr) minmax(220px,38%); }
.grove-posts-canvas--wide-3 .grove-canvas-card:nth-child(even) .grove-canvas-card__media { order: 2; }

/* Compact grid. */
.grove-posts-canvas--compact-grid .grove-posts-canvas__items { grid-template-columns: repeat(2,minmax(0,1fr)); }
.grove-posts-canvas--compact-grid .grove-canvas-card { display: grid; grid-template-columns: 130px minmax(0,1fr); gap: .9rem; padding-bottom: .9rem; border-bottom: 1px solid var(--grove-border); }
.grove-posts-canvas--compact-grid .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--compact-grid .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--compact-grid .grove-canvas-card__media img { aspect-ratio: 4 / 3; }

/* Full feature. */
.grove-posts-canvas--full .grove-posts-canvas__items { grid-template-columns: 1fr; }
.grove-posts-canvas--full .grove-canvas-card { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); min-height: 460px; }
.grove-posts-canvas--full .grove-canvas-card__media,
.grove-posts-canvas--full .grove-canvas-card__media img { height: 100%; }
.grove-posts-canvas--full .grove-canvas-card__media img { aspect-ratio: auto; }
.grove-posts-canvas--full .grove-canvas-card__content { display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(1.5rem,4vw,4rem); }

/* Tile geometry. Content is always rendered above the image. */
.grove-posts-canvas[class*="--tiles-"] .grove-posts-canvas__items { grid-auto-flow: dense; grid-auto-rows: minmax(170px, auto); }
.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card { min-height: 280px; }
.grove-posts-canvas--tiles-1 .grove-canvas-card:first-child { grid-column: span 2; grid-row: span 2; min-height: 580px; }
.grove-posts-canvas--tiles-2 .grove-canvas-card:first-child { grid-column: span 2; min-height: 420px; }
.grove-posts-canvas--tiles-2 .grove-canvas-card:nth-child(2) { grid-row: span 2; min-height: 580px; }
.grove-posts-canvas--tiles-3 .grove-canvas-card:first-child { grid-column: span 3; min-height: 440px; }
.grove-posts-canvas--tiles-3 .grove-canvas-card:nth-child(2),
.grove-posts-canvas--tiles-3 .grove-canvas-card:nth-child(3) { grid-column: span 2; }
.grove-posts-canvas--tiles-4 .grove-canvas-card:first-child { grid-column: span 2; grid-row: span 2; min-height: 580px; }
.grove-posts-canvas--tiles-4 .grove-canvas-card:nth-child(4) { grid-column: span 2; }
.grove-posts-canvas--tiles-5 .grove-canvas-card:nth-child(1),
.grove-posts-canvas--tiles-5 .grove-canvas-card:nth-child(4) { grid-column: span 2; }
.grove-posts-canvas--tiles-6 .grove-canvas-card:first-child { grid-column: 1 / -1; min-height: 440px; }

/* Ranked rail. */
.grove-posts-canvas--ranked .grove-canvas-card { display: grid; grid-template-columns: 48px 92px minmax(0,1fr); align-items: center; padding: .8rem 0; border-bottom: 1px solid var(--grove-border); }
.grove-canvas-card__rank { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 999px; background: var(--grove-canvas-accent); color: var(--grove-accent-contrast,#fff); font-family: var(--wp--preset--font-family--space-grotesk,sans-serif); font-size: .72rem; font-weight: 800; }
.grove-posts-canvas--ranked .grove-canvas-card__media { margin-right: .85rem; }
.grove-posts-canvas--ranked .grove-canvas-card__media img { aspect-ratio: 1; }
.grove-posts-canvas--ranked .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--ranked .grove-canvas-card__excerpt,
.grove-posts-canvas--ranked .grove-canvas-card__meta,
.grove-posts-canvas--ranked .grove-canvas-card__terms { display: none; }
.grove-posts-canvas--ranked .grove-canvas-card__title { font-size: .84rem; }

/* Video cards. */
.grove-posts-canvas--video-strip .grove-canvas-card__media::after { content: "▶"; position: absolute; left: .8rem; bottom: .8rem; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 999px; background: rgba(255,255,255,.92); color: #08090a; font-size: .72rem; box-shadow: 0 8px 24px rgba(0,0,0,.18); }
.grove-posts-canvas--video-strip .grove-canvas-card__excerpt { display: none; }

/* Native, dependency-free sliders. */
.is-grove-slider .grove-posts-canvas__viewport { overflow: hidden; }
.is-grove-slider .grove-posts-canvas__items { display: flex; gap: var(--grove-canvas-gap); overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-inline: contain; }
.is-grove-slider .grove-posts-canvas__items::-webkit-scrollbar { display: none; }
.is-grove-slider .grove-canvas-card { flex: 0 0 calc((100% - (var(--grove-canvas-visible) - 1) * var(--grove-canvas-gap)) / var(--grove-canvas-visible)); scroll-snap-align: start; }
.grove-posts-canvas__controls { display: flex; justify-content: flex-end; gap: .45rem; margin: 0 0 .75rem; }
.grove-slider-button { display: inline-grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 1px solid var(--grove-border,#d9dbde); border-radius: 999px; background: var(--grove-surface,#fff); color: var(--grove-text,#08090a); font: inherit; cursor: pointer; transition: transform 180ms ease, opacity 180ms ease; }
.grove-slider-button:hover { transform: translateY(-2px); }
.grove-slider-button:disabled { opacity: .3; cursor: default; transform: none; }
.grove-posts-canvas__dots { display: flex; justify-content: center; gap: .4rem; margin-top: 1rem; }
.grove-posts-canvas__dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 999px; background: color-mix(in srgb, var(--grove-text) 24%, transparent); cursor: pointer; transition: width 180ms ease, background 180ms ease; }
.grove-posts-canvas__dots button[aria-current="true"] { width: 24px; background: var(--grove-canvas-accent); }
.grove-posts-canvas__empty { padding: 1.25rem 0; color: var(--grove-muted); }

@media (max-width: 1100px) {
	.grove-posts-canvas__items { grid-template-columns: repeat(var(--grove-canvas-tablet-columns), minmax(0,1fr)); }
	.grove-posts-canvas--masonry .grove-posts-canvas__items { columns: var(--grove-canvas-tablet-columns); }
	.is-grove-slider .grove-canvas-card { flex-basis: calc((100% - (var(--grove-canvas-tablet-visible) - 1) * var(--grove-canvas-gap)) / var(--grove-canvas-tablet-visible)); }
	.grove-posts-canvas--newsroom .grove-posts-canvas__items { grid-template-columns: minmax(0,1.45fr) minmax(260px,.75fr); grid-template-rows: auto; gap: 1rem; }
	.grove-posts-canvas--newsroom .grove-canvas-card--1 { grid-column: 1; grid-row: 1 / 5; }
	.grove-posts-canvas--newsroom .grove-canvas-card--2 { grid-column: 2; grid-row: 1 / 3; margin: 0; }
	.grove-posts-canvas--newsroom .grove-canvas-card--3 { grid-column: 2; grid-row: 3 / 5; margin: 0; }
	.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) { grid-column: auto; grid-row: auto; grid-template-columns: 92px minmax(0,1fr); padding-left: 0; border-left: 0; }
	.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) { display: none; }
	.grove-posts-canvas--full .grove-canvas-card { min-height: 380px; grid-template-columns: minmax(0,1.1fr) minmax(260px,.9fr); }
}

@media (max-width: 782px) {
	.grove-posts-canvas__header { align-items: flex-start; }
	.grove-posts-canvas__items { grid-template-columns: repeat(var(--grove-canvas-mobile-columns), minmax(0,1fr)); }
	.grove-posts-canvas--masonry .grove-posts-canvas__items { columns: var(--grove-canvas-mobile-columns); }
	.is-grove-slider .grove-canvas-card { flex-basis: calc((100% - (var(--grove-canvas-mobile-visible) - 1) * var(--grove-canvas-gap)) / var(--grove-canvas-mobile-visible)); }
	.grove-posts-canvas--newsroom .grove-posts-canvas__items,
	.grove-posts-canvas--category-lead .grove-posts-canvas__items,
	.grove-posts-canvas--section-feature .grove-posts-canvas__items,
	.grove-posts-canvas--split-feature .grove-posts-canvas__items,
	.grove-posts-canvas--compact-grid .grove-posts-canvas__items { grid-template-columns: 1fr; }
	.grove-posts-canvas--newsroom .grove-canvas-card--1,
	.grove-posts-canvas--newsroom .grove-canvas-card--2,
	.grove-posts-canvas--newsroom .grove-canvas-card--3 { grid-column: 1; grid-row: auto; margin: 0; padding: 0 0 1rem; border: 0; border-bottom: 1px solid var(--grove-border); }
	.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__title { font-size: clamp(1.9rem,10vw,3.1rem); }
	.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) { display: grid; }
	.grove-posts-canvas--category-lead .grove-canvas-card--1,
	.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2),
	.grove-posts-canvas--section-feature .grove-canvas-card--1,
	.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2),
	.grove-posts-canvas--split-feature .grove-canvas-card:nth-child(n+3),
	.grove-posts-canvas--compact-grid .grove-canvas-card,
	.grove-posts-canvas--list .grove-canvas-card,
	.grove-posts-canvas--wide-1 .grove-canvas-card,
	.grove-posts-canvas--wide-2 .grove-canvas-card,
	.grove-posts-canvas--wide-3 .grove-canvas-card,
	.grove-posts-canvas--full .grove-canvas-card { grid-template-columns: 1fr; min-height: 0; grid-row: auto; grid-column: auto; padding-right: 0; border-right: 0; }
	.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__content,
	.grove-posts-canvas--full .grove-canvas-card__content { padding: 1rem 0 0; }
	.grove-posts-canvas--wide-1 .grove-canvas-card:nth-child(odd) .grove-canvas-card__media,
	.grove-posts-canvas--wide-3 .grove-canvas-card:nth-child(even) .grove-canvas-card__media { order: 0; }
	.grove-posts-canvas--list .grove-canvas-card__media img,
	.grove-posts-canvas--wide-1 .grove-canvas-card__media img,
	.grove-posts-canvas--wide-2 .grove-canvas-card__media img,
	.grove-posts-canvas--wide-3 .grove-canvas-card__media img,
	.grove-posts-canvas--full .grove-canvas-card__media img { height: auto; aspect-ratio: 16 / 10; }
	.grove-posts-canvas--ranked .grove-canvas-card { grid-template-columns: 42px 82px minmax(0,1fr); }
	.grove-posts-canvas[class*="--tiles-"] .grove-canvas-card { grid-column: auto !important; grid-row: auto !important; min-height: 320px; }
}

@media (max-width: 520px) {
	.grove-posts-canvas__header { display: block; }
	.grove-posts-canvas__link { margin-top: .8rem; }
	.grove-posts-canvas--ranked .grove-canvas-card { grid-template-columns: 40px 72px minmax(0,1fr); }
	.grove-posts-canvas--ranked .grove-canvas-card__title { font-size: .78rem; }
}

/* The complete Posts Canvas is intentionally frameless. This also neutralizes
   border styles saved by older Grove versions or applied by Global Styles. */
.wp-block-grove-posts-canvas.grove-posts-canvas,
.grove-posts-canvas {
	border: 0 !important;
	border-width: 0 !important;
	border-style: none !important;
	outline: 0 !important;
	box-shadow: none !important;
}

/* Grove 1.4 — spacious publication compositions. */
.grove-posts-canvas,
.grove-posts-canvas__viewport,
.grove-posts-canvas__items {
	border: 0 !important;
	border-width: 0 !important;
	border-style: none !important;
	outline: 0 !important;
	box-shadow: none !important;
}
.grove-posts-canvas { width: 100%; min-width: 0; background: transparent !important; }
.grove-posts-canvas--card-borderless .grove-canvas-card {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent;
}
.grove-posts-canvas--card-borderless .grove-canvas-card__content { padding: .95rem 0 0; }
.grove-canvas-card__title { line-height: 1.12; letter-spacing: -.026em; }
.grove-canvas-card__excerpt { margin-top: .55rem; line-height: 1.55; }
.grove-canvas-card__meta { margin-top: .75rem; }

/* Adaptive newsroom hero. */
.grove-posts-canvas--newsroom .grove-posts-canvas__items {
	display: grid;
	grid-template-columns: minmax(0, 1.62fr) minmax(250px, .72fr) minmax(250px, .72fr);
	grid-template-rows: repeat(4, minmax(108px, auto));
	column-gap: clamp(1.75rem, 2.8vw, 2.5rem);
	row-gap: 0;
	align-items: stretch;
}
.grove-posts-canvas--newsroom .grove-canvas-card--1 {
	grid-column: 1;
	grid-row: 1 / 5;
	padding: 0;
	border: 0;
}
.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__media img {
	aspect-ratio: 16 / 10.5;
}
.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__content { padding-top: 1.25rem; }
.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__title {
	max-width: 16ch;
	font-size: clamp(2.35rem, 3.6vw, 4.15rem);
	line-height: .98;
	letter-spacing: -.052em;
}
.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__excerpt {
	max-width: 64ch;
	font-size: .96rem;
	line-height: 1.55;
}
.grove-posts-canvas--newsroom .grove-canvas-card--2 {
	grid-column: 2;
	grid-row: 1 / 3;
	display: grid;
	min-height: 285px;
	margin: 0;
	border: 0;
	border-radius: var(--grove-canvas-radius);
	overflow: hidden;
	background: #111;
	color: #fff;
}
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__media,
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__content { grid-area: 1 / 1; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__media { height: 100%; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__media img { height: 100%; aspect-ratio: auto; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__content {
	align-self: end;
	z-index: 2;
	padding: 1.15rem;
	background: linear-gradient(180deg, transparent 12%, rgba(4,5,6,.92) 100%);
}
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__title { font-size: clamp(1.18rem, 1.55vw, 1.55rem); line-height: 1.06; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__meta { color: rgba(255,255,255,.72); }
.grove-posts-canvas--newsroom .grove-canvas-card--2 .grove-canvas-card__terms a { background: #fff; color: #08090a; }
.grove-posts-canvas--newsroom .grove-canvas-card--3 {
	grid-column: 2;
	grid-row: 3 / 5;
	margin: clamp(1.35rem, 2vw, 1.75rem) 0 0;
	padding: clamp(1.35rem, 2vw, 1.75rem) 0 0;
	border: 0;
	border-top: 1px solid var(--grove-border);
}
.grove-posts-canvas--newsroom .grove-canvas-card--3 .grove-canvas-card__media img { aspect-ratio: 16 / 9; }
.grove-posts-canvas--newsroom .grove-canvas-card--3 .grove-canvas-card__title { font-size: clamp(1.05rem, 1.35vw, 1.35rem); }
.grove-posts-canvas--newsroom .grove-canvas-card--3 .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) {
	grid-column: 3;
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	gap: 1rem;
	align-items: center;
	padding: 1rem 0;
	border: 0;
	border-bottom: 1px solid var(--grove-border);
}
.grove-posts-canvas--newsroom .grove-canvas-card--4 { grid-row: 1; }
.grove-posts-canvas--newsroom .grove-canvas-card--5 { grid-row: 2; }
.grove-posts-canvas--newsroom .grove-canvas-card--6 { grid-row: 3; }
.grove-posts-canvas--newsroom .grove-canvas-card--7 { grid-row: 4; border-bottom: 0; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__media img { aspect-ratio: 1; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__content { padding: 0; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__terms,
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__excerpt,
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__meta > *:not(time) { display: none; }
.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) .grove-canvas-card__title { font-size: .92rem; line-height: 1.16; }

/* Adapt to short test sites without preserving empty rails. */
.grove-posts-canvas--newsroom.grove-posts-canvas--count-1 .grove-posts-canvas__items { grid-template-columns: minmax(0, 1fr); }
.grove-posts-canvas--newsroom.grove-posts-canvas--count-1 .grove-canvas-card--1 { grid-column: 1; grid-row: auto; max-width: 900px; }
.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-posts-canvas__items,
.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-posts-canvas__items {
	grid-template-columns: minmax(0, 1.48fr) minmax(280px, .72fr);
	grid-template-rows: auto;
	column-gap: clamp(1.75rem, 3vw, 2.75rem);
}
.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-canvas-card--1,
.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-canvas-card--1 { grid-column: 1; grid-row: 1 / 3; }
.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-canvas-card--2,
.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-canvas-card--2 { grid-column: 2; grid-row: 1; }
.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-canvas-card--3 { grid-column: 2; grid-row: 2; }
.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-canvas-card--2 { min-height: 420px; }

/* Category opener. */
.grove-posts-canvas--category-lead .grove-posts-canvas__items {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(1.6rem, 2.8vw, 2.5rem);
}
.grove-posts-canvas--category-lead .grove-canvas-card--1 {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr);
	min-height: 420px;
	padding: 0 0 clamp(2rem, 4vw, 3rem);
	border: 0;
	border-bottom: 1px solid var(--grove-border);
}
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__media,
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__media img { height: 100%; }
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__media img { aspect-ratio: auto; }
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(1.75rem, 4vw, 3.75rem);
}
.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__title {
	font-size: clamp(2rem, 3.25vw, 3.65rem);
	line-height: 1;
	letter-spacing: -.045em;
}
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) {
	display: grid;
	grid-template-columns: minmax(150px, 42%) minmax(0,1fr);
	gap: 1.25rem;
	padding: 0;
	border: 0;
}
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) .grove-canvas-card__content { padding: 0; align-self: center; }
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) .grove-canvas-card__excerpt { display: none; }
.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) .grove-canvas-card__title { font-size: clamp(1.05rem, 1.45vw, 1.4rem); }

/* Publication section: one calm feature and a compact supporting column. */
.grove-posts-canvas--section-feature .grove-posts-canvas__items {
	grid-template-columns: minmax(0, 1.42fr) minmax(270px, .78fr);
	grid-auto-rows: auto;
	gap: 0 clamp(1.75rem, 3vw, 2.75rem);
}
.grove-posts-canvas--section-feature .grove-canvas-card--1 {
	grid-row: 1 / 4;
	padding: 0;
	border: 0;
}
.grove-posts-canvas--section-feature .grove-canvas-card--1 .grove-canvas-card__title {
	max-width: 18ch;
	font-size: clamp(1.75rem, 2.65vw, 3rem);
	line-height: 1;
}
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) {
	grid-column: 2;
	display: grid;
	grid-template-columns: 120px minmax(0,1fr);
	gap: 1rem;
	align-items: center;
	padding: 1rem 0;
	border: 0;
	border-bottom: 1px solid var(--grove-border);
}
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2):last-child { border-bottom: 0; }
.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) .grove-canvas-card__title { font-size: .98rem; line-height: 1.16; }

/* Carousels and video grids get more breathing room. */
.is-grove-slider .grove-posts-canvas__items { gap: max(1.25rem, var(--grove-canvas-gap)); }
.grove-posts-canvas--video-strip .grove-canvas-card__title { font-size: clamp(1rem, 1.25vw, 1.22rem); }
.grove-posts-canvas--ranked .grove-canvas-card {
	grid-template-columns: 42px 82px minmax(0,1fr);
	padding: 1rem 0;
	border: 0;
	border-bottom: 1px solid var(--grove-border);
}
.grove-posts-canvas--ranked .grove-canvas-card:last-child { border-bottom: 0; }
.grove-posts-canvas--ranked .grove-canvas-card__title { font-size: .88rem; line-height: 1.18; }

@media (max-width: 1120px) {
	.grove-posts-canvas--newsroom .grove-posts-canvas__items {
		grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr);
		grid-template-rows: auto;
		gap: 1.75rem;
	}
	.grove-posts-canvas--newsroom .grove-canvas-card--1 { grid-column: 1; grid-row: 1 / 4; }
	.grove-posts-canvas--newsroom .grove-canvas-card--2 { grid-column: 2; grid-row: 1; }
	.grove-posts-canvas--newsroom .grove-canvas-card--3 { grid-column: 2; grid-row: 2; margin-top: 0; }
	.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) { display: none; }
	.grove-posts-canvas--category-lead .grove-canvas-card--1 { grid-template-columns: minmax(0, 1fr) minmax(310px, .9fr); }
}

@media (max-width: 782px) {
	.grove-posts-canvas--newsroom .grove-posts-canvas__items,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-posts-canvas__items,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-posts-canvas__items,
	.grove-posts-canvas--category-lead .grove-posts-canvas__items,
	.grove-posts-canvas--section-feature .grove-posts-canvas__items { grid-template-columns: 1fr; gap: 1.75rem; }
	.grove-posts-canvas--newsroom .grove-canvas-card--1,
	.grove-posts-canvas--newsroom .grove-canvas-card--2,
	.grove-posts-canvas--newsroom .grove-canvas-card--3,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-canvas-card--1,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-canvas-card--1,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-2 .grove-canvas-card--2,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-canvas-card--2,
	.grove-posts-canvas--newsroom.grove-posts-canvas--count-3 .grove-canvas-card--3,
	.grove-posts-canvas--section-feature .grove-canvas-card--1,
	.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) {
		grid-column: 1;
		grid-row: auto;
	}
	.grove-posts-canvas--newsroom .grove-canvas-card--1 .grove-canvas-card__title { font-size: clamp(2rem, 10vw, 3.25rem); }
	.grove-posts-canvas--newsroom .grove-canvas-card--2 { min-height: 330px; }
	.grove-posts-canvas--newsroom .grove-canvas-card--3 { padding-top: 0; border-top: 0; }
	.grove-posts-canvas--newsroom .grove-canvas-card:nth-child(n+4) { display: grid; grid-template-columns: 86px minmax(0,1fr); grid-column: 1; }
	.grove-posts-canvas--category-lead .grove-canvas-card--1,
	.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) { grid-template-columns: 1fr; min-height: 0; }
	.grove-posts-canvas--category-lead .grove-canvas-card--1 .grove-canvas-card__content { padding: 1.2rem 0 0; }
	.grove-posts-canvas--category-lead .grove-canvas-card:nth-child(n+2) .grove-canvas-card__content { padding-top: .8rem; }
	.grove-posts-canvas--section-feature .grove-canvas-card:nth-child(n+2) { grid-template-columns: 110px minmax(0,1fr); }
}

/* Ensure the lead story establishes the full hero height instead of overflowing
   into the following module when supporting stories are very short. */
@media (min-width: 1121px) {
	.grove-posts-canvas--newsroom .grove-posts-canvas__items {
		grid-template-rows: repeat(4, minmax(130px, auto));
		min-height: 560px;
	}
}
