/*
Theme Name: 100 startups
Version: 1.0
Author URI: https://docode.pro
*/

@font-face{
	font-family:'Geologica';
	src:url('/wp-content/themes/docode_theme/fonts/Geologica-Thin.ttf') format('truetype');
	font-weight:300;
	font-style:normal
}

@font-face{
	font-family:'Geologica';
	src:url('/wp-content/themes/docode_theme/fonts/Geologica-Regular.ttf') format('truetype');
	font-weight:400;
	font-style:normal
}

@font-face{
	font-family:'Geologica';
	src:url('/wp-content/themes/docode_theme/fonts/Geologica-Medium.ttf') format('truetype');
	font-weight:500;
	font-style:normal
}

@font-face{
	font-family:'Geologica';
	src:url('/wp-content/themes/docode_theme/fonts/Geologica-SemiBold.ttf') format('truetype');
	font-weight:600;
	font-style:normal
}


:root {
	--bl: #060606;
	--wh: #fff;
	--green: #045433;
	--l-green: #4FB84F;
	--bg-green: #DFF4DE;
	--gray-green: #EEF1EE;
	--gray: #D9DED9;
	--bg: #F7F8F3;
	--bg-green: #EEF1EE'
	--shadow: 0rem 5px 10px 2px rgba(0, 0, 0, 0.1);
	--blue: #0035F2;
	--d-gray: #A8B0AA;;
}

:focus {
	outline: none;
}

::placeholder{
	color: var(--bl);
}

html {
  scroll-behavior: smooth;
}

body {
	font-family: Geologica;
	font-weight: 300;
	font-size: 14px;
	line-height: 150%;
	background: var(--bg);
}

body.o-hidden {
    overflow: hidden;
}

button, input, select, textarea {
	
}

a {
	transition: .3s;
	text-decoration: none;
	color: var(--sec);
}
a:hover {
	text-decoration: underline;
}

p, ul {
    margin-bottom: 20px;
}

h1, .h1 {
	font-weight: 500;
	font-size: 40px;
}

h2, .h2 {
	font-weight: 600;
	font-size: 30px;
	margin-bottom: 20px;
	line-height: 130%;
}

h3, .h3 {
	font-weight: 500;
	font-size: 20px;
}

img {
	max-width: 100%;
	height: auto;
}

iframe {
    max-width: 100%;
}

img.to_svg{
	display: none;
}

.btn{
	cursor: pointer;
	color: var(--wh);
	display: flex;
	padding: 9px 30px;
	justify-content: center;
	align-items: center;
	border: 1px solid var(--green);
	transition: 0.3s;
	position: relative;
	border-radius: 30px;
	background: var(--green);
	font-weight: 500;
}

.btn:hover{
	background: var(--wh);
	text-decoration: none;
	color: var(--green);
}

.btn:focus{
	background: var(--wh);
	border: 3px solid var(--bl);
}

header {
    position: absolute;
    z-index: 100;
    width: 100%;
}

.header_row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

a.head_logo {
	position: relative;
	padding-right: 20px;
	line-height: 1;
}

.head_logo img {
    height: 48px;
    width: auto;
}

.head_logos{
	display: flex;
}

.header_active {
    position: relative;
    padding: 40px 0;
}

.mobile_menu {
    display: none;
}

.lang_menu_wrap {
    display: flex;
    align-items: center;
    margin-left: auto;
}

.ul_main_menu {
    margin: 0;
    padding: 0;
    display: flex;
    list-style: none;
    margin-left: auto;
}

.ul_main_menu a {
    margin: 0 10px;
    color: var(--bl);
    text-decoration: none;
}

.ul_main_menu a:hover {
    color: var(--prim);
}

.lang-menu {
    display: flex;
    list-style: none;
    margin: 0;
    background: var(--wh);
    padding: 10px 10px;
    border-radius: 50px;
}

.lang-menu li a {
    color: var(--bl);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    padding: 0 10px;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    position: relative;
}

.lang-menu li.current-lang a {
    color: var(--green);
}

.lang-menu li a:hover {
	color: var(--green);
}

.loader {
  width: 60px;
  aspect-ratio: 4;
  background: radial-gradient(closest-side at calc(100%/6) 50%,#000 90%,#0000) 0/75% 100%;
  animation: l15-0 1s infinite linear;
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 10000;
  /* transform: translate(-50%, -50%); */
  display: none;
}
.loader::before {
  content:"";
  position: absolute;
  background: inherit;
  clip-path: inset(0 0 0 50%);
  inset: 0;
  animation: l15-1 0.5s infinite linear;
}
@keyframes l15-0 { 
    0%,49.99% {transform: scale(1)}
    50%,100%  {transform: scale(-1)} 
}
@keyframes l15-1 { 
    0%       {transform: translateX(-37.5%) rotate(0turn)} 
    80%,100% {transform: translateX(-37.5%) rotate(1turn)} 
}

.lang-menu li a:after {
    content: '';
    width: 5px;
    height: 5px;
    position: absolute;
    background: var(--bl);
    border-radius: 50%;
    top: 50%;
    right: -4px;
    transform: translate(-50%, -50%);
}

.lang-menu li:last-child a:after {
    display: none;
}

.head_btn_wrap {
    margin-left: 20px;
}




/*** MAIN BANNER ***/
img.banner_fon {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner_lighter {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, var(--bg), transparent);
}

.banner_content {
    position: relative;
    width: 48%;
    padding: 140px 0 60px;
}

.banner_mark {
    color: var(--green);
    margin-bottom: 20px;
    font-weight: 400;
}

.banner_title {
    font-size: 60px;
    line-height: 130%;
    font-weight: 600;
    margin-bottom: 40px;
}

section.banner {
    position: relative;
}

.banner_desc {
    color: var(--green);
    font-size: 28px;
    line-height: 130%;
    margin-bottom: 40px;
    font-weight: 600;
}

.banner_text {
    font-size: 20px;
    line-height: 130%;
    margin-bottom: 40px;
}

.banner_bottom {
    font-weight: 500;
}
/*** END MAIN BANNER ***/


/*** Marshrut ***/
section.marshrut {
    padding: 60px 0;
}

.marshrut_wrap {
    padding: 40px;
    background: var(--wh);
    border-radius: 10px;
    border: 1px solid var(--gray);
}

.marshrut_steps {
    display: flex;
    align-items: flex-start;
    margin: 40px 0;
    justify-content: space-between;
}

.any_step {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 15%;
    overflow-wrap: anywhere;
    text-align: center;
}

.any_step_num {
    width: 35px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: var(--gray-green);
    border: 1px solid var(--gray);
    border-radius: 50%;
    margin-bottom: 10px;
    position: relative;
}

.active .any_step_num {
    background: var(--green);
    color: var(--wh);
    border-color: var(--green);
}

.any_step_num:after {
    content: '';
    position: absolute;
    width: 210px;
    height: 2px;
    background: var(--l-green);
    top: 50%;
    left: 100%;
}

.any_step:last-child .any_step_num:after {
    display: none;
}

.marshrut_calc_item {
    display: none;
    flex-wrap: wrap;
    align-items: flex-start;
}

.marshrut_calc_left {
    width: 65%;
    margin-right: 40px;
    background: var(--gray-green);
    border: 1px solid var(--gray);
    border-radius: 10px;
    padding: 20px 20px 10px;
}

.marshrut_calc_num {
    text-transform: uppercase;
    font-weight: 500;
    color: var(--green);
    margin-bottom: 20px;
}

.marshrut_calc_title {
    line-height: 130%;
    font-size: 24px;
    font-weight: 600;
}

.marshrut_calc_variants {
    display: flex;
    flex-wrap: wrap;
    margin: 40px -10px 0;
}

.marshrut_calc_var {
    background: var(--wh);
    width: calc(50% - 20px);
    margin: 0 10px 20px;
    display: flex;
    align-items: center;
    border-radius: 10px;
    padding: 30px 20px;
    border: 1px solid var(--gray);
    cursor: pointer;
    transition: 0.3s;
}

.marshrut_calc_var.disabled {
    background: var(--gray);
    pointer-events: none;
}

.marshrut_calc_var.disabled .marshrut_calc_var_icon {
    background: var(--d-gray);
}

.marshrut_calc_var_icon {
    margin-right: 20px;
    position: relative;
    width: 48px;
    height: 48px;
    border-radius: 6px;
    background: var(--blue);
}

.marshrut_calc_var_icon img {
    position: absolute;
    width: 24px;
    height: auto;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.marshrut_calc_var_select {
    margin-left: auto;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid var(--d-gray);
    transition: 0.3s;
}

.marshrut_calc_var:hover .marshrut_calc_var_select {
    background: var(--gray);
}

.marshrut_calc_var.active {
    background: var(--bg-green);
    border-color: var(--l-green);
}

.marshrut_calc_var.active .marshrut_calc_var_select {
    background: var(--green);
}

.marshrut_calc_right {
    flex: 1;
    border: 1px solid var(--d-gray);
    border-radius: 10px;
    padding: 20px;
    display: flex;
    flex-direction: column;
}

.marshrut_calc_btn .btn {
    width: 100%;
}

.marshrut_calc_btn {
    margin-top: 20px;
    display: none;
}

.marshrut_calc_btn.active{
	display: block
}

.marshrut_calc_attention {
    font-size: 20px;
    text-align: center;
    font-weight: 500;
    color: var(--green);
}

.marshrut_calc {
    margin-top: 40px;
}

.marshrut_calc_item.active {
    display: flex;
}

.marshrut_card_head {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    font-size: 24px;
    font-weight: 600;
    line-height: 130%;
}

.marshrut_card_marks {
    display: flex;
    margin-bottom: 15px;
}

.marshrut_card_head .marshrut_calc_var_icon {
    width: 36px;
    height: 36px;
}

.marshrut_card_title {
    flex: 1;
}

.marshrut_card_head .marshrut_calc_var_icon img {
    width: 20px;
    height: 20px;
}

.marshrut_card_b {
    color: var(--blue);
    font-weight: 600;
    margin-right: auto;
}

.marshrut_card_p {
    color: var(--green);
    font-weight: 600;
}

.marshrut_card_img {
    border-radius: 10px;
    position: relative;
    height: 90px;
    margin-bottom: 15px;
    overflow: hidden;
}

.marshrut_card_img img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.marshrut_card_txt {
    margin-bottom: 15px;
}

.marshrut_card_price {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    justify-content: space-between;
    font-weight: 500;
}

.marshrut_card_price span {
    font-size: 24px;
}

.marshrut_card_att {
    font-size: 12px;
}

.marshrut_res_wrap {
    display: flex;
    padding: 40px;
    background: var(--bg-green);
    border-radius: 10px;
    width: 100%;
    justify-content: space-between;
    margin-top: 40px;
    align-items: flex-start;
}

.marshrut_res_icon {
    position: relative;
    background: var(--blue);
    width: 60px;
    height: 60px;
    border-radius: 10px;
    margin-bottom: 10px;
}

.marshrut_res_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 160px;
    text-align: center;
}

.marshrut_res_icon img {
    width: 24px;
    height: 24px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.marshrut_res_title {
    font-weight: 600;
}

.marshrut_res_desc {
    font-size: 12px;
}

.marshrut_res_icon:after {
    content: '';
    width: 200px;
    height: 2px;
    background: var(--l-green);
    position: absolute;
    display: block;
    left: 100%;
    top: 50%;
    transform: translateY(-50%);
}

.marshrut_res_item:last-child .marshrut_res_icon:after {
    display: none;
}
/*** END MARSHRUT ***/

/*** CALCULATOR ***/
section.calc {
    padding: 60px 0;
}

section.calc .marshrut_wrap {
    margin-top: 40px;
}

.calc_container {
    display: flex;
    flex-wrap: wrap;
}

.calc_parameter {
    width: 30%;
    background: var(--gray-green);
    border: 1px solid var(--gray);
    border-radius: 10px;
    margin-right: 20px;
    padding: 20px;
    display: flex;
    flex-direction: column;
}

.calc_parameter_title {
    font-size: 20px;
    line-height: 130%;
    font-weight: 600;
    display: none;
}

.calc_parameter_select {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
}

.calc_parameter_select label {
    margin-bottom: 10px;
}

.calc_parameter_select select {
    border: none;
    height: 40px;
    background: var(--wh);
    padding: 10px;
    border-radius: 10px;
}

.calc_parameter_mark {
    margin-top: 20px;
    font-size: 12px;
    line-height: 130%;
    margin-bottom: auto;
    display: none;
}

.calc_start_btn {
    margin-top: 0;
}

.calc_start_btn .btn {
    width: 100%;
}

.calc_results {
    flex: 1;
    display: flex;
    width: 100%;
}

.calc_results_row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px 0px;
    width: 100%;
}

.calc_results_window {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: var(--gray-green);
    border: 1px solid var(--gray);
    margin: 0 10px;
    width: calc(33.333% - 20px);
    border-radius: 10px;
    /* height: 140px; */
    padding: 0 40px;
    width: calc(50% - 20px);
    margin-bottom: 20px;
}

.calc_results_value {
    font-size: 20px;
    font-weight: 600;
    margin: 10px 0;
}

.calc_results_mark {
    font-size: 16px;
    font-weight: 600;
    color: var(--green);
}

.calc_results_window.active {
    background: var(--bg-green);
    border-color: var(--l-green);
    width: 100%;
    margin-bottom: 0;
}

.calc_graph {
    padding: 20px;
    background: var(--gray-green);
    border: 1px solid var(--gray);
    border-radius: 10px;
    display: none;
}

.calc_graph_title {
    font-size: 18px;
    text-transform: uppercase;
    margin-bottom: 20px;
    line-height: 130%;
}

.bars_container {
    display: flex;
    align-items: flex-end;
    justify-content: space-around;
    width: 100%;
}

.calc_graph_wrap {
    display: flex;
    height: 230px;
}

.calc_graph_wrap_attention {
    display: flex;
    /* align-items: center; */
    justify-content: center;
    font-style: italic;
    margin-top: 20px;
}

.any_bar_wrap {
    width: 100px;
    text-align: center;
}

.any_bar {
    height: 0;
    background: var(--green);
    border-radius: 10px;
    margin-bottom: 10px;
    transition: 0.3s;
}

.any_bar.now_period {
    border: 1px solid var(--l-green);
    opacity: 1 !important;
    /*background: var(--l-green);*/
}

.marshrut_bottom {
    margin-top: 40px;
    padding: 20px 20px 0;
    background: var(--gray-green);
    border: 1px solid var(--gray);
    border-radius: 10px;
}

section.attention {
    padding-bottom: 60px;
}

.marshrut_bottom a {
    text-decoration: underline;
}

.marshrut_bottom a:hover {
    color: var(--green);
}
/*** END CALCULATOR ***/

/*** ADS ***/
.prizyv{
	padding: 30px 0;
}

.privyv_wrap {
    position: relative;
    padding: 40px;
    border-radius: 20px;
    overflow: hidden;
}

img.prizyv_fon {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
}

.prizyv_content {
    width: 60%;
    position: relative;
    color: var(--wh);
    padding: 0 0px;
}

.prizyv_mark {
    margin-bottom: 30px;
}

.prizyv_text {
    font-size: 20px;
    line-height: 130%;
    margin-bottom: 30px;
    padding-right: 15%;
}

.prizyv_text a {
    text-decoration: underline;
}

.prizyv_text a:hover {
    color: var(--l-green);
}

.prizyv_btn {display: flex;flex-wrap: wrap;}

.prizyv_btn .btn {
    width: max-content;
    color: var(--green);
    background: var(--wh);
    margin-right: 20px;
}

.prizyv_btn .btn:hover {
    background: var(--green);
    color: var(--wh);
}

.prizyv_mark_2 {
    position: absolute;
    right: 80px;
    top: 50%;
    color: var(--wh);
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    text-align: center;
    font-size: 20px;
    line-height: 130%;
}

.prizyv_mark_2 span {
    font-size: 40px;
    line-height: 130%;
    font-weight: 600;
}


/*** END ADS ***/








/*** FOOTER ***/
footer {
    color: var(--bl);
    background: var(--gray-green);
    font-size: 18px;
}

.footer_row {
    padding: 60px 0 10px;
}

a.footer_logo {
    display: block;
    height: 50px;
    width: auto;
    margin-right: 20px;
}

.footer_left {
    width: calc(50% - 30px);
    margin: 0 15px 30px;
}

.footer_logos {
    display: flex;
    margin-bottom: 40px;
}

.footer_cont {
    width: calc(40% - 30px);
    margin: 0 15px 30px;
}

.footer_title {
    font-weight: 500;
    margin-bottom: 29px;
    text-transform: uppercase;
}

.footer_cont_list {
    display: flex;
    flex-direction: column;
    align-items: start;
    margin-bottom: 20px;
}

.footer_cont_list a {
    display: flex;
    margin-bottom: 10px;
}

.footer_cont_list span {
    /* margin-left: 10px; */
    color: var(--bl);
    transition: 0.3s;
    flex: 1;
}

.footer_cont_list a:hover {
    text-decoration: none;
}

.footer_cont_list a:hover span {
    color: var(--green);
}

.footer_cont_list a path {
    fill: #51528B;
    transition: 0.3s;
}

.footer_cont_list a:hover path {
    fill: var(--m-gray);
}

.footer_social {
    flex: 1;
    display: flex;
    padding-top: 20px;
    margin: 0 10px;
}

.footer_social_list {
    display: flex;
    flex-direction: column;
    margin-left: auto;
}

.footer_social_list a {
    display: block;
    background: var(--wh);
    position: relative;
    margin-bottom: 20px;
    width: 40px;
    height: 40px;
}

.footer_social_list a path {
    fill: var(--bl);
    transition: 0.3s;
}

.footer_social_list a img, .footer_social_list a svg {
    position: absolute;
    width: 20px;
    height: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.footer_social_list a:hover path {
    fill: var(--vi);
}

.footer_copywrite {text-align: center;padding: 40px 0 80px;border-top: 1px solid var(--gray);font-size: 14px;line-height: 130%;}

.desc_hide{
	display: none;
}


@media(max-width: 1100px){
	.banner_content {
	    width: 100%;
	}
	
	.banner_lighter {
	    background: var(--wh);
	    opacity: 0.6;
	}
	
	.any_step_num:after {
	    width: 100px;
	}
	
	.marshrut_calc_left {
	    width: 100%;
	    margin: 0 0 20px;
	}
	
	.marshrut_card_img {
	    height: 200px;
	}
	
	.marshrut_res_wrap {
	    padding: 20px;
	}
	
	.marshrut_res_icon {
	    width: 40px;
	    height: 40px;
	}
	
	.marshrut_res_icon:after {
	    width: 100px;
	}
	
	.calc_parameter {
	    width: 100%;
	    margin: 0 0 20px;
	}
	
	.calc_results_window {
	    padding: 0 20px;
	}
	
	.any_bar_wrap {
	    width: 70px;
	    font-size: 10px;
	    line-height: 130%;
	}
	
	.prizyv {
	    padding-top: 0;
	}
	
	.prizyv_content {
	    width: 60%;
	}
	
	.prizyv_mark_2 {
	    top: 10px;
	    transform: none;
	    right: 20px;
	}

	.marshrut_calc_btn {
	    order: 0;
	    margin: 0 10px 10px;
	    width: 100%;
	}

	.marshrut_calc_btn_wrap{
		width: 100%
	}
	
	.marshrut_calc_ajax_ans {
	    order: 1;
	}

	.prizyv_btn .btn {
	    margin-bottom: 20px;
	}
	
	.prizyv_btn .btn:last-child {
	    margin: 0;
	}
}

@media(max-width: 600px){
	.header_active {
	    padding: 20px 0;
	}
	
	a.head_logo {
	    padding: 0;
	}
	
	.head_logo img {
	    height: 36px;
	}
	
	.head_logos {
	    justify-content: space-between;
	    width: 100%;
	    margin-bottom: 20px;
	}
	
	.lang_menu_wrap {
	    margin-left: 0;
	}
	
	.head_btn_wrap {
	    margin-left: auto;
	}
	
	.banner_title {
	    font-size: 34px;
	    line-height: 130%;
	    margin-bottom: 20px;
	}
	
	.banner_desc {
	    font-size: 20px;
	    line-height: 130%;
	}
	
	.banner_text {
	    font-size: 16px;
	    line-height: 130%;
	    font-weight: 400;
	}
	
	.marshrut_wrap {
	    padding: 20px;
	}
	
	h2, .h2 {
	    font-size: 24px;
	    line-height: 130%;
	}
	
	.marshrut_steps {
	    flex-wrap: wrap;
	}
	
	.any_step {
	    width: 40%;
	    margin-bottom: 10px;
	}
	
	.any_step_num:after {
	    display: none;
	}
	
	.marshrut_calc_title {
	    font-size: 16px;
	    line-height: 130%;
	}
	
	.marshrut_calc_var {
	    width: 100%;
	    padding: 15px;
	}
	
	.marshrut_calc_var_text {
	    flex: 1;
	}
	
	.marshrut_calc_var_icon {
	    width: 30px;
	    height: 30px;
	    margin-right: 10px;
	}
	
	.marshrut_card_head {
	    font-size: 16px;
	    line-height: 130%;
	}
	
	.marshrut_card_img {
	    height: 90px;
	}
	
	.marshrut_card_price {flex-direction: column;}
	
	.marshrut_res_wrap {
	    flex-wrap: wrap;
	}
	
	.marshrut_res_item {
	    width: 50%;
	    padding: 0 10px;
	    line-height: 130%;
	    margin-bottom: 20px;
	}
	
	.marshrut_res_icon:after {
	    display: none;
	}
	
	.marshrut_card_marks {flex-direction: column;}
	
	.calc_results_window {
	    width: 100%;
	    margin-bottom: 20px;
	    padding: 20px;
	}
	
	.any_bar_wrap {
	    width: 30px;
	}
	
	.any_bar_text {
	    writing-mode: sideways-rl;
	}
	
	.prizyv_content {
	    width: 100%;
	}
	
	.privyv_wrap {
	    padding: 20px;
	}
	
	.prizyv_mark_2 {
	    position: relative;
	    top: 0;
	    left: 0;
	    margin-top: 20px;
	    display: none;
	}
	
	.prizyv_text {
	    font-size: 16px;
	    font-weight: 400;
	}

	.mobile_darker {
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    top: 0;
	    left: 0;
	    background: var(--bl);
	    opacity: 0.4;
	}
	
	.footer_left {
	    width: 100%;
	}
	
	.footer_cont {
	    width: 100%;
	}
	
	.calc_graph_title {
	    font-size: 16px;
	}
	
	.desc_hide{
		display: flex;
	}
	.mob_hide{
		display: none !important;
	}
}




