/* CARVE — Планински бар: цялата страница е нощ */
.str-bar, .str-bar main { background: var(--nosht); }
.bar-str { color: var(--nosht-tekst); }
.bar-str .tekst { color: #C9D2D8; }
.bar-str .btn-lin { color: var(--nosht-tekst); }
.bar-str .btn-lin::before { background: var(--nosht-tekst); }
.bar-str .btn-lin:hover { color: var(--nosht); }

/* ---------- Героят ---------- */
.bg { position: relative; min-height: 100vh; min-height: 100svh; display: flex; align-items: flex-end; overflow: hidden; padding: calc(var(--glava) + 60px) 0 clamp(36px, 6vh, 72px); }
.bg-fon { position: absolute; inset: 0; background: var(--nosht); }
.bg-fon video { width: 100%; height: 100%; object-fit: cover; }
.bg-fon::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(8,13,18,.95) 0%, rgba(8,13,18,.7) 30%, rgba(8,13,18,.2) 62%, rgba(8,13,18,.45) 100%); }
.bg-v { position: relative; }
.bg h1 { font-size: clamp(54px, 10vw, 176px); }
.bg-dolu { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 24px clamp(32px, 6vw, 110px); align-items: end; margin-top: clamp(20px, 3vw, 36px); }
.bg-fakti { display: grid; grid-template-columns: repeat(3, auto); justify-content: end; gap: 0; margin: 0; }
.bg-fakti div { padding: 0 22px; border-left: 1px solid rgba(232,237,240,.25); }
.bg-fakti dt { font: 500 12.5px var(--f-mono); text-transform: uppercase; letter-spacing: .06em; color: var(--nosht-sivo); }
.bg-fakti dd { margin: 6px 0 0; font: 800 clamp(22px, 2.2vw, 32px)/1 var(--f-dis); font-stretch: 90%; white-space: nowrap; }
.bg-fakti dd.sega { font: 500 13.5px var(--f-mono); margin-top: 12px; }
/* „За събития без краен час“: под „до 24:00“, без да разширява колоната */
.bg-fakti dd.bg-fakti-pod { contain: inline-size; margin-top: 10px; font: 500 12.5px/1.35 var(--f-mono); white-space: normal; color: var(--nosht-sivo); }
@media (max-width: 900px) {
  .bg-dolu { grid-template-columns: minmax(0, 1fr); }
  .bg-fakti { justify-content: start; grid-template-columns: repeat(2, auto); row-gap: 16px; }
  .bg-fakti div:first-child { padding-left: 0; border-left: 0; }
  .bg-fakti div:nth-child(3) { grid-column: 1 / -1; padding-left: 0; border-left: 0; }
}

/* ---------- Какво се пие ---------- */
.pie { padding: clamp(90px, 12vw, 170px) 0; }
.pie-mreja { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 110px); align-items: start; }
.pie-kadar { position: sticky; top: calc(var(--glava) + 28px); aspect-ratio: 4 / 5; max-height: calc(100svh - var(--glava) - 56px); overflow: hidden; background: var(--nosht-2); }
.pie-kadar img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transform: scale(1.06); transition: opacity .7s var(--ease), transform 1.4s var(--ease); }
.pie-kadar img.vidim { opacity: 1; transform: none; }
/* грогът, греяното вино и чаят са примерни снимки, докато CARVE даде свои */
.pie-primerna {
  position: absolute; left: 14px; bottom: 14px; z-index: 1;
  padding: 6px 10px; border-radius: 6px;
  font: 500 11.5px var(--f-mono); text-transform: uppercase; letter-spacing: .06em;
  color: var(--nosht-tekst); background: rgba(8, 13, 18, .62);
  opacity: 0; transition: opacity .4s var(--ease);
}
.pie-kadar:has(img.vidim[data-primerna]) .pie-primerna { opacity: 1; }
.pie-tekst .tekst { margin-top: 18px; }
.pie-spisak { margin-top: clamp(28px, 4vw, 48px); border-top: 1px solid var(--nosht-linia); }
.pie-spisak li { padding: clamp(16px, 2vw, 24px) 0; border-bottom: 1px solid var(--nosht-linia); cursor: default; }
.pie-spisak h3 { font: 800 clamp(30px, 3.8vw, 58px)/.95 var(--f-dis); font-stretch: 82%; text-transform: uppercase; color: rgba(232,237,240,.4); transition: color .35s; }
.pie-spisak p { margin-top: 6px; color: var(--nosht-sivo); max-height: 0; overflow: hidden; opacity: 0; transition: max-height .5s var(--ease), opacity .4s; }
.pie-spisak li.aktivna h3 { color: var(--nosht-tekst); }
.pie-spisak li.aktivna h3::after { content: ''; display: inline-block; width: .2em; height: .2em; margin-left: .25em; background: var(--oranzh); vertical-align: .12em; }
.pie-spisak li.aktivna p { max-height: 3em; opacity: 1; }
.pie-bel { margin-top: 20px; font-size: 14px; color: var(--nosht-sivo); }
@media (max-width: 900px) {
  .pie-mreja { grid-template-columns: minmax(0, 1fr); }
  .pie-kadar { position: relative; top: 0; aspect-ratio: 4 / 5; max-height: 70vh; }
  .pie-spisak p { max-height: none; opacity: 1; }
  .pie-spisak h3 { color: var(--nosht-tekst); }
}

/* ---------- Вътре ---------- */
.vatre { padding: clamp(60px, 8vw, 110px) 0 clamp(80px, 10vw, 140px); border-top: 1px solid var(--nosht-linia); }
.vatre-glava { display: grid; gap: 18px; max-width: 980px; }
.vatre-lenta {
  margin-top: clamp(32px, 4vw, 56px);
  display: flex; gap: clamp(12px, 1.4vw, 22px);
  overflow-x: auto; scroll-snap-type: x proximity; overscroll-behavior-x: contain;
  padding: 0 var(--rub) 14px; scroll-padding-inline: var(--rub);
  scrollbar-width: thin; scrollbar-color: #3A4652 transparent;
  cursor: grab;
}
.vatre-lenta.vlachi { cursor: grabbing; scroll-snap-type: none; }
.vatre-lenta.vlachi * { pointer-events: none; }
.vatre-k { flex: 0 0 auto; width: clamp(280px, 38vw, 620px); scroll-snap-align: start; }
.vatre-k-shirok { width: clamp(300px, 56vw, 920px); }
.vatre-k-tesen { width: clamp(220px, 26vw, 420px); }
.vatre-k .kadar { height: clamp(260px, 56vh, 620px); }
.vatre-k figcaption { margin-top: 12px; color: var(--nosht-sivo); font-size: 15px; }

/* ---------- Екранът ---------- */
.ekran { padding: clamp(70px, 9vw, 130px) 0; background: var(--oranzh); color: var(--mastilo); }
.ekran .dis { max-width: 18ch; font-size: clamp(32px, 4.6vw, 76px); line-height: .98; }

/* ---------- Градината ---------- */
.gradina { padding: clamp(90px, 12vw, 170px) 0; }
.gradina-mreja { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 110px); align-items: center; }
.gradina-klip { aspect-ratio: 9 / 16; max-height: 86vh; }
.gradina-tekst .uvod { margin-top: 22px; }
.gradina-snimka { margin-top: 30px; aspect-ratio: 16 / 10; max-width: 520px; }
.gradina-snimka img { object-position: center 62%; }
@media (max-width: 900px) {
  .gradina-mreja { grid-template-columns: minmax(0, 1fr); }
  .gradina-klip { max-height: 78vh; }
}

/* ---------- Поводът ---------- */
.povod { padding: clamp(80px, 10vw, 150px) 0; border-top: 1px solid var(--nosht-linia); }
.povod-v { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px clamp(32px, 6vw, 110px); align-items: end; }
.povod-btn { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
@media (max-width: 900px) { .povod-v { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 560px) { .bg h1 { font-size: clamp(40px, 11.6vw, 64px); --sh: 74%; } }
