body {
	font-size: 18px;
	font-size: clamp(1rem, 0.792rem + 0.28vw, 1.125rem);
}

main {padding-bottom: 100px;}

a[href^="tel"], a{color: #2D2A26; }

button:focus,
button:active {
    -moz-outline: 0;
    -ms-outline:0;
    -o-outline: 0;
    -webkit-outline: 0;
} 

.ymaps-2-1-79-balloon__layout{
    border-radius: 16px !important;
}

.ymaps-2-1-79-balloon__content{
   padding: 32px 42px 32px 32px !important;
}

.ymaps-2-1-79-balloon{
    box-shadow: 0 5px 15px -7px rgba(0,0,0,.5) !important;
    border-radius: 16px !important;
}

.ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content {
    margin-right: 0 !important;
    /*width: 428px;*/
    height: 250px;
	width: auto;
}

.ymaps-2-1-79-map.ymaps, .ymaps-2-1-79-map.ymaps:after, .ymaps-2-1-79-map.ymaps:before{
    border-radius: 16px;
}

.ymaps-2-1-79-balloon_to_top .ymaps-2-1-79-balloon__tail{
    display: none !important;
}

.ymaps-2-1-79-balloon__close{
    position: absolute !important;
    top: 0px !important;
    right: 10px !important;
}

.portal_link {font-size: 18px; font-weight: 500;}

.enter-area .low {display: none}
.width--fit-content {width: fit-content;}

.control-label, legend {
    font-size: clamp(1rem, 0.792rem + 0.28vw, 1.125rem);
    font-weight: 500;
	margin-bottom: 16px;

}

.profile_form .control-label {
	margin-bottom: 8px;
}

.enter-area button {display: flex; gap: 12px; align-items: center; font-size: 18px; font-weight: 500;}

form[name="volunteer_form"] .control-label, 
.addvisit-form .control-label  {
	font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
	margin-bottom: 16px;
}

/* form[name="volunteer_form"] .control-label.first_radio{
    margin-bottom: 24px;
} */

.form-control  {

	border-radius: 62px;
	background: #FFF;
	padding: 16px 24px;
	height: 55px;
	width: 100%;
	font-size: clamp(1rem, 0.792rem + 0.28vw, 1.125rem);
}
.back-block {display: inline-flex; align-items: center; gap: 16px;}
.d-flex {display: flex;}
.gap-40 {gap: clamp(1.25rem, -0.833rem + 2.78vw, 2.5rem);}
.flex--end {justify-content: flex-end}
.flex-column {flex: 1 1}
.border--gradient {
  background: linear-gradient(#F6FCFF, #F6FCFF) padding-box,
              linear-gradient(-86.68deg, rgb(0, 244, 153) 46.358%,rgb(17, 183, 239) 115.064%) border-box;
  border: 1px solid transparent;
 
}
.last_form {	
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(1rem, -1.5rem + 3.33vw, 2.5rem);
}


.date-filtr_and_list-map__container{
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}


.date-filtr.high > div > form > input.dateinput {
	
	background: url(../img/calendar-filter.svg) center right no-repeat; 
	/* height: auto; */
    height: 20px;
    /*width: 110px;*/
    z-index: 3;
    position: relative;
    overflow: hidden;
    color:#000;
    text-decoration: underline;
	width: 110px;
	width: clamp(6.8rem, 1.2rem + 7.3333vw, 10rem);
	max-width: 115px;
}


.date-filtr.low > div > form > input.dateinput {
    box-sizing: border-box;
	/* padding-right: 26px; */
	background: url(../img/calendar-filter.svg) center right no-repeat; 
	/* height: auto; */
    height: 20px !important;
    width: 110px !important;
    z-index: 3;
}

.list-map-switcher{
    display: -webkit-flex;
    display: flex;
    -webkit-gap: 12px;
    gap: 12px;
    align-items: center;
}

.referal-link {position: relative;}

[data-action=copy-data]::before {
    content: attr(data-success-text);
    position: absolute;
    left: 50%;
    bottom: 100%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    padding: 10px;
    background: #fff;
    -webkit-box-shadow: 0 3px 13px 0 rgba(11,75,255,.1);
    box-shadow: 0 3px 13px 0 rgba(11,75,255,.1);
    -webkit-transition: opacity .3s ease-in-out,margin-bottom .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out,margin-bottom .3s ease-in-out;
    transition: opacity .3s ease-in-out,margin-bottom .3s ease-in-out;
    opacity: 0;
    font-weight: 500;
    border-radius: 4px;
    pointer-events: none;
}

[data-action=copy-data].copied-data::before {
    margin-bottom: 24px;
    opacity: 1;
}

.date-filtr.high > div > form > .dateinput.flatpickr-mobile {
	padding-right: 5px; background-size: 20px 20px;
}
.error.block-error:empty,
.success.block-success:empty {display: none;}

.success.block-success {
    position: relative;
    display: inline-block;
    border-radius: 16px;
    background: rgb(246, 252, 255);
    border: 1px solid #00F499;
    padding: 12px;
    width: max-content;
    display: flex;
    gap: 8px;
	align-items: center;
}
.success.marked--success.block-success:before,
.form-group--submit .success.block-success:before  {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	background: url(../img/success.svg) no-repeat;
}

.form-group--submit .success.block-success,
.form-group--submit .error.block-error {
	margin-right: auto;
	align-items: center;
}

.error.block-error {
    position: relative;
    display: inline-block;
    border-radius: 16px;
    background: rgb(255, 251, 251);
    border: 1px solid #f41000;
    padding: 12px;
    width: max-content;
}

a.hidestartinfo, a.hidestartinfodate {color: #000; text-decoration: underline;}
a.hidestartinfo:hover, a.hidestartinfodate:hover {text-decoration: none;}
.icon-close {cursor: pointer; position: absolute; top: 12px; right: 12px;}
.icon-info {position: absolute; left: 12px; top: 12px; background: url(../img/mark.svg) no-repeat; width: 16px; height: 16px;}

.mb-12 {margin-bottom: 12px;}
.mb-16 {margin-bottom: 16px;}
.mb-24 {margin-bottom: 24px;}
.mb-32 {margin-bottom: 32px;}
.mb-40 {margin-bottom: 40px;}
.mt-24 {margin-top: 24px;}
.mb-0 {margin-bottom: 0 !important;}

.banner.active-volounteer{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
	border-radius: 16px;
    padding: 64px;
    margin: 32px 0 64px;
	background: url(/upload/volunteer-bg.png) top right no-repeat,
				linear-gradient(45.00deg, rgb(216, 255, 243) 0%,rgb(17, 183, 239) 100%);
}
.profile-right {align-items: center; gap: 24px; flex: 1 0;} 
.usergroup-block {margin-left: auto;}
.username-block {width: 100%;}
.phone-mobile {display: none;}
.banner-title {
    font-size: clamp(1.5rem, 0.667rem + 1.11vw, 2rem);
    font-weight: 500;
    line-height: 140%;
    text-align: left;
    margin-bottom: 12px;
}

/* .date-filtr.high > .date > form {
    display: -webkit-flex;
    display: flex;
    -webkit-gap: 8px;
    gap: 8px;
    width: 110px;
} */

.banner-action_slogan {
    font-size: 18px;
	font-size: clamp(1rem, 0.792rem + 0.28vw, 1.125rem);
    font-weight: 400;
    line-height: 23px;
    text-align: left;
}

.username_and_community_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 32px;
}

.visit-nav-panel{
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.visit-menu, .visit-actions {
    display: flex;
    gap: 24px;
   
}
.visit-menu .date-filtr {margin-left: 8px}

.visit-menu_item button svg {
        display: none;
}
.hidden-desktop {display: none;}
.dropdown__list {display: flex; gap: 24px;}

.date-filtr{
    display: flex;
    align-items: center;
    gap: 24px;
}

.visit-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: clamp(1.5rem, 0.667rem + 1.11vw, 2rem);
}

.referal_coin_blocks_container{
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
}

h1 {
	font-size: clamp(1.5rem, 0.667rem + 1.11vw, 2rem);
	font-weight: 600;
	text-transform: uppercase;	
}

.visit-title h2, .subtitle {
	font-size: clamp(1.25rem, 1.67vw, 2rem);
	font-weight: 500;
	line-height: 140%;
}

.form-control.dateinput { 
    border-radius: 0;
    border: none;
    background: none;
    box-shadow: none;
    padding: 0px;
    height: 55px;
    width: 110px;
    /* text-decoration: underline; */
}
.form-control.dateinput--grey {
	border-radius: 27px;
    border: none;
    background: #F5F5F5;
    box-shadow: none;
    padding: 16px;
    height: 55px;
    width: 100%;
	
}

.bg-block {
	padding:clamp(1.688rem, 0.333rem + 1.81vw, 2.5rem);
	border-radius: 16px;
	background-color: #fff;
}

.visit-row {display: flex; gap: 8px; align-items: center;}
.visits-list {margin-top: 40px;}
.visit-row + .visit-row  {margin-top: 12px;}

.regular-link.visit-row{
    margin-top: 24px;
}

.visit-item	{
	padding: 32px 40px;
	border-radius: 16px;
	background: rgb(255, 255, 255);
	margin-bottom: clamp(1.125rem, 0.5rem + 0.83vw, 1.5rem);
	display: flex;
	justify-content: space-between;
	align-items: center;
	
}

.visit-info{
    position: relative;
}

.visit-item.map-item .visit-info {
    margin-bottom: 32px;
    position: relative;
}



.visit-info .name-row {
	font-weight: 500;	
    font-size: 18px;
}

.visit-info .addres-row{
    font-size: 18px;
}

.finish_container .name-row {
	font-weight: 500;
	font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);	
}

.visit-action .btn {
	padding: 19px 32px;
}

.visits-route .title {
	font-size: clamp(1.5rem, 0.667rem + 1.11vw, 2rem);
	font-weight: 500;
}

.map-container{
    background: white;
    /* padding: 32px; */
    border-radius: 16px;
}

.visits-route .map-container{
    padding: 32px;
}

/* .visit-action .additional-info {
	border-radius: 16px;
	font-size: 14px;
	padding: 12px 40px 12px 36px;
	position: absolute;
	top: calc(100% + 10px);
	
}


.visit-action .additional-info.additional-info-date {
	border-radius: 16px;
	font-size: 14px;
	padding: 12px 40px 12px 36px;
	position: absolute;
	top: calc(100% + 80px);
	width: 100%;
} */



.visit-action .additional-info {
    border-radius: 16px;
    font-size: 14px;
    padding: 12px 40px 12px 36px;
    position: fixed;
    bottom: 95px; 
    /* top: calc(84% + 10px); */
    right: 20px;
    width: 100%;
    max-width: 480px;
    z-index: 5;
}


.visit-action .additional-info.additional-info-date {
    border-radius: 16px;
    font-size: 14px;
    padding: 12px 40px 12px 36px;
    position: fixed;
    bottom: 20px; 
    /* top: calc(86% + 80px); */
    width: 100%;
    max-width: 480px;
}


.additional-info.date_updated{
    border-radius: 16px;
	font-size: 14px;
	padding: 12px 40px 12px 36px;
	position: relative;
	top: calc(100% + 10px);
}

.visit-item .date-row {
	font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
	font-weight: 500;
	line-height: 1.4;
}

.visit-action {display: flex; align-items: center; position: relative; gap: 24px;}


.btn--accent {
	border-radius: 31px;
	position: relative;
    transition: .3s ease;
}
.btn--accent > span {z-index: 1; white-space: nowrap;}
.btn--accent:before {
	content: "";
    position: absolute;
	display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: opacity 1s ease;
	background-image: linear-gradient(-86.68deg, rgb(0, 244, 153) 46.358%,rgb(17, 183, 239) 115.064%); 
	opacity: 1;
	z-index:0;
	border-radius: 31px; 	
}
.btn--accent:before {
	content: "";
    position: absolute;
	display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: opacity 1s ease;
	background-image: linear-gradient(-86.68deg, rgb(0, 244, 153) 46.358%,rgb(17, 183, 239) 115.064%); 
	opacity: 1;
	z-index:0;
	border-radius: 31px; 	
}
.btn--accent.loadings:after, .btn--accent.loadings:before {  
	display: none;
}

.btn--dark {border-radius: 31px; background: #2D2A26; color: #fff; transition: background-color 1s;}
.btn--reset {border-radius: 31px; background: #fff; color: #2D2A26; border: 1px solid #2D2A26; transition: all .3s;}

.btn--dark:hover {
    background: #000;
}
.btn--reset:hover {
    background: #000;
	color: #fff;
}



.btn--accent:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: opacity 1s ease;
    background: linear-gradient(-86.68deg, rgb(17, 183, 239) 46.358%, rgb(0, 244, 153) 115.064%);
    opacity: 0;
	z-index:0;
	border-radius: 31px; 
 }
 
.btn--accent:hover::after{
      opacity: 1;
 }

.visit-menu_item > button {
    position: relative;
    overflow: hidden;
    padding: 20px 32px;
    border-radius: 64px;
    overflow: hidden;
	background: linear-gradient(#fff, #fff) padding-box,
				linear-gradient(-86.68deg, rgb(0, 244, 153) 46.358%, rgb(209, 243, 255) 115.064%) border-box;
	border: 1px solid transparent;
   
 }
.visit-menu_item[data-grid="grid-canceled"]:not(.active) > button {
	 
	background: linear-gradient(#fff, #fff) padding-box,
				linear-gradient(-86.68deg, rgb(17, 183, 239) 46.358%, rgb(216, 255, 243) 115.064%) border-box;
	border: 1px solid transparent;
 }

.visit-menu_item.active button {
    border-radius: 62px;
    background: linear-gradient(-45.00deg, rgb(242, 120, 193) 0%,rgb(209, 243, 255) 100%);
    border: none;
    display: flex;
    gap: 14px;
}

.addres-row:before, .phone-row:before {
	content:"";
	display: inline-block;
	
}
.addres-row:before {
	background: url(../img/small-marker.svg) no-repeat; width: 16px; height: 18px;
}
.phone-row:before {
	background: url(../img/phone.svg) no-repeat; width: 16px; height: 16px;	
}
.visits-route {margin-bottom: 29px; 
    /* margin-top: 64px; */
}
.visits-route-desc {display: flex; flex-wrap: wrap;}
.route-item {
	flex: 1 1 calc(100% /2 - 54px);
    padding: 35px 39px;
    border-radius: 16px;
    position: relative;
    background: rgb(255, 255, 255);
    display: flex;
    gap: 16px;
    max-width: calc(100% / 2 - 54px);
	
}

.route-item:first-child:before, 
.route-item:nth-child(2n+1):before {
	display: none;
}

.route-item:before  {
	content: "";
	display: block;
	width: 48px;
	height: 24px;
	background: url(../img/arrow-route.svg) no-repeat; 
	position: absolute;
	top: 50%;
    left: -80px;
	transform: translateY(-12px)
}

.route-item .contactaddress {
	font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
	font-weight: 500;

}
.route-item .counter--right {
	margin-top:-5px;
}

.route-item:last-child:after  { 
	display: none;
}
.visits-route-desc {column-gap: 108px; row-gap: 40px;}
.route-item	.counter {
	min-width: 24px;
	width: 24px;
	height: 24px;
	line-height: 24px;
	border-radius: 12px;
	font-weight: 500;
	text-align: center;
	background: linear-gradient(-86.68deg, rgb(0, 244, 153) 46.881%,rgb(17, 183, 239) 112.965%);
}


.visit-actions .btn.btn-create-visit {
    border-radius: 31px;
    /* Main */
    background: rgb(45, 42, 38);
    color:white;
    padding: 20px 43px;
}

.visit-actions .btn.btn-create-visit:hover{
    background: #000;
}

.visit-actions .btn.btn-refresh-visits{
    border-radius: 31px;
    background: rgb(45, 42, 38);
    color:white;
    padding: 20px;
    width: 62px;
    height: 62px;
}


.bg-wrapper--add-visit {
	background: url(../img/bg-add-visit.png) top center / cover no-repeat; 
	background-size: 100% 100%;
}


.visit-actions .btn.btn-refresh-visits:hover{
    background: #000;
}

.empty-visit-result {
    background: white;
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 150px 0;
    border-radius: 16px;
    margin-bottom: 50px;
}

.empty-visit-result span {
    color: rgb(154, 154, 154);
    font-size: 24px;
    font-weight: 500;
    line-height: 140%;
    text-align: center;
    padding: 20px;
}

.mapvisits {width: 100%; height: 75vh; max-width: 100%;border-radius: 16px; overflow: hidden;}

/* Finish visit */
.row_flex {display: flex; gap: 32px;}

.contact-info {flex: 1 0;}

.bg-wrapper {padding-top: 64px; height: 100%;}

.bg-wrapper--authorize {
	background: url(../img/bg-auth.png) top left / cover no-repeat;
}

.bg-finish-wrapper {
	background: url(../img/bg-finish.png) top left / cover no-repeat;
}
.finish_container .section-title,
.finish_container .service-title {
	font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
	font-weight: 500;
}

.finished-block textarea.form-control {min-height: 171px}

.finish-block {display: flex; align-items: flex-start; align-items: center;}

.finish-block .visit-title {margin-bottom: 0;}

.finish-block .visit-actions {margin-left: auto;}

.collapse {
    height: 0;
    overflow: hidden;
    transition: 1s ease height, 1s ease background-color;
    box-sizing: border-box;
    border-radius: 20px;
}

.finished-block .service-item {
	justify-content: space-between;
    align-items: center;
}
}

.expand .collapse {
    visibility: visible;
}

.panel-heading {
    padding: clamp(1.688rem, 0.333rem + 1.81vw, 2.5rem);
    position: relative;
    background-color: #fff;
    border-radius: 16px;
    padding-right: 40px;
	cursor: pointer;
}

.accordion-head__closer {
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .3s ease;
}

.expand .panel-heading .accordion-head__closer > svg {
    transform: rotate(180deg);
}
.panel {
    background-color: #fff;
    border: none;
    box-shadow: none !important;
    border-radius: 16px;
}

.panel-body {
    padding: clamp(1.688rem, 0.333rem + 1.81vw, 2.5rem);
	padding-top: 0;
}

.contact-info-form.d-flex {flex-wrap: wrap; gap: 24px;}
.contact-info-form.d-flex .block-success, .contact-info-form.d-flex .block-error {}
.flex-half	{flex: 1 0 calc(50% - 24px);}
.empty-service {color: #9A9A9A;}
.input--grey {background-color: #F5F5F5; border: none; box-shadow: none;}
.service-item {gap: 16px;}

.contact-info-form.d-flex .form-group--submit {flex: 1 0 100%; margin-bottom: 0; align-items: center;}

.contact-info-form .control-label {font-weight: 500; font-size: clamp(1rem, 0.792rem + 0.28vw, 1.125rem); letter-spacing: -0.28px; margin-bottom: 8px}

input[type="file"].file-input { position: absolute; left: -99999rem}
  
.upload-button {width:62px; height: 62px; color: #fff; background-color: #2D2A26; line-height: 62px; text-align: center; border-radius: 50%;}
 
.labelinput {
	cursor: pointer; 
	max-width: 287px; 
	height: 62px;  
	line-height: 62px; 
	border-radius: 31px; 
	background-color: #2D2A26; 
	color: #fff; 
	padding: 0 56px 0 82px; 
	position: relative; 
	font-weight: 500;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.labelinput:before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-53%);
	width: 32px;
	height: 32px;
	background: url(../img/staple.png) center center / contain no-repeat;
}
.delete-row-shedule{
    cursor: pointer;
    border: 1px solid rgb(45, 42, 38);
    border-radius: 4px;
    background: #fff url(../img/cross.svg) center center no-repeat;
    padding: 0 8px;
	width: 24px; 
	height: 24px;
} 

.addvisit-form .datetimeinput { 
	background: #fff url(../img/calendar.png) calc(100% - 20px) center no-repeat; 
	background-size: 24px 24px;
}

.bg-wrapper--add-visit {padding-bottom: 108px; height: 100%;}
.form-group--upload {gap: 24px;}
.labeltext {font-size: 38px;}
.see-more, .see-less {display: none;}

.select2-container--default .select2-selection--single .select2-selection__rendered[title="Не заполнено"],
.select2-container--default .select2-selection--single .select2-selection__rendered[title="Выберите"] {color: #9A9A9A; }

#volunteer_form .form-group {position: relative;}

.shedulerow .form-group {margin-bottom: 0;}
.addvisit-form textatea {min-height: 159px;}
label.error {
    position: absolute;
    bottom: -20px;
    font-size: 14px;
	left: 0;
}

.tooltipname {color: #9A9A9A; font-size: clamp(1rem, 0.792rem + 0.28vw, 1.125rem);}
.sp-between {justify-content: space-between; align-items: center;}
.tooltipblock {position: relative;}
.tooltiptext {
	font-size: 16px;
	position: absolute;
    left: 0;
    bottom: 100%;
    padding: 10px 14px;
    background: #fff;
    -webkit-box-shadow: 0 3px 13px 0 rgba(11,75,255,.1);
    box-shadow: 0 3px 13px 0 rgba(11,75,255,.1);
    -webkit-transition: opacity .3s ease-in-out,margin-bottom .3s ease-in-out;
    -o-transition: opacity .3s ease-in-out,margin-bottom .3s ease-in-out;
    transition: opacity .3s ease-in-out,margin-bottom .3s ease-in-out;
    opacity: 0;
    border-radius: 8px;
    pointer-events: none;
}
	
	
.tooltipblock:hover .tooltiptext {
		margin-bottom: 15px;
		opacity: 1;
}


@media (max-width: 991px) {
	main {padding-bottom: 50px;} 
	.mb-32, .mb-40, .finish_container .service-title, .finish_container .subtitle {margin-bottom: 16px}
	.visits-list {margin-top: 24px;}
    .date-filtr_and_list-map__container{margin-bottom: 24px;}
	.visit-item .date-row, .finish_container .service-title, .finish_container .name-row  {font-size: 16px}
	.visits-route .title, .visit-title h2, .subtitle, .volunteerform .section-name {font-size: 20px;}
	.visit-action {flex-wrap: wrap; width: 100%; row-gap: 12px; column-gap: 12px;}    
	.visit-item {gap: 16px; flex-direction: column; align-items: flex-start; font-size: 14px; padding: 24px; margin-bottom: 16px;}

    .change-date-visit{font-size: 14px !important;}

	.route-item .contactaddress, .route-item {font-size: 14px;}
	.visit-action .additional-info, .visit-action .additional-info.additional-info-date {
        /* position:relative; top: unset; left:unset; right: unset; order: 4; */
    }
	.btn-start-visit {flex: 1 1 100%;}
	.btn-finish-visit, .btn-cancel-visit {flex: 1 1;}
	.route-item {max-width: 100%; flex: 1 1 100%; padding: 16px}
	.visits-route {margin-top: 24px;}
	.mapvisits {height: 651px; }
	.banner.active-volounteer {margin: 16px 0 24px; padding: 49px 32px;}
	.useredit-block {margin-left: 8px;} 
	.empty-visit-result { padding: 50px 0;}
	.profile-right { flex: 1 0; gap: 0px; flex-wrap: wrap;}
    .date-filtr.low .form-control.dateinput {height: auto;}
	.username-block .usergroup-block {font-size: 12px; color: #9A9A9A; flex: 1 0 100%;}
	.dropdown__wrapper {position: relative; width: 100%;}
	
	.hidden-desktop {display: block;}
		
	.dropdown__list {
		display: none;
		position: absolute;
		left: 0;
		top: 0px;
		margin: 0;
		padding: 0;
		padding-top: 60px;
		list-style-type: none;
		background: #FFFFFF;
		box-shadow: 0px 4px 8px rgba(176, 198, 225, 0.6);
		overflow: hidden;
		border-radius: 29px;
		width: 100%;
		z-index: 1;
		max-width: 205px;
	}
	
	.dropdown__list--visible {
		display: block;
		z-index: 2;
		padding: 10px 0;
		padding-top: 60px;
	}
	
	.dropdown__button {
		border-radius: 55px;
		background: linear-gradient(-45.00deg, rgb(242, 120, 193) 0%,rgb(209, 243, 255) 100%);
		border: none;
		display: flex;
		gap: 14px;
		z-index: 3;
		padding: 22px 42px 22px 24px;
		font-size: 14px;
		font-weight: 500;
		position: relative;
		width: 100%;
		max-width: 210px;
	}
	
	.visit-menu {flex: 1 0;}
	
	.dropdown__button.dropdown__button--active:after  {transform: translateY(-50%) rotate(180deg);}
	
	.visit-menu_item.active button, .visit-menu_item > button {
		font-size: 14px;
		border-radius: 0;
		background: none;
		border: none;
		display: block;
		width: 100%;
		text-align: left;
	}
	
	.dropdown__button:after {
		content: "";
		display: block;
		width: 24px;
		height: 24px;
		top: 50%;
		right: 16px;
		transform: translateY(-50%);
		position: absolute;
		background: url(../img/dropdown-arrow.svg) no-repeat;
	}
	.visit-menu_item > button {padding: 13px 24px;} 
	.visit-menu_item[data-grid="grid-canceled"]:not(.active) > button {background: none;}
	
	.visits-route-desc {row-gap: 16px;}
	.route-item .counter--right { margin-top: 1px;}
	.row_flex, .finish-block {flex-direction: column;}
	.finish-block {align-items: flex-start;}
		
	h1 {font-size: 24px; margin-bottom: 16px;}
	h1.mb-24 {margin-bottom: 16px;}
	.row_flex {gap: 24px;}
	.bg-block, .panel-heading {padding: 24px;}
	.panel-body {padding: 0 24px 24px;}
	.bg-wrapper {padding: 16px 0 50px;}
	.accordion-head__closer {right: 16px}	
	.program-lists.panel:last-child, .flex-half .form-group {margin-bottom: 0;} 
	.finished-block .service-item {margin-bottom: 8px;}
	.btn--small, 
	.finish_container 
	.section-title, 
	.tooltipname, 
	.contact-info, 
	.control-label, 
	.form-control,
	textarea, 
	legend , 
	input::placeholder,
	textarea::placeholder, 
	.select2-container,
	.tooltiptext,
	form[name="volunteer_form"] .control-label, 
	.addvisit-form .control-label,
	.select2-container--open .select2-dropdown--below,
	form[name="volunteer_form"] .control-label	{font-size: 14px;}
	
	.tooltipblock:hover .tooltiptext, form[name="volunteer_form"] .control-label, .addvisit-form .control-label, .form-group--label {margin-bottom: 8px}
	.contact-info-form .control-label, .control-label {font-size: 14px; margin-bottom: 8px;}
	.contact-info-form.d-flex .block-success:not(:empty), .contact-info-form.d-flex .block-error:not(:empty) {margin: 0px 0 12px;}
	.back-block {margin-bottom: 16px; font-size: 14px;}
	.gap-40 {gap: 4px}
	.form-group--submit .btn {width: 100%;} 
	.container .referal_coin_blocks_container, .shedulerow {gap: 16px}
	.volunteerform {margin-top: 32px}
	form[name="profile_form"] .form-group, #volunteer_form .form-group {margin-bottom: 16px}
	.shedulerow, .last_form { grid-template-columns: repeat(1, 1fr);} 
	.container .shedulerow input.form-control {max-width: 100%;}
	.container .shedulerow .form-group {grid-column: 1 / span 2;}
	.referal-block .referal-value {padding: 13px 24px;}
	.referal_coin_blocks_container {margin-bottom: 24px;}
	.volunteerform .section-name {gap: 8px;}
	.volunteerform .section-name svg path {transform: scale(0.7); transform-origin: center;}
	#volunteer_form .shedulerow .form-group {margin-bottom: 0;}
	#volunteer_form .form-group.form-group--submit {margin-top:8px}



    .form-group.form-group--upload.d-flex{
        margin-bottom: 33px;
    }
	
}



@media (max-width: 767px) {
	.enter-area .high {display: none}
	.form-control, .select2-container .select2-selection--single {height: 50px}
	.select2-container--default .select2-selection--single .select2-selection__rendered {line-height: 50px;}
	.btn-default {padding: 16px 24px; line-height: 1.25; font-size: 14px; 
        /* height: 50px; */
    }
   
	.desktop-hidden {display:none;}
	.see-more {display: none;}
	.see-more.counter-6, .enter-area .low {display: block;}
	.expand .collapse {visibility: visible;height: auto !important;}	
	.flex-half { flex: 1 0 100%;}
	.see-more {display:  block;}
	.contact-info-form.d-flex {gap: 16px;}
	.show-more-content .see-less, .hidden--desktop {display: block;}
	.show-more-content .see-more, .hidden--mobile {display: none;}
	.contact-info-form.d-flex .form-group--submit {flex-direction: column;}
     .contact-info-form.d-flex .form-group--submit .btn--save {width: 100%;}
	 .form-group--upload {gap: 8px;}
	 .contact-info-form.d-flex .block-success:not(:empty), 
	 .contact-info-form.d-flex .block-error:not(:empty), 
	 .finished-block .form-group--submit > button {width: 100%;}
	 .upload-button {width: 50px; min-width: 50px; height: 50px; line-height: 48px;}
	 .labelinput {height: 50px; line-height: 48px; padding: 0 26px 0 60px;}
	 .labelinput:before {left: 16px; width: 24px; height: 24px;}
	 .finish-block .visit-actions .btn.btn-refresh-visits {padding: 10px;width: 50px; height: 50px;}
    .addvisit-form textatea {min-height: 216px;}
    .bg-wrapper--add-visit {height: auto; background-size: 100% 100%; padding-bottom: 50px;}
    .bg-wrapper--authorize {background: url(../img/bg-auth-mob.png) top left / cover no-repeat;}
	div.bx-auth div.auth-title { font-size: 20px;}


    .upload-label label.error{
        bottom: -33px !important;
    }
}

@media (max-width: 539px) {
	.labelinput {padding: 0 8% 0 45px;flex: 1 0; text-align: center;}
	.visit-actions .btn.btn-create-visit {
		font-size: 0; 
		width: 50px;
        height: 50px;
	}	
	.useredit-block {margin-left: 8px;}
	.useredit-block a svg {width: 16px; height: 16px;}
	.visit-action .btn {font-size: 14px; padding: 18px 32px; line-height: 1;}
    
	.banner.active-volounteer {  
		background: url(../img/volunteer-mobile-bg.png) bottom right / cover no-repeat, 
					linear-gradient(45.00deg, rgb(216, 255, 243) 0%,rgb(17, 183, 239) 100%);
	}	
	.tooltipname, .tooltiptext {font-size: 12px;}
	.bg-wrapper--add-visit {
		background-size: 100% 100%;
		background: url(../img/bg-mobile-addvisit.png) rop center / cover no-repeat; 
	}
	
	.container .coin-block {  padding: 32px 90px;}
		
    
    .visit-item .date-row a svg{
        width: 21px;
    }
}


.visit-actions .btn.btn-refresh-visits:hover{
    background: #000;
}

.empty-visit-result{
    background: white;
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 150px 0;
    border-radius: 16px;
    margin-bottom: 50px;
}

.empty-visit-result span{
    /* H2 */
    color: rgb(154, 154, 154);
    font-size: 24px;
    font-weight: 500;
    line-height: 140%;
    text-align: center;
    padding: 20px;
}

.coin-block {
    position: relative;
    border-radius: 16px;
    background: #E2DCFC url(../img/letters-bg.png) top left / cover no-repeat;
    padding: 19px 150px;
    overflow: hidden;
	display: inline-flex;
	justify-content: center;
}

.referal-title{
  
    font-size: clamp(1.5rem, 0.667rem + 1.11vw, 2rem);
    font-style: normal;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 18px;
} 

.referal-value > a {
	height: 28px;
}

.referal-value {
    display: flex;
    justify-content: space-between;
    border-radius: 62px;
    background: var(--Style, #FFF);
    padding: 17px 32px;
    gap: 20px;
}

.fancybox-slide--html {
    transition: none !important;
    transform: none !important;
}


.fancybox-is-sliding {
    /* Сбросить или переопределить стили */
    transition: none !important;
    transform: none !important;
    /* Другие свойства, которые нужно сбросить или переопределить */
}

.fancybox-content .form-group + button {margin-top: 32px;}

.popup-cancel-visit .fancybox-button.fancybox-close-small{
    right: 0;
    top: 0;
}

@media (min-width: 1232px){
        .date-filtr.low {
            display: none !important;
        }
        .date-filtr.high {
            display: flex;
        }

        .date-filtr.high > div > form{
            display: flex;
			gap: 15px;
        }
}

@media (max-width: 1231px){
	.visit-action .additional-info {
		z-index: 10;
	}
    .date-filtr.low {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .date-filtr.low > div > form{
        display: flex;
		gap: 8px;
    }
	.visits-block {
		position: relative;
	}
    .date-filtr.high {
		position: absolute; 
		top: 3px; 
		right: 0;
		z-index: 9;
        /* display: none; */
    }
	
	.date-filtr > .name {font-size: 0; display: none;}
	.date-filtr .form-control.dateinput {height: auto; width: fit-content; width: -webkit-fit-content; font-size: 14px; background-size: 20px 20px}
	.d-flex.grid-column-3 {flex-direction: column;}
}


@media (max-width: 991px){
    /* form[name="volunteer_form"] .control-label.first_radio{
        margin-bottom: 20px;
    } */
}



@media (max-width: 824px){
    .visit-menu_item.active button svg {
        display: none;
    }
}

@media (max-width: 818px){
    .visit-menu_item.active button svg {
        display: block;
        min-width: 24px;
        min-height: 24px;
    }

    .visit-menu{
        flex-direction: column;
    }

    .visit-actions{
        justify-content: flex-end;
        margin-left: auto;
    }

}




@media (max-width: 720px){
    .username_and_community_container {
        flex-direction: column;
        align-items: flex-start;
    }
}


@media (max-width: 668px){
    /* form[name="volunteer_form"] .control-label.first_radio{
        margin-bottom: 8px;
    } */
}

@media (max-width: 576px){
    .ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content{
        width: 300px;
        height: 230px;
    }
    .ymaps-2-1-79-balloon__close {
        top: 0 !important;
        right: 5px !important;
    }
}

@media (max-width: 575px){
    .visit-action .additional-info {
        /* top: calc(82% + 10px); */
        bottom: 135px;
        max-width: 280px;
    }
    .visit-action .additional-info.additional-info-date{
        max-width: 280px;
    }
}


select[name="serviceForFreeVisit"] {
	 -webkit-appearance: none;
	 padding-right: 20px;
	 cursor: pointer;
	 outline: none;
	 background: url(../img/arrow-select.svg) right center no-repeat;
}


@media (max-width: 556px){
  
    main .row_container{
        padding: 0 28px;
    }  

    .username_and_community_container{
        margin-top: 20px;
    }

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

    .banner-action_slogan{
        font-size: 14px;
    }

    .banner.active-volounteer.no-finisehed_visits {
        padding: 49px 32px;
        margin: 20px 0 24px;
    }

    .visit-title {
        margin-bottom: 50px;
    }

    .visit-title h2{
        font-size: 20px;
    }
   
    button span {
        font-size: 14px;
    }

    .dropdown__button{
        padding: 19px 42px 19px 24px;
    }

    .visit-nav-panel{
        gap: 8px;
    }

    .visit-menu, .visit-actions{
        gap: 8px;
    }

    .visit-menu_item > button {
        padding: 13px 24px;
    }

    .visit-actions .btn.btn-refresh-visits{
        padding: 15px;
        width: 55px;
        height: 55px;
    }
	
	.visit-actions .btn.btn-create-visit {
       
        width: 55px !important;
        height: 55px !important;
    }

    .empty-visit-result span{
        font-size: 14px;
    }
	
	.date-filtr.high > div > form > input.dateinput { float: right;}
	
	select[name="serviceForFreeVisit"] {margin: 14px 0; font-size: 20px; font-weight: 500; max-width: 100%; width: 100%}
    .date-filtr.high {gap: 11px; }
	select[name="serviceForFreeVisit"].filter--ForFreeVisit {width: calc(100% - 40px);}
	.delete--ForFreeVisit  { align-self: flex-end; margin-bottom: 15px; position: absolute; right:0;}	
    .delete--date {position: absolute; right:0; top:0;}
	input.dateinput.filter--date {margin-right: 40px;}
}


@media (max-width: 492px){
    .visit-item .date-row{
        flex-direction: column;
        align-items: flex-start;
    }

    .form-group.form-group--upload.d-flex{
        display: grid;
        grid-template-columns: 80% 1fr;
    }

    .upload-label label.error {
        bottom: 28px !important;
    }

    .d-flex.form-group.without-photo{
        margin-top: 20px;
    }

    .form-group.form-group--upload.d-flex{
        margin-bottom: 16px;
    }

    input[type="checkbox"] + label{
        height: 25px;
    }
}


@media (max-width: 443px){
    .visit-info .name-row{
        font-size: 14px;
    }

    .visit-info .addres-row{
        font-size: 14px;
    }

    .ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content{
        width: 280px;
    }

    .visits-route .map-container{
        padding: 16px;
    }
}

@media (max-width: 398px){
    .ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content{
        width: 260px;
    }
}


@media (max-width: 374px){
    .visit-nav-panel{
        gap: 24px;
        flex-direction: column;
        align-items: center;
    }

    .visit-actions{
        margin-left: 0;
    }
}
.change-date-visit {font-size: 18px; display: flex; gap:8px; align-items: center;}
.editicon { min-width: 25px; padding-left: 10px; background: url(../img/editicon.svg) center center no-repeat; 	min-height: 18px;display: inline-block;}
.fancybox-content input.form-control {
    border: 1px solid #dadada;
}

/*12.03 for map switcher*/
.switch {
  position: relative;
  display: inline-block;
  /* width: 60px;
  height: 34px; */

  width: 41px;
  height: 25px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000;
  -webkit-transition: .4s;
  transition: .4s;
}

.slider:before {
  position: absolute;
  content: "";
  /* height: 26px;
  width: 26px; */
  height: 17px;
  width: 17px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider {
  background-color: #000;
}

input:focus + .slider {
  box-shadow: 0 0 1px #000;
}

input:checked + .slider:before {
  /* -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px); */
  -webkit-transform: translateX(16px);
  -ms-transform: translateX(16px);
  transform: translateX(16px);
}

.fancybox-container .text-info a {text-decoration: underline;}
.fancybox-container .text-info a:hover {text-decoration: none;}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}
/*12.03 for map switcher*/



/* 22-03-2024*/

.visit-item.map-item {
	padding: 0px;
	margin-bottom: 0;
}
.flatpickr-current-month select.flatpickr-monthDropdown-months
 {
	-webkit-appearance: none;
	background: url(../img/arrow-select.svg) right 5% no-repeat;
	padding-right: 19px;
}

.flatpickr-current-month select.flatpickr-monthDropdown-months:hover {
	background: rgba(0,0,0,0.05) url(../img/arrow-select.svg) right 5% no-repeat ;
}

.map-item .visit-row:empty, body .ymaps-2-1-79-b-cluster-tabs__item-header  {display: none;}
.ymaps-2-1-79-balloon__close + .ymaps-2-1-79-balloon__content {height: auto !important}

.fancybox-slide--html .popup-finishevent-visit .fancybox-close-small {right: 0; top: 0;}

body .ymaps-2-1-79-balloon__content, 
body .ymaps-2-1-79-b-cluster-tabs__menu-item-text,
body .ymaps-2-1-79-b-cluster-content  {font: 16px/23px 'TT Interphases Pro Trl', sans-serif; }
body .ymaps-2-1-79-b-cluster-tabs__menu-item-text {color: #2D2A26; }

body .ymaps-2-1-79-b-cluster-tabs__menu-item-text:hover {
    color: #2D2A26;
} 
body .ymaps-2-1-79-b-cluster-tabs__menu-item_current_yes {background: #F1FBFF}

body .ymaps-2-1-79-b-cluster-tabs__section_type_content {padding-left: 32px;}
.ymaps-2-1-79-balloon__content > ymaps {height: auto !important;}

@media (max-width: 600px) {
	body .ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content {
		width: auto;
	}
	
	body .ymaps-2-1-79-balloon__content, 
	body .ymaps-2-1-79-b-cluster-tabs__menu-item-text {
		font: 14px/16px 'TT Interphases Pro Trl', sans-serif;
	} 
	
	body .ymaps-2-1-79-balloon__content {padding: 20px 32px 20px 16px !important;}
	body .ymaps-2-1-79-b-cluster-tabs__section_type_content {padding-left: 22px;}
	
	.change-date-visit {flex-wrap: wrap;}
	
}
.upload-label label.error {bottom: -45px;}