/* ── ДанТри Тех: общи елементи за всички страници — език, мобилно меню, проекти, подстраници ── */

/* горна лента: превключвател на езика, текуща страница */
.hdr-end{display:flex;align-items:center;gap:12px;flex:none}
.lang{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 10px;font-size:13px;font-weight:600;letter-spacing:.08em;line-height:1;color:#1D211F!important;text-decoration:none;border:1px solid rgba(29,33,31,.22);transition:background-color .18s ease,border-color .18s ease}
.lang:hover{background:#FFFFFF;border-color:#203026}
.nav-link[aria-current="page"]::after{transform:scaleX(1)}
.burger .b-close{display:none}
.burger[aria-expanded="true"] .b-open{display:none}
.burger[aria-expanded="true"] .b-close{display:block}

/* мобилно меню (под 1025 px) */
.mnav{position:fixed;left:0;right:0;top:76px;bottom:0;z-index:48;background:#F4F2EE;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-top:1px solid rgba(29,33,31,.08)}
.mnav[hidden]{display:none}
.mnav-in{display:flex;flex-direction:column;min-height:100%;padding:8px clamp(20px,4vw,48px) 32px}
.m-link{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;font-size:22px;font-weight:600;letter-spacing:-.01em;line-height:1.2;color:#1D211F!important;text-decoration:none;border-bottom:1px solid rgba(29,33,31,.12)}
.m-link svg{flex:none;color:#566C58}
.m-link[aria-current="page"]{color:#4A5F4D!important}
.m-link[hidden]{display:none}
.m-foot{margin-top:auto;padding-top:28px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
html.menu-open,html.menu-open body{overflow:hidden}
@media (min-width:1025px){.mnav{display:none!important}}

/* връзка „Още →“ */
.more-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:600;font-size:15.5px;color:#203026!important;text-decoration:none}
.more-link span{border-bottom:1.5px solid currentColor;padding-bottom:3px}
.more-link:hover{color:#4A5F4D!important}
.more-link svg{transition:transform .2s ease}
.more-link:hover svg{transform:translateX(4px)}
.on-dark .more-link{color:#F4F2EE!important}
.on-dark .more-link:hover{color:#FFFFFF!important}

/* карти на проекти */
.dt .pj-grid{list-style:none;margin:clamp(40px,4vw,64px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:24px}
.pj-grid>li{display:flex}
.pj{display:flex;flex-direction:column;width:100%;background:#FFFFFF;border:1px solid rgba(29,33,31,.1)}
.pj-media{position:relative;aspect-ratio:16/9;background:#203026;overflow:hidden}
.pj-media svg,.pj-media img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.pj-body{display:flex;flex-direction:column;gap:12px;flex:1;padding:clamp(22px,2.4vw,32px)}
.dt .pj-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13.5px;line-height:1.4;color:#4A504C}
.pj-type{font-size:12px;font-weight:600;letter-spacing:.03em;line-height:1;background:#AFC4AE;color:#18211D;padding:7px 10px}
.dt .pj-title{font-size:clamp(22px,.8vw + 15px,28px);line-height:1.2;letter-spacing:-.01em;font-weight:600;color:#1D211F}
.dt .pj-desc{font-size:16px;line-height:1.6;color:#4A504C}
.pj-link{margin-top:auto;padding-top:8px;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;font-size:15px;color:#203026!important;text-decoration:none}
.pj-link span{border-bottom:1.5px solid currentColor;padding-bottom:2px}
.pj-link:hover{color:#4A5F4D!important}
.dt .pj-empty{margin-top:40px;font-size:17px;color:#4A504C}

/* начална страница: секция „Проекти“ и карта „Аудио гидове“ */
.pj-home .pj-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr))}
.pj-foot{margin-top:clamp(28px,3vw,40px)}
.au-viz{flex:1 1 240px;max-width:360px;display:flex;align-items:center;gap:22px}
.au-qr{flex:none;width:68px;height:68px}
.au-wave{flex:1;display:flex;align-items:center;gap:4px;height:56px}
.au-wave i{flex:1;height:100%;background:#566C58;transform:scaleY(var(--h,.5))}
.au-wave i:nth-child(3n){background:#8FA592}
.fx .fx-run .au-wave i{animation:auBar 1.3s ease-in-out var(--d,0s) infinite}
@keyframes auBar{0%,100%{transform:scaleY(var(--h,.5))}50%{transform:scaleY(calc(var(--h,.5) * .3 + .12))}}
.fx-scroll .au-wave i{animation-play-state:paused!important}

/* ── подстраници ── */
@keyframes rvRise{from{opacity:0;transform:translateY(24px)}}
.fx [data-rv]:not(.in){opacity:0}
.fx [data-rv].in{animation:rvRise .8s cubic-bezier(.2,.75,.2,1) var(--rv-d,0s) backwards}
.pg-hero{position:relative;padding:clamp(72px,9vw,136px) 0 clamp(56px,6vw,96px);border-bottom:1px solid rgba(29,33,31,.1)}
.dt .pg-h1{font-size:clamp(40px,4.2vw + 12px,84px);line-height:1.02;letter-spacing:-.035em;font-weight:600;color:#1D211F;max-width:16ch;text-wrap:balance}
.dt .pg-lead{margin-top:28px;max-width:640px;font-size:clamp(18px,.3vw + 16.5px,21px);line-height:1.6;color:#4A504C}
.dt .chips{list-style:none;padding:0;margin:40px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:14.5px;font-weight:500;color:#203026!important;text-decoration:none;border:1px solid rgba(32,48,38,.28);background:rgba(255,255,255,.55);transition:background-color .18s ease,color .18s ease}
.chips a:hover{background:#203026;color:#F4F2EE!important}
.pg-sec{position:relative;padding:clamp(72px,8vw,128px) 0}
.pg-sec+.pg-sec{border-top:1px solid rgba(29,33,31,.1)}
.dt .pg-h2{font-size:clamp(32px,2.6vw + 12px,56px);line-height:1.06;letter-spacing:-.03em;font-weight:600;color:#1D211F;text-wrap:balance}
.on-dark .pg-h2{color:#F4F2EE}
.dt .pg-p{margin-top:24px;max-width:640px;font-size:18px;line-height:1.65;color:#4A504C}
.on-dark .pg-p{color:#C9D2C8}

/* услуга */
.svc-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,6vw,96px);align-items:start}
.svc.rev .svc-side{order:-1}
.svc-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.svc-ic{width:56px;height:56px;flex:none;display:flex;align-items:center;justify-content:center;background:#203026;color:#AFC4AE}
.dt .svc-num{font-size:13px;font-weight:600;letter-spacing:.14em;color:#4A5F4D}
.dt .svc-h{margin-top:22px;font-size:clamp(30px,1.8vw + 14px,48px);line-height:1.08;letter-spacing:-.025em;font-weight:600;color:#1D211F}
.dt .svc-lead{margin-top:18px;font-size:clamp(17px,.3vw + 16px,19.5px);line-height:1.6;color:#2E3430}
.dt .svc-sub{margin-top:36px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#4A5F4D}
.dt .svc-list{list-style:none;padding:0;margin-top:14px;display:grid;gap:2px}
.svc-list li{position:relative;padding:12px 0 12px 34px;font-size:16.5px;line-height:1.55;color:#1D211F;border-top:1px solid rgba(29,33,31,.1)}
.svc-list li::before{content:"";position:absolute;left:4px;top:19px;width:12px;height:7px;border-left:2px solid #566C58;border-bottom:2px solid #566C58;transform:rotate(-45deg)}
.dt .svc-fits{margin-top:24px;font-size:15.5px;line-height:1.6;color:#4A504C}
.svc-fits strong{color:#1D211F;font-weight:600}
.svc-side{display:flex;flex-direction:column;gap:20px;position:sticky;top:104px}
.svc-art{aspect-ratio:16/9;background:#203026;overflow:hidden}
.svc-art svg{display:block;width:100%;height:100%}
.case{background:#FFFFFF;border:1px solid rgba(29,33,31,.1);padding:22px 24px;display:flex;flex-direction:column;gap:8px}
.dt .case-k{font-size:12.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#4A5F4D}
.dt .case-t{font-size:20px;line-height:1.3;font-weight:600;color:#1D211F}
.dt .case-c{font-size:14.5px;color:#4A504C}
.badge-new{font-size:12px;font-weight:600;letter-spacing:.03em;line-height:1;background:#203026;color:#F4F2EE;padding:8px 14px 8px 11px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 6px,100% 100%,0 100%)}

/* за нас */
.dt .facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(48px,5vw,72px);border-top:1px solid rgba(29,33,31,.2)}
.facts>div{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:8px;padding:24px 24px 0 0}
.facts dt{font-size:14.5px;line-height:1.5;color:#4A504C}
.dt .facts dd{font-size:clamp(26px,1.6vw + 12px,40px);line-height:1.05;font-weight:600;letter-spacing:-.02em;color:#203026}
.band{position:relative;padding:clamp(80px,9vw,140px) 0}
.band-dark{background:#18211D}
.band-sage{background:#566C58}
.dt .mission{font-size:clamp(30px,2.8vw + 12px,60px);line-height:1.08;letter-spacing:-.03em;font-weight:600;color:#F4F2EE;max-width:22ch}
.stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:clamp(48px,5vw,72px);list-style:none;padding:0}
.stages li{display:flex;flex-direction:column;gap:16px}
.stages svg{width:120px;height:auto;display:block}
.dt .stage-n{font-size:13px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#AFC4AE}
.dt .stage-p{font-size:16.5px;line-height:1.6;color:#C9D2C8}
.dt .steps{list-style:none;padding:0;margin-top:clamp(40px,4vw,64px);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;counter-reset:st}
.steps li{border-top:1.5px solid #203026;padding-top:20px;display:flex;flex-direction:column;gap:8px}
.dt .steps .n{font-size:13px;font-weight:600;letter-spacing:.1em;color:#4A5F4D}
.dt .steps h3{font-size:21px;line-height:1.25;font-weight:600;color:#1D211F}
.dt .steps p{font-size:15.5px;line-height:1.55;color:#4A504C}
.dt .vals{list-style:none;padding:0;margin-top:clamp(40px,4vw,64px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px}
.vals li{border-top:1px solid rgba(244,242,238,.4);padding-top:24px;display:flex;flex-direction:column;gap:12px}
.dt .vals h3{font-size:21px;line-height:1.25;font-weight:600;color:#FFFFFF}
.dt .vals p{font-size:16px;line-height:1.6;color:#F4F2EE}
.who{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:clamp(40px,4vw,64px)}
.who article{background:#FFFFFF;border:1px solid rgba(29,33,31,.1);padding:clamp(24px,2.6vw,36px);display:flex;flex-direction:column;gap:14px}
.who article.main{background:#203026;border-color:#203026}
.dt .who h3{font-size:24px;line-height:1.2;font-weight:600;color:#1D211F}
.dt .who p{font-size:16px;line-height:1.6;color:#4A504C}
.dt .who .main h3{color:#FFFFFF}
.dt .who .main p{color:#C9D2C8}
.who .badge{align-self:flex-start}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:20px}
.dt .company{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);margin-top:clamp(32px,3vw,48px);max-width:760px;border-top:1px solid rgba(29,33,31,.2)}
.company dt,.company dd{padding:16px 0;border-bottom:1px solid rgba(29,33,31,.12);font-size:16px;line-height:1.5}
.company dt{color:#4A504C;padding-right:24px}
.dt .company dd{color:#1D211F;font-weight:500}
.cta-band{position:relative;background:#18211D;padding:clamp(80px,9vw,136px) 0}
.dt .cta-band h2{font-size:clamp(34px,3.2vw + 12px,68px);line-height:1.04;letter-spacing:-.03em;font-weight:600;color:#F4F2EE;max-width:16ch;text-wrap:balance}
.dt .cta-band p{margin-top:24px;max-width:560px;font-size:18px;line-height:1.6;color:#C9D2C8}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;margin-top:40px}

@media (max-width:1080px){
  .dt .steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dt .vals{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:960px){
  .svc-grid{grid-template-columns:minmax(0,1fr)}
  .svc.rev .svc-side{order:0}
  .svc-side{position:static}
  .dt .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stages{grid-template-columns:minmax(0,1fr)}
  .who{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .dt .steps{grid-template-columns:minmax(0,1fr)}
  .dt .vals{grid-template-columns:minmax(0,1fr)}
  .dt .company{grid-template-columns:minmax(0,1fr)}
  .company dt{border-bottom:0;padding-bottom:0}
  .company dd{padding-top:4px}
  .au-viz{max-width:none}
}

/* ── v3: илюстрациите на проекти и услуги (art-fx.js) ──
   Частите на картинката се появяват при .in; лекият цикъл върви само при .ax-run (докато се вижда).
   Цикличните части са HTML върху картинката (.ax-sp е в координатите ѝ 320×180). */
.svc-art{position:relative}
.ax-ov{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ax-sp{position:absolute;left:0;top:0;width:320px;height:180px;transform-origin:0 0}
.ax-sp>*{position:absolute;display:block}
.ax-sp i{position:absolute;inset:0;display:block}
@keyframes axIn{from{opacity:0;transform:translate(var(--ax-x,0px),var(--ax-y,0px)) scale(var(--ax-s,1))}}
@keyframes axPop{0%{opacity:0;transform:scale(var(--ax-s,.5))}65%{opacity:1;transform:scale(1.06)}100%{opacity:1;transform:none}}
@keyframes axFade{from{opacity:0}}
@keyframes axGx{from{transform:scaleX(0)}}
@keyframes axGy{from{transform:scaleY(0)}}
@keyframes axDraw{from{stroke-dashoffset:101}}
@keyframes axDrop{0%{opacity:0;transform:translateY(-34px)}55%{opacity:1;transform:translateY(2px)}78%{transform:translateY(-2px)}100%{opacity:1;transform:none}}
@keyframes axBounce{0%,55%,100%{transform:translateY(0);opacity:.55}28%{transform:translateY(-4px);opacity:1}}
@keyframes axPulse{0%{transform:scale(.6);opacity:.9}70%,100%{transform:scale(2.2);opacity:0}}
@keyframes axBar{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.32)}}
@keyframes axScan{0%{transform:translateY(0);opacity:0}8%{opacity:1}46%{transform:translateY(86px);opacity:1}50%,100%{transform:translateY(86px);opacity:0}}
@keyframes axRun{0%{offset-distance:0%;opacity:0}6%{opacity:1}88%{opacity:1}96%,100%{offset-distance:100%;opacity:0}}
@keyframes axLine{0%{transform:translateX(0);opacity:0}4%{opacity:1}92%{opacity:1}100%{transform:translateX(240px);opacity:0}}
@keyframes axSys{0%,14%,100%{opacity:0}5%{opacity:1}}
@keyframes axTask{0%,22%,100%{opacity:0}6%,14%{opacity:1}}
@keyframes axSpin{to{transform:rotate(360deg)}}
@keyframes axCur{0%{transform:translate(150px,156px);opacity:0}10%{opacity:1}40%,48%{transform:translate(98px,112px)}44%{transform:translate(98px,112px) scale(.82)}80%{transform:translate(168px,150px);opacity:1}92%,100%{transform:translate(168px,150px);opacity:0}}
@keyframes axBtn{0%,40%,70%,100%{opacity:0}46%{opacity:1}}
@keyframes axNote{0%,62%,100%{opacity:0;transform:scale(1)}70%{opacity:1;transform:scale(1.04)}84%{opacity:0;transform:scale(1)}}

.fx .ax-p{transform-box:fill-box;transform-origin:var(--ax-o,50% 50%)}
.fx .ax:not(.in) .ax-p,.fx .ax:not(.in) .ax-hp{opacity:0}
.fx .ax.in .ax-p{animation:axIn .7s cubic-bezier(.2,.75,.2,1) var(--ax-d,0s) backwards}
.fx .ax.in .ax-p.k-pop{animation-name:axPop;animation-duration:.55s}
.fx .ax.in .ax-p.k-fade{animation-name:axFade;animation-duration:.6s}
.fx .ax.in .ax-p.k-gx{animation-name:axGx;animation-duration:.6s}
.fx .ax.in .ax-p.k-drop{animation-name:axDrop;animation-duration:.8s;animation-timing-function:ease-out}
.fx .ax-dr{stroke-dasharray:100 102}
.fx .ax:not(.in) .ax-dr{stroke-dashoffset:101}
.fx .ax.in .ax-dr{animation:axDraw .7s cubic-bezier(.55,0,.25,1) var(--ax-d,0s) backwards}
.fx .ax.in .ax-hp{animation:axFade .6s ease var(--ax-d,0s) backwards}
.fx .ax.in .ax-hp.k-gy{animation-name:axGy;animation-duration:.5s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}
.fx .ax .ax-hid{visibility:hidden}
.ax-sp>.ax-ring,.ax-sp>.ax-pk,.ax-sp>.ax-pkl,.ax-sp>.ax-sys,.ax-sp>.ax-task,.ax-sp>.ax-btn,.ax-sp>.ax-note{opacity:0}

/* чатбот: точките „пишат“ */
.ax-dot i{border-radius:50%}
.fx .ax-run .ax-dot i{animation:axBounce 1.2s ease-in-out infinite}
/* общи пулсиращи кръгове */
.ax-ring{border:1.5px solid #AFC4AE;border-radius:50%}
.fx .ax-run .ax-ring{animation:axPulse 3.6s ease-out infinite}
.fx .ax-run .ax-r24,.fx .ax-run .ax-r44{animation-duration:2.4s}
/* сигнали: точка, която тече по дъгата към общината */
.ax-pk,.ax-pkl{border-radius:50%;background:#F4F2EE;box-shadow:0 0 0 2px rgba(143,165,146,.45)}
.ax-pk{left:0;top:0;offset-rotate:0deg}
.fx .ax-run .ax-pk{animation:axRun 3.6s cubic-bezier(.45,0,.35,1) infinite}
/* аудио: лентите „звучат“, линия сканира QR кода */
.ax-bar i{border-radius:3px;background:#AFC4AE;transform-origin:50% 50%}
.ax-bar:nth-of-type(3n) i{background:#8FA592}
.fx .ax-run .ax-bar i{animation:axBar 1.3s ease-in-out infinite}
.ax-head i{border-radius:3px;background:#566C58}
.ax-scan i{background:#8FA592;box-shadow:0 0 10px 2px rgba(175,196,174,.75);opacity:0}
.fx .ax-run .ax-scan i{animation:axScan 3.2s ease-in-out infinite}
/* уеб: курсорът натиска бутона */
.ax-cur{left:0;top:0;opacity:0}
.ax-cur svg{display:block}
.fx .ax-run .ax-cur{animation:axCur 4.8s cubic-bezier(.45,0,.3,1) 1.2s infinite}
.ax-btn{background:#F4F2EE}
.fx .ax-run .ax-btn{animation:axBtn 4.8s ease 1.2s infinite}
/* приложение: известието светва отново */
.ax-note{background:rgba(255,255,255,.55);clip-path:polygon(0 0,100% 0,100% 77.3%,20% 77.3%,0 100%)}
.fx .ax-run .ax-note{animation:axNote 4.8s ease-in-out 2s infinite}
/* AI агент: цикълът се върти, задачите светват една след друга */
.ax-spinw svg{display:block;width:100%;height:100%;overflow:visible;transform-origin:160px 90px}
.fx .ax-run .ax-spinw svg{animation:axSpin 14s linear infinite}
.ax-task{border:1.5px solid #AFC4AE;background:rgba(175,196,174,.16)}
.fx .ax-run .ax-task{animation:axTask 4.4s ease infinite}
/* интеграции: пакет данни минава по линията, системите светват */
.fx .ax-run .ax-pkl{animation:axLine 4s linear infinite}
.ax-sys{border:1.5px solid #F4F2EE;background:rgba(244,242,238,.14)}
.fx .ax-run .ax-sys{animation:axSys 4s linear infinite}

/* ── v3: Услуги на началната — „Аудио гидове“ и „Интеграции“ като карти в каскадата ── */
.svc-x{background-color:#FFFFFF;border:1px solid rgba(29,33,31,0.08);padding:32px;display:flex;flex-direction:column;gap:14px}
.svc-x .x-viz{margin-top:auto;padding-top:22px}
.svc-x .au-viz{max-width:none;flex:none;gap:18px}
.svc-x .au-qr{width:60px;height:60px}
.svc-x .au-wave{height:48px}
.au-qrw{position:relative;flex:none;display:block;line-height:0;overflow:hidden}
.au-scan{position:absolute;left:-2px;right:-2px;top:0;height:3px;background:#8FA592;box-shadow:0 0 8px 1px rgba(143,165,146,.8);opacity:0}
.fx .fx-run .au-scan{animation:auScan 3.2s ease-in-out infinite}
@keyframes auScan{0%{transform:translateY(0);opacity:0}8%{opacity:1}46%{transform:translateY(57px);opacity:1}50%,100%{transform:translateY(57px);opacity:0}}
.au-play{display:block;height:2px;margin-top:12px;background:rgba(32,48,38,.12);position:relative;overflow:hidden}
.au-play i{position:absolute;inset:0;background:#566C58;transform:scaleX(0);transform-origin:0 50%}
.fx .fx-run .au-play i{animation:auPlay 6s linear infinite}
@keyframes auPlay{to{transform:scaleX(1)}}
.fx .au-card:not(.in) .au-qrw,.fx .au-card:not(.in) .au-wave{opacity:0}
.fx .au-card.in .au-qrw{animation:fxPop .55s cubic-bezier(.2,.75,.2,1) calc(var(--fx-d,0s) + .35s) backwards}
.fx .au-card.in .au-wave{animation:auIn .6s cubic-bezier(.2,.8,.2,1) calc(var(--fx-d,0s) + .55s) backwards}
@keyframes auIn{from{opacity:0;transform:scaleY(0)}}
.fx-scroll :is(.au-scan,.au-play i){animation-play-state:paused!important}
.svc-x .int-net{display:block;width:100%;max-width:360px;height:auto}
@media (min-width:961px){
  /* каскадата продължава и отдолу: колоните свършват на стъпала, както започват отгоре */
  .casc{align-items:stretch}
  .casc>article:first-child{margin-bottom:160px}
  .casc .c2{margin-bottom:80px}
  .casc .c2>article:last-child,.casc .c3>article:last-child{flex:1 1 auto}
}

/* ── v3: картата „AI чатботове“ — поле за въпрос и бързи отговори (въпросите се изписват сами) ── */
.cb-ask{margin-top:28px;display:flex;flex-direction:column;gap:12px;max-width:340px}
.cb-in{display:flex;align-items:center;gap:10px;height:48px;padding:0 6px 0 14px;border:1px solid rgba(175,196,174,.35);background:rgba(244,242,238,.05)}
.cb-t{flex:1;min-width:0;display:flex;overflow:hidden;white-space:nowrap;font-size:14px;color:#A3B5A5}
.cb-t b{flex:none;font-weight:400}
.cb-ask.typing .cb-t{color:#F4F2EE}
.cb-ask.ovf .cb-t{justify-content:flex-end}
.cb-caret{flex:none;width:1.5px;height:18px;margin-left:-8px;background:#AFC4AE;opacity:0}
.fx .cb-ask.typing .cb-caret{opacity:1;animation:fxBlink 1s steps(1) infinite}
.cb-send{flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#AFC4AE;color:#203026}
.cb-chips{display:flex;flex-wrap:wrap;gap:8px}
.cb-chips span{font-size:13px;line-height:1;padding:9px 12px;border:1px solid rgba(175,196,174,.4);color:#C9D2C8;transition:background-color .3s ease,color .3s ease,border-color .3s ease}
.cb-chips span.on{background:#AFC4AE;border-color:#AFC4AE;color:#18211D}
.fx .casc>article:first-child:not(.in) .cb-ask{opacity:0}
.fx .casc>article:first-child.in .cb-ask{animation:fxRise .8s cubic-bezier(.2,.75,.2,1) calc(var(--fx-d,0s) + 1.9s) backwards;--fx-y:14px}
.fx .cb-send.fx-press{animation:fxPress .4s ease}

/* ── v5: страница „Политика за поверителност“ ── */
.dt .lg-date{margin-top:20px;font-size:14px;font-weight:500;letter-spacing:.02em;color:#4A5F4D}
.lg-grid{display:grid;grid-template-columns:minmax(0,240px) minmax(0,760px);gap:clamp(32px,6vw,96px);align-items:start}
.lg-toc{position:sticky;top:104px}
.dt .lg-toc-h{font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#4A5F4D}
.dt .lg-toc ol{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:2px;counter-reset:lg}
.lg-toc li{counter-increment:lg}
.lg-toc a{display:flex;gap:10px;padding:7px 0;font-size:14.5px;line-height:1.4;color:#2E3430!important;text-decoration:none;border-bottom:1px solid rgba(29,33,31,.08)}
.lg-toc a::before{content:counter(lg,decimal-leading-zero);flex:none;font-size:12px;font-weight:600;color:#566C58;padding-top:2px}
.lg-toc a:hover{color:#203026!important}
.lg-sec{scroll-margin-top:96px;padding:0 0 clamp(36px,4vw,56px)}
.lg-sec+.lg-sec{padding-top:clamp(36px,4vw,56px);border-top:1px solid rgba(29,33,31,.12)}
.dt .lg-sec h2{display:flex;align-items:baseline;gap:14px;font-size:clamp(24px,1.2vw + 16px,32px);line-height:1.2;letter-spacing:-.02em;font-weight:600;color:#1D211F}
.lg-n{flex:none;font-size:13px;font-weight:600;letter-spacing:.1em;color:#566C58}
.dt .lg-sec h3{margin-top:28px;font-size:19px;line-height:1.35;font-weight:600;color:#1D211F}
.dt .lg-sec p{margin-top:14px;font-size:17px;line-height:1.7;color:#2E3430}
.dt .lg-sec ul{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.lg-sec li{position:relative;padding-left:22px;font-size:17px;line-height:1.65;color:#2E3430}
.lg-sec li::before{content:"";position:absolute;left:2px;top:.72em;width:8px;height:1.5px;background:#566C58}
.lg-sec strong{font-weight:600;color:#1D211F}
.lg-sec a{color:#203026!important;text-decoration:underline;text-underline-offset:3px}
.lg-table{margin-top:18px;overflow-x:auto;background:#FFFFFF;border:1px solid rgba(29,33,31,.1)}
.lg-table table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.55}
.lg-table th{text-align:left;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#4A5F4D;padding:14px 18px;border-bottom:1px solid rgba(29,33,31,.12);background:#F7F6F3}
.lg-table td{padding:14px 18px;vertical-align:top;color:#2E3430;border-bottom:1px solid rgba(29,33,31,.08)}
.lg-table tr:last-child td{border-bottom:0}
.lg-table td:first-child{width:38%;font-weight:600;color:#1D211F}
.foot-legal{color:#C9D2C8!important;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(201,210,200,.45)}
.foot-legal:hover{color:#FFFFFF!important}
@media (max-width:960px){
  .lg-grid{grid-template-columns:minmax(0,1fr)}
  .lg-toc{position:static}
}
@media (max-width:640px){
  .lg-table td:first-child{width:auto}
  .lg-table th,.lg-table td{padding:12px 14px}
}
/* ── v5: имейл, новини, 404 ── */
.dt .mail-link{color:inherit!important;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(175,196,174,.55);text-underline-offset:4px;transition:text-decoration-color .18s ease}
.dt .mail-link:hover{text-decoration-color:currentColor}
.nw-grid{list-style:none;margin:clamp(40px,4vw,64px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:24px}
.nw-grid>li{display:flex}
.nw-card{position:relative;display:flex;flex-direction:column;width:100%;background:#FFFFFF;border:1px solid rgba(29,33,31,.1);transition:border-color .2s ease,box-shadow .2s ease}
.nw-card:hover{border-color:rgba(32,48,38,.32);box-shadow:0 10px 30px -18px rgba(32,48,38,.45)}
.nw-media{display:block;position:relative;aspect-ratio:16/9;background:#203026;overflow:hidden}
.nw-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.nw-card:hover .nw-media img{transform:scale(1.03)}
.nw-cbody{display:flex;flex-direction:column;gap:12px;flex:1;padding:clamp(22px,2.2vw,30px)}
.nw-date{font-size:13.5px;font-weight:500;letter-spacing:.02em;color:#4A5F4D}
.nw-title{font-size:clamp(20px,.6vw + 15px,25px);line-height:1.25;letter-spacing:-.01em;font-weight:600;color:#1D211F}
.dt .nw-title a{color:#1D211F;text-decoration:none}
.nw-title a::after{content:"";position:absolute;inset:0}
.dt .nw-title a:focus-visible{outline:none}
.nw-card:has(a:focus-visible){outline:3px solid #566C58;outline-offset:3px}
.nw-sum{font-size:16px;line-height:1.6;color:#4A504C}
.nw-more{margin-top:auto;padding-top:6px;font-size:15px;font-weight:600;color:#203026}
.dt .nw-empty{margin-top:8px;font-size:17px;line-height:1.6;color:#4A504C}
.dt .nw-empty+.nw-empty,.dt .nw-empty+.nw-grid{margin-top:24px}
.nw-head .eyebrow a{color:inherit!important;text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:2px}
.nw-body{max-width:820px}
.dt .nw-fig{margin:0 0 clamp(32px,4vw,48px);background:#203026}
.nw-fig img{display:block;width:100%;height:auto}
.nw-text p,.nw-text ul{margin:0 0 18px;font-size:18px;line-height:1.75;color:#2E3430}
.nw-text ul{padding:0;list-style:none;display:grid;gap:10px}
.nw-text li{position:relative;padding-left:22px}
.nw-text li::before{content:"";position:absolute;left:2px;top:.8em;width:8px;height:1.5px;background:#566C58}
.dt .nw-text a{color:#203026;text-decoration:underline;text-underline-offset:3px}
.dt .nw-back{margin-top:clamp(32px,4vw,48px);padding-top:24px;border-top:1px solid rgba(29,33,31,.12)}
.nw-home .nw-grid{margin-top:clamp(36px,3.6vw,56px)}
@media (prefers-reduced-motion:reduce){.nw-card,.nw-media img{transition:none}.nw-card:hover .nw-media img{transform:none}}
.bgseq .dt .nw-head .pg-h1{font-size:clamp(34px,calc(var(--hw) * .082),60px)}
.dt .nw-head .pg-h1{font-size:clamp(32px,2.4vw + 18px,60px)}
@media (max-width:768px),(max-aspect-ratio:1/1){.bgseq .dt .nw-head .pg-h1,.dt .nw-head .pg-h1{font-size:clamp(28px,7vw,42px)}}
/* фонът зад прозрачните секции е светъл (воалът над 3D фона); тъмното под футъра остава при „отскачане“ в края на страницата */
html{background-color:#F4F2EE}
body{background-color:transparent!important}
.dt>footer.on-dark{box-shadow:0 100vh 0 100vh #1E2022}
main[tabindex="-1"]:focus{outline:none}
/* v7: заглавията на редове не се чупят (nav.js смалява шрифта, ако ред не се побира); горната лента без размазване
   на фона (backdrop-filter върху 3D анимацията тежи на вградените видеокарти) */
.ln-fit .ln{white-space:nowrap}
.dt>header{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background-color:rgba(244,242,238,.97)!important}
/* v9: екипът — инициали вместо снимки */
.tm-ini{position:relative;font-size:clamp(46px,4vw,64px);line-height:1;font-weight:600;letter-spacing:-.03em;color:#203026}
.tm-ini::after{content:"";display:block;width:28px;height:2px;margin:16px auto 0;background:#566C58}
/* v10: градчето в „Сигнали“ — картина отдолу, пинове и дъги отгоре */
.town-img{position:absolute;left:0;top:0;width:100%;height:100%;display:block;pointer-events:none}
.town-svg{position:relative;display:block;width:100%;height:auto}
/* ── v11: „Как работим“ — продуктът се сглобява при превъртане; „оживява“ само текущият слой ── */
.pl-run{display:none}
html:not(.fx) .pl-svg .pl-screen{opacity:1}                 /* без анимации: готовият екран се вижда */
@keyframes plPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.4)}}
@keyframes plLift{0%,100%{transform:none}50%{transform:translateY(-3px)}}
@keyframes plFlow{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes plRing{0%{opacity:.9;transform:scale(.3)}100%{opacity:0;transform:scale(1.5)}}
@keyframes plSeam{0%{opacity:0}25%{opacity:1}100%{opacity:0}}
@keyframes plBlink{0%,100%{opacity:1}50%{opacity:.3}}
.fx .pl-svg .pl-node,.fx .pl-svg .pl-ring,.fx .pl-lead circle{transform-box:fill-box;transform-origin:50% 50%}
.fx .fx-run .pl-svg .pl-act .pl-node{animation:plPulse 2.6s ease-in-out calc(var(--i) * .35s) infinite}
.fx .fx-run .pl-svg .pl-act .pl-card{animation:plLift 3.4s ease-in-out infinite}
.fx .fx-run .pl-svg .pl-act .pl-card:nth-of-type(2){animation-delay:-1.1s}
.fx .fx-run .pl-svg .pl-act .pl-card:nth-of-type(3){animation-delay:-2.2s}
.fx .fx-run .pl-svg[data-act="0"] .pl-b1{animation:plLift 3s ease-in-out infinite}
.fx .fx-run .pl-svg[data-act="0"] .pl-b2{animation:plLift 3s ease-in-out -1.5s infinite}
.fx .pl-svg .pl-flow{stroke-dasharray:16 84}
.fx .fx-run .pl-svg .pl-act .pl-flow{animation:plFlow 2.4s linear infinite}
.fx .fx-run .pl-svg .pl-act .pl-flow:nth-child(even){animation-delay:-1.2s}
.fx .pl-svg .pl-ring{opacity:0}
.fx .fx-run .pl-svg.pl-on .pl-ring{animation:plRing 2.7s ease-out calc(var(--i) * .9s) infinite}
.fx .pl-svg .pl-live{transition:opacity .45s ease}
.fx .pl-svg.pl-on .pl-live{opacity:1}
.fx .pl-svg .pl-chip{transform-box:fill-box;transform-origin:50% 100%;transform:translateY(10px) scale(.8);transition:transform .6s cubic-bezier(.2,.9,.25,1.25)}
.fx .pl-svg.pl-on .pl-chip{transform:none}
.fx .fx-run .pl-svg.pl-on .pl-chip circle{animation:plBlink 1.6s ease-in-out infinite}
.fx .pl-svg .pl-seam.pl-hit{animation:plSeam .8s ease-out}
.fx .pl-lead circle{transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.fx .pl-lead circle.fx-up{transform:scale(1.9)}
/* етапите: предстоящите са по-бледи, текущият е откроен */
.fx #proces .pl-ol li>*{transition:color .35s ease,transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s ease}
.fx #proces .pl-ol li:not(.fx-on):not(.fx-done)>h3{color:#5F6661!important}
.fx #proces .pl-ol li.fx-on>p:first-child{color:#1D211F!important}
.fx #proces .pl-ol li.fx-on>h3{color:#203026!important;transform:translateX(6px)}
/* компютър: секцията се закачва, докато продуктът се сглоби (100vh „писта“ под нея) */
@media (min-width:961px) and (min-height:620px){
  .fx #proces>.wrap{--pt:clamp(120px,13vw,184px);position:sticky!important;top:calc(var(--hdr,76px) + 29px - var(--pt));min-height:calc(100svh - var(--hdr,76px) - 29px + var(--pt));padding-bottom:28px!important}
  .fx #proces>.pl-run{display:block;height:110vh}
  .fx #proces .pl-wrap{grid-template-columns:auto minmax(0,1fr)}
  .fx #proces .pl-svg{--plh:min(610px,calc(100svh - var(--hdr,76px) - 90px));height:var(--plh);width:calc(var(--plh) * 290 / 590)}
}
/* телефон и таблет: закача се сцената (картината + кратък списък), заглавието остава над нея */
@media (max-width:960px) and (min-height:540px){
  .fx #proces>.wrap{display:block!important}
  .fx #proces .pl-wrap{position:sticky;top:calc(var(--hdr,76px) + 1px);height:calc(100svh - var(--hdr,76px) - 1px);display:flex;flex-direction:column;justify-content:center;gap:12px;margin:8px auto 0;padding:10px 0 14px;max-width:560px!important}
  .fx #proces .pl-svg{flex:1 1 0;min-height:0;width:100%;height:100%;max-width:none;margin:0}
  .fx #proces .pl-ol{flex:none;display:grid;gap:4px;margin:0}
  .fx #proces .pl-ol li{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;padding:5px 0 5px 14px;border-left:2px solid #D5DCD2;transition:border-color .35s ease}
  .fx #proces .pl-ol li>p:first-child{flex:none;width:20px;font-size:12px!important}
  .fx #proces .pl-ol li>h3{margin:0!important;font-size:16.5px!important;line-height:1.3!important}
  .fx #proces .pl-ol li>p:last-child{margin:0!important;font-size:14px!important;line-height:1.4!important}
  .fx #proces .pl-ol li.fx-on{border-left-color:#203026}
  .fx #proces .pl-ol li.fx-done:not(.fx-on){border-left-color:#8FA592}
  .fx #proces .pl-ol li.fx-on>h3{transform:translateX(3px)}
  .fx #proces .wrap>.pl-run{display:block;height:140svh}
}
/* ── v11: телефонна версия — по-ниско меню, по-стегнат ритъм, по-едро градче, екипът в две колони ── */
@media (max-width:600px){
  :root:root{--hdr:64px}
  .dt>header>.wrap{height:64px!important}
  .dt>header>.wrap>a:first-child img{height:38px!important}
  .mnav{top:65px}
  .dt section[id]{scroll-margin-top:72px}
  /* секциите на началната: по-малко празно място отгоре и отдолу (наклоненият ръб е 49px) */
  .dt [style*="padding-top:clamp(120px,13vw,184px)"]{padding-top:100px!important}
  .dt [style*="padding-bottom:clamp(88px,9vw,136px)"]{padding-bottom:76px!important}
  /* градчето в „Сигнали“ — до ръбовете на екрана */
  .town-wrap>div:first-child{width:calc(100% + 2 * clamp(20px,4vw,48px))!important;margin-left:calc(-1 * clamp(20px,4vw,48px))}
  /* екипът: двамата съдружници един до друг */
  .team>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .team figure>div:first-child{aspect-ratio:1/1!important}
  .team figcaption{padding:14px 14px 16px!important}
  .team figcaption>p:first-child{font-size:16px!important;line-height:1.3!important}
  .team figcaption>p+p{font-size:14px!important;margin-top:4px!important}
  .tm-ini{font-size:40px}
  .tm-ini::after{width:22px;margin-top:12px}
  /* фактите („За нас“): по-дългите стойности да не излизат от колоната */
  .dt .facts dd{font-size:clamp(20px,5.6vw,26px)}
  .facts>div{padding-right:12px}
}
