/*Theme Name: NFC Audit
Theme URI:
Author: Mikhail Epikhin
Author URI:
Description: Original theme
Version: 1.0*/

@font-face {
	font-family: 'Circe';
	src: url('fonts/Circe-Regular.eot');
	src: local('☺'), url('fonts/Circe-Regular.woff') format('woff'), url('fonts/Circe-Regular.ttf') format('truetype'), url('fonts/Circe-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Circe';
	src: url('fonts/Circe-Light.eot');
	src: local('☺'), url('fonts/Circe-Light.woff') format('woff'), url('fonts/Circe-Light.ttf') format('truetype'), url('fonts/Circe-Light.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Circe';
	src: url('fonts/Circe-Bold.eot');
	src: local('☺'), url('fonts/Circe-Bold.woff') format('woff'), url('fonts/Circe-Bold.ttf') format('truetype'), url('fonts/Circe-Bold.svg') format('svg');
	font-weight: bold;
	font-style: normal;
}

html{height: 100%;}
body{margin: 0 auto; padding-top: 60px !important; height: 100%; white-space: normal; font-family: 'Circe', sans-serif; color: #000000; background: #FFFFFF; line-height: 1.1; font-size: 20px; font-weight: normal;}

a,input{color: #000000; text-decoration: none;}
a, input, label, label::before, select, textarea, a *, button, .button, .popup-container, .popup, .top, .main-menu > li > .sub-menu, .tab, .tab::before{
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

*{position: relative; margin: 0px; padding: 0px; list-style: none; vertical-align: top; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; appearance: none !important; background: none; -moz-border-radius: 0px; -webkit-border-radius: 0px; -khtml-border-radius: 0px; border-radius: 0px; border: 0; font-family: inherit; font-weight: inherit; line-height: 1.1;}

b, strong, b *, strong *{font-weight: bold;}
p, p *{line-height: 1.4;}
p a{color: #3E619B;}
p a:hover{color: #355384;}

.wrapper{margin: 0 auto; max-width: 1400px; padding: 30px;}
.phone{white-space: nowrap;}

.photo picture{position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; overflow: hidden;}
.photo picture img{display: block; width: 100%; height: 100%; object-fit: cover;}

@media only screen and (max-width: 767px) {
body{padding-top: 40px !important; font-size: 16px;}
::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
.wrapper{padding-left: 15px; padding-right: 15px;}
}

/* Кнопки */

.button{display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 15px 30px; min-width: 210px; color: #FFFFFF; font-family: 'Circe', sans-serif; font-size: 20px; font-weight: bold; background: #BA181B; border-radius: 6px; white-space: nowrap; cursor: pointer;}
.button:hover{background: #A4161A;}

.btn-secondary{color: #FFFFFF; background: #3E619B;}
.btn-secondary:hover{background: #355384;}

.buttons{display: flex; gap: 15px;}

/* Попапы */

.popup-container{position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; display: flex; justify-content: center; align-items: center; opacity: 0; visibility: hidden; z-index: 90;}
.popup-visible{opacity: 1; visibility: visible;}
.popup-container > .popup-overlay{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; background: rgba(42, 57, 80, 0.5); cursor: pointer;}
.popup{padding: 60px 30px 30px; width: 450px; color: #FFFFFF; background: #2A3950; border-radius: 12px; box-shadow: 0px 2px 30px 0px rgba(0, 0, 0, 0.1); overflow-y: scroll; scrollbar-width: none;}
.popup-visible .popup{margin: 0px;}
.popup::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
.popup > .popup-close{position: absolute; top: 10px; right: 10px; padding: 0px; width: 30px; height: 30px; background: url('images/icons/close.svg') center center no-repeat; background-size: 20px 20px; z-index: 1;}

.popup .headline{display: block; margin-bottom: 30px; text-align: center; font-size: 30px; font-weight: bold;}

.popup .f-submit{flex-direction: column; align-items: stretch; gap: 15px;}
.popup .form-agree{text-align: center;}

@media only screen and (max-width: 767px) {
.popup{padding: 60px 15px 30px; width: auto; max-width: 100%;}
.popup .headline{margin-bottom: 20px; font-size: 20px;}
}

/* Сетка формы */

.form-layout{display: flex; flex-wrap: wrap; gap: 20px 15px;}
.f-100{width: 100%;}
.f-50{width: calc(50% - 7.5px);}
.f-label{display: block; margin-bottom: 10px; font-size: 16px; font-weight: bold;}
.f-submit{display: flex; align-items: center; gap: 30px; margin-top: 10px; width: 100%;}
.form-agree{color: rgba(255, 255, 255, 0.5); font-size: 14px;}
.form-agree a{color: #FFFFFF !important;}

@media only screen and (max-width: 767px) {
.f-submit{flex-direction: column; align-items: stretch; gap: 15px;}
.form-agree{text-align: center;}
}

@media only screen and (max-width: 480px) {
.f-50{width: 100%;}
}

/* Поля форм */

.form-field{display: block; width: 100%; padding: 15px; color: #FFFFFF; font-size: 20px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 6px; overflow-x: hidden;}
.form-field:hover{border-color: rgba(255, 255, 255, 0.5);}
.form-field:focus{border-color: rgba(255, 255, 255, 1);}

input::-webkit-input-placeholder{color: rgba(255, 255, 255, 0.5);}
input:-moz-placeholder{color: rgba(255, 255, 255, 0.5);}
textarea::-webkit-input-placeholder{color: rgba(255, 255, 255, 0.5);}
textarea:-moz-placeholder{color: #938B8B;}
button{background: none; color: inherit; border: none; padding: 0; font: inherit; cursor: pointer; outline: inherit;}

:active, :hover, :focus{outline: 0; outline-offset: 0;}
textarea{resize: none; overflow: auto; min-height: 120px}

/* Contact form 7 */

.wpcf7-spinner{position: absolute !important; top: 12px; right: 50%; transform: translate(50%, 0%); margin: 0px !important;}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form .wpcf7-response-output{position: absolute; top: -15px; left: -15px; right: -15px; bottom: -15px; display: flex; justify-content: center; align-items: center; margin: 0px !important; padding: 30px !important; text-align: center; color: #FFFFFF; line-height: 1.4; font-size: 20px; background: #2A3950; border: 0 !important; border-radius: 12px; opacity: 0; visibility: hidden; animation: 3s alert-show ease;}

@keyframes alert-show {
  0% {top: -15px; opacity: 0; visibility: hidden;}
  15% {top: 0px; opacity: 1; visibility: visible;}
  85% {top: 0px; opacity: 1; visibility: visible;}
  100% {top: -15px; opacity: 0; visibility: hidden;}
}

@media only screen and (max-width: 767px) {
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form .wpcf7-response-output{font-size: 16px;}
}

/* Форматирование текста */

.story{}
.story *{font-size: 20px;}
.story p{margin: 15px 0px;}
.story h1{line-height: 0.9; font-size: 60px; font-weight: bold;}
.story h2{margin-top: 40px; margin-bottom: 25px; line-height: 1; font-size: 42px; font-weight: bold;}
.story h3{margin-top: 40px; line-height: 1.3; font-size: 30px; font-weight: bold;}
.story h1 *, .story h2 *, .story h3 *{font-weight: bold;}
.story ul, .story ol{margin: 30px 0px; counter-reset: myCounter;}
.story li{margin: 15px 0px; padding-left: 30px; line-height: 1.4;}
.story li *{line-height: 1.4;}
.story li::before{position: absolute; left: 0px; top: 0px; display: block; color: #3E619B; line-height: 1.4;}
.story ul li::before{content: "—";}
.story ol li::before{counter-increment: myCounter; content: counter(myCounter) ".";}
.story img{border-radius: 12px;}
.story .wp-caption{margin: 30px 0px;}
.story .wp-caption img{margin: 0px;}
.story .wp-caption-text{margin: 15px 0px 0px; text-align: center; font-size: 16px; font-style: italic;}
.story blockquote{margin: 45px 0px; padding: 30px; text-align: center; border-top: 1px solid #E9E9EB; border-bottom: 1px solid #E9E9EB;}
.story blockquote *{}

@media only screen and (max-width: 767px) {
.story *{font-size: 16px;}
.story h1{line-height: 1; font-size: 42px;}
.story h2{margin-top: 30px; margin-bottom: 20px; font-size: 30px;}
.story h3{margin-top: 30px; line-height: 1.4; font-size: 20px;}
.story li{padding-left: 25px;}
.story img{border-radius: 6px;}
.story .wp-caption-text{margin: 10px 0px 0px; font-size: 14px;}
.story blockquote{margin: 40px 0px; padding: 25px;}
}
@media only screen and (max-width: 480px) {
.story h1{font-size: 30px;}
}

/* Прелоудер */

.loader{position: fixed; top: 0px; right: 0px; bottom: 0px; left: 0px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 40px; background: #2A3950; z-index: 999;} 
.loader .logo{width: 150px;}
.loader .logo img{width: 100%; height: auto;}
.loader-animation{display: block; width: 40px; height: 40px; border: 4px solid rgba(255, 255, 255, 0.3); border-radius: 50%; animation: spin 1s linear infinite; -webkit-animation: spin 1s linear infinite;}
.loader-animation i{position: absolute; top: -6px; left: 16px; display: block; width: 8px; height: 8px; background: #FFFFFF; border-radius: 50%;}

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

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}

@media only screen and (max-width: 767px) {
.loader{gap: 30px;} 
.loader .logo{width: 100px;}
}

/* Шапка */

.top{position: absolute; top: -60px; left: 0px; right: 0px; background: #FFFFFF; box-shadow: 0px 3px 10px 0px rgba(42, 57, 80, 0.05); z-index: 9;}
.top .wrapper{display: flex; justify-content: space-between; align-items: center; gap: 45px; margin-top: 60px; padding-top: 5px; padding-bottom: 5px;}
.top .wrapper .left, .top .wrapper .right{display: flex; align-items: center; gap: 45px;}

.top .logo{display: block; margin-bottom: -60px;}
.top .logo img{max-height: 110px;}

.main-menu{display: flex; gap: 10px;}
.main-menu > li > a{display: block; padding: 10px; color: #2A3950; font-size: 16px; font-weight: bold; text-transform: uppercase; letter-spacing: 1px; border-radius: 6px;}
.main-menu a:hover, .main-menu > li:hover > a{color: #BA181B;}
.main-menu > li.current-menu-item > a, .main-menu > li.current-menu-parent > a, .main-menu > li.current-menu-ancestor > a{color: #2A3950; background: #E9E9EB;}

.main-menu > li > .sub-menu::before{content: ""; position: absolute; left: 30px; top: -5px; display: block; width: 10px; height: 10px; background: #355384; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg);}
.main-menu > li > .sub-menu{position: absolute; top: 100%; left: 0px; width: 240px; background: #355384; border-radius: 6px; box-shadow: 0px 3px 15px 0px rgba(0, 25, 76, 0.1); opacity: 0; visibility: hidden;}
.main-menu > li:hover > .sub-menu{opacity: 1; visibility: visible;}
.main-menu > li > .sub-menu > li:not(:last-child){border-bottom: 1px solid #3E619B;}
.main-menu > li > .sub-menu > li > a{display: block; padding: 15px; color: rgba(255, 255, 255, 0.7);}
.main-menu > li > .sub-menu > li > a:hover{color: rgba(255, 255, 255, 1);}

.top .phone-block{display: flex; flex-direction: column; align-items: flex-end; gap: 5px;}
.top .phone{font-weight: bold;}
.top .hours{color: rgba(0, 0, 0, 0.5); font-size: 14px;}

.top .btn-menu{display: none; width: 40px; height: 40px; background: url('images/icons/menu.svg') center center no-repeat; background-size: 30px 30px;}

.top-fixed{position: fixed; top: 0px;}
.top-fixed .wrapper{margin-top: 0px;}
.top-fixed .logo{margin-bottom: -50px;}
.top-fixed .logo img{max-height: 90px;}

@media only screen and (max-width: 1280px) {
.main-menu{display: none;}
.top .wrapper .right{gap: 30px;}
.top .btn-menu{display: block;}
}

@media only screen and (max-width: 767px) {
.top .logo{margin-bottom: -50px;}
.top .logo img{max-height: 90px;}
.top .phone-block, .top .btn-callback{display: none;}
.top-fixed .logo img{max-height: 70px;}
}

/* Мобильное меню */

#popup-menu{justify-content: flex-end;}
.popup-menu{display: flex; flex-direction: column; justify-content: space-between; gap: 45px; padding: 60px 15px 30px; width: 320px; height: 100vh; border-radius: 0px; overflow-y: scroll;}

.mobile-menu > li:not(:last-child){border-bottom: 1px solid rgba(255, 255, 255, 0.1);}
.mobile-menu > li > a{display: flex; padding: 15px 0px; color: #FFFFFF; font-size: 16px; font-weight: bold; text-transform: uppercase; letter-spacing: 1px;}
.mobile-menu > li > .sub-menu{display: none;}

.popup-menu .phone-block{display: flex; flex-direction: column; gap: 5px;}
.popup-menu .phone{color: #FFFFFF; font-size: 20px; font-weight: bold;}
.popup-menu .hours{color: rgba(255, 255, 255, 0.5); font-size: 14px;}
.popup-menu .btn-callback{margin-top: 30px; width: 100%;}

/* Хлебные крошки */

.breadcrumbs-block .wrapper{padding-bottom: 15px; padding-left: 180px;}
.breadcrumbs{display: flex; flex-wrap: wrap; gap: 5px 10px; color: rgba(0, 0, 0, 0.5); font-size: 14px;}
.breadcrumbs a:hover{color: #BA181B;}

.dark-bg .breadcrumbs{color: rgba(255, 255, 255, 0.5);}
.dark-bg .breadcrumbs a{color: #FFFFFF;}
.dark-bg .breadcrumbs a:hover{color: #BA181B;}

@media only screen and (max-width: 767px) {
.breadcrumbs-block .wrapper{padding-left: 115px;}
.breadcrumbs{font-size: 12px;}
}

/* Заголовок страницы */

.page-header{margin-bottom: 30px;}
.page-header .headline{display: block; line-height: 0.9; font-size: 50px; font-weight: bold;}

@media only screen and (max-width: 767px) {
.page-header{margin-bottom: 20px;}
.page-header .headline{line-height: 1; font-size: 42px;}
}
@media only screen and (max-width: 480px) {
.page-header .headline{font-size: 30px;}
}

/* Заголовок блока */

.block-header{margin-bottom: 30px;}
.block-header .headline{display: block; color: #3E619B; line-height: 1; font-size: 42px; font-weight: bold;}

@media only screen and (max-width: 767px) {
.block-header{margin-bottom: 20px;}
.block-header .headline{font-size: 30px;}
}

/* Блок с анонсами элементов */

.block-preview .wrapper{display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 30px;}
.block-preview .block-header{order: 1; margin-bottom: 0px;}
.block-preview .block-to-all{order: 2;}
.block-preview .block-content{order: 3; width: 100%;}

@media only screen and (max-width: 767px) {
.block-preview .wrapper{flex-direction: column; align-items: stretch;}
.block-preview .block-header{order: 1;}
.block-preview .block-content{order: 2;}
.block-preview .block-to-all{order: 3;}
}

/* Простая страница */

.page .wrapper .content{max-width: 800px;}

/* Страница с сайдбаром */

.page-has-sidebar .wrapper{display: flex; justify-content: space-between; gap: 45px;}
.page-has-sidebar .main{flex: 1; max-width: 800px;}
.page-has-sidebar .sidebar{padding-left: 45px; width: 335px; border-left: 1px solid #E9E9EB;}

.sidebar-widget:not(:last-child){margin-bottom: 45px;}
.sidebar-widget .headline{display: block; margin-bottom: 30px; color: #3E619B; font-size: 30px; font-weight: bold;}

@media only screen and (max-width: 1080px) {
.page-has-sidebar .wrapper{flex-direction: column; gap: 30px;}
.page-has-sidebar .sidebar{padding-top: 45px; padding-left: 0px; width: 100%; border-left: 0px; border-top: 1px solid #E9E9EB;}
}

/* Приветственный блок */

.hello{margin-bottom: 30px; color: #FFFFFF; background: #2A3950;}
.hello .bg{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; pointer-events: none;}
.hello .wrapper{display: flex; align-items: center; min-height: 600px;}

.hello .content{max-width: 720px;}
.hello .buttons{margin-top: 30px;}

@media only screen and (max-width: 767px) {
.hello .wrapper{padding-top: 90px; padding-bottom: 60px; min-height: unset;}
.hello .page-header, .hello .story{max-width: 450px;}
.hello .buttons{flex-direction: column;}
}

@media only screen and (max-width: 480px) {
.hello .bg{left: auto; width: 200%;}
.hello .content{width: 100%;}
.hello .page-header, .hello .story{max-width: 300px;}
}

/* О компании */

.about .wrapper{display: flex; gap: 30px;}
.about .content{flex: 1;}
.about .image{flex: 1; background: #E9E9EB; border-radius: 18px; overflow: hidden;}

@media only screen and (max-width: 767px) {
.about .wrapper{flex-direction: column;}
.about .image{margin: 0px -15px; padding-bottom: 70%;}
}

/* Блог услуг */

.services-block{margin: 30px 0px; background: #2A3950;}
.services-block .wrapper{padding-top: 60px; padding-bottom: 60px;}
.services-block .block-header .headline{color: #FFFFFF;}
.services-block .btn-to-services{display: none;}

.services-cats-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;}
.services-cats-grid-item{display: flex; flex-direction: column; justify-content: space-between; gap: 30px; padding: 30px; background: #FFFFFF; border-top: 5px solid #3E619B; border-radius: 0px 0px 12px 12px; box-shadow: 0px 3px 15px 0px rgba(42, 57, 80, 0.05);}
.services-cats-grid-item:hover{border-color: #BA181B;}
.services-cats-grid-item .title{font-size: 30px; font-weight: bold;}
.services-cats-grid-item:hover .title{color: #BA181B;}
.services-cats-grid-item .desc{margin-top: 20px;}

@media only screen and (max-width: 1080px) {
.services-cats-grid{grid-template-columns: repeat(2, 1fr);}
}

@media only screen and (max-width: 767px) {
.services-cats-grid{gap: 15px;}
.services-cats-grid-item{gap: 20px; padding: 20px;}
.services-cats-grid-item .title{font-size: 20px;}
.services-cats-grid-item .desc{margin-top: 10px;}
.services-cats-grid-item .desc .button{padding-left: 15px; padding-right: 15px;}

.services-cats-grid-scrollable{display: flex; margin: 0px -15px; padding: 0px 15px; overflow-x: scroll;}
.services-cats-grid-scrollable .services-cats-grid-item{flex-shrink: 0; width: 62vw;}

.services-cats-grid-min .services-cats-grid-item{padding: 20px 15px;}
.services-cats-grid-min .services-cats-grid-item .desc, .services-cats-grid-min .services-cats-grid-item .button{display: none;}
.services-cats-grid-min .services-cats-grid-item .title{font-size: 16px;}

.services-block .services-cats-grid-min + .btn-to-services{display: flex; margin-top: 30px; width: 100%; }
}

@media only screen and (max-width: 600px) {
.services-cats-grid:not(.services-cats-grid-min){grid-template-columns: repeat(1, 1fr);}
}

@media only screen and (max-width: 480px) {
.services-cats-grid-scrollable .services-cats-grid-item{width: 280px;}
}

/* Разводная страница раздела услуг */

.services-main{margin-bottom: 30px; color: #FFFFFF; background: #355384;}
.services-main > .wrapper{padding-bottom: 60px;}
.services-main .page-header + .desc{margin-bottom: 30px; max-width: 800px; color: rgba(255, 255, 255, 0.5);}

/* Шапка раздела услуг */

.services-header{color: #FFFFFF; background: #355384;}
.services-header > .wrapper{padding-top: 15px;}

.services-menu{display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 30px; border-bottom: 1px solid rgba(255, 255, 255, 0.1);}
.services-menu a{display: block; padding: 10px; color: rgba(255, 255, 255, 0.5); font-size: 16px; font-weight: bold; white-space: nowrap; border-radius: 6px 6px 0px 0px;}
.services-menu a:hover{color: #BA181B;}
.services-menu > li.current-menu-item > a, .services-menu > li.current-menu-parent > a, .services-menu > li.current-menu-ancestor > a{color: #FFFFFF; background: #182033;}

.services-header .desc{max-width: 800px; color: rgba(255, 255, 255, 0.5);}

@media only screen and (max-width: 1080px) {
.services-menu{margin: 0px -30px 30px; padding: 0px 30px; flex-wrap: nowrap; overflow-x: auto;}
.services-menu::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
}

@media only screen and (max-width: 767px) {
.services-menu{margin: 0px -15px 30px; padding: 0px 15px;}
}

/* Плитка услуг */

.services .wrapper{padding-top: 45px;}
.services-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 45px 30px;}
.services-grid-item{display: flex; flex-direction: column; justify-content: space-between; gap: 20px; padding: 30px; border-top: 5px solid #3E619B; border-radius: 0px 0px 12px 12px; box-shadow: 0px 3px 15px 0px rgba(42, 57, 80, 0.05);}
.services-grid-item:hover{border-color: #BA181B;}
.services-grid-item .title{font-size: 30px; font-weight: bold;}
.services-grid-item:hover .title{color: #BA181B;}
.services-grid-item .desc{margin-top: 15px; color: rgba(0, 0, 0, 0.5); font-size: 16px;}
.services-grid-item .caption{display: block; color: #BA181B; font-size: 16px; font-weight: bold;}

@media only screen and (max-width: 1080px) {
.services-grid{grid-template-columns: repeat(2, 1fr);}
}

@media only screen and (max-width: 767px) {
.services .wrapper{padding-top: 30px;}
.services-grid{gap: 30px 15px;}
.services-grid-item{gap: 15px; padding: 20px;}
.services-grid-item .title{font-size: 20px;}
.services-grid-item .desc{margin-top: 10px; font-size: 14px;}
.services-grid-item .caption{font-size: 14px;}
}

@media only screen and (max-width: 480px) {
.services-grid{grid-template-columns: repeat(1, 1fr);}
}

/* Страница услуги */

.service-page .wrapper{padding-top: 45px;}

.service-image{margin: -65px 0px 30px -12px; width: 480px; height: 480px; border: 12px solid #FFFFFF; border-radius: 18px 50% 50% 18px; overflow: hidden;}

.services-list{border-radius: 0px 12px 12px 0px; box-shadow: 0px 3px 15px 0px rgba(42, 57, 80, 0.05); overflow: hidden;}
.services-list li:not(:last-child){border-bottom: 1px solid #E9E9EB;}
.services-list a{display: block; padding: 15px; font-size: 16px; font-weight: bold; border-left: 3px solid #3E619B;}
.services-list a:hover{color: #BA181B; border-color: #BA181B;}

@media only screen and (max-width: 767px) {
.service-image{width: 320px; height: 320px;}
}

/* Новости */

.news-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 45px 30px;}
.news-grid-item{display: flex; flex-direction: column; justify-content: space-between; gap: 20px;}
.news-grid-item .photo{padding-bottom: 65%; border-radius: 12px; overflow: hidden;}
.news-grid-item .title{display: block; margin-top: 15px; font-weight: bold;}
.news-grid-item:hover .title{color: #BA181B;}
.news-grid-item .date{display: block; color: rgba(0, 0, 0, 0.5); font-size: 14px;}

@media only screen and (max-width: 1080px) {
.news-grid{grid-template-columns: repeat(3, 1fr);}

.block-preview .news-grid{display: flex; margin: 0px -30px; padding: 0px 30px; width: calc(100% + 60px); overflow-x: scroll;}
.block-preview .news-grid::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
.block-preview .news-grid-item{flex-shrink: 0; width: 40vw;}
}

@media only screen and (max-width: 767px) {
.news-grid{grid-template-columns: repeat(2, 1fr);}
.news-grid-item{gap: 15px;}

.block-preview .news-grid{margin: 0px -15px; padding: 0px 15px; width: calc(100% + 30px);}
}

@media only screen and (max-width: 480px) {
.news-grid{grid-template-columns: repeat(1, 1fr); gap: 30px;}

.block-preview .news-grid-item{width: 240px;}
}

/* Пагинация */

.wp-pagenavi{display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 45px;}
.wp-pagenavi a, .wp-pagenavi span{display: flex; justify-content: center; align-items: center; width: 45px; height: 45px; color: #3E619B; font-weight: bold; background: #FFFFFF; border-radius: 6px;}
.wp-pagenavi a:hover{color: #355384;}
.wp-pagenavi .current{color: #FFFFFF; background: #BA181B;}

/* Новости. Страница статьи */

.news-article .page-header .headline{line-height: 1; font-size: 42px;}

.article-info{margin-top: 20px; margin-bottom: 30px;}
.article-info .date{display: block; color: rgba(0, 0, 0, 0.5);}

.article-photo img{margin-bottom: 20px; max-width: 100%; height: auto; border-radius: 18px;}

.widget-news .news-grid{grid-template-columns: repeat(1, 1fr); gap: 40px;}

@media only screen and (max-width: 1080px) {
.widget-news .news-grid{display: flex; gap: 30px; margin: 0px -30px; padding: 0px 30px; width: calc(100% + 60px); overflow-x: scroll;}
.widget-news .news-grid::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
.widget-news .news-grid-item{flex-shrink: 0; width: 40vw;}
}

@media only screen and (max-width: 767px) {
.news-article .page-header .headline{font-size: 30px;}
.article-photo{margin-left: -15px; margin-right: -15px;}

.widget-news .news-grid{margin: 0px -15px; padding: 0px 15px; width: calc(100% + 30px);}
}

@media only screen and (max-width: 480px) {
.widget-news .news-grid-item{width: 240px;}
}

/* Блок миссия */

.mission{margin: 30px 0px; color: #FFFFFF; background: #2A3950;}
.mission .image{position: absolute; top: 0px; left: 0px; bottom: 0px; width: calc(50% - 30px); border-radius: 0px 180px 180px 0px; overflow: hidden;}
/* .mission .image::after{content: ""; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; display: block; background: linear-gradient(to left, rgba(42, 57, 80, 1), rgba(42, 57, 80, 0.3));} */
.mission .wrapper{display: flex; justify-content: flex-end; padding-top: 60px; padding-bottom: 60px;}
.mission .content{width: calc(50% - 30px);}
.mission .block-header .headline{color: #FFFFFF;}
.mission li::before{color: rgba(255, 255, 255, 0.5);}

@media only screen and (max-width: 767px) {
.mission .image{position: relative; top: auto; left: auto; bottom: auto; padding-bottom: 50%; width: 100%; border-radius: 0px 0px 36px 36px;}
.mission .wrapper{display: block; padding-bottom: 45px;}
.mission .content{width: 100%;}
}

/* Блок девиза */

.motto{margin-top: 45px; color: #FFFFFF; background: #BA181B; border-radius: 18px 18px 50% 50%; overflow: hidden;}
.motto .photo{padding-bottom: 30%;}
.motto .photo::after{content: ""; position: absolute; top: 0px; left: 0px; right: 0px; display: block; height: 50%; background: linear-gradient(to bottom, rgba(186, 24, 27, 1), rgba(186, 24, 27, 0));}

.motto-list{display: flex; padding: 45px; background: linear-gradient(to bottom, #A4161A, #BA181B);}
.motto-list-item{flex: 1;}
.motto-list-item:first-child{padding-right: 45px; border-right: 1px solid rgba(255, 255, 255, 0.1);}
.motto-list-item:last-child{padding-left: 45px;}
.motto-list-item .headline{display: block; font-size: 30px; font-weight: bold;}
.motto-list-item .desc{margin-top: 15px; color: rgba(255, 255, 255, 0.5); font-size: 16px;}
.motto-list-item .desc p{}
.motto-list-item .desc strong{color: #FFFFFF;}

@media only screen and (max-width: 767px) {
.motto{margin: 40px -15px 0px; border-radius: 0px 0px 90px 90px;}
.motto .photo{padding-bottom: 50%;}
.motto-list{flex-direction: column; gap: 30px; padding: 45px 15px 30px;}
.motto-list-item{padding: 0px !important; border: 0px !important;}
.motto-list-item .headline{font-size: 20px;}
.motto-list-item .desc{margin-top: 10px; font-size: 14px;}
}

/* Блок про опыт */

.experience{margin-bottom: 30px; border-bottom: 1px solid #E9E9EB;}
.experience .wrapper{display: flex; align-items: center; gap: 30px;}
.experience .image{flex-shrink: 0; width: 210px;}
.experience .image img{width: 100%; height: auto;}
.experience .content{max-width: 640px;}
.experience .subheadline{display: block; margin-top: 10px; color: #BA181B; font-weight: bold;}

@media only screen and (max-width: 767px) {
.experience .wrapper{flex-direction: column-reverse; align-items: flex-start; gap: 15px;}
.experience .image{width: 150px;}
}

/* Блок про команду */

.team{}
.team .story{max-width: 720px;}
.team-grid{display: flex; gap: 30px; margin-top: 30px;}
.team-grid-item{flex: 1; padding: 45px; background: #2A3950; border-radius: 18px; overflow: hidden;}
.team-grid-item .bg{position: absolute; top: 0px; left: 0px; bottom: 0px; right: 0px;}
.team-grid-item .content{padding: 30px; height: 100%; background: #FFFFFF; border-radius: 12px;}
.team-grid-item .name{display: block; font-size: 30px; color: #BA181B; font-weight: bold;}
.team-grid-item .job{display: block; margin-top: 10px; color: rgba(0, 0, 0, 0.5); font-size: 16px;}
.team-grid-item .desc{margin-top: 20px; font-size: 16px;}

@media only screen and (max-width: 767px) {
.team-grid-item{padding: 20px; border-radius: 12px;}
.team-grid-item .content{padding: 20px;}
.team-grid-item .name{font-size: 20px;}
.team-grid-item .job{margin-top: 5px; font-size: 14px;}
.team-grid-item .desc{margin-top: 15px; font-size: 14px;}
}

@media only screen and (max-width: 600px) {
.team-grid{flex-direction: column;}
}

/* CTA-блок */

.cta-block{display: flex; gap: 45px; padding: 45px; color: #FFFFFF; background: linear-gradient(to top right, #2A3950, #355384); border-radius: 18px; overflow: hidden;}
.cta-block .block-header .headline{color: #FFFFFF;}

.cta-block .info{width: 480px;}
.cta-block .info .story{color: rgba(255, 255, 255, 0.5);}
.cta-block .info a, .cta-block .info strong{color: #FFFFFF;}
.cta-block .info a:hover{color: #BA181B;}
.cta-block .separator{display: block; width: 5px; background: #3E619B;}
.cta-block .form{flex: 1;}

@media only screen and (max-width: 1080px) {
.cta-block{flex-direction: column; gap: 30px;}
.cta-block .info{width: 100%;}
.cta-block .separator{width: 100%; height: 5px;}
}

@media only screen and (max-width: 767px) {
.cta-block{margin: 0px -15px; padding: 45px 15px;}
}

/* Табы */

.tabs{display: flex; align-items: center; gap: 30px; margin-bottom: 30px; border-bottom: 1px solid #E9E9EB; }
.tabs label{display: flex;}
.tab{flex: 1; display: inline-flex; justify-content: center; align-items: center; padding: 15px 0px; color: rgba(0, 0, 0, 0.5); white-space: nowrap; cursor: pointer;}
.tab:hover{color: #BA181B;}
.tab::before{content: ""; position: absolute; bottom: -2px; left: 0px; right: 0px; display: block; height: 3px; background: #BA181B; border-radius: 3px; opacity: 0;}
:checked + .tab{color: #BA181B !important;}
:checked + .tab::before{opacity: 1;}

.f-depend{display: none; max-width: 800px;}
.f-depend-selected{display: block;}

@media only screen and (max-width: 1080px) {
.tabs{margin: 0px -30px 30px; padding: 0px 30px; overflow-x: auto;}
.tabs::-webkit-scrollbar{width: 0px; height: 0px; background: transparent;}
}

@media only screen and (max-width: 767px) {
.tabs{margin: 0px -15px 30px; padding: 0px 15px; overflow-x: auto;}
}

/* Таблицы */

.tablepress{margin: 20px 0px 30px !important; box-shadow: 0px 3px 15px 0px rgba(42, 57, 80, 0.05);}
.tablepress caption{display: none;}
.tablepress td{padding: 30px !important; color: #000000 !important; border-color: #E9E9EB !important;}
.tablepress td:last-child{padding-left: 0px !important; color: #3E619B !important; font-weight: bold; white-space: nowrap; text-align: right;}
.tablepress>.row-hover>tr:hover>*{background-color: rgba(0, 0, 0, 0.05) !important;}

@media only screen and (max-width: 767px) {
.tablepress td{display: block; padding: 30px 15px !important;}
.tablepress td:last-child{padding-left: 15px !important; padding-top: 0px !important; text-align: left; border-top: 0px;}
}

/* Страница "Контакты" */

.contact-block{padding: 60px 0px; border-radius: 18px; overflow: hidden;}
.contact-block .map{position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px;}
.contact-block .content{padding: 45px; max-width: 600px; color: #FFFFFF; background: #3E619B; border-radius: 0px 18px 18px 0px;}
.contact-block .content a{color: #FFFFFF;}

.contacts-list{display: flex; flex-direction: column; gap: 20px;}
.contacts-list li{display: flex; flex-direction: column; gap: 10px;}
.contacts-list .label{color: rgba(255, 255, 255, 0.5);}
.contacts-list .value{font-weight: bold;}

@media only screen and (max-width: 1080px) {
.contact-block{display: flex; flex-direction: column-reverse; padding: 0px;}
.contact-block .content{max-width: 100%; border-radius: 0px;}
.contact-block .map{position: relative; top: auto; left: auto; right: auto; bottom: auto; height: 400px;}
}

@media only screen and (max-width: 767px) {
.contact-block .content{padding: 30px 20px;}
}

/* Карты */

.map{background: #E9E9EB; overflow: hidden;}
.map > div{position: absolute !important; top: 0px; left: 0px; right: 0px; bottom: 0px;}

/* Подвал */

.footer{margin-top: 30px; border-top: 5px solid #3E619B;}
.footer .wrapper{padding-top: 45px; padding-bottom: 45px;}

.footer-columns{display: flex; gap: 30px;}
.footer-columns .col{flex: 1;}
.footer-columns .col .headline{display: block; margin-bottom: 20px; color: #3E619B; font-weight: bold;}

.footer .logo{display: block;}
.footer img{max-height: 120px;}

.footer-contacts{display: flex; flex-direction: column; gap: 20px;}
.footer-contacts li{display: flex; flex-direction: column; gap: 10px;}
.footer-contacts .label{color: #3E619B; font-weight: bold;}
.footer-contacts .value{}

.footer-menu{display: flex; flex-direction: column; gap: 10px 15px;}
.footer-menu a{}
.footer-menu a:hover{color: #BA181B;}

.footer-bottom{border-top: 1px solid #E9E9EB;}
.footer-bottom .wrapper{display: flex; justify-content: space-between; gap: 30px;}

.footer-links{display: flex; gap: 10px 30px; margin-top: 20px;}
.footer-links a{color: #3E619B; font-size: 16px;}
.footer-links a:hover{color: #355384;}

.grecaptcha-badge {visibility: hidden;}
.recaptcha-disclaimer{display: block; width: 230px; text-align: right; color: rgba(0, 0, 0, 0.5); font-size: 12px;}

@media only screen and (max-width: 1080px) {
.footer-columns{flex-wrap: wrap;}
.footer-columns .col:first-child{flex: unset; width: 100%;}
}

@media only screen and (max-width: 767px) {
.footer-columns{flex-direction: column;}
.footer-columns .col .headline{margin-bottom: 15px;}
.footer-bottom .wrapper{flex-direction: column; padding-top: 45px; padding-bottom: 45px;}
.footer-links{flex-direction: column;}
.footer-links a{font-size: 14px;}
.recaptcha-disclaimer{text-align: left;}
}