:root{
	--bg:#0b0d10;
	--bg2:#07090b;
	--card:rgba(255,255,255,.06);
	--card2:rgba(255,255,255,.08);
	--text:rgba(255,255,255,.92);
	--muted:rgba(255,255,255,.68);
	--line:rgba(255,255,255,.10);

	--gold:#c9a86a;
	--gold2:#f0d6a2;

	--r:20px;
	--r2:28px;

	--shadow: 0 18px 70px rgba(0,0,0,.55);
	--blur: blur(14px);

	--container: 1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.page{
	margin:0;
	font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
	background:
		radial-gradient(900px 700px at 20% 20%, rgba(201,168,106,.14), transparent 60%),
		radial-gradient(900px 700px at 80% 30%, rgba(255,255,255,.06), transparent 65%),
		linear-gradient(180deg, var(--bg), var(--bg2));
	color:var(--text);
}

a{color:inherit}
.container{
	width:min(var(--container), calc(100% - 40px));
	margin:0 auto;
}

.center{text-align:center}
.mt{margin-top:14px}

.h1{font-size:clamp(34px, 5vw, 64px); line-height:1.05; margin:10px 0 10px; letter-spacing:.2px}
.h2{font-size:clamp(24px, 3vw, 38px); margin:0 0 14px}
.lead{color:var(--muted); font-size:clamp(15px, 2vw, 18px); max-width:52ch}

.section{padding: clamp(46px, 6vw, 86px) 0}
.page-section{padding: 44px 0}

.badge{
	display:inline-flex; align-items:center; gap:10px;
	padding:10px 14px;
	border:1px solid rgba(201,168,106,.28);
	border-radius:999px;
	background: rgba(0,0,0,.25);
	backdrop-filter: var(--blur);
	box-shadow: var(--shadow);
	color: var(--gold2);
	font-weight:600;
	font-size:14px;
}

.btn{
	display:inline-flex; align-items:center; justify-content:center;
	gap:10px;
	padding:12px 16px;
	border-radius:999px;
	border:1px solid var(--line);
	background: rgba(255,255,255,.06);
	color:var(--text);
	cursor:pointer;
	text-decoration:none;
	font-weight:650;
	transition: transform .15s ease, background .15s ease, border-color .15s ease;
}
.btn:hover{transform: translateY(-1px); background: rgba(255,255,255,.085)}
.btn--primary{
	border-color: rgba(201,168,106,.45);
	background: linear-gradient(135deg, rgba(201,168,106,.95), rgba(240,214,162,.70));
	color:#1a140a;
}
.btn--primary:hover{background: linear-gradient(135deg, rgba(240,214,162,.95), rgba(201,168,106,.78))}
.btn--ghost{background: rgba(0,0,0,.25); backdrop-filter: var(--blur)}
.icon-btn{
	width:40px;height:40px;border-radius:12px;
	border:1px solid var(--line);
	background: rgba(0,0,0,.25);
	color:var(--text); cursor:pointer;
}

/* HEADER — начальное состояние (поверх hero) */
.header{
  position: sticky;
  top:0;
  z-index:100;
  background: #0a0c0f;
  transition: background .25s ease;
}

/* HEADER — после скролла (НЕ ПРОЗРАЧНЫЙ) */
.header.is-sticky{
  background: #0a0c0f;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.header__row{
	display:flex; align-items:center; justify-content:space-between;
	padding:12px 0;
	gap:14px;
}

.brand{display:flex; align-items:center; gap:12px; text-decoration:none}
.brand__mark{
	width:42px;height:42px;border-radius:14px;
	border:1px solid rgba(201,168,106,.35);
	background: radial-gradient(circle at 30% 30%, rgba(240,214,162,.28), rgba(0,0,0,.15));
	box-shadow: var(--shadow);
}
.brand__title{display:block; font-weight:800; letter-spacing:.2px}
.brand__sub{display:block; font-size:12px; color:var(--muted); margin-top:2px}

.nav{display:flex; align-items:center; gap:18px}
.nav__link{
	text-decoration:none;
	color: rgba(255,255,255,.82);
	font-weight:650;
	font-size:14px;
	padding:10px 10px;
	border-radius:999px;
	transition: background .15s ease, color .15s ease;
}
.nav__link:hover{background: rgba(255,255,255,.06); color:var(--text)}

.header__right{display:flex; align-items:center; gap:10px}
.chip{
	display:inline-flex; align-items:center;
	padding:10px 12px;
	border-radius:999px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(0,0,0,.25);
	backdrop-filter: var(--blur);
	text-decoration:none;
	font-weight:700;
}
.chip--phone{white-space:nowrap}

.burger{
	display:none;
	width:46px;height:46px;
	border-radius:14px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(0,0,0,.25);
	backdrop-filter: var(--blur);
	cursor:pointer;
}
.burger span{
	display:block;
	width:22px;height:2px;
	background: rgba(255,255,255,.85);
	margin:6px auto;
	border-radius:2px;
}

.hero{padding: clamp(42px, 7vw, 92px) 0 30px}
.hero__inner{
	display:grid;
	grid-template-columns: 1.05fr .95fr;
	align-items:center;
	gap:24px;
}
.hero__actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:18px}
.hero__frame{
	min-height: 360px;
	border-radius: var(--r2);
	border:1px solid rgba(255,255,255,.10);
	background:
		radial-gradient(800px 500px at 70% 20%, rgba(201,168,106,.20), transparent 60%),
		linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.15));
	box-shadow: var(--shadow);
}

.grid-2{display:grid; grid-template-columns: 1fr 1fr; gap:22px; align-items:start}

.cards-3{display:grid; grid-template-columns: repeat(3, 1fr); gap:16px}
.cards-2{display:grid; grid-template-columns: repeat(2, 1fr); gap:16px}

.card{
	border-radius: var(--r);
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.05);
	backdrop-filter: var(--blur);
	box-shadow: var(--shadow);
	padding:18px;
}
.card__title{font-weight:850; font-size:18px; margin-bottom:8px}
.card__text{color:var(--muted); line-height:1.65}

.card--media{padding:0; overflow:hidden}
.card__media{height:230px; background: rgba(255,255,255,.05)}
.card__body{padding:18px}
.price-box{
	margin:12px 0 14px;
	padding:12px 14px;
	border-radius:16px;
	border:1px solid rgba(201,168,106,.22);
	background: rgba(0,0,0,.18);
	color: rgba(255,255,255,.86);
}

.media-card{
	border-radius: var(--r2);
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.05);
	box-shadow: var(--shadow);
	min-height: 320px;
	display:flex; align-items:center; justify-content:center;
}
.media-card--video{
	padding:0;
	overflow:hidden;
	background:#000;
}
.media-card__frame{
	position:relative;
	width:100%;
	aspect-ratio: 16 / 9;
}
.media-card__frame iframe{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:0;
	border-radius:inherit;
	display:block;
}

.ph{
	display:flex; align-items:center; justify-content:center;
	color: rgba(255,255,255,.55);
	font-weight:700;
}

.list{margin:12px 0 0; padding-left:18px; color:var(--muted); line-height:1.8}
.text{color:var(--muted); line-height:1.8}

.gallery{
	display:grid;
	grid-template-columns: repeat(3, 1fr);
	gap:14px;
}
.gallery__item{
	min-height: 180px;
	border-radius: 18px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.05);
	box-shadow: var(--shadow);
	overflow:hidden;
}

.quote{color:rgba(255,255,255,.90); line-height:1.7; font-weight:650}
.muted{color:var(--gold); margin-top:10px; font-weight:700}

.accordion{display:grid; gap:12px; max-width:820px; margin: 0 auto}
.acc{
	border-radius: 18px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.05);
	overflow:hidden;
	box-shadow: var(--shadow);
}
.acc__btn{
	width:100%;
	text-align:left;
	padding:16px 16px;
	background:transparent;
	border:0;
	color:var(--text);
	font-weight:800;
	cursor:pointer;
}
.acc__panel{max-height:0; overflow:hidden; transition:max-height .2s ease}
.acc.is-open .acc__panel{max-height:240px}
.acc__content{padding:0 16px 16px; color:var(--muted); line-height:1.7}

.footer{
	padding:26px 0;
	border-top:1px solid rgba(255,255,255,.08);
	background: rgba(0,0,0,.25);
	backdrop-filter: var(--blur);
}
.footer__row{display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap}
.footer__brand{font-weight:900}
.footer__muted{color:var(--muted); margin-top:4px}
.footer__right{display:flex; gap:14px; flex-wrap:wrap}
.footer__link{color:var(--muted); text-decoration:none}
.footer__link:hover{color:var(--text)}

.drawer{position:fixed; inset:0; display:none; z-index:80}
.drawer.is-open{display:block}
.drawer__backdrop{position:absolute; inset:0; background: rgba(0,0,0,.55)}
.drawer__panel{
	position:absolute; right:0; top:0; height:100%; width:min(92vw, 360px);
	background: #0b0d10;
	backdrop-filter: none;
	border-left: 1px solid rgba(255,255,255,.14);
	box-shadow: var(--shadow);
	padding:16px;
	display:flex; flex-direction:column; gap:14px;
	overflow-y:auto;
}
.drawer__head{display:flex; align-items:center; justify-content:space-between}
.drawer__title{font-weight:900}
.drawer__actions{margin-top:auto; display:grid; gap:10px}

.nav--mobile{flex-direction:column; align-items:stretch; gap:6px}
.nav--mobile .nav__link{padding:12px 12px; border-radius:14px; background: rgba(255,255,255,.04)}

.modal{position:fixed; inset:0; display:none; z-index:90}
.modal.is-open{display:block}
.modal__backdrop{position:absolute; inset:0; background: rgba(0,0,0,.60)}
.modal__dialog{
	position:absolute; left:50%; top:50%;
	transform: translate(-50%, -50%);
	width:min(92vw, 560px);
	border-radius: 22px;
	border:1px solid rgba(255,255,255,.12);
	background: var(--bg2);
	backdrop-filter: none;
	box-shadow: var(--shadow);
	padding:16px;
}
.modal__head{display:flex; align-items:center; justify-content:space-between; padding:6px 4px 14px}
.modal__title{font-weight:950; font-size:18px}

.form__grid{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
.field{display:grid; gap:6px}
.field--full{grid-column:1/-1}
.field__label{font-size:12px; color:var(--muted); font-weight:700}
.field__input{
	width:100%;
	border-radius: 14px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.04);
	color:var(--text);
	padding:12px 12px;
	outline:none;
}
.field__textarea{resize:vertical}
.choice-group{display:flex; gap:10px; flex-wrap:wrap}
.choice-pill{
	position:relative;
	display:inline-flex;
	align-items:center;
	gap:10px;
	padding:10px 12px;
	border-radius: 14px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.04);
	color:inherit;
	cursor:pointer;
	transition: border-color .2s ease, background-color .2s ease, transform .15s ease;
}
.choice-pill input{
	position:absolute;
	opacity:0;
	pointer-events:none;
}
.choice-pill__check{
	width:32px; height:32px;
	display:grid; place-items:center;
	border-radius:50%;
	background: rgba(255,255,255,.06);
	border:1px solid rgba(255,255,255,.12);
	font-size:16px;
}
.choice-pill__text{font-weight:750}
.choice-pill:hover{border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.06); transform: translateY(-1px)}
.choice-pill input:checked + .choice-pill__check{background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.25)}
.choice-pill input:checked + .choice-pill__check + .choice-pill__text{color: var(--gold)}
.choice-pill input:focus-visible + .choice-pill__check{outline:2px solid var(--gold); outline-offset:2px}
.flatpickr-day.has-price{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	line-height:1.1;
	padding:6px 4px 8px;
}
.flatpickr-day .flatpickr-price{
	display:block;
	margin-top:4px;
	font-size:10px;
	font-weight:750;
	color:#111;
	background: rgba(0,0,0,.06);
	border-radius: 8px;
	padding:2px 6px;
	pointer-events:none;
}
.flatpickr-day.selected .flatpickr-price,
.flatpickr-day.inRange .flatpickr-price{
	color: inherit;
	background: rgba(255,255,255,.18);
}
.form__actions{display:flex; gap:10px; margin-top:14px; flex-wrap:wrap}
.form__note{margin:12px 0 0; color:var(--muted); font-size:12px; line-height:1.5}
.form__note--status{color:var(--gold2); font-weight:750}
.form__note--status:empty{display:none}
.sr-only{
	position:absolute;
	width:1px; height:1px;
	padding:0; margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	border:0;
}

.form-card{margin-top:16px; display:grid; gap:12px}
.comment-editor textarea,
.comment-editor .field__input{
	width:100%;
	min-height:150px;
	border-radius:14px;
	border:1px solid rgba(255,255,255,.10);
	background: rgba(255,255,255,.04);
	color:var(--text, rgba(255,255,255,.92));
	padding:12px;
	resize:vertical;
}
.addcomments__captcha,
.feedback__captcha{
	display:flex;
	gap:12px;
	align-items:center;
	flex-wrap:wrap;
}
.addcomments__captcha-img,
.feedback__captcha-img{
	padding:10px;
	border-radius:14px;
	background: rgba(255,255,255,.05);
	border:1px solid rgba(255,255,255,.10);
	box-shadow: var(--shadow);
}
.addcomments__recaptcha,
.feedback__recaptcha{
	padding:12px;
	border-radius:14px;
	border:1px dashed rgba(255,255,255,.16);
	background: rgba(255,255,255,.03);
}
.addcomments__recaptcha:empty,
.feedback__recaptcha:empty{
	display:none;
	padding:0;
	border:0;
	background:transparent;
}

.post-card{display:grid; grid-template-columns: 260px 1fr; gap:16px; margin:16px 0; padding:16px; border-radius:20px; border:1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.05)}
.post-card__media img{width:100%; height:170px; object-fit:cover; border-radius:16px; display:block}
.post-card__title{margin:0 0 8px}
.post-card__meta{color:var(--muted); font-size:12px; margin-bottom:8px}
.post-card__text{color:var(--muted); line-height:1.7; margin-bottom:10px}

.post__content iframe{
	display:block;
	width:100% !important;
	max-width:100%;
	height:auto !important;
	aspect-ratio: 16 / 9;
	border:0;
	border-radius:18px;
	background:#000;
}

@media (max-width: 980px){
	.nav--desktop{display:none}
	.burger{display:inline-block}
	.hero__inner{grid-template-columns:1fr; }
	.grid-2{grid-template-columns:1fr}
	.cards-3{grid-template-columns:1fr}
	.cards-2{grid-template-columns:1fr}
	.gallery{grid-template-columns: 1fr 1fr}
	.post-card{grid-template-columns:1fr}
}
@media (max-width: 520px){
	.container{width: calc(100% - 28px)}
	.chip--phone{display:none}
	.form__grid{grid-template-columns:1fr}
	.gallery{grid-template-columns:1fr}
}
.header,
.header.is-sticky{
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
/* =========================
   HERO VIDEO BACKGROUND
   ========================= */

.hero{
	position:relative;
	overflow:hidden;
}

.hero__bg{
	position:absolute;
	inset:0;
	z-index:0;
}

.hero__video{
	width:100%;
	height:100%;
	object-fit:cover;
}

.hero__overlay{
	position:absolute;
	inset:0;
	background:
		radial-gradient(900px 600px at 20% 20%, rgba(201,168,106,.22), transparent 60%),
		linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.88));
}

/* контент поверх видео */
.hero .container,
.hero__inner{
	position:relative;
	z-index:1;
}
.acc--hidden{
	display:none;
}
.contact-list{
	display:grid;
	gap:10px;
	color:var(--muted);
}
.contact-item{
	display:flex;
	gap:10px;
	align-items:center;
}
.contact-item a{
	color:var(--text);
	text-decoration:none;
	font-weight:600;
}

.contact-messengers{
	display:flex;
	gap:10px;
	flex-wrap:wrap;
}

.msg-btn{
	display:inline-flex;
	align-items:center;
	gap:8px;
	padding:10px 14px;
	border-radius:999px;
	border:1px solid var(--line);
	text-decoration:none;
	font-weight:700;
	color:var(--text);
	background: rgba(255,255,255,.04);
	transition:.15s;
}
.msg-btn:hover{transform:translateY(-1px)}

.msg-btn svg{
	width:18px;
	height:18px;
	fill:currentColor;
}

.msg-btn.wa{color:#25d366}
.msg-btn.tg{color:#2aa9e0}

.map iframe{
	width:100%;
	height:320px;
	border:0;
	border-radius:18px;
}
/* === GALLERY FIX === */
.gallery-masonry{
	column-count: 3;
	column-gap: 14px;
}

.gallery-item{
	display:block;
	margin-bottom:14px;
	border-radius:16px;
	overflow:hidden;
	break-inside: avoid;
	box-shadow: var(--shadow);
	background:#000;
}

.gallery-item img{
	width:100%;
	height:auto;
	max-height:260px;        /* ВАЖНО: уменьшает «огромные» фото */
	object-fit:cover;
	display:block;
	border-radius:16px;
}

@media (max-width: 980px){
	.gallery-masonry{column-count:2}
	.gallery-item img{max-height:220px}
}
@media (max-width: 520px){
	.gallery-masonry{column-count:1}
	.gallery-item img{max-height:200px}
}
/* Centered page lead text */
.page-section .lead,
.section .lead {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

/* Gallery page heading spacing fix */
.section > .container > .center {
	margin-top: -10px;
}

.section h1.h2 {
	margin-bottom: 10px;
}
/* ================================
   GALLERY HERO (PREMIUM)
================================ */

.gallery-hero {
	padding-top: 54px;
	padding-bottom: 70px;
}

.gallery-hero__head {
	text-align: center;
	max-width: 760px;
	margin: 0 auto 36px;
	animation: fadeUp .6s ease-out both;
}

.gallery-hero__title {
	font-size: clamp(28px, 3.2vw, 42px);
	font-weight: 900;
	letter-spacing: .2px;
	margin: 0 0 12px;
}

.gallery-hero__lead {
	color: var(--muted);
	font-size: 16px;
	line-height: 1.7;
	margin: 0 auto;
}

.gallery-hero__line {
	width: 84px;
	height: 2px;
	margin: 14px auto 18px;
	background: linear-gradient(
		90deg,
		transparent,
		var(--gold),
		transparent
	);
	opacity: .9;
	border-radius: 2px;
}

/* Animation */
@keyframes fadeUp {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.gallery-item img {
	transition: transform .35s ease, filter .35s ease;
}

.gallery-item:hover img {
	transform: scale(1.04);
	filter: brightness(1.05);
}
/* Gallery subtle parallax background */
.gallery-hero {
	position: relative;
	overflow: hidden;
}

.gallery-hero::before {
	content: "";
	position: absolute;
	inset: -40%;
	background:
		radial-gradient(600px 400px at 20% 20%, rgba(201,168,106,.08), transparent 60%),
		radial-gradient(600px 400px at 80% 30%, rgba(255,255,255,.04), transparent 60%);
	transform: translateY(var(--parallax, 0));
	transition: transform .1s linear;
	pointer-events: none;
}
/* Gallery CTA */
.gallery-cta {
	margin-top: 48px;
	padding: 28px 20px;
	border-radius: 22px;
	background:
		linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.25));
	border: 1px solid rgba(255,255,255,.08);
	backdrop-filter: blur(10px);
	box-shadow: var(--shadow);
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

.gallery-cta__text {
	color: var(--muted);
	font-size: 15px;
	line-height: 1.6;
	margin-bottom: 16px;
}
/* =========================================================
   ULTRA FX PACK (global + sections + cards + buttons)
   вставь в самый конец app.css
========================================================= */

:root{
  --goldGlow: rgba(201,168,106,.22);
  --whiteGlow: rgba(255,255,255,.10);
  --fxLine: rgba(255,255,255,.08);
  --fxLine2: rgba(201,168,106,.20);
}

/* ---------- Global ambient layer ---------- */
body.page{
  position: relative;
  overflow-x: hidden;
}


body.page::before,
body.page::after{
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: 100%;
	overflow: hidden;
	pointer-events: none;
}

body.page::before{
	background:
		radial-gradient(1200px 800px at 20% 15%, rgba(201,168,106,.12), transparent 60%),
		radial-gradient(900px 700px at 80% 22%, rgba(255,255,255,.06), transparent 62%),
		radial-gradient(1200px 800px at 50% 115%, rgba(0,0,0,.85), transparent 55%);
}

body.page::after{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
	opacity:.08;
}

/* чтобы контент был выше глобальных слоёв */
.header, .main, .footer{ position: relative; z-index: 1; }

/* оверлеи остаются фиксированными поверх */
.modal{
  position: fixed;
  z-index: 90;
}
.drawer{
  position: fixed;
  z-index: 80;
}

/* ---------- Section styling ---------- */
.section, .page-section{
  position: relative;
}

/* верхняя “линия-свет” на секциях */
.section::before, .page-section::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  transform: translateX(-50%);
  width:min(var(--container), calc(100% - 40px));
  height:1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,106,.30), rgba(255,255,255,.10), transparent);
  opacity:.9;
}

/* декоративные орбы в секции (очень мягко) */
.section::after, .page-section::after{
  content:"";
  position:absolute;
  inset:-120px -40px;
  pointer-events:none;
  background:
    radial-gradient(520px 320px at 12% 35%, rgba(201,168,106,.10), transparent 60%),
    radial-gradient(520px 320px at 88% 55%, rgba(255,255,255,.05), transparent 65%);
  opacity:.85;
  z-index:0;
}

/* ---------- Ultra cards ---------- */
.card{
  position: relative;
  overflow: hidden;
  transform: translateZ(0);
}

/* “светящаяся рамка” + верхний блик */
.card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius: inherit;
  padding:1px;
  background: linear-gradient(135deg, rgba(201,168,106,.35), rgba(255,255,255,.10), rgba(201,168,106,.18));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity:.65;
  pointer-events:none;
}

.card::after{
  content:"";
  position:absolute;
  left:-40%;
  top:-60%;
  width:120%;
  height:120%;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.10), transparent 55%);
  opacity:.35;
  filter: blur(2px);
  pointer-events:none;
}

/* hover — премиальный “подъём” */
.card:hover{
  transform: translateY(-2px);
  transition: transform .18s ease;
}

/* ---------- Buttons: premium sheen ---------- */
.btn{
  position: relative;
  overflow: hidden;
}
.btn::after{
  content:"";
  position:absolute;
  top:-40%;
  left:-40%;
  width:60%;
  height:180%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
  transform: rotate(22deg) translateX(-140%);
  transition: transform .55s ease;
  pointer-events:none;
}
.btn:hover::after{
  transform: rotate(22deg) translateX(320%);
}

/* ---------- Hero: video background support ---------- */
.hero{
  position: relative;
  overflow: hidden;
}

/* контейнер для видео (если добавишь) */
.hero__bg{
  position:absolute;
  inset:0;
  z-index:0;
}
.hero__bg video{
  width:100%;
  height:100%;
  object-fit: cover;
  filter: saturate(1.05) contrast(1.05) brightness(.72);
}

/* затемнение и читабельность поверх видео */
.hero__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(900px 700px at 25% 35%, rgba(0,0,0,.15), rgba(0,0,0,.72)),
    linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.78));
}

/* “лучи/частицы” в hero */
.hero__fx{
  position:absolute;
  inset:-120px;
  z-index:2;
  pointer-events:none;
  background:
    radial-gradient(520px 360px at 18% 32%, rgba(201,168,106,.18), transparent 60%),
    radial-gradient(520px 360px at 80% 48%, rgba(255,255,255,.07), transparent 62%),
    conic-gradient(from 210deg at 60% 40%, transparent 0 40%, rgba(255,255,255,.05) 45% 55%, transparent 60% 100%);
  filter: blur(0.2px);
  opacity:.85;
  animation: heroFloat 7s ease-in-out infinite;
}
@keyframes heroFloat{
  0%,100%{ transform: translate3d(0,0,0) }
  50%{ transform: translate3d(0,-10px,0) }
}

/* поднять контент hero над фонами */
.hero .container{ position: relative; z-index:3; }

/* правый “прямоугольник” делаем нормальным медиа-блоком (не пустышкой) */
.hero__frame{
  position: relative;
  overflow: hidden;
}
.hero__frame::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(600px 380px at 25% 20%, rgba(201,168,106,.18), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.20));
  opacity:.95;
}
.hero__frame::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius: inherit;
  background: radial-gradient(circle at 70% 25%, rgba(255,255,255,.10), transparent 45%);
  opacity:.55;
}
.hero__frame .hero__media{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit: cover;
  filter: contrast(1.05) brightness(.85);
  transform: scale(1.02);
  opacity:.85;
}

/* ---------- Gallery masonry sizing (красивые “карточки” не огромные) ---------- */
.gallery-masonry{
  column-count: 3;
  column-gap: 14px;
}
.gallery-masonry .gallery-item{
  display:block;
  break-inside: avoid;
  margin: 0 0 14px;
  border-radius: 18px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.gallery-masonry img{
  width:100%;
  height:auto;
  display:block;
  transform: scale(1.001);
  transition: transform .25s ease;
}
.gallery-masonry .gallery-item:hover img{ transform: scale(1.03); }

@media (max-width: 980px){
  .gallery-masonry{ column-count: 2; }
}
@media (max-width: 520px){
  .gallery-masonry{ column-count: 1; }
}

/* ---------- Section headers: centered premium ---------- */
.section-head{
  text-align:center;
  max-width: 820px;
  margin: 0 auto 26px;
}
.section-head__kicker{
  display:inline-flex;
  gap:10px;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(201,168,106,.25);
  background: rgba(0,0,0,.22);
  backdrop-filter: blur(12px);
  color: var(--gold2);
  font-weight: 700;
  font-size: 13px;
}
.section-head__title{
  margin:14px 0 10px;
}
.section-head__desc{
  margin:0 auto;
  color: var(--muted);
  line-height:1.7;
  max-width: 62ch;
}

/* ---------- Fancybox match site (аккуратно) ---------- */
.fancybox__backdrop{ background: rgba(0,0,0,.82) !important; }
.fancybox__toolbar, .fancybox__nav{
  --f-button-bg: rgba(255,255,255,.06);
  --f-button-color: rgba(255,255,255,.92);
}
/* ================================
   FIX: кнопка под галереей
================================ */

/* сама секция */
.section--gallery {
	position: relative;
}

/* masonry не должен перекрываться */
.section--gallery .gallery-masonry {
	margin-bottom: 40px;
	position: relative;
	z-index: 1;
}

/* контейнер кнопки */
.gallery-actions {
	display: flex;
	justify-content: center;
	margin-top: 20px;
	position: relative;
	z-index: 2;
}

/* сама кнопка */
.btn--gallery {
	padding: 14px 28px;
	font-size: 15px;
	border-radius: 999px;
	background: rgba(0,0,0,.55);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,.15);
}

/* на мобиле ещё ниже */
@media (max-width: 768px) {
	.section--gallery .gallery-masonry {
		margin-bottom: 28px;
	}
}
.media-card--image img{
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:inherit;
	display:block;
}
/* ABOUT — MEDIA PREMIUM */
.media-card--parallax{
	position:relative;
	overflow:hidden;
	transform: translateZ(0);
}

.media-card--parallax img{
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:inherit;
	display:block;
	transform: scale(1.05);
	transition: transform .9s ease;
}

/* мягкое движение при наведении (десктоп) */
@media (hover:hover){
	.media-card--parallax:hover img{
		transform: scale(1.12);
	}
}

/* световой акцент */
.media-card--parallax::before{
	content:"";
	position:absolute;
	inset:0;
	background:
		radial-gradient(
			600px 400px at 70% 20%,
			rgba(201,168,106,.22),
			transparent 60%
		);
	pointer-events:none;
	z-index:1;
}

/* затемнение для читаемости */
.media-card--parallax::after{
	content:"";
	position:absolute;
	inset:0;
	background: linear-gradient(
		180deg,
		rgba(0,0,0,.15),
		rgba(0,0,0,.55)
	);
	pointer-events:none;
}
.card__media img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

/* ============================= */
/* MODAL — FIX */
/* ============================= */

.modal{
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: none;
}

.modal.is-open{
	display: block;
}

.modal__backdrop{
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.6);
	backdrop-filter: blur(4px);
}

.modal__dialog{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: min(92vw, 520px);
	max-height: 90vh;
	overflow-y: auto;

	background: var(--bg2);
	border-radius: 20px;
	padding: 20px;

	z-index: 2;
	box-shadow: 0 40px 120px rgba(0,0,0,.6);
}

.flatpickr-day {
	border-radius: 8px;
}

.flatpickr-day.today {
	border-color: #caa55a;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
	background: #caa55a !important;
	color: #111 !important;
	font-weight: 700;
}

.flatpickr-day.inRange {
	background: rgba(202,165,90,.35) !important;
}

.flatpickr-day.flatpickr-disabled {
	background: rgba(255,80,80,.22) !important;
	color: #ff6b6b !important;
	text-decoration: line-through;
	cursor: not-allowed;
}

.counter{
	display:flex;
	align-items:center;
	gap:10px;
}

.counter input{
	width:60px;
	text-align:center;
	background:transparent;
	border:1px solid rgba(255,255,255,.15);
	border-radius:10px;
	color:#fff;
	font-size:16px;
	padding:8px;
}

.counter__btn{
	width:40px;
	height:40px;
	border-radius:10px;
	border:0;
	background:rgba(255,255,255,.1);
	color:#fff;
	font-size:20px;
	cursor:pointer;
}
.counter__btn:hover{
	background:#caa55a;
	color:#111;
}
.flatpickr-calendar{
	background:#0f1318;
	border:1px solid rgba(255,255,255,.12);
	box-shadow:0 30px 80px rgba(0,0,0,.65);
}
.flatpickr-months .flatpickr-month{
	color:#fff;
}
.flatpickr-weekday{
	color:rgba(255,255,255,.55);
}

body.page{
	overflow-x:hidden;
}

.flatpickr-calendar {
	border-radius: 16px;
	box-shadow: 0 30px 80px rgba(0,0,0,.55);
	background: #0f1216;
	color: #fff;
	border: 1px solid rgba(255,255,255,.12);
}

.flatpickr-months,
.flatpickr-weekdays {
	background: transparent;
}

/* =========================================
   FIX: один скролл и блокировка при меню/модалке
========================================= */
html,
body{
	width:100%;
	min-height:100%;
	overflow-x:hidden;
}

/* скролл только на body — убираем второй трек */
html{
	min-height:100%;
	height:100%;
	overflow-y:hidden;
}

body.page{
	min-height:100vh;
	height:100%;
	overflow-y:auto;
}

.main,
main.main,
.page > .main{
	height:auto !important;
	max-height:none !important;
	overflow:visible !important;
}

/* блокировка документа при открытом меню/модалке */
html.is-locked,
body.is-locked,
html.scroll,
body.scroll{
	overflow:hidden !important;
}

/* sticky шапка поверх всего */
.header{
	position: sticky;
	top: 0;
	z-index: 1000;
}

/* Comments */
.comments{
	margin-top:32px;
	padding:24px;
	border:1px solid var(--line);
	border-radius:var(--r);
	background:var(--card);
	box-shadow:0 20px 70px rgba(0,0,0,.35);
}

.comments__header{
	margin-bottom:18px;
	display:flex;
	flex-direction:column;
	gap:6px;
}

.comments__title{
	font-size:22px;
	line-height:1.3;
	margin:0;
	color:var(--text);
}

.comments__subtitle{
	color:var(--muted);
	font-size:14px;
}

.comments__list{
	display:flex;
	flex-direction:column;
	gap:16px;
}

.comments-tree-list{
	list-style:none;
	margin:0;
	padding-left:0;
}

.comments-tree-item{
	margin-bottom:16px;
}

.comments-tree-item .comments-tree-list{
	padding-left:24px;
	border-left:1px solid var(--line);
	margin-top:16px;
}

.comment-card{
	border:1px solid var(--line);
	border-radius:16px;
	background:var(--card2);
	overflow:hidden;
}

.comment-card__body{
	padding:18px;
	display:flex;
	flex-direction:column;
	gap:14px;
	transition:box-shadow .25s ease, background .25s ease;
}

.comment-card__body.comment-card--highlight{
	box-shadow:0 0 0 2px rgba(201,168,106,.5), 0 12px 40px rgba(0,0,0,.4);
	background:linear-gradient(135deg, rgba(201,168,106,.06), rgba(240,214,162,.05)), var(--card2);
}

.comment-card__head{
	display:flex;
	align-items:flex-start;
	gap:12px;
	justify-content:space-between;
}

.comment-card__author{
	display:flex;
	flex-direction:column;
	gap:6px;
}

.comment-card__name{
	font-weight:700;
	color:var(--text);
}

.comment-card__meta{
	display:flex;
	align-items:center;
	gap:10px;
	color:var(--muted);
	font-size:13px;
	flex-wrap:wrap;
}

.comment-card__badge{
	padding:2px 8px;
	border-radius:999px;
	background:rgba(255,255,255,.08);
	color:var(--text);
	font-size:12px;
}

.comment-card__badge--accent{
	background:rgba(201,168,106,.18);
	color:var(--gold2);
}

.comment-card__controls{
	display:flex;
	align-items:center;
	gap:10px;
}

.comment-card__rating{
	display:flex;
	align-items:center;
	gap:8px;
}

.comment-chip{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:6px 10px;
	border-radius:10px;
	background:var(--card);
	color:var(--text);
	font-size:13px;
	border:1px solid var(--line);
	cursor:pointer;
	transition:all .2s ease;
}

.comment-chip:hover{
	border-color:var(--gold);
	color:var(--gold2);
}

.comment-chip--rate{
	width:32px;
	height:32px;
	align-items:center;
	justify-content:center;
}

.comment-card__rating-value{
	min-width:26px;
	text-align:center;
	color:var(--text);
	font-weight:700;
}

.comment-card__content{
	color:var(--text);
	line-height:1.6;
}

.comment-card__images{
	padding:10px;
	border:1px dashed var(--line);
	border-radius:12px;
}

.comment-card__footer{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:10px;
	flex-wrap:wrap;
}

.comment-card__actions{
	display:flex;
	align-items:center;
	gap:12px;
	flex-wrap:wrap;
}

.comment-card__link{
	color:var(--gold2);
	cursor:pointer;
	transition:color .2s ease;
}

.comment-card__link:hover{
	color:#fff;
}

.comment-card__link--danger{
	color:#ff9b9b;
}

.comments__pagination,
.dle-comments-navigation{
	margin-top:20px;
	display:flex;
	justify-content:center;
}

.comments__pagination a,
.dle-comments-navigation a,
.dle-comments-navigation span{
	padding:8px 12px;
	margin:0 4px;
	border-radius:10px;
	border:1px solid var(--line);
	color:var(--text);
	background:var(--card2);
	transition:all .2s ease;
}

.comments__pagination a:hover,
.dle-comments-navigation a:hover{
	border-color:var(--gold);
	color:var(--gold2);
}

.toast{
	position:fixed;
	top:18px;
	right:18px;
	z-index:2400;
	background:rgba(0,0,0,.9);
	border:1px solid var(--line);
	color:#f5f5f5;
	padding:12px 14px;
	border-radius:12px;
	box-shadow:var(--shadow);
	opacity:0;
	transform:translateY(-8px);
	transition:opacity .22s ease, transform .22s ease;
	max-width:320px;
	backdrop-filter:var(--blur);
}

.toast.is-visible{
	opacity:1;
	transform:translateY(0);
}

/* DLEPush toast */
#DLEPush{
	position:fixed;
	top:18px;
	right:18px;
	z-index:2000;
}

.DLEPush-notification{
	background:rgba(0,0,0,.9);
	border:1px solid rgba(255,255,255,.18);
	box-shadow:0 10px 40px rgba(0,0,0,.45);
	color:#f5f5f5;
	border-radius:14px;
	padding:12px 14px;
	min-width:260px;
	display:flex;
	align-items:flex-start;
	gap:12px;
	opacity:1!important;
}

.DLEPush-close{
	background:transparent;
	border:0;
	color:#d6d6d6;
	font-size:18px;
	cursor:pointer;
}

.DLEPush-message{
	color:#f5f5f5;
	line-height:1.4;
}

.jGrowl-notification{
	background:rgba(0,0,0,.92)!important;
	color:#f5f5f5!important;
	border:1px solid rgba(255,255,255,.18)!important;
	border-radius:12px!important;
	box-shadow:0 12px 40px rgba(0,0,0,.45)!important;
	opacity:1!important;
}

.ui-widget,
.ui-widget-content,
.ui-widget-header{
	background:var(--card2);
	color:var(--text);
	border:1px solid var(--line);
}

.ui-widget-header{
	border-bottom:0;
}

/* Reply / complaint dialogs */
.ui-widget-overlay{
	background:rgba(0,0,0,.78);
	z-index:1200;
}

.ui-dialog.dle-popup-replycomments,
.ui-dialog.dle-popup-complaint,
.ui-dialog.dle-popup-alert,
.ui-dialog.dle-popup-confirm{
	background:var(--bg2);
	color:var(--text);
	border:1px solid var(--line);
	border-radius:18px;
	box-shadow:0 18px 70px rgba(0,0,0,.55);
	z-index:1201;
	pointer-events:auto;
}

.ui-dialog .ui-dialog-titlebar{
	background:var(--bg2);
	color:var(--text);
	border:1px solid var(--line);
	border-bottom:0;
	border-radius:12px 12px 0 0;
	padding:10px 14px;
}

.ui-dialog .ui-dialog-titlebar-close{
	border:1px solid var(--line);
	background:var(--bg2);
	color:var(--text);
	border-radius:8px;
	opacity:1;
}

.ui-dialog .ui-dialog-content{
	background:var(--bg2);
	color:var(--text);
}

.ui-tooltip{
	background:var(--card2);
	color:var(--text);
	border:1px solid var(--line);
	box-shadow:0 10px 40px rgba(0,0,0,.4);
}

.ui-dialog .ui-dialog-buttonpane{
	background:var(--card);
	border-top:1px solid var(--line);
}

.ui-dialog .ui-dialog-buttonpane button{
	background:var(--card2);
	color:var(--text);
	border:1px solid var(--line);
	border-radius:10px;
	padding:6px 12px;
	transition:all .2s ease;
}

.ui-dialog .ui-dialog-buttonpane button:hover{
	border-color:var(--gold);
	color:var(--gold2);
}

.ui-dialog.dle-popup-replycomments{
	width:min(720px, 94vw) !important;
	border-radius:22px;
	overflow:hidden;
}

.ui-dialog.dle-popup-replycomments .ui-dialog-titlebar{
	border-radius:18px 18px 0 0;
	padding:12px 16px;
}

.ui-dialog.dle-popup-replycomments .ui-dialog-content{
	padding:18px 18px 10px;
	display:grid;
	gap:14px;
	line-height:1.6;
}

.ui-dialog.dle-popup-replycomments .ui-dialog-buttonpane{
	border-top:1px solid var(--line);
	padding:12px 16px;
	display:flex;
	justify-content:space-between;
	gap:10px;
}

.dle-popup-replycomments form{
	display:grid;
	gap:12px;
	grid-template-columns:1fr;
}

@media (min-width:640px){
	.dle-popup-replycomments form{
		grid-template-columns:repeat(2, 1fr);
	}

	.dle-popup-replycomments form .bb-editor,
	.dle-popup-replycomments form .wseditor,
	.dle-popup-replycomments form textarea,
	.dle-popup-replycomments form .fr-box{
		grid-column:1/-1;
	}
}

.dle-popup-replycomments form > div[style*="clear"]{
	display:none !important;
}

.dle-popup-replycomments input[type="text"],
.dle-popup-replycomments textarea,
.dle-popup-replycomments .bb-editor textarea,
.dle-popup-complaint input[type="text"],
.dle-popup-complaint textarea,
.dle-popup-alert input[type="text"],
.dle-popup-alert textarea{
	background:var(--bg2);
	border:1px solid var(--line);
	color:var(--text);
	border-radius:10px;
	padding:12px 14px;
	box-sizing:border-box;
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
	transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.dle-popup-replycomments input[type="text"]:focus,
.dle-popup-replycomments textarea:focus{
	border-color:var(--gold);
	box-shadow:0 0 0 1px rgba(240,214,162,.45);
}

.dle-popup-replycomments .commentsreplyname,
.dle-popup-replycomments .commentsreplymail{
	margin:0;
	padding:0;
	float:none !important;
	width:100% !important;
	display:flex;
	flex-direction:column;
	gap:6px;
}

/* WYSIWYG / BB editor */
.comment-editor .bb-editor,
.dle-popup-replycomments .bb-editor{
	background:var(--card2);
	border:1px solid var(--line);
	border-radius:12px;
}

.comment-editor .bb-editor textarea,
.dle-popup-replycomments .bb-editor textarea{
	background:var(--bg2);
	color:var(--text);
	border:0;
	box-shadow:none;
}

.comment-editor .fr-box,
.dle-popup-replycomments .fr-box{
	border:1px solid var(--line);
	border-radius:14px;
	background:var(--card);
	box-shadow:var(--shadow);
}

.comment-editor .fr-box.fr-basic{
	background:var(--bg2);
	border-color:rgba(255,255,255,.12);
}

.fr-toolbar{
	background:var(--card2);
	border-color:var(--line);
	color:var(--text);
}

.fr-toolbar .fr-command.fr-btn{
	color:var(--text);
}

.fr-toolbar .fr-command.fr-btn.fr-disabled{
	color:var(--muted);
}

.fr-toolbar .fr-separator{
	border-color:var(--line);
}

.comment-editor .fr-toolbar,
.comment-editor .fr-second-toolbar{
	background:#11151d!important;
	border-color:rgba(255,255,255,.12)!important;
	box-shadow:0 8px 24px rgba(0,0,0,.35);
}

.comment-editor .fr-toolbar .fr-command.fr-btn,
.comment-editor .fr-second-toolbar .fr-command.fr-btn{
	color:#f2f2f2!important;
}

.comment-editor .fr-toolbar .fr-command.fr-btn.fr-open:not(.fr-disabled),
.comment-editor .fr-toolbar .fr-command.fr-btn:hover:not(.fr-disabled),
.comment-editor .fr-second-toolbar .fr-command.fr-btn.fr-open:not(.fr-disabled),
.comment-editor .fr-second-toolbar .fr-command.fr-btn:hover:not(.fr-disabled){
	background:rgba(255,255,255,.06)!important;
	border-radius:10px;
}

.comment-editor .fr-separator{
	border-color:rgba(255,255,255,.12)!important;
}

.fr-wrapper{
	background:var(--bg2);
	color:var(--text);
	border-top:1px solid var(--line);
}

.fr-wrapper .fr-element{
	color:var(--text);
}

.comment-editor .fr-wrapper{
	background:#0b0d10!important;
	border-color:rgba(255,255,255,.12)!important;
	color:var(--text)!important;
}

.comment-editor .fr-wrapper,
.comment-editor .fr-wrapper .fr-element{
	background:var(--bg2, #07090b)!important;
	color:var(--text, rgba(255,255,255,.92))!important;
	caret-color:var(--gold2, #f0d6a2);
}

.comment-editor .fr-placeholder{
	color:var(--muted, rgba(255,255,255,.68))!important;
}

.mce-tinymce,
.mce-panel{
	background:var(--card2)!important;
	border-color:var(--line)!important;
}

.mce-edit-area,
.mce-content-body{
	background:var(--bg2, #07090b)!important;
	color:var(--text, rgba(255,255,255,.92))!important;
	caret-color:var(--gold2, #f0d6a2);
}

.mce-toolbar .mce-btn button{
	color:var(--text)!important;
}

.mce-menubar .mce-menubtn button{
	color:var(--text)!important;
}

.breadcrumbs{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-bottom:20px;
	color:var(--muted, rgba(255,255,255,.68));
	font-size:14px;
	line-height:1.4;
}

.breadcrumbs__trail{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	align-items:center;
}

.breadcrumbs a{
	color:var(--text, rgba(255,255,255,.92));
	text-decoration:none;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus-visible{
	color:var(--gold2, #f0d6a2);
}
.reviews-slider {
	position: relative;
	overflow: hidden;
	margin-top: 40px;
}

.reviews-track {
	display: flex;
	gap: 20px;
	transition: transform 0.4s ease;
}

.review {
	min-width: 320px;
	max-width: 420px;
	background: #fff;
	border-radius: 18px;
	padding: 24px;
	box-shadow: 0 10px 30px rgba(0,0,0,.08);
	font-size: 15px;
	line-height: 1.6;
}

.review p {
	margin-bottom: 14px;
}

.review span {
	color: #777;
	font-size: 14px;
}

.review-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: none;
	background: #111;
	color: #fff;
	font-size: 26px;
	cursor: pointer;
	opacity: .8;
}

.review-btn:hover {
	opacity: 1;
}

.review-btn.prev { left: -10px; }
.review-btn.next { right: -10px; }

@media (max-width: 768px) {
	.review {
		min-width: 85%;
	}
}
.review {
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);

	border-radius: 20px;
	padding: 26px;

	color: #f2f2f2;

	box-shadow:
		0 10px 40px rgba(0, 0, 0, 0.6),
		inset 0 0 0 1px rgba(255, 255, 255, 0.08);

	min-width: 320px;
	max-width: 420px;
}
.review p {
	color: #f0f0f0;
	font-size: 15px;
	line-height: 1.65;
}

.review span {
	display: block;
	margin-top: 14px;
	color: #bdbdbd;
	font-size: 14px;
}
.review::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(
		180deg,
		rgba(255,255,255,0.06),
		transparent 40%
	);
	pointer-events: none;
}
.review {
	position: relative;
}