/* ====== COSMOS STARS (красиво) + ПОВЕРХ ЛЮБОГО ФОНА (без лагов) ====== */
/* Вставляй целиком в Additional CSS */

/* база */
html, body {
  max-width: 100%;
  overflow-x: hidden !important;
  height: auto !important;
  min-height: 100% !important;
  overflow-y: auto !important;
}

body{
  background: #050505 !important;
  position: relative;
}

/* ДВА фикс-слоя ЗВЁЗД ПОВЕРХ ВСЕГО */
body::before,
body::after{
  content:"";
  position: fixed;
  inset: 0;

  /* ⭐ ПОВЕРХ ЛЮБОГО ФОНА/СЕКЦИИ */
  z-index: 9999;

  pointer-events: none;
  background-repeat: repeat;

  /* чтобы звёзды красиво читались и на тёмном, и на светлом */
  mix-blend-mode: screen;

  /* оптимизация */
  will-change: transform, opacity;
  transform: translate3d(0,0,0);
  contain: paint;
}

/* МЕЛКИЕ звёзды (плотно, “как раньше”) */
body::before{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Crect width='220' height='220' fill='none'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='12' cy='18' r='0.9' opacity='0.85'/%3E%3Ccircle cx='48' cy='64' r='0.7' opacity='0.55'/%3E%3Ccircle cx='76' cy='22' r='0.8' opacity='0.75'/%3E%3Ccircle cx='110' cy='44' r='0.6' opacity='0.45'/%3E%3Ccircle cx='146' cy='30' r='0.9' opacity='0.8'/%3E%3Ccircle cx='184' cy='56' r='0.7' opacity='0.6'/%3E%3Ccircle cx='206' cy='26' r='0.6' opacity='0.5'/%3E%3Ccircle cx='28' cy='112' r='0.7' opacity='0.6'/%3E%3Ccircle cx='66' cy='146' r='0.8' opacity='0.75'/%3E%3Ccircle cx='92' cy='96' r='0.6' opacity='0.5'/%3E%3Ccircle cx='126' cy='118' r='0.8' opacity='0.7'/%3E%3Ccircle cx='160' cy='104' r='0.6' opacity='0.45'/%3E%3Ccircle cx='198' cy='138' r='0.9' opacity='0.85'/%3E%3Ccircle cx='14' cy='176' r='0.6' opacity='0.45'/%3E%3Ccircle cx='44' cy='198' r='0.8' opacity='0.7'/%3E%3Ccircle cx='88' cy='186' r='0.7' opacity='0.6'/%3E%3Ccircle cx='120' cy='170' r='0.9' opacity='0.85'/%3E%3Ccircle cx='154' cy='188' r='0.7' opacity='0.55'/%3E%3Ccircle cx='186' cy='178' r='0.6' opacity='0.5'/%3E%3Ccircle cx='210' cy='206' r='0.8' opacity='0.75'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 220px 220px;
  opacity: .70;
  animation: space-drift-1 160s linear infinite;
}

/* КРУПНЫЕ звёзды + мерцание (глубина) */
body::after{
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='700' height='700' viewBox='0 0 700 700'%3E%3Crect width='700' height='700' fill='none'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='90' cy='120' r='1.8' opacity='0.85'/%3E%3Ccircle cx='220' cy='520' r='2.2' opacity='0.75'/%3E%3Ccircle cx='410' cy='160' r='2.0' opacity='0.8'/%3E%3Ccircle cx='560' cy='340' r='1.9' opacity='0.7'/%3E%3Ccircle cx='640' cy='610' r='2.4' opacity='0.85'/%3E%3Ccircle cx='140' cy='640' r='1.7' opacity='0.65'/%3E%3Ccircle cx='520' cy='80' r='2.1' opacity='0.78'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 700px 700px;
  opacity: .35;

  /* чуть “дороже” вид: мягкое свечение */
  filter: drop-shadow(0 0 6px rgba(255,255,255,.35));

  animation: space-drift-2 260s linear infinite reverse, star-twinkle 6s ease-in-out infinite;
}

/* ДВА разных дрейфа = параллакс */
@keyframes space-drift-1{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(0,-700px,0); }
}
@keyframes space-drift-2{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(0,-500px,0); }
}

@keyframes star-twinkle{
  0%,100% { opacity: .28; }
  50%     { opacity: .45; }
}

/* мобилки — полегче */
@media (max-width: 768px){
  body::before{ opacity: .55; animation-duration: 230s; }
  body::after { opacity: .25; animation-duration: 340s, 8s; filter: none; }
}

/* если у пользователя “уменьшить движение” */
@media (prefers-reduced-motion: reduce){
  body::before, body::after{ animation: none !important; }
}










/* ====== CUSTOM CURSOR FOR WHOLE SITE ====== */

/* основной курсор */
html, body,
* {
  cursor: url("https://ruby-digital.agency/wp-content/uploads/2026/01/Frame123.svg") 0 0, auto !important;
}

/* курсор для кликабельных элементов */

























.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true], .elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs[data-touch-mode=true]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover, .elementor .elementor-element.elementor-widget-n-tabs>.elementor-widget-container>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true], .elementor .elementor-element.elementor-widget-n-tabs>.elementor-widget-container>.e-n-tabs[data-touch-mode=true]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover {
    background-color: #F70040;
    background-image: none;
}



.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs[data-touch-mode=false]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover, .elementor .elementor-element.elementor-widget-n-tabs>.elementor-widget-container>.e-n-tabs[data-touch-mode=false]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover {
    background-color: #F70040;
    background-image: none;
}









/* Блюр фона за попапом */
#elementor-popup-modal-2047 {
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    background: rgba(0, 0, 0, 0.35) !important;
}

/* Блюр самого окна */
#elementor-popup-modal-2047 .dialog-widget-content {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 12px;
}




#elementor-popup-modal-3593 .dialog-close-button {
    width: 32px;
    height: 32px;

    padding: 1px; /* ← ВНУТРЕННИЙ ОТСТУП */

    background-image: url('https://ruby-digital.agency/wp-content/uploads/2025/12/httpsce98935-wordpress-lov02.tw1_.ruwp-contentuploads202511D094D0B8D0B7D0B0D0B9D0BD-D0B1D0B5D0B7-D0BDD0B0D0B7D0B2D0B0D0BDD0B8D18F-16.sv_.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform .25s ease;
}

#elementor-popup-modal-3593 .dialog-close-button svg {
    display: none !important;
}









.slider3d_left,
.slider3d_right {
    display: none !important;
}












/* Убираем фиксированную ширину/высоту Elementor */
.dialog-lightbox-close-button {
    width: auto !important;
    height: auto !important;

    padding: 8px !important;           /* внутренние отступы */
    border-radius: 7px !important;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    background-image: url('https://ruby-digital.agency/wp-content/uploads/2025/12/httpsce98935-wordpress-lov02.tw1_.ruwp-contentuploads202511D094D0B8D0B7D0B0D0B9D0BD-D0B1D0B5D0B7-D0BDD0B0D0B7D0B2D0B0D0BDD0B8D18F-16.sv_.svg');
    background-size: 18px 18px;        /* нужный размер иконки */
    background-repeat: no-repeat;
    background-position: center;

}

/* Убираем стандартный SVG Elementor (блокирует размеры) */
.dialog-lightbox-close-button svg {
    display: none !important;
}



.iti__country-name{
		display: none;
}


.wokrs_tabs .e-n-tab-title[aria-selected=false]{
		position: relative;
}
.wokrs_tabs .e-n-tab-title[aria-selected=false]::before{
	content: "";
	position: absolute;
	inset: 0;
	padding: 1px;              /* толщина границы */
	border-radius: 8px;
	background: linear-gradient(
		90deg,
		rgba(255,255,255,0.12) 0%,
		#910603 55%,
		rgba(255,255,255,0.12) 100%
	);
	pointer-events: none;
	z-index: 999;
/* ВЫРЕЗАЕМ СЕРЕДИНУ, ОСТАВЛЯЕМ ТОЛЬКО РАМКУ */
	-webkit-mask: 
	linear-gradient(#000 0 0) content-box,
	linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}



spline-viewer::part(logo) {
    display: none !important;
}



/* Скрывает логотип Spline */
spline-viewer::part(logo) {
    display: none !important;
}

/* Или альтернативный способ */
spline-viewer::part(controls) {
    display: none !important;
}

.pfs__list .pfs__pillText, .pfs__list .pfs__title, .destination-accordion .location-label, .destination-accordion .content{
		font-family: "Open Sans", Sans-serif;
}

@media (max-width: 1024px) {
		.pfs__pillText{
				font-size: 16px;
			}
}
@media (max-width: 767px) {
  .show-more.elementor-hidden-mobile + .button-container {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .show-more.elementor-hidden-tablet + .button-container {
    display: none !important;
  }
}
@media (min-width: 1025px) and (max-width: 1366px) {
  .show-more.elementor-hidden-desktop + .button-container {
    display: none !important;
  }
}
@media (min-width: 1367px) and (max-width: 2399px) {
    .show-more.elementor-hidden-desktop + .button-container {
        display: none !important;
    }
}
@media (min-width: 2400px) {
    .show-more.elementor-hidden-desktop + .button-container {
        display: none !important;
    }
}

body {
  overflow-x: hidden; /* Отключает горизонтальный скролл */
  width: 100%; /* Фиксирует ширину */
  max-width: 100%; /* Гарантирует, что body не шире экрана */
}

html {
  scrollbar-color: #f70040 transparent;
}
::-webkit-scrollbar-thumb {
  background-color: #f70040;
}

.change_mob_destination .destination-accordion .descr{
	display: inline-block;
}
.mob-image, .change_mob_destination .destination-accordion .hide_not_mobile{
	display: none;
}
.destination-accordion .button-container{
	display: none!important;
}
@media (max-width: 767px){
		.change_mob_destination .destination-accordion{
				overflow: visible;
		}
		.change_mob_destination .destination-accordion .accordion{
			height: initial;
				padding: 0;
				gap: 10px;
		}
		.change_mob_destination .destination-accordion .accordion-item{
			flex: initial!important;
			overflow: visible;
		}
		.change_mob_destination .destination-accordion .bg-image, .change_mob_destination .destination-accordion .location-label, .remove_comma, .change_mob_destination .destination-accordion .indicators, .hide_not_first .accordion-item:first-child .hide_mobile{
			display: none;
		}
		.change_mob_destination .destination-accordion .descr, .change_mob_destination .destination_alike .elementor-icon-list-item{
			display: block;
				max-width: 400px;
				padding: 14px 14px 14px 45px;
				margin: 0 auto 10px auto;
				font-family: "Open Sans", sans-serif;
				font-weight: 400;
				font-size: 16px;
				color: rgba(255, 255, 255, 0.8);
			position: relative;
			border-radius: 24px;
			overflow: hidden; /* чтобы рамка не вылезала за углы */
		}
		.change_mob_destination .destination-accordion .descr::first-letter{
				text-transform: uppercase;
		}
		.change_mob_destination .destination-accordion .descr::before, .change_mob_destination .destination_alike .elementor-icon-list-item::before{
			content: "";
			position: absolute;
			inset: 0;
			padding: 1px;              /* толщина границы */
			border-radius: 24px;
			background: linear-gradient(
				90deg,
				rgba(255,255,255,0.12) 0%,
				#910603 55%,
				rgba(255,255,255,0.12) 100%
			);
			pointer-events: none;
			z-index: 999;

			/* ВЫРЕЗАЕМ СЕРЕДИНУ, ОСТАВЛЯЕМ ТОЛЬКО РАМКУ */
			-webkit-mask: 
				linear-gradient(#000 0 0) content-box,
				linear-gradient(#000 0 0);
			-webkit-mask-composite: xor;
							mask-composite: exclude;
		}
		.change_mob_destination .destination-accordion .descr::after, .change_mob_destination .destination_alike .elementor-icon-list-item::after{
				content: "";
				width: 22px;
				height: 22px; 
				position: absolute;
				left: 14px;
				top: 50%;
        transform: translateY(-50%);
				background: url('https://ruby-digital.agency/wp-content/uploads/2026/04/circle-ok.png') center/cover no-repeat;
		}
		.change_mob_destination .destination_alike .elementor-icon-list-item::after{
				inset-inline-start: 14px!important;
				left: 0;
		}
		.mob-image{
				display: block;
				width: 180px;
				height: auto;
				margin: 20px auto 0 auto;
		}
		.change_mob_destination .destination_alike {
				position: relative;
		}
		.change_mob_destination .destination-accordion .accordion-item::before, .destination_alike::before{
				opacity: 1!important;
			content: '';
			position: absolute;
			width: 200px;
			height: 200px;
			background: #73001D;
			border-radius: 50%;
			filter: blur(65px);
			top: 0;
			left: 50%;
			transform: translateX(-50%);
			z-index: -1;
		}
		.change_mob_destination .destination-accordion .content{
			position: static;
				opacity: 1!important;
				padding: 0;
		}
		.change_mob_destination .destination-accordion h2{
				font-family: "Open Sans", sans-serif;
				font-weight: 600;
				font-size: 28px;
				text-align: center;
				margin-bottom: 20px;
		}
		.change_mob_destination .destination-accordion .subtitle{
				display: block;
				font-size: 18px;
				margin-top: 10px;
		}
		.destination-accordion .button-container{
				display: flex!important;
		}
		.change_mob_destination .destination_alike .button-container, .destination-accordion .button-container{
				margin-top: 0!important;
				margin-bottom: 0!important;
		}
		.change_mob_destination .destination_alike .button-container .pfs__pill, .destination-accordion .button-container .pfs__pill{
				justify-content: center;
				max-width: 400px;
        margin: auto;
				box-shadow: none!important;
				border: 1px solid #e0083d!important;
				background: none!important;
				border-radius: 30px!important;
				padding: 15px 16px!important;
				transform: none!important;
		}
		.change_mob_destination .destination_alike .button-container .permanent-btn, .destination-accordion .button-container .pfs__pill{
				background: linear-gradient(141deg, #af0026 0%, #e90a42 100%)!important;
				border: none!important;
		}
		.change_mob_destination .destination_alike .button-container .pfs__iconBox, .destination-accordion .pfs__iconBox{
			display: none!important;
		}
		.change_mob_destination .destination_alike .button-container .pfs__pillText, .destination-accordion .pfs__pillText{
				font-family: "Open Sans", sans-serif;
				font-weight: 400;
				font-size: 16px;
				line-height: 1.2;
				color: #fff;
		}
}