/* === КНОПКИ МЕНЮ НА ТЕЛЕФОНЕ ===
   1) в базовом правиле активного пункта есть outline: 2px + outline-offset: 1px,
      мобильное переопределение его не снимало - кнопки обведены;
   2) эта же обводка добавляла по 6px к каждой кнопке, из-за чего ряд
      становился шире экрана и кнопки обрезались по краям.
   Клавиатурный фокус на телефоне не нужен, но на всякий случай оставляем
   его через box-shadow - он не влияет на ширину. */
@media (max-width: 768px) {
.nav-links a,
.nav-links a.active {
outline: none;
box-shadow: none;
padding: 0.4rem 0.5rem;
}
.nav-links a:focus-visible,
.nav-links a.active:focus-visible {
outline: none;
box-shadow: 0 0 0 2px var(--clr-accent-5);
}
}


/* 2K (2560px+): вся страница масштабируется как FullHD (1920 -> 2560) */
@media (min-width: 2560px) {
html { zoom: 1.3333; }
body { min-height: calc(100vh / 1.3333) !important; }
}

.page-transition{display:flex;align-items:center;justify-content:center;background:#fff !important}
.pt-loader{position:relative;width:min(62vw,230px);height:min(62vw,230px)}
.pt-ring{position:absolute;inset:0;width:100%;height:100%;transform-origin:50% 50%;animation:pt-spin 6s linear infinite}
.pt-ring text{fill:#7c3aed;font-family:"Unbounded",sans-serif;font-size:15px;font-weight:700}
.pt-dot{animation:pt-blink 1.2s ease-in-out infinite}
.pt-logo{position:absolute;left:25%;top:50%;width:50%;height:50%;transform:translateY(-50%);object-fit:contain;object-position:left center}
@keyframes pt-spin{to{transform:rotate(360deg)}}
@keyframes pt-blink{0%,100%{opacity:0.2}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.pt-ring,.pt-dot{animation:none}}
