/* «Райский Остров» — тема поверх эталонных стилей (подключается последней).
   Пожелание клиента 09.10.2026: чисто и светло; бирюзовый, голубой, светло-оранжевый, светло-жёлтый.
   Цвета — из логотипа: бирюза фона знака и солнце (жёлто-оранжевый градиент). */

:root {
	--ro-teal: #1A97AA;          /* бирюза логотипа */
	--ro-teal-deep: #0E6573;
	--ro-blue: #E8F6FA;          /* голубой фон секций */
	--ro-blue-2: #CDEDF5;
	--ro-sun: #FDB64E;           /* светло-оранжевый — солнце логотипа */
	--ro-sun-2: #F7963F;
	--ro-yellow: #FFF7DC;        /* светло-жёлтый фон */
	--ro-ink: #133A41;

	--font1: "Onest", system-ui, sans-serif;
	--font2: "Nunito", "Onest", sans-serif;

	--primary: #F38A2E;          /* действие и цены — тёплый оранжевый (тёмнее солнца, чтобы читалась цена) */
	--pac-orange: #F38A2E;
	--pac-orange-hover: #E07818;
	--whatsapp: #FDA64A;
	--whatsapp-hover: #F7963F;
	--secondary: var(--ro-teal);
	--teal-deep: var(--ro-teal-deep);
	--ink: var(--ro-ink);
	--black: var(--ro-ink);
	--gray-text: #4D6970;
	--light-gray: var(--ro-blue);
	--border-color: var(--ro-blue-2);
	--cream: var(--ro-yellow);
}

body { background: #fff; color: var(--ro-ink); font-family: var(--font1); }
::selection { background: var(--ro-teal); color: #fff; }

/* ── заголовки: мягкий округлый Nunito, акцент — бирюза ── */
.title, .hero__title, .tour-item__title, .step-item__title, .quiz__title, .thx__title {
	font-family: var(--font2); font-weight: 800; letter-spacing: -.01em; text-transform: none;
}
.title span, .thx__title span { color: var(--ro-teal); font-family: var(--font2); }

/* ── шапка и логотип ── */
.header { background: rgba(255, 255, 255, .96); border-bottom: 0; box-shadow: 0 1px 0 rgba(19, 58, 65, .08); }
.header__logo { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; flex-shrink: 0; }
.logo__mark { width: 52px; height: 52px; border-radius: 14px; display: block; box-shadow: 0 6px 16px -8px rgba(14, 101, 115, .6); }
.logo__words { display: flex; flex-direction: column; line-height: 1.05; }
.logo__name { font: 700 21px/1.05 var(--font2); color: var(--ro-teal-deep); white-space: nowrap; }
.logo__sub { font: 500 13px/1.3 var(--font1); color: var(--gray-text); margin-top: 4px; white-space: nowrap; }
@media (max-width: 767px) {
	.logo__mark { width: 42px; height: 42px; border-radius: 11px; }
	.logo__name { font-size: 17px; }
	.logo__sub { font-size: 11.5px; }
}

/* ── кнопки: солнце логотипа, тёмный текст — читается лучше белого ── */
.btn--whatsapp, .tour-item__button, .wish__submit-btn, .quiz__form-submit, .quiz__button {
	background: linear-gradient(135deg, var(--ro-sun) 0%, var(--ro-sun-2) 100%);
	color: #2E1D08; border: 0;
	box-shadow: 0 10px 24px -12px rgba(247, 150, 63, .9);
}
.btn--whatsapp:hover, .tour-item__button:hover, .wish__submit-btn:hover, .quiz__form-submit:hover, .quiz__button:hover {
	background: linear-gradient(135deg, #FFC15E 0%, #F48A2C 100%);
	box-shadow: 0 12px 28px -12px rgba(224, 120, 24, .95);
}
.btn--whatsapp .btn__text { color: #2E1D08; }

/* ── герой: светлее, бирюзовая дымка вместо оранжевой ── */
.hero__background::after {
	background: linear-gradient(90deg, rgba(8, 72, 84, .62) 0%, rgba(8, 72, 84, .30) 48%, rgba(8, 72, 84, 0) 75%),
		linear-gradient(180deg, rgba(255, 247, 220, .10) 0%, rgba(8, 72, 84, .25) 100%);
}
/* рукописная подсказка эталона у кнопки — её роль теперь у плашки бонуса */
.buttons__detail--hero { display: none; }
.ro-bonus {
	display: inline-flex; align-items: center; gap: 10px; margin-top: 22px; max-width: 520px;
	padding: 10px 18px 10px 12px; border-radius: 999px;
	background: var(--ro-yellow); color: var(--ro-ink); font-size: 15.5px; line-height: 1.35;
	box-shadow: 0 10px 30px -14px rgba(0, 0, 0, .45);
}
.ro-bonus b { color: #C2610F; }
.ro-bonus__gift { font-size: 22px; line-height: 1; }
@media (max-width: 575px) { .ro-bonus { border-radius: 18px; font-size: 14px; } }

/* ── фоны секций: голубой и светло-жёлтый по очереди ── */
.directions { background: var(--ro-blue); }
.steps { background: #fff; }
.request { background: linear-gradient(180deg, var(--ro-yellow) 0%, #FFFDF5 100%); }
.footer { background: var(--ro-blue); }
.wish, .cta { background: linear-gradient(160deg, #F2FBFD 0%, var(--ro-yellow) 100%); }

.tour-item { border-radius: 22px; overflow: hidden; }
.tour-item__price-val { color: var(--primary); }
.tour-item__more {
	display: inline-block; margin: -4px 0 14px; color: var(--ro-teal-deep); font-weight: 600; font-size: 15px;
	text-decoration: underline; text-decoration-color: var(--ro-blue-2); text-underline-offset: 4px;
}
.tour-item__more:hover { text-decoration-color: var(--ro-teal); }
.step-item__number { color: #fff; background: var(--ro-teal); }

/* ── команда ── */
.ro-team { background: #fff; }
.ro-team__lead { max-width: 760px; margin: 0 auto 32px; text-align: center; color: var(--gray-text); font-size: 18px; }
.ro-team__group { margin: 0 auto 28px; max-width: 1120px; border-radius: 28px; overflow: hidden; box-shadow: 0 30px 60px -40px rgba(14, 101, 115, .6); }
.ro-team__group img { display: block; width: 100%; height: auto; }
.ro-team__list { list-style: none; margin: 0 auto; padding: 0; max-width: 1120px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.ro-team__card { background: var(--ro-blue); border-radius: 22px; padding: 10px 10px 18px; text-align: center; }
.ro-team__card img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 16px; margin-bottom: 14px; }
.ro-team__card b { display: block; font: 700 18px/1.2 var(--font2); color: var(--ro-ink); }
.ro-team__card span { display: block; margin-top: 4px; font-size: 14.5px; color: var(--gray-text); }
@media (max-width: 991px) { .ro-team__list { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 420px) { .ro-team__list { gap: 12px; } .ro-team__card b { font-size: 16px; } .ro-team__card span { font-size: 13px; } }

/* ── вопросы ── */
.ro-faq { background: var(--ro-blue); }
.ro-faq__list { max-width: 860px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; }
.ro-faq__item { background: #fff; border-radius: 18px; padding: 0 22px; box-shadow: 0 1px 0 rgba(19, 58, 65, .06); }
.ro-faq__item summary {
	list-style: none; cursor: pointer; padding: 18px 34px 18px 0; position: relative;
	font: 600 18px/1.35 var(--font1); color: var(--ro-ink);
}
.ro-faq__item summary::-webkit-details-marker { display: none; }
.ro-faq__item summary::after {
	content: '+'; position: absolute; right: 0; top: 50%; transform: translateY(-50%);
	width: 26px; height: 26px; border-radius: 50%; background: var(--ro-blue); color: var(--ro-teal-deep);
	display: grid; place-items: center; font: 600 20px/1 var(--font1); transition: transform .2s;
}
.ro-faq__item[open] summary::after { content: '–'; }
.ro-faq__item p { margin: 0 0 18px; color: var(--gray-text); font-size: 16.5px; line-height: 1.55; }

/* ── подвал и окно «спасибо» ── */
.ro-mail { font-size: 16px; opacity: .85; }
.thx__btn--wa { background: #25D366; color: #fff; }
.thx__btn--wa:hover { background: #1ABE57; }
.thx__btn--wa svg { fill: currentColor; }

/* ── правки по просмотру 09.10.2026 ── */
/* рукописные подписи вокруг подборки рассчитаны на шрифт эталона — с Nunito налезают друг на друга */
.request__content-item { display: none; }
/* групповое фото — широким кадром, лица в верхней трети */
.ro-team__group img { aspect-ratio: 16 / 7; object-fit: cover; object-position: 50% 28%; }
@media (max-width: 767px) { .ro-team__group img { aspect-ratio: 4 / 3; } }
/* подпись над формой — спокойнее и без переносов по слову */
.wish__form-detail { font-family: var(--font2); font-weight: 800; color: var(--ro-teal-deep); }
/* баннер cookie — в светлой палитре сайта */
.mcb { background: rgba(255, 255, 255, .97); color: var(--ro-ink); box-shadow: 0 -10px 30px rgba(14, 101, 115, .16); font-family: var(--font1); }
.mcb__txt { color: var(--gray-text); }
.mcb__txt a { color: var(--ro-teal-deep); }
.mcb__btn--ok { background: linear-gradient(135deg, var(--ro-sun) 0%, var(--ro-sun-2) 100%); color: #2E1D08; }
.mcb__btn--ok:hover { background: linear-gradient(135deg, #FFC15E 0%, #F48A2C 100%); }
/* строка цены: длинная подпись («прямой из Омска», «декабрь, 10 ночей») не должна вылезать из карточки */
.tour-item__price { flex-wrap: wrap; row-gap: 2px; max-width: 100%; }
@media (max-width: 575px) { .tour-item__price-lbl { flex-basis: 100%; } .tour-item__price-from { margin-left: 0; } }
