/* =============================================================
   Kárpátok Forrása – Global Dark Theme
   ============================================================= */

:root {
	--kf-red-dark:   #B3122F;
	--kf-red:        #E63946;
	--kf-white-soft: #FFF5F5;
	--kf-white:      #F8FAF8;
	--kf-green-soft: #7FB77E;
	--kf-green:      #1F7A4D;
	--kf-green-dark: #163A2F;
	--kf-graphite:   #2A2A2A;
	--kf-black:      #050505;
	--kf-surface:    #0d0d0d;
	--kf-surface-2:  #141414;
	--kf-border:     rgba(255, 255, 255, .08);
	--kf-text:       #cfcfcf;
	--kf-text-muted: #888;
}

/* ─── Base ──────────────────────────────────────────────────── */

html {
	background:
		radial-gradient(circle at 20% 10%, rgba(230, 57, 70, 0.22), transparent 34%),
		radial-gradient(circle at 80% 80%, rgba(31, 122, 77, 0.26), transparent 36%),
		linear-gradient(160deg, #000 0%, #0a0a0a 45%, #0d1f17 100%);
	background-attachment: fixed;
	min-height: 100%;
}

body {
	background: transparent !important;
	color: var(--kf-text);
	font-family: Georgia, 'Times New Roman', serif;
}

/* ─── Header ────────────────────────────────────────────────── */

#masthead,
.site-header,
.ast-site-header-wrap,
.main-header-bar,
.ast-desktop-header,
.ast-header-break-point .ast-above-header,
.ast-above-header-wrap {
	background-color: rgba(5, 5, 5, .96) !important;
	border-bottom: 1px solid var(--kf-border) !important;
	box-shadow: none !important;
}

/* Site title – fehér "Kárpátok" + piros "Forrása" */
.site-title a,
.ast-site-identity .site-title a,
.site-title a:visited {
	font-size: 0 !important;
	color: transparent !important;
	text-decoration: none;
	letter-spacing: 0;
}

.ast-site-identity .site-title a::before,
.site-title a::before {
	content: 'Kárpátok';
	font-size: clamp(20px, 2.2vw, 28px);
	color: var(--kf-white);
	font-family: Georgia, 'Times New Roman', serif;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.ast-site-identity .site-title a::after,
.site-title a::after {
	content: ' Forrása';
	font-size: clamp(20px, 2.2vw, 28px);
	color: var(--kf-red);
	font-family: Georgia, 'Times New Roman', serif;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.ast-site-identity .site-title a:hover::before { color: var(--kf-white); }
.ast-site-identity .site-title a:hover::after  { color: var(--kf-red-dark); }

.site-description {
	color: var(--kf-text-muted) !important;
}

/* ─── Primary navigation ────────────────────────────────────── */

.main-navigation a,
.ast-primary-menu a,
#ast-primary-menu a,
.ast-nav-menu a,
.main-navigation ul li a {
	color: #d0d0d0 !important;
}

.main-navigation a:hover,
.ast-primary-menu a:hover,
#ast-primary-menu a:hover,
.ast-nav-menu a:hover {
	color: var(--kf-red) !important;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-page-ancestor > a,
.ast-primary-menu .current-menu-item > a,
#ast-primary-menu .current-menu-item > a {
	color: var(--kf-red) !important;
}

/* Dropdown sub-menu */
.main-navigation ul ul,
.ast-primary-menu ul ul,
#ast-primary-menu ul ul {
	background-color: #0a0a0a !important;
	border: 1px solid var(--kf-border) !important;
}

/* ─── Mobile / hamburger menu ───────────────────────────────── */

.ast-mobile-popup-inner,
.ast-flyout-menu-wrap,
.ast-header-break-point #ast-mobile-header {
	background-color: #080808 !important;
}

.ast-mobile-menu-trigger-minimal .menu-toggle-icon,
.ast-mobile-menu-trigger-minimal .menu-toggle-icon::before,
.ast-mobile-menu-trigger-minimal .menu-toggle-icon::after,
button.menu-toggle span {
	background-color: var(--kf-white) !important;
}

/* ─── Sticky footer layout ──────────────────────────────────── */

#page.site {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

#content.site-content {
	flex: 1 0 auto;
}

#colophon.site-footer {
	flex-shrink: 0;
}

/* ─── Content area ──────────────────────────────────────────── */

#content.site-content,
.site-content,
#page,
.ast-site-content-wrap,
.ast-flex-1 {
	background: transparent !important;
}

#primary {
	background: transparent !important;
}

/* ─── Entry (posts & pages) ─────────────────────────────────── */

.entry-content,
.entry-summary {
	color: var(--kf-text);
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 18px;
	line-height: 1.8;
}

.entry-content p,
.entry-summary p {
	color: var(--kf-text);
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	color: var(--kf-white);
	font-family: Georgia, 'Times New Roman', serif;
}

/* Entry header */
.entry-header,
.ast-single-post-header {
	background-color: transparent;
}

.entry-title,
.page-title,
h1.entry-title,
.ast-page-title {
	color: var(--kf-white);
	font-family: Georgia, 'Times New Roman', serif;
}

.entry-title a,
.ast-blog-single-element .entry-title a {
	color: var(--kf-white) !important;
}

.entry-title a:hover {
	color: var(--kf-red) !important;
}

/* ─── Global headings & typography ──────────────────────────── */

h1, h2, h3, h4, h5, h6 {
	color: var(--kf-white);
	font-family: Georgia, 'Times New Roman', serif;
}

/* ─── Links ─────────────────────────────────────────────────── */

a {
	color: var(--kf-green-soft);
}

a:hover,
a:focus {
	color: var(--kf-red);
}

/* ─── Blog archive / post listing ───────────────────────────── */

.ast-article-post,
article.type-post,
article.type-page {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 20px;
	padding: 32px;
	margin-bottom: 28px;
	transition: border-color .25s ease;
}

.ast-article-post:hover,
article.type-post:hover {
	border-color: rgba(127, 183, 126, .35);
}

/* Post meta */
.entry-meta,
.ast-blog-meta,
.ast-author-info,
.posted-on,
.byline,
.cat-links,
.tags-links,
.comments-link {
	color: var(--kf-text-muted);
}

.entry-meta a,
.cat-links a,
.tags-links a {
	color: var(--kf-green-soft) !important;
}

.entry-meta a:hover,
.cat-links a:hover,
.tags-links a:hover {
	color: var(--kf-red) !important;
}

/* ─── Single post wrapper ───────────────────────────────────── */

.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-inner-blog {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 20px;
}

/* ─── Sidebar ───────────────────────────────────────────────── */

.secondary,
.widget-area,
.ast-sidebar-wrap .secondary {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 28px;
}

.widget-title,
.widgettitle {
	color: var(--kf-white);
	font-family: Georgia, 'Times New Roman', serif;
}

.widget,
.widget p,
.widget li {
	color: var(--kf-text);
}

.widget a {
	color: var(--kf-green-soft);
}

.widget a:hover {
	color: var(--kf-red);
}

/* ─── Buttons ───────────────────────────────────────────────── */

.ast-button,
.ast-button-wrap .ast-button,
button,
input[type="submit"],
input[type="button"],
.wp-block-button__link {
	background-color: var(--kf-red-dark) !important;
	color: #fff !important;
	border-radius: 18px !important;
	border: none !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	font-size: 13px;
	transition: background-color .25s ease, transform .25s ease;
}

.ast-button:hover,
.ast-button-wrap .ast-button:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.wp-block-button__link:hover {
	background-color: var(--kf-red) !important;
	color: #fff !important;
	transform: translateY(-2px);
}

/* ─── Forms ─────────────────────────────────────────────────── */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea,
select {
	background-color: var(--kf-surface-2);
	border: 1px solid rgba(255, 255, 255, .14);
	color: var(--kf-white);
	border-radius: 12px;
	padding: 12px 16px;
}

input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
	border-color: var(--kf-green-soft);
	outline: none;
}

/* ─── Comments ──────────────────────────────────────────────── */

.comment-content,
.comment-body {
	color: var(--kf-text);
}

.comment-author .fn,
.comment-metadata a {
	color: var(--kf-white);
}

.comment-list .comment-body {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 24px;
}

/* ─── Pagination ────────────────────────────────────────────── */

.page-numbers,
.ast-pagination a,
.page-numbers.dots {
	color: var(--kf-white);
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 8px;
	padding: 8px 14px;
}

.page-numbers.current,
.page-numbers:hover:not(.dots) {
	background: var(--kf-red-dark);
	color: #fff;
	border-color: var(--kf-red-dark);
}

/* ─── Breadcrumbs ───────────────────────────────────────────── */

.ast-breadcrumbs,
.trail-items,
.trail-items li,
.trail-items a {
	color: var(--kf-text-muted);
}

.trail-items a:hover {
	color: var(--kf-red);
}

/* ─── Footer ────────────────────────────────────────────────── */

#colophon,
.site-footer,
.ast-small-footer,
.footer-widget-area,
.site-below-footer-wrap,
.ast-footer-overlay {
	background-color: var(--kf-surface) !important;
	border-top: 1px solid var(--kf-border) !important;
	color: var(--kf-text-muted) !important;
}

.site-footer a,
.ast-small-footer a,
#colophon a {
	color: var(--kf-green-soft) !important;
}

.site-footer a:hover,
.ast-small-footer a:hover,
#colophon a:hover {
	color: var(--kf-red) !important;
}

.footer-widget-area .widget-title,
#colophon .widget-title {
	color: var(--kf-white) !important;
}

/* ─── 404 / search pages ────────────────────────────────────── */

.error-404,
.no-results {
	text-align: center;
	padding: 80px 24px;
	color: var(--kf-text);
}

/* ─── Horizontal rules & borders ────────────────────────────── */

hr {
	border-color: var(--kf-border);
}

/* ─── Blockquote ────────────────────────────────────────────── */

blockquote {
	border-left: 3px solid var(--kf-red);
	background: var(--kf-surface);
	padding: 20px 24px;
	border-radius: 0 12px 12px 0;
	color: var(--kf-text);
	font-style: italic;
}

/* ─── Code ──────────────────────────────────────────────────── */

code,
pre {
	background: var(--kf-surface-2);
	border: 1px solid var(--kf-border);
	color: var(--kf-green-soft);
	border-radius: 8px;
}

/* ─── Table ─────────────────────────────────────────────────── */

table {
	border-collapse: collapse;
	width: 100%;
}

th {
	background: var(--kf-surface-2);
	color: var(--kf-white);
	border: 1px solid var(--kf-border);
	padding: 12px 16px;
}

td {
	border: 1px solid var(--kf-border);
	padding: 12px 16px;
	color: var(--kf-text);
}

tr:nth-child(even) td {
	background: rgba(255, 255, 255, .02);
}

/* ─── Scroll to top ─────────────────────────────────────────── */

.ast-scroll-top {
	background-color: var(--kf-red-dark) !important;
	color: #fff !important;
}

.ast-scroll-top:hover {
	background-color: var(--kf-red) !important;
}

/* ─── Blog / Archive – szélesség és margók ───────────────────── */

.blog .ast-container,
.archive .ast-container,
.category .ast-container,
.tag .ast-container,
.search .ast-container {
	max-width: 1240px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.blog #primary,
.archive #primary,
.category #primary,
.tag #primary,
.search #primary {
	padding-top: 72px;
	padding-bottom: 80px;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box;
}

/* ─── Blog / Archive – card grid ────────────────────────────── */

.kf-blog-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
}

/* ─── Blog card – base reset ─────────────────────────────────── */

.blog article.type-post,
.archive article.type-post,
.category article.type-post,
.tag article.type-post,
.search article.type-post {
	background: #000 !important;
	padding: 0 !important;
	margin-bottom: 50px !important;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.blog article.type-post:hover,
.archive article.type-post:hover,
.category article.type-post:hover,
.tag article.type-post:hover {
	border-color: rgba(127, 183, 126, .35);
	transform: translateY(-4px);
}

/* ─── Blog card – featured image ─────────────────────────────── */

.kf-blog-thumb {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	flex-shrink: 0;
}

.kf-blog-thumb a {
	display: block;
	width: 100%;
	height: 100%;
}

.kf-blog-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.kf-blog-thumb:hover img {
	transform: scale(1.04);
}

/* ─── Blog card – content area ───────────────────────────────── */

.kf-blog-content {
	padding: 26px 30px 30px;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.kf-blog-content .entry-title {
	font-size: 20px;
	line-height: 1.35;
	margin-bottom: 10px;
}

.kf-blog-content .entry-meta {
	font-size: 13px;
	margin-bottom: 12px;
}

.kf-blog-content .entry-content {
	font-size: 15px;
	line-height: 1.7;
	flex: 1;
}

/* ─── Archive / Category banners ────────────────────────────── */

.ast-archive-description,
.archive-description,
.taxonomy-description {
	color: var(--kf-text);
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 28px;
	margin-bottom: 28px;
}

.archive-title,
.ast-archive-title,
.page-header .page-title {
	color: var(--kf-white) !important;
	font-family: Georgia, 'Times New Roman', serif;
}

.ast-page-header-wrap {
	background: var(--kf-surface-2) !important;
	border-bottom: 1px solid var(--kf-border) !important;
}

/* ─── Featured images ────────────────────────────────────────── */

.ast-single-featured-image-wrap img,
.post-thumbnail img,
.ast-featured-img img {
	border-radius: 16px;
	display: block;
}

/* ─── WooCommerce – shop: breadcrumb és oldalcím elrejtése ──── */

.woocommerce-page .woocommerce-breadcrumb,
.post-type-archive-product .woocommerce-breadcrumb,
.woocommerce-page .ast-breadcrumbs,
.post-type-archive-product .ast-breadcrumbs,
.post-type-archive-product .ast-archive-title,
.post-type-archive-product .page-title,
.post-type-archive-product .woocommerce-products-header,
.post-type-archive-product .ast-page-header-wrap,
.woocommerce-page .woocommerce-products-header__title {
	display: none !important;
}

/* ─── WooCommerce – rendező (ordering) szegély ───────────────── */

.woocommerce-ordering select {
	background: var(--kf-surface-2) !important;
	border: 1px solid var(--kf-border) !important;
	border-radius: 10px !important;
	color: var(--kf-white) !important;
	padding: 8px 14px !important;
}

.woocommerce-ordering select:focus {
	border-color: var(--kf-green-soft) !important;
	outline: none !important;
}

/* ─── WooCommerce – termékkártya két gomb ────────────────────── */

.kf-product-actions {
	display: flex;
	gap: 10px;
	align-items: stretch;
	flex-wrap: wrap;
	margin-top: 4px;
}

.kf-product-actions .kf-btn {
	flex: 1 1 0;
	text-align: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 14px;
	font-size: 12px;
}

.kf-product-actions .button,
.kf-product-actions a.button {
	flex: 1 1 0;
	border-radius: 14px !important;
	min-height: 42px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 12px !important;
	padding: 0 14px !important;
}

/* ─── WooCommerce – shop archive ────────────────────────────── */

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 20px;
	padding: 24px;
	transition: border-color .25s ease, transform .25s ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: rgba(127, 183, 126, .35);
	transform: translateY(-3px);
}

.woocommerce ul.products li.product a img {
	border-radius: 14px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
	color: var(--kf-white) !important;
	font-family: Georgia, 'Times New Roman', serif;
}

/* ─── WooCommerce – kategória elrejtése a shop loopban ──────── */

.woocommerce ul.products li.product .ast-woo-product-category,
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .posted-in,
.woocommerce ul.products li.product .product-category,
.ast-woo-shop-product-category {
	display: none !important;
}

/* ─── WooCommerce – shop loop kivonat ───────────────────────── */

.ast-woo-shop-product-description {
	color: var(--kf-text-muted);
	font-size: 13px;
	line-height: 1.65;
	margin: 8px 0 12px;
}

.ast-woo-shop-product-description p {
	margin: 0;
	color: var(--kf-text-muted);
}

/* ─── WooCommerce – prices ───────────────────────────────────── */

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--kf-green-soft) !important;
}

.woocommerce ul.products li.product .price del,
.woocommerce div.product p.price del {
	color: var(--kf-text-muted) !important;
	opacity: .7;
}

.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins {
	color: var(--kf-red) !important;
	text-decoration: none;
}

/* ─── WooCommerce – buttons ──────────────────────────────────── */

.woocommerce ul.products li.product .button,
.woocommerce div.product .single_add_to_cart_button,
.woocommerce .cart .button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	background-color: var(--kf-red-dark) !important;
	color: #fff !important;
	border-radius: 18px !important;
	border: none !important;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: 13px;
	transition: background-color .25s ease, transform .25s ease;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce div.product .single_add_to_cart_button:hover,
.woocommerce .cart .button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background-color: var(--kf-red) !important;
	color: #fff !important;
	transform: translateY(-2px);
}

/* ─── WooCommerce – sale badge ───────────────────────────────── */

.woocommerce span.onsale {
	background-color: var(--kf-red) !important;
	color: #fff !important;
	border-radius: 50% !important;
}

/* ─── WooCommerce – single product ──────────────────────────── */

.woocommerce div.product .product_title {
	color: var(--kf-white) !important;
	font-family: Georgia, 'Times New Roman', serif;
}

.woocommerce div.product .woocommerce-product-details__short-description {
	color: var(--kf-text);
	font-size: 16px;
	line-height: 1.8;
	margin: 20px 0 28px;
	padding: 20px 0;
	border-top: 1px solid var(--kf-border);
	border-bottom: 1px solid var(--kf-border);
}

.woocommerce div.product .woocommerce-product-details__short-description p {
	color: var(--kf-text);
	margin-bottom: 10px;
}

/* ─── WooCommerce – product tabs ─────────────────────────────── */

.woocommerce div.product .woocommerce-tabs {
	margin-top: 48px;
	margin-bottom: 48px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	background: transparent;
	border-bottom: 1px solid var(--kf-border);
	margin-bottom: 0;
	padding-left: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: var(--kf-surface-2);
	border: 1px solid var(--kf-border);
	border-radius: 12px 12px 0 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	color: var(--kf-text) !important;
	padding: 12px 20px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background: var(--kf-surface);
	border-bottom-color: var(--kf-surface);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--kf-white) !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 0 12px 12px 12px;
	padding: 32px 36px;
	color: var(--kf-text);
}

.woocommerce div.product .woocommerce-tabs .panel p,
.woocommerce div.product .woocommerce-tabs .panel li {
	color: var(--kf-text);
	line-height: 1.8;
	margin-bottom: 14px;
}

.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-tabs .panel h3 {
	color: var(--kf-white);
	margin-top: 28px;
	margin-bottom: 14px;
}

/* ─── WooCommerce – reviews ──────────────────────────────────── */

.woocommerce #reviews #comments ol.commentlist li .comment-text {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 24px;
	color: var(--kf-text);
}

.woocommerce .star-rating span::before,
.woocommerce .star-rating::before {
	color: var(--kf-red) !important;
}

/* ─── WooCommerce – cart ─────────────────────────────────────── */

.woocommerce table.shop_table {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border) !important;
	border-radius: 16px;
	color: var(--kf-text);
}

.woocommerce table.shop_table th {
	background: var(--kf-surface-2);
	color: var(--kf-white);
	border-color: var(--kf-border) !important;
}

.woocommerce table.shop_table td {
	border-color: var(--kf-border) !important;
	color: var(--kf-text);
}

.woocommerce .cart_totals,
.woocommerce-page .cart_totals {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 28px;
}

.woocommerce .cart_totals h2,
.woocommerce .cross-sells h2,
.woocommerce .upsells h2 {
	color: var(--kf-white);
}

/* ─── WooCommerce – checkout ─────────────────────────────────── */

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 28px;
}

.woocommerce h3#order_review_heading,
.woocommerce-checkout h3 {
	color: var(--kf-white);
}

/* ─── WooCommerce – notices ──────────────────────────────────── */

.woocommerce-message,
.woocommerce-info {
	background: var(--kf-surface) !important;
	border-top: 3px solid var(--kf-green-soft) !important;
	color: var(--kf-text) !important;
}

.woocommerce-error {
	background: var(--kf-surface) !important;
	border-top: 3px solid var(--kf-red) !important;
	color: var(--kf-text) !important;
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--kf-green-soft) !important;
}

.woocommerce-error::before {
	color: var(--kf-red) !important;
}

/* ─── WooCommerce – quantity input ───────────────────────────── */

.woocommerce .quantity input.qty {
	background: var(--kf-surface-2);
	border: 1px solid var(--kf-border);
	color: var(--kf-white);
	border-radius: 8px;
	text-align: center;
}

/* ─── WooCommerce – breadcrumb ───────────────────────────────── */

.woocommerce-breadcrumb {
	color: var(--kf-text-muted);
}

.woocommerce-breadcrumb a {
	color: var(--kf-green-soft) !important;
}

.woocommerce-breadcrumb a:hover {
	color: var(--kf-red) !important;
}

/* ─── WooCommerce – my account ───────────────────────────────── */

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	background: var(--kf-surface);
	border: 1px solid var(--kf-border);
	border-radius: 16px;
	padding: 28px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	color: var(--kf-text) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	color: #000 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	color: var(--kf-white) !important;
}

/* ─── Astra #colophon elszupprimálása ───────────────────────────── */

#colophon.site-footer {
	display: none !important;
}

/* ═══════════════════════════════════════════════════════════════════
   Kárpátok Forrása – Egyedi footer
   ═══════════════════════════════════════════════════════════════════ */

.kf-site-footer {
	background: var(--kf-surface);
	border-top: 1px solid var(--kf-border);
	font-family: Georgia, 'Times New Roman', serif;
}

.kf-site-footer__container {
	width: min(1180px, 100%);
	margin: 0 auto;
	padding: 0 24px;
}

/* ─── Fő rész ────────────────────────────────────────────────────── */

.kf-site-footer__main {
	padding: 44px 0 36px;
}

.kf-site-footer__main .kf-site-footer__container {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr;
	gap: 36px;
	align-items: start;
}

/* Logo */

.kf-site-footer__logo-link {
	display: inline-block;
	margin-bottom: 10px;
}

.kf-site-footer__logo {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	object-fit: contain;
	border: 1px solid var(--kf-border);
	background: radial-gradient(circle at center, #1b1b1b 0%, #080808 72%);
	display: block;
	transition: opacity 0.2s ease;
}

.kf-site-footer__logo-link:hover .kf-site-footer__logo {
	opacity: 0.82;
}

/* Brand */

.kf-site-footer__name {
	font-size: 22px;
	font-weight: 700;
	color: var(--kf-white);
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin-bottom: 8px;
}

.kf-site-footer__name span {
	color: var(--kf-red);
}

.kf-site-footer__tagline {
	color: var(--kf-text-muted);
	font-size: 14px;
	line-height: 1.75;
	margin: 0;
}

/* Oszlopfejléc */

.kf-site-footer__col-heading {
	color: var(--kf-green-soft);
	font-size: 11px;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	margin-bottom: 12px;
}

/* Kapcsolat */

.kf-site-footer__contact-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.kf-site-footer__contact-list li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	color: var(--kf-text);
	font-size: 14px;
	line-height: 1.55;
}

.kf-site-footer__contact-list svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	margin-top: 2px;
	color: var(--kf-green-soft);
}

.kf-site-footer__contact-list a {
	color: var(--kf-text) !important;
	text-decoration: none;
	transition: color 0.2s ease;
}

.kf-site-footer__contact-list a:hover {
	color: var(--kf-red) !important;
}

/* Social ikonok */

.kf-site-footer__social {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.kf-site-footer__social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 14px;
	border: 1px solid var(--kf-border);
	background: rgba(255, 255, 255, 0.04);
	color: var(--kf-text-muted) !important;
	transition: background 0.22s ease, border-color 0.22s ease, color 0.22s ease, transform 0.22s ease;
	text-decoration: none !important;
}

.kf-site-footer__social-link svg {
	width: 18px;
	height: 18px;
}

.kf-site-footer__social-link:hover {
	transform: translateY(-3px);
	color: #fff !important;
}

.kf-site-footer__social-link--facebook:hover  { background: #1877f2; border-color: #1877f2; }
.kf-site-footer__social-link--instagram:hover { background: #e1306c; border-color: #e1306c; }
.kf-site-footer__social-link--youtube:hover   { background: #ff0000; border-color: #ff0000; }
.kf-site-footer__social-link--tiktok:hover    { background: #010101; border-color: #69c9d0; }

/* ─── Navigáció sáv ──────────────────────────────────────────────── */

.kf-site-footer__nav-bar {
	border-top: 1px solid var(--kf-border);
	padding: 22px 0;
}

.kf-site-footer__menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px 28px;
}

.kf-site-footer__menu li a {
	color: var(--kf-text-muted) !important;
	font-size: 13px;
	text-decoration: none;
	letter-spacing: 0.04em;
	transition: color 0.2s ease;
}

.kf-site-footer__menu li a:hover {
	color: var(--kf-red) !important;
}

/* ─── Credit sáv ─────────────────────────────────────────────────── */

.kf-site-footer__credit {
	background: rgba(0, 0, 0, 0.35);
	border-top: 1px solid var(--kf-border);
	padding: 16px 0;
}

.kf-site-footer__credit .kf-site-footer__container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px;
}

.kf-site-footer__credit span {
	color: var(--kf-text-muted);
	font-size: 12px;
}

.kf-site-footer__made-by a {
	color: var(--kf-green-soft) !important;
	text-decoration: none;
}

.kf-site-footer__made-by a:hover {
	color: var(--kf-red) !important;
}

/* ─── Reszponzív ─────────────────────────────────────────────────── */

@media (max-width: 900px) {
	.kf-site-footer__main .kf-site-footer__container {
		grid-template-columns: 1fr 1fr;
		gap: 24px;
	}

	.kf-site-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 560px) {
	.kf-site-footer__main .kf-site-footer__container {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.kf-site-footer__credit .kf-site-footer__container {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
}

/* ─── Hírlevél szekció ───────────────────────────────────────────── */

.kf-site-footer__newsletter-wrap {
	border-top: 1px solid var(--kf-border);
	border-bottom: 1px solid var(--kf-border);
	background: rgba(31, 122, 77, 0.07);
	padding: 32px 0;
}

.kf-newsletter {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: 32px;
	align-items: center;
}

.kf-newsletter__title {
	font-size: clamp(18px, 2.4vw, 26px);
	color: var(--kf-white);
	margin: 0 0 8px;
	line-height: 1.15;
}

.kf-newsletter__desc {
	color: var(--kf-text-muted);
	font-size: 15px;
	line-height: 1.7;
	margin: 0;
}

.kf-newsletter__fields {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.kf-newsletter__input {
	flex: 1 1 220px;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	color: var(--kf-white) !important;
	border-radius: 14px !important;
	padding: 0 18px !important;
	height: 50px;
	font-size: 15px;
	font-family: Georgia, 'Times New Roman', serif;
	transition: border-color 0.2s ease;
	outline: none;
}

.kf-newsletter__input::placeholder {
	color: var(--kf-text-muted);
}

.kf-newsletter__input:focus {
	border-color: var(--kf-green-soft) !important;
}

.kf-newsletter__btn {
	flex-shrink: 0;
	height: 50px;
	min-height: unset;
	padding: 0 28px;
	white-space: nowrap;
}

.kf-newsletter__privacy {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--kf-text-muted);
	font-size: 12px;
	margin: 12px 0 0;
}

.kf-newsletter__privacy svg {
	flex-shrink: 0;
	color: var(--kf-green-soft);
}

.kf-newsletter__message {
	margin-top: 10px;
	font-size: 13px;
	min-height: 20px;
}

.kf-newsletter__message--ok  { color: var(--kf-green-soft); }
.kf-newsletter__message--err { color: var(--kf-red); }

@media (max-width: 820px) {
	.kf-newsletter {
		grid-template-columns: 1fr;
		gap: 18px;
	}
}

/* ═══════════════════════════════════════════════════════════════════
   LIGHT MODE  –  html[data-theme="light"]
   ═══════════════════════════════════════════════════════════════════ */

/* ─── CSS változók felülírása ────────────────────────────────────── */

html[data-theme="light"] {
	--kf-surface:    #ffffff;
	--kf-surface-2:  #eeeeef;
	--kf-border:     rgba(0, 0, 0, 0.09);
	--kf-text:       #2d2d2d;
	--kf-text-muted: #6b6b6b;
	--kf-white:      #111111;
	--kf-white-soft: #f9f9f9;
	--kf-graphite:   #e5e5e5;
	--kf-black:      #f6f6f8;
}

/* ─── Alap: html/body háttér ─────────────────────────────────────── */

html[data-theme="light"] {
	background:
		radial-gradient(circle at 20% 10%, rgba(230, 57, 70, 0.05), transparent 34%),
		radial-gradient(circle at 80% 80%, rgba(31, 122, 77, 0.07), transparent 36%),
		linear-gradient(160deg, #f6f6f8 0%, #f3f3f5 45%, #eff4f1 100%) !important;
}

/* ─── Header ─────────────────────────────────────────────────────── */

html[data-theme="light"] #masthead,
html[data-theme="light"] .site-header,
html[data-theme="light"] .ast-site-header-wrap,
html[data-theme="light"] .main-header-bar,
html[data-theme="light"] .ast-desktop-header,
html[data-theme="light"] .ast-header-break-point .ast-above-header {
	background-color: rgba(255, 255, 255, 0.97) !important;
	border-bottom-color: rgba(0, 0, 0, 0.08) !important;
}

html[data-theme="light"] .ast-site-identity .site-title a::before { color: #111111; }
html[data-theme="light"] .ast-site-identity .site-title a::after  { color: var(--kf-red); }
html[data-theme="light"] .site-description { color: #777777 !important; }

html[data-theme="light"] .main-navigation a,
html[data-theme="light"] .ast-primary-menu a,
html[data-theme="light"] #ast-primary-menu a,
html[data-theme="light"] .ast-nav-menu a,
html[data-theme="light"] .main-navigation ul li a { color: #333333 !important; }

html[data-theme="light"] .main-navigation .current-menu-item > a,
html[data-theme="light"] .ast-primary-menu .current-menu-item > a { color: var(--kf-red) !important; }

html[data-theme="light"] .main-navigation ul ul,
html[data-theme="light"] .ast-primary-menu ul ul,
html[data-theme="light"] #ast-primary-menu ul ul {
	background-color: #ffffff !important;
	border-color: rgba(0, 0, 0, 0.10) !important;
}

html[data-theme="light"] .ast-mobile-popup-inner,
html[data-theme="light"] .ast-flyout-menu-wrap,
html[data-theme="light"] .ast-header-break-point #ast-mobile-header { background-color: #ffffff !important; }

html[data-theme="light"] .ast-mobile-menu-trigger-minimal .menu-toggle-icon,
html[data-theme="light"] .ast-mobile-menu-trigger-minimal .menu-toggle-icon::before,
html[data-theme="light"] .ast-mobile-menu-trigger-minimal .menu-toggle-icon::after,
html[data-theme="light"] button.menu-toggle span { background-color: #333333 !important; }

/* ─── kf-lead margin ────────────────────────────────────────────── */

.kf-lead { margin-bottom: 1.4em; }

/* ─── kf-info-value szótörés variant ────────────────────────────── */

.kf-info-value--break { word-break: break-word; }

/* ─── Info card – light mode ─────────────────────────────────────── */

html[data-theme="light"] .kf-info-card {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.10);
}

html[data-theme="light"] .kf-info-label  { color: var(--kf-green); }
html[data-theme="light"] .kf-info-value  { color: #2d2d2d; }
html[data-theme="light"] .kf-info-value.primary { color: #111111; }

/* ─── Főoldal szekciók ───────────────────────────────────────────── */

html[data-theme="light"] .kf-hero {
	background:
		radial-gradient(circle at 20% 10%, rgba(230, 57, 70, 0.07), transparent 34%),
		radial-gradient(circle at 80% 80%, rgba(31, 122, 77, 0.09), transparent 36%),
		linear-gradient(180deg, #f8f8fa 0%, #f4f4f6 55%, #eef3ee 140%);
}

html[data-theme="light"] .kf-dark {
	background: #f0f0f2;
	border-bottom-color: rgba(0, 0, 0, 0.06);
}

html[data-theme="light"] .kf-cta {
	background:
		radial-gradient(circle at 50% 30%, rgba(230, 57, 70, 0.08), transparent 38%),
		linear-gradient(180deg, #eef3ee, #f4f4f6);
}

html[data-theme="light"] .kf-card {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.08);
}

html[data-theme="light"] .kf-card h3 { color: #111111; }
html[data-theme="light"] .kf-card p  { color: #555555; }

html[data-theme="light"] .kf-icon {
	background: linear-gradient(145deg, rgba(0,0,0,.07), rgba(0,0,0,.02)), rgba(0,0,0,.04);
	border-color: rgba(0, 0, 0, 0.10);
}

html[data-theme="light"] .kf-program {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.08);
}

html[data-theme="light"] .kf-program h3 { color: #111111; }
html[data-theme="light"] .kf-program p  { color: #555555; }

html[data-theme="light"] .kf-list li {
	background: rgba(0, 0, 0, 0.025);
	border-color: rgba(0, 0, 0, 0.08);
	color: #333333;
}

html[data-theme="light"] .kf-list strong { color: #111111; }

html[data-theme="light"] .kf-section-text { color: #444444; }
html[data-theme="light"] .kf-lead         { color: #444444; }

html[data-theme="light"] .kf-kicker {
	background: rgba(0, 0, 0, 0.05);
	border-color: rgba(0, 0, 0, 0.10);
	color: #555555;
}

html[data-theme="light"] .kf-program-number { color: var(--kf-red); }

/* Preview kártyák (trending blog / termékek a főoldalon) */
html[data-theme="light"] .kf-preview-card {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.08);
}

html[data-theme="light"] .kf-preview-title a { color: #111111 !important; }
html[data-theme="light"] .kf-preview-excerpt { color: #666666; }
html[data-theme="light"] .kf-preview-price   { color: var(--kf-green); }

/* ─── Blog / archívum ────────────────────────────────────────────── */

html[data-theme="light"] .ast-article-post,
html[data-theme="light"] article.type-post,
html[data-theme="light"] article.type-page {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.09);
}

html[data-theme="light"] .blog article.type-post,
html[data-theme="light"] .archive article.type-post,
html[data-theme="light"] .category article.type-post,
html[data-theme="light"] .tag article.type-post,
html[data-theme="light"] .search article.type-post {
	background: #ffffff !important;
	border-color: rgba(0, 0, 0, 0.09) !important;
}

html[data-theme="light"] .ast-separate-container .ast-article-post,
html[data-theme="light"] .ast-separate-container .ast-article-inner-blog {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.09);
}

html[data-theme="light"] .entry-content,
html[data-theme="light"] .entry-summary           { color: #2d2d2d; }
html[data-theme="light"] .entry-content p,
html[data-theme="light"] .entry-summary p         { color: #2d2d2d; }
html[data-theme="light"] .entry-content h1,
html[data-theme="light"] .entry-content h2,
html[data-theme="light"] .entry-content h3,
html[data-theme="light"] .entry-content h4        { color: #111111; }

html[data-theme="light"] .entry-meta,
html[data-theme="light"] .ast-blog-meta,
html[data-theme="light"] .posted-on,
html[data-theme="light"] .byline                  { color: #777777; }

html[data-theme="light"] .ast-archive-description,
html[data-theme="light"] .archive-description,
html[data-theme="light"] .taxonomy-description {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.09);
}

html[data-theme="light"] .ast-page-header-wrap {
	background: #f0f0f2 !important;
	border-bottom-color: rgba(0, 0, 0, 0.08) !important;
}

html[data-theme="light"] .archive-title,
html[data-theme="light"] .ast-archive-title,
html[data-theme="light"] .page-header .page-title { color: #111111 !important; }

/* ─── Sidebar ────────────────────────────────────────────────────── */

html[data-theme="light"] .secondary,
html[data-theme="light"] .widget-area { background: #ffffff; border-color: rgba(0,0,0,.09); }

html[data-theme="light"] .widget,
html[data-theme="light"] .widget p,
html[data-theme="light"] .widget li   { color: #2d2d2d; }
html[data-theme="light"] .widget-title,
html[data-theme="light"] .widgettitle { color: #111111; }

/* ─── Forms ──────────────────────────────────────────────────────── */

html[data-theme="light"] input[type="text"],
html[data-theme="light"] input[type="email"],
html[data-theme="light"] input[type="url"],
html[data-theme="light"] input[type="password"],
html[data-theme="light"] input[type="search"],
html[data-theme="light"] textarea,
html[data-theme="light"] select {
	background-color: #ffffff;
	border-color: rgba(0, 0, 0, 0.15);
	color: #2d2d2d;
}

/* ─── Pagination / breadcrumb ────────────────────────────────────── */

html[data-theme="light"] .page-numbers,
html[data-theme="light"] .ast-pagination a,
html[data-theme="light"] .page-numbers.dots {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.12);
	color: #333333;
}

html[data-theme="light"] .page-numbers.current { background: var(--kf-red-dark); color: #fff; }

html[data-theme="light"] .ast-breadcrumbs,
html[data-theme="light"] .trail-items,
html[data-theme="light"] .trail-items li,
html[data-theme="light"] .trail-items a { color: #777777; }

/* ─── Comments ───────────────────────────────────────────────────── */

html[data-theme="light"] .comment-list .comment-body {
	background: #f9f9f9;
	border-color: rgba(0, 0, 0, 0.09);
}

html[data-theme="light"] .comment-content,
html[data-theme="light"] .comment-body           { color: #2d2d2d; }
html[data-theme="light"] .comment-author .fn,
html[data-theme="light"] .comment-metadata a     { color: #111111; }

/* ─── Egyéb elemek ───────────────────────────────────────────────── */

html[data-theme="light"] hr { border-color: rgba(0, 0, 0, 0.10); }

html[data-theme="light"] blockquote {
	background: #f7f7f7;
	color: #333333;
	border-left-color: var(--kf-red);
}

html[data-theme="light"] code,
html[data-theme="light"] pre {
	background: #f3f3f3;
	border-color: rgba(0, 0, 0, 0.10);
	color: var(--kf-green);
}

html[data-theme="light"] th { background: #f0f0f2; color: #111111; border-color: rgba(0,0,0,.10); }
html[data-theme="light"] td { border-color: rgba(0,0,0,.09); color: #2d2d2d; }
html[data-theme="light"] tr:nth-child(even) td { background: rgba(0,0,0,.02); }

/* ─── WooCommerce ────────────────────────────────────────────────── */

html[data-theme="light"] .woocommerce ul.products li.product,
html[data-theme="light"] .woocommerce-page ul.products li.product {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.09);
}

html[data-theme="light"] .woocommerce ul.products li.product .woocommerce-loop-product__title,
html[data-theme="light"] .woocommerce ul.products li.product h2 { color: #111111 !important; }

html[data-theme="light"] .ast-woo-shop-product-description,
html[data-theme="light"] .ast-woo-shop-product-description p   { color: #666666; }

html[data-theme="light"] .woocommerce-ordering select {
	background: #ffffff !important;
	border-color: rgba(0, 0, 0, 0.15) !important;
	color: #333333 !important;
}

html[data-theme="light"] .woocommerce div.product .product_title { color: #111111 !important; }

html[data-theme="light"] .woocommerce div.product .woocommerce-product-details__short-description,
html[data-theme="light"] .woocommerce div.product .woocommerce-product-details__short-description p {
	color: #2d2d2d;
	border-color: rgba(0, 0, 0, 0.10);
}

html[data-theme="light"] .woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom-color: rgba(0,0,0,.10); }
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs ul.tabs li { background: #f0f0f2; border-color: rgba(0,0,0,.10); }
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs ul.tabs li a { color: #555555 !important; }
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #ffffff; border-bottom-color: #ffffff; }
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #111111 !important; }

html[data-theme="light"] .woocommerce div.product .woocommerce-tabs .panel {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.10);
	color: #2d2d2d;
}

html[data-theme="light"] .woocommerce div.product .woocommerce-tabs .panel p,
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs .panel li  { color: #2d2d2d; }
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs .panel h2,
html[data-theme="light"] .woocommerce div.product .woocommerce-tabs .panel h3  { color: #111111; }

html[data-theme="light"] .woocommerce #reviews #comments ol.commentlist li .comment-text {
	background: #f9f9f9;
	border-color: rgba(0, 0, 0, 0.09);
	color: #2d2d2d;
}

html[data-theme="light"] .woocommerce table.shop_table { background: #ffffff; }
html[data-theme="light"] .woocommerce table.shop_table th { background: #f0f0f2; color: #111111; border-color: rgba(0,0,0,.09) !important; }
html[data-theme="light"] .woocommerce table.shop_table td { border-color: rgba(0,0,0,.09) !important; color: #2d2d2d; }

html[data-theme="light"] .woocommerce .cart_totals,
html[data-theme="light"] .woocommerce-page .cart_totals { background: #ffffff; border-color: rgba(0,0,0,.09); }
html[data-theme="light"] .woocommerce .cart_totals h2,
html[data-theme="light"] .woocommerce .cross-sells h2,
html[data-theme="light"] .woocommerce .upsells h2 { color: #111111; }

html[data-theme="light"] .woocommerce-checkout #customer_details,
html[data-theme="light"] .woocommerce-checkout #order_review_heading,
html[data-theme="light"] .woocommerce-checkout #order_review { background: #ffffff; border-color: rgba(0,0,0,.09); }
html[data-theme="light"] .woocommerce h3#order_review_heading,
html[data-theme="light"] .woocommerce-checkout h3 { color: #111111; }

html[data-theme="light"] .woocommerce-account .woocommerce-MyAccount-navigation,
html[data-theme="light"] .woocommerce-account .woocommerce-MyAccount-content { background: #ffffff; border-color: rgba(0,0,0,.09); }
html[data-theme="light"] .woocommerce-account .woocommerce-MyAccount-navigation ul li a { color: #333333 !important; }

html[data-theme="light"] .woocommerce-message,
html[data-theme="light"] .woocommerce-info  { background: #ffffff !important; color: #2d2d2d !important; }
html[data-theme="light"] .woocommerce-error { background: #fff5f5 !important; color: #2d2d2d !important; }

html[data-theme="light"] .woocommerce .quantity input.qty {
	background: #ffffff;
	border-color: rgba(0, 0, 0, 0.15);
	color: #333333;
}

/* ─── Footer ─────────────────────────────────────────────────────── */

html[data-theme="light"] .kf-site-footer {
	background: #f0f0f2;
	border-top-color: rgba(0, 0, 0, 0.10);
}

html[data-theme="light"] .kf-site-footer__name     { color: #111111; }
html[data-theme="light"] .kf-site-footer__tagline  { color: #6b6b6b; }

html[data-theme="light"] .kf-site-footer__contact-list li   { color: #333333; }
html[data-theme="light"] .kf-site-footer__contact-list a    { color: #333333 !important; }
html[data-theme="light"] .kf-site-footer__contact-list svg  { color: var(--kf-green); }

html[data-theme="light"] .kf-site-footer__social-link {
	background: rgba(0, 0, 0, 0.05);
	border-color: rgba(0, 0, 0, 0.12);
	color: #555555 !important;
}

html[data-theme="light"] .kf-site-footer__menu li a { color: #555555 !important; }

html[data-theme="light"] .kf-site-footer__newsletter-wrap {
	background: rgba(31, 122, 77, 0.06);
	border-color: rgba(0, 0, 0, 0.07);
}

html[data-theme="light"] .kf-newsletter__title { color: #111111; }
html[data-theme="light"] .kf-newsletter__desc  { color: #555555; }

html[data-theme="light"] .kf-newsletter__input {
	background: rgba(255, 255, 255, 0.9) !important;
	border-color: rgba(0, 0, 0, 0.18) !important;
	color: #333333 !important;
}

html[data-theme="light"] .kf-newsletter__privacy { color: #777777; }

html[data-theme="light"] .kf-site-footer__credit { background: rgba(0, 0, 0, 0.07); }
html[data-theme="light"] .kf-site-footer__credit span      { color: #777777; }
html[data-theme="light"] .kf-site-footer__made-by a        { color: var(--kf-green) !important; }

html[data-theme="light"] .kf-site-footer__logo {
	background: radial-gradient(circle at center, #e5e5e5 0%, #d5d5d5 72%);
}

html[data-theme="light"] #colophon,
html[data-theme="light"] .site-footer,
html[data-theme="light"] .ast-small-footer,
html[data-theme="light"] .footer-widget-area {
	background-color: #f0f0f2 !important;
	border-top-color: rgba(0, 0, 0, 0.08) !important;
}

/* ─── Theme toggle gomb ──────────────────────────────────────────── */

.kf-theme-toggle {
	position: fixed;
	bottom: 88px;
	right: 24px;
	z-index: 9999;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--kf-surface-2);
	border: 1px solid var(--kf-border);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.kf-theme-toggle:hover {
	transform: scale(1.10);
}

.kf-theme-toggle__icon {
	width: 20px;
	height: 20px;
	color: var(--kf-text);
	position: absolute;
	transition: opacity .22s ease, transform .22s ease;
	pointer-events: none;
}

/* Sötét módban: nap látható */
html[data-theme="dark"]  .kf-theme-toggle__icon--moon,
html:not([data-theme])   .kf-theme-toggle__icon--moon { opacity: 0; transform: rotate(45deg) scale(.6); }
html[data-theme="dark"]  .kf-theme-toggle__icon--sun,
html:not([data-theme])   .kf-theme-toggle__icon--sun  { opacity: 1; transform: none; }

/* Világos módban: hold látható */
html[data-theme="light"] .kf-theme-toggle__icon--sun  { opacity: 0; transform: rotate(-45deg) scale(.6); }
html[data-theme="light"] .kf-theme-toggle__icon--moon { opacity: 1; transform: none; }

/* ═══════════════════════════════════════════════════════════════════
   Instagram Feed szekció
   ═══════════════════════════════════════════════════════════════════ */

.kf-instagram-section {
	background:
		radial-gradient(circle at 70% 20%, rgba(225, 48, 108, 0.08), transparent 38%),
		radial-gradient(circle at 20% 80%, rgba(31, 122, 77, 0.06), transparent 36%);
	border-top: 1px solid var(--kf-border);
	border-bottom: 1px solid var(--kf-border);
}

/* ─── Feed wrapper ───────────────────────────────────────────────── */

.kf-instagram-feed {
	margin: 0 auto;
	max-width: 1100px;
	width: 100%;
}

/* ─── Smash Balloon – alap container ────────────────────────────── */

.kf-instagram-feed #sb_instagram {
	background: transparent !important;
}

/* ─── Smash Balloon – grid gap ──────────────────────────────────── */

.kf-instagram-feed #sbi_images {
	gap: 6px !important;
	padding: 0 !important;
}

/* ─── Smash Balloon – kép item lekerekítés ───────────────────────── */

.kf-instagram-feed #sbi_images .sbi_item {
	border-radius: 12px;
	overflow: hidden;
}

/* ─── Smash Balloon – kép hover ─────────────────────────────────── */

.kf-instagram-feed .sbi_photo img {
	transition: transform .4s ease, filter .4s ease !important;
}

.kf-instagram-feed .sbi_photo_wrap:hover .sbi_photo img,
.kf-instagram-feed .sbi_photo_wrap:focus-within .sbi_photo img {
	transform: scale(1.06) !important;
	filter: brightness(.82);
}

/* ─── Smash Balloon – hover overlay ─────────────────────────────── */

.kf-instagram-feed .sbi_link {
	background: linear-gradient(
		to top,
		rgba(0, 0, 0, 0.80) 0%,
		rgba(0, 0, 0, 0.22) 55%,
		transparent 100%
	) !important;
	padding: 20px 12px 10px !important;
}

.kf-instagram-feed .sbi_link a {
	color: var(--kf-white) !important;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 11px !important;
}

/* ─── Smash Balloon – header ─────────────────────────────────────── */

.kf-instagram-feed .sb_instagram_header {
	padding: 0 0 24px !important;
}

.kf-instagram-feed .sb_instagram_header h3 {
	color: var(--kf-white) !important;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 18px !important;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.kf-instagram-feed .sb_instagram_header .sbi_bio,
.kf-instagram-feed .sb_instagram_header .sbi_bio_info {
	color: var(--kf-text-muted) !important;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 14px !important;
}

.kf-instagram-feed .sb_instagram_header .sbi_header_img {
	border: 2px solid var(--kf-border);
	transition: border-color .22s ease;
}

.kf-instagram-feed .sb_instagram_header a:hover .sbi_header_img {
	border-color: rgba(225, 48, 108, 0.5);
}

/* ─── Smash Balloon – footer wrapper ────────────────────────────── */

.kf-instagram-feed #sbi_load {
	float: none !important;
	clear: both;
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	padding-top: 28px;
}

/* ─── Smash Balloon – „Több betöltése" gomb ─────────────────────── */

.kf-instagram-feed #sbi_load .sbi_load_btn {
	background: var(--kf-red-dark) !important;
	color: #fff !important;
	border-radius: 18px !important;
	border: none !important;
	padding: 12px 36px !important;
	margin: 0 !important;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 13px !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color .25s ease, transform .25s ease !important;
	box-shadow: none !important;
}

.kf-instagram-feed #sbi_load .sbi_load_btn:hover,
.kf-instagram-feed #sbi_load .sbi_load_btn:focus {
	background: var(--kf-red) !important;
	transform: translateY(-2px);
	box-shadow: none !important;
	outline: none !important;
}

.kf-instagram-feed #sbi_load .sbi_load_btn .sbi_loader {
	background-color: rgba(255, 255, 255, .85) !important;
}

/* ─── Smash Balloon – „Követés" (follow) gomb ───────────────────── */

.kf-instagram-feed .sbi_follow_btn {
	display: inline-flex !important;
	align-items: center;
}

.kf-instagram-feed .sbi_follow_btn a {
	background: transparent !important;
	color: var(--kf-green-soft) !important;
	border: 1px solid var(--kf-green-soft) !important;
	border-radius: 18px !important;
	padding: 11px 28px !important;
	margin: 0 !important;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 13px !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease !important;
	box-shadow: none !important;
}

.kf-instagram-feed .sbi_follow_btn a:hover,
.kf-instagram-feed .sbi_follow_btn a:focus {
	background: var(--kf-green) !important;
	border-color: var(--kf-green) !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: none !important;
	outline: none !important;
}

/* ─── Instagram CTA gomb ─────────────────────────────────────────── */

.kf-instagram-cta {
	margin-top: 36px;
	display: flex;
	justify-content: center;
}

.kf-btn-instagram {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border-color: #e1306c !important;
	color: #e1306c !important;
}

.kf-btn-instagram:hover {
	background-color: #e1306c !important;
	border-color: #e1306c !important;
	color: #fff !important;
}

/* ─── Light mode ─────────────────────────────────────────────────── */

html[data-theme="light"] .kf-instagram-section {
	background:
		radial-gradient(circle at 70% 20%, rgba(225, 48, 108, 0.05), transparent 38%),
		radial-gradient(circle at 20% 80%, rgba(31, 122, 77, 0.04), transparent 36%);
	border-color: rgba(0, 0, 0, 0.07);
}

html[data-theme="light"] .kf-instagram-feed .sb_instagram_header h3 {
	color: #111111 !important;
}

html[data-theme="light"] .kf-instagram-feed .sb_instagram_header .sbi_bio,
html[data-theme="light"] .kf-instagram-feed .sb_instagram_header .sbi_bio_info {
	color: #666666 !important;
}

html[data-theme="light"] .kf-instagram-feed .sb_instagram_header .sbi_header_img {
	border-color: rgba(0, 0, 0, 0.12);
}
