/**
 * The Kosher Cookbook, site-wide skin ("Bubbe's Kitchen" design).
 * Everything is scoped to body.tkc-v2, which mu-plugins/tkc-redesign.php adds.
 *
 * @package TheKosherCookbook
 */

:root {
	--tkc-paper: #FBF6EC;
	--tkc-paper-2: #F3E9D8;
	--tkc-card: #FFFDF8;
	--tkc-ink: #2E2420;
	--tkc-ink-soft: #6A5A50;
	--tkc-line: #E6D7C0;
	--tkc-brick: #9A3F2E;
	--tkc-brick-dark: #7A2F22;
	--tkc-sage: #4F7570;
	--tkc-sage-dark: #2F4B47;
	--tkc-honey: #C8963E;

	--tkc-meat: #9A3F2E;
	--tkc-dairy: #3D6B94;
	--tkc-pareve: #5E8A4E;

	--tkc-serif: "Fraunces", Georgia, "Times New Roman", serif;
	--tkc-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--tkc-hand: "Caveat", "Segoe Print", cursive;

	--tkc-r: 12px;
	--tkc-shadow: 0 14px 34px -14px rgba(74, 46, 30, 0.32);
	--tkc-t: 0.25s ease;
}

/* ==========================================================================
   Base
   ========================================================================== */

body.tkc-v2,
.tkc-v2 button,
.tkc-v2 input,
.tkc-v2 select,
.tkc-v2 textarea {
	font-family: var(--tkc-sans);
}

body.tkc-v2 {
	color: var(--tkc-ink);
	background-color: var(--tkc-paper);
	-webkit-font-smoothing: antialiased;
}

.tkc-v2.ast-separate-container,
.tkc-v2 .site-content { background-color: var(--tkc-paper); }

.tkc-v2 h1, .tkc-v2 h2, .tkc-v2 h3, .tkc-v2 h4,
.tkc-v2 .entry-content h1, .tkc-v2 .entry-content h2, .tkc-v2 .entry-content h3, .tkc-v2 .entry-content h4,
.tkc-v2 .entry-title {
	font-family: var(--tkc-serif) !important;
	color: var(--tkc-ink);
	letter-spacing: -0.01em;
}

.tkc-v2 a { color: var(--tkc-brick); }
.tkc-v2 a:hover, .tkc-v2 a:focus { color: var(--tkc-brick-dark); }

.tkc-v2 ::selection { background: rgba(200, 150, 62, 0.35); }

.tkc-v2 :focus-visible { outline: 2px solid var(--tkc-honey); outline-offset: 3px; }

.tkc-script { font-family: var(--tkc-hand); font-weight: 500; line-height: 1.1; }

.tkc-ornament { display: flex; justify-content: center; color: var(--tkc-honey); }
.tkc-ornament--light { color: #E7C27F; }

/* Buttons and chips (shared with the homepage) */

.tkc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 26px;
	border-radius: 999px;
	font-family: var(--tkc-sans);
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	text-decoration: none;
	transition: background var(--tkc-t), color var(--tkc-t), transform var(--tkc-t), box-shadow var(--tkc-t);
}
.tkc-v2 .tkc-btn--primary { background: var(--tkc-brick); color: #FFF8EE; box-shadow: 0 8px 18px -8px rgba(122, 47, 34, 0.7); }
.tkc-v2 .tkc-btn--primary:hover { background: var(--tkc-brick-dark); color: #FFF8EE; transform: translateY(-2px); }
.tkc-v2 .tkc-btn--ghost { color: var(--tkc-ink); box-shadow: inset 0 0 0 1.5px var(--tkc-ink); }
.tkc-v2 .tkc-btn--ghost:hover { background: var(--tkc-ink); color: var(--tkc-paper); }

.tkc-chip {
	--kc: var(--tkc-ink-soft);
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 5px 12px 5px 10px;
	border-radius: 999px;
	background: var(--tkc-card);
	border: 1px solid var(--tkc-line);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: var(--tkc-ink);
	text-decoration: none;
}
.tkc-chip::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--kc); }
.tkc-chip--meat { --kc: var(--tkc-meat); }
.tkc-chip--dairy { --kc: var(--tkc-dairy); }
.tkc-chip--pareve { --kc: var(--tkc-pareve); }
.tkc-v2 a.tkc-chip { color: var(--tkc-ink); }
.tkc-v2 a.tkc-chip:hover { border-color: var(--kc); color: var(--kc); }

/* ==========================================================================
   Ribbon + header
   ========================================================================== */

.tkc-ribbon {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 6px 14px;
	padding: 8px 16px;
	background: var(--tkc-sage-dark);
	color: #EFE5D3;
	font-size: 0.78rem;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-align: center;
}
.tkc-ribbon__sep { color: #E7C27F; font-size: 0.7rem; }

.tkc-v2 #masthead,
.tkc-v2 .main-header-bar,
.tkc-v2 .ast-primary-header-bar,
.tkc-v2 .ast-mobile-header-wrap .ast-primary-header-bar {
	background-color: var(--tkc-paper) !important;
	border-bottom: 0;
}

/* Desktop: logo centred like a cookbook cover, search tucked to the right */
@media (min-width: 922px) {
	.tkc-v2 .ast-primary-header-bar .site-primary-header-wrap > .ast-builder-grid-row { position: relative; justify-content: center; }
	.tkc-v2 .ast-primary-header-bar .site-header-primary-section-left { flex: 1; justify-content: center; }
	.tkc-v2 .ast-primary-header-bar .site-header-primary-section-right { position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
	.tkc-v2 .ast-primary-header-bar { padding: 10px 0 6px; }
	.tkc-v2 .site-logo-img .custom-logo { max-width: 112px; width: 112px; height: auto; }
}

/* The logo art sits on an off-white (#F6F5F1) box: brighten that to pure white, then multiply it away into the paper. */
.tkc-v2 .site-logo-img .custom-logo,
.tkc-v2 .tkc-bubbe-art { mix-blend-mode: multiply; filter: brightness(1.04); }

/* Menu bar: double rule like a printed cookbook */
.tkc-v2 .ast-below-header-bar {
	background: var(--tkc-paper) !important;
	border-top: 1px solid var(--tkc-line) !important;
	border-bottom: 0 !important;
	box-shadow: inset 0 -1px 0 var(--tkc-line), inset 0 -4px 0 var(--tkc-paper), inset 0 -5px 0 var(--tkc-line);
}
@media (min-width: 922px) {
	.tkc-v2 .ast-below-header-bar .ast-builder-grid-row { justify-content: center; }
	.tkc-v2 .ast-below-header-bar .site-header-below-section-left { flex: 1; justify-content: center; }
}

.tkc-v2 .main-header-menu .menu-link,
.tkc-v2 .main-header-menu > .menu-item > .menu-link {
	font-family: var(--tkc-sans);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--tkc-ink) !important;
}
.tkc-v2 .main-header-menu > .menu-item > .menu-link { position: relative; }
.tkc-v2 .main-header-menu > .menu-item > .menu-link::after {
	/* a little hand-drawn underline on hover */
	content: "";
	position: absolute;
	left: 50%;
	bottom: 8px;
	width: 0;
	height: 6px;
	transform: translateX(-50%);
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 6' preserveAspectRatio='none'%3E%3Cpath d='M1 4c10-3 20-3 29-1s19 2 29-1' fill='none' stroke='%239A3F2E' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
	transition: width var(--tkc-t);
}
.tkc-v2 .main-header-menu > .menu-item:hover > .menu-link::after,
.tkc-v2 .main-header-menu > .current-menu-item > .menu-link::after { width: calc(100% - 24px); }
.tkc-v2 .main-header-menu > .current-menu-item > .menu-link,
.tkc-v2 .main-header-menu .menu-link:hover { color: var(--tkc-brick) !important; }

.tkc-v2 .main-header-menu .sub-menu {
	background: var(--tkc-card);
	border: 1px solid var(--tkc-line) !important;
	border-radius: 0 0 10px 10px;
	box-shadow: var(--tkc-shadow);
}
.tkc-v2 .main-header-menu .sub-menu .menu-link { text-transform: none; letter-spacing: 0; font-size: 0.92rem; font-weight: 500; }

.tkc-v2 .ast-mobile-menu-trigger-minimal svg,
.tkc-v2 .menu-toggle svg { fill: var(--tkc-ink) !important; }
.tkc-v2 .ast-header-search .astra-search-icon,
.tkc-v2 .ast-header-search .ast-icon,
.tkc-v2 .menu-toggle,
.tkc-v2 .ast-mobile-menu-trigger-minimal { color: var(--tkc-ink) !important; }
.tkc-v2 .ast-header-search .search-field { background: var(--tkc-card); border: 1px solid var(--tkc-line); border-radius: 999px; }

.tkc-v2 #ast-mobile-header .ast-mobile-header-content,
.tkc-v2 .ast-mobile-popup-drawer .ast-mobile-popup-inner { background: var(--tkc-card) !important; }

/* ==========================================================================
   Single recipe posts
   ========================================================================== */

.tkc-v2.single .ast-article-single,
.tkc-v2.page .ast-article-single,
.tkc-v2.ast-separate-container .ast-article-single:not(.ast-related-post) {
	background: var(--tkc-card);
	border: 1px solid var(--tkc-line);
	border-radius: 16px;
	box-shadow: 0 30px 60px -40px rgba(74, 46, 30, 0.35);
}

.tkc-v2 .ast-breadcrumbs,
.tkc-v2 .ast-breadcrumbs a {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--tkc-sage);
	text-decoration: none;
}
.tkc-v2 .ast-breadcrumbs .trail-end { color: var(--tkc-ink-soft); }

.tkc-v2.single .entry-title {
	font-size: clamp(2rem, 4.4vw, 2.9rem);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -0.02em;
}
.tkc-v2.single .entry-header::after {
	content: "";
	display: block;
	width: 120px;
	height: 28px;
	margin: 14px 0 6px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 28' fill='none' stroke='%23C8963E' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M4 14h30M86 14h30'/%3E%3Cpath d='M47 14c4-6 9-6 13 0-4 6-9 6-13 0zM73 14c-4-6-9-6-13 0 4 6 9 6 13 0z'/%3E%3Ccircle cx='38' cy='14' r='1.6' fill='%23C8963E'/%3E%3Ccircle cx='82' cy='14' r='1.6' fill='%23C8963E'/%3E%3Cpath d='M60 4.5l2.2 3.3 3.8-.9-1.1 3.8 3.1 2.3-3.1 2.3 1.1 3.8-3.8-.9L60 23.5l-2.2-3.3-3.8.9 1.1-3.8-3.1-2.3 3.1-2.3-1.1-3.8 3.8.9z'/%3E%3C/svg%3E") left center / contain no-repeat;
}
.tkc-v2 .entry-meta,
.tkc-v2 .entry-meta a,
.tkc-v2 .entry-meta a *,
.tkc-v2 .entry-meta .posted-on * { color: var(--tkc-ink-soft) !important; font-size: 0.88rem; }
.tkc-v2 .entry-meta a:hover,
.tkc-v2 .entry-meta a:hover * { color: var(--tkc-brick) !important; }

.tkc-v2.single .entry-content { font-size: 1.07rem; line-height: 1.8; color: #3B302A; }
.tkc-v2.single .entry-content > h2 {
	margin-top: 2em;
	font-size: 1.6rem;
	font-weight: 600;
}
.tkc-v2.single .entry-content > h2::before {
	content: "";
	display: block;
	width: 36px;
	height: 3px;
	margin-bottom: 12px;
	border-radius: 2px;
	background: var(--tkc-honey);
}
.tkc-v2 .entry-content a:not(.wprm-recipe-link):not(.tkc-btn) { text-decoration-color: rgba(154, 63, 46, 0.35); text-underline-offset: 3px; }

/* Jump / print buttons at the top of posts */
.tkc-v2 .wprm-recipe-snippet a.wprm-recipe-link,
.tkc-v2 .wprm-recipe-snippet a.wprm-recipe-jump,
.tkc-v2 .wprm-recipe-snippet a.wprm-recipe-print {
	padding: 9px 18px !important;
	border-radius: 999px !important;
	border: 0 !important;
	background: var(--tkc-brick) !important;
	color: #FFF8EE !important;
	font-family: var(--tkc-sans);
	font-weight: 700;
	font-size: 0.85rem;
	letter-spacing: 0.02em;
	text-decoration: none;
}
.tkc-v2 .wprm-recipe-snippet a.wprm-recipe-print { background: transparent !important; color: var(--tkc-ink) !important; box-shadow: inset 0 0 0 1.5px var(--tkc-ink); }
.tkc-v2 .wprm-recipe-snippet a .wprm-recipe-icon svg * { fill: currentColor; stroke: currentColor; }

/* Kosher type badge above content */
.tkc-v2 .tkc-kosher-type { margin: 6px 0 18px; }
.tkc-v2 .tkc-kt {
	--kc: var(--tkc-ink-soft);
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 6px 14px 6px 12px !important;
	border-radius: 999px !important;
	background: var(--tkc-card) !important;
	border: 1px solid var(--tkc-line) !important;
	color: var(--tkc-ink) !important;
	font-family: var(--tkc-sans);
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em;
	text-decoration: none;
}
.tkc-v2 .tkc-kt::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--kc); }
.tkc-v2 .tkc-kt-meat { --kc: var(--tkc-meat); }
.tkc-v2 .tkc-kt-dairy { --kc: var(--tkc-dairy); }
.tkc-v2 .tkc-kt-pareve { --kc: var(--tkc-pareve); }
.tkc-v2 .tkc-kt-fish { --kc: var(--tkc-sage); }

/* ==========================================================================
   Recipe card (WP Recipe Maker): an index card from Bubbe's box
   ========================================================================== */

.tkc-v2 .wprm-recipe-container .wprm-recipe:not(.wprm-recipe-snippet) {
	position: relative;
	background: var(--tkc-card) !important;
	border: 1px solid var(--tkc-line) !important;
	border-radius: 14px !important;
	box-shadow: 0 24px 50px -30px rgba(74, 46, 30, 0.45) !important;
	font-family: var(--tkc-sans);
	overflow: visible;
}
.tkc-v2 .wprm-recipe-container .wprm-recipe:not(.wprm-recipe-snippet)::before {
	/* stitched inner border, like an embroidered challah cover */
	content: "";
	position: absolute;
	inset: 8px;
	border: 1.5px dashed rgba(200, 150, 62, 0.5);
	border-radius: 9px;
	pointer-events: none;
}
.tkc-v2 .wprm-recipe-container .wprm-recipe:not(.wprm-recipe-snippet)::after {
	content: "From Bubbe's recipe box";
	position: absolute;
	top: -17px;
	left: 50%;
	transform: translateX(-50%) rotate(-1.5deg);
	padding: 2px 18px;
	background: var(--tkc-paper-2);
	border: 1px solid var(--tkc-line);
	border-radius: 4px;
	font-family: var(--tkc-hand);
	font-size: 1.35rem;
	color: var(--tkc-brick);
	white-space: nowrap;
}
.tkc-v2 .wprm-recipe .wprm-recipe-header,
.tkc-v2 .wprm-recipe h3.wprm-recipe-header {
	font-family: var(--tkc-serif) !important;
	font-weight: 600 !important;
	color: var(--tkc-ink) !important;
	letter-spacing: -0.01em;
}
.tkc-v2 .wprm-recipe .wprm-recipe-ingredients-header,
.tkc-v2 .wprm-recipe .wprm-recipe-instructions-header { border-bottom: 1px solid var(--tkc-line); padding-bottom: 8px; }
.tkc-v2 .wprm-recipe .wprm-recipe-ingredient { line-height: 1.6; margin-bottom: 6px !important; }
.tkc-v2 .wprm-recipe .wprm-recipe-ingredient-amount,
.tkc-v2 .wprm-recipe .wprm-recipe-ingredient-unit { font-weight: 700; color: var(--tkc-brick); }
.tkc-v2 .wprm-recipe .wprm-recipe-instruction { line-height: 1.75; margin-bottom: 14px !important; }
.tkc-v2 .wprm-recipe .wprm-recipe-instructions { counter-reset: tkc-step; }
.tkc-v2 .wprm-recipe .wprm-recipe-instruction::marker { font-family: var(--tkc-serif); font-weight: 700; color: var(--tkc-brick); }
.tkc-v2 .wprm-recipe .wprm-recipe-details-label,
.tkc-v2 .wprm-recipe .wprm-recipe-time-label { color: var(--tkc-sage) !important; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; font-size: 0.72rem !important; }
.tkc-v2 .wprm-recipe .wprm-recipe-time,
.tkc-v2 .wprm-recipe .wprm-recipe-details { font-family: var(--tkc-serif); color: var(--tkc-ink); }
.tkc-v2 .wprm-recipe .wprm-recipe-notes-container { padding: 16px 18px; background: var(--tkc-paper); border-left: 3px solid var(--tkc-honey); border-radius: 0 8px 8px 0; }
.tkc-v2 .wprm-recipe a.wprm-recipe-link:not(.wprm-recipe-jump):not(.wprm-recipe-print) { border-radius: 999px !important; }
.tkc-v2 .wprm-recipe .wprm-recipe-print { border-radius: 999px !important; background: var(--tkc-brick) !important; border-color: var(--tkc-brick) !important; color: #FFF8EE !important; }
.tkc-v2 .wprm-recipe .wprm-recipe-image img { border-radius: 10px; }

/* Meadow template pieces: olive pills and the grey-green method panel */
.tkc-v2 .wprm-recipe .wprm-recipe-meta-container-pill {
	background: var(--tkc-paper-2) !important;
	border: 1px solid var(--tkc-line) !important;
	color: var(--tkc-ink) !important;
}
.tkc-v2 .wprm-recipe .wprm-recipe-meta-container-pill * { color: var(--tkc-ink) !important; }
.tkc-v2 .wprm-recipe .wprm-recipe-meta-container-pill .wprm-recipe-details-label,
.tkc-v2 .wprm-recipe .wprm-recipe-meta-container-pill .wprm-recipe-tag-label { color: var(--tkc-sage) !important; }
.tkc-v2 .wprm-recipe .meadow-main { background: var(--tkc-paper) !important; border-radius: 0 0 13px 13px; }
.tkc-v2 .wprm-recipe .wprm-internal-container-ingredients { background: var(--tkc-card) !important; border: 1px solid var(--tkc-line); }
.tkc-v2 .wprm-recipe a.wprm-recipe-jump-to-section { background: var(--tkc-card) !important; border: 1px solid var(--tkc-line) !important; color: var(--tkc-ink) !important; }
.tkc-v2 .wprm-recipe a.wprm-recipe-pin { background: transparent !important; color: var(--tkc-ink) !important; border-color: var(--tkc-ink) !important; }

/* Nutrition label: keep it FDA-plain but on the card colour */
.tkc-v2 .tkc-nutrition-label { background: #fff; border-color: var(--tkc-ink); }

/* ==========================================================================
   AI disclosure note + related recipes
   ========================================================================== */

.tkc-v2 .tkc-disclosure {
	margin: 2.4em 0 0 !important;
	padding: 16px 20px !important;
	background: var(--tkc-paper) !important;
	border: 1px dashed var(--tkc-line) !important;
	border-radius: 10px !important;
	color: var(--tkc-ink-soft) !important;
	font-size: 0.9rem !important;
	line-height: 1.6;
}

.tkc-v2 .tkc-related-recipes__title { font-family: var(--tkc-serif) !important; font-weight: 600; text-align: center; }
.tkc-v2 .tkc-related-recipes__title::before {
	content: "Pull up a chair for one more";
	display: block;
	margin-bottom: 2px;
	font-family: var(--tkc-hand);
	font-size: 1.4rem;
	font-weight: 500;
	color: var(--tkc-brick);
}
.tkc-v2 .tkc-related-recipes__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 20px !important; }
@media (max-width: 480px) { .tkc-v2 .tkc-related-recipes__grid { grid-template-columns: 1fr !important; } }
.tkc-v2 .tkc-recipe-card {
	background: var(--tkc-paper) !important;
	border: 1px solid var(--tkc-line) !important;
	border-radius: var(--tkc-r) !important;
	box-shadow: none !important;
	overflow: hidden;
}
.tkc-v2 .tkc-recipe-card:hover { box-shadow: var(--tkc-shadow) !important; }
.tkc-v2 .tkc-recipe-card__title { font-family: var(--tkc-serif) !important; color: var(--tkc-ink) !important; }
.tkc-v2 .tkc-recipe-card__badge { background: rgba(255, 253, 248, 0.92) !important; color: var(--tkc-ink) !important; }
.tkc-v2 .tkc-recipe-card__cta { color: var(--tkc-brick) !important; }

/* Prev / next side buttons */
.tkc-v2 .tkc-side-nav__btn,
.tkc-v2 .tkc-side-nav__btn:hover { color: var(--tkc-brick); }
.tkc-v2 .tkc-side-nav__circle { background: var(--tkc-card); box-shadow: 0 0 0 1px var(--tkc-line), 0 6px 16px -6px rgba(74, 46, 30, 0.35); }
.tkc-v2 .tkc-side-nav__label { color: var(--tkc-ink-soft); }

/* Comments */
.tkc-v2 .comments-area,
.tkc-v2.ast-separate-container .comments-area .comment-respond { background: var(--tkc-card); border-radius: 16px; }
.tkc-v2 .comment-form .submit,
.tkc-v2 .ast-button,
.tkc-v2 button[type="submit"],
.tkc-v2 input[type="submit"] {
	background: var(--tkc-brick) !important;
	border-color: var(--tkc-brick) !important;
	color: #FFF8EE !important;
	border-radius: 999px !important;
	font-weight: 700;
}
.tkc-v2 .comment-form .submit:hover,
.tkc-v2 button[type="submit"]:hover,
.tkc-v2 input[type="submit"]:hover { background: var(--tkc-brick-dark) !important; }

/* ==========================================================================
   Plain pages (holiday roundups) and the About / Contact / legal templates
   ========================================================================== */

.tkc-v2.page.ast-plain-container:not(.home):not([class*="page-template-page-templates"]) .ast-article-single {
	max-width: 880px;
	margin: 40px auto 64px;
	padding: 48px 56px 56px;
}
.tkc-v2.page.ast-plain-container:not(.home) .entry-title { font-size: clamp(2rem, 4.4vw, 2.9rem); font-weight: 600; line-height: 1.12; }
.tkc-v2.page .entry-content > h2 { margin-top: 1.8em; font-size: 1.6rem; font-weight: 600; }
.tkc-v2.page .entry-content > h2::before {
	content: "";
	display: block;
	width: 36px;
	height: 3px;
	margin-bottom: 12px;
	border-radius: 2px;
	background: var(--tkc-honey);
}
.tkc-v2.page .entry-content { font-size: 1.05rem; line-height: 1.8; }
.tkc-v2.page .entry-content li { margin-bottom: 6px; }

.tkc-v2 .tkc-page { background: var(--tkc-paper) !important; }
.tkc-v2 .tkc-about__story,
.tkc-v2 .tkc-about__mission-item,
.tkc-v2 .tkc-about__list,
.tkc-v2 .tkc-contact__form,
.tkc-v2 .tkc-contact__info-card,
.tkc-v2 .tkc-contact__faq {
	background: var(--tkc-card) !important;
	border: 1px solid var(--tkc-line);
	box-shadow: none !important;
}
.tkc-v2 .tkc-about__cta { background: var(--tkc-sage-dark) !important; color: #F6EEDF !important; }
.tkc-v2 .tkc-about__cta h2 { color: #FBF6EC !important; }
.tkc-v2 .tkc-about__cta p { color: #E9DFCD !important; }
.tkc-v2 .tkc-button { background: var(--tkc-brick) !important; color: #FFF8EE !important; border-radius: 999px !important; }
.tkc-v2 .tkc-button:hover { background: var(--tkc-brick-dark) !important; }
.tkc-v2 .tkc-about__cta .tkc-button { background: #FBF6EC !important; color: var(--tkc-ink) !important; }
.tkc-v2 .tkc-form__group input,
.tkc-v2 .tkc-form__group select,
.tkc-v2 .tkc-form__group textarea { background-color: var(--tkc-paper) !important; border-color: var(--tkc-line) !important; }
.tkc-v2 .tkc-form__group input:focus,
.tkc-v2 .tkc-form__group select:focus,
.tkc-v2 .tkc-form__group textarea:focus { background-color: #FFFFFF !important; border-color: var(--tkc-brick) !important; }

@media (max-width: 680px) {
	.tkc-v2.page.ast-plain-container:not(.home):not([class*="page-template-page-templates"]) .ast-article-single { margin: 20px 12px 40px; padding: 28px 20px 32px; }
}

/* ==========================================================================
   Archives (categories, kosher types, search)
   ========================================================================== */

.tkc-v2 .ast-archive-description {
	background: transparent !important;
	border: 0 !important;
	text-align: center;
	padding-bottom: 8px !important;
}
.tkc-v2 .ast-archive-description .ast-archive-title {
	text-align: center !important;
	font-size: clamp(2.2rem, 5vw, 3.2rem) !important;
	font-weight: 600;
	letter-spacing: -0.02em;
}
.tkc-v2 .ast-archive-description .ast-archive-title::before {
	content: "From the recipe box";
	display: block;
	margin-bottom: 4px;
	font-family: var(--tkc-hand);
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--tkc-brick);
}
.tkc-v2 .ast-archive-description .ast-breadcrumbs-wrapper { display: flex; justify-content: center; }
.tkc-v2 .ast-archive-description p { max-width: 680px; margin-left: auto; margin-right: auto; color: var(--tkc-ink-soft); }

.tkc-v2.ast-separate-container .ast-article-post,
.tkc-v2 .ast-article-post .ast-article-inner {
	background: transparent !important;
	box-shadow: none !important;
}
.tkc-v2.archive .ast-article-post .post-content,
.tkc-v2.search .ast-article-post .post-content,
.tkc-v2.blog .ast-article-post .post-content {
	height: 100%;
	padding: 0 0 18px !important;
	background: var(--tkc-card);
	border: 1px solid var(--tkc-line);
	border-radius: var(--tkc-r);
	overflow: hidden;
	transition: transform var(--tkc-t), box-shadow var(--tkc-t);
}
.tkc-v2.archive .ast-article-post .post-content:hover,
.tkc-v2.search .ast-article-post .post-content:hover,
.tkc-v2.blog .ast-article-post .post-content:hover { transform: translateY(-3px); box-shadow: var(--tkc-shadow); }
.tkc-v2 .ast-article-post .post-content > *:not(.ast-blog-featured-section) { padding-left: 20px; padding-right: 20px; }
.tkc-v2 .ast-article-post .post-thumb img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; border-radius: 0; }
.tkc-v2 .ast-article-post .cat-links { margin-top: 16px; }
.tkc-v2 .ast-article-post .cat-links a {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--tkc-sage);
	text-decoration: none;
}
.tkc-v2 .ast-article-post .entry-title { font-size: 1.25rem; font-weight: 600; line-height: 1.3; }
.tkc-v2 .ast-article-post .entry-title a { color: var(--tkc-ink); text-decoration: none; }
.tkc-v2 .ast-article-post .entry-title a:hover { color: var(--tkc-brick); }
.tkc-v2 .ast-article-post .entry-meta { font-size: 0.8rem; }
.tkc-v2 .ast-article-post .ast-excerpt-container { color: var(--tkc-ink-soft); font-size: 0.95rem; line-height: 1.6; }

.tkc-v2 .ast-pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 42px;
	height: 42px;
	margin: 0 3px;
	border-radius: 999px;
	border: 1px solid var(--tkc-line);
	background: var(--tkc-card);
	color: var(--tkc-ink);
	font-weight: 700;
}
.tkc-v2 .ast-pagination .page-numbers.current,
.tkc-v2 .ast-pagination .page-numbers:hover { background: var(--tkc-brick); border-color: var(--tkc-brick); color: #FFF8EE; }

/* ==========================================================================
   Footer
   ========================================================================== */

.tkc-fband {
	position: relative;
	padding: 72px 24px 56px;
	background: var(--tkc-sage-dark);
	color: #E9DFCD;
}
.tkc-fband::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -1px;
	height: 14px;
	background: radial-gradient(circle at 12px 0, var(--tkc-paper) 11px, transparent 11.5px) 0 0 / 24px 14px repeat-x;
}
.tkc-fband__inner { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: 1fr 2fr; gap: 56px; }
.tkc-fband__roundel {
	position: relative;
	display: block;
	width: 112px;
	height: 112px;
	overflow: hidden;
	border-radius: 50%;
	background: #FFFFFF;
	box-shadow: 0 0 0 4px var(--tkc-sage-dark), 0 0 0 5px #E7C27F;
}
.tkc-fband__roundel img {
	/* show just Bubbe, not the wordmark under her */
	position: absolute;
	left: 50%;
	top: 0;
	width: 122%;
	max-width: none;
	height: auto;
	transform: translateX(-50%);
	filter: brightness(1.04);
}
.tkc-fband__script { margin: 18px 0 6px; font-family: var(--tkc-hand); font-size: 2rem; color: #E7C27F; line-height: 1; }
.tkc-fband__small { margin: 0; max-width: 340px; font-size: 0.9rem; line-height: 1.65; color: #CFC4B1; }
.tkc-fband__cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.tkc-fband__cols h2 {
	margin: 0 0 14px;
	font-family: var(--tkc-sans) !important;
	font-size: 0.75rem !important;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #E7C27F !important;
}
.tkc-fband__cols ul { margin: 0; padding: 0; list-style: none; }
.tkc-fband__cols li { margin: 0 0 9px; }
.tkc-v2 .tkc-fband__cols a { color: #F2EADB; text-decoration: none; font-size: 0.95rem; }
.tkc-v2 .tkc-fband__cols a:hover { color: #FFFFFF; text-decoration: underline; text-underline-offset: 3px; }

.tkc-v2 .site-footer,
.tkc-v2 .site-primary-footer-wrap,
.tkc-v2 .site-below-footer-wrap,
.tkc-v2 .site-above-footer-wrap {
	background: #243B37 !important;
	border-top: 0 !important;
	color: #B9AE9C;
}
.tkc-v2 .site-footer a,
.tkc-v2 .site-footer .menu-link { color: #D9CFBD !important; font-size: 0.85rem; }
.tkc-v2 .site-footer a:hover { color: #FFFFFF !important; }
.tkc-v2 .ast-footer-copyright { color: #B9AE9C; font-size: 0.85rem; }

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 921px) {
	.tkc-v2 .site-logo-img .custom-logo { max-width: 72px; }
	.tkc-fband__inner { grid-template-columns: 1fr; gap: 40px; text-align: center; }
	.tkc-fband__roundel { margin: 0 auto; }
	.tkc-fband__small { margin: 0 auto; }
	.tkc-fband__cols { grid-template-columns: repeat(2, 1fr); text-align: left; }
}

@media (max-width: 560px) {
	.tkc-ribbon { font-size: 0.72rem; }
	.tkc-ribbon__sep, .tkc-ribbon span:last-child { display: none; }
	.tkc-v2 .wprm-recipe-container .wprm-recipe:not(.wprm-recipe-snippet)::after { font-size: 1.15rem; }
}

@media (prefers-reduced-motion: reduce) {
	.tkc-v2 *, .tkc-v2 *::before, .tkc-v2 *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

@media print {
	.tkc-ribbon, .tkc-fband { display: none !important; }
	.tkc-v2 .wprm-recipe-container .wprm-recipe::before,
	.tkc-v2 .wprm-recipe-container .wprm-recipe::after { display: none !important; }
}
