/*
 Theme Name:   Farmcon
 Description:  Farmcon
 Author:       Andrei Shindryaev
 Author URI:   https://10-10-10.ru
 Template:     bootscore-main
 Version:      1
 Text Domain:  farmcon
*/

/*   
All style editing is done via css/scss/_bscore_custom.scss
*/

@import url("fonts/stylesheet.css");

html * {
	font-family: 'Gotham Pro';
}

.single-programms {
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	line-height: 27px;
	color: #000;
}

h1 {
    color: #4D596E;
}


a {
	color: #0C0C0C;
}
a:hover {
	color: #000;
}
.flex {
	display: flex;

	align-items: stretch;
}
.girl {
	/* background: url(img/girl.png) top right no-repeat; */
	margin-right: -100px;
    position: relative;
}
.bg-top-banner {
	background: #62C1D7;
}
.top-banner {
	display: block;
    height: 75px;
    background: url(img/top-banner.png) top center no-repeat;
	background-size: contain;
}
.top-banner-m {
	display: block;
    height: 75px;
    background: url(img/top-banner-m.png) top center no-repeat;
	background-size: contain;
}
.hours-tags {
	margin-top: 25px;
	display: flex;
    gap: 30px;
}

.hours-tags-subpage {
	gap:20px;
	flex-wrap: wrap;
}
.hours-tags-subpage a {
	border-radius: 50px;
	font-size: 16px;
	text-decoration: none;
	padding: 3px 10px;
}
.page-template-programms .hours-tags a {
	min-height: unset;
	padding: 10px;
}
h1.max478 {
	margin-top: 80px;
	display: inline-block;
	text-transform: uppercase;
    font-size: 35px;
    font-weight: 700;
}
.max478 {
	max-width: 570px;
}
.max478 p {
	font-size: 24px;
	font-weight: 400;
	line-height: 36.89px;
}
.container {
    max-width: 1120px !important;
}
.events-slider div.item {
    background: #FFF;
    color: #000;
    background: #FFFFFF;
	border: 1px solid #EEEFF1;
	box-sizing: border-box;
	border-radius: 5px;
	margin-bottom: 1rem;
    height: 90%;
	
	-webkit-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
	border-radius: 5px;

}
.events-slider .price {
	color: #BEBEBE;
	font-size: 14px;
	font-weight: unset;
}
.swiper-wrapper h2 {
    margin-bottom: 0px;
    margin-top: 10px;
	min-height: 120px;
}

.swiper-buttons {
    display: flex;
    width: 120px;
    margin: 0px auto;
    justify-content: center;
    background-image: url(img/next2.svg);
}
.swiper-button-next {
    right: 0px;
    text-align: right;
    
}
.swiper-button-prev {
    left: 0px;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 18px;
}

.page-template-main .site-content {
    /*max-width: 1200px !important;*/
}
.swiper-button-next-events-slider:hover, 
.swiper-button-prev-events-slider:hover,
.swiper-button-next-freeOld:hover, 
.swiper-button-prev-freeOld:hover 
{
    background-image: url(img/next_hover.svg);
}
.swiper-button-next-events-slider, 
.swiper-button-prev-events-slider,
.swiper-button-next-freeOld, 
.swiper-button-prev-freeOld 
{
    background-image: url(img/next.svg);
    width: 33px;
    height: 33px;
    margin: 20px 10px 0px 10px;
    z-index: 10;
    cursor: pointer;
    background-size: 33px 33px;
    background-position: center;
    background-repeat: no-repeat;
}
.swiper-button-prev-events-slider, 
.swiper-button-prev-freeOld
{
    transform: rotate(180deg);
}
.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,12px));
    height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,12px));
}


.programm-content {
	max-width: 840px;
	font-weight: 400;
	font-size: 14px;
}


.programm_steps {

    counter-reset: my-awesome-counter;
    list-style: none;
    padding-left: 80px;
    
}
.programm_steps li {

  counter-increment: my-awesome-counter;
  position: relative;
  font-size: 14px;
  margin-bottom: 60px;
}
.programm_steps li::before {
   
  content: counter(my-awesome-counter);
  color: #FFF;
  font-size: 1.5rem;
  font-weight: bold;
  position: absolute;
  --size: 55px;
  left: calc(-1 * var(--size) - 20px);
  line-height: var(--size);
  width: var(--size);
  height: var(--size);
  top: 0;
  background: #005494;
  border-radius: 50%;
  text-align: center;
  filter: drop-shadow(3px 4px 2px #8c8c8c);
}
.pack_programm {
    float: left;
    margin: 0 14px 20px 0;
    width: 260px;
}
.pack_programm.orange {
    background: #FF9314;
}
.pack_programm.green {
    background: #479C9C;
}
.pack_programm.blue {
    background: #8038F5;
}
.pack_programm.red {
    background: #F53838;
}
.pack_programm p {
    color: #FFF !important;
}
.pack_programm p.pack_price {
    font-size: 48px !important;
}
.pack_programm p.pack_name {
    font-size: 24px !important;
}
.pack_programm p.pack_hours {
    font-size: 24px !important;
    font-weight: bold;
}
.clear {
    clear: both;
}
.swiper-gallery {
    width: 100%;
    height: 100%;
}
.swiper-gallery .swiper-slide {

  height: 300px;
  width: auto;
  margin-right: 8px;
 display: flex;
}
.swiper-gallery img {
    display: block;
    width: auto;
    height: 300px;
    object-fit: cover;
}
.main-slide-item {
    display: flex;
    justify-content: end;
    flex-direction: row;
    align-items: flex-end;
    position: relative;
    height: 100% !important;
    padding-right: 40px;
}
.main-slide-item .h-100 {
    padding: 0px;
}


#content.events {
    background: url(img/bigMap.webp) top center;
    background-repeat: no-repeat;
    padding-top: 1px;
}
#content.events h1 {
    margin-top: 100px;
}
#content.events h1, #content.accr h1 {
    margin-top: 260px;
}

#content.accr {
    background: url(img/accr.webp) top center;
    background-repeat: no-repeat;
    padding-top: 1px;
}

.events-slider .item-header {
    /*height: 52px;*/
}

.events-subheader {
    margin: 0 auto;
    color: #FFF;
    width: 250px;
    text-align: center;
    margin-top: 100px;
}

.events-slider .item-city {
	font-weight: bold;
	font-size: 16px;
	color: #4D596E;
	background: url(img/mapPoint2.svg) no-repeat;
	padding-left: 25px;
}
.events-slider .item-city-date {
	gap: 30px;
}
.events-slider .item-address {
	font-size: 14px;
	color: #BEBEBE;
	margin-left: 25px;
    line-height: 16px;
	margin-top: 5px;
}
.events-slider .item-date {
	font-weight: bold;
	font-size: 16px;
	color: #4D596E;
}
.events-slider .item-title {
	font-size: 24px !important;
	font-weight: 500 !important;
    color: #4D596E;
}

.events-slider h3 {
	margin: 40px 0 0 0;
}
.events-slider .who {
	font-size: 14px;
}

.events-slider  .item-header {
	font-size: 18px !important;
	font-weight: 700 !important;
}

.events-slider .first-event {
	background-image: url(img/events_start_bg.jpg);
	height: 90%;
	border-radius: 5px;
	align-items: center;
    justify-content: center;
}
.events-slider .first-event h2 {
	color: #FFF;
	max-width: 250px;
    text-align: center;
}


.page-template-main h2 a {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.item-program {
    border: 1px solid #DAEAFF;
    padding: 30px;
    margin-bottom: 20px;
	border-radius: 10px;
	padding-top: 50px;
}

.item-program-subheader {
    color: #063ECD;
    font-size: 24px;
    line-height: 28px;
}
.item-program-hours {
    font-weight: 700;
    font-size: 24px;
    line-height: 30px;
}
.item-program-description {
    
    font-weight: 400;
    font-size: 14px;
    line-height: 23px;
    color: #000000;
}
.item-program-price {
    font-weight: 700;
    font-size: 48px;
    line-height: 125.19%;
    color: #063ECD;
    margin-bottom: 0px;
}
.item-program-price sub {
    bottom: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 21px;
}
.item-program-submit {
    width: 100%;
}
.item-program-submit a {
    display: block;
    background: #063ECD;
    font-size: 18px;
    line-height: 154.69%;
    color: #FFFFFF;
    border-radius: 10px;
}

.green2 {
    background: #479C9C;
    color: #FFF;
}
.lightgrey {
	background: transparent;
	color: #C6C6C6;
	border: 1px solid #C6C6C6;
	font-size: 18px;
	font-weight: 400;
	box-sizing: border-box;
	border-radius: 10px;
	font-style: normal;
	line-height: 21px;	
}
.orange2 {
    background: #FF9314;
    color: #FFF;
}
.right_blocks {
	padding: 35px;
	margin-bottom: 0px;
	margin-top: 20px;
	border-radius: 10px;
}
.right_blocks p, .right_blocks2 p {
	margin-bottom: 0px;
	
}
.right_blocks2 {
	background: #DAEAFF;
	padding: 15px;
	margin-bottom: 30px;
	border-radius: 5px;
	font-size: 14px;
	line-height: 20px;
}
.right_blocks2 h3 {
	margin: 0 0 10px 0;
}
.right_blocks2 ul {
	padding-left: 20px;
}




@media (max-width: 991px) {
	
	.container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
		padding-right: var(--bs-gutter-x, 1.25rem);
		padding-left: var(--bs-gutter-x, 1.25rem);
	}
	
    .page-template-main #masthead {
        margin-top: 0px;
    }
	.page-template-main a.nav-link {
        color: #005494;
    }
	.courses div a {
		padding: 30px;
		
	}
	.courses div a div.caption {
		line-height: 30.56px;
	}
	.page-template-main .akkred {
		padding: 35px 35px;
	}
	.page-template-main .akkred h2 {
		font-size: 28px;
		line-height: 40px;
		text-align: center;
	}
	.page-template-main .main-slide-item {
		padding-right: 15px;
		display: block;
	}
	.page-template-main .main-slide-item .subitem {
		position: relative !important;
	}

	h1 {
		font-size: 22px; 
	}
	
	.item-program {
		padding: 22px;
		font-weight: 400;
		font-size: 14px;
		line-height: 23px;
	}
	
	.item-program-price sub {
		display: block;
		
	}
	.item-program-submit {
		margin-top: 20px !important;
	}
	
	h2.max478 {
		font-weight: 700;
		font-size: 38px;
		line-height: 45px;
	}
	
	.hours-tags a {
		font-size: 24px;
		width:160px;
	}
	
	.offcanvas  {
		background: #FFF;
	}
	.offcanvas .navbar-nav {
		width: 100%; 
	}
	.offcanvas a.nav-link {
		font-weight: 400;
		font-size: 16px;
		line-height: 38px;
		color: #4D596E;
		margin-bottom: 16px;
		text-decoration: none;
	}

	.offcanvas-header .btn-close {
		color: #4D596E !important;
		font-size: 30px;
	}
    
    #bootscore-navbar.navbar-nav > .nav-item::after {
        display: none;
    }
    
    
	.girl {
		background: url(img/girl.png) no-repeat;
		padding-top: 312px;
	}
	.girl01 {display: none;}
	
	.page-template-main .partners a {
		margin: 0 auto;
	}
	.programm-content {
		font-style: normal;
		font-weight: 400;
		font-size: 14px;
		line-height: 165.7%;
	}
	
}
.vector{width: 359px;height: 339px; position: absolute; right: 10px;top: 10px; z-index: -1;} 
.vector2{width: 255px;height: 243px; position: absolute; left: 50px;top: 1370px;}
.ellipse80{width: 144px;height: 140px; position: absolute; left: 0px;top: 370px;}
.ellipse82{width: 412px;height: 401px; position: absolute; right: 80px;top: 10px;}
.ellipse81{width: 258px;height: 251px; position: absolute; right: 360px;top: 230px; opacity: 0.8;}
.girl01{width: 536px;height: 347px; position: absolute; right: 10px;top: 10px;}

.courses a {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
footer {
	background-color: #EEEFF1;
}
footer .contact {
	justify-content: flex-end;
}
footer .contact, footer .contact a {
	background-color: #307CF9;
	color: #FFF !important;
}
footer .navbar-nav {
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	margin: 0px !important; 
	gap: 5px 15px;
}
footer .navbar-nav .nav-link {
	padding: 0px;
}

footer .footer-menu {
	gap: 20px;
	justify-content: space-between;
	align-items: center;
}

footer .footer-menu > div {
	/*width: 33%;*/
}

footer a {
    text-decoration: none;
}
footer a.policy {
    font-size: 12px;
}
footer a.policy:hover {
    text-decoration: underline;
}


@media (max-width: 991px) {
	footer .d-flex {
		display: flex !important;
		flex-direction: column;
		align-items: center;
	}
	footer .footer-menu > div {
		width: 100% !important;
		max-width: 100% !important;
		text-align: center;
	}
}
/* a.hours90, a.hours90i, div.show90 {display: none ;} */






a.nav-link {
	color: #4D596E;
	font-size: 13px;
	text-decoration: none;
    padding-right: 1.2rem !important;
    padding-left: 1.2rem !important;
}
a.nav-link:hover, a.nav-link.active, a.nav-link:focus, a.lk:hover {
	color: #4D596E;
    
}

/* Делаем пункты меню относительными для позиционирования черточек */
#bootscore-navbar.navbar-nav > .nav-item {
    position: relative;
    border-right: none !important; /* На всякий случай отключаем старые рамки */
}

/* Создаем черточку с помощью псевдоэлемента */
#bootscore-navbar.navbar-nav > .nav-item::after {
    content: "";
    position: absolute;
    right: 0;
    
    /* Центрируем черточку по вертикали */
    top: 50%;
    transform: translateY(-50%);
    
    /* Точные размеры черточки */
    width: 1px;
    height: 16px; /* <-- МЕНЯЙТЕ ВЫСОТУ ЗДЕСЬ (например: 14px, 16px, 18px) */
    
    /* Цвет линии */
    background-color: #b3b3b3; 
}

/* Убираем черточку у самого последнего пункта меню */
#bootscore-navbar.navbar-nav > .nav-item:last-child::after {
    display: none !important;
}

.dropdown-menu {
    font-size: 13px;
}

.btn-grey {
    color: #4D596E;
    border: 1px solid #4D596E;
    border-radius: 50px;
    font-size: 13px;
    padding: 6px 20px;
    font-family: 'Gotham Pro Medium';
}
.btn-grey:hover {
    color: #4D596E;
    background-color: #EEEFF1;
}

.hours-panel {
    background-color: rgba(255, 255, 255, 0.75);
    display: inline-block;
    margin-top: 60px;
    border-radius: 5px;
    padding: 25px;
    font-weight: bold;
}


.navbar-nav {
    width: unset;
}

.home h2, home .h2 {
        font-size:22px;
        font-weight:bold;
        color:#307CF9
    }

.home #content {
	background: url(img/mainBG.webp) center top no-repeat;
	min-height: 500px;
}
.main-subtitle {
	font-size: 20px;
	text-transform: uppercase;
}

.blockEvents {
	display: flex;
    margin-top: 20px;
}
#divCal {
	min-width: 265px;
	position: relative;
}

#events {
	display: flex;
    flex-wrap: wrap;
	gap: 25px;
}
#events .event {
	width: 30%;
	max-width: 264px;
	background: url(img/eventBg.png) right top no-repeat;
	background-size: cover;
	height: 165px;
	display: flex;
    flex-direction: column;
    justify-content: space-between;
	padding: 15px;
	text-decoration: none;
}
#events .event .city {
	background: url(img/location.svg) left top no-repeat;
	padding-left: 25px;
	color: #4D596E;
	font-size: 16px;
	font-weight: bold;
}
#events .event .data {
	display: flex;
	flex-wrap: nowrap;
    justify-content: space-between;
	align-items: center;
	color: #4D596E;
}
#events .event .data>div {

}
.event-reg-btn {
    background: #307CF9;
    border-radius: 50px;
    color: #FFF;
    font-size: 14px;
    font-weight: bold;
    display: block;
    padding: 8px 10px;
    text-align: center;
}
#events .event:hover .event-reg-btn, .hasEvents .event-reg-btn:hover {
	background: #0B4CB7;
	color: #FFF;
}
#events .event .data .day {
	font-size: 32px;
	font-weight: bold;
}
#events .event .data .year {
	font-size: 14px;
}
#events .event .data .month {
	font-size: 14px;
	font-weight: bold;
	margin-top: -10px;
}
#events .event.hiddenEvent {
	display: none;
}
#showMoreEvents {
	background: #EEEFF1;
	text-align: center;
	display: block;
	color: #4D596E;
	text-decoration: underline;
	font-size: 14px;
	border-radius: 5px;
	width:96.5%;
    padding: 5px;
    cursor: pointer;
}
#calendarPopup {
	display: block;
	position: absolute;
	width: 100%;
	background: #FFF;
	left: 0;
	border: 1px solid #BEBEBE;
	-webkit-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	padding: 10px;
}

.calendar-wrapper {
    margin-top: 70px;
    width: 265px;
}

.breadcrumbs {
	margin-bottom: 30px;
}

.breadcrumbs, .breadcrumbs a {
	color: #BEBEBE;
	font-size: 11px;
	text-decoration: none;
}


h3, .h3 {
    font-size: 18px;
	margin: 20px 0 20px 0;
}



.programma {
	display: flex;
	-webkit-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	border-radius: 5px;
	margin-bottom: 25px;
	
}
.programma .data {
	flex: 2;
	position: relative;
	padding: 17px 150px 20px 20px;
	border-radius: 5px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	border: 1px solid #DAEAFF;
	border-left: 0px;
}
.programma .data .hours {
	position: absolute;
    right: 0;
    top: 20px;
    padding: 0 20px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
	font-size: 14px;
	font-weight: bold;
}
.programma .bg {
	min-width: 265px;
	width: 265px;
	min-height: 340px;
	background-size: cover;
    background-position-x: right;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.programma .caption {
	font-size: 18px;
	font-weight: bold;
}
.programma .description {
	font-size: 14px;
}
.programma .start-text {
	font-size: 14px;
	color: #BEBEBE;
}
.programma .price {
	margin-bottom: 1rem;
}
.programma .btn-group {
	display: flex;
	gap: 10px;
}

.single-programma .hours {
    display: inline-flex;
    padding: 0 20px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: bold;
	margin-bottom:  1rem;
}
.single-programma h1 {
	margin-bottom: 40px;
}

.packs_block {
	display: flex;
	gap: 30px;
}
.packs_block .item-program {
	flex: 1;
	box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
	position: relative;
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.packs_block .item-program .hours {
	position: absolute;
	margin: -25px 0 0 -30px;
	border-bottom-left-radius: 0px;
	border-top-left-radius: 0px;
}
.price {
	color: #005695;
	font-weight: bold;
	font-size: 18px;
}
.greyText {
	color: #BEBEBE;
	font-weight: normal;
	font-size: 14px;
	margin: 0.5rem 0;
}
.blueText {
	color: ##005695;
	font-weight: normal;
	font-size: 14px;
	margin: 0.5rem 0;
}
.hasEvents .event-reg-btn {
    text-decoration: none;
    text-align: center;
}
.single-programma .event-reg-btn {
	max-width: 200px;
	margin: 1.5rem 0;
}
.item-program .price {
	margin-top: 20px;
}


hr {
    margin: 2rem 0;
}
.split { padding: 0 20px;}


.show36 .hours {background: #DAEAFF; color: #000;}
.show72 .hours {background: #005695; color: #FFF;}
.show90 .hours {background: #46267E; color: #FFF;}
.show144 .hours {background: #D40000; color: #FFF;}
.show504 .hours {background: #FF9900; color: #FFF;}

.show36 .bg {background-image: url(img/36bg.jpg);}
.show72 .bg {background-image: url(img/72bg.jpg);}
.show90 .bg {background-image: url(img/90bg.jpg);}
.show144 .bg {background-image: url(img/144bg.jpg);}
.show504 .bg {background-image: url(img/504bg.jpg);}

.photogallery {
	display: flex;
	gap: 25px;
    flex-wrap: wrap;
    justify-content: center
}
.photogallery a {
	display: block;
	-webkit-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.25);
	width: 254px;
	height: 168px;
	background-size: cover;
	position: relative;
}
.photogallery a:after {
	content: '';
	display: block;
	background: url(img/lupa.svg) center center no-repeat;
	width: 100%;
	height: 100%;
	display: none;
}
.photogallery a:hover {
	filter: brightness(50%);
}
.photogallery a:hover:after {
	display: block;
}
.lightblue {
	border-radius: 5px;
	padding: 10px;
}

a.lightblue-btn {
    background: #DAEAFF;
    border-radius: 50px;
    color: #005695;
    font-size: 14px;
    display: inline-block;
    padding: 5px 40px;
	text-decoration: none;
}
.lightblue-btn:hover { background: #BDD0E9; }
.lightblue-btn:active { background: #DAEAFF; color: #83AED5; }

a.darkblue-btn {
	background: #005695;
    color: #FFF;
    border-radius: 50px;
    font-size: 14px;
    padding: 5px 40px;
	text-decoration: none;
}

.darkblue-btn:hover { background: #003A65; }
.darkblue-btn:active { color: #73A2C5; }


a.white-btn {
	background: #FFF;
    color: #4D596E;
    border-radius: 50px;
    font-size: 14px;
    padding: 5px 40px;
	text-decoration: none;
    border: 1px solid #4D596E;
}

.white-btn:hover { background: #EEEFF1; }
.white-btn:active { background: #EEEFF1; }

a.lightgreen-btn {
	background: #00B7DB;
    color: #FFF;
    border-radius: 50px;
    font-size: 14px;
    padding: 5px 40px;
	text-decoration: none;
    border: 0px solid #00B7DB;
}

.lightgreen-btn:hover { background: #008FAC; }
.lightgreen-btn:active { background: #008FAC; }

.accreditations {
	display: flex;
	flex-direction: column;
    border-bottom: 1px solid #BEBEBE;
    margin-bottom: 40px;
}

.accreditation {
	display: flex;
    border-top: 1px solid #BEBEBE;
	padding-bottom: 20px;
    align-items: center;
}
.accr-button {
    min-width: 265px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.accreditation > div {
	
}
.accreditation .image {
	width: 100%;
	height: 166px;
	background-size: cover;
}
.accreditation .caption {
	margin: 25px 12px 12px 0;
    color: #307CF9;
}
.accreditation .content {
	margin: 12px 12px 12px 0;
    font-size: 14px;
    color: #4D596E;
}
.cost {
	color: #4D596E;
	font-weight: bold;
	font-size: 16px;
	margin: 0px 12px 12px 12px;
}

.accreditation .buttons {
	display: flex;
    justify-content: space-evenly;
}

.accreditation .buttons a {
	padding: 7px 25px !important; 
	font-weight: bold;
}

.s-accreditation .buttons {
	align-items: center;
	margin-top: 40px;
}
.s-accreditation .buttons .cost {
	margin: unset;
	margin-right: 20px;
}
.s-accreditation .buttons .event-reg-btn {
	padding: 7px 50px;
    max-width: unset;
}


.chooseCity {
	align-items: center;
    justify-content: space-between;
}
.chooseCity > div {
	flex:1;
}
.chooseCity .line {
	background: #BEBEBE;
	height:1px;
}
.chooseCity .btnChooseCity {
	text-align: center;
    background-color: #307CF9;
    padding: 10px;
    margin: 0px 30px;
    color: #FFF;
    border-radius: 50px;
    /* border-color: #FFF; */
    -webkit-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border: 1px solid #FFF;
	max-width: 320px;
	cursor: pointer;
}

.city-selector-wrap {
	display: none;
	overflow-y: auto;
	position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
	left: 0; top: 0; right: 0; bottom: 0;
}
.city-selector {
	/* position: absolute;
	left: 50%;
	top: 50%; */
	display: block;
	background: #FFF;
	/* transform: translate(-50%, -50%); */
	width: 760px;
	padding: 20px;
	margin: 0 auto;
	margin-top: 100px;
	
	border: 1px solid #DAEAFF;
    box-sizing: border-box;
    -webkit-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border-radius: 5px;
	
}
.city-selector-header {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #BEBEBE;
	padding-bottom: 14px;
}
.city-selector-close {
	cursor: pointer;
}

.citiesList {
	align-items: stretch;
    justify-content: space-evenly;
	margin: 20px;
}
.citiesList .letter {
	color: #BEBEBE;
	font-weight: bold;
	font-size: 18px;
	width: 40px;
}
.citiesList .item {
	margin-bottom: 20px;
}
.citiesList .list {
	padding-top: 3px;
}

.citiesList a {
	color: #005695;
	font-size: 14px;
	display: block;
	margin-bottom: 5px;
    text-decoration: none;
}

.block_lightblue {
	border-radius: 5px;
	padding: 5px 15px;
	
}
.topBlockLightblue .block_lightblue {
	height: 100px;
    display: flex;
    align-items: center;
	justify-content: center;
}
.topBlockLightblue .block_lightblue p {
	margin-bottom: 0px;
}
.contact_block h5 {
	margin-top: 40px;
}
.contact_block p {
	margin: 0px;
}
.contact_block .email {
	background: url(img/email.svg) 0px 5px no-repeat;
	padding-left: 30px;
}
.contact_block .phone {
	background: url(img/phone.svg) 0px 5px no-repeat;
	padding-left: 30px;
}
.contact_block .whatsapp {
	background: url(img/whatsapp.svg) 0px 3px no-repeat;
	padding-left: 30px;
}
.contact_block .tg {
	background: url(img/tg.svg) -2px 0px no-repeat;
    padding-left: 30px;
    background-size: contain;
    height: 27px;
}
.contact_block .and-tg {
    padding-left: 25px;
	display: flex;
}
.contact_block .and-tg::before {
	content: '';
    background: url(img/tg.svg) 0px 0px no-repeat;
    width: 30px;
    height: 25px;
    background-size: contain;
}
.max {
    background: url(img/max.svg) 0px 0px no-repeat;
    width: 24px;
    height: 24px;
    background-size: contain;
    display: inline-block;
    margin-right: 10px;
}
.s-accreditation .content2 {
		gap: 40px;
	}

.conf-headerbg {
	background: #BDD0E9;
}
.part1 {
	width: 300px;
    height: 265px;
    background-color: #005695;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    color: #FFF;
    padding: 30px;
}

.part2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
	font-size: 22px;
	color: #005695;
	font-weight: bold;
	align-items: flex-start;
}
.part2 h1 {
	margin-bottom: 0px;
}

.goto {
    display: inline-block;
    background: #BF9000;
    color: #FFF;
    border-radius: 50px;
    padding: 5px 40px;
    text-align: center;
    text-decoration: none;
    margin-top: 20px;
    font-size: 14px;
	font-weight: normal;
}
.goto:hover {
	color: #FFF;
}

.goto.programm {
	background-image: url(img/pdf.svg);
    background-repeat: no-repeat;
    background-size: 26px;
    background-position: 14px;
}

.lazy-element {
    opacity: 0;
    transform: translateY(20px); /* Добавляем эффект появления */
    transition: opacity 0.5s ease, transform 0.5s ease;
    will-change: opacity, transform; /* Оптимизация для браузера */
}

.lazy-element.visible {
    opacity: 1;
    transform: translateY(0);
}



.navbar {
    height: 95px;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.25);
}

.site-header img.logo {
    max-height: 44px;
}


.accr-content {
    display: flex;
    gap: 20px;
    font-size: 14px;
    margin-bottom: 40px;
}
.accr-content > div {
    background-color: rgba(255, 255, 255, 0.75);
    border-radius: 5px;
    padding: 16px 13px 16px 13px;
}
.rec-to-conf {
    max-width: 265px;
}



@media (max-width: 900px) {
	.home #content {
		background-position-x: -930px;
	}
	.header-actions .btn i {
		color: #4D596E !important;
	}
    
    .home #content {
        background: url(img/mainBG-mob.webp) center top no-repeat;
        min-height: 500px;
    }

	.conf-headerbg > div.flex {
		flex-direction: column;
		padding: 0px;
	}
	.part1 {
		width: 100%;
		height: 150px;
	}
	.part2 {
		font-size: 20px;
	}
    
    
    .navbar .btn-grey {
        display: flex;
        text-wrap: auto;
        line-height: 14px;
        justify-content: center;
        max-width: 115px;
        text-align: center;
    }
    
    .navbar-brand {
        margin-right: 0px;
        flex: 2;
    }
    .navbar {
        height: 65px;
    }
	.site-header img.logo {
        max-height: 33px;
    }
	
	h1.max478 {
        font-size: 28px;
        margin-top: 200px;
    }
	
	.main-subtitle {
		font-size: 14px;
	}
    
    .hours-panel {
        margin-top: 35px;
        padding: 0;
        flex-wrap: wrap;
    }
    
	.hours-tags {
		display: flex;
		gap: 35px 0;
		margin-bottom: 35px;
		justify-content: center;
        flex-wrap: wrap;
	}
    .calendar-wrapper {
        width: 100%;
    }
    
    footer {
        background-color: #307CF9;
        color: #FFF;
        padding-top: 20px;
    }
    footer a {
        color: #FFF;
    }
    
    
    .footer-menu {
        padding: 0px;
    }
    footer .contact, footer .contact a {
        background-color: #EEEFF1;
        color: #4D596E !important;
    }
    
    
	.hours-tags a {
		font-size: 18px;
		width: unset;
		margin-right: unset;
		margin-bottom: unset;
		width: 40%;
	}
	.blockEvents {
		flex-direction: column;
	}
	#events {
		flex-direction: column;
	}
	#events .event {
		width: unset;
		max-width: unset;
	}
	.calendar-wrapper {
		margin-top: 30px;
	}
	footer>div {
		padding-top: 20px;
	}
	.programma {
		flex-direction: column;
	}
	
	.programma .bg {
		width: 100%;
		height: 245px;
		background-size: cover;
		background-position: right bottom;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
		border-bottom-left-radius: 0;
	}
	.programma .data {
		padding: 20px;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		border-bottom-left-radius: 5px;
		border: 1px solid #DAEAFF;
		border-top: 0px;
	}
	
	.programma .btn-group {
		flex-direction: column;
	}
	
	
	a.lightblue-btn, a.darkblue-btn {

		padding: 15px 40px !important;
		text-align: center;
		width: 100%;
        margin: 10px 0;
	}
	.packs_block {
		flex-direction: column;
	}
	.packs_block .item-program .hours {
		margin: -10px 10px 0 -23px;
	}
	h3 {
		margin-top: 35px;
	}
	.right-panel {
		width: 100% !important;
		order: 3;		
	}
	.left-panel {
		width: 100% !important;
		padding: 0px !important;
	}
	.accreditation {
		width: 100%;
	}
	.s-accreditation .content {
		flex-direction: column-reverse;
	}
	.s-accreditation .content2 {
		gap: 0px;
		flex-direction: column;
	}
	.s-accreditation .content img {
		width: 100%;
		margin-bottom: 20px;
	}
	.s-accreditation .buttons,  .s-accreditation .buttons .cost {
		flex-direction: column;
		margin: unset;
		gap: 20px;
	}
	.price-btn {
		flex-direction: column; 
	}
	.events-slider .item-city-date {
		gap: 10px;
		flex-direction: column-reverse;
	}
	.events-slider .first-event {
		height: 140px;
		margin-bottom: 20px;
	}
	.citiesList {
		flex-direction: column;
	}
	.city-selector {
		width: 99%;
		top:100%;
	}
	.chooseCity {
		justify-content: center;
	}
	.chooseCity .btnChooseCity {
		padding: 10px 30px;
		margin: 0px;
	}
	.chooseCity .line {
		display: none;
	}
    
    #content.events {
        background: url(img/map2.webp) top center;
        background-size: 210%;
        background-repeat: no-repeat;
    }
    .events-subheader {
        margin-top: 55px;
    }
    #content.events h1 {
        margin-top: 36px;
    }
    a.white-btn {
        text-align: center;
        margin: 20px;
    }
    
    .accr-content {
        flex-direction: column;
    }
    #content.accr h1 {
        margin-top: 170px;
    }
    .accreditation {
        flex-direction: column;
    }
    .breadcrumbs, .breadcrumbs a {
        font-size: 16px;
        text-decoration: none;
    }
}

.home .hours-tags a {
    border: 0px !important;
}

.hours36 {
    width: 95px;
    height: 75px;
    display: block;
    background: url(img/36.svg) no-repeat !important;
}
.hours72 {
    width: 95px;
    height: 75px;
    display: block;
    background: url(img/72.svg) no-repeat !important;
}
.hours144 {
    width: 110px;
    height: 75px;
    display: block;
    background: url(img/144.svg) no-repeat !important;
}
.hours504 {
    width: 110px;
    height: 75px;
    display: block;
    background: url(img/504.svg) no-repeat !important;
}

.footergallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.footergallery img {
     height: 90px;
}