/* GOODRENT Slider
   — плавные анимации, стрелки, точки, автопрокрутка
   — шрифт Montserrat
   — подпись в правом нижнем углу, читаемость через мягкий градиент
*/

.goodrent-slider {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	background: #000; /* фолбек до загрузки картинок */
	font-family: 'Montserrat', 'montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
	aspect-ratio: var(--gr-aspect, 16/9); /* соотношение сторон из атрибута */
}

/* Лента слайдов */
.goodrent-slider .gr-track {
	display: flex;
	width: 100%;
	height: 100%;
	will-change: transform;
	transform: translate3d(0,0,0);
	transition: transform 600ms cubic-bezier(.22,.61,.36,1);
}

/* Слайд */
.goodrent-slider .gr-slide {
	position: relative;
	min-width: 100%;
	height: 100%;
	overflow: hidden;
}

.goodrent-slider .gr-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	user-select: none;
}

/* Мягкий затемняющий слой снизу (не резкий) */
.goodrent-slider .gr-softfade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 35%; /* около трети высоты */
	pointer-events: none;
	background: linear-gradient(180deg,
		rgba(0,0,0,0) 0%,
		rgba(0,0,0,0.28) 40%,
		rgba(0,0,0,0.65) 100%);
}

/* Подпись — прижата к правому нижнему углу, анимируем появление */
.goodrent-slider .gr-caption {
	position: absolute;
	right: 1.25rem;
	bottom: 1.25rem;
	max-width: min(40ch, 42%);
	color: #fff;
	text-align: right;
	filter: drop-shadow(0 2px 10px rgba(0,0,0,.35));
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 400ms ease, transform 400ms ease;
}

.goodrent-slider .gr-caption__inner {
	font-weight: 600;
	font-size: clamp(14px, 1.6vw, 18px);
	line-height: 1.5;
}

/* Активный слайд — показываем подпись */
.goodrent-slider .gr-slide.is-active .gr-caption {
	opacity: 1;
	transform: translateY(0);
}

/* Стрелки */
.goodrent-slider .gr-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 56px;
	height: 56px;
	border: none;
	background: rgba(255,255,255,0.12);
	backdrop-filter: blur(2px);
	border-radius: 999px;
	cursor: pointer;
	display: grid;
	place-items: center;
	transition: background 200ms ease, transform 200ms ease;
	z-index: 3;
}

.goodrent-slider .gr-arrow:hover { background: rgba(255,255,255,0.22); }
.goodrent-slider .gr-arrow:active { transform: translateY(-50%) scale(0.98); }

.goodrent-slider .gr-prev { left: 10px; }
.goodrent-slider .gr-next { right: 10px; }

/* Иконка-стрелка (границы как на референсе) */
.goodrent-slider .gr-arrow__icon {
	position: relative;
	display: block;
	width: 26px;
	height: 2px;
	background: #fff;
}
.goodrent-slider .gr-prev .gr-arrow__icon { transform: rotate(180deg); }
.goodrent-slider .gr-arrow__icon::after {
	content: "";
	position: absolute;
	right: -2px;
	top: -6px;
	width: 12px;
	height: 12px;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	transform: rotate(45deg);
}

/* Точки */
.goodrent-slider .gr-dots {
	position: absolute;
	left: 50%;
	bottom: 12px;
	transform: translateX(-50%);
	display: flex;
	gap: 8px;
	z-index: 3;
}

.goodrent-slider .gr-dots button {
	width: 16px;
	height: 16px;
	background: rgba(255,255,255,0.85);
	border: 0;
	border-radius: 4px;   /* квадрат с легкими скруглениями */
	cursor: pointer;
	opacity: .7;
	transition: opacity 150ms ease, transform 150ms ease, background 150ms ease;
	padding: 8px;
}
.goodrent-slider .gr-dots button:hover { opacity: 1; transform: translateY(-1px); }
.goodrent-slider .gr-dots button[aria-selected="true"] {
	opacity: 1;
	background: #fff;
}

/* Навигация с клавиатуры */
.goodrent-slider .gr-arrow:focus-visible,
.goodrent-slider .gr-dots button:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

/* На очень маленьких экранах уменьшаем стрелки */
@media (max-width: 480px) {
	.goodrent-slider .gr-arrow { width: 44px; height: 44px; }
	.goodrent-slider .gr-arrow__icon { width: 22px; }
}
