/*!
Theme Name: puidavision
Theme URI: pprintdim.com
Author: pprintdim.com
Author URI: pprintdim.com
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: puidavision
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* Fonts
   ========================================================================== */

@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/montserrat-v31-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('assets/fonts/montserrat-v31-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/montserrat-v31-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/montserrat-v31-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* Main
   ========================================================================== */
html {
   font-size: 16px;
   font-family: 'Montserrat',sans-serif;
   font-size: 16px;
   font-style: normal;
   scroll-behavior: smooth;
}

body {
   max-width: 1440px;
   margin: 0 auto;
   background: #FAFCFF;
}

body.menu-open:after {
   content: '';
   position: fixed;
   z-index: 111;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   backdrop-filter: (15px);
   background-color: rgba(0, 0, 0, 0.8);
}

body, * {
   font-family: inherit;
   font-size: inherit;
   font-style: normal;

}

:before,
:after {
   display: block;
   background-repeat: no-repeat;
}

:before,
:after,
* {
   box-sizing: border-box;
}
input[type="submit"],
button {
   display: flex;
   background: unset;
   border: unset;
   outline: unset;
   cursor: pointer;
}

button {
   padding: 0;
   margin: 0;
}

input[type="email"],
input[type="text"],
input[type="num"],
input[type="tel"] {
   display: flex;
   align-items: center;
   padding: 0 24px;
   height: 50px;
   line-height: 1.3;
   border: unset;
   outline: unset;
   border: 1px solid #00B2A0;
   border-radius: 30px;
   background: transparent;
}

input:placeholder,
textarea:placeholder {
   font-family: inherit;
   font-size: inherit;
   font-weight: inherit;
   line-height: inherit;
   color: #53958E;
}

ul,ol {
   margin: 0;
   padding: 0;
   display: flex;
   flex-direction: column;
}

li,p {
   display: inline-block;
}
h1,h2,h3,h4 {
   display: block;
   font-weight: 600;
   margin: 0;
}

h1 {
   font-size: 46px;
}

h2 {
   font-size: 32px;
}

img {
   display: block;
   width: auto;
   height: auto;
}

a {
   text-decoration: unset;
   color: #00B2A0;
}

a:hover {
   color: #009DE6;
}
.menu li.active > a,
.menu li:hover > a {
   color: #009DE6;
}
section {
   padding: 50px 0;
}

#wpadminbar .quicklinks ul {
   flex-direction: row;
}
#wpadminbar + #top-nav {
   top: 32px;
}

.swiper-wrapper {
   flex-direction: row;
}

.swiper {
   overflow: hidden;
}
.pagination {
   display: flex;
   align-items: center;
   gap:0 8px;
   justify-content: center;
   margin-top: 60px;
}
.pagination .page-numbers {
   display: flex;
   justify-content: center;
   align-items: center;
   width: 40px;
   height: 40px;
   background: transparent;
   border-radius: 20px;
   color: #373737;
}
.pagination .page-numbers:not(.current):hover,
.pagination .page-numbers.current {
   background-color: #00B2A0;
   color: #ffffff;
}


.breadcrumbs {
   display: flex;
   gap: 8px 0;
   font-size: .9em;
   line-height: 1.1;
   flex-wrap: wrap;
   align-items: center;
}

.breadcrumbs a {
   font-size: inherit;
   line-height: inherit;
   display: flex;
   align-items: center;
}

.breadcrumbs a:after {
   content: '>';
   font-size: inherit;
   line-height: inherit;
   color: inherit;
   font-weight: inherit;
   display: block;
   margin: 0 6px;
}

@media (max-width: 768px) {
   section {
      padding: 45px 0;
   }

   h1 {
      font-size: 46px;
   }
}

@media (max-width: 520px) {

   h1 {
      font-size: 32px;
   }

   h2 {
      font-size: 32px;
   }
   input[type="email"], 
   input[type="text"], 
   input[type="num"], 
   input[type="tel"] {
      font-size: .9em;
   }

   section {
      padding: 35px 0;
   }

   .pagination {
      margin-top: 35px;
   }
}

@media (max-width: 430px) {
   h1 {font-size: 28px;}
   .breadcrumbs {
      font-size: .8em;
   }
}

/* All classes
   ========================================================================== */
.container {
   padding: 0 25px;
   max-width: 1340px;
   margin: 0 auto;
}
.main-btn {
   display: flex;
   align-items: center;
   justify-content: center;
   min-height: 50px;
   padding: 0 20px;
   max-width: 220px;
   width: 100%;
   text-align: center;
   font-size: 1em;
   line-height: 1.1;
   border: 1px solid transparent;
   font-weight: 500;
   border-radius: 30px;
   box-shadow: 0px 4px 14px rgba(0, 17, 43, 0.08);
   transition: box-shadow .4s;
}

.main-btn:hover {
   box-shadow: 0px 4px 14px rgba(0, 17, 43, 0.15);
}

.main-btn.has-icon {
   gap: 0 7px;
}

.main-btn.blue {
   border-color: #17A3D7;
   background: #17A3D7;
   color: #ffffff;
}

.main-btn.blue svg {
   color: #ffffff
}

.main-btn.green {
   border-color: #00B2A0;
   background: #00B2A0;
   
   color: #ffffff;
}
.main-btn.black {
   border-color: #242424;
   background: #242424;
   color: #ffffff;
}


.main-btn.only-border {
   background: transparent;
}

.main-btn.only-border.white {
   color: #ffffff;
}

.heading-title {
   text-align: center;
   display: block;
   margin-bottom: 45px;
}

.heading-titles .heading-title {
   margin-bottom: 0;
}

.heading-titles__icon {
   width: 40px;
   height: 40px;
}

.heading-titles {
   margin-bottom: 40px;
   display: flex;
   justify-content: center;
   gap: 0 12px;
   align-items: center;
}


.checkbox-group {
   display: flex;
   gap: 0 10px;
}
.checkbox-group__text {
   font-size: .9em;
   color: inherit;
   display: block;
}
.checkbox-group__text a {
   text-decoration: underline;
   color: #7BB2FF;
}
.checkbox-group__text * {
   display: inline;
   color: inherit;
   font-size: inherit;
   line-height: inherit;
}
.checkbox-group__input {
   margin: 0;
   accent-color: inherit;
   color: inherit;
   width: 20px;
   height: 20px;
   display: block;
   border: 1px solid #E3E3E3!important;
}

.checkbox-group__input:checked {
   accent-color: #083852;
}
@media (max-width:768px) {
   .heading-title {
      margin-bottom: 30px;
   }
   .heading-titles {
      display: block;
   }
   .heading-titles__icon {
      display: none;
   }
   
}
@media (max-width:520px) {
   .main-btn {
      max-width: 100%;
      width: 100%;
   }
}
@media (max-width:430px) {
   .heading-title {
      font-size: 26px;
   }

   .container {
      padding: 0 16px;
   }


}
/* Banner section
   ========================================================================== */
.banner-sec {
   margin-top: 60px;
   margin-bottom: 60px;
   background-color: #EBF4FB;
}
.banner-sec__main-block {
   padding: 60px 0;
}
.banner-sec__fields-group {
   display: grid;
   grid-gap: 0 35px;
   grid-template-columns: repeat(3,1fr);
}


.banner-sec .form__checkbox-group {
   margin-top: 15px;
   display: flex;
   align-items: center;
   gap: 0 12px;
   justify-content: flex-end;
   
}
.banner-sec .form__checkbox-group input {
   width: 20px;
   height: 20px;
   border-radius: 3px;
   border: 1px solid #00B2A0;
   background: transparent;
   accent-color: #00B2A0;
   margin: 0;
}

.banner-sec .form__checkbox-group span {
   font-size: .9em;
   line-height: 1.2;
   display: block;
   max-width: 330px;
}

.banner-sec .form__checkbox-group span * {
   font-size: inherit;
   line-height: inherit;
   font-weight: inherit;
}

.banner-sec .form__submit-btn {
   max-width: 100%;
   width: 100%;
}
@media (max-width: 1080px) {
   .banner-sec__fields-group {
      grid-gap: 24px;
   }
}

@media (max-width:768px) {
   .banner-sec {
      margin-top: 30px;
      margin-bottom: 30px;
   }
   .banner-sec__fields-group {
      grid-template-columns: repeat(2,1fr);
   }

   

   .banner-sec .form__submit-btn {
      grid-column: 1/3;
   }

   .banner-sec .form__checkbox-group span {
      max-width: 100%;
   }

   .banner-sec__main-block {
      padding: 0;
   }
}


@media (max-width:520px) {
   .banner-sec__fields-group {
      grid-template-columns: 100%;
   }

   .banner-sec .form__submit-btn {
      grid-column: auto;
   }
}
/* Top Nav
   ========================================================================== */

.top-nav {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 111;
   box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.06);
}

.menu-open .top-nav,
.top-nav.fixed {
   position: fixed;
   background-color: #EBF4FB;
   z-index: 1111;
}

.top-nav__burger-btn {
   display: none;
}


.top-nav__main-block {
   height: 110px;
   display: flex;
   justify-content: space-between;
   gap: 0 30px;
   align-items: center;
}
.top-nav__logo {
   display: block;
}
  
.top-nav__logo-img {
   max-width: 180px;
   height: auto;

}

.top-nav__menu {
   display: flex;
   flex-direction: row;
   gap: 0 24px;
   align-items: center;
   width: 100%;
   justify-content: center;
}

.top-nav__menu li a {
   padding: 12px;
   font-weight: 500;
   line-height: 1.1;
   font-size: 1em;
   color: #000000;
}

@media (max-width:1080px) {
   .top-nav__menu {
      display: none;
   }

   .top-nav__burger-btn {
      display: block;
   }

   .menu-open .burger-btn {
      display: flex;
      align-items: center;
      position: relative;
      justify-content: center;
   }
   .menu-open .burger-btn svg {
      opacity: 0;
   }
   .menu-open .burger-btn:after,
   .menu-open .burger-btn:before {
      content: '';
      display: block;
      position: absolute;
      width: 80%;
      height: 2px;
      background: #009DE6;
   }


   .menu-open .burger-btn:after {
      transform: rotate(45deg);
   }
   .menu-open .burger-btn:before {
      transform: rotate(-45deg);
   }

   .top-nav__burger-btn svg {
      color: #242424;
      height: 40px;
      width: 40px;
   }

   .top-nav__btn {
      margin-left: auto;
   }
}


@media (max-width:520px) {
   .top-nav__logo-img {
      max-width: 130px;
      max-height: 55px;
   }
   .top-nav__btn {
      display: none;
   }

   .top-nav__burger-btn svg {
      width: 32px;
      height: 32px;
   }

   .top-nav__main-block {
      height: 70px;
   }
}

/* Hero Section
   ========================================================================== */
.hero-sec {
   position: relative;
   background: #EBF4FB;
   overflow-x: hidden;
}
.hero-sec:after {
   content: '';
   display: block;
   position: absolute;
   left: -5%;
   top: -7%;
   border-radius: 50%;
   width: 225px;
   height: 225px;
   border: 42px solid rgba(246, 251, 255, 0.6);
   filter: drop-shadow(0px 2px 14px rgba(0, 31, 39, 0.1));
}
.hero-sec .container {
   padding-right: 0;
}
.hero-sec__main-block {
   padding-top: 80px;
   position: relative;
}
.hero-sec__columns {
   position: relative;
   z-index: 1;
   display: grid;
   grid-template-columns: 620px 1fr;
   align-items: center;
}
.hero-sec__left-column {
   width: 100%;
   display: flex;
   flex-direction: column;
   gap: 45px 0;
}
.hero-sec__thumb-column {
   width: 100%;
}
.hero-sec__img {
   aspect-ratio: 1/1.1;
   width: 100%;
   object-fit: contain;
   object-position: bottom;
}
.hero-sec__title-wrap {
   display: flex;
   flex-direction: column;
   gap: 24px 0;
}
.hero-sec__title {
   font-weight: 600;
   line-height: 1.3;
}
.hero-sec__subtitle {
   display: block;
   font-size: 21px;
   line-height: 1.4;
   color: #15202B;
}


.hero-sec__bg-img {
   position: absolute;
   width: 100%;
   height: auto;
   left: 0;
   bottom: 0;
}

@media (max-width:1080px) {
   .hero-sec__title {
      font-size: 36px;
   }
   .hero-sec__left-column {
      padding-bottom: 20px;
   }
   .hero-sec__subtitle {
      font-size: 1em;
   }
}
@media (max-width:920px) {
   .hero-sec .container {
      padding-right: 24px;
   }
   .hero-sec__columns {
      display: block;
      position: relative;
      padding-bottom: 45px;
   }

   .hero-sec__left-column {
      gap: 24px 0;
      position: absolute;
      left: 0;
      bottom: 45px;
      z-index: 1;
      background-color: #ffffff;
      padding: 20px;
      border-radius: 20px;
      box-shadow: 0px 4px 10px rgba(21, 32, 43, 0.2);
   }

   .hero-sec__title {
      font-size: 28px;
   }
   
}

@media (max-width: 768px) {
   .hero-sec__subtitle {
      font-size: .9em;
   }
}

@media (max-width: 520px) {
   .hero-sec__main-block {
      padding-top: 50px;
   }
   .hero-sec__title {
      font-size: 22px;
   }

   .hero-sec__left-column {
      position: relative;
      bottom: 20px;
      order:2;
   }

   .hero-sec__columns {
      gap: 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      padding-bottom: 20px;
   }
}
/* Product Card
   ========================================================================== */
.product-card {
   background: #FFFFFF;
   box-shadow: 0px 4px 10px rgba(21, 32, 43, 0.2);
   border-radius: 20px;
   overflow: hidden;
   display: flex;
   flex-direction: column;
   gap: 30px 0;
}
.product-card__thumb {
   position: relative;
}
.product-card__icon {
   position: absolute;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background: #00B2A0;
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 1;
   bottom: -50px;
   left: 16px;
}
.product-card__play-btn {
   width: 40px;
   height: 40px;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 6px;
   position: absolute;
   z-index: 1;
   right: 6px;
   bottom: 6px;
   background-color: #D3D5D7;
}
.product-card__icon img {
   height: 55px;
}

.product-card__img {
   width: 100%;
   aspect-ratio: 1/.8;
}

.product-card__text-wrap {
   padding: 30px 16px;
   display: flex;
   flex-direction: column;
   gap: 12px 0;
}
.product-card__name {
   font-size: 1.1em;
   font-weight: 600;
   line-height: 1.1;
   display: block;
}
.product-card__list {
   gap: 7px 0;
   padding-left: 20px;
   padding-right: 8px;
}

.product-card__list li {
   display: list-item;
   list-style-type: inherit;
}

@media (max-width: 1080px) {
   .product-card__img {
      aspect-ratio: 2/1;
      object-fit: cover;
   }
}

@media (max-width:768px) {
   .product-card__icon img {
      height: 35px;
   }

   .product-card__icon {
      height: 70px;
      width: 70px;
      bottom: -35px;
   }
}
/* Products Section
   ========================================================================== */
.products-sec__product-cards {
   display: flex;
   flex-wrap: wrap;
   gap: 50px;
   flex-direction: row;
}
.products-sec .product-card {
   flex: 1 1 calc(33.3% - 50px);
   min-width: 350px;
}
@media (max-width: 1080px) {
   .products-sec__product-cards {
      gap: 30px;
      flex: 1 1 calc(50% - 30px);
   }
  
}

@media (max-width: 520px) {
   .products-sec .product-card {
      min-width: auto;
      flex: auto;
   }
}
/* Reviews Section
   ========================================================================== */
.reviews-sec__top-group {
   display: flex;
   justify-content: space-between;
}
.reviews-sec__top-group > * {
   display: flex;
   flex-direction: column;
   gap: 10px 0;
}

.reviews-sec__rating-group {
   display: flex;
   gap: 0 10px;
   align-items: center;
}
.reviews-sec__b-name,
.reviews-sec__total-r {
   display: block;
   font-size: 12px;
   opacity: .5;
   line-height: 1.1;
}

.reviews-sec__title {
   display: flex;
   gap: 0 8px;
   align-items: center;
   font-size: 22px;
   font-weight: 500;
   line-height: 1.1;
}
.reviews-sec__stars {
   flex-direction: row;
   gap: 0 6px;
}

.reviews-sec__stars li {
   height: fit-content;
   width:fit-content;
}
.reviews-sec__stars svg {
   color: #FFC107;
}
.reviews-sec__title span {
   font-weight: inherit;
   color: inherit;
   font-size: inherit;
   line-height: inherit;

}

.reviews-sec__write-btn {
   height: 50px;
   border-radius: 8px;
   padding: 0 20px;
   min-width: auto;
   width: fit-content;
}

.reviews-sec__slider-block {
   margin-top: 30px;
   overflow: hidden;
   position: relative;
   padding: 0 40px;
}
.reviews-sec .slider-block__prev-btn,
.reviews-sec .slider-block__next-btn {
   top: 50%;
   position: absolute;
   transform: translateY(-50%);
}

.reviews-sec .swiper-wrapper {
   align-items: center;
}
.reviews-sec .slider-block__next-btn {
   right: 0;
  
}
.reviews-sec .slider-block__prev-btn {
   left: 0;
}

.reviews-sec .slider-block__next-btn svg {
   transform: scale(-1,1);
}
.reviews-sec .swiper-slide__rating {
   flex-direction: row;
   align-items: center;
   gap: 0 4px;
}
.reviews-sec .swiper-slide__btn {
   max-width: 100%;
   min-height: 35px;
   font-size: 1em;
   border-radius: 8px;
   margin-top: auto;
}
.reviews-sec .swiper-slide__rating svg {
   color: #FFC107;
   width: 20px;
   height: 20px;
}

.reviews-sec .swiper {
   padding: 4px;
}
.reviews-sec .swiper__swiper-slide {
   height: auto;
   box-sizing: border-box;
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   gap: 15px 0;
   padding: 24px;
   background: #FFFFFF;
   border: 0.5px solid #D9D9D9;
   box-shadow: 0px 28px 11px rgba(0, 0, 0, 0.01), 0px 16px 9px rgba(0, 0, 0, 0.05), 0px 7px 7px rgba(0, 0, 0, 0.09), 0px 2px 4px rgba(0, 0, 0, 0.1);
   border-radius: 10px;
}
.reviews-sec .swiper-slide__top-group {
   width: 100%;
   display: flex;
   align-items: center;
   gap: 0 14px;
}
.reviews-sec .swiper-slide__text-group {
   display: flex;
   gap: 8px 0;
   flex-direction: column;
}
.reviews-sec .swiper-slide__name {
   display: block;
   font-weight: 600;
   color: #1A1A1A;
   font-size: .95em;
}
.reviews-sec .swiper-slide__date {
   font-size: 12px;
   line-height: 1.1;
   display: block;
   opacity: .5;
}

.reviews-sec .swiper-slide__avatar {
   width: 40px;
   height: 40px;
}

.reviews-sec .swiper .swiper-slide__descr {
   line-height: 1.2;
   color: #1A1A1A;
   font-size: .9em;
   overflow: hidden;
   display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden; 
    text-overflow: ellipsis; 
    color: #5D5D5D;
}
.reviews-sec .swiper-slide__g-icon {
   width: 24px;
   height: 24px;
   margin-left: auto;
}
@media (max-width: 1080px) {
   .reviews-sec .swiper-wrapper {
      align-items: unset;
   }

   .reviews-sec .swiper .swiper-slide__descr {
      height: 50px;
      -webkit-line-clamp: 3; 
      -webkit-box-orient: vertical;
   }

    .reviews-sec__slider-block {
      padding: 0 24px;
   }

}
@media (max-width: 520px) {
   .reviews-sec__g-logo {
      max-width: 80px;
   }

   .reviews-sec .swiper .swiper-slide__descr {
      font-size: .9em;
   }

   .reviews-sec__title {
      font-size: 1.1em;
   }

   .reviews-sec__stars svg {
      width: 15px;
      height: 15px;
   }

   .reviews-sec .swiper-slide__rating svg {
      width: 15px;
      height: 15px;
   }
  
   .reviews-sec__write-btn {
      font-size: .9em;
   }

}

@media (max-width: 430px) {
   .reviews-sec__top-group {
      max-width: 230px;
      margin-left: auto;
      margin-right: auto;
      align-items: center;
      flex-direction: column;
      gap: 15px 0;
   }

   .reviews-sec__title {
      justify-content: center;
   }


   .reviews-sec__top-group > * {
      gap: 0;
   }
}



/* =====================================================
   POPUP
==================================================== */

.media-popup {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
}

/* активний стан */
.media-popup.active {
    display: flex;
}

/* overlay */
.media-popup__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(4px);
}

/* контейнер */
.media-popup__inner {
    position: relative;
    width: 90%;
    max-width: 900px;
    background: #000;
    border-radius: 16px;
    overflow: hidden;
    transform: scale(0.9);
    transition: 0.3s ease;
}

/* анімація */
.media-popup.active .media-popup__inner {
    transform: scale(1);
    opacity: 1;
}

/* контент */
.media-popup__content {
    position: relative;
    width: 100%;
}

/* відео 16:9 */
.media-popup__content iframe,
.media-popup__content video {
    width: 100%;
    aspect-ratio: 16 / 9;
    display: block;
    border: unset;
}

/* картинки */
.media-popup__content img {
    width: 100%;
    height: auto;
    display: block;
}

/* кнопка закриття */
.media-popup__close {
    position: absolute;
    top: -45px;
    right: 0;
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 50%;
    background: #fff;
    color: #000;
    font-size: 20px;
    cursor: pointer;
    transition: 0.2s;
}

.media-popup__close:hover {
    transform: scale(1.1);
}

/* мобілка */
@media (max-width: 768px) {
    .media-popup__inner {
        width: 95%;
        border-radius: 12px;
    }
}

/* =====================================================
   Burger Menu
==================================================== */
.mob-menu-wrapper {
   visibility: hidden;
   max-width: 0;
   width: 100%;
   position: fixed;
   z-index: -1111;
   right: -430px;
   transition: right .6s;
}

.menu-open .mob-menu-wrapper {
   border-top: 1px solid #009DE6;
   max-width: 430px;
   right: 0;
   height: auto;
   visibility: visible;
   z-index: 1111;
}



.mob-menu-wrapper__main-block {
   background: #EBF4FB;
   padding: 35px 24px;
   display: flex;
   flex-direction: column;
   align-items: center;
}
.mob-menu-wrapper__menu {
   align-items: center;
   gap: 24px 0;
}
.mob-menu-wrapper__menu li a {
   color: #15202B
}
.mob-menu-wrapper__btn {
   width: 100%;
   max-width: 100%;
   margin-top: 35px;
}

/* =====================================================
   Pricing Section
==================================================== */
.pricing-sec {
   margin-top: 110px;
   background: #EBF4FB;
}

.pricing-sec__columns {
   display: grid;
   grid-gap: 0 40px;
   grid-template-columns: repeat(2,calc(50% - 20px));
}


.pricing-sec__list {
   display: flex;
   flex-direction: column;
   gap: 20px 0;
}

.pricing-sec .list__item {
   padding: 20px;
   background: #FFFFFF;
   box-shadow: 0px 4px 10px rgba(0, 40, 26, 0.1);
   border-radius: 12px;

}
.pricing-sec .list .item__top-wrap {
   display: flex;
   align-items: center;
   gap: 0 20px;
   justify-content: space-between;
}
.pricing-sec .list .item__name {
   line-height: 1.1;
   display: block;
   font-weight: 600;
   font-size: 1.1em;
   color: #15202B;
}
.pricing-sec .list .item__btn {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 32px;
   height: 32px;
   background: #00B2A0;
   border-radius: 4px;
}
.pricing-sec .list .item__btn svg {
   color: #FFFFFF;
   width: 14px;
   height: 8px;
}

.pricing-sec .list .item.open .btn svg {
   transform: scale(1,-1);
}

.pricing-sec .list .item__content {
   position: relative;
   display: grid;
   grid-template-rows: 0fr;
   overflow: hidden;
   transition: grid-template-rows 0.4s ease;
   visibility: hidden;
   z-index: -1111;
   max-height: 0;
}

.pricing-sec .list .item.open .content {
   margin-top: 20px;
   border-top: 1px solid #00B2A0;
   grid-template-rows: 1fr;
   z-index: 1;
   max-height: 100%;
   visibility: visible;
}

.pricing-sec .list .item__content > * {
  overflow: hidden;
}

.pricing-sec .list .item__content table {
   border-collapse: collapse;
   border: 0;
}

.pricing-sec .list .item__content table td {
   padding: 16px;
}
.pricing-sec .list .item__content table tr:nth-child(2n) td {
   background-color: #F5F5F5;
} 

@media (max-width:768px) {
   .pricing-sec__columns {
      grid-template-columns: 100%;
      grid-gap:24px 0;
   }
}

@media (max-width: 520px) {
   .pricing-sec {
      padding-top: 35px;
      margin-top: 70px;
   }

   .pricing-sec .list__item {
      padding: 16px;
   }
}

/* FAQ Section
   ========================================================================== */

.faq-sec {
   background-color: #ffffff;
}
.faq-sec__main-block {
   max-width: 880px;
   margin-left: auto;
   margin-right: auto;
}
.faq-sec__list {
   gap: 15px 0;
   width: 100%;
}
.faq-sec .list__item {
   padding: 16px 20px;
   background: #F3F3F3;
   border: 0.5px solid #D9D9D9;
   border-radius: 12px;
   overflow: hidden;
   position: relative;
   cursor: pointer;
   display: grid;
   grid-template-columns: max-content 1fr;
   width: 100%;
   gap: 0 16px;
}

.faq-sec .list .item__top-group {
   display: flex;
   justify-content: space-between;
   position: relative;
   z-index: 1;
}

.faq-sec .list__item.open {
   border: 0.5px solid #D9D9D9;
}

.faq-sec .list__item:after {
   content: '';
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   background: #F3F3F3;
   backdrop-filter: blur(7.5px);
   width: 100%;
   height: 100%;
   border-radius: 12px;
}

.faq-sec .list__item.open:after {
   background: #FFFFFF;
   border: 1px solid #00B6ED;
   box-shadow: 0px 20px 20px -20px rgba(12, 46, 91, 0.35);
}

.faq-sec .list .item.open .icon__plus,
.faq-sec .list .item:not(.open) .icon__minus {
   display: none;
}
.faq-sec .list .item__icon {
   min-width: 24px;
}
.faq-sec .list .item__num {
   display: block;
   font-size: 32px;
   color: #000000;
   line-height: 1.1;
   position: relative;
   z-index: 1;
}

.faq-sec .list .item__answer {
   position: relative;
   display: grid;
   grid-template-rows: 0fr;
   overflow: hidden;
   transition: grid-template-rows 0.4s ease;
   visibility: hidden;
   z-index: -1111;
   font-size: .9em;
   line-height: 1.4;
   color: #5D5D5D;
   
}

.faq-sec .list .item__answer > * {
  overflow: hidden;
}

.faq-sec .list .item.open .item__answer {
   margin-top: 12px;
   grid-template-rows: 1fr;
   z-index: 1;
   visibility: visible;
}

@media (max-width: 520px) {
   .faq-sec .list__item {
      padding: 15px 12px;
   }

   .faq-sec .list .item__num {
      font-size: 26px;
   }

   .faq-sec .list .item__answer {
      font-size: .8em;
      line-height: 1.1;
   }
}



/* =====================================================
   Sttistics / benefits Sections
==================================================== */
.benefits-sec {
   overflow-x: hidden;
}
.benefits-sec__columns,
.stats-sec__columns {
   display: grid;
   grid-gap: 0 70px;
   align-items: center;
}

.benefits-sec__columns {
   grid-template-columns: 1fr 600px;
}

.stats-sec__columns {
   grid-template-columns: 400px 1fr;
}

.benefits-sec__content-column,
.stats-sec__content-column {
   display: flex;
   flex-direction: column;
}

.benefits-sec__content-column {
   max-width: 560px;
}

.benefits-sec__content h2,
.stats-sec__content h2 {
   font-weight: 600;
   font-size: 32px;
   color: #000000;
   margin-bottom: 12px;
}
.benefits-sec__list-column {
   position: relative;
}
.benefits-sec__list-column:after {
   content: '';
   width: 129px;
   height: 129px;
   border-radius: 50%;
   position: absolute;
   right: -45px;
   bottom: -45px;
   background: #8FC7FF;
}


.stats-sec__list-column {
   padding: 10px;
}
.benefits-sec__list {
   position: relative;
   z-index: 1;
}
.benefits-sec__list,
.stats-sec__list {
   display: grid;
   grid-gap: 15px;
   grid-template-columns: repeat(2,1fr);
   width: 100%;
}

.benefits-sec .list__item,
.stats-sec .list__item {
   display: flex;
   flex-direction: column;
   
   background: #FFFFFF;
   box-shadow: 0px 4px 10px rgba(0, 40, 26, 0.1);
   border-radius: 20px;
   width: 100%;
}

.stats-sec__content p,
.benefits-sec__content p {
   margin: 0;
}


.stats-sec__content p + p,
.benefits-sec__content p + p {
   margin-top: 12px;
}

.benefits-sec .list__item {
   padding: 20px;
   gap: 20px 0;
}
.stats-sec .list__item {
   padding: 24px 20px;
   gap: 8px 0;
}

.benefits-sec .list__item:nth-child(2),
.benefits-sec .list__item:nth-child(3),
.stats-sec .list__item:nth-child(2),
.stats-sec .list__item:nth-child(3) {
   background: #00B2A0;
}
.benefits-sec .list .item__text-group {
   display: flex;
   flex-direction: column;
   gap: 12px 0;
}

.benefits-sec .list .item__icon {
   width: 80px;
   height: auto;
}

.benefits-sec .list .item__text-group > *,
.stats-sec .list__item > * {
   color: #15202B;
   line-height: 1.1;
}

.benefits-sec .list .item__name {
   font-size: 20px;
   font-weight: 700;
   line-height: 1.1;
}

.stats-sec .list .item__value {
   font-weight: 600;
   font-size: 32px;
   color: #15202B;
}
.benefits-sec .list .item__descr {
   font-size: .95em;
}
.stats-sec .list .item__descr {
   font-size: 1em;
}
.benefits-sec .list__item:nth-child(2) .text-group > *,
.benefits-sec .list__item:nth-child(3) .text-group > *,
.stats-sec .list__item:nth-child(2) > *,
.stats-sec .list__item:nth-child(3) > * {
   color: #FFFFFF;
}
.benefits-sec__btn,
.stats-sec__btn {
   margin-top: 30px;
}

@media (max-width: 1080px) {
   .stats-sec__content-column {
      order: 1;
   }
   .stats-sec__list-column {
      order: 2;
      padding: 0;
   }
   .benefits-sec__columns,
   .stats-sec__columns {
      grid-gap: 30px 0;
      grid-template-columns: 100%;
   }

   .benefits__content-column {
      max-width: 100%;
   }


   .stats-sec .list__item  {
      aspect-ratio: 2/1;
      align-items: center;
      justify-content: center;
   }

   .stats-sec .list .item__descr {
      text-align: center;
   }
}

@media (max-width:768px) {
   
   .stats-sec .list__item  {
      aspect-ratio: auto;
   }

   .stats-sec .list .item__descr {
      font-size: .9em;
   }

   .stats-sec .list__item {
      border-radius:16px;
      padding: 16px;
   }
   .stats-sec__content li,
   .benefits-sec__content li,
   .stats-sec__content p,
   .benefits-sec__content p {
      font-size: .9em;
   }
}
@media (max-width:520px) {
   .benefits-sec .list .item__icon {
      max-width: 55px;
   }

   .benefits-sec__content h2, 
   .stats-sec__content h2 {font-size: 24px;}

   .stats-sec__content li, .benefits-sec__content li, .stats-sec__content p, .benefits-sec__content p {
      font-size: .85em;
   }

   .benefits-sec__btn,
   .stats-sec__btn {
      max-width: 100%;
      width: 100%;
   }
}

@media (max-width:430px) {
   .benefits-sec__list {
      grid-template-columns: 100%;
   }
}
/* =====================================================
   Blog/Home
==================================================== */
.home-sec {
   padding-top: 60px;
   margin-top: 110px;
}
.home-sec__breadcrumbs {
   margin-bottom: 25px;
}
.home-sec__page-title {
   line-height: 1.1;
   text-align: center;
   margin-bottom: 45px;
   font-weight: 600;
   font-size: 32px;
}
.blog-sec__heading-title {
   text-align: left;
}
.blog-sec__top-wrapper {
   margin-bottom: 40px;
   display: flex;
   align-items: center;
   justify-content: space-between;
}
.blog-sec .top-wrapper .heading-title {
   margin-bottom: 0;
}

@media (max-width:520px) {
   .blog-sec .top-wrapper .heading-title {
      text-align: center;
   }
   .blog-sec .top-wrapper {
      display: block;
   }

   .blog-sec__btn {
      display: none;
   }

   .home-sec {
      margin-top: 70px;
      padding-top: 35px;
   }

   .home-sec__page-title {
      font-size: 24px;
      margin-bottom: 25px;
   }
   
}

.post-cards {
   display: grid;
   grid-gap: 35px;
   grid-template-columns: repeat(auto-fill,minmax(350px,1fr));
}
.post-card {
   display: flex;
   flex-direction: column;
   gap: 15px 0;
}
.post-card__thumb {
   
   display: block;
   overflow: hidden;
}
.post-card__img {
   width: 100%;
   aspect-ratio: 1/1;
   object-fit: cover;
}
.post-card__content {
   display: flex;
   flex-direction: column;
   gap: 8px 0;
}
.post-card__title {
   font-size: 1.1em;
   line-height: 1.3;
   font-weight: 600;
   color: #1C1C1C;
}
.post-card__excerpt {
   font-size: 1em;
   line-height: 1.3;
   color: #4B4B4B;
   display: block;
}
.post-card__date {
   display: block;
   margin-top: 15px;
   line-height: 1.4;
   font-size: 1em;
   color: #ACACAC;
}
@media (max-width:1080px) {
   .post-card__img {
      aspect-ratio: 16/9;
   }
}

@media (max-width: 520px) {
   .post-cards {
      grid-template-columns: 100%;
   }

   .post-card__excerpt {
      font-size: .9em;
   }
   .post-card__date {
      font-size: .8em;
      margin-top: 0;
   }
}
/* =====================================================
   Post HERO
==================================================== */
.post-hero {
   padding-top: 60px;
   margin-top: 110px;
}
.post-hero__main-block {
   display: flex;
   flex-direction: column;
   gap: 50px 0;
}
.post-hero__top-wrapper {
   display: flex;
   flex-direction: column;
   gap: 24px 0;
}
.post-hero__page-title {
   text-align: center;
   font-size: 32px;
   font-weight: 600;
}
.post-hero__short-sescr {
   display: block;
   text-align: center;
   font-size: 1.1em;
}
.post-hero__img {
   width: 100%;
   height: auto;
   object-fit: cover;
   aspect-ratio: 2/1;
}
.post-hero__toc-wrapper {
   display: flex;
   flex-direction: column;
   gap: 12px 0;
   max-width: 420px;
}
.popst-hero__toc-title {
   font-size: 1.1em;
}
.post-hero__toc {
   padding-left: 20px;
   gap: 7px 0;
}
.post-hero__toc li {
   display: list-item;
   font-size: .9em;
   color: #15202B;
}

.post-hero__toc li a {
   display: block;
   font-size: inherit;
   color: inherit;
   font-weight: inherit;
   line-height: inherit;
}

.post-hero__toc li a:hover {
   color: #B2DDFF;
}

@media (max-width: 520px) {
   .post-hero__main-block {
      gap: 24px 0;
   }

   .post-hero__short-sescr {
      font-size: .9em;
   }

   .post-hero {
      margin-top: 70px;
      padding-top: 35px;
   }

   .post-hero__page-title {
      font-size: 24px;
   }

   .post-hero__toc-title {
      font-size: 24px;
   }

   .post-hero__toc li {
      font-size: .9em;
   }
}
/* =====================================================
   Post section
==================================================== */
.post-sec__content .content-section + .content-section{
   margin-top: 40px;
}

.post-sec__content li,
.post-sec__content p {
   margin: 0;
}
.post-sec__content p + * {
   margin-top: 12px;
}
.post-sec__content li {
   display: list-item;
   list-style-type: inherit;
}

.post-sec__content ul,
.post-sec__content ol {
   padding-left: 20px;
   gap: 7px 0;
}
.post-sec__content ul {
   gap: 7px 0;
}
.post-sec__content ol {
   gap: 15px 0;
}
.post-sec__content h2 + *,
.post-sec__content h3 + *,
.post-sec__content h4 + * {
   margin-top: 12px;
}
.post-sec__content h2 {
   font-size: 28px;
}

@media (max-width: 520px) {
   .post-sec__content h2 {
      font-size: 25px;
   }

   .post-sec__content li, .post-sec__content p {
      font-size: .9em;
   }
}

/* =====================================================
   Footer
==================================================== */
.footer {
   background-image: url(assets/imgs/footer-background.webp);
   background-repeat: no-repeat;
   background-size: cover;
   position: relative;
   overflow-x: hidden;
}

.footer:after {
   content: '';
   position: absolute;
   top:0;
   right: -140px;
   width: 212px;
   height: 212px;
   border-radius: 50%;
   border: 42px solid rgba(232, 245, 255, 0.4);
   filter: drop-shadow(0px 2px 14px rgba(0, 31, 39, 0.1));
}

.footer__main-block {
   position: relative;
   z-index: 1;
   padding-top: 50px;
   display: flex;
   flex-direction: column;
   align-items: center;
}
.footer__columns {
   width: 100%;
   padding-bottom: 50px;
   display: grid;
   align-items: center;
   grid-gap: 0 90px;
   grid-template-columns: 230px 1fr;
}
.footer__logo-column {
   display: flex;
   flex-direction: column;
   gap: 12px 0;
}
.footer__logo {
   display: block;
}
.footer___logo-img {
   display: block;
   max-width: 170px;
}
.footer__f-text {
   display: flex;
   flex-direction: column;
   gap: 15px 0;
}
.footer__f-text > br {
   display: none;
}
.footer__f-text > * {
   font-size: 1em;
   line-height: 1.1;
}

.footer__subfooter {
   padding: 24px 0;
   display: flex;
   align-items: center;
   justify-content: center;
}

.footer__powered {
   text-align: center;
   display: block;
   font-size: 1em;
}

.footer__title {
   text-align: center;
   display: block;
   font-weight: 600;
   font-size: 32px;
   color: #15202B;
   margin-bottom: 40px;
}

.footer__frames-wrapper {
   display: grid;
   grid-gap: 0 50px;
   grid-template-columns: repeat(2,1fr);

}
.footer__frame-group {
   display: flex;
   flex-direction: column;
   gap: 20px 0;
}
.footer__frame-group iframe {
   width: 100%;
   height: 230px;
   border:unset;
}
.footer__loc-title  {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   grid-gap: 0 8px;
}

@media (max-width: 1080px) {
   .footer__frames-wrapper {
      grid-gap: 24px;
   }

   .footer__columns {
      grid-gap: 0 40px;
   }

   .footer__loc-title span {
      font-size: .85em;
   }
}

@media (max-width: 920px) {
   .footer__columns {
      grid-gap: 30px 0;
      grid-template-columns: 100%;
   }

   .footer__logo-column {
      gap: 32px 0;
      align-items: center;
   }
   .footer__f-text {
      align-items: center;
      font-size: .9em;
      text-align: center;
   }

   .footer__title {
      display: none;
   }

}

@media (max-width:768px) {
   .footer__frames-wrapper {
      grid-template-columns: 100%;
   }

   .footer__loc-title {
      justify-content: center;
   }
}

@media (max-width: 520px) {
   .footer__columns {
      padding-bottom: 35px;
   }

   .footer__powered {
      font-size: .9em;
   }
}