/*!
Theme Name: Girafffe
Author: mirti
Author URI: https://mirtidev.ru/
Description: Тема для SaaS-сайта
Version: 1.6.0.8
Tested up to: 6.2.2
Requires PHP: 8+
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: girafffe
Tags:

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# General
  - Fonts
	- Elements
  - Forms
  - Modals
  - Misc
# Header
# Footer
# General Blocks
# Home page
# Blog - main and category
# Blog - single
# Tools - single
# Services - single
# Donate page
# 404 page
# Auth page
# Verify page
# Account page
# Dashboard page
  - block_access_denied
  - block_dashboard_projects
  - block_dashboard_stats
  - block_dashboard_events
# Reviews page
# Cards Fill page
# Adata page
# Revman page

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
/* Fonts
--------------------------------------------- */
@font-face {
  font-family: 'NTSomic Regular';
  src: local('NTSomic Regular'), local('NTSomic-Regular'),
  url('./fonts/NTSomic-Regular.woff2') format('woff2'),
  url('./fonts/NTSomic-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'NTSomic Medium';
  src: local('NTSomic Medium'), local('NTSomic-Medium'),
  url('./fonts/NTSomic-Medium.woff2') format('woff2'),
  url('./fonts/NTSomic-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: 'NTSomic Bold';
  src: local('NTSomic Bold'), local('NTSomic-Bold'),
  url('./fonts/NTSomic-Bold.woff2') format('woff2'),
  url('./fonts/NTSomic-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}

/* Elements
--------------------------------------------- */
:root {
  --main_color: #0caa49;
  --second_color: #d90049;
  --third_color: #273342;
  --black: #131313;
  --not_so_dark: #1A1716;
  --dark: #141414;
  --lighter_gray: #f8f8f8;
  --light_gray: #e5e5e5;
  --middle_gray: #a7a7a7;
  --dark_gray: #505050;
  --error_color: #ff3333;
  --success_color: #54d284;
  --terracot_start_color: #CC5533;
  --terracot_end_color: #CD5C5C;
  --terracot_gradient: linear-gradient(to bottom,
        #CC5533 0%,
        #E2725B 25%,
        #B35844 50%,
        #CD5C5C 75%);
  /* settings */
  --transition: all .3s;
  --no_transition: all 0s;
}
* {
  outline: none !important;
}
*,
*::before,
*::after {
	box-sizing: inherit;
}
html {
	line-height: 1.4;
	-webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
}
body {
  font-family: 'NTSomic Regular';
  font-weight: inherit;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  line-height: 1.4;
  color: var(--black);
  background: var(--lighter_gray);
  margin: 0;
  overflow-x: hidden !important;
}
body.noscroll {
  overflow-y: hidden !important;
}
main {
	display: block;
}
a {
  background-color: transparent;
  transition: var(--transition);
}
a, a:visited {
  color: var(--main_color);
  text-decoration: none;
}
a:hover, a:active, a:focus {
  color: var(--black);
  text-decoration-color: var(--main_color);
}
a[href=""] {
  pointer-events: none;
}
p, ol, ul, li, a, h1, h2, h3, h4, h5, h6 {
  padding: 0;
  margin: 0;
}
ol, ul {
  margin-left: 20px;
}
ul {
	list-style: disc;
}
ol {
	list-style: decimal;
}
li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 20px;
}
dd {
	margin: 0 20px 20px;
}
b, strong, dt {
  font-family: 'NTSomic Bold';
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'NTSomic Bold';
  font-weight: inherit;
  line-height: 1.1;
  clear: both;
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
  color: var(--main_color);
}
h1 {
  font-size: 24px;
}
h2 {
  font-size: 24px;
}
h3 {
  font-size: 22px;
}
h4 {
  font-size: 20px;
}
h5 {
  font-size: 18px;
}
h6 {
  font-size: 16px;
}
dfn, cite, em, i {
	font-style: italic;
}
hr {
	box-sizing: content-box;
  background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 20px;
	overflow: visible;
}
pre, code, kbd, samp {
	font-family: monospace, monospace;
	font-size: 16px;
}
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}
abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
small {
	font-size: 80%;
}
big {
	font-size: 125%;
}
mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}
img {
	border-style: none;
  height: auto;
	max-width: 100%;
}
.wp-caption {
	margin-bottom: 45px;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption .wp-caption-text {
	margin: -20px 0 0;
  font-size: 17px;
  color: var(--dark_gray);
}
.wp-caption-text {
	text-align: center;
}
figure {
	margin: 20px 0;
}
template, [hidden] {
  display: none;
}
details {
	display: block;
}
summary {
	display: list-item;
}
blockquote, address {
	margin: 0 20px;
}
embed,
iframe,
object {
	max-width: 100%;
}
table {
	margin: 0;
	width: 100%;
}
.post, .page {
  margin: 0;
}
.sticky {
	display: block;
}
.updated:not(.published) {
	display: none;
}
.site_main {
  padding: 0;
}
.page_sections {
  position: relative;
  z-index: 1;
}
.page_sections.white_bg {
  background: #fff;
}
.page_sections.gray_bg {
  background: var(--lighter_gray);
}
.page_sections.more_gray_bg {
  background: var(--light_gray);
}
.page_sections:empty {
  display: none;
}
.page_wrappers {
  background-color: var(--black);
  background-position: bottom center;
  background-size: cover;
  position: relative;
}
.page_wrappers.fixed {
  background-attachment: fixed;
}
.megasections {
  z-index: 5;
}
.megasections > div:not(:empty) {
  margin-top: 80px;
}
.megasections > *:nth-child(1) {
  margin-top: 0 !important;
}
.megasections > .container:nth-of-type(1) {
  margin-top: 0 !important;
}
.mtop_sections {
	margin-top: 80px;
}
.mtop_small_sections {
	margin-top: 50px;
}
.ptop_sections {
	padding-top: 80px;
}
.ptop_small_sections {
	padding-top: 50px;
}
.mbottom_sections {
	margin-bottom: 80px;
}
.mbottom_small_sections {
	margin-bottom: 50px;
}
.pbottom_sections {
	padding-bottom: 80px;
}
.pbottom_small_sections {
	padding-bottom: 50px;
}
.block_titles {
	text-align: center;
}
.block_titles.left {
	text-align: left;
}
.block_titles.white {
  color: #fff;
}
.block_titles .block_titles__link_wrapper {
  justify-content: flex-end;
  margin-top: 10px;
}
.block_titles__link_wrapper a {
  font-family: 'NTSomic Medium';
  color: var(--second_color);
  text-decoration: underline;
  text-decoration-color: var(--second_color);
  text-decoration-style: solid;
  text-underline-position: under;
}
.block_titles__link_wrapper a:hover {
  color: var(--main_color);
  text-decoration-color: var(--main_color);
}
p.subtitle {
  font-family: 'NTSomic Medium';
  margin-top: 10px;
	font-size: 16px;
  line-height: 1.2;
}
.flex_elem {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.default_content h1.page_title {
  font-size: 32px;
}
.default_content h2 {
  font-size: 24px;
}
.default_content h3 {
  font-size: 20px;
}
.default_content h4 {
  font-size: 18px;
}
.default_content h5,
.default_content h6 {
  font-size: 16px;
}
.default_text > * {
  margin-top: 15px;
}
.default_text > *:nth-child(1) {
  margin-top: 0 !important;
}
.default_text > h2,
.default_text > h3,
.default_text > h4,
.default_text > h5,
.default_text > h6 {
  margin-top: 45px;
  line-height: 1.4;
}
.default_text img {
  pointer-events: none;
  display: block;
  margin: 20px 0;
}
.default_text img.alignleft,
.default_text img.alignright {
  float: none;
  margin: 0 auto;
}
.default_text a,
.default_text a:visited {
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-color: var(--main_color);
  text-underline-position: under;
}
.default_text blockquote {
  font-family: 'NTSomic Medium';
  margin-left: 0;
  padding-left: 20px;
  border-left: 5px solid var(--main_color);
}
@keyframes video_play {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.2);
	}
	100% {
		transform: scale(1);
	}
}
a.video_play {
	z-index: 2;
  position: absolute;
  width: 50px;
  height: 50px;
	background: var(--main_color);
	border-radius: 100%;
	justify-content: center;
	align-items: center;
	transform: scale(1);
	animation: video_play 1.5s infinite;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .25);
}
a.video_play:hover {
  background: var(--second_color);
}
a.video_play::before {
	content: '';
	position: absolute;
	border-radius: 100%;
	background: #fff;
	z-index: 1;
	opacity: .5;
	box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .4);
}
a.video_play img {
	width: 30px;
	height: 30px;
  margin: 0;
	display: block;
	position: relative;
	right: -3px;
	z-index: 3;
  filter: invert(1);
}
.modal-video-close-btn {
  right: 0 !important;
  top: -55px !important;
  height: 55px !important;
  background: transparent !important;
}
.wow {
  visibility: hidden;
}
.hidden {
  display: none !important;
}
/* hints */
.hint_trigger {
  position: absolute;
  right: 0;
  top: 0;
  width: 30px;
  height: 30px;
  border: 1px solid var(--light_gray);
  border-radius: 100%;
  background: var(--lighter_gray);
  cursor: pointer;
}
.hint_trigger::before,
.hint_trigger::after {
  position: absolute;
  display: block;
}
.hint_trigger::after {
  font-family: 'NTSomic Bold';
  content: '?';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  text-align: center;
  line-height: 30px;
}
.hint_trigger:hover,
.hint_trigger.active {
  color: var(--main_color);
  transition: var(--transition);
}
.hint_trigger.active::before,
.hint_trigger.active::after {
  content: '';
  width: 50%;
  height: 2px;
  left: 25%;
  top: 25%;
  bottom: 25%;
  margin: auto 0;
  background: var(--main_color);
}
.hint_trigger.active::before {
  transform: rotate(45deg);
}
.hint_trigger.active::after {
  transform: rotate(-45deg);
}
.hint_output {
  font-family: 'NTSomic Medium';
  font-size: 12px;
  color: var(--dark_gray);
  position: absolute;
  top: 40px;
  right: 0;
  width: 100%;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 12px;
  padding: 5px 10px;
  visibility: hidden;
  z-index: 10;
}
.hint_trigger.active + .hint_output {
  visibility: visible;
  transition: border-color .3s;
}
img.delete_field {
  display: block;
  cursor: pointer;
  width: 20px;
  height: 20px;
  position: absolute;
  transition: var(--transition);
}
img.delete_field:hover {
  transform: scale(1.1);
}
.loader_elem {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
}
.loader_elem.hidden {
  display: none;
}
.loader_elem__bar {
  width: 100%;
  height: 30px;
  background: var(--lighter_gray);
  border-radius: 6px;
  box-shadow: 0 0 1px rgba(0, 0, 0, .35);
  text-align: left;
}
.loader_elem__bar span {
  font-family: 'NTSomic Bold';
  display: inline-block;
  line-height: 30px;
  text-align: right;
  position: relative;
  top: -1px;
  height: calc(100% + 2px);
  min-width: 45px;
  padding-right: 7px;
  background: var(--second_color);
  border-radius: 6px;
  color: #fff;
  transition: var(--transition);
}
.loader_elem__text {
  margin-top: 10px;
  width: 100%;
  font-size: 18px;
  text-transform: uppercase;
  text-align: center;
}
.loader__can_close {
  margin-top: 10px;
  color: var(--dark_gray);
}
.loader_elem__counter {
  margin-top: 10px;
}
#fixed_notices {
  position: fixed;
  bottom: 40px;
  right: 20px;
  z-index: 9999;
  flex-flow: column nowrap;
  align-items: flex-end;
  gap: 20px;
}
.fixed_notice {
  background-color: #333;
  color: #fff;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0 0 12px rgba(0, 0, 0, .25);
}
.fixed_notice.error {
  background-color: var(--error_color);
}
.fixed_notice.success {
  background-color: var(--success_color);
}

@media (min-width: 576px) {
  h1, h2 {
    font-size: 36px;
  }
  h3 {
    font-size: 26px;
  }
  h4 {
    font-size: 22px;
  }
  h5 {
    font-size: 20px;
  }
  h6 {
    font-size: 19px;
  }
  p.subtitle {
	  font-size: 19px;
	}
  .block_titles.with_link h2 {
    font-size: 32px;
  }
  .block_titles__link_wrapper a {
    font-size: 20px;
  }
}

@media (min-width: 768px) {
  .default_text img {
    margin: 30px 0;
  }
  .default_text img.alignleft {
		float: left;
		margin-right: 25px;
		margin-bottom: 5px;
	}
	.default_text img.alignright {
		float: right;
		margin-left: 25px;
		margin-bottom: 5px;
	}
  .default_text h2 {
    font-size: 33px;
  }
  .default_text h3 {
    font-size: 28px;
  }
  .default_text h4 {
    font-size: 24px;
  }
  .default_text h5 {
    font-size: 20px;
  }
  .default_text h6 {
    font-size: 17px;
  }
}

@media (min-width: 992px) {
  h1, h2 {
    font-size: 40px;
  }
  h3 {
    font-size: 30px;
  }
  h4 {
    font-size: 24px;
  }
  h5 {
    font-size: 22px;
  }
  h6, p.subtitle {
	  font-size: 20px;
	}
  .block_titles.with_link {
    padding-right: 300px;
    position: relative;
  }
  .block_titles__link_wrapper {
    width: 300px;
    position: absolute;
    right: 0;
    bottom: 5px;
  }
  .megasections > div:not(:empty) {
    margin-top: 120px;
  }
  .mtop_sections {
  	margin-top: 160px;
  }
  .mtop_small_sections {
  	margin-top: 100px;
  }
  .ptop_sections {
  	padding-top: 160px;
  }
  .ptop_small_sections {
  	padding-top: 100px;
  }
  .mbottom_sections {
  	margin-bottom: 160px;
  }
  .mbottom_small_sections {
  	margin-bottom: 100px;
  }
  .pbottom_sections {
  	padding-bottom: 160px;
  }
  .pbottom_small_sections {
  	padding-bottom: 100px;
  }
}

@media (min-width: 1200px) {
  h1, h2 {
    font-size: 48px;
  }
  p.subtitle {
	  font-size: 24px;
	}
}

/* Forms
--------------------------------------------- */
/* normalize */
button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}
button, input {
	overflow: visible;
}
button, select {
	text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  appearance: button;
	-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}
fieldset {
	padding: 0.35em 0.75em 0.625em;
}
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}
progress {
	vertical-align: baseline;
}
textarea {
	overflow: auto;
}
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
[type="search"] {
  appearance: textfield;
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}
/* elems */
a.button, .button, button,
input[type=button],
input[type="reset"],
input[type=submit] {
  font-size: 16px;
  display: inline-block;
  padding: 18px 30px;
  background: var(--main_color);
  border: 0;
  border-radius: 16px;
  line-height: 1.15;
  color: #fff;
  text-align: center;
  cursor: pointer;
  white-space: normal;
  position: relative;
  transition: var(--transition);
}
.button:hover, button:hover,
input[type=button]:hover,
input[type="reset"]:hover,
input[type=submit]:hover {
  filter: saturate(120%);
}
.button.color_var2:hover,
.button.color_var3:hover {
  filter: saturate(200%);
}
.button:focus, .button:active,
button:focus, button:active,
input[type=button]:focus,
input[type="reset"]:focus,
input[type=submit]:focus,
input[type=button]:active,
input[type="reset"]:active,
input[type=submit]:active {
  filter: saturate(60%);
}
.button.small_paddings {
  padding: 14px 20px;
}
.button.color_var2 {
  background: var(--second_color);
}
.button.color_var3 {
  background: var(--third_color);
}
.button.color_transparent {
  background: rgba(255, 255, 255, .5);
  backdrop-filter: blur(3px);
  box-shadow: none !important;
  color: var(--black);
  filter: none !important;
}
.button.color_transparent::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 3px solid var(--main_color);
  border-radius: 16px;
}
.button.color_transparent:hover::after {
  border-color: var(--middle_gray);
  transition: var(--transition);
}
.button.color_white {
  background: #fff;
  color: var(--main_color);
}
.button.color_white:hover {
  background: var(--dark_gray);
  color: #fff;
}
.button.upper {
  text-transform: uppercase;
}
.button.bolder {
  font-family: 'NTSomic Bold';
}
.button.disabled {
  filter: grayscale(1);
  pointer-events: none;
}
/* other inputs */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
select,
textarea {
  font-size: 14px;
	color: var(--black);
  background: #fff;
	border: 1px solid var(--light_gray);
	border-radius: 10px;
	padding: 15px 20px;
  transition: var(--transition);
	width: 100%;
  height: 48px;
}
input::placeholder,
select::placeholder,
textarea::placeholder,
input[type="date"],
input[type="time"],
select {
  color: var(--middle_gray);
}
input[type="date"].active,
input[type="time"].active,
select.active {
  color: var(--black);
}
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: url('/wp-content/themes/girafffe/img/angle_down.svg') #fff;
	background-repeat: no-repeat;
	background-position: right 22px center;
	background-size: 16px;
	padding-right: 40px;
  color: var(--middle_gray);
}
select::-ms-expand {
  display: none;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
select:focus,
textarea:focus,
input[type="text"]:hover,
input[type="email"]:hover,
input[type="url"]:hover,
input[type="password"]:hover,
input[type="number"]:hover,
input[type="tel"]:hover,
input[type="range"]:hover,
input[type="date"]:hover,
input[type="month"]:hover,
input[type="week"]:hover,
input[type="time"]:hover,
input[type="datetime"]:hover,
input[type="datetime-local"]:hover,
input[type="color"]:hover,
select:hover,
textarea:hover {
	border-color: var(--middle_gray);
}
textarea {
  resize: vertical;
  height: 270px;
  min-height: 270px;
  max-height: 600px;
  line-height: 1.6;
  padding: 12px 20px;
}
/* contact forms 7 elems */
.hidden_fields {
	display: none !important;
}
.wpcf7 input {
	margin-bottom: 20px;
}
.wpcf7 input[type="submit"] {
	margin-bottom: 0;
}
.checkbox_elem,
.radio_elem,
.wpcf7-list-item label {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: flex-start;
  margin: 5px 0;
}
.checkbox_elem label,
.radio_elem label,
.wpcf7-list-item label span {
  margin-left: 10px;
  cursor: pointer;
  position: relative;
}
.wpcf7-list-item label span {
  line-height: 1.2;
}
.radio_elem label {
  margin-right: 10px;
}
.checkbox_elem label::before,
.radio_elem label::before,
.wpcf7-list-item label span::before {
  content: '';
  position: absolute;
  left: -22px;
  top: 2px;
  border-radius: 100%;
  border: 2px solid var(--main_color);
  width: 15px;
  height: 15px;
  background: transparent;
}
.checkbox_elem label::after,
.radio_elem label::after,
.wpcf7-list-item label span::after {
  content: '';
  position: absolute;
  left: -18px;
  top: 6px;
  border-radius: 100%;
  width: 7px;
  height: 7px;
  background: transparent;
}
.checkbox_elem input:checked + label::before,
.radio_elem input:checked + label::before,
.wpcf7-list-item label input:checked + span::before {
  background: var(--black);
}
.checkbox_elem input:checked + label::after,
.radio_elem input:checked + label::after,
.wpcf7-list-item label input:checked + span::after {
  background: var(--main_color);
}
.checkbox_elem input,
.radio_elem input,
.wpcf7-list-item label input {
  opacity: 0;
}
.wpcf7-acceptance {
  font-size: 14px;
}
.wpcf7 p {
  position: relative;
}
.wpcf7 label {
  padding: 0 0 10px 5px;
  display: inline-block;
  font-size: 14px;
}
.form_hidden {
  display: none;
}
.form_files_wrapper {
  margin-bottom: 20px;
  border: 3px dashed var(--black);
  padding: 10px 20px 20px;
  transition: all .3s;
}
.form_files_wrapper:hover {
  border-color: var(--main_color);
}
.form_files_wrapper #mfcf7_zl_add_file {
  display: block;
  margin: 0 auto;
}
.form_files_wrapper > div {
  text-align: center;
}
.form_fields {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
.hidden_fields,
.wpcf7 .ajax-loader,
.wpcf7-spinner {
  display: none;
}
.wpcf7-acceptance .wpcf7-list-item {
  margin-left: 0 !important;
}
.field-acceptance span {
  margin-left: 0;
}
.wpcf7-not-valid-tip {
  position: absolute;
  top: 22px;
  left: 0px;
  background: var(--error_color);
  padding: 3px 5px;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  border-radius: 6px;
  font-weight: normal;
  display: block;
  z-index: 9;
}
.form_files_wrapper .wpcf7-not-valid-tip {
  position: static;
  text-align: center;
  margin-bottom: 10px;
}
.wpcf7 .wpcf7-response-output {
  margin: 20px 0 0 !important;
  padding: 0 !important;
	background: none !important;
	border: none !important;
  color: var(--error_color);
  width: 100%;
  font-size: 14px;
  text-align: center;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  display: block;
}
.wpcf7 form.sent .wpcf7-response-output {
	color: var(--black);
	display: block !important;
}
.wpcf7 form.sent > * {
  display: none;
}
/* native forms */
.form_elem {
  margin-bottom: 20px;
}
.form_elem__hidden {
  display: none;
}
.form_elem:hover .form_field input:not([type="submit"]),
.form_elem:hover .form_field select,
.form_elem:hover .form_field textarea,
.form_elem:hover .form_field .hint_output {
  border-color: var(--middle_gray);
}
.form_field {
  margin-top: 5px;
  position: relative;
}
p + .form_field {
  margin-top: 10px;
}
.form_field.with_hint input,
.form_field.with_hint textarea {
  padding-right: 40px;
}
.form_field.with_hint .hint_trigger {
  right: 8px;
  top: 8px;
}
.form_field.with_hint .hint_output {
  border-radius: 0 0 12px 12px;
  top: calc(100% - 8px);
}
.form_field.with_hint textarea + .hint_trigger + .hint_output {
  top: calc(100% - 20px);
}
.form_elem > p {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  padding: 3px 5px;
  line-height: 1.2;
  color: var(--main_color);
  background: var(--lighter_gray);
  display: inline-block;
  border: 1px solid var(--light_gray);
  border-radius: 6px;
}
.form_elem > span {
  font-family: 'NTSomic Regular';
  font-size: 14px;
  padding: 3px 5px 0;
  display: block;
  line-height: 1.3;
}
.form_elem > span b {
  font-family: 'NTSomic Regular';
  font-weight: 400;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 6px;
  padding: 0 4px;
}
.form_submit {
  text-align: center;
}
.form_field label.error {
  font-family: 'NTSomic Medium';
  position: absolute;
  top: calc(100% - 8px);
  left: 0;
  width: 100%;
  background: red;
  color: #fff;
  text-align: left;
  font-size: 12px;
  line-height: 1.2;
  padding: 1px 5px;
  border-radius: 0 0 6px 6px;
  z-index: 9;
}
.form_field textarea + label.error {
  bottom: -2px;
  top: auto;
}
.form_elem a {
  display: inline-block;
  margin-top: 10px;
  font-size: 14px;
}
.form_elem a span {
  display: inline-block;
  background: var(--second_color);
  color: #fff;
  border-radius: 100%;
  padding: 0 5px;
}
.form_status {
  width: 100%;
  text-align: center;
  padding-top: 20px;
  display: none;
}
.form_links {
  display: inline-block;
  margin: 10px;
}
label.success_label {
  font-size: 12px;
  padding: 3px 10px;
  background: lightgreen;
  border-radius: 0 0 6px 6px;
  position: absolute;
  bottom: -15px;
  left: 0;
  width: 100%;
  display: none;
}
.pseudo_checkboxes {
  list-style: none;
  margin: 0;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
}
.pseudo_checkboxes li {
  padding-left: 30px;
  margin: 5px 0;
  align-items: center;
  position: relative;
  cursor: pointer;
}
.pseudo_checkboxes li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border: 1px solid var(--light_gray);
  border-radius: 4px;
}
.pseudo_checkboxes li::after {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: 16px;
  height: 16px;
  background: url('/wp-content/themes/girafffe/img/ico_check_alter.svg') no-repeat center;
  background-size: contain;
  opacity: 0;
  transition: var(--transition);
}
.pseudo_checkboxes li.active::after {
  opacity: 1;
}
.pseudo_checkboxes li img {
  display: block;
  pointer-events: none;
  width: 20px;
  height: 20px;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
}
.pseudo_checkboxes li img + span {
  padding-left: 8px;
}
.pseudo_checkboxes li span {
  font-size: 14px;
  color: var(--dark_gray);
  transition: var(--transition);
}
.pseudo_checkboxes li:hover span,
.pseudo_checkboxes li.active span {
  color: var(--dark);
}
.form_filedrop {
  width: 100%;
  height: 300px;
  border: 2px dashed var(--light_gray);
  border-radius: 12px;
  background: #fff;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  padding: 20px;
  text-align: center;
  color: var(--dark_gray);
  line-height: 1.8;
  cursor: pointer;
  transition: background 0.3s ease, border-color 0.3s ease;
  overflow: hidden;
}
.form_filedrop:hover {
  background: var(--lighter_gray);
}
.form_filedrop.dragging {
  background: var(--lighter_gray);
  border-color: var(--dark_gray);
}
.form_filedrop .uploaded_files {
  margin-top: 10px;
  font-size: 14px;
  color: var(--dark_gray);
}
.form_filedrop .uploaded_files p {
  margin: 5px 0;
}
.form_filedrop button {
  display: inline-block;
  margin-top: 10px;
  padding: 5px 10px;
  background: var(--dark_gray);
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.3s ease;
}
.form_filedrop button:hover {
  background: var(--main_color);
}
.list_errors {
  display: none;
  margin-top: 10px;
  font-size: 14px;
  color: var(--error_color);
}
.list_errors p {
  margin-top: 10px;
  position: relative;
  padding-left: 30px;
}
.list_errors p::before {
  content: '!';
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  background: var(--error_color);
  border-radius: 100%;
  color: #fff;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

@media (min-width: 576px) {
  /* elems */
  .button.big_paddings {
    padding: 17px 54px;
  }
}

@media (min-width: 768px) and (hover: hover) {
  /* native forms */
  textarea {
    scrollbar-width: thin;
    scrollbar-color: var(--main_color) var(--lighter_gray);
  }
  textarea::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
  textarea::-webkit-scrollbar-thumb {
    background-color: var(--third_color);
    border-radius: 5px;
  }
  textarea::-webkit-scrollbar-track {
    background-color: var(--light_gray);
    border-radius: 5px;
  }
}

/* only for mobiles and tablets */
@media (max-width: 991px) {
  input[type="date"],
  input[type="time"] {
    -webkit-appearance: none;
    appearance: none;
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-color: #fff;
  }
  input[type="date"] {
    background-image: url('/wp-content/themes/girafffe/img/ico_time.svg');
  }
  input[type="time"] {
    background-image: url('/wp-content/themes/girafffe/img/ico_time_alter.svg');
  }
}

/* Modals
--------------------------------------------- */
.modal {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100000;
}
.modal .modal_container {
  background: rgba(0, 0, 0, 0.75);
  position: fixed;
  width: 100%;
  height: 100%;
}
.modal .modal_content_wrapper {
  position: relative;
  padding: 50px 30px 30px;
  top: 20px;
  left: 10px;
  right: 10px;
  width: calc(100% - 20px);
  box-shadow: 0px 4px 9px rgba(0, 0, 0, 0.25);
  background: #fff;
  height: auto;
  max-height: calc(100vh - 40px);
  overflow: auto;
  border-radius: 4px;
  color: var(--black);
}
.modal_content {
  position: relative;
  z-index: 1;
}
p.modal_content_title {
  font-family: 'NTSomic Bold';
  margin-bottom: 10px;
  font-size: 24px;
  text-align: center;
  position: relative;
}
p.modal_content_subtitle {
  font-family: 'NTSomic Medium';
  margin-bottom: 10px;
  font-size: 17px;
  text-align: center;
  position: relative;
}
span.modal_content_text {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 14px;
  margin-bottom: 10px;
}
ul.modal_content_selector {
  list-style: none;
  margin: 15px 0 0;
  justify-content: flex-start;
  align-items: stretch;
  border: 1px solid var(--main_color);
  border-radius: 6px;
  overflow: hidden;
}
ul.modal_content_selector li {
  font-family: 'NTSomic Medium';
  background: #fff;
  border-bottom: 1px solid var(--main_color);
  padding: 8px 12px;
  width: 100%;
  cursor: pointer;
  justify-content: flex-start;
  align-items: center;
  transition: var(--transition);
}
ul.modal_content_selector li.empty {
  display: none;
  pointer-events: none;
}
ul.modal_content_selector li:nth-last-child(1) {
  border-bottom: 0;
}
ul.modal_content_selector:has(li.empty) li:nth-last-child(2) {
  border-bottom: 0;
}
ul.modal_content_selector li:hover {
  color: var(--main_color);
}
ul.modal_content_selector li.active {
  background: var(--main_color);
  color: #fff;
}
ul.modal_content_selector li img {
  display: block;
  pointer-events: none;
  width: 24px;
  height: 24px;
  margin: 0 3px;
  background: #fff;
  padding: 2px;
  border: 1px solid var(--middle_gray);
  border-radius: 100%;
}
ul.modal_content_selector li img.long_ico {
  width: auto;
  border-radius: 0;
  border: 0;
  padding: 0;
  background: none;
}
ul.modal_content_selector li span {
  padding: 0 3px;
}
.modal_close {
  cursor: pointer;
  position: absolute;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
}
.modal_close img {
  pointer-events: none;
  display: block;
  width: 100%;
  height: 100%;
  transition: var(--transition);
}
.modal_close:hover img {
  transform: rotate(90deg);
}
.forms_modal .wpcf7-submit {
	display: block;
	margin: 0 auto;
  width: 100%;
}
.forms_modal .wpcf7-response-output {
	text-align: center;
}
/* native forms in modal */
.modal_form_block {
  margin-top: 20px;
}
.modal_form_block.modal_content_tab {
  margin-top: 0;
  display: none;
}
.modal_form_block.modal_content_tab.active {
  margin-top: 20px;
  display: block;
}
.modal_form_block .suggestions-suggestions {
  bottom: 40px !important;
  background: var(--lighter_gray);
}
/* cropper modal */
#modal_cropper__pic {
  width: 100%;
}
#modal_cropper__pic img {
  width: 100%;
  max-height: 60vh;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
  display: block;
  margin: 0 auto;
}
#modal_cropper__control {
  margin-top: 20px;
}
#modal_cropper__ratio {
  width: 100%;
  list-style: none;
  margin: 0 0 20px;
}
#modal_cropper__ratio::before {
  content: 'Соотношение сторон кропа:';
  padding: 5px 0;
  margin-right: 10px;
}
#modal_cropper__ratio li {
  font-family: 'NTSomic Medium';
  margin-right: 10px;
  padding: 5px 10px;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  transition: var(--transition);
}
#modal_cropper__ratio li:hover {
  border-color: var(--third_color);
}
#modal_cropper__ratio li.active {
  background: var(--third_color);
  border-color: var(--third_color);
  color: #fff;
}
#modal_cropper__size {
  width: 100%;
  margin-bottom: 20px;
}
#modal_cropper__size > span {
  padding-left: 5px;
}
#modal_cropper__size span span {
  font-family: 'NTSomic Medium';
  display: inline-block;
  padding: 3px 6px;
  background: var(--third_color);
  color: #fff;
  border-radius: 6px;
}

@media (min-width: 576px) {
  .modal .modal_content_wrapper {
    left: 0;
    right: 0;
    width: 400px;
    margin: 0 auto;
  }
  .dashboard_modal .modal_content_wrapper {
    width: 90%;
    max-width: 800px;
  }
}

@media (min-width: 768px) {
  ul.modal_content_selector li {
    width: 50%;
    padding: 8px 12px;
  }
  ul.modal_content_selector li.long {
    width: 100%;
  }
  ul.modal_content_selector li:nth-last-child(even):not(.long) {
    border-right: 1px solid var(--main_color);
  }
  ul.modal_content_selector li:nth-last-child(1),
  ul.modal_content_selector li:nth-last-child(2) {
    border-bottom: 0;
  }
  ul.modal_content_selector li span {
    font-size: 14px;
  }
}

@media (min-width: 768px) and (hover: hover) {
  .modal_content_wrapper {
    scrollbar-width: thin;
    scrollbar-color: var(--main_color) var(--lighter_gray);
  }
  .modal_content_wrapper::-webkit-scrollbar {
    width: 5px;
		height: 5px;
  }
  .modal_content_wrapper::-webkit-scrollbar-track {
    background-color: var(--lighter_gray);
    border-radius: 5px;
  }
  .modal_content_wrapper::-webkit-scrollbar-thumb {
    background-color: var(--main_color);
    border-radius: 5px;
  }
}

/* Misc
--------------------------------------------- */
/* Accessibility
 Text meant only for screen readers */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.header_section {
  padding: 7px 0;
  position: relative;
  z-index: 10;
  background: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, .25);
}
.header_container {
  height: 100%;
}
.header_row {
  position: relative;
  align-items: center;
  height: 100%;
  z-index: 1;
}
/* header_logo */
.header_logo {
  height: 100%;
  justify-content: flex-start;
  align-items: center;
}
.mobile_header_block .header_logo {
  height: auto;
  padding-right: 0;
}
.header_logo a {
	width: 100%;
	max-width: 170px;
	position: relative;
	top: 0;
	transition: var(--transition);
}
.header_logo a:hover {
	top: -6px;
}
.mobile_header_block .header_logo a {
	width: 100%;
}
.header_logo img {
  width: calc(100% - 14px);
	display: block;
  pointer-events: none;
}
.header_logo p {
	font-family: 'NTSomic Medium';
	font-size: 12px;
  color: #fff;
	border-left: 2px solid #fff;
	padding-left: 14px;
  position: relative;
  top: 3px;
}
/* header donate */
.header_donate {
  display: none;
  position: fixed;
  width: 40px;
  right: 80px;
  top: 10px;
}
.header_donate a {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  width: 40px;
}
.header_donate img {
  width: 40px;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
}
.header_donate span {
  font-family: 'NTSomic Medium';
  display: none;
  padding-left: 10px;
}
/* mobile_header_block */
.menu_toggle {
  position: fixed;
  z-index: 999;
  top: 10px;
  right: 15px;
  width: 40px;
  height: 32px;
  padding: 0;
  margin: 0;
  border: 0;
  cursor: pointer;
  background: transparent !important;
  box-shadow: none !important;
}
button.menu_toggle:hover,
button.menu_toggle:focus,
button.menu_toggle:active {
  background: transparent !important;
}
#burger {
  width: 40px;
  height: 32px;
  position: relative;
  transition-duration: 1s;
  margin: 0 auto;
  cursor: pointer;
}
#burger span {
  top: 18px;
  transition-delay: .25s;
}
#burger span:before {
  top: -11px;
}
#burger span:after {
  top: 11px;
}
#burger span,
#burger span:before,
#burger span:after {
  position: absolute;
  left: 0;
  width: 40px;
  height: 5px;
  background: var(--main_color);
  border-radius: 20px;
  transition-duration: .25s;
}
#burger span:before,
#burger span:after {
  content: '';
  transition: transform .25s, top .25s .25s;
}
#burger.open span {
  transition-duration: 0.1s;
  background: transparent;
}
#burger.open span:before {
  transition: top .25s, transform .25s .25s;
  top: 0px;
  transform: rotateZ(-45deg);
}
#burger.open span:after {
  transition: top 0.4s, transform .25s .25s;
  top: 0px;
  transform: rotateZ(45deg);
}
#burger.open span,
#burger.open span:before,
#burger.open span:after {
  border-color: transparent;
}
.mobile_header_block {
  position: absolute;
  left: -9999px;
  top: 0;
  min-height: 125vh;
  height: 125vh;
  padding: 7px 60px 30vh 10px;
  background-color: #333;
	background-position: top center;
	background-size: cover;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  visibility: hidden;
  box-shadow: 3px 0 3px 0 rgb(0 0 0 / 6%);
  transition: var(--transition);
}
.mobile_header_block.toggled {
  visibility: visible;
  z-index: 777;
  position: fixed;
  left: 0;
  overflow-y: auto;
  width: 100%;
}
/* nav menu */
#header_menu {
  display: none;
  list-style: none;
  margin: 0;
}
#header_menu_mob {
  margin: 20px 0 0;
  display: none;
	list-style: none;
}
.mobile_header_block.toggled #header_menu_mob {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: stretch;
}
#header_menu_mob li {
  margin: 5px 0;
  width: 100%;
	position: relative;
	display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
}
#header_menu_mob li a {
	font-size: 18px;
  color: #fff;
}
#header_menu_mob li a:hover,
#header_menu_mob li a:active,
#header_menu_mob li a:focus {
  color: var(--main_color);
}
#header_menu_mob li > a + p {
	margin-left: 5px;
	position: relative;
	top: 2px;
}
#header_menu_mob li > a + p img {
  width: 12px;
  filter: invert(1);
  transition: var(--transition);
}
#header_menu_mob li > a + p.active img {
  transform: scaleY(-1);
}
/* nav menu n+1 lvl's */
#header_menu_mob.sub-menu li:nth-last-child(1) {
  margin-bottom: 0;
}
#header_menu_mob ul {
	margin-left: 20px;
}
#header_menu_mob ul ul {
	margin-left: 40px;
}
#header_menu_mob ul,
#header_menu_mob ul ul {
  display: none !important;
}
#header_menu_mob ul.sub-menu.active {
  display: block !important;
  position: static;
  width: 100%;
  left: auto;
}
.header_mob_contacts {
  margin-top: 30px;
}
.header_mob_contacts__phone {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
}
.header_mob_contacts__phone img {
  display: block;
  pointer-events: none;
  width: 30px;
  height: 30px;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  filter: invert(1);
}
.header_mob_contacts__phone span {
  font-family: 'NTSomic Bold';
  color: #fff;
  font-size: 20px;
  padding-left: 10px;
}
.header_mob_contacts__phone:hover span {
  color: var(--main_color);
  transition: var(--transition);
}
.header_mob_contacts__soc {
  margin-top: 15px;
  align-items: center;
}
.header_mob_contacts__soc a {
  display: block;
  width: 40px;
  height: 40px;
  margin: 15px 15px 0 0;
}
.header_mob_contacts__soc a img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
}
/* header_content */
.header_content {
  display: none;
}
.mobile_header_block .user_nav {
  margin-top: 15px;
}
.mobile_header_block .user_nav__inner {
  position: relative;
  margin-top: 30px;
  padding: 30px 20px 20px;
  width: 100%;
  max-width: 300px;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  border: 2px solid var(--main_color);
  border-radius: 12px;
}
.mobile_header_block .user_nav__inner span {
  font-family: 'NTSomic Bold';
  position: absolute;
  left: 10px;
  top: -15px;
  background: var(--main_color);
  display: inline-block;
  padding: 5px 15px;
  border-radius: 6px;
  color: #fff;
}
.mobile_header_block .user_nav a.user_links {
  display: inline-block;
  margin-bottom: 10px;
  color: #fff;
}
.mobile_header_block .user_nav a.user_links:hover {
  color: var(--main_color);
}
.mobile_header_block .user_nav a.user_links:nth-last-of-type(1) {
  margin-bottom: 0;
}
/* header_contacts */
.header_contacts {
  display: none;
}

@media (min-width: 280px) {
  /* header donate */
  .header_donate {
    display: block;
  }
}

@media (min-width: 576px) {
  /* header donate */
  .header_donate {
    right: 0;
    left: 330px;
    margin: 0 auto;
  }
  /* mobile_header_block */
  .menu_toggle {
    right: 0;
    left: 470px;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  .header_container {
    justify-content: space-between;
    align-items: center;
		position: relative;
		z-index: 10;
  }
  .header_section.logged_in {
    margin-bottom: 70px;
  }
  .header_section.not_logged {
    margin-bottom: 30px;
  }
  /* header_logo */
  .header_logo {
    padding-right: 12px;
  }
  .header_logo a {
  	top: -3px;
  }
  .header_logo a:hover {
  	top: -8px;
  }
  /* header donate */
  .header_donate {
    position: absolute;
    left: auto;
    right: 20px;
    top: 6px;
  }
  /* mobile_header_block */
  .menu_toggle,
  .mobile_header_block {
    display: none !important;
  }
  /* nav menu */
  .header_menu {
    height: 50px;
    align-items: center;
  }
  .header_menu > div {
    width: 100%;
  }
  #header_menu {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    padding: 0;
  }
  #header_menu li {
    margin-right: 30px;
		position: relative;
		text-align: left;
		display: -webkit-flex;
	  display: -ms-flex;
	  display: flex;
	  -webkit-flex-flow: row wrap;
	  -ms-flex-flow: row wrap;
	  flex-flow: row wrap;
	  justify-content: flex-start;
	  align-items: center;
  }
  #header_menu li:nth-last-child(1) {
    margin-right: 0;
  }
  #header_menu li a {
    position: relative;
    color: var(--black);
  }
  #header_menu li a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 3px;
    border-radius: 6px;
    background: var(--main_color);
    transition: var(--transition);
  }
	#header_menu li.menu-item-has-children a::after {
		display: none;
	}
  #header_menu li a:hover::after {
    width: 100%;
  }
  #header_menu li a:active::after {
    color: var(--main_color);
  }
	#header_menu li > a + p {
		margin-left: 5px;
		position: relative;
		top: 1px;
	}
	#header_menu li > a + p img {
	  width: 12px;
	  transition: var(--transition);
	}
	#header_menu li:hover > a + p img {
	  transform: scaleY(-1);
	}
	/* nav menu n+1 lvl's */
	#header_menu ul.sub-menu {
    list-style: none;
    margin: 0;
    padding-top: 20px;
  }
  #header_menu ul.sub-menu::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: calc(100% - 20px);
    background: #fff;
    box-shadow: 0 0 6px rgba(0, 0, 0, .25);
		border-radius: 16px;
  }
  #header_menu ul.sub-menu::after {
    content: '';
    position: absolute;
    left: -10px;
    right: 0;
    top: 9px;
    width: 20px;
    height: 20px;
    background: #fff;
    margin: 0 auto;
    transform: rotate(45deg);
    border-left: 1px solid var(--light_gray);
    border-top: 1px solid var(--light_gray);
  }
	#header_menu ul.sub-menu li {
		margin: 10px 20px;
	}
	#header_menu ul.sub-menu li a {
		white-space: nowrap;
    color: var(--black);
	}
  #header_menu ul.sub-menu li a:hover {
    color: var(--main_color);
  }
	/* nav menu lvl 2 */
	#header_menu > li > ul.sub-menu {
    width: auto;
    position: absolute !important;
    right: -9999px;
  }
  #header_menu > li.focus > ul.sub-menu,
  #header_menu > li:hover > ul.sub-menu {
    display: block;
    right: 0;
    top: 20px;
    z-index: 333;
    transform: translateX(50%);
  }
  #header_menu > li > ul.sub-menu > li {
    position: relative;
  }
  /* header_content */
  .header_content {
    display: block;
  }
  .header_content:not(.not_logged) {
    position: absolute;
    bottom: -50px;
    left: 0;
    right: 0;
    width: 100%;
  }
  .header_content .user_nav {
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: stretch;
  }
  .header_content .user_nav__name {
    font-family: 'NTSomic Medium';
    white-space: nowrap;
    align-items: center;
    background: var(--main_color);
    padding: 0 10px;
    font-size: 16px;
    border-radius: 6px 0 0 6px;
    color: #fff;
  }
  .header_content .user_nav__inner {
    position: relative;
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    background: #fff;
    border: 1px solid var(--light_gray);
    border-left: 0;
    border-radius: 0 6px 6px 0;
  }
  .header_content .user_nav a.user_links {
    font-family: 'NTSomic Medium';
    display: inline-block;
    padding: 5px 10px;
    font-size: 14px;
    color: var(--not_so_dark);
    position: relative;
    line-height: 1;
  }
  .header_content .user_nav a.user_links.active {
    background: var(--light_gray);
    border-left: 1px solid var(--light_gray);
    border-right: 1px solid var(--light_gray);
  }
  .header_content .user_nav a.user_links::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 10%;
    width: 0;
    height: 2px;
    border-radius: 6px;
    background: transparent;
    transition: var(--transition);
  }
  .header_content .user_nav a.user_links:hover::after {
    background: var(--main_color);
    width: 80%;
  }
  .header_content a.button {
    width: 100%;
  }
  /* header_contacts */
  .header_contacts {
    display: block;
  }
  .header_contacts__inner {
    justify-content: flex-end;
    align-items: center;
  }
  .header_contacts__phone {
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    align-items: center;
  }
  .header_contacts__phone span {
    font-family: 'NTSomic Bold';
    color: var(--black);
    font-size: 14px;
  }
  .header_contacts__phone:hover span {
    color: var(--main_color);
    transition: var(--transition);
  }
  .header_contacts__soc {
    align-items: center;
    margin-left: 5px;
  }
  .header_contacts__soc a {
    display: block;
    width: 24px;
    height: 24px;
    margin: 5px 0 5px 10px;
  }
  .header_contacts__soc a img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    object-position: center;
    font-family: 'object-fit: contain; object-position: center;';
  }
}

@media (min-width: 768px) and (hover: hover) {
  /* nav menu lvl 2 */
  @keyframes show_header_submenu {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  #header_menu > li > ul.sub-menu,
  #header_menu ul.sub-menu > li > ul.sub-menu {
    opacity: 0;
  }
  #header_menu > li:hover > ul.sub-menu,
  #header_menu ul.sub-menu > li:hover > ul.sub-menu {
    animation: show_header_submenu .3s;
    opacity: 1;
  }
}

@media (min-width: 992px) {
  /* header_logo */
  .header_logo {
    order: 1;
  }
  .header_logo a {
  	max-width: 194px;
  }
  /* header_menu */
  .header_menu {
    order: 2;
  }
  /* header_contacts */
  .header_contacts {
    order: 3;
    padding-bottom: 0;
  }
  /* header_content */
  .header_content {
    order: 4;
  }
}

@media (min-width: 1200px) {
  /* header donate */
  .header_donate {
    width: 100px;
    padding: 0;
    top: 3px;
  }
  .header_donate span {
    display: block;
    color: var(--black);
  }
  /* header_menu */
  .header_menu {
    padding-right: 40px;
  }
  #header_menu li {
    margin-right: 25px;
  }
  /* header_contacts */
  .header_contacts {
    padding-left: 0;
    position: relative;
    left: -40px;
  }
  .header_contacts__soc a {
    width: 32px;
    height: 32px;
  }
  /* header_content */
  .header_content.not_logged {
    position: relative;
    left: -40px;
    padding: 0;
  }
}

@media (min-width: 1400px) {
  /* header donate */
  .header_donate {
    top: 6px;
  }
  /* header_menu */
  #header_menu li {
    margin-right: 30px;
  }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
  background: var(--dark);
  padding: 60px 0;
}
.home #footer {
  padding-top: 30px;
}
/* main footer */
.main_footer {
  color: #fff;
  text-align: center;
}
.footer_elem_title {
  font-family: 'NTSomic Bold';
  font-size: 24px;
  margin-top: 30px;
}
/* logo */
.footer_logo a {
	position: relative;
	top: 0;
  display: inline-block;
	transition: var(--transition);
}
.footer_logo a:hover {
	top: -6px;
}
.footer_logo img {
	width: 100%;
	max-width: 180px;
	display: inline-block;
	margin: 0 auto;
  pointer-events: none;
}
/* menus */
.footer_menu > div {
  margin-top: 7px;
}
.footer_menu ul {
  list-style: none;
	margin: 0;
}
.footer_menu li {
	width: 100%;
	text-align: center;
}
.footer_menu a {
	color: var(--middle_gray);
  font-size: 14px;
}
.footer_menu a:hover {
	color: var(--main_color);
}
.footer_menu > div > ul > li {
	margin-top: 10px;
}
.footer_menu > div > ul > li.menu-item-has-children > a {
  border-bottom: 1px solid var(--middle_gray);
  padding-bottom: 5px;
}
.footer_menu ul ul {
  margin-top: 3px;
}
.footer_menu ul ul li a {
  font-size: 12px;
}
/* contacts */
.footer_contacts__elem {
	margin-top: 17px;
}
.footer_contacts__elem > p {
	font-family: 'NTSomic Bold';
}
.footer_contacts__elem > div {
	margin-top: 5px;
}
.footer_contacts__elem > div p {
	margin-bottom: 5px;
}
.footer_contacts__elem > div p:nth-last-child(1) {
	margin-bottom: 0;
}
.footer_contacts__elem > div a {
  color: #fff;
}
.footer_contacts__elem > div a:hover {
	color: var(--main_color);
}
/* post footer */
.post_footer_row {
	border-top: 1px solid var(--dark_gray);
	margin-top: 30px;
	padding-top: 20px;
	text-align: center;
	color: var(--middle_gray);
  justify-content: space-between;
	align-items: center;
}
/* footer copy */
.footer_copy {
	color: var(--middle_gray);
}
/* footer soc */
.footer_soc {
	margin-top: 30px;
	justify-content: center;
	align-items: center;
}
.footer_soc a {
	display: block;
	margin: 0 5px 10px;
	position: relative;
	top: 0;
	transition: var(--transition);
}
.footer_soc a:hover {
	top: -6px;
}
.footer_soc a img {
	width: 40px;
	height: 40px;
	display: block;
}

@media (min-width: 768px) {
  /* main footer */
  .main_footer {
    text-align: left;
  }
  /* logo */
  .footer_logo {
    text-align: left;
  }
  /* menus */
  .footer_menu li {
  	text-align: left;
  }
  .footer_menu a {
  	margin-right: 20px;
  }
  .footer_menu a:hover {
  	color: var(--main_color);
  }
  .footer_menu > div > ul > li {
  	margin-top: 10px;
  }
  .footer_menu > div > ul > li.menu-item-has-children > a {
    border-bottom: 1px solid var(--middle_gray);
    padding-bottom: 5px;
  }
  .footer_menu ul ul {
    margin-top: 3px;
  }
  .footer_menu ul ul li a {
    font-size: 12px;
  }
  /* footer copy */
	.footer_copy {
		text-align: left;
	}
	/* footer soc */
	.footer_soc {
		margin-top: 0;
		justify-content: flex-end;
	}
	.footer_soc a {
		margin: 5px 0 5px 10px;
	}
	.footer_soc a:nth-child(1) {
		margin-left: 0;
	}
  .footer_soc a img {
	  pointer-events: none;
	}
}

/*--------------------------------------------------------------
# General Blocks
--------------------------------------------------------------*/
/* breadcrumbs
--------------------------------------------- */
.breadcrumbs {
  font-family: 'NTSomic Medium';
  padding: 0;
  margin: 20px 0 0;
  list-style: none;
  align-items: center;
}
.breadcrumbs li {
  color: var(--dark_gray);
}
.breadcrumbs li::after {
  content: '';
	display: inline-block;
	position: relative;
	top: -4px;
	margin-right: 7px;
	width: 16px;
	height: 1px;
	background: var(--dark_gray);
}
.breadcrumbs li:nth-last-child(1)::after {
  display: none;
}
.breadcrumbs li a {
	color: var(--main_color);
	padding-right: 7px;
}
.breadcrumbs li a:hover {
	color: var(--black);
}
.breadcrumbs.white li a:hover {
  color: #fff;
}

@media (min-width: 360px) {
	.breadcrumbs li {
	  font-size: 16px;
	}
}

/* pagination
--------------------------------------------- */
.default_pagination {
  font-family: 'NTSomic Medium';
  justify-content: center;
  align-items: center;
  margin-top: 30px;
}
.default_pagination > * {
  display: block;
  margin: 5px;
}
.default_pagination .page-numbers {
  border-radius: 100%;
  background: var(--main_color);
  color: #fff;
  width: 30px;
  height: 30px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 2px solid var(--main_color);
}
.default_pagination a.page-numbers:hover {
  background: var(--black);
  border-color: var(--black);
}
.default_pagination.white a.page-numbers:hover {
  background: #fff;
  border-color: #fff;
  color: var(--black);
}
.default_pagination span.page-numbers.current {
  background: var(--black);
  border-color: var(--black);
  color: #fff;
}
.default_pagination.white span.page-numbers.current {
  background: #fff;
  border-color: #fff;
  color: var(--black);
}
.default_pagination .page-numbers.prev,
.default_pagination .page-numbers.next {
  margin: 5px 10px;
  box-shadow: none;
}
.default_pagination.white .page-numbers.prev:hover,
.default_pagination.white .page-numbers.next:hover {
  color: #fff;
}
.default_pagination .page-numbers.prev,
.default_pagination .page-numbers.next,
.default_pagination .page-numbers.dots {
  color: var(--main_color);
  background: none !important;
  width: auto;
  border: 0 !important;
}
.default_pagination .page-numbers.prev:hover,
.default_pagination .page-numbers.next:hover {
  color: var(--black);
}
.default_pagination .page-numbers.current {
  font-family: 'NTSomic Bold';
}

/* slick
--------------------------------------------- */
.slick-slider .slick-track {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: center;
}
.dots_reverse.slick-slider {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  padding-bottom: 50px;
}
/* arrows */
.slick_arrow {
  position: absolute;
  top: calc(100% - 24px);
  z-index: 3;
  width: 24px;
  height: 24px;
  border-radius: 100%;
  cursor: pointer;
}
.slick_prev {
  left: 6px;
  transform: scaleX(-1);
}
.slick_next {
  right: 6px;
}
/* dots */
.slick-dots {
  width: calc(100% - 72px);
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 20px auto 0;
}
.slick-dots li {
  margin: 3px;
  width: 12px;
  height: 12px;
  cursor: pointer;
  background: var(--middle_gray);
  border-radius: 100%;
}
.slick-dots li.slick-active {
  background: var(--main_color);
  transition: var(--transition);
}
.slick-dots li button {
  display: none;
}
.dots_reverse .slick-dots {
  order: 1;
  margin: 0 auto 20px;
}
.dots_reverse .slick-list {
  order: 2;
}
.white_dots .slick-dots li {
  background: rgba(255, 255, 255, .5);
}
.white_dots .slick-dots li.slick-active {
  background: #fff;
}

@media (min-width: 576px) {
	/* arrows */
  .slick_arrow {
    width: 36px;
    height: 36px;
    top: calc(100% - 30px);
  }
  /* dots */
  .slick-dots {
    margin-top: 30px;
  }
}

@media (min-width: 992px) {
  .dots_reverse.center_arrows.slick-slider {
    padding-bottom: 0;
  }
	/* arrows */
  .center_arrows {
    width: calc(100% - 100px);
    margin-left: auto;
    margin-right: auto;
  }
  .center_arrows .slick_arrow {
    top: calc(50% - 18px);
  }
  .center_arrows.with_dots .slick_arrow {
    top: calc(50% - 42px);
  }
  .center_arrows.with_dots.dots_reverse .slick_arrow {
    top: calc(50% + 42px);
  }
  .center_arrows.padding_arrows .slick_arrow {
    top: calc(50% + 17px);
  }
  .center_arrows.padding_arrows.with_dots .slick_arrow {
    top: calc(50% - 7px);
  }
  .center_arrows.padding_arrows.with_dots.dots_reverse .slick_arrow {
    top: calc(50% + 77px);
  }
  .center_arrows .slick_prev {
    left: -50px;
  }
  .center_arrows .slick_next {
    right: -50px;
  }
}

/* content_box
--------------------------------------------- */
.content_box {
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 12px;
  position: relative;
  padding: 25px 20px 20px;
  margin-top: 50px;
}
.content_box.fheight {
  height: calc(100% - 50px);
}
.content_box__title {
  font-family: 'NTSomic Medium';
  position: absolute;
  left: 10px;
  top: -10px;
  width: auto;
  max-width: calc(100% - 20px);
  font-size: 14px;
  background: var(--main_color);
  padding: 0 5px;
  color: #fff;
  border-radius: 4px;
}
.content_box.color_var2 .content_box__title {
  background: var(--second_color);
}
.content_box.color_var3 .content_box__title {
  background: var(--third_color);
}
.content_box__elems_elem {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--light_gray);
}
.flexed > .content_box__elems_elem,
.content_box__elems_elem.no_spaces_borders,
.content_box__elems_elem:nth-child(1) {
  margin-top: 0;
  border-top: 0;
  padding-top: 0;
}
.content_box__elems_title {
  font-family: 'NTSomic Medium';
}
.content_box__elems_title img {
  display: inline-block;
  width: 20px;
  height: 20px;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
  position: relative;
  top: 3px;
}
.content_box__elems_error {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  margin-bottom: 10px;
  padding: 3px 6px;
  border-radius: 6px;
  background: rgba(255, 0, 0, .3);
}
.content_box__hidden_clue > p {
  font-family: 'NTSomic Medium';
  margin-top: 10px;
  color: var(--second_color);
  cursor: pointer;
}
.content_box__hidden_clue > div {
  margin-top: 5px;
  padding-left: 15px;
  border-left: 2px solid var(--light_gray);
  color: var(--dark_gray);
  display: none;
}
.content_box__hidden_clue li {
  margin-top: 5px;
}

@media (min-width: 360px) {
  .content_box__title {
    top: -12px;
    font-size: 16px;
  }
}

@media (min-width: 576px) {
  .content_box {
    padding: 25px 30px 20px;
  }
  .content_box__title {
    top: -16px;
    font-size: 20px;
    padding: 0 10px;
  }
}

/* block_blog
--------------------------------------------- */
.block_blog__list {
  margin-top: 30px;
}
.single_blog__related span,
.block_blog__cat_link a {
  font-family: 'NTSomic Bold';
  font-size: 17px;
  color: #fff;
  display: inline-block;
  padding: 3px 50px 8px 0;
  background: var(--main_color);
  position: relative;
  border-radius: 0 16px 16px 0;
}
.single_blog__related span::before,
.block_blog__cat_link a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -50vw;
  width: 50vw;
  height: 100%;
  background: var(--main_color);
}
.block_blog__cat_link a::after {
  content: '';
  position: absolute;
  right: 20px;
  top: 1px;
  bottom: 0;
  margin: auto 0;
  background: url('/wp-content/themes/girafffe/img/arrow_right.svg') no-repeat center;
  background-size: contain;
  width: 20px;
  height: 20px;
  filter: invert(1);
  transition: var(--transition);
}
.block_blog__cat_link a:hover::after {
  transform: scaleX(-1);
}

@media (min-width: 360px) {
  .single_blog__related span,
  .block_blog__cat_link a {
    font-size: 23px;
  }
}

@media (min-width: 768px) {
  .single_blog__related span,
  .block_blog__cat_link a {
    font-size: 27px;
  }
  .block_blog__cat_link a {
    padding-right: 100px;
  }
  .block_blog__cat_link a::after {
    right: 40px;
    width: 30px;
    height: 30px;
  }
}

/* block_about
--------------------------------------------- */
.block_about {
  background: var(--terracot_end_color);
  color: #fff;
  padding: 40px 0 80px;
}
/* list */
.block_about__list_elem {
  padding-top: 30px;
  padding-bottom: 30px;
  position: relative;
}
.block_about__list_elem:hover {
  background: rgba(0, 0, 0, .15);
  transition: var(--transition);
}
.block_about__list_elem::after {
  content: '';
  position: absolute;
  top: -1px;
  width: 95%;
  height: 2px;
  border-radius: 6px;
  background: var(--light_gray);
}
.block_about__list_elem:nth-child(1)::after {
  display: none;
}
.block_about__list p {
  font-family: 'NTSomic Medium';
  font-size: 18px;
  position: relative;
  padding-left: 20px;
}
.block_about__list p::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background: #fff;
}
.block_about__list span {
  font-family: 'NTSomic Regular';
  display: block;
  margin-top: 10px;
  padding: 0 20px;
  line-height: 1.6;
}

@media (min-width: 768px) {
  /* list */
  .block_about__list_elem:nth-child(2)::after {
    display: none;
  }
  .block_about__list p {
    padding: 0 15px 0 30px;
  }
  .block_about__list p::before {
    left: 10px;
  }
  .block_about__list span {
    padding: 0 15px 0 30px;
  }
}

@media (min-width: 992px) {
  /* list */
  .block_about__list_elem:nth-child(3)::after {
    display: none;
  }
}

/* block_tools
--------------------------------------------- */
.tools_row {
  justify-content: center;
}
.tools_slider {
  margin-top: 40px;
}
.tools_slide {
  padding-top: 70px;
  padding-bottom: 20px;
  opacity: 0;
  transition: opacity .5s linear;
}
.tools_slide.slick-active {
  opacity: 1;
}
a.tools_slide__inner {
  background: #fff;
  border-radius: 16px;
  padding: 60px 30px 30px;
  border: 3px solid #fff;
  border-radius: 16px;
  color: var(--black);
  position: relative;
  text-align: center;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100%;
}
a.tools_slide__inner:hover {
  border-color: var(--middle_gray);
  transition: var(--transition);
}
.tools_slide__ico {
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
}
.tools_slide__ico img {
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: block;
}
.tools_slide__inner p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  width: 100%;
}
.tools_slide__inner p + span {
  display: block;
  margin-top: 20px;
  padding-bottom: 40px;
  width: 100%;
}
.tools_slide__inner > img {
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: block;
  width: 40px;
  height: 40px;
}

@media (min-width: 576px) {
  a.tools_slide__inner {
    margin: 0 auto;
    width: calc(100% - 24px);
  }
  .services_slide__inner p {
    min-height: 40px;
  }
}

@media (min-width: 992px) {
  .tools_slide__inner p {
    font-size: 24px;
    min-height: 48px;
  }
}

/* block_services
--------------------------------------------- */
.block_services {
  padding: 100px 0 60px;
}
.block_services .row {
  justify-content: center;
}
.services_slider {
  margin-top: 40px;
}
.services_slide {
  padding-top: 70px;
  padding-bottom: 20px;
  opacity: 0;
  transition: opacity .5s linear;
}
.services_slide.slick-active {
  opacity: 1;
}
a.services_slide__inner {
  background: var(--light_gray);
  border-radius: 16px;
  padding: 60px 30px 30px;
  border: 3px solid var(--light_gray);
  border-radius: 16px;
  color: var(--black);
  position: relative;
  text-align: center;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100%;
}
a.services_slide__inner:hover {
  border-color: var(--middle_gray);
  transition: var(--transition);
}
.services_slide__ico {
  display: block;
  width: 80px;
  height: 80px;
  margin: 0 auto;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
}
.services_slide__ico img {
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: block;
}
.services_slide__inner p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  width: 100%;
}
.services_slide__inner p + span {
  display: block;
  margin-top: 20px;
  padding-bottom: 40px;
  width: 100%;
}
.services_slide__inner > img {
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: block;
  width: 40px;
  height: 40px;
}

@media (min-width: 576px) {
  a.services_slide__inner {
    margin: 0 auto;
    width: calc(100% - 24px);
  }
  .services_slide__inner p {
    min-height: 40px;
  }
}

@media (min-width: 992px) {
  .services_slide__inner p {
    font-size: 24px;
    min-height: 48px;
  }
}

/* block_order_service
--------------------------------------------- */
.block_order_service .row {
  justify-content: center;
}
.order_service {
  background: var(--light_gray);
  border-radius: 16px;
  margin-bottom: 60px;
  padding: 40px 20px;
  position: relative;
}
.order_service h2 {
  font-family: 'NTSomic Bold';
  font-weight: 500;
  font-size: 20px;
  width: 100%;
}
.order_service h2 span {
  text-transform: lowercase;
  color: var(--main_color);
}
.order_service h2 + p {
  margin-top: 10px;
  width: 100%;
}
.order_service__info {
  width: 100%;
}
.order_service__info div {
  width: 100%;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
}
.order_service__info span {
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  background: var(--main_color);
  border-radius: 100%;
}
.order_service__info span img {
  display: block;
  filter: invert(1);
  width: 40px;
  height: 40px;
}
.order_service__info div:nth-child(2) span img {
  width: 32px;
  height: 32px;
}
.order_service__info p {
  width: calc(100% - 80px);
}
.order_service__text {
  width: 100%;
  margin-top: 20px;
  padding: 20px;
  background: #fff;
  border-radius: 8px;
}
.order_service__text > * {
  font-size: 16px;
}
.order_service > a.button {
  margin: 20px auto 0;
}
.order_service__form {
  width: 100%;
  margin-top: 20px;
}
.order_service__form textarea {
  height: 184px;
  min-height: 184px;
}
.order_service__form {
  display: none;
  text-align: center;
}
.order_service__form form.sent .wpcf7-response-output {
  font-family: 'NTSomic Medium';
  font-size: 20px;
  position: relative;
  width: 100%;
  max-width: 320px;
  margin: 100px auto 0 !important;
}
.order_service__form form.sent .wpcf7-response-output::before {
  content: '';
  position: absolute;
  top: -80px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background: url('/wp-content/themes/girafffe/img/ico_check.svg')
  no-repeat center;
  background-size: contain;
  width: 60px;
  height: 60px;
  opacity: .5;
}

@media (min-width: 576px) {
  .order_service__info div {
    width: 50%;
    padding-right: 10px;
  }
}

@media (min-width: 768px) {
  .order_service {
    padding: 30px;
  }
}

@media (min-width: 1200px) {
  .order_service {
    padding: 40px;
  }
  .order_service h2 {
    font-size: 24px;
  }
  .order_service h2 + p {
    font-size: 20px;
  }
  .order_service__text {
    padding: 30px;
  }
}

/* block_advantages
--------------------------------------------- */
/* slider */
.advantages_slider {
  margin-top: 40px;
}
.advantages_slide {
  padding-top: 70px;
  opacity: 0;
  transition: opacity .5s linear;
}
.advantages_slide.slick-active {
  opacity: 1;
}
.advantages_slide__inner {
  background: var(--light_gray);
  border-radius: 16px;
  padding: 60px 30px 30px;
  position: relative;
  width: 100%;
  height: 100%;
}
.single-service .advantages_slide__inner {
  background: var(--lighter_gray);
}
.advantages_slide__ico,
.advantages_slide__num {
  width: 80px;
  height: 80px;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  left: 30px;
  top: -40px;
}
.advantages_slide__ico {
  display: block;
}
.advantages_slide__ico img {
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: block;
}
.advantages_slide__num {
  font-family: 'NTSomic Bold';
  font-size: 48px;
  line-height: 1;
  background: var(--main_color);
  color: #fff;
  text-align: center;
  justify-content: center;
  align-items: center;
}
.advantages_slide__inner p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
}
.advantages_slide__inner p + span {
  display: block;
  margin-top: 20px;
}
/* list */
.advantages_list {
  margin-top: 20px;
}
.advantages_list__elem {
  margin-top: 20px;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: stretch;
  justify-content: space-between;
}
.advantages_list__num {
  font-family: 'NTSomic Bold';
  width: 30px;
  background: var(--main_color);
  justify-content: flex-end;
  align-items: center;
  padding-right: 10px;
  color: #fff;
  border-radius: 16px 0 0 16px;
}
.advantages_list__content {
  width: calc(100% - 40px);
  background: #fff;
  border: 3px solid #fff;
  border-radius: 0 16px 16px 0;
  align-items: center;
  padding: 10px;
}
.white_bg .advantages_list__content {
  background: var(--light_gray);
}
.advantages_list__elem:hover .advantages_list__content {
  border-color: var(--main_color);
  transition: var(--transition);
}
.advantages_list__content p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  width: 100%;
}
.advantages_list__content p + span {
  display: block;
  margin-top: 10px;
  width: 100%;
}

@media (min-width: 360px) {
  /* list */
  .advantages_list__num {
    width: 40px;
    font-size: 24px;
  }
  .advantages_list__content {
    width: calc(100% - 50px);
    padding: 20px;
  }
}

@media (min-width: 576px) {
  /* list */
  .advantages_list__num {
    width: 100px;
    font-size: 48px;
    padding-right: 20px;
  }
  .advantages_list__content {
    width: calc(100% - 120px);
  }
}

@media (min-width: 768px) {
  /* slider */
  .advantages_slide__inner {
    width: calc(100% - 24px);
    margin: 0 auto;
  }
}

@media (min-width: 992px) {
  /* slider */
  .advantages_slide__inner p {
    font-size: 24px;
  }
  /* list */
  .advantages_list__num {
    width: 140px;
    font-size: 64px;
  }
  .advantages_list__content {
    width: calc(100% - 160px);
    padding: 20px 60px;
  }
}

@media (min-width: 1200px) {
  /* slider */
  .advantages_slide__inner {
    width: calc(100% - 60px);
    margin: 0 auto;
  }
  .advantages_slide__inner p {
    font-size: 30px;
  }
}

/* block_platforms
--------------------------------------------- */
.platforms_content p {
  margin-top: 20px;
  font-size: 20px;
  line-height: 1.1;
}
.platforms_content a.button {
  margin-top: 40px;
}
.platforms_gallery {
  margin-top: 40px;
}
.platforms_gallery img {
  display: block;
  width: auto;
  max-width: 200px;
  max-height: 50px;
  pointer-events: none;
  margin-bottom: 20px;
}
.platforms_gallery img:nth-last-child(1) {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .platforms_content {
    padding-right: 60px;
  }
  .platforms_gallery {
    margin-top: 0;
  }
  .platforms_gallery img {
    max-width: 100%;
  }
}

@media (min-width: 1200px) {
  .platforms_content {
    padding-right: 180px;
  }
  .platforms_content p {
    margin-top: 30px;
    font-size: 24px;
  }
  .platforms_content a.button {
    margin-top: 60px;
  }
  .platforms_gallery img {
    max-width: 80%;
    margin-bottom: 40px;
  }
}

/* block_task
--------------------------------------------- */
.block_task {
  padding-top: 40px;
}
.block_task .row {
  justify-content: center;
}
.task_content {
  padding: 20px;
  background: var(--main_color);
  border-radius: 32px;
  color: #fff;
  text-align: center;
}
.task_content h2 {
  line-height: 1;
}
.task_content p {
  margin-top: 30px;
  line-height: 1;
}
.task_content a.button {
  margin-top: 30px;
}

@media (min-width: 768px) {
  .task_content {
    padding: 40px;
  }
  .task_content p {
    font-size: 19px;
    width: 60%;
    margin: 30px auto 0;
  }
}

@media (min-width: 992px) {
  .task_content {
    padding: 80px 120px;
  }
}

@media (min-width: 1400px) {
  .task_content {
    padding: 80px 220px;
  }
}

/* block_cases
--------------------------------------------- */
.cases_list__btns {
  margin-top: 40px;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}
.cases_list__btns a {
  margin: 10px auto;
  width: 80%;
  max-width: 300px;
}
.block_cases .blog_cat__item_title {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  color: var(--black);
}
.block_cases .blog_cat__item:hover .blog_cat__item_title {
  color: var(--main_color);
  transition: var(--transition);
}
.block_cases .blog_cat__item:hover .blog_cat__item_pic {
	box-shadow: 0 0 3px var(--main_color);
}

@media (min-width: 768px) {
  .cases_list__btns {
    height: 190px;
  }
}

@media (min-width: 992px) {
  .cases_list__btns {
    height: 165px;
  }
}

@media (min-width: 1200px) {
  .cases_list__btns {
    height: 200px;
  }
  .block_cases .blog_cat__item_title {
    font-size: 23px;
  }
}

@media (min-width: 1400px) {
  .cases_list__btns {
    height: 240px;
  }
  .block_cases .blog_cat__item_title {
    font-size: 27px;
  }
}

/* block_main_content
--------------------------------------------- */
/* top */
.main_content__top .container {
  position: relative;
  z-index: 3;
}
.main_content__top .row {
  align-items: flex-end;
}
.main_content__top h1 {
  padding-top: 30px;
  text-align: center;
}
.main_content__top h1 + p {
  font-family: 'NTSomic Medium';
  margin-top: 10px;
  font-size: 20px;
  line-height: 1.1;
  text-align: center;
}
.main_content__top_btns a {
  width: 100%;
  max-width: 320px;
  margin: 40px auto 0;
  padding: 10px;
  position: relative;
}
.main_content__top_btns a.with_label {
  margin-bottom: 30px;
}
.main_content__top_btns a.with_label::before {
  content: '';
  position: absolute;
  bottom: -60px;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-image: url('/wp-content/themes/girafffe/img/ico_sun.png');
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 60px;
  width: auto;
  height: 60px;
  z-index: -1;
}
.main_content__top_btns a span {
  font-family: 'NTSomic Medium';
  position: absolute;
  top: 100%;
  left: 50%;
  width: auto;
  text-transform: none;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  background-size: 50px 50px;
  transform: translateX(-50%);
  padding-top: 10px;
  color: var(--black);
  z-index: 1;
}
.main_content__top_pic img {
  pointer-events: none;
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
}
/* content */
.main_content__content {
  padding: 30px 0 100px;
}
.main_content__content .container {
  position: relative;
}
.main_content__content_pic {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  max-width: 300px;
}
.main_content__content .row {
  justify-content: center;
  position: relative;
  z-index: 1;
}
h2.main_content__content_title {
  text-align: center;
}
.main_content__content .default_text {
  margin-top: 40px;
  font-family: 'NTSomic Medium';
  text-align: center;
}
.main_content__content .default_text > *:not(:nth-child(1)) {
  margin-top: 20px;
}
.main_content__content .default_text ul,
.main_content__content .default_text ol {
  list-style: none;
  margin: 0;
}
.main_content__content .default_text li {
  margin-top: 10px;
}
.main_content__content_adv {
  margin-top: 100px;
}
.main_content__content_adv_slide {
  padding: 0 6px 0 12px;
  opacity: 0;
  transition: opacity .5s linear;
}
.main_content__content_adv_slide.slick-active {
  opacity: 1;
}
.main_content__content_adv_slide div {
  background: var(--light_gray);
  border-radius: 16px;
  text-align: center;
  padding: 20px;
  position: relative;
  height: 100%;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: center;
}
.main_content__content_adv_slide div::before {
  content: '';
  position: absolute;
  width: 20px;
  height: 20px;
  background: var(--main_color);
  border-radius: 100%;
  left: -8px;
  top: calc(50% - 10px);
}
.main_content__content_adv_slide div p {
  font-family: 'NTSomic Medium';
}
.main_content__content_adv_slide div span {
  display: block;
  margin-top: 10px;
}

@media (min-width: 768px) {
  /* top */
  .main_content__top .row {
    align-items: center;
  }
  .main_content__top h1,
  .main_content__top h1 + p {
    text-align: left;
    position: relative;
    z-index: 1;
  }
  .main_content__top_btns {
    position: relative;
    z-index: 1;
  }
  .main_content__top_btns a {
    width: auto;
    margin: 20px 10px 0 0;
    padding: 10px 20px;
  }
  .main_content__top_btns a.with_label {
    margin-bottom: 30px;
  }
  /* content */
  .main_content__content_pic {
    left: -100px;
    top: -50px;
  }
}

@media (min-width: 992px) {
  /* top */
  .main_content__top h1 {
    padding-top: 0;
  }
  .main_content__top_btns a {
    margin: 20px 20px 0 0;
    padding: 15px 30px;
  }
  .main_content__top_pic img {
    max-width: 100%;
  }
  /* content */
  .main_content__content_pic {
    left: -70px;
    top: -120px;
    max-width: 300px;
  }
  .main_content__content .default_text {
    font-size: 18px;
  }
  .main_content__content_adv_slide {
    padding: 0 18px 0 24px;
  }
  .main_content__content_adv_slide div {
    padding: 20px 30px;
  }
  .main_content__content_adv_slide div::before {
    width: 28px;
    height: 28px;
    left: -12px;
    top: calc(50% - 14px);
  }
}

@media (min-width: 1200px) {
  /* top */
  .main_content__top h1 + p {
    font-size: 27px;
  }
  /* content */
  .main_content__content {
    padding-top: 0;
  }
  .main_content__content_pic {
    left: -90px;
  }
  .main_content__content .default_text {
    font-size: 22px;
  }
  .main_content__content_adv_slide div p {
    font-size: 20px;
  }
}

@media (min-width: 1400px) {
  .main_content__content_adv_slide div {
    padding: 20px 40px;
  }
  .main_content__content_pic {
    left: -180px;
    top: -270px;
    max-width: 400px;
  }
}

/* megasection_text
--------------------------------------------- */
.megasection_text {
  padding: 60px 0;
  font-size: 17px;
  line-height: 1.4;
}
.megasection_text_right_col {
  padding: 0;
  position: relative;
  left: 24px;
}

@media (min-width: 1200px) {
  .megasection_text {
    font-size: 22px;
  }
}

/* block_content_blocks
--------------------------------------------- */
.block_content_blocks .container {
  position: relative;
}
.block_content_blocks .container::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 38px;
  width: 100%;
  height: 4px;
  background: var(--main_color);
  z-index: 0;
}
.block_content_blocks .container > p {
  font-family: 'NTSomic Bold';
  font-size: 48px;
  line-height: 1;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  border-radius: 100%;
  background: var(--main_color);
  color: #fff;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.block_content_blocks .container > h2 {
  text-align: center;
  word-break: break-word;
  margin-top: 30px;
}
.block_content_blocks .content_blocks_row {
  margin-top: 40px;
}
.block_content_blocks .content_blocks_pic > img {
  border: 5px solid var(--main_color);
  border-radius: 32px;
}
.block_content_blocks .content_blocks_text.no_pic .default_text {
  text-align: center;
}
.block_content_blocks .content_blocks_text.no_pic .default_text ul,
.block_content_blocks .content_blocks_text.no_pic .default_text ol {
  list-style: none;
  margin-left: 0;
}

@media (min-width: 992px) {
  .block_content_blocks .content_blocks_pic  {
    margin: 0;
  }
}

@media (min-width: 1200px) {
  .block_content_blocks .content_blocks_pic.pic_left {
    padding-right: 40px;
  }
  .block_content_blocks .content_blocks_pic.pic_right {
    padding-left: 40px;
  }
}

/* block_pics_slider
--------------------------------------------- */
.pics_slider {
  margin-top: 40px;
}
.pics_slide {
  margin-bottom: 30px;
}
.pics_slide img {
  display: block;
  width: 80%;
  margin: 0 auto;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
}

@media (min-width: 992px) {
  .pics_slide {
    margin-bottom: 0;
  }
}

/* block_summary
--------------------------------------------- */
.block_summary {
  background: var(--light_gray);
  margin-top: 20px !important;
  padding: 60px 0;
}
.block_summary .content_blocks_row {
  align-items: center;
}
.block_summary .content_blocks_row:nth-of-type(1) {
  margin-top: 0;
}
.block_summary .content_blocks_pic > img {
  border: 5px solid var(--main_color);
  border-radius: 32px;
}
.summary_list_title {
  text-align: center;
  margin-top: 60px;
}
.summary_list > div {
  padding-top: 90px;
}
.summary_list__elem {
  background: #fff;
  border: 3px solid #fff;
  border-radius: 16px;
  padding: 60px 30px 30px;
  text-align: center;
  position: relative;
  width: 100%;
  height: 100%;
}
.summary_list__elem:hover {
  border-color: var(--main_color);
  transition: var(--transition);
}
.summary_list__ico {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  left: 0;
  right: 0;
  top: -40px;
  margin: 0 auto;
}
.summary_list__ico img {
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: block;
}
.summary_list__elem p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  word-break: break-word;
  line-height: 1;
}
.summary_list__elem span {
  display: block;
  margin-top: 10px;
}
.summary_list_after {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  text-align: center;
  width: 100%;
  max-width: 600px;
  margin: 40px auto 0;
}

@media (min-width: 992px) {
  .block_summary {
    padding: 80px 0;
  }
  .block_summary .content_blocks_pic.pic_left {
    padding-right: 40px;
  }
  .block_summary .content_blocks_pic.pic_right {
    padding-left: 40px;
  }
  .summary_list__elem p {
    font-size: 24px;
  }
}

@media (min-width: 1400px) {
  .summary_list {
    padding: 0 40px;
  }
  .summary_list__elem {
    width: calc(100% - 12px);
    margin: 0 auto;
  }
}

/* block_whoneeds
--------------------------------------------- */
.block_whoneeds {
  background: var(--light_gray);
  padding: 100px 0;
}
.block_whoneeds .row {
  justify-content: center;
}
.whoneeds_slider {
  margin-top: 40px;
}
.whoneeds_slide {
  padding-top: 70px;
  opacity: 0;
  transition: opacity .5s linear;
}
.whoneeds_slide.slick-active {
  opacity: 1;
}
.whoneeds_slide__inner {
  background: #fff;
  border-radius: 16px;
  padding: 60px 30px 30px;
  position: relative;
  width: 100%;
  height: 100%;
}
.whoneeds_slide__ico {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 100%;
  overflow: hidden;
  position: absolute;
  left: 30px;
  top: -40px;
}
.whoneeds_slide__ico img {
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: block;
}
.whoneeds_slide__inner p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
}
.whoneeds_slide__inner p + span {
  display: block;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .whoneeds_slide__inner {
    width: calc(100% - 24px);
    margin: 0 auto;
  }
}

@media (min-width: 992px) {
  .whoneeds_slide__inner p {
    font-size: 24px;
  }
}

/* block_results
--------------------------------------------- */
.block_results .row {
  justify-content: center;
}
.results_list__elem {
  margin-top: 40px;
}
.results_list__elem_num {
  width: 100%;
  position: relative;
}
.results_list__elem_num::before {
  content: '';
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
  width: 100%;
  height: 4px;
  background: var(--main_color);
  border-radius: 4px;
  z-index: 0;
}
.results_list__elem_num span {
  font-family: 'NTSomic Bold';
  color: #fff;
  font-size: 32px;
  background: var(--main_color);
  border-radius: 100%;
  width: 50px;
  height: 50px;
  display: block;
  margin: 0 auto;
  text-align: center;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
}
.results_list__elem_title {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  text-align: center;
  width: 100%;
  margin-top: 20px;
}
.results_list__elem_content {
  width: 100%;
  margin-top: 20px;
}
.results_list__elem_content img {
  display: block;
  width: 100%;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  margin-top: 20px;
  border-radius: 36px;
  pointer-events: none;
}
.results_list__elem_content span {
  display: block;
  margin-top: 20px;
}
.results_list__elem_tabs {
  width: 100%;
  margin-top: 40px;
}
.results_list__elem_tabs ul {
  list-style: none;
  margin: 0;
}
.results_list__elem_tabs ul li {
  font-family: 'NTSomic Medium';
  padding: 10px;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  margin: 0 15px 15px 0;
  transition: var(--transition);
  cursor: pointer;
}
.results_list__elem_tabs ul li:hover {
  border-color: var(--main_color);
}
.results_list__elem_tabs ul li.active {
  border-color: var(--main_color);
  background: var(--main_color);
  color: #fff;
}
.results_list__elem_tabs div {
  display: none;
}
.results_list__elem_tabs div.active {
  display: block;
}
.results_list__elem_tabs a {
  width: 80px;
  height: 80px;
  display: block;
  margin: -40px auto 20px;
  position: relative;
}
.results_list__elem_tabs a img {
  width: 100%;
  height: 100%;
  display: block;
}
.results_list__elem_tabs div > img {
  display: block;
  width: 100%;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
  border: 3px solid var(--main_color);
  border-radius: 36px;
}

@media (min-width: 768px) {
  .results_list__elem_title {
    font-size: 24px;
  }
  .results_list__elem_content {
    width: 50%;
  }
  .results_list__elem_content span {
    padding-right: 75px;
  }
  .results_list__elem_tabs {
    width: 50%;
    margin-top: 65px;
    padding-left: 20px;
  }
  .results_list__elem_tabs div > img {
    width: calc(100% + 60px);
    min-width: calc(100% + 60px);
    position: relative;
    left: -60px;
  }
}

@media (min-width: 1200px) {
  .results_list__elem_title {
    font-size: 28px;
  }
  .results_list__elem_tabs {
    padding-left: 50px;
  }
  .results_list__elem_tabs div > img {
    width: calc(100% + 120px);
    min-width: calc(100% + 120px);
    left: -120px;
  }
}

/* block_steps
--------------------------------------------- */
.block_steps {
  background: var(--main_color);
  padding: 100px 0;
}
.block_steps .row {
  justify-content: center;
}
.steps_slider {
  margin-top: 40px;
}
.steps_slide {
  padding-top: 70px;
  opacity: 0;
  transition: opacity .5s linear;
}
.steps_slide.slick-active {
  opacity: 1;
}
.steps_slide__inner {
  background: #fff;
  border-radius: 16px;
  padding: 60px 30px 30px;
  position: relative;
  width: 100%;
  height: 100%;
}
.steps_slide__num {
  font-family: 'NTSomic Bold';
  font-size: 48px;
  line-height: 1;
  width: 80px;
  height: 80px;
  border: 2px solid #fff;
  border-radius: 100%;
  position: absolute;
  left: 30px;
  top: -40px;
  background: var(--main_color);
  color: #fff;
  text-align: center;
  justify-content: center;
  align-items: center;
}
.steps_slide__inner p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
}
.steps_slide__inner p + span {
  display: block;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .steps_slide__inner {
    width: calc(100% - 24px);
    margin: 0 auto;
  }
}

@media (min-width: 992px) {
  .steps_slide__inner p {
    font-size: 24px;
  }
}

/* block_faq
--------------------------------------------- */
.block_faq .block_titles img {
  display: block;
  pointer-events: none;
  width: 100px;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  margin: 20px auto 0;
  opacity: .3;
}
.faq_list {
  margin-bottom: 60px;
}
.faq_list__elem {
  margin-top: 40px;
}
.faq_list__elem div {
  background: var(--light_gray);
  border: 1px solid var(--light_gray);
  border-radius: 16px;
  padding: 15px 20px 25px;
  cursor: pointer;
  position: relative;
}
.faq_list__elem.active div {
  border-radius: 16px 16px 0 0;
}
.faq_list__elem p {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  text-align: center;
}
.faq_list__elem b {
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  background: var(--main_color);
  transition: var(--transition);
}
.faq_list__elem.active b {
  background: var(--main_color);
  transform: rotate(45deg);
  z-index: 5;
}
.faq_list__elem b::before {
  content: '';
  position: absolute;
  left: 25%;
  top: calc(50% - 1px);
  width: 50%;
  height: 2px;
  background: #fff;
}
.faq_list__elem b::after {
  content: '';
  position: absolute;
  left: calc(50% - 1px);
  top: 25%;
  width: 2px;
  height: 50%;
  background: #fff;
}
.faq_list__elem span {
  display: block;
  padding-top: 20px;
  color: var(--dark_gray);
  line-height: 1.8;
  display: none;
}
.faq_list__elem.active span {
  display: block;
}

@media (min-width: 768px) {
  .block_faq .block_titles img {
    width: 160px;
  }
}

@media (min-width: 992px) {
  .faq_list {
    margin-top: -100px;
  }
  .faq_list__elem:nth-child(3n-1) div {
    margin-top: 100px;
  }
  .faq_list__elem.active div {
    box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  }
  .faq_list__elem span {
    position: absolute;
    top: 100%;
    left: -1px;
    right: -1px;
    width: calc(100% + 2px);
    z-index: 3;
    background: var(--lighter_gray);
    padding: 20px;
    border: 1px solid var(--light_gray);
    padding-top: 30px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  }
}

/*--------------------------------------------------------------
# Home page
--------------------------------------------------------------*/
/* === no styles needed yet === */

/*--------------------------------------------------------------
# Blog - main and category
--------------------------------------------------------------*/
.blogs_main {
	margin-bottom: 60px;
}
.page_title {
  margin-top: 10px;
}
/* Blog cats */
.cat_blog_cats {
  margin-top: 10px;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
a.cat_blog_cats__item {
  font-family: 'NTSomic Medium';
  margin: 10px 5px 0 0;
  border-radius: 16px;
  padding: 3px 10px;
  border: 2px solid var(--main_color);
  color: var(--black);
}
a.cat_blog_cats__item:hover {
  color: #fff;
	background: var(--main_color);
}
a.cat_blog_cats__item span {
  transition: color 0s;
}
a.cat_blog_cats__item.current,
a.cat_blog_cats__home {
  background: var(--main_color);
  color: #fff;
  border-color: var(--main_color);
  transition: all 0s;
}
/* Blog subcats */
.cat_blog_subcats {
  margin-top: 20px;
  align-items: center;
}
.cat_blog_subcats p {
  font-family: 'NTSomic Medium';
  margin: 0 10px 10px 0;
}
.cat_blog_subcats a {
  display: inline-block;
  margin: 0 10px 10px 0;
  padding: 3px 8px;
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  color: var(--black);
}
.cat_blog_subcats a:hover,
.cat_blog_subcats a.current {
  background: var(--main_color);
  color: #fff;
}
/* Blog loop */
.blog_cat__item {
  margin-top: 50px;
}
.blog_cat__item__inner {
  width: 100%;
  position: relative;
}
.blog_cat__item_pic {
	width: 100%;
	position: relative;
	top: 0;
	transition: var(--transition);
	display: block;
  border-radius: 10px;
}
.blog_cat__item:hover .blog_cat__item_pic {
	top: 5px;
	box-shadow: 0 0 3px var(--main_color);
}
.blog_cat__item_pic > img {
  width: 100%;
	height: 52vw;
	display: block;
	object-fit: cover;
  object-position: center;
  font-family: 'object-fit: cover; object-position: center;';
  border-radius: 10px;
}
.blog_cat__item a.video_play {
  right: 20px;
  top: 20px;
}
.blog_cat__item:hover a.video_play {
  top: 25px;
}
.blog_cat__item_info {
	margin-top: 15px;
}
.blog_cat__item_title {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  line-height: 1;
  color: var(--black);
}
.blog_cat__item:hover .blog_cat__item_title {
  color: var(--main_color);
  transition: var(--transition);
}
.blog_cat__item_excerpt {
	margin-top: 10px;
}

@media (min-width: 360px) {
  /* Blog cats */
  a.cat_blog_cats__item {
    font-size: 15px;
  }
}

@media (min-width: 576px) {
	/* Blog loop */
	.blog_cat__item_pic > img {
	  height: 290px;
	}
}

@media (min-width: 768px) {
  /* Blog cats */
  a.cat_blog_cats__item {
    margin-right: 10px;
    padding: 6px 12px;
  }
  /* Blog loop */
  .blog_cat__item_pic > img {
    height: 190px;
  }
}

@media (min-width: 992px) {
  /* Blog cats */
  a.cat_blog_cats__item {
    font-size: 16px;
    padding: 8px 16px;
  }
  /* Blog loop */
  .blog_cat__item_pic > img {
    height: 165px;
  }
}

@media (min-width: 1200px) {
  /* Blog loop */
  .blog_cat__item_pic > img {
    height: 200px;
  }
	.blog_cat__item_title {
	  font-size: 23px;
	}
}

@media (min-width: 1400px) {
  /* Blog loop */
  .blog_cat__item_pic > img {
    height: 240px;
  }
  .blog_cat__item_title {
    font-size: 27px;
  }
}

/*--------------------------------------------------------------
# Blog - single
--------------------------------------------------------------*/
.single_blog_info {
  padding-bottom: 60px;
  justify-content: space-between;
}
.single_blog_title h1 + p {
  margin-top: 20px;
}
.single_blog_info__pic {
  position: relative;
  margin-top: 15px;
  border-radius: 16px;
}
.single_blog_info__pic > img {
  border-radius: 16px;
}
.single_blog_info a.video_play {
  top: 15px;
  right: 30px;
}
.single_post #content {
  padding: 20px 0;
}
.single_post #content > p {
  margin-top: 0;
}
.single_post .megasections > div:not(:empty) {
  margin-top: 40px;
}
/* TOC */
#ez-toc-container {
  border: 0 !important;
  box-shadow: none !important;
}
p.ez-toc-title {
  color: var(--middle_gray);
}
ul.ez-toc-list.ez-toc-list-level-1 {
  margin-top: 20px !important;
}
ul.ez-toc-list.ez-toc-list-level-1 li {
  margin-bottom: 5px !important;
  position: relative;
}
li.ez-toc-heading-level-2 {
  padding-left: 25px !important;
}
li.ez-toc-heading-level-2::before {
  content: '';
  position: absolute;
  left: 0;
  top: 7px;
  background: url('/wp-content/themes/girafffe/img/ico_green_arrow.svg')
  no-repeat center;
  background-size: contain;
  width: 13px;
  height: 13px;
}
/* Fixed post buttons */
#blog_post_btns:empty {
  display: none;
}
#blog_post_btns {
  position: fixed;
  flex-flow: row nowrap;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 30px;
  z-index: 666;
}
#blog_post_btns a {
  display: block;
  flex: 1;
  height: 30px;
  text-align: center;
  color: #fff;
  line-height: 30px;
  white-space: nowrap;
}
#blog_post_btns .toc_btn {
  background-color: var(--main_color);
}
#blog_post_btns .tool_btn {
  background-color: var(--second_color);
}

/* fixed banner */
#blog_tool_banner {
  display: none;
  padding: 100px 0 60px;
}
#blog_tool_banner > div {
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 0 0 6px 6px;
}
.blog_tool_banner__after {
  height: 60px;
}
#blog_tool_banner img {
  margin: 0;
  width: 100%;
  object-fit: contain;
  object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
}
#blog_tool_banner p {
  font-family: 'NTSomic Bold';
  font-size: 16px;
  line-height: 1.5;
  margin-top: 10px;
  padding: 0 10px;
}
#blog_tool_banner a.button {
  width: 100%;
  margin-top: 10px;
  border-radius: 0 0 6px 6px;
}

@media (min-width: 768px) {
  .single_blog_info {
    align-items: center;
    margin-top: 15px;
  }
  .single_blog_info__pic {
    margin-top: 0;
  }
  .single_blog_title h1 {
    margin-top: 0;
  }
  ul.ez-toc-list.ez-toc-list-level-1 {
    column-count: 2;
  }
}

@media (min-width: 1200px) {
  #blog_tool_banner {
    display: block;
  }
}

@media (min-width: 1200px) and (hover: hover) {
  #blog_post_btns {
    display: none;
  }
}

/*--------------------------------------------------------------
# Tools - single — some styles in Services - single
--------------------------------------------------------------*/
/* top */
.main_content__top_link {
  margin: 20px 0 10px;
  text-align: center;
}
.main_content__top_link a {
  font-family: 'NTSomic Medium';
  font-size: 20px;
  color: var(--dark_gray);
}
.main_content__top_link a::before {
  content: '[';
  padding-right: 3px;
  color: var(--main_color);
}
.main_content__top_link a::after {
  content: ']';
  padding-left: 3px;
  color: var(--main_color);
}
.main_content__top_link a:hover {
  color: var(--main_color);
}

@media (min-width: 768px) {
  .main_content__top_link {
    text-align: left;
  }
}

/*--------------------------------------------------------------
# Services - single
--------------------------------------------------------------*/
/* top */
.single_service .main_content__top a {
  width: 100%;
  max-width: 320px;
  margin: 40px auto 0;
  display: block;
  padding: 10px;
  font-size: 14px;
  position: relative;
  z-index: 1;
}
.single_tool .main_content__top_pic img,
.single_service .main_content__top_pic img {
  margin: 30px auto 60px;
}
/* content */
.single_tool .main_content__content,
.single_service .main_content__content {
  background: #fff;
  padding-top: 0;
}
.content_blocks_row {
  margin-top: 20px;
  margin-bottom: 20px;
}
.content_blocks_text {
  order: 1;
}
.content_blocks_text .default_text {
  text-align: left;
  font-size: 16px;
}
.content_blocks_text ul,
.content_blocks_text ol {
  margin-left: 20px !important;
}
.content_blocks_text ul li {
  position: relative;
}
.content_blocks_text ul li::before {
  content: '';
  position: absolute;
  left: -18px;
  top: 8px;
  width: 10px;
  height: 10px;
  background: var(--main_color);
  border-radius: 100%;
}
.content_blocks_text ol {
  list-style: decimal !important;
}
.content_blocks_pic {
  margin-top: 20px;
  margin-bottom: 20px;
  order: 2;
}
.content_blocks_pic > img {
  display: block;
  margin: 0;
  width: 100%;
}
.content_blocks_pic a {
  width: 40px;
  height: 40px;
  display: block;
  margin: 20px auto 0;
}
.content_blocks_pic a img {
  width: 100%;
  height: 100%;
  display: block;
}

@media (min-width: 768px) {
  /* top */
  .single_tool .main_content__top,
  .single_service .main_content__top {
    padding-bottom: 60px;
  }
  .single_service .main_content__top a {
    width: auto;
    padding: 10px 20px;
    margin: 20px 10px 0 0;
  }
  .single_tool .main_content__top h1,
  .single_service .main_content__top h1 {
    padding-top: 0;
  }
  .single_tool .main_content__top_pic img,
  .single_service .main_content__top_pic img {
    margin: 0 auto;
  }
}

@media (min-width: 992px) {
  /* top */
  .single_service .main_content__top a {
    padding: 15px 30px;
    margin: 20px 20px 0 0;
  }
  .single_tool .main_content__top_pic img,
  .single_service .main_content__top_pic img {
    max-width: 400px;
  }
  /* content */
  .content_blocks_pic.pic_left {
    order: 0;
  }
  .content_blocks_text .default_text {
    margin-top: 0;
  }
  .content_blocks_row.row {
    align-items: center;
  }
}

@media (min-width: 1200px) {
  /* content */
  .content_blocks_row {
    margin-top: 40px;
    margin-bottom: 0;
  }
}

/*--------------------------------------------------------------
# Donate page
--------------------------------------------------------------*/
.donate_main {
  margin-bottom: 100px;
}
.donate_text {
  margin-top: 30px;
}
.donate_text h1 {
  color: var(--main_color);
  line-height: 1 !important;
}
.donate_text .default_text {
  margin-top: 30px;
  font-size: 20px;
}
.donate_text .default_text h2,
.donate_text .default_text h3 {
  text-transform: uppercase;
}
.donate_details {
  margin-top: 30px;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  align-items: center;
}
.donate_details p {
  font-size: 24px;
  margin-top: 30px;
  text-align: center;
}
.donate_details img.donate_please_pic {
  display: block;
  width: 100%;
  max-width: 350px;
  pointer-events: none;
}
.donate_details img.donate_qr_pic {
  display: block;
  width: 100%;
  max-width: 300px;
  margin-top: 30px;
  box-shadow: 0 0 3px rgba(0, 0, 0, .1);
}
.donate_details a {
  margin-top: 30px;
  font-size: 20px;
  width: 100%;
  max-width: 300px;
}

@media (min-width: 992px) {
  .donate_text h1 {
    font-size: 60px !important;
  }
  .donate_text .default_text {
    margin-top: 40px;
  }
}

/*--------------------------------------------------------------
# 404 page
--------------------------------------------------------------*/
.page_404 .row {
	text-align: center;
  margin-bottom: 60px;
}
.page_404 img {
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}
.page_404 h1 {
	margin-top: 30px;
	color: var(--main_color);
}
.page_404 p {
	font-family: 'NTSomic Bold';
	margin-top: 20px;
}
.page_404 a.button {
	display: inline-block;
	width: auto;
	margin: 20px auto 0;
}

/*--------------------------------------------------------------
# Auth page
--------------------------------------------------------------*/
.auth_row {
  justify-content: center;
}
.auth_wrapper {
  border: 2px solid var(--main_color);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
/* nav */
.auth_nav {
  list-style: none;
  margin: 0;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
}
.auth_nav li {
  font-family: 'NTSomic Bold';
  width: 50%;
  text-align: center;
  padding: 15px 3px;
  font-size: 12px;
  background: var(--main_color);
  color: #fff;
  cursor: pointer;
}
.auth_nav li.active {
  background: #fff;
  color: var(--black);
}
/* tabs */
.sign_tab {
  display: none;
  padding: 30px 20px;
}
.sign_tab.active {
  display: block;
}
/* forms */
.sign_tab form {
  text-align: center;
  width: 100%;
  max-width: 360px;
  margin: 0 auto;
}
.sign_tab form .form_field {
  margin-bottom: 20px;
  position: relative;
}
.sign_tab form#restore {
  display: none;
}
.sign_tab .auth_forms_links {
  text-align: center;
}
.sign_tab .auth_forms_status {
  font-family: 'NTSomic Medium';
  margin: 15px 0;
}
.sign_tab .signup_status {
  margin-bottom: 0;
}
.sign_tab .signin_return {
  display: none;
}


@media (min-width: 320px) {
  /* nav */
  .auth_nav li {
    font-size: 14px;
  }
}

@media (min-width: 360px) {
  /* nav */
  .auth_nav li {
    font-size: 16px;
  }
}

/*--------------------------------------------------------------
# Verify page
--------------------------------------------------------------*/
#verify .row {
  justify-content: center;
}
#verify_messages p {
  margin-bottom: 15px;
}
#verify_messages p:nth-last-child(1) {
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Account page
--------------------------------------------------------------*/
/* block_access_denied
--------------------------------------------- */
.block_access_denied .row {
  justify-content: center;
}
.access_denied__content {
  text-align: center;
  border: 2px solid var(--main_color);
  border-radius: 12px;
  padding: 20px;
}
.access_denied__content p {
  margin-bottom: 10px;
}
.access_denied__content p:nth-last-of-type(1) {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .access_denied__content {
    font-size: 17px;
  }
}
/* block_account_settings
--------------------------------------------- */
/* email */
.account_email_box {
  margin-top: 5px;
}
.account_email_box p {
  font-family: 'NTSomic Bold';
}
.account_email_box span {
  display: inline-block;
  padding: 3px 6px;
  margin-top: 5px;
  border-radius: 6px;
  font-size: 14px;
}
.account_email_box span.red {
  background: rgba(255, 0, 0, .3);
}
.account_email_box span.green {
  background: rgba(0, 255, 0, .3);
}
.account_email_box a {
  margin-top: 15px;
}
/* forms */
.block_account_settings form {
  width: 100%;
  max-width: 360px;
  margin-top: 10px;
}
.block_account_settings form .form_field {
  margin-bottom: 20px;
  position: relative;
}
.block_account_settings .auth_forms_status {
  font-family: 'NTSomic Medium';
  margin: 15px 0;
}

/* block_account_stats
--------------------------------------------- */
.account_stats__user_prio {
  margin-top: 10px;
}
.account_stats__user_prio span {
  font-family: "NTSomic Medium";
  line-height: 1.2;
  color: var(--dark_gray);
  display: inline-block;
  padding: 3px 5px;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 6px;
}
.account_stats__user_prio span.golden {
  color: #fff;
  background: goldenrod;
  border-color: gold;
}

/*--------------------------------------------------------------
# Dashboard page
--------------------------------------------------------------*/
/* block_access_denied (inherits # Account page - block_access_denied)
--------------------------------------------- */

/* dashboard_notifications
--------------------------------------------- */
.dashboard_notification {
	margin-top: 10px;
	width: 100%;
	background-color: #fff;
	border: 1px solid var(--light_gray);
	border-radius: 10px;
	overflow: hidden;
}
.dashboard_notification:nth-child(1) {
	margin-top: 20px;
}
.dashboard_notification__info {
	font-size: 14px;
	padding-right: 10px;
	align-items: center;
}
.dashboard_notification__info span {
	letter-spacing: 2px;
	background-color: var(--third_color);
	color: #fff;
	padding: 3px 10px;
}
.dashboard_notification__info p {
	padding: 3px 0 3px 25px;
	position: relative;
	line-height: 1;
}
.dashboard_notification__info p[data-type="date"] {
	font-size: 12px;
}
.dashboard_notification__info p:nth-last-of-type(1) {
	padding-right: 10px;
}
.dashboard_notification__info p::before {
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 100%;
	background-color: var(--middle_gray);
	position: absolute;
	left: 10px;
	top: calc(50% - 3px);
	display: block;
}
.dashboard_notification__info b {
	font-size: 12px;
	letter-spacing: 1px;
	background-color: var(--light_gray);
	padding: 2px 6px;
	cursor: pointer;
}
.dashboard_notification__info b:hover {
	background-color: var(--lighter_gray);
}
.dashboard_notification[data-type="update"] {
	.dashboard_notification__info span {
		background-color: var(--success_color);
	}
}
.dashboard_notification[data-type="alert"] {
	.dashboard_notification__info span {
		background-color: var(--error_color);
	}
}
.dashboard_notification__content {
	font-size: 14px;
	margin-top: 10px;
	border-top: 1px solid var(--light_gray);
	padding: 5px 20px;
	display: none;
}
.dashboard_notification__content > * {
	font-size: 14px;
	line-height: 1.3;
	margin-top: 10px;
}
.dashboard_notification__content > *:nth-child(1) {
	margin-top: 0;
}

@media (min-width: 768px) {
	.dashboard_notification:nth-child(1) {
		margin-top: 0;
	}
}

/* block_dashboard_projects
--------------------------------------------- */
/* for copy project reviews quiz page link */
.project_copy_link_field {
  position: absolute;
  left: -100%;
  bottom: 0;
  opacity: 0;
}
/* control */
.dashboard_projects__control_title {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  margin-bottom: 5px;
  padding: 0 20px;
  position: relative;
  display: inline-block;
  color: var(--dark_gray);
}
.dashboard_projects__control_title::before,
.dashboard_projects__control_title::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 15px;
  height: 1px;
  border-radius: 6px;
  margin: auto 0;
  background: var(--dark_gray);
}
.dashboard_projects__control_title::before {
  left: 0;
}
.dashboard_projects__control_title::after {
  right: 0;
}
.dashboard_projects__control select {
  padding: 5px 20px;
  height: 38px;
}
.dashboard_projects__control a.button {
  display: block;
  padding: 8px 20px;
  width: 100%;
  max-width: 240px;
  font-size: 14px;
  line-height: 1.6;
}
.dashboard_projects__control .form_field {
  margin-top: 0;
}
.dashboard_projects__control_group,
.dashboard_projects__control_sort,
.dashboard_projects__control_add {
  margin-bottom: 20px;
}
/* project */
.projects_group {
  margin-top: 30px;
  padding-left: 10px;
  border-left: 3px solid var(--dark_gray);
}
.projects_group:nth-child(1) {
  margin-top: 0;
}
.projects_group > p {
  font-family: 'NTSomic Medium';
  display: inline-block;
  position: relative;
  left: -10px;
  margin-bottom: 10px;
  padding: 5px 10px 5px 5px;
  border-radius: 0 6px 6px 0;
  color: #fff;
  font-size: 16px;
  background: var(--dark_gray);
}
.dashboard_project {
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  padding: 10px 20px;
  border-radius: 4px;
  margin-bottom: 10px;
  justify-content: space-between;
  align-items: center;
}
.dashboard_project:hover {
  border-color: var(--main_color);
  transition: var(--transition);
}
.dashboard_project__name {
  color: var(--main_color);
  width: 100%;
  align-items: center;
}
.dashboard_project__name b {
  width: 100%;
}
.dashboard_project__name span {
  color: var(--black);
  font-size: 14px;
  line-height: 1;
}
.dashboard_project__name span[data-context="type_accurate"] {
  font-family: 'NTSomic Medium';
  letter-spacing: 1px;
  background-color: var(--main_color);
  color: #fff;
  display: inline-block;
  border-radius: 4px;
  padding: 0 4px 2px;
  margin-right: 4px;
}
.dashboard_project__name a {
  display: inline-block;
  margin: 3px 5px 3px 0;
}
.dashboard_project__name a img,
.dashboard_project__name b + img {
  display: block;
  width: 20px;
  height: 20px;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
}
.dashboard_project__name b + img {
  margin: 3px 5px 3px 0;
}
.dashboard_project__info {
  width: 100%;
  margin: 10px 0;
  align-items: center;
}
.dashboard_project__info .companies_project_counter,
.dashboard_project__info .reviews_company_links,
.dashboard_project__info .companies_top_services,
.dashboard_project__info .companies_top_regions,
.dashboard_project__info .cards_fill_tasks_statuses,
.dashboard_project__info .adata_companies_statuses,
.dashboard_project__info .revman_companies_statuses {
  width: auto;
  padding-left: 0;
  margin: 5px 0;
}
.dashboard_project__info .companies_top_services,
.dashboard_project__info .companies_top_regions,
.dashboard_project__info .cards_fill_tasks_statuses,
.dashboard_project__info .adata_companies_statuses,
.dashboard_project__info .revman_companies_statuses {
  align-items: center;
}
.dashboard_project__info .companies_top_services p img {
  width: 20px;
  height: 20px;
}
.dashboard_project__info .companies_top_services p span,
.dashboard_project__info .companies_top_regions p span {
  color: var(--dark_gray);
  line-height: 1;
}
.dashboard_project__info .companies_project_counter > span,
.dashboard_project__info .reviews_company_links > span,
.dashboard_project__info .companies_top_services > span,
.dashboard_project__info .companies_top_regions > span {
  font-size: 14px;
  line-height: 1;
  padding-right: 5px;
}
.dashboard_project__info p {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  margin: 5px 10px 5px 0;
}
.dashboard_project__info .companies_project_counter p {
  margin: 3px 10px 3px 0 !important;
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 4px;
}
.dashboard_project__info img {
  width: 24px;
  height: 24px;
  margin-right: 5px;
  display: block;
  pointer-events: none;
}
.dashboard_project__info img.smaller {
  padding: 2px;
  margin-right: 3px;
}
.dashboard_project__info .companies_project_counter img,
.dashboard_project__info .reviews_company_links img {
  margin-right: 0;
}
.dashboard_project__info .companies_project_counter img.prices_companies,
.dashboard_project__info .reviews_company_links img.reviews_links {
  margin-right: 5px;
  width: 24px;
  height: 24px;
}
.dashboard_project__info span {
  font-family: 'NTSomic Medium';
  font-size: 14px;
}
.dashboard_project__info span span {
  border-radius: 16px;
  padding: 2px 8px;
  margin-left: 5px;
  background: var(--light_gray);
  white-space: nowrap;
}
.dashboard_project__info span span.red {
  background: red;
  color: #fff;
}
.dashboard_project__info span span.green {
  background: green;
  color: #fff;
}
p.dashboard_project__info_first_time {
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  align-items: center;
  margin-right: 0;
}
.dashboard_project__info_first_time > span {
  margin-right: 10px;
}
.dashboard_project__info_first_time a {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  background: var(--black);
  border: 3px solid var(--black);
  width: 100px;
  min-width: 100px;
  margin: 5px 0;
  padding: 3px;
  border-radius: 6px;
}
.dashboard_project__info_first_time a:hover {
  border-color: var(--main_color);
}
.dashboard_project__info_first_time a img {
  width: 16px;
  height: 16px;
  display: block;
  pointer-events: none;
  filter: invert(1);
}
.dashboard_project__info_first_time a span {
  color: #fff;
}
.dashboard_project__actions {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}
.dashboard_project__actions a {
  width: 32px;
  height: 32px;
  background: var(--black);
  border: 3px solid var(--black);
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  margin-left: 10px;
}
.dashboard_project__actions a:nth-child(1) {
  margin-left: 0;
}
.dashboard_project__actions a:hover {
  border-color: var(--main_color);
}
.dashboard_project__actions a.disabled {
  pointer-events: none;
  opacity: .5;
}
.dashboard_project__actions img {
  width: 16px;
  height: 16px;
  display: block;
  pointer-events: none;
  filter: invert(1);
}
.dashboard_project__actions a.project_copy_link.copied {
  border-color: var(--second_color);
  background: var(--second_color);
  pointer-events: none;
}
.dashboard_project__going {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  margin: 10px 0;
}
.dashboard_project__going span {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  margin-right: 10px;
}
@keyframes dashboard_loader_spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(180deg);
  }
}
.dashboard_project__going img {
  min-width: 32px;
  width: 32px;
  height: 32px;
  display: block;
  pointer-events: none;
  transform: rotate(0deg);
  animation: dashboard_loader_spin 1.5s infinite;
}
.dashboard_project__error {
  margin-top: 10px;
}
.dashboard_project__error span {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  background: rgba(255, 0, 0, .3);
  padding: 3px 10px;
  border-radius: 6px;
  margin-bottom: 10px;
}
/* modal forms */
.form_locations .form_field label.error {
  top: 40px;
}
.form_locations img.delete_field {
  right: 0;
  top: 65px;
}
.search_form_locations .form_field:not(:nth-of-type(1)) {
  margin-top: 20px;
}
.search_form_locations .form_field:not(:nth-of-type(1)) input.project_parser_location {
  width: calc(100% - 30px);
}
.search_form_locations img.delete_field {
  top: 15px;
}
.project_parser_zoom {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: flex-start;
  margin: 10px 0;
  position: relative;
}
.project_parser_zoom input {
  width: 60px;
  padding-right: 3px;
}
.project_parser_zoom p {
  width: calc(100% - 60px);
  padding: 0 25px 0 5px;
}
.project_parser_zoom p span {
  font-family: 'NTSomic Regular';
  font-size: 12px;
  display: block;
  line-height: 1.2;
}
.project_parser_zoom p a {
  margin-top: 0;
  line-height: 1;
  font-size: 12px;
}
.project_parser_zoom p a.error {
  color: red !important;
}
.project_parser_zoom input.error ~ p a {
  visibility: hidden;
}
.form_companies__fields {
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  margin-bottom: 8px;
}
.form_companies__fields:nth-last-of-type(1) {
  margin-bottom: 0;
}
.form_companies__fields img.delete_field {
  right: 12px;
  bottom: 15px;
}
.form_companies__fields:nth-of-type(1) img.delete_field {
  display: none !important;
  pointer-events: none !important;
}
.form_companies__fields .form_field {
  width: 100%;
}
.form_companies__fields select {
  width: calc(100% - 40px);
}
.form_companies__fields:nth-of-type(1) select {
  width: 100%;
}
.modal_project_schedule .cron_last_run {
  color: var(--main_color);
}
.modal_project_schedule .cron_next_run {
  color: var(--second_color);
}
.modal_projects_groups .modal_form_block {
  width: 100%;
  max-width: 400px;
  margin: 20px auto 0;
}
.projects_groups__list .form_field {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.projects_groups__list .form_field:nth-last-of-type(1) {
  margin-bottom: 0;
}
input.projects_groups_group_priority {
  width: 60px;
  padding: 15px 3px;
  text-align: center;
}
input.projects_groups_group_name {
  width: calc(100% - 100px);
}
.projects_groups_group_name + label {
  left: 70px !important;
  width: calc(100% - 100px) !important;
}
.projects_groups__list .form_field img.delete_field {
  position: static;
}
/* modal QR */
.modal_content_qr_codes {
  width: 100%;
  justify-content: space-between;
  align-items: flex-start;
}
.modal_qr_code {
  width: 100%;
  text-align: center;
  margin-top: 20px;
}
.modal_qr_code p {
  font-family: 'NTSomic Bold';
  color: var(--main_color);
}
.modal_qr_code img {
  display: block;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  width: 100%;
  max-width: 240px;
  margin: 10px auto 0;
}
.modal_qr_code_pdf img {
  padding: 10px;
  pointer-events: none;
}
.modal_qr_code span {
  display: block;
}

@media (min-width: 576px) {
  .dashboard_project__going span {
    margin-right: 15px;
  }
}

@media (min-width: 768px) {
  /* modal forms */
  .form_companies__fields .form_field {
    width: calc(50% - 12px);
  }
  .form_companies__fields select {
    width: calc(100% - 30px);
  }
  .form_companies__fields img.delete_field {
    right: 0
  }
  .modal_projects_groups .modal_form_block {
    max-width: 100%;
  }
  .projects_groups__visibility {
    order: 2;
  }
  .projects_groups__list {
    order: 1;
  }
  #add_project_reviews_links,
  #setup_project_reviews_links {
    min-height: 180px;
    height: 180px;
  }
  /* modal QR */
  .modal_qr_code {
    width: calc(100% / 3 - 10px);
  }
}

/* block_dashboard_stats
--------------------------------------------- */
.block_dashboard_stats .content_box__elems_title b {
  color: var(--main_color);
}
.stats_content {
  display: none;
}
.stats_content.active {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: stretch;
}
.stats_content__info {
  width: 100%;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 20px;
  align-items: center;
}
.stats_content__info:has(.adata_stats_info_link) {
  align-items: flex-start;
}
.stats_content__info > img {
  display: block;
  pointer-events: none;
  width: 30px;
  height: auto;
  margin: 0;
}
.stats_content__info > div {
  width: calc(100% - 30px);
  padding-left: 20px;
  align-items: center;
}
.stats_content__info b {
  width: 100%;
  display: block;
  font-size: 17px;
}
.stats_content__info a {
  display: inline-block;
  margin: 3px 5px 3px 0;
}
.stats_content__info a img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  display: block;
  pointer-events: none;
}
.stats_content__info span {
  color: var(--black);
  font-size: 14px;
  line-height: 1;
}
.reviews_company_links p a {
  margin: 0;
}
a.cards_fill_stats_info_link,
a.adata_stats_info_link {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  align-items: center;
}
a.cards_fill_stats_info_link img,
a.adata_stats_info_link img {
  margin-right: 5px;
}
.companies_project_counter,
.reviews_company_links {
  justify-content: flex-start;
  align-items: center;
  width: calc(100% - 25px);
  padding-left: 5px;
}
.reviews_company_links p.flex_elem {
  margin: 3px 10px 3px 0;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 4px;
  width: auto;
}
.reviews_company_links p span {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  margin-left: 5px;
}
.reviews_company_links p b {
  font-family: 'NTSomic Medium';
  font-weight: 500;
  font-size: 14px;
  padding-left: 3px;
  width: auto;
}
.stats_content__info .reviews_company_links p b {
  line-height: 1;
}
.cards_fill_tasks_statuses,
.adata_companies_statuses,
.revman_companies_statuses {
  align-items: center;
}
.cards_fill_tasks_statuses span,
.adata_companies_statuses span,
.revman_companies_statuses span {
  margin-right: 5px;
}
.cards_fill_tasks_statuses p,
.adata_companies_statuses p,
.revman_companies_statuses p {
  margin: 3px 10px 3px 0;
  font-size: 12px;
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 4px 8px;
  width: auto;
  white-space: nowrap;
}
.cards_fill_tasks_statuses p b,
.adata_companies_statuses p b,
.revman_companies_statuses p b {
  display: inline-block;
  width: auto;
}
.stats_content__info .cards_fill_tasks_statuses,
.stats_content__info .adata_companies_statuses,
.stats_content__info .revman_companies_statuses {
  width: 100%;
  margin-top: 5px;
}
.stats_content__info .cards_fill_tasks_statuses span,
.stats_content__info .adata_companies_statuses span,
.stats_content__info .revman_companies_statuses span {
  margin-left: 5px;
}
.stats_content__info .cards_fill_tasks_statuses p,
.stats_content__info .adata_companies_statuses p,
.stats_content__info .revman_companies_statuses p {
  width: auto;
  margin-top: 3px;
}
.companies_project_counter p {
  justify-content: flex-start;
  align-items: center;
  margin: 3px 8px 3px 0 !important;
  width: auto !important;
}
.companies_project_counter img,
.reviews_company_links img,
.companies_top_stats_info img,
.stats_content__info .cards_fill_tasks_statuses img,
.stats_content__info .adata_companies_statuses img,
.stats_content__info .revman_companies_statuses img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  display: block;
  pointer-events: none;
}
.companies_project_counter span,
.reviews_company_links span {
  font-family: 'NTSomic Medium';
  font-size: 16px;
  top: 0;
}
.companies_project_counter p span {
  padding-left: 3px;
}
.stats_content__info p {
  margin-top: 5px;
  width: 100%;
}
.companies_top_stats_info {
  align-items: center;
  width: calc(100% - 25px);
  padding-left: 5px;
}
.companies_top_stats_info p {
  align-items: center;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  margin: 3px 0;
  width: auto;
}
.companies_top_stats_info p span {
  padding: 0 8px 0 5px;
}
.stats_content__info a.return_to_project {
  margin: 0;
  text-decoration: underline;
  text-decoration-style: dashed;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  font-size: 14px;
}
.stats_content__info a.return_to_project:hover {
  text-decoration-color: transparent;
}
.stats_content__control {
  display: none;
  width: 100%;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 20px;
  margin-top: 20px;
}
.stats_content__control.active {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
.stats_content__control form {
  width: 100%;
}
.stats_content__control form .row {
  align-items: center;
}
.stats_content__gtable,
.stats_content__reviews,
.stats_content__cards_fill,
.stats_content__adata {
  position: relative;
  width: 100%;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 20px;
  margin-top: 20px;
}
.stats_content__gtable p {
  font-family: 'NTSomic Bold';
  word-break: break-all;
  margin-bottom: 5px;
  font-size: 14px;
}
.stats_content__cards_fill > p,
.stats_content__adata > p {
  align-items: center;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
}
.stats_content__cards_fill > p span,
.stats_content__adata > p span {
  font-family: 'NTSomic Medium';
  word-break: break-all;
  text-transform: uppercase;
  display: block;
  padding-right: 10px;
}
.stats_content__cards_fill > p a,
.stats_content__adata > p a {
  width: 32px;
  height: 32px;
  background: var(--black);
  border: 3px solid var(--black);
  justify-content: center;
  align-items: center;
  border-radius: 100%;
}
.stats_content__cards_fill > p a:hover,
.stats_content__adata > p a:hover {
  border-color: var(--main_color);
}
.stats_content__cards_fill > p img,
.stats_content__adata > p img {
  width: 16px;
  height: 16px;
  display: block;
  pointer-events: none;
  filter: invert(1);
}
.stats_content__gtable a {
  width: 100%;
  font-size: 14px;
  line-height: 1.4;
  margin-top: 10px;
}
.prices_stats_copy_field {
  position: absolute;
  right: 0;
  bottom: 0;
  opacity: 0;
}
.stats_content__reviews > div {
  justify-content: space-between;
}
.stats_content__reviews_elem {
  width: 100%;
  text-align: center;
  margin-bottom: 30px;
  padding: 10px 10px 20px;
  border-radius: 4px;
  color: #fff;
  position: relative;
}
.stats_content__reviews_elem:nth-last-child(1) {
  margin-bottom: 10px;
}
.stats_content__reviews_elem[data-stats="total_reviews"] {
  background: var(--third_color);
}
.stats_content__reviews_elem[data-stats="good_reviews"] {
  background: var(--main_color);
}
.stats_content__reviews_elem[data-stats="bad_reviews"] {
  background: var(--second_color);
}
.stats_content__reviews_elem span {
  display: block;
  margin-top: 5px;
}
.stats_content__reviews_elem b {
  display: block;
  margin-top: 3px;
  font-size: 32px;
  line-height: 1;
}
.stats_content__reviews_elem .hint_trigger {
  position: absolute;
  top: calc(100% - 15px);
  left: 0;
  right: 0;
  margin: 0 auto;
  color: var(--black);
  box-shadow: 0 0 12px rgba(0, 0, 0, .3);
}
.stats_content__reviews_elem .hint_output {
  top: auto;
  bottom: 20px;
  left: 10px;
  right: 10px;
  width: calc(100% - 20px);
}
.stats_content__info:hover,
.stats_content__control:hover,
.stats_content__gtable:hover,
.stats_content__reviews:hover {
  border-color: var(--third_color);
  transition: var(--transition);
}
.stats_info {
  margin-bottom: 20px;
  display: none;
}
.stats_wrapper:has(.stats_table.active) + .stats_info {
  display: block;
}
.stats_info > * {
  margin-top: 20px;
}
.stats_info .clue_elem {
  width: calc(100% - 20px);
  margin-left: 20px;
  font-size: 14px;
  color: var(--dark_gray);
  padding: 20px 20px 20px 40px;
  position: relative;
  border: 1px solid var(--light_gray);
  border-radius: 8px;
}
.stats_info .clue_elem p span {
  display: inline-block;
  padding: 2px 6px 3px;
  background-color: var(--third_color);
  color: #fff;
  border-radius: 4px;
  line-height: 1;
}
.stats_info .clue_elem::before {
  font-family: 'NTSomic Bold';
  content: '!';
  position: absolute;
  left: -20px;
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  background-color: var(--main_color);
  color: #fff;
  font-size: 36px;
  line-height: 1;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
}
.stats_wrapper {
  width: 100%;
  overflow-x: auto;
}
.stats_wrapper.active {
  padding-bottom: 10px;
}
.stats_table {
  display: none;
  font-size: 14px;
  border: 1px solid var(--third_color);
}
.stats_table.active {
  margin-top: 60px;
  display: block;
}
.stats_table__head {
  font-family: 'NTSomic Bold';
  background: var(--third_color);
  color: #fff;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  position: relative;
  z-index: 10;
}
.stats_table__head > div {
  padding-top: 10px;
  padding-bottom: 10px;
}
.stats_table__request_title {
  padding-left: 10px;
}
.stats_table__locations_title {
  padding-left: 10px;
}
.stats_table__date_title {
  width: 80px;
  min-width: 80px;
  text-align: center;
  font-size: 11px;
  padding-top: 13px !important;
  position: relative;
}
.stats_table__date_title span {
  font-family: 'NTSomic Regular';
  position: absolute;
  top: -28px;
  z-index: 5;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 24px;
  height: 24px;
  background: var(--second_color);
  color: #fff;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-size: 16px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .25);
  cursor: pointer;
}
.stats_table__date_title span:hover {
  background: var(--main_color);
  transition: var(--transition);
}
.stats_table__average_title,
.stats_table__trend_title {
  width: 80px;
  min-width: 80px;
  text-align: center;
}
.stats_table__row {
  border-bottom: 1px solid var(--light_gray);
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
}
.stats_table__request {
  font-family: 'NTSomic Medium';
  padding: 10px;
  white-space: nowrap;
}
.stats_table__request span:nth-child(2) {
  display: none;
}
.stats_table__location {
  white-space: nowrap;
  overflow: hidden;
}
.stats_table__positions {
  width: 80px;
  min-width: 80px;
  text-align: center;
}
.stats_table__averages,
.stats_table__trends {
  width: 80px;
  min-width: 80px;
  text-align: center;
}
.stats_table__location,
.stats_table__position,
.stats_table__average,
.stats_table__trend {
  width: 100%;
  padding: 10px;
  position: relative;
  border-bottom: 1px solid var(--light_gray);
}
.stats_table__location:nth-last-child(1),
.stats_table__position:nth-last-child(1),
.stats_table__average:nth-last-child(1),
.stats_table__trend:nth-last-child(1) {
  border-bottom: 0;
}
.stats_table__location:nth-child(even),
.stats_table__position:nth-child(even),
.stats_table__average:nth-child(even),
.stats_table__trend:nth-child(even) {
  background: var(--lighter_gray);
}
.stats_table__position.red,
.stats_table__trend.red {
  background: rgba(255, 0, 0, .3);
}
.stats_table__position.green,
.stats_table__trend.green {
  background: rgba(0, 255, 0, .3);
}
.stats_table__position,
.stats_table__average,
.stats_table__trend {
  cursor: pointer;
}
.stats_table__position::before,
.stats_table__average::before,
.stats_table__trend::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 2px solid transparent;
}
.stats_table__position:hover::before,
.stats_table__average:hover::before,
.stats_table__trend:hover::before {
  border: 2px solid var(--third_color);
}
.stats_table__position .table_hint,
.stats_table__average .table_hint,
.stats_table__trend .table_hint {
  position: absolute;
  top: 0;
  right: calc(100% + 6px);
  height: 40px;
  padding: 4px 10px;
  border-radius: 4px;
  background: var(--black);
  color: #fff;
  z-index: 15;
}
.table_hint span {
  display: block;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  text-align: right;
}
.table_hint span:nth-child(1) {
  padding-bottom: 3px;
  margin-bottom: 3px;
  border-bottom: 1px solid var(--dark_gray);
}
.stats_table__position.active::before,
.stats_table__average.active::before,
.stats_table__trend.active::before {
  border: 2px solid var(--terracot_start_color);
}
.stats_table__position.active::after,
.stats_table__average.active::after,
.stats_table__trend.active::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateX(-50%) translateY(-50%);
  border-width: 10px;
  border-style: solid;
  border-color: transparent transparent transparent var(--black);
  z-index: 3;
}
.events_bar {
  display: none;
  position: absolute;
  top: -18px;
  left: 53px;
  right: 47px;
  width: calc(100% - 100px);
}
.events_bar.active {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}
.events_bar__elem {
  width: 24px;
  height: 24px;
  background: var(--second_color);
  color: #fff;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-size: 16px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .25);
  cursor: pointer;
}
.events_bar__elem:hover {
  background: var(--main_color);
  transition: var(--transition);
}
.stats_chart {
  display: none;
  position: relative;
}
.stats_chart.active {
  margin-top: 70px;
  display: block;
  width: 100%;
  min-width: 1000px;
}
.stats_reviews_output {
  display: none;
}
.stats_reviews_output.active {
  display: block;
  margin-top: 20px;
  position: relative;
  z-index: 15;
}
.stats_reviews_output__elem {
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 8px;
  padding: 15px 15px 15px 25px;
  margin: 10px 0;
  justify-content: space-between;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.stats_reviews_output__elem::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 10px;
  height: 100%;
}
.stats_reviews_output__elem.good::before {
  background: var(--main_color);
}
.stats_reviews_output__elem.bad::before {
  background: var(--second_color);
}
.stats_reviews_output__elem p[data-type="date"] {
  font-size: 14px;
  width: 100px;
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 5px;
  text-align: right;
}
.stats_reviews_output__elem img[data-type="verify"] {
  display: block;
  pointer-events: none;
  width: 40px;
  height: 40px;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
}
.stats_reviews_output__elem img[data-type="verify"][data-verify="false"] {
  opacity: .2;
}
.stats_reviews_output__elem p[data-type="status"] {
  width: 100%;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  font-size: 14px;
  margin-top: 15px;
}
.stats_reviews_output__elem p[data-type="status"] span b {
  font-family: 'NTSomic Regular';
  font-weight: 400;
  text-transform: capitalize;
}
.stats_reviews_output__elem.bad.with_review {
  cursor: pointer;
}
.stats_reviews_output__elem.bad.with_review::after {
  content: '';
  position: absolute;
  right: 25px;
  top: 80px;
  background: url('/wp-content/themes/girafffe/img/angle_down.svg')
  no-repeat center;
  background-size: contain;
  width: 20px;
  height: 20px;
  transition: var(--transition);
}
.stats_reviews_output__elem.bad.with_review.active::after {
  transform: scaleY(-1);
}
.stats_reviews_output__elem.bad.with_review p[data-type="status"] {
  padding-right: 45px;
}
.stats_reviews_output__elem div[data-type="review"] {
  width: 100%;
  display: none;
}
.stats_reviews_output__elem div[data-type="review"] > div {
  justify-content: space-between;
  align-items: center;
}
.stats_reviews_output__elem div[data-type="review"] p {
  width: 100%;
  margin-top: 15px;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
  font-size: 14px;
  word-break: break-word;
}
.stats_reviews_output__elem div[data-type="review"] p img {
  display: block;
  pointer-events: none;
  width: 20px;
  height: 20px;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
}
.stats_reviews_output__elem div[data-type="review"] p span {
  font-family: 'NTSomic Bold';
  padding-left: 10px;
}
.stats_reviews_output__elem div[data-type="review"] p[data-type="text"] {
  background: #fff;
  padding: 5px;
  border-radius: 4px;
}
.cards_fill_tasks_table {
  width: 100%;
  margin-bottom: 20px;
}
.cards_fill_tasks_table__empty {
  margin-top: 20px;
  width: 100%;
  color: var(--dark_gray);
  border: 1px solid var(--light_gray);
  border-radius: 10px;
  text-align: center;
  padding: 20px;
}
.cards_fill_tasks_table__elem {
  margin-top: 20px;
  padding: 10px 20px;
  width: 100%;
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
}
.cards_fill_tasks_table__elem:hover {
  border-color: var(--third_color);
  transition: var(--transition);
}
.cards_fill_tasks_table__elem p {
  width: 100%;
  font-size: 14px;
  margin-top: 15px;
}
.cards_fill_tasks_table__elem p b {
  font-family: 'NTSomic Medium';
  font-weight: 500;
  background: var(--lighter_gray);
  border-radius: 6px;
  padding: 3px 20px 3px 8px;
  display: inline-block;
  position: relative;
}
.cards_fill_tasks_table__elem p b i {
  width: 10px;
  height: 10px;
  display: block;
  border-radius: 100%;
  position: absolute;
  right: 5px;
  top: calc(50% - 5px);
}
.cards_fill_tasks_table__elem p b i.red {
  background: red;
}
.cards_fill_tasks_table__elem p b i.orange {
  background: orange;
}
.cards_fill_tasks_table__elem p b i.green {
  background: green;
}
.cards_fill_tasks_table__elem_name {
  font-family: 'NTSomic Bold';
  word-break: break-word;
}
.cards_fill_tasks_table__elem_name a {
  display: -webkit-inline-flex;
  display: -ms-inline-flex;
  display: inline-flex;
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  align-items: center;
}
.cards_fill_tasks_table__elem_name a img {
  display: block;
  width: 20px;
  height: 20px;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
}
.cards_fill_tasks_table__elem_name a span {
  padding-left: 10px;
}
.cards_fill_tasks_table__elem_file:not(:empty) {
  text-align: center;
  color: #fff;
  background: var(--third_color);
  border-radius: 6px;
  padding: 3px 5px;
  cursor: pointer;
}
.cards_fill_tasks_table__elem_file:not(:empty):hover {
  background: var(--dark_gray);
  transition: var(--transition);
}
p.cards_fill_tasks_table__elem_file {
  width: auto;
}
#download_stats_table span {
  display: inline-block;
  margin-right: 10px;
  padding: 10px 0;
}
#download_stats_table {
  margin-top: 20px;
}
#download_stats_table a {
  display: inline-block;
  background-color: #fff;
  padding: 0 5px;
  margin-right: 10px;
  border: 1px solid var(--main_color);
  border-radius: 8px;
}
.adata_logs_list {
  margin-top: 40px;
}
.adata_logs_list .logs__elem {
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 10px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--light_gray);
}
.adata_logs_list .logs__elem:nth-last-child(1) {
  border-bottom: 0;
}
.adata_logs_list .logs__elem span {
  width: 130px;
  font-size: 13px;
  padding-top: 4px;
}
.adata_logs_list .logs__elem p {
  width: calc(100% - 140px);
}

@media (min-width: 768px) {
  .stats_table_before {
    position: relative;
  }
  #stats:has(.stats_table .stats_table__head) .stats_table_before::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -60px;
    width: 280px;
    height: 30px;
    background: linear-gradient(to right, #fff 90%, rgba(255, 255, 255, .1) 100%);
    z-index: 13;
  }
  .stats_table__row {
    align-items: stretch;
  }
  .stats_table__request_title,
  .stats_table__locations_title {
    position: sticky;
    z-index: 12;
    background: var(--third_color);
  }
  .stats_table__request_title,
  .stats_table__request {
    left: 0;
  }
  .stats_table__request,
  .stats_table__locations {
    position: sticky;
    z-index: 11;
    background: #fff;
  }
  .stats_table__request {
    display: flex;
    align-items: center;
    width: 160px !important;
    min-width: 160px !important;
    max-width: 160px !important;
  }
  .stats_table__request span:nth-child(1) {
    display: none;
  }
  .stats_table__request span:nth-child(2) {
    display: block;
  }
  .stats_table__location {
    text-overflow: ellipsis;
    width: 100px;
    max-width: 100px;
  }
  .stats_content__gtable a {
    width: calc(50% - 10px);
  }
  .stats_content__gtable a:nth-of-type(1) {
    margin-right: 15px;
  }
  .stats_content__reviews_elem {
    width: calc(100% / 3 - 10px);
    margin-bottom: 10px;
  }
  .stats_reviews_output__elem p[data-type="date"],
  .stats_reviews_output__elem img[data-type="verify"] {
    margin-right: 10px;
  }
  .stats_reviews_output__elem p[data-type="status"] {
    width: calc(100% - 160px);
    margin-top: 0;
  }
  .stats_reviews_output__elem.bad.with_review::after {
    top: 30px;
  }
  .cards_fill_tasks_table__elem p {
    width: 27%;
    margin-top: 0;
  }
  .cards_fill_tasks_table__elem_name,
  .cards_fill_tasks_table__elem_status,
  .cards_fill_tasks_table__elem_updated {
    padding-right: 8px;
  }
  p.cards_fill_tasks_table__elem_file {
    width: 19%;
  }
}

@media (min-width: 768px) and (hover: hover) {
  .stats_wrapper {
    scrollbar-width: thin;
    scrollbar-color: var(--third_color) var(--light_gray);
  }
  .stats_wrapper::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
  .stats_wrapper::-webkit-scrollbar-thumb {
    background-color: var(--third_color);
    border-radius: 5px;
  }
  .stats_wrapper::-webkit-scrollbar-track {
    background-color: var(--light_gray);
    border-radius: 5px;
  }
}

@media (min-width: 992px) {
  .stats_content__info {
    width: 35%;
  }
  .stats_content__control,
  .stats_content__gtable,
  .stats_content__reviews,
  .stats_content__adata {
    width: calc(65% - 20px);
    margin-top: 0;
  }
  .stats_reviews_output__elem p[data-type="date"],
  .stats_reviews_output__elem img[data-type="verify"] {
    margin-right: 15px;
  }
  .stats_reviews_output__elem p[data-type="status"] {
    width: calc(100% - 170px);
    font-size: 16px;
  }
  .stats_reviews_output__elem div[data-type="review"] p:not(p[data-type="text"]) {
    width: calc(100% / 3 - 10px);
  }
  .stats_reviews_output__elem div[data-type="review"] p[data-type="text"] {
    padding: 10px 20px;
  }
  .stats_content__control form #setup_stats_submit {
    width: 100%;
  }
  p.cards_fill_tasks_table__elem_name {
    width: calc(100% - 580px);
  }
  p.cards_fill_tasks_table__elem_status {
    width: 240px;
  }
  p.cards_fill_tasks_table__elem_updated {
    width: 200px;
  }
  p.cards_fill_tasks_table__elem_file {
    width: 110px;
  }
}

@media (min-width: 1200px) {
  .stats_content__control form #setup_stats_submit {
    position: relative;
    top: 5px;
    padding: 15px 30px;
  }
  .stats_content__reviews_elem {
    padding: 15px 15px 30px;
  }
  p.cards_fill_tasks_table__elem_name {
    width: calc(100% - 640px);
  }
  p.cards_fill_tasks_table__elem_status {
    width: 240px;
  }
  p.cards_fill_tasks_table__elem_updated {
    width: 240px;
  }
}

@media (min-width: 1400px) {
  p.cards_fill_tasks_table__elem_name {
    width: calc(100% - 720px);
  }
}

/* block_dashboard_events
--------------------------------------------- */
/* block */
.content_box__elems_title.events_title b {
  color: var(--main_color);
}
.content_box__elems_title.new_events_title {
  font-family: 'NTSomic Bold';
  color: var(--second_color);
  display: none;
}
.content_box__elems_title.new_events_title.active {
  display: block;
}
.content_box__elems_title.events_title span {
  display: block;
  margin-top: 3px;
}
.content_box__elems_title.events_title a {
  text-decoration: underline;
  text-decoration-style: dashed;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  font-size: 14px;
}
.content_box__elems_title.events_title a:hover {
  text-decoration-color: transparent;
}
.dashboard_events__list {
  margin-top: 15px;
}
.dashboard_events__new_list.active {
  margin: 15px 0 25px;
}
.dashboard_event {
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  padding: 10px 20px;
  border-radius: 4px;
  margin-bottom: 10px;
}
.dashboard_event:hover {
  border-color: var(--second_color);
  transition: var(--transition);
}
.dashboard_event .row {
  justify-content: space-between;
  align-items: flex-start;
}
.dashboard_event__elem_with_ico {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 5px;
}
.dashboard_event__elem_with_ico span {
  font-family: 'NTSomic Medium';
  width: calc(100% - 29px);
  font-size: 14px;
}
.dashboard_event__elem_with_ico img {
  width: 24px;
  height: 24px;
  margin-right: 5px;
  display: block;
  pointer-events: none;
  position: relative;
  top: -3px;
}
.dashboard_event__elem_with_ico img.smaller {
  padding: 2px;
  margin-right: 3px;
}
.dashboard_event__title {
  margin-bottom: 5px;
}
.dashboard_event__project span {
  color: var(--main_color);
}
.dashboard_event__short {
  font-size: 14px;
  margin-bottom: 10px;
}
.dashboard_event__actions {
  justify-content: flex-end;
  align-items: center;
}
.dashboard_event__actions a.event_show_link {
  font-family: 'NTSomic Medium';
  text-decoration: underline;
  text-decoration-style: dashed;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.dashboard_event__actions a.event_show_link:hover {
  text-decoration-color: transparent;
}
.dashboard_event__actions a.flex_elem {
  width: 32px;
  height: 32px;
  background: var(--black);
  border: 3px solid var(--black);
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  margin-left: 10px;
}
.dashboard_event__actions a.flex_elem:hover {
  border-color: var(--second_color);
}
.dashboard_event__actions img {
  width: 16px;
  height: 16px;
  display: block;
  pointer-events: none;
  filter: invert(1);
}
.dashboard_event__error {
  margin-top: 10px;
}
.dashboard_event__error span {
  font-family: 'NTSomic Medium';
  color: red;
}
.dashboard_events__more {
  text-align: center;
  padding-bottom: 10px;
}
.dashboard_events__more a {
  text-decoration: underline;
  text-decoration-style: dashed;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.dashboard_events__more a:hover {
  text-decoration-color: transparent;
}
.block_dashboard_events .add_new_event {
  margin-top: 20px;
  text-align: center;
}
/* modal forms */
#add_event_short,
#setup_event_short {
  min-height: 100px;
  height: 100px;
}
#add_event_text,
#setup_event_text {
  min-height: 300px;
  height: 300px;
}
/* modal show */
.modal_content_event {
  padding: 10px;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 6px;
}
.modal_content_event__title {
  font-family: 'NTSomic Bold';
  color: var(--second_color);
  font-size: 17px;
  margin-bottom: 15px;
}
.modal_content_event__elem_with_ico {
  -webkit-flex-flow: row nowrap;
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 5px;
}
.modal_content_event__elem_with_ico span {
  font-family: 'NTSomic Medium';
  width: calc(100% - 29px);
  font-size: 14px;
}
.modal_content_event__elem_with_ico img {
  width: 24px;
  height: 24px;
  margin-right: 5px;
  display: block;
  pointer-events: none;
  position: relative;
  top: -3px;
}
.modal_content_event__elem_with_ico img.smaller {
  padding: 2px;
  margin-right: 3px;
}
.modal_content_event__text {
  margin-top: 5px;
  font-size: 14px;
}

@media (min-width: 576px) {
  /* block */
  .block_dashboard_events .add_new_event {
    text-align: right;
  }
  /* modal show */
  .modal_content_event {
    padding: 20px;
  }
}

@media (min-width: 768px) {
  /* modal forms */
  #add_event_text,
  #setup_event_text {
    min-height: 512px;
    height: 512px;
  }
}

@media (min-width: 1400px) {
  /* block */
  .dashboard_event__project {
    padding-left: 0;
  }
}

/*--------------------------------------------------------------
# Reviews page
--------------------------------------------------------------*/
.review_wrapper {
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 100vh;
}
.review_quiz {
  width: calc(100% - 20px);
  max-width: 800px;
  background: var(--main_color);
  text-align: center;
  padding: 20px;
  position: relative;
  overflow: hidden;
  color: #fff;
  font-size: 16px;
  opacity: 1;
  visibility: visible;
}
.review_quiz.hidden {
  opacity: 0;
  visibility: hidden;
}
.review_quiz .review_title {
  font-family: 'NTSomic Bold';
  font-size: 20px;
  width: 100%;
}
.review_quiz .review_subtitle {
  font-family: 'NTSomic Medium';
  display: block;
  width: 100%;
  margin-top: 10px;
}
.review_quiz__block {
  position: relative;
  z-index: 1;
}
.quiz_rate {
  justify-content: space-between;
  align-items: stretch;
  display: none;
}
.quiz_rate.active {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.quiz_rate div {
  margin-top: 30px;
  padding: 15px;
  width: 100%;
  border: 1px solid #fff;
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  z-index: 1;
}
.quiz_rate div:hover {
  background: rgba(255, 255, 255, .2);
  transition: var(--transition);
}
.quiz_rate div img {
  display: block;
  width: 80%;
  max-width: 100px;
  margin: 0 auto;
  pointer-events: none;
  filter: invert(1);
}
.quiz_rate div span {
  display: block;
  margin-top: 10px;
}
.quiz_good,
.quiz_bad {
  display: none;
}
.quiz_good .review_subtitle b {
  text-transform: capitalize;
  padding: 0 10px 0 8px;
  border: 1px solid #fff;
  border-radius: 4px;
  margin-left: 3px;
}
.quiz_good div {
  justify-content: center;
  align-items: center;
}
.quiz_good div a {
  display: block;
  width: 50px;
  height: 50px;
  margin: 20px 10px 0;
  padding: 10px;
  background: #fff;
  border-radius: 100%;
  box-shadow: 0 0 12px rgba(0, 0, 0, .3);
}
.quiz_good div a:hover {
  box-shadow: 0 0 24px rgba(255, 255, 255, .8);
}
@keyframes hide_not_active_services {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.quiz_good div.chosen {
  opacity: 1;
  animation: hide_not_active_services .3s linear;
}
.quiz_good div.chosen a:not(a.active) {
  display: none;
}
.quiz_good div img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
}
.quiz_good a.button {
  width: 100%;
  max-width: 300px;
  margin: 20px auto 0;
  border: 3px solid #fff;
  background: rgba(255, 255, 255, .1);
  color: #fff;
  box-shadow: none !important;
  display: none;
}
.quiz_good a.button.active {
  display: inline-block;
}
.quiz_good a.button:hover {
  background: rgba(0, 0, 0, .4);
}
.quiz_bad form {
  margin-top: 30px;
}
.quiz_bad form .form_elem {
  text-align: left;
  margin-bottom: 39px;
}
.quiz_bad form .form_elem > p {
  background: var(--lighter_gray);
  border: 0;
  border-bottom: 1px dashed var(--light_gray);
  border-radius: 10px 10px 0 0;
  padding: 10px 20px 5px;
  color: var(--black);
  width: 100%;
}
.quiz_bad form .form_elem > p span {
  color: var(--dark_gray);
  font-size: 12px;
}
.quiz_bad form .form_elem .form_field {
  margin-top: 0;
}
.quiz_bad form .form_elem .form_field input,
.quiz_bad form .form_elem .form_field textarea {
  border: 0;
  border-radius: 0 0 10px 10px;
  background: #fff;
}
.quiz_bad form .form_elem .form_field textarea {
  min-height: 288px;
  height: 288px;
}
.quiz_bad form #review_form_submit {
  border: 3px solid #fff;
  background: rgba(255, 255, 255, .1);
  color: #fff;
}
.quiz_bad form #review_form_submit:hover {
  background: rgba(0, 0, 0, .4);
}
/* no_project */
.no_project {
  font-family: 'NTSomic Bold';
  font-size: 24px;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 100%;
  height: 100vh;
}
/* preloader */
@keyframes review_preloader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.review_preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  z-index: 0;
  display: none;
}
.review_preloader.active {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
}
.review_preloader img {
  display: block;
  object-fit: contain;
  object-position: center;
  font-family: 'object-fit: contain; object-position: center;';
  pointer-events: none;
  width: 100px;
  height: 100px;
  animation: review_preloader .5s ease-in-out infinite;
}

@media (min-width: 360px) {
  .review_quiz .review_title {
    font-size: 24px;
  }
  .review_quiz .review_subtitle {
    font-size: 20px;
  }
  .quiz_rate div {
    width: calc(50% - 10px);
  }
}

@media (min-width: 576px) {
  .quiz_rate div {
    font-size: 20px;
  }
  .quiz_good div a {
    width: 80px;
    height: 80px;
    margin: 20px 15px 0;
  }
  .quiz_good a.button {
    width: calc(50% - 20px);
    margin: 20px 10px 0;
  }
}

@media (min-width: 768px) {
  .quiz_rate div img {
    max-width: 160px;
  }
  .quiz_rate div span {
    margin-top: 20px;
    font-size: 24px;
  }
}

@media (min-width: 1200px) {
  .review_quiz {
    padding: 40px;
  }
  .review_quiz .review_title {
    font-size: 32px;
  }
  .review_quiz .review_subtitle {
    font-size: 24px;
  }
}

/*--------------------------------------------------------------
# Cards Fill page
--------------------------------------------------------------*/
/* elems */
p.cards_fill_info_elem span {
  display: inline-block;
  font-size: 14px;
  line-height: 1.3;
  display: inline-block;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 4px 10px;
  margin: 4px;
}
p.cards_fill_info_elem span b {
  font-family: 'NTSomic Medium';
  font-weight: 500;
}
p.cards_fill_info_elem + span {
  display: block;
  font-size: 14px;
  line-height: 1.6;
  color: var(--dark_gray);
}
a.pictures_btn {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  width: 100%;
  display: block;
  margin: 10px 0 0;
  padding: 4px;
  background: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 6px;
  color: var(--black);
  text-align: center;
  position: relative;
}
a.pictures_btn span {
  position: absolute;
  top: calc(100% - 4px);
  left: -1px;
  width: calc(100% + 2px);
  color: #fff;
  border-radius: 0 0 6px 6px;
  z-index: 100;
}
a.pictures_btn span.success {
  background: green;
}
a.pictures_btn span.error {
  background: var(--error_color);
}
a.pictures_btn:hover {
  background: var(--light_gray);
}
label.pictures_label {
  font-family: 'NTSomic Medium';
  color: var(--dark_gray);
  font-size: 14px;
  padding-left: 5px;
  display: block;
}
input.pictures_input[type="text"],
select.pictures_select {
  padding: 5px 20px;
  height: 28px;
  margin-top: 5px;
}
.cards_fill_notice span {
  display: block;
  margin: 10px 0;
  padding-left: 30px;
  position: relative;
}
.cards_fill_notice span::before {
  content: '!';
  position: absolute;
  left: 0;
  top: 2px;
  display: flex;
  width: 20px;
  height: 20px;
  color: #fff;
  background-color: var(--main_color);
  border-radius: 100%;
  font-size: 16px;
  justify-content: center;
  align-items: center;
}
/* control */
.block_cards_fill_control .content_box__elems_title {
  font-size: 19px;
}
.cards_fill_control__tasks p {
  margin-top: 10px;
}
.cards_fill_control__tasks p span.active {
  color: var(--main_color);
}
.block_cards_fill_control #tasks_manager {
  margin-top: 30px;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: center;
}
.block_cards_fill_control #tasks_manager > div {
  width: 100%;
}
.block_cards_fill_control #tasks_manager > div.hidden {
  display: none;
}
.block_cards_fill_control #tasks_manager > div .content_box__elems_title {
  margin-bottom: 10px;
}
.block_cards_fill_control #tasks_manager > div:nth-child(2) {
  margin-top: 20px;
}
.block_cards_fill_control #tasks_manager > div .form_elem {
  margin-bottom: 10px;
}
.block_cards_fill_control #tasks_manager > div .button {
  width: 100%;
}
.block_cards_fill_control #tags_manager {
  margin-top: 30px;
  border-top: 1px solid var(--light_gray);
  justify-content: space-between;
}
.block_cards_fill_control #tags_manager div {
  margin-top: 30px;
  width: 100%;
}
.block_cards_fill_control #tags_manager p {
  font-size: 16px;
}
.block_cards_fill_control #tags_manager span {
  display: inline-block;
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 8px;
  padding: 3px 10px 5px;
  margin: 10px 10px 0 0;
  font-size: 14px;
}
.block_cards_fill_control #tags_manager p + p {
  font-size: 14px;
  color: var(--dark_gray);
  margin-top: 5px;
}
/* generation */
.upload_price_actions {
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.map_price > a.button {
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 20px auto;
}
.upload_price form,
.price_mapper_errors,
#price_mapper {
  margin: 10px auto 0;
  width: 100%;
  max-width: 600px;
}
.map_price > p {
  text-align: center;
}
#price_mapper {
  margin-top: 0;
}
.price_mapper__row {
  position: relative;
  margin-top: 20px;
  padding: 20px 20px 20px 30px;
  width: 100%;
  border: 1px solid var(--light_gray);
  border-radius: 8px;
  align-items: center;
}
.price_mapper__row::before {
  content: '';
  position: absolute;
  left: -12px;
  top: calc(50% - 12px);
  width: 25px;
  height: 25px;
  background-image: url('/wp-content/themes/girafffe/img/ico_question.svg');
  background-repeat: no-repeat;
  background-size: 100%;
}
.price_mapper__row.ready::before {
  background-image: url('/wp-content/themes/girafffe/img/ico_check_green.svg');
}
.price_mapper__col_info {
  font-size: 14px;
  width: 100%;
}
.price_mapper__col_info p {
  margin-bottom: 7px;
}
.price_mapper__col_info span {
  font-family: 'NTSomic Bold';
}
.price_mapper__col_info p:nth-child(2) span:nth-child(2) {
  font-family: 'NTSomic Regular';
  display: -webkit-box;
  box-orient: vertical;
	-webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.price_mapper__col_select {
  width: 100%;
}
.price_mapper__col_select select {
  width: 100%;
}
.price_mapper__col_select select option:disabled {
  display: none;
}
#price_table__settings {
  margin-top: 10px;
  position: relative;
}
#price_table__settings li span {
  position: relative;
  top: -2px;
}
#price_table__settings::after {
  content: '';
  position: absolute;
  bottom: -22px;
  left: 0;
  right: 0;
  width: 100%;
  height: 7px;
  background: var(--second_color);
  z-index: 999;
}
#price_table {
  overflow: auto;
  max-width: 100%;
  max-height: 500px;
  margin: 20px 0;
  font-size: 12px;
}
#price_table table {
  border: 1px solid var(--middle_gray);
  border-collapse: collapse;
  width: 100%;
}
#price_table th, #price_table td {
  border: 1px solid var(--middle_gray);
  padding: 8px 12px;
  text-align: left;
  min-width: 100px;
  width: 100px;
  word-break: break-all;
}
#price_table td {
  padding: 38px 12px 18px;
}
#price_table th:nth-child(1),
#price_table td:nth-child(1),
#price_table th:nth-child(2),
#price_table td:nth-child(2) {
  min-width: 40px;
  width: 40px;
}
#price_table th:nth-child(3),
#price_table td:nth-child(3) {
  min-width: 150px;
  width: 150px;
}
#price_table th:nth-child(4),
#price_table td:nth-child(4) {
  min-width: 500px;
  width: 500px;
}
#price_table th:nth-child(5),
#price_table td:nth-child(5) {
  min-width: 200px;
  width: 200px;
}
#price_table th:nth-child(6),
#price_table td:nth-child(6) {
  min-width: 200px;
  width: 200px;
}
#price_table th {
  font-family: 'NTSomic Medium';
  font-weight: 500;
  border: 1px solid var(--second_color);
  background-color: var(--second_color);
  color: #fff;
  position: sticky;
  cursor: default;
  text-align: center;
  top: 0;
  z-index: 2;
}
#price_table tr {
  position: relative;
}
#price_table tbody tr::after {
  content: attr(data-name);
  position: absolute;
  left: 0;
  transform: var(--after-transform, translateX(0));
  top: 0;
  height: 20px;
  padding: 1px 20px;
  border-radius: 0 0 6px 0;
  background-color: var(--dark_gray);
  color: #fff;
}
#price_table tr:nth-child(even) {
  background-color: var(--lighter_gray);
}
#price_table tr:hover {
  background-color: var(--light_gray);
}
#price_table td[contenteditable="true"] {
  cursor: text;
}
#price_table td[contenteditable="true"]:focus {
  outline: 2px solid #007bff;
  background-color: #eaf4ff;
}
#price_table .symbols_counter {
  text-align: right;
  position: absolute;
  top: 21px;
  font-size: 11px;
  color: var(--dark_gray);
  background: #fff;
  padding: 2px 4px;
  border-radius: 3px;
}
#price_table .symbols_counter.short_descr {
  left: 877px;
  width: 50px;
}
#price_table .symbols_counter.descr {
  left: 657px;
  width: 70px;
}
#price_table td.select_row {
  cursor: pointer;
  position: relative;
}
#price_table td.select_row::before {
  content: '';
  position: absolute;
  left: 10px;
  top: 50%;
  width: 20px;
  height: 20px;
  border: 1px solid var(--middle_gray);
  border-radius: 4px;
}
#price_table td.select_row::after {
  content: '';
  position: absolute;
  left: 12px;
  top: calc(50% + 2px);
  width: 16px;
  height: 16px;
  background: url('/wp-content/themes/girafffe/img/ico_check_alter.svg') no-repeat center;
  background-size: contain;
  opacity: 0;
  transition: var(--transition); 
}
#price_table tr.selected td.select_row::after {
  opacity: 1;
}
#price_table td.delete_row {
  position: relative;
}
#price_table td.delete_row::before {
  content: '';
  position: absolute;
  width: 100%;
  height: calc(100% - 20px);
  left: 0;
  bottom: 0;
  background-image: url('/wp-content/themes/girafffe/img/ico_close.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px;
  cursor: pointer;
}
#price_table td.delete_row:hover::before {
  background-size: 18px;
}
#price_table_add_row {
  display: inline-block;
  position: relative;
  padding-left: 26px;
  margin-left: 10px;
}
#price_table_add_row::before {
  content: '+';
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  background: var(--second_color);
  color: #fff;
  line-height: 1;
  font-size: 14px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
#price_table_generate_settings {
  margin: 20px 10px 0;
  padding: 20px 0 10px;
  border-top: 1px solid var(--light_gray);
  justify-content: space-between;
}
#price_table_generate_settings > p {
  font-family: 'NTSomic Bold';
  width: 100%;
}
.generate_settings__option_block,
.generate_settings__tags_block {
  width: 100%;
  margin-top: 30px;
}
.generate_settings__tags_block .tags_title {
  position: relative;
  padding-left: 40px;
}
.generate_settings__tags_block .tags_title .hint_trigger {
  right: auto;
  left: 0;
  top: -4px;
}
.generate_settings__tags_block .tags_title .hint_output {
  top: 32px;
}
.generate_settings__tags_block .tags_list p {
  display: inline-block;
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 8px;
  padding: 3px 24px 5px 10px;
  margin: 10px 10px 0 0;
  font-size: 14px;
  cursor: pointer;
  position: relative;
}
.generate_settings__tags_block .tags_list p {
  display: inline-block;
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 8px;
  padding: 3px 24px 5px 10px;
  margin: 8px 8px 0 0;
  font-size: 14px;
  position: relative;
  min-width: 50px;
  min-height: 30px;
  word-wrap: break-word;
}
.generate_settings__tags_block .tags_list p span {
  display: inline;
  outline: none;
  cursor: text;
  transition: all 0.2s ease;
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font-size: inherit;
  color: inherit;
}
.generate_settings__tags_block .tags_list p span:focus {
  outline: none;
}
.generate_settings__tags_block .tags_list p:focus-within {
  border-color: var(--main_color);
  box-shadow: 0 0 0 1px var(--main_color);
  background-color: #fff;
}
.generate_settings__tags_block .tags_list p span.empty_tag {
  color: var(--dark_gray);
  font-style: italic;
}
.generate_settings__tags_block .tags_list p b {
  position: absolute;
  top: calc(50% - 7px);
  right: 6px;
  background-image: url('/wp-content/themes/girafffe/img/ico_close.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px;
  width: 14px;
  height: 14px;
  cursor: pointer;
  opacity: .7;
  transition: var(--transition);
}
.generate_settings__tags_block .tags_list p b:hover {
  opacity: 1;
}
.generate_settings__tags_block .tags_list p span[contenteditable]:empty::before {
  content: attr(data-placeholder);
  color: var(--dark_gray);
  font-style: italic;
  pointer-events: none;
}
.generate_settings__tags_block .tags_list p span[contenteditable] {
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}
.generate_settings__tags_block .tags_list p.error {
  border-color: var(--error_color);
  background-color: var(--light_gray);
}
.generate_settings__tags_block a.add_tag {
  display: inline-block;
  position: relative;
  padding-left: 26px;
  margin: 10px 10px 0 0;
}
.generate_settings__tags_block a.add_tag::before {
  content: '+';
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  background: var(--second_color);
  color: #fff;
  line-height: 1;
  font-size: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.generate_settings__tags_block select,
.generate_settings__option_block select {
  margin-top: 10px;
}
#generate_settings_btn {
  margin-top: 20px;
  width: 100%;
  align-self: flex-end;
}
#price_table_generate_texts {
  margin: 20px 10px 0;
  padding-top: 20px;
  border-top: 1px solid var(--light_gray);
  align-items: center;
}
#price_table_generate_texts > * {
  margin-top: 10px;
}
#price_table_selected_total {
  width: 100%;
  margin-top: 10px;
  padding: 0 10px;
}
#price_table_generate_texts span {
  display: inline-block;
  padding-right: 15px;
  color: var(--dark_gray);
}
#generate_texts_select,
#generate_texts_btn {
  width: 100%;
}
#price_table__control {
  justify-content: flex-start;
  align-items: center;
  margin: 30px 0 10px;
  padding-top: 10px;
  border-top: 1px solid var(--light_gray);
}
#price_table__control a.button {
  margin: 10px 15px;
  width: 100%;
}
#price_table__control a:not(.button) {
  margin: 10px auto 15px;
}
#price_table__generaion_loader {
  min-height: 500px;
}
#price_table__complete {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  min-height: 500px;
}
#price_table__complete.hidden {
  display: none;
}
#price_table__complete p {
  width: 100%;
  font-size: 18px;
  text-transform: uppercase;
  text-align: center;
}
#price_table__complete div {
  width: 100%;
  margin-top: 10px;
  justify-content: center;
  align-items: center;
}
#price_table__complete a.button {
  margin: 10px 15px;
  width: 100%;
}
/* pictures */
.block_cards_fill_pictures .upload_pics form {
  margin: 40px auto 0;
  width: 100%;
  max-width: 600px;
}
#pictures_control {
  margin-top: 30px;
  padding: 18px;
  border: 3px solid var(--main_color);
  border-radius: 8px;
  justify-content: space-between;
  align-items: flex-end;
  position: relative;
}
#pictures_control.saving::after {
  content: 'Идет сохранение...';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .9);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 6px;
  color: #fff;
  font-size: 32px;
}
.pictures_control__title {
  font-family: 'NTSomic Bold';
  color: var(--third_color);
  text-transform: uppercase;
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
.pictures_control__checkbox {
  cursor: pointer;
  position: relative;
  padding: 3px 0 0 45px;
  width: 145px;
  height: 30px;
}
.pictures_control__checkbox span {
  line-height: 1;
  font-size: 14px;
}
.pictures_control__checkbox::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 30px;
  height: 30px;
  border: 2px solid var(--middle_gray);
  border-radius: 4px;
}
.pictures_control__checkbox::after {
  content: '';
  position: absolute;
  left: 3px;
  top: 3px;
  width: 23px;
  height: 23px;
  background: url('/wp-content/themes/girafffe/img/ico_check_alter.svg')
  no-repeat center;
  background-size: contain;
  opacity: 0;
}
.pictures_control__checkbox.active::after {
  opacity: 1;
}
.pictures_control__checkbox:hover::before {
  border-color: var(--dark_gray);
}
.pictures_control__crop,
.pictures_control__meta,
.pictures_control__actions {
  width: 100%;
  margin-top: 20px;
}
.pictures_control__actions {
  padding-top: 10px;
  border-top: 1px solid var(--light_gray);
}
#pictures_edit {
  margin-top: 30px;
  height: 100%;
  max-height: 1200px;
  overflow-y: auto;
}
#pictures_edit:not(:empty) + .pictures_edit__after {
  width: 100%;
  height: 60px;
  position: relative;
  top: -50px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, #fff 100%);
}
#pictures_edit .pictures_edit__elem {
  margin-top: 30px;
  padding: 30px 20px 20px;
  border: 1px solid var(--light_gray);
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
#pictures_edit .pictures_edit__elem:nth-child(1) {
  margin-top: 15px;
}
#pictures_edit .pictures_edit__elem:nth-last-child(1) {
  margin-bottom: 50px;
}
#pictures_edit span.elem__name {
  position: absolute;
  left: 20px;
  top: -10px;
  width: calc(100% - 40px);
  text-align: center;
  background: var(--third_color);
  border-radius: 6px;
  color: #fff;
  padding: 0 10px;
}
#pictures_edit .elem__checkbox {
  width: 30px;
  height: 30px;
  margin: 0 auto;
  border: 2px solid var(--middle_gray);
  border-radius: 4px;
  cursor: pointer;
  position: relative;
}
#pictures_edit .elem__checkbox::after {
  content: '';
  position: absolute;
  left: 2px;
  top: 2px;
  width: 23px;
  height: 23px;
  background: url('/wp-content/themes/girafffe/img/ico_check_alter.svg')
  no-repeat center;
  background-size: contain;
  opacity: 0;
}
#pictures_edit .pictures_edit__elem.active .elem__checkbox::after {
  opacity: 1;
}
#pictures_edit .elem__checkbox:hover {
  border-color: var(--dark_gray);
}
#pictures_edit .elem__pic {
  margin-top: 15px;
  display: block;
  object-fit: contain;
	object-position: center;
	font-family: 'object-fit: contain; object-position: center;';
  width: 100%;
  height: auto;
}
#pictures_edit .elem__control {
  width: 100%;
  justify-content: space-between;
  align-items: center;
}
#pictures_edit .elem__crop {
  width: 100%;
  margin-top: 15px;
}
#pictures_edit .elem__meta {
  width: 100%;
  margin-top: 15px;
}
#pictures_edit .elem__mapping {
  width: 100%;
  margin-top: 15px;
}
#pictures_edit .elem__actions {
  justify-content: space-between;
  align-items: center;
  margin-top: 15px;
  padding-top: 5px;
  border-top: 1px solid var(--light_gray);
  width: 100%;
}
#pictures_edit p.elem__mapping {
  position: relative;
}
#pictures_edit .elem__mapping_dropdown {
  position: absolute;
  left: 0;
  top: 60px;
  background: #fff;
  border: 1px solid var(--light_gray);
  border-radius: 6px;
  max-height: 200px;
  overflow-y: auto;
  display: none;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 0 12px rgba(0, 0, 0, .15);
}
#pictures_edit .elem__mapping_dropdown .dropdown_item {
  font-size: 12px;
  display: block;
  width: 100%;
  padding: 3px 10px 3px 20px;
  cursor: pointer;
}
#pictures_edit .elem__mapping_dropdown .dropdown_item:hover {
  background: var(--lighter_gray);
}

@media (min-width: 576px) {
  /* generation */
  .price_mapper__col_info {
    width: 50%;
    padding-right: 12px;
  }
  .price_mapper__col_info p {
    margin: 5px 0;
  }
  .price_mapper__col_info span {
    display: block;
  }
  .price_mapper__col_select {
    width: 50%;
  }
  /* pictures */
  #pictures_edit span.elem__name {
    left: 10px;
    width: auto;
    text-align: left;
  }
  #pictures_edit .elem__checkbox {
    margin: 0;
  }
  #pictures_edit .elem__pic {
    margin-top: 0;
    width: 100px;
  }
  #pictures_edit .elem__control {
    width: calc(100% - 160px);
  }
  #pictures_edit .elem__crop {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  /* control */
  .block_cards_fill_control #tasks_manager {
    margin-top: 0;
  }
  .block_cards_fill_control #tasks_manager > div {
    padding-left: 20px;
  }
  .block_cards_fill_control #tasks_manager .content_box__elems_title {
    text-align: center;
  }
  /* generation */
  .price_mapper__row {
    position: relative;
    padding: 20px 30px 20px 40px;
  }
  .price_mapper__row::before {
    left: -20px;
    top: calc(50% - 20px);
    width: 40px;
    height: 40px;
  }
  #price_table {
    scrollbar-width: thin;
    scrollbar-color: var(--light_gray) var(--lighter_gray);
  }
  #price_table::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
  #price_table::-webkit-scrollbar-thumb {
    background-color: var(--light_gray);
    border-radius: 5px;
  }
  #price_table::-webkit-scrollbar-track {
    background-color: var(--lighter_gray);
    border-radius: 5px;
  }
  .generate_settings__option_block,
  .generate_settings__tags_block,
  #generate_settings_btn {
    width: calc(100% / 3 - 10px);
  }
  #price_table_generate_texts {
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
  }
  #generate_texts_btn {
    margin-left: 15px;
  }
  #price_table__control {
    justify-content: space-between;
  }
  #price_table__control a.button {
    margin: 10px 0 15px;
    width: calc(50% - 14px);
  }
  #price_table__complete a.button {
    margin: 10px 7px;
    width: calc(50% - 14px);
  }
  /* pictures */
  .pictures_control__crop,
  .pictures_control__meta {
    width: calc(50% - 90px);
    margin-top: 0;
  }
  #pictures_edit {
    max-height: 1050px;
  }
  #pictures_edit .elem__actions a {
    width: 32%;
  }
}

@media (min-width: 992px) {
  /* control */
  .block_cards_fill_control #tasks_manager > div {
    width: 50%;
  }
  .block_cards_fill_control #tasks_manager > div {
    padding-left: 30px;
  }
  .block_cards_fill_control #tasks_manager > div:nth-child(2) {
    margin-top: 0;
  }
  /* generation */
  .generate_settings__tags_block .tags_list p b {
    opacity: .6;
  }
  .generate_settings__tags_block .tags_list span:hover b {
    opacity: 1;
  }
  #generate_texts_select {
    max-width: 280px;
  }
  #generate_texts_btn {
    width: 40%;
  }
  #price_table__control {
    justify-content: flex-start;
  }
  #price_table__control a.button {
    margin-right: 15px;
    width: 35%;
  }
  #price_table__control a:not(.button) {
    margin: 10px 0 15px;
  }
  #price_table__complete a.button {
    width: calc(40% - 14px);
  }
  /* pictures */
  #pictures_control {
    padding-top: 10px;
  }
  .pictures_control__title {
    margin-bottom: 0;
  }
  .pictures_control__crop,
  .pictures_control__meta {
    width: 26%;
  }
  .pictures_control__actions {
    width: calc(48% - 180px);
    padding-top: 0;
    margin-top: 0;
    border-top: 0;
  }
  #pictures_edit {
    max-height: 700px;
  }
  #pictures_edit .elem__crop {
    width: 32%;
  }
  #pictures_edit .elem__meta {
    width: 32%;
    margin-top: 0;
  }
  #pictures_edit .elem__mapping {
    width: 32%;
    margin-top: 0;
  }
}

@media (min-width: 1200px) {
  /* generation */
  #generate_texts_btn,
  #price_table__control a.button,
  #price_table__complete a.button {
    width: 30%;
  }
  /* pictures */
  .pictures_control__crop,
  .pictures_control__meta {
    width: 27%;
  }
  .pictures_control__actions {
    width: calc(46% - 195px);
  }
}

@media (min-width: 1400px) {
  /* pictures */
  .pictures_control__crop,
  .pictures_control__meta {
    width: 27.5%;
  }
  .pictures_control__actions {
    width: calc(45% - 205px);
  }
}

/*--------------------------------------------------------------
# Adata page
--------------------------------------------------------------*/

/* control */
.block_adata_control .content_box__elems_title {
  font-size: 19px;
  width: 100%;
}
.block_adata_control p.project_info__elem {
  margin: 10px 10px 0 0;
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 2px 10px;
  font-size: 14px;
}
.block_adata_control #project_info {
  align-items: center;
}
/* companies */
.block_adata_control .companies__elem {
  border: 1px solid var(--light_gray);
  border-radius: 12px;
  padding: 20px;
  margin: 20px 0;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-height: 200px;
  position: relative;
}
.block_adata_control .companies__elem:hover {
  border-color: var(--main_color);
  transition: var(--transition);
}
.block_adata_control .companies__elem.empty {
  border: 3px dashed var(--light_gray);
}
.block_adata_control .companies__elem_title p {
  gap: 10px;
  justify-content: center;
  align-items: center;
}
.block_adata_control .companies__elem_title b {
  font-size: 19px;
  cursor: pointer;
}
.block_adata_control .companies__elem_title b::after {
  content: '';
  margin-left: 5px;
  width: 16px;
  height: 16px;
  background: url('/wp-content/themes/girafffe/img/ico_adata_edit.svg') 
  no-repeat center;
  background-size: 100%;
  display: inline-block;
  position: relative;
  top: 2px;
}
.block_adata_control .companies__elem_title_input {
  position: absolute;
  left: 10px;
  right: 70px;
  width: calc(100% - 80px);
  padding: 5px 10px;
  height: 28px;
  text-align: center;
}
.block_adata_control img.companies__elem_title_apply,
.block_adata_control img.companies__elem_title_cancel {
  position: absolute;
  width: 16px;
  height: 16px;
  display: block;
  cursor: pointer;
}
.block_adata_control img.companies__elem_title_apply {
  right: 40px;
}
.block_adata_control img.companies__elem_title_cancel {
  right: 10px;
}
.block_adata_control .companies__elem_title img.companies__elem_title_actpic {
  display: block;
  width: 24px;
  height: 24px;
}
.block_adata_control .companies__elem_title span {
  font-family: 'NTSomic Regular';
  display: block;
  font-size: 13px;
  margin-top: 5px;
  color: var(--dark_gray);
}
.block_adata_control .companies__elem_links {
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.block_adata_control .companies__elem_links a {
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;  
}
.block_adata_control .companies__elem_links img {
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  box-shadow: 0 0 3px rgba(0, 0, 0, .25);
  margin-right: 6px;
}
.block_adata_control .companies__elem_links span {
  font-size: 14px;
}
.block_adata_control .companies__elem.empty a span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 20px;
  height: 20px;
  background-color: var(--main_color);
  color: #fff;
  line-height: 20px;
  border-radius: 100%;
  box-shadow: -1px 2px 3px rgba(0, 0, 0, .25);
}
.block_adata_control .companies__elem_content {
  margin-top: 10px;
}
.block_adata_control .companies__elem_content span {
  font-family: 'NTSomic Medium';
}
.block_adata_control .companies__elem_actions {
  background-color: var(--lighter_gray);
  border-radius: 8px;
  margin-top: 20px;
  padding: 20px;
  text-align: center;
}
.block_adata_control .companies__elem_actions p {
  color: var(--second_color);
}
.block_adata_control .companies__elem_actions a {
  display: inline-block;
  margin: 5px 8px 0;
}
.block_adata_control .companies__elem_actions a.disabled {
  pointer-events: none;
  color: var(--middle_gray);
}
.block_adata_control .companies__elem_actions a.start_manual_check {
  margin-top: 0;
}
.block_adata_control .companies__elem_delete {
  justify-content: center;
  align-items: center;
  margin-top: 15px;
}
.block_adata_control .companies__elem_delete a {
  background-color: #ff6666;
  color: #fff;
  border-radius: 4px;
  margin: 5px;
  padding: 4px 12px;
  font-size: 12px;
}
/* add */
/* empty... */

/* logs */
.block_adata_logs .logs__elem {
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 10px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--light_gray);
}
.block_adata_logs .logs__elem:nth-last-child(1) {
  border-bottom: 0;
}
.block_adata_logs .logs__elem span {
  width: 130px;
  font-size: 13px;
  padding-top: 4px;
}
.block_adata_logs .logs__elem p {
  width: calc(100% - 140px);
}
.block_adata_logs .logs__nav {
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}
.block_adata_logs .logs__nav a {
  display: inline-block;
  margin: 3px 10px;
}
.block_adata_logs[data-has-newer=""] a.logs_newer,
.block_adata_logs[data-has-newer="0"] a.logs_newer,
.block_adata_logs[data-has-older=""] a.logs_older,
.block_adata_logs[data-has-older="0"] a.logs_older {
  color: var(--middle_gray);
  pointer-events: none;
}
/* manuals */
.block_adata_manuals .manuals__title {
  font-family: 'NTSomic Medium';
  font-size: 19px;
  color: var(--third_color);
}
.block_adata_manuals .manuals__content {
  line-height: 1.5;
  margin-bottom: 40px;
}
.block_adata_manuals .manuals__content > * {
  margin-top: 40px;
}
.block_adata_manuals .manual__step > p {
  font-family: 'NTSomic Bold';
  font-size: 46px;
  line-height: 1;
  width: 50px;
  height: 50px;
  text-align: center;
  color: #fff;
  background-color: var(--success_color);
  border-radius: 100%;
}
.block_adata_manuals .manual__step > div {
  width: calc(100% - 50px);
  padding-left: 20px;
}
.block_adata_manuals .manual__step > div > * {
  margin-top: 20px;
}
.block_adata_manuals .manual__step > div > *:nth-of-type(1) {
  margin-top: 0;
}
.block_adata_manuals .manual__step > div > p {
  padding: 15px 0 15px 15px;
  border-left: 7px solid var(--light_gray);
  word-break: break-word;
}
.block_adata_manuals .manual__step > div > p i {
  color: var(--dark_gray);
  padding-right: 3px;
}
.block_adata_manuals .manual__explanation {
  border-left: 10px solid var(--second_color);
  padding: 10px 0 10px 15px;
  line-height: 1.6;
}
.block_adata_manuals .manual__explanation> * {
  margin-top: 20px;
}
.block_adata_manuals .manual__explanation > *:nth-of-type(1) {
  margin-top: 0;
}

@media (min-width: 768px) {
  /* companies */
  .adata_main #companies {
    align-items: stretch;
  }
  .block_adata_control .companies__elem {
    height: calc(100% - 40px);
  }
}

@media (min-width: 992px) {
  /* control */
  .block_adata_control .content_box__elems_title {
    width: auto;
    margin-right: 20px;
  }
  .block_adata_control p.project_info__elem {
    margin: 5px 20px 0 0;
  }
  /* logs */
  .block_adata_logs {
    position: relative;
    padding-bottom: 60px;
  }
  .block_adata_logs .logs__nav {
    position: absolute;
    width: 100%;
    bottom: 20px;
    left: 0;
    right: 0;
  }
}

/*--------------------------------------------------------------
# Revman page
--------------------------------------------------------------*/
/* control */
.block_revman_control .content_box__elems_title {
  font-size: 19px;
  width: 100%;
}
.block_revman_control p.project_info__elem {
  margin: 10px 10px 0 0;
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 2px 10px;
  font-size: 14px;
}
.block_revman_control #project_info {
  align-items: center;
}
/* companies */
.block_revman_control .companies__elem {
  border: 1px solid var(--light_gray);
  border-radius: 12px;
  padding: 20px;
  margin: 20px 0;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-height: 200px;
  position: relative;
}
.block_revman_control .companies__elem:hover {
  border-color: var(--main_color);
  transition: var(--transition);
}
.block_revman_control .companies__elem.empty {
  border: 3px dashed var(--light_gray);
}
.block_revman_control .companies__elem_title p {
  gap: 10px;
  justify-content: center;
  align-items: center;
}
.block_revman_control .companies__elem_title b {
  font-size: 19px;
  cursor: pointer;
}
.block_revman_control .companies__elem_title b::after {
  content: '';
  margin-left: 5px;
  width: 16px;
  height: 16px;
  background: url('/wp-content/themes/girafffe/img/ico_adata_edit.svg') 
  no-repeat center;
  background-size: 100%;
  display: inline-block;
  position: relative;
  top: 2px;
}
.block_revman_control .companies__elem_title_input {
  position: absolute;
  left: 10px;
  right: 70px;
  width: calc(100% - 80px);
  padding: 5px 10px;
  height: 28px;
  text-align: center;
}
.block_revman_control img.companies__elem_title_apply,
.block_revman_control img.companies__elem_title_cancel {
  position: absolute;
  width: 16px;
  height: 16px;
  display: block;
  cursor: pointer;
}
.block_revman_control img.companies__elem_title_apply {
  right: 40px;
}
.block_revman_control img.companies__elem_title_cancel {
  right: 10px;
}
.block_revman_control .companies__elem_title img.companies__elem_title_serpic {
  display: block;
  width: 24px;
  height: 24px;
}
.block_revman_control .companies__elem_title span {
  font-family: 'NTSomic Regular';
  display: block;
  font-size: 13px;
  margin-top: 5px;
  color: var(--dark_gray);
}
.block_revman_control .companies__elem_links {
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.block_revman_control .companies__elem_links a {
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;  
}
.block_revman_control .companies__elem_links img {
  display: block;
  width: 16px;
  height: 16px;
  border-radius: 100%;
  box-shadow: 0 0 3px rgba(0, 0, 0, .25);
  margin-right: 6px;
}
.block_revman_control .companies__elem_links span {
  font-size: 14px;
}
.block_revman_control .companies__elem.empty a span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 20px;
  height: 20px;
  background-color: var(--main_color);
  color: #fff;
  line-height: 20px;
  border-radius: 100%;
  box-shadow: -1px 2px 3px rgba(0, 0, 0, .25);
}
.block_revman_control .companies__elem_content {
  margin-top: 10px;
}
.block_revman_control .companies__elem_content span {
  font-family: 'NTSomic Medium';
}
.block_revman_control .companies__elem_actions {
  background-color: var(--lighter_gray);
  border-radius: 8px;
  margin-top: 20px;
  padding: 20px;
  text-align: center;
}
.block_revman_control .companies__elem_actions p {
  color: var(--second_color);
}
.block_revman_control .companies__elem_actions p.verify_code {
  color: #000;
  font-size: 14px;
}
.block_revman_control .companies__elem_actions p.verify_code.waiting {
  cursor: pointer;
}
.block_revman_control .companies__elem_actions p.verify_code span {
  background-color: var(--light_gray);
  display: inline-block;
  padding: 2px 8px;
  margin-top: 8px;
  line-height: 1;
  border-radius: 6px;
  letter-spacing: 1px;
}
.block_revman_control .companies__elem_actions a {
  display: inline-block;
  margin: 5px 8px 0;
}
.block_revman_control .companies__elem_actions a.disabled {
  pointer-events: none;
  color: var(--middle_gray);
}
.block_revman_control .companies__elem_actions a.start_manual_update {
  margin-top: 0;
}
.block_revman_control .companies__elem_delete {
  justify-content: center;
  align-items: center;
  margin-top: 15px;
}
.block_revman_control .companies__elem_delete a {
  background-color: #ff6666;
  color: #fff;
  border-radius: 4px;
  margin: 5px;
  padding: 4px 12px;
  font-size: 12px;
}
.block_revman_control .companies__elem_stats {
  align-items: center;
  flex-flow: row nowrap;
  gap: 0 10px;
}
.block_revman_control .companies__elem_stats > p {
  align-items: center;
  flex-flow: row nowrap;
  margin: 6px 0;
}
.block_revman_control .companies__elem_stats > p img {
  display: block;
  width: 16px;
  height: 16px;
}
.block_revman_control .companies__elem_stats > p span {
  font-family: 'NTSomic Bold';
  padding-left: 4px;
}
.block_revman_control .companies__elem_stats > p span b {
  padding-left: 3px;
  color: var(--main_color);
}
/* reviews */
p.revman_no_reviews {
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--dark_gray);
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
  padding: 4px 12px;
  display: inline-block;
}
.block_revman_reviews .reviews__control {

}
.block_revman_reviews .reviews__control_title {
  font-family: 'NTSomic Medium';
  font-size: 14px;
  margin-bottom: 5px;
  padding: 0 20px;
  position: relative;
  display: inline-block;
  color: var(--dark_gray); 
}
.block_revman_reviews .reviews__control_title::before,
.block_revman_reviews .reviews__control_title::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 15px;
  height: 1px;
  border-radius: 6px;
  margin: auto 0;
  background: var(--dark_gray);
}
.block_revman_reviews .reviews__control_title::before {
  left: 0;
}
.block_revman_reviews .reviews__control_title::after {
  right: 0;
}
/* add */
/* empty... */

/* logs */
.block_revman_logs .logs__elem {
  flex-flow: row nowrap;
  justify-content: space-between;
  margin: 10px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--light_gray);
}
.block_revman_logs .logs__elem:nth-last-child(1) {
  border-bottom: 0;
}
.block_revman_logs .logs__elem span {
  width: 130px;
  font-size: 13px;
  padding-top: 4px;
}
.block_revman_logs .logs__elem p {
  width: calc(100% - 140px);
}
.block_revman_logs .logs__nav {
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}
.block_revman_logs .logs__nav a {
  display: inline-block;
  margin: 3px 10px;
}
.block_revman_logs[data-has-newer=""] a.logs_newer,
.block_revman_logs[data-has-newer="0"] a.logs_newer,
.block_revman_logs[data-has-older=""] a.logs_older,
.block_revman_logs[data-has-older="0"] a.logs_older {
  color: var(--middle_gray);
  pointer-events: none;
}
/* manuals */
.block_revman_manuals .manuals__title {
  font-family: 'NTSomic Medium';
  font-size: 19px;
  color: var(--third_color);
}
.block_revman_manuals .manuals__content {
  line-height: 1.5;
  margin-bottom: 40px;
}
.block_revman_manuals .manuals__content > * {
  margin-top: 40px;
}
.block_revman_manuals p.manuals__subtitle span {
  font-family: 'NTSomic Bold';
  
  background-color: var(--light_gray);
  display: inline-block;
  padding: 6px 18px;
  border-radius: 6px;
  font-size: 17px;
}
.block_revman_manuals .manual__step > p {
  font-family: 'NTSomic Bold';
  font-size: 46px;
  line-height: 1;
  width: 50px;
  height: 50px;
  text-align: center;
  color: #fff;
  background-color: var(--success_color);
  border-radius: 100%;
}
.block_revman_manuals .manual__step > div {
  width: calc(100% - 50px);
  padding-left: 20px;
}
.block_revman_manuals .manual__step > div > * {
  margin-top: 20px;
}
.block_revman_manuals .manual__step > div > *:nth-of-type(1) {
  margin-top: 0;
}
.block_revman_manuals .manual__step > div > p {
  padding: 15px 0 15px 15px;
  border-left: 7px solid var(--light_gray);
  word-break: break-word;
  line-height: 1.8;
}
.block_revman_manuals .manual__step > div > p i {
  color: var(--dark_gray);
  padding: 0 5px 2px;
  background-color: var(--lighter_gray);
  border: 1px solid var(--light_gray);
  border-radius: 4px;
}
.block_revman_manuals .manual__explanation {
  border-left: 10px solid var(--second_color);
  padding: 10px 0 10px 15px;
  line-height: 1.6;
}
.block_revman_manuals .manual__explanation> * {
  margin-top: 20px;
}
.block_revman_manuals .manual__explanation > *:nth-of-type(1) {
  margin-top: 0;
}

@media (min-width: 768px) {
  /* companies */
  .revman_main #companies {
    align-items: stretch;
  }
  .block_revman_control .companies__elem {
    height: calc(100% - 40px);
  }
}

@media (min-width: 992px) {
  /* control */
  .block_revman_control .content_box__elems_title {
    width: auto;
    margin-right: 20px;
  }
  .block_revman_control p.project_info__elem {
    margin: 5px 20px 0 0;
  }
  /* logs */
  .block_revman_logs {
    position: relative;
    padding-bottom: 60px;
  }
  .block_revman_logs .logs__nav {
    position: absolute;
    width: 100%;
    bottom: 20px;
    left: 0;
    right: 0;
  }
}

/* THE END */
