@import url("fonts.css");
@import url("reset.css");	



body, html  {
	font-family:  Arial, Tahoma, sans-serif;
	font-size: 14px;
}

#container{
	margin: 0 auto; /*Указываем чтобы основной контейнер всегда выравнивался по центру экрана */
	min-width: 320px; /*Указываем чтобы минимальный размер контейнера влазил красиво на мин. разр экрана */
	
	
}

#container .wrap { /*для шапки*/
	display:flex;
	justify-content: space-between;
	position: relative;
	
}
#container .header{
	background:  
    url("../images/logo_bg.jpg") no-repeat, url("../images/sky2.jpg");
	background-size:   auto 100% cover; /* Лого-фон сохраняет пропорции по высоте */
	min-height:84px;
	max-width: 100%;
	position:relative;
	box-shadow: 0 0 5px #dadada;
    border-bottom: 1px solid #bfbfbf;
}
/* 1. Новое правило для скрытия части заголовка (Ваш Вариант А) */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    overflow: hidden;
    white-space: nowrap;
}

/* 2. Модифицированное ваше правило для h1 */
#container .header h1 {
    font-family: "mns", "Verdana";
    font-size: 180%;
    color: #ff0000;
    position: absolute;
    text-shadow: 
        0px -1px 0 #fffeb7,
        0px -1px 0 #fffeb7,
        -1px 1px 0 #fffeb7,
        1px 1px 0 #fffeb7;
    z-index: 20;
    left: 20px;
    top: 50px;
    
    /* КРИТИЧЕСКИ ВАЖНЫЕ ДОБАВЛЕНИЯ: */
    /* Ограничиваем видимую ширину заголовка */
    max-width: 340px;
    /* Запрещаем перенос скрытой части на новую строку */
    white-space: nowrap;
    /* Обрезаем всё, что не помещается, без многоточия */
    overflow: hidden;
}
/* Нужно когда применяестя Схема.орг и h1 задействован уже в заголовке статьи, а заголовок страницы меняем c h1 на span */
#container .header .page-title {
	font-family: "mns","Verdana";
	font-size: 180%;
	color:#ff0000; 
	position: absolute; /* Абсолютное позиционирование */
	text-shadow: 
		0px -1px 0 #fffeb7, 
		0px -1px 0 #fffeb7,
		-1px 1px 0 #fffeb7,
		1px 1px 0 #fffeb7;
    z-index: 20; /* Уровень как у логотипа */
	left: 20px;
	top: 50px;
	
}
/* Скрываем логотип */
.logo {
    display: none !important;
}

#container .logo img{
	max-width: none;
	z-index:5;

	position: absolute;
	left:70px;
	top:0px;
}	
#container .header .add_buttun {
  font-family:"Verdana";
  color: #015ce0;
  font-size: 100%;
  left: 50%;
  position: absolute;
  top: -60%;
  margin-top: 17px;
  z-index: 100;
  border: 1px solid #fff;
  padding: 7px 15px; /* Увеличил горизонтальный padding для лучшего вида */
  box-shadow: 0 0 5px #fff;
  border-radius: 20px;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.2); /* Полупрозрачный белый фон */
  
 
}

#container .header .add_buttun:hover {
  background: rgba(255, 255, 255, 1); /* Непрозрачный фон при наведении */
  color: darkblue; /* Темно-синий текст */
  cursor: pointer; /* Курсор "рука" */
}	
.palm {
	margin-top:9px;
	position: absolute;
    right: 0px;
    top: 0px;
    z-index: 10;
}

#container .palm img{
    max-width: 53px; /* ограничиваем размер */
    height: 75;
	margin:0;
	padding:0;
	float: right;
}
}

.image-4{
	position: absolute;
	height:20px;
	max-width: 100%; /* адаптируется под контейнер */
    width: auto; /* сохраняет пропорции */
    height: auto; /* не фиксированная высота */
	left: 70%;                /* Сдвигаем элемент на 50% вправо от родителя */
	
	z-index:11;
}

@media (max-width: 768px) {
  #container .logo img {
    transform: scale(0.8); /* Уменьшаем на 20% (1 - 0.2 = 0.8) */
    transform-origin: left top; /* Масштабируем от верхнего левого угла */
    position: absolute;
    left: 70px;
    top: 10px;
	transition: transform 0.58s ease; /* Плавное изменение transform за 0.3 секунды */
  }
   #container .image-4 {
    transform: scale(0.9); /* Уменьшаем на 20% (1 - 0.2 = 0.8) */
    position: absolute;
	left: 50%;
	transition: transform 0.8s ease; /* Плавное изменение transform за 0.3 секунды */
  }
  #container .header h1 {
        top: 50px;
        font-size: 180%;
    }
}

@media (min-width: 550px) {
  #container .image-4 {
    
    position: absolute;
    left: 30%;
    top: 0px;	
  }
  #container .header h1 {
        top: 50px;
        font-size: 180%;
    }
}

@media (max-width: 550px) {
  #container .image-4 {
    transform: scale(0.7); /* Уменьшаем на 20% (1 - 0.2 = 0.8) */
    transform-origin: left top; /* Масштабируем от верхнего левого угла */
    position: absolute;
    left: 30%;
    top: 0px;
	transition: transform 0.8s ease; /* Плавное изменение transform за 0.3 секунды */
  }
  #container .header h1 {
        top: 50px;
        font-size: 180%;
    }
}

@media (max-width: 380px) {
#container .image-4 {
    transform: scale(0.7); /* Уменьшаем на 20% (1 - 0.2 = 0.8) */
    transform-origin: left top; /* Масштабируем от верхнего левого угла */
    position: absolute;
    left: 15%;
    top: 0px;
	transition: transform 0.8s ease; /* Плавное изменение transform за 0.3 секунды */
  }
  #container .palm img{
    max-width: 48px; /* ограничиваем размер */
    height: 84;
	margin:0;
	padding:0;
}
#container .header h1 {
        top: 50px;
        font-size: 180%;
    }
  
}



#content{
	background-color: #fefcef;
	
	padding: 10px 0; /*Оступы 12 сверху и снзу*/
}


#content .wrap{
	padding: 0 10px;
    margin: 0 auto; /* Центрирование */
}
	
#content .wrap nav{
	display: flex; 
	/*justify-content: space-between;*/
	align-items: center;  /* Выравнивание по вертикали */
}
@media (max-width: 680px){
	#content .wrap nav{
		flex-direction:column;
	}
	.search {
		margin-bottom:3px;
		width: 100%;
	}	
	.search input[type="text"]{
		width: 100% ;
	}
}
@media (max-width: 356px){
	#content .wrap nav{
		flex-direction:column;
	}
	.search {
		margin-bottom:3px;
		 justify-content: space-between;
		
	}	
	.search input[type="text"]{
		width: 100% ;
	}
}

#content  #menu > ul{
	font-family:"Verdana";
	
	padding:2px;
	display: flex; 
	flex-wrap:wrap;
}

#content  #menu li{
	margin-right:5px; 
}
/*блок горизонталного меню состоящий из списка ul и элементов li а текст в них будет ссылокой */
#content #menu ul a{  
	color: #3f3f3f; 
	/*font-weight: bold;*/
	display: inline-block;
	margin-right:10px;
	text-decoration:none; 	
	padding-bottom: 10px; /*Добавили больше отступа снизу всем ссылкам списка чтобы курор перемещать и не исчезало меню*/
}
#content #menu ul a:hover{
	
	color: #cc3300; 
	padding-bottom: 10px; /* Тут было 9 и пригало выпадающие меню Убрали 1px снизу бордер в моменте чтобы не прыгал по высоте при наведении*/
}

/* Подсветка активного пункта меню */
#content #menu ul li a.active {
    color: #cc3300; /* Оранжевый цвет как у заголовков */
 /*   text-decoration: underline; 
    text-underline-offset: 4px; /* Отступ подчеркивания от текста */
}
#content #menu ul .sub_menu {
	position:relative;
	/*border: 1px solid #bfbfbf;*/
	z-index: 100;
}
#content #menu ul .sub_menu > a{
	background: url("../images/triangle.png") no-repeat  right 20%;
	padding-right: 10px;
	
	
}
#content #menu ul .sub_menu ul{
	background-color: #f9f9f9;
	/*border: 1px solid #bfbfbf; */
	box-shadow: 0 0 5px #dadada;
	border-radius: 2px;
	display: none;
	position:absolute;
	left: 0;
	top: 20px;
	width: 200px;
	z-index: 200;	
}
#content #menu ul .sub_menu:hover ul{
	display:block;
	
}

#content  #menu ul .sub_menu ul li{
	margin-right: 0;
	z-index: 200;
}

#content  #menu ul .sub_menu ul a{
	font-weight: normal;
	display: block;
	padding: 10px;
	
	
}
#content  #menu ul .sub_menu ul a:hover{
	background-color: #fdcd00;
	color: #cc3300;
	margin:0;
	z-index: 10;
	
}
.search{
	margin-top: 0;
	position: relative;
	
}
.search input[type="text"] { /* был лишний пробел межу input и [..], так input [type="text"] и не работал сука */
	background-color: #f9f9f9;
	border: 1px solid #ccc;
	border-radius: 4px;	
	color: #555;
	padding: 7px 25px 7px 7px; /* Добавляем 22px отступ справа */
	box-sizing: border-box; /* Чтобы padding не увеличивал общую ширину */
	width: 100%;
	/* Добавляем эти свойства для надежности */
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    /* Запрещаем resize, если это textarea */
    resize: none;

}

.search input[type="image"]{
	 position: absolute;
    top: 50%;
    right: 7px; /* Отступ иконки от правого края */
    transform: translateY(-50%); /* Вертикальное центрирование */
    width: 16px; /* Фиксируем размер иконки */
    height: 16px;
    cursor: pointer;
    /* Убираем стандартные отступы у изображения */
    padding: 0;
    margin: 0;
    border: none;
}


#container #gallery{
	background-color: #fefcef;
	/*border: 10px solid #fdcd00;*/
	border-radius: 20px 20px 20px 20px; /* Скругление  углов 10px 0 0 10px */
	display: flex;
	flex-wrap: wrap;
	gap:3px;
	margin-top: 0px; /* отступ сверху у у всего блока Галлерея  делам Увеличением поля на 10 пикселей*/
	justify-content: space-between;
	padding: 0 5px; /*слева и справа по 10px контейнеру для этих 2х блоков хедер.лефт и хедер.райт*/
	
}

#container #gallery .element{
	background-color: #f9f9f9;
	border: 1px solid #bfbfbf;
	border-radius: 0px 0px 10px 10px; /* Скругление  углов 10px 0 0 10px */
	
	box-shadow: 0 0 3px #dadada; /*3 px размытие* 0 и 0 это направлеие, но нрадо поменять и посмотреть куда точно*/
	margin: 5px 0; /*отступы межу блоками сверху и снизу по 15%*/
	margin-left:5px;
	
	width: 24%; /* при этой ширне блока влазиит на экран 4 баннера-блока*/
	position:relative;
}



@media (max-width: 980px){
	#container #gallery .element{
		margin: 5px auto;
		margin-left:0px;
		width: 32.4%; /* при этой ширне блока влазиит на экран 3 баннера-блока*/
	}

}
@media (max-width: 700px){
	#container #gallery .element{
		margin: 5px auto;
		margin-left:0px;
		width: 49%; /* при этой ширне блока влазиит на экран 2 баннера-блока*/
		
	}
}
@media (max-width: 370px){
	#container #gallery .element{
		margin: 5px auto;
		margin-left:0px;
		width: 98%; /* при этой ширне блока влазиит на экран 2 баннера-блока*/
	}
	
}
@media (max-width: 320px){
	#container #gallery .element{
		margin: 0px auto;
		margin-left:0px;
		width: 100%; /* при этой ширне блока влазиит на экран 2 баннера-блока*/
		
	}
	
}
#container #gallery .element .top{
	position: relative;
    overflow: hidden; /* Обрезаем лишнее */

min-height: 40px; /* Минимальная высота */	
}


#container #gallery .element .top:before{ /* полупрозрачный фон при наведении у верхнего блока /.top    */
	content: "";  /*что бы фон не растягивался на весь блок а только на его верхнюю часть, выводим пустой контент*/
	background-color: rgba(0, 0, 0, 0.2);
	position: absolute;
	height:40px;
	width: 100%;
	left: 0;
	top: 0;
	
	
z-index: 1; /* Устанавливаем z-index ниже социальных иконок */	
}


#container #gallery .element .top .social{
	/*display: none; /*делаем весь блок с иконками невидимым*/
	cursor:pointer;
	right: 10px;
	top: 8px;
	position: absolute;
	z-index: 10;
	width: auto !important; /* Добавлено из дублирующего блока */
    min-width: 240px; /* Добавлено из дублирующего блока */
}
#container #gallery .element .top:hover .social{
	display: block; /* А наводим мышку на всю верхнюю половину блока ".top" и появляются иконки в прямоугольнике*/
}

@media (max-width: 464px) {
#container #gallery .element .top .social{
	/*display: none; /*делаем весь блок с иконками невидимым*/
	cursor:pointer;
	right: -23px;
	top: 8px;
	
    min-width: 200px; /* Добавлено из дублирующего блока */
}		
	#container #gallery .element .top .social .edit{
		margin-right: -18px;
	}
}	


#container #gallery .element .top .social p{
	/*background-color: #fcf7f6; */
	color:white;
	display: flex !important; /* Изменено с inline-block на flex */
	align-items: center;
	padding: 2px 10px; /* Изменено с 0px 10px */
	margin: 0;
	font-size:120%;
	background-color: rgba(252, 247, 246, 0.3); /* Добавлено */
    border-radius: 15px; /* Добавлено */
    box-shadow: 0 0 3px rgba(0,0,0,0.2); /* Добавлено */
    white-space: nowrap; /* Добавлено */
}

#container #gallery .element .top .social .favorites{
	background: url("../images/bookmark24.png") no-repeat left center;
	padding-top: 2px;
	padding-left: 20px;
	transform: scale(1.03);
}


#container #gallery .element .top .social .like{
	background: url("../images/heart22.png") no-repeat left center;
	padding-left: 23px;
	padding-top: 4px;
	transform: scale(1.03);
}

.like {
    background: url("../images/heart22.png") no-repeat left center !important;
    background-size: 25px 25px !important;
    padding-left: 25px !important;
    display: inline-block;
    min-height: 20px;
    margin-left: 5px;
	margin-right: 2px;
    cursor: pointer;
}
.edit {
    background: url("../images/edit25.png") no-repeat left center;
    background-size: 25px 25px ;
    padding-left: 50px;
    display: inline-block;
    min-height: 17px;
    margin-left: 15px;
    cursor: pointer;
    
    flex-shrink: 0; /* Добавлено */
}



@media (max-width: 480px) {
    .edit {
        margin-right: 0px; /* Сдвигаем левее на 30px */
       /* background-size: 20px 20px; */
    }
}
.edit:hover {
    color: #3f3f3f;
    
}
#container #gallery .element .top .social .comments{
	background: url("../images/comm3.png") no-repeat left center;
	padding-top: 2px;
	
	padding-left: 25px;
	transform: scale(1.03);
}

/* Добавьте в конец файла стилей 
#gallery .element .social .edit {
    margin-right: 10px !important;
}*/

/*Поделись ссылкой начало*/

/* Стили для иконки поделиться ссылкой */
.share-link {
    cursor: pointer;
    transition: transform 0.2s ease, color 0.3s ease;
    user-select: none;
    display: inline-block;
    padding-left: 20px;
	margin-left: 5px;
	padding-top: 2px;
    background: url("../images/link.png") no-repeat left center;
    background-size: 18px 18px;
    color: #3f3f3f;
    /* Для скрытия текста и оставления только иконки: */
    text-indent: 0px;
    width: 0px;
    height: 15px;
    overflow: hidden;
}

.share-link:hover {
    color: #3498db;
    transform: scale(1.2);
}

.share-link:active {
    transform: scale(0.95);
}

/* Модальное окно для ссылки */
.share-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.7);
    justify-content: center;
    align-items: center;
}

.share-modal-content {
    background-color: #fefcef;
    margin: auto;
    padding: 20px;
    border: 1px solid #bfbfbf;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
    max-width: 500px;
    width: 90%;
}

.share-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #bfbfbf;
}

.share-modal-header h3 {
    margin: 0;
    color: #cc3300;
    font-size: 120%;
}

.close-share-modal {
    color: #aaa;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    padding: 0 10px;
}

.close-share-modal:hover,
.close-share-modal:focus {
    color: #cc3300;
    text-decoration: none;
}

.share-input-container {
    margin: 15px 0;
}

.share-input-container input {
    width: 100%;
    padding: 10px;
    border: 1px solid #bfbfbf;
    border-radius: 4px;
    font-size: 14px;
    background-color: #f9f9f9;
    box-sizing: border-box;
}

.share-buttons {
    display: flex;
    gap: 10px;
    margin-top: 15px;
    flex-wrap: wrap;
}

.share-button {
    flex: 1;
    min-width: 120px;
    padding: 10px;
    border: 1px solid #bfbfbf;
    border-radius: 4px;
    background-color: #f9f9f9;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    color: #3f3f3f;
    font-size: 14px;
    transition: background-color 0.3s ease;
}

.share-button:hover {
    background-color: #fdcd00;
    color: #cc3300;
}

.share-button.max {
    background-color: #0055ff; /* Синий цвет для Макс */
    color: white;
    border-color: #0055ff;
}

.share-button.ok {
    background-color: #ff7700; /* Оранжевый цвет для Одноклассников */
    color: white;
    border-color: #ff7700;
}

.share-button.whatsapp {
    background-color: #25D366;
    color: white;
    border-color: #25D366;
}

.share-button.telegram {
    background-color: #0088cc;
    color: white;
    border-color: #0088cc;
}

.share-button.vk {
    background-color: #4C75A3;
    color: white;
    border-color: #4C75A3;
}

.share-button.copy {
    background-color: #3498db;
    color: white;
    border-color: #3498db;
}

/* Адаптивность для модального окна */
@media (max-width: 600px) {
    .share-buttons {
        flex-direction: column;
    }
    
    .share-button {
        width: 100%;
        margin-bottom: 5px;
    }
}

/*Поделись ссылкой конец*/

/* Контейнер для группы иконок (favorites, like, comments, share) */
.icon-group {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 1;
}

.favorites, .like, .comments, .share-link {
    flex-shrink: 0;
}

/* ========= АДАПТИВНЫЕ ПРАВИЛА ДЛЯ ИКОНОК ========= */

/* Для 3 постов (≤980px) */
@media (max-width: 980px) {
    #container #gallery .element .top .social p {
        padding: 2px 8px;
        min-width: 200px;
    }
    .edit {
        margin-right: 12px; /* ИЗМЕНИТЬ: расстояние edit-favorites */

    }
    .icon-group {
        gap: 6px; /* ИЗМЕНИТЬ: расстояние между остальными иконками */
    }
}

/* Для 2 постов (≤700px) */
@media (max-width: 700px) {
    #container #gallery .element .top .social p {
        padding: 1px 6px;
        min-width: 200px;
    }
    .edit {
        margin-left: 20px; /* ИЗМЕНИТЬ: расстояние edit-favorites */
        
	
		
    }
    .icon-group {
        gap: 4px; /* ИЗМЕНИТЬ: расстояние между остальными иконками */
    }
}


/* Для 1 поста (≤370px) */
@media (max-width: 370px) {
    #container #gallery .element .top .social p {
        padding: 1px 4px;
        min-width: 180px;
		
    }
#container #gallery .element .top .social{
	/*display: none; /*делаем весь блок с иконками невидимым*/
	cursor:pointer;
	right: 0px;
	top: 8px;
	
    min-width: 240px; /* Добавлено из дублирующего блока */
}	

#container #gallery .element .top .social .edit{
	margin-right: 15px;

	}	
    .icon-group {
        gap: 3px; /* ИЗМЕНИТЬ: расстояние между остальными иконками */
    }
}

#container #gallery .element .top img{
	width: 100%;  /*растягиваем изображение на всю ширину блока .top*/
}

#container #gallery .element .bottom{
	padding:15px;

	margin-top: 0 /* Добавляем отступ для .bottom на случай отсутствия изображения */
}

#container #gallery .element .bottom a{
	color: #cf3400;
	font-family: story;
	font-size: 130%;
	text-decoration: none;
	font-weight: normal;
}
 
#container #gallery .element .bottom h2{
	color: #cf3400;
	font-family: story;
	font-size: 130%;
	text-decoration: none;
	font-weight: normal;
}
#container #gallery .element .bottom strong{
	color: #cf3400;
	font-size: 100%;
	text-decoration: none;
	font-weight: bold;
}
#container #gallery .element .bottom a:hover{
	color: #cf3400;
	text-decoration: underline;
	cursor: pointer;
}

#container #gallery .element .bottom .date{
	color: #b0afae;
	font-size: 80%;
	margin: 8px 0;
}
#container #gallery .element .bottom .intro{
	color: #000;
	font-size: 100%;
	margin: 8px 0;
	line-height: 140%; /*Увеличиваем межстрочный интервалл*/
}
#content .main_article .wrap{
	border: 1px solid #bfbfbf;
	box-shadow: 0 0 3px #dadada;
	
}

.main_article  {
	background-color: #fefcef;
    border: 1px solid #bfbfbf;
    border-radius: 10px;
    box-sizing: border-box;
    box-shadow: 0 0 3px #dadada;
    padding:  5px;
	margin-top: 5px;
    margin-bottom: 10px;
    
}

.main_article .element_article{
	
    
    border-radius: 0 0 10px 10px;
    margin: 5px 0;
    padding: 5px;
    box-sizing: border-box;
   
}



/* Для мобильных устройств - переключаем на вертикальное расположение */
/* Адаптив для мобильных устройств */
@media (max-width: 768px) {
    .element_article {
        width: 100%;
		
    }
    
    footer {
        width: 90%;
    }
}
.main_article .element_article h1{
	color:#cc3300;
	font-size: 120%;
	font-weight: bold;
	text-align:center;
	padding: 5px 0;
}
.main_article .element_article h2{
	color:#cc3300;
	font-size: 100%;
	font-weight: bold;
	text-align:center;
	padding: 5px 0;
}

.main_article .element_article h3{
	color:#cc3300;
	font-size: 100%;
	font-weight: bold;
	text-align:left;
	padding: 10px 0;
}
.main_article .element_article strong{
	color:#175e51;
	font-size: 100%;
	font-weight: bold;
	text-align:left;
	padding: 10px 0;
}
.main_article .element_article span{
	color:#cc3300;
	font-size: 100%;
	font-weight: bold;
	
}
.main_article .element_article p{
	
	font-size: 100%;
	padding: 0px 5px;
	line-height: 140%; /*Увеличиваем межстрочный интервалл*/
}
.main_article .element_article ul{
	
	margin-top:5px;
}

.main_article .element_article ul.custom-marker li{
	position: relative;
	padding-left: 20px;
	margin-bottom: 8px;
	line-height: 140%; /*Увеличиваем межстрочный интервалл*/
}

.main_article .element_article ul.custom-marker li::before{
	content: "•"; /* или любой символ (✓, →, ✦ и т.д.) */
  color: #cc3300; /* цвет */
  font-size: 1.2em;
  position: absolute;
  left: 5px;
}

#container #gallery .element .top video {
    width: 100%;
    height: auto;
    display: block;
}


/* ПЛЯЖИ */
/* Стили для блока-героя на странице пляжей */
.beach-hero {
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3)), url('../images/divnomorsk-beach-panorama.jpg') no-repeat center center;
    background-size: cover;
    color: white;
    text-align: center;
    padding: 60px 20px;
    margin-bottom: 20px;
}

.beach-hero h1 {
    font-size: 2.5em;
    color: #fff;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
    margin-bottom: 20px;
}

.beach-hero p {
    font-size: 1.2em;
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Небольшая модификация для карточек именно пляжей */
.beach-card .bottom {
    padding: 20px;
}

.beach-card .intro {
    margin: 5px 0; /* Уменьшаем отступ между строками инфо */
    font-size: 0.95em;
    line-height: 1.4;
}

.beach-card .date {
    color: #6b6b6b;
    font-style: italic;
    margin-bottom: 10px;
    display: block;
}

.read-more {
    display: block;
    margin-top: 0px;
    color: #cc3300 !important; /* Ваш фирменный синий */
    font-weight: normal;
    text-decoration: none;
}

.read-more:hover {
    text-decoration: underline;
}

/* Стили для таблицы сравнения */
table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0 20px 0; /* top right bottom left - все отступы явно */
}

th, td {
    border: 1px solid #bfbfbf;
    padding: 8px;
    text-align: left;
}

th {
    background-color: #fdcd00;
    color: #3f3f3f;
}

tr:nth-child(even) {
    background-color: #f9f9f9;
}

/* Адаптивность для таблицы на маленьких экранах */
@media (max-width: 340px) {
    table {
        display: block;
        overflow-x: auto;
    }
	
}
@media (min-width: 340px) {
    .beach-images-desktop img:only-child {
    display: hide;
}
	
}

/* ОСНОВНЫЕ СТИЛИ ДЛЯ ФОТО */
        .beach-images-desktop {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 5px;
            margin: 5px 0;
            justify-items: center;
        }

        .beach-images-desktop img {
            width: 100%;
            height: auto;
            display: block;
            border-radius: 8px;
            box-shadow: 0 0 5px #dadada;
            border: 1px solid #bfbfbf;
            max-height: 400px;
            object-fit: cover;
        }


/* Если изображение одно - занимает всю ширину */
.beach-images-desktop img:only-child {
    grid-column: 1 / -1; /* Занимает все колонки */
    max-width: 300px;
	
}

/* Адаптивность для мелких фото на маленьких экранах */
@media (max-width: 340px) {
    .beach-images-desktop:has(img:nth-child(2)) img:hover {
    transform: scale(2);
    z-index: 100;
    box-shadow: 0 0 25px rgba(0,0,0,0.5);
    border: 2px solid #fff;
	
}

}
/* Эффект для нескольких фото 
.beach-images-desktop:has(img:nth-child(2)) img {
    cursor: zoom-in;
}

.beach-images-desktop:has(img:nth-child(2)) img:hover {
    transform: scale(2);
    z-index: 100;
    box-shadow: 0 0 25px rgba(0,0,0,0.5);
    border: 2px solid #fff;
}
 Клик для нескольких фото 
.beach-images-desktop:not(:has(img:only-child)) img:active {
    transform: scale(3);
    z-index: 100;
    box-shadow: 0 0 25px rgba(0,0,0,0.5);
    position: relative;
}
*/
/* СТИЛИ ДЛЯ ЛАЙКОВ - ДОБАВЛЯЕМ К СУЩЕСТВУЮЩИМ */
.like {
    cursor: pointer;
    transition: transform 0.2s ease, color 0.3s ease;
    user-select: none;
    display: inline-block; /* Важно для transform */
    padding-left: 25px; /* Сохраняем отступ для иконки */
}

.like:hover {
    color: #ff3366;
    transform: scale(1.05);
}

.like:active {
    transform: scale(1.05);
}

/* Анимация для лайка */
@keyframes heartBeat {
    0% 	{ transform: scale(1); }
    15% { transform: scale(1.2); }
    30% { transform: scale(1); }
    45% { transform: scale(1.15); }
    60% { transform: scale(1); }
    100% { transform: scale(1); }
}

.like.liked {
    animation: heartBeat 0.6s ease-in-out;
    color: #ff3366;
    font-weight: bold;
}

/* Улучшаем видимость иконки при анимации */
.like.liked {
    background: url("../images/heart22-red.png") no-repeat left center;
}

/* СТИЛИ ДЛЯ КОММЕНТАРИЕВ - ДОБАВЛЯЕМ К СУЩЕСТВУЮЩИМ */
.comments {
    cursor: pointer;
    transition: transform 0.2s ease, color 0.3s ease;
    user-select: none;
    display: inline-block; /* Важно для transform */
    padding-left: 25px; /* Сохраняем отступ для иконки */
	padding-bottom: 2px !important;  /* ДОБАВИТЬ ЭТУ СТРОКУ */
}

.comments:hover {
    color: #3498db;
    transform: scale(1.05);
}

.comments:active {
    transform: scale(0.95);
}

/* Анимация для комментариев */
@keyframes commentPulse {
    0% 	{ transform: scale(1); }
    15% { transform: scale(1.2); }
    30% { transform: scale(1); }
    45% { transform: scale(1.15); }
    60% { transform: scale(1); }
    100% { transform: scale(1); }
}

.comments.comment-added {
    animation: commentPulse 0.6s ease-in-out;
    color: #3498db;
    font-weight: bold;
}

/* Улучшаем видимость иконки при анимации */
.comments.comment-added {
    background: url("../images/comment-icon-blue.png") no-repeat left center;
    background-size: 20px 20px;
}

/* Стили для иконки favorites */
.favorites {
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
    display: inline-block;
    padding-left: 25px;
    background: url("images/addbookmark24.png") no-repeat left center;
    background-size: 18px 18px;
}

.favorites:hover {
    color: #3498db;
    transform: scale(1.1);

}

/* Анимация добавления в закладки */
@keyframes bookmarkAdd {
    0% { transform: scale(1); }
    50% { transform: scale(1.3) rotate(10deg); }
    100% { transform: scale(1); }
}

.added-to-bookmarks {
    animation: bookmarkAdd 0.6s ease-in-out;
    color: #3498db !important;
    font-weight: bold;
}

/* Анимация удаления из закладок */
@keyframes bookmarkRemove {
    0% { transform: scale(1); }
    50% { transform: scale(0.8) rotate(-10deg); opacity: 0.5; }
    100% { transform: scale(1); opacity: 1; }
}

.removed-from-bookmarks {
    animation: bookmarkRemove 0.6s ease-in-out;
}

/* Стили для виджета закладок */
/* Стили для виджета с иконкой */
#bookmarks-widget {
    position: fixed;
    bottom: 25px;
    right: 25px;
    z-index: 1000;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Контейнер иконки */
.bookmark-widget-icon {
    width: 48px;
    height: 48px;
    background: url('images/favor48.png') no-repeat center center;
    background-size: contain;
    position: relative;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
}

/* Эффект при наведении */
#bookmarks-widget:hover .bookmark-widget-icon {
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.4));
}

/* Счетчик поверх иконки */
#bookmarks-count {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #e74c3c;
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 12px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

/* Анимация при изменении счетчика */
@keyframes count-pop {
    0% { transform: scale(1); }
    50% { transform: scale(1.3); }
    100% { transform: scale(1); }
}

.count-changing {
    animation: count-pop 0.4s ease-in-out;
}

/* Полупрозрачный эффект когда нет закладок */
#bookmarks-widget:not(.has-bookmarks) .bookmark-widget-icon {
    opacity: 0.7;
    filter: grayscale(0.3) drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* Яркий вид когда есть закладки */
#bookmarks-widget.has-bookmarks .bookmark-widget-icon {
    opacity: 1;
    filter: drop-shadow(0 4px 8px rgba(231, 76, 60, 0.4));
}

/*для СЕО*/
.highlight {
    background-color: #f0f9ff;
    padding: 10px;
    border-left: 4px solid #0077cc;
    border-radius: 5px;
    font-style: italic;
    margin-top: 5px;
}
.gallery-title {
    text-align: center;
    margin: 0px;
    color: #333;
}
.gallery-subtitle {
    text-align: center;
    color: #666;
    font-style: italic;
    margin: 0px;
	padding: 0px;
}
/* Стили для кликабельного телефона - как ссылка */
.clickable-phone {
    text-decoration: underline;
    text-decoration-style: dotted;
    text-underline-offset: 4px;
    color: #0066cc;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-block;
}

.clickable-phone:hover {
    color: #004499;
    text-decoration-style: solid;
}

.clickable-phone:active {
    transform: scale(0.95);
}


