/********************************************************************************/
//*                                                                            *//
//*                	   written by AtlantisWeb studio                           *//
//*                                                                            *//
/********************************************************************************/


@media (min-width: 768px){

}

@media (min-width: 990px) and (max-width: 1599px) {
	
}

@media (min-width: 768px) and (max-width: 1599px) {
	
}
@media (min-width: 768px) and (max-width: 1180px) {

}
@media (min-width: 768px) and (max-width: 998px) {
	
}
@media (max-width: 1900px) {
	#mainmenu li {
		margin: 0;
	}
	.maincats .moduletitle {
	  font-size: 35px;
	  line-height:50px;
	  margin:0 0 30px 15px;
	}
	#inshop_vendors_list .item{
		margin:7px;
		height:65px;
		width:170px;
		line-height:65px;
	}
	.mainblock.brends {
		padding: 70px 75px 20px 75px;
	}
	.shop_detail_item input.addtocart{
		margin-top:20px;
		clear:both;
	}
	.toprightinf #btnbackphone {
		margin: 0 20px 25px 20px;
	}
	.logo span{
		font-size:12px;
	}
	.toprightinf {
		font-size: 17px;
	}

}
@media (max-width: 1599px) {

	.toprightinf{
		margin-top:18px;
	}
	.mainblock.kontakts .col-xs-30:first-child{
		margin-top:40px;
	}
	.fixheader{
		height:145px;
	}
	
	.fixheadfirst.fixed #btnbackphone {
		margin: 0 15px 5px 15px;
	}
	.logo span{
		font-size:14px;
	}
	.itemvideo{
		height:315px;
	}
	header #search_mainblock{
		left:calc(70% + 20px);
		right:20px;
		bottom:135px;
	}
	
}

@media (max-width: 1200px) {
	.shop_detail_item .mainblock.service{
		padding:10px 0;
	}
	.logo span{
		font-size:13px;
	}
	header #search_mainblock{
		left:auto;
		right:auto;
		bottom:auto;
		position:relative;
		margin:25px;
	}
}

@media (max-width: 1030px) {

}

@media (max-width: 990px) {
	#atwmodal .sblock{
		margin-left:-340px;
		width:680px;
		top:25%;
	}
	.toprightinf  #btnbackphone{
		margin: 0 15px 20px;
	}
	.toprightinf {
		font-size: 16px;
	}
	.logo span{
		font-size:11px;
	}
	.itemvideo{
		height:215px;
	}
}
@media (max-width: 820px) {
	.mainblock{
		padding:60px 60px 20px 60px;
	}
	.maintop .listitems {
		margin: 0px 50px 20px 50px;
	}
	.owl-nav{
		left:-20px;
		right:-20px;
	}
	
	
}

@media (max-width: 768px) {
	#atwmodalsb .sblock{
		left: 5%;
		margin-left: 0;
		width: 90%;
		top:12%;
	}
	#atwmodalsb .closemodal {
		top: 50px;
		right: 50px;
	}
	header.homepage{
		background-size: auto 420px;
		background-image:url(../images/Headersmall.jpg);
	}
	#atwmodal .sblock{
		margin-left:-290px;
		width:580px;
		top:15%;
	}
	#atwmodal .sblock .title{
		font-size:26px;
		padding-bottom:15px;
		line-height:27px;
	}
	#atwmodal .sblock .desc, #atwmodal .sblock .desc a{
		padding-bottom:15px;
		font-size:14px;
		line-height:16px;
	}
	#atwmodal .closemodal{
		top:20px;
		right:20px;
	}
	#btnsearch{
		float:left;
		margin-right:30px;
	}
	header .pull-right{
		float:none!important;
		display:inline;
	}
	.fixrb{
		display:block;
		float:left;
		clear:both;
		width:100%;
		margin:15px 0 0 0;
	}
	.toprightinf  #btnbackphone{
		margin:0 50px 20px 0px;
	}
	.maincats .moduletitle {
	  font-size: 26px;
	  line-height:36px;
	  margin:0 0 5px 15px;
	}
	footer{
		min-height:auto; /*temper*/
	}
	footer .social{
		margin-top:30px;
	}
	footer .bacphone { 
		margin-top: 30px;
	}
	footer .bacphone #customer_phone { 
		margin: 25px 0px 0px 2px;
	}
	footer .marketinf { 
		margin-top: 35px;
		text-align:left;
	}
	footer .marketinf .title { 
		text-align: left;
	}
	footer .marketinf .yandexlink { 
		margin: 0px 0px 20px;
	}
	footer .footnavi { 
		margin: -40px 0px 0px 0px;
	}
	footer nav { 
		margin: 0 0px 0px 0px;
	}
	.collapse.in #menu2 { 
		width: 100%;
	}
	footer .copyr { 
		margin: 20px 0px 0px;
		text-align: center;
	}
	footer{
		min-height:640px; /*temper*/
	}
	#back-top{
		bottom:10px;
		right:10px;
	}
	.navbar-toggle { 
		margin-right: 95px;
	}
	.mainblock.kontakts .col-xs-30:first-child{
		margin-top:0px;
	}
	.fuulblock  .moduletitle {
		font-size:26px;
	}
	#inshop_vendors_list .item{
		margin:5px auto;	
		float:none;		
	}
	.mainblock.service{
		padding:30px;
	}
	.maintop .listitems {
		margin: 0px 20px 20px 20px;
	}
	.owl-nav{
		left:-10px;
		right:-10px;
	}	
	.shoplistitem .fixakc input.addtocart {
		display:block;
	}
	.shoplistitem input.addtocart.can_credit{
		display:inline-block;
		width:47%;
	}
	a.addtocart{
		width:100%;
	}
	.shop_detail_item input.addtocart{
		width:100%;
	}
	.priceblock .price{
		margin-top:25px;
	}
	.shoplistitem:hover > .akctimer{
		display:block;
	}
	.fixblock28{
		display:none;
	}
	.contactpage form input[type=text]{
		display:inline-block;
		width:100%!important;
	}
	.itempage .chars_list {
		column-count: 1;
		-moz-column-count: 1;
		-webkit-column-count: 1;
	}
	.tab-content.itempage {
		margin: 0 0;
	}
	.nav-tabs.itempagenav {
		margin: 0;
	}
	footer .marketinf .title.fixtit{ 
		display:inline-block;		
	}
	footer .marketinf div{ 
		display:block;		
	}
	footer .marketinf div span {
		height:25px;
		min-height: auto;
		display:inline-block;
		float:left;
		min-height: auto;
		width: auto;
	}
	footer .marketinf .yandexlink { 
		display: block;
	}
	.mainblock.kontakts .social{
		display:none;
	}
	footer .footnavi {
		margin: 0px 0px 0px 0px;
	}
	footer .social{
		text-align:center;
		
	}
	.navbar-collapse #mainmenu { 
		background: #FFFFFF;
		border: 1px solid #28C88C;
		border-radius: 5px;
		margin: 0px;
		padding: 10px 15px;
	}
	.navbar-collapse{
		position: absolute;
		right: 10px;
		left: 10px;
		z-index:13;
		height: auto!important;
	}
	.navbar-collapse  #mainmenu li{ 
		float:left;
		clear:both;
	}
	.navbar-collapse  #mainmenu li a{ 
		padding: 5px 10px;
		font-size:16px;
	}
	.logo{
		width:32px;
		overflow:hidden;
	}
	.logo a img{
		width:193px;
		max-width:193px;
	}
	.logo span{
		display:none;
	}
	.navbar-toggle { 
		margin-right: 0px;
	}
	.fixrb{
		display:inline-block;
		float:none;
		clear:none;
		width:auto;
		margin:0 0 0 0;
	}
	#atwmodal .sblock{
		margin-left:-260px;
		width:520px;
		top:5%;
	}
	#atwmodal .sblock input[type="text"] { 
		width: 99%;
	}
	.toprightinf { 
		margin-top: 7px;
	}
	.homepage .toprightinf {
		margin-top: 7px;
	}
	.homepage.fixednew .toprightinf { 
		margin-top:7px;
	}
	.homepage.fixednew .logo { 
		margin: 5px 0px 0px;
	}
	.homepage nav, .homepage.fixednew nav { 
		margin: 5px 0px 0px;
	}
	nav { 
		margin: 5px 0px 0px;
	}
	.newtop{
		margin:15px 0 15px 0!important;
	}
	.homepage .logo {
		margin: 15px 0 0 0;
	}
	.logo { 
		margin: 15px 0 0 0;
	}
	.homepage #btnsearch {
		margin: 3px 10px 0 0;
	}
	.homepage.fixednew #btnsearch { 
		margin: 0px 10px 0 0;
	}
	.maincats { 
		margin: 30px 0px 20px 0;
	}
	.toprightinf #btnbackphone { 
		margin: 0px 10px 10px 0px;
	}
	
	.fixheadfirst.fixed  .navbar-toggle {
		margin-top: 0px;
	}
	.headnaviline  {
		width:auto;
		min-height:40px;
	}
	.fixheadfirst.fixed .newtop{
		margin:10px 0 0px 0!important;
	}
	.inshop_filter{
		display:none;
	}
	.inshop_filter{
		display:none;
	}
	.fiilterbtn{
		display:block!important;
	}
	.inshop_filter form .btnclean {
		top: 75px;
	}
	.modunderfoot{
		margin:20px 15px;
	}
	.itemvideo{
		height:315px;
	}
	#search_mainblock input[type=text]{
		border:1px solid #21bea6;
		background: rgba(255, 255, 255, 0.6);
		background: -moz-linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(30, 190, 166, 0.05) 100%);
		background: -webkit-linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(30, 190, 166, 0.05) 100%);
		background: -o-linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(30, 190, 166, 0.05) 100%);
		background: -ms-linear-gradient(180deg, rgba(255, 255, 255, 0.99) 0%, rgba(30, 190, 166, 0.05) 100%);
		background: linear-gradient(270deg, rgba(255, 255, 255, 0.99) 0%, rgba(30, 190, 166, 0.05) 100%);
	}
	header #search_mainblock p{
		color:#21bea6;
		font-size:40px;
		text-shadow: 0 0 0 rgba(0, 0, 0, 0.5);
	}
}
 
@media (max-width: 540px) {
	header #search_mainblock p{
		font-size:30px;
	}
	#search_mainblock input[type=text]{
		font-size:15px;
		text-transform:none;
		height:48px;
	}
	#search_mainblock input[type=submit]{
		height: 48px;
	}
	header.homepage{
		background:none;
	}
	#atwmodal .sblock{
		margin-left:-160px;
		width:320px;
		top:5%;
	}
	#atwmodal .sblock input[type="text"] { 
		width: 99%;
	}
	.maincats  {
		margin:10px 0 0 0;
	}
	.maincats .moduletitle {
	  font-size: 16px;
	  line-height:20px;
	  margin:0 0 0px 5px;
	}
	#inshop_vendors_list .item{
		margin:5px auto;	
		float:none;			
	}
	.contactpage form input[type=submit]{
		float:none;
		clear:both;
	}
	.toprightinf  {
		font-size:14px;
	}
	.maintop{
		padding:20px 0px 20px; 
	}
	.mainblock { 
		padding: 50px 10px 20px;
	}
	.slider { 
		margin: 40px auto 20px;
		width: 300px;
	}
	.slider .slides li a , .slider .slides li a img{
		width:200px;
		height:400px;
		text-align:center;
		display:inline-block;
	}
	.mainblock.kontakts img { 
		width:90px;
	}
	.mainblock.service img { 
		display: block;
		float: none;
		height: 120px;
		margin: 0px auto;
		width: 150px;
	}
	.mainblock.service  { 
		text-align:center;
	}
	.fuulblock .moduletitle {
		font-size: 19px;
	}
	
	nav {
		margin: 5px 0 0 0;
	}
	.logo {
		margin: 15px 0 0 0;
	}
	.toprightinf {
		margin-top: 10px;
	}
	#btnsearch {
		margin: 0 10px 0 0;
	}
	.homepage #btnsearch {
		position: absolute;
		right: 12px;
		top: 18px;
	}
	.toprightinf .glyphicon-earphone { 
		font-size: 16px;
		padding-right: 2px;
	}
	.homepage nav {
		margin: 5px 0 0 0;
	}

	#mainmenu{
		width:98%;
	}
	
	.homepage.fixednew #btnsearch { 
		margin: -8px 10px 0 0;
	}
	.fixheadfirst.fixed  .mob_hide{
		display:none!important;
	}
	.headnaviline  {
		padding:0 8px;
	}
	.toprightinf .glyphicon-shopping-cart { 
		padding-right: 5px;
		margin-top:6px;
	}
	.smallhide{
		display:none!important;
	}
	.fixheadfirst.fixed{
		border-bottom:1px solid #c0c0c0;
		padding-bottom:3px;
	}
	.newtop{
		margin:20px 0 15px 0!important;
	}
	.maincats .menucatitem .img { 
		margin: 10px 20px;
	}
	.maincats .menucatitem { 
		margin: 10px 0px 0 0;
	}
	header.homepage {
		min-height:none;
	}
	.maintop .moduletitle { 
		line-height:38px;
		font-size: 32px;
	}
	.znachki img{
		width:100%;
		max-width:80px;
		margin:4px;
	}
	.dtypeblock .ditem{
		margin: 7px 0;
		text-align: left;
	}


}
@media (max-width: 474px) {
	.logo { 
		width: auto;
	}
	.logo span{
		display:block;
		font-size:13px;
	}
	.fixednew .logo {
		width: 32px!important;
	}
	.newtop{
		margin:10px 0 10px 0!important;
	}
	
}
/* === breadcrumb / pathway: SVG home-icon размер === */
#pathway { padding: 10px 0; font-size: 13px; }
#pathway .icms-svg-icon,
#pathway svg,
.breadcrumb .icms-svg-icon,
.breadcrumb svg {
    width: 14px !important;
    height: 14px !important;
    display: inline-block;
    vertical-align: -2px;
    fill: currentColor;
}
.breadcrumb { background: none; padding: 0; margin: 0; list-style: none; display: inline; }
.breadcrumb-item { display: inline; }
.breadcrumb-item + .breadcrumb-item::before { content: "›"; padding: 0 6px; color: #888; }
.breadcrumb a { color: #666; text-decoration: none; }
.breadcrumb a:hover { color: #21bea6; }
.breadcrumb-item.active { color: #444; }

/* === sidebar КАТАЛОГ — вертикальный список с иконками (1:1 с 1.x) === */
.sidebar-cats { list-style: none; padding: 0; margin: 0; }
.sidebar-cats li { border-bottom: 1px solid #f0f0f0; }
.sidebar-cats li:last-child { border-bottom: 0; }
.sidebar-cats li a {
    display: flex; align-items: center; gap: 18px;
    padding: 14px 10px; text-decoration: none;
    color: #21bea6; font-weight: 600; font-size: 13px; text-transform: uppercase;
}
.sidebar-cats li a:hover { color: #ff9000; background: #fafafa; }
.sidebar-cats .ico {
    width: 70px; height: 70px;
    background-position: center center; background-repeat: no-repeat;
    background-size: contain; flex-shrink: 0;
}
.sidebar-cats .title { flex: 1; }

/* === sidebar КАТАЛОГ: кнопка Развернуть/Свернуть === */
.sidebar-catalog .catlistup {
    display: block; text-align: right; padding: 8px 12px;
    font-size: 12px; color: #888; text-decoration: underline;
}
.sidebar-catalog .catlistup:hover { color: #21bea6; }
.sidebar-catalog .catlistup i { margin-left: 5px; font-size: 10px; }

/* === FIX: кнопка «В корзину» всегда видна, даже у товаров со скидкой
   (в 1.x .fixakc input.addtocart { display:none } — наследие, скрывало до hover) === */
.shoplistitem .fixakc input.addtocart,
.shoplistitem .fixakc input.addtocart.can_credit {
    display: inline-block !important;
}

/* === Кнопка «В корзину»: не должна вылезать за карточку ===
   В 1.x было width: 200px (жёстко) — при узких карточках с сайдбаром
   выпирала за края. Делаем её адаптивной по ширине карточки. */
.shoplistitem input.addtocart {
    max-width: calc(100% - 20px) !important;
    width: auto !important;
    min-width: 140px;
    padding: 0 18px !important;
    box-sizing: border-box;
}
.shoplistitem input.addtocart.can_credit {
    max-width: calc(47% - 6px) !important;
    min-width: 0;
}

/* === SVG-icons глобально: ограничить ВСЕ icms-svg-icon до нормального размера === */
.icms-svg-icon {
    width: 16px !important;
    height: 16px !important;
    display: inline-block;
    vertical-align: -3px;
    fill: currentColor;
}
.icms-svg-icon.w-16 { width: 16px !important; height: 16px !important; }
.icms-svg-icon.w-24 { width: 24px !important; height: 24px !important; }
.icms-svg-icon.w-32 { width: 32px !important; height: 32px !important; }

/* === Comments на товаре: форма скрыта по умолчанию, видна только при клике
   на «Написать комментарий» === */
.shop_item_comments #comments_add_form { display: none; }
.shop_item_comments #comments_add_form.is-open { display: block; }

/* Tab-nav (заголовок системы комментариев) у нас один — скрываем декоративную линию */
.shop_item_comments .nav-tabs.shop_item_comments_tab { border: 0; padding: 0; margin: 0; }
.shop_item_comments .nav-tabs.shop_item_comments_tab .nav-link { display: none; }
.shop_item_comments_tab + .tab-content { padding: 0 !important; }

/* «Нет комментариев» — менее агрессивный стиль */
.shop_item_comments .no_comments {
    background: #f7f7f7; color: #555; border: 0; padding: 12px 16px;
    border-left: 3px solid #21bea6; margin: 12px 0;
}
/* === конец === */

/* === Кнопка «Написать комментарий» в стиле ЗАКАЗАТЬ ЗВОНОК (concity-стиль) === */
.shop_item_comments #comments_add_link a,
.shop_item_comments .button-add,
.shop_item_comments .button-update {
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #fff !important;
    background: #21bea6 !important;
    border: 0 !important;
    border-radius: 5px !important;
    padding: 9px 18px !important;
    display: inline-block !important;
    text-decoration: none !important;
    transition: background .2s;
}
.shop_item_comments #comments_add_link a:hover,
.shop_item_comments .button-add:hover {
    background: #ff9000 !important;
    color: #fff !important;
}

/* === Скрыть лишние кнопки (колокольчики subscribe/unsubscribe + refresh)
       в блоке комментариев на товаре === */
.shop_item_comments .comments-track,
.shop_item_comments .comments-track-stop,
.shop_item_comments .comments-refresh,
.shop_item_comments [data-action="track"],
.shop_item_comments [data-action="track_stop"],
.shop_item_comments [data-action="refresh"],
.shop_item_comments .comments_actions,
.shop_item_comments .comment-toolbar,
.shop_item_comments .icms-comments__actions {
    display: none !important;
}




/* === Пагинация в стиле 1.x — порт .pagebar / .pagebar_page / .pagebar_current === */
.shop_pages {
    margin: 30px 0;
    text-align: center;
}
.shop_pages ul.pagination {
    display: inline-flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 4px;
    border: 0;
}
.shop_pages ul.pagination li {
    display: inline-block;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
}
.shop_pages ul.pagination li a {
    display: inline-block;
    padding: 6px 10px;
    margin: 2px;
    font-size: 16px;
    color: #323232;
    font-weight: 600;
    background: none;
    border: 0;
    border-radius: 3px;
    text-decoration: none;
    transition: color .15s, background .15s;
}
.shop_pages ul.pagination li a:hover {
    color: #ff9000;
    background: none;
}
.shop_pages ul.pagination li.active a {
    background: linear-gradient(90deg, #19b5c1 0%, #2ec98f 100%);
    color: #fff !important;
    font-weight: 600;
    border: 0;
    box-shadow: none;
}
.shop_pages ul.pagination li.active a:hover {
    background: linear-gradient(90deg, #ff9000 0%, #ffb44d 100%);
}
/* Стрелки next / prev / first / last */
.shop_pages ul.pagination li.disabled a {
    color: #ccc !important;
    pointer-events: none;
}


/* === Сетка каталога: flexbox со строгим размером + запас 1-2px на subpixel округление,
   иначе 4×(25% - gap) > 100% и последняя карточка переносится на новую строку === */
/* === CSS Grid с количеством карточек по брейкпоинтам owl-carousel виджета
   «Вы смотрели» (main.tpl.php → owlCarousel responsive: 0/770/900/1600/1900):
       <900px  — 1 карточка
       900..1599 — 2 карточки
       1600..1899 — 3 карточки
       >=1900 — 5 карточек
   Внутри каждого брейкпоинта карточки растягиваются на 1fr — занимают всю
   ширину ряда без пустот справа. На широком экране = такой же визуал как у виджета. === */
.shop_items_list .row {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    margin: 0;
    align-items: stretch;
    width: 100%;
}
/* Брейкпоинты ТОЧНО как у owl-carousel виджета «Вы смотрели»
   (см. main.tpl.php → owlCarousel.responsive: 0/770/900/1600/1900).
   Это значит: на одной и той же ширине окна каталог и виджет показывают
   одинаковое количество карточек одинаковой ширины. */
@media (max-width: 1899px) {
    .shop_items_list .row { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 1599px) {
    .shop_items_list .row { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 899px) {
    .shop_items_list .row { grid-template-columns: 1fr !important; }
}
.shop_items_list .row > [class*="col-"] {
    width: auto !important;
    min-width: 0;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    flex: unset;
}
.shop_items_list .item { width: 100%; height: 100%; }
.shop_items_list .item > .shoplistitem { height: 100%; }

/* === Fix: убираем Bootstrap-clearfix псевдоэлементы у каталога,
   они превращаются в flex-items и добавляют gap до первой/после последней карточки === */
.shop_items_list .row::before,
.shop_items_list .row::after {
    display: none !important;
    content: none !important;
}

/* === Карточки товаров: тонкая зелёная рамка у всех + толстая у Товар дня + оранжевая при hover === */
.shop_items_list .shoplistitem,
.listitems .shoplistitem {
    border: 1px solid #21bea6 !important;
    border-radius: 5px;
}
.shop_items_list .shoplistitem.is_hit,
.listitems .shoplistitem.is_hit {
    border: 2px solid #21bea6 !important;
}
.shop_items_list .shoplistitem:hover,
.listitems .shoplistitem:hover {
    border: 2px solid #ff9000 !important;
    box-shadow: 0 6px 20px rgba(50, 50, 50, .2);
}

/* === Внутренние страницы (articles/политика/доставка и пр.):
   ограничить ширину для читаемости и оформить контент === */
.component {
    max-width: 980px;        /* читаемая ширина (как у оригинала) — для статей */
    line-height: 1.55;
    color: #444;
}
/* На страницах магазина (каталог / карточка товара) ограничение max-width
   снимаем — каталог должен использовать всю ширину main-колонки, иначе
   карточки получаются узкими в сравнении с виджетом «Вы смотрели» внизу. */
.component:has(.shop_items_list),
.component:has(.shop_detail_item) {
    max-width: none;
}
.component .con_heading,
.component h1 {
    color: #21bea6;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 26px;
    margin: 0 0 20px;
}
.component h2 { color: #21bea6; font-size: 20px; margin: 25px 0 12px; }
.component h3 { color: #444; font-size: 17px; margin: 20px 0 10px; }
.component p  { margin: 0 0 12px; }
.component a  { color: #21bea6; }
.component a:hover { color: #ff9000; }
.component ul, .component ol { margin: 0 0 12px 24px; }

/* На статьях сайдбар такой же ширины как в магазине */
.shoplistitem { box-sizing: border-box; }

/* === Корзина в шапке: не должна переноситься на новую строку === */
.fixrb {
    display: inline-flex !important;
    align-items: center;
    flex-wrap: nowrap;
    white-space: nowrap;
}
.fixrb .module,
.fixrb .modulebody {
    display: inline-block !important;
    margin: 0;
    padding: 0;
}
.fixrb #btnbackphone {
    margin-right: 15px !important;
}
.fixrb .cartlink,
.fixrb .glyphicon-shopping-cart,
.fixrb .cartsumm {
    display: inline-block !important;
    vertical-align: middle;
}
.toprightinf {
    white-space: nowrap;
}

/* === Корзина: точное вертикальное выравнивание с кнопкой «Заказать звонок» === */
.fixrb .module,
.fixrb .modulebody.header-cart {
    display: inline-flex !important;
    align-items: center;
    line-height: 1;
}
.fixrb .glyphicon-shopping-cart {
    margin-top: 0 !important;
    padding-right: 8px !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}
.fixrb .cartsumm,
.fixrb .cartlink {
    line-height: 1 !important;
    vertical-align: middle !important;
}
.fixrb #btnbackphone {
    line-height: 1 !important;
    margin: 0 15px 0 0 !important;
}

/* === Скрываем info_bar (рейтинг/дата/автор) под статьями и др. контентом === */
.content_item .info_bar,
.component .info_bar {
    display: none !important;
}

/* === Логотип: тэглайн «Мы делаем климат доступным» виден в обычном состоянии,
       скрывается ТОЛЬКО при прилипшем меню (header.fixednew, fixheadfirst.fixed) —
       поведение 1:1 с исходником concity.ru === */
header.fixednew .logo span,
.fixheadfirst.fixed .logo span {
    display: none !important;
}

/* === Логотип-тэглайн: контейнер должен иметь padding-bottom, чтобы absolute-span
       (bottom: -20px) укладывался в шапку и не перекрывал контент/хлебные крошки ===
   На исходнике это работало за счёт более высокой шапки (.fixheadfirst в 1.x растягивается
   по флоатам), у нас 2.x чуть компактнее — поэтому добавляем явный нижний отступ. */
header:not(.fixednew) .fixheadfirst { padding-bottom: 28px; }
.logo { position: relative; }

/* =====================================================================
   Комментарии — стилизация в духе concity_atw (мятный #21bea6 / оранж #ff9000)
   ===================================================================== */

/* Контейнер комментариев в карточке товара */
.shoplistitem ~ #comments_list,
.component #comments_list,
.component #comments_add_form,
.component #comments_add_link,
.component #comments_refresh_panel,
.shop_detail_item #comments_list,
.shop_detail_item #comments_add_form,
.shop_detail_item #comments_add_link,
.shop_detail_item #comments_refresh_panel {
    font-family: inherit;
}

/* «Написать комментарий» — основная кнопка в стиле #btnbackphone */
#comments_add_link {
    margin: 12px 0;
}
#comments_add_link a,
#comments_add_link a.ajaxlink {
    display: inline-block;
    background: #21bea6 !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 5px;
    padding: 9px 22px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none !important;
    box-shadow: 0 2px 4px rgba(33,190,166,.25);
    transition: background .15s ease, box-shadow .15s ease, transform .05s;
}
#comments_add_link a:hover,
#comments_add_link a.ajaxlink:hover {
    background: #ff9000 !important;
    box-shadow: 0 3px 8px rgba(255,144,0,.3);
}
#comments_add_link a:active { transform: translateY(1px); }

/* Кнопки внутри формы (Отправить, Отменить, Превью) */
#comments_add_form .buttons {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
#comments_add_form .buttons .button,
#comments_add_form .buttons button.btn {
    background: #21bea6 !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 5px !important;
    padding: 9px 22px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    box-shadow: 0 2px 4px rgba(33,190,166,.25);
    transition: background .15s ease;
    cursor: pointer;
}
#comments_add_form .buttons .button:hover,
#comments_add_form .buttons button.btn:hover {
    background: #ff9000 !important;
    box-shadow: 0 3px 8px rgba(255,144,0,.3);
}
/* Отмена/Превью — outline-вариант */
#comments_add_form .buttons .button-cancel,
#comments_add_form .buttons .button-preview {
    background: #fff !important;
    color: #21bea6 !important;
    border: 1px solid #21bea6 !important;
    box-shadow: none;
}
#comments_add_form .buttons .button-cancel:hover,
#comments_add_form .buttons .button-preview:hover {
    background: #fff !important;
    color: #ff9000 !important;
    border-color: #ff9000 !important;
}
#comments_add_form .buttons .button > span,
#comments_add_form .buttons button.btn > span {
    color: inherit !important;
    background: transparent !important;
}

/* Кнопка «Обновить» */
#comments_refresh_panel {
    display: inline-block;
    margin: 6px 0 12px;
}
#comments_refresh_panel .refresh_btn {
    display: inline-block;
    width: 32px; height: 32px;
    line-height: 32px;
    text-align: center;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #21bea6;
    color: #21bea6 !important;
    text-decoration: none !important;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
#comments_refresh_panel .refresh_btn:hover {
    background: #21bea6;
    color: #fff !important;
}
#comments_refresh_panel .refresh_btn::before {
    content: "\21bb"; /* ↻ */
    font-size: 18px;
    line-height: 1;
}
/* Если icms-svg-icon — оставляем как есть, иначе ::before работает */
#comments_refresh_panel .refresh_btn:has(svg)::before,
#comments_refresh_panel .refresh_btn:has(.icms-svg-icon)::before { content: none; }

/* Чекбокс «Подписаться» (.track) */
.track {
    margin: 6px 0 12px;
    color: #444;
}
.track label { cursor: pointer; }
.track input[type=checkbox] { accent-color: #21bea6; margin-right: 6px; }

/* Заголовок-таб «Комментарии» */
#comments_list_title,
.comments-tab,
.tab-comments,
h2.comments-title,
.component h2:has(+ #comments_refresh_panel) {
    color: #21bea6;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 18px;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 8px;
    margin: 24px 0 12px;
}

/* «Нет комментариев. Ваш будет первым!» — заменяем bootstrap-alert на наш стиль */
#comments_list .no_comments,
.no_comments {
    background: #f0fbf9 !important;
    border: 1px solid #21bea6 !important;
    color: #21bea6 !important;
    border-radius: 5px;
    padding: 10px 14px;
    font-size: 14px;
    margin: 8px 0 14px;
}

/* Логин-приглашение (если гостям нельзя писать) */
.login_to_comment {
    margin: 8px 0 14px;
    color: #666;
}
.login_to_comment a { color: #21bea6; }
.login_to_comment a:hover { color: #ff9000; }

/* Wysiwyg-обёртка формы — тонкая мятная рамка вместо серой */
#comments_add_form .icms-wysiwyg,
#comments_add_form .wysiwyg,
#comments_add_form .wysiwyg-toolbar,
#comments_add_form textarea {
    border-color: #c8eee6 !important;
}
#comments_add_form .wysiwyg-toolbar a,
#comments_add_form .wysiwyg-toolbar button {
    color: #21bea6 !important;
}
#comments_add_form .wysiwyg-toolbar a:hover,
#comments_add_form .wysiwyg-toolbar button:hover {
    color: #ff9000 !important;
    background: #f0fbf9 !important;
}

/* Карточка одного комментария */
.comments_list .comment,
.comment {
    border: 1px solid #e5e5e5;
    border-radius: 5px;
    padding: 12px 14px;
    margin: 8px 0;
    background: #fff;
}
.comment .comment_author a,
.comment .author a { color: #21bea6 !important; font-weight: 600; }
.comment .comment_author a:hover { color: #ff9000 !important; }
.comment .comment_date,
.comment .date { color: #999; font-size: 12px; }


