/* ============================================================
   CFSP 2026 — дизайн система "Представителна"
   Класическа институционална визия · оригинално оранжево #FD720D
   Структура като стария сайт, модерно изпълнение.
   ============================================================ */
/* ---------- шрифт ---------- */
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url('../fonts/inter-cyr.woff2') format('woff2');
	unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url('../fonts/inter-lat.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- токени ---------- */
:root {
	--brand: #FD720D;          /* оригиналното оранжево на сайта */
	--brand-dark: #D95F04;
	--brand-soft: #FFF1E4;
	--ink: #26221E;
	--ink-soft: #635C55;
	--gray-bg: #F5F4F2;
	--charcoal: #26221E;
	--line: #E5E1DB;
	--wrap: 1200px;
	--radius: 8px;
	--shadow-card: 0 12px 34px -18px rgba(38, 34, 30, 0.35);
	--shadow-card-hover: 0 20px 44px -18px rgba(38, 34, 30, 0.4);
	--font: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
	--ease-out: cubic-bezier(0.22, 1, 0.36, 1);
}

/* ---------- базово ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: var(--font);
	font-size: 1.02rem;
	line-height: 1.68;
	font-optical-sizing: auto;
	color: var(--ink);
	background: #FFFFFF;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
:focus-visible { outline: 3px solid var(--brand); outline-offset: 2px; }

.wrap { max-width: var(--wrap); margin-inline: auto; padding-inline: clamp(1.1rem, 4vw, 2.2rem); }

.skip-link {
	position: absolute; left: -999px; top: 0; z-index: 300;
	background: var(--ink); color: #fff; padding: 0.7rem 1.2rem;
}
.skip-link:focus { left: 0; }

/* ---------- типография ---------- */
.display {
	font-size: clamp(2.1rem, 4.6vw, 3.4rem);
	font-weight: 740;
	line-height: 1.12;
	letter-spacing: -0.021em;
	margin: 0.35em 0;
	text-wrap: balance;
}
.heading {
	font-size: clamp(1.7rem, 3.2vw, 2.4rem);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.016em;
	margin: 0.3em 0;
	text-wrap: balance;
}
.eyebrow {
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--brand-dark);
	margin: 0 0 0.4rem;
}
.eyebrow-light { color: #FFB877; }
.lead {
	font-size: clamp(1.08rem, 1.7vw, 1.25rem);
	line-height: 1.65;
	color: var(--ink-soft);
	max-width: 58ch;
}
.section-sub { color: var(--ink-soft); max-width: 64ch; margin-top: 0.5rem; }

/* центрирани секционни заглавия като на стария сайт */
.center-head { text-align: center; margin-bottom: clamp(2rem, 4.5vw, 3.2rem); }
.center-head .heading { text-transform: uppercase; letter-spacing: 0.06em; }
.center-head .section-sub { margin-inline: auto; }
.title-line {
	display: inline-block;
	width: 64px; height: 4px;
	background: var(--brand);
	margin: 0.4rem 0 0.6rem;
}

/* ---------- бутони: правоъгълни, класически ---------- */
.btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
	padding: 0.85rem 1.7rem;
	border-radius: 2px;
	font-weight: 740; font-size: 0.93rem;
	letter-spacing: 0.07em; text-transform: uppercase;
	text-decoration: none;
	border: 2px solid transparent;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s var(--ease-out);
}
.btn-solid {
	background: var(--brand); color: #fff;
	box-shadow: 0 10px 24px -12px rgba(253, 114, 13, 0.65);
}
.btn-solid:hover { background: var(--brand-dark); transform: translateY(-2px); box-shadow: 0 14px 28px -12px rgba(253, 114, 13, 0.7); }
.btn-outline { border-color: var(--brand); color: var(--brand-dark); background: transparent; }
.btn-outline:hover { background: var(--brand); color: #fff; transform: translateY(-2px); }
.btn-outline-light { border-color: rgba(255, 255, 255, 0.85); color: #fff; background: transparent; }
.btn-outline-light:hover { background: #fff; color: var(--ink); transform: translateY(-2px); }
.btn-ghost { border-color: var(--line); color: var(--ink); background: transparent; }
.btn-ghost:hover { border-color: var(--brand); color: var(--brand-dark); }

.text-link { color: var(--brand-dark); font-weight: 700; text-decoration: none; }
.text-link:hover { text-decoration: underline; }

/* ---------- хедър ---------- */
/* Скриването на горната лента става с GPU transform върху целия хедър,
   а не с анимиране на max-height/padding — така няма трепване при скрол. */
.site-header {
	position: sticky; top: 0; z-index: 200;
	transform: translate3d(0, 0, 0);
	transition: transform 0.35s var(--ease-out);
	will-change: transform;
}
html.scrolled .site-header { transform: translate3d(0, calc(-1 * var(--topbar-h, 40px)), 0); }

.topbar {
	background: var(--charcoal); color: #CFC9C2;
	font-size: 0.88rem;
}
.topbar-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: 0.5rem; }
.topbar-name { margin: 0; font-weight: 550; letter-spacing: 0.02em; color: #A79F96; }
.topbar-links { display: flex; align-items: center; gap: 0.9rem; }
.topbar-links a { color: #F2EEE9; text-decoration: none; font-weight: 600; }
.topbar-links a:hover { color: #FFB877; }
.topbar-sep { width: 1px; height: 14px; background: rgba(255, 255, 255, 0.25); }

.header-main {
	position: relative;
	background: #FFFFFF;
	border-bottom: 1px solid var(--line);
	transition: box-shadow 0.3s ease;
}
html.scrolled .header-main { box-shadow: 0 10px 30px -22px rgba(38, 34, 30, 0.5); }
.header-inner {
	display: flex; align-items: center;
	gap: clamp(1rem, 3vw, 2.4rem);
	padding-block: 0.8rem;
}

.brand { display: flex; align-items: center; gap: 0.85rem; text-decoration: none; margin-right: auto; }
.brand-logo { width: 50px; height: 50px; display: block; flex: none; }
.brand-text { display: flex; flex-direction: column; line-height: 1.18; }
.brand-text strong { font-size: 1.05rem; font-weight: 740; letter-spacing: -0.005em; color: var(--ink); }
.brand-text span { font-size: 0.7rem; font-weight: 650; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brand-dark); }

.nav-list { display: flex; gap: clamp(1rem, 2vw, 1.8rem); list-style: none; margin: 0; padding: 0; }
.nav-list a, .nav-link {
	position: relative; display: inline-flex; align-items: center; gap: 0.4rem;
	background: none; border: none; cursor: pointer;
	text-decoration: none;
	font: inherit; font-weight: 650; font-size: 0.98rem;
	color: var(--ink-soft);
	padding: 0.45rem 0.05rem;
	transition: color 0.2s ease;
}
.nav-list a::after, .nav-link::after {
	content: ''; position: absolute; left: 0; right: 0; bottom: 0;
	height: 3px; background: var(--brand);
	transform: scaleX(0); transform-origin: left center;
	transition: transform 0.26s var(--ease-out);
}
.nav-list a:hover, .nav-link:hover, .nav-list a.is-active, .nav-link.is-active, .nav-link.is-open { color: var(--ink); }
.nav-list a:hover::after, .nav-link:hover::after,
.nav-list a.is-active::after, .nav-link.is-active::after, .nav-link.is-open::after { transform: scaleX(1); }
.nav-link .chev { transition: transform 0.25s ease; }
.nav-link.is-open .chev { transform: rotate(180deg); }

.header-cta { padding: 0.62rem 1.3rem; font-size: 0.85rem; }

.nav-toggle {
	display: none; flex-direction: column; justify-content: center; gap: 5px;
	width: 46px; height: 46px; padding: 11px;
	background: transparent; border: 1.5px solid var(--line); border-radius: 4px;
	cursor: pointer;
	transition: border-color 0.2s ease;
}
.nav-toggle:hover { border-color: var(--brand); }
.nav-toggle span { display: block; height: 2.3px; background: var(--ink); }

/* ---------- мега меню ---------- */
.mega {
	position: absolute; top: 100%; left: 0; right: 0;
	z-index: 115;
	pointer-events: none;
}
.mega.is-open { pointer-events: auto; }

.mega-card {
	position: relative; left: 0;
	width: var(--w, 600px); height: var(--h, 300px);
	transform: translateX(var(--x, 100px)) translateY(var(--lift, 6px));
	margin-top: 0;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-top: 3px solid var(--brand);
	border-radius: 0 0 var(--radius) var(--radius);
	box-shadow: 0 30px 70px -28px rgba(38, 34, 30, 0.45);
	overflow: hidden;
	opacity: 0;
	transition:
		width 0.36s var(--ease-out),
		height 0.36s var(--ease-out),
		transform 0.36s var(--ease-out),
		opacity 0.2s ease;
}
.mega.is-open .mega-card { opacity: 1; --lift: 0px; }
.mega-card.no-anim { transition: opacity 0.2s ease; }

.mega-panel {
	position: absolute; top: 0; left: 0;
	opacity: 0; pointer-events: none;
	transform: translateX(14px);
	transition: opacity 0.22s ease, transform 0.3s var(--ease-out);
}
.mega-panel.is-active { opacity: 1; pointer-events: auto; transform: none; }

.mega-panel[data-panel="deinosti"] { width: min(880px, 94vw); padding: 1.2rem; }
.mega-flex { display: flex; gap: 1.2rem; align-items: stretch; }
.mega-list {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-rows: repeat(5, auto); grid-auto-flow: column;
	gap: 0.15rem 1rem;
	flex: 1;
}
.mega-list a {
	display: flex; align-items: baseline; gap: 0.7rem;
	padding: 0.5rem 0.65rem;
	border-radius: 4px;
	text-decoration: none;
	font-weight: 600; font-size: 0.97rem; line-height: 1.3;
	color: var(--ink);
	transition: background 0.15s ease, color 0.15s ease;
}
.mega-list a:hover { background: var(--brand-soft); color: var(--brand-dark); }
.mega-num { font-size: 0.78rem; font-weight: 760; color: var(--brand); font-variant-numeric: tabular-nums; }

.mega-featured {
	width: 240px; flex: none;
	display: flex; flex-direction: column; gap: 0.25rem;
	background: var(--gray-bg);
	border-radius: var(--radius);
	padding: 0.8rem;
	text-decoration: none;
	transition: background 0.2s ease, box-shadow 0.2s ease;
}
.mega-featured:hover { background: var(--brand-soft); box-shadow: var(--shadow-card); }
.mega-featured figure { margin: 0 0 0.5rem; overflow: hidden; aspect-ratio: 16 / 10; border-radius: 5px; }
.mega-featured img { width: 100%; height: 100%; object-fit: cover; }
.mega-featured strong { font-size: 1.02rem; font-weight: 740; color: var(--ink); }
.mega-featured > span { font-size: 0.88rem; color: var(--ink-soft); line-height: 1.4; }
.mega-arrow { color: var(--brand-dark); font-weight: 740; }

.mega-panel[data-panel="oblasti"] { width: min(700px, 94vw); padding: 1.2rem; }
.mega-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.35rem 0.8rem; }
.mega-area {
	display: flex; align-items: center; gap: 0.8rem;
	padding: 0.5rem 0.65rem;
	border-radius: 4px;
	text-decoration: none;
	font-weight: 600; font-size: 0.97rem; line-height: 1.25;
	color: var(--ink);
	transition: background 0.15s ease, color 0.15s ease;
}
.mega-area:hover { background: var(--brand-soft); color: var(--brand-dark); }
.mega-area img { width: 46px; height: 46px; object-fit: cover; flex: none; border-radius: 5px; }
.mega-area-all { color: var(--brand-dark); }
.mega-all-mark {
	width: 46px; height: 46px; flex: none;
	display: grid; place-items: center;
	background: var(--brand); color: #fff;
	border-radius: 5px;
	font-size: 1.2rem; font-weight: 740;
	transition: background 0.16s ease;
}
.mega-area-all:hover .mega-all-mark { background: var(--brand-dark); }

.page-dim {
	position: fixed; inset: 0; z-index: 110;
	background: rgba(38, 34, 30, 0.3);
	opacity: 0; pointer-events: none;
	transition: opacity 0.3s ease;
}
html.mega-open .page-dim { opacity: 1; }

/* ---------- мобилен drawer ---------- */
.drawer-backdrop {
	position: fixed; inset: 0; z-index: 210;
	background: rgba(38, 34, 30, 0.45);
	opacity: 0; pointer-events: none;
	transition: opacity 0.3s ease;
}
html.menu-open .drawer-backdrop { opacity: 1; pointer-events: auto; }
html.menu-open { overflow: hidden; }

.drawer {
	position: fixed; top: 0; right: 0; bottom: 0; z-index: 220;
	width: min(380px, 92vw);
	background: #fff;
	box-shadow: -20px 0 60px -30px rgba(0, 0, 0, 0.4);
	transform: translateX(105%);
	transition: transform 0.36s var(--ease-out);
	display: flex; flex-direction: column;
	padding: 1.2rem 1.5rem 2rem;
}
html.menu-open .drawer { transform: none; }

.drawer-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.2rem; }
.drawer-close {
	width: 42px; height: 42px;
	background: transparent; border: 1.5px solid var(--line); border-radius: 4px;
	font-size: 1.05rem; color: var(--ink); cursor: pointer;
	transition: border-color 0.2s ease, color 0.2s ease;
}
.drawer-close:hover { border-color: var(--brand); color: var(--brand-dark); }

.drawer-nav { display: flex; flex-direction: column; overflow-y: auto; }
.drawer-link {
	display: flex; align-items: center; justify-content: space-between;
	padding: 0.95rem 0.15rem;
	font-size: 1.15rem; font-weight: 700;
	color: var(--ink); text-decoration: none;
	border-bottom: 1px solid var(--line);
}
.drawer-link.is-active { color: var(--brand-dark); }

.drawer-acc { border-bottom: 1px solid var(--line); }
.drawer-acc summary {
	display: flex; align-items: center; justify-content: space-between;
	padding: 0.95rem 0.15rem;
	font-size: 1.15rem; font-weight: 700;
	color: var(--ink); cursor: pointer;
	list-style: none;
}
.drawer-acc summary::-webkit-details-marker { display: none; }
.drawer-acc summary .chev { transition: transform 0.25s ease; color: var(--brand); }
.drawer-acc[open] summary .chev { transform: rotate(180deg); }
.drawer-acc[open] summary { color: var(--brand-dark); }
.drawer-acc-body { display: flex; flex-direction: column; padding: 0.1rem 0 0.9rem 0.9rem; }
.drawer-acc-body a {
	padding: 0.42rem 0.2rem;
	font-size: 0.99rem; font-weight: 550;
	color: var(--ink-soft); text-decoration: none;
}
.drawer-acc-body a:hover { color: var(--brand-dark); }
.drawer-acc-all { color: var(--brand-dark) !important; font-weight: 700 !important; margin-top: 0.3rem; }

.drawer-foot { margin-top: auto; display: flex; flex-direction: column; gap: 0.65rem; padding-top: 1.5rem; }
.drawer-contact { color: var(--ink-soft); font-weight: 600; text-decoration: none; }
.drawer-contact:hover { color: var(--brand-dark); }

/* ---------- банер (като стария слайдер) ---------- */
.banner {
	position: relative;
	min-height: clamp(480px, 68vh, 640px);
	display: flex; align-items: center;
	overflow: hidden;
}
.banner-img {
	position: absolute; inset: 0;
	width: 100%; height: 100%; object-fit: cover;
}
.banner-shade {
	position: absolute; inset: 0;
	background:
		linear-gradient(180deg, rgba(20, 16, 12, 0.55) 0%, rgba(20, 16, 12, 0.35) 45%, rgba(20, 16, 12, 0.6) 100%);
}
.banner-content {
	position: relative;
	text-align: center;
	display: flex; flex-direction: column; align-items: center;
	padding-block: clamp(3rem, 8vh, 5rem);
	max-width: 62rem;
}
.banner-eyebrow {
	margin: 0 0 0.9rem;
	font-size: 0.85rem; font-weight: 650;
	letter-spacing: 0.2em; text-transform: uppercase;
	color: #FFB877;
}
.banner-title {
	margin: 0;
	font-size: clamp(2.1rem, 5.4vw, 3.9rem);
	font-weight: 740;
	line-height: 1.1;
	letter-spacing: 0.004em;
	text-transform: uppercase;
	color: #FFFFFF;
	text-shadow: 0 3px 24px rgba(0, 0, 0, 0.45);
	text-wrap: balance;
}
.banner-lead {
	margin: 1.1rem 0 0;
	font-size: clamp(1.05rem, 1.8vw, 1.28rem);
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.92);
	max-width: 46rem;
	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.4);
}
.banner-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.9rem; margin-top: 1.8rem; }

/* ---------- секции ---------- */
.section { padding-block: clamp(3.2rem, 7.5vw, 5.5rem); }
.section-gray { background: var(--gray-bg); border-top: 4px solid var(--brand); }

/* ---------- разделено секционно заглавие ---------- */
.split-head {
	display: grid; grid-template-columns: 1.05fr 0.95fr;
	gap: clamp(1.2rem, 4vw, 3.5rem);
	align-items: end;
	padding-bottom: 1.6rem;
	margin-bottom: clamp(1.8rem, 4vw, 2.8rem);
	border-bottom: 1px solid var(--line);
}
.split-head-main .heading { margin: 0; }
.split-head-main .eyebrow { margin-bottom: 0.6rem; }
.split-head-aside { display: flex; flex-direction: column; align-items: flex-start; gap: 0.7rem; }
.split-head-aside p { margin: 0; color: var(--ink-soft); max-width: 46ch; }
.split-head-aside .text-link span { display: inline-block; transition: transform 0.22s var(--ease-out); }
.split-head-aside .text-link:hover span { transform: translateX(4px); }

/* ---------- картички Дейности ---------- */
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.service-card {
	position: relative;
	display: flex; flex-direction: column; align-items: flex-start;
	gap: 0.45rem;
	padding: 1.9rem 1.7rem 1.5rem;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 14px;
	text-decoration: none;
	overflow: hidden;
	transition: transform 0.3s var(--ease-out), box-shadow 0.3s ease, border-color 0.3s ease;
}
/* мека оранжева заря в горния ъгъл */
.service-card::before {
	content: ''; position: absolute; inset: 0;
	background: radial-gradient(115% 85% at 100% 0%, rgba(253, 114, 13, 0.11) 0%, transparent 62%);
	opacity: 0; transition: opacity 0.35s ease;
	pointer-events: none;
}
/* тънка линия, която се разгъва отгоре */
.service-card::after {
	content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
	background: var(--brand);
	transform: scaleX(0); transform-origin: left center;
	transition: transform 0.45s var(--ease-out);
}
.service-card:hover {
	transform: translateY(-5px);
	border-color: rgba(253, 114, 13, 0.38);
	box-shadow: 0 26px 50px -30px rgba(38, 34, 30, 0.5);
}
.service-card:hover::before { opacity: 1; }
.service-card:hover::after { transform: scaleX(1); }

/* едра „призрачна" номерация */
.service-index {
	position: absolute; top: 1.1rem; right: 1.4rem;
	font-size: 2.6rem; font-weight: 760;
	line-height: 1;
	letter-spacing: -0.03em;
	font-variant-numeric: tabular-nums;
	color: rgba(38, 34, 30, 0.07);
	transition: color 0.3s ease;
	pointer-events: none;
}
.service-card:hover .service-index { color: rgba(253, 114, 13, 0.18); }

.service-icon {
	position: relative;
	width: 54px; height: 54px;
	display: grid; place-items: center;
	background: var(--brand-soft);
	border-radius: 12px;
	color: var(--brand-dark);
	margin-bottom: 0.6rem;
	transition: background 0.3s ease, color 0.3s ease, transform 0.35s var(--ease-out);
}
.service-icon svg { width: 27px; height: 27px; }
.service-card:hover .service-icon {
	background: var(--brand); color: #fff;
	transform: translateY(-2px) scale(1.04);
}

.service-card h3 {
	margin: 0;
	font-size: 1.13rem; font-weight: 700;
	line-height: 1.32;
	letter-spacing: -0.004em;
	color: var(--ink);
	max-width: 22ch;
	transition: color 0.25s ease;
}
.service-card:hover h3 { color: var(--brand-dark); }
.service-card p { margin: 0; font-size: 0.94rem; line-height: 1.6; color: var(--ink-soft); }

.service-more {
	display: flex; align-items: center; gap: 0.45rem;
	margin-top: auto;
	padding-top: 1.1rem;
	font-size: 0.82rem; font-weight: 740;
	letter-spacing: 0.09em; text-transform: uppercase;
	color: var(--brand-dark);
	opacity: 0.75;
	transition: opacity 0.25s ease;
}
.service-card:hover .service-more { opacity: 1; }
.service-arrow { display: inline-block; transition: transform 0.28s var(--ease-out); }
.service-card:hover .service-arrow { transform: translateX(5px); }

/* ---------- Области — шахматна мозайка ---------- */
.section-mosaic { padding-bottom: 0; }
.section-mosaic .split-head { margin-bottom: clamp(1.8rem, 4vw, 2.6rem); }

.mosaic {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	background: var(--line);
	border-top: 1px solid var(--line);
}
.tile {
	position: relative;
	margin: 0;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #FFFFFF;
	outline: 1px solid var(--line);
	outline-offset: -0.5px;
}

/* --- текстова плочка --- */
.tile-text .tile-inner {
	position: absolute; inset: 0;
	display: flex; flex-direction: column;
	align-items: center; justify-content: center;
	text-align: center;
	gap: 0.35rem;
	padding: clamp(1.4rem, 3.4vw, 2.8rem);
	transition: background 0.4s ease;
}
.tile-text::before {
	content: ''; position: absolute; inset: 0;
	background: radial-gradient(100% 80% at 50% 0%, rgba(253, 114, 13, 0.09) 0%, transparent 65%);
	opacity: 0; transition: opacity 0.4s ease;
}
.tile-text:hover::before { opacity: 1; }

.tile-text h3 {
	margin: 0;
	font-size: clamp(1rem, 1.55vw, 1.32rem);
	font-weight: 740;
	line-height: 1.25;
	letter-spacing: 0.045em;
	text-transform: uppercase;
	color: var(--ink);
	transition: color 0.3s ease;
	text-wrap: balance;
}
.tile-text:hover h3 { color: var(--brand-dark); }

.tile-rule {
	display: block;
	width: 44px; height: 3px;
	background: var(--brand);
	border-radius: 2px;
	margin: 0.75rem 0 0.55rem;
	transition: width 0.45s var(--ease-out);
}
.tile-text:hover .tile-rule { width: 76px; }

.tile-text p {
	margin: 0;
	font-size: clamp(0.86rem, 1.05vw, 0.98rem);
	line-height: 1.62;
	color: var(--ink-soft);
	max-width: 42ch;
	display: -webkit-box;
	-webkit-line-clamp: 7;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.tile-more {
	display: inline-flex; align-items: center; gap: 0.4rem;
	margin-top: 0.95rem;
	font-size: 0.8rem; font-weight: 740;
	letter-spacing: 0.11em; text-transform: uppercase;
	color: var(--brand-dark);
	text-decoration: none;
}
.tile-more::after { content: ''; position: absolute; inset: 0; } /* цялата плочка е кликаема */
.tile-arrow { display: inline-block; transition: transform 0.3s var(--ease-out); }
.tile-text:hover .tile-arrow { transform: translateX(5px); }

/* --- снимкова плочка --- */
.tile-img img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform 0.9s var(--ease-out);
}
.tile-img::after {
	content: ''; position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(20, 16, 12, 0) 45%, rgba(20, 16, 12, 0.72) 100%);
	opacity: 0; transition: opacity 0.4s ease;
}
.tile-img figcaption {
	position: absolute; z-index: 2;
	left: 0; right: 0; bottom: 0;
	padding: 1.3rem clamp(1rem, 2vw, 1.6rem);
	font-size: 0.86rem; font-weight: 740;
	letter-spacing: 0.09em; text-transform: uppercase;
	color: #FFFFFF;
	text-align: center;
	opacity: 0; transform: translateY(10px);
	transition: opacity 0.4s ease, transform 0.45s var(--ease-out);
}
.tile-img:hover img { transform: scale(1.06); }
.tile-img:hover::after, .tile-img:hover figcaption { opacity: 1; transform: none; }

/* ---------- философия (гъските) ---------- */
.philosophy {
	background: var(--gray-bg);
	padding-block: clamp(3.2rem, 7.5vw, 5.5rem);
	border-top: 1px solid var(--line);
}
.philo-grid {
	display: grid; grid-template-columns: 0.95fr 1.05fr;
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: center;
}
.philo-media {
	position: relative; margin: 0;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 30px 60px -34px rgba(38, 34, 30, 0.6);
}
.philo-media::after {
	content: ''; position: absolute; inset: 0;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
	border-radius: 18px;
	pointer-events: none;
}
.philo-media img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4 / 3; }

.philo-body .heading { margin-top: 0.15em; }
.philo-text { margin: 0 0 1rem; color: var(--ink-soft); max-width: 52ch; }

.values {
	list-style: none; margin: 1.6rem 0 0; padding: 0;
	display: flex; flex-wrap: wrap; gap: 0.6rem;
}
.values li {
	display: inline-flex; align-items: center; gap: 0.5rem;
	padding: 0.5rem 1.05rem;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 999px;
	font-size: 0.86rem; font-weight: 700;
	letter-spacing: 0.07em; text-transform: uppercase;
	color: var(--ink);
	transition: border-color 0.25s ease, transform 0.25s var(--ease-out);
}
.values li::before {
	content: ''; width: 7px; height: 7px; border-radius: 50%;
	background: var(--brand); flex: none;
}
.values li:hover { border-color: var(--brand); transform: translateY(-2px); }

/* ---------- CTA панел ---------- */
.cta { padding-block: clamp(3rem, 7vw, 5rem); background: #FFFFFF; }
.cta-panel {
	position: relative;
	display: grid; grid-template-columns: 1.25fr 0.75fr;
	gap: clamp(1.6rem, 4vw, 3.5rem);
	align-items: center;
	padding: clamp(2rem, 4.5vw, 3.4rem);
	background: var(--charcoal);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 34px 70px -40px rgba(38, 34, 30, 0.8);
}
.cta-panel::before {
	content: ''; position: absolute; z-index: 0;
	width: 420px; height: 420px;
	right: -120px; top: -180px;
	background: radial-gradient(circle, rgba(253, 114, 13, 0.35) 0%, transparent 62%);
	pointer-events: none;
}
.cta-copy { position: relative; z-index: 1; }
.cta-copy h2 {
	margin: 0 0 0.6rem;
	font-size: clamp(1.5rem, 2.9vw, 2.15rem);
	font-weight: 740;
	line-height: 1.18;
	letter-spacing: -0.01em;
	color: #FFFFFF;
	text-wrap: balance;
}
.cta-copy p { margin: 0; color: #B7AFA6; max-width: 52ch; }

.cta-actions {
	position: relative; z-index: 1;
	display: flex; flex-direction: column; align-items: flex-start; gap: 1.1rem;
}
.cta-actions .btn { width: 100%; }
.cta-phone {
	display: flex; flex-direction: column; gap: 0.1rem;
	text-decoration: none;
	padding-left: 1.05rem;
	border-left: 3px solid var(--brand);
	transition: border-color 0.25s ease, transform 0.25s var(--ease-out);
}
.cta-phone span {
	font-size: 0.76rem; font-weight: 700;
	letter-spacing: 0.14em; text-transform: uppercase;
	color: #8C847B;
}
.cta-phone strong { font-size: 1.25rem; font-weight: 740; color: #FFFFFF; }
.cta-phone:hover { transform: translateX(3px); }
.cta-phone:hover strong { color: #FFB877; }

/* стар CTA блок — ползва се на вътрешните страници */
.cta-band { background: var(--gray-bg); border-top: 1px solid var(--line); }
.cta-inner { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 0.4rem; }
.cta-inner .banner-actions, .cta-inner .hero-actions { justify-content: center; margin-top: 1.3rem; display: flex; flex-wrap: wrap; gap: 0.9rem; }

/* ---------- вътрешни страници ---------- */
.hero-actions { display: flex; flex-wrap: wrap; gap: 0.9rem; margin-top: 1.4rem; }

.prose { max-width: 72ch; }
.prose h1, .prose h2, .prose h3 { font-weight: 700; line-height: 1.2; margin-top: 1.8em; }
.prose h2 { font-size: 1.6rem; }
.prose h3 { font-size: 1.28rem; }
.prose img { border-radius: var(--radius); margin-block: 1.2rem; box-shadow: var(--shadow-card); }
.prose a { color: var(--brand-dark); }
.prose blockquote {
	margin: 1.6rem 0; padding: 0.8rem 1.4rem;
	border-left: 5px solid var(--brand);
	background: var(--gray-bg);
	font-style: italic;
}

/* ---------- контакти ---------- */
.contact-grid { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.contact-info { display: flex; flex-direction: column; gap: 1.2rem; }
.contact-card {
	background: #fff;
	border-radius: var(--radius);
	border-top: 4px solid var(--brand);
	box-shadow: var(--shadow-card);
	padding: 1.4rem 1.6rem;
}
.contact-card p { margin: 0.3rem 0 0.6rem; color: var(--ink-soft); }
.contact-big { font-size: 1.25rem; font-weight: 740; color: var(--ink); text-decoration: none; }
.contact-big:hover { color: var(--brand-dark); }

.contact-form-wrap {
	background: #fff;
	border-radius: var(--radius);
	border-top: 4px solid var(--brand);
	box-shadow: var(--shadow-card);
	padding: clamp(1.4rem, 3vw, 2.2rem);
}
.contact-form { display: flex; flex-direction: column; gap: 1.1rem; }
.form-row { display: flex; flex-direction: column; }
.form-row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; }
.contact-form label { display: flex; flex-direction: column; gap: 0.35rem; font-weight: 650; font-size: 0.95rem; }
.contact-form input, .contact-form textarea {
	font: inherit; color: var(--ink);
	padding: 0.75rem 0.95rem;
	border: 1.5px solid var(--line); border-radius: 4px;
	background: #FDFDFC;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.contact-form input:focus, .contact-form textarea:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px rgba(253, 114, 13, 0.15); }
.contact-form textarea { resize: vertical; }
.hp-field { position: absolute; left: -9999px; }

.form-notice { padding: 1rem 1.3rem; border-radius: 4px; margin-bottom: 1.2rem; font-weight: 600; }
.form-notice-ok { background: #E8F5E4; color: #2C6B2F; border: 1px solid #BFDDB8; }
.form-notice-err { background: #FCEAE4; color: #A33A22; border: 1px solid #EFC5B8; }

/* ---------- новини ---------- */
.post-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 1.5rem; }
.post-card {
	display: flex; flex-direction: column; gap: 0.4rem;
	background: #fff;
	border-radius: var(--radius);
	border-top: 4px solid var(--brand);
	box-shadow: var(--shadow-card);
	padding: 1.5rem 1.6rem; text-decoration: none;
	transition: transform 0.22s var(--ease-out), box-shadow 0.22s ease;
}
.post-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-card-hover); }
.post-card time { font-size: 0.85rem; font-weight: 650; color: var(--brand-dark); text-transform: uppercase; letter-spacing: 0.08em; }
.post-card h2 { margin: 0; font-size: 1.28rem; font-weight: 700; line-height: 1.25; }
.post-card p { margin: 0; color: var(--ink-soft); font-size: 0.96rem; }

/* ---------- футър ---------- */
.site-footer { background: var(--charcoal); color: #CFC9C2; margin-top: clamp(2rem, 6vw, 4rem); border-top: 4px solid var(--brand); }
.footer-grid {
	display: grid; grid-template-columns: 1.3fr 0.8fr 0.9fr;
	gap: clamp(1.8rem, 4vw, 3.5rem);
	padding-block: clamp(2.5rem, 6vw, 4rem) 1.5rem;
}
.footer-brand .brand-text strong { color: #FDF9F2; }
.footer-brand .brand-text span { color: #FFB877; }
.footer-mission { margin-top: 1rem; max-width: 40ch; color: #A79F96; }
.footer-heading {
	font-size: 0.8rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase;
	color: #FFB877; margin: 0 0 0.8rem;
}
.footer-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.5rem; }
.footer-list a { color: #CFC9C2; text-decoration: none; }
.footer-list a:hover { color: #fff; text-decoration: underline; }
.footer-contacts li { color: #A79F96; }
.footer-bottom {
	border-top: 1px solid rgba(255,255,255,0.12);
	padding-block: 1.2rem;
	font-size: 0.9rem; color: #8C847B;
}
.footer-bottom p { margin: 0; }

/* ---------- reveal ---------- */
.reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.55s ease, transform 0.55s var(--ease-out); }
.reveal.in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.reveal { opacity: 1; transform: none; transition: none; }
	*, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
	.service-grid { grid-template-columns: repeat(2, 1fr); }
	.index-row { grid-template-columns: 3rem 1fr 3rem; }
	.index-desc { display: none; }
}

@media (max-width: 960px) {
	.site-nav, .header-cta, .mega { display: none; }
	.nav-toggle { display: flex; }
}

@media (max-width: 860px) {
	.split-head { grid-template-columns: 1fr; align-items: start; gap: 1rem; }
	.philo-grid { grid-template-columns: 1fr; }
	.cta-panel { grid-template-columns: 1fr; }
	.cta-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 1.4rem; }
	.cta-actions .btn { width: auto; }
	.mosaic { grid-template-columns: repeat(2, 1fr); }
	.contact-grid { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: 1fr; gap: 2rem; }
}

@media (max-width: 640px) {
	.mosaic { grid-template-columns: 1fr; }
	.tile { aspect-ratio: auto; }
	.tile-text .tile-inner { position: relative; inset: auto; padding: 2.2rem 1.5rem; }
	.tile-text p { -webkit-line-clamp: unset; display: block; overflow: visible; }
	.tile-img { aspect-ratio: 16 / 10; }
	.tile-img figcaption { opacity: 1; transform: none; }
	.tile-img::after { opacity: 1; }
	.topbar-name { display: none; }
	.topbar-inner { justify-content: center; }
	.service-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
	.form-row-2 { grid-template-columns: 1fr; }
	.brand-logo { width: 44px; height: 44px; }
	.brand-text strong { font-size: 0.92rem; }
	.brand-text span { font-size: 0.62rem; }
}
/* ---------- езиков превключвател ---------- */
.lang-switch { display: inline-flex; align-items: center; gap: 0.45rem; }
.lang-switch a {
	font-size: 0.82rem; font-weight: 740;
	letter-spacing: 0.08em;
	color: #A79F96; text-decoration: none;
	padding: 0.1rem 0.15rem;
	transition: color 0.2s ease;
}
.lang-switch a:hover { color: #FFFFFF; }
.lang-switch a.is-active { color: var(--brand); }
.lang-switch span { width: 1px; height: 12px; background: rgba(255, 255, 255, 0.25); }

.lang-switch-footer { margin-top: 1.4rem; }
.lang-switch-drawer { align-self: flex-start; margin-bottom: 0.4rem; }
.lang-switch-drawer a { color: var(--ink-soft); }
.lang-switch-drawer a:hover { color: var(--ink); }
.lang-switch-drawer a.is-active { color: var(--brand-dark); }
.lang-switch-drawer span { background: var(--line); }

/* ---------- заглавна част на вътрешните страници ---------- */
.page-head {
	position: relative;
	overflow: hidden;
	background: var(--gray-bg);
	border-bottom: 1px solid var(--line);
	padding-block: clamp(1.4rem, 3vw, 2rem) clamp(2.4rem, 5.5vw, 3.8rem);
}
.page-head-glow {
	position: absolute; z-index: 0;
	width: 640px; height: 640px;
	right: -180px; top: -340px;
	background: radial-gradient(circle, rgba(253, 114, 13, 0.16) 0%, transparent 62%);
	pointer-events: none;
}
.page-head-inner { position: relative; z-index: 1; }
.page-head .lead { margin-top: 0.7rem; }
.page-head-404 { border-bottom: none; padding-block: clamp(3rem, 8vw, 6rem); }

.page-title {
	margin: 0;
	font-size: clamp(1.9rem, 4.2vw, 3.1rem);
	font-weight: 740;
	line-height: 1.12;
	letter-spacing: -0.022em;
	text-wrap: balance;
}

/* трохи */
.crumbs { margin-bottom: clamp(1.2rem, 3vw, 2rem); }
.crumbs ol {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem;
	font-size: 0.86rem;
}
.crumbs li { display: flex; align-items: center; gap: 0.5rem; color: var(--ink-soft); }
.crumbs li + li::before { content: '/'; color: #B9B1A7; }
.crumbs a { color: var(--ink-soft); text-decoration: none; font-weight: 600; }
.crumbs a:hover { color: var(--brand-dark); }
.crumbs li[aria-current] span { font-weight: 650; color: var(--ink); }

/* ---------- оформление на вътрешна страница ---------- */
.page-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: clamp(2rem, 5vw, 4rem);
	align-items: start;
}
.page-figure {
	margin: 0 0 clamp(1.6rem, 3.5vw, 2.4rem);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 26px 54px -32px rgba(38, 34, 30, 0.55);
}
.page-figure img { width: 100%; height: auto; }

.page-body .prose { max-width: 68ch; }
.prose-lead { font-size: 1.16rem; line-height: 1.7; color: var(--ink); }
.prose > p:first-child { margin-top: 0; }

.lang-note {
	margin-top: 2rem;
	padding: 0.95rem 1.2rem;
	background: var(--brand-soft);
	border-left: 4px solid var(--brand);
	border-radius: 0 6px 6px 0;
	font-size: 0.95rem;
	color: var(--ink-soft);
}
.lang-note a { color: var(--brand-dark); font-weight: 700; text-decoration: none; margin-left: 0.3rem; }
.lang-note a:hover { text-decoration: underline; }

/* странична колона */
.page-aside { position: sticky; top: 120px; display: flex; flex-direction: column; gap: 1.2rem; }
.aside-heading {
	font-size: 0.78rem; font-weight: 740;
	letter-spacing: 0.15em; text-transform: uppercase;
	color: var(--brand-dark);
	margin: 0 0 0.9rem;
}
.aside-nav {
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 1.3rem 1.35rem;
}
.aside-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.aside-nav a {
	display: flex; align-items: flex-start; gap: 0.7rem;
	padding: 0.6rem 0.5rem;
	margin-inline: -0.5rem;
	border-radius: 8px;
	font-size: 0.95rem; font-weight: 600;
	line-height: 1.35;
	color: var(--ink-soft); text-decoration: none;
	transition: background 0.16s ease, color 0.16s ease;
}
.aside-nav a:hover { background: var(--brand-soft); color: var(--brand-dark); }
.aside-num { font-size: 0.76rem; font-weight: 760; color: var(--brand); font-variant-numeric: tabular-nums; padding-top: 0.14rem; }
.aside-nav a.is-current { background: var(--brand-soft); color: var(--brand-dark); }

.aside-help {
	background: var(--charcoal);
	border-radius: 14px;
	padding: 1.5rem 1.4rem;
	display: flex; flex-direction: column; align-items: flex-start; gap: 0.6rem;
}
.aside-help h2 { margin: 0; font-size: 1.1rem; font-weight: 740; color: #FFFFFF; line-height: 1.25; }
.aside-help p { margin: 0; font-size: 0.94rem; color: #B7AFA6; }
.aside-help .btn { margin-top: 0.4rem; width: 100%; }
.aside-phone { color: #FFFFFF; font-weight: 740; text-decoration: none; font-size: 1.05rem; }
.aside-phone:hover { color: #FFB877; }

/* ---------- карти на страница „Области" ---------- */
.area-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(1.4rem, 3vw, 2rem); }
.area-card {
	display: flex; flex-direction: column;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 16px;
	overflow: hidden;
	transition: transform 0.25s var(--ease-out), box-shadow 0.25s ease, border-color 0.25s ease;
}
.area-card:hover { transform: translateY(-5px); box-shadow: 0 26px 50px -30px rgba(38, 34, 30, 0.5); border-color: rgba(253, 114, 13, 0.35); }
.area-card-media { position: relative; margin: 0; overflow: hidden; aspect-ratio: 16 / 9; }
.area-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s var(--ease-out); }
.area-card:hover .area-card-media img { transform: scale(1.05); }
.area-card-num {
	position: absolute; left: 1rem; top: 1rem;
	width: 46px; height: 46px;
	display: grid; place-items: center;
	background: rgba(255, 255, 255, 0.94);
	border-radius: 50%;
	font-size: 0.98rem; font-weight: 760;
	color: var(--brand);
	font-variant-numeric: tabular-nums;
	transition: background 0.25s ease, color 0.25s ease;
}
.area-card:hover .area-card-num { background: var(--brand); color: #fff; }

.area-card-body { padding: 1.4rem 1.5rem 1.6rem; display: flex; flex-direction: column; flex: 1; }
.area-card-body h2 {
	margin: 0;
	font-size: 1.24rem; font-weight: 740;
	line-height: 1.25;
	letter-spacing: -0.008em;
	color: var(--ink);
}
.area-card-rule {
	display: block; width: 44px; height: 3px;
	background: var(--brand); border-radius: 2px;
	margin: 0.75rem 0 0.85rem;
	transition: width 0.4s var(--ease-out);
}
.area-card:hover .area-card-rule { width: 72px; }
.area-card-body p { margin: 0 0 1.2rem; font-size: 0.97rem; line-height: 1.68; color: var(--ink-soft); }
.area-card-link {
	margin-top: auto;
	display: inline-flex; align-items: center; gap: 0.6rem;
	font-size: 0.82rem; font-weight: 740;
	letter-spacing: 0.09em; text-transform: uppercase;
	color: var(--brand-dark); text-decoration: none;
}
.area-card-arrow {
	width: 32px; height: 32px;
	display: grid; place-items: center;
	border: 1.5px solid var(--brand);
	border-radius: 50%;
	transition: background 0.25s ease, color 0.25s ease, transform 0.25s var(--ease-out);
}
.area-card:hover .area-card-arrow { background: var(--brand); color: #fff; transform: translateX(4px); }

/* ---------- контактни карти: икони ---------- */
.contact-icon {
	width: 46px; height: 46px;
	display: grid; place-items: center;
	background: var(--brand-soft);
	border-radius: 11px;
	color: var(--brand-dark);
	margin-bottom: 0.85rem;
}
.contact-icon svg { width: 23px; height: 23px; }
.contact-card h2 { margin: 0; font-size: 1.05rem; font-weight: 740; letter-spacing: 0.01em; }

/* ---------- новини: линк в картата ---------- */
.post-card-more {
	margin-top: 0.9rem;
	font-size: 0.8rem; font-weight: 740;
	letter-spacing: 0.09em; text-transform: uppercase;
	color: var(--brand-dark);
}
.post-card-more span { display: inline-block; transition: transform 0.25s var(--ease-out); }
.post-card:hover .post-card-more span { transform: translateX(4px); }

/* ---------- странициране ---------- */
.pagination { margin-top: 2.4rem; }
.pagination .nav-links { display: flex; flex-wrap: wrap; gap: 0.5rem; justify-content: center; }
.pagination a, .pagination .current {
	display: inline-grid; place-items: center;
	min-width: 42px; height: 42px; padding-inline: 0.8rem;
	border: 1px solid var(--line); border-radius: 8px;
	font-weight: 700; text-decoration: none;
	color: var(--ink);
	transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
.pagination a:hover { border-color: var(--brand); color: var(--brand-dark); }
.pagination .current { background: var(--brand); border-color: var(--brand); color: #fff; }

/* ---------- responsive ---------- */
@media (max-width: 1000px) {
	.page-layout { grid-template-columns: 1fr; }
	.page-aside { position: static; flex-direction: row; flex-wrap: wrap; }
	.aside-nav, .aside-help { flex: 1 1 300px; }
}

@media (max-width: 760px) {
	.area-grid { grid-template-columns: 1fr; }
	.page-aside { flex-direction: column; }
}

@media (max-width: 640px) {
	.topbar-links { flex-wrap: wrap; justify-content: center; gap: 0.5rem 0.8rem; }
}

/* ============================================================
   МАГАЗИН
   ============================================================ */

/* количка в хедъра */
.cart-link {
	position: relative;
	width: 44px; height: 44px;
	display: grid; place-items: center;
	border: 1px solid var(--line);
	border-radius: 10px;
	color: var(--ink);
	text-decoration: none;
	transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}
.cart-link:hover { border-color: var(--brand); color: var(--brand-dark); background: var(--brand-soft); }
.cart-link svg { width: 21px; height: 21px; }
.cart-count {
	position: absolute; top: -7px; right: -7px;
	min-width: 20px; height: 20px; padding: 0 5px;
	display: grid; place-items: center;
	background: var(--brand); color: #fff;
	border-radius: 999px;
	font-size: 0.72rem; font-weight: 740;
	font-variant-numeric: tabular-nums;
}

/* филтър по категория */
.shop-filters { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-bottom: clamp(1.6rem, 3.5vw, 2.4rem); }
.shop-chip {
	display: inline-flex; align-items: center; gap: 0.5rem;
	padding: 0.6rem 1.2rem;
	border: 1px solid var(--line);
	border-radius: 999px;
	font-size: 0.92rem; font-weight: 700;
	color: var(--ink); text-decoration: none;
	background: #FFFFFF;
	transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease, transform 0.2s var(--ease-out);
}
.shop-chip:hover { border-color: var(--brand); color: var(--brand-dark); transform: translateY(-2px); }
.shop-chip.is-active { background: var(--brand); border-color: var(--brand); color: #fff; }
.shop-chip-count {
	font-size: 0.76rem; font-weight: 740;
	color: var(--ink-soft);
	background: var(--gray-bg);
	border-radius: 999px;
	padding: 0.05rem 0.45rem;
}
.shop-chip.is-active .shop-chip-count { background: rgba(255, 255, 255, 0.25); color: #fff; }

/* каталог */
.woocommerce ul.products {
	display: grid; grid-template-columns: repeat(3, 1fr);
	gap: clamp(1.3rem, 3vw, 2rem);
	list-style: none; margin: 0; padding: 0;
}
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
	position: relative;
	width: auto !important; float: none !important; margin: 0 !important;
	display: flex; flex-direction: column;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 16px;
	overflow: hidden;
	transition: transform 0.25s var(--ease-out), box-shadow 0.25s ease, border-color 0.25s ease;
}
.woocommerce ul.products li.product:hover {
	transform: translateY(-5px);
	box-shadow: 0 26px 50px -30px rgba(38, 34, 30, 0.5);
	border-color: rgba(253, 114, 13, 0.35);
}
.woocommerce ul.products li.product img {
	width: 100%; height: 100%; object-fit: cover;
	aspect-ratio: 4 / 3.4;
	margin: 0 !important;
	background: var(--gray-bg);
	transition: transform 0.7s var(--ease-out);
}
.woocommerce ul.products li.product:hover img { transform: scale(1.04); }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 1.1rem 1.3rem 0 !important;
	margin: 0;
	font-size: 1.1rem !important; font-weight: 740;
	line-height: 1.3;
	color: var(--ink);
}
.woocommerce ul.products li.product .price {
	display: block;
	padding: 0.45rem 1.3rem 0;
	margin: 0;
	font-size: 1.14rem !important; font-weight: 760;
	color: var(--brand-dark) !important;
}
.woocommerce ul.products li.product .price del { color: #A79F96; font-weight: 450; margin-right: 0.4rem; }
.woocommerce ul.products li.product .button { margin: 1rem 1.3rem 1.3rem !important; align-self: flex-start; }
.woocommerce ul.products li.product .onsale, .woocommerce span.onsale {
	position: absolute; top: 0.9rem; left: 0.9rem;
	min-width: auto; min-height: auto; line-height: 1;
	padding: 0.45rem 0.8rem;
	background: var(--brand); color: #fff;
	border-radius: 999px;
	font-size: 0.76rem; font-weight: 740;
	letter-spacing: 0.06em; text-transform: uppercase;
	margin: 0;
}

/* бутони на WooCommerce в нашия стил */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #respond input#submit {
	display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem;
	padding: 0.78rem 1.5rem;
	background: var(--brand); color: #fff;
	border: 2px solid transparent; border-radius: 2px;
	font-family: inherit; font-weight: 740; font-size: 0.88rem;
	letter-spacing: 0.07em; text-transform: uppercase;
	line-height: 1.2;
	box-shadow: 0 10px 24px -12px rgba(253, 114, 13, 0.65);
	transition: background 0.2s ease, transform 0.2s var(--ease-out), box-shadow 0.2s ease;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover,
.woocommerce #respond input#submit:hover {
	background: var(--brand-dark); color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 14px 28px -12px rgba(253, 114, 13, 0.7);
}
.woocommerce a.added_to_cart {
	display: inline-block; margin: 0 1.3rem 1.3rem;
	font-weight: 700; font-size: 0.88rem;
	color: var(--brand-dark);
}

/* единичен продукт */
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.8rem, 4vw, 3.5rem); align-items: start; }
.woocommerce div.product div.images { width: auto !important; float: none !important; margin: 0 !important; }
.woocommerce div.product div.images img { border-radius: 16px; box-shadow: 0 26px 54px -32px rgba(38, 34, 30, 0.55); }
.woocommerce div.product div.summary { width: auto !important; float: none !important; margin: 0 !important; }
.woocommerce div.product .product_title { display: none; }
.woocommerce div.product p.price, .woocommerce div.product span.price {
	font-size: 1.9rem !important; font-weight: 760;
	color: var(--ink) !important;
	margin: 0 0 0.6rem;
}
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--ink-soft); }
.handmade-note {
	display: inline-flex; align-items: center; gap: 0.5rem;
	margin: 0 0 1.3rem;
	padding: 0.55rem 1rem;
	background: var(--brand-soft);
	border-radius: 999px;
	font-size: 0.88rem; font-weight: 650;
	color: var(--brand-dark);
}
.woocommerce div.product form.cart { margin-bottom: 1.6rem; display: flex; gap: 0.8rem; align-items: center; flex-wrap: wrap; }
.woocommerce .quantity input.qty {
	width: 76px; height: 48px;
	padding: 0 0.6rem;
	border: 1.5px solid var(--line); border-radius: 4px;
	font: inherit; font-weight: 700; text-align: center;
	background: #fff;
}
.woocommerce div.product .stock { font-weight: 700; color: #2C6B2F; }
.woocommerce div.product .out-of-stock { color: #A33A22; }
.woocommerce div.product .product_meta { font-size: 0.9rem; color: var(--ink-soft); border-top: 1px solid var(--line); padding-top: 1rem; }
.woocommerce div.product .product_meta > span { display: block; margin-bottom: 0.25rem; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: 1rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding: 0 !important; margin: 0 0 1.4rem !important;
	border-bottom: 1px solid var(--line);
	display: flex; flex-wrap: wrap; gap: 0.4rem;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: transparent !important; border: none !important; border-radius: 0 !important;
	margin: 0 !important; padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block; padding: 0.7rem 1.1rem !important;
	font-weight: 740 !important; font-size: 0.88rem;
	letter-spacing: 0.06em; text-transform: uppercase;
	color: var(--ink-soft) !important;
	border-bottom: 3px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--ink) !important; border-bottom-color: var(--brand); }
.woocommerce div.product .woocommerce-tabs .panel h2 { display: none; }
.related.products { grid-column: 1 / -1; margin-top: clamp(2rem, 5vw, 3.5rem); }
.related.products > h2 { font-size: 1.5rem; font-weight: 740; margin-bottom: 1.4rem; }

/* количка, плащане, профил */
.woocommerce table.shop_table {
	border: 1px solid var(--line); border-radius: 14px; border-collapse: separate;
	overflow: hidden; background: #fff;
}
.woocommerce table.shop_table th { font-weight: 740; font-size: 0.84rem; letter-spacing: 0.07em; text-transform: uppercase; color: var(--ink-soft); }
.woocommerce table.shop_table td, .woocommerce table.shop_table th { padding: 1rem 1.1rem; }
.woocommerce table.cart img { width: 68px; border-radius: 8px; }
.woocommerce .cart-collaterals .cart_totals > h2, .woocommerce-checkout h3 { font-size: 1.25rem; font-weight: 740; margin-bottom: 0.9rem; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
	padding: 0.72rem 0.9rem !important; height: auto !important;
	border: 1.5px solid var(--line) !important; border-radius: 4px !important;
	font: inherit !important; background: #fff;
}
.woocommerce form .form-row label { font-weight: 650; font-size: 0.92rem; }
.woocommerce-info, .woocommerce-message, .woocommerce-error {
	border-top: none !important;
	border-left: 4px solid var(--brand) !important;
	background: var(--brand-soft) !important;
	border-radius: 0 8px 8px 0;
	color: var(--ink) !important;
	padding: 1rem 1.3rem !important;
}
.woocommerce-message { border-left-color: #2C6B2F !important; background: #E8F5E4 !important; }
.woocommerce-error { border-left-color: #A33A22 !important; background: #FCEAE4 !important; }
.woocommerce-info::before, .woocommerce-message::before, .woocommerce-error::before { display: none; }
.woocommerce #payment { border-radius: 14px; background: var(--gray-bg); }
.woocommerce #payment div.payment_box { background: #fff; border-radius: 8px; }
.woocommerce #payment div.payment_box::before { display: none; }

/* обещания под каталога */
.shop-promise { background: var(--gray-bg); border-top: 1px solid var(--line); padding-block: clamp(2.4rem, 5vw, 3.6rem); }
.shop-promise-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.4rem, 3vw, 2.4rem); }
.promise { display: flex; flex-direction: column; align-items: flex-start; gap: 0.4rem; }
.promise-icon {
	width: 48px; height: 48px;
	display: grid; place-items: center;
	background: #fff; border: 1px solid var(--line);
	border-radius: 12px;
	color: var(--brand-dark);
	margin-bottom: 0.4rem;
}
.promise-icon svg { width: 24px; height: 24px; }
.promise h2 { margin: 0; font-size: 1.08rem; font-weight: 740; }
.promise p { margin: 0; font-size: 0.95rem; color: var(--ink-soft); }

/* ============================================================
   БЛОГ
   ============================================================ */
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.4rem, 3vw, 2rem); }
.blog-card {
	display: flex; flex-direction: column;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 16px;
	overflow: hidden;
	transition: transform 0.25s var(--ease-out), box-shadow 0.25s ease, border-color 0.25s ease;
}
.blog-card:hover { transform: translateY(-5px); box-shadow: 0 26px 50px -30px rgba(38, 34, 30, 0.5); border-color: rgba(253, 114, 13, 0.35); }
.blog-card.is-lead { grid-column: span 2; flex-direction: row; }
.blog-card.is-lead .blog-media { width: 52%; flex: none; aspect-ratio: auto; }
.blog-card.is-lead .blog-body { justify-content: center; }
.blog-card.is-lead h2 { font-size: clamp(1.3rem, 2.2vw, 1.7rem); }

.blog-media { display: block; overflow: hidden; aspect-ratio: 16 / 10; background: var(--gray-bg); }
.blog-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s var(--ease-out); }
.blog-card:hover .blog-media img { transform: scale(1.04); }
.blog-media-fallback {
	width: 100%; height: 100%; min-height: 190px;
	display: grid; place-items: center;
	background: linear-gradient(135deg, var(--brand-soft) 0%, var(--gray-bg) 100%);
}
.blog-media-fallback img { width: 72px; height: 72px; opacity: 0.85; transform: none !important; }

.blog-body { padding: 1.3rem 1.5rem 1.5rem; display: flex; flex-direction: column; gap: 0.45rem; flex: 1; }
.blog-body time { font-size: 0.82rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--brand-dark); }
.blog-body h2 { margin: 0; font-size: 1.22rem; font-weight: 740; line-height: 1.28; }
.blog-body h2 a { text-decoration: none; color: var(--ink); transition: color 0.2s ease; }
.blog-card:hover .blog-body h2 a { color: var(--brand-dark); }
.blog-body p { margin: 0; font-size: 0.96rem; color: var(--ink-soft); }
.blog-more {
	margin-top: auto; padding-top: 0.9rem;
	display: inline-flex; align-items: center; gap: 0.5rem;
	font-size: 0.8rem; font-weight: 740;
	letter-spacing: 0.09em; text-transform: uppercase;
	color: var(--brand-dark); text-decoration: none;
}
.blog-arrow { display: inline-block; transition: transform 0.25s var(--ease-out); }
.blog-card:hover .blog-arrow { transform: translateX(4px); }

/* ---------- responsive: магазин и блог ---------- */
@media (max-width: 1000px) {
	.woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
	.blog-grid { grid-template-columns: repeat(2, 1fr); }
	.blog-card.is-lead { grid-column: span 2; }
	.woocommerce div.product { grid-template-columns: 1fr; }
	.shop-promise-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
	.woocommerce ul.products { grid-template-columns: 1fr; }
	.blog-grid { grid-template-columns: 1fr; }
	.blog-card.is-lead { grid-column: span 1; flex-direction: column; }
	.blog-card.is-lead .blog-media { width: 100%; aspect-ratio: 16 / 10; }
	.cart-link { width: 40px; height: 40px; }
}

/* ---------- лента за проекта „Социално предприятие" ---------- */
.project-band {
	position: relative;
	overflow: hidden;
	display: flex; align-items: center;
	min-height: clamp(360px, 48vh, 480px);
	border-block: 1px solid var(--line);
}
.project-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.project-shade {
	position: absolute; inset: 0;
	background:
		linear-gradient(180deg, rgba(20, 16, 12, 0.72) 0%, rgba(20, 16, 12, 0.55) 50%, rgba(20, 16, 12, 0.75) 100%);
}
.project-inner {
	position: relative;
	text-align: center;
	display: flex; flex-direction: column; align-items: center;
	padding-block: clamp(2.6rem, 6vh, 4rem);
	max-width: 60rem;
}
.project-eyebrow {
	margin: 0 0 0.8rem;
	font-size: 0.8rem; font-weight: 700;
	letter-spacing: 0.2em; text-transform: uppercase;
	color: #FFB877;
}
.project-title {
	margin: 0 0 0.9rem;
	font-size: clamp(1.55rem, 3.4vw, 2.5rem);
	font-weight: 740;
	line-height: 1.18;
	letter-spacing: 0.004em;
	text-transform: uppercase;
	color: #FFFFFF;
	text-shadow: 0 3px 22px rgba(0, 0, 0, 0.5);
	text-wrap: balance;
}
.project-text {
	margin: 0 0 1.7rem;
	font-size: clamp(0.95rem, 1.35vw, 1.06rem);
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.9);
	max-width: 52rem;
	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.45);
}

/* новини на началната — заглавията са h3 */
#novini .blog-body h3 { margin: 0; font-size: 1.2rem; font-weight: 740; line-height: 1.28; }
#novini .blog-body h3 a { text-decoration: none; color: var(--ink); transition: color 0.2s ease; }
#novini .blog-card:hover .blog-body h3 a { color: var(--brand-dark); }
#novini .split-head-aside { justify-content: flex-end; }

/* ---------- лента с финансирането (страница Проекти) ---------- */
.funding {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: clamp(1.2rem, 3vw, 2.2rem);
	margin-top: clamp(2rem, 4vw, 3rem);
	padding: clamp(1.3rem, 3vw, 1.8rem);
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-left: 4px solid #004494;
	border-radius: 12px;
}
.funding-logos { display: flex; align-items: center; gap: 1.4rem; flex-wrap: wrap; }
.funding-logos img { width: clamp(180px, 24vw, 240px); height: auto; }
.funding-text { min-width: 0; }
.funding-programme {
	margin: 0 0 0.3rem;
	font-size: 1rem; font-weight: 700;
	line-height: 1.35;
	color: var(--ink);
}
.funding-contract {
	margin: 0;
	font-size: 0.86rem;
	line-height: 1.55;
	color: var(--ink-soft);
}

@media (max-width: 620px) {
	.funding { grid-template-columns: 1fr; }
}

/* ---------- лента с логата на финансирането (най-горе на Проекти) ---------- */
.eu-bar {
	position: relative;
	background: #FFFFFF;
	border-bottom: 1px solid var(--line);
	padding-block: clamp(1.6rem, 3.5vw, 2.6rem);
	overflow: hidden;
}
.eu-bar::before {
	content: ''; position: absolute; inset: 0;
	background: radial-gradient(120% 100% at 50% 0%, rgba(0, 68, 148, 0.06) 0%, transparent 62%);
	pointer-events: none;
}
.eu-bar-inner {
	position: relative;
	display: flex; align-items: center; justify-content: center;
	flex-wrap: wrap;
	gap: clamp(1.2rem, 3.5vw, 3rem);
	text-align: center;
}
.eu-logos { display: flex; align-items: center; gap: clamp(1.2rem, 3vw, 2.4rem); }
.eu-logos img {
	height: clamp(58px, 7.5vw, 88px);
	width: auto;
	transition: transform 0.3s var(--ease-out);
}
.eu-logos img:hover { transform: translateY(-2px) scale(1.02); }
.eu-divider {
	width: 1px;
	align-self: stretch;
	min-height: 54px;
	background: linear-gradient(180deg, transparent, var(--line) 20%, var(--line) 80%, transparent);
}
.eu-bar-text {
	max-width: 34rem;
	text-align: left;
	padding-left: clamp(0rem, 2vw, 1.6rem);
	border-left: 3px solid var(--brand);
}
.eu-bar-programme {
	margin: 0 0 0.25rem;
	font-size: clamp(0.95rem, 1.4vw, 1.06rem);
	font-weight: 700;
	line-height: 1.35;
	color: var(--ink);
}
.eu-bar-contract {
	margin: 0;
	font-size: 0.84rem;
	line-height: 1.55;
	color: var(--ink-soft);
}

@media (max-width: 860px) {
	.eu-bar-inner { flex-direction: column; }
	.eu-bar-text { text-align: center; border-left: none; border-top: 3px solid var(--brand); padding: 0.9rem 0 0; }
}
@media (max-width: 460px) {
	.eu-logos { gap: 0.9rem; }
	.eu-logos img { height: 52px; }
	.eu-divider { display: none; }
}

/* ============================================================
   ВИЗУАЛИЗАЦИЯ ПО ПРЧР 2021–2027
   Емблемата е SVG с официалните #003399 / #FFCC00 и съотношение 3:2.
   Изявлението за съфинансиране е жив текст с Arial.
   Защитната зона е равна на височината на емблемата.
   ============================================================ */

.eu-band {
	background: #FFFFFF;
	border-block: 1px solid var(--line);
}

.eu-block {
	--eu-h: 72px;              /* височина на емблемата — по-голяма от логото в хедъра (50px) */
	--eu-clear: var(--eu-h);   /* защитна зона по наръчника */
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--eu-clear);
	padding-block: var(--eu-clear);
}

/* блокът „емблема + изявление“ — около него не застава друго лого или текст */
.eu-primary {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	flex: none;
}
.eu-flag {
	height: var(--eu-h);
	width: auto;
	display: block;
}
.eu-statement {
	font-family: Arial, sans-serif;   /* задължително по наръчника */
	font-size: calc(var(--eu-h) * 0.19);
	font-weight: 700;
	line-height: 1.25;
	color: #003399;
	white-space: nowrap;
}

/* логото на Програмата — не по-голямо от емблемата на ЕС */
.eu-partner { flex: none; }
.eu-prchr {
	height: var(--eu-h);
	width: auto;
	display: block;
}

.eu-meta {
	flex: 1 1 18rem;
	min-width: 0;
	font-family: "Trebuchet MS", sans-serif;
	color: #000000;
}
.eu-meta-programme {
	margin: 0 0 0.25rem;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.35;
	color: #000000;
}
.eu-meta-contract,
.eu-meta-line {
	margin: 0;
	font-size: 0.84rem;
	line-height: 1.5;
	color: #000000;
}

/* --- вариант за началната страница --- */
.eu-block--band { justify-content: center; }
.eu-block--band .eu-meta { flex: 0 1 30rem; }

/* --- вариант във футъра: бяла лента върху тъмния футър --- */
.footer-eu {
	background: #FFFFFF;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.eu-block--footer {
	--eu-h: 52px;
	--eu-clear: calc(var(--eu-h) * 0.62);
	justify-content: center;
	gap: calc(var(--eu-h) * 0.9);
}
.eu-block--footer .eu-statement { font-size: 0.72rem; }
.eu-block--footer .eu-meta { flex: 0 1 26rem; }
.eu-block--footer .eu-meta-line { font-size: 0.78rem; }

/* --- адаптивност: под 768px вертикален стек, емблемата на ЕС най-отгоре --- */
@media (max-width: 768px) {
	.eu-block,
	.eu-block--footer {
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: calc(var(--eu-h) * 0.7);
	}
	.eu-block { --eu-h: 64px; }
	.eu-block--footer { --eu-h: 56px; }
	.eu-primary { order: 1; }          /* емблемата остава първа */
	.eu-partner { order: 2; }
	.eu-meta { order: 3; flex: 1 1 auto; }
	.eu-statement { white-space: normal; font-size: 0.8rem; }
}

@media (max-width: 400px) {
	.eu-block, .eu-block--footer { --eu-h: 56px; }
	.eu-primary { flex-direction: column; gap: 0.5rem; }
}

/* ============================================================
   СОЦИАЛНО ПРЕДПРИЯТИЕ — представяне
   ============================================================ */
.se-grid { display: grid; grid-template-columns: 1fr 1.35fr; gap: clamp(1.3rem, 3vw, 2rem); }
.se-card {
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: clamp(1.4rem, 3vw, 2rem);
	display: flex; flex-direction: column; gap: 0.5rem;
}
.se-icon {
	width: 52px; height: 52px;
	display: grid; place-items: center;
	background: var(--brand-soft);
	border-radius: 12px;
	color: var(--brand-dark);
	margin-bottom: 0.4rem;
}
.se-icon svg { width: 26px; height: 26px; }
.se-card h3 { margin: 0; font-size: 1.18rem; font-weight: 700; line-height: 1.3; }
.se-card p { margin: 0; color: var(--ink-soft); }
.se-list { list-style: none; margin: 0.3rem 0 0; padding: 0; display: flex; flex-direction: column; gap: 0.75rem; }
.se-list li {
	position: relative;
	padding-left: 1.9rem;
	color: var(--ink-soft);
	line-height: 1.6;
}
.se-list li::before {
	content: '';
	position: absolute; left: 0; top: 0.45em;
	width: 10px; height: 10px;
	background: var(--brand);
	border-radius: 3px;
}

@media (max-width: 860px) {
	.se-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   ГАЛЕРИЯ
   ============================================================ */
.gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(0.8rem, 2vw, 1.2rem); }
.gallery-item { position: relative; margin: 0; }
.gallery-item a {
	position: relative;
	display: block;
	border-radius: 14px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: var(--gray-bg);
}
.gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s var(--ease-out); }
.gallery-item a:hover img { transform: scale(1.05); }
.gallery-zoom {
	position: absolute; inset: 0;
	display: grid; place-items: center;
	background: rgba(20, 16, 12, 0.35);
	color: #fff;
	opacity: 0;
	transition: opacity 0.28s ease;
}
.gallery-zoom svg { width: 30px; height: 30px; }
.gallery-item a:hover .gallery-zoom, .gallery-item a:focus-visible .gallery-zoom { opacity: 1; }
.gallery-item figcaption { margin-top: 0.5rem; font-size: 0.88rem; color: var(--ink-soft); }

@media (max-width: 860px) { .gallery-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .gallery-grid { grid-template-columns: 1fr; } }

/* ============================================================
   МАГАЗИН — банер и представяне
   ============================================================ */
.shop-hero {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #2B2119 0%, #4A3524 45%, var(--brand-dark) 100%);
	color: #fff;
	padding-block: clamp(2.6rem, 6vw, 4.4rem);
}
.shop-hero-art {
	position: absolute; inset: 0;
	color: rgba(255, 255, 255, 0.09);
	pointer-events: none;
}
.shop-hero-art img { width: 100%; height: 100%; object-fit: cover; }
.shop-hero-inner {
	position: relative;
	display: flex; align-items: center; justify-content: space-between;
	gap: clamp(1.5rem, 4vw, 3rem);
}
.shop-hero-copy { max-width: 46rem; }
.shop-hero-title {
	margin: 0 0 0.7rem;
	font-size: clamp(1.7rem, 3.6vw, 2.7rem);
	font-weight: 740;
	line-height: 1.15;
	letter-spacing: -0.018em;
	color: #FFFFFF;
	text-wrap: balance;
}
.shop-hero-lead {
	margin: 0;
	font-size: clamp(1rem, 1.5vw, 1.12rem);
	line-height: 1.65;
	color: rgba(255, 255, 255, 0.9);
}
.shop-hero-mark { flex: none; }
.shop-hero-mark img {
	width: clamp(84px, 10vw, 118px);
	height: auto;
	border-radius: 16px;
	box-shadow: 0 20px 44px -22px rgba(0, 0, 0, 0.8);
}

.shop-intro { padding-block: clamp(2.2rem, 5vw, 3.4rem); }
.shop-intro-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: clamp(1.6rem, 4vw, 3.2rem); align-items: start; }
.shop-intro-text { margin: 0; font-size: 1.04rem; line-height: 1.75; color: var(--ink-soft); }
.shop-why h3 {
	margin: 0 0 0.9rem;
	font-size: 1.2rem; font-weight: 740;
}
.shop-why ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.85rem; }
.shop-why li {
	display: flex; flex-direction: column; gap: 0.15rem;
	padding-left: 1.5rem;
	position: relative;
}
.shop-why li::before {
	content: '';
	position: absolute; left: 0; top: 0.5em;
	width: 8px; height: 8px;
	background: var(--brand);
	border-radius: 50%;
}
.shop-why strong { font-weight: 700; color: var(--ink); }
.shop-why span { font-size: 0.95rem; color: var(--ink-soft); }

@media (max-width: 860px) {
	.shop-hero-inner { flex-direction: column; align-items: flex-start; }
	.shop-intro-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   МАРКА „ПРОДУКТ НА СОЦИАЛНО ПРЕДПРИЯТИЕ"
   ============================================================ */
.mark-badge {
	position: absolute; z-index: 3;
	top: 0.75rem; right: 0.75rem;
	display: grid; place-items: center;
	background: rgba(255, 255, 255, 0.96);
	border-radius: 50%;
	padding: 5px;
	box-shadow: 0 6px 18px -8px rgba(38, 34, 30, 0.6);
	pointer-events: none;
}
.mark-badge img { width: 56px; height: 56px; object-fit: contain; display: block; }
.mark-badge-text {
	display: block;
	max-width: 88px;
	padding: 0.35rem 0.5rem;
	font-size: 0.6rem; font-weight: 700;
	line-height: 1.2; text-align: center;
	color: var(--brand-dark);
	text-transform: uppercase;
	letter-spacing: 0.02em;
}
.woocommerce ul.products li.product .mark-badge { border-radius: 999px; }

.mark-certified {
	display: flex; align-items: center; gap: 0.9rem;
	margin: 0 0 1.4rem;
	padding: 0.85rem 1.1rem;
	background: var(--gray-bg);
	border: 1px solid var(--line);
	border-left: 4px solid var(--brand);
	border-radius: 10px;
}
.mark-certified-logo { width: 64px; height: 64px; object-fit: contain; flex: none; }
.mark-certified-fallback {
	display: grid; place-items: center;
	background: var(--brand-soft);
	border-radius: 10px;
	color: var(--brand-dark);
}
.mark-certified-fallback svg { width: 30px; height: 30px; }
.mark-certified-text { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; }
.mark-certified-text strong { font-size: 0.95rem; font-weight: 700; line-height: 1.3; color: var(--ink); }
.mark-certified-text span { font-size: 0.82rem; line-height: 1.4; color: var(--ink-soft); }

@media (max-width: 520px) {
	.mark-certified { gap: 0.7rem; padding: 0.75rem 0.9rem; }
	.mark-certified-logo { width: 48px; height: 48px; }
	.mark-certified-text strong { font-size: 0.88rem; }
	.mark-certified-text span { font-size: 0.76rem; }
	.mark-badge img { width: 44px; height: 44px; }
}

/* ============================================================
   ЧАТ АСИСТЕНТ
   ============================================================ */
.chat { position: fixed; right: clamp(0.9rem, 2vw, 1.5rem); bottom: clamp(0.9rem, 2vw, 1.5rem); z-index: 250; }

.chat-toggle {
	display: inline-flex; align-items: center; gap: 0.55rem;
	padding: 0.8rem 1.25rem;
	background: var(--brand); color: #fff;
	border: none; border-radius: 999px;
	font: inherit; font-weight: 700; font-size: 0.95rem;
	cursor: pointer;
	box-shadow: 0 16px 34px -14px rgba(253, 114, 13, 0.75);
	transition: background 0.2s ease, transform 0.2s var(--ease-out);
}
.chat-toggle:hover { background: var(--brand-dark); transform: translateY(-2px); }
.chat-toggle-icon { display: grid; place-items: center; width: 22px; height: 22px; }
.chat-toggle-icon svg { width: 22px; height: 22px; grid-area: 1 / 1; transition: opacity 0.2s ease, transform 0.25s var(--ease-out); }
.chat-i-close { opacity: 0; transform: rotate(-45deg); }
html.chat-open .chat-i-open { opacity: 0; transform: rotate(45deg); }
html.chat-open .chat-i-close { opacity: 1; transform: none; }

.chat-panel {
	position: absolute; right: 0; bottom: calc(100% + 0.7rem);
	width: min(360px, calc(100vw - 1.8rem));
	max-height: min(70vh, 560px);
	display: flex; flex-direction: column;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 16px;
	box-shadow: 0 30px 70px -28px rgba(38, 34, 30, 0.55);
	overflow: hidden;
	opacity: 0; transform: translateY(12px) scale(0.98);
	transition: opacity 0.25s ease, transform 0.28s var(--ease-out);
}
.chat-panel:not([hidden]) { opacity: 1; transform: none; }

.chat-head {
	display: flex; align-items: center; gap: 0.7rem;
	padding: 0.9rem 1rem;
	background: var(--charcoal); color: #fff;
}
.chat-avatar { width: 38px; height: 38px; border-radius: 9px; flex: none; }
.chat-head div { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.chat-head strong { font-size: 0.97rem; font-weight: 700; }
.chat-head span { font-size: 0.78rem; color: #B7AFA6; }
.chat-x {
	margin-left: auto; flex: none;
	width: 30px; height: 30px;
	background: transparent; border: 1px solid rgba(255,255,255,0.25); border-radius: 8px;
	color: #fff; cursor: pointer; font-size: 0.8rem;
}
.chat-x:hover { background: rgba(255,255,255,0.12); }

.chat-body { padding: 1rem; overflow-y: auto; flex: 1; }
.chat-msg {
	max-width: 92%;
	padding: 0.65rem 0.9rem;
	border-radius: 12px;
	font-size: 0.92rem; line-height: 1.55;
	margin-bottom: 0.6rem;
}
.chat-msg-bot { background: var(--gray-bg); color: var(--ink); border-bottom-left-radius: 4px; }
.chat-msg-user { background: var(--brand-soft); color: var(--brand-dark); margin-left: auto; border-bottom-right-radius: 4px; font-weight: 600; }
.chat-msg a { color: var(--brand-dark); font-weight: 700; }

.chat-questions { display: flex; flex-direction: column; gap: 0.45rem; margin-top: 0.4rem; }
.chat-q {
	text-align: left;
	padding: 0.6rem 0.85rem;
	background: #fff;
	border: 1px solid var(--line); border-radius: 10px;
	font: inherit; font-size: 0.9rem; font-weight: 600;
	color: var(--ink); cursor: pointer;
	transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
}
.chat-q:hover { border-color: var(--brand); background: var(--brand-soft); color: var(--brand-dark); }
.chat-back {
	margin-top: 0.3rem;
	background: none; border: none;
	font: inherit; font-size: 0.85rem; font-weight: 700;
	color: var(--brand-dark); cursor: pointer; padding: 0.3rem 0;
}
.chat-back:hover { text-decoration: underline; }

.chat-foot { display: flex; gap: 0.5rem; padding: 0.75rem 1rem; border-top: 1px solid var(--line); }
.chat-action {
	flex: 1;
	text-align: center;
	padding: 0.6rem 0.7rem;
	border-radius: 8px;
	font-size: 0.85rem; font-weight: 700;
	text-decoration: none;
	background: var(--brand); color: #fff;
}
.chat-action:hover { background: var(--brand-dark); }
.chat-action-call { background: var(--gray-bg); color: var(--ink); }
.chat-action-call:hover { background: var(--brand-soft); color: var(--brand-dark); }

@media (max-width: 520px) {
	.chat-toggle-label { display: none; }
	.chat-toggle { padding: 0.85rem; }
	.chat-panel { width: calc(100vw - 1.8rem); }
}

@media (prefers-reduced-motion: reduce) {
	.chat-panel, .chat-toggle, .chat-toggle-icon svg { transition: none; }
}

/* ---------- чат: свободен въпрос и жив разговор ---------- */
.chat-q-other {
	border-style: dashed;
	border-color: var(--brand);
	color: var(--brand-dark);
	background: var(--brand-soft);
}
.chat-q-other:hover { border-style: solid; }

.chat-form { display: flex; flex-direction: column; gap: 0.6rem; }
.chat-form .chat-msg { margin-bottom: 0.2rem; max-width: 100%; }
.chat-field { display: flex; flex-direction: column; gap: 0.25rem; }
.chat-field > span { font-size: 0.8rem; font-weight: 700; color: var(--ink-soft); }
.chat-field input, .chat-field textarea {
	font: inherit; font-size: 0.92rem;
	padding: 0.55rem 0.7rem;
	border: 1.5px solid var(--line); border-radius: 8px;
	background: #fff; color: var(--ink);
	width: 100%;
	transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.chat-field input:focus, .chat-field textarea:focus {
	outline: none; border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(253, 114, 13, 0.14);
}
.chat-field textarea { resize: vertical; min-height: 68px; }
.chat-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
.chat-hint { margin: -0.25rem 0 0; font-size: 0.76rem; color: var(--ink-soft); }
.chat-hp { position: absolute; left: -9999px; }
.chat-error {
	margin: 0;
	padding: 0.55rem 0.75rem;
	background: #FCEAE4; color: #A33A22;
	border-left: 3px solid #A33A22; border-radius: 0 6px 6px 0;
	font-size: 0.85rem; font-weight: 600;
}
.chat-form-actions { display: flex; align-items: center; gap: 0.6rem; margin-top: 0.2rem; }
.chat-send {
	padding: 0.6rem 1.2rem;
	background: var(--brand); color: #fff;
	border: none; border-radius: 8px;
	font: inherit; font-size: 0.9rem; font-weight: 700;
	cursor: pointer;
	transition: background 0.18s ease;
}
.chat-send:hover { background: var(--brand-dark); }
.chat-send:disabled { opacity: 0.6; cursor: default; }
.chat-form-actions .chat-back { margin: 0; }
.chat-privacy { margin: 0; font-size: 0.72rem; line-height: 1.45; color: var(--ink-soft); }


@media (max-width: 400px) {
	.chat-field-row { grid-template-columns: 1fr; }
}

/* ---------- корекции за WooCommerce страници ----------
   WooCommerce слага `.woocommerce-page img { height: auto }` върху цялото <body>,
   което разваляше размерите на логата във футъра. Даваме по-висока специфичност. */
.eu-block img.eu-flag { height: var(--eu-h); width: auto; max-width: none; }
.eu-block img.eu-prchr { height: var(--eu-h); width: auto; max-width: none; }
.site-header img.brand-logo, .site-footer img.brand-logo, .drawer img.brand-logo { height: auto; }
.chat img.chat-avatar { width: 38px; height: 38px; }

/* ---------- бадж с националната марка (широко лого) ---------- */
.mark-badge {
	border-radius: 10px;
	padding: 6px 8px;
}
.mark-badge img {
	width: auto; height: 34px;
	max-width: 128px;
	object-fit: contain;
}
.woocommerce ul.products li.product .mark-badge { border-radius: 10px; }

.mark-certified-logo, .mark-certified img.mark-certified-logo {
	width: auto; height: 46px;
	max-width: 150px;
	object-fit: contain;
}
.mark-certified-fallback { width: 56px; height: 46px; }

@media (max-width: 520px) {
	.mark-badge img { height: 26px; max-width: 100px; }
	.mark-certified-logo, .mark-certified img.mark-certified-logo { height: 38px; max-width: 120px; }
}

/* ---------- баджът да не попада под правилото за продуктовите снимки ----------
   `.woocommerce ul.products li.product img` (0,3,3) налагаше на логото
   object-fit: cover и съотношение 4/3.4, което го изрязваше отстрани. */
.woocommerce ul.products li.product .mark-badge img,
.woocommerce ul.products li.product a .mark-badge img {
	width: auto;
	height: 54px;
	max-width: 210px;
	aspect-ratio: auto;
	object-fit: contain;
	background: transparent;
	transform: none !important;
}
.woocommerce ul.products li.product:hover .mark-badge img { transform: none !important; }

@media (max-width: 520px) {
	.woocommerce ul.products li.product .mark-badge img,
	.woocommerce ul.products li.product a .mark-badge img { height: 40px; max-width: 156px; }
}

/* ============================================================
   ПО-ШИРОКО МЕНЮ, ПРОФИЛ, СОЦИАЛНИ ИКОНИ, ФИЛТРИ
   ============================================================ */

/* --- по-широк хедър и падащо меню --- */
.site-header .wrap { max-width: 1440px; }
.header-inner { gap: clamp(1rem, 2.6vw, 2.8rem); }
.nav-list { gap: clamp(1.1rem, 2.2vw, 2.1rem); }
.nav-list a, .nav-link { font-size: 1.02rem; }

.mega-panel[data-panel="deinosti"] { width: min(1040px, 94vw); padding: 1.5rem; }
.mega-panel[data-panel="oblasti"] { width: min(820px, 94vw); padding: 1.5rem; }
.mega-list { gap: 0.2rem 1.5rem; }
.mega-list a { font-size: 1rem; padding: 0.6rem 0.8rem; }
.mega-featured { width: 280px; }
.mega-area { font-size: 1rem; padding: 0.6rem 0.8rem; }

/* --- надписът до логото: само името, на височината на логото --- */
.brand-text { justify-content: center; height: 50px; }
.brand-text strong {
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.008em;
	max-width: 15ch;
}

/* --- икона „Моят профил" --- */
.account-link {
	width: 44px; height: 44px; flex: none;
	display: grid; place-items: center;
	border: 1px solid var(--line);
	border-radius: 10px;
	color: var(--ink);
	text-decoration: none;
	transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease;
}
.account-link:hover { border-color: var(--brand); color: var(--brand-dark); background: var(--brand-soft); }
.account-link svg { width: 21px; height: 21px; }

/* --- социални икони във футъра --- */
.social { display: flex; gap: 0.6rem; margin-top: 1.4rem; }
.social-link {
	width: 40px; height: 40px;
	display: grid; place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 10px;
	color: #D8CCBA;
	transition: background 0.22s ease, color 0.22s ease, border-color 0.22s ease, transform 0.22s var(--ease-out);
}
.social-link:hover {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
	transform: translateY(-2px);
}
.social-link svg { width: 20px; height: 20px; }

/* ============================================================
   ФИЛТРИ И ТЪРСЕНЕ В МАГАЗИНА
   ============================================================ */
.filters {
	display: grid;
	grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(140px, 1fr)) auto;
	gap: 0.75rem;
	align-items: end;
	padding: 1.1rem 1.2rem;
	background: #FFFFFF;
	border: 1px solid var(--line);
	border-radius: 14px;
	margin-bottom: 1.4rem;
}

.filters-search { position: relative; display: flex; align-items: center; }
.filters-search-icon {
	position: absolute; left: 0.8rem;
	display: grid; place-items: center;
	color: var(--ink-soft);
	pointer-events: none;
}
.filters-search-icon svg { width: 18px; height: 18px; }
.filters-search input {
	width: 100%;
	font: inherit; font-size: 0.95rem;
	padding: 0.68rem 0.9rem 0.68rem 2.5rem;
	border: 1.5px solid var(--line); border-radius: 9px;
	background: var(--gray-bg);
	transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.filters-search input:focus {
	outline: none; background: #fff;
	border-color: var(--brand);
	box-shadow: 0 0 0 3px rgba(253, 114, 13, 0.14);
}

.filters-group { display: flex; flex-direction: column; gap: 0.3rem; min-width: 0; }
.filters-label {
	font-size: 0.75rem; font-weight: 700;
	letter-spacing: 0.06em; text-transform: uppercase;
	color: var(--ink-soft);
}
.filters-select {
	font: inherit; font-size: 0.93rem;
	padding: 0.62rem 2rem 0.62rem 0.75rem;
	border: 1.5px solid var(--line); border-radius: 9px;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 L6 6.5 L11 1.5' fill='none' stroke='%23635C55' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	background-size: 11px;
	appearance: none; -webkit-appearance: none;
	color: var(--ink);
	cursor: pointer;
	width: 100%;
	transition: border-color 0.18s ease;
}
.filters-select:focus { outline: none; border-color: var(--brand); }
.filters-select option:disabled { color: #B9B1A7; }

.filters-actions { display: flex; align-items: center; gap: 0.7rem; }
.filters-submit {
	padding: 0.66rem 1.3rem;
	background: var(--brand); color: #fff;
	border: none; border-radius: 9px;
	font: inherit; font-size: 0.92rem; font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
	transition: background 0.18s ease;
}
.filters-submit:hover { background: var(--brand-dark); }
.filters-clear {
	font-size: 0.88rem; font-weight: 700;
	color: var(--ink-soft); text-decoration: none;
	white-space: nowrap;
}
.filters-clear:hover { color: var(--brand-dark); text-decoration: underline; }

.filters-result { margin: -0.6rem 0 1.4rem; font-size: 0.94rem; color: var(--ink-soft); }

@media (max-width: 1100px) {
	.filters { grid-template-columns: 1fr 1fr 1fr; }
	.filters-search { grid-column: 1 / -1; }
	.filters-actions { grid-column: 1 / -1; }
}

@media (max-width: 960px) {
	.account-link { width: 40px; height: 40px; }
}

@media (max-width: 620px) {
	.filters { grid-template-columns: 1fr; padding: 1rem; }
	.filters-actions { justify-content: space-between; }
	.filters-submit { flex: 1; }
}

@media (max-width: 560px) {
	.brand-text strong { font-size: 0.95rem; max-width: 12ch; }
	.brand-text { height: 44px; }
}

/* ============================================================
   ЧАТ — многоекранен изглед (заменя стария)
   ============================================================ */

/* --- бутонът --- */
.chat-toggle {
	display: inline-flex; align-items: center; gap: 0.6rem;
	padding: 0.72rem 1.25rem 0.72rem 1.05rem;
	background: var(--brand); color: #fff;
	border: none; border-radius: 999px;
	font: inherit; font-weight: 700; font-size: 0.95rem;
	cursor: pointer;
	box-shadow: 0 14px 30px -12px rgba(253, 114, 13, 0.7);
	transition: background 0.2s ease, transform 0.2s var(--ease-out), box-shadow 0.2s ease;
}
.chat-toggle:hover { background: var(--brand-dark); transform: translateY(-2px); box-shadow: 0 18px 34px -12px rgba(253, 114, 13, 0.75); }
.chat-toggle-icon { position: relative; display: grid; place-items: center; width: 24px; height: 24px; flex: none; }
.chat-toggle-icon svg { width: 24px; height: 24px; grid-area: 1 / 1; transition: opacity 0.2s ease, transform 0.25s var(--ease-out); }
.chat-i-close { opacity: 0; transform: scale(0.6) rotate(-30deg); }
html.chat-open .chat-i-open { opacity: 0; transform: scale(0.6) rotate(30deg); }
html.chat-open .chat-i-close { opacity: 1; transform: none; }

/* --- панел --- */
.chat-panel { max-height: min(76vh, 620px); }

.chat-head { align-items: center; gap: 0.6rem; padding: 0.85rem 0.9rem; }
.chat-nav-back {
	width: 30px; height: 30px; flex: none;
	display: grid; place-items: center;
	background: rgba(255, 255, 255, 0.12);
	border: none; border-radius: 8px;
	color: #fff; cursor: pointer;
	transition: background 0.2s ease;
}
.chat-nav-back:hover { background: rgba(255, 255, 255, 0.24); }
.chat-nav-back svg { width: 17px; height: 17px; }
.chat-head-text { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.chat-head-text strong { font-size: 0.96rem; font-weight: 700; }
.chat-head-text span { font-size: 0.76rem; color: #B7AFA6; }

/* --- екрани: само един е видим --- */
.chat-screen { display: none; }
.chat-screen.is-active { display: block; animation: chat-in 0.22s var(--ease-out); }
@keyframes chat-in { from { opacity: 0; transform: translateX(8px); } to { opacity: 1; transform: none; } }

/* --- меню с трите избора --- */
.chat-menu { display: flex; flex-direction: column; gap: 0.55rem; margin-top: 0.5rem; }
.chat-card {
	display: flex; align-items: center; gap: 0.75rem;
	width: 100%;
	padding: 0.8rem 0.9rem;
	background: #fff;
	border: 1px solid var(--line); border-radius: 12px;
	font: inherit; text-align: left;
	cursor: pointer;
	transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s var(--ease-out);
}
.chat-card:hover { border-color: var(--brand); background: var(--brand-soft); transform: translateY(-1px); }
.chat-card-icon {
	width: 38px; height: 38px; flex: none;
	display: grid; place-items: center;
	background: var(--brand-soft); border-radius: 10px;
	color: var(--brand-dark);
}
.chat-card:hover .chat-card-icon { background: #fff; }
.chat-card-icon svg { width: 20px; height: 20px; }
.chat-card-text { display: flex; flex-direction: column; gap: 0.1rem; min-width: 0; flex: 1; }
.chat-card-text strong { font-size: 0.94rem; font-weight: 700; color: var(--ink); }
.chat-card-text span { font-size: 0.79rem; color: var(--ink-soft); line-height: 1.35; }
.chat-card-arrow { color: var(--brand); font-weight: 800; flex: none; transition: transform 0.2s var(--ease-out); }
.chat-card:hover .chat-card-arrow { transform: translateX(3px); }

/* --- след отговор --- */
.chat-after { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-top: 0.9rem; }
.chat-ghost {
	padding: 0.5rem 0.9rem;
	background: #fff;
	border: 1px solid var(--line); border-radius: 999px;
	font: inherit; font-size: 0.84rem; font-weight: 700;
	color: var(--brand-dark); cursor: pointer;
	transition: border-color 0.18s ease, background 0.18s ease;
}
.chat-ghost:hover { border-color: var(--brand); background: var(--brand-soft); }

/* --- бележка за чата на живо --- */
.chat-notice {
	display: flex; flex-direction: column; gap: 0.2rem;
	padding: 0.75rem 0.9rem;
	background: #FFF8E8;
	border: 1px solid #F0DCA8;
	border-left: 3px solid #E0A526;
	border-radius: 0 8px 8px 0;
	margin-bottom: 0.8rem;
}
.chat-notice strong { font-size: 0.88rem; color: #8A6410; }
.chat-notice span { font-size: 0.8rem; line-height: 1.45; color: #6B5F53; }

/* --- благодарност --- */
.chat-done { text-align: center; padding: 1.4rem 0.6rem; display: flex; flex-direction: column; align-items: center; gap: 0.7rem; }
.chat-done-mark {
	width: 54px; height: 54px;
	display: grid; place-items: center;
	background: #E8F5E4; color: #2C6B2F;
	border-radius: 50%;
}
.chat-done-mark svg { width: 28px; height: 28px; }
.chat-done p { margin: 0; font-size: 0.94rem; line-height: 1.55; color: var(--ink-soft); }


.chat-questions { margin-top: 0.5rem; }

/* котва за продуктите — да не се залепва под фиксирания хедър */
.shop-anchor { position: relative; top: -120px; height: 0; }

/* бележка под разговора */
.chat-thread-note {
	margin: 0.9rem 0 0;
	padding: 0.6rem 0.8rem;
	background: var(--gray-bg);
	border-radius: 8px;
	font-size: 0.8rem;
	line-height: 1.5;
	color: var(--ink-soft);
}
