/* ============================================================
   Сватби: подаръкът „планер за сватбата“ (Bulka Wedding, планът Max) и езичето „Подарък“.
   Пренесено от прототипа (styles/planer.css); всеки селектор е под .pfx, за да не пипа Salient.
   --wed  златото на сватбите (#E6C910)
   Нарисуваните екрани (.pa, .pp) са в 1000 × 625 / 360 × 760 и се смаляват с --k (planer.js).
   ============================================================ */

/* Salient закръгля всеки <button> (Button Styling); тук бутоните са редове без ъгли */
body .pfx.planer .pl-tab { border-radius: 0 !important; }
/* бутоните и връзките в секцията */
.pfx.planer .btn-ghost { color: #EFE9DA; }
.pfx.planer .magnetic { display: inline-block; }

.pfx.planer { z-index: 3; background: #1C1A17; color: #EFE9DA; }
.pfx.planer .label { color: var(--wed, #E6C910); }
.pfx.planer .lines { color: #fff; }
.pfx .fl.wfl.pl-fl { left: -9vw; top: -40px; opacity: .3; }

/* ---------- заглавие и печат „0 €“ ---------- */

.pfx .pl-head { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: clamp(36px, 4.5vw, 80px); align-items: center; }
.pfx .pl-copy > * + * { margin-top: 26px; }
.pfx.planer .wt-xl { font-size: clamp(34px, 3.9vw, 62px); }
/* тих ред над заглавието, после самото обещание */
.pfx .pl-pre { margin-bottom: 10px; font-size: clamp(17px, 1.5vw, 22px); font-weight: 300; font-style: italic; letter-spacing: .01em; color: #A0977F; }
.pfx .pl-gold { color: var(--wed, #E6C910); }
/* златна лента „Специален подарък“ с кутийка, която от време на време подскача */
.pfx .pl-kicker { display: inline-flex; align-items: center; gap: 12px; padding: 6px 20px 6px 6px; border-radius: 999px; background: var(--wed, #E6C910); color: #1C1A17; font-size: 12px; font-weight: 800; letter-spacing: .22em; text-transform: uppercase; white-space: nowrap; }
.pfx .pl-gift { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #1C1A17; color: var(--wed, #E6C910); }
.pfx .pl-gift .pl-icon { width: 18px; height: 18px; animation: pl-hop 4.2s var(--ease-io) 1.2s infinite; transform-origin: 50% 90%; }
@keyframes pl-hop { 0%, 78%, 100% { transform: none; } 84% { transform: translateY(-3px) rotate(-10deg); } 90% { transform: translateY(0) rotate(8deg); } 95% { transform: rotate(-4deg); } }
.pfx .pl-lead { max-width: 680px; color: #CFC6B2; }
.pfx .pl-lead b { font-weight: 600; color: #fff; }
/* най-доброто в Max: 8 карти в 4 колони (2 на таблет, 1 на телефон) */
.pfx .pl-best { margin-top: clamp(60px, 8vw, 120px); }
.pfx .pl-best-l { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 22px 0 0; padding: 0; list-style: none; background: rgba(239, 233, 218, .12); border: 1px solid rgba(239, 233, 218, .12); }
.pfx .pl-best-l li { display: grid; align-content: start; gap: 10px; padding: clamp(20px, 2.2vw, 32px); background: #1C1A17; }
.pfx .pl-best-n { font-size: 12px; font-weight: 700; letter-spacing: .2em; color: var(--wed, #E6C910); }
.pfx .pl-best-l b { font-size: clamp(18px, 1.5vw, 22px); font-weight: 600; line-height: 1.2; color: #F7F2E6; }
.pfx .pl-best-l li > span:last-child { font-size: 14.5px; line-height: 1.6; font-weight: 300; color: rgba(239, 233, 218, .72); }
@media (max-width: 1100px) { .pfx .pl-best-l { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .pfx .pl-best-l { grid-template-columns: 1fr; } }
.pfx .pl-gets { display: flex; flex-wrap: wrap; gap: 12px 30px; }
.pfx .pl-gets li { display: flex; align-items: center; gap: 11px; font-size: 15px; font-weight: 500; color: #EFE9DA; }
.pfx .pl-gets i { flex-shrink: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--wed, #E6C910) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7' fill='none' stroke='%231C1A17' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat; }
.pfx .pl-head-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 32px; margin-top: 38px !important; }
.pfx .pl-claim { display: flex; align-items: center; gap: 14px; font-size: clamp(17px, 1.4vw, 20px); font-weight: 600; font-style: italic; color: var(--wed, #E6C910); }
.pfx .pl-claim .diamond { flex-shrink: 0; background: var(--wed, #E6C910); border-color: var(--wed, #E6C910); }
/* ---------- „Знам какво е“: разпилените канали се събират в планера ---------- */

/* текстът е широк вляво, а вдясно е малка сцена, в която всичко се събира в планера */
.pfx .pl-why { display: grid; grid-template-columns: minmax(0, 1fr) clamp(260px, 27vw, 380px); gap: clamp(30px, 4vw, 70px); align-items: center; margin-top: clamp(70px, 8vw, 120px); padding-top: clamp(44px, 5vw, 70px); border-top: 1px solid rgba(239, 233, 218, .12); }
.pfx .pl-why-copy > * + * { margin-top: 18px; }
.pfx .pl-why .label { color: var(--wed, #E6C910); }
.pfx .pl-why-t { font-size: clamp(28px, 2.9vw, 46px); line-height: 1.1; letter-spacing: -.03em; color: #fff; }
.pfx .pl-why-p { max-width: 760px; font-size: clamp(16px, 1.25vw, 18px); line-height: 1.7; color: #CFC6B2; }
.pfx .pl-why-p.is-strong { padding-left: 18px; border-left: 2px solid var(--wed, #E6C910); font-weight: 500; color: #fff; }
.pfx .pl-why-scene { position: relative; height: clamp(240px, 22vw, 300px); --p: 0; --sy: .9; }
.pfx .pl-bit { position: absolute; left: calc(50% + var(--x) * var(--sx, 1) * (1 - var(--p)) * 1%); top: calc(50% + var(--y) * var(--sy, 1) * (1 - var(--p)) * 1%); padding: 6px 12px; border-radius: 999px; background: #2B2722; box-shadow: inset 0 0 0 1px rgba(239, 233, 218, .14), 0 10px 24px -12px rgba(0, 0, 0, .8); font-size: 12px; font-weight: 500; color: #EFE9DA; white-space: nowrap; opacity: calc(1 - var(--p) * var(--p) * 1.1); transform: translate(-50%, -50%) rotate(calc(var(--r) * (1 - var(--p)) * 1deg)) scale(calc(1 - var(--p) * .55)); animation: pl-drift 6s ease-in-out calc(var(--i) * -.7s) infinite; }
.pfx .pl-bit:nth-child(3n) { color: var(--wed, #E6C910); }
@keyframes pl-drift { 50% { translate: 0 -8px; } }
/* малкият планер в средата: расте, докато нещата се събират в него */
.pfx .pl-one { position: absolute; left: 50%; top: 50%; z-index: 2; display: flex; align-items: center; gap: 10px; padding: 12px 20px; border-radius: 16px; background: var(--wed, #E6C910); color: #1C1A17; box-shadow: 0 20px 50px -16px rgba(230, 201, 16, .5); opacity: clamp(0, calc(var(--p) * 1.6 - .45), 1); transform: translate(-50%, -50%) scale(calc(.5 + var(--p) * .5)); }
.pfx .pl-one { width: max-content; }
.pfx .pl-one .pl-icon { flex: none; width: 24px; height: 24px; }
.pfx .pl-one b { font-size: 19px; font-weight: 700; font-style: italic; letter-spacing: -.02em; white-space: nowrap; }

.pfx .pl-what { margin-top: clamp(72px, 9vw, 120px); }
.pfx .pl-what + .pl-show { margin-top: 30px; }
/* печатът „0 €“ се отпечатва: пада отгоре, завъртян, и застава */
[data-js] .pfx .pl-seal[data-rv='stamp'] { opacity: 0; transform: scale(1.7) rotate(-16deg); transition: opacity .45s var(--ease), transform .85s cubic-bezier(.22, 1.5, .4, 1); transition-delay: .55s; }
[data-js] .pfx .pl-seal[data-rv='stamp'][data-in] { opacity: 1; transform: none; }
/* ---------- композицията: компютър, таблет и телефон ---------- */

/* на компютър композицията е по-голяма от колоната и излиза надясно извън съдържанието
   (ако екранът е по-тесен, просто се отрязва в края му) */
.pfx .pl-devices { position: relative; aspect-ratio: 1 / .86; perspective: 1700px; --rx: 0; --ry: 0; }
@media (min-width: 1001px) {
  .pfx .pl-devices { width: 136%; margin-block: -4%; }
  .pfx .pl-devices .pl-seal { right: 24%; top: -6%; }
}
.pfx .pl-dev-stage { position: absolute; inset: 0; transform-style: preserve-3d; }
[data-js] .pfx .pl-dev-stage[data-rv] { transform: rotateX(16deg) rotateY(-30deg) translate3d(0, 60px, -80px); transition-duration: 1.2s, 1.8s; }
[data-js] .pfx .pl-dev-stage[data-rv][data-in] { transform: rotateX(calc(7deg + var(--ry) * 1deg)) rotateY(calc(-15deg + var(--rx) * 1deg)) rotateZ(1deg); transition: opacity 1.2s var(--ease-out), transform 1.4s var(--ease-out); }
.pfx .pl-dv { position: absolute; transform-style: preserve-3d; }
.pfx .pl-dv-scr { position: relative; overflow: hidden; background: #F7F5F0; }
.pfx .pl-dv-desk { left: 4%; top: 6%; width: 90%; overflow: hidden; border-radius: 12px; background: #2B2722; box-shadow: 0 0 0 1px rgba(230, 201, 16, .2), 0 60px 100px -40px rgba(0, 0, 0, .9); }
.pfx .pl-dv-desk .pl-bar { height: 22px; gap: 5px; padding: 0 10px; }
.pfx .pl-dv-desk .pl-bar i { width: 7px; height: 7px; }
.pfx .pl-dv-desk .pl-dv-scr { aspect-ratio: 16 / 10; }
.pfx .pl-dv-tab { left: -3%; bottom: 3%; width: 50%; padding: 9px; border-radius: 18px; background: #0E0D0B; box-shadow: 0 0 0 1px rgba(255, 255, 255, .08), 0 50px 80px -30px rgba(0, 0, 0, .95); transform: translateZ(70px); animation: pl-bob 8s ease-in-out infinite; }
.pfx .pl-dv-tab .pl-dv-scr { aspect-ratio: 16 / 10; border-radius: 9px; }
.pfx .pl-dv-phone { right: 3%; bottom: -3%; width: 27%; padding: 6px; border-radius: 28px; background: #0E0D0B; box-shadow: 0 0 0 1px rgba(255, 255, 255, .1), 0 50px 80px -24px rgba(0, 0, 0, .95); transform: translateZ(140px); animation: pl-bob 7s ease-in-out -3s infinite; }
.pfx .pl-dv-phone .pl-dv-scr { aspect-ratio: 360 / 760; border-radius: 23px; }
@keyframes pl-bob { 50% { translate: 0 -10px; } }
/* истинските екрани в композицията (полето „Скрийншоти“: таблото в компютъра, масите в таблета) */
/* width с !important: иначе правилото на Salient .row .col img:not([srcset]) { width: auto } е по-силно и висока снимка (телефонът) остава в естествения си размер */
.pfx .pl-dv-scr > img { display: block; width: 100% !important; height: 100%; max-width: none; object-fit: cover; object-position: top left; }
#ajax-content-wrap .pfx.planer img { margin-bottom: 0; }
/* телефонът: висока снимка, която бавно се превърта до долу и обратно, като в Bulka Wedding
   (PhoneFrame: 7 s надолу, 7 s нагоре, пауза 1 s); --sy докъде стига, смята го planer.js */
.pfx .pl-ph-shot > img { height: auto; object-fit: fill; animation: pl-ph-scroll 15s cubic-bezier(.42, 0, .58, 1) infinite paused; }
@keyframes pl-ph-scroll { 0% { transform: translate3d(0, 0, 0); } 46.667% { transform: translate3d(0, var(--sy, -40%), 0); } 93.333%, 100% { transform: translate3d(0, 0, 0); } }
/* композицията се движи само докато се вижда (data-live от planer.js) */
.pfx .pl-devices[data-live] .pl-ph-shot > img { animation-play-state: running; }
.pfx .pl-devices:not([data-live]) .pl-dv-tab, .pfx .pl-devices:not([data-live]) .pl-dv-phone { animation-play-state: paused; }

/* печатът „0 €“ стои горе вдясно, над екраните */
.pfx .pl-seal { position: absolute; right: -4%; top: -9%; z-index: 5; width: clamp(130px, 13vw, 200px); aspect-ratio: 1; color: var(--wed, #E6C910); }
.pfx .pl-seal::before { content: ''; position: absolute; inset: 2%; border-radius: 50%; background: #1C1A17; box-shadow: 0 24px 60px -14px rgba(0, 0, 0, .8); }
.pfx .pl-seal svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; animation: pl-spin 48s linear infinite; }
.pfx .pl-seal circle { fill: none; stroke: currentColor; stroke-width: 1; }
.pfx .pl-seal .pl-seal-in { opacity: .45; }
.pfx .pl-seal text { fill: currentColor; font-size: 12.5px; font-weight: 700; letter-spacing: .18em; }
.pfx .pl-seal-c { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; }
.pfx .pl-seal-c b { font-size: clamp(44px, 4.4vw, 66px); line-height: 1; font-weight: 200; letter-spacing: -.045em; color: #fff; }
.pfx .pl-seal-c small { font-size: 11px; font-weight: 700; letter-spacing: .3em; text-transform: uppercase; }
@keyframes pl-spin { to { transform: rotate(360deg); } }

/* ---------- разделите вляво, екранът вдясно ---------- */

.pfx .pl-show { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(30px, 4.5vw, 72px); align-items: center; margin-top: clamp(64px, 8vw, 110px); }
.pfx .pl-tabs { display: flex; flex-direction: column; }
.pfx .pl-tab { position: relative; display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 16px; align-items: start; padding: 16px 0 18px; border-top: 1px solid rgba(239, 233, 218, .14); text-align: left; color: rgba(239, 233, 218, .55); transition: color .4s; }
.pfx .pl-tab:last-child { border-bottom: 1px solid rgba(239, 233, 218, .14); }
.pfx .pl-tab:hover, .pfx .pl-tab.is-on { color: #fff; }
.pfx .pl-ic { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; color: var(--wed, #E6C910); box-shadow: inset 0 0 0 1px rgba(230, 201, 16, .38); transition: background-color .45s, color .45s; }
.pfx .pl-tab.is-on .pl-ic { background: var(--wed, #E6C910); color: #1C1A17; }
.pfx .pl-icon { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.pfx .pl-tt { min-width: 0; }
.pfx .pl-tt b { display: block; padding-top: 9px; font-size: clamp(18px, 1.5vw, 21px); font-weight: 500; font-style: italic; letter-spacing: -.01em; }
/* описанието се разгъва само под избрания раздел */
.pfx .pl-td { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .6s var(--ease-out); }
.pfx .pl-td > span { overflow: hidden; }
.pfx .pl-tdx { display: block; padding-top: 8px; font-size: 15px; line-height: 1.6; color: #CFC6B2; }
.pfx .pl-tab.is-on .pl-td { grid-template-rows: 1fr; }
/* линията над избрания раздел показва кога ще се смени екранът */
.pfx .pl-prog { position: absolute; left: 0; right: 0; top: -1px; height: 1px; pointer-events: none; }
.pfx .pl-pi { display: block; height: 100%; background: var(--wed, #E6C910); transform-origin: left; animation: pl-prog 6.5s linear forwards; animation-play-state: paused; }
.pfx.planer.is-play .pl-pi { animation-play-state: running; }
@keyframes pl-prog { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* рамката идва отдалече, леко наклонена, и се изправя */
[data-js] .pfx .pl-stage[data-rv] { transform: perspective(1800px) rotateX(14deg) translate3d(0, 80px, 0) scale(.95); transition-duration: 1.2s, 1.7s; }
[data-js] .pfx .pl-stage[data-rv][data-in] { transform: perspective(1800px) rotateX(0) translate3d(0, 0, 0) scale(1); }
.pfx .pl-frame { overflow: hidden; border-radius: 16px; background: #2B2722; box-shadow: 0 0 0 1px rgba(230, 201, 16, .22), 0 70px 120px -50px rgba(0, 0, 0, .9), 0 0 110px -30px rgba(230, 201, 16, .28); }
.pfx .pl-bar { display: flex; align-items: center; gap: 7px; height: 34px; padding: 0 14px; }
.pfx .pl-bar i { width: 9px; height: 9px; border-radius: 50%; background: #4F483F; }
.pfx .pl-bar span { margin-left: 14px; padding: 4px 14px; border-radius: 999px; background: #37322C; font-size: 11px; color: #A69D8A; letter-spacing: .02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pfx .pl-screen { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: #F7F5F0; touch-action: pan-y; user-select: none; }
.pfx .pl-screen.has-shots { cursor: zoom-in; }
/* смяната е като в самия Bulka Wedding (BrowserFrame на сайта му): новият екран идва от 1,03 и прозрачно
   за 0,45 s (easeInOut), старият само избледнява; мащабът му се връща чак когато вече не се вижда */
.pfx .pl-scr { position: absolute; inset: 0; opacity: 0; visibility: hidden; transform: scale(1.03); transition: opacity .45s cubic-bezier(.42, 0, .58, 1), visibility 0s .45s, transform 0s .45s; }
.pfx .pl-scr.is-on { z-index: 1; opacity: 1; visibility: visible; transform: none; transition: opacity .45s cubic-bezier(.42, 0, .58, 1), transform .45s cubic-bezier(.42, 0, .58, 1); }
.pfx .pl-scr img { width: 100% !important; height: 100%; object-fit: cover; object-position: top left; -webkit-user-drag: none; }
.pfx .pl-count { display: flex; align-items: baseline; gap: 6px; margin-top: 18px; font-size: 13px; color: #A69D8A; }
.pfx .pl-count b { font-weight: 600; color: #fff; }
.pfx .pl-count span { margin-left: 12px; font-style: italic; color: #CFC6B2; }

/* ---------- числа и бутони ---------- */

.pfx .pl-foot { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 36px; margin-top: clamp(64px, 7vw, 100px); padding-top: 40px; border-top: 1px solid rgba(239, 233, 218, .14); }
.pfx .pl-stats { display: flex; flex-wrap: wrap; gap: clamp(28px, 4vw, 70px); }
.pfx .pl-stats span { display: flex; flex-direction: column; gap: 6px; max-width: 170px; font-size: 14px; line-height: 1.5; color: #CFC6B2; }
.pfx .pl-stats b { font-size: clamp(42px, 4vw, 62px); line-height: 1; font-weight: 200; letter-spacing: -.045em; color: var(--wed, #E6C910); }
.pfx .pl-cta { display: flex; flex-wrap: wrap; gap: 14px; }
.pfx .pl-cta .btn-ghost { color: #EFE9DA; }

/* ============================================================
   Примерните екрани на програмата (нарисувани в 1000 × 625)
   ============================================================ */

.pfx .pa { position: absolute; left: 0; top: 0; display: grid; grid-template-columns: 186px minmax(0, 1fr); width: 1000px; height: 625px; transform: scale(var(--k, 1)); transform-origin: 0 0; background: #F7F5F0; color: #2B2620; font-size: 13px; line-height: 1.35; text-align: left; }
/* телефонът (360 × 760) */
.pfx .pp { position: absolute; left: 0; top: 0; display: flex; flex-direction: column; gap: 14px; width: 360px; height: 760px; padding: 0 18px; transform: scale(var(--k, 1)); transform-origin: 0 0; background: #F7F5F0; color: #2B2620; font-size: 15px; line-height: 1.35; text-align: left; }
.pfx .pp small { display: block; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #A0977F; }
.pfx .pp em { font-style: normal; }
.pfx .pp-status { display: flex; justify-content: space-between; align-items: center; height: 46px; padding: 0 8px; font-size: 15px; }
.pfx .pp-status i { width: 26px; height: 12px; border: 1.5px solid #2B2620; border-radius: 3px; box-shadow: inset 16px 0 0 #2B2620; }
.pfx .pp-top { display: flex; flex-direction: column; gap: 4px; padding: 4px 4px 6px; }
.pfx .pp-top b { font-size: 30px; line-height: 1.05; font-weight: 600; font-style: italic; letter-spacing: -.02em; }
.pfx .pp-top em { font-size: 14px; color: #6B5800; font-weight: 600; }
.pfx .pp-budget { display: flex; align-items: center; gap: 18px; }
.pfx .pp-budget svg { flex-shrink: 0; width: 120px; height: 120px; }
.pfx .pp-budget b { display: block; margin-top: 6px; font-size: 28px; font-weight: 300; letter-spacing: -.04em; }
.pfx .pp-budget em { font-size: 13px; color: #8C8473; }
.pfx .pp-tasks { display: flex; flex-direction: column; gap: 15px; }
.pfx .pp-tasks .pa-task { font-size: 15px; }
.pfx .pp-tasks .pa-task i { width: 20px; height: 20px; }
.pfx .pp-nav { display: flex; justify-content: space-around; align-items: center; height: 80px; margin: auto -18px 0; border-top: 1px solid #ECE6D8; background: #fff; color: #8C8473; }
.pfx .pp-nav span { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; }
.pfx .pp-nav .pl-icon { width: 24px; height: 24px; }
.pfx .pp-nav .is-on { background: #1C1A17; color: var(--wed, #E6C910); }

.pfx .pa small { display: block; font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #A0977F; }
.pfx .pa em { font-style: normal; }
.pfx .pa-side { display: flex; flex-direction: column; gap: 3px; padding: 22px 14px; background: #fff; border-right: 1px solid #ECE6D8; }
/* логото на Bulka Wedding: календар със сърце, името в курсив и „Сватбен планер“ под него */
.pfx .pa-logo { display: flex; align-items: center; gap: 10px; margin: 2px 6px 24px; }
.pfx .pa-logo .pl-icon { flex: none; width: 26px; height: 26px; color: #B39A00; }
.pfx .pa-logo b { display: block; font-size: 20px; line-height: 1; font-weight: 700; font-style: italic; letter-spacing: -.02em; }
.pfx .pa .pa-logo small { margin-top: 4px; font-size: 8px; letter-spacing: .2em; }
.pfx .pa-nav { display: flex; align-items: center; gap: 10px; padding: 10px 11px; border-radius: 10px; font-size: 12.5px; font-weight: 600; color: #8C8473; }
.pfx .pa-nav .pl-icon { flex: none; width: 17px; height: 17px; }
.pfx .pa-nav em { margin-left: auto; padding-left: 6px; font-family: Georgia, serif; font-size: 10px; font-style: italic; opacity: .55; }
.pfx .pa-nav.is-on { background: #1C1A17; color: #fff; }
.pfx .pa-nav.is-on .pl-icon { color: var(--wed, #E6C910); }
.pfx .pa-main { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.pfx .pa-top { display: flex; justify-content: space-between; align-items: flex-end; padding: 22px 28px 14px; }
.pfx .pa-top small { margin-bottom: 5px; }
.pfx .pa-top b { display: block; font-size: 24px; line-height: 1; font-weight: 600; font-style: italic; letter-spacing: -.02em; }
.pfx .pa-top > span:last-child { font-size: 12px; color: #8C8473; }
.pfx .pa-body { display: flex; flex-direction: column; gap: 14px; flex: 1; min-height: 0; padding: 4px 28px 26px; }
.pfx .pa-card { position: relative; padding: 16px 18px; border: 1px solid #EEE8DA; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px -18px rgba(60, 46, 0, .35); }
.pfx .pa-bar { display: block; height: 6px; margin-top: 12px; overflow: hidden; border-radius: 4px; background: #F1ECDF; }
.pfx .pa-bar i { display: block; height: 100%; background: var(--wed, #E6C910); transform-origin: left; transform: scaleX(0); transition: transform 1.3s var(--ease-out) .5s; }
.pfx .pa-chip { display: inline-block; padding: 5px 10px; border-radius: 999px; background: #F4EFE2; font-size: 11.5px; font-weight: 600; color: #5E5646; }
.pfx .pa .is-paid { background: #FBF3C4; color: #6B5800; }

/* появяване: картите и редовете идват един след друг, когато екранът се покаже */
.pfx .pl-scr .pa-card, .pfx .pl-scr .pa-cost, .pfx .pl-scr .pa-gr, .pfx .pl-scr .pa-task { opacity: 0; transform: translate3d(0, 14px, 0); transition: opacity .6s var(--ease), transform .9s var(--ease-out); transition-delay: calc(var(--i, 0) * 70ms + 120ms); }
.pfx .pl-scr .pa-task { transition-delay: calc(var(--j, 0) * 60ms + 420ms); }
.pfx .pl-scr.is-on .pa-card, .pfx .pl-scr.is-on .pa-cost, .pfx .pl-scr.is-on .pa-gr, .pfx .pl-scr.is-on .pa-task { opacity: 1; transform: none; }
.pfx .pl-scr.is-on .pa-bar i { transform: scaleX(var(--w)); }

/* табло */
.pfx .pa-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.pfx .pa-big { display: block; margin-top: 10px; font-size: 34px; line-height: 1; font-weight: 300; letter-spacing: -.04em; }
.pfx .pa-cards em { display: block; margin-top: 6px; font-size: 12px; color: #8C8473; }
.pfx .pa-split { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 14px; flex: 1; min-height: 0; }
.pfx .pa-cd { display: flex; flex-direction: column; justify-content: space-between; background: #1C1A17; border-color: #1C1A17; color: #fff; }
.pfx .pa-cd small { color: var(--wed, #E6C910); }
.pfx .pa-cd div { display: flex; gap: 30px; }
.pfx .pa-cd span { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: #CFC6B2; }
.pfx .pa-cd b { font-size: 64px; line-height: 1; font-weight: 200; letter-spacing: -.05em; color: #fff; }
.pfx .pa-next ul { display: flex; flex-direction: column; gap: 12px; margin-top: 14px; }
.pfx .pa-next li { display: flex; align-items: center; gap: 11px; font-size: 13px; }
.pfx .pa-next li i { flex: none; width: 15px; height: 15px; border: 1.5px solid #CFC6B2; border-radius: 4px; }
.pfx .pa-next li.is-done { color: #A0977F; text-decoration: line-through; text-decoration-color: #CFC6B2; }
.pfx .pa-next li.is-done i { border-color: var(--wed, #E6C910); background: var(--wed, #E6C910) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7' fill='none' stroke='%231C1A17' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat; }
/* бюджетът на таблото: три суми вместо обратното броене */
.pfx .pa-cd.is-money { justify-content: flex-start; }
.pfx .pa-cd .pa-cd-big { margin-top: auto; }
.pfx .pa-cd .pa-bar { display: block; margin: 18px 0 16px; background: rgba(255, 255, 255, .12); }
.pfx .pa-cd.is-money div { gap: 0; justify-content: space-between; }
.pfx .pa-cd.is-money div b { font-size: 24px; font-weight: 300; letter-spacing: -.03em; }

/* бюджет */
.pfx .pa-budget { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 14px; flex: 1; min-height: 0; }
.pfx .pa-donut { display: flex; flex-direction: column; }
.pfx .pa-donut-in { position: relative; flex: 1; display: grid; place-items: center; }
.pfx .pa-donut svg { width: 250px; height: 250px; transform: rotate(0); }
.pfx .pa-ring { fill: none; stroke: #F1ECDF; stroke-width: 5; }
.pfx .pa-seg { fill: none; stroke-width: 5; transition: stroke-dasharray 1.2s var(--ease-out); }
.pfx .pa-donut-in span { position: absolute; display: flex; flex-direction: column; align-items: center; }
.pfx .pa-donut-in b { font-size: 30px; font-weight: 300; letter-spacing: -.04em; }
.pfx .pa-donut-in em { font-size: 12px; color: #8C8473; }
.pfx :is(.pa, .pp) .s0 { stroke: #E6C910; background: #E6C910; }
.pfx :is(.pa, .pp) .s1 { stroke: #B39A00; background: #B39A00; }
.pfx :is(.pa, .pp) .s2 { stroke: #1C1A17; background: #1C1A17; }
.pfx :is(.pa, .pp) .s3 { stroke: #D9C98A; background: #D9C98A; }
.pfx :is(.pa, .pp) .s4 { stroke: #8C8473; background: #8C8473; }
.pfx :is(.pa, .pp) .s5 { stroke: #F0E4A8; background: #F0E4A8; }
.pfx .pa-costs { display: flex; flex-direction: column; }
.pfx .pa-costs header, .pfx .pa-costs footer { display: flex; justify-content: space-between; }
.pfx .pa-cost { display: grid; grid-template-columns: 12px minmax(0, 1fr) 90px 82px; align-items: center; gap: 12px; padding: 11px 0; border-bottom: 1px solid #F1ECDF; }
.pfx .pa-cost:first-of-type { margin-top: 8px; }
.pfx .pa-dot { width: 10px; height: 10px; border-radius: 50%; }
.pfx .pa-cost b { text-align: right; font-weight: 600; }
.pfx .pa-cost em, .pfx .pa-room em { justify-self: end; padding: 4px 9px; border-radius: 999px; background: #F4EFE2; font-size: 10.5px; font-weight: 700; color: #8C8473; }
.pfx .pa-costs footer { margin-top: auto; padding-top: 12px; font-weight: 600; }
.pfx .pa-costs footer b { font-size: 20px; font-weight: 600; color: #6B5800; }

/* гости */
.pfx .pa-guests { flex: 1; min-height: 0; padding-top: 12px; }
.pfx .pa-gh { display: flex; align-items: center; gap: 22px; padding-bottom: 12px; border-bottom: 1px solid #F1ECDF; font-size: 12.5px; color: #8C8473; }
.pfx .pa-gh b { font-size: 18px; font-weight: 600; color: #2B2620; }
.pfx .pa-gh em { margin-left: auto; padding: 7px 14px; border-radius: 999px; background: #1C1A17; font-size: 11.5px; font-weight: 700; color: #fff; }
.pfx .pa-gr { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, .9fr) minmax(0, 1.1fr) minmax(0, 1fr) 46px; align-items: center; gap: 12px; padding: 7px 0; border-bottom: 1px solid #F6F2E8; }
.pfx .pa-tbl { font-size: 12px; font-weight: 600; color: #5E5646; }
.pfx .pa-tbl.is-none { font-weight: 500; font-style: italic; color: #B8AE96; }
.pfx .pa-gr.is-head { font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #A0977F; }
.pfx .pa-gn { display: flex; align-items: center; gap: 10px; font-weight: 600; }
.pfx .pa-gn i { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #F4EFE2; font-size: 10.5px; font-weight: 700; font-style: normal; color: #6B5800; }
.pfx .pa-role { padding: 4px 10px; border-radius: 999px; background: #1C1A17; font-size: 11px; font-weight: 600; color: var(--wed, #E6C910); }
.pfx .pa-menu { padding: 4px 10px; border-radius: 999px; background: #F4EFE2; font-size: 11px; font-weight: 600; color: #5E5646; }
.pfx .pa-ok { justify-self: center; width: 18px; height: 18px; border: 1.5px solid #D9D1BE; border-radius: 50%; }
.pfx .pa-ok.is-ok { border-color: var(--wed, #E6C910); background: var(--wed, #E6C910) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7' fill='none' stroke='%231C1A17' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat; }

/* маси */
.pfx .pa-tables { display: grid; grid-template-columns: minmax(0, 1fr) 200px; gap: 14px; flex: 1; min-height: 0; }
.pfx .pa-hall { overflow: hidden; background: #FCFBF7 radial-gradient(circle, #ECE6D8 1px, transparent 1.2px) 0 0 / 22px 22px; }
.pfx .pa-head-table { position: absolute; left: 50%; top: 9%; padding: 8px 40px; border: 1.5px solid #B39A00; border-radius: 8px; background: #fff; font-size: 11.5px; font-weight: 700; color: #6B5800; transform: translateX(-50%); }
.pfx .pa-tb { position: absolute; display: grid; place-items: center; width: 74px; height: 74px; margin: -37px 0 0 -37px; border: 1.5px solid #CFC6B2; border-radius: 50%; background: #fff; }
.pfx .pa-tb b { font-size: 18px; font-weight: 300; }
.pfx .pa-tb i { position: absolute; left: 50%; top: 50%; width: 15px; height: 15px; margin: -7.5px 0 0 -7.5px; border: 1.5px solid #CFC6B2; border-radius: 50%; background: #fff; transform: rotate(var(--a)) translateY(-50px); transition: background-color .4s, border-color .4s; transition-delay: calc(var(--j) * 50ms + var(--i) * 90ms + 400ms); }
.pfx .pl-scr.is-on .pa-tb i.is-f { border-color: var(--wed, #E6C910); background: var(--wed, #E6C910); }
.pfx .pa-drag { position: absolute; left: 82%; top: 70%; padding: 6px 12px; border-radius: 999px; background: #1C1A17; font-size: 11.5px; font-weight: 600; color: #fff; box-shadow: 0 10px 24px -8px rgba(0, 0, 0, .45); opacity: 0; }
.pfx .pl-scr.is-on .pa-drag { animation: pa-drag 4.6s var(--ease-io) 1s infinite; }
@keyframes pa-drag { 0% { opacity: 0; transform: translate(60px, 0) rotate(0); } 15% { opacity: 1; transform: translate(40px, -6px) rotate(-3deg); } 60% { opacity: 1; transform: translate(-80px, -28px) rotate(-3deg); } 75%, 100% { opacity: 0; transform: translate(-90px, -30px) scale(.8); } }
.pfx .pa-free { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.pfx .pa-free p { margin-top: auto; font-size: 11.5px; color: #A0977F; }

/* стаи */
/* поканата */
.pfx .pa-inv { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.6fr); gap: 14px; flex: 1; min-height: 0; }
.pfx .pa-inv-card { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; background: #FBF7EE; }
.pfx .pa-inv-mono { display: grid; place-items: center; width: 64px; height: 64px; border: 1px solid #C9A800; border-radius: 50%; font-family: 'Playfair Display Variable', serif; font-style: italic; font-size: 18px; color: #8A7400; }
.pfx .pa-inv-card small { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #8C8473; }
.pfx .pa-inv-card > b { font-family: 'Playfair Display Variable', serif; font-style: italic; font-weight: 500; font-size: 28px; line-height: 1.1; color: #2B261C; }
.pfx .pa-inv-date { font-size: 13px; font-weight: 600; letter-spacing: .2em; color: #5E5646; }
.pfx .pa-inv-cd { display: flex; gap: 14px; margin: 6px 0; }
.pfx .pa-inv-cd span { display: grid; font-size: 10px; color: #8C8473; }
.pfx .pa-inv-cd b { font-size: 18px; color: #2B261C; }
.pfx .pa-inv-btn { padding: 8px 16px; border-radius: 999px; background: #E6C910; font-size: 12px; font-weight: 700; color: #2B261C; }
.pfx .pa-inv-r { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 14px; min-height: 0; }
.pfx .pa-inv-stats .pa-card b { display: block; margin-top: 4px; font-size: 24px; color: #2B261C; }
.pfx .pa-inv-stats .pa-card small { font-size: 12px; color: #8C8473; }
.pfx .pa-inv-list { display: grid; align-content: start; gap: 2px; overflow: hidden; }
.pfx .pa-inv-list header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 8px; }
.pfx .pa-inv-list header small { font-size: 11px; color: #8C8473; }
.pfx .pa-inv-row { display: grid; grid-template-columns: 1.4fr .7fr 1fr .7fr; align-items: center; gap: 10px; padding: 8px 0; border-top: 1px solid #F1ECE0; font-size: 12.5px; color: #2B261C; }
.pfx .pa-inv-row em { justify-self: start; padding: 3px 9px; border-radius: 999px; font-style: normal; font-size: 11px; font-weight: 600; }
.pfx .pa-inv-row em.is-no { background: #F4EFE2; color: #8C8473; }
.pfx .pa-inv-row small { font-size: 11.5px; letter-spacing: 0; text-transform: none; color: #8C8473; }
.pfx .pa-rooms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 14px; flex: 1; min-height: 0; }
.pfx .pa-room { display: flex; flex-direction: column; gap: 8px; }
.pfx .pa-room header { display: flex; justify-content: space-between; align-items: center; }
.pfx .pa-room header b { font-size: 16px; font-weight: 600; font-style: italic; }
.pfx .pa-room small { letter-spacing: .08em; }
.pfx .pa-beds { display: flex; gap: 6px; margin-top: 2px; }
.pfx .pa-beds i { width: 26px; height: 16px; border: 1.5px solid #CFC6B2; border-radius: 4px; transition: background-color .4s, border-color .4s; transition-delay: calc(var(--j) * 80ms + 600ms); }
.pfx .pl-scr.is-on .pa-beds i.is-f { border-color: var(--wed, #E6C910); background: #FBF3C4; }
.pfx .pa-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; }

/* задачи */
.pfx .pa-prog b { display: block; margin-top: 6px; font-size: 20px; font-weight: 600; }
.pfx .pa-todo { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; flex: 1; min-height: 0; }
.pfx .pa-col { display: flex; flex-direction: column; gap: 12px; }
.pfx .pa-task { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.pfx .pa-task i { flex-shrink: 0; width: 17px; height: 17px; border: 1.5px solid #CFC6B2; border-radius: 5px; transition: background-color .4s, border-color .4s; transition-delay: inherit; }
.pfx .pl-scr.is-on .pa-task.is-done i { border-color: var(--wed, #E6C910); background: var(--wed, #E6C910) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7' fill='none' stroke='%231C1A17' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 13px no-repeat; }
.pfx .pl-scr.is-on .pa-task.is-done { color: #A0977F; text-decoration: line-through; text-decoration-color: rgba(160, 151, 127, .6); }

/* ---------- езичето „Подарък“ отстрани на страницата ---------- */

/* стои вляво, под лентата с главите на деня (тя е в средата вляво) */
.pfx.gift-tab { position: fixed; left: 0; bottom: 19vh; z-index: 60; display: grid; grid-template: auto 1fr / 50px auto; align-items: center; padding: 14px 0 16px; border-radius: 0 14px 14px 0; background: var(--wed, #E6C910); color: #1C1A17; box-shadow: 0 18px 50px -18px rgba(40, 32, 0, .55), inset 0 0 0 1px rgba(255, 255, 255, .25); animation: gift-in 1s var(--ease-out) 2.2s backwards; transition: transform .7s var(--ease-out), opacity .5s; }
@keyframes gift-in { from { transform: translate3d(-110%, 0, 0); } }
.pfx.gift-tab.is-away { transform: translate3d(-110%, 0, 0); opacity: 0; pointer-events: none; }
.pfx .gift-ico { position: relative; grid-area: 1 / 1; justify-self: center; width: 30px; height: 30px; }
.pfx .gift-ico svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; stroke-linecap: round; overflow: visible; }
/* капачето подскача от време на време, а около него проблясват две искри */
.pfx .gift-lid { transform-box: fill-box; transform-origin: 0% 100%; animation: gift-lid 3.6s var(--ease-io) infinite; }
@keyframes gift-lid { 0%, 62%, 100% { transform: none; } 70% { transform: translateY(-3px) rotate(-12deg); } 78% { transform: translateY(-1px) rotate(-4deg); } 86% { transform: none; } }
.pfx .gift-spark { position: absolute; width: 5px; height: 5px; background: currentColor; transform: rotate(45deg) scale(0); animation: gift-spark 3.6s var(--ease-out) infinite; }
.pfx .gift-spark.a { right: -6px; top: -2px; }
.pfx .gift-spark.b { left: -5px; top: 4px; width: 4px; height: 4px; animation-delay: .15s; }
@keyframes gift-spark { 0%, 66% { transform: rotate(45deg) scale(0); opacity: 1; } 76% { transform: rotate(45deg) scale(1); opacity: 1; } 92%, 100% { transform: rotate(45deg) scale(.2) translateY(-6px); opacity: 0; } }
.pfx .gift-short { grid-area: 2 / 1; justify-self: center; margin-top: 12px; writing-mode: vertical-rl; transform: rotate(180deg); font-size: 11px; font-weight: 800; letter-spacing: .26em; text-transform: uppercase; }
/* при посочване езичето се разтваря и показва какво е подаръкът */
.pfx .gift-long { grid-area: 1 / 2 / 3 / 3; display: grid; gap: 4px; max-width: 0; overflow: hidden; opacity: 0; transition: max-width .7s var(--ease-out), opacity .4s, padding .7s var(--ease-out); }
.pfx .gift-long > * { width: 240px; }
.pfx .gift-long small { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; opacity: .75; }
.pfx .gift-long b { font-size: 21px; line-height: 1.12; font-weight: 600; font-style: italic; letter-spacing: -.02em; }
.pfx .gift-long em { margin-top: 6px; font-size: 13px; font-weight: 700; font-style: normal; }
.pfx .gift-long .arr { display: inline-block; transition: transform .5s var(--ease-out); }
@media (hover: hover) and (pointer: fine) {
  .pfx.gift-tab:hover .gift-long, .pfx.gift-tab:focus-visible .gift-long { max-width: 270px; opacity: 1; padding-right: 26px; }
  .pfx.gift-tab:hover .arr { transform: translateX(4px); }
}
/* на телефон езичето закриваше текста вляво: става кръгло копче долу вляво (само подаръчето) */
@media (max-width: 700px) {
  .pfx.gift-tab { left: 14px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); width: 52px; height: 52px; padding: 0; grid-template: 1fr / 1fr; place-items: center; border-radius: 50%; }
  .pfx .gift-ico { grid-area: 1 / 1; width: 24px; height: 24px; }
  .pfx .gift-short, .pfx .gift-long { display: none; }
  .pfx.gift-tab.is-away { transform: translate3d(0, 160%, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .pfx.gift-tab, .pfx .gift-lid, .pfx .gift-spark { animation: none; }
}

/* ---------- таблет и телефон ---------- */

@media (max-width: 1000px) {
  .pfx .pl-head, .pfx .pl-why { grid-template-columns: minmax(0, 1fr); }
  .pfx .pl-why-scene { width: min(100%, 420px); justify-self: center; }
  .pfx .pl-devices { width: min(100%, 640px); justify-self: center; margin-top: 30px; }
  .pfx .pl-show { grid-template-columns: minmax(0, 1fr); }
  .pfx .pl-stage { order: -1; }
}
@media (max-width: 700px) {
  .pfx .fl.wfl.pl-fl { left: -34vw; opacity: .22; }
  .pfx .pl-kicker { gap: 10px; padding-right: 16px; font-size: 11px; letter-spacing: .1em; }
  .pfx .pl-gift { width: 30px; height: 30px; }
  .pfx .pl-gets { flex-direction: column; }
  .pfx .pl-head-cta .btn { width: 100%; }
  .pfx .pl-devices { margin-top: 60px; }
  .pfx .pl-why-scene { height: 250px; --sx: .9; }
  .pfx .pl-bit { font-size: 11px; }
  .pfx .pl-seal { right: -2%; top: -14%; width: 116px; }
  .pfx .pl-seal-c b { font-size: 30px; }
  .pfx .pl-seal-c small { font-size: 9px; }
  .pfx .pl-dv-tab { left: 0; padding: 5px; border-radius: 10px; }
  .pfx .pl-dv-tab .pl-dv-scr { border-radius: 6px; }
  .pfx .pl-dv-phone { right: 0; padding: 4px; border-radius: 16px; }
  .pfx .pl-dv-phone .pl-dv-scr { border-radius: 13px; }
  .pfx .pl-frame { border-radius: 10px; }
  .pfx .pl-bar { height: 24px; gap: 5px; padding: 0 10px; }
  .pfx .pl-bar i { width: 7px; height: 7px; }
  .pfx .pl-bar span { margin-left: 8px; padding: 2px 10px; font-size: 9.5px; }
  .pfx .pl-foot { flex-direction: column; align-items: flex-start; }
  .pfx .pl-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; width: 100%; }
  .pfx .pl-stats span { max-width: none; font-size: 12.5px; }
  .pfx .pl-stats b { font-size: 38px; }
  .pfx .pl-cta { flex-direction: column; align-items: stretch; width: 100%; }
  .pfx .pl-cta > *, .pfx .pl-cta .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  [data-js] .pfx .pl-stage[data-rv], [data-js] .pfx .pl-seal[data-rv='stamp'] { transform: none; opacity: 1; }
  [data-js] .pfx .pl-dev-stage[data-rv] { transform: rotateX(7deg) rotateY(-15deg); opacity: 1; }
  .pfx .pl-dv-tab, .pfx .pl-dv-phone, .pfx .pl-bit, .pfx .pl-ph-shot > img { animation: none; }
  .pfx .pl-scr, .pfx .pl-scr.is-on { transition: none; transform: none; }
  .pfx .pl-gift .pl-icon { animation: none; }
  .pfx .pl-seal svg { animation: none; }
  .pfx .pl-pi { animation: none; transform: none; }
  .pfx .pl-scr.is-on .pa-drag { animation: none; }
}

/* ---------- заглавията от полетата ---------- */
/* обикновеното е тънко и курсивно, *така* е плътно (в главното заглавие и в злато) */
.pfx.planer .pl-title .lines { font-weight: 200; font-style: italic; }
.pfx.planer .pl-title .lines b { font-weight: 600; color: var(--wed, #E6C910); }
.pfx.planer .pl-why-t { font-weight: 200; font-style: italic; }
.pfx.planer .pl-why-t b { font-weight: 600; }

/* ---------- анимациите спират, докато секцията не се вижда (data-vis от planer.js) ---------- */
.pfx.planer:not([data-vis]) *, .pfx.planer:not([data-vis]) *::before, .pfx.planer:not([data-vis]) *::after { animation-play-state: paused !important; }

/* ---------- скрийншотите на цял екран (когато в полето „Скрийншоти“ има снимки) ---------- */
.pfx.pl-lb { position: fixed; inset: 0; z-index: 100001; display: grid; place-items: center; padding: clamp(16px, 4vw, 64px); background: rgba(14, 13, 11, .95); color: #EFE9DA; opacity: 0; transition: opacity .35s; }
.pfx.pl-lb.is-open { opacity: 1; }
.pfx.pl-lb figure { display: grid; justify-items: center; gap: 16px; max-width: 100%; }
.pfx.pl-lb img { max-width: min(100%, 1600px); max-height: calc(100svh - 160px); width: auto; height: auto; border-radius: 10px; box-shadow: 0 40px 90px -30px #000; }
.pfx.pl-lb figcaption { font-size: 12px; font-weight: 600; letter-spacing: .3em; text-transform: uppercase; color: var(--wed, #E6C910); }
body .pfx.pl-lb button { position: absolute; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50% !important; font-size: 26px; line-height: 1; color: #fff; background: rgba(255, 255, 255, .06); transition: background-color .3s; }
body .pfx.pl-lb button:hover { background: rgba(255, 255, 255, .14); }
.pfx.pl-lb .pl-lb-x { top: 18px; right: 18px; }
.pfx.pl-lb .pl-lb-p { left: 14px; top: 50%; margin-top: -28px; }
.pfx.pl-lb .pl-lb-n { right: 14px; top: 50%; margin-top: -28px; }
@media (max-width: 700px) { .pfx.pl-lb .pl-lb-p, .pfx.pl-lb .pl-lb-n { top: auto; bottom: 18px; margin: 0; } }
