/* ==========================================================================
   Методология, За кого е, Проверка, Контакти: новите страници.
   Сглобява ги build_stranici.py; поведението е в assets/js/stranici.js.
   ========================================================================== */

/* ---------- общото: заглавия, които влизат, светлина и наклон ---------- */
.str h1 em { font-style: normal; color: var(--forest); }
.str h2 em { font-style: normal; color: var(--forest); }
.s-l { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .1em; margin-bottom: -.1em; }
.s-l > span { display: inline-block; animation: sUp 1.05s cubic-bezier(.2, .8, .2, 1) both; }
.s-l + .s-l > span, em.s-l > span { animation-delay: .1s; }
.s-l ~ em.s-l > span { animation-delay: .18s; }
.s-in { animation: sRise .95s cubic-bezier(.2, .8, .2, 1) both; animation-delay: var(--d, .2s); }
@keyframes sUp { from { transform: translateY(108%); } to { transform: none; } }
@keyframes sRise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes sFade { from { opacity: 0; } to { opacity: 1; } }
.wr .w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .12em; margin-bottom: -.12em; }
.wr .w > span { display: inline-block; transform: translateY(106%); }
.wr.in .w > span { animation: sUp .95s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i, 0) * 42ms + 40ms); }
.sp { position: relative; }
.sp::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .35s ease;
  background: radial-gradient(300px circle at var(--mx, 50%) var(--my, 50%), rgba(0, 84, 53, .08), transparent 62%); }
.sp:hover::after { opacity: 1; }
.tl { transition: transform .5s cubic-bezier(.2, .8, .2, 1); }
.str .btn { transition: transform .18s ease, box-shadow .18s ease, translate .45s cubic-bezier(.2, .8, .2, 1); }
.str [class*="-hero"] { padding-top: clamp(118px, 15vh, 160px); padding-bottom: clamp(30px, 5vw, 70px); position: relative; z-index: 3; }
.str h1 { font-size: clamp(42px, 5.6vw, 88px); line-height: 1; letter-spacing: -.035em; font-weight: 800; margin: 0 0 24px; text-wrap: balance; }
.str:not(.sxp) .lead { max-width: 580px; }

/* ═══════════════════════ МЕТОДОЛОГИЯ ═══════════════════════ */
.sm-hg { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.sm-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 34px; border-top: 1px solid var(--hairline); }
.sm-stats > div { padding: 18px 14px 0 0; }
.sm-stats > div + div { padding-left: 16px; border-left: 1px solid var(--hairline); }
.sm-stats b { font-size: clamp(28px, 2.6vw, 38px); font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.sm-stats em { font-style: normal; font-weight: 800; font-size: clamp(28px, 2.6vw, 38px); }
.sm-stats span { display: block; margin-top: 4px; font-size: 12.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--grey); }

/* пръстенът: по една черта за всеки критерий */
.rng { position: relative; width: min(520px, 100%); aspect-ratio: 1; margin-inline: auto; }
.rng svg { width: 100%; height: 100%; display: block; overflow: visible; }
.rng-o { fill: none; stroke: rgba(0, 84, 53, .16); stroke-width: 1; stroke-dasharray: 2 6; transform-origin: 0 0; animation: rSpin 80s linear infinite; }
.rng-i { fill: #fff; filter: drop-shadow(0 20px 40px rgba(26, 26, 26, .12)); }
@keyframes rSpin { to { transform: rotate(360deg); } }
.rg { transform-origin: 0 0; transition: transform .5s cubic-bezier(.2, .8, .2, 1); pointer-events: none; }
.rg line { stroke: rgba(0, 84, 53, .24); stroke-width: 4; stroke-linecap: round; transition: stroke .35s ease, stroke-width .35s ease; animation: tkIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--a) * 150ms + var(--j) * 22ms + .4s); }
@keyframes tkIn { from { opacity: 0; transform: scale(.8); } to { opacity: 1; transform: none; } }
.rg.on { transform: scale(1.03); }
.rg.on line { stroke: var(--forest); stroke-width: 5; }
.rg.on line:nth-child(3n) { stroke: var(--zlato-t); }
.rng-c { position: absolute; left: 50%; top: 50%; width: 58%; translate: -50% -50%; text-align: center; pointer-events: none; }
.rng-n { display: block; font-size: clamp(54px, 6vw, 84px); font-weight: 800; line-height: .95; letter-spacing: -.04em; color: var(--forest); font-variant-numeric: tabular-nums; }
.rng-u { display: block; margin-top: 6px; font-size: 11.5px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--grey); }
.rng-t { display: block; margin-top: 8px; font-size: clamp(15px, 1.35vw, 19px); font-weight: 800; color: var(--ink); line-height: 1.25; text-wrap: balance; }
.rng-c.sw .rng-n, .rng-c.sw .rng-t { animation: sRise .5s cubic-bezier(.2, .8, .2, 1) both; }

/* веригата: картата се сглобява, докато превъртате */
.ch-head { max-width: 760px; }
.ch-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: clamp(30px, 5vw, 80px); margin-top: clamp(30px, 4vw, 50px); }
.ch-stick { position: sticky; top: clamp(96px, 12vh, 120px); align-self: start; }
.ch-card { position: relative; padding: clamp(20px, 2.4vw, 30px); border-radius: var(--r-lg); background: #fff; box-shadow: 0 40px 80px -46px rgba(26, 26, 26, .5), inset 0 0 0 1px rgba(26, 26, 26, .06); }
.ch-k { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; font-size: 12.5px; }
.ch-k span { padding: 5px 10px; border-radius: 99px; background: var(--forest); color: var(--paper); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; font-size: 11px; }
.ch-k b { color: var(--grey-d); }
.ch-s { position: relative; padding: 12px 0 12px 16px; border-left: 2px solid var(--hairline); opacity: .38; filter: grayscale(1); transition: opacity .6s ease, filter .6s ease, border-color .6s ease; }
.ch-s.on { opacity: 1; filter: none; border-color: var(--forest); }
.ch-s.now { border-color: var(--zlato-t); }
.ch-lb { display: block; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--forest); margin-bottom: 4px; }
.ch-s p { margin: 0; font-size: 15px; line-height: 1.5; }
.ch-shot { display: flex; gap: 16px; align-items: center; margin-top: 4px; }
.ch-meta { font-size: 12.5px !important; color: var(--grey); }
.ch-ph { position: relative; flex: none; width: 92px; height: 150px; border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 2px #1A1A1A; padding: 8px 7px; display: flex; flex-direction: column; gap: 5px; overflow: hidden; }
.ch-ph i { display: block; border-radius: 3px; background: #ECE8E0; height: 5px; }
.ch-ph .p-bar { height: 7px; background: #E2DED6; }
.ch-ph .p-h { height: 22px; background: linear-gradient(135deg, #0B5A3B, #003B25); }
.ch-ph .p-t.s { width: 70%; }
.ch-ph .p-btn { width: 50%; height: 8px; background: var(--forest-l); }
.ch-ph .p-f { margin-top: auto; height: 12px; background: none; font-size: 5px; color: var(--grey); display: flex; align-items: center; }
.p-ring { position: absolute; left: 3px; right: 3px; bottom: 2px; height: 20px; border-radius: 10px; border: 2px dashed var(--signal); opacity: 0; transform: scale(1.4); transition: opacity .5s ease .3s, transform .6s cubic-bezier(.3, 1.4, .5, 1) .3s; }
.ch-s2.on .p-ring { opacity: 1; transform: none; }
.ch-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px !important; }
.ch-tags span { padding: 4px 9px; border-radius: 99px; background: var(--chip-g-bg); color: var(--forest); font-size: 11.5px; font-weight: 800; }
.ch-score { position: absolute; right: clamp(16px, 2vw, 26px); top: clamp(16px, 2vw, 24px); display: flex; align-items: baseline; gap: 2px; padding: 10px 16px 12px; border-radius: 18px; background: var(--forest); color: var(--paper); box-shadow: 0 0 0 5px rgba(212, 186, 116, .3), 0 20px 30px -14px rgba(0, 84, 53, .6); opacity: 0; transform: scale(1.3) rotate(-10deg); transition: opacity .3s ease, transform .55s cubic-bezier(.3, 1.5, .5, 1); }
.ch-score span { font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--zlato); margin-right: 8px; align-self: center; }
.ch-score b { font-size: 36px; line-height: 1; font-weight: 800; }
.ch-score small { font-size: 15px; font-weight: 700; opacity: .7; }
.ch-card.fin .ch-score { opacity: 1; transform: rotate(-6deg); }
.ch-steps { list-style: none; margin: 0; padding: 0; }
.ch-steps li { min-height: 46vh; display: flex; flex-direction: column; justify-content: center; transition: color .5s ease; }
/* неактивните стъпки са по-светли с цвят (6,5:1), не с прозрачност; при намалено движение всички са пълни */
@media (prefers-reduced-motion: no-preference) { .ch-steps li:not(.on), .ch-steps li:not(.on) * { color: var(--grey) !important; } }
.ch-steps li:last-child { min-height: 40vh; }
.ch-n { font-size: 13px; font-weight: 800; letter-spacing: .1em; color: var(--forest); }
.ch-steps h3 { font-size: clamp(26px, 2.6vw, 38px); font-weight: 800; letter-spacing: -.02em; margin: 6px 0 10px; }
.ch-steps p { margin: 0; font-size: 16.5px; line-height: 1.55; color: var(--grey-d); max-width: 42ch; }

/* осемте области */
.ar-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: clamp(28px, 3.5vw, 44px); }
.ar-c { display: flex; flex-direction: column; padding: 20px 20px 18px; border-radius: var(--r-md); background: rgba(255, 255, 255, .72); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 24px 44px -34px rgba(26, 26, 26, .45); transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease, background .35s ease; }
.ar-c:hover { transform: translateY(-5px); background: #fff; box-shadow: inset 0 0 0 1px rgba(0, 84, 53, .2), 0 30px 54px -30px rgba(0, 84, 53, .45); }
.ar-top { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.ar-rg { position: relative; width: 50px; height: 50px; flex: none; }
.ar-rg svg { width: 100%; height: 100%; display: block; }
.ar-rg line { stroke: rgba(0, 84, 53, .25); stroke-width: 3.2; stroke-linecap: round; transition: stroke .25s ease; transition-delay: calc(var(--j) * 30ms); }
.ar-c:hover .ar-rg line { stroke: var(--forest); }
.ar-rg b { position: absolute; inset: 0; display: grid; place-items: center; font-size: 15px; font-weight: 800; color: var(--forest); }
.ar-k { font-size: 11.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--grey); }
.ar-c h3 { font-size: 18px; font-weight: 800; letter-spacing: -.01em; margin: 0 0 6px; line-height: 1.2; }
.ar-q { margin: 0 0 16px; font-size: 14px; line-height: 1.5; color: var(--grey-d); }
.ar-p { margin: auto 0 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; font-size: 11.5px; color: var(--grey); }
.ar-p span { font-weight: 700; }
.ar-p i { position: relative; height: 6px; border-radius: 99px; background: rgba(26, 26, 26, .07); overflow: hidden; }
.ar-p i b { position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(90deg, var(--forest-l), var(--forest)); transform-origin: 0 50%; transform: scaleX(0); transition: transform 1.3s cubic-bezier(.2, .8, .2, 1); transition-delay: calc(var(--i) * 70ms + .15s); }
.ar-grid.in .ar-p i b { transform: scaleX(var(--s)); }
.ar-p em { font-style: normal; font-weight: 800; font-size: 14px; color: var(--ink); font-variant-numeric: tabular-nums; min-width: 2ch; text-align: right; }
.ar-none { display: block; font-style: italic; }
.ar-note { margin: 22px 0 0; font-size: 14.5px; color: var(--grey-d); max-width: 720px; }

/* трите нива */
.lv-g { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(30px, 5vw, 80px); align-items: start; }
.lv-bs { display: grid; gap: 10px; margin-top: 26px; }
.lv-b { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 2px 14px; text-align: left; padding: 16px 18px; border-radius: var(--r-md); border: 0; font: inherit; color: var(--ink); background: rgba(255, 255, 255, .55); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .07); cursor: pointer; transition: background .35s ease, box-shadow .35s ease, transform .35s ease; }
.lv-b:hover { background: rgba(255, 255, 255, .85); }
.lv-b.on { background: #fff; box-shadow: inset 0 0 0 2px var(--forest), 0 24px 44px -30px rgba(0, 84, 53, .5); }
.lv-n { grid-row: span 3; align-self: start; padding: 6px 10px; border-radius: 99px; background: var(--chip-g-bg); color: var(--forest); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.lv-b.on .lv-n { background: var(--forest); color: var(--paper); }
.lv-b b { font-size: 18px; }
.lv-q { font-size: 14.5px; color: var(--grey-d); }
.lv-e { font-size: 13.5px; color: var(--forest); font-weight: 700; }
.lv-b:focus-visible { outline: 3px solid var(--forest); outline-offset: 3px; }
.lv-art { display: grid; place-items: center; }
.lv-ph { position: relative; width: min(290px, 78%); aspect-ratio: 9 / 18.5; border-radius: 40px; background: #fff; box-shadow: inset 0 0 0 9px #1A1A1A, 0 50px 90px -50px rgba(26, 26, 26, .6); padding: 22px 20px; display: flex; flex-direction: column; gap: 12px; overflow: hidden; }
.lp-bar { display: flex; align-items: center; justify-content: space-between; height: 28px; margin-top: 8px; }
.lp-bar i { width: 60px; height: 10px; border-radius: 4px; background: #E2DED6; }
.lp-num { font-size: 11px; font-weight: 800; color: var(--forest); padding: 5px 9px; border-radius: 99px; background: var(--chip-g-bg); opacity: 0; transform: scale(.8); transition: opacity .45s ease, transform .45s ease; }
.lp-hero { padding: 14px; border-radius: 14px; background: linear-gradient(135deg, #0B5A3B, #003B25); display: grid; gap: 7px; }
.lp-hero i { display: block; height: 8px; border-radius: 4px; background: rgba(247, 245, 242, .45); }
.lp-hero .lp-h { height: 14px; width: 80%; background: rgba(247, 245, 242, .85); }
.lp-hero .s { width: 60%; }
.lp-body { display: grid; gap: 8px; }
.lp-body i { display: block; height: 8px; border-radius: 4px; background: #ECE8E0; }
.lp-body .s { width: 70%; }
.lp-foot { margin-top: auto; padding: 10px; border-radius: 10px; background: #F4F1EB; font-size: 10.5px; color: var(--grey); transition: box-shadow .4s ease, background .4s ease; }
.lp-call { position: absolute; left: 20px; right: 20px; bottom: 22px; padding: 12px; border-radius: 99px; background: var(--forest); color: var(--paper); font-weight: 800; font-size: 14px; text-align: center; box-shadow: 0 0 0 0 rgba(212, 186, 116, .6); opacity: 0; transform: translateY(20px); transition: opacity .45s ease, transform .5s cubic-bezier(.2, .8, .2, 1); }
.lp-mark { position: absolute; right: -2px; padding: 6px 11px; border-radius: 99px; background: var(--zlato); color: #3D2E08; font-size: 11.5px; font-weight: 800; white-space: nowrap; opacity: 0; transform: translateX(10px); transition: opacity .4s ease, transform .4s ease; }
.lp-m1 { bottom: 64px; }
.lp-m2 { top: 70px; }
.lp-m3 { bottom: 76px; }
.lv-ph[data-lv="1"] .lp-foot { background: #FFF6DA; box-shadow: inset 0 0 0 2px var(--zlato); }
.lv-ph[data-lv="1"] .lp-m1, .lv-ph[data-lv="2"] .lp-m2, .lv-ph[data-lv="3"] .lp-m3 { opacity: 1; transform: none; }
.lv-ph[data-lv="2"] .lp-num, .lv-ph[data-lv="3"] .lp-num { opacity: 1; transform: none; }
.lv-ph[data-lv="3"] .lp-call { opacity: 1; transform: none; animation: lpGlow 2.2s ease-in-out infinite; }
@keyframes lpGlow { 50% { box-shadow: 0 0 0 8px rgba(212, 186, 116, .25); } }

/* какво не оценяваме: задрасква се пред очите ви */
.no-g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 30px; }
.no-c { padding: 24px 24px 22px; border-radius: var(--r-md); background: rgba(255, 255, 255, .6); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06); }
.no-t { margin: 0 0 10px; font-size: clamp(22px, 2.2vw, 30px); font-weight: 800; letter-spacing: -.02em; line-height: 1.15; }
/* задраскването е фон на самия текст: минава и през пренесените редове */
.no-t span { background: linear-gradient(var(--signal), var(--signal)) no-repeat 0 60% / 0 .09em; -webkit-box-decoration-break: clone; box-decoration-break: clone;
  transition: color .6s ease calc(var(--i) * .25s + .5s), background-size .8s cubic-bezier(.6, 0, .2, 1) calc(var(--i) * .25s + .2s); }
.no-g.in .no-t span { color: rgba(26, 26, 26, .6); background-size: 100% .09em; }
.no-d { margin: 0; font-size: 15.5px; color: var(--grey-d); }
.no-q { margin-top: 34px; }

/* сравнението: четири отговора на четири различни въпроса */
.vs-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 32px; align-items: start; }
.vs-c { border-radius: var(--r-md); background: rgba(255, 255, 255, .7); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06); overflow: hidden; }
.vs-h { margin: 0; padding: 18px 18px 14px; font-size: 16px; font-weight: 800; }
.vs-c ul { list-style: none; margin: 0; padding: 0 8px 8px; }
.vs-c li { padding: 10px 10px; border-radius: 12px; transition: background .25s ease; }
.vs-l { display: block; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--grey); margin-bottom: 3px; }
.vs-c li b { font-size: 15px; font-weight: 700; }
.vs-c li.ok b::before { content: "✓ "; color: var(--forest); }
.vs-c li.no b { color: var(--grey); }
.vs-c li.no b::before { content: "✕ "; color: var(--signal); }
.vs-us { background: linear-gradient(160deg, #0B5A3B, #003B25); color: var(--paper); transform: translateY(-14px); box-shadow: 0 0 0 1px rgba(212, 186, 116, .45), 0 40px 70px -40px rgba(0, 84, 53, .75); }
.vs-us .vs-h { color: var(--zlato); }
.vs-us .vs-l { color: rgba(247, 245, 242, .8); }
.vs-us li.ok b::before { color: var(--zlato); }
.vs-g[data-hr] li { opacity: .5; }
.vs-g[data-hr="0"] li[data-r="0"], .vs-g[data-hr="1"] li[data-r="1"], .vs-g[data-hr="2"] li[data-r="2"],
.vs-g[data-hr="3"] li[data-r="3"], .vs-g[data-hr="4"] li[data-r="4"], .vs-g[data-hr="5"] li[data-r="5"] { opacity: 1; background: rgba(0, 84, 53, .07); }
.vs-us li { transition: background .25s ease, opacity .25s ease; }
.vs-g[data-hr="0"] .vs-us li[data-r="0"], .vs-g[data-hr="1"] .vs-us li[data-r="1"], .vs-g[data-hr="2"] .vs-us li[data-r="2"],
.vs-g[data-hr="3"] .vs-us li[data-r="3"], .vs-g[data-hr="4"] .vs-us li[data-r="4"], .vs-g[data-hr="5"] .vs-us li[data-r="5"] { background: rgba(247, 245, 242, .1); }
.vs-n { margin: 22px 0 0; font-size: 15px; color: var(--grey-d); max-width: 760px; }

/* методологията се развива */
.ev-g { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.ev-l { list-style: none; margin: 24px 0 0; padding: 0; display: grid; gap: 14px; }
.ev-l li { display: grid; grid-template-columns: 42px 1fr; gap: 14px; align-items: start; }
.ev-i { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: var(--forest); box-shadow: 0 10px 20px -10px rgba(0, 84, 53, .6); }
.ev-i svg { width: 18px; height: 18px; fill: none; stroke: var(--zlato); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.ev-l p { margin: 8px 0 0; font-size: 16px; line-height: 1.5; color: var(--grey-d); }
.ev-l b { color: var(--ink); }
.ev-ctas { margin-top: 30px; }
.ev-fig { margin: 0; justify-self: center; width: min(360px, 100%); }
.ev-fig img { width: 100%; height: auto; display: block; border-radius: var(--r-sm); border: 1px solid var(--hairline); box-shadow: 0 50px 80px -44px rgba(26, 26, 26, .55); rotate: 3deg; }
.ev-fig figcaption { margin-top: 14px; font-size: 13px; color: var(--grey); text-align: center; }

@media (max-width: 1000px) {
  .ar-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vs-g { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vs-us { transform: none; }
}
@media (max-width: 860px) {
  .sm-hg, .lv-g, .ev-g { grid-template-columns: 1fr; }
  .rng { width: min(320px, 84%); margin-top: 10px; }
  .sm-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sm-stats > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .ch-g { grid-template-columns: 1fr; gap: 0; }
  .ch-stick { top: 76px; z-index: 2; }
  .ch-card { padding: 14px 16px; border-radius: var(--r-md); }
  .ch-s { padding: 6px 0 6px 12px; }
  .ch-s p { font-size: 13.5px; }
  .ch-ph { width: 62px; height: 100px; border-radius: 10px; padding: 6px 5px; gap: 4px; }
  .ch-score { padding: 7px 12px 9px; right: 10px; top: 10px; }
  .ch-card.fin .ch-score { transform: rotate(-3deg); }
  .ch-score b { font-size: 26px; }
  .ch-steps li { min-height: 62vh; justify-content: flex-end; padding-bottom: 8vh; }
  .ch-steps li:last-child { min-height: 50vh; }
  .lv-art { order: -1; }
  .lv-ph { width: min(240px, 66%); }
}
@media (max-width: 600px) {
  .ar-grid { grid-template-columns: 1fr; }
  .no-g { grid-template-columns: 1fr; }
  .vs-g { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 10px; padding: 18px 2px 8px; margin-inline: calc(var(--pad) * -1); padding-inline: var(--pad); scrollbar-width: none; }
  .vs-c { flex: 0 0 78%; scroll-snap-align: center; }
  .ch-card { box-shadow: 0 20px 40px -26px rgba(26, 26, 26, .45), inset 0 0 0 1px rgba(26, 26, 26, .06); }
  .ch-k { margin-bottom: 8px; }
  .ch-tags span { font-size: 10.5px; }
}

/* ═══════════════════════ ЗА КОГО Е ═══════════════════════ */
.sk-hg { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(20px, 4vw, 60px); align-items: center; }
.str-za-kogo h1 { font-size: clamp(40px, 4.9vw, 76px); }
.sk-art { position: relative; aspect-ratio: 1 / .9; }
.sk-o { position: absolute; width: 38%; translate: calc(var(--px, 0) * var(--k, 10) * -1px) calc(var(--py, 0) * var(--k, 10) * -1px); animation: sRise 1.1s cubic-bezier(.2, .8, .2, 1) both; }
.sk-o img { display: block; width: 100%; height: auto; animation: skBob 7s ease-in-out infinite; }
.sk-o1 { left: 2%; top: 4%; --k: 14; animation-delay: .25s; }
.sk-o2 { right: 4%; top: 0; width: 34%; --k: 9; animation-delay: .35s; }
.sk-o3 { left: 26%; top: 36%; width: 42%; --k: 18; animation-delay: .45s; }
.sk-o4 { right: 0; bottom: 4%; width: 33%; --k: 11; animation-delay: .55s; }
.sk-o5 { left: 0; bottom: 0; width: 30%; --k: 7; animation-delay: .65s; }
.sk-o2 img { animation-delay: -2s; }
.sk-o3 img { animation-delay: -4s; animation-duration: 8s; }
.sk-o4 img { animation-delay: -1s; }
.sk-o5 img { animation-delay: -5.5s; }
@keyframes skBob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4%); } }

/* подходящи ли сте: отметки и уред, който се пълни */
.fit-g { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr); gap: clamp(24px, 4vw, 60px); align-items: start; }
.fit-list { display: grid; gap: 10px; margin-top: 26px; }
.fit-c { display: grid; grid-template-columns: 34px 1fr; gap: 14px; align-items: center; text-align: left; padding: 16px 18px; border: 0; border-radius: var(--r-md); font: inherit; font-size: 16px; line-height: 1.45; color: var(--ink); background: rgba(255, 255, 255, .6); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .07); cursor: pointer; transition: background .3s ease, box-shadow .3s ease, transform .3s ease; }
.fit-c:hover { background: rgba(255, 255, 255, .9); transform: translateX(4px); }
.fit-c[aria-pressed="true"] { background: #fff; box-shadow: inset 0 0 0 2px var(--forest), 0 18px 34px -26px rgba(0, 84, 53, .6); }
.fit-c:focus-visible { outline: 3px solid var(--forest); outline-offset: 3px; }
.fit-x { position: relative; width: 34px; height: 34px; border-radius: 50%; box-shadow: inset 0 0 0 2px rgba(0, 84, 53, .3); transition: background .3s ease, box-shadow .3s ease; }
.fit-x::after { content: ""; position: absolute; left: 12px; top: 8px; width: 8px; height: 14px; border: solid var(--paper); border-width: 0 3px 3px 0; transform: rotate(45deg) scale(0); transition: transform .35s cubic-bezier(.3, 1.6, .5, 1); }
.fit-c[aria-pressed="true"] .fit-x { background: var(--forest); box-shadow: 0 0 0 5px rgba(0, 84, 53, .12); }
.fit-c[aria-pressed="true"] .fit-x::after { transform: rotate(45deg) scale(1); }
.fit-m { position: sticky; top: 110px; padding: 26px 24px; border-radius: var(--r-lg); background: linear-gradient(160deg, #0B5A3B, #003B25); color: var(--paper); text-align: center; box-shadow: 0 40px 70px -40px rgba(0, 84, 53, .7); }
.fit-ring { position: relative; width: 150px; height: 150px; margin: 0 auto 16px; }
.fit-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.fit-ring .t { fill: none; stroke: rgba(247, 245, 242, .15); stroke-width: 9; }
.fit-ring .v { fill: none; stroke: var(--zlato); stroke-width: 9; stroke-linecap: round; stroke-dasharray: 1 1; stroke-dashoffset: calc(1 - var(--f, 0)); transition: stroke-dashoffset .8s cubic-bezier(.2, .8, .2, 1); }
.fit-ring b { position: absolute; inset: 0; display: grid; place-items: center; font-size: 46px; font-weight: 800; font-variant-numeric: tabular-nums; }
.fit-ring b small { font-size: 18px; opacity: .6; margin-left: 2px; }
.fit-ring b { grid-auto-flow: column; justify-content: center; align-items: center; }
.fit-v { display: none; margin: 0 0 18px; font-size: 16px; line-height: 1.5; color: rgba(247, 245, 242, .88); animation: sRise .5s ease both; }
.fit-v.on { display: block; }
.fit-cta { width: 100%; background: var(--paper); color: var(--forest); }
.fit-ask { margin-top: 10px; color: var(--forest-l); justify-content: center; }
.fit-m.full { box-shadow: 0 0 0 3px var(--zlato), 0 40px 70px -40px rgba(0, 84, 53, .7); }

/* докъде стига: пътят и границата */
.bd-box { margin-top: 30px; padding: clamp(18px, 2.4vw, 30px); border-radius: var(--r-lg); background: rgba(255, 255, 255, .65); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06); }
.bd-ts { display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 4px; border-radius: 99px; background: rgba(26, 26, 26, .05); }
.bd-t { border: 0; background: none; font: inherit; font-weight: 800; font-size: 14px; padding: 10px 18px; border-radius: 99px; color: var(--grey-d); cursor: pointer; transition: background .3s ease, color .3s ease; }
.bd-t.on { background: var(--forest); color: var(--paper); }
.bd-t:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; }
.bd-path { list-style: none; margin: 34px 0 26px; padding: 0; display: flex; align-items: center; gap: 0; overflow-x: auto; scrollbar-width: none; padding-bottom: 6px; }
.bd-path li { flex: none; display: flex; align-items: center; animation: sRise .55s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--n) * 90ms); }
.bd-path li span { padding: 12px 18px; border-radius: 99px; font-size: 14.5px; font-weight: 800; white-space: nowrap; }
.bd-path li.in span { background: var(--forest); color: var(--paper); }
.bd-path li.out span { background: none; color: var(--grey); box-shadow: inset 0 0 0 1.5px rgba(26, 26, 26, .2); border: 0; }
.bd-path li + li::before { content: ""; width: 28px; height: 2px; background: var(--forest-l); }
.bd-path li.out::before { background: repeating-linear-gradient(90deg, rgba(26, 26, 26, .25) 0 4px, transparent 4px 8px); }
.bd-line { position: relative; }
.bd-line span { position: relative; padding: 0 !important; width: 2px; height: 64px; border-radius: 2px; background: var(--signal); display: block; }
.bd-line span { font-size: 0 !important; }
.bd-line::after { content: "граница"; position: absolute; left: 50%; top: -22px; translate: -50% 0; margin-left: 14px; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--signal); }
.bd-tx { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 30px; }
.bd-tx p { margin: 0; font-size: 15.5px; line-height: 1.5; color: var(--grey-d); }
.bd-tx b { color: var(--forest); }
.bd-tx .bd-no b { color: var(--signal); }
.bd-p[hidden] { display: none; }

/* четирите ситуации: малки сцени */
.sits-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 30px; }
.sit { padding: 16px 16px 20px; border-radius: var(--r-md); background: rgba(255, 255, 255, .7); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 24px 44px -34px rgba(26, 26, 26, .45); transition: transform .35s cubic-bezier(.2, .8, .2, 1); }
.sit:hover { transform: translateY(-5px); }
.sit-n { margin: 14px 0 6px; font-size: 11.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--forest); }
.sit h3 { margin: 0; font-size: 17px; line-height: 1.35; font-weight: 800; }
.sx { position: relative; height: 130px; border-radius: var(--r-sm); background: linear-gradient(160deg, #EFF4EC, #E2EBDE); overflow: hidden; }
.s-ads .ad-f { position: absolute; left: 50%; top: 16px; width: 110px; height: 70px; margin-left: -55px; background: var(--forest); clip-path: polygon(0 0, 100% 0, 62% 100%, 38% 100%); opacity: .9; }
.ad-c { position: absolute; left: calc(50% - 40px + var(--n) * 16px); top: -14px; width: 10px; height: 10px; border-radius: 50%; background: var(--zlato); animation: adDrop 3.2s ease-in infinite; animation-delay: calc(var(--n) * .45s); }
.ad-c:nth-child(3) { animation-name: adIn; }
@keyframes adDrop { 0% { transform: translate(0, 0); opacity: 1; } 35% { transform: translate(0, 34px); opacity: 1; } 100% { transform: translate(calc((var(--n) - 2.5) * 16px), 150px); opacity: 0; } }
@keyframes adIn { 0% { transform: translate(0, 0); } 35% { transform: translate(0, 34px); } 70% { transform: translate(8px, 96px); opacity: 1; } 100% { transform: translate(8px, 110px); opacity: 0; } }
.ad-out { position: absolute; left: 50%; bottom: 10px; translate: -50% 0; padding: 4px 10px; border-radius: 99px; background: #fff; font-size: 11.5px; font-weight: 800; color: var(--forest); box-shadow: 0 6px 14px -8px rgba(0, 0, 0, .3); }
.s-red { display: grid; place-content: center; gap: 10px; }
.rd-t { padding: 8px 14px; border-radius: 10px; background: #fff; font-weight: 800; font-size: 13px; text-align: center; box-shadow: 0 8px 16px -10px rgba(0, 0, 0, .35); position: relative; }
.rd-2 { animation: rdX 4s ease-in-out infinite; }
.rd-2::after { content: ""; position: absolute; left: 8%; right: 8%; top: 50%; height: 2px; background: var(--signal); transform-origin: 0 50%; animation: rdLine 4s ease-in-out infinite; }
@keyframes rdX { 0%, 30% { opacity: 1; } 55%, 90% { opacity: .45; } 100% { opacity: 1; } }
@keyframes rdLine { 0%, 30% { transform: scaleX(0); } 50%, 90% { transform: scaleX(1); } 100% { transform: scaleX(0); } }
.s-riv { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 16px; }
.rv-p { display: grid; place-items: center; align-content: center; gap: 6px; border-radius: 14px; background: #fff; box-shadow: 0 8px 16px -10px rgba(0, 0, 0, .35); font-size: 12.5px; }
.rv-p b { font-size: 12px; }
.rv-p em { font-style: normal; font-weight: 800; color: var(--grey); }
.rv-them { animation: rvRing 1.8s ease-in-out infinite; }
.rv-them em { color: var(--forest); }
@keyframes rvRing { 0%, 60%, 100% { transform: rotate(0); } 64% { transform: rotate(-3deg); } 68% { transform: rotate(3deg); } 72% { transform: rotate(-3deg); } 76% { transform: rotate(2deg); } 80% { transform: rotate(0); } }
.s-adv { position: relative; }
.av-b { position: absolute; padding: 7px 12px; border-radius: 14px 14px 14px 4px; background: #fff; font-size: 12.5px; font-weight: 800; box-shadow: 0 8px 16px -10px rgba(0, 0, 0, .35); animation: avPop 3.6s ease-in-out infinite; animation-delay: calc(var(--n) * 1.2s); opacity: 0; }
.av-b:nth-child(1) { left: 12%; top: 18%; }
.av-b:nth-child(2) { right: 10%; top: 40%; border-radius: 14px 14px 4px 14px; }
.av-b:nth-child(3) { left: 28%; bottom: 14%; }
@keyframes avPop { 0% { opacity: 0; transform: scale(.6); } 10%, 45% { opacity: 1; transform: none; } 60%, 100% { opacity: 0; transform: scale(.9); } }

/* опитът: браншовете с 3D */
.xps-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 30px; }
.xp { display: flex; flex-direction: column; padding: 14px 18px 20px; border-radius: var(--r-md); background: rgba(255, 255, 255, .72); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 24px 44px -34px rgba(26, 26, 26, .45); color: inherit; text-decoration: none; }
.xp-img { display: block; aspect-ratio: 1; margin: -6px -6px 6px; }
.xp-img img { width: 100%; height: 100%; object-fit: contain; display: block; transition: transform .6s cubic-bezier(.2, .8, .2, 1); }
.xp:hover .xp-img img { transform: translateY(-6px) scale(1.04); }
.xp-k { font-size: 11.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--forest); }
.xp-t { margin-top: 6px; font-size: 17px; font-weight: 800; line-height: 1.3; }
.xp-n { margin-top: 6px; font-size: 13px; color: var(--grey); }
.xp-go { margin-top: auto; padding-top: 14px; font-size: 14px; font-weight: 800; color: var(--forest); }
.xps-n { margin: 22px 0 0; font-size: 15.5px; color: var(--grey-d); max-width: 720px; }
.xps-n b { color: var(--ink); }

/* обещанията: обръщат се */
.prm-g { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 30px; }
.pr-f { border: 0; padding: 0; background: none; font: inherit; color: inherit; text-align: left; perspective: 1200px; cursor: pointer; min-height: 250px; }
.pf-in { position: relative; display: block; height: 100%; min-height: 250px; transform-style: preserve-3d; transition: transform .8s cubic-bezier(.2, .8, .2, 1); }
.pr-f:hover .pf-in, .pr-f[aria-pressed="true"] .pf-in { transform: rotateY(180deg); }
@media (hover: none) { .pr-f:hover .pf-in { transform: none; } .pr-f[aria-pressed="true"] .pf-in { transform: rotateY(180deg); } }
.pf-a, .pf-b { position: absolute; inset: 0; display: flex; flex-direction: column; padding: 24px; border-radius: var(--r-md); backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.pf-a { background: #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 24px 44px -34px rgba(26, 26, 26, .45); }
.pf-b { background: linear-gradient(160deg, #0B5A3B, #003B25); color: var(--paper); transform: rotateY(180deg); justify-content: center; }
.pf-k { font-size: 11.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--forest); margin-bottom: 10px; }
.pf-b .pf-k { color: var(--zlato); }
.pf-a b { font-size: 22px; font-weight: 800; letter-spacing: -.01em; margin-bottom: 10px; }
.pf-b b { font-size: clamp(20px, 1.8vw, 26px); line-height: 1.25; font-weight: 800; }
.pf-t { font-size: 15px; line-height: 1.55; color: var(--grey-d); }
.pf-h { margin-top: auto; padding-top: 14px; font-size: 13px; font-weight: 800; color: var(--forest); }
.pr-f:focus-visible { outline: 3px solid var(--forest); outline-offset: 4px; border-radius: var(--r-md); }

@media (max-width: 1000px) {
  .sits-g, .xps-g { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .sk-hg, .fit-g { grid-template-columns: 1fr; }
  .sk-art { width: min(440px, 100%); margin-inline: auto; }
  /* на телефон уредът се лепи долу, докато отмятате */
  .fit-m { position: sticky; top: auto; bottom: 12px; z-index: 5; display: grid; grid-template-columns: 62px 1fr; align-items: center; gap: 4px 14px; padding: 12px 16px; text-align: left; border-radius: var(--r-md); }
  .fit-ring { width: 62px; height: 62px; margin: 0; grid-row: span 2; }
  .fit-ring svg circle { stroke-width: 11; }
  .fit-ring b { font-size: 21px; }
  .fit-ring b small { font-size: 11px; }
  .fit-v { margin: 0; font-size: 13.5px; line-height: 1.4; }
  .fit-cta { display: none; grid-column: 2; padding: 10px 16px; font-size: 14px; margin-top: 6px; }
  .fit-m.ok .fit-cta { display: inline-flex; }
  .fit-ask { display: none; }
  .prm-g { grid-template-columns: 1fr; }
  .bd-tx { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .sits-g { grid-template-columns: 1fr; }
  .xps-g { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .xp { padding: 10px 12px 14px; }
  .xp-t { font-size: 15px; }
  .fit-c { font-size: 15px; padding: 14px; }
  .bd-path { flex-wrap: wrap; gap: 8px; overflow: visible; margin: 24px 0 20px; }
  .bd-path li span { padding: 9px 13px; font-size: 13px; }
  .bd-path li + li::before { display: none; }
  .bd-line span { height: 34px; }
  .bd-line::after { top: auto; bottom: -18px; margin-left: 0; }
}

/* ═══════════════════════ КОНТАКТИ ═══════════════════════ */
.sc-hg { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(30px, 5vw, 80px); align-items: end; }
.str-kontakti h1 { font-size: clamp(64px, 10vw, 168px); line-height: .9; letter-spacing: -.05em; }
.eta { display: inline-flex; flex-direction: column; gap: 4px; margin-top: 26px; padding: 14px 20px 16px; border-radius: 20px; background: #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 20px 40px -30px rgba(26, 26, 26, .45); }
.eta-k { font-size: 11.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--forest); display: inline-flex; align-items: center; gap: 8px; }
.eta-k::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #2FA36B; box-shadow: 0 0 0 4px rgba(47, 163, 107, .18); animation: etaP 2s ease-in-out infinite; }
@keyframes etaP { 50% { box-shadow: 0 0 0 8px rgba(47, 163, 107, 0); } }
.eta-v { font-size: 17px; color: var(--grey-d); }
.eta-v b { color: var(--ink); }
.sc-tiles { display: grid; gap: 12px; }
.ct { position: relative; display: grid; grid-template-columns: 56px 1fr auto; grid-template-rows: auto auto; column-gap: 16px; align-items: center; padding: 18px 20px; border-radius: var(--r-md); background: #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 30px 54px -40px rgba(26, 26, 26, .5); transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease; }
.ct:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1.5px rgba(0, 84, 53, .3), 0 34px 60px -36px rgba(0, 84, 53, .5); }
.ct-ic { grid-row: span 2; position: relative; width: 56px; height: 56px; border-radius: 18px; display: grid; place-items: center; background: var(--forest); }
.ct-ic svg { width: 24px; height: 24px; fill: none; stroke: var(--paper); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ct-tel i { position: absolute; inset: 0; border-radius: inherit; box-shadow: 0 0 0 0 rgba(0, 84, 53, .4); animation: ctRing 2.4s ease-out infinite; }
.ct-tel i + i { animation-delay: 1.2s; }
@keyframes ctRing { to { box-shadow: 0 0 0 14px rgba(0, 84, 53, 0); } }
.ct:hover .ct-tel svg { animation: ctShake .6s ease-in-out; }
@keyframes ctShake { 20% { transform: rotate(-12deg); } 40% { transform: rotate(10deg); } 60% { transform: rotate(-8deg); } 80% { transform: rotate(5deg); } }
.ct-flap { transform-origin: 12px 7px; transition: transform .4s ease; }
.ct:hover .ct-flap { transform: scaleY(-1); }
.ct-ic { grid-column: 1; grid-row: 1 / span 2; }
.ct-k { grid-column: 2; grid-row: 1; align-self: end; }
.ct-v { grid-column: 2; grid-row: 2; align-self: start; }
.ct-copy { grid-column: 3; grid-row: 1 / span 2; align-self: center; }
.ct-k { font-size: 11.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--grey); }
.ct-v { font-size: clamp(19px, 1.9vw, 25px); font-weight: 800; color: var(--ink); letter-spacing: -.01em; text-decoration: none; }
.ct-v:hover { color: var(--forest); }
.ct-copy { grid-row: span 2; grid-column: 3; border: 0; padding: 9px 14px; border-radius: 99px; font: inherit; font-size: 13px; font-weight: 800; color: var(--forest); background: var(--chip-g-bg); cursor: pointer; transition: background .25s ease, color .25s ease; }
.ct-copy:hover { background: var(--forest); color: var(--paper); }
.ct-copy.done { background: var(--forest); color: var(--paper); }
.ct-copy:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; }
.ct-facts { list-style: none; margin: 4px 0 0; padding: 0 4px; display: grid; gap: 8px; }
.ct-facts li { font-size: 14.5px; color: var(--grey-d); }
.ct-facts span { display: inline-block; min-width: 76px; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--forest); }

/* писмото: изберете повод и то се пише само */
.ms-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(30px, 5vw, 70px); align-items: start; }
.ms-cs { display: grid; gap: 8px; margin-top: 24px; }
.ms-c { display: grid; gap: 2px; text-align: left; padding: 14px 18px; border: 0; border-radius: var(--r-md); font: inherit; color: var(--ink); background: rgba(255, 255, 255, .6); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .07); cursor: pointer; transition: background .3s ease, box-shadow .3s ease, transform .3s ease; }
.ms-c b { font-size: 16px; }
.ms-c span { font-size: 14px; color: var(--grey-d); }
.ms-c:hover { background: rgba(255, 255, 255, .9); transform: translateX(4px); }
.ms-c.on { background: #fff; box-shadow: inset 0 0 0 2px var(--forest), 0 18px 34px -26px rgba(0, 84, 53, .6); }
.ms-c:focus-visible { outline: 3px solid var(--forest); outline-offset: 3px; }
.ms-letter { position: sticky; top: 110px; border-radius: var(--r-lg); background: #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 50px 90px -50px rgba(26, 26, 26, .55); overflow: hidden; }
.ml-bar { display: flex; align-items: center; gap: 6px; padding: 12px 16px; background: #F1EEE8; font-size: 12.5px; font-weight: 700; color: var(--grey); }
.ml-bar i { width: 10px; height: 10px; border-radius: 50%; background: #DAD5CC; }
.ml-bar span { margin-left: 8px; }
.ml-row { margin: 0; padding: 12px 20px; border-bottom: 1px solid var(--hairline); font-size: 14.5px; }
.ml-row span { display: inline-block; min-width: 54px; color: var(--grey); font-size: 13px; }
.ml-body { padding: 18px 20px 6px; font-size: 15.5px; line-height: 1.6; min-height: 190px; }
.ml-body p { margin: 0 0 10px; }
.ml-t { min-height: 3.2em; }
.ml-t.typing::after { content: ""; display: inline-block; width: 1.5px; height: 1em; margin-left: 2px; vertical-align: -2px; background: var(--forest); animation: mlC .7s steps(2) infinite; }
@keyframes mlC { 50% { opacity: 0; } }
.ml-ph { color: var(--grey); font-style: italic; }
.ml-act { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; padding: 14px 20px 20px; }
.ml-copy { border: 0; background: none; padding: 6px 0; font: inherit; font-weight: 800; font-size: 14.5px; color: var(--forest); border-bottom: 1.5px solid rgba(0, 84, 53, .3); cursor: pointer; }
.ml-copy.done { border-color: var(--forest); }

/* картата: от Разград за цялата страна */
.bgs-g { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(20px, 4vw, 60px); align-items: center; }
.bgs-map { position: relative; border-radius: var(--r-lg); padding: clamp(14px, 2vw, 26px); background: linear-gradient(160deg, #0B2A1E, #04120C 70%); box-shadow: 0 40px 80px -46px rgba(0, 40, 25, .8); }
.bgm { display: block; width: 100%; height: auto; overflow: visible; }
.bgm-b { fill: rgba(127, 184, 159, .08); stroke: rgba(127, 184, 159, .45); stroke-width: 1.2; stroke-linejoin: round; }
.kn { fill: none; stroke: url(#kg); stroke-width: 1.6; stroke-linecap: round; stroke-dasharray: 1 1; stroke-dashoffset: 1; opacity: .9; }
.bgs-map.in .kn { animation: knDraw 1.4s cubic-bezier(.4, 0, .2, 1) both; animation-delay: calc(var(--i) * 110ms + .2s); }
@keyframes knDraw { to { stroke-dashoffset: 0; } }
.kc circle { fill: var(--forest-l); opacity: 0; }
.kc text { fill: rgba(247, 245, 242, .75); font-size: 10px; font-weight: 700; text-anchor: middle; opacity: 0; }
.bgs-map.in .kc circle, .bgs-map.in .kc text { animation: sFade .5s ease both; animation-delay: calc(var(--i) * 110ms + 1.2s); }
.kr-p { fill: rgba(212, 186, 116, .25); transform-origin: center; transform-box: fill-box; animation: krP 2.4s ease-out infinite; }
@keyframes krP { from { transform: scale(.4); opacity: 1; } to { transform: scale(1.6); opacity: 0; } }
.kr-d { fill: var(--zlato); }
.kr text { fill: var(--zlato); font-size: 12px; font-weight: 800; text-anchor: middle; }

/* хората */
.fnd-g { display: grid; grid-template-columns: 1fr 1fr .9fr; gap: 16px; margin-top: 28px; align-items: end; }
.fnd-c { margin: 0; }
.fnd-ph { border-radius: var(--r-md); overflow: hidden; aspect-ratio: 4 / 5; box-shadow: 0 30px 60px -36px rgba(26, 26, 26, .55); }
.fnd-ph img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s cubic-bezier(.2, .8, .2, 1); }
.fnd-c:hover img { transform: scale(1.04); }
.fnd-c figcaption { margin-top: 12px; display: flex; flex-direction: column; }
.fnd-c b { font-size: 17px; }
.fnd-c span { font-size: 13.5px; font-weight: 700; color: var(--forest); }
.fnd-cta { align-self: stretch; display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: 26px; border-radius: var(--r-md); background: linear-gradient(160deg, #0B5A3B, #003B25); color: var(--paper); }
.fnd-cta p { margin: 0; font-size: clamp(22px, 2vw, 28px); font-weight: 800; line-height: 1.15; }
.fnd-cta .btn { background: var(--paper); color: var(--forest); align-self: flex-start; }

@media (max-width: 860px) {
  .sc-hg, .ms-g, .bgs-g { grid-template-columns: 1fr; }
  .ms-letter { position: static; }
  .fnd-g { grid-template-columns: 1fr 1fr; }
  .fnd-cta { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .ct { grid-template-columns: 48px 1fr; padding: 14px 16px; }
  .ct-ic { width: 48px; height: 48px; border-radius: 15px; }
  .ct-copy { grid-column: 2; grid-row: 3; justify-self: start; margin-top: 8px; }
  .ct-v { font-size: 19px; }
}


/* ═══════════════════════ ЗАЯВКА ═══════════════════════ */
/* първият екран: вляво заглавието и корицата, вдясно цялата форма, без превъртане */
.zf { padding-top: clamp(104px, 13vh, 132px); padding-bottom: clamp(40px, 5vw, 72px); position: relative; z-index: 3; }
/* лявата колона и формата свършват на един ред: корицата се разтяга до долния край на формата */
.zf-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto; column-gap: clamp(28px, 5vw, 80px); row-gap: 0; align-items: stretch; }
.zf-l { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; }
.zf-form { display: contents; }
.zf-card { grid-column: 2; grid-row: 1; display: flex; flex-direction: column; justify-content: center; animation: sRise .95s cubic-bezier(.2, .8, .2, 1) .2s both; }
.zf-mail { grid-column: 2; grid-row: 2; animation: sRise .95s cubic-bezier(.2, .8, .2, 1) .3s both; }
.str-zayavka h1 { font-size: clamp(40px, 4.4vw, 68px); margin-bottom: 16px; }
.str-zayavka .zf-head .lead { font-size: clamp(16px, 1.25vw, 18.5px); margin-bottom: 0; }
.sz-deal { display: inline-flex; align-self: flex-start; align-items: center; flex-wrap: wrap; gap: 10px 16px; margin-top: 22px; padding: 11px 18px; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 20px 40px -30px rgba(26, 26, 26, .45); }
.sz-seats { display: inline-flex; gap: 6px; }
.sz-seats i { width: 12px; height: 12px; border-radius: 50%; background: var(--zlato); animation: szSeat 2.8s ease-in-out infinite; animation-delay: calc(var(--n) * .22s); }
@keyframes szSeat { 0%, 100% { box-shadow: 0 0 0 0 rgba(212, 186, 116, 0), 0 0 4px rgba(212, 186, 116, .4); } 45% { box-shadow: 0 0 0 4px rgba(212, 186, 116, .18), 0 0 12px rgba(212, 186, 116, .8); } }
.sz-left { font-weight: 800; font-size: 14px; }
.sz-price { font-size: 14px; color: var(--grey-d); }
.sz-price s { color: var(--grey); }
.sz-price b { font-size: 19px; color: var(--forest); margin: 0 2px 0 4px; }

/* формата: стегната, за да се побере цялата на първия екран */
.str-zayavka .zf-card { border-radius: var(--r-lg); padding: clamp(20px, 2.2vw, 30px) clamp(20px, 2.4vw, 32px) clamp(18px, 2vw, 24px); background: #fff; border: 0; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 50px 90px -60px rgba(26, 26, 26, .6); }
.zf-top { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.zf-h { font-size: 20px !important; margin: 0 !important; }
.zf-prog { margin: 0; font-size: 12.5px; font-weight: 800; color: var(--grey); font-variant-numeric: tabular-nums; }
.zf-pn { color: var(--forest); }
.zf-bar { height: 5px; border-radius: 99px; background: rgba(26, 26, 26, .07); margin: 10px 0 14px; overflow: hidden; }
.zf-bar i { display: block; height: 100%; width: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--forest-l), var(--forest) 70%, var(--zlato-t)); transform-origin: 0 50%; transform: scaleX(var(--z, 0)); transition: transform .6s cubic-bezier(.2, .8, .2, 1); }
.zf-f { position: relative; padding-left: 40px; margin-bottom: 11px; }
.str-zayavka .zf-f label { margin-bottom: 5px; font-size: 11px; }
.zf-n { position: absolute; left: 0; top: 29px; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; font-size: 10.5px; font-weight: 800; color: var(--grey); box-shadow: inset 0 0 0 1.5px var(--hairline); transition: background .35s ease, color .35s ease, box-shadow .35s ease; }
.zf-f.focus .zf-n { box-shadow: inset 0 0 0 2px var(--forest); color: var(--forest); }
.zf-f.good .zf-n { background: var(--forest); color: var(--paper); box-shadow: none; }
.str-zayavka .zf-f input, .str-zayavka .zf-f textarea { width: 100%; min-height: 50px; padding: 12px 42px 12px 16px; border-radius: 14px; border: 0; font: inherit; font-size: 16px; color: var(--ink); background: #F7F5F2; box-shadow: inset 0 0 0 1.5px transparent; transition: box-shadow .3s ease, background .3s ease; }
.str-zayavka .zf-f textarea { padding-right: 16px; resize: vertical; min-height: 70px; line-height: 1.45; }
.str-zayavka .zf-f input:focus, .str-zayavka .zf-f textarea:focus { outline: none; background: #fff; box-shadow: inset 0 0 0 2px var(--forest), 0 0 0 5px rgba(0, 84, 53, .08); }
/* автоматичното попълване на браузъра не боядисва полето в синьо */
.str-zayavka .zf-f input:-webkit-autofill { -webkit-box-shadow: 0 0 0 100px #F7F5F2 inset; -webkit-text-fill-color: var(--ink); caret-color: var(--ink); }
.str-zayavka .zf-f input:-webkit-autofill:focus { -webkit-box-shadow: 0 0 0 100px #fff inset, inset 0 0 0 2px var(--forest); }
.zf-ok { position: absolute; right: 13px; top: 36px; width: 22px; height: 22px; border-radius: 50%; background: var(--forest); transform: scale(0); transition: transform .4s cubic-bezier(.3, 1.6, .5, 1); pointer-events: none; }
.zf-ok::after { content: ""; position: absolute; left: 8px; top: 4.5px; width: 5px; height: 10px; border: solid var(--paper); border-width: 0 2px 2px 0; transform: rotate(45deg); }
.zf-f.good .zf-ok { transform: scale(1); }
.str-zayavka .field-note { margin: 5px 0 0; font-size: 12.5px; color: var(--grey); }
.zf-o { text-transform: none; letter-spacing: 0; font-weight: 600; color: var(--grey); }
.zn { display: flex; flex-wrap: wrap; gap: 5px; margin: 0 0 7px; }
.zn-c { border: 0; padding: 6px 11px; border-radius: 99px; font: inherit; font-size: 12.5px; font-weight: 800; color: var(--forest); background: var(--chip-g-bg); cursor: pointer; transition: background .25s ease, color .25s ease, transform .25s ease; }
.zn-c:hover { transform: translateY(-2px); }
.zn-c.on { background: var(--forest); color: var(--paper); }
.zn-c:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; }
.zf-go { width: 100%; min-height: 54px; font-size: 16.5px; margin-top: 4px; }
.zf-card.ready .zf-go { box-shadow: 0 0 0 5px rgba(212, 186, 116, .3), 0 18px 34px -14px rgba(0, 84, 53, .7); }
.zf-gar { display: flex; align-items: flex-start; gap: 9px; margin: 12px 0 0; padding: 10px 12px; border-radius: 14px; background: var(--tint); font-size: 13px; line-height: 1.45; color: var(--grey-d); }
.zf-gar b { color: var(--forest); font-weight: 800; }
.zf-gm { flex: none; width: 19px; height: 19px; margin-top: 0; fill: none; stroke: var(--forest); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.str-zayavka .form-note { margin-top: 10px; font-size: 12px; line-height: 1.45; }
.str-zayavka .form-note a { color: var(--forest); font-weight: 700; border-bottom: 1px solid var(--forest); }
.zf-mail { margin: 14px 0 0; text-align: center; font-size: 14px; color: var(--grey-d); }
.zf-mail a { color: var(--forest); font-weight: 800; border-bottom: 1.5px solid rgba(0, 84, 53, .35); }
.str-zayavka .form-ok { padding: 40px 10px; animation: sRise .6s cubic-bezier(.2, .8, .2, 1) both; }
.str-zayavka .form-ok .ok-c { width: 72px; height: 72px; margin: 0 auto 10px; border-radius: 50%; display: grid; place-items: center; background: var(--forest); box-shadow: 0 0 0 8px rgba(212, 186, 116, .25); }
.str-zayavka .form-ok .ok-c svg { width: 34px; height: 34px; fill: none; stroke: var(--paper); stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 30; stroke-dashoffset: 30; animation: okDraw .6s .3s ease forwards; }
@keyframes okDraw { to { stroke-dashoffset: 0; } }

/* корицата на доклада: права, колкото кутията с цената, пише се, докато попълвате */
.zf-head { display: flex; flex-direction: column; }
.sz-deal { align-self: stretch; justify-content: space-between; }
.zc-wrap { margin-top: 14px; flex: 1; display: flex; }
.zc { width: 100%; container-type: inline-size; display: flex; }
.zc-in { position: relative; flex: 1; min-height: 58cqi; padding: 6% 6.5% 5.5%; border-radius: var(--r-lg); overflow: hidden; color: var(--paper); display: flex; flex-direction: column;
  background: radial-gradient(70% 90% at 100% 0%, rgba(212, 186, 116, .22), transparent 60%), linear-gradient(160deg, #0B5A3B, #003B25 60%, #022A1B);
  box-shadow: 0 50px 90px -50px rgba(0, 40, 25, .8), inset 0 0 0 1px rgba(212, 186, 116, .25);
  transform: perspective(1400px) rotateY(calc(var(--rx, 0) * 1deg)) rotateX(calc(var(--ry, 0) * 1deg)); transition: transform .5s cubic-bezier(.2, .8, .2, 1); font-size: 2.9cqi; }
.zc-in::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(135deg, rgba(255, 255, 255, .025) 0 2px, transparent 2px 9px); }
.zc-top { display: flex; justify-content: space-between; align-items: center; font-size: .78em; }
.zc-mark { font-weight: 800; letter-spacing: 3px; }
.zc-no { color: var(--zlato); font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.zc-main { flex: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6%; align-items: center; }
.zc-txt { min-width: 0; }
.zc-k { margin: 0 0 .25em; font-size: 1em; color: rgba(247, 245, 242, .7); }
.zc-site { margin: 0; font-size: 2.3em; font-weight: 800; line-height: 1.05; letter-spacing: -.02em; word-break: break-word; }
.zc-for { margin: .5em 0 0; font-size: .95em; color: rgba(247, 245, 242, .7); }
.zc-for b { color: var(--paper); }
.zc .zc-note { margin: .7em 0 0; font-size: .82em; line-height: 1.4; color: rgba(247, 245, 242, .8); display: none; }
.zc .zc-note.has { display: block; }
.zc-note .zc-v::before { content: "„"; color: var(--zlato); }
.zc-note .zc-v::after { content: "“"; color: var(--zlato); }
.zc-sc { display: flex; flex-direction: column; align-items: center; gap: .5em; }
.zc-ring { position: relative; width: 6.6em; aspect-ratio: 1; }
/* пет еднакви дъги (20 + 20 = 40 от 100 по обиколката, кръгът се дели точно): без къс
   неподвижен сегмент в началото; върти се целият кръг, не пунктирът */
.zc-ring svg { width: 100%; height: 100%; display: block; animation: zcRot 14s linear infinite; }
.zc-ring .t { fill: none; stroke: rgba(247, 245, 242, .15); stroke-width: 8; }
.zc-ring .v { fill: none; stroke: var(--zlato); stroke-width: 8; stroke-linecap: round; stroke-dasharray: 12 8; }
@keyframes zcRot { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
/* числото и „/100“ са едно цяло, центрирано в кръга */
.zc-rv { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .1em; line-height: 1; }
.zc-rv b { font-size: 2.3em; font-weight: 800; color: var(--zlato); line-height: .9; }
.zc-rv span { font-size: .7em; color: rgba(247, 245, 242, .6); }
.zc-ring-t { margin: 0; max-width: 8em; text-align: center; font-size: .75em; line-height: 1.3; font-style: italic; color: rgba(247, 245, 242, .7); font-family: 'Literata', Georgia, serif; }
.zc-meta { list-style: none; margin: 0; padding: .9em 0 0; border-top: 1px solid rgba(247, 245, 242, .15); display: flex; gap: 2em; font-weight: 800; font-size: 1em; }
.zc-meta span { display: block; font-size: .62em; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: rgba(247, 245, 242, .55); margin-bottom: .15em; }
.zc-meta li:last-child { margin-left: auto; text-align: right; }
.zc [data-p]:not(.zc-note) { position: relative; }
.zc [data-p]::after { content: ""; position: absolute; inset: -.3em -.5em; border-radius: .5em; box-shadow: 0 0 0 1.5px var(--zlato); opacity: 0; transition: opacity .3s ease; pointer-events: none; }
.zc .zc-note[data-p] { position: relative; }
.zc [data-p].hot::after { opacity: 1; }
.zc-v.typed { animation: zcIn .35s ease both; }
@keyframes zcIn { from { opacity: .3; filter: blur(3px); } to { opacity: 1; filter: none; } }
.zc-sc { position: relative; }
.zc-stamp { position: absolute; left: 50%; top: 42%; translate: -50% -50%; padding: .3em .7em; border: 3px solid var(--zlato); border-radius: .5em; color: var(--zlato); font-weight: 800; font-size: 1.3em; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; transform: rotate(-10deg) scale(2.2); opacity: 0; transition: opacity .25s ease, transform .5s cubic-bezier(.3, 1.4, .5, 1); background: #0A3F2A; box-shadow: 0 0 0 6px rgba(10, 63, 42, .9); }
.zc.done .zc-stamp { opacity: 1; transform: rotate(-10deg) scale(1); }

/* какво следва: с дати */
.zt-l { list-style: none; margin: 30px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; position: relative; }
.zt-l::before { content: ""; position: absolute; z-index: 1; left: 27px; right: calc((100% - 42px) / 4 - 27px); top: 20px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, var(--forest-l), var(--forest) 60%, var(--zlato-t)); transform-origin: 0 50%; transform: scaleX(0); transition: transform 1.4s cubic-bezier(.4, 0, .2, 1) .2s; }
.zt-l.in::before { transform: none; }
.zt-l li { position: relative; padding: 52px 20px 22px; border-radius: var(--r-md); background: rgba(255, 255, 255, .7); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 24px 44px -34px rgba(26, 26, 26, .45); }
.zt-l li::before { content: ""; position: absolute; z-index: 2; left: 20px; top: 14px; width: 14px; height: 14px; border-radius: 50%; background: var(--forest); box-shadow: 0 0 0 5px #E3EBE3; }
.zt-d { display: block; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--forest); margin-bottom: 6px; }
.zt-l b { display: block; font-size: 19px; margin-bottom: 6px; }
.zt-l p { margin: 0; font-size: 14.5px; line-height: 1.5; color: var(--grey-d); }
.zt-n { margin: 16px 0 0; font-size: 13px; color: var(--grey); }

/* защо толкова */
.zx-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 60px); align-items: center; }
.zx-cs { display: grid; gap: 12px; }
.zx-c { display: grid; grid-template-columns: 76px 1fr; grid-template-rows: auto auto; column-gap: 18px; align-items: center; padding: 20px 22px; border-radius: var(--r-md); background: linear-gradient(160deg, #0B5A3B, #003B25); color: var(--paper); box-shadow: 0 30px 60px -40px rgba(0, 84, 53, .7); }
.zx-n { grid-row: span 2; width: 76px; height: 76px; border-radius: 22px; display: grid; place-items: center; background: rgba(247, 245, 242, .08); color: var(--zlato); font-size: 34px; font-weight: 800; }
.zx-ic svg { width: 34px; height: 34px; fill: none; stroke: var(--zlato); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.zx-c b { font-size: 18px; }
.zx-c p { margin: 2px 0 0; font-size: 14.5px; color: rgba(247, 245, 242, .75); }

@media (max-width: 900px) {
  .zf-g, .zx-g { grid-template-columns: 1fr; }
  /* телефон: заглавие, веднага формата, корицата след нея */
  .zf-g { row-gap: 0; }
  .zf-l { display: contents; }
  .zf-head, .zf-card, .zf-mail, .zc-wrap { grid-column: 1; grid-row: auto; }
  .zf-head { order: 0; margin-bottom: 26px; }
  .zf-card { order: 1; }
  .zf-mail { order: 2; }
  .zc-wrap { order: 3; margin-top: 30px; }
  .zt-l { grid-template-columns: 1fr 1fr; }
  .zt-l::before { display: none; }
}
@media (max-width: 560px) {
  .zf { padding-top: 96px; }
  .sz-deal { border-radius: var(--r-md); margin-top: 16px; justify-content: flex-start; }
  .str-zayavka h1 { font-size: 38px; }
  .zf-f { padding-left: 0; }
  .zf-n { display: none; }
  .zt-l { grid-template-columns: 1fr; }
  .zc-in { min-height: 250px; font-size: 3.6cqi; border-radius: var(--r-md); }
}
@media (prefers-reduced-motion: reduce) {
  .zf-card, .zf-mail, .sz-seats i, .zc-ring svg, .zc-v.typed, .str-zayavka .form-ok, .str-zayavka .form-ok .ok-c svg { animation: none; }
  .str-zayavka .form-ok .ok-c svg { stroke-dashoffset: 0; }
  .zc-in, .zc-stamp, .zf-bar i, .zf-ok, .zt-l::before { transition: none; }
  .zt-l::before { transform: none; }
}

/* ---------- намалено движение ---------- */
@media (prefers-reduced-motion: reduce) {
  .s-l > span, .s-in, .wr.in .w > span, .rg line, .rng-o, .sk-o, .sk-o img, .ad-c, .rd-2, .rd-2::after, .rv-them, .av-b, .eta-k::before, .ct-tel i, .kr-p, .bgs-map.in .kn, .bgs-map.in .kc circle, .bgs-map.in .kc text, .lv-ph[data-lv="3"] .lp-call, .bd-path li, .fit-v { animation: none; }
  .wr .w > span { transform: none; }
  .kn { stroke-dashoffset: 0; }
  .kc circle, .kc text { opacity: 1; }
  .av-b { opacity: 1; }
  .ch-s, .ch-score, .ar-p i b, .no-t span, .pf-in, .fit-ring .v, .tl { transition: none; }
}


/* ═══════════════════════ 404 ═══════════════════════ */
.nf { padding-top: clamp(116px, 15vh, 160px); position: relative; z-index: 3; }
.nf-g { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 5vw, 70px); align-items: center; }
.nf-stage { position: relative; aspect-ratio: 1.35 / 1; border-radius: var(--r-lg); overflow: hidden; container-type: inline-size; cursor: none; }
.nf-l { position: absolute; inset: 0; display: grid; place-items: center; }
.nf-n { font-size: 38cqi; font-weight: 800; letter-spacing: -.06em; line-height: 1; }
.nf-surf { background: radial-gradient(rgba(26, 26, 26, .08) 1px, transparent 1.4px) 0 0 / 22px 22px, #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06); }
.nf-surf .nf-n { color: transparent; -webkit-text-stroke: 2px rgba(0, 84, 53, .3); }
.nf-xray { background: linear-gradient(rgba(127, 184, 159, .08) 1px, transparent 1px) 0 0 / 22px 22px, linear-gradient(90deg, rgba(127, 184, 159, .08) 1px, transparent 1px) 0 0 / 22px 22px, radial-gradient(90% 90% at 50% 45%, #0F3A2A, #06150E); clip-path: circle(0 at 50% 50%); }
.nf-xray .nf-n { color: var(--zlato); text-shadow: 0 0 40px rgba(212, 186, 116, .35); }
.nf-tag { position: absolute; padding: 7px 13px; border-radius: 99px; background: var(--signal); color: #fff; font-size: 13px; font-weight: 800; white-space: nowrap; box-shadow: 0 10px 22px -8px rgba(198, 40, 40, .7); }
.nf-t1 { left: 12%; top: 18%; }
.nf-t2 { right: 10%; bottom: 16%; }
.nf-ring { position: absolute; left: 0; top: 0; width: 34cqi; height: 34cqi; border-radius: 50%; border: 2.5px solid var(--zlato); box-shadow: 0 0 0 7px rgba(212, 186, 116, .14), 0 22px 44px -10px rgba(6, 21, 14, .45); pointer-events: none; }
.nf-ring i { position: absolute; left: 50%; top: 50%; width: 12px; height: 28%; margin-left: -6px; border-radius: 99px; background: linear-gradient(90deg, #0B5A3B, #003B25); box-shadow: inset 0 0 0 2px var(--zlato); transform: rotate(-45deg) translateY(17.5cqi); transform-origin: 50% 0; }
.nf-go-h { margin: 0 0 14px; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--grey); }
.nf-cards { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.nf-c { display: flex; flex-direction: column; gap: 6px; padding: 18px; border-radius: var(--r-md); background: rgba(255, 255, 255, .72); box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06), 0 20px 40px -32px rgba(26, 26, 26, .45); color: var(--ink); transition: transform .3s ease, box-shadow .3s ease; }
.nf-c:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1.5px rgba(0, 84, 53, .3), 0 26px 50px -30px rgba(0, 84, 53, .5); }
.nf-c b { font-size: 16px; }
.nf-c span { font-size: 13.5px; color: var(--grey-d); }
.nf-cta { background: linear-gradient(160deg, #0B5A3B, #003B25); color: var(--paper); }
.nf-cta span { color: rgba(247, 245, 242, .75); }
@media (max-width: 900px) {
  .nf-g { grid-template-columns: 1fr; }
  .nf-cards { grid-template-columns: 1fr 1fr; }
  .nf-cta { grid-column: 1 / -1; }
}
@media (pointer: coarse) { .nf-stage { cursor: auto; } }

/* ═══════════════════════ надградените страници (nadgradi_stranici.py) ═══════════════════════ */
.sxp .page-hero { padding-bottom: clamp(24px, 4vw, 56px); }
.sxp [class*="-hero"]:not(header) { padding-top: 0; padding-bottom: 0; }
.sxp h1 { font-size: clamp(40px, 5vw, 76px); }
.sxp-koi-sme-nie h1 { font-size: clamp(36px, 3.9vw, 60px); }
.sxp-razkritie-klimatici h1, .sxp-razkritie-mirena h1, .sxp-razkritie-folt h1 { font-size: clamp(36px, 4.4vw, 64px); }
.sxp .page-hero .lead { max-width: 720px; }
.sxp-kick { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; padding: 7px 13px; border-radius: 99px; background: var(--chip-g-bg); color: var(--forest); font-size: 11.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; line-height: 1.4; }
.sxp-stats { max-width: 760px; }
/* търсенето във въпросите и в блога */
.sxp-find { position: relative; display: flex; align-items: center; gap: 12px; max-width: 560px; margin-top: 26px; padding: 6px 8px 6px 18px; border-radius: 99px; background: #fff; box-shadow: inset 0 0 0 1.5px rgba(26, 26, 26, .08), 0 20px 40px -30px rgba(26, 26, 26, .45); transition: box-shadow .3s ease; }
.sxp-find:focus-within { box-shadow: inset 0 0 0 2px var(--forest), 0 0 0 6px rgba(0, 84, 53, .08), 0 20px 40px -30px rgba(26, 26, 26, .45); }
.sxp-find svg { width: 20px; height: 20px; flex: none; fill: none; stroke: var(--forest); stroke-width: 2.2; stroke-linecap: round; }
.sxp-find input { flex: 1; min-width: 0; height: 46px; border: 0; background: none; font: inherit; font-size: 16.5px; color: var(--ink); outline: none; }
.sxp-find input::-webkit-search-cancel-button { cursor: pointer; }
.sxp-cnt { flex: none; padding: 7px 12px; border-radius: 99px; background: var(--chip-g-bg); color: var(--forest); font-size: 12.5px; font-weight: 800; white-space: nowrap; }
.sxp-cnt:empty { display: none; }
.sxp-none { margin: 16px 0 0; padding: 14px 18px; border-radius: var(--r-sm); background: #fff; box-shadow: inset 0 0 0 1px rgba(26, 26, 26, .06); font-size: 15px; color: var(--grey-d); max-width: 560px; }
.sxp-none a { color: var(--forest); font-weight: 800; border-bottom: 1.5px solid rgba(0, 84, 53, .35); }
.sxp-hide { display: none !important; }
mark.sxp-m { background: rgba(212, 186, 116, .45); color: inherit; border-radius: 3px; padding: 0 1px; }
/* лентата за напредъка при дългите страници */
.ar-prog { position: fixed; left: 0; right: 0; top: 0; z-index: 60; height: 3px; pointer-events: none; }
.ar-prog i { display: block; height: 100%; background: linear-gradient(90deg, var(--forest-l), var(--forest) 60%, var(--zlato-t)); transform-origin: 0 50%; transform: scaleX(var(--p, 0)); box-shadow: 0 0 10px rgba(212, 186, 116, .5); }
@media (max-width: 720px) {
  .sxp h1 { font-size: 36px; }
  .sxp-koi-sme-nie h1 { font-size: 32px; }
  .sxp-razkritie-klimatici h1, .sxp-razkritie-mirena h1, .sxp-razkritie-folt h1 { font-size: 32px; }
  .sxp-find input { font-size: 16px; }
}

/* главите на Блог, Въпроси и Как работи: в центъра (01.10.2026) */
.sxp-blog .page-hero .container, .sxp-vaprosi .page-hero .container, .sxp-kak-raboti .page-hero .container { text-align: center; }
.sxp-blog .page-hero .lead, .sxp-vaprosi .page-hero .lead, .sxp-kak-raboti .page-hero .lead { margin-inline: auto; }
.sxp-blog .sxp-find { margin-inline: auto; max-width: 640px; }
.sxp-blog .sxp-none, .sxp-vaprosi .sxp-none { margin-inline: auto; text-align: center; }
/* във Въпроси търсенето е широко колкото списъка под него */
.sxp-vaprosi .faq { max-width: 880px; margin-inline: auto; }
.sxp-vaprosi .sxp-find { max-width: 880px; margin-inline: auto; }
.sxp-vaprosi .sxp-none { max-width: 880px; }
.sxp-kak-raboti .sxp-stats { max-width: 900px; margin-inline: auto; text-align: left; }
@media (max-width: 860px) { .sxp-kak-raboti .sxp-stats { text-align: left; } }

/* ═══════════════════════ РАЗКРИТИЯ v2 (01.10.2026) ═══════════════════════ */
.rsx .rs-hero .container { text-align: center; }
.rsx .rs-hero .lead { margin-inline: auto; max-width: 760px; }
.rs { position: relative; max-width: 980px; margin: 44px auto 0; padding: 92px 0 84px; container-type: inline-size; }
.rs-track { position: relative; height: 12px; border-radius: 99px; background: rgba(26, 26, 26, .07); overflow: hidden; }
.rs-track i { position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(90deg, #C62828, #D4BA74 50%, #2F8F5B 80%, #005435); transform-origin: 0 50%; transform: scaleX(0); transition: transform 1.4s cubic-bezier(.4, 0, .2, 1) .3s; }
.rs.go .rs-track i { transform: none; }
.rs-ticks { display: flex; justify-content: space-between; margin-top: 10px; font-size: 12px; font-weight: 800; color: var(--grey); font-variant-numeric: tabular-nums; }
.rs-pin { position: absolute; left: 0; top: 0; display: flex; flex-direction: column; align-items: center; gap: 6px; translate: -50% 0; color: var(--ink); text-decoration: none; transition: translate 1.4s cubic-bezier(.3, 1.1, .4, 1) .3s, transform .3s ease; }
.rs.go .rs-pin { translate: calc(var(--v) * 1cqi - 50%) 0; }
.rs-pin::after { content: ""; position: absolute; top: 64px; left: 50%; width: 2px; height: 30px; margin-left: -1px; background: currentColor; opacity: .3; }
.rs-dot { position: relative; display: grid; place-items: center; width: 60px; height: 60px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px currentColor, 0 16px 30px -12px rgba(26, 26, 26, .45); font-size: 21px; font-weight: 800; font-variant-numeric: tabular-nums; }
.rs-low { color: #C62828; } .rs-mid { color: #B8932F; } .rs-high { color: var(--forest); }
.rs-dot b { color: var(--ink); }
.rs-lbl { position: absolute; top: -40px; white-space: nowrap; text-align: center; line-height: 1.2; opacity: 0; transition: opacity .5s ease 1.4s; }
.rs.go .rs-lbl { opacity: 1; }
.rs-lbl b { display: block; font-size: 14px; color: var(--ink); }
.rs-lbl small { font-size: 11.5px; font-weight: 800; color: currentColor; }
.rs-mid .rs-lbl small { color: #7A5B12; }
.rs-pin:hover { transform: translateY(-4px); }
.rs-pin:hover .rs-dot { box-shadow: 0 0 0 6px currentColor, 0 20px 36px -12px rgba(26, 26, 26, .5); }
.rs-pin:focus-visible { outline: 3px solid var(--forest); outline-offset: 6px; border-radius: 99px; }
/* „А вие?“: пунктир, който се разхожда по скалата */
/* под скалата, за да не се блъска в надписите на трите бизнеса */
.rs-you { top: 146px; flex-direction: row; gap: 10px; translate: calc(var(--y, 38) * 1cqi - 21px) 0; color: var(--grey-d); transition: transform .3s ease; opacity: 0; }
.rs.go .rs-you { translate: calc(var(--y, 38) * 1cqi - 21px) 0; opacity: 1; transition: opacity .6s ease 2s, transform .3s ease; }
.rs-you .rs-dot { width: 42px; height: 42px; background: rgba(255, 255, 255, .8); box-shadow: 0 12px 24px -12px rgba(26, 26, 26, .35); outline: 2px dashed rgba(26, 26, 26, .4); outline-offset: -2px; }
.rs-you .rs-dot b { color: var(--forest); font-size: 19px; }
.rs-you .rs-lbl { position: static; text-align: left; }
.rs-you .rs-lbl small { color: var(--forest); }
.rs-you::after { top: -42px; left: 21px; height: 40px; opacity: .22; }
.rs-you:hover { transform: translateY(2px); }
.rs-you:hover .rs-dot { box-shadow: 0 0 0 4px rgba(0, 84, 53, .15), 0 14px 26px -12px rgba(26, 26, 26, .4); }
.rsx .rz-tc { transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease; }
.rsx .rz-tc:hover { transform: translateY(-6px); }
.rsx .rz-tc.hl { transform: translateY(-6px); box-shadow: 0 0 0 2px var(--forest), 0 30px 60px -30px rgba(0, 84, 53, .5); }
.rsx .case { position: relative; }
.rs-cn { position: absolute; left: -12px; top: -54px; font-size: clamp(90px, 11vw, 170px); font-weight: 800; letter-spacing: -.06em; line-height: .8; color: transparent; -webkit-text-stroke: 1.5px rgba(0, 84, 53, .16); pointer-events: none; z-index: 0; }
.rsx .case > :not(.rs-cn) { position: relative; z-index: 1; }
.rsx .case.flip .rs-cn { left: auto; right: -12px; }
.rsx .cb-fill { transition: width 1.3s cubic-bezier(.2, .8, .2, 1); }

/* двете гледни точки: плъзгач върху два слоя */
.cv-wrap { container-type: inline-size; }
.cv { position: relative; aspect-ratio: 1.22 / 1; border-radius: var(--r-lg); overflow: hidden; box-shadow: 0 50px 90px -50px rgba(26, 26, 26, .6), inset 0 0 0 1px rgba(26, 26, 26, .06); background: #fff; touch-action: pan-y; font-size: 3.15cqi; user-select: none; -webkit-user-select: none; }
.cv-l { position: absolute; inset: 0; display: grid; place-items: center; padding: 9% 6% 6%; }
.cv-own { background: radial-gradient(rgba(26, 26, 26, .06) 1px, transparent 1.4px) 0 0 / 20px 20px, linear-gradient(160deg, #FFFFFF, #F1EEE8); }
.cv-cli { background: linear-gradient(rgba(127, 184, 159, .08) 1px, transparent 1px) 0 0 / 20px 20px, linear-gradient(90deg, rgba(127, 184, 159, .08) 1px, transparent 1px) 0 0 / 20px 20px, radial-gradient(100% 100% at 60% 40%, #0F3A2A, #06150E); clip-path: inset(0 0 0 var(--x)); }
.cv-lb { position: absolute; top: 14px; z-index: 3; padding: 6px 12px; border-radius: 99px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.cv-lb-o { left: 14px; background: #fff; color: var(--forest); box-shadow: 0 6px 14px -8px rgba(0, 0, 0, .3); }
.cv-lb-c { right: 14px; background: var(--signal); color: #fff; }
.cv-h { position: absolute; top: 0; bottom: 0; left: var(--x); z-index: 4; width: 0; pointer-events: none; }
.cv-h::before { content: ""; position: absolute; top: 0; bottom: 0; left: -1.5px; width: 3px; background: var(--zlato); box-shadow: 0 0 16px rgba(212, 186, 116, .7); }
.cv-h i { position: absolute; top: 50%; left: -24px; width: 48px; height: 48px; margin-top: -24px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px var(--zlato), 0 12px 24px -8px rgba(0, 0, 0, .45); }
.cv-h i::before, .cv-h i::after { content: ""; position: absolute; top: 50%; width: 9px; height: 9px; margin-top: -4.5px; border: solid var(--forest); border-width: 0 0 2.5px 2.5px; }
.cv-h i::before { left: 11px; transform: rotate(45deg); }
.cv-h i::after { right: 11px; transform: rotate(-135deg); }
.cv-r { position: absolute; inset: 0; z-index: 5; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; -webkit-appearance: none; appearance: none; }
.cv-r:focus-visible + * { outline: 0; }
.cv:focus-within { outline: 3px solid var(--forest); outline-offset: 4px; }
.cv-sc { position: absolute; right: -14px; bottom: 34px; z-index: 6; display: flex; align-items: baseline; gap: 2px; padding: 12px 16px; border-radius: 18px; background: #fff; box-shadow: 0 20px 40px -18px rgba(0, 0, 0, .45); font-variant-numeric: tabular-nums; }
.cv-sc b { font-size: 34px; font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.cv-sc small { font-size: 14px; font-weight: 700; color: var(--grey); }
.cv-low b { color: var(--signal); } .cv-mid b { color: #A8872B; } .cv-high b { color: var(--forest); }
.case.flip .cv-sc { right: auto; left: -14px; }
.cv-hint { margin: 12px 0 0; text-align: center; font-size: 12.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--grey); }
/* макетите вътре */
.mk { position: relative; width: 100%; max-width: 27.5em; border-radius: 1em; overflow: visible; background: #fff; box-shadow: 0 1.4em 2.6em -1.4em rgba(26, 26, 26, .45), inset 0 0 0 1px rgba(26, 26, 26, .06); font-size: 1em; line-height: 1.3; }
.mk-bar { display: flex; align-items: center; gap: .35em; padding: .6em .8em; background: #F1EEE8; border-radius: 1em 1em 0 0; font-size: .8em; color: var(--grey); }
.mk-bar i { width: .7em; height: .7em; border-radius: 50%; background: #DAD5CC; }
.mk-bar span { margin-left: .6em; padding: .15em .8em; border-radius: 99px; background: #fff; }
.mk-hd { padding: 1.1em 1.2em; background: linear-gradient(135deg, #1F4E79, #173A5B); color: #fff; }
.mk-hd b { display: block; font-size: 1.3em; margin-bottom: .2em; }
.mk-hd span { font-size: .85em; opacity: .8; }
.mk-rows { padding: .8em 1.2em .2em; }
.mk-rows p { display: flex; justify-content: space-between; gap: 1em; margin: 0; padding: .45em 0; border-bottom: 1px solid #EEEBE5; font-size: .9em; }
.mk-rows i { width: 3.5em; height: .7em; border-radius: 99px; background: #EEEBE5; align-self: center; }
.mk-faq { display: flex; justify-content: space-between; margin: .6em 1.2em 1em; padding: .6em .8em; border-radius: .6em; background: #F4F1EB; font-size: .85em; }
.mk-x { background: rgba(10, 36, 25, .7); color: rgba(247, 245, 242, .85); box-shadow: inset 0 0 0 1px rgba(127, 184, 159, .4); }
.mk-x .mk-bar { background: rgba(127, 184, 159, .1); color: rgba(247, 245, 242, .55); }
.mk-x .mk-bar i { background: rgba(127, 184, 159, .3); } .mk-x .mk-bar span { background: rgba(127, 184, 159, .12); }
.mk-x .mk-hd { background: rgba(127, 184, 159, .08); }
.mk-x .mk-rows p { border-color: rgba(127, 184, 159, .2); }
.mk-x .mk-rows i { background: rgba(127, 184, 159, .2); }
.mk-bad { color: #FF8A80; text-decoration: underline wavy rgba(255, 107, 97, .8); text-underline-offset: .25em; }
.mk-real b { color: #FF8A80; font-size: 1.15em; }
.mk-cta { display: flex; align-items: center; justify-content: space-between; margin: .6em 1.2em 1em; padding: .6em .8em; border-radius: .6em; background: rgba(198, 40, 40, .18); font-size: .88em; }
.mk-cta b { font-size: 1.6em; color: #FF8A80; line-height: 1; }
.mk-tag { position: absolute; z-index: 2; padding: .45em .9em; border-radius: 99px; background: var(--signal); color: #fff; font-size: .82em; font-weight: 800; font-style: normal; white-space: nowrap; rotate: var(--r, 0deg); box-shadow: 0 .6em 1.4em -.4em rgba(198, 40, 40, .7); }
.mk-list { padding: 1.2em; }
.mk-lp { display: flex; align-items: center; gap: .8em; }
.mk-av { display: grid; place-items: center; width: 2.6em; height: 2.6em; border-radius: 50%; background: #F5DFDC; color: var(--signal); font-weight: 800; font-size: 1.1em; }
.mk-lp b { display: block; font-size: 1.05em; }
.mk-lp span { font-size: .85em; color: var(--grey); }
.mk-st { margin: .8em 0 .5em; font-size: .95em; }
.mk-st span { color: var(--zlato-t); letter-spacing: .05em; }
.mk-st em { font-style: normal; color: var(--grey); }
.mk-badges { display: flex; flex-wrap: wrap; gap: .4em; }
.mk-badges span { padding: .35em .7em; border-radius: 99px; background: var(--chip-g-bg); color: var(--forest); font-size: .78em; font-weight: 800; }
.mk-btns { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4em; margin-top: 1em; }
.mk-btns span { padding: .55em 0; border-radius: 99px; text-align: center; font-size: .8em; font-weight: 800; color: #1F4E79; box-shadow: inset 0 0 0 1px #D6DEE8; }
.mk-btns .on { background: #1F4E79; color: #fff; box-shadow: none; }
.mk-dns { background: #202124; color: #E8EAED; }
.mk-dns .mk-bar { background: #35363A; color: #9AA0A6; } .mk-dns .mk-bar span { background: #202124; color: #BDC1C6; }
.mk-err { padding: 1.6em 1.4em 5em; display: grid; gap: .5em; }
.mk-doc { width: 1.6em; height: 2em; border: 2px solid #9AA0A6; border-radius: .2em; margin-bottom: .4em; }
.mk-err b { font-size: 1.15em; font-weight: 700; }
.mk-err span { font-size: .8em; color: #9AA0A6; }
.mk-err code { font-size: .72em; color: #9AA0A6; }
.mk-folt { background: #0B0B12; color: #fff; }
.mk-folt .mk-bar { background: #1A1A24; color: #8B8BA0; } .mk-folt .mk-bar span { background: #0B0B12; }
.mk-fh { position: relative; padding: 2.2em 1.4em 1.6em; overflow: hidden; }
.mk-orb { position: absolute; right: -1em; top: -.6em; width: 8.5em; height: 8.5em; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #B9A6FF, #6D4AFF 45%, #1D0F5C 80%); filter: blur(.3px); box-shadow: 0 0 3em rgba(109, 74, 255, .5); animation: mkOrb 6s ease-in-out infinite; }
@keyframes mkOrb { 50% { transform: translate(-.5em, .4em) scale(1.05); } }
.mk-fh b { position: relative; display: block; font-size: 1.7em; letter-spacing: -.02em; }
.mk-fh span { position: relative; font-size: .85em; opacity: .7; }
.mk-fc { display: flex; gap: .5em; padding: 0 1.4em 1.4em; }
.mk-fc span { padding: .45em .8em; border-radius: 99px; background: rgba(255, 255, 255, .08); font-size: .78em; font-weight: 700; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .15); }
.mk-black { background: #000; color: #fff; }
.mk-black .mk-bar { background: #1A1A1A; color: #777; } .mk-black .mk-bar span { background: #000; }
.mk-bl { display: grid; place-items: center; height: 12em; }
.mk-bl code { font-size: .9em; color: #ddd; }

/* изводът: трите разрива на тъмно, пукнатина, изход */
.rz-fin-s { padding-top: 0; }
.rz-fin { position: relative; overflow: hidden; isolation: isolate; padding: clamp(40px, 5.4vw, 78px) clamp(24px, 5.4vw, 80px) clamp(36px, 4.6vw, 64px); border-radius: var(--r-lg); background: radial-gradient(110% 90% at 88% -10%, #0F7049 0%, transparent 55%), linear-gradient(160deg, #0B5A3B, #002B1B); color: var(--paper); box-shadow: 0 60px 110px -60px rgba(0, 43, 27, .75); }
.rz-fin::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(rgba(127, 184, 159, .07) 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, rgba(127, 184, 159, .07) 1px, transparent 1px) 0 0 / 28px 28px; -webkit-mask: radial-gradient(90% 90% at 50% 40%, #000, transparent); mask: radial-gradient(90% 90% at 50% 40%, #000, transparent); }
.rz-fin::after { content: ""; position: absolute; left: var(--mx, 80%); top: var(--my, 10%); z-index: -1; width: 560px; height: 560px; margin: -280px 0 0 -280px; border-radius: 50%; background: radial-gradient(closest-side, rgba(212, 186, 116, .18), transparent); pointer-events: none; transition: left .5s ease-out, top .5s ease-out; }
.rz-crack { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; pointer-events: none; }
.rz-crack path { fill: none; stroke: url(#rz-g); stroke-width: 3; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; opacity: .7; filter: drop-shadow(0 0 8px rgba(212, 186, 116, .55)); }
.rz-fin.in .rz-crack path { animation: rzCrack 2.2s cubic-bezier(.6, 0, .2, 1) .3s both; }
@keyframes rzCrack { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
.rz-fin-k { margin: 0 0 14px; font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #E6D29A; }
.rz-fq { margin: 0; padding: 0; border: 0; font-style: normal; quotes: none; }
.rz-fq::before, .rz-fq::after { content: none; }
.rz-fl { display: flex; align-items: center; gap: clamp(14px, 2vw, 28px); padding: clamp(14px, 1.7vw, 22px) 0; border-bottom: 1px solid rgba(247, 245, 242, .12); font-size: clamp(22px, 2.7vw, 40px); font-weight: 800; letter-spacing: -.025em; line-height: 1.1; transition: opacity .35s ease, translate .45s cubic-bezier(.2, .8, .2, 1); }
.rz-fl > span { text-wrap: balance; }
.rz-fs { flex: none; display: grid; place-items: center; width: clamp(46px, 4.4vw, 62px); height: clamp(46px, 4.4vw, 62px); border-radius: 50%; background: rgba(247, 245, 242, .06); box-shadow: 0 0 0 3px currentColor, 0 0 26px -4px currentColor; color: #D4BA74; font-size: clamp(17px, 1.6vw, 22px); letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.fs-low { color: #FF7A70; } .fs-mid { color: #D4BA74; } .fs-high { color: #7FD1A7; }
.rz-fe { display: block; max-width: 62ch; margin-top: clamp(20px, 2.4vw, 30px); font-size: clamp(17px, 1.5vw, 20px); line-height: 1.55; color: rgba(247, 245, 242, .78); text-wrap: pretty; }
@media (scripting: enabled) { .rz-fin:not(.in) .rz-fl, .rz-fin:not(.in) .rz-fe, .rz-fin:not(.in) .rz-fin-ctas { opacity: 0; } }
.rz-fin.in .rz-fl { animation: rzFl .8s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.35s + var(--i) * .2s); }
.rz-fin.in .rz-fe, .rz-fin.in .rz-fin-ctas { animation: rzFl .8s cubic-bezier(.2, .8, .2, 1) 1s both; }
@keyframes rzFl { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }
@media (hover: hover) and (pointer: fine) {
  .rz-fl > * { transition: opacity .35s ease; }
  .rz-fq:has(.rz-fl:hover) .rz-fl:not(:hover) > * { opacity: .35; }
  .rz-fl:hover { translate: 10px 0; }
}
.rz-fin-ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: clamp(26px, 3vw, 38px); }
.rz-ghost { display: inline-flex; align-items: center; padding: 14px 24px; border-radius: 999px; color: var(--paper); font-weight: 800; font-size: 15.5px; box-shadow: inset 0 0 0 1.5px rgba(247, 245, 242, .35); transition: box-shadow .25s ease, background .25s ease; }
.rz-ghost:hover { background: rgba(247, 245, 242, .08); box-shadow: inset 0 0 0 1.5px var(--zlato); }
.rz-lk { display: inline-flex; align-items: center; gap: 8px; color: var(--zlato); font-weight: 800; font-size: 15.5px; }
.rz-lk span { transition: translate .25s ease; }
.rz-lk:hover span { translate: 4px 0; }
.rz-fin a:focus-visible { outline: 3px solid var(--zlato); outline-offset: 3px; }

@media (max-width: 720px) {
  .rs { padding: 84px 0 76px; }
  .rs-you { top: 132px; }
  .rs-you .rs-dot { width: 38px; height: 38px; }
  .rs .rs-you::after { top: -30px; left: 19px; height: 28px; }
  .rz-fl { align-items: flex-start; font-size: 22px; }
  .rz-fs { width: 40px; height: 40px; font-size: 15px; margin-top: -4px; box-shadow: 0 0 0 2.5px currentColor, 0 0 18px -4px currentColor; }
  .rz-fin-ctas .btn, .rz-ghost { flex: 1 1 100%; justify-content: center; }
  .rz-fin-ctas { justify-content: center; }
  .rs-you, .rs.go .rs-you { translate: calc(var(--y, 38) * 1cqi - 19px) 0; }
  .rs-dot { width: 46px; height: 46px; font-size: 16px; box-shadow: 0 0 0 3px currentColor, 0 12px 24px -10px rgba(26, 26, 26, .45); }
  .rs-you .rs-dot b { font-size: 19px; }
  .rs-pin::after { top: 50px; height: 36px; }
  .rs-lbl b { font-size: 12px; }
  .rs-lbl small { display: none; }
  .rs-cn { font-size: 80px; top: -40px; left: 0; }
  .rsx .case.flip .rs-cn { right: 0; }
  .cv { font-size: 3.2cqi; }
  .cv-l { padding: 15% 5% 5%; }
  .cv-sc { right: 10px; bottom: 22px; padding: 8px 12px; }
  .rz-crack { display: none; }
  .cv-hint { margin-top: 34px; }
  .case.flip .cv-sc { left: 8px; }
  .cv-sc b { font-size: 26px; }
  .cv-lb { font-size: 10.5px; top: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .rs-track i, .rs-pin, .rs-lbl, .rsx .cb-fill { transition: none; }
  .mk-orb { animation: none; }
  .rz-fin.in .rz-crack path { animation: none; stroke-dashoffset: 0; }
  .rz-fin.in .rz-fl, .rz-fin.in .rz-fe, .rz-fin.in .rz-fin-ctas { animation: none; }
  .rz-fin::after { transition: none; }
}
html.cur-on .cv-r { cursor: none; }

/* ═══════════════════════ GOOGLE КАРТИТЕ (01.10.2026) ═══════════════════════ */
.gkx .gk-head { padding-bottom: clamp(30px, 4vw, 60px) !important; }
.gk-hg { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.gkx .gk-progres { margin-top: 24px; }
.gk-go { margin-top: 26px; }
/* картата с изкачването */
.gm { width: 100%; max-width: 470px; margin-inline: auto; overflow: hidden; border-radius: 28px; background: #fff; box-shadow: 0 0 0 1px rgba(26, 26, 26, .06), 0 50px 90px -50px rgba(26, 26, 26, .55); }
.gm-q { display: flex; align-items: center; gap: 10px; margin: 14px; padding: 12px 16px; border-radius: 99px; background: #F3F1EC; font-size: 15px; font-weight: 700; color: var(--grey-d); }
.gm-q svg { width: 18px; height: 18px; fill: none; stroke: var(--forest); stroke-width: 2.2; stroke-linecap: round; }
.gm-map { position: relative; height: 190px; overflow: hidden; background: #E8EEE5; }
.gm-map svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.gm-park { fill: #D4E4D3; }
.gm-riv { fill: none; stroke: #CFE0E6; stroke-width: 14; stroke-linecap: round; }
.gm-rd { fill: none; stroke: #fff; stroke-width: 9; stroke-linecap: round; }
.gm-rd2 { fill: none; stroke: #fff; stroke-width: 4; stroke-linecap: round; opacity: .8; }
.gm-pin { position: absolute; left: var(--x); top: var(--y); width: 26px; height: 26px; margin: -30px 0 0 -13px; border-radius: 50% 50% 50% 0; rotate: -45deg; background: #B9B3A8; box-shadow: 0 6px 10px -4px rgba(0, 0, 0, .35); transition: background .5s ease, scale .6s cubic-bezier(.3, 1.6, .5, 1); }
.gm-pin::after { content: ""; position: absolute; left: 50%; top: 50%; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: #fff; }
.gm-you { background: var(--forest); scale: .85; }
.gm.win .gm-you { background: var(--zlato-t); scale: 1.3; }
.gm-you::before { content: ""; position: absolute; inset: -8px; border-radius: 50%; box-shadow: 0 0 0 0 rgba(201, 168, 92, .55); }
.gm.win .gm-you::before { animation: gmPing 1.8s ease-out infinite; }
@keyframes gmPing { to { box-shadow: 0 0 0 18px rgba(201, 168, 92, 0); } }
.gm-list { position: relative; height: 248px; margin: 0; padding: 12px 14px 14px; list-style: none; }
.gm-r { position: absolute; left: 14px; right: 14px; top: 12px; display: flex; align-items: center; gap: 12px; height: 54px; padding: 0 12px; border-radius: 14px; translate: 0 calc(var(--y) * 58px); transition: translate .75s cubic-bezier(.3, 1.2, .5, 1), background .4s ease, box-shadow .4s ease; }
.gm-r b { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #F1EEE8; font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; }
.gm-r > span { min-width: 0; display: grid; font-size: 15.5px; font-weight: 800; line-height: 1.2; }
.gm-r em { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 12.5px; font-weight: 700; font-style: normal; color: var(--grey); }
.gm-r em i { font-style: normal; letter-spacing: .04em; color: var(--zlato-t); }
.gm-me { z-index: 1; background: #FBF9F5; box-shadow: inset 0 0 0 1.5px rgba(0, 84, 53, .2); }
.gm-me b { background: var(--forest); color: var(--paper); }
.gm.win .gm-me { background: var(--chip-g-bg); box-shadow: 0 0 0 2px var(--forest), 0 16px 30px -16px rgba(0, 84, 53, .55); }
.gm.win .gm-me em { color: var(--forest); }

/* маршрутът: стъпките са спирки по пътя, линията се изтегля с превъртането */
.gkx .gk-sec { padding: clamp(20px, 3vw, 40px) 0 clamp(60px, 7vw, 100px); }
.gk-rt { position: relative; margin: 0; padding: 0; list-style: none; }
.gk-rt::before, .gk-rt::after { content: ""; position: absolute; left: 50%; top: 18px; bottom: 18px; width: 6px; margin-left: -3px; border-radius: 6px; }
.gk-rt::before { background: repeating-linear-gradient(to bottom, rgba(0, 84, 53, .2) 0 12px, transparent 12px 22px); }
.gk-rt::after { background: linear-gradient(var(--forest), var(--zlato-t)); transform-origin: 50% 0; transform: scaleY(var(--p, 0)); }
.gk-mk { position: relative; z-index: 1; display: flex; justify-content: center; margin: 0 0 34px; }
.gk-mk span { padding: 9px 18px; border-radius: 99px; background: var(--paper); box-shadow: inset 0 0 0 1.5px var(--hairline); font-size: 13px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--grey-d); }
.gk-mk-b { margin: 8px 0 0; }
.gk-mk-b span { background: var(--zlato); box-shadow: 0 12px 26px -12px rgba(122, 91, 18, .6); color: #2A2208; }
.gk-st { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 96px; margin-bottom: 26px; }
.gk-pin { position: absolute; left: 50%; top: 26px; z-index: 2; display: grid; place-items: center; width: 48px; height: 48px; margin-left: -24px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 3px rgba(0, 84, 53, .2), 0 10px 20px -10px rgba(26, 26, 26, .4); font-size: 14px; font-weight: 800; color: var(--forest); font-variant-numeric: tabular-nums; transition: background .4s ease, color .4s ease, box-shadow .4s ease; }
.gk-st.on .gk-pin { background: var(--forest); color: var(--paper); box-shadow: 0 0 0 6px var(--chip-g-bg), 0 10px 20px -10px rgba(0, 84, 53, .5); }
.gk-alt.on .gk-pin { background: var(--zlato-t); color: #2A2208; box-shadow: 0 0 0 6px #F3EBD3; }
.gk-c { position: relative; display: grid; gap: 6px; padding: 22px 24px; border-radius: var(--r-md); background: #fff; color: var(--ink); text-decoration: none; box-shadow: 0 0 0 1px rgba(26, 26, 26, .06), 0 26px 50px -40px rgba(26, 26, 26, .4); transition: translate .4s cubic-bezier(.2, .8, .2, 1), box-shadow .4s ease; }
.gk-l .gk-c { grid-column: 1; }
.gk-r .gk-c { grid-column: 2; }
a.gk-c:hover { translate: 0 -4px; box-shadow: 0 0 0 1px rgba(0, 84, 53, .18), 0 34px 60px -38px rgba(0, 84, 53, .45); }
a.gk-c:focus-visible { outline: 3px solid var(--forest); outline-offset: 3px; }
.gk-c::after { content: "\2192"; position: absolute; right: 22px; top: 20px; font-size: 20px; font-weight: 800; color: var(--forest); opacity: 0; translate: -6px 0; transition: opacity .3s ease, translate .3s ease; }
a.gk-c:hover::after { opacity: 1; translate: 0 0; }
.gk-k { justify-self: start; padding: 4px 10px; border-radius: 99px; background: var(--chip-g-bg); color: var(--forest); font-size: 11.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.gk-alt .gk-k { background: #F3EBD3; color: var(--zlato-d); }
.gk-t { padding-right: 26px; font-size: clamp(19px, 1.6vw, 22px); font-weight: 800; line-height: 1.2; letter-spacing: -.01em; }
.gk-d { font-size: 15px; line-height: 1.5; color: var(--grey-d); }
.gk-m { font-size: 12.5px; font-weight: 700; color: var(--grey); }
.gk-soon .gk-c { background: transparent; box-shadow: inset 0 0 0 1.5px var(--hairline); }
.gk-soon .gk-t, .gk-soon .gk-d { color: var(--grey); }
.gk-soon .gk-pin { background: var(--paper); box-shadow: 0 0 0 2px var(--hairline); color: var(--grey); }
/* накрая: след картата */
.gk-fin-s { padding-top: 0 !important; }
.gk-fin { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 26px clamp(24px, 4vw, 60px); align-items: center; padding: clamp(28px, 4.4vw, 60px); border-radius: var(--r-lg); color: var(--paper); background: radial-gradient(110% 90% at 88% -10%, #0F7049 0%, transparent 55%), linear-gradient(160deg, #0B5A3B, #002B1B); box-shadow: 0 60px 110px -60px rgba(0, 43, 27, .75); }
.gk-fk { font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #E6D29A; }
.gk-fin h2 { margin: 10px 0 12px; color: var(--paper); }
.gk-fl { margin: 0; color: rgba(247, 245, 242, .78); }
.gk-fx { display: grid; gap: 10px; }
.gk-fx a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; border-radius: 18px; background: rgba(247, 245, 242, .08); box-shadow: inset 0 0 0 1px rgba(247, 245, 242, .16); color: var(--paper); text-decoration: none; transition: background .25s ease; }
.gk-fx a:hover { background: rgba(247, 245, 242, .14); }
.gk-fx b { font-size: 16.5px; }
.gk-fx span { color: var(--zlato); font-weight: 800; transition: translate .25s ease; }
.gk-fx a:hover span { translate: 4px 0; }
.gk-fa { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.gk-alt-l { color: var(--zlato); font-weight: 800; }
.gk-fin a:focus-visible { outline: 3px solid var(--zlato); outline-offset: 3px; }
@media (max-width: 900px) {
  .gk-hg { grid-template-columns: minmax(0, 1fr); }
  .gk-fin { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
  .gk-rt::before, .gk-rt::after { left: 24px; }
  .gk-mk { justify-content: flex-start; }
  .gk-st { grid-template-columns: minmax(0, 1fr); }
  .gk-pin { left: 24px; top: 18px; width: 42px; height: 42px; margin-left: -21px; font-size: 13px; }
  .gk-l .gk-c, .gk-r .gk-c { grid-column: 1; margin-left: 58px; padding: 18px 18px; }
  .gm-list { height: 244px; }
  .gm-r > span { font-size: 14.5px; }
  .gk-fa .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .gm-r, .gm-pin, .gk-pin, .gk-c { transition: none; }
  .gm.win .gm-you::before { animation: none; }
}

/* ═══════════════════════ ПРАВНИТЕ СТРАНИЦИ (01.10.2026) ═══════════════════════ */
.lg-tabs { display: inline-flex; flex-wrap: wrap; gap: 4px; margin-top: 24px; padding: 5px; border-radius: 99px; background: #EFEBE4; }
.lg-tabs a { padding: 9px 16px; border-radius: 99px; font-size: 14.5px; font-weight: 800; color: var(--grey-d); text-decoration: none; transition: color .25s ease, background .25s ease; }
.lg-tabs a:hover { color: var(--forest); }
.lg-tabs a[aria-current="page"] { background: #fff; color: var(--forest); box-shadow: 0 6px 14px -8px rgba(26, 26, 26, .35); }
.lg-tabs a:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; }
.lg-sec { padding-top: 6px; }
.lg-g { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(28px, 5vw, 84px); align-items: start; }
.lg-toc { position: sticky; top: 112px; max-height: calc(100vh - 140px); overflow: auto; scrollbar-width: thin; }
.lg-toc p { margin: 0 0 12px; font-size: 11.5px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--grey); }
.lg-toc ol { position: relative; list-style: none; margin: 0; padding: 0 0 0 16px; }
.lg-toc ol::before, .lg-toc ol::after { content: ""; position: absolute; left: 0; top: 6px; bottom: 6px; width: 2px; border-radius: 2px; background: rgba(0, 84, 53, .12); }
.lg-toc ol::after { background: linear-gradient(var(--forest-l), var(--forest) 60%, var(--zlato-t)); transform-origin: 50% 0; transform: scaleY(var(--tp, 0)); transition: transform .3s ease; }
.lg-toc a { display: flex; gap: 10px; padding: 6px 0; font-size: 14.5px; font-weight: 700; line-height: 1.35; color: var(--grey-d); text-decoration: none; transition: color .2s ease; }
.lg-toc a span { flex: none; min-width: 20px; color: #A8A39A; font-variant-numeric: tabular-nums; }
.lg-toc a:hover, .lg-toc a.on { color: var(--forest); }
.lg-toc a.on span { color: var(--forest); }
.lg-toc a:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; border-radius: 6px; }
.lg-body { min-width: 0; max-width: 760px; }
.lg-body > .lead:first-child { margin-top: 0; }
.lg-body p { font-size: 17px; line-height: 1.7; color: var(--grey-d); }
.lg-body p strong { color: var(--ink); }
.lgx .lg-body h2 { display: flex; align-items: baseline; gap: 14px; margin: 46px 0 14px; font-size: clamp(22px, 2vw, 28px); line-height: 1.2; scroll-margin-top: 110px; }
.lg-n { flex: none; display: grid; place-items: center; min-width: 36px; height: 30px; padding: 0 9px; border-radius: 99px; background: var(--forest); color: var(--paper); font-size: 13px; font-weight: 800; translate: 0 -.12em; font-variant-numeric: tabular-nums; }
.lgx .mrows { margin-top: 0; padding: 4px 28px; border-top: 0; border-radius: var(--r-md); background: #fff; box-shadow: 0 0 0 1px rgba(26, 26, 26, .06), 0 30px 60px -48px rgba(26, 26, 26, .35); }
.lgx .mrow { grid-template-columns: 210px minmax(0, 1fr); gap: 24px; padding: 18px 0; scroll-margin-top: 110px; }
.lgx .mrow:last-child { border-bottom: 0; }
.lgx .mrow .label { font-size: 12px; letter-spacing: .12em; color: var(--forest); }
.lgx .mrow .mv { font-size: 16.5px; line-height: 1.6; font-weight: 600; color: var(--ink); }
.lgx .lg-body h2:not(:has(.lg-n)) { margin-top: 40px; }
.lgx :target { animation: lgHit 1.6s ease-out; }
@keyframes lgHit { 0%, 30% { background-color: rgba(212, 186, 116, .22); } 100% { background-color: transparent; } }
@media (max-width: 900px) {
  .lg-g { grid-template-columns: minmax(0, 1fr); }
  .lg-toc { position: static; max-height: none; padding: 18px 20px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(26, 26, 26, .06); }
  .lg-toc ol { columns: 2; column-gap: 22px; }
  .lg-toc ol::before, .lg-toc ol::after { display: none; }
  .lg-toc ol { padding-left: 0; }
  .lg-toc li { break-inside: avoid; }
  .lgx .mrows { padding: 2px 18px; }
  .lgx .mrow { grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 15px 0; }
}
@media (max-width: 560px) {
  .lg-toc ol { columns: 1; }
  .lg-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; border-radius: 18px; }
  .lg-tabs a { display: grid; place-items: center; padding: 9px 6px; border-radius: 14px; font-size: 13px; line-height: 1.2; text-align: center; }
}
@media (prefers-reduced-motion: reduce) { .lgx :target { animation: none; } .lg-toc ol::after { transition: none; } }
/* Поверителност и Данни за фирмата: същите номерирани раздели като Общите условия */
.lg-body > h2:first-child { margin-top: 0 !important; padding-top: 0; border-top: 0; }
.lg-list { list-style: none; margin: 0 0 14px; padding: 0; max-width: 70ch; }
.lg-list li { position: relative; margin-bottom: 10px; padding-left: 22px; font-size: 17px; line-height: 1.7; color: var(--grey-d); }
.lg-list li::before { content: ""; position: absolute; left: 4px; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--forest); }
.lg-list b { color: var(--ink); }

