.hidden {
    display: none;
}
.desctop-hidden {
    display: none;
}
.form-message {
    margin-top: 20px;
    color: rgb(253, 208, 105);
    text-align: center;
}
.spis::before {
    content: counter(item);
-webkit-box-flex: 0;
-ms-flex: 0 0 1.375rem;
flex: 0 0 1.375rem;
margin: 0 .25rem 0 0;
text-align: center;
color: var(--yellow);
}
.privacy {
    display: flex;
    justify-content: space-between;
}
.privacy__policy {
    display: flex;
    flex-direction: column;
    max-width: 265px;
    row-gap: 5px;
}
.privacy__policy .privacy__link {
    text-decoration: underline;
    font-weight: 500;
}
.privacy__link:last-of-type {
    margin-bottom: 10px;
}
.privacy__descript {
    font-weight: 500;
    font-style: italic;
}
.secondary-page__content.secondary-margin, .secondary-page__content.secondary-first  {
    margin-top: 0;
}
.secondary-margin .item-reviews__rating {
    width: 140px;
}
.secondary-margin .reviews-page {
    max-width: inherit;
}

.menu__subitem .menu__sublink {
    display: inline-block;
}
.contacts__image img {
    height: 100%;
}
.weight-1 {
    font-weight: 300;
}
.weight-2 {
    font-weight: 400;
}
.weight-3 {
    font-weight: 500;
}
.weight-4 {
    font-weight: 600;
}

.compare__body {
    /* Запрещаем выделение внутри всего блока */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.compare__before-ibg img,
.compare__after-ibg img,
.compare__before-ibg picture,
.compare__after-ibg picture {
    pointer-events: none;
    -webkit-user-drag: none;
    user-drag: none;
    -webkit-user-select: none;
    user-select: none;
}
.tour-trigger {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;
}
.tour-overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(2px); /* Размытие фона для премиум-эффекта */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: background 0.3s;
    cursor: pointer;
    z-index: 2;
}
.tour-trigger:hover .tour-overlay {
    background: rgba(0, 0, 0, 0.5);
}

/* Контейнер жеста */
.gesture-hint {
    position: relative;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Фоновое кольцо с текстом 360 */
.gesture-ring {
    position: absolute;
    width: 80px; height: 80px;
    border-radius: 50%;
    background: rgba(255,255,255,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.3);
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}
.ring-svg {
    position: absolute;
    width: 100%; height: 100%;
    animation: spin 10s linear infinite;
}
.gesture-text {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    z-index: 1;
}

/* Иконка руки - белая, аккуратная, с тенью */
.hand-svg {
    position: absolute;
    bottom: -15px;
    right: -15px;
    width: 44px;
    height: 44px;
    color: #fff;
    filter: drop-shadow(0 2px 5px rgba(0,0,0,0.5));
    transform-origin: 20% 20%; /* Точка вращения на кончике пальца */
    animation: hand-press 2s infinite ease-in-out;
}

/* Круг, расходящийся от касания */
.tap-circle {
    position: absolute;
    width: 20px; height: 20px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    opacity: 0;
    /* Точка появления - там же, где кончик пальца */
    top: 50%; left: 50%;
    transform: translate(-50%, -50%); 
    animation: tap-ripple 2s infinite ease-out;
}

/* Текст призыва внизу */
.tour-cta {
    margin-top: 20px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #fff;
    opacity: 0.8;
}

/* Анимации */
@keyframes hand-press {
    0%, 100% { transform: scale(1) translate(0, 0); }
    15% { transform: scale(0.9) translate(-2px, 2px); } /* Нажатие */
    30% { transform: scale(1) translate(0, 0); } /* Отпускание */
}

@keyframes tap-ripple {
    0% { transform: translate(-50%, -50%) scale(0.5); opacity: 0; }
    15% { opacity: 0.8; } /* Появление в момент нажатия */
    40% { transform: translate(-50%, -50%) scale(2.5); opacity: 0; } /* Расширение и исчезновение */
    100% { opacity: 0; }
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.examples-360__item .portfolio-single__visual-ibg {
    aspect-ratio: 1 /1;
}

@media(min-width: 47.99875em) {
    /* .footer__bottom {
        display: none;
    } */
    
    .spis::before {
        content: counter(item);
        -webkit-box-flex: 0;
        -ms-flex: 0 0 1.375rem;
        flex: 0 0 1.375rem;
        margin: 0 0.25rem 0 0;
        text-align: center;
        color: var(--yellow);
    }
    .spis, .usluga-h2{
        font-weight: 400;
        color: var(--main-color);
        line-height: 1.3;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    .campaigns__swiper {
        display: contents;
    }
    .font-5 {
        font-size: 1.6rem;
    }
    .font-4 {
        font-size: 1.5rem;
    }
    .font-3 {
        font-size: 1.25rem;
    }
    .font-2 {
        font-size: 1.2rem;
    }
    .font-2 {
        font-size: 1.1rem;
    }
    .marg-5 {
        margin: 0 0 1.4825rem 0;
    }
    .marg-4 {
        margin: 0 0 1.4125rem 0;
    }
    .marg-3 {
        margin: 0 0 1.3125rem 0;
    }
    .marg-2 {
        margin: 0 0 1.1125rem 0;
    }
    .marg-1 {
        margin: 0 0 0.8125rem 0;
    }
}
@media (max-width: 47.99875em) {
    .spis, .usluga-h2{
        font-weight: 400;
        color: var(--main-color);
        line-height: 1.3;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    .font-3, .font-2, .font-1  {
        font-size: 1rem;
    }
    .font-4 {
        font-size: 1.125rem;
    }
    .font-5 {
        font-size: 1.2rem;
    }
    .marg-5 {
        margin: 0 0 0.95rem 0;
    }
    .marg-4 {
        margin: 0 0 0.85rem 0;
    }
    .marg-3 {
        margin: 0 0 0.75rem 0;
    }
    .marg-2 {
        margin: 0 0 0.65rem 0;
    }
    .marg-1 {
        margin: 0 0 0.55rem 0;
    }
    .secondary-page__content.divider-mobile-after-hidden::after {
        display: none;
    }
}
@media (max-width: 29.6875em) {
    .desctop-hidden {
        display: block;
    }
    .without-line.divider::before{
        width: 0;
    }
    .secondary-page__content.secondary-margin::before {
        top: 60px;
      }
    .secondary-page__content.secondary-first:before {
        top: 60px;
      }
    
    .secondary-page__content.secondary-margin, .secondary-page__content.secondary-first  {
        padding-top: 0;
    }
    .campaigns__content.campaigns-margin {
        margin-right: 0;
    }
    .privacy__descript {
        margin-bottom: 15px;
    }
}


@media (min-width: 61.99875em) {
    .secondary-margin .team-second__body {
        max-width: inherit; 
    }
}
@media (min-width: 29.9988em) {
    .item-packages__middle {
        min-height: 13rem;
    }
    
}