/* RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {margin: 0;padding: 0;border: 0;font-size: 100%;/* vertical-align: top; */line-height:normal;}
html, body {height:100%;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {display: block;}
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after {content:'';content: none;}
table {border-collapse:collapse;border-spacing:0;}

/* STYLE */

:root{
	--clr-accent: #13433D;
	--clr-on-accent: #fff;
	--clr-accent-hov: #237167;
	--clr-on-accent-hov: #fff;
	
	--clr-icon: #09a;
	--clr-on-icon: #fff;
	--clr-icon-hov: #1ab;
	--clr-on-icon-hov: #fff;
	
	--clr-plate:#fff;
	--clr-border:#eee;
	--clr-light:#f7f7f7;
	
	--clr-bg:#fff;

	--clr-bg-0:#0a1616;
	--clr-bg-1:#173637;
	--clr-on-bg-1:#fff;
	
	--clr-on-brd-link: #fff;
	--clr-brd-link: #fff3;
	--clr-brd-link-hov: #fff7;

	--clr-footer-link:#ddd;
	--clr-footer-link-hov:#fff;
	
	--clr-h:#000;
	--clr-text-cont:#444;
	
	--bg-light-gradient:linear-gradient(#fafafa, #efefef);
	--bg-grad-1:linear-gradient(to right, #93FF97 0%, #ACFF79 40%, #C7FF6C 100%);
	--bg-grad-2:linear-gradient(to right, #166840 0%, #69A900 30%, #166840 75%, #69A900 100%);
	--bg-grad-3:linear-gradient(to right, #166840 0%, #69A900 40%, #15663E 65%, #69A900 100%);
	--bg-grad-4:linear-gradient(to right, #166840 0%, #69A900 30%, #166840 75%, #69A900 100%);

	--dim-social-head:20px;
	--dim-plate: 20px;
	--dim-radius:20px;
	--dim-scroll: 5px;
	
	--fnt-family-1: Neue Montreal, Roboto, Segoe UI, sans-serif;
	--fnt-family-2: Times New Roman, serif;
	
	--anim-delay:0.1s;
}

.grd-1 {background: linear-gradient(135deg, #00dc00, #00d501, #00ba01);}
.grd-2 {background: linear-gradient(133deg, var(--clr-num2) 48%, var(--clr-num2-hov) 80%);}

.clr-accent {color:var(--clr-accent);}


.ic-mark { position: relative; padding: 10px; display: block; width: fit-content; }
.ic-mark:after { background: var(--clr-icon); border-radius: 50%; position: absolute; display: block; content: ""; left: 0px; width: 100%; height: 100%; top: 0px; opacity: 0.2; }
.ic-mark i { position: relative; z-index: 1; background: var(--clr-icon); color: var(--clr-on-icon); text-align: center; padding: 5px; display:block; aspect-ratio:1; font-size: 18px; line-height: 20px; border-radius: 50%; }


html, body { padding: 0px; margin: 0px; width:100%; color:#777;}
.container {margin:0 auto; width:calc(100% - 80px); max-width:1400px; padding:40px; position: relative;}

body {
	font-family: var(--fnt-family-1);
	font-weight: normal;
	font-style: normal;
	font-size: 16px;
	line-height: 20px;
	background: #FFF;
	color: #222;
}

::selection {
    color: #fff;
    background-color: #0009;
    -webkit-background-clip: initial;
    -webkit-text-fill-color: initial;
}

a { color:#333; text-decoration:none; transition: color 0.5s; }
a:hover {color:#111;}

.unselectable,
.not-sel {
	-moz-user-select: none; 
	-khtml-user-select: none; 
	-webkit-user-select: none; 
	-o-user-select: none;
}
.clear:after {content:''; display:block; clear:both;}
.hide {display:none;}
.hidden {display:none!important;}
.sticked { position: fixed; top: 0; z-index:100; }

.blocks:after {display:block; clear:both; content:'';}
.blocks > * {float:left;}

.block-1-2 {width:50%;}
.block-1-3 {width:33%;}
.block-2-3 {width:67%;}

textarea, input, select {
	display: block;
    max-width: unset;
    width: 100%;
    box-sizing: border-box;
    padding: 20px;
    font: 400 18px / 30px var(--fnt-family-1);
    color: #555;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ddd0;
    border-radius: 12px;
    outline: none;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    resize: vertical;
}

textarea:focus, input:focus {
    color: #495057;
    background-color: #fff;
    /* border-color: #80bdff; */
    outline: none;
    /* box-shadow: 0 0 0 0.2rem rgb(0 123 255 / 25%); */
}

hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgba(0,0,0,.1);
}

.font-1 {font-family: var(--fnt-family-1);}
.font-2 {font-family: var(--fnt-family-2);}

h1, h2, h3, h4, h5, h6 { font-weight: normal; margin:0 0 1.5rem; color:var(--clr-h); }
.h1, .h2, .h3, .h4, .h5, .h6 { font-weight: normal; color:var(--clr-h);}

.h1, h1 {font-size: 2.0rem;}
.h2, h2 {font-size: 1.7rem;}
.h3, h3 {font-size: 1.5rem;}
.h4, h4 {font-size: 1.3rem;}
.h5, h5 {font-size: 1.2rem;}
.h6, h6 {font-size: 1.0rem;}

small {font-size:75%;}

p {font-size:14px; line-height:25px; margin-bottom:20px;}

/*
::-webkit-scrollbar {width: 8px;}
::-webkit-scrollbar-track {background:#0001;}
::-webkit-scrollbar-thumb {background:#555; border-radius:4px;}
::-webkit-scrollbar-thumb:hover  {cursor:pointer;background:#000;}
*/

textarea.small, input.small, select.small, button.small {padding:10px;}

/* MODALS */

.modal-window.wide { width: calc(100% - 40px); max-width: 1140px;}
.modal-window {
	position:fixed;
	max-height: 92vh;
	z-index:101;
	display:none;
	left:50%;
	top:50%;
	width:400px;
	max-width: 90%;
	border-radius:20px;
	overflow:hidden;
	transform:translate(-50%,-50%);
	box-shadow: 0 0 20px #0007;
}
.modal-window.active { display:block; }

.modal-window .wrapper { padding:30px; background:var(--clr-plate);  }
.modal-window .close {width: 18px; cursor:pointer; background: url(../img/close.svg) no-repeat center center / contain;}
.modal-window .caption .close:hover {color:var(--clr-accent);}
.modal-window .caption {
    margin: 0 0 20px;
    padding: 0 0 10px;
    font-weight: 400;
    color: var(--clr-h);
    font-size: 28px;
    display:flex;
}
.modal-window .caption span {flex:1 0;}
.modal-window .caption .close {}
.modal-window .long-list {overflow-y:scroll; padding-right:10px;}

.long-list::-webkit-scrollbar-corner { background: #0000;}
.long-list::-webkit-scrollbar { width: var(--dim-scroll); height: var(--dim-scroll); background: #0001;}
.long-list::-webkit-scrollbar-thumb { background: var(--clr-accent); border-radius:calc(var(--dim-scroll) / 2);}
.long-list::-webkit-scrollbar-track { background: #0001; }

#overlay {
	position:fixed;
	display:none;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:100;
	background:#0007;
}

#overlay.active {
	display:block;
}

/* FORM UI */

.input {position:relative;}
.input .icon {position:absolute; height:100%; right:0; top:0; aspect-ratio:1; text-align: center;}
.input .reset {cursor:pointer; opacity:0.8;}
.input .reset {opacity:1; z-index:1;}

.filter-list .item:hover {color:var(--clr-h); cursor:pointer; text-decoration: underline;}
.filter-list .item.active {color:var(--clr-num2); font-weight:bold;}

.radio,
.checkbox,
.switch { display:flex; align-items:center; font-size:1rem; line-height:1rem; cursor:pointer;}

.radio input,
.checkbox input,
.switch input { display: none; }

.radio span,
.checkbox span,
.switch span { flex-grow:1; display:block; margin:0 10px; }

.radio:hover i,
.checkbox:hover i,
.switch:hover i { background-color: var(--clr-bg-dark); }

.radio i,
.checkbox i,
.switch i {
	position:relative;
	user-select: none;
	width:1rem;
	height:1rem;
	display: block;
	box-shadow: inset 0 0 3px #0005;
	background-color: var(--clr-bg);
	transition: background-color 0.3s ease;
}

.radio i:before,
.checkbox i:before,
.switch i:before {
	content:'';
	display: block;
	position:absolute;
}

.radio i { border-radius: 50%; }
.radio i:before {
    left: 25%;
    top: 25%;
    width: 50%;
    height: 50%;
    border-radius:50%;
    opacity:0;
    background-color: var(--clr-plate);
    transform: scale(2);
    transition: opacity 0.1s ease, transform 0.3s ease;
}

.checkbox i { border-radius: 3px; }
.checkbox i:before {
    left: 20%;
    top: -25%;
    width: 50%;
    height: 100%;
    border: solid white;
    border-width: 0 3px 3px 0;
    opacity:0;
    transform: rotate(45deg) scale(1);
    transition: opacity 0.1s ease, transform 0.3s ease;
}

.switch i { width:2rem; border-radius:1rem; }
.switch i:before {
	left:0;
	width:50%;
	height:100%;
	margin: -2px 0 0 -2px;
	border: 2px solid var(--clr-bg);
	border-radius: 50%;
	box-shadow: 0 0 5px #0003;
	background-color: var(--clr-plate);
	transition: left 0.3s ease;
}

.radio input:checked ~ i,
.checkbox input:checked ~ i,
.switch input:checked ~ i { background-color: var(--clr-accent); }

.radio input:checked ~ i:before { opacity:1; transform: scale(1); }
.checkbox input:checked ~ i:before { opacity:1; transform: rotate(45deg) scale(0.5); }
.switch input:checked ~ i:before { left:50%; border-color: var(--clr-accent); }

.list-date {display:block; text-align:center; background:none!important;}
.list-date span {display:inline-block; padding:5px 10px; background:var(--clr-plate-border); border-radius:5px;}

form.show-success .form {display:none;}
form.show-success .success-msg {display:block;}

.success-msg {display:none;}
.success-msg .ic-mark {margin:0 auto 10px;}
.success-msg .ic-mark i {width:40px;  height:40px; font-size: 34px; line-height: 40px;}

/* COMMON */

.list > * { margin-bottom:var(--dim-plate);}
.list > *:last-child {margin-bottom:0;}

.pos-absolute {position:absolute;}
.pos-relative {position:relative;}

.dsp-none {display:none;}
.dsp-flex {display:flex;}
.dsp-block {display:block;}
.dsp-in-block {display:inline-block;}

.flex-wrap {flex-wrap:wrap;}

.flex-column {flex-direction:column;}
.flex-row-revers {flex-direction:row-reverse;}

.flex-grow, .flex-grow-c > * {flex:1 0 0;}
.flex-shrink, .flex-shrink-c > * {flex-shrink:1;}
.flex-no-grow, .flex-no-grow-c > * {flex-grow:0;}
.flex-no-shrink, .flex-no-shrink-c > * {flex-shrink:0;}

.flex-a-center { align-items:center; }
.flex-a-top { align-items:flex-start; }
.flex-a-bottom { align-items:flex-end; }
.flex-a-stretch { align-items:stretch; }

.flex-j-center { justify-content:center; }
.flex-j-around { justify-content:space-around; }
.flex-j-between { justify-content:space-between; }
.flex-j-evenly { justify-content:space-evenly; }
 
.f-left {float:left;}
.f-right {float:right;}

.gap-5 {gap:5px;}
.gap-10 {gap:10px;}
.gap-20 {gap:20px;}
.gap-30 {gap:30px;}
.gap-40 {gap:40px;}
.gap-50 {gap:50px;}
.gap-60 {gap:60px;}
.gap-70 {gap:70px;}
.gap-80 {gap:80px;}
.gap-90 {gap:90px;}
.gap-100 {gap:100px;}

.rotate-15 { transform:rotate(15deg); }
.rotate-30 { transform:rotate(30deg); }
.rotate-45 { transform:rotate(45deg); }
.rotate-60 { transform:rotate(60deg); }
.rotate-90 { transform:rotate(90deg); }
.rotate-180 { transform:rotate(180deg); }

.rotate-n15 { transform:rotate(-15deg); }
.rotate-n30 { transform:rotate(-30deg); }
.rotate-n45 { transform:rotate(-45deg); }
.rotate-n60 { transform:rotate(-60deg); }
.rotate-n90 { transform:rotate(-90deg); }
.rotate-n180 { transform:rotate(-180deg); }

.w10px {width:10px;}
.w20px {width:20px;}
.w30px {width:30px;}
.w40px {width:40px;}
.w50px {width:50px;}
.w60px {width:60px;}
.w70px {width:70px;}
.w80px {width:80px;}
.w90px {width:90px;}
.w100px {width:100px;}
.w150px {width:150px;}
.w200px {width:200px;}
.w250px {width:250px;}
.w300px {width:300px;}

.w10p {width:10%;}
.w15p {width:15%;}
.w20p {width:20%;}
.w30p {width:30%;}
.w35p {width:35%;}
.w40p {width:40%;}
.w45p {width:45%;}
.w50p {width:50%;}
.w60p {width:60%;}
.w70p {width:70%;}
.w80p {width:80%;}
.w90p {width:90%;}
.w100p {width:100%;}


.w-fit {width:fit-content;}

.h10px {height:10px;}
.h20px {height:20px;}
.h30px {height:30px;}
.h40px {height:40px;}
.h50px {height:50px;}
.h60px {height:60px;}
.h70px {height:70px;}
.h80px {height:80px;}
.h90px {height:90px;}
.h100px {height:100px;}
.h150px {height:150px;}
.h200px {height:200px;}
.h250px {height:250px;}
.h300px {height:300px;}

.pd-0 {padding:0;}

.pd-05 {padding:5px;}
.pd-10 {padding:10px;}
.pd-15 {padding:15px;}
.pd-20 {padding:20px;}
.pd-25 {padding:25px;}
.pd-30 {padding:30px;}
.pd-35 {padding:35px;}
.pd-40 {padding:40px;}
.pd-45 {padding:45px;}
.pd-50 {padding:50px;}

.pdc-05 {padding:5px 0;}
.pdc-10 {padding:10px 0;}
.pdc-15 {padding:15px 0;}
.pdc-20 {padding:20px 0;}
.pdc-25 {padding:25px 0;}
.pdc-30 {padding:30px 0;}
.pdc-35 {padding:35px 0;}
.pdc-40 {padding:40px 0;}
.pdc-45 {padding:45px 0;}
.pdc-50 {padding:50px 0;}
.pdc-100 {padding:100px 0;}

.pds-0 {padding-left:0!important; padding-right: 0!important;}
.pds-05 {padding:0 5px;}
.pds-10 {padding:0 10px;}
.pds-15 {padding:0 15px;}
.pds-20 {padding:0 20px;}
.pds-25 {padding:0 25px;}
.pds-30 {padding:0 30px;}
.pds-35 {padding:0 35px;}
.pds-40 {padding:0 40px;}
.pds-45 {padding:0 45px;}
.pds-50 {padding:0 50px;}

.pdt-05 {padding-top:5px;}
.pdt-10 {padding-top:10px;}
.pdt-15 {padding-top:15px;}
.pdt-20 {padding-top:20px;}
.pdt-25 {padding-top:25px;}
.pdt-30 {padding-top:30px;}
.pdt-35 {padding-top:35px;}
.pdt-40 {padding-top:40px;}
.pdt-45 {padding-top:45px;}
.pdt-50 {padding-top:50px;}
.pdt-100 {padding-top:100px;}

.pdb-05 {padding-bottom:5px;}
.pdb-10 {padding-bottom:10px;}
.pdb-15 {padding-bottom:15px;}
.pdb-20 {padding-bottom:20px;}
.pdb-25 {padding-bottom:25px;}
.pdb-30 {padding-bottom:30px;}
.pdb-35 {padding-bottom:35px;}
.pdb-40 {padding-bottom:40px;}
.pdb-45 {padding-bottom:45px;}
.pdb-50 {padding-bottom:50px;}
.pdb-100 {padding-bottom:100px;}

.mr-0 {margin:0;}

.mrc-05 {margin:5px 0;}
.mrc-10 {margin:10px 0;}
.mrc-15 {margin:15px 0;}
.mrc-20 {margin:20px 0;}
.mrc-25 {margin:25px 0;}
.mrc-30 {margin:30px 0;}
.mrc-35 {margin:35px 0;}
.mrc-40 {margin:40px 0;}
.mrc-45 {margin:45px 0;}
.mrc-50 {margin:50px 0;}
.mrc-100 {margin:100px 0;}

.mrt-05 {margin:5px 0 0;}
.mrt-10 {margin:10px 0 0;}
.mrt-15 {margin:15px 0 0;}
.mrt-20 {margin:20px 0 0;}
.mrt-25 {margin:25px 0 0;}
.mrt-30 {margin:30px 0 0;}
.mrt-35 {margin:35px 0 0;}
.mrt-40 {margin:40px 0 0;}
.mrt-45 {margin:45px 0 0;}
.mrt-50 {margin:50px 0 0;}
.mrt-60 {margin:60px 0 0;}
.mrt-70 {margin:70px 0 0;}
.mrt-80 {margin:90px 0 0;}
.mrt-90 {margin:80px 0 0;}
.mrt-100 {margin:100px 0 0;}

.mrb-05, .mrb-05-c > * {margin-bottom:5px;}
.mrb-10, .mrb-10-c > * {margin-bottom:10px;}
.mrb-15, .mrb-15-c > * {margin-bottom:15px;}
.mrb-20, .mrb-20-c > * {margin-bottom:20px;}
.mrb-25, .mrb-25-c > * {margin-bottom:25px;}
.mrb-30, .mrb-30-c > * {margin-bottom:30px;}
.mrb-35, .mrb-35-c > * {margin-bottom:35px;}
.mrb-40, .mrb-40-c > * {margin-bottom:40px;}
.mrb-45, .mrb-45-c > * {margin-bottom:45px;}
.mrb-50, .mrb-50-c > * {margin-bottom:50px;}
.mrb-60, .mrb-60-c > * {margin-bottom:60px;}
.mrb-100, .mrb-100-c > * {margin-bottom:100px;}

.text-a-center {text-align:center;}
.text-a-left {text-align:left;}
.text-a-right {text-align:right;}

.text-t-upper {text-transform:uppercase;}
.text-t-lower {text-transform:lowercase;}

.ic {vertical-align: middle; display:inline-block; width:20px; height:20px; background-size:contain; background-repeat: no-repeat; background-position:center center;}
.ic.chess {background-image:url(../img/icons/chess.svg)}
.ic.anketa {background-image:url(../img/icons/anketa.svg)}

.icon {background:url() no-repeat center center / contain; aspect-ratio:1; min-width:20px; display:inline-block;}
.icon-gift {background-image:url(../img/icon-gift.png);}
.icon-doc {background-image:url(../img/icon-doc.png);}
.icon-check {background-image:url(../img/icon-check.png);}
.icon-document {background-image:url(../img/icon-document.png);}
.icon-wallet {background-image:url(../img/icon-wallet.png);}
.icon-tools {background-image:url(../img/icon-tools.png);}
.icon-arrow-dotted {background-image:url(../img/icon-arrow-dotted.png);}
.icon-arrow-arc {background-image:url(../img/icon-arrow-arc.png);}

.fnt-w-light {font-weight:300;}
.fnt-w-normal {font-weight:normal;}
.fnt-w-bold {font-weight:bold;}

.row {margin:0 0 20px;}

.link {border-bottom:1px solid #dedede; line-height: 150%; padding-bottom: 5px; transition: all 0.5s;}
.link:hover {border-color: #bbb; }

.link-light {border-bottom:1px solid var(--clr-brd-link); padding-bottom: 5px; transition: all 0.5s;}
.link-light:hover {border-color: var(--clr-brd-link-hov); }

.btn {background:var(--clr-accent);  color:var(--clr-on-accent); border-radius:5px; cursor:pointer; display:inline-block; padding:5px 10px;}
.btn:hover {color:var(--clr-on-accent-hov); background:var(--clr-accent-hov);}

.button i {display:inline-block; margin:0 5px;}
.button:hover {box-shadow: 0 10px 50px #0001;}

.button.big {padding:20px;}
.button.large {padding:20px 50px;}

.button {border:2px solid var(--clr-accent); background:var(--clr-accent); font-size:18px; padding:10px 20px; color:var(--clr-on-accent); border-radius:25px; cursor:pointer; text-align:center; transition:all 0.5s;}
.button:hover {border-color:var(--clr-accent-hov); color:var(--clr-on-accent-hov); background:var(--clr-accent-hov);}

.button.outline.clean {background:#0000; color:var(--clr-on-brd-link); border: 1px solid var(--clr-brd-link);}
.button.outline.clean:hover {background:#0000; color:var(--clr-on-brd-link); border-color: var(--clr-brd-link-hov);}

.button.outline {background:#0000; color:var(--clr-accent);}
.button.outline:hover {background:var(--clr-accent); color:var(--clr-on-accent);}

.button.outline.num2 {background:#0000; color:var(--clr-num2); border-color:var(--clr-num2);}
.button.outline.num2:hover {background:var(--clr-num2); color:var(--clr-on-num2); border-color:var(--clr-num2);}

.button.grd-2 {border-color:var(--clr-num2); background: linear-gradient(133deg, var(--clr-num2) 48%, var(--clr-num2-hov) 80%); }
.button.grd-2:hover{border-color:var(--clr-num2-hov);  background: linear-gradient(0deg, var(--clr-num2) 100%, var(--clr-num2-hov) 89%);}

.button.iconic {background:var(--clr-icon); color:var(--clr-on-icon); border-color:var(--clr-icon);}
.button.iconic:hover {background:var(--clr-icon-hov); color:var(--clr-on-icon); border-color:var(--clr-icon);}

.button.off {background:#000; border-color:#0000; color:#FFF; cursor:default;}
.button.outline.off {border-color:#000; color:#000;}
.button.outline.off:hover {color:#000;}

.button.white {color:#000; background: #fff; border-color: #0000;}
.button.white:hover {background:#fffa;}

.radial-pulse {
  animation: radial-pulse 3s infinite !important;
}

@keyframes radial-pulse {
  0% { box-shadow: 0 0 0 0px var(--clr-num2); }
  100% { box-shadow: 0 0 0 15px rgba(0, 0, 0, 0); }
}

.grid { display:grid; }
.grid.row-2 { grid-template-columns: repeat(2,1fr); }
.grid.row-3 { grid-template-columns: repeat(3,1fr); }
.grid.row-4 { grid-template-columns: repeat(4,1fr); }
.grid.row-5 { grid-template-columns: repeat(5,1fr); }
.grid.row-6 { grid-template-columns: repeat(6,1fr); }
.grid.row-7 { grid-template-columns: repeat(7,1fr); }
.grid.row-8 { grid-template-columns: repeat(8,1fr); }
.grid.row-9 { grid-template-columns: repeat(9,1fr); }
.grid.row-10 { grid-template-columns: repeat(10,1fr); }
.grid.row-11 { grid-template-columns: repeat(11,1fr); }
.grid.row-12 { grid-template-columns: repeat(12,1fr); }

.card { box-shadow: 0.4em 0.4em 5px hsl(0deg 0% 48% / 50%); transition: .5s; }
.card.lift:hover { box-shadow: 0.1em 0.1em 2px hsl(0deg 0% 48% / 50%); transform: translateX(2px) translateY(2px); }

.img-holder {display:block; overflow:hidden; position:relative; }
.img-holder img {position:absolute; display:block; top:0; left:0; object-fit:cover; width:100%; height:100%; }
img.img-contain {object-fit:contain!important;}
img.img-cover {object-fit:cover!important;}

.zoom-in {overflow:hidden; border-radius:10px; position:relative; }
.zoom-in img {transition:all 1s;}
.zoom-in:hover img {transform:scale(1.1);}
.zoom-in:after {
	content:''; 
	position:absolute; 
	top:0; 
	left:0; 
	width:100%; 
	height:100%; 
	z-index:1; 
	background:url(../img/zoom-in.png) no-repeat center center #0007; 
	opacity:0; 
	transition:opacity 0.7s;
}
.zoom-in:hover:after {opacity:1; }

.marked-left {border-left:5px solid var(--clr-accent); padding-left:10px;}
.marked-bottom {border-bottom:5px solid var(--clr-accent); padding-bottom:10px;}
.marked-circle {position:relative;}
.marked-circle > * {z-index:1; position: relative;}
.marked-circle:before {height:50%; aspect-ratio:1; left:0; bottom:0; border-radius:50%; content:''; position:absolute; background:var(--clr-icon); transform:translateX(-50%); z-index:0;}
.marked {border-radius:var(--dim-radius); background: var(--clr-icon); color:var(--clr-on-icon); padding:0 20px;}

.wrapper {padding:20px;}

.text-content img {max-width:100%; border-radius:var(--dim-radius);}

form .status {text-align:center;font-size: 16px;}
form .error {color:#D00;border-color:#d00;}
form .off {opacity:0.8; cursor:default!important;}

.bg {background:url() no-repeat center center / contain;}
.bg-s-contain {background-size:contain;}
.bg-s-cover {background-size:cover;}

.bg-p-x-left {background-position-x:left;}
.bg-p-x-right {background-position-x:right;}
.bg-p-x-center {background-position-x:center;}

.bg-p-y-left {background-position-y:left;}
.bg-p-y-right {background-position-y:right;}
.bg-p-y-center {background-position-y:center;}

.bg-p-left-top {background-position:left top;}
.bg-p-left-center {background-position:left center;}
.bg-p-left-bottom {background-position:left bottom;}

.bg-p-center-top {background-position:center top;}
.bg-p-center {background-position:center center;}
.bg-p-center-bottom {background-position:center bottom;}

.bg-p-right-top {background-position:right top;}
.bg-p-right-center {background-position:right center;}
.bg-p-right-bottom {background-position:right bottom;}

.sub-menu { opacity:0; position:absolute; z-index:10; max-height:0; overflow:hidden; transition:all 0.5s; padding:10px 20px; background-color: #fff; border-radius:10px; border: 1px solid #f2f2f2; box-shadow: 0 5px 30px #0002; }
.sub-menu > * {display:block; padding:10px 0; border-bottom:1px solid #eee; white-space: nowrap;}
.sub-menu > *:last-child {border:none; margin:0;}
.sub-menu a:hover {color:var(--clr-num2);}
.has-sub-menu:hover .sub-menu { display:block; opacity:1; max-height:500px; }
.has-sub-menu:hover i {color:var(--clr-num2);}

.brcr {text-align: center; font-size: 16px; margin: 0 0 40px;}
.brcr a:hover {color:var(--clr-accent);}
.brcr span {opacity:0.5;}

.tabs { display: flex; flex-wrap: wrap; gap: 40px; margin: 20px 0; padding: 20px 0; border: 1px solid var(--clr-border); border-right: none; border-left: none;}
.tabs a {font-size:20px; display:inline-block; padding:5px; border-bottom:2px solid #fff0; transition:all 0.5s;}
.tabs a:hover {color:var(--clr-num2);}
.tabs .active {border-color:var(--clr-num2); color:var(--clr-num2);}

.hidden {display:none;}
.hidden.active {display:block;}

.panels .panel {display:none;}
.panels .panel.active {display:block;}

.phone {display:flex; gap:5px; align-items:center;}
.phone-holder > * {display:block;}
.phone-holder .phone-info {font-size: 85%; }

/* HEADER */

.header {border-bottom:1px solid #eee;}
.header .container {padding:20px;}
.header .top-menu {display:flex; gap:20px; justify-content: space-between;}
.header .top-menu .list-menu {display:flex; gap:15px; flex-wrap: wrap;}
.header .top-menu .list-menu .current > a {color:var(--clr-num2);}
.header .top-menu .list-menu a:hover {color:var(--clr-num2);}
.header .top-menu .contacts {display:flex; gap:15px; flex-wrap: wrap; align-items: center;}

/* MAIN-MENU */

.main-menu .container {padding:20px;}
.logo {display:block; position:relative; height:50px; width: 162px; background:url(../img/logo.svg) no-repeat left center / contain;}
.logo.ny-cap:after {
    position: absolute;
    aspect-ratio: 1;
    height: 50%;
    left: -15%;
    top: -15%;
    content: "";
    background: url(../img/ny-cap.svg) no-repeat left center / contain;
    transition: transform 0.2s ease-in-out 0s;
}
.logo.ny-cap:hover:after {transform: translate(-10px, -10px) rotate(-15deg);}

.menu-blocks {display:flex; gap:20px; align-items:center; justify-content:space-between; flex-wrap:wrap;}
.menu-blocks .catalog-menu {display:flex; gap:20px; flex-grow: 1; justify-content: center;}

.catalog-menu .catalog-item {display:flex; align-items:center; gap:10px; position: relative;}
.catalog-menu .catalog-item .sub-menu {top:100%; right:0;}
.catalog-menu .catalog-item .icon {transition:all 0.3s; width:35px; position:relative; background:var(--clr-icon); -webkit-mask:url() no-repeat 50% 50% / contain; mask:url() no-repeat 50% 50% / contain; }
.catalog-menu .catalog-item > a:hover {color:var(--clr-icon-hov);}
.catalog-menu .catalog-item:hover .icon {background:var(--clr-icon-hov);}

.main-menu .catalog-item a {font-weight:500;}

.menu-tree ul li > ul {display:none; margin-left: 40px;}
.menu-tree ul li.active > ul {display:block;}

.menu-tree .catalog-menu .catalog-item { margin: 0 0 10px; padding: 0 0 10px; border-bottom: 1px solid var(--clr-border); }
.menu-tree .has-children > .catalog-item:after { color: var(--clr-accent); content: "\f055"; font-family: 'Font Awesome 5 Free'; font-weight: 900; position: absolute; right: 0;}
.menu-tree .has-children.active > .catalog-item:after { content: "\f056"; color: var(--clr-num2); }

/* mobile-menu */

.social.colored .fa-whatsapp {background:#1d4;}
.social.colored .fa-viber {background:#65a;}
.social.colored .fa-telegram-plane {background:#2ae;}
.social.colored .fa-vk {background:#07f;}
.social.colored .fa-youtube {background:#f01;}

.mobile-menu .container {padding:20px;}
.mobile-menu-header {align-items:center; }
.mobile-menu-header .toggler a { position:fix; z-index:11; font-size: 30px; text-align:center; color:var(--clr-h); background:#fff; width:50px; height:50px; line-height:50px; border-radius:50%;}
.mobile-menu-header .logo {margin:0 auto; height: 50px;}
.mobile-menu-header .social a i {display:inline-block; text-align:center; background:var(--clr-num2); color:var(--clr-on-num2); margin:5px; font-size:16px; width:30px; height:30px; line-height:30px; border-radius:50%;}
.mobile-menu-header .social .soc_wa,
.mobile-menu-header .social .soc_vb {display:inline-block;}
.mobile-menu-header .phones {font-size: 12px;}

#mobile-menu {border-radius: 0;
    margin: 0;
    background: var(--clr-bg-1);
    color: var(--clr-on-bg-1);
    left: 0;
    top: 0;
    transform: none;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: unset;
    overflow: hidden;
}
#mobile-menu a {color: var(--clr-on-bg-1); font-size: 30px;}
#mobile-menu .lang a {font-size: 28px;}
.top-navigation .lang a {transition: 0.5s all;}
.top-navigation .lang a:hover {color: #FFF; opacity: 1;}

.mobile-navigation {position: relative; padding: 40px 20px; height: calc(100% - 80px);}

#mobile-menu .wrapper {padding:20px;}
#mobile-menu h3 {font-size:18px;}
#mobile-menu .catalog-item  { margin:0 0 10px;}
#mobile-menu .catalog-item span {font-size:18px; line-height:20px; }
#mobile-menu .site-menu .menu-item {font-size:16px; margin:0 0 15px;}

#mobile-menu .wrapper > * {
	margin: 0 0 15px;
    padding: 0 0 15px;
    border-bottom: 1px solid var(--clr-border);
}
#mobile-menu .wrapper .catalog-tree {border:none;}
#mobile-menu .wrapper > *:last-child {border:none; margin:0; padding:0;}
#mobile-menu .contacts > * {margin:0 0 10px;}
#mobile-menu .contacts .social a {margin-right:5px;}
#mobile-menu .contacts i {width:20px;}
#mobile-menu .region-choose-ctrl a {font-size:16px;}

.line-break:before { content: ' '; display: block; }

.txt-grd-1 { background: var(--bg-grad-1); }
.txt-grd-2 { background: var(--bg-grad-2); }
.txt-grd-3 { background: var(--bg-grad-3); }
.txt-grd-4 { background: var(--bg-grad-4); }

.txt-grd-1,
.txt-grd-2,
.txt-grd-3,
.txt-grd-4 {
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

/* Common */

.top-navigation {font-size: 16px; font-weight: 500;}
.top-navigation .menu {gap: 50px;}
.top-navigation .mobile-menu-toggler {cursor: pointer; width: 32px; aspect-ratio: 1; background: url('../img/menu.svg') no-repeat center center;}

.lang {gap:  20px;}
.lang a {opacity: 0.5;}
.lang a.active {opacity: 1;}

.mobile-navigation .menu {gap: 30px;}
.mobile-navigation .lang {gap: 40px; margin-bottom: 20px;}

.anonce {font-size: 18px; color: #000; font-weight: 500;}
.big-text {font-size: 52px; letter-spacing:-2px; font-weight: 400;}
.big-text, .big-text * {line-height: 100%;}
.extra-pad {padding-top: 120px; padding-bottom: 120px;}

.site-block {position: relative; overflow: hidden;}

.bg-wrapper {position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 0; }
.noise:after {content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; display: block; background: url(../img/noise.png);}
.dark-overlay:after {content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; display: block; background: #0004; z-index: 0;}

.bg-wrapper .circles {height: 100%; opacity: 0.8; padding: 0 20px;}
.bg-wrapper .circles > * { transition: all 0.5s; position: absolute; height: 10%; aspect-ratio: 1; top: 0; left: 0; border-radius: 50%; background: #fff; transform: translate(-50%,-50%);}
.bg-wrapper .circles > *:hover {opacity: 0.5;} 

.circles .circle-1 {background: #359E7C; height: 50%; left: 50%; top: 40%;}
.circles .circle-2 {background: #173637; height: 90%; left: 80%; top: 80%;}
.circles .circle-3 {background: #ACFF24; height: 50%; left: 40%; top: 20%;}
.circles .circle-4 {background: #1E4F53; height: 80%; left: 10%; top: 90%;}
.circles .circle-5 {background: #6EEFC660; height: 50%; left: 70%; top: 20%;}
.circles .circle-6 {background: #33CF9D; height: 55%; left: 50%; top: 80%;}
.circles .circle-7 {background: #AAA6DB; height: 80%; left: 90%; top: 30%;}
.circles .circle-8 {background: #4233FF70; height: 80%; left: 75%; top: 15%;}

.circles .circle-1-1 {background: #7AEAC6; height: 110%; left: 100%; top: 10%;}
.circles .circle-1-2 {background: #7AEAC6; height: 90%; left: 25%; top: 0%;}
.circles .circle-1-3 {background: #7AEAC6; height: 100%; left: 40%; top: 5%;}
.circles .circle-1-4 {background: #C2FF02; height: 180%; left: 50%; top: 150%;}

.circles .circle-2-1 {background: #1E4F53; height: 50%; left: 10%; top: 70%;}
.circles .circle-2-2 {background: #33CF9D; height: 50%; left: 90%; top: 60%;}
.circles .circle-2-3 {background: #359E7C; height: 40%; left: 90%; top: 30%;}
.circles .circle-2-4 {background: #C2FF02; height: 50%; left: 80%; top: 10%;}

.circles.sl-bg-1 .circle-1 {background: #122C2D; height: 70%; left: 0%; top: 50%;}
.circles.sl-bg-1 .circle-2 {background: #C2FF02; height: 70%; left: 30%; top: 110%;}
.circles.sl-bg-1 .circle-3 {background: #1E4F53; height: 90%; left: 20%; top: 0%;}
.circles.sl-bg-1 .circle-4 {background: #7AEAC6; height: 70%; left: 90%; top: 10%;}
.circles.sl-bg-1 .circle-5 {background: #1E4F53; height: 80%; left: 80%; top: 90%;}

.circles.sl-bg-2 .circle-1 {background: #C2FF02; height: 70%; left: 0%; top: 50%;}
.circles.sl-bg-2 .circle-2 {background: #7AEAC6; height: 70%; left: 30%; top: 110%;}
.circles.sl-bg-2 .circle-3 {background: #213738; height: 90%; left: 20%; top: 0%;}
.circles.sl-bg-2 .circle-4 {background: #CAC6FF; height: 70%; left: 90%; top: 10%;}
.circles.sl-bg-2 .circle-5 {background: #1D2B2C; height: 100%; left: 80%; top: 90%;}

.circles.sl-bg-3 .circle-1 {background: #CAC6FF; height: 70%; left: 0%; top: 50%;}
.circles.sl-bg-3 .circle-2 {background: #CAC6FF; height: 70%; left: 30%; top: 110%;}
.circles.sl-bg-3 .circle-3 {background: #122C2D; height: 90%; left: 20%; top: 0%;}
.circles.sl-bg-3 .circle-4 {background: #C2FF00; height: 70%; left: 90%; top: 10%;}
.circles.sl-bg-3 .circle-5 {background: #7AEAC6; height: 80%; left: 80%; top: 90%;}

.blur {filter: blur(150px);}

.blur-effect canvas {position: absolute; left: 0; right: 0; width: 100%; height: 100%;}

.button.large,
.button.big {font-size: 18px; padding: 20px; border-radius: 50px; display: inline-block; align-content: center;}
.button.large {padding: 20px 50px;}

/* WELCOME */

#welcome { color: var(--clr-on-bg-1); background: var(--clr-bg-0);}
#welcome .main {position: relative; }
#welcome .content {min-height: calc(100vh - 80px); min-height: calc(100svh - 80px); }
#welcome .big-text {font-size: 68px; max-width: 1325px;}

#welcome { background: url(../img/main-bg.jpg) no-repeat center center / cover; }

#welcome .top-navigation a {color: var(--clr-on-bg-1); font-size: 17px;}
#welcome .about-author {color: #fff;}
#welcome .about-author .desc {max-width: 430px; font-size: 20px; line-height: 24px;}
#welcome .about-author .img-holder {width: 92px; aspect-ratio: 1; border-radius: 50%;}
#welcome .about-author .author {font-size: 18px; font-weight: 600;}

#welcome .navi-down {position: relative;  transition: all 0.5s; width: 90px; aspect-ratio: 1; border: 1px solid var(--clr-brd-link); border-radius: 50%;}
#welcome .navi-down img {position: absolute; top: 50%; left: 50%; width: 16px; height: 16px; transform: translate(-50%,-50%);}
#welcome .navi-down:hover {border-color: var(--clr-brd-link-hov); cursor: pointer;}

.not-found .text p {font-size: 24px;}

/* Strategy  */

#strategy .circles {flex-wrap: wrap;}
#strategy .circles .item {transition: all 0.5s;  width: 400px; height: 400px; font-weight: 500; font-size: 22px; line-height: 400px; text-align: center; border-radius: 50%; border: 1px solid #eee; margin: 0 -10px -75px;}
#strategy .circles .item:last-child {margin-bottom: 0;}
/* #strategy .circles .item:hover {transform: scale(1.1); background: #eee7;} */

/* Main slider */

#main-slider {  color: var(--clr-on-bg-1); overflow: hidden;}
#main-slider {background-color: var(--clr-bg-1);}
#main-slider .container {padding: 80px 40px;  }

.slider {position: relative; min-height: 800px; }
.slider .slides {height: 100%; width: 100%;}
.slider .slide { width: 100%; height:800px; /*position: absolute; display: none;*/}
.slider .slide .container {height: calc(100% - 160px);}
.slider .slide.active {display: block;}
.slider .slide .slide-bg {position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; z-index: 0;}

/*
.slider .slide .slide-bg.sl-bg-1 {background: url(../img/slide-bg-1.svg) no-repeat center center / contain;}
.slider .slide .slide-bg.sl-bg-2 {background: url(../img/slide-bg-2.svg) no-repeat center center / contain;}
.slider .slide .slide-bg.sl-bg-3 {background: url(../img/slide-bg-3.svg) no-repeat center center / contain;}
*/
.slider .slide .sl-bg-1.bg { background: url(../img/slide1.jpg) no-repeat center center / cover;}
.slider .slide .sl-bg-2.bg { background: url(../img/slide2.jpg) no-repeat center center / cover;}
.slider .slide .sl-bg-3.bg { background: url(../img/slide3.jpg) no-repeat center center / cover;}

.slider .slide .sl-bg-1 .slide-background {background: url(/data/uploads/slider/slide-1-xl.png) no-repeat center center / cover;}
.slider .slide .sl-bg-2 .slide-background {background: url(/data/uploads/slider/slide-2-xl.png) no-repeat center center / cover;}
.slider .slide .sl-bg-3 .slide-background {background: url(/data/uploads/slider/slide-3-xl.png) no-repeat center center / cover;}

.slider .slide .slide-content {position: relative; z-index: 1;}

.slider .slide .title {font-size: 52px;}
.slider .slide .counter {font-size: 28px;}
.slider .slide .text {font-size: 20px; width: 50%; line-height: 140%;}
.slider .slide .slide-bg img {  
	position: absolute;
    object-fit: contain;
    object-position: center right;
    width: 80%;
    height: 80%;
    right: 40px;
    bottom: 10%;
}

.slider .slide .slide-bg.sl-bg-3 img {width: 80%; height: 80%; bottom: 0%; object-position: bottom right;}

.slider .slider-navigation {position: absolute; bottom: 0; width: 100%; z-index: 1;}
.slider .slider-nav {position: absolute; left: 40px; bottom: 80px; display: flex; flex-direction: column; gap: 10px;}
.slider .slider-nav:before {left: 0; bottom: 10px; content: ""; position: absolute; display: block; width: 1px; height: calc(100% - 20px); background: rgba(255,255,255, 0.2);}

.slider .slider-nav a {color: #fff;  transition: all 0.5s; cursor: pointer; font-size: 18px; font-weight: 500; padding: 10px 25px; position: relative;}

.slider .slider-nav a:after {left: 0; bottom: 0; content: ""; position: absolute; display: block; width: 1px; height: 100%; border-radius: 2px; background: transparent; width: 3px;}
.slider .slider-nav a.active:after { background: #fff; width: 3px;}
.slider .slider-nav bar {display: none;}

/* Our values  */

#our-values .content { justify-content: space-between;}
#our-values .values-block-2 {width: 70%;}
#our-values .text-extra {margin-left: 25%; margin-top: 50px; font-size: 20px;}

/* Projects  */

#projects { background: #F6F5F3; }

#projects .big-text {width: 60%; max-width: 800px;}

#projects .item {width:30%; position: relative; transition: all 0.5s; }
#projects .item:first-child {width:40%;}
#projects .item { color: var(--clr-on-bg-1); border-radius: 28px; padding: 30px; overflow: hidden;}
#projects .item .icon {height: 45px; width: 100%; display: flex; align-items: center; justify-content: flex-start;}
#projects .item .icon img {max-height: 100%;}
#projects .item .link-icon {
    background: url(../img/link.svg) no-repeat center center / contain;
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
}
#projects .item .spacer {height: 300px;}
#projects .item .title {font-size: 32px; margin: 0 0 10px; font-weight: 600;}
#projects .item .desc {font-size: 18px; }
#projects .item .effect { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 0; }
#projects .item .item-content {position: relative; z-index: 1;}
#projects .item:hover {box-shadow: 0 5px 2px #0001; cursor: pointer;}

#projects #test {position: absolute; width: 808px; height: 252px; left: 0; top: 0; background: url(../img/test.png) no-repeat; opacity: 0.5;}
/*
.bg-inspiro { background: url(../img/bg-inspiro.jpg) no-repeat center center / cover; }
.bg-impulse { background: url(../img/bg-impulse.jpg) no-repeat center center / cover; }
.bg-natura-chain { background: url(../img/bg-natura-chain.jpg) no-repeat center center / cover; }
*/
.bg-inspiro { background: url(../img/clean-inspiro.jpg) no-repeat center center / cover; }
.bg-impulse { background: url(../img/clean-impulse.jpg) no-repeat center center / cover; }
.bg-natura-chain { background: url(../img/clean-natura-chain.jpg) no-repeat center center / cover; }

/* Partnership  */

#partnership { background: #F6F5F3; }
#partnership .container { padding-top: 20px; }
#partnership .text {font-size: 18px;}

.feedback {position: relative;}
.feedback .status {position: absolute; width: 100%; bottom: -40px;}
.feedback .text {font-size: 18px;}

/* Media */

.news-item {display: flex; align-items:center; gap: 30px; margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid #eee;}
.news-item.last,
.news-item:last-child {border-color: transparent;}
.news-item:last-child {padding: 0; margin: 0;}
.news-item .title {font-size: 20px; font-weight: 500;}
.news-item .img-holder {aspect-ratio: 14/8; width: 140px; /* align-self: stretch; */}
.news-item .item-content {display: flex; justify-content: space-between; align-items: center; flex: 1 0 0}
.news-item .source {display: flex; align-items: center; min-width: 200px;}
.news-item .icon {margin-right: 20px;}
.news-item .name {font-weight: 500;}
.news-item .date {color: #aaa; font-size: 14px; font-weight: 500;}

.show-more {font-size: 17px; font-weight: 500; display: block; text-align: center; border-radius: 30px; padding: 20px; border: 1px solid #eee; cursor: pointer; transition: all 0.5s;}
.show-more:hover {background: #eee3; }

/* Community  */

#community .container {/*padding-top: 20px;*/}

/* Footer  */

.footer {background: var(--clr-bg-1); color: var(--clr-on-bg-1); }
.footer .bg-wrapper {background: url(../img/footer.jpg) no-repeat center center / cover;}
.copyright { opacity: 0.3; }
.contact-item {font-size: 18px;}
.contact-item .value {font-size: 52px;}

.footer .navi-up {position: relative; transition: all 0.5s; display: block; width: 54px; aspect-ratio: 1; border: 1px solid var(--clr-brd-link); border-radius: 50%; }
.footer .navi-up img {position: absolute; top: 50%; left: 50%; width: 12px; height: 12px; transform: translate(-50%,-50%);}
.footer .navi-up:hover {border-color: var(--clr-brd-link-hov); cursor: pointer;}

.footer .button.outline {
    font-size: 15px;
    line-height: 20px;
    padding: 15px 35px;
    font-weight: 500;
}

.footer .label {font-weight: 500; margin: 0 0 10px;}
.footer a.value {color: #fff; transition: all 0.5s; border-bottom: 1px solid var(--clr-brd-link);}
.footer a.value:hover {border-color: var(--clr-brd-link-hov);}
.footer .logo {width: 200px; height: 60px;}
.footer .button.outline {padding: 17px 35px; border-radius: 40px;}
.footer .bottom-navi {gap: 12px;}

.to-top {
	display:block;
	position: fixed;
	z-index:1111;
	bottom: 20px;
	left: -40px;
	width: 40px;
	height: 40px;
	cursor: pointer;
	border-radius:3px;
	background:url(../img/top.svg) no-repeat center center / 35% #0005;
	/* box-shadow: 0 0 0 3px rgb(0 0 0 / 20%); */
	opacity:0;
	transition:all 0.5s;
}

.to-top.s-how {opacity:0.8; left:20px;}
.to-top:hover { opacity:1; }
