/* ==========================================================================
   Base / Typography
   ========================================================================== */
body {
	font-family: var(--sbg-font-body, 'Inter', -apple-system, sans-serif);
	color: var(--sbg-body-text, #0F172A);
	background: var(--sbg-body-bg, #F8FAFC);
	line-height: 1.65;
	font-size: 16px;
	transition: var(--sbg-transition, all 0.2s ease);
}
h1, h2, h3, h4, h5, h6 {
	font-family: var(--sbg-font-heading, 'Inter', -apple-system, sans-serif);
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 0.6em;
	color: var(--sbg-body-text, #0F172A);
}
p { margin: 0 0 1em; }
a { text-decoration: none; }
.sbg-entry-content a,
.sbg-rich-text a { color: var(--sbg-link-color, #2563EB); text-decoration: underline; }
.sbg-entry-content a:hover,
.sbg-rich-text a:hover { color: var(--sbg-link-hover-color, #1D4ED8); }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(1px,1px,1px,1px);
	white-space: nowrap;
}
.sbg-skip-link {
	position: absolute;
	top: -100px; left: 0;
	background: var(--sbg-color-secondary, #2563EB);
	color: #fff;
	padding: 12px 20px;
	z-index: 100000;
	transition: top 0.2s ease;
}
.sbg-skip-link:focus { top: 0; }

.sbg-container {
	max-width: var(--sbg-container-width, 1140px);
	margin: 0 auto;
	padding: 0 var(--sbg-container-padding, 20px);
}

/* ==========================================================================
   Buttons
   ========================================================================== */
.sbg-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: var(--sbg-btn-padding-y, 12px) var(--sbg-btn-padding-x, 24px);
	border-radius: var(--sbg-btn-radius, var(--sbg-radius-md, 10px));
	font-weight: 600;
	border: none;
	cursor: pointer;
	transition: var(--sbg-transition, all 0.2s ease);
}
.sbg-btn-primary {
	background: var(--sbg-btn-primary-bg, var(--sbg-color-secondary, #2563EB));
	color: var(--sbg-btn-primary-color, #fff);
}
.sbg-btn-primary:hover { background: var(--sbg-btn-primary-hover-bg, #1d4ed8); color: #fff; }
.sbg-btn-accent {
	background: var(--sbg-btn-accent-bg, var(--sbg-color-accent, #FF9900));
	color: var(--sbg-btn-accent-color, #0F172A);
}
.sbg-btn-accent:hover { background: var(--sbg-btn-accent-hover-bg, #E68A00); }
.sbg-btn-secondary {
	background: var(--sbg-color-light-gray, #F1F5F9);
	color: var(--sbg-body-text, #0F172A);
	border: 1px solid var(--sbg-border-color, #E2E8F0);
}
.sbg-btn-secondary:hover { background: #eef2f7; }

/* ==========================================================================
   Header
   ========================================================================== */
.sbg-header {
	background: var(--sbg-header-bg, #fff);
	border-bottom: 1px solid var(--sbg-header-border, #E2E8F0);
	z-index: 999;
}
.sbg-header-sticky { position: sticky; top: 0; }
.sbg-header-sticky.sbg-header-scrolled { box-shadow: var(--sbg-shadow-sm, 0 1px 2px rgba(15,23,42,0.06)); }
.sbg-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: var(--sbg-header-height, 76px);
}
.sbg-site-branding img { max-height: 44px; width: auto; }
.sbg-site-title-link { display: flex; flex-direction: column; }
.sbg-site-title { font-size: 1.375rem; font-weight: 800; }
.sbg-site-description { font-size: 0.8rem; color: var(--sbg-muted-text, #64748B); }

.sbg-primary-nav { flex: 1; display: flex; justify-content: center; }
.sbg-nav-menu { display: flex; align-items: center; gap: 28px; list-style: none; margin: 0; padding: 0; }
.sbg-nav-menu li { position: relative; }
.sbg-nav-menu a { font-weight: 600; font-size: 0.95rem; padding: 8px 0; display: inline-block; }
.sbg-nav-menu a:hover { color: var(--sbg-color-secondary, #2563EB); }
.sbg-nav-menu .sub-menu {
	display: none;
	position: absolute; top: 100%; left: 0;
	background: #fff;
	border: 1px solid var(--sbg-border-color, #E2E8F0);
	border-radius: var(--sbg-radius-md, 10px);
	box-shadow: var(--sbg-shadow-md, 0 4px 12px rgba(15,23,42,0.08));
	min-width: 200px;
	padding: 8px;
	list-style: none;
	z-index: 50;
}
.sbg-nav-menu li:hover > .sub-menu,
.sbg-nav-menu li:focus-within > .sub-menu { display: block; }
.sbg-nav-menu .sub-menu a { display: block; padding: 8px 12px; border-radius: 6px; }
.sbg-nav-menu .sub-menu a:hover { background: var(--sbg-color-light-gray, #F1F5F9); }

.sbg-header-actions { display: flex; align-items: center; gap: 14px; }
.sbg-search-toggle, .sbg-mobile-toggle, .sbg-cart-link {
	background: none; border: none; cursor: pointer;
	display: inline-flex; align-items: center; position: relative;
	color: var(--sbg-body-text, #0F172A);
	padding: 6px;
}
.sbg-cart-count {
	position: absolute; top: -4px; right: -6px;
	background: var(--sbg-color-danger, #EF4444);
	color: #fff; font-size: 10px; line-height: 1;
	border-radius: 50%; padding: 3px 5px; min-width: 16px; text-align: center;
}
.sbg-mobile-toggle { display: none; flex-direction: column; gap: 4px; }
.sbg-hamburger-line { width: 20px; height: 2px; background: currentColor; display: block; }

.sbg-header-search { border-top: 1px solid var(--sbg-border-color, #E2E8F0); padding: 16px 0; }
.sbg-header-search[hidden] { display: none; }

.sbg-mobile-menu {
	border-top: 1px solid var(--sbg-border-color, #E2E8F0);
	padding: 12px 20px;
}
.sbg-mobile-menu[hidden] { display: none; }
.sbg-mobile-nav-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.sbg-mobile-nav-menu a { display: block; padding: 10px 0; font-weight: 600; }
.sbg-mobile-nav-menu .sub-menu { list-style: none; padding-left: 16px; }

/* Dark mode toggle button */
.sbg-dark-toggle {
	display: inline-flex; align-items: center; gap: 6px;
	background: none; border: none; cursor: pointer;
	color: var(--sbg-body-text, #0F172A);
	padding: 6px 10px; border-radius: var(--sbg-radius-full, 9999px);
}
.sbg-dark-toggle:hover { background: var(--sbg-color-light-gray, #F1F5F9); }
.sbg-dark-toggle .sbg-icon-sun { display: none; }
[data-sbg-theme="dark"] .sbg-dark-toggle .sbg-icon-moon { display: none; }
[data-sbg-theme="dark"] .sbg-dark-toggle .sbg-icon-sun { display: inline-flex; }
.sbg-dark-toggle-label { font-size: 0.8rem; font-weight: 600; }

/* Breadcrumbs */
.sbg-breadcrumbs-wrap { padding: 14px 0; }
.sbg-breadcrumbs { font-size: 0.85rem; color: var(--sbg-muted-text, #64748B); }
.sbg-breadcrumbs a { color: var(--sbg-muted-text, #64748B); }
.sbg-breadcrumbs a:hover { color: var(--sbg-color-secondary, #2563EB); }
.sbg-breadcrumb-current { color: var(--sbg-body-text, #0F172A); font-weight: 600; }

/* ==========================================================================
   Layout / Sidebar
   ========================================================================== */
.sbg-main { padding: 32px 0 64px; }
.sbg-layout { display: grid; gap: 40px; }
.sbg-layout-no-sidebar { grid-template-columns: 1fr; }
.sbg-layout-right-sidebar { grid-template-columns: 2fr 1fr; }
.sbg-layout-left-sidebar { grid-template-columns: 1fr 2fr; }
.sbg-layout-left-sidebar .sbg-sidebar { order: -1; }

.sbg-widget { margin-bottom: 28px; }
.sbg-widget-title { font-size: 1.05rem; margin-bottom: 12px; }

/* ==========================================================================
   Cards / Grids
   ========================================================================== */
.sbg-card-grid { display: grid; gap: 24px; margin: 24px 0; }
.sbg-card-grid-1 { grid-template-columns: 1fr; }
.sbg-card-grid-3 { grid-template-columns: repeat(3, 1fr); }
.sbg-card-grid-4 { grid-template-columns: repeat(4, 1fr); }
.sbg-card-grid-blog { grid-template-columns: repeat(3, 1fr); }

.sbg-card {
	background: var(--sbg-card-bg, #fff);
	border-radius: var(--sbg-radius-lg, 16px);
	overflow: hidden;
	box-shadow: var(--sbg-shadow-card, 0 2px 8px rgba(15,23,42,0.06));
	transition: var(--sbg-transition, all 0.2s ease);
	border: 1px solid var(--sbg-border-color, #E2E8F0);
}
.sbg-card:hover { transform: translateY(-3px); box-shadow: var(--sbg-shadow-md, 0 4px 12px rgba(15,23,42,0.08)); }
.sbg-card-link { display: flex; flex-direction: column; height: 100%; color: inherit; }
.sbg-card-media { position: relative; aspect-ratio: 3/2; overflow: hidden; background: var(--sbg-color-light-gray, #F1F5F9); }
.sbg-card-media img { width: 100%; height: 100%; object-fit: cover; }
.sbg-card-body { padding: 18px; flex: 1; display: flex; flex-direction: column; gap: 8px; }
.sbg-card-title { font-size: 1.05rem; margin: 0; }
.sbg-card-excerpt { font-size: 0.9rem; color: var(--sbg-muted-text, #64748B); margin: 0; flex: 1; }
.sbg-card-eyebrow {
	display: inline-block; font-size: 0.7rem; font-weight: 700; text-transform: uppercase;
	letter-spacing: 0.04em; color: var(--sbg-color-secondary, #2563EB);
}
.sbg-card-badge { position: absolute; top: 10px; left: 10px; }
.sbg-card-discount-flag, .sbg-card-expired-flag {
	position: absolute; top: 10px; right: 10px;
	background: var(--sbg-color-danger, #EF4444); color: #fff;
	font-size: 0.75rem; font-weight: 700; padding: 4px 10px; border-radius: var(--sbg-radius-full, 9999px);
}
.sbg-card-expired-flag { background: #64748B; }
.sbg-card-price-row { display: flex; gap: 10px; align-items: baseline; }
.sbg-card-price-deal { font-weight: 800; font-size: 1.1rem; color: var(--sbg-color-success, #14B8A6); }
.sbg-card-price-original { text-decoration: line-through; color: var(--sbg-muted-text, #64748B); font-size: 0.85rem; }
.sbg-card.is-expired { opacity: 0.6; }
.sbg-card-meta-line { font-size: 0.8rem; color: var(--sbg-muted-text, #64748B); }
.sbg-coupon-discount { font-weight: 800; color: var(--sbg-color-success, #14B8A6); }
.sbg-coupon-code {
	font-family: monospace; background: var(--sbg-color-light-gray, #F1F5F9);
	padding: 4px 10px; border-radius: 6px; display: inline-block; border: 1px dashed var(--sbg-border-color, #E2E8F0);
}

.sbg-comparison-card-vs { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 20px; }
.sbg-comparison-card-side { text-align: center; font-size: 0.85rem; }
.sbg-comparison-card-side img { width: 60px; height: 60px; object-fit: cover; border-radius: 8px; }
.sbg-comparison-card-side.is-winner span { font-weight: 700; color: var(--sbg-color-success, #14B8A6); }
.sbg-comparison-card-vs-label { font-weight: 800; color: var(--sbg-muted-text, #64748B); }

.sbg-no-results { text-align: center; padding: 60px 20px; }

/* ==========================================================================
   Archive header / filters
   ========================================================================== */
.sbg-archive-header { margin-bottom: 24px; }
.sbg-archive-title { font-size: 1.8rem; }
.sbg-archive-count { color: var(--sbg-muted-text, #64748B); font-size: 0.9rem; }
.sbg-archive-filters { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 24px; }
.sbg-archive-filter-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.sbg-filter-chip {
	padding: 6px 16px; border-radius: var(--sbg-radius-full, 9999px);
	background: var(--sbg-color-light-gray, #F1F5F9);
	font-size: 0.85rem; font-weight: 600;
}
.sbg-filter-chip.is-active { background: var(--sbg-color-secondary, #2563EB); color: #fff; }

.sbg-pagination { display: flex; gap: 8px; justify-content: center; margin: 32px 0; }
.sbg-pagination .page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 40px; height: 40px; border-radius: var(--sbg-radius-sm, 6px);
	background: var(--sbg-color-light-gray, #F1F5F9);
}
.sbg-pagination .page-numbers.current { background: var(--sbg-color-secondary, #2563EB); color: #fff; }

/* ==========================================================================
   Single post / review layout
   ========================================================================== */
.sbg-single-header { margin-bottom: 20px; }
.sbg-single-title { font-size: 2rem; }
.sbg-post-meta { display: flex; gap: 16px; flex-wrap: wrap; font-size: 0.85rem; color: var(--sbg-muted-text, #64748B); margin-bottom: 12px; }
.sbg-quick-summary { font-size: 1.1rem; color: var(--sbg-muted-text, #64748B); }
.sbg-single-hero { border-radius: var(--sbg-radius-lg, 16px); overflow: hidden; margin-bottom: 24px; }
.sbg-single-hero img { width: 100%; height: auto; display: block; }

.sbg-review-top { display: grid; grid-template-columns: 2fr 1fr; gap: 24px; align-items: start; margin-bottom: 24px; }
.sbg-review-buybox {
	background: var(--sbg-color-light-gray, #F1F5F9);
	border-radius: var(--sbg-radius-lg, 16px);
	padding: 24px; display: flex; flex-direction: column; gap: 12px; align-items: flex-start;
}
.sbg-review-buybox-price { font-size: 1.6rem; font-weight: 800; }
.sbg-review-buybox-cta { width: 100%; }

.sbg-summary-box {
	background: #fff; border: 1px solid var(--sbg-border-color, #E2E8F0); border-radius: var(--sbg-radius-lg, 16px);
	padding: 20px 24px; margin: 24px 0;
}
.sbg-summary-box-list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 0; }
.sbg-summary-row dt { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sbg-muted-text, #64748B); margin-bottom: 4px; }
.sbg-summary-row dd { margin: 0; font-weight: 700; }
.sbg-summary-features { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--sbg-border-color, #E2E8F0); }
.sbg-summary-features-label { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--sbg-muted-text, #64748B); }
.sbg-summary-features ul { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px 20px; }
.sbg-summary-features li { font-size: 0.9rem; padding-left: 18px; position: relative; }
.sbg-summary-features li::before { content: "\2713"; position: absolute; left: 0; color: var(--sbg-color-success, #14B8A6); font-weight: 700; }

.sbg-section-title { font-size: 1.4rem; margin-top: 40px; }
.sbg-rich-text { line-height: 1.7; }

.sbg-pros-cons-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.sbg-pros-list, .sbg-cons-list { list-style: none; margin: 0; padding: 0; }
.sbg-pros-list li, .sbg-cons-list li { padding: 8px 0; display: flex; gap: 8px; align-items: flex-start; }
.sbg-icon-check { color: var(--sbg-color-success, #14B8A6); font-weight: 700; }
.sbg-icon-cross { color: var(--sbg-color-danger, #EF4444); font-weight: 700; }
.sbg-comparison-pros-cons-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 40px; }

.sbg-specs-table { width: 100%; border-collapse: collapse; margin-top: 16px; }
.sbg-specs-table th, .sbg-specs-table td { padding: 12px; border-bottom: 1px solid var(--sbg-border-color, #E2E8F0); text-align: left; }
.sbg-specs-table th { width: 35%; color: var(--sbg-muted-text, #64748B); font-weight: 600; }

.sbg-verdict-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 16px; }
.sbg-verdict-buy, .sbg-verdict-avoid { padding: 20px; border-radius: var(--sbg-radius-md, 10px); background: var(--sbg-color-light-gray, #F1F5F9); }

.sbg-faq-list { margin-top: 16px; display: flex; flex-direction: column; gap: 10px; }
.sbg-faq-item { border: 1px solid var(--sbg-border-color, #E2E8F0); border-radius: var(--sbg-radius-md, 10px); padding: 4px 16px; }
.sbg-faq-question { cursor: pointer; font-weight: 700; padding: 12px 0; }
.sbg-faq-answer { padding-bottom: 14px; color: var(--sbg-muted-text, #64748B); }

.sbg-other-retailers { margin: 20px 0; }

/* Compare at a Glance table (review single) */
.sbg-glance-comparison-section { margin-top: 40px; }
.sbg-glance-table-wrap { overflow-x: auto; margin-top: 16px; }
.sbg-glance-table { width: 100%; border-collapse: collapse; min-width: 480px; }
.sbg-glance-table th, .sbg-glance-table td { padding: 12px 14px; border-bottom: 1px solid var(--sbg-border-color, #E2E8F0); text-align: center; }
.sbg-glance-table th[scope="row"] { text-align: left; color: var(--sbg-muted-text, #64748B); font-weight: 600; font-size: 0.85rem; }
.sbg-glance-label-col { min-width: 140px; }
.sbg-glance-table thead th { vertical-align: bottom; }
.sbg-glance-table thead th a { display: flex; flex-direction: column; align-items: center; gap: 6px; color: inherit; font-weight: 700; font-size: 0.9rem; }
.sbg-glance-table thead th img { width: 56px; height: 56px; object-fit: cover; border-radius: 8px; }
.sbg-glance-rating { display: block; font-size: 0.8rem; }
.sbg-glance-table th.sbg-glance-current,
.sbg-glance-table td.sbg-glance-current { background: var(--sbg-color-light-gray, #F1F5F9); font-weight: 700; }
.sbg-glance-price-row th, .sbg-glance-price-row td { font-weight: 700; }
.sbg-other-retailers-list { display: flex; gap: 10px; flex-wrap: wrap; list-style: none; margin: 8px 0 0; padding: 0; }
.sbg-other-retailers-list a { padding: 8px 16px; border-radius: var(--sbg-radius-full, 9999px); background: var(--sbg-color-light-gray, #F1F5F9); font-weight: 600; font-size: 0.85rem; }

.sbg-disclaimer { font-size: 0.75rem; color: var(--sbg-muted-text, #64748B); }

/* Comparison single */
.sbg-comparison-header-vs { display: flex; align-items: center; justify-content: center; gap: 32px; padding: 32px 0; }
.sbg-comparison-side { text-align: center; position: relative; }
.sbg-comparison-side.is-winner { outline: 2px solid var(--sbg-color-success, #14B8A6); border-radius: var(--sbg-radius-lg, 16px); padding: 12px; }
.sbg-winner-flag { position: absolute; top: -10px; left: 50%; transform: translateX(-50%); background: var(--sbg-color-success, #14B8A6); color: #fff; font-size: 0.7rem; font-weight: 700; padding: 3px 10px; border-radius: 9999px; }
.sbg-comparison-vs-label { font-size: 1.5rem; font-weight: 800; color: var(--sbg-muted-text, #64748B); }

/* Deal single */
.sbg-deal-hero { display: grid; grid-template-columns: 2fr 1fr; gap: 24px; margin-bottom: 24px; }
.sbg-deal-price-box { background: var(--sbg-color-light-gray, #F1F5F9); border-radius: var(--sbg-radius-lg, 16px); padding: 24px; }
.sbg-deal-price { font-size: 1.8rem; font-weight: 800; display: block; }
.sbg-deal-original-price { text-decoration: line-through; color: var(--sbg-muted-text, #64748B); }
.sbg-deal-percent-off { display: inline-block; margin-left: 8px; color: var(--sbg-color-danger, #EF4444); font-weight: 700; }
.sbg-single-deal.is-expired .sbg-deal-price-box { opacity: 0.6; }

/* Brand single */
.sbg-brand-header { display: flex; gap: 20px; align-items: center; }
.sbg-brand-logo img { width: 90px; height: 90px; object-fit: cover; border-radius: var(--sbg-radius-md, 10px); }
.sbg-brand-links { display: flex; gap: 16px; margin-top: 8px; }

/* Coupon single */
.sbg-coupon-box { text-align: center; background: var(--sbg-color-light-gray, #F1F5F9); border-radius: var(--sbg-radius-lg, 16px); padding: 32px; margin-bottom: 24px; }
.sbg-coupon-discount-large { font-size: 2rem; font-weight: 800; color: var(--sbg-color-success, #14B8A6); margin: 8px 0; }
.sbg-coupon-code-box { display: inline-flex; gap: 10px; align-items: center; margin: 16px 0; }

/* 404 */
.sbg-404 { text-align: center; padding: 60px 20px; }
.sbg-404-code { font-size: 5rem; font-weight: 800; color: var(--sbg-color-light-gray, #F1F5F9); display: block; -webkit-text-stroke: 2px var(--sbg-color-secondary, #2563EB); }
.sbg-404-actions { display: flex; gap: 12px; justify-content: center; margin: 24px 0 40px; }
.sbg-404-search { max-width: 480px; margin: 20px auto; }

/* ==========================================================================
   Footer
   ========================================================================== */
.sbg-footer { background: var(--sbg-footer-bg, #0F172A); color: var(--sbg-footer-text, #CBD5E1); padding: 48px 0 24px; margin-top: 60px; }
.sbg-footer a { color: var(--sbg-footer-text, #CBD5E1); }
.sbg-footer-disclaimer { padding-bottom: 24px; border-bottom: 1px solid rgba(255,255,255,0.1); margin-bottom: 24px; }
.sbg-footer-columns { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.sbg-footer-columns-1 { grid-template-columns: 1fr; }
.sbg-footer-columns-2 { grid-template-columns: repeat(2, 1fr); }
.sbg-footer-columns-3 { grid-template-columns: repeat(3, 1fr); }
.sbg-footer-widget-title { color: var(--sbg-footer-heading-color, #fff); font-size: 0.95rem; }
.sbg-footer-about .sbg-site-title { color: #fff; font-size: 1.2rem; font-weight: 800; }
.sbg-footer-bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 32px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,0.1); font-size: 0.85rem; }
.sbg-footer-nav { display: flex; gap: 20px; flex-wrap: wrap; }
.sbg-legal-menu { display: flex; gap: 16px; list-style: none; margin: 0; padding: 0; }

/* ==========================================================================
   Comments
   ========================================================================== */
.sbg-comments-area { margin-top: 48px; }
.sbg-comment-list { list-style: none; margin: 20px 0; padding: 0; }
.sbg-comment-body { display: flex; gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--sbg-border-color, #E2E8F0); }
.sbg-comment-avatar img { border-radius: 50%; }
.sbg-comment-author { font-weight: 700; margin-right: 10px; }
.sbg-comment-date { font-size: 0.8rem; color: var(--sbg-muted-text, #64748B); }
.sbg-comment-form input[type="text"],
.sbg-comment-form input[type="email"],
.sbg-comment-form input[type="url"],
.sbg-comment-form textarea {
	width: 100%; padding: 10px 14px; border: 1px solid var(--sbg-border-color, #E2E8F0);
	border-radius: var(--sbg-radius-sm, 6px); font-family: inherit;
}
.sbg-comment-form p { margin-bottom: 14px; }
.sbg-comment-form .form-submit input {
	background: var(--sbg-color-secondary, #2563EB); color: #fff; border: none;
	padding: 12px 28px; border-radius: var(--sbg-radius-md, 10px); cursor: pointer; font-weight: 700;
}

/* Home / hero */
.sbg-hero {
	background: linear-gradient(180deg, #FFFFFF 0%, var(--sbg-color-light-gray, #F1F5F9) 100%);
	padding: 80px 0 64px;
	text-align: center;
}
.sbg-hero-title { font-size: 2.75rem; margin-bottom: 14px; letter-spacing: -0.02em; }
.sbg-hero-subtitle { color: var(--sbg-muted-text, #64748B); font-size: 1.15rem; max-width: 620px; margin-left: auto; margin-right: auto; }
.sbg-hero-search { max-width: 560px; margin: 28px auto 0; }
.sbg-hero-trust-badges { display: flex; justify-content: center; gap: 28px; flex-wrap: wrap; margin-top: 28px; }
.sbg-hero-trust-badges span {
	font-size: 0.8rem; font-weight: 600; color: var(--sbg-muted-text, #64748B);
	display: inline-flex; align-items: center; gap: 6px;
}
.sbg-hero-trust-badges span::before {
	content: "\2713"; color: var(--sbg-color-success, #14B8A6); font-weight: 800;
}

.sbg-home-section { padding: 56px 0; }
.sbg-home-section-alt { background: var(--sbg-color-light-gray, #F1F5F9); }
.sbg-home-section-header { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 8px; }
.sbg-section-subtitle { color: var(--sbg-muted-text, #64748B); font-size: 0.95rem; margin: 4px 0 0; }

/* Featured Categories */
.sbg-category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 20px; }
.sbg-category-tile {
	display: flex; flex-direction: column; gap: 4px; padding: 22px 20px;
	background: #fff; border: 1px solid var(--sbg-border-color, #E2E8F0); border-radius: var(--sbg-radius-lg, 16px);
	transition: var(--sbg-transition, all 0.2s ease);
}
.sbg-category-tile:hover { border-color: var(--sbg-color-secondary, #2563EB); box-shadow: var(--sbg-shadow-md, 0 4px 12px rgba(15,23,42,0.08)); transform: translateY(-2px); }
.sbg-category-tile-name { font-weight: 700; font-size: 1.05rem; color: var(--sbg-body-text, #0F172A); }
.sbg-category-tile-count { font-size: 0.8rem; color: var(--sbg-muted-text, #64748B); }

/* Newsletter */
.sbg-newsletter-section {
	background: var(--sbg-color-primary, #0F172A);
	color: #fff;
	padding: 64px 0;
	text-align: center;
}
.sbg-newsletter-title { color: #fff; font-size: 2rem; margin-bottom: 10px; }
.sbg-newsletter-subtitle { color: #CBD5E1; max-width: 560px; margin: 0 auto; }
.sbg-newsletter-form {
	display: flex; gap: 10px; max-width: 460px; margin: 28px auto 0; flex-wrap: wrap; justify-content: center;
}
.sbg-newsletter-form input[type="email"] {
	flex: 1; min-width: 240px; padding: 14px 18px; border-radius: var(--sbg-radius-md, 10px);
	border: 1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.06); color: #fff; font-size: 1rem;
}
.sbg-newsletter-form input[type="email"]::placeholder { color: #94A3B8; }
.sbg-newsletter-form .sbg-btn-primary { padding: 14px 28px; }
.sbg-hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.sbg-newsletter-status { margin-top: 14px; font-size: 0.9rem; min-height: 1.2em; }
.sbg-newsletter-status.is-success { color: var(--sbg-color-success, #14B8A6); }
.sbg-newsletter-status.is-error { color: #F87171; }
.sbg-see-all { font-weight: 700; color: var(--sbg-color-secondary, #2563EB); }

/* Search form */
.search-form { display: flex; gap: 8px; }
.search-form .search-field { flex: 1; padding: 10px 14px; border-radius: var(--sbg-radius-sm, 6px); border: 1px solid var(--sbg-border-color, #E2E8F0); }
.search-form .search-submit { padding: 10px 20px; border-radius: var(--sbg-radius-sm, 6px); border: none; background: var(--sbg-color-secondary, #2563EB); color: #fff; font-weight: 700; cursor: pointer; }

/* Widgets */
.sbg-footer-widget ul { list-style: none; margin: 0; padding: 0; }
.sbg-footer-widget li { padding: 4px 0; }

/* Back to top */
.sbg-back-to-top {
	position: fixed; bottom: 24px; right: 24px;
	width: 44px; height: 44px; border-radius: 50%;
	background: var(--sbg-color-secondary, #2563EB); color: #fff;
	border: none; cursor: pointer; font-size: 1.2rem;
	opacity: 0; visibility: hidden; transform: translateY(10px);
	transition: var(--sbg-transition, all 0.2s ease);
	z-index: 500;
	box-shadow: var(--sbg-shadow-md, 0 4px 12px rgba(15,23,42,0.08));
}
.sbg-back-to-top.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
