/* ============================================================
   League of Cooking (Limoncella-style) — category/archive pages.
   MEASURED from Limoncella's category archive (/category/all-recipes/
   breakfast/) 2026-07-19: breadcrumb, H1, description paragraph, 4-column
   grid (was 3), minimal cards (image + multi-category pipe label + title
   only - no excerpt, no author/date, no "read more").
   ============================================================ */

/* ---- Archive hero band: breadcrumb + H1 + description ---- */
.archive .entry-hero,
.category .entry-hero {
	background: var(--lim-surface-alt);
}
.archive .archive-title,
.category .archive-title {
	font-family: var(--lim-font-heading); color: var(--lim-ink-dark);
}
.archive .archive-description,
.category .archive-description {
	max-width: 720px; color: var(--lim-ink); font-size: 17px; line-height: 1.6;
}
.kadence-breadcrumbs, .kadence-breadcrumbs a { color: var(--lim-ink); font-family: var(--lim-font-body); }
.kadence-breadcrumbs a:hover { color: var(--lim-accent); }

/* ---- Archive grid: force 4 columns @1440 (MEASURED - was 3) ---- */
@media (min-width: 1200px) {
	.kadence-posts-list.grid-lg-col-3 {
		grid-template-columns: repeat(4, 1fr) !important;
	}
}
.kadence-posts-list {
	column-gap: var(--lim-space-6);
	row-gap: var(--lim-space-8);
}

/* Fix 2026-07-20: was 4/5 (0.8) - a real re-measurement of the live reference
   (every card image on the actual Limoncella site, archive AND homepage,
   measures 0.75) shows 3/4 is the correct, exact match - and now matches our
   own homepage cards too (previously 4/3 landscape, also fixed). */
/* Fix 2026-07-20 (owner-flagged regression): the OUTER .post-thumbnail
   wrapper still carried Kadence's own fixed/computed height (~194px,
   landscape) with overflow:hidden - it was clipping the correctly-sized
   3/4 inner image down to a short landscape crop. Found by comparing
   getBoundingClientRect() on the img (reported 3/4 correctly) against the
   actual visible/rendered crop in a screenshot, which didn't match -
   proof the ancestor, not the image itself, was the real clipping culprit. */
.kadence-posts-list .post-thumbnail {
	aspect-ratio: 3 / 4 !important;
	height: auto !important;
	padding-top: 0 !important;
}
.kadence-posts-list .post-thumbnail-inner {
	aspect-ratio: 3 / 4 !important;
	padding-top: 0 !important;
	height: auto !important;
}
.kadence-posts-list .post-thumbnail-inner img {
	position: static !important;
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 0.3s ease-in-out;
}
.kadence-posts-list .post-thumbnail:hover .post-thumbnail-inner img { transform: scale(1.05); }

.kadence-posts-list .entry.content-bg,
.kadence-posts-list article.entry {
	border: 1px solid var(--lim-border);
	border-radius: var(--lim-radius-button);
	box-shadow: none;
}

/* Minimal card body: MEASURED - Limoncella shows no excerpt, no author/date,
   no "read more" link on archive cards. Hide those, keep category label +
   title only (matching the homepage's lim-card treatment). */
.kadence-posts-list .entry-content-wrap p,
.kadence-posts-list .entry-meta,
.kadence-posts-list .more-link-container,
.kadence-posts-list .entry-content-wrap .entry-content {
	display: none !important;
}
.kadence-posts-list .entry-title {
	font-family: var(--lim-font-heading); font-size: 17px; line-height: 1.3; margin-top: var(--lim-space-1);
	/* Fix 2026-07-20: an SEO-keyword-stuffed real post title ("Banana Pudding
	   Cookies Recipe | Snacks to Bake, How to Make...") wrapped to 4 lines and
	   visibly stretched its whole grid row taller than its neighbors - found via
	   real-browser visual inspection of the Dessert archive. Clamp to 2 lines so
	   an outlier title can't break row-height consistency; full title stays in
	   the anchor's title attribute/on the post page itself. */
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
	overflow: hidden;
}
.kadence-posts-list .entry-title a { color: var(--lim-ink-dark); }
.kadence-posts-list .entry-title a:hover { color: var(--lim-accent); }

/* Multi-category pipe label (MEASURED: "ALL RECIPES | Breakfast") - added
   via ::before so the existing single-category output doesn't need a PHP
   template override for this cosmetic prefix. */
.kadence-posts-list .entry-taxonomies .category-links {
	font-family: var(--lim-font-heading); font-size: 12px; font-weight: 600;
	text-transform: uppercase; letter-spacing: .5px; color: var(--lim-accent);
}
.kadence-posts-list .entry-taxonomies .category-links::before {
	content: "All Recipes | ";
}
.kadence-posts-list .entry-taxonomies a { color: var(--lim-accent); text-decoration: none; }
.kadence-posts-list .entry-taxonomies a:hover { text-decoration: underline; }

/* ---- Pagination ---- */
.pagination .page-numbers {
	font-family: var(--lim-font-body); border: 1px solid var(--lim-border); border-radius: var(--lim-radius-small);
	color: var(--lim-ink-dark);
}
.pagination .page-numbers.current { background: var(--lim-accent); color: #fff; border-color: var(--lim-accent); }
.pagination .page-numbers:hover { background: var(--lim-accent); color: #fff; }

@media (max-width: 1024px) {
	.kadence-posts-list.grid-lg-col-3 { grid-template-columns: repeat(2, 1fr) !important; }
}

/* ============================================================
   SINGLE RECIPE POST TEMPLATE (Phase 6)
   Preserves 100% of existing post content/data - restyles only
   the surrounding layout: title/meta, jump/print buttons, WPRM
   recipe card, related-posts carousel, comments, prev/next nav,
   and the sidebar. Right-sidebar layout enabled via Customizer
   (Posts/Pages Layout -> Single Post Layout -> Default Post
   Layout -> Right Sidebar), 2026-07-19.
   ============================================================ */

/* ---- Category pipe-label + title + byline (MEASURED pattern
   reused from archive cards: accent, uppercase, small-caps label) ---- */
.single-post .entry-taxonomies .category-links {
	font-family: var(--lim-font-heading); font-size: 12px; font-weight: 600;
	text-transform: uppercase; letter-spacing: .5px; color: var(--lim-accent);
}
.single-post .entry-taxonomies .category-links::before { content: "All Recipes | "; }
.single-post .entry-title {
	font-family: var(--lim-font-heading); color: var(--lim-ink-dark);
}
@media (max-width: 480px) {
	/* Fix 2026-07-20: paired with the Craving-DNA-bar mobile shrink in
	   home.css - a real long post title (5-6 wrapped lines at 32px/48px
	   line-height) still pushed past the fixed bar on initial load. A
	   slightly smaller mobile H1 buys back space for every long title,
	   not just this one, without hurting readability of short titles. */
	.single-post .entry-title { font-size: 26px; line-height: 1.3; }
}
.single-post .entry-meta,
.single-post .entry-meta a {
	font-family: var(--lim-font-body); color: var(--lim-ink); font-size: 14px;
}
.kadence-breadcrumbs, .kadence-breadcrumbs a { color: var(--lim-ink); font-family: var(--lim-font-body); font-size: 13px; }
.kadence-breadcrumbs a:hover { color: var(--lim-accent); }

/* ---- Jump to Recipe / Print buttons (WPRM inline styles use
   #000000 - override with !important to match brand accent) ---- */
.single-post .wprm-recipe-jump,
.single-post .wprm-recipe-print {
	background-color: var(--lim-accent) !important;
	border-color: var(--lim-accent) !important;
	border-radius: var(--lim-radius-button) !important;
}
.single-post .wprm-recipe-jump:hover,
.single-post .wprm-recipe-print:hover {
	background-color: var(--lim-accent-hover) !important;
	border-color: var(--lim-accent-hover) !important;
}

/* ---- WPRM recipe card (Manage Templates colors are inline -
   override with !important, scoped to this theme only) ---- */
.wprm-recipe-container .wprm-recipe-template-cutout-header {
	background: var(--lim-surface-alt) !important;
}
.wprm-recipe-container .wprm-recipe-name,
.wprm-recipe-container .wprm-recipe-summary,
.wprm-recipe-container .wprm-recipe-details-label,
.wprm-recipe-container .wprm-recipe-details,
.wprm-recipe-container .wprm-recipe-details-unit,
.wprm-recipe-container .wprm-recipe-course,
.wprm-recipe-container .wprm-recipe-cuisine,
.wprm-recipe-container .wprm-recipe-keyword,
.wprm-recipe-container .wprm-recipe-time,
.wprm-recipe-container .wprm-recipe-servings {
	color: var(--lim-ink-dark) !important;
}
.wprm-recipe-container .wprm-recipe-name { font-family: var(--lim-font-heading) !important; }
.wprm-recipe-container .wprm-recipe-header {
	font-family: var(--lim-font-heading) !important; color: var(--lim-ink-dark) !important;
	border-bottom: 2px solid var(--lim-border) !important;
}
.wprm-recipe-container .wprm-recipe-print,
.wprm-recipe-container .wprm-recipe-pin,
.wprm-recipe-container .wprm-recipe-jump-to-comments {
	background-color: var(--lim-surface-alt) !important;
	color: var(--lim-ink-dark) !important;
	border-color: var(--lim-border) !important;
	border-radius: var(--lim-radius-small) !important;
}
.wprm-recipe-container .wprm-recipe-details-label { color: var(--lim-ink-muted) !important; }
.wprm-recipe-container .wprm-recipe-servings-adjustable-tooltip,
.wprm-recipe-container a { color: var(--lim-accent); }

/* ---- Post navigation (prev/next) ---- */
.post-navigation { border-top: 1px solid var(--lim-border); border-bottom: 1px solid var(--lim-border); }
.post-navigation .nav-links a { color: var(--lim-ink-dark); font-family: var(--lim-font-body); }
.post-navigation .nav-links a:hover { color: var(--lim-accent); }
.post-navigation-sub small { color: var(--lim-accent); text-transform: uppercase; font-size: 12px; letter-spacing: .5px; }

/* ---- "Similar Posts" -> compact 4-card treatment (MEASURED
   requirement: no large excerpt cards - image + pipe-label +
   title only, matching the archive/homepage card style) ---- */
.entry-related-title {
	font-family: var(--lim-font-heading); color: var(--lim-ink-dark); text-align: center;
}
.entry-related .kadence-posts-list.grid-lg-col-2 {
	grid-template-columns: repeat(4, 1fr) !important;
}
.entry-related .entry-summary,
.entry-related .entry-meta,
.entry-related .entry-actions {
	display: none !important;
}
.entry-related .post-thumbnail-inner img { transition: transform 0.3s ease-in-out; }
.entry-related .post-thumbnail:hover .post-thumbnail-inner img { transform: scale(1.05); }
.entry-related .entry-taxonomies .category-links {
	font-family: var(--lim-font-heading); font-size: 11px; font-weight: 600;
	text-transform: uppercase; letter-spacing: .5px; color: var(--lim-accent);
}
.entry-related .entry-taxonomies .category-links::before { content: "All Recipes | "; }
.entry-related .entry-title {
	font-family: var(--lim-font-heading); font-size: 15px; color: var(--lim-ink-dark);
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.entry-related .splide__arrow svg { fill: var(--lim-ink-dark); }
.entry-related .splide__pagination__page.is-active { background: var(--lim-accent); }
@media (max-width: 1024px) {
	.entry-related .kadence-posts-list.grid-lg-col-2 { grid-template-columns: repeat(2, 1fr) !important; }
}

/* ---- Comments ---- */
.comments-area, .comment-respond {
	border-top: 1px solid var(--lim-border);
}
.comment-reply-title, .comments-title {
	font-family: var(--lim-font-heading); color: var(--lim-ink-dark);
}
.comment-form input[type="text"], .comment-form input[type="email"],
.comment-form input[type="url"], .comment-form textarea {
	border: 1px solid var(--lim-border); border-radius: var(--lim-radius-small);
	font-family: var(--lim-font-body);
}
.comment-form input[type="submit"] {
	background-color: var(--lim-accent); border-color: var(--lim-accent);
	border-radius: var(--lim-radius-button); color: #fff;
}
.comment-form input[type="submit"]:hover { background-color: var(--lim-accent-hover); }

/* ---- Sidebar (right sidebar, single-post layout) ----
   Content is 100% real, existing widgets (kept from prior theme):
   Meet Amelia mini-card w/ real photo, About link, Search,
   Categories, Recent Posts, real Pinterest follow links, and a
   real newsletter opt-in form. Restyled only - no new content. */
/* Updated 2026-07-22 — MEASURED on the reference: the SIDEBAR is the white
   panel (with the theme's standard 0 0 7px rgba(0,0,0,.05) shadow) and the
   widgets inside it are transparent, separated by the striped rule further
   down this file. We had it inverted: a transparent sidebar with a bordered
   white card drawn around every widget, which is what made the column read as
   a stack of boxes instead of one continuous panel. */
.primary-sidebar.widget-area {
	position: sticky; top: 100px;
	background: var(--lim-surface);
	box-shadow: 0 0 7px 0 rgba(0, 0, 0, .05);
	border-radius: var(--lim-radius-button);
	overflow: hidden;
}
.primary-sidebar .widget {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: var(--lim-space-5);
	margin-bottom: 0;
}
.primary-sidebar .widget-title,
.primary-sidebar .uagb-heading-text {
	font-family: var(--lim-font-heading); color: var(--lim-ink-dark);
	font-size: 15px; text-transform: uppercase; letter-spacing: .5px;
	text-align: center;
}
/* Meet Amelia info-box: keep its own 20px-radius card, just align
   spacing with the rest of the sidebar rhythm */
.primary-sidebar .wp-block-kadence-infobox { margin-top: 0; }
.primary-sidebar .kt-blocks-info-box-title { font-family: var(--lim-font-heading); color: var(--lim-ink-dark); }
.primary-sidebar .kt-blocks-info-box-text { font-family: var(--lim-font-body); color: var(--lim-ink); font-size: 14px; }
/* About Me button */
.primary-sidebar .uagb-buttons-repeater {
	background: var(--lim-accent) !important; border-color: var(--lim-accent) !important;
	border-radius: var(--lim-radius-button) !important; width: 100%; text-align: center;
	justify-content: center;
}
.primary-sidebar .uagb-buttons-repeater:hover { background: var(--lim-accent-hover) !important; }
/* Search widget - Kadence positions .search-submit absolute (right:0),
   overlaying the field, so pad the field instead of fighting the flow */
.primary-sidebar .search-form { position: relative; }
.primary-sidebar .search-form .search-field {
	border: 1px solid var(--lim-border); border-radius: var(--lim-radius-small);
	font-family: var(--lim-font-body); width: 100%; box-sizing: border-box;
	padding-right: 56px !important;
}
.primary-sidebar .search-form .search-submit {
	background: var(--lim-accent) !important; font-size: 0; color: transparent; border-radius: 0 var(--lim-radius-small) var(--lim-radius-small) 0 !important;
	position: absolute !important; right: 0; top: 0; height: 100% !important; width: 50px !important;
}
.primary-sidebar .search-form .kadence-search-icon-wrap { color: #fff; }
/* Fix 2026-07-20 (owner feedback): the plain-text Categories list read as bare
   text with no imagery. Replaced with [lim_sidebar_categories] — real per-item
   photo + label rows.
   Updated 2026-07-22: Recent Posts no longer shares these row styles. It now
   renders the reference's 2-column card grid instead (.lim-sidebar-favs, at the
   bottom of this file), so every .lim-sidebar-recent* selector was removed here
   rather than left as dead weight. */
.lim-sidebar-cats { display: flex; flex-direction: column; gap: var(--lim-space-1); }
.lim-sidebar-cats__item {
	display: flex; align-items: center; gap: var(--lim-space-3);
	padding: var(--lim-space-2) 0; border-bottom: 1px solid var(--lim-border);
	text-decoration: none; font-family: var(--lim-font-body);
}
.lim-sidebar-cats__item:last-child { border-bottom: none; }
.lim-sidebar-cats__img {
	flex: 0 0 auto; width: 48px; height: 48px; border-radius: var(--lim-radius-circle);
	overflow: hidden; border: 1px solid var(--lim-border);
}
.lim-sidebar-cats__img img { width: 100%; height: 100%; object-fit: cover; }
.lim-sidebar-cats__name { flex: 1; color: var(--lim-ink-dark); font-size: 14px; line-height: 1.35; }
.lim-sidebar-cats__count { flex: 0 0 auto; font-size: 12px; color: var(--lim-ink-muted); }
.lim-sidebar-cats__item:hover .lim-sidebar-cats__name { color: var(--lim-accent); }
/* Follow Us social links */
.primary-sidebar .wp-block-social-links { justify-content: center; }
.primary-sidebar .wp-block-social-link a { background-color: var(--lim-ink-dark) !important; }
.primary-sidebar .wp-block-social-link:hover a { background-color: var(--lim-accent) !important; }
/* Newsletter form */
.primary-sidebar .uagb-forms-main-form input[type="text"],
.primary-sidebar .uagb-forms-main-form input[type="email"] {
	border: 1px solid var(--lim-border); border-radius: var(--lim-radius-small); width: 100%;
}
.primary-sidebar .uagb-forms-main-form button,
.primary-sidebar .uagb-forms-main-form input[type="submit"] {
	background: var(--lim-accent); color: #fff; border-radius: var(--lim-radius-button); width: 100%;
}
.primary-sidebar .uagb-forms-main-form button:hover { background: var(--lim-accent-hover); }

@media (max-width: 1024px) {
	.primary-sidebar.widget-area { position: static; }
}

/* ============================================================
   ADDED 2026-07-22 — the four signature single-post content styles from the
   reference theme's own style.css that had never been ported. Confirmed
   missing both by grep and by computed style on a live staging post before
   writing this (content links rendered as a plain 400-weight underline, ul
   markers were #555 instead of the accent, and there were zero
   counter-increment rules anywhere in the child theme).
   Values copied from the reference's style.css, its palette variables mapped
   onto our tokens.
   ============================================================ */

/* ---- 1. Content link "swipe" underline ----
   Reference paints a highlight block over the bottom 20% of the line and grows
   it to fill on hover. It also removes the underline and sets weight 700 — ours
   were plain underlined 400-weight body text. */
.single .entry-content-wrap p a,
.single .entry-content-wrap ul li a,
.single .entry-content-wrap ol li a {
	color: var(--lim-ink-dark);
	font-weight: 700;
	cursor: pointer;
	background-image: linear-gradient(180deg, transparent 80%, var(--lim-blush) 0);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	text-decoration: none;
	transition: background-image .4s ease;
}
.single .entry-content-wrap p a:hover,
.single .entry-content-wrap ul li a:hover,
.single .entry-content-wrap ol li a:hover {
	background-image: linear-gradient(180deg, transparent 0%, var(--lim-blush) 0);
}
/* Keep the swipe off UI chrome that happens to live inside the content wrap —
   recipe-card buttons, jump/print links, share buttons. */
.single .entry-content-wrap p a.wp-block-button__link,
.single .entry-content-wrap p a.lim-btn,
.single .entry-content-wrap .wprm-recipe a,
.single .entry-content-wrap .wprm-call-to-action a,
.single .entry-content-wrap a.wprm-jump-to-recipe-shortcode,
.single .entry-content-wrap a.wprm-print-recipe-shortcode {
	background-image: none;
	font-weight: inherit;
}

/* ---- 2. Ordered-list number badges ----
   Reference replaces the native marker with a counter rendered as a 28px
   rounded accent square sitting out in the left margin. */
.single .entry-content-wrap ol,
.single .entry-content ol {
	position: relative;
	list-style-type: none;
	margin-left: 0;
	padding-left: 38px; /* clears the badge, which is pulled into the margin */
}
.single .entry-content-wrap ol:not(.is-style-continue-list),
.single .entry-content ol:not(.is-style-continue-list) {
	counter-reset: countlist;
}
.single .entry-content-wrap ol > li,
.single .entry-content ol > li {
	margin: .5em 0 .5rem;
	counter-increment: countlist;
	position: relative;
	list-style-type: none;
	padding: 0;
	text-indent: 0;
}
.single .entry-content-wrap ol > li::before,
.single .entry-content ol > li::before {
	content: counter(countlist);
	color: var(--lim-surface);
	font-family: var(--lim-font-heading);
	font-size: .85rem;
	font-weight: 700;
	position: absolute;
	--size: 28px;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 4px;
	background: var(--lim-accent);
	border-radius: var(--lim-radius-button);
	text-align: center;
	padding: 0;
}
/* The recipe card renders its own numbered instruction steps — leave it alone. */
.single .entry-content-wrap .wprm-recipe ol { padding-left: 0; }
.single .entry-content-wrap .wprm-recipe ol > li { counter-increment: none; }
.single .entry-content-wrap .wprm-recipe ol > li::before { display: none; }

/* ---- 3. Accent-coloured list markers ---- */
.single .entry-content-wrap ul,
.single .entry-content ul { margin-left: 0; }
.single .entry-content-wrap ul > li,
.single .entry-content ul > li { list-style-type: disc; }
.single .entry-content-wrap ul > li::marker,
.single .entry-content ul > li::marker { color: var(--lim-accent); }
.single .entry-content-wrap .wprm-recipe ul { padding-left: 0; }

/* ---- 4. Author box ----
   Reference: white card, 3px highlight top border, soft shadow, avatar pulled
   up over the top edge with a thick white ring. */
.entry-author-style-normal,
.entry-author-style-center {
	background: var(--lim-surface);
	border-top: 3px solid var(--lim-blush);
	border-bottom: 0 !important;
	padding: 15px;
	position: relative;
	box-shadow: 0 0 7px 0 rgba(0, 0, 0, .05);
}
.entry-author-style-center { margin-top: 45px !important; }
.entry-author-avatar img { width: 100px; }
.entry-author-style-normal .entry-author-avatar { left: 0; top: -50px; }
.entry-author-style-normal .entry-author-avatar img,
.entry-author-style-center .entry-author-avatar img {
	border-radius: 50%;
	border: 4px solid var(--lim-surface);
	box-shadow: 0 0 7px 0 rgba(0, 0, 0, .1);
}
.entry-author-style-center .entry-author-avatar { margin: -50px auto 0; }
.entry-author-style-center .entry-author-avatar::before,
.entry-author-style-center .entry-author-avatar::after { display: none !important; }
.entry-author-style-normal .entry-author-profile { padding-left: 130px; }
.entry-author-description { font-size: 16px; font-family: var(--lim-font-body); }
.entry-author-name, .entry-author-name a {
	font-family: var(--lim-font-heading); color: var(--lim-ink-dark); font-weight: 700;
}

/* ============================================================
   SIDEBAR REBUILD 2026-07-22 (owner-flagged: "why he is not like original").
   Measured against the reference sidebar (360px wide, 11 widgets). These are
   the pieces that made ours read as a different component.
   ============================================================ */

/* ---- Uniform widget titles ----
   Ours were three different sizes (28px title-case on the author card, 20px on
   the lists, 15px on "Follow Us"). Reference is one treatment throughout:
   Work Sans 700, 20px, uppercase, letterspaced, centred. */
.primary-sidebar .widget-title,
.primary-sidebar .uagb-heading-text,
.primary-sidebar .wp-block-heading {
	font-family: var(--lim-font-heading);
	color: var(--lim-ink-dark);
	font-size: 20px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: center;
}

/* ---- The ribbon banner ----
   The reference's signature sidebar element: the author name sits in a solid
   band with V-notched ends, white bold uppercase, overlapping the bottom of the
   photo above it. In the reference this is a `.label-navy` utility whose shape
   comes from an SVG background (measured 20px / 700 / uppercase / centred,
   50px tall, 250px wide, white text). We cut the notches with clip-path rather
   than shipping Restored316's SVG. The band is our palette5 sage rather than
   the reference's navy — sage is this scheme's equivalent solid brand band and
   already carries the same white-on-colour label pattern as the homepage
   category tiles. */
.primary-sidebar .kt-blocks-info-box-title {
	position: relative;
	z-index: 2;
	display: block;
	width: 250px;
	max-width: 100%;
	height: 50px;
	margin: -25px auto 14px !important;
	padding: 10px !important;
	box-sizing: border-box;
	/* BRIGHT PASS 2026-08-31: matched to the homepage category tile label —
	   near-white plate, dark type, clay underline (was a solid sage plate with
	   white type, the two are the same component in two places). */
	background: rgba(255, 255, 255, 0.95);
	color: var(--lim-ink-dark) !important;
	border-bottom: 3px solid var(--lim-accent);
	box-shadow: 0 2px 10px var(--lim-shadow);
	font-family: var(--lim-font-heading);
	font-size: 20px;
	font-weight: 700;
	line-height: 30px;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	clip-path: polygon(0 0, 100% 0, calc(100% - 15px) 50%, 100% 100%, 0 100%, 15px 50%);
}

/* ---- Author photo: full-bleed, not a 100px circle ----
   Kadence's infobox ships per-block inline CSS (max-width:100px on the image
   container, border-radius:200px plus a 5px ring on the media box, and a -75px
   pull-up) at higher specificity than a plain class selector AND printed after
   this file. Each override below targets one of those inline rules — the
   !important flags are load-bearing here, not convenience. */
/* The author photo runs edge-to-edge in the reference, so this one widget drops
   the padding every other widget keeps. */
.primary-sidebar .widget:has(.wp-block-kadence-infobox) { padding: 0; }
.primary-sidebar .wp-block-kadence-infobox .kt-blocks-info-box-link-wrap {
	padding: 0 !important;
	margin-top: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	overflow: hidden;
}
.primary-sidebar .wp-block-kadence-infobox .kt-blocks-info-box-media-container {
	margin: 0 !important;
}
.primary-sidebar .wp-block-kadence-infobox .kt-blocks-info-box-media {
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}
.primary-sidebar .wp-block-kadence-infobox .kadence-info-box-image-inner-intrisic-container {
	max-width: 100% !important;
}
.primary-sidebar .wp-block-kadence-infobox .kadence-info-box-image-intrisic {
	padding-bottom: 78% !important; /* landscape crop, matching the reference */
	width: 100% !important;
	height: 0 !important;
}
.primary-sidebar .wp-block-kadence-infobox .kt-info-box-image {
	width: 100%; height: 100%; object-fit: cover; border-radius: 0 !important;
}
.primary-sidebar .wp-block-kadence-infobox .kt-infobox-textcontent {
	padding: 0 var(--lim-space-4) var(--lim-space-4);
}
.primary-sidebar .kt-blocks-info-box-text {
	font-family: var(--lim-font-body); color: var(--lim-ink);
	font-size: 14px; text-align: center;
}

/* ---- "About Me": text link with a circled arrow, not a solid button ---- */
.primary-sidebar .uagb-buttons-repeater {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	color: var(--lim-ink-dark) !important;
	justify-content: center;
	gap: 8px;
}
.primary-sidebar .uagb-buttons-repeater:hover { background: transparent !important; }
/* UAGB prints its own per-block CSS (`.uagb-block-<hash> .uagb-buttons-repeater
   .uagb-button__link{color:#fff}`) for what used to be a solid button. That
   selector ties this one on specificity and lands later, so without
   !important the label stays white — i.e. invisible now that the button
   background is transparent. Caught by computed style, not by eye. */
.primary-sidebar .uagb-buttons-repeater .uagb-button__link {
	font-family: var(--lim-font-heading);
	font-size: 16px; font-weight: 600; letter-spacing: .3px;
	color: var(--lim-ink-dark) !important;
	text-decoration: none;
	transition: color .2s ease;
}
.primary-sidebar .uagb-buttons-repeater:hover .uagb-button__link { color: var(--lim-accent) !important; }
.primary-sidebar .uagb-buttons-repeater .uagb-button__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 24px; height: 24px; border-radius: 50%;
	border: 1.5px solid var(--lim-ink-dark);
	color: var(--lim-ink-dark);
	transition: border-color .2s ease, color .2s ease, transform .2s ease;
}
/* UAGB emits its arrow with `xmlns="https://www.w3.org/2000/svg"` — the SVG
   namespace is defined as http://, not https://, so the browser refuses to
   render it and the circle came out empty. It's the plugin's markup, not
   something we can correct from CSS, so the broken glyph is hidden and the
   chevron is drawn from borders instead. */
.primary-sidebar .uagb-buttons-repeater .uagb-button__icon svg { display: none; }
.primary-sidebar .uagb-buttons-repeater .uagb-button__icon::after {
	content: '';
	width: 5px; height: 5px;
	border-top: 1.5px solid currentColor;
	border-right: 1.5px solid currentColor;
	transform: rotate(45deg);
	margin-left: -2px;
}
.primary-sidebar .uagb-buttons-repeater:hover .uagb-button__icon {
	border-color: var(--lim-accent); color: var(--lim-accent); transform: translateX(2px);
}

/* ---- Decorative striped divider between widgets ----
   Reference separates widgets with a thin double rule instead of the card
   border we were drawing around every widget. */
.primary-sidebar .widget + .widget::before {
	content: '';
	display: block;
	height: 5px;
	margin: 0 0 var(--lim-space-6);
	border-top: 1px solid var(--lim-border);
	border-bottom: 1px solid var(--lim-border);
}

/* ---- "Other Reader Favs" 2-column card grid ----
   Pairs with the markup change in inc/home-sections.php. */
.lim-sidebar-favs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--lim-space-6) var(--lim-space-4);
}
.lim-sidebar-favs__item { display: block; text-decoration: none; }
.lim-sidebar-favs__img {
	display: block; overflow: hidden; margin-bottom: var(--lim-space-2);
	aspect-ratio: 4 / 3; border-radius: var(--lim-radius-small);
}
.lim-sidebar-favs__img img {
	width: 100%; height: 100%; object-fit: cover; display: block;
	transition: transform .3s ease-in-out;
}
.lim-sidebar-favs__item:hover .lim-sidebar-favs__img img { transform: rotate(2deg) scale(1.04); }
.lim-sidebar-favs__title {
	display: block;
	font-family: var(--lim-font-heading);
	font-size: 14px; font-weight: 700; line-height: 1.35;
	color: var(--lim-ink-dark);
	transition: color .2s ease;
}
.lim-sidebar-favs__item:hover .lim-sidebar-favs__title { color: var(--lim-accent); }
