@charset "UTF-8";
/* smc kimarus wcms */

@media (max-width: 319px) {

	.hero__content {
		justify-content: space-between;
	}

	.hero__content::before {
		content: none;
	}

	.hero__title {
		display: none;
	}

	.hero__subtitle {
		display: none;
	}

	.hero__actions {
		display: none;
	}

	.hero__weather {
		top: 90px;
		right: 2px;
	}

	.advantages {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 5px;
		padding: 24px 24px 24px 24px;
		transform: translateY(-60%);
		opacity: 0.8;
	}

	.advantages__item {
		min-width: 0;
		flex-direction: row;
		align-items: flex-start;
		/*padding: 0 8px 0 8px;
		border-right: 1px solid #e5e1d8ff;*/
	}

	/*.advantages__item:nth-child(3n) {
		padding-right: 0;
		border-right: none;
	}
	.advantages__item:nth-child(3n+1) {
		padding-left: 0;
	}*/
	.advantages__title {
		text-align: left;
	}

	.advantages__subtitle {
		text-align: left;
	}

	.advantages__separator {
		width: 100%;
		height: 1px;
	}

	.description__container {
		flex-direction: column;
		row-gap: 24px;
		column-gap: 0px;
	}

	.description__content {
		order: 2;
		flex-basis: auto;
		width: 100%;
	}

	.description__title {
		font-size: 26px;
	}

	.description__features {
		row-gap: 6px;
	}

	.description__price-block {
		padding: 6px 6px 6px 6px;
	}

	.description__button-text {
		display: none;
	}

	.description__gallery {
		order: 1;
		flex-direction: column;
		row-gap: 6px;
		flex-basis: auto;
	}

	.description__gallery-main {
		flex-basis: auto;
		width: 100%;
		/*height: 340px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.description__gallery-side {
		flex-direction: row;
		flex-basis: auto;
		column-gap: 6px;
		row-gap: 0px;
	}

	.description__gallery-item {
		/*height: 170px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.service {
		display: grid;
		grid-auto-flow: row;
		justify-content: center;
		row-gap: 12px;
		padding: 16px 12px 16px 12px;
		border-radius: 14px 14px 14px 14px;
	}

	.service__item {
		justify-content: flex-start;
		gap: 10px;
	}

	.service__separator {
		display: none;
	}

	.service__icon {
		width: 28px;
		height: 28px;
	}

	.service__icon svg {
		width: 22px;
		height: 22px;
	}

	.service__title {
		font-size: 13px;
	}

	.service__text {
		font-size: 12px;
	}

	.faq__title {
		font-size: 19px;
	}

	.faq__subtitle {
		font-size: 13px;
	}

	.faq__list {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.faq__question {
		gap: 8px;
		padding: 12px 12px 12px 12px;
	}

	.faq__number {
		width: 22px;
		height: 22px;
		font-size: 12px;
	}

	.faq__question-text {
		font-size: 14px;
	}

	.faq__toggle {
		width: 22px;
		height: 22px;
	}

	.faq__answer-text {
		font-size: 13px;
		padding: 14px 12px 16px 12px;
	}

	.faq__cta {
		background-image: none;
	}

	.faq__cta::before {
		content: none;
	}

	.faq__cta-content {
		flex-basis: auto;
		padding: 18px 14px 18px 14px;
	}

	.faq__cta-title {
		font-size: 19px;
	}

	.faq__cta-text {
		font-size: 13px;
		margin: 0 0 16px 0;
	}

	.faq__cta-button {
		padding: 10px 16px 10px 16px;
		font-size: 13px;
	}

	.reviews {
		padding: 24px 0 24px 0;
	}

	.reviews__header {
		margin: 0 0 24px 0;
	}

	.reviews__title {
		font-size: 1.375rem;
		margin: 0 0 12px 0;
	}

	.reviews__separator {
		margin: 0 0 12px 0;
	}

	.reviews__subtitle {
		font-size: 0.8125rem;
	}

	.reviews__carousel {
		gap: 6px;
		margin: 0 0 16px 0;
	}

	.reviews__arrow {
		width: 32px;
		height: 32px;
	}

	.reviews__arrow-icon {
		font-size: 16px;
	}

	.reviews__content {
		padding: 12px 12px 12px 12px;
	}

	.reviews__card {
		width: 100%;
	}

	.reviews__card-header {
		flex-wrap: wrap;
	}

	.reviews__rating {
		margin: 0 0 0 auto;
	}

	.reviews__photo {
		aspect-ratio: 16 / 9;
	}

	.reviews__dots {
		margin: 0 0 24px 0;
	}

	.reviews__cta {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		padding: 20px 16px 20px 16px;
		text-align: center;
	}

	.reviews__cta-icon {
		display: none;
	}

	.reviews__cta-button {
		width: 100%;
		justify-content: center;
	}

	.video {
		padding: 32px 12px 32px 12px;
	}

	.video__header {
		margin: 0 0 24px 0;
	}

	.video__title {
		font-size: 20px;
	}

	.video__subtitle {
		font-size: 13px;
	}

	.video__card {
		padding: 14px 14px 14px 14px;
	}

	.video__row {
		grid-template-columns: 1fr;
		row-gap: 20px;
	}

	.video__info-title {
		font-size: 18px;
	}

	.video__info-text {
		font-size: 13px;
	}

	.video__timeline {
		margin: 24px 0 18px 0;
	}

	.video__timeline-heading {
		gap: 12px;
		margin: 0 0 20px 0;
	}

	.video__timeline-title {
		font-size: 15px;
	}

	.video__timeline-track {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 18px;
	}

	.video__timeline-track::before {
		content: none;
	}

	.video__timeline-item {
		flex: 0 0 50%;
	}

	.video__timeline-label {
		max-width: 90px;
		font-size: 11px;
	}

	.video__cta {
		flex-direction: column;
		align-items: flex-start;
		padding: 18px 18px 18px 18px;
	}

	.video__cta-button {
		width: 100%;
		justify-content: center;
		font-size: 14px;
	}

	.map {
		padding: 32px 10px 32px 10px;
	}

	.map__title {
		font-size: 20px;
	}

	.map__subtitle {
		margin: 0 0 20px 0;
		font-size: 13px;
	}

	.map__content {
		flex-direction: column;
		padding: 8px 8px 8px 8px;
	}

	.map__info {
		width: 100%;
		padding: 10px 10px 10px 10px;
	}

	.map__location {
		width: 100%;
		align-items: flex-start;
		row-gap: 12px;
	}

	.map__location-text {
		flex-grow: 1;
	}

	.map__location-icon {
		width: 44px;
		height: 44px;
	}

	.map__feature-text {
		font-size: 13px;
	}

	.map__button {
		width: 100%;
	}

	.map__canvas {
		min-height: 200px;
		margin: 12px 0 0 0;
	}

	.contacts {
		padding: 32px 12px 32px 12px;
	}

	.contacts__title {
		font-size: 22px;
	}

	.contacts__subtitle {
		font-size: 14px;
	}

	.contacts__content {
		padding: 16px 12px 4px 12px;
	}

	.contacts__content-title {
		font-size: 20px;
	}

	.contacts__grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}

	.contacts__item:nth-child(3n+2),
	.contacts__item:nth-child(3n+3) {
		border-left: none;
	}

	.contacts__item:nth-child(n+4) {
		border-top: none;
	}

	.contacts__item:nth-child(n+2) {
		border-top: 1px solid #ece7deff;
	}

	a.contacts__item {
		padding: 12px 0 12px 0;
	}

	.contacts__cta {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 16px;
		padding: 20px 16px 20px 16px;
	}

	.contacts__cta-button {
		width: 100%;
		justify-content: center;
	}

	.weather {
		padding: 32px 8px 32px 8px;
	}

	.weather__title {
		font-size: 20px;
	}

	.weather__card {
		padding: 12px;
	}

	.weather__location {
		flex-direction: column;
		align-items: center;
		gap: 10px;
	}

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

	.weather__current {
		flex-direction: column;
		align-items: center;
		padding: 0 0 16px 0;
		border-right: none;
		border-bottom: 1px solid #e3e8efff;
	}

	.weather__current-info {
		text-align: center;
	}


	.weather__current-temp {
		font-size: 30px;
	}

	.weather__params {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.weather__sea-grid {
		grid-template-columns: 1fr;
	}

	.rtcam {
		padding: 40px 12px 48px 12px;
	}

	.rtcam__title {
		font-size: 20px;
	}

	.rtcam__player,
	.rtcam__player-image,
	.rtcam__player-video {
		height: 220px;
	}

	.rtcam__location-subtitle {
		display: none;
	}

	.rtcam__fullscreen-text {
		display: none;
	}

	.rtcam__stats {
		flex-wrap: wrap;
		gap: 10px;
		justify-content: center;
		padding: 10px 12px 10px 12px;
	}

	.rtcam__stat-divider {
		display: none;
	}

	.rtcam__stat-label {
		display: none;
	}

	.rtcam__cta {
		flex-wrap: wrap;
		padding: 16px 16px 16px 16px;
	}

	.rtcam__cta-button {
		width: 100%;
		justify-content: center;
	}

	.t3d {
		padding: 32px 12px;
	}

	.t3d__title {
		font-size: 20px;
	}

	.t3d__panel {
		padding: 12px;
	}

	.t3d__content {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.t3d__hint {
		padding: 0;
	}

	.t3d__footer {
		flex-wrap: wrap;
		padding: 14px;
	}

	.t3d__footer-btn {
		width: 100%;
		justify-content: center;
	}

	.options {
		padding: 20px 12px;
	}

	.options__title {
		font-size: 18px;
	}

	.options__subtitle {
		font-size: 12px;
	}

	.options__contact {
		padding: 16px 12px;
	}

	.options__contact-top {
		/*flex-direction: column;*/
		align-items: center;
		text-align: center;
	}

	.options__contact-icon {
		width: 52px;
		height: 52px;
		margin: 0 0 12px 0;
	}

	.options__contact-title {
		font-size: 15px;
	}

	.options__contact-text {
		font-size: 13px;
	}

	.options__contact-list {
		grid-template-columns: 1fr;
	}

	.options__contact-button {
		width: 100%;
		padding: 12px 20px;
		font-size: 14px;
	}

	.options__remote {
		padding: 14px;
	}

	.options__remote-body {
		margin: 12px 0 16px 0;
	}

	.options__remote-title {
		font-size: 15px;
	}

	.options__remote-actions {
		/*align-items: flex-start;*/
		align-items: center;
		width: 100%;
	}

	.options__remote-button {
		width: 100%;
		justify-content: center;
		font-size: 13px;
	}

	.mixcontent {
		padding: 24px 10px;
	}

	.mixcontent__title {
		font-size: 20px;
	}

	.mixcontent__subtitle {
		font-size: 13px;
	}

	.mixcontent__main {
		padding: 16px;
		border-radius: 12px 12px 12px 12px;
	}

	.mixcontent__note {
		flex-direction: column;
		gap: 8px;
		padding: 12px 14px 12px 14px;
	}

	.mixcontent__heading {
		font-size: 16px;
	}

	.mixcontent__text,
	.mixcontent__list-item {
		font-size: 13px;
	}
}

@media (min-width: 320px) and (max-width: 479px) {

	.hero__content {
		justify-content: space-between;
	}

	.hero__content::before {
		content: none;
	}

	.hero__title {
		display: none;
	}

	.hero__subtitle {
		display: none;
	}

	.hero__actions {
		display: none;
	}

	.hero__weather {
		top: 90px;
		right: 2px;
	}

	.advantages {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 5px;
		padding: 24px 24px 24px 24px;
		transform: translateY(-60%);
		opacity: 0.8;
	}

	.advantages__item {
		min-width: 0;
		flex-direction: row;
		align-items: flex-start;
		/*padding: 0 8px 0 8px;
		border-right: 1px solid #e5e1d8ff;*/
	}

	/*.advantages__item:nth-child(3n) {
		padding-right: 0;
		border-right: none;
	}
	.advantages__item:nth-child(3n+1) {
		padding-left: 0;
	}*/
	.advantages__title {
		text-align: left;
	}

	.advantages__subtitle {
		text-align: left;
	}

	.advantages__separator {
		width: 100%;
		height: 1px;
	}

	.description__container {
		flex-direction: column;
		row-gap: 24px;
		column-gap: 0px;
	}

	.description__content {
		order: 2;
		flex-basis: auto;
		width: 100%;
	}

	.description__title {
		font-size: 26px;
	}

	.description__features {
		row-gap: 6px;
	}

	.description__price-block {
		padding: 8px 8px 8px 8px;
	}

	.description__button {
		padding: 7px 11px 7px 11px;
	}

	.description__button-text {
		white-space: normal;
	}

	.description__gallery {
		order: 1;
		flex-direction: column;
		row-gap: 12px;
		flex-basis: auto;
	}

	.description__gallery-main {
		flex-basis: auto;
		width: 100%;
		/*height: 340px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.description__gallery-side {
		/*height: auto;*/
		flex-direction: row;
		flex-basis: auto;
		column-gap: 12px;
		row-gap: 0px;
	}

	.description__gallery-item {
		/*height: 170px;*/
		height: auto;
		aspect-ratio: 2 / 1;
	}

	.service {
		display: grid;
		grid-auto-flow: row;
		justify-content: center;
		row-gap: 16px;
		padding: 20px 16px 20px 16px;
		border-radius: 16px 16px 16px 16px;
	}

	.service__item {
		justify-content: flex-start;
		gap: 12px;
	}

	.service__separator {
		display: none;
	}

	.service__icon {
		width: 32px;
		height: 32px;
	}

	.service__icon svg {
		width: 26px;
		height: 26px;
	}

	.service__title {
		font-size: 14px;
	}

	.service__text {
		font-size: 13px;
	}

	.faq__title {
		font-size: 22px;
	}

	.faq__subtitle {
		font-size: 15px;
	}

	.faq__list {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.faq__question {
		gap: 10px;
		padding: 14px 14px 14px 14px;
	}

	.faq__number {
		width: 26px;
		height: 26px;
		font-size: 13px;
	}

	.faq__question-text {
		font-size: 15px;
	}

	.faq__toggle {
		width: 26px;
		height: 26px;
	}

	.faq__answer-text {
		font-size: 14px;
		padding: 16px 14px 18px 14px;
	}

	.faq__cta {
		background-image: none;
	}

	.faq__cta::before {
		content: none;
	}

	.faq__cta-content {
		flex-basis: auto;
		padding: 24px 20px 24px 20px;
	}

	.faq__cta-title {
		font-size: 22px;
	}

	.faq__cta-text {
		font-size: 14px;
		margin: 0 0 20px 0;
	}

	.faq__cta-button {
		padding: 12px 20px 12px 20px;
		font-size: 14px;
	}

	.reviews {
		padding: 28px 0 28px 0;
	}

	.reviews__header {
		margin: 0 0 28px 0;
	}

	.reviews__title {
		font-size: 1.5rem;
		margin: 0 0 14px 0;
	}

	.reviews__separator {
		margin: 0 0 14px 0;
	}

	.reviews__subtitle {
		font-size: 0.875rem;
	}

	.reviews__carousel {
		gap: 8px;
		margin: 0 0 18px 0;
	}

	.reviews__arrow {
		width: 36px;
		height: 36px;
	}

	.reviews__arrow-icon {
		font-size: 18px;
	}

	.reviews__content {
		padding: 16px 16px 16px 16px;
	}

	.reviews__card {
		width: 100%;
	}

	.reviews__card-header {
		flex-wrap: wrap;
	}

	.reviews__rating {
		margin: 0 0 0 auto;
	}

	.reviews__photo {
		aspect-ratio: 16 / 9;
	}

	.reviews__dots {
		margin: 0 0 28px 0;
	}

	.reviews__cta {
		flex-direction: column;
		align-items: center;
		gap: 14px;
		padding: 24px 20px 24px 20px;
		text-align: center;
	}

	.reviews__cta-button {
		width: 100%;
		justify-content: center;
	}

	.video {
		padding: 40px 16px 40px 16px;
	}

	.video__header {
		margin: 0 0 28px 0;
	}

	.video__title {
		font-size: 24px;
	}

	.video__subtitle {
		font-size: 14px;
	}

	.video__card {
		padding: 18px 18px 18px 18px;
	}

	.video__row {
		grid-template-columns: 1fr;
		row-gap: 24px;
	}

	.video__info-title {
		font-size: 20px;
	}

	.video__timeline {
		margin: 28px 0 20px 0;
	}

	.video__timeline-track {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 20px;
	}

	.video__timeline-track::before {
		content: none;
	}

	.video__timeline-item {
		flex: 0 0 33%;
	}

	.video__timeline-label {
		max-width: 100px;
		font-size: 12px;
	}

	.video__cta {
		flex-direction: column;
		align-items: flex-start;
	}

	.video__cta-button {
		width: 100%;
		justify-content: center;
	}

	.map {
		padding: 40px 12px 40px 12px;
	}

	.map__title {
		font-size: 24px;
	}

	.map__subtitle {
		margin: 0 0 24px 0;
		font-size: 14px;
	}

	.map__content {
		flex-direction: column;
		padding: 10px 10px 10px 10px;
	}

	.map__info {
		width: 100%;
		padding: 12px 12px 12px 12px;
	}

	.map__location {
		width: 100%;
	}

	.map__location-text {
		flex-grow: 1;
	}

	.map__location-icon {
		width: 48px;
		height: 48px;
	}

	.map__feature-text {
		font-size: 14px;
	}

	.map__button {
		width: 100%;
	}

	.map__canvas {
		min-height: 240px;
		margin: 16px 0 0 0;
	}

	.contacts {
		padding: 40px 16px 40px 16px;
	}

	.contacts__title {
		font-size: 26px;
	}

	.contacts__subtitle {
		font-size: 15px;
	}

	.contacts__content {
		padding: 20px 16px 4px 16px;
	}

	.contacts__grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}

	.contacts__item:nth-child(3n+2),
	.contacts__item:nth-child(3n+3) {
		border-left: none;
	}

	.contacts__item:nth-child(n+4) {
		border-top: none;
	}

	.contacts__item:nth-child(n+2) {
		border-top: 1px solid #ece7deff;
	}

	.contacts__cta {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 20px;
		padding: 24px 20px 24px 20px;
	}

	.contacts__cta-button {
		width: 100%;
		justify-content: center;
	}

	.weather {
		padding: 40px 12px 40px 12px;
	}

	.weather__title {
		font-size: 24px;
	}

	.weather__card {
		padding: 16px;
	}

	.weather__location {
		flex-direction: column;
		align-items: center;
		gap: 12px;
	}

	.weather__main {
		flex-direction: column;
		gap: 20px;
	}

	.weather__current {
		flex-direction: column;
		align-items: center;
		padding: 0 0 20px 0;
		border-right: none;
		border-bottom: 1px solid #e3e8efff;
	}

	.weather__current-info {
		text-align: center;
	}


	.weather__current-temp {
		font-size: 36px;
	}

	.weather__params {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.weather__sea-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.weather__sea-item:last-child {
		grid-column: 1 / -1;
	}

	.rtcam__player,
	.rtcam__player-image,
	.rtcam__player-video {
		height: 260px;
	}

	.rtcam__location {
		gap: 8px;
		padding: 8px 12px 8px 10px;
	}

	.rtcam__location-subtitle {
		display: none;
	}

	.rtcam__fullscreen-text {
		display: none;
	}

	.rtcam__fullscreen {
		padding: 10px 10px 10px 10px;
	}

	.rtcam__stats {
		flex-wrap: wrap;
		gap: 12px;
		justify-content: center;
		padding: 6px 14px 6px 14px;
	}

	.rtcam__stat-divider {
		display: none;
	}

	.rtcam__stat-label {
		display: none;
	}

	.rtcam__cta {
		flex-wrap: wrap;
		padding: 18px 18px 18px 18px;
	}

	.rtcam__cta-button {
		width: 100%;
		justify-content: center;
	}

	.t3d {
		padding: 40px 16px;
	}

	.t3d__title {
		font-size: 24px;
	}

	.t3d__subtitle {
		font-size: 15px;
	}

	.t3d__content {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.t3d__panel {
		padding: 16px;
	}

	.t3d__badge {
		padding: 8px 10px;
		font-size: 12px;
	}

	.t3d__nav-up {
		width: 36px;
		height: 36px;
		bottom: 56px;
	}

	.t3d__footer {
		flex-wrap: wrap;
		padding: 16px;
	}

	.t3d__footer-btn {
		width: 100%;
		justify-content: center;
	}

	.options {
		padding: 24px 16px;
	}

	.options__title {
		font-size: 20px;
	}

	.options__subtitle {
		font-size: 13px;
	}

	.options__contact {
		padding: 20px 16px;
	}

	.options__contact-top {
		/*flex-direction: column;*/
		align-items: center;
		text-align: center;
	}

	.options__contact-icon {
		margin: 0 0 14px 0;
	}

	.options__contact-title {
		font-size: 17px;
	}

	.options__contact-text {
		font-size: 14px;
	}

	.options__contact-list {
		grid-template-columns: 1fr;
	}

	.options__contact-button {
		width: 100%;
		padding: 14px 24px;
	}

	.options__remote {
		padding: 16px;
	}

	.options__remote-body {
		margin: 14px 0 18px 0;
	}

	.options__remote-actions {
		/*align-items: flex-start;*/
		align-items: center;
		width: 100%;
	}

	.options__remote-button {
		width: 100%;
		justify-content: center;
	}

	.mixcontent {
		padding: 32px 12px;
	}

	.mixcontent__header {
		margin: 0 0 28px 0;
	}

	.mixcontent__title {
		font-size: 22px;
	}

	.mixcontent__divider {
		margin: 0 auto 16px auto;
	}

	.mixcontent__subtitle {
		font-size: 14px;
	}

	.mixcontent__main {
		padding: 20px;
		border-radius: 14px 14px 14px 14px;
	}

	.mixcontent__note {
		flex-direction: column;
		gap: 10px;
		margin: 0 0 24px 0;
		padding: 14px 16px 14px 16px;
	}

	.mixcontent__block {
		margin: 0 0 24px 0;
	}

	.mixcontent__heading {
		font-size: 17px;
	}

	.mixcontent__text,
	.mixcontent__list-item {
		font-size: 14px;
	}

	.mixcontent__separator {
		margin: 0 0 24px 0;
	}

}

@media (min-width: 480px) and (max-width: 767px) {

	.hero__content {
		justify-content: space-between;
	}

	.hero__content::before {
		content: none;
	}

	.hero__title {
		display: none;
	}

	.hero__subtitle {
		display: none;
	}

	.hero__actions {
		display: none;
	}

	.advantages {
		display: grid;
		grid-template-columns: 1fr 1fr;
		row-gap: 11px;
		padding: 24px 24px 24px 24px;
		transform: translateY(-40%);
		opacity: 0.95;
	}

	.advantages__item {
		min-width: 0;
		flex-direction: row;
		align-items: flex-start;
		/*padding: 0 8px 0 8px;
		border-right: 1px solid #e5e1d8ff;*/
	}

	/*.advantages__item:nth-child(3n) {
		padding-right: 0;
		border-right: none;
	}
	.advantages__item:nth-child(3n+1) {
		padding-left: 0;
	}*/
	.advantages__title {
		text-align: left;
	}

	.advantages__subtitle {
		text-align: left;
	}

	.advantages__separator {
		display: none;
	}

	.description__container {
		flex-direction: column;
		row-gap: 24px;
		column-gap: 0px;
	}

	.description__content {
		order: 2;
		flex-basis: auto;
		width: 100%;
	}

	.description__title {
		font-size: 26px;
	}

	.description__price-block {
		padding: 16px 16px 16px 16px;
	}

	.description__gallery {
		order: 1;
		flex-direction: column;
		row-gap: 12px;
	}

	.description__gallery-main {
		flex-basis: auto;
		width: 100%;
		/*height: 340px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.description__gallery-side {
		flex-direction: row;
		flex-basis: auto;
		column-gap: 12px;
		row-gap: 0px;
	}

	.description__gallery-item {
		/*height: 170px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.service {
		display: grid;
		grid-auto-flow: row;
		justify-content: center;
		row-gap: 20px;
		padding: 24px 20px 24px 20px;
	}

	.service__item {
		justify-content: flex-start;
	}

	.service__separator {
		display: none;
	}

	.faq__title {
		font-size: 26px;
	}

	.faq__list {
		grid-template-columns: 1fr;
	}

	.faq__question {
		gap: 12px;
		padding: 18px 18px 18px 18px;
	}

	.faq__question-text {
		font-size: 16px;
	}

	.faq__cta-content {
		flex-basis: auto;
		padding: 32px 24px 32px 24px;
	}

	.reviews {
		padding: 32px 0 32px 0;
	}

	.reviews__header {
		margin: 0 0 32px 0;
	}

	.reviews__title {
		font-size: 1.75rem;
		margin: 0 0 16px 0;
	}

	.reviews__separator {
		margin: 0 0 16px 0;
	}

	.reviews__subtitle {
		font-size: 0.9375rem;
	}

	.reviews__carousel {
		gap: 10px;
		margin: 0 0 20px 0;
	}

	.reviews__arrow {
		width: 40px;
		height: 40px;
	}

	.reviews__arrow-icon {
		font-size: 20px;
	}

	.reviews__content {
		padding: 20px 20px 20px 20px;
	}

	.reviews__card {
		width: 100%;
	}

	.reviews__card-header {
		flex-wrap: wrap;
	}

	.reviews__rating {
		margin: 0 0 0 auto;
	}

	.reviews__photo {
		aspect-ratio: 16 / 9;
	}

	.reviews__dots {
		margin: 0 0 32px 0;
	}

	.reviews__cta {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: flex-start;
		gap: 16px;
		padding: 28px 24px 28px 24px;
	}

	.reviews__cta-info {
		flex-grow: 0;
	}

	.reviews__cta-button {
		width: 100%;
		justify-content: center;
	}

	.video {
		padding: 48px 16px 48px 16px;
	}

	.video__header {
		margin: 0 0 32px 0;
	}

	.video__title {
		font-size: 26px;
	}

	.video__subtitle {
		font-size: 15px;
	}

	.video__card {
		padding: 20px 20px 20px 20px;
	}

	.video__row {
		grid-template-columns: 1fr;
		row-gap: 28px;
	}

	.video__info-title {
		font-size: 22px;
	}

	.video__timeline {
		margin: 32px 0 24px 0;
	}

	.video__timeline-track {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 24px;
	}

	.video__timeline-track::before {
		content: none;
	}

	.video__timeline-item {
		flex: 0 0 33%;
	}

	.video__cta {
		flex-direction: column;
		align-items: flex-start;
	}

	.video__cta-button {
		width: 100%;
		justify-content: center;
	}

	.map {
		padding: 56px 16px 56px 16px;
	}

	.map__title {
		font-size: 28px;
	}

	.map__subtitle {
		margin: 0 0 32px 0;
		font-size: 15px;
	}

	.map__content {
		flex-direction: column;
		padding: 12px 12px 12px 12px;
	}

	.map__info {
		width: 100%;
		padding: 16px 16px 16px 16px;
	}

	.map__location {
		width: 100%;
	}

	.map__location-text {
		flex-grow: 1;
	}

	.map__canvas {
		min-height: 320px;
		margin: 20px 0 0 0;
	}

	.contacts {
		padding: 48px 16px 48px 16px;
	}

	.contacts__title {
		font-size: 30px;
	}

	.contacts__content {
		padding: 20px 20px 4px 20px;
	}

	.contacts__grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto auto auto;
	}

	.contacts__item:nth-child(3n+2),
	.contacts__item:nth-child(3n+3) {
		border-left: none;
	}

	.contacts__item:nth-child(n+4) {
		border-top: none;
	}

	.contacts__item:nth-child(2n) {
		border-left: 1px solid #ece7deff;
	}

	.contacts__item:nth-child(n+3) {
		border-top: 1px solid #ece7deff;
	}

	.contacts__cta {
		flex-direction: column;
		align-items: flex-start;
		row-gap: 20px;
	}

	.contacts__cta-button {
		width: 100%;
		justify-content: center;
	}

	.weather__title {
		font-size: 30px;
	}

	.weather__card {
		padding: 20px;
	}

	.weather__location {
		flex-direction: column;
		align-items: center;

		gap: 12px;
	}

	.weather__main {
		flex-direction: column;
		gap: 24px;
	}

	.weather__current {
		justify-content: center;
		padding: 0 0 20px 0;
		border-right: none;
		border-bottom: 1px solid #e3e8efff;
	}

	.weather__params {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.weather__sea-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	.weather__sea-item:last-child {
		grid-column: 1 / -1;
	}


	.rtcam__player,
	.rtcam__player-image,
	.rtcam__player-video {
		height: 320px;
	}

	.rtcam__fullscreen-text {
		display: none;
	}

	.rtcam__stats {
		flex-wrap: wrap;
		gap: 12px;
		justify-content: center;
		padding: 6px 16px 6px 16px;
	}

	.rtcam__stat-divider {
		display: none;
	}

	.rtcam__stat-label {
		display: none;
	}

	.rtcam__cta {
		flex-wrap: wrap;
	}

	.rtcam__cta-button {
		width: 100%;
		justify-content: center;
	}

	.t3d {
		padding: 48px 20px;
	}

	.t3d__title {
		font-size: 28px;
	}

	.t3d__content {
		grid-template-columns: 1fr;
	}

	.t3d__panel {
		padding: 20px;
	}

	.t3d__footer {
		flex-wrap: wrap;
		padding: 20px;
	}

	.t3d__footer-btn {
		width: 100%;
		justify-content: center;
	}

	.options {
		padding: 32px 20px;
	}

	.options__title {
		font-size: 24px;
	}

	.options__subtitle {
		font-size: 14px;
	}

	.options__contact {
		padding: 24px 20px;
	}

	.options__contact-top {
		/*flex-direction: column;*/
		align-items: center;
		text-align: center;
	}

	.options__contact-icon {
		margin: 0 0 16px 0;
	}

	.options__contact-list {
		grid-template-columns: repeat(2, 1fr);
	}

	.options__contact-button {
		width: 100%;
	}

	.options__remote {
		/*flex-direction: column;*/
		padding: 20px;
	}

	.options__remote-body {
		margin: 16px 0 20px 0;
	}

	.options__remote-actions {
		/*align-items: flex-start;*/
		align-items: center;
		width: 100%;
	}

	.options__remote-button {
		width: 100%;
		justify-content: center;
	}

	.mixcontent {
		padding: 40px 16px;
	}

	.mixcontent__header {
		margin: 0 0 32px 0;
	}

	.mixcontent__title {
		font-size: 24px;
	}

	.mixcontent__subtitle {
		font-size: 15px;
	}

	.mixcontent__main {
		padding: 28px;
		border-radius: 16px 16px 16px 16px;
	}

	.mixcontent__note {
		flex-direction: column;
		gap: 12px;
		padding: 16px 18px 16px 18px;
	}

	.mixcontent__heading {
		font-size: 18px;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {

	.hero__content {
		justify-content: space-between;
	}

	.hero__content::before {
		content: none;
	}

	.hero__title {
		display: none;
	}

	.hero__subtitle {
		display: none;
	}

	.hero__actions {
		display: none;
	}

	.advantages {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		row-gap: 11px;
		padding: 24px 24px 24px 24px;
		transform: translateY(-30%);
	}

	.advantages__item {
		min-width: 0;
		flex-direction: row;
		align-items: flex-start;
		/*padding: 0 8px 0 8px;
		border-right: 1px solid #e5e1d8ff;*/
	}

	/*.advantages__item:nth-child(3n) {
		padding-right: 0;
		border-right: none;
	}
	.advantages__item:nth-child(3n+1) {
		padding-left: 0;
	}*/
	.advantages__title {
		text-align: left;
	}

	.advantages__subtitle {
		text-align: left;
	}

	.advantages__separator {
		display: none;
	}

	.description__container {
		flex-direction: column;
		row-gap: 24px;
		column-gap: 0px;
	}

	.description__content {
		order: 2;
		flex-basis: auto;
		width: 100%;
	}

	.description__title {
		font-size: 26px;
	}

	.description__price-block {
		padding: 16px 16px 16px 16px;
	}

	.description__gallery {
		order: 1;
		flex-direction: column;
		row-gap: 12px;
	}

	.description__gallery-main {
		flex-basis: auto;
		width: 100%;
		/*height: 340px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.description__gallery-side {
		flex-direction: row;
		flex-basis: auto;
		column-gap: 12px;
		row-gap: 0px;
	}

	.description__gallery-item {
		/*height: 170px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.service {
		display: grid;
		grid-template-columns: repeat(2, max-content);
		justify-content: center;
		column-gap: 48px;
		row-gap: 24px;
		padding: 28px 24px 28px 24px;
	}

	.service__item {
		justify-content: flex-start;
	}

	.service__separator {
		display: none;
	}

	.faq__title {
		font-size: 32px;
	}

	/*.faq__cta-content { */
	/* empty */
	/*flex-basis: auto;*/
	/*}*/

	.reviews {
		padding: 36px 0 36px 0;
	}

	.reviews__header {
		margin: 0 0 36px 0;
	}

	.reviews__title {
		font-size: 2.125rem;
		margin: 0 0 16px 0;
	}

	.reviews__subtitle {
		font-size: 1rem;
	}

	.reviews__carousel {
		gap: 14px;
	}

	.reviews__arrow {
		width: 44px;
		height: 44px;
	}

	.reviews__content {
		padding: 24px 24px 24px 24px;
	}

	.reviews__card {
		width: calc((100% - 24px) / 2);
	}

	.video {
		padding: 64px 20px 64px 20px;
	}

	.video__title {
		font-size: 30px;
	}

	.video__card {
		padding: 28px 28px 28px 28px;
	}

	.video__row {
		grid-template-columns: 1fr;
		row-gap: 32px;
	}

	.video__player {
		aspect-ratio: 16 / 9;
	}

	.map {
		padding: 64px 20px 64px 20px;
	}

	.map__title {
		font-size: 32px;
	}

	.map__subtitle {
		margin: 0 0 36px 0;
		font-size: 16px;
	}

	.map__content {
		padding: 12px 12px 12px 12px;
	}

	.map__info {
		width: 300px;
		padding: 20px 20px 20px 20px;
	}

	.map__canvas {
		min-height: 420px;
	}

	.contacts {
		padding: 64px 20px 64px 20px;
	}

	.contacts__title {
		font-size: 36px;
	}

	.contacts__content {
		padding: 24px 24px 8px 24px;
	}

	.weather__main {
		flex-direction: column;
		gap: 24px;
	}

	.weather__current {
		justify-content: center;
		padding: 0 0 24px 0;
		border-right: none;
		border-bottom: 1px solid #e3e8efff;
	}

	.rtcam__player,
	.rtcam__player-image,
	.rtcam__player-video {
		height: 420px;
	}

	.rtcam__stats {
		padding: 18px 20px 18px 20px;
	}

	.rtcam__stat-label {
		display: none;
	}

	.t3d {
		padding: 60px 24px;
	}

	.t3d__title {
		font-size: 34px;
	}

	.t3d__content {
		grid-template-columns: 1fr 300px;
		gap: 24px;
	}

	.t3d__footer {
		flex-wrap: wrap;
	}

	.t3d__footer-btn {
		width: 100%;
		justify-content: center;
	}

	.options {
		padding: 40px 28px;
	}

	.options__title {
		font-size: 28px;
	}

	.options__remote-body {
		margin: 0 0 20px 0;
	}

	.options__remote-actions {
		/*align-items: flex-start;*/
		align-items: center;
		width: 100%;
		/*margin: 0 0 0 68px;*/
	}

	.mixcontent {
		padding: 48px 20px;
	}

	.mixcontent__title {
		font-size: 28px;
	}

	.mixcontent__main {
		padding: 36px;
	}
}

@media (min-width: 1024px) and (max-width: 1279px) {

	.description__container {
		column-gap: 28px;
	}

	.description__content {
		flex-basis: 400px;
		width: 400px;
	}

	.description__title {
		font-size: 26px;
	}

	.description__gallery-main {
		flex-basis: 340px;
		width: 340px;
		/*height: 340px;*/
		height: auto;
		aspect-ratio: 16 / 10;
	}

	.description__gallery-side {
		flex-basis: 220px;
	}
}

@media (hover: hover) and (pointer: fine)
/*and (min-width: 768px)*/
	{

	.rtcam__stats {
		overflow: hidden;
		transition: max-height .35s ease, padding .35s ease, opacity .25s ease;
	}

	.rtcam__fullscreen-text {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		transition: max-width .35s ease, margin-left .35s ease, opacity .25s ease;
	}

	.rtcam__location-text {
		overflow: hidden;
		transition: max-width .35s ease, opacity .25s ease;
	}

	.rtcam__player:not(:hover) .rtcam__stats {
		max-height: 0;
		padding: 0 32px;
		opacity: 0;
	}

	.rtcam__player:not(:hover) .rtcam__fullscreen-text {
		max-width: 0;
		margin-left: 0;
		opacity: 0;
	}

	.rtcam__player:not(:hover) .rtcam__fullscreen {
		gap: 0;
	}

	.rtcam__player:not(:hover) .rtcam__location-text {
		max-width: 0;
		opacity: 0;
	}

	.rtcam__player:not(:hover) .rtcam__location {
		gap: 0;
	}

	.rtcam__player:hover .rtcam__stats {
		max-height: 70px;
	}

	.rtcam__player:hover .rtcam__fullscreen-text {
		max-width: 160px;
	}

	.rtcam__player:hover .rtcam__location-text {
		max-width: 200px;
	}

	.rtcam__location-title,
	.rtcam__location-subtitle {
		white-space: nowrap;
	}
}