/* For old browsers */
@supports (not(--css: variables))
{
    .supports_error
    {
        display: flex !important;
    }
}

/* For IE */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)
{
    .supports_error
    {
        display: flex !important;
    }
}

html {
  scroll-behavior: smooth;
}
/*-----------
    Fonts
-----------*/
@font-face {
    font-family: 'Circe';
    src: local('Circe Bold'), local('Circe-Bold'),
        url('/sob/fonts/Circe-Bold.woff2') format('woff2'),
        url('/sob/fonts/Circe-Bold.woff') format('woff'),
        url('/sob/fonts/Circe-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
  }
}
@font-face {
	font-family: 'Circe'; 
	src: local('Circle'),
		url(/sob/fonts/Circe-Bold.ttf); 
}
@font-face
{
    font-family: 'MazzardM';
    font-weight: 300;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/MazzardM-Light.woff') format('woff'),
    url('../fonts/MazzardM-Light.ttf') format('truetype');
}

@font-face
{
    font-family: 'MazzardM';
    font-weight: normal;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/MazzardM-Regular.woff') format('woff'),
    url('../fonts/MazzardM-Regular.ttf') format('truetype');
}

@font-face
{
    font-family: 'MazzardM';
    font-weight: 500;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/MazzardM-Medium.woff') format('woff'),
    url('../fonts/MazzardM-Medium.ttf') format('truetype');
}

@font-face
{
    font-family: 'MazzardM';
    font-weight: 600;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/MazzardM-SemiBold.woff') format('woff'),
    url('../fonts/MazzardM-SemiBold.ttf') format('truetype');
}

@font-face
{
    font-family: 'MazzardM';
    font-weight: 800;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/MazzardM-ExtraBold.woff') format('woff'),
    url('../fonts/MazzardM-ExtraBold.ttf') format('truetype');
}

@font-face
{
    font-family: 'MazzardM';
    font-weight: 900;
    font-style: normal;

    font-display: swap;
    src: url('../fonts/MazzardM-Black.woff') format('woff'),
    url('../fonts/MazzardM-Black.ttf') format('truetype');
}


/*------------------
    Reset styles
------------------*/
*
{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*:before,
*:after
{
    box-sizing: border-box;
}

html
{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body
{
    margin: 0;

    overscroll-behavior-y: contain;
    -webkit-tap-highlight-color: transparent;
    -webkit-overflow-scrolling: touch;
    text-rendering: optimizeLegibility;
    text-decoration-skip: objects;
}

img
{
    border-style: none;
}
p, ul, ol {font-size: 16px;}
textarea
{
    overflow: auto;
}

input,
textarea,
input:active,
textarea:active,
button
{
    margin: 0;

    -webkit-border-radius: 0;
            border-radius: 0;
         outline: none transparent !important;
    box-shadow: none;

    -webkit-appearance: none;
            appearance: none;
    -moz-outline: none !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button
{
    margin: 0;

    -webkit-appearance: none;
}

input[type=number]
{
    -moz-appearance: textfield;
}

:focus
{
    outline: 0;
}

:hover,
:active
{
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-touch-callout: none;
}


::-ms-clear
{
    display: none;
}



/*-------------------
    Global styles
-------------------*/
:root
{
    --bg: #fff;
    --scroll_width: 17px;
    --text_color: #333;
    --font_size: 16px;
    --font_size_title: 51px;
    --font_family: 'MazzardM', 'Arial', sans-serif;
}


::selection
{
    color: #fff;

    background: #0956a3;
}

::-moz-selection
{
    color: #fff;

    background: #0956a3;
}


.clear
{
    clear: both;
}

.left
{
    float: left;
}

.right
{
    float: right;
}



html
{
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
}

html.custom_scroll ::-webkit-scrollbar
{
    width: 10px;
    height: 10px;

    background-color: #ccc;
}

html.custom_scroll ::-webkit-scrollbar-thumb
{
    background-color: #0956a3;
}

html.custom_scroll
{
    scrollbar-color: #0956a3 #ccc;
    scrollbar-width: thin;
}


body
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
}


button
{
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;

    display: inline-block;

    cursor: pointer;
    vertical-align: top;

    border: none;
    background: none;
}


.wrap
{
    position: relative;
    z-index: 9;

    display: flex;
    overflow: hidden;
    flex-direction: column;

    min-width: 360px;
    min-height: 100%;

    background: var(--bg);
}


.main
{
    display: flex;
    flex-direction: column;
    margin-top: 95px;
    flex: 1 0 auto;
}


.cont
{
    width: 100%;
    max-width: 1218px;
    margin: 0 auto;
    padding: 0 24px;
}


.lozad
{
    transition: opacity .5s linear;

    opacity: 0;
}

.lozad.loaded
{
    opacity: 1;
}


.row
{
    display: flex;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}



.block
{
    margin-bottom: 0;
}

.block.no_margin
{
    margin-bottom: 0 !important;
}



.overlay
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    opacity: .65;
    background: #000;
}

.cookie-consent {
  display: none;              /* по умолчанию скрыт */
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  padding: 16px;
  font-size: 14px;
  line-height: 1.4;
  box-shadow: 0 -2px 8px rgba(0,0,0,0.3);
  z-index: 1000;

  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cookie-consent p {
  margin: 0;
}

.cookie-consent a {
  color: #4CAF50;
  text-decoration: underline;
}

.cookie-consent button {
  background: #4CAF50;
  border: none;
  color: #fff;
  padding: 8px 16px;
  font-size: 14px;
  cursor: pointer;
  border-radius: 4px;
}

.cookie-consent button:hover {
  background: #45a049;
}


.supports_error
{
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    line-height: 30px;

    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;
    padding: 20px;

    text-align: center;

    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.supports_error.show
{
    display: flex;
}
/*-----------------
       Menu
------------------*/
.sub-menu {display: none; margin-top: 10px;}
#menu-glavnoe-menyu li:hover .sub-menu {display: block;}

/*----------------
    Pagination
----------------*/
.pagination
{
    display: flex;

    margin-top: 80px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.pagination.min_margin
{
    margin-top: 60px;
}

.pagination.center
{
    justify-content: center;
}

.pagination.alignright
{
    justify-content: flex-end;
}


.pagination > * + *
{
    margin-left: 1px;
}

.pagination a,
.pagination .sep
{
    color: #000;
    line-height: 37px;

    display: inline-block;

    width: 38px;
    height: 38px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;

    border: 1px solid transparent;
}

.pagination a:hover,
.pagination a.active
{
    color: #0956a3;

    border-color: #0956a3;
}


.pagination .prev,
.pagination .next,
.pagination .first,
.pagination .last
{
    color: #0956a3;

    display: flex;

    border: none;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.pagination .prev,
.pagination .first
{
    margin-right: 15px;
}

.pagination .next,
.pagination .last
{
    margin-left: 15px;
}

.pagination .prev .icon,
.pagination .next .icon
{
    display: block;

    width: 16px;
    height: 16px;
}

.pagination .next .icon
{
    transform: rotate(180deg);
}


.pagination .first .icon,
.pagination .last .icon
{
    display: block;

    width: 24px;
    height: 16px;
}

.pagination .first .icon
{
    transform: rotate(180deg);
}


.pagination .disable
{
    color: #d9d9d9;

    pointer-events: none;
}



/*-----------------
    Donate link
-----------------*/
.donate_link
{
    position: relative;
}


.donate_link .link
{
    color: #fff;
    font-weight: 600;
    line-height: 25px;

    display: block;

    padding: 7px;

    text-align: center;
    text-decoration: none;
    text-transform: uppercase;

    background: #0956a3;
}


.donate_link .close_btn
{
    color: #fff;

    position: absolute;
    top: 0;
    right: 50%;
    bottom: 0;

    display: flex;

    width: 20px;
    height: 20px;
    margin: auto;
    margin-right: -585px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}
.reasons {
  max-width: 900px;
  margin: 40px auto;
  font-family: Inter, system-ui, Arial, sans-serif;
  color: #0E0E0E;
}

.reasons h2 {
  margin: 0 0 24px;
  color: #0B66C2;
  font-size: 28px;
}

.reasons-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.reasons-list li {
  display: flex;
  align-items: center;       /*  выравнивание картинки по центру текста */
  gap: 16px;
  padding: 20px 0;
  border-top: 1px solid #0A58A5;
}

.reasons-list li:first-child {
  border-top: none;
}

.reason-num {
  width: 50px;
  height: 50px;
  object-fit: contain;       /* картинка не деформируется */
  flex-shrink: 0;
}

.reason-text {
  font-size: 18px;
  line-height: 1.55;
}

.donate_link .close_btn .icon
{
    display: block;

    width: 10px;
    height: 10px;
}

.text-36, .text-block p {line-height: normal;}
.support-cta {
  background: #f5f6f7;
  padding: 40px 16px 80px;
  text-align: center;
  font-family: Inter, system-ui, Arial, sans-serif;
}

.support-cta__inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}

.support-cta__title {
  margin: 0 0 32px;
  color: #0B66C2;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.3;
}

.text-36 .accent {
  font-weight: 800;
  color: #0077FF;
  font-style: italic;
}

.support-cta__avatars {
  list-style: none;
  margin: 0 0 40px;
  padding: 0;
  display: flex;
  justify-content: center; /* центруем аватары */
  gap: 20px;
  flex-wrap: wrap;
}

.support-cta__avatars li {
  width: 140px;
  height: 140px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.support-cta__avatars img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.support-cta__action {
  display: inline-block;
  position: relative;
}

.btn-support {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 240px;
  height: 64px;
  padding: 0 24px;
  background: #FFC400;
  border-radius: 16px;
  font-weight: 700;
  font-size: 20px;
  color: #111;
  text-decoration: none;
  transition: background .2s;
}

.btn-support:hover {
  background: #FFB300;
}

.btn-badge {
  position: absolute;
  right: -20px;
  top: -20px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 12px rgba(0,0,0,.2);
}

.btn-badge img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
}

.scribble {
  position: absolute;
  left: 67%;
  bottom: -30px;
  width: 200px; /* подберите под свой PNG */
  height: auto;
}

/* контейнер модалки */
.modal {
  position: fixed;
  inset: 0;
  display: none;            /* по умолчанию скрыта */
  z-index: 10000;
  width: 100%;
}

/* показать */
.modal[aria-hidden="false"] { display: block; }

/* затемнённый фон */
.modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.5); /* прозрачность */
}

/* окно строго по центру */
.modal__dialog {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: min(600px, 90%);
  max-height: 80vh;
  overflow-y: auto;
  background: #fff;
  border-radius: 20px;
  padding: 32px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.2);
}

/* крестик */
.modal__close {
  position: absolute;
  top: 16px; right: 16px;
  font-size: 28px;
  line-height: 1;
  border: none;
  background: transparent;
  cursor: pointer;
}

/* оформление текста */
.modal h3 {
  margin-top: 0;
  margin-bottom: 16px;
}
.modal .subtitle {
  color: #666;
  font-size: 14px;
  text-transform: uppercase;
  line-height: 1.4;
}
.modal p { margin: 6px 0; }
/*-------------
    Tooltip
-------------*/
.tooltip
{
    position: relative;

    display: inline-block;

    vertical-align: middle;
    white-space: normal;
}


.tooltip .icon
{
    color: var(--text_color);

    display: block;

    width: 22px;
    height: 22px;

    cursor: help;
    transition: opacity .2s linear;

    opacity: .2;
}
.text-block p {
    font-size: 36px;
    color: #0A58A5;
    text-align: center;
}
.l-grey {
    background: #EFEEED;
}
.tooltip:hover .icon
{
    opacity: 1;
}


.tooltip .text
{
    color: var(--text_color);
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    position: absolute;
    z-index: 99;
    top: calc(100% + 32px);
    left: 50%;

    visibility: hidden;

    width: 270px;
    padding: 20px;

    transition: .2s linear;
    transform: translateX(-50%);
    text-align-last: left;

    opacity: 0;
    background: #fff;
    box-shadow: 0 5px 20px rgba(0, 0, 0, .12);
}

.tooltip:hover .text
{
    top: calc(100% + 15px);

    visibility: visible;

    opacity: 1;
}



/*---------------
    Keyframes
---------------*/
@keyframes horMove
{
    50%
    {
        left: 100%;

        transform: translateX(-100%);
    }
    100%
    {
        left: 0;

        transform: translateX(0);
    }
}


@keyframes rotate360
{
    100%
    {
        transform: rotate(360deg);
    }
}



/*---------------
    Accordion
---------------*/
.accordion_item
{
    border: 1px solid #0956a3;
}

.accordion_item + .accordion_item
{
    margin-top: 10px;
}


.accordion_item .head
{
    position: relative;

    padding: 31px 88px 31px 29px;

    cursor: pointer;
}


.accordion_item .head .title
{
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
}


.accordion_item .head .icon
{
    position: absolute;
    top: 0;
    right: 29px;
    bottom: 0;

    display: flex;

    width: 30px;
    height: 30px;
    margin: auto;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.accordion_item .head .icon svg
{
    color: #0956a3;

    display: block;

    width: 24px;
    height: 24px;

    transition: transform .2s linear;
    transform: rotate(-90deg);
}


.accordion_item .data
{
    display: none;

    margin-top: -12px;
    padding: 0 29px 29px;
}


.accordion_item.active .head .icon svg
{
    transform: rotate(90deg);
}



/*----------
    Tabs
----------*/
.tabs
{
    display: flex;

    margin-bottom: 60px;
    margin-left: -10px;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.tabs button
{
    color: #0956a3;
    line-height: 25px;

    position: relative;

    display: flex;

    margin-bottom: 10px;
    margin-left: 10px;
    padding: 11px 19px;

    transition: .2s linear;
    text-align: center;

    border: 1px solid #0956a3;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tabs button:hover,
.tabs button.active
{
    color: #fff;

    background: #0956a3;
}


.tab_content
{
    position: relative;

    visibility: hidden;
    overflow: hidden;

    height: 0;

    pointer-events: none;

    opacity: 0;
}

.tab_content.active
{
    visibility: visible;
    overflow: visible;

    height: auto;

    transition: opacity .5s linear;
    pointer-events: auto;

    opacity: 1;
}



/*----------------
    Mini modal
----------------*/
.modal_cont
{
    position: relative;
}


.mini_modal
{
    position: absolute;
    z-index: 100;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;

    transition: .2s linear;
    pointer-events: none;

    opacity: 0;
}

.mini_modal.active
{
    top: 100%;

    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}



/*------------
    Header
------------*/
header
{
    position: relative;
    z-index: 101;

    background: #042749;
}


header .cont
{
    padding-top: 24px;
    padding-bottom: 24px;

    justify-content: space-between;
    align-items: center;
    align-content: center;
}



header .logo,
header .logo img
{
    color: currentColor;

    display: block;

    text-decoration: none;
}



header .menu.tablet_menu
{
    display: none;
}


header .menu .item + .item
{
    margin-left: 36px;
}


header .menu .item > a
{
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    position: relative;

    display: block;

    transition: opacity .2s linear;
    text-decoration: none;

    opacity: .8;
}

header .menu .item > a:after
{
    position: absolute;
    bottom: -32px;
    left: 0;

    display: block;

    width: 0;
    height: 2px;

    content: '';
    transition: width .2s linear;

    background: #0956a3;
}

header .menu .item:hover > a
{
    opacity: 1;
}

header .menu .item > a.active
{
    font-weight: 600;

    opacity: 1;
}

header .menu .item > a.active:after
{
    width: 52px;
}



header .search_btn
{
    color: #fff;

    display: flex;

    width: 34px;
    height: 34px;

    background: rgba(255,255,255,.05);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .search_btn .icon
{
    display: block;

    width: 14px;
    height: 14px;
}



header .mob_menu_btn
{
    color: #fff;

    display: none;

    width: 40px;
    height: 34px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


header .mob_menu_btn span
{
    position: relative;

    display: block;

    width: 100%;
    height: 2px;

    transition: background .2s linear;

    background: currentColor;
}

header .mob_menu_btn span:before,
header .mob_menu_btn span:after
{
    position: absolute;
    top: -8px;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';
    transition: .2s linear;

    background: currentColor;
}

header .mob_menu_btn span:after
{
    top: 8px;
}


header .mob_menu_btn.active span
{
    background: transparent;
}

header .mob_menu_btn.active span:before
{
    top: 0;

    transform: rotate(-45deg);
}

header .mob_menu_btn.active span:after
{
    top: 0;

    transform: rotate(45deg);
}



header.absolute
{
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;

    width: 100%;

    border-bottom: 1px solid rgba(255, 255, 255, .1);
    background: none;
}



/*---------------
    Page head
---------------*/
.page_head
{
    padding: 120px 0 0;
}


.page_head.with_img
{
    position: relative;
    z-index: 3;

    padding-top: 100px;
    padding-bottom: 100px;
}



.page_head .image
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
    height: 100%;

    background: #03111e;
}

.page_head .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.page_head .image img.loaded
{
    opacity: .5;
}



.breadcrumbs
{
    color: #fff;
    line-height: 19px;
    margin-bottom: 60px;
    text-align: left;

    opacity: .55;
}

.page_head.with_img .breadcrumbs
{
    color: #fff;
}


.breadcrumbs a
{
    color: currentColor;

    text-decoration: none;
}


.breadcrumbs .sep
{
    position: relative;
    top: -1px;

    display: inline-block;

    width: 23px;
    height: 1px;
    margin: 0 6px;

    transform: matrix(-.51, .74, -1.1, -.32, 0, 0);
    vertical-align: middle;

    background: currentColor;
}



.page_title
{
    color: #0956a3;
    font-size: 65px;
    font-weight: 600;
    line-height: calc(100% + 12px);

    display: block;

    margin-top: 14px;

    text-align: center;
}

.page_head.with_img .page_title
{
    color: #fff;
}



/*----------------
    Block head
----------------*/
.block_head
{
    width: 100%;
    margin-bottom: 40px;
}

.block_head.center
{
    margin-bottom: 60px;

    text-align: center;
}

.block_head.inline
{
    display: flex;

    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    align-content: center;
}


.block_head .pre_title
{
    color: #000;
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    position: relative;

    margin-bottom: 7px;
    padding-bottom: 8px;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.block_head .pre_title:after
{
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;

    width: 50px;
    height: 1px;

    content: '';

    background: currentColor;
}


.block_head .title
{
    font-size: 35px;
    font-weight: 600;
    line-height: calc(100% + 6px);

    display: block;
}

.block_head .title.big
{
    color: #343434;
    font-size: var(--font_size_title);
    line-height: calc(100% + 16px);
}

.block_head .title.uppercase
{
    text-transform: uppercase;
}


.block_head .title.border
{
    color: var(--bg);
    font-size: 46px;
    font-weight: 800;
    line-height: calc(100% + 10px);

    max-width: calc(100% - 315px);

    letter-spacing: .035em;
    text-transform: uppercase;

    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #0956a3;
}



.block_head .desc
{
    font-size: 18px;
    line-height: 26px;

    margin-top: 15px;

    opacity: .7;
}


.block_head .link
{
    color: #0956a3;
    font-weight: 500;
    line-height: 19px;

    display: inline-block;

    margin-top: 30px;
    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid #0956a3;
}

.block_head .all_link .link
{
    margin: 0;
}

.block_head .link:hover
{
    color: #fff;

    background: #0956a3;
}



/*------------------
    Form elements
------------------*/
.form
{
    --form_border_color: #fff;
    --form_focus_color: #fff;
    --form_error_color: red;
    --form_bg_color: #fff;
    --form_placeholder_color: rgba(51,51,51,.8);
}


.form ::-webkit-input-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-moz-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-ms-input-placeholder
{
    color: var(--form_placeholder_color);
}


.form .line
{
    margin-bottom: 20px;
}


.form .field
{
    position: relative;
}


.form .input
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: var(--font_size);

    display: block;

    width: 100%;
    height: 67px;
    padding: 0 23px;

    transition: border-color .2s linear;

    border: 1px solid var(--form_border_color);
    background: var(--form_bg_color);
    box-shadow: 0 4px 16px rgba(0, 0, 0, .11);
}

.form .input:-webkit-autofill
{
    -webkit-box-shadow: inset 0 0 0 50px var(--form_bg_color) !important;
}


.form textarea
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: var(--font_size);

    display: block;

    width: 100%;
    height: 145px;
    padding: 23px;

    resize: none;
    transition: border-color .2s linear;

    border: 1px solid var(--form_border_color);
    background: var(--form_bg_color);
    box-shadow: 0 4px 16px rgba(0, 0, 0, .11);
}

.form textarea::-webkit-scrollbar
{
    width: 5px;
    height: 5px;
}


.form .input:focus,
.form textarea:focus
{
    border-color: var(--form_focus_color);
}

.form .error
{
    border-color: var(--form_error_color);
}


.form .submit
{
    display: flex;

    padding-top: 10px;

    justify-content: flex-end;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.form .submit_btn
{
    color: #0956a3;
    font-weight: 500;
    line-height: 19px;

    padding: 15px 39px;

    transition: .2s linear;
    text-transform: uppercase;

    border: 1px solid #0956a3;
}

.form .submit_btn:hover
{
    color: #fff;

    background: #0956a3;
}



/*----------------
    Typography
----------------*/
.text_block
{
    font-size: 18px;
    line-height: 26px;
}


.text_block > *,
.text_block .info_block .data > *
{
    margin-bottom: 20px;
}

.text_block > *.clear
{
    margin-bottom: 0;
}


.text_block > :last-child,
.text_block .info_block .data > :last-child
{
    margin-bottom: 0 !important;
}

.text_block > :first-child,
.text_block .info_block .data > :first-child
{
    margin-top: 0 !important;
}


.text_block h2
{
    font-size: 45px;
    font-weight: 600;
    line-height: 53px;

    margin-bottom: 40px;
}

.text_block h2.min_margin
{
    margin-bottom: 15px;
}


.text_block h3
{
    font-size: 22px;
    font-weight: 600;
    line-height: 26px;
}


.text_block h4
{
    font-size: 19px;
    font-weight: 600;
    line-height: 28px;
}


.text_block h4.point
{
    position: relative;

    margin-bottom: 10px;
    padding-left: 24px;
}

.text_block h4.point:before
{
    position: absolute;
    top: 10px;
    left: 6px;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: var(--text_color);
}


.text_block * + h2,
.text_block * + h3
{
    margin-top: 60px;
}

.text_block h2 + *,
.text_block h3 + *,
.text_block h4 + *
{
    margin-top: 0 !important;
}


.text_block img
{
    display: block;

    max-width: 100%;
}

.text_block img.left
{
    max-width: calc(50% - 15px);
    margin-top: 4px;
    margin-right: 30px;
}

.text_block img.right
{
    max-width: calc(50% - 15px);
    margin-top: 4px;
    margin-left: 30px;
}

.text_block img.loaded
{
    height: auto !important;
}


.text_block figure
{
    display: block;

    width: 100%;
    margin-top: 40px;
    margin-bottom: 40px;
}

.text_block figure.min_margin
{
    margin-top: 20px;
    margin-bottom: 20px;
}


.text_block figure .row
{
    margin-bottom: -30px;
    margin-left: -30px;
}

.text_block figure .row > *
{
    width: calc(50% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}

.text_block figure .row > *.big_w
{
    width: calc(100% - 30px);
}


.text_block figure .image
{
    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 32.56%;

    background: #ddd;
}

.text_block figure .image.big_w
{
    padding-bottom: 51.28%;
}

.text_block figure .image.big_w.min_h
{
    padding-bottom: 42.74%;
}

.text_block figure .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100% !important;
    margin: 0;

    object-fit: cover;
}


.text_block figure figcaption
{
    font-size: var(--font_size);

    margin-top: 20px;

    opacity: .6;
}

.text_block figure figcaption.min_margin
{
    margin-top: 5px;
}


.text_block figure .grid
{
    display: grid;

    grid-gap: 24px;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: auto;
}

.text_block figure .grid .image
{
    height: 303px;
    padding: 0;
}

.text_block figure .grid .image.big_h
{
    height: 630px;

    grid-row: 1 / 3;
    grid-column: 2 / 3;
}


.text_block .plus_minus
{
    padding: 43px 49px;

    border: 1px solid #c1c1c1;
}


.text_block ul li
{
    position: relative;

    display: block;
    overflow: hidden;

    padding-left: 24px;

    list-style-type: none;
}

.text_block ul li + li
{
    margin-top: 15px;
}

.text_block ul li:before
{
    position: absolute;
    top: 10px;
    left: 6px;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: var(--text_color);
}


.text_block ul.mini li + li
{
    margin-top: 0;
}

.text_block ul.mini li:before
{
    top: 13px;

    width: 4px;
    height: 4px;
}


.text_block ol
{
    counter-reset: li;
}

.text_block ol li
{
    position: relative;

    display: block;
    overflow: hidden;

    padding-left: 24px;

    list-style-type: none;
}

.text_block ol li:before
{
    color: var(--text_color);

    position: absolute;
    top: 0;
    left: 0;

    content: counter(li) '.';
    counter-increment: li;
}


.text_block .table_wrap
{
    overflow: auto;

    max-width: 100%;
    margin-top: 30px;
    margin-bottom: 30px;

    background: #fff;
    box-shadow: 0 4px 10px rgba(38, 50, 56, .15);
}


.text_block table
{
    width: 100%;

    border-spacing: 0;
    border-collapse: collapse;
}


.text_block table th
{
    color: #fff;
    font-weight: 400;
    line-height: 25px;

    padding: 16px;

    text-align: left;
    vertical-align: middle;

    background: #0956a3;
}


.text_block table td
{
    font-size: var(--font_size);
    line-height: 25px;

    padding: 16px;

    text-align: left;
    vertical-align: top;

    border-top: 1px solid #0956a3;
}

.text_block table td.nowrap
{
    white-space: nowrap;
}

.text_block table td span
{
    display: block;
}


.text_block .info_block
{
    display: flex;

    margin-top: 55px;
    margin-bottom: 55px;

    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.text_block .info_block .image
{
    position: relative;

    overflow: hidden;

    width: 500px;
    height: 500px;

    background: #ddd;
}

.text_block .info_block .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100% !important;
    margin: 0;

    object-fit: cover;
}


.text_block .info_block .data
{
    position: relative;

    width: calc(100% - 530px);
    margin-left: auto;
    padding-bottom: 130px;
}


.text_block .info_block .gallery
{
    position: absolute;
    bottom: -20px;
    left: 0;

    display: flex;

    width: calc(100% + 20px);
    margin-bottom: -20px;
    margin-left: -20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.text_block .info_block .gallery .image
{
    width: calc(33.333% - 20px);
    height: 100px;
    margin-bottom: 20px;
    margin-left: 20px;
}


.text_block .video
{
    position: relative;

    overflow: hidden;

    margin-top: 55px;
    margin-bottom: 55px;
    padding-bottom: 42.74%;

    background: #ddd;
}

.text_block .video iframe
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;
}


.text_block .message
{
    font-size: 25px;
    font-style: italic;
    line-height: 36px;

    margin-top: 40px;
    margin-bottom: 40px;
}


.text_block .columns
{
    margin-top: 40px;
    margin-bottom: 40px;

    column-gap: 40px;
    column-count: 2;
}

.text_block .columns > *
{
    transform: translateZ(0);

    --webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.text_block .columns > * + *
{
    margin-top: 20px;
}


.text_block blockquote
{
    font-size: 28px;
    font-style: italic;
    line-height: 46px;

    display: block;

    width: 100%;
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 93px 93px 93px 89px;

    border: 1px solid #c1c1c1;
    background: url(../images/ic_quote.svg) 49px 49px no-repeat;
}


.text_block .fancy_gallery
{
    margin-top: 55px;
    margin-bottom: 55px;
}


.text_block .fancy_gallery .row
{
    margin-bottom: -20px;
    margin-left: -20px;
}

.text_block .fancy_gallery .row > *
{
    width: calc(14.285% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}

.text_block .fancy_gallery .row > *.big_w
{
    width: calc(100% - 20px);
}

.text_block .fancy_gallery .image
{
    color: currentColor;

    position: relative;

    display: block;
    overflow: hidden;

    height: 107px;

    text-decoration: none;

    background: #ddd;
}

.text_block .fancy_gallery .image.big_w
{
    height: auto;
    padding-bottom: 44.87%;
}

.text_block .fancy_gallery .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100% !important;
    margin: 0;

    object-fit: cover;
}


.text_block .widgets
{
    margin-top: 55px;
    margin-bottom: 55px;
}

.text_block .widgets .row
{
    margin-bottom: -30px;
    margin-left: -30px;
}

.text_block .widgets .row > *
{
    width: calc(50% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}

.text_block .widgets .widget > * + *
{
    margin-top: 10px;
}

.text_block .widgets .title
{
    font-size: 19px;
    font-weight: 600;
}

.text_block .widgets img
{
    display: block;

    max-width: 100%;
    margin: 20px 0 0 !important;
}


.text_block b,
.text_block strong
{
    font-weight: 600;
}


.text_block a
{
    color: #0956a3;

    text-decoration: none;
}



/*-----------------
    Main slider
-----------------*/
.main_slider
{
    position: relative;

    background: #fff0;
}


.main_slider .slide
{
    position: relative;
    z-index: 3;

    overflow: hidden;
}


.main_slider .slide .bg
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.main_slider .slide .bg.loaded
{
    opacity: 0.9;
}


.main_slider .slide .cont
{
    display: flex;

    min-height: 740px;
    padding-top: 168px;
    padding-bottom: 154px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.main_slider .slide .info
{
    color: #fff;

    width: 807px;
    max-width: 100%;
}


.main_slider .slide .title
{
    font-size: 65px;
    font-weight: 600;
    line-height: 77px;
}

.main_slider .slide .title span
{
    position: relative;
    z-index: 3;

    display: inline-block;

    vertical-align: top;
}

.main_slider .slide .title span:after
{
    position: absolute;
    z-index: -1;
    bottom: 10px;
    left: 0;

    display: block;

    width: 100%;
    height: 10px;

    content: '';

    background: #0956a3;
}


.main_slider .slide .desc
{
    font-size: 24px;
    line-height: 36px;

    width: 455px;
    max-width: 100%;
    margin-top: 16px;
}


.main_slider .slide .link
{
    color: currentColor;
    font-size: 19px;
    font-weight: 500;
    line-height: 22px;

    display: inline-block;

    margin-top: 40px;
    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid #fff;
}

.main_slider .slide .link:hover
{
    color: #fff;

    border-color: #0956a3;
    background: #0956a3;
}


.main_slider .controls
{
    position: absolute;
    z-index: 9;
    bottom: 88px;
    left: 50%;

    display: flex;

    margin-left: -585px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.main_slider .controls > * + *
{
    margin-left: 10px;
}



.main_slider .socials
{
    position: absolute;
    z-index: 9;
    top: 0;
    right: 50%;

    display: flex;

    width: 34px;
    height: 100%;
    margin-right: -585px;
    padding-top: 152px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.main_slider .socials a
{
    color: #fff;

    display: flex;

    width: 34px;
    height: 34px;

    transition: opacity .2s linear;
    text-decoration: none;

    opacity: .6;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.main_slider .socials a + a
{
    margin-top: 43px;
}

.main_slider .socials .icon
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}

.main_slider .socials .telegram_link .icon
{
    width: 17px;
    height: 17px;
}

.main_slider .socials .facebook_link .icon
{
    width: 15px;
    height: 15px;
}

.main_slider .socials .vkontakte_link .icon
{
    width: 19px;
    height: 13px;
}

.main_slider .socials .instagram_link .icon
{
    width: 15px;
    height: 15px;
}

.main_slider .socials .youtube_link .icon
{
    width: 16px;
    height: 12px;
}

.main_slider .socials a:hover
{
    opacity: 1;
}



/*----------
    Help
----------*/
.help .block_head
{
    width: 387px;
    max-width: 100%;
    margin-bottom: 0;
}


.help .data
{
    width: 690px;
    max-width: calc(100% - 439px);
    margin-top: 11px;
    margin-left: auto;
    padding: 19px;

    border: 1px solid #0956a3;
}


.help .text
{
    line-height: 25px;
}


.help .stats
{
    display: flex;

    margin-top: 70px;
    margin-bottom: -24px;
    margin-left: -56px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.help .stats > *
{
    margin-bottom: 24px;
    margin-left: 56px;
}

.help .stats .val
{
    font-size: 24px;
    font-weight: 600;
    line-height: 130%;

    margin-bottom: 8px;
}

.help .stats .name
{
    color: #696969;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
    max-width: 109px;
}



/*-------------------
    Article stats
-------------------*/
.article_stats
{
    color: #0956a3;
    line-height: 25px;

    display: flex;

    margin-top: 15px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.article_stats > *
{
    display: flex;

    opacity: .6;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.article_stats > * + *
{
    margin-left: 14px;
}


.article_stats .icon
{
    display: block;

    margin-right: 6px;
}

.article_stats .date .icon
{
    width: 12px;
    height: 11px;
}

.article_stats .read_time .icon
{
    width: 9px;
    height: 13px;
}

.article_stats .views .icon
{
    width: 15px;
    height: 15px;
}

.article_stats .likes .icon
{
    width: 16px;
    height: 15px;
}



/*------------------
    Article info
------------------*/
.article_info
{
    margin-bottom: 247px;
}



/*--------------------
    Article bottom
--------------------*/
.article_bottom
{
    line-height: 25px;

    margin-bottom: 90px;
}


.article_bottom .row
{
    padding: 19px 0;

    border-top: 1px dashed #ececec;
    border-bottom: 1px dashed #ececec;

    justify-content: space-between;
    align-items: center;
    align-content: center;
}


.article_bottom .author_article
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.article_bottom .author_article .photo
{
    position: relative;

    overflow: hidden;

    width: 24px;
    height: 24px;
    margin-right: 10px;

    border-radius: 50%;
    background: #ddd;
}

.article_bottom .author_article .photo img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}

.article_bottom .author_article span
{
    max-width: calc(100% - 34px);

    opacity: .6;
}


.article_bottom .author_photo
{
    font-size: 14px;

    margin-right: auto;

    opacity: .6;
}

.article_bottom .author_article + .author_photo
{
    margin-left: 65px;
}


.article_bottom .share
{
    font-size: 14px;

    display: flex;

    margin-left: auto;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.article_bottom .like_btn
{
    display: flex;

    margin-left: 35px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.article_bottom .like_btn .icon
{
    display: block;

    width: 16px;
    height: 15px;
    margin-right: 6px;
}



/*--------------
    Comments
--------------*/
.comments .list > * + *
{
    margin-top: 70px;
}


.comments .comment
{
    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.comments .comment .avatar
{
    position: relative;

    overflow: hidden;

    width: 79px;
    height: 79px;

    background: #ddd;
}

.comments .comment .avatar img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.comments .comment .avatar + *
{
    display: flex;

    width: calc(100% - 109px);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.comments .comment .author
{
    font-size: 26px;
    font-weight: 500;
    line-height: 31px;
}

.comments .comment .date
{
    font-size: 14px;
    line-height: 17px;

    opacity: .7;
}

.comments .comment .text
{
    line-height: 19px;

    margin-top: 8px;

    opacity: .8;
}


.comments .children
{
    margin-top: 35px;
    padding-left: 40px;
}



/*-----------------
    Add comment
-----------------*/
.add_comment
{
    display: flex;

    padding: 25px 0 69px;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.add_comment .avatar
{
    position: relative;

    overflow: hidden;

    width: 79px;
    height: 79px;

    background: #ddd;
}

.add_comment .avatar img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.add_comment .form
{
    width: calc(100% - 100px);
    margin-left: auto;
}



/*--------------
    Articles
--------------*/
.articles
{
    position: relative;
    z-index: 3;
}


.articles .circle_text
{
    position: absolute;
    z-index: -1;
    bottom: -88px;
    left: 50%;

    display: block;

    width: 230px;
    height: 230px;
    margin-left: -678px;

    animation: rotate360 15s infinite linear;
    pointer-events: none;
}


.articles .row
{
    margin-bottom: -30px;
    margin-left: -30px;

    align-items: stretch;
    align-content: stretch;
}

.articles .row > *
{
    width: calc(25% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}

.articles .row > *.big
{
    width: calc(100% - 30px);
}


.articles .article
{
    color: #fff;

    position: relative;

    display: block;

    text-decoration: none;
}


.articles .article .thumb
{
    position: relative;

    overflow: hidden;

    padding-bottom: 72.59%;

    background: #040404;
}

.articles .article .thumb img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    transition: opacity .2s linear;

    object-fit: cover;
}

.articles .article .thumb img.loaded
{
    opacity: .5;
}

.articles .article .thumb:before
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: linear-gradient(0deg, #0956a3 0%, rgba(9, 86, 163, 0) 100%);
}


.articles .article .name
{
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;

    position: absolute;
    z-index: 3;
    bottom: 0;
    left: 0;

    width: 100%;
    padding: 14px 20px;
}


.articles .article.big .lines
{
    position: absolute;
    z-index: 3;
    top: 2px;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    width: calc(100% - 76px);
    height: calc(100% - 80px);
    margin: auto;

    pointer-events: none;

    border: 2px solid #fff;
    border-bottom: none;
}

.articles .article.big .lines:before
{
    position: absolute;
    z-index: 3;
    bottom: 0;
    left: 0;

    display: block;

    width: 32px;
    height: 2px;

    content: '';
    pointer-events: none;

    background: #fff;
}

.articles .article.big .lines:after
{
    position: absolute;
    z-index: 3;
    bottom: 0;
    right: 0;

    display: block;

    width: calc(100% - 116px);
    height: 2px;

    content: '';
    pointer-events: none;

    background: #fff;
}

.articles .article.big .thumb
{
    padding-bottom: 41.88%;
}

.articles .article.big .thumb img.loaded
{
    opacity: 1;
}

.articles .article.big .date
{
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    position: absolute;
    z-index: 3;
    bottom: 34px;
    left: 80px;

    white-space: nowrap;
    text-transform: uppercase;

    opacity: .6;
}

.articles .article.big .name
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);

    width: 100%;
    padding: 110px 80px;
}


.articles .article:hover .thumb img
{
    opacity: 1;
}



/*----------------
    Anim title
----------------*/
.anim_title
{
    color: var(--bg);
    font-size: 90px;
    font-weight: 900;
    line-height: 140px;

    white-space: nowrap;
    letter-spacing: .05em;
    text-transform: uppercase;

    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #0956a3;
}

.anim_title > *
{
    position: relative;
}

.anim_title > * + *
{
    margin-top: -12px;

    text-align: right;
}

.anim_title div div
{
    opacity: 0;
}

.anim_title span
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    /* animation: horMove 15s infinite linear; */
}

.anim_title > * + * span
{
    right: 0;
    left: auto;
}

/* .anim_title.fast span
{
    animation: horMove 4s infinite linear;
} */



/*------------------
    Image slider
------------------*/
.image_slider .image
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 25.64%;

    text-decoration: none;

    background: #ddd;
}

.image_slider .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



/*----------------
    Activities
----------------*/
.activities
{
    position: relative;
    z-index: 3;

    padding: 120px 0;

    background: #0956a3;
}


.activities .circle_text
{
    position: absolute;
    z-index: -1;
    top: 161px;
    right: 50%;

    display: block;

    width: 230px;
    height: 230px;
    margin-right: -686px;

    animation: rotate360 15s infinite linear;
    pointer-events: none;
}


.activities .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 4px;
    bottom: 0;
    left: 50%;

    display: block;

    width: 493px;
    margin: auto 0 auto -1069px;

    transform: rotate(0deg);
    pointer-events: none;
}


.activities .block_head
{
    margin-bottom: 60px;
}

.activities .block_head .pre_title,
.activities .block_head .title
{
    color: #fff;
}


.activities .row
{
    margin-bottom: -30px;
    margin-left: -30px;

    align-items: stretch;
    align-content: stretch;
}

.activities .row > *
{
    width: calc(25% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}


.activities .item
{
    display: flex;
    flex-direction: column;

    padding: 20px 30px 25px;

    background: #fff;
}


.activities .thumb
{
    display: flex;

    height: 144px;
    margin-bottom: 24px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.activities .thumb img
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}


.activities .name
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;
}

.activities .desc
{
    color: #696969;
    line-height: 25px;

    margin-top: 4px;

    flex: 1 0 auto;
}


.activities .link
{
    color: #0956a3;
    font-weight: 500;
    line-height: 19px;

    margin-top: 21px;

    text-transform: uppercase;
}

.activities .link a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}



/*------------
    Why we
------------*/
.why_we
{
    position: relative;
    z-index: 3;
}


.why_we .circle_arrows
{
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -140px;

    display: block;

    width: 493px;
    margin-right: -1100px;

    transform: rotate(0deg);
    pointer-events: none;
}


.why_we .block_head
{
    margin-bottom: 10px !important;
}


.why_we .cont > .row
{
    align-items: stretch;
    align-content: stretch;
}



.why_we .data
{
    position: relative;

    width: calc(100% - 540px);
    padding: 0 20px 19px 20px;

    border-bottom: 1px solid;
}

.why_we .data:before
{
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;

    width: 1px;
    height: calc(100% - 43px);

    content: '';

    background: var(--text_color);
}

.why_we .data:after
{
    position: absolute;
    top: -38px;
    right: 0;

    display: block;

    width: calc(100% - 294px);
    height: 1px;

    content: '';

    background: var(--text_color);
}


.why_we .data .desc
{
    font-size: 18px;
    line-height: 26px;

    margin-bottom: 55px;
}


.why_we .data .row
{
    margin-bottom: -50px;
    margin-left: -50px;
}

.why_we .data .row > *
{
    width: calc(50% - 50px);
    margin-bottom: 50px;
    margin-left: 50px;
}


.why_we .data .item
{
    color: #696969;
    font-weight: 300;
    line-height: 25px;
}

.why_we .data .item .icon
{
    color: #0956a3;

    display: block;

    width: 23px;
    height: 23px;
    margin-bottom: 14px;
}



.why_we .about
{
    color: #fff;

    position: relative;

    width: 540px;
    max-width: 100%;
    margin-left: auto;
    padding: 0 20px 20px 40px;

    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
}

.why_we .about:before
{
    position: absolute;
    z-index: -1;
    top: -60px;
    left: 0;

    display: block;

    width: calc(100% + (100vw - 1170px) / 2);
    height: calc(100% + 121px);

    content: '';

    background: #0956a3;
}

.why_we .about:after
{
    position: absolute;
    top: -38px;
    left: 0;

    display: block;

    width: calc(100% + 1px);
    height: 38px;

    content: '';

    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
}


.why_we .about .title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    margin-bottom: 16px;
}

.why_we .about .desc
{
    line-height: 25px;
}


.why_we .how_donate
{
    margin-top: 117px;
}

.why_we .how_donate li
{
    line-height: 25px;

    position: relative;

    display: block;
    overflow: hidden;

    padding-left: 17px;

    list-style-type: none;
}

.why_we .how_donate li + li
{
    margin-top: 12px;
}

.why_we .how_donate li:before
{
    position: absolute;
    top: 10px;
    left: 0;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: currentColor;
}



/*-----------------
    Stats block
-----------------*/
.stats_block .row
{
    margin-bottom: -72px;
    margin-left: -72px;
}

.stats_block .row > *
{
    width: calc(33.333% - 72px);
    margin-bottom: 72px;
    margin-left: 72px;
}


.stats_block .item .val
{
    color: #0956a3;
    font-size: 50px;
    font-weight: 800;
    line-height: 85px;

    margin-bottom: 20px;

    white-space: nowrap;
}


.stats_block .item .tooltip
{
    top: -8px;

    margin-left: 8px;
}


.stats_block .item .desc
{
    font-size: 24px;
    line-height: 36px;
}

.stats_block .item .desc a
{
    color: #0956a3;

    text-decoration: none;
}



/*-------------
    Clients
-------------*/
.clients
{
    position: relative;
    z-index: 3;

    padding: 100px 0;

    background: #0956a3;
}


.clients .circle_arrows
{
    position: absolute;
    z-index: -1;
    bottom: -78px;
    left: 50%;

    display: block;

    width: 419px;
    margin-left: -1053px;

    transform: rotate(0deg);
    pointer-events: none;
}


.clients .block_head
{
    margin-bottom: 60px;
}

.clients .block_head .pre_title,
.clients .block_head .title
{
    color: #fff;
}


.clients .vertical_title
{
    color: #0956a3;
    font-size: 72px;
    font-weight: 900;
    line-height: calc(100% + 13px);

    position: absolute;
    top: -216px;
    right: 50%;

    margin-right: -846px;

    white-space: nowrap;
    letter-spacing: .05em;
    text-transform: uppercase;
    pointer-events: none;

            writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
}

.clients .vertical_title div:first-child
{
    margin-top: 288px;
}

.clients .vertical_title span
{
    color: var(--bg);

    -webkit-text-stroke-color: #0956a3;
}


.clients .row
{
    margin-bottom: -20px;
    margin-left: -20px;
}

.clients .row > *
{
    width: calc(14.285% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.clients .item
{
    display: flex;

    height: 100px;
    padding: 16px;

    background: #fff;
    box-shadow: 0 4px 12px rgba(13, 35, 67, .02);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.clients .item img
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}



/*-------------
    Reviews
-------------*/
.reviews .swiper-container
{
    overflow: visible !important;
}

.reviews .swiper-container .slide
{
    visibility: hidden;

    transition: opacity .2s linear, visibility .2s linear;
    pointer-events: none;

    opacity: 0;
}

.reviews .swiper-container .slide.visible
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


.reviews .swiper-button-next,
.reviews .swiper-button-prev
{
    color: #0956a3;

    position: absolute;

    display: flex;

    width: 36px;
    height: 36px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.reviews .swiper-button-next
{
    right: -72px;
    left: auto;
}

.reviews .swiper-button-prev
{
    right: auto;
    left: -72px;
}


.reviews .review
{
    display: flex;

    padding: 30px;

    background: #fafafb;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.reviews .review .author .logo
{
    margin-bottom: 20px;
}

.reviews .review .author .logo img
{
    display: block;

    max-width: 100%;
    max-height: 56px;
}


.reviews .review .author .date
{
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
}

.reviews .review .author .name
{
    font-size: 18px;
    font-weight: 600;
    line-height: 21px;

    margin-top: 11px;
}

.reviews .review .author .post
{
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    margin-top: 6px;
}


.reviews .review .text_block
{
    color: #696969;

    width: calc(100% - 198px);
}


.reviews .thumbs
{
    display: flex;

    margin-top: 23px;
    margin-bottom: -13px;
    margin-left: -13px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.reviews .thumbs > *
{
    width: calc(12.5% - 13px);
    margin-bottom: 13px;
    margin-left: 13px;
}


.reviews .thumbs button
{
    display: flex;

    height: 86px;

    background: #fafafb;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.reviews .thumbs button img
{
    display: block;

    max-width: 100%;
    max-height: 100%;

    opacity: .66;
}



/*--------------
    Map wrap
--------------*/
.map_wrap .explanations
{
    display: flex;

    margin-bottom: 10px;
    margin-left: -20px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.map_wrap .explanations > *
{
    font-size: 18px;
    line-height: 26px;

    display: flex;

    margin-bottom: 20px;
    margin-left: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.map_wrap .explanations .icon
{
    display: block;

    width: 22px;
    height: 32px;
    margin-right: 10px;

    --color2: #fff;
}

.map_wrap .explanations .icon.color1
{
    color: #0956a3;
}

.map_wrap .explanations .icon.color2
{
    color: #8ab2d5;
}

.map_wrap .explanations .icon.color3
{
    color: #b1b5b9;
}



.map_wrap .map
{
    position: relative;

    overflow: hidden;

    height: 700px;
}

.map_wrap .map #map
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background: #ddd;
}


.map_wrap .search
{
    position: absolute;
    z-index: 9;
    top: 20px;
    right: 20px;
    left: auto;

    width: 300px;
    max-width: calc(100% - 40px);
    height: 50px;
}


.map_wrap .search form
{
    position: relative;
}

.map_wrap .search form ::-webkit-input-placeholder
{
    color: rgba(51, 51, 51, .3);
}

.map_wrap .search form :-moz-placeholder
{
    color: rgba(51, 51, 51, .3);
}

.map_wrap .search form :-ms-input-placeholder
{
    color: rgba(51, 51, 51, .3);
}


.map_wrap .search form > .icon
{
    position: absolute;
    z-index: 5;
    top: 0;
    bottom: 0;
    left: 18px;

    width: 14px;
    height: 14px;
    margin: auto;

    pointer-events: none;
}


.map_wrap .search form .input
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: var(--font_size);

    display: block;

    width: 100%;
    height: 50px;
    padding: 0 19px 0 41px;

    border: 1px solid #000;
    background: #fff;
}


.map_wrap .search .datalist
{
    position: absolute;
    top: calc(100% - 1px);
    left: 0;

    display: none;
    overflow: auto;

    width: 100%;
    max-height: 397px;

    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
    background: #fff;

    scrollbar-color: #000 #fff;
}

.map_wrap .search .datalist::-webkit-scrollbar
{
    width: 5px;
    height: 5px;

    border: 1px solid #000;
    border-right: none;
    background-color: #fff;
}

.map_wrap .search .datalist::-webkit-scrollbar-thumb
{
    background-color: #000;
}


.map_wrap .map .accordion_item
{
    border: none;
    border-top: 1px solid #000;
}

.map_wrap .map .accordion_item + .accordion_item
{
    margin-top: 0;
}


.map_wrap .map .accordion_item .head
{
    display: flex;

    padding: 11px 15px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.map_wrap .map .accordion_item .head .check
{
    display: none;

    width: 14px;
    height: 14px;
    margin-top: 1px;
    margin-right: 10px;

    border: 1px solid #0956a3;
    border-radius: 50%;
    background: #0956a3;
    box-shadow: inset 0 0 0 2px #fff;
}


.map_wrap .map .accordion_item .head .title
{
    font-size: 16px;
    font-weight: normal;
    line-height: 25px;
}


.map_wrap .map .accordion_item .head .icon
{
    color: #0956a3;

    right: 15px;

    width: 14px;
    height: 14px;

    transform: rotate(-90deg);
}


.map_wrap .map .accordion_item .data
{
    font-size: 14px;
    line-height: 130%;

    margin: 0;
    padding: 4px 15px 15px 39px;
}

.map_wrap .map .accordion_item .data > * + *
{
    margin-top: 12px;
}


.map_wrap .map .accordion_item.active .head .title
{
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
}

.map_wrap .map .accordion_item.active .head .check
{
    display: block;
}



/*---------------------
    Selected object
---------------------*/
.selected_object
{
    margin-top: 90px;
}


.selected_object .name
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);

    position: relative;

    margin-bottom: 40px;
    padding-left: 69px;
}

.selected_object .name .icon
{
    color: #0956a3;

    position: absolute;
    top: 9px;
    left: 7px;

    display: block;

    width: 35px;
    height: 49px;
}


.selected_object .socials
{
    display: flex;

    margin-top: 30px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.selected_object .socials a
{
    color: #0956a3;

    display: flex;

    width: 30px;
    height: 30px;

    text-decoration: none;

    border-radius: 50%;
    background: rgba(0, 0, 0, .05);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.selected_object .socials a + a
{
    margin-left: 10px;
}

.selected_object .socials .icon
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}

.selected_object .socials .telegram_link .icon
{
    width: 14px;
    height: 14px;
}

.selected_object .socials .facebook_link .icon
{
    width: 13px;
    height: 13px;
}

.selected_object .socials .vkontakte_link .icon
{
    width: 16px;
    height: 10px;
}

.selected_object .socials .instagram_link .icon
{
    width: 13px;
    height: 13px;
}

.selected_object .socials .youtube_link .icon
{
    width: 14px;
    height: 10px;
}



.selected_object .events
{
    margin-top: 120px;
}


.selected_object .events .block_title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    position: relative;

    margin-bottom: 30px;
    padding-left: 58px;
}

.selected_object .events .block_title .icon
{
    color: #0956a3;

    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 38px;
    height: 38px;
}



/*----------------
    Eco center
----------------*/
.eco_center
{
    position: relative;
    z-index: 3;
}


.eco_center .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -339px;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1189px;

    transform: rotate(0deg);
    pointer-events: none;
}


.eco_center .location,
.eco_center .time,
.eco_center .phone,
.eco_center .post,
.eco_center .requisites
{
    font-size: 18px;
    line-height: 26px;

    position: relative;

    padding-left: 34px;
}

.eco_center .time,
.eco_center .phone,
.eco_center .requisites
{
    margin-top: 10px;
}

.eco_center .post
{
    margin-top: 30px;
}


.eco_center .location b,
.eco_center .time b,
.eco_center .phone b,
.eco_center .post b,
.eco_center .requisites b
{
    font-weight: 600;
}


.eco_center .location .icon,
.eco_center .time .icon,
.eco_center .phone .icon,
.eco_center .post .icon,
.eco_center .requisites .icon
{
    color: #0956a3;

    position: absolute;
    top: 3px;
    left: 0;

    display: block;

    width: 19px;
    height: 19px;
}


.eco_center .how_to_get
{
    margin-top: 30px;
}

.eco_center .block_head + .how_to_get
{
    margin-top: 0;
}

.eco_center .how_to_get .method
{
    margin-top: 20px;
}

.eco_center .how_to_get .method > * + *
{
    margin-top: 12px;
}


.eco_center .how_to_get .name
{
    position: relative;

    padding-left: 24px;
}

.eco_center .how_to_get .name:before
{
    position: absolute;
    top: 10px;
    left: 6px;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: var(--text_color);
}


.eco_center .emails
{
    font-size: 18px;
    line-height: 26px;

    margin-top: 30px;
}

.eco_center .emails > * + *
{
    margin-top: 10px;
}

.eco_center .emails a
{
    color: #0956a3;

    white-space: nowrap;
    text-decoration: none;
}



.eco_center .reference
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);

    margin-top: 60px;
    padding: 39px 87px;

    text-align: center;

    border: 1px solid #0956a3;
}



.eco_center .image
{
    position: relative;

    overflow: hidden;

    height: 500px;
    margin-top: 60px;

    background: #ddd;
}

.eco_center .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



/*----------------
    How donate
----------------*/
.how_donate
{
    position: relative;
    z-index: 3;
}


.how_donate .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -98px;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1189px;

    transform: rotate(0deg);
    pointer-events: none;
}


.how_donate .row
{
    align-items: stretch;
    align-content: stretch;
}


.how_donate .data
{
    display: flex;
    flex-direction: column;

    width: 540px;
    max-width: calc(50% - 20px);
}


.how_donate .bottom
{
    display: flex;

    margin-top: auto;
    margin-bottom: 33px;
    margin-left: -40px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.how_donate .bottom > *
{
    margin-bottom: 20px;
    margin-left: 40px;
}


.how_donate .donate_link
{
    color: #0956a3;
    font-size: 15px;
    font-weight: 500;
    line-height: 18px;

    display: inline-block;

    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid #0956a3;
}

.how_donate .donate_link:hover
{
    color: #fff;

    background: #0956a3;
}


.how_donate .video_link
{
    color: #0956a3;
    line-height: 25px;

    display: flex;

    text-decoration: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.how_donate .video_link .icon
{
    display: block;

    width: 48px;
    height: 48px;
    margin-right: 25px;
}

.how_donate .video_link .sep
{
    display: block;

    width: 12px;
    height: 1px;
    margin-right: 10px;

    background: currentColor;
}


.how_donate .image
{
    position: relative;

    width: 540px;
    max-width: calc(50% - 20px);
    margin-left: auto;
}

.how_donate .image div
{
    position: relative;

    overflow: hidden;

    padding-bottom: 79.26%;

    background: #ddd;
}

.how_donate .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.how_donate .image .video_link
{
    color: #fff;

    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    background: linear-gradient(0deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .6));

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}



/*-----------------
    Info blocks
-----------------*/
.info_blocks .row
{
    display: flex;

    padding-bottom: 1px;
    padding-left: 1px;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.info_blocks .row > *
{
    width: calc(50% + 1px);
    margin-bottom: -1px;
    margin-left: -1px;
    padding: 19px 35px 31px 19px;

    border: 1px solid #0956a3;
}


.info_blocks .title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    margin-bottom: 20px;
}


.info_blocks .text_block
{
    color: #696969;
    font-size: var(--font_size);
    line-height: 25px;
}

.info_blocks .text_block li
{
    padding-left: 21px;
}

.info_blocks .col_right .text_block li + li
{
    margin-top: 20px;
}

.info_blocks .text_block li:before
{
    top: 0;
    bottom: 0;
    left: 0;

    margin: auto;

    background: #0956a3;
}


.info_blocks .link
{
    margin-top: 60px;

    text-align: center;
}


.info_blocks .link a
{
    color: #0956a3;
    font-size: 15px;
    font-weight: 500;
    line-height: 18px;

    display: inline-block;

    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid #0956a3;
}

.info_blocks .link a:hover
{
    color: #fff;

    background: #0956a3;
}



/*------------
    Cities
------------*/
.cities
{
    position: relative;
    z-index: 3;

    padding: 120px 0;

    background: #0956a3;
}


.cities .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -140px;
    right: 50%;

    display: block;

    width: 493px;
    margin-right: -1140px;

    transform: rotate(0deg);
    pointer-events: none;
}


.cities .row
{
    padding-bottom: 1px;
    padding-left: 1px;

    align-items: stretch;
    align-content: stretch;
}

.cities .row > *
{
    width: calc(25% + 1px);
    margin-bottom: -1px;
    margin-left: -1px;
}


.cities .btn
{
    color: #fff;
    font-size: 18px;
    line-height: 26px;

    display: flex;

    min-height: 68px;
    padding: 17px;

    border: 1px solid;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.cities .btn .icon
{
    display: block;

    width: 22px;
    height: 32px;
    margin-right: 8px;

    --color2: #0956a3;
}



/*---------
    FAQ
---------*/
.faq
{
    position: relative;
    z-index: 3;
}


.faq .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 125px;
    left: 50%;

    display: block;

    width: 493px;
    height: 470px;
    margin-left: -1170px;

    transform: rotate(0deg);
    pointer-events: none;
}


.faq .circle_arrows2
{
    position: absolute;
    z-index: -1;
    top: auto;
    right: 50%;
    bottom: 1056px;
    left: auto;

    display: block;

    width: 668px;
    height: 638px;
    margin-right: -1206px;
    margin-left: 0;

    transform: rotate(0deg);
    pointer-events: none;
}


.faq .block_title
{
    font-size: 35px;
    font-weight: 600;
    line-height: 41px;

    margin-bottom: 30px;
}


.faq .text_block
{
    color: #000;
    font-size: 16px;
    line-height: 164.9%;
}



/*-------------
    Charity
-------------*/
.charity
{
    position: relative;
    z-index: 3;
}


.charity .circle_text
{
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -95px;

    display: block;

    width: 230px;
    height: 230px;
    margin-right: -680px;

    animation: rotate360 15s infinite linear;
    pointer-events: none;
}


.charity .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -260px;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1132px;

    transform: rotate(0deg);
    pointer-events: none;
}



/*----------
    Blog
----------*/
.blog
{
    position: relative;
    z-index: 3;
}


.blog .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 456px;
    left: 50%;

    display: block;

    width: 574px;
    height: 547px;
    margin-left: -1133px;

    transform: rotate(0deg);
    pointer-events: none;
}

.blog .circle_arrows.top
{
    top: -140px;

    margin-left: -1140px;
}


.blog .categories
{
    margin-bottom: 30px;
    padding-bottom: 29px;

    border-bottom: 1px solid;
}


.blog .categories .row
{
    margin-bottom: -20px;
    margin-left: -20px;
}

.blog .categories .row > *
{
    margin-bottom: 20px;
    margin-left: 20px;
}


.blog .categories a
{
    color: #0956a3;
    font-size: 15px;
    font-weight: 500;
    line-height: 18px;

    display: block;

    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    text-decoration: none;

    border: 1px solid #0956a3;
}

.blog .categories a:hover,
.blog .categories a.active
{
    color: #fff;

    background: #0956a3;
}


.blog .mob_categries
{
    display: none;

    margin-bottom: 30px;
    padding-bottom: 29px;

    border-bottom: 1px solid;
}


.blog .mob_categries .btn
{
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    line-height: 18px;

    position: relative;

    display: block;

    width: 100%;
    height: 50px;
    padding: 0 60px 0 20px;

    text-align: left;

    background: #0956a3;
}

.blog .mob_categries .btn .icon
{
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;

    display: block;

    width: 16px;
    height: 16px;
    margin: auto;

    transition: transform .2s linear;
    transform: rotate(-90deg);
}

.blog .mob_categries .btn.active .icon
{
    transform: rotate(90deg);
}


.blog .mob_categries .mini_modal
{
    width: 100%;
    margin-top: 1px;
    padding: 14px 20px;

    background: #0956a3;
}

.blog .mob_categries .mini_modal a
{
    color: #fff;

    display: block;

    padding: 6px 0;

    text-decoration: none;
}


.blog .banner
{
    color: #fff;

    position: relative;
    z-index: 3;

    display: block;

    margin-bottom: 30px;

    text-align: center;
    text-decoration: none;
}


.blog .banner .thumb
{
    position: absolute;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
    height: 100%;

    background: #0956a3;
}

.blog .banner .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.blog .banner .thumb img.loaded
{
    opacity: .1;
}


.blog .banner .info
{
    position: relative;
    z-index: 3;

    display: flex;

    height: 350px;
    padding: 40px;

    text-align: center;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.blog .banner .title
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);

    position: relative;

    padding: 0 88px;
}

.blog .banner .title .icon
{
    position: absolute;
    top: 4px;
    bottom: 0;
    left: 0;

    display: block;

    width: 58px;
    height: 13px;
    margin: auto;
}

.blog .banner .title .icon ~ .icon
{
    right: 0;
    left: auto;

    transform: rotate(180deg);
}


.blog .banner .desc
{
    font-size: 19px;
    line-height: 28px;

    width: 100%;
    margin-top: 14px;

    opacity: .7;
}



.blog .grid_wrap
{
    position: relative;
    z-index: 3;
}


.blog .circle_text
{
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -88px;

    display: block;

    width: 230px;
    height: 230px;
    margin-right: -678px;

    animation: rotate360 15s infinite linear;
    pointer-events: none;
}


.blog .grid
{
    overflow: hidden;

    margin-bottom: -30px;
    margin-left: -30px;
}

.blog .grid > *
{
    width: calc(33.333% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}

.blog .grid > *.min_w
{
    width: calc(25% - 30px);
}

.blog .grid > *.middle_w
{
    width: calc(50% - 30px);
}

.blog .grid > *.big_w
{
    width: calc(66.666% - 30px);
}


.blog .article
{
    position: relative;

    overflow: hidden;
}


.blog .article .video_icon
{
    color: #f00;

    position: absolute;
    z-index: 3;
    top: 20px;
    right: 20px;

    width: 20px;
    height: 14px;
}


.blog .article .thumb
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    height: 350px;

    text-decoration: none;

    background: #ddd;
}

.blog .article .thumb:after
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';
    pointer-events: none;

    background: linear-gradient(0deg, #0956a3 -16.08%, rgba(9, 86, 163, 0) 69.32%);
}

.blog .article.middle_h .thumb
{
    height: 450px;
}

.blog .article.big_h .thumb
{
    height: 500px;
}

.blog .article.biggest_h .thumb
{
    height: 600px;
}

.blog .article .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.blog .article .info
{
    color: #fff;

    position: absolute;
    top: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 100%;
    padding: 20px;

    pointer-events: none;

    justify-content: flex-start;
    align-items: flex-end;
    align-content: flex-end;
    flex-wrap: wrap;
}

.blog .article .info > *
{
    width: 100%;
}


.blog .article .head
{
    position: relative;

    display: flex;

    margin-bottom: 11px;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.blog .article .category
{
    line-height: 25px;

    margin-right: auto;
}

.blog .article .category a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
    pointer-events: auto;
}


.blog .article .reading_time
{
    line-height: 25px;

    display: flex;

    margin-left: auto;

    opacity: .6;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.blog .article .reading_time.white
{
    opacity: 1;
}

.blog .article .reading_time .icon
{
    display: block;

    width: 9px;
    height: 13px;
    margin-right: 6px;
}


.blog .article .date
{
    line-height: 25px;

    display: flex;

    margin-left: 15px;

    opacity: .6;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.blog .article .date.white
{
    opacity: 1;
}

.blog .article .date .icon
{
    display: block;

    width: 12px;
    height: 11px;
    margin-right: 6px;
}


.blog .article .name
{
    font-size: 35px;
    font-weight: 600;
    line-height: calc(100% + 6px);
}

.blog .article .name a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
    pointer-events: auto;
}


.blog .article .exp
{
    line-height: 25px;

    margin-top: 10px;

    opacity: .9;
}


.blog .article .link
{
    color: #fff;
    font-weight: 500;
    line-height: 19px;

    display: flex;

    margin-top: 80px;

    transition: opacity .2s linear;
    white-space: nowrap;
    text-decoration: none;
    text-transform: uppercase;
    pointer-events: auto;

    opacity: 0;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.blog .article .link .icon
{
    display: block;

    width: 31px;
    height: 7px;
    margin-left: 8px;
}


.blog .article:hover .link
{
    opacity: 1;
}



.blog .article.min_w .category,
.blog .article.min_w .date
{
    font-size: 15px;
    line-height: 19px;
}

.blog .article.min_w .reading_time
{
    font-size: 12px;
    line-height: 25px;

    position: absolute;
    right: 0;
    bottom: 100%;
}

.blog .article.min_w .name
{
    font-size: 22px;
    font-weight: 600;
    line-height: 26px;
}

.blog .article.min_w .link
{
    margin-top: 60px;
}


.blog .article.middle_w .name
{
    font-size: 30px;
    font-weight: 600;
    line-height: 35px;
}


.blog .article .thumb.full_bg:after
{
    background: linear-gradient(183.7deg, #0956a3 -11.16%, rgba(9, 86, 163, 0) 31.85%), linear-gradient(0deg, #0956a3 -16.08%, rgba(9, 86, 163, 0) 69.32%);
}

.blog .article .thumb.full_bg ~ .info .head
{
    position: static;
}

.blog .article .thumb.full_bg ~ .info .head .reading_time
{
    font-size: 14px;
    line-height: 17px;

    position: absolute;
    top: 20px;
    right: 124px;

    opacity: 1;
}

.blog .article .thumb.full_bg ~ .info .head .date
{
    font-size: 14px;
    line-height: 17px;

    position: absolute;
    top: 20px;
    right: 20px;

    opacity: 1;
}

.blog .article .thumb.full_bg ~ .info .link
{
    color: #fff;
}



/*----------------------
    Become valanteur
----------------------*/
.become_valanteur .data
{
    position: relative;
    z-index: 3;

    overflow: hidden;

    padding: 39px 49px;

    border: 1px solid #0956a3;
}


.become_valanteur .text_block
{
    width: 620px;
    max-width: 100%;
}


.become_valanteur .img
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    display: block;

    height: 100%;

    pointer-events: none;
}


.become_valanteur .you_can_help
{
    position: relative;

    margin-top: 72px;
    padding: 27px 19px 21px;

    border: 1px solid #0956a3;
}


.become_valanteur .you_can_help .title
{
    font-weight: 600;
    line-height: 19px;

    position: absolute;
    top: -11px;
    left: -1px;

    display: inline-block;

    padding-right: 14px;
    padding-bottom: 5px;

    vertical-align: top;
    white-space: nowrap;
    text-transform: uppercase;

    background: var(--bg);
}



.become_valanteur .you_can_help .text_block
{
    width: 924px;
    max-width: 100%;
}

.become_valanteur .you_can_help .text_block ul
{
    column-gap: 40px;
    column-count: 2;
}

.become_valanteur .you_can_help .text_block li
{
    color: #696969;

    padding-left: 21px;

    transform: translateZ(0);

    --webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.become_valanteur .you_can_help .text_block li + li
{
    margin-top: 14px;
}

.become_valanteur .you_can_help .text_block li:before
{
    top: 11px;
    left: 0;

    background: #0956a3;
}



/*--------------------
    Contacts block
--------------------*/
.contacts_block
{
    position: relative;
    z-index: 3;
}


.contacts_block .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -380px;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1132px;

    transform: rotate(0deg);
    pointer-events: none;
}


.contacts_block .data
{
    display: flex;

    margin-top: 60px;
    padding: 30px;

    border: 1px solid #0956a3;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.contacts_block .image
{
    position: relative;

    overflow: hidden;

    width: 400px;
    height: 370px;

    background: #ddd;
}

.contacts_block .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100% !important;
    margin: 0;

    object-fit: cover;
}


.contacts_block .image + .info
{
    width: calc(100% - 430px);
}


.contacts_block .text_block
{
    color: rgba(9, 86, 163, .7);
    font-size: 19px;
    line-height: 28px;
}


.contacts_block .messengers
{
    display: flex;

    margin-top: 36px;
    margin-bottom: -12px;
    margin-left: -20px;

    white-space: nowrap;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.contacts_block .messengers > *
{
    margin-bottom: 12px;
    margin-left: 20px;
}

.contacts_block .messengers a
{
    color: var(--text_color);
    font-size: 15px;
    font-weight: 500;
    line-height: 18px;

    display: flex;

    text-decoration: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.contacts_block .messengers .icon
{
    display: block;

    width: 30px;
    height: 30px;
    margin-right: 8px;

    border-radius: 50%;
}


.contacts_block .btns
{
    display: flex;

    margin-top: 37px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.contacts_block .btns .btn
{
    color: #0956a3;
    font-weight: 500;
    line-height: 19px;

    display: block;

    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid #0956a3;
}

.contacts_block .btns .btn.table_link
{
    border-color: transparent;
}

.contacts_block .btns .btn:hover
{
    color: #fff;

    background: #0956a3;
}



/*---------------
    Join text
---------------*/
.join_text .data
{
    color: #000;
    line-height: 164.9%;

    padding: 40px;

    background: #f5f5f6;
}



/*---------------------
    Eco center text
---------------------*/
.eco_center_text .data
{
    font-size: 18px;
    line-height: 26px;

    padding: 40px;

    background: #f5f5f6;
}



/*--------------------
    Gallery slider
-------------------*/
.gallery_slider .swiper-container
{
    overflow: visible !important;
}

.gallery_slider .slide
{
    transition: opacity .2s linear;

    opacity: .2;
}

.gallery_slider .slide.visible
{
    opacity: 1;
}

.gallery_slider .swiper-button-next,
.gallery_slider .swiper-button-prev
{
    color: #0956a3;

    position: absolute;

    display: flex;

    width: 60px;
    height: 60px;

    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.gallery_slider .swiper-button-next
{
    right: 0;
    left: auto;
}

.gallery_slider .swiper-button-prev
{
    right: auto;
    left: 0;
}

.gallery_slider .swiper-button-next .icon,
.gallery_slider .swiper-button-prev .icon
{
    width: 26px;
    height: 26px;
}


.gallery_slider .image
{
    position: relative;
    z-index: 3;

    display: block;
    overflow: hidden;

    padding-bottom: 38.63%;

    background: #ddd;
}

.gallery_slider .slide.visible .image
{
    outline: 1px solid #fff;
    outline-offset: -20px;
}

.gallery_slider .image img
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.gallery_slider .thumbs
{
    display: flex;

    margin-top: 55px;
    margin-bottom: -15px;
    margin-left: -15px;

    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.gallery_slider .thumbs > *
{
    width: 80px;
    margin-bottom: 15px;
    margin-left: 15px;
}


.gallery_slider .thumbs button
{
    display: flex;

    height: 86px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.gallery_slider .thumbs button img
{
    display: block;

    max-width: 100%;
    max-height: 100%;

    opacity: .2;
}

.gallery_slider .thumbs button.active img
{
    opacity: 1;
}



/*-------------------
    For recycling
-------------------*/
.for_recycling .block_head
{
    margin-bottom: 30px !important;
}


.for_recycling .text_block
{
    width: 706px;
    max-width: calc(100% - 402px);

    opacity: .7;
}


.for_recycling .image
{
    width: 362px;
    max-width: 100%;
    margin-left: auto;
}

.for_recycling .image img
{
    display: block;

    max-width: 100%;
    margin-left: auto;
}



/*-----------------
    Conventions
-----------------*/
.сonventions
{
    position: relative;
    z-index: 3;
}


.сonventions .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -180px;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1132px;

    transform: rotate(0deg);
    pointer-events: none;
}


.сonventions .row
{
    padding-bottom: 1px;
    padding-left: 1px;

    align-items: stretch;
    align-content: stretch;
}

.сonventions .row > *
{
    width: calc(16.666% + 1px);
    margin-bottom: -1px;
    margin-left: -1px;
}


.сonventions .item
{
    color: rgba(0, 0, 0, .7);
    line-height: 25px;

    padding: 19px;

    text-align: center;

    border: 1px solid #0956a3;
}

.сonventions .item .thumb
{
    display: flex;

    height: 78px;
    margin-bottom: 10px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.сonventions .item img
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}



/*------------------
    Encyclopedia
------------------*/
.encyclopedia
{
    position: relative;
    z-index: 3;
}


.encyclopedia .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 264px;
    right: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-right: -1239px;

    transform: rotate(0deg);
    pointer-events: none;
}


.encyclopedia .block_head
{
    display: flex;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.encyclopedia .sort
{
    position: relative;
    z-index: 9;

    display: flex;

    width: 347px;
    max-width: 100%;
    margin-top: 6px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.encyclopedia .sort select
{
    display: none;
}

.encyclopedia .sort .nice-select
{
    position: relative;

    display: block;
}


.encyclopedia .sort .nice-select .current
{
    color: #000;
    font-size: 18px;
    line-height: 26px;

    position: relative;

    display: block;
    overflow: hidden;

    height: 26px;

    cursor: pointer;
    white-space: nowrap;
    text-overflow: ellipsis;
}


.encyclopedia .sort .nice-select .list
{
    position: absolute;
    z-index: 9;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;
    overflow: hidden;

    width: 347px;
    min-width: 100%;

    transition: .2s linear;

    opacity: 0;
    border: 1px solid #0956a3;
    background: rgb(255, 255, 255);
}

.encyclopedia .sort .nice-select.open .list
{
    top: calc(100% + 8px);

    visibility: visible;

    opacity: 1;
}


.encyclopedia .sort .nice-select .list .scrollbar
{
    overflow: auto;
}

.encyclopedia .sort .nice-select .list .scrollbar::-webkit-scrollbar
{
    width: 5px;
    height: 5px;
}


.encyclopedia .sort .nice-select .list .list_item
{
    padding: 12px 19px;

    cursor: pointer;
    transition: .2s linear;
}

.encyclopedia .sort .nice-select .list .list_item:empty
{
    display: none;
}

.encyclopedia .sort .nice-select .list .list_item:hover,
.encyclopedia .sort .nice-select .list .list_item.selected
{
    color: #fff;

    background: #0956a3;
}


.encyclopedia .sort .icon
{
    color: #000;

    display: block;

    width: 20px;
    height: 32px;
    margin-left: 15px;

    transform: rotate(-90deg);
}


.encyclopedia .categories
{
    display: none;
}


.encyclopedia .section + .section
{
    margin-top: 60px;
}


.encyclopedia .letter,
.encyclopedia .category_name
{
    color: #000;
    font-size: 24px;
    line-height: 28px;

    margin-bottom: 8px;
}


.encyclopedia .row
{
    margin-bottom: -40px;
    margin-left: -40px;
}

.encyclopedia .row > *
{
    width: calc(25% - 40px);
    margin-bottom: 40px;
    margin-left: 40px;
    text-decoration: none;
}


.encyclopedia .item .thumb
{
    display: flex;

    height: 181px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.encyclopedia .item .thumb img
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}


.encyclopedia .item .name
{
    color: #000;
    font-size: 19px;
    line-height: 28px;

    margin-top: 30px;
}



/*---------------
    Our stats
---------------*/
.our_stats .row
{
    margin-bottom: -72px;
    margin-left: -30px;
    padding-top: 38px;
}

.our_stats .row > *
{
    width: calc(25% - 30px);
    margin-bottom: 72px;
    margin-left: 30px;
}


.our_stats .item
{
    color: #0956a3;
    line-height: 19px;

    position: relative;

    padding: 66px 18px 13px;

    text-align: center;

    border: 1px solid #0956a3;
}

.our_stats .item .val
{
    font-size: 72px;
    font-weight: bold;
    line-height: 85px;

    position: absolute;
    top: -45px;
    left: 50%;

    padding: 0 18px;

    transform: translateX(-50%);
    white-space: nowrap;

    background: var(--bg);
}



/*---------------------
    Subscribe block
---------------------*/
.subscribe_block
{
    position: relative;
    z-index: 3;

    padding: 154px 0 120px;

    background: #0956a3;
}


.subscribe_block .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -112px;
    right: 50%;
    bottom: 0;

    display: block;

    width: 493px;
    height: 470px;
    margin-right: -1140px;

    transform: rotate(0deg);
    pointer-events: none;
}


.subscribe_block .data
{
    position: relative;

    display: flex;

    padding: 19px;

    border: 1px solid #fff;
    border-top: none;
    border-left: none;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.subscribe_block .data:before
{
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;

    width: 1px;
    height: calc(100% - 32px);

    content: '';

    background: #fff;
}


.subscribe_block .block_head
{
    position: absolute;
    top: -24px;
    left: -1px;

    overflow: hidden;

    width: calc(100% + 2px);
    margin: 0;
}

.subscribe_block .block_head .title
{
    color: #fff;

    position: relative;

    display: inline-block;

    vertical-align: top;
}

.subscribe_block .block_head .title:after
{
    position: absolute;
    top: 24px;
    left: 100%;

    display: block;

    width: 100vw;
    height: 1px;
    margin-left: 20px;

    content: '';

    background: currentColor;
}

.subscribe_block .block_head .desc
{
    color: #fff;

    margin-top: 10px;
    padding-left: 20px;
}


.subscribe_block .form
{
    width: 339px;
    max-width: calc(50% - 20px);
    margin-top: 102px;

    --form_bg_color: transparent;
    --form_placeholder_color: rgba(255,255,255,.7);
}

.subscribe_block .form .line
{
    margin-bottom: 20px;
}

.subscribe_block .form .input
{
    color: #fff;
    font-size: 18px;

    height: 50px;
    padding: 0 11px;
}

.subscribe_block .form .submit
{
    padding-top: 35px;

    justify-content: flex-start;
}

.subscribe_block .form .submit_btn
{
    color: #fff;

    border: 1px solid #fff;
}

.subscribe_block .form .submit_btn:hover
{
    color: #0956a3;

    background: #fff;
}


.subscribe_block .image
{
    position: relative;

    overflow: hidden;

    width: 520px;
    max-width: calc(50% - 20px);
    margin-left: auto;
    padding-bottom: 328px;

    background: #ddd;
}

.subscribe_block .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



/*------------------
    Presentation
------------------*/
.presentation .data
{
    position: relative;
    z-index: 3;

    overflow: hidden;

    padding: 38px 49px 70px;

    border: 1px solid #0956a3;
}


.presentation .info
{
    width: 680px;
    max-width: 100%;
}


.presentation .title
{
    font-size: 35px;
    font-weight: 600;
    line-height: calc(100% + 6px);

    margin-bottom: 15px;
}


.presentation .desc
{
    color: #000;
    font-size: 16px;
    line-height: 164.9%;
}


.presentation .download
{
    margin-top: 24px;
}

.presentation .download a
{
    color: #0956a3;
    font-size: var(--font_size);
    font-weight: 600;
    line-height: 19px;

    position: relative;

    padding-left: 26px;

    text-decoration: none;
    text-transform: uppercase;
}

.presentation .download .icon
{
    position: absolute;
    top: 1px;
    left: 0;

    display: block;

    width: 16px;
    height: 16px;
}


.presentation .img
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    display: block;

    height: 100%;

    pointer-events: none;
}



/*---------------
    How where
---------------*/
.how_where .row
{
    padding-bottom: 1px;
    padding-left: 1px;

    align-items: stretch;
    align-content: stretch;
}


.how_where .col
{
    width: calc(50% + 1px);
    margin-bottom: -1px;
    margin-left: -1px;
    padding: 19px;

    border: 1px solid #0956a3;
}


.how_where .title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    margin-bottom: 20px;
}


.how_where .text_block li
{
    font-size: 16px;
    line-height: 25px;

    padding-left: 21px;
}

.how_where .text_block li + li
{
    margin-top: 12px;
}

.how_where .text_block li:before
{
    top: 2px;
    bottom: 0;
    left: 0;

    margin: auto;

    background: #0956a3;
}



/*-------------------
    General rules
-------------------*/
.general_rules .row
{
    padding-bottom: 1px;
    padding-left: 1px;

    align-items: stretch;
    align-content: stretch;
}


.general_rules .col
{
    width: calc(50% + 1px);
    margin-bottom: -1px;
    margin-left: -1px;
    padding: 19px;

    border: 1px solid #0956a3;
}


.general_rules .title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    margin-bottom: 20px;
}


.general_rules .text_block li
{
    color: #696969;
    font-size: 16px;
    line-height: 25px;

    padding-left: 21px;
}

.general_rules .text_block li + li
{
    margin-top: 12px;
}

.general_rules .text_block li:before
{
    top: 2px;
    bottom: 0;
    left: 0;

    margin: auto;

    background: #0956a3;
}



/*-------------------
    Don't give up
-------------------*/
.dont_give_up
{
    position: relative;
    z-index: 3;

    padding: 60px 0 84px;

    background: #0956a3;
}


.dont_give_up .circle_arrows
{
    position: absolute;
    z-index: -1;
    bottom: -235px;
    left: 50%;

    display: block;

    width: 493px;
    height: 470px;
    margin-left: -1118px;

    transform: rotate(0deg);
    pointer-events: none;
}


.dont_give_up .title
{
    color: #0956a3;
    font-size: 72px;
    font-weight: 900;
    line-height: calc(100% + 13px);

    letter-spacing: .05em;
    text-transform: uppercase;

    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
}

.dont_give_up .title span
{
    display: block;

    margin-left: 100px;
}


.dont_give_up .text_block
{
    color: #fff;

    width: 570px;
    max-width: 100%;
    margin-left: auto;
}



/*----------------
    On youtube
----------------*/
.on_youtube iframe
{
    display: block;

    width: 100%;
    height: 500px;
}


.on_youtube .link
{
    margin-top: 60px;

    text-align: center;
}

.on_youtube .link a
{
    color: #0956a3;
    font-weight: 500;
    line-height: 19px;

    display: inline-block;

    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid #0956a3;
}

.on_youtube .link a:hover
{
    color: #fff;

    background: #0956a3;
}



/*---------------------
    List categories
---------------------*/
.list_categories .cols
{
    display: flex;

    border: 1px solid #0956a3;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: nowrap;
    border-right:none;
}


.list_categories .col
{
    width: 100%;
    border-right: 1px solid #0956a3;
}


.list_categories .head
{
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;

    display: flex;

    padding: 19px;

    border-bottom: 1px solid #0956a3;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.list_categories .head.green
{
    color: #299541;
}

.list_categories .head.red
{
    color: #952929;
}

.list_categories .head .icon
{
    display: block;

    width: 32px;
    height: 32px;
    margin-right: 15px;
}


.list_categories .data
{
    /*padding: 19px;*/
}
.list_categories .item{
    padding:19px;
}

.list_categories .item + .item
{
   /* margin-top: 20px;*/
    padding-top: 19px;

    border-top: 1px solid #0956a3;
}


.list_categories .item .title
{
    line-height: 25px;
}


.list_categories .item ul
{
    margin-top: 8px;
}

.list_categories .item li
{
    line-height: 25px;

    position: relative;

    display: block;

    padding-left: 28px;
}

.list_categories .accept .item li
{
    background: url(../images/ic_accept.svg) 0 3px/20px 20px no-repeat;
}

.list_categories .not_accept .item li
{
    background: url(../images/ic_not_accept.svg) 0 3px/20px 20px no-repeat;
}

.list_categories .prepare .item li
{
    background: url(../images/ic_prepare.svg) 0 3px/20px 20px no-repeat;
}

.list_categories .item li + li
{
    margin-top: 8px;
}



/*-----------------
    List cities
-----------------*/
.list_cities .row
{
    padding-bottom: 1px;
    padding-left: 1px;

    align-items: stretch;
    align-content: stretch;
}

.list_cities .row > *
{
    width: calc(33.333% + 1px);
    margin-bottom: -1px;
    margin-left: -1px;
}


.list_cities a
{
    color: var(--text_color);
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    display: flex;

    padding: 19px;

    text-align: center;
    text-decoration: none;

    border: 1px solid #0956a3;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.list_cities a .icon
{
    display: block;

    width: 26px;
    height: 35px;
    margin-right: 15px;
}



/*-------------
    History
-------------*/
.history
{
    position: relative;
    z-index: 3;
}


.history .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 300px;
    right: 50%;

    display: block;

    width: 668px;
    height: 638px;
    margin-right: -1260px;

    transform: rotate(0deg);
    pointer-events: none;
}


.history .accordion_item
{
    border: none;
}


.history .accordion_item .head
{
    padding: 0 80px 0 0;
}


.history .accordion_item .head .title
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);
}


.history .accordion_item .head .icon
{
    color: #0956a3;

    right: 4px;

    width: 32px;
    height: 32px;

    transition: transform .2s linear;
    transform: rotate(-90deg);
}


.history .accordion_item .data
{
    margin-top: 32px;
    padding: 0;
}


.history .accordion_item.active .head .icon
{
    transform: rotate(90deg);
}



/*----------------------
    Info block image
----------------------*/
.info_blocks_image
{
    position: relative;
    z-index: 3;
}


.info_blocks_image .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 207px;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1140px;

    transform: rotate(0deg);
    pointer-events: none;
}

.info_blocks_image .circle_arrows2
{
    top: -84px;
}


.info_blocks_image .item
{
    display: flex;

    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.info_blocks_image .item + .item
{
    margin-top: 60px;
}


.info_blocks_image .image
{
    position: relative;

    overflow: hidden;

    width: 440px;
    min-height: 400px;

    background: #ddd;
}

.info_blocks_image .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.info_blocks_image .data
{
    display: flex;
    flex-direction: column;

    width: calc(100% - 470px);
    min-height: 400px;
    padding: 39px 39px 39px 0;

    border: 1px solid #0956a3;
    border-left: none;
}


.info_blocks_image .title
{
    color: #0956a3;
    font-size: 35px;
    font-weight: 600;
    line-height: calc(100% + 6px);

    margin-bottom: 12px;
}


.info_blocks_image .text_block.margin
{
    margin-bottom: 72px;
}

.info_blocks_image .text_block li
{
    color: rgba(0,0,0,.7);

    padding-left: 21px;
}

.info_blocks_image .text_block li + li
{
    margin-top: 14px;
}

.info_blocks_image .text_block li:before
{
    top: 12px;
    left: 0;

    background: #0956a3;
}


.info_blocks_image .link
{
    color: #0956a3;
    font-weight: 500;
    line-height: 19px;

    display: inline-block;

    margin-top: auto;
    margin-right: auto;
    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid;
}

.info_blocks_image .link:hover
{
    color: #fff;

    border-color: #0956a3;
    background: #0956a3;
}


.info_blocks_image .item:nth-child(2n+1) .image
{
    order: 2;
}

.info_blocks_image .item:nth-child(2n+1) .data
{
    padding: 39px 0 39px 39px;

    border: 1px solid #0956a3;
    border-right: none;
}



/*------------------
    PR companies
------------------*/
.pr_companies
{
    position: relative;
    z-index: 3;
}


.pr_companies .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -263px;
    left: 50%;

    display: block;

    width: 606px;
    height: 578px;
    margin-left: -1189px;

    transform: rotate(0deg);
    pointer-events: none;
}

.pr_companies .circle_arrows.circle_arrows2
{
    top: auto;
    right: 50%;
    bottom: -360px;
    left: auto;

    width: 624px;
    height: 594px;
    margin-right: -1209px;
    margin-left: 0;
}




/*-----------------------
    Info blocks color
-----------------------*/
.info_blocks_color .row
{
    position: relative;

    padding: 60px 0;

    align-items: stretch;
    align-content: stretch;
}

.info_blocks_color .row:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 50%;

    display: block;

    width: 50vw;
    height: 100%;

    content: '';

    background: #0956a3;
}

.info_blocks_color .row > *
{
    width: 50%;
}


.info_blocks_color .title
{
    font-size: 35px;
    font-weight: 600;
    line-height: 41px;

    margin-bottom: 15px;
}


.info_blocks_color .text_block
{
    color: #696969;
}

.info_blocks_color .text_block li
{
    padding-left: 21px;
}

.info_blocks_color .col_right .text_block li + li
{
    margin-top: 14px;
}

.info_blocks_color .text_block li:before
{
    top: 0;
    bottom: 0;
    left: 0;

    margin: auto;

    background: #0956a3;
}


.info_blocks_color .link
{
    color: currentColor;
    font-weight: 500;
    line-height: 19px;

    display: inline-block;

    margin-top: auto;
    margin-right: auto;
    padding: 15px 39px;

    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 1px solid;
}

.info_blocks_color .link:hover
{
    color: #0956a3;

    border-color: #fff;
    background: #fff;
}


.info_blocks_color .col_left
{
    color: #fff;

    display: flex;
    flex-direction: column;

    padding: 19px 29px 23px;

    border: 1px solid;
    border-right: none;
}

.info_blocks_color .col_left .text_block
{
    color: currentColor;

    margin-bottom: 40px;

    opacity: .7;
}


.info_blocks_color .col_right
{
    padding: 19px 29px 23px;

    border: 1px solid #0956a3;
    border-left: none;
}

.info_blocks_color .col_right .title
{
    color: #0956a3;
}


.info_blocks_color .row:nth-child(2n):before
{
    right: auto;
    left: 50%;
}

.info_blocks_color .row:nth-child(2n) .col_right
{
    border: 1px solid #0956a3;
    border-right: none;
}

.info_blocks_color .row:nth-child(2n) .col_left
{
    border: 1px solid;
    border-left: none;
}



/*-------------------
    Company cases
-------------------*/
.company_cases .title
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);

    margin-bottom: 15px;
}

.company_cases .text_block
{
    opacity: .7;
}



/*----------------------------
    Business greening form
----------------------------*/
.business_greening_form
{
    position: relative;
    z-index: 3;
}

.business_greening_form .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: -283px;
    right: 50%;

    display: block;

    width: 601px;
    height: 572px;
    margin-right: -1186px;

    transform: rotate(0deg);
    pointer-events: none;
}


.business_greening_form .block_head
{
    margin-bottom: 80px;
}


.business_greening_form .row
{
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
}


.business_greening_form .form
{
    position: relative;

    width: 440px;
    max-width: 100%;

    --form_border_color: var(--text_color);
    --form_focus_color: var(--text_color);
    --form_bg_color: transparent;
    --form_placeholder_color: #000;
}

.business_greening_form .form .line
{
    margin-bottom: 24px;
}


.business_greening_form .form .input
{
    height: 81px;
    padding: 0 24px;

    box-shadow: none;
}


.business_greening_form .form textarea
{
    height: 176px;
    padding: 26px 24px;

    box-shadow: none;
}


.business_greening_form .form .agree
{
    position: absolute;
    z-index: 9;
    bottom: 12px;
    left: 100%;

    width: 455px;
    margin-left: 42px;
}


.business_greening_form .form .agree input
{
    display: none;
}

.business_greening_form .form .agree label
{
    font-size: 18px;
    line-height: 26px;

    position: relative;

    display: block;

    min-height: 26px;
    padding-left: 29px;

    cursor: pointer;
}

.business_greening_form .form .agree label:before
{
    position: absolute;
    top: 3px;
    left: 0;

    display: block;

    width: 19px;
    height: 19px;

    content: '';
    transition: .2s linear;

    border: 1px solid var(--text_color);
}

.business_greening_form .form .agree label:after
{
    position: absolute;
    top: 8px;
    left: 5px;

    display: block;

    width: 10px;
    height: 6px;

    content: '';
    transition: opacity .2s linear;
    transform: rotate(-45deg);

    opacity: 0;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

.business_greening_form .form .agree input:checked + label:before
{
    border-color: #0956a3;
    background: #0956a3;
}

.business_greening_form .form .agree input:checked + label:after
{
    opacity: 1;
}


.business_greening_form .form .submit
{
    padding-top: 6px;
}

.business_greening_form .form .submit_btn
{
    width: 100%;
}


.business_greening_form .data
{
    position: relative;

    width: calc(100% - 482px);
    margin-bottom: 22px;
    padding: 39px 39px 59px 0;

    border: 1px solid #0956a3;
    border-bottom: none;
    border-left: none;
}

.business_greening_form .data:after
{
    position: absolute;
    right: 0;
    bottom: 0;

    display: block;

    width: 190px;
    height: 1px;

    content: '';

    background: #0956a3;
}


.business_greening_form .title
{
    color: #0956a3;
    font-size: 35px;
    font-weight: 600;
    line-height: calc(100% + 6px);

    margin-bottom: 12px;
}


.business_greening_form .text_block
{
    width: 532px;
    max-width: 100%;
}

.business_greening_form .text_block li
{
    color: rgba(0,0,0,.7);

    padding-left: 21px;
}

.business_greening_form .text_block li + li
{
    margin-top: 14px;
}

.business_greening_form .text_block li:before
{
    top: 12px;
    left: 0;

    background: #0956a3;
}



/*-------------------------
    Eco center contacts
-------------------------*/
.eco_center_contacts
{
    position: relative;
    z-index: 3;
}


.eco_center_contacts .circle_text
{
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -120px;

    display: block;

    width: 230px;
    height: 230px;
    margin-right: -700px;

    animation: rotate360 15s infinite linear;
    pointer-events: none;
}


.eco_center_contacts .data
{
    position: relative;

    padding: 40px 40px 48px;
}


.eco_center_contacts .image
{
    position: absolute;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
    height: 100%;

    background: #03111e;
}

.eco_center_contacts .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.eco_center_contacts .image img.loaded
{
    opacity: .22;
}


.eco_center_contacts .info
{
    color: #fff;

    position: relative;
    z-index: 9;

    width: 580px;
    padding: 39px;

    border: 1px solid;
}


.eco_center_contacts .title
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 16px);

    margin-bottom: 25px;
}


.eco_center_contacts .item + .item
{
    margin-top: 30px;
}


.eco_center_contacts .name
{
    font-size: 19px;
    font-weight: 600;
    line-height: 28px;

    margin-bottom: 15px;
}

.eco_center_contacts .val
{
    line-height: 25px;
}



/*-----------------
    Donate info
-----------------*/
.donate_info
{
    position: relative;
    z-index: 3;
}


.donate_info .circle_text
{
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -108px;

    display: block;

    width: 217px;
    height: 217px;
    margin-right: -678px;

    animation: rotate360 15s infinite linear;
    pointer-events: none;
}


.donate_info .circle_arrows
{
    position: absolute;
    z-index: -1;
    top: 257px;
    bottom: 0;
    left: 50%;

    display: block;

    width: 548px;
    height: 522px;
    margin-left: -1189px;

    transform: rotate(0deg);
    pointer-events: none;
}


.donate_info .tabs
{
    margin-bottom: 60px;
}

.donate_info .tabs button
{
    font-weight: 600;
    line-height: 19px;

    padding: 15px 39px;
}

.donate_info .tabs button:hover,
.donate_info .tabs button.active
{
    color: #0956a3;

    background: none;
    box-shadow: inset 0 0 0 2px #0956a3;
}


.donate_info .tab_content
{
    display: flex;

    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.donate_info .form
{
    width: 440px;
    max-width: 100%;

    --form_border_color: var(--text_color);
    --form_focus_color: var(--text_color);
    --form_bg_color: none;
    --form_placeholder_color: #696969;
}

.donate_info .form .input
{
    padding: 0 24px;

    box-shadow: none;
}


.donate_info .form .agree > * + *
{
    margin-top: 12px;
}


.donate_info .form .agree input
{
    display: none;
}

.donate_info .form .agree label
{
    font-size: 18px;
    line-height: 26px;

    position: relative;

    display: flex;

    min-height: 26px;
    padding-left: 29px;

    cursor: pointer;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.donate_info .form .agree label a
{
    color: #0956a3;

    text-decoration: none;
}


.donate_info .form .agree label:before
{
    position: absolute;
    top: 3px;
    left: 0;

    display: block;

    width: 19px;
    height: 19px;

    content: '';
    transition: .2s linear;

    border: 1px solid var(--form_border_color);
}

.donate_info .form .agree label:after
{
    position: absolute;
    top: 8px;
    left: 5px;

    display: block;

    width: 10px;
    height: 6px;

    content: '';
    transition: opacity .2s linear;
    transform: rotate(-45deg);

    opacity: 0;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

.donate_info .form .agree input:checked + label:before
{
    border-color: #0956a3;
    background: #0956a3;
}

.donate_info .form .agree input:checked + label:after
{
    opacity: 1;
}


.donate_info .form .submit
{
    padding-top: 36px;
}

.donate_info .form .submit_btn
{
    width: 100%;
    margin: 0;
}


.donate_info .period
{
    display: flex;

    margin-bottom: 25px;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.donate_info .period input
{
    display: none;
}

.donate_info .period label
{
    color: #0956a3;
    font-size: 18px;
    line-height: 26px;

    position: relative;

    display: block;

    width: 50%;
    padding: 26px;

    cursor: pointer;
    transition: .2s linear;
    text-align: center;

    border: 1px solid #0956a3;
}

.donate_info .period input:checked + label
{
    color: #fff;

    background: #0956a3;
}


.donate_info .period .desc
{
    line-height: 25px;

    display: none;

    margin-top: 25px;
}

.donate_info .period input:checked + label.period1 ~ .desc_period1
{
    display: block;
}

.donate_info .period input:checked + label.period2 ~ .desc_period2
{
    display: block;
}


.donate_info .sum
{
    margin-bottom: 25px;
}


.donate_info .sum .title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 130%;

    margin-bottom: 20px;
}


.donate_info .sum .field
{
    display: flex;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: nowrap;
}

.donate_info .sum input
{
    display: none;
}

.donate_info .sum label
{
    color: #0956a3;
    font-size: 18px;
    line-height: 26px;

    position: relative;

    display: block;

    width: 100%;
    padding: 26px;

    cursor: pointer;
    transition: .2s linear;
    text-align: center;

    border: 1px solid #0956a3;
}

.donate_info .sum input:checked + label
{
    box-shadow: inset 0 0 0 2px;
}


.donate_info .data
{
    position: relative;

    display: flex;
    flex-direction: column;

    width: calc(100% - 482px);
    margin-left: auto;
    padding: 39px 39px 39px 0;

    border: 1px solid #0956a3;
    border-left: none;
}


.donate_info .data .title
{
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;

    margin-bottom: 15px;
}


.donate_info .data .text_block
{
    margin-bottom: 40px;
}

.donate_info .data .text_block li
{
    padding-left: 21px;
}

.donate_info .data .text_block li:before
{
    top: 0;
    bottom: 0;
    left: 0;

    margin: auto;

    background: #0956a3;
}


.donate_info .payments
{
    display: flex;

    margin-top: auto;
    margin-bottom: -32px;
    margin-left: -30px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.donate_info .payments img
{
    display: block;

    margin-bottom: 12px;
    margin-left: 30px;
}



/*------------
    Footer
------------*/
footer .links_wrap
{
    background: #0F2647;
}


footer .links_wrap .row
{
    margin-bottom: -30px;
    margin-left: -30px;
}

footer .links_wrap .row > *
{
    width: calc(25% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}


footer .links_wrap .title
{
    color: #fff;
    font-size: 24px;
    line-height: 22px;

    position: relative;

    margin-bottom: 22px;
    font-weight: 600;
    pointer-events: none;
}

footer .links_wrap .title .icon
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    display: none;

    width: 15px;
    height: 19px;
    margin: auto;

    transition: transform .2s linear;
    transform: rotate(-90deg);
}

footer .links_wrap .title.active .icon
{
    transform: rotate(90deg);
}


footer .links_wrap .items
{
    color: #c5d7e9;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
}

footer .links_wrap .items > * + *
{
    margin-top: 15px;
}

footer .links_wrap .items a
{
    color: #fff;

    display: inline-block;

    transition: color .2s linear;
    vertical-align: top;
    text-decoration: none;
}

footer .links_wrap .items a:hover
{
    color: #fff;
}



footer .info
{
    padding-bottom: 150px;

    background: #0F2647;
}


footer .info .row
{
    margin-bottom: -30px;
    margin-left: -30px;
}

footer .info .row > *
{
    width: calc(50% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}




footer .subscribe .title
{
    color: #f2f2f2;
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
}

footer .subscribe .desc
{
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    margin-top: 10px;
}


footer .subscribe form
{
    display: flex;

    margin-top: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .subscribe form .input
{
    color: #fff;
    font-family: var(--font_family);
    font-size: 20px;
    display: block;
    width: 493px;
    max-width: calc(100% - 220px);
    height: 51px;
    padding: 0 14px;
    border: none;
    border-radius: 20px;
    background: #828282;
}

footer .subscribe form .submit_btn
{
    color: #000;
    font-weight: 500;
    line-height: 19px;

    position: relative;

    width: 204px;
    height: 51px;
    margin-left: 16px;
    padding: 15px 39px;

    cursor: pointer;
    transition: .2s linear;
    text-transform: uppercase;

    border: none;
    border-radius: 20px;
    background: #FEC50C;
}

footer .subscribe form .submit_btn:hover
{
    color: var(--text_color);

    border-color: #fbca03;
    background: #fbca03;
}

footer .subscribe form .agree
{
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    width: 520px;
    max-width: 100%;
    margin-top: 20px;
}



footer .socials
{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .socials a
{
    color: #fff;
    display: flex;
    width: 30px;
    height: 30px;
    text-decoration: none;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .socials a + a
{
    margin-left: 10px;
}

footer .socials .icon
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}

footer .socials .telegram_link .icon
{
    width: 14px;
    height: 14px;
}

footer .socials .facebook_link .icon
{
    width: 13px;
    height: 13px;
}

footer .socials .vkontakte_link .icon
{
    width: 16px;
    height: 10px;
}

footer .socials .instagram_link .icon
{
    width: 13px;
    height: 13px;
}

footer .socials .youtube_link .icon
{
    width: 14px;
    height: 10px;
}



footer .contacts
{
    color: #fff;

    display: flex;

    margin-bottom: 8px !important;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

footer .contacts > *
{
    width: calc(50% - 15px);
    margin-bottom: 38px;
}


footer .contacts .name
{
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
}

footer .contacts .val
{
    font-weight: 600;
    line-height: 19px;

    margin-top: 11px;
}

footer .contacts .val a
{
    color: currentColor;

    white-space: nowrap;
    text-decoration: none;
}

:root{
  --blue:#0B66C2;
  --blue-700:#114e94;
  --yellow:#FFC400;
  --text:#0e1012;
  --muted:#6c737f;
  --line:#e6edf3;
  --radius:10px;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text)}

/* ---------- NAVBAR ---------- */
.header{border-bottom:1px solid var(--line); background:#fff; position:sticky; top:0; z-index:50}
.header__inner{max-width:1200px;margin:0 auto;padding:8px 16px}

/* row 1 */
.topbar{display:flex;align-items:center;gap:14px}
.logo{display:flex;align-items:center;font-weight:800;color:var(--blue);font-size:26px;letter-spacing:.5px;white-space:nowrap}
.logo .ring{display:inline-block;width:18px;height:18px;border:2px solid var(--blue);border-radius:50%;margin-left:2px;margin-right:2px;vertical-align:-2px}

.topnav{display:flex;gap:18px;margin-left:16px;flex:1;align-items:center}
.topnav a{color:#1c232b;text-decoration:none;font-weight:500}
.topnav a:hover{color:var(--blue)}

.search{margin-left:auto; position:relative; width:min(360px,40vw)}
.search input{
  width:100%;height:36px;border:1px solid var(--line);background:#f3f5f7;
  border-radius:18px;padding:0 36px 0 36px;font:500 14px/36px Inter;outline:none;
}
.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);opacity:.55}

/* row 2 */
.subbar{display:flex;align-items:center;gap:16px;padding:8px 0 12px}
.location{display:flex;align-items:center;gap:6px;color:#18324a;font-weight:600}
.location svg{color:var(--blue)}
.dropdown{position:relative}
.dropdown>button{
  display:flex;align-items:center;gap:6px;background:transparent;border:0;padding:8px 0;cursor:pointer;
  color:#111;font-weight:700
}
.dropdown>button svg{transition:transform .15s}
.dropdown[open]>button svg{transform:rotate(180deg)}
.dropdown-menu{
  position:absolute;left:0;top:100%;min-width:220px;background:#fff;border:1px solid var(--line);
  border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.08);padding:8px;display:grid;gap:4px;z-index:10
}
.dropdown-menu a{padding:8px 10px;border-radius:8px;color:#1c232b;text-decoration:none;font-weight:500}
.dropdown-menu a:hover{background:#f3f6fb;color:var(--blue)}

.actions{display:flex;gap:10px;margin-left:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 14px;border-radius:10px;text-decoration:none;border:1.5px solid var(--blue);font-weight:700}
.btn--ghost{background:#fff;color:var(--blue)}
.btn--primary{background:var(--blue);color:#fff;border-color:var(--blue)}
.btn--yellow{background:var(--yellow);color:#111;border-color:#e5b100}
.btn:hover{filter:brightness(1.03)}
.btn:active{transform:translateY(1px)}

/* separators */
.rule{height:2px;background:#0b66c2;margin-top:8px}

/* ---------- MOBILE ---------- */
.burger{display:none;margin-left:6px}
.burger button{
  width:38px;height:34px;border-radius:8px;border:1px solid var(--line);
  background:#fff;display:grid;place-items:center;cursor:pointer
}
.burger span{width:18px;height:2px;background:#12212f;display:block;box-shadow:0 6px 0 #12212f, 0 -6px 0 #12212f}

/* offcanvas */
.offcanvas{
  position:fixed;inset:0;display:none;z-index:60;
}
.offcanvas.open{display:block}
.offcanvas .shade{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.drawer{
  position:absolute;left:0;top:0;height:100%;width:min(92vw,360px);background:#fff;
  box-shadow:0 10px 40px rgba(0,0,0,.25);padding:16px;display:flex;flex-direction:column;gap:14px
}
.drawer .close{align-self:flex-end;border:0;background:#fff;width:36px;height:36px;border-radius:8px;box-shadow:0 0 0 1px var(--line);cursor:pointer}
.drawer a{color:#111;text-decoration:none;font-weight:600;padding:10px 6px;border-radius:8px}
.drawer a:hover{background:#f3f6fb;color:var(--blue)}
.drawer .search{width:100%}

/* responsive rules */
@media (max-width: 1000px){
  .topnav{display:none}
  .burger{display:block}
  .search{width:240px}
}
@media (max-width: 720px){
  .search{display:none} /* спрячем поиск, перенесем в бургер */
  .actions .btn--ghost{display:none}
}
@media (max-width: 520px){
  .actions .btn--primary{display:none}
  .actions .btn{height:34px;padding:0 12px}
  .subbar{gap:10px}
}

/*-----------
    PopUp
-----------*/
.modal
{
    display: none;
    visibility: visible !important;

    width: 480px;
    max-width: 100%;
    padding: 40px 50px;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
}


.modal_title
{
    font-size: var(--font_size_title);
    font-weight: 700;
    line-height: normal;

    text-align: center;
}


.modal_desc
{
    margin-top: 24px;

    text-align: center;
}


.wp-block-group
{
    padding: 43px 49px;

    border: 1px solid #c1c1c1;
}

.wp-block-embed iframe
{
    width: 100%;
    max-width: 100%;
    height: 600px;
}

.wp-block-column p + p
{
    margin-top: 20px;
}


.blocks-gallery-grid,
.wp-block-gallery
{
    list-style: none;
}

.blocks-gallery-grid li::before,
.wp-block-gallery li:before
{
    display: none !important;
}

.blocks-gallery-item
{
    padding: 0 !important;
}

.blocks-gallery-grid .blocks-gallery-item
{
    margin-bottom: 0 !important;
}

.wp-block-jetpack-tiled-gallery.is-style-rectangular .tiled-gallery__item
{
    margin-bottom: 0 !important;
}

.wp-block-image
{
    margin-top: 0 !important;
}

.wp-block-image img
{
    margin-right: 0 !important;
}


@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600&subset=latin,cyrillic);
*{box-sizing: border-box;}


nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
nav ul:after {
  content: "";
  display: table;
  clear: both;
}
nav a {
  text-decoration: none;
  display: block;
  transition: .3s linear;
}
.topmenu > li {
  float: left;
  position: relative;
}
.topmenu > li:first-child {border-left: 0;}
.topmenu > li > a {  
    padding: 20px 11px;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
    position: relative;
    display: block;
    transition: opacity .2s linear;
    text-decoration: none;
    opacity: .8;
    color: #fff;
}
.topmenu > li > a.active, 
.submenu a:hover {color: #ddbe86;}
.topmenu .fa, 
.submenu .fa {
  margin-left: 5px;
  color: inherit;
}
.submenu {
  position: absolute;
  z-index: 5;
  min-width: 200px;
  background: white;
  border-top: 1px solid #CBCBCC;
  border-left: 1px solid #CBCBCC;
  border-right: 1px solid #CBCBCC;
  visibility: hidden;
  opacity: 0; 
  transform-origin: 0% 0%;
  transform: rotateX(-90deg);
  transition: .3s linear;  
}
.submenu li {position: relative;}
.submenu li a {
  color: #282828;
  padding: 10px 20px;
  font-size: 13px;
  border-bottom: 1px solid #CBCBCC;
}
.submenu .submenu {
  position: absolute;
  left: 100%;
  top: -1px;
  transition: .3s linear;
}
nav li:hover > .submenu {
  transform: rotateX(0deg);
  visibility: visible;
  opacity: 1;
}
@media (max-width: 1024px) {
    .nav-hor {display: none;}
}
@media (min-width: 1024px) {
    #menu-glavnoe-menyu {display: none !important;}
}
.super-big {
    font-weight: 800;
    font-size: 90px;
    line-height: 102.4%;
    color: #fff;
  }
  .block_head .super-big {
    padding-top: 75px;
  }
  .subtitle {
    font-weight: 400;
    font-size: 40px;
    line-height: 102.4%;
    color: #FFFFFF;
    padding-top: 20px;
  }
  .tehno {
    background-image: url(/img/tehno.png);
  }
  .tab {
    border: 1px solid #0A58A5;
    padding: 60px;
    background: #fff;
  }
  .blue-cap {
    font-weight: 400;
    font-size: 35px;
    line-height: 115.4%;
    color: #0A58A5;
    text-decoration: none;
  }
  .font {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 130.4%;
    
  }
.px-150 {
    padding: 150px 0;
}
h2 {
    padding-bottom: 20px;
}
.px-100 {
    padding: 60px 0;
}
.ml-60 {
    margin-left: 60px;
}
.ml-30 {
    margin-left: 30px;
}
.mt-100 {
    margin-top: 100px;
}
.big-bw {
    font-weight: 800;
    font-size: 75px;
    line-height: 130.4%;
    text-transform: uppercase;
    color: #fff;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #0956a3;
}
.big-blue {
    font-weight: 800;
    font-size: 250px;
    line-height: 102.4%;
    color: #0A58A5;
}
.big-black {
    font-weight: 800;
    font-size: 65px;
    line-height: 102.4%;
    color: #000000;
}
.center {
    text-align: center;
}
.prin .data {
    margin-left: unset;
    width: 720px;
    padding: 40px;
}
.prin .cont {
    margin-top: 50px;
}
.spisok .font {
    padding-top: 0px;
}
.spisok li {
    list-style: none; 
    background: url(/img/arrow.svg) no-repeat left 15px; 
    padding-left: 70px;
    padding-bottom: 30px;
}
.spisok-w li {
    list-style: none; 
    background: url(/img/arrow-w.svg) no-repeat left 15px; 
    padding-left: 70px;
    padding-bottom: 30px;
}
.spisok-w .font {
    padding-top: 0px;
}
.notprin .data {
    width: 730px;
    margin-left: unset;
    border: none;
}
.notprin .tab {
    width: 915px;
}
.pere .tab {
    width: 1000px;
}
.pere .circle_arrows {
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -108px;
    display: block;
    width: 217px;
    height: 217px;
    margin-right: -678px;
    animation: rotate360 15s infinite linear;
    pointer-events: none;
}
.col-70 {
    width: 70%;
    display: inline-block;
}
.col-30 {
    width: 30%;
    float: right;
}
.col-30l {
    width: 30%;
    display: inline-block;
}
.col-70l {
    width: 70%;
    float: right;
}
.linkss {
    font-weight: 400;
    font-size: 32px;
    line-height: 130.4%;
    text-align: center;
    color: #0A58A5;
    text-decoration: none;
    border: 3px solid #0A58A5;
    padding: 20px 46px;
    display: inline-block;
}
.white {
    color: #fff;
    border: 3px solid #fff;
}
.white:hover {
    color: #fff;
}
.faq .font {
    padding-top: 0px;
}
@media (min-width: 429px) {
    .mob {
        display: none;
    }
}
@media (max-width: 428px) {
    .pc {display: none;}
    .super-big {
        font-size: 55px;
    }
    .block_head .super-big {
        padding-top: 120px;
      }
    .subtitle {
        font-size: 37px;
    }
    .blue-cap {
        font-size: 20px;
    }
    .font {
        font-size: 18px;
        padding-top: 10px;
    }
    .big-bw {
        font-size: 40px;
        padding-top: 40px;
    }
    .big-blue {
        font-size: 100px;
        padding: 30px 0;
    }
    .num .ml-60 {
        margin-left: 20px;
    }
    .big-black {
        font-size: 34px;
        padding-top: 30px;
    }
   .mob ul {
    padding-left: 0px;
   }
   .notprin .tab {
    width: unset;
   }
   .tab {
    padding: 30px;
   }
   .spisok li {
    padding-bottom: 0px;
   }
   .history .circle_arrows {
    top: 251px;
    right: 0px;
    width: 370px;
    left: 4%;
   }
   .helpme {
    padding-top: 175px;
   }
   .linkss {
    font-size: 18px;
    padding: 15px 46px;
    font-weight: 300;
    text-transform: uppercase;
   }
   .mt-100 {
    margin-top: 60px;
  }
  .how_donate .circle_arrows {
    top: 325px;
    left: 50%;
    display: block;
    width: 300px;
    height: 300px;
    margin-left: -140px;
  }

   .history .tab {
    width: unset;
    }
   .pere .tab {
    width: unset;
    }
    
}
.pulse-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 80px;
    height: 80px;
    border-radius: 40px;
    padding: 10px;
    border: none;
    -webkit-box-shadow: 0 5px 35px rgba(0, 0, 0, 0.2);
            box-shadow: 0 5px 35px rgba(0, 0, 0, 0.2);
    position: fixed;
    bottom: 50px;
    right: 50px;
    cursor: pointer;
    outline: none;
    z-index: 1000;
  }
  
  .pulse-button:hover .pulse-button__icon {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .pulse-button:hover .pulse-button__text {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 1;
    visibility: visible;
    position: relative;
  }
  
  .pulse-button__icon {
    display: block;
    width: 30px;
    height: 30px;
    background: url("/img/donate.png") center center no-repeat;
    background-size: cover;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .pulse-button__text {
    display: block;
    width: 100%;
    height: 30px;
    font: 12px "Open Sans", sans-serif;
    color: #fff;
    text-align: center;
    line-height: 1.2;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    margin-top: 1px;
  }
  
  .pulse-button__rings {
    border: 1px solid #0956a3;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    height: auto;
    width: auto;
    border-radius: 50%;
    -webkit-animation-duration: 2s;
            animation-duration: 2s;
    -webkit-animation-name: pulse_1;
            animation-name: pulse_1;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    z-index: -1;
  }
  
  .pulse-button__rings:nth-child(2) {
    -webkit-animation-name: pulse_2;
            animation-name: pulse_2;
  }
  
  .pulse-button__rings:nth-child(3) {
    -webkit-animation-name: pulse_3;
            animation-name: pulse_3;
  }
  
  @-webkit-keyframes pulse_1 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.9, 0.9);
              transform: scale(0.9, 0.9);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.3, 1.3);
              transform: scale(1.3, 1.3);
    }
  }
  
  @keyframes pulse_1 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.9, 0.9);
              transform: scale(0.9, 0.9);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.3, 1.3);
              transform: scale(1.3, 1.3);
    }
  }
  
  @-webkit-keyframes pulse_2 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.5, 1.5);
              transform: scale(1.5, 1.5);
    }
  }
  
  @keyframes pulse_2 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.5, 1.5);
              transform: scale(1.5, 1.5);
    }
  }
  
  @-webkit-keyframes pulse_3 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.7, 1.7);
              transform: scale(1.7, 1.7);
    }
  }
  
  @keyframes pulse_3 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.7, 1.7);
              transform: scale(1.7, 1.7);
    }
  }
  /*# sourceMappingURL=style.css.map */
  @media (max-width: 475px) {
    .slide .cont {
        padding-top: 15px !important;
    }
    .slide .title {
        font-size: 21px !important;
    }
    .main_slider .slide .link {
        margin-top: 0px !important;
        padding: 10px 30px !important;
        font-size: 14px !important;
    }
    .main_slider .slide .bg {
        height: 100%;
    }
    .main_slider .slide .cont {
        min-height: 385px !important;
    }
    .main_slider .slide {
        height: 245px;
    }
    .super-big {
        font-size: 65px;
  }
  .zachem {
    border: 1px solid #0956a3;
    padding: 39px 87px;
    line-height: calc(100% + 16px);
    margin-top: 60px;
  }
  .bb .item {
    text-align: center;
  }
  .bb .thumb {
    height: unset;
  }
  .bb .name {
    height: 60px;
    font-size: 24px;
  }
  .sbor {
    background-image: url(/img/sbor2.jpg);
  }
  }
  .contac {
      font-size: 26px;
  }
  .kontakt p {
      font-size: 24px;
      line-height: 34px;
      color: #fff;
  }
  .banner {
  background-color: #0056B3;
  /* ваш паттерн стрелок из Figma */
  background-image: url('arrow-pattern.png');
  background-repeat: repeat;
}

.banner__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 20px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  /* задаём базовый размер текста и высоту строки */
  font-size: 32px;
  line-height: 1.2;
}

.banner__left,
.banner__right {
  width: 40%;
}

.banner__left p,
.banner__right p {
  margin: 0;
  text-transform: uppercase;
  font-weight: 600;
}

.highlight {
  color: #FFCC00;
}
/* Контейнер карточек */
.cards-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
}

/* Стили карточки */
.card {
  background-color: #D4E9FF; /* светло-голубой фон */
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.card__icon {
  width: 32px;
  height: 32px;
  margin-bottom: 16px;
}

.card__title {
  font-size: 20px;
  font-weight: 600;
  color: #0056B3;
  margin-bottom: 8px;
}

.card__text {
  font-size: 16px;
  font-weight: 400;
  color: #1D1D1B;
  line-height: 1.4;
}

.promo-link__box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #FFFFFF;
  border-radius: 12px;
  padding: 14px 24px;
}
.promo-link__text {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
      color: #fff;
}
.promo-link__icon {
  width: 60px;
  height: 60px;
  margin: 0 16px;
}
.promo-link__more {
  font-size: 18px;
  font-weight: 600;
  text-decoration: underline;
  color: #FFFFFF;
}
/* Заголовок */
.faq__title {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 32px;
      color: #fff;
}

/* Ссылка в ответе */
.faq__link {
  color: #FFFFFF;
  text-decoration: underline;
}

/* Сброс маркера */
.faq__item summary {
  list-style: none;
}
.faq__item summary::-webkit-details-marker {
  display: none;
}

/* Вёрстка вопроса */
.faq__question {
  position: relative;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
  cursor: pointer;
  padding: 16px 0;
  border-top: 1px solid rgba(255,255,255,0.3);
      color: #fff;
}

/* Убираем верхнюю линию у первого элемента */
.faq__item:first-of-type .faq__question {
  border-top: none;
}

/* Плюсик/крестик */
.faq__question::after {
  content: '+';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 40px;
  line-height: 1;
  font-weight: 100;
}

/* Крестик, когда открыт */
.faq__item[open] .faq__question::after {
  content: '×';
}

/* Содержимое ответа */
.faq__answer {
  padding: 16px 0 24px;
  font-size: 16px;
  line-height: 1.6;
  color: #A9CFF1;
}

/* Внутренняя граница после ответа */
.faq__item[open] .faq__answer {
  border-bottom: 1px solid rgba(255,255,255,0.3);
}
/* Стрелка и первый абзац правого блока смещаем вниз на 2 строки */
.banner__arrow,
.banner__right {
  margin-top: calc(2 * 1.2em);
}

.banner__arrow {
  font-size: 48px;
  line-height: 1;
  color: #FFF;
  /* центрируем горизонтально в своём flex-слоте */
  text-align: center;
  width: 20%;
}
  .emails p {
      color:#fff;
  }
  .emails p {
      font-size: 14px;
  }
  .emails span {
      color: #828282;
  }
  footer .links_wrap .items {
      margin: 0;
      padding: 0;
  }
  .subscribe2 p {
      font-size: 14px;
  }
  .subscribe2 a {
      color: #828282;
  }
  .two {
      width: 70%;
  }
  .info .cont {
      padding-top: 50px;
  }
  footer .cont {
  max-width: 1440px;
}
  .info .subscribe2 {
      width: 23% !important;
  }
  .blue-section {
    background: #0A58A5;
  }
  .stroke {
    -webkit-text-stroke-width: 4px;
    -webkit-text-stroke-color: white;
    color: transparent;
  }
  .rose {
    font-size: 20px;
    background: #F191BC;
    display: inline-block;
    padding: 16px 37px;
    border-radius: 28px;
    transform: rotate(10deg);
    margin-left: 748px;
    margin-bottom: -7px;
    position: absolute;
    right: 21rem;
    top: 20.5rem;
    z-index: 1;
  }
  .yellow {
    font-size: 49px;
    background: #FEC50C;
    display: inline-block;
    padding: 16px 37px;
    border-radius: 55px;
    transform: rotate(-7deg);
    margin-left: 748px;
    margin-bottom: -7px;
    position: absolute;
    right: 18rem;
    top: 25rem;
    color: #000;
    font-weight: 600;
  }
  .banner {
    width: 100%;
    background:url(/img/pat.svg);
    /*https://i0.wp.com/media.giphy.com/media/5ERaOy5fQEIAU/giphy.gif*/
    background-size: cover;
    font-size: 80px;
    color: #fff;
    text-align: center;
    padding: 100px 15px;
  }
  
  .big-text {
    font-size: 140px;
    font-weight:800;
    animation-delay: 1s;
    text-align: left;
    text-transform: uppercase;
    line-height: 100px;
    margin-top: 140px;
    padding-bottom: 100px;
  }
  .banner a {
    display: inline-block;
    background: #fff;
    color: #36465d;
    text-transform: uppercase;
    padding: 15px;
    text-decoration: none;
    font-size: 40px;
    transition: .3s;
  }
  .banner a:hover {
    background: #333;
    color: #fff;
    padding: 15px 20px;
  }
  .cards .item {
    border-radius: 20px;
  }
  .cards .card-light {
    background: #D2EAFF;
  }
  .cards .card-blue {
    background: #088CCB;
    height: 300px;
  }
  .cards .up {
    text-transform: uppercase;
    font-size: 26px;
    font-weight: 600;
    line-height: 100%;
  }
  .card-white, .card-light, .card-white p, .card-light p {
    color: #0A58A5;
  }
  .card-blue, .card-blue p {
    color: #fff;
  }
  .bold {
    font-size: 24px;
    font-weight: 600;
  }
  .cards p {
    font-size: 18px;
    line-height: 120%;
  }
  .card-white img {
    margin-top: 45px;
  }
  .cards .item {
    width: calc(100% / 3 - 55px);
  }
  .cards {
    padding-top: 0;
  }
  .cards h3 {
    padding-bottom: 30px;
    padding-top: 40px;
  }
  .grey, p.grey {
    color: #FFFFFF80;
  }
  .gorod {
    margin-left: 50px;
    margin-top: 5rem;
  }
  .gorod p {
    font-size: 16px;
    margin-left: 22px;
  }
  .super {
    font-size: 100px;
  }
  .ssuper {
    color: #fff;
  }
  .suptext {
    margin-left: 34%;
  }
  .px100 {
    padding: 100px 0;
  }
  .whitebg {
    background: #fff;
  }
  .whitebg h2 {
    font-size: 40px;
    color: #0A58A5;
    text-transform: uppercase;
  }
  .parent { 
    display: flex; 
    flex-direction: row; 
  } 

  .child1 { 
    width: 70%;
  } 

  .child2 { 
    width: 30%; 
  }
  .child3 { 
    width: 50%;
  } 
  .child4 {
    width: 40%;
  }
  .child5 {
    width: 50%;
  }
  .whitebg {
    border-radius: 20px;
    padding: 40px 80px;
  }
  .px24 {
    font-size: 24px;
  }
  .px18 {
    font-size: 18px;
  }
  .blue {
    color: #0A58A5;
  }
  .yellowbg {
    background: #FEC50C;
    border-radius: 20px;
    padding: 40px 80px;
  }
  .card-yellow {
    background: #FEC50C !important;
  }
  .yellowbg h2 {
    text-transform: uppercase;
    font-size: 40px;
  }
  .red {
    color: #ED1C2E;
  }
  .w-color {
    color: #fff;
  }
  h2 {
    font-size: 40px;
    text-transform: uppercase;
  }
  .banner2 {
    background: url(/img/pat2.svg);
    background-position: right;
    background-repeat: no-repeat;
  }
  .px20 {
    font-size: 20px;
  }
  .noheight {
    height: unset !important;
  }
  .short {
    width: 22% !important;
  }
  .wide {
    width: 40% !important;
  }
  .short2 {
    width: 31% !important;
  }
  .button-white {
    color: #fff;
    text-align: center;
    display: inline-block;
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 16px 47px;
    width: 100%;
    font-size: 22px;
    text-decoration: none;
  }
  .button-black {
    color: #000;
    text-align: center;
    display: inline-block;
    border: 1px solid #000;
    border-radius: 20px;
    padding: 16px 47px;
    width: 100%;
    font-size: 22px;
    text-decoration: none;
  }
  .button-yellow {
    color: #000;
    text-align: center;
    display: inline-block;
    background: #FDCC02;
    border-radius: 20px;
    padding: 16px 47px;
    width: 100%;
    font-size: 22px;
    text-decoration: none;
  }
  .pb40 {
    padding-bottom: 40px;
  }
  .pb60 {
    padding-bottom: 60px;
  }
  .pb20 {
    padding-bottom: 20px;
  }
  .pb70 {
    padding-bottom: 70px;
  }
  .end {
    justify-content: flex-end !important;
  }
  .card-dark {
    background: #0A58A5;
    color: #fff;
    border-radius: 20px;
    padding: 40px;
    width: 79%;
    margin-left: 46%;
  }
  .section-grey {
    background: #EFEEED;
  }
  .otziv .child1 {
    padding-left: 50px;
  }
  .arhiv {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .arhiv p {
    text-align: center;
    color: #fff;
  }
  .arhiv a {
    color: #EFEEED80;
    font-size: 16px;
    border-radius: 5px;
    border: 1px solid rgba(239, 238, 237, 0.50);
    padding: 5px 15px;
    text-decoration: none;
  }
  @media (max-width: 600px){
      .info .subscribe2 {
      width: 100% !important;
  }
    .big-text {
        font-size: 60px;
        font-weight: 700;
        line-height: 45px;
        margin-top: 62px;
    }
    .stroke {
        -webkit-text-stroke-width: 2px;
    }
    .rose {
        font-size: 18px;
        margin-left: 0;
        right: 4rem;
        top: 18.5rem;
    }
    .yellow {
        margin-left: 0;
        font-size: 39px;
        padding: 16px 29px;
        right: 3rem;
        top: 23rem;
        line-height: 100%;
    }
    .activities .item {
        width: 97% !important;
    }
    .gorod {
        margin-left: 10px;
    }
    .suptext {
        margin-left: 30px;
      }
      .big-text {
        font-size: 41px;
      }
      .ssuper {
        font-size: 66px !important;
      }
      .super {
        font-size: 41px;
      }
      .pb190 {
        padding-top: 190px;
      }
      .video iframe {
        height: 180px;
      }
      .px100 {
        padding: 50px 0;
      }
      .parent {
        flex-direction: column;
      }
      .child1, .child2, .child3, .child4, .child5 img {
        width: 100%;
      }
      .whitebg h2, .yellowbg h2 {
        font-size: 26px;
        
      }
      .whitebg {
        padding: 55px 50px;
      }
      .px24 {
        font-size: 16px;
        line-height: 120%;
      }
      .yellowbg {
        padding: 55px 50px;
      }
      .actia iframe {
        height: 500px;
      }
      .actia h2 {
        font-size: 26px;
      }
      .child4 h2 {
        font-size: 26px;
      }
      .button-white, .button-black {
        font-size: 18px;
      }
      .activities {
        padding: 10px 0;
      }
      .child5 {
        width: 100%;
      }
      .card-dark {
        margin-left: 0;
        width: 100%;
      }
      h2 {
        font-size: 26px;
      }
      .face {
        width: 80px;
      }
      .otziv .child1 {
        padding-left: 0;
      }
      .arhiv {
        flex-wrap: wrap;
      }
  }
  
  @media print, (max-width: 1023px) {
  header .menu:not(.tablet_menu).show {
    transform: translateX(-12px);
  }
  header .menu:not(.tablet_menu) {
	width: 100%;
	background: #fff;
  }
  header .menu .item > a {
  color: #333;
  }
}
	header.absolute {
    background: #fff;
	position: fixed;
}
.mob_menu_btn {
	color: #0A58A5 !important;
	width: 50px !important;
}
.topmenu > li > a {
  color: #000;
}
.search {
  margin-top: 12px;
  margin-left: 30px;
}
header .cont {
	padding-top: 10px;
	padding-bottom: 0px;
	height: 45px;
}
.pt0 {
	padding-top: 0px !important;
}
.button-trans {
	border-radius: 5px;
  	border: 1px solid #0A58A5;
  	padding: 5px 15px !important;
}
.button-bl {
	border-radius: 5px;
	background: #0A58A5;
	color: #fff !important;
  	padding: 5px 15px !important;
	border: 1px solid #0A58A5;
}
.button-yel {
	border-radius: 5px;
	background: #FEC50C;
	color: #000 !important;
  	padding: 5px 15px !important;
	border: 1px solid #FEC50C;
}
.but li {
	margin-right: 13px;
}
#searchform input {
	border-radius: 5px !important;
	background: #EFEEED !important;
}
.topmenu > li > a {
  color: #000;
  font-size: 16px;
}
.eco {
	margin-right: 4.2rem;
}
.eco a {
	font-size: 18px !important;
	color: #0A58A5 !important;
	font-weight: 600 !important;
}
.black a {
	font-size: 18px !important;
	color: #000 !important;
	font-weight: 600 !important;
}
.submenu {
	min-width: 290px;
}
.submenu li a {
	font-weight: 400 !important;
  	font-size: 16px !important;
}
@media (max-width: 475px) {

  .logo {
    margin-top: 30px;
  }
}
.contac {
      font-size: 26px;
  }
  .kontakt p {
      font-size: 24px;
      line-height: 34px;
      color: #fff;
  }
  .emails p {
      color:#fff;
  }
  .emails p {
      font-size: 14px;
      line-height: 30px;
  }
  .emails span {
      color: #828282;
  }
  footer .links_wrap .items {
      margin: 0;
      padding: 0;
  }
  .subscribe2 p {
      font-size: 14px;
      line-height: 30px;
  }
  .subscribe2 a {
      color: #828282;
  }
  .two {
      width: 70%;
  }
  .info .cont {
      padding-top: 50px;
  }
  footer .cont {
  max-width: 1440px;
}
  .info .subscribe2 {
      width: 23% !important;
  }
  .blue-section {
    background: #0A58A5;
  }
  .stroke {
    -webkit-text-stroke-width: 4px;
    -webkit-text-stroke-color: white;
    color: transparent;
  }
  .rose {
    font-size: 20px;
    background: #F191BC;
    display: inline-block;
    padding: 16px 37px;
    border-radius: 28px;
    transform: rotate(10deg);
    margin-left: 748px;
    margin-bottom: -7px;
    position: absolute;
    right: 21rem;
    top: 20.5rem;
    z-index: 1;
  }
  .yellow {
    font-size: 49px;
    background: #FEC50C;
    display: inline-block;
    padding: 16px 37px;
    border-radius: 55px;
    transform: rotate(-7deg);
    margin-left: 748px;
    margin-bottom: -7px;
    position: absolute;
    right: 18rem;
    top: 25rem;
    color: #000;
    font-weight: 600;
  }
  .banner {
    width: 100%;
    background:url(/img/pat.svg);
    /*https://i0.wp.com/media.giphy.com/media/5ERaOy5fQEIAU/giphy.gif*/
    background-size: cover;
    font-size: 80px;
    color: #fff;
    text-align: center;
    padding: 100px 15px;
  }
  
  .big-text {
    font-size: 140px;
    font-weight:800;
    animation-delay: 1s;
    text-align: left;
    text-transform: uppercase;
    line-height: 100px;
    margin-top: 140px;
    padding-bottom: 100px;
  }
  .banner a {
    display: inline-block;
    background: #fff;
    color: #36465d;
    text-transform: uppercase;
    padding: 15px;
    text-decoration: none;
    font-size: 40px;
    transition: .3s;
  }
  .banner a:hover {
    background: #333;
    color: #fff;
    padding: 15px 20px;
  }
  .cards .item {
    border-radius: 20px;
  }
  .cards .card-light {
    background: #D2EAFF;
  }
  .cards .card-blue {
    background: #088CCB;
    height: 300px;
  }
  .cards .up {
    text-transform: uppercase;
    font-size: 26px;
    font-weight: 600;
    line-height: 100%;
  }
  .card-white, .card-light, .card-white p, .card-light p {
    color: #0A58A5;
  }
  .card-blue, .card-blue p {
    color: #fff;
  }
  .bold {
    font-size: 24px;
    font-weight: 600;
  }
  .cards p {
    font-size: 18px;
    line-height: 120%;
  }
  .card-white img {
    margin-top: 45px;
  }
  .cards .item {
    width: calc(100% / 3 - 55px);
  }
  .cards {
    padding-top: 0;
  }
  .cards h3 {
    padding-bottom: 30px;
    padding-top: 40px;
  }
  .grey, p.grey {
    color: #FFFFFF80;
  }
  .gorod {
    margin-left: 50px;
    margin-top: 5rem;
  }
  .gorod p {
    font-size: 16px;
    margin-left: 22px;
  }
  .super {
    font-size: 100px;
  }
  .ssuper {
    color: #fff;
  }
  .suptext {
    margin-left: 34%;
  }
  .px100 {
    padding: 100px 0;
  }
  .whitebg {
    background: #fff;
  }
  .whitebg h2 {
    font-size: 40px;
    color: #0A58A5;
    text-transform: uppercase;
  }
  .parent { 
    display: flex; 
    flex-direction: row; 
  } 

  .child1 { 
    width: 70%;
  } 

  .child2 { 
    width: 30%; 
  }
  .child3 { 
    width: 50%;
  } 
  .child4 {
    width: 40%;
  }
  .child5 {
    width: 50%;
  }
  .whitebg {
    border-radius: 20px;
    padding: 40px 80px;
  }
  .px24 {
    font-size: 24px;
  }
  .px18 {
    font-size: 18px;
  }
  .blue {
    color: #0A58A5;
  }
  .yellowbg {
    background: #FEC50C;
    border-radius: 20px;
    padding: 40px 80px;
  }
  .card-yellow {
    background: #FEC50C !important;
  }
  .yellowbg h2 {
    text-transform: uppercase;
    font-size: 40px;
  }
  .red {
    color: #ED1C2E;
  }
  .w-color {
    color: #fff;
  }
  h2 {
    font-size: 40px;
    text-transform: uppercase;
  }
  .banner2 {
    background: url(/img/pat2.svg);
    background-position: right;
    background-repeat: no-repeat;
  }
  .px20 {
    font-size: 20px;
  }
  .noheight {
    height: unset !important;
  }
  .short {
    width: 22% !important;
  }
  .wide {
    width: 40% !important;
  }
  .short2 {
    width: 31% !important;
  }
  .button-white {
    color: #fff;
    text-align: center;
    display: inline-block;
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 16px 47px;
    width: 100%;
    font-size: 22px;
    text-decoration: none;
  }
  .button-black {
    color: #000;
    text-align: center;
    display: inline-block;
    border: 1px solid #000;
    border-radius: 20px;
    padding: 16px 47px;
    width: 100%;
    font-size: 22px;
    text-decoration: none;
  }
  .button-yellow {
    color: #000;
    text-align: center;
    display: inline-block;
    background: #FDCC02;
    border-radius: 20px;
    padding: 16px 47px;
    width: 100%;
    font-size: 22px;
    text-decoration: none;
  }
  .pb40 {
    padding-bottom: 40px;
  }
  .pb60 {
    padding-bottom: 60px;
  }
  .pb20 {
    padding-bottom: 20px;
  }
  .pb70 {
    padding-bottom: 70px;
  }
  .end {
    justify-content: flex-end !important;
  }
  .card-dark {
    background: #0A58A5;
    color: #fff;
    border-radius: 20px;
    padding: 40px;
    width: 79%;
    margin-left: 46%;
  }
  .section-grey {
    background: #EFEEED;
  }
  .otziv .child1 {
    padding-left: 50px;
  }
  .arhiv {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .arhiv p {
    text-align: center;
    color: #fff;
  }
  .arhiv a {
    color: #EFEEED80;
    font-size: 16px;
    border-radius: 5px;
    border: 1px solid rgba(239, 238, 237, 0.50);
    padding: 5px 15px;
    text-decoration: none;
  }
  @media (max-width: 600px){
      header.absolute {height: 50px;}
      .nc_search {display: none;}
      .info .subscribe2 {
      width: 100% !important;
  }
    .big-text {
        font-size: 60px;
        font-weight: 700;
        line-height: 45px;
        margin-top: 62px;
    }
    .stroke {
        -webkit-text-stroke-width: 2px;
    }
    .rose {
        font-size: 18px;
        margin-left: 0;
        right: 4rem;
        top: 18.5rem;
    }
    .yellow {
        margin-left: 0;
        font-size: 39px;
        padding: 16px 29px;
        right: 3rem;
        top: 23rem;
        line-height: 100%;
    }
    .activities .item {
        width: 97% !important;
    }
    .gorod {
        margin-left: 10px;
    }
    .suptext {
        margin-left: 30px;
      }
      .big-text {
        font-size: 41px;
      }
      .ssuper {
        font-size: 66px !important;
      }
      .super {
        font-size: 41px;
      }
      .pb190 {
        padding-top: 190px;
      }
      .video iframe {
        height: 180px;
      }
      .px100 {
        padding: 50px 0;
      }
      .parent {
        flex-direction: column;
      }
      .child1, .child2, .child3, .child4, .child5 img {
        width: 100%;
      }
      .whitebg h2, .yellowbg h2 {
        font-size: 26px;
        
      }
      .whitebg {
        padding: 55px 50px;
      }
      .px24 {
        font-size: 16px;
        line-height: 120%;
      }
      .yellowbg {
        padding: 55px 50px;
      }
      .actia iframe {
        height: 500px;
      }
      .actia h2 {
        font-size: 26px;
      }
      .child4 h2 {
        font-size: 26px;
      }
      .button-white, .button-black {
        font-size: 18px;
      }
      .activities {
        padding: 10px 0;
      }
      .child5 {
        width: 100%;
      }
      .card-dark {
        margin-left: 0;
        width: 100%;
      }
      h2 {
        font-size: 26px;
      }
      .face {
        width: 80px;
      }
      .otziv .child1 {
        padding-left: 0;
      }
      .arhiv {
        flex-wrap: wrap;
      }
  }
  footer .links_wrap
{
    background: #0F2647;
    padding-top: 60px;
}


footer .links_wrap .row
{
    margin-bottom: -30px;
    margin-left: -30px;
}

footer .links_wrap .row > *
{
    width: calc(25% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}


footer .links_wrap .title
{
    color: #fff;
    font-size: 24px;
    line-height: 22px;

    position: relative;

    margin-bottom: 22px;
    font-weight: 600;
    pointer-events: none;
}

footer .links_wrap .title .icon
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    display: none;

    width: 15px;
    height: 19px;
    margin: auto;

    transition: transform .2s linear;
    transform: rotate(-90deg);
}

footer .links_wrap .title.active .icon
{
    transform: rotate(90deg);
}


footer .links_wrap .items
{
    color: #c5d7e9;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
    list-style-type: none;
}

footer .links_wrap .items > * + *
{
    margin-top: 15px;
}

footer .links_wrap .items a
{
    color: #fff;

    display: inline-block;

    transition: color .2s linear;
    vertical-align: top;
    text-decoration: none;
}

footer .links_wrap .items a:hover
{
    color: #fff;
}



footer .info
{
    padding-bottom: 150px;

    background: #0F2647;
}


footer .info .row
{
    margin-bottom: -30px;
    margin-left: -30px;
}

footer .info .row > *
{
    width: calc(50% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}




footer .subscribe .title
{
    color: #f2f2f2;
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
}

footer .subscribe .desc
{
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    margin-top: 10px;
}


footer .subscribe form
{
    display: flex;

    margin-top: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .subscribe form .input
{
    color: #fff;
    font-family: var(--font_family);
    font-size: 20px;
    display: block;
    width: 493px;
    max-width: calc(100% - 220px);
    height: 51px;
    padding: 0 14px;
    border: none;
    border-radius: 20px;
    background: #828282;
}

footer .subscribe form .submit_btn
{
    color: #000;
    font-weight: 500;
    line-height: 19px;

    position: relative;

    width: 204px;
    height: 51px;
    margin-left: 16px;
    padding: 15px 39px;

    cursor: pointer;
    transition: .2s linear;
    text-transform: uppercase;

    border: none;
    border-radius: 20px;
    background: #FEC50C;
}

footer .subscribe form .submit_btn:hover
{
    color: var(--text_color);

    border-color: #fbca03;
    background: #fbca03;
}

footer .subscribe form .agree
{
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;

    width: 520px;
    max-width: 100%;
    margin-top: 20px;
}



footer .socials
{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .socials a
{
    color: #fff;
    display: flex;
    width: 30px;
    height: 30px;
    text-decoration: none;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .socials a + a
{
    margin-left: 10px;
}

footer .socials .icon
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}

footer .socials .telegram_link .icon
{
    width: 14px;
    height: 14px;
}

footer .socials .facebook_link .icon
{
    width: 13px;
    height: 13px;
}

footer .socials .vkontakte_link .icon
{
    width: 16px;
    height: 10px;
}

footer .socials .instagram_link .icon
{
    width: 13px;
    height: 13px;
}

footer .socials .youtube_link .icon
{
    width: 14px;
    height: 10px;
}



footer .contacts
{
    color: #fff;

    display: flex;

    margin-bottom: 8px !important;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

footer .contacts > *
{
    width: calc(50% - 15px);
    margin-bottom: 38px;
}


footer .contacts .name
{
    font-size: 14px;
    font-weight: 300;
    line-height: 130%;
}

footer .contacts .val
{
    font-weight: 600;
    line-height: 19px;

    margin-top: 11px;
}

footer .contacts .val a
{
    color: currentColor;

    white-space: nowrap;
    text-decoration: none;
}



/*-----------
    PopUp
-----------*/
.modal
{
    display: none;
    visibility: visible !important;

    width: 100%;
    max-width: 100%;
    padding: 40px 50px;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
}


.modal_title
{
    font-size: var(--font_size_title);
    font-weight: 700;
    line-height: normal;

    text-align: center;
}


.modal_desc
{
    margin-top: 24px;

    text-align: center;
}


.wp-block-group
{
    padding: 43px 49px;

    border: 1px solid #c1c1c1;
}

.wp-block-embed iframe
{
    width: 100%;
    max-width: 100%;
    height: 600px;
}

.wp-block-column p + p
{
    margin-top: 20px;
}


.blocks-gallery-grid,
.wp-block-gallery
{
    list-style: none;
}

.blocks-gallery-grid li::before,
.wp-block-gallery li:before
{
    display: none !important;
}

.blocks-gallery-item
{
    padding: 0 !important;
}

.blocks-gallery-grid .blocks-gallery-item
{
    margin-bottom: 0 !important;
}

.wp-block-jetpack-tiled-gallery.is-style-rectangular .tiled-gallery__item
{
    margin-bottom: 0 !important;
}

.wp-block-image
{
    margin-top: 0 !important;
}

.wp-block-image img
{
    margin-right: 0 !important;
}


@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600&subset=latin,cyrillic);
*{box-sizing: border-box;}


nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: Arial;
}
nav ul:after {
  content: "";
  display: table;
  clear: both;
}
nav a {
  text-decoration: none;
  display: block;
  transition: .3s linear;
}
.topmenu > li {
  float: left;
  position: relative;
}
.topmenu > li:first-child {border-left: 0;}
.topmenu > li > a {  
    padding: 20px 11px;
    font-size: 16px;
    font-weight: 300;
    line-height: 130%;
    position: relative;
    display: block;
    transition: opacity .2s linear;
    text-decoration: none;
    opacity: .8;
    color: #000;
}
.topmenu > li > a.active, 
.submenu a:hover {color: #ddbe86;}
.topmenu .fa, 
.submenu .fa {
  margin-left: 5px;
  color: inherit;
}
.submenu {
  position: absolute;
  z-index: 5;
  min-width: 200px;
  background: white;
  border-top: 1px solid #CBCBCC;
  border-left: 1px solid #CBCBCC;
  border-right: 1px solid #CBCBCC;
  visibility: hidden;
  opacity: 0; 
  transform-origin: 0% 0%;
  transform: rotateX(-90deg);
  transition: .3s linear;  
}
.submenu li {position: relative;}
.submenu li a {
  color: #282828;
  padding: 10px 20px;
  font-size: 13px;
  border-bottom: 1px solid #CBCBCC;
}
.submenu .submenu {
  position: absolute;
  left: 100%;
  top: -1px;
  transition: .3s linear;
}
nav li:hover > .submenu {
  transform: rotateX(0deg);
  visibility: visible;
  opacity: 1;
}
@media (max-width: 1024px) {
    .nav-hor {display: none;}
}
@media (min-width: 1024px) {
    #menu-glavnoe-menyu {display: none !important;}
}
.super-big {
    font-weight: 800;
    font-size: 90px;
    line-height: 102.4%;
    color: #fff;
  }
  .block_head .super-big {
    padding-top: 75px;
  }
  .subtitle {
    font-weight: 400;
    font-size: 40px;
    line-height: 102.4%;
    color: #FFFFFF;
    padding-top: 20px;
  }
  .tehno {
    background-image: url(/img/tehno.png);
  }
  .tab {
    border: 1px solid #0A58A5;
    padding: 60px;
    background: #fff;
  }
  .blue-cap {
    font-weight: 400;
    font-size: 35px;
    line-height: 115.4%;
    color: #0A58A5;
    text-decoration: none;
  }
  .font {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 130.4%;
    
  }
.px-150 {
    padding: 150px 0;
}
h2 {
    padding-bottom: 20px;
}
.px-100 {
    padding: 60px 0;
}
.ml-60 {
    margin-left: 60px;
}
.ml-30 {
    margin-left: 30px;
}
.mt-100 {
    margin-top: 100px;
}
.big-bw {
    font-weight: 800;
    font-size: 75px;
    line-height: 130.4%;
    text-transform: uppercase;
    color: #fff;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #0956a3;
}
.big-blue {
    font-weight: 800;
    font-size: 250px;
    line-height: 102.4%;
    color: #0A58A5;
}
.big-black {
    font-weight: 800;
    font-size: 65px;
    line-height: 102.4%;
    color: #000000;
}
.center {
    text-align: center;
}
.prin .data {
    margin-left: unset;
    width: 720px;
    padding: 40px;
}
.prin .cont {
    margin-top: 50px;
}
.spisok .font {
    padding-top: 0px;
}
.spisok li {
    list-style: none; 
    background: url(/img/arrow.svg) no-repeat left 15px; 
    padding-left: 70px;
    padding-bottom: 30px;
}
.spisok-w li {
    list-style: none; 
    background: url(/img/arrow-w.svg) no-repeat left 15px; 
    padding-left: 70px;
    padding-bottom: 30px;
}
.spisok-w .font {
    padding-top: 0px;
}
.notprin .data {
    width: 730px;
    margin-left: unset;
    border: none;
}
.notprin .tab {
    width: 915px;
}
.pere .tab {
    width: 1000px;
}
.pere .circle_arrows {
    position: absolute;
    z-index: -1;
    right: 50%;
    bottom: -108px;
    display: block;
    width: 217px;
    height: 217px;
    margin-right: -678px;
    animation: rotate360 15s infinite linear;
    pointer-events: none;
}
.col-70 {
    width: 70%;
    display: inline-block;
}
.col-30 {
    width: 30%;
    float: right;
}
.col-30l {
    width: 30%;
    display: inline-block;
}
.col-70l {
    width: 70%;
    float: right;
}
.linkss {
    font-weight: 400;
    font-size: 32px;
    line-height: 130.4%;
    text-align: center;
    color: #0A58A5;
    text-decoration: none;
    border: 3px solid #0A58A5;
    padding: 20px 46px;
    display: inline-block;
}
.white {
    color: #fff;
    border: 3px solid #fff;
}
.white:hover {
    color: #fff;
}
.faq .font {
    padding-top: 0px;
}
@media (min-width: 429px) {
    .mob {
        display: none;
    }
}
@media (max-width: 428px) {
    .pc {display: none;}
    .super-big {
        font-size: 55px;
    }
    .block_head .super-big {
        padding-top: 120px;
      }
    .subtitle {
        font-size: 37px;
    }
    .blue-cap {
        font-size: 20px;
    }
    .font {
        font-size: 18px;
        padding-top: 10px;
    }
    .big-bw {
        font-size: 40px;
        padding-top: 40px;
    }
    .big-blue {
        font-size: 100px;
        padding: 30px 0;
    }
    .num .ml-60 {
        margin-left: 20px;
    }
    .big-black {
        font-size: 34px;
        padding-top: 30px;
    }
   .mob ul {
    padding-left: 0px;
   }
   .notprin .tab {
    width: unset;
   }
   .tab {
    padding: 30px;
   }
   .spisok li {
    padding-bottom: 0px;
   }
   .history .circle_arrows {
    top: 251px;
    right: 0px;
    width: 370px;
    left: 4%;
   }
   .helpme {
    padding-top: 175px;
   }
   .linkss {
    font-size: 18px;
    padding: 15px 46px;
    font-weight: 300;
    text-transform: uppercase;
   }
   .mt-100 {
    margin-top: 60px;
  }
  .how_donate .circle_arrows {
    top: 325px;
    left: 50%;
    display: block;
    width: 300px;
    height: 300px;
    margin-left: -140px;
  }

   .history .tab {
    width: unset;
    }
   .pere .tab {
    width: unset;
    }
    
}
.pulse-button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 80px;
    height: 80px;
    border-radius: 40px;
    padding: 10px;
    border: none;
    -webkit-box-shadow: 0 5px 35px rgba(0, 0, 0, 0.2);
            box-shadow: 0 5px 35px rgba(0, 0, 0, 0.2);
    position: fixed;
    bottom: 50px;
    right: 50px;
    cursor: pointer;
    outline: none;
    z-index: 1000;
  }
  
  .pulse-button:hover .pulse-button__icon {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .pulse-button:hover .pulse-button__text {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 1;
    visibility: visible;
    position: relative;
  }
  
  .pulse-button__icon {
    display: block;
    width: 30px;
    height: 30px;
    background: url("/img/donate.png") center center no-repeat;
    background-size: cover;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .pulse-button__text {
    display: block;
    width: 100%;
    height: 30px;
    font: 12px "Open Sans", sans-serif;
    color: #fff;
    text-align: center;
    line-height: 1.2;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    margin-top: 1px;
  }
  
  .pulse-button__rings {
    border: 1px solid #0956a3;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    height: auto;
    width: auto;
    border-radius: 50%;
    -webkit-animation-duration: 2s;
            animation-duration: 2s;
    -webkit-animation-name: pulse_1;
            animation-name: pulse_1;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    z-index: -1;
  }
  
  .pulse-button__rings:nth-child(2) {
    -webkit-animation-name: pulse_2;
            animation-name: pulse_2;
  }
  
  .pulse-button__rings:nth-child(3) {
    -webkit-animation-name: pulse_3;
            animation-name: pulse_3;
  }
  
  @-webkit-keyframes pulse_1 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.9, 0.9);
              transform: scale(0.9, 0.9);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.3, 1.3);
              transform: scale(1.3, 1.3);
    }
  }
  
  @keyframes pulse_1 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.9, 0.9);
              transform: scale(0.9, 0.9);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.3, 1.3);
              transform: scale(1.3, 1.3);
    }
  }
  
  @-webkit-keyframes pulse_2 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.5, 1.5);
              transform: scale(1.5, 1.5);
    }
  }
  
  @keyframes pulse_2 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.5, 1.5);
              transform: scale(1.5, 1.5);
    }
  }
  
  @-webkit-keyframes pulse_3 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.7, 1.7);
              transform: scale(1.7, 1.7);
    }
  }
  
  @keyframes pulse_3 {
    from {
      opacity: 1;
      -webkit-transform: scale(0.8, 0.8);
              transform: scale(0.8, 0.8);
    }
    to {
      opacity: 0;
      -webkit-transform: scale(1.7, 1.7);
              transform: scale(1.7, 1.7);
    }
  }
  /*# sourceMappingURL=style.css.map */
  @media (max-width: 475px) {
    .slide .cont {
        padding-top: 15px !important;
    }
    .slide .title {
        font-size: 21px !important;
    }
    .main_slider .slide .link {
        margin-top: 0px !important;
        padding: 10px 30px !important;
        font-size: 14px !important;
    }
    .main_slider .slide .bg {
        height: 100%;
    }
    .main_slider .slide .cont {
        min-height: 385px !important;
    }
    .main_slider .slide {
        height: 245px;
    }
    .super-big {
        font-size: 65px;
  }
  .zachem {
    border: 1px solid #0956a3;
    padding: 39px 87px;
    line-height: calc(100% + 16px);
    margin-top: 60px;
  }
  .bb .item {
    text-align: center;
  }
  .bb .thumb {
    height: unset;
  }
  .bb .name {
    height: 60px;
    font-size: 24px;
  }
  .sbor {
    background-image: url(/img/sbor2.jpg);
  }
  }
  
  .swiper-button-next::after, .swiper-container-rtl .swiper-button-prev::after {
  color: #fff;
  font-size: 20px;
}
.swiper-button-prev::after, .swiper-container-rtl .swiper-button-next::after {
  color: #fff;
  font-size: 20px;
}
.swiper-pagination {display:none;}
.inner-slider .slide .desc {width: 570px;}
.inner-slider .slide .title, .inner-slider .title {
    width: 570px;
    color: #0A58A5;
    text-transform: uppercase;
    font-size: 40px;
    line-height: 100%;
    padding-bottom: 10px;
    font-weight: 600;
}
.inner-slider .slide .desc, .inner-slider .desc {
    font-size: 22px;
    line-height: 120%;
    color: #0A58A5;
}
.inner-slider .content {width: 570px; align-self: center;}
.inner-slider {padding: 60px 0 !important;}
h2 {font-size: 24px;}
.icons, .text {padding: 30px 0;}
.icons .item img {max-width: 140px;}
.icons p {

    text-align: center;
  }
.icons .item {display: flex;}
.icons .row {flex-wrap: nowrap; justify-content: space-between;}
.grey-bg {background: #F8F8F8;;}
section {padding: 50px 0;}
.inner-slider {padding: 0}
.card-item {
    margin-right: 10px;
    flex: 1 0 21%;
    display: flex;
}
.card-content {
    padding: 35px;
    background: #fff;
    border-radius: 20px;
    margin-bottom: 10px;
}
.cards-section .row {align-items: inherit;}
.card-content img {padding-bottom: 10px; border-radius: 20px;}
.card-content h3 {padding-bottom: 20px;font-weight: 600;font-size: 18px;color: #0A58A5;}
.card-content p {color: #0A58A5;}
.column-1 {width: 60%;}
.column-2 {width: 40%; margin-left: 7rem;}
.column- {width: 25%;}
.column- .content {padding: 0 20px;}
.column-3 {width: 25%;}
.column-9 {width: 75%;}
.may {padding: 0 20px;}
.mt-60 {margin-top: 60px;}
.mt-20 {margin-top: 20px;}
@media (max-width: 475px) {
    .cards-section .card-content {width: 340px;}
    .icons div.item {
      width: 30%;
    }
    .icons .item img {
      max-width: 105px;
    }
    .cards-section div.card-content img {
      margin-bottom: 0px;
    }
    section {
      padding: 20px 0;
    }
    .youtube iframe {height: 127px;}
    .breadcrumbs {color:#0A58A5; margin-bottom: 60px;}
    .inner-slider {
    padding: 24px 0 !important;
    margin-top: 65px;
  }
  .inner-slider .content {
  width: 320px;
  margin-bottom: 55px;
  }
  .inner-slider .title {
  width: 255px;
  font-size: 26px;
  }
  .inner-slider .desc {
  font-size: 16px;
  }
  .column-2 {
  width: 100%;
  margin-left: 0rem;
}
.inner-slider img {
    max-width: 100%;
}
.icons .row {
  flex-wrap: wrap;
  }
  .icons .item {
  margin-bottom: 20px;
  }
  .icons {
  padding: 0px;
}
.main {
    margin-top: 0px;
}
.card-item {
  margin-bottom: 10px;
}
.column- {
  width: 100%;
}
 .logo {
    margin-top: 0px;
  }
  .absolute hr {display: none;}
}
.nc-demo-modal-wrapper {display: none;}
.h2-blue {
  /*font-family: Circe;*/
  font-size: 24px;
  font-style: normal;
  text-align: center;
  color: #0A58A5;
  font-weight: 700;
  line-height: 100%;
  text-transform: uppercase;
  margin-bottom: 100px;
  padding-bottom: 20px;
}
.pb-0 {padding-bottom: 0px;}
.pt-0 {padding-top: 0px;}
.yellow-btn {
  display: inline-block;
  border-radius: 20px;
  background: #FEC50C;
  padding: 20px;
  justify-content: center;
  color: #000;
  text-decoration: none;
}
.zayavka {background: #0A58A5; border-radius: 40px;}
.zayavka .card-content {background: #0A58A5;}
.zayavka .text, .zayavka .text p {color: #fff;}
.amoforms__fields__editor-withborders {border: none !important;}
.items {
  display: flex;
  justify-content: space-between;
  height: 100%;
  margin: auto;
}

.item {
  width: 50%;
}
.item img {border-radius: 20px;}
.two-cols p {color: #0A58A5;}
.blue-bg {background: #0A58A5;}
.grey-bg {background: #F8F8F8;}
.bluegray-bg {background: linear-gradient(180deg, #D2EAFF 0%, #F8F8F8 100%);}
.lightblue-bg {background: #D2EAFF;}
.cards-section img {margin-bottom: 40px;}
.cards-section text-content {color: #0A58A5;}
.button-content {margin-top: 40px;}
.col-4 {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.col-4 .card-item {
    width: 28vmin;
}
.youtube iframe {
    border-radius: 20px;
}
.card-content .icon {
    float: left;
    margin-right: 20px;
}
.card-content .text-content {
    overflow: hidden;
}
}

.fle {
display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.links {margin-top:20px;}
.sliderLink {
    color: #fff;
  text-decoration: navajowhite;
  background: rgba(255, 255, 255, 0.2);
  padding: 7px 15px;
  border-radius: 50px;
  margin-right: 10px;
  margin-bottom: 10px;
  display: block;

}
.nc_search input {
    background: #EFEEED;
  border-radius: 6px;
  border: none;
  padding: 6px 10px;
  width: 405px;
}
#menu-podval-2, #menu-podval-3 {
    display: block;
    height: unset;
}
/*----------------------
    Мобильное меню
----------------------*/
.accordion {
  width: 100%;
  max-width: 360px;
  margin: 30px auto 20px;
  background: #FFF;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.accordion .link {
  cursor: pointer;
  display: block;
  padding: 15px 15px 15px 42px;
  color: #4D4D4D;
  font-size: 14px;
  font-weight: 700;
  border-bottom: 1px solid #CCC;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.accordion li:last-child .link { border-bottom: 0; }

.accordion li i {
  position: absolute;
  top: 16px;
  left: 12px;
  font-size: 18px;
  color: #595959;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
/* Мобильное меню */
#menuToggle
{
  display: block;
  position: absolute;
  top: 20px;
  right: 20px;
  
  z-index: 1;
  
  -webkit-user-select: none;
  user-select: none;
}

#menuToggle input
{
  display: block;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  left: -5px;
  
  cursor: pointer;
  
  opacity: 0; /* hide this */
  z-index: 2; /* and place it over the hamburger */
  
  -webkit-touch-callout: none;
}

/*
 * Just a quick hamburger
 */
#menuToggle span
{
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  
  background: #0A58A5;
  border-radius: 3px;
  
  z-index: 1;
  
  transform-origin: 4px 0px;
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}

#menuToggle span:first-child
{
  transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2)
{
  transform-origin: 0% 100%;
}

/* 
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#menuToggle input:checked ~ span
{
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: #232323;
}
.wid {
    text-align: center;
}
/*
 * But let's hide the middle one.
 */
#menuToggle input:checked ~ span:nth-last-child(3)
{
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

/*
 * Ohyeah and the last one should go the other direction
 */
#menuToggle input:checked ~ span:nth-last-child(2)
{
  opacity: 1;
  transform: rotate(-45deg) translate(0, -1px);
}

/*
 * Make this absolute positioned
 * at the top left of the screen
 */
#menu
{
  position: absolute;
  width: 425px;
  margin: -100px 0 0 0;
  padding: 50px;
  padding-top: 125px;
  right: -75px;
  
  background: #fff;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  /* to stop flickering of text in safari */
  
  transform-origin: 0% 0%;
  transform: translate(100%, 0);
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#menu li
{
  padding: 10px 0;
  font-size: 16px;
}
#menu a li {color: #000;}
/*
 * And let's fade it in from the left
 */
#menuToggle input:checked ~ ul
{
  transform: none;
  display: block;
}

@media screen and (max-width: 768px) {
  #menu {
    transform: none;
    display: none;

    transition: opacity 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
  }
}

@media(max-width: 1025px) {
    .absolute {display: none;}
    .col-4 .card-item {
  width: 100%;
}
}

@media(min-width: 1025px) {
    .mobile {display: none;}
    .mobile-menu {display: none;}
}
.mobile-menu {
    position: fixed;
  background: #fff;
  width: 100%;
  padding: 20px 0;
}
.mobile-menu .logo {margin-left: 20px;}
ul.sub li a {font-size: 14px; color:#000;}
.menu-title {font-size: 18px;font-weight: 600;}
ul.sub li a:hover {text-decoration: underline;}
.two-columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 5px;
    row-gap: 5px;
    list-style-type: none;
    padding: 0;
}
.city-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 30px;
    list-style-type: none;
    padding: 0;
}
.city-cards .card-item {
    margin-right: 0;
    flex: unset;
    display: unset;
}
.city-cards .card-content {
    height: 100%;
}

.grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 20px;
    row-gap: 30px;
}
.center {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 30px;
}
.four-cols {
    display: grid;
    grid-template-columns: repeat(4, auto);
    column-gap: 20px;
    row-gap: 30px;
    list-style-type: none;
    padding: 0;
}
ul {
  list-style: none;
}

a {
  color: black;
}
.blocks-40 img {
    max-width: 100%;
}
body {
  font: normal 16px/1.5 Helvetica, sans-serif;
  background: linear-gradient(to right, #6814cd 0%, #3163f3 100%);
}

.tabs-container {
  max-width: 1200px;
}

.tabs {
  display: flex;
}

.tabs li:not(:last-child) {
  margin-right: 7px;
}

.tabs li a {
  display: block;
  position: relative;
  top: 4px;
  padding: 10px 25px;
  border-radius: 2px 2px 0 0;
  background: white;
  opacity: 0.7;
  transition: all 0.1s ease-in-out;
  border: 1px solid #000;
  padding: 6px 16px;
  border-radius: 6px;
  font-size: 14px;
}

.tabs li.active a,
.tabs li a:hover {
  opacity: 1;
  top: 0;
}

.tabs-content {
  position: relative;
  z-index: 2;
  border-radius: 0 4px 4px 4px;
  background: white;
}

.tabs-panel {
  display: none;
}

.tabs-panel.active {
  display: block;
}

.tabs-panel p + div {
  margin-top: 15px;
}
table {
    border: 1px solid #ddd;
    border-collapse: collapse;
    font-size: 14px;
}
table th {
	padding: 10px;
	background: #efefef;
	border: 1px solid #dddddd;
    text-align: left;
}
table td {
	border: 1px solid #dddddd;
	padding: 10px;
}
.tabs-content h2 {padding-top:20px;}
.action ul {
    display: grid;
    grid-template-columns: repeat(4, auto);
    column-gap: 20px;
    row-gap: 30px;
    list-style-type: none;
    padding: 0;
}
.cards-section ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 30px;
    list-style-type: none;
    padding: 0;
}
.bg-grey {
    background: #EFEEED;

}
.action ul li {
    background: #fff;
    padding: 35px;
    border-radius: 20px;
    position: relative;
}
.action ul li p {font-size: 16px;}
.numb {
    border: 1px solid;
    display: inline-block;
    padding: 10px 18px;
    border-radius: 50px;
    margin-bottom: 20px;
}
.action a {
    font-size: 14px;
    border-radius: 6px;
    border: 1px solid #000;
    padding: 6px 16px;
    bottom: 10px;
    position: absolute;
    margin-bottom: 5px;
}
}
@media screen and (max-width: 600px) {
  .tabs {
    flex-direction: column;
  }

  .tabs li {
    width: 100%;
  }

  .tabs li:not(:last-child) {
    margin-right: 0;
  }

  .tabs li a {
    border-radius: 0;
    opacity: 1;
    top: 0;
  }

  .tabs li.active a::before {
    content: "•";
    padding-right: 5px;
  }

  .tabs-content {
    border-radius: 0;
  }
}
.stat h1 {
    text-transform: uppercase;
    font-size: 40px;
    padding-top: 50px;
}
.blog {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    row-gap: 30px;
    list-style-type: none;
    padding: 0;
}
.blog img {
    max-width:100%;
    border-radius: 20px 20px 00 0;
}
.blog li {
    background: #fff;
    border-radius: 20px;
    position: relative;
}
.blog li .content {
    padding: 20px;
    margin-bottom: 30px;
}
.blog .date {
    position: absolute;
    bottom: 10px;
    left: 20px;
}
.blog h3 {
    margin-bottom: 20px;
}
.novosti {
    display: grid;
    grid-template-columns: 80% 20%;
    column-gap: 20px;
}
.podpis {
    margin-bottom: 30px;
    display: block;
}
.novosti p {
    margin-bottom: 20px;
}
.novosti h3 {
    font-size: 24px;
    margin-bottom: 20px;
}
.prem-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 30px;
    list-style-type: none;
    padding: 0;
}
.prem-cards li {
    background: #fff;
    border-radius: 20px;
    padding: 30px;
}
.prem-cards img {
    margin-bottom: 30px;
}
.prem-cards h3 {
    margin-bottom: 20px;
}
.bg-blue {
    background: #0A58A5;
    height: 60vh;
    background-image: url('/sob/img/pat.svg');
    background-repeat: space;
    background-position-y: -330px;
    background-size: cover;
}
.electro h1 {
    font-size: 140px;
    line-height: 130px;
    text-transform: uppercase;
    font-weight: 900;
    color: #fff;
    margin-top: 90px;
}
.rose-label {
    font-size: 20px;
    background: #F191BC;
    display: inline-block;
    padding: 16px 37px;
    border-radius: 28px;
    transform: rotate(10deg);
    margin-left: 748px;
    margin-bottom: -7px;
    position: absolute;
    right: 21rem;
    top: 20.5rem;
    z-index: 1;
    color: #fff;
}
.yellow-label {
    font-size: 44px;
    background: #FEC50C;
    display: inline-block;
    padding: 16px 37px;
    border-radius: 55px;
    transform: rotate(-7deg);
    margin-left: 744px;
    margin-bottom: -7px;
    position: absolute;
    right: 17rem;
    top: 25rem;
    color: #000;
    font-weight: 600;
}
.stroke {
    -webkit-text-stroke-width: 4px;
    -webkit-text-stroke-color: white;
    color: transparent;
}
.cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    list-style-type: none;
    padding: 0;
    column-gap: 20px;
}
.cards img {
    max-width: 100%;
}
.white-card {
    background: #fff;
    position: relative;
    border-radius: 20px;
    color: rgb(10, 88, 165);
}
.white-card .content {
    padding: 30px;
}
.white-card img {
     position: absolute;
     bottom: 0;
     border-radius: 20px 20px;
}
.white-card .bold {
    margin-bottom: 30px;
}
.blue-card {
    background: rgba(210, 234, 255, 1);
    padding: 30px;
    border-radius: 20px;
}
.light-blue {
    color: rgba(255, 255, 255, 0.5);
}
.blue-card p {
    margin-bottom: 30px;
}
.point {
    float: left;
    margin-right: 10px;
    margin-top: 7px;
}
.blue-card h2 {
    text-transform: unset;
}
.cards .round {
    float: left;
    margin: 10px;
}
.sub-grid {
    display: grid;
    grid-template-columns: auto;
    row-gap: 40px;
}
.dark-blue {
    background: rgb(8, 140, 203);
    border-radius: 20px;
    padding: 30px;
    color: #fff;
}
.dark-blue h2 {
    text-transform: unset;
}
.city {
    margin-left: 20px;
}
.super-text {
    font-size: 140px;
    line-height: 130px;
    text-transform: uppercase;
    font-weight: 900;
    color: #fff;
    margin-top: 40px;
}
.super-text .stroke {
    font-size: 100px;
}
.right {
    text-align: right;
}
.white-card-one {
    background: #fff;
    padding: 40px;
    display: grid;
    grid-template-columns: 60% 40%;
    border-radius: 20px;
}
.yellow-card-one {
    background: #fed03c;
    padding: 40px;
    color: #ED1C2E;
    display: grid;
    grid-template-columns: 40% 60%;
    border-radius: 20px;
}
.yellow-card-one .point {
    margin-top: 0;
}
.colored-cards {
    display: grid;
    grid-template-columns: 25% 45% 30%;
    column-gap: 20px;
    row-gap: 20px;
    font-size: 18px;
}
.white-сard {
    background: #fff;
    padding: 40px 30px;
    border-radius: 20px;
    color: #0956a3;
}
.colored-cards h3 {
    font-size: 24px;
    line-height: 30px;
    padding-bottom: 30px;
}
.colored-cards p {
    font-size: 18px;
    padding-bottom: 30px;
}
.blue-сard {
    background: #068ccb;
    padding: 40px 30px;
    border-radius: 20px;
    color: #fff;
}
.blue-сard a {
    border: 1px solid #fff;
    padding: 15px 20px;
    display: block;
    text-align: center;
    border-radius: 20px;
    font-size: 22px;
    text-decoration: none;
    color: #fff;
    cursor: pointer;
}
.light-blue-сard {
    background: #d3eaff;
    padding: 40px 30px;
    border-radius: 20px;
}
.yellow-сard {
    background: #fec50e;
    padding: 40px 30px;
    border-radius: 20px;
}
.yellow-сard a {
    border: 1px solid #000;
    padding: 15px 20px;
    display: block;
    text-align: center;
    border-radius: 20px;
    font-size: 22px;
    text-decoration: none;
    color: #000;
    cursor: pointer;
}
.bg-white {
    background: #fff;
}
.friends {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.friends img {
    border-radius: 50%;
}
.text-36 {
    font-size: 36px;
    text-align: center;
    color: #0b58a5;
}
.but-y {
    display: inline-block;
    background: #FEC50C;
    padding: 20px 40px;
    margin-top: 40px;
    border-radius: 20px;
    text-decoration: unset;
    font-size: 18px;
}
.donate {
    display: grid;
    grid-template-columns: 70% 30%;
    column-gap: 45px;
}
.donate p {
    padding-bottom: 20px;
}
.donate .blue h2 {
    font-size: 44px;
}
.donate .blue p {
     font-size: 18px;
}
.donate-card {
    background: #0a58a5;
    padding: 40px;
    color: #fff;
    border-radius: 20px;
  }
.donate-card img {
    margin-bottom: 40px;
}
.donate-card h3 {
    margin-bottom: 30px;
}
.donate-card p {
    margin-bottom: 90px;
}
.donate-card a {
    display: block;
    background: #fec50e;
    text-align: center;
    padding: 16px;
    border-radius: 20px;
    margin-top: 60px;
    font-size: 22px;
    text-decoration: none;
}
.expert {
    display: grid;
    grid-template-columns: 30% 70%;
    column-gap: 20px;
    padding: 60px 0;
}
p {
    padding-bottom: 20px;
}
.expert img {
    border-radius: 50%;
    float: left;
    margin-right: 20px;
}
.faq a {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    color: #000;
    font-size: 1.15rem;
    font-weight: 400;
    color: #A9CFF1;
}
.blocks-2 {
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-areas: "block1 block2";
}
.block1 { grid-area: block1;}
.block2 { grid-area: block2;}
.donate-li li {
    display: grid;
    grid-template-columns: 1fr auto;
    column-gap: 10px;
}
.l-grey h2 {
   color: #0A58A5;
}
.faq dt:hover,
.faq dt:hover::after {
  cursor: pointer;
  color: #f22613;
}
.faq dt:hover::after {
    border: 1px solid #f22613;
}
.faq dt.active {
    color: #0a58a5;
    border-bottom: none;
}
.faq .answer {
    opacity: 0;
    padding: 0 1rem;
    max-height: 0;
    border-bottom: 1px solid #e5e5e5;
    overflow: hidden;
    clear: both;
    -webkit-transition: all 0.2s ease 0.15s;
    -o-transition: all 0.2s ease 0.15s;
    transition: all 0.2s ease 0.15s;
}
.faq .answer p {
    font-size: 1rem;
    font-weight: 300;
  }
.faq .answer.active {
    opacity: 1;
    padding: 1rem;
    max-height: 100%;
    -webkit-transition: all 0.35s ease 0.15s;
    -o-transition: all 0.35s ease 0.15s;
    transition: all 0.35s ease 0.15s;
    border: 1px solid #0a58a5;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: rgb(10, 88, 165);
    border-top: none;
}
.donate-li img {
    align-self: center;
}
.donate-li p {
    display: contents;
}
.donate-li li {
    margin-bottom: 20px;
}
.blocks-40 {
    display: grid;
    grid-template-columns: 40% 60%;
    column-gap: 20px;
}
.blocks-40 img {
        border-radius: 15px;
        margin-bottom: 30px;
}

.mini {
    color: #666666;
    font-size: 18px;
}
.max-price {
    color: #0A58A5;
    font-size: 100px;
    font-weight: bold;
}
.des {
    font-size: 24px;
    color: #0A58A5;
}
.question {
    padding: 20px;
    border: 1px solid #0a58a5;
    margin-top: 10px;
    color: #0a58a5;
    font-size: 20px;
}
.answer {
    background: #fff;
    margin-left: 0;
}
.years {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    column-gap: 20px;
    text-align: center;
    color: #fff;
}
.years a {
    display: block;
    border: 1px solid #EFEEED80;
    color: #EFEEED80;
    border-radius: 4px;
    margin-bottom: 10px;
}
.dela {
    display: grid;
    grid-template-columns: 40% 20% 40%;
    color: #fff;
    column-gap: 30px;
}
.dela h2 {
    font-size: 40px;
}
.cap2 {
    margin-top: 180px;
}
.dela img {
    margin-top: 185px;
}
.inner-slider {
    border-bottom: 1px solid #fff;
}
.donation-widget-period-buttons-block-item .mat-tab-group .mat-tab-label.mat-tab-label-active {
    background-color: #0b58a5 !important;
    border-radius: 8px 15px 0 0 !important;
    color: #ffffff !important;
    border: 1px solid #fff !important;
}
.donation-widget-gateway-buttons-block-item-button.active {
    border: 2px solid #0b58a5;
    background-color: var(--donation-background-primary);
    color: var(--donation-main-text);
}
/*---SCREENS---*/
@media (max-width: 1600px) {
    .rose-label {right: 16rem;}
    .yellow-label {right: 12rem;}
}
@media (max-width: 1536px) {
    .rose-label {right: 16rem;}
    .yellow-label {right: 12rem;}
}
@media (max-width: 1440px) {
    .rose-label {right: 9rem;}
    .yellow-label {right: 8rem;}
}
@media (max-width: 1366px) {
    .rose-label {right: 7rem;}
    .yellow-label {right: 4rem;}
}
@media (max-width: 1280px) {
    .rose-label {right: 7rem;}
    .yellow-label {right: 2rem;}
}
@media (max-width: 1100px) {
    .city-cards {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 1024px) {
    .electro h1 {
        font-size: 100px;
        line-height: 100px;
    }
    .rose-label {right: 4rem; margin-left: 600px; top: 17.5rem;}
    .yellow-label {right: 2rem; margin-left: 590px; top: 22rem;}
    .super-text {
        font-size: 105px;
        line-height: 110px;
    }
}
@media (max-width: 900px) {
    .city-cards {
        grid-template-columns: repeat(2, 1fr);
    }
    .prem-cards {
        grid-template-columns: repeat(2, 1fr);
    }

}
@media (max-width: 475px) {
.wid {
    text-align: left;
}
.blocks-40 {
    grid-template-columns: 1fr;
}
.blocks-2 {
    grid-template-columns: 1fr;
    grid-template-areas:
      "block2"
      "block1"; /* меняем порядок местами */
  }
.text-block p {
    text-align: left;
    font-size: 24px;
}
.dela {
    grid-template-columns: 35% 10% 35%;
}
.dela h2 {
    font-size: 16px;
}
.dela img {
    margin-top: 120px;
    width: 31px;
}
.cap2 {
    margin-top: 120px;
}
.promo-link__text {
    font-size: 16px;
    line-height: 1;
}
.promo-link__icon {
    width: 40px;
    height: 40px;
}
.faq__title {
    font-size: 22px;
}
    .blog {
        grid-template-columns: repeat(1, 1fr);
    }
    .city-cards {
        grid-template-columns: repeat(1, 1fr);
        row-gap: 0px;position: relative;
        z-index: 2;
    }
    .four-cols {grid-template-columns: repeat(1, auto);}
    .grid {grid-template-columns: repeat(2, 1fr);}
    iframe {width: 100%;}
    .action ul {
        grid-template-columns: repeat(1, auto);
    }
    .action .content {
        margin-bottom: 30px;
    }
    .action ul {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
    }
    .prem-cards {
        grid-template-columns: repeat(1, 1fr);
    }
     .electro h1 {
        font-size: 70px;
        line-height: 75px;
      }
      .rose-label {
        right: 7rem;
        margin-left: 0;
        top: 17.5rem;
      }
      .yellow-label {
        right: 5rem;
        margin-left: 0;
        top: 22rem;
        font-size: 32px;
      }
      .cards {
          grid-template-columns: repeat(1, 1fr);
          row-gap: 30px;
      }
      .mobile-menu {z-index: 6;}
       .super-text {
        font-size: 71px;
        line-height: 81px;
      }
      .super-text .stroke {
        font-size: 60px;
        }
        .white-card-one {
            grid-template-columns: 100%;
        }
        .colored-cards {
            grid-template-columns: 100%;
        }
        .donate {
            grid-template-columns: 100%;
        }
        .expert {
            grid-template-columns: 100%;
            row-gap: 20px;
        }
        .years {
            grid-template-columns: repeat(3, 1fr);
        }
}
@media (max-width: 390px) {
    .electro h1 {
        font-size: 56px;
        line-height: 60px;
      }
      .rose-label {
        right: 3rem;
        margin-left: 0;
        top: 17.5rem;
      }
      .yellow-label {
          right: 3rem;
      }
}
.donation-widget-container {position: relative; z-index: 2;}
:root{
  --blue:#1372ff;
  --pink:#ffd8d3;
  --yellow:#ffc400;
  --radius:28px;           /* большие скругления как на макете */
  --gap:24px;
}

/* Контейнер двух карточек */
.eco-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:var(--gap);
  max-width:1200px;
  margin:0 auto;
  padding: 10px 0;
}

/* Карточка = 2 колонки (текст/фото) на десктопе, 1 колонка на мобиле */
.eco-card{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  border-radius:var(--radius);
  overflow:hidden;                /* чтобы у фото были те же скругления */
  background:#fff;
  min-height:340px;
}
.eco-card--blue{ background:var(--blue); color:#fff; }
.eco-card--pink{ background:var(--pink); color:#0b0b0c; }

/* Контент */
.eco-card__content{
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
}
.eco-card__content h2{
  margin:0;
  font-size:28px;
  line-height:1.15;
  text-transform:uppercase;
  letter-spacing:.2px;
}
.eco-card__content p{
  margin:0;
  font-size:16px;
  line-height:1.5;
  opacity:.95;
}

/* Фото справа (object-fit cover) */
.eco-card__image{
  margin:0;
  position:relative;
}
.eco-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Кнопка */
.eco-btn{
  align-self:flex-start;
  text-decoration:none;
  background:var(--yellow);
  color:#0b0b0c;
  font-weight:600;
  padding:12px 22px;
  border-radius:15px;
  transition:transform .06s ease, filter .2s ease;
}
.eco-btn:active{ transform:translateY(1px); }
.eco-btn:hover{ filter:brightness(1.05); }

/* ---------- Мобильная версия (как на скрине) ---------- */
@media (max-width: 820px){
  .eco-grid{
    grid-template-columns:1fr;
    gap:20px;
    padding:20px 12px;
  }
  .eco-card{
    grid-template-columns:1fr;    /* одна колонка */
    grid-template-rows:auto 220px;/* текст сверху, фото снизу фикс. высоты */
    min-height:unset;
    border-radius:24px;
  }
  .eco-card__content{
    padding:18px 16px 14px 16px;  /* плотнее внутренние отступы */
  }
  .eco-card__image{
    height:220px;                 /* высота блока с фото на мобиле */
  }
  /* важное: на мобиле фото идёт ПОСЛЕ текста (как в твоём примере) */
  .eco-card__content{ order:1; }
  .eco-card__image{ order:2; }
  .eco-card__content h2{ font-size:22px; }
}

/* небольшая защита кнопки от прилипания к краю */
@supports (padding:max(0px)) {
  .eco-card__content{ padding-bottom:max(14px, env(safe-area-inset-bottom)); }
}
:root{
  --green:#07A17C;
  --lime:#CBEF00;
  --blue:#0F5CA8;
  --yellow:#FFC400;
  --radius:34px;
  --gap:24px;
  --text:#0b0b0c;
}

/* Контейнер */
.promo3{
  max-width:1300px;
  margin:0 auto;
  padding:32px 16px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--gap);
}

/* Карточка */
.card{
  position:relative;
  border-radius:var(--radius);
  overflow:hidden;
  display:grid;                 /* позволяет легко делить на колонки у 3-й карточки */
  min-height:360px;
}
.card--green{ background:var(--green); color:#fff; }
.card--lime { background:var(--lime);  color:#000; }
.card--blue { background:var(--blue);  color:#fff; }

/* Контент */
.card__content{
  padding:32px 28px 28px;
  display:flex;
  flex-direction:column;
  gap:18px;
  justify-content:center;
}
.card__content h3{
  margin:0;
  font-size:28px;
  line-height:1.12;
  text-transform:uppercase;
  letter-spacing:.2px;
}
.card__content p{
  margin:0;
  font-size:16px;
  line-height:1.55;
}

/* Кнопка */
.btn{
  width:max-content;
  text-decoration:none;
  background:var(--yellow);
  color:#000;
  font-weight:700;
  padding:12px 22px;
  border-radius:18px;
  box-shadow:0 1px 0 rgba(0,0,0,.1) inset;
  transition:filter .2s ease, transform .06s ease;
}
.btn:hover{ filter:brightness(1.06); }
.btn:active{ transform:translateY(1px); }

/* Средняя — водяной знак-стрелка */
.card--mark::after{
  content:"";
  position:absolute;
  right:-6%;
  bottom:-12%;
  width:56%;
  aspect-ratio:1/1;
  background:#fff;
  -webkit-mask:url('data:image/svg+xml;utf8,\
  <svg xmlns="http://www.w3.org/2000/svg" viewBox=\"0 0 100 100\">\
    <path d=\"M50 8a42 42 0 1 1-29.7 12.3\" fill=\"none\" stroke=\"black\" stroke-width=\"14\" stroke-linecap=\"round\"/>\
    <path d=\"M14 21l9-1-1 9z\" fill=\"black\"/>\
  </svg>') center/contain no-repeat;
  mask:url('data:image/svg+xml;utf8,\
  <svg xmlns="http://www.w3.org/2000/svg" viewBox=\"0 0 100 100\">\
    <path d=\"M50 8a42 42 0 1 1-29.7 12.3\" fill=\"none\" stroke=\"black\" stroke-width=\"14\" stroke-linecap=\"round\"/>\
    <path d=\"M14 21l9-1-1 9z\" fill=\"black\"/>\
  </svg>') center/contain no-repeat;
  opacity:.92;
  pointer-events:none;
}

/* Правая — сплит (контент + фото справа) */
.card--split{
  grid-template-columns:1.05fr 1fr;
}
.card__image{ margin:0; }
.card__image img{
  width:100%; height:100%; object-fit:cover; display:block;
}

/* ------------------ МОБИЛЬНАЯ ВЕРСИЯ (как на скрине) ------------------ */
@media (max-width: 1100px){
  .promo3{ grid-template-columns:1fr; gap:22px; padding:24px 12px; background:#eee; }
  .card{ min-height:unset; border-radius:28px; }
  .card__content{ padding:26px 22px 18px; gap:16px; }
  .card__content h3{ font-size:26px; }
  .btn{ padding:14px 22px; border-radius:20px; font-size:18px; }
  /* правая: фото снизу и БОЛЬШОЕ как на макете */
  .card--split{ grid-template-columns:1fr; grid-template-rows:auto 520px; }
  .card__image{ height:520px; }
  /* стрелка у средней — чуть меньше и выше, чтобы не мешала тексту */
  .card--mark::after{ width:62%; right:-10%; bottom:-9%; opacity:.96; }
}

/* узкие экраны (iPhone SE/старые Android) */
@media (max-width: 360px){
  .card__content h3{ font-size:24px; }
  .btn{ font-size:16px; padding:12px 18px; }
  .card--split{ grid-template-rows:auto 420px; }
  .card__image{ height:420px; }
}
>
:root{
  --gap:22px; --r:28px;
  --green:#07A17C; --lime:#D7F000; --blue:#0F5CA8;
  --btn:#FFC400;
}

/* Контейнер ряда: 4 колонки => [1][1][2] */
.row-eco-3{
  max-width:1280px; margin:0 auto; padding:28px 16px;
  display:grid; gap:var(--gap);
  grid-template-columns:repeat(4,1fr);
  align-items:stretch;
}

/* Карточка */
.card{
  position:relative; overflow:hidden; border-radius:var(--r);
  display:grid; background:#fff; min-height:360px; border-radius: var(--radius);
}
.g--green{ background:var(--green); color:#fff; }
.g--lime { background:var(--lime);  color:#000; }
.g--blue { background:var(--blue);  color:#fff; }

.c{
  display:flex; flex-direction:column; gap:18px; justify-content:center; z-index:1;
}

/* Кнопка */
.btn{
  align-self:flex-start; text-decoration:none;
  background:var(--btn); color:#000; font:700 22px/1 Inter,system-ui;
  padding:18px 32px; border-radius:22px;
  transition:filter .2s ease, transform .06s ease;
}
.btn:hover{ filter:brightness(1.06) } .btn:active{ transform:translateY(1px) }

/* Сплит (для широкой правой) */
.split{ grid-template-columns:1.05fr 1fr; }
.pic{ margin:0; }
.pic img{ width:100%; height:100%; object-fit:cover; display:block; }



/* Бейдж на лаймовой */
.badge{ position:absolute; left:48%; top:46%; width:56px; height:56px; border-radius:50%; background:#fff; display:grid; place-items:center; box-shadow:0 2px 10px rgba(0,0,0,.15) }
.badge img{ width:44px; height:44px; border-radius:50% }

/* Адаптив */
@media (max-width: 1100px){
  .row-eco-3{ grid-template-columns:repeat(2,1fr); }
  /* сохраняем композицию: правая займёт всю строку, как и должно */
  .row-eco-3 > .card[style*="span 2"]{ grid-column:1 / -1 !important; }
  .split{ grid-template-columns:1fr; grid-template-rows:auto 260px; }
  .pic{ height:260px; }
}

@media (max-width: 560px){
  .row-eco-3{ grid-template-columns:1fr; gap:18px; }
  .card{ border-radius:24px; min-height:unset }
  .split{ grid-template-rows:auto 360px; }
  .pic{ height:360px; }
}
/* 1) Контентные колонки тянем на всю высоту карточек */
.c,
.eco-card__content {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* (необязательно) Чтоб в split-карточке контент точно растягивался по высоте колонки */
.split { align-items: stretch; }
/* Контейнер ряда: [2 колонки] + [1] + [1] */
.row-eco-3.row-eco-3--rev{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  max-width:1280px;
  margin:0 auto;
  padding:28px 16px;
}

/* Цвета ТОЛЬКО внутри этого ряда */
.row-eco-3--rev > article:nth-child(1){ background:#0F7AF5; color:#fff; } /* Экомобиль (большая) */
.row-eco-3--rev > article:nth-child(2){ background:#B600FF; color:#fff; } /* Боксы */
.row-eco-3--rev > article:nth-child(3){ background:#0F5CA8; color:#fff; } /* Электросбор */

/* Большая карточка тянется на 2 колонки (структуру внутри не трогаем) */
.row-eco-3--rev > article:nth-child(1){ grid-column:span 2; }

/* Кнопка уезжает вниз ТОЛЬКО в этом ряду */
.row-eco-3--rev .eco-card__content,
.row-eco-3--rev .c{
  display:flex;
  flex-direction:column;
  height:100%;
}
.row-eco-3--rev .eco-card__content > .eco-btn,
.row-eco-3--rev .c > .eco-btn{ margin-top:auto; }

/* Картинка в правой колонке сплит-карточки (большая) */
.row-eco-3--rev .split .eco-card__image img{
  width:100%; height:100%; object-fit:cover; display:block; opacity:.9;
}

/* «Схема» внизу у 3-й карточки (замени URL на свою) */
.row-eco-3--rev > article:nth-child(3){
  position:relative; overflow:hidden;
}
.row-eco-3--rev > article:nth-child(3)::after{
  content:"";
  position:absolute; right:0; bottom:0;
  width:92%; height:70%;
  background:url("/img/circuit.png") right bottom / contain no-repeat;
  pointer-events:none;
}

/* Адаптив — только для этого ряда */
@media (max-width:1100px){
  .row-eco-3--rev{ grid-template-columns:repeat(2,1fr); }
  .row-eco-3--rev > article:nth-child(1){ grid-column:1 / -1; } /* большая на всю строку */
}
@media (max-width:560px){
  .row-eco-3--rev{ grid-template-columns:1fr; gap:18px; }
}
.row-eco-3{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  max-width:1200px;
  margin:0 auto;
  padding: 10px 0;
}

/* Цвета только для этого ряда */
.g--blue    { background:#0075FF; color:#fff; }  /* Экомобиль */
.g--violet  { background:#B600FF; color:#fff; }  /* Боксы */
.g--darkblue{ background:#0F5CA8; color:#fff; }  /* Электросбор */

/* Карточки */
.card, .eco-card{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  min-height:360px;
  display:grid;
}
.c, .eco-card__content{
  display:flex;
  flex-direction:column;
  gap:18px;
  height:100%;
}


.eco-btn:hover{ filter:brightness(1.08) }
.eco-btn:active{ transform:translateY(1px) }

/* Широкая (слева) карточка: контент + фото справа */
.split{ grid-template-columns:1.05fr 1fr; align-items:stretch; }
.eco-card__image{ margin:0; }
.eco-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Картинка-схема у Электросбора */
.pattern{
  position:absolute;
  right:0;
  bottom:0;
  width:100%;
  height:100%;
  background:url('img/circuit.png') right bottom/cover no-repeat;
  opacity:.85;
  pointer-events:none;
}
.g--back {
    background-size: cover !important;
    background-position-y: bottom !important;
}
/* Адаптив */
@media (max-width:1100px){
  .row-eco-3{ grid-template-columns:repeat(2,1fr); }
  .split{ grid-template-columns:1fr; grid-template-rows:auto 260px; }
  .eco-card__image{ height:260px; }
}
@media (max-width:560px){
  .row-eco-3{ grid-template-columns:1fr; gap:18px; }
  .eco-card, .card{ border-radius:24px; min-height:320px; }
  .eco-card__image{ height:360px; }
}
/* Прижимает кнопки к низу карточек ровно, без сдвигов */
.row-eco-3 .c,
.row-eco-3 .eco-card__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* ключевая строка */
  height: 100%;
}

.row-eco-3 .eco-btn {
  align-self: flex-start;
  margin-top: auto; /* для совместимости с длинными текстами */
}
/* ====== только для этого блока ====== */
.row-eco-4{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  padding: 10px 0;
}

/* карточки */
.row-eco-4 .eco4-card{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  min-height:360px;
  display:grid;
}

/* контент + прижать кнопку вниз */
.row-eco-4 .eco4-content{
  padding:30px 26px;
  display:flex;
  flex-direction:column;
  gap:18px;
  height:100%;
}
.row-eco-4 .eco-btn{
  margin-top:auto;                 /* прижимаем вниз */
  align-self:flex-start;
  display:inline-block;
  transition:filter .2s, transform .06s;
}
.row-eco-4 .eco4-btn:hover{ filter:brightness(1.06) }
.row-eco-4 .eco4-btn:active{ transform:translateY(1px) }

/* цвета как на макете */
.row-eco-4 .eco4--lb   { background:#BFD9F2; color:#000; } /* светло-голубой */
.row-eco-4 .eco4--lp   { background:#F9CFC7; color:#000; } /* светло-розовый */
.row-eco-4 .eco4--green{ background:#08A57D; color:#fff; } /* зелёный */
.row-eco-4 .eco4--blue { background:#0F7AF5; color:#fff; } /* ярко-синий */

/* адаптив */
@media (max-width:1100px){
  .row-eco-4{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .row-eco-4{ grid-template-columns:1fr; gap:18px; padding: 10px 12px;}
  .row-eco-4 .eco4-card{ border-radius:24px; min-height:320px; }
  .row-eco-4 h2{ font-size:30px; }
  .row-eco-4 p { font-size:18px; }
}
/* База: у карточки уже есть overflow:hidden и скругления */
.card.g--darkblue{ position:relative; }

/* Контент поверх картинки */
.card.g--darkblue .c{ position:relative; z-index:2; }

/* Схема PNG внизу справа, масштабируется как на макете */
.card.g--darkblue .schematic{
  position:absolute;
  right:0;
  bottom:0;
  height:68%;          /* высота рисунка относительно карточки */
  width:auto;          /* сохраняем пропорции PNG */
  object-fit:contain;  /* безопасно ужимается по высоте */
  z-index:1;
  pointer-events:none;
  user-select:none;
}

/* Небольшая правка для узких экранов (если блок адаптивный) */
@media (max-width: 560px){
  .card.g--darkblue .schematic{ height:60%; }
}
/* Мобильная раскладка для блока с тремя карточками */
@media (max-width: 768px){
  .row-eco-3{
    display: grid;
    grid-template-columns: 1fr;   /* все карточки друг под другом */
    gap: 18px;
  }

  /* широкая карточка-сплит: картинка уходит вниз */
  .row-eco-3 .split{
    grid-template-columns: 1fr;
    grid-template-rows: auto 260px;   /* высоту можно подправить */
  }
  .row-eco-3 .eco-card__image{ height: 260px; }
}

/* (необязательно) прижать кнопки к низу карточек */
.row-eco-3 .c,
.row-eco-3 .eco-card__content{
  display:flex; flex-direction:column; height:100%;
}
.row-eco-3 .eco-btn{ margin-top:auto; }
/* --- МОБИЛЬНАЯ ВЕРСИЯ БЛОКА row-eco-3 --- */
@media (max-width: 768px){

  .row-eco-3{
    display:grid;
    grid-template-columns: 1fr;     /* одна колонка */
    gap: 18px;
    min-width: 0;
    padding: 10px 12px;
  }

  /* Сбросить inline grid-column (span 1/2) у ВСЕХ карточек */
  .row-eco-3 > article{
    grid-column: 1 / -1 !important; 
    border-radius: 28px;
    overflow: hidden;
    min-width: 0;
    position: relative;
    z-index: 0;
    isolation: isolate;             /* чтобы фон/декор не вылезал поверх соседей */
  }

  /* Сплит-карточка: картинка уходит вниз фиксированной высоты */
  .row-eco-3 .split{
    grid-template-columns: 1fr;
    grid-template-rows: auto 56vw;  /* высота картинки ~ 56% ширины; можно подправить */
  }
  .row-eco-3 .eco-card__image{ height: 56vw; }

  /* Паддинги и типографика компактнее, по желанию */
  .row-eco-3 .c,
  .row-eco-3 .eco-card__content{
    padding: 22px 18px;
  }

  /* Если у «Акций» есть псевдоэлемент-стрелка, держим его внутри */
  .row-eco-3 .g--mark{ overflow:hidden; }
  .row-eco-3 .g--mark::after{
    right: -10%;
    bottom: -8%;
    width: 70%;
    max-width: 520px;
  }

  /* Кнопки у низа (на всякий случай) */
  .row-eco-3 .c,
  .row-eco-3 .eco-card__content{
    display:flex;
    flex-direction:column;
    height:100%;
  }
  .row-eco-3 .eco-btn{ margin-top:auto; align-self:flex-start; }
}
/* ===== hero-brand (только этот блок) ===== */
.hero-brand{
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px 16px 8px;
  text-align: center;
}

.hero-brand__word{ margin: 0; margin-bottom: 50px;}
.hero-brand__word img{
  display: block;
  width: 100%;
  height: auto;
  /* небольшая «воздушность» вокруг SVG */
  filter: drop-shadow(0 0 0 rgba(0,0,0,0)); /* без тени, но сохраняет crisp рендер */
}

/* Подзаголовок */
.hero-brand__tagline{
  margin: 12px 0 0;
  font: 600 28px/1.35 system-ui, -apple-system, Segoe UI, Roboto, Arial;
  color: #155FAE; /* насыщенно-синий из логотипа */
}

.hero-brand__accent{
  font-weight: 800;
  font-style: italic;
  text-underline-offset: 3px;
}

/* Адаптив */
@media (min-width: 900px){
  .hero-brand{ padding-top: 32px; }
  .hero-brand__tagline{ font-size: 32px; }
}
@media (min-width: 1200px){
  .hero-brand__tagline{ font-size: 20px; }
}
/* ===== Mobile look for the hero-brand block ===== */
@media (max-width: 640px){
  .hero-brand{
    max-width: 100%;
    padding: 18px 16px 8px;
    text-align: left;                 /* влево как на макете */
    margin-top: 60px;
  }

  /* логотип компактнее */
  .hero-brand__word img{
    width: 100%;                       /* подгон по скрину; можно 80–86% */
    max-width: 420px;
    height: auto;
    margin: 0;                        /* без центрирования */
  }

  /* подзаголовок — плотнее и меньше */
  .hero-brand__tagline{
    margin-top: 14px;
    font-size: 21px;
    line-height: 1.25;
    color: #155FAE;
  }
  .g--back {background-position-y: unset !important;}

  /* акцент: жирный курсив без подчёркивания */
  .hero-brand__accent{
    font-weight: 800;
    font-style: italic;
    text-decoration: none;
  }
  .hero-brand__word {
    margin-bottom: 20px;
}
}
