/* Header */
header{
  position: fixed;
  top: 0;
  width: 100%;
  height: 70px;
  padding: 10px 0;
  background: rgba(255,255,255,0.8);
  backdrop-filter: blur(10px);
  z-index: 200;
}
.navbar{
  top: 70px;
  background: linear-gradient(89.91deg, rgba(62, 41, 77, 0.8) 0%, rgba(56, 97, 204, 0.8) 100%);
  backdrop-filter: blur(6px);
  padding: 10px 0;
  z-index: 200;
}
          .cta-btn{
            line-height: 46px;
            background: transparent;
            border-radius: 2px;
            border: 2px solid var(--secondary-color);
            font-size: 21px;
            padding: 0 14px;
          }
          .cta-btn:hover{
            background: var(--secondary-color);
            border: 2px solid var(--secondary-color);
            color: #fff;
          }
          .prime-menu{
            flex-grow: 2;
          }
          .prime-menu .nav-link{
            color: #fff;
          }
          .prime-menu .nav-link.active{
            color: var(--secondary-color);
          }
          .prime-menu li:first-child .nav-link{
            padding-left: 0 !important;
          }
          .navbar-nav .nav-link{
            position: relative;
            padding: 8px 12px !important;
            transition: 0.3s all ease-in-out;
          }
          .navbar-nav .nav-link.dropdown-toggle:after{
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            font-size: 75%;
            content: '\f078';
            border: none !important;
            margin-left: 10px;
            transition: 0.3s all ease-in-out;
          }
          .navbar-nav .nav-link:hover:before{
            display: block;
            content: '';
            position: absolute;
            width: 60px;
            height: 2px;
            background: var(--secondary-color);
            bottom: -10px;
            left: 50%;
            margin-left: -30px;
          }
          .navbar-nav .nav-link.dropdown-toggle.show:after{
            transform: rotate(180deg);
          }
          .dropdown .dropdown-menu{
            border: none !important;
            border-radius: 0;
            padding: 0;
            margin: 0;
            background: #FFFFFF;
            box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.16);
          }
          .dropdown-menu .dropdown-item{
            font-weight: 400;
            font-size: 14px;
            line-height: 140%;
            padding: 6px 12px;
            transition: 0.3s all ease-in-out;
          }
          .dropdown-menu li.full-plan .dropdown-item:after{
            font-family: "Font Awesome 5 Free";
            font-weight: 900;
            font-size: 75%;
            content: '\f061';
            border: none !important;
            margin-left: 10px;
            transition: 0.3s all ease-in-out;
          }
          .dropdown-menu .dropdown-item:hover{
            background: #ECEAED;
          }
          .dropdown-item.active,
          .dropdown-item:active{
            background: var(--main-color);
          }
          .dropdown-item.active:hover,
          .dropdown-item:active:hover{
            background: var(--main-color);
            color: var(--secondary-color);
          }
			.navbar-toggler {
			  border: none;
			  position: absolute;
			  top: -55px;
			  right: 5px;
			}
          .navbar-toggler:focus,
          .navbar-toggler:active{
            outline: none !important;
            box-shadow: none !important;
          }
          .navbar-nav .menu-item.transform-btn{
            display: none;
          }
          .navbar-nav.search-nav .nav-item .nav-link{
            color: #fff;
          }
          .navbar-nav.search-nav .nav-item .nav-link:hover{
            color: var(--secondary-color);
          }
          .navbar-nav.search-nav .nav-item .nav-link:hover:before{
            display: none;
          }
          /* Mobile menu */
          @media screen and (max-width: 991px){
            .navbar-nav.search-nav{
              display: none !important;
            }
            .cta-btn{
              display: none;
            }
            .navbar{
              top: 70px;
              background: var(--main-color);
              padding: 0;
            }
            .navbar-collapse.show{
              padding: 20px 0;
              display: flex;
              flex-direction: column-reverse;
            }
            .navbar-collapse.show ul{
              display: flex;
              width: 100%;
              flex-direction: column;
              margin-bottom: 0 !important;
            }
            .navbar-collapse.show ul li .nav-link,
            .navbar-collapse.show ul li.dropdown .dropdown-menu .nav-item .nav-link{
              padding: 10px !important;
            }
            .navbar-collapse.show ul li .nav-link:hover{
              color: var(--secondary-color);
            }
            .navbar-collapse.show ul li .nav-link:after{
              display: none;
            }
            .navbar-collapse.show ul li .nav-link:hover:before{
              display: none;
            }
            .navbar-nav .menu-item.transform-btn .nav-link{
              text-align: center;
              padding: 10px 16px;
              background: var(--secondary-color);
              color: var(--master-color);
            }
            .navbar-nav .menu-item.transform-btn{
              display: block;
            }
            .navbar-nav .menu-item.transform-btn .nav-link:hover{
              background: var(--btn-hover);
              color: var(--master-color);
            }


            .dropdown .dropdown-menu{
              background: none !important;
              box-shadow: none !important;
            }
            .dropdown-menu .dropdown-item{
              font-size: 16px;
              padding: 10px;
              position: relative;
            }
            .dropdown-menu .dropdown-item{
              background: none !important;
              color: var(--btn-disabled);
            }
            .dropdown-menu .dropdown-item:hover{
              background: none !important;
              color: #fff;
            }
            .dropdown-menu .dropdown-item:before{
              font-family: "Font Awesome 5 Free";
              font-weight: 900;
              font-size: 75%;
              content: '\f061';
              margin-right: 10px;
            }
          }

/* Main hero */
.main-hero{
  padding: 180px 0 150px 0;
  background: url('../images/home-hero-nevsky-x2-scaled.jpg') no-repeat center center;
  background-size: cover;
}
        .hashtag-box{
          position: relative;
        }

        /* Mobile */
        .hashtag-box .hashes{
          margin-left: 90px;
          padding: 5px 0 5px 20px;
          background: var(--secondary-color);
          transform: skew(-9deg);
        }
        .hashtag-box:before{
          content: '';
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          height: 150px;
          width: 145px;
          background: url('../images/hashtag.png') no-repeat center center;
          background-size:contain;
        }
        .main-hero h2{
          font-size: 65px;
          line-height: 1;
          font-weight: 900;
          color: #fff;
          transform: skew(9deg);
        }
        .main-hero h4{
          padding: 5px;
          display: inline;
          color: #fff;
          background: var(--secondary-color);
          line-height: 1.3;
          font-weight: 500;
          font-size: 35px;
        }
        @media screen and (max-width: 992px){
          .hashtag-box .hashes{
            margin-left: 50px;
            padding: 5px 0 5px 20px;
            background: var(--secondary-color);
            transform: skew(-9deg);
          }
          .hashtag-box:before{
            top: 0;
            left: 0;
            height: 100px;
            width: 93px;
          }
          .main-hero h2{
            font-size: 40px;
            line-height: 1;
            font-weight: 900;
            color: #fff;
            transform: skew(9deg);
          }
          .main-hero h4{
            font-size: 20px;
          }
        }

/* Candidate hero */
.candidate-hero{
  height: 60vh;
  width: 100%;
  background: url('../images/candidate-background.svg'), url('../images/candidate-background.png');
  background-size: cover, cover;
  box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
  display: flex;
  gap: 100px;
}
        .candidate-cover{
          width: 50%;
          margin-right: 100px;
		  margin-top: 30px;
          background-position: bottom left;
          background-repeat: no-repeat;
          background-size: contain;
        }
        .candidate-card{
          color: #fff;
          width: 50%;
          margin-left: 100px;
          align-self: center;
          text-align: right;
        }
        .candidate-card h1{
          font-size: 65px;
        }
        .candidate-card h1 .rayon{
          display: block;
          margin-left: 30px;
          font-size: 50px;
          font-weight: 500;
        }
        .candidate-card h1 .rayon .rayon-label{
          color: var(--secondary-color);
        }
        .candidate-card .vote-ballot-prompt{
          color: var(--secondary-color);
          font-size: 28px;
        }
        .candidate-card .vote-numbers{
          margin: 20px 0;
        }
        .candidate-card .vote-numbers .vote-ballot,
        .candidate-card .vote-numbers .vote-pref{
          width: 90px;
          height: 90px;
          border: 3px solid #fff;
        }
        .candidate-card .vote-numbers .vote-ballot{
          font-size: 59px;
          font-weight: 900;
          text-align:center;
          line-height: 77px;
        }
        .candidate-card .vote-numbers .vote-pref{
          border-radius: 50%;
          font-size: 45px;
          font-weight: 900;
          text-align:center;
          line-height: 75px;
        }
        .candidate-card .vote-numbers{
          display: inline-flex;
          gap: 20px;
        }

        /* Main page */
        .candidate-hero.prime-candidates{
          flex-direction: column;
          gap: 0;
          height: auto;
          flex: 1;
        }
        .candidate-hero.prime-candidates .candidate-header{
          color: #fff;
          padding: 40px 0;
          text-align: center;
        }
        .candidate-hero.prime-candidates .candidate-header h1{
          font-size: 60px;
        }
        .vote-number-prime{
          margin-top: 50px;
          display: inline-block;
          position: relative;
          width: 110px;
          height: 110px;
          text-align: center;
          line-height: 90px;
          font-size: 80px;
          font-weight: 900;
          border: 4px solid #fff;
        }
        .vote-number-prime:before{
          position: absolute;
          bottom: -15px;
          right: -20px;
          content: '';
          background: url('../images/vote-check.svg') no-repeat center center;
          width: 65px;
          height: 61px;
        }
        .candidate-prime-box{
          margin-top: -120px;
          height: 65vh;
          display: flex;
          flex-direction: row;
          gap: 30px;
          align-items: stretch;
          justify-content: space-between;
        }
        .candidate-prime-box .candidate-prime{
          color: #fff;
          width: 50%;
          padding: 0 60px;
          display: flex;
        }
        .candidate-prime-box .candidate-prime.mayor{
          background-position: left bottom;
          flex-direction: row-reverse;
        }
        .candidate-prime-box .candidate-prime .candidate-info,
        .candidate-prime-box .candidate-prime .candidate-cover{
          width: 50%;
          margin-right: 0;
        }
        .candidate-prime-box .candidate-prime .candidate-info{
          padding-top: 60px;
        }
        .candidate-prime h3{
          font-weight: 900;
          font-size: 42px;
        }
        .candidate-prime p{
          font-size: 22px;
        }
        .candidate-prime .vote-numbers{
          width: 100%;
          margin: 30px 0;
          display: inline-flex;
          gap: 15px;
        }
        .candidate-prime .vote-numbers >div{
          width: 70px;
          height: 70px;
          border: 3px solid #fff;
          font-weight: 900;
          text-align: center;
        }
        .candidate-prime .vote-numbers .vote-ballot{
		  font-size: 44px;
    	  line-height: 56px;
        }
        .candidate-prime .vote-numbers .vote-pref{
          font-size: 32px;
          line-height: 58px;
          border-radius: 50%;
        }

        /* Candidate hero on tablet */
        @media screen and (max-width: 1400px){
          .candidate-hero{
            flex-direction: column-reverse;
            gap: 0;
            height: auto;
          }
          .candidate-hero .candidate-cover{
            background-position: bottom center;
          }
          .candidate-cover{
            width: 90%;
            margin: 0 auto;
            height: 50vh;
          }
          .candidate-card{
            width: 100%;
            margin: 0;
            text-align: center;
            padding: 30px 16px;
            background: rgba(0,0,0,0.7);
          }
          .candidate-card h1{
            font-size: 46px;
          }
          .candidate-card h1 .rayon{
            font-size: 38px;
          }
          .candidate-card .vote-ballot-prompt{
            color: var(--subtitle-text);
            font-size: 18px;
          }

          .candidate-prime-box{
            gap: 0;
          }
          .candidate-prime-box .candidate-prime.council-lead{
            padding-right: 0;
          }
          .candidate-prime-box .candidate-prime.mayor{
            padding-left: 0;
          }
          .candidate-prime-box .candidate-prime .candidate-info{
            width: 40%;
            height: auto;
          }
          .candidate-prime-box .candidate-cover{
            width: 60% !important;
            height: auto;
            margin: 0;
          }
        }

        /* On tablet and mobile */
        @media screen and (max-width: 1200px){
          .candidate-header{
            display: none;
          }
          .candidate-prime-box{
            gap: 0;
            height: auto;
            flex-direction: row;
            margin-top: 0;
          }
          .candidate-prime-box .candidate-prime{
            width: 100%;
            flex-direction: column-reverse !important;
            padding: 0;
          }
          .candidate-prime-box .candidate-prime .candidate-info,
          .candidate-prime-box .candidate-prime .candidate-cover{
            width: 100%;
          }
          .candidate-prime-box .candidate-prime .candidate-cover{
            height: 60vh;
            margin: 0 auto;
            background-position: bottom center;
          }
          .candidate-prime-box .candidate-prime .candidate-info{
            background: rgba(0,0,0,0.7);
            padding: 32px;
            text-align: center;
          }
          .candidate-prime-box .candidate-prime .candidate-info .vote-numbers{
            margin-top: 0;
            justify-content: center;
          }
        }
        @media screen and (max-width: 768px){
          .candidate-prime-box{
            flex-direction: column-reverse;
          }
        }

/* Rayon priority hero */
.rayon-plan-hero{
  position: relative;
  padding: 48px 0;
  background-image: url('../images/rayon-priorities-bgr.png'), url('../images/rayon-priorities-bgr.jpg');
  background-repeat: no-repeat, no-repeat;
  background-position: center left;
  background-size: cover;
}
        .rayon-plan-hero:before{
          position: absolute;
          content: '';
          bottom: -30px;
          left: 30px;
          background: url('../images/rayon-priorities-before.svg') no-repeat center center;
          width: 117px;
          height: 75px;
        }
        .rayon-plan-hero:after{
          position: absolute;
          content: '';
          top: -25px;
          right: 30px;
          background: url('../images/rayon-priorities-after.svg') no-repeat center center;
          width: 235px;
          height: 150px;
        }
        .rayon-plan-hero h3{
          font-weight: 900;
          font-size: 40px;
        }
        .rayon-plan-hero ul{
          padding-left: 40px;
          margin: 20px 0 40px 0;
        }
        .rayon-plan-hero ul li{
          position: relative;
          list-style: none;
          line-height: 30px;
          margin-bottom: 10px;
          font-size: 24px;
        }
        .rayon-plan-hero ul li:before{
          position: absolute;
          display: inline-block;
          background: url('../images/bullet.svg') no-repeat center center;
          background-size: contain;
          content: '';
          width: 25px;
          height: 25px;
          left: -40px;
          top: 5px;
        }
        @media screen and (max-width: 1200px){
          .rayon-plan-hero{
            padding: 48px 48px 66px 48px;
          }
          .rayon-plan-hero:after{
            display: none;
          }
        }

/* Mission hero */
.mission-hero{
  background: url('../images/our-vision.jpg') no-repeat top center;
  background-size: cover;
}
        .election-prompt{
          background: url('../images/our-vision.jpg') no-repeat top center;
          background-size: cover;
          padding: 60px 0;
        }
        .mission-hero h1{
          font-weight: 900;
        }
        .mission-hero .priority-card{
          position: relative;
          box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
          background-color: rgba(255, 255, 255, 0.7);
          backdrop-filter: blur(7px);
          padding: 30px 25px;
        }
        .priority-card.pzs-card{
          position: relative;
          box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 10px;
          background: rgba(62, 41, 77, 0.8);
          backdrop-filter: blur(7px);
          padding: 30px 25px;
          color: #fff;
        }
        .election-prompt .priority-card.pzs-card{
          padding-top: 450px;
          background: rgba(255,255,255,0.8) url('../images/pzs-bgr.png') no-repeat top center;
          background-size: contain;
          backdrop-filter: blur(7px);
          color: var(--master-color);
        }
        .mission-hero .priority-card.button-padding{
          padding: 30px 25px 60px 25px;
        }
        .mission-hero .priority-card h3{
          font-size: 24px;
          font-weight: 500;
          margin: 20px 0;
        }
        .mission-hero .priority-card .fixed-button{
          position: absolute;
          bottom: 25px;
          left: 0;
          width: 100%;
        }
        @media screen and (max-width: 992px){
          .mission-hero .priority-card.pzs-card{
            padding-top: 450px;
            background: rgba(255,255,255,0.8) url('../images/pzs-bgr.png') no-repeat top center;
            background-size: contain;
            backdrop-filter: blur(7px);
            color: var(--master-color);
          }
          .priority-card .btn{
            display: block;
          }
        }

/* Newsletter hero */
.newsletter-hero{
  position: relative;
  background: url('../images/newsletter.svg') no-repeat top center;
  background-size: cover;
  padding: 40px 0;
}

        .bullhorn-patch{
          position: absolute;
          right: 65%;
          bottom: 0;
          width: 350px;
        }
        /* MailerLite subscription form */
        .newsletter-hero .mailerlite-form-title h3{
          font-weight: 900;
        }
        .newsletter-hero .mailerlite-form-description{
          font-size: 22px;
          color: var(--subtitle-text);
        }
        .newsletter-hero .mailerlite-form-description strong{
          color: var(--link-color-hover);
        }
        .newsletter-hero .mailerlite-form-inputs{
          position: relative;
        }
        .newsletter-hero .mailerlite-form-inputs .mailerlite-form-field{
          width: 100%;
        }
        .newsletter-hero .mailerlite-form-inputs .mailerlite-subscribe-button-container{
          display: inline-block;
        }
        .newsletter-hero .mailerlite-form-field #mailerlite-1-field-email{
          width: 100%;
          padding: 6px 10px;
          text-align: left !important;
        }
        .newsletter-hero .mailerlite-form-field #mailerlite-1-field-email-error:before{
          display: inline;
          content: '\f071';
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          margin-right: 5px;
        }
        .newsletter-hero .mailerlite-form-loader{
          margin-bottom: 20px;
          color: var(--link-color-hover);
        }
        .newsletter-hero .mailerlite-form-response h4,
        .newsletter-hero .mailerlite-form-response p{
          font-size: 18px !important;
          margin-bottom: 0;
        }
        .newsletter-hero .mailerlite-form-response{
          width: 100%;
          background: #ceffd1;
          padding: 10px;
          border-radius: 2px;
        }
        .newsletter-hero .mailerlite-form-field #mailerlite-2-field-email{
          width: 100%;
          border-radius: 2px;
          border: 1px solid transparent;
          padding: 8px 12px;
          transition: 0.3s all ease-in-out;
        }
        .newsletter-hero .mailerlite-form-field #mailerlite-2-field-email:focus-visible{
          outline: none;
          border: 1px solid var(--link-color-hover);
        }
        .newsletter-hero .mailerlite-subscribe-button-container .mailerlite-subscribe-submit{
          width: 100%;
          background: var(--secondary-color);
          color: var(--master-color);
          border-radius: 2px;
          border: none;
          padding: 8px 12px;
          transition: 0.3s all ease-in-out;
        }
        .newsletter-hero .mailerlite-subscribe-button-container .mailerlite-subscribe-submit:hover{
          background: var(--btn-hover);
          box-shadow: 0px 8px 16px rgba(141, 93, 14, 0.32) !important;
        }
        @media screen and (max-width: 1400px){
          .bullhorn-patch{
            height: 120%;
          }
        }
        @media screen and (max-width: 768px){
          .bullhorn-patch{
            display: none;
          }
        }

/* Distric mayor hero */
.district_mayor-hero{
  display: flex;
  gap: 40px;
  align-items: center;
  padding-top: 80px;
}
        .district_mayor-hero.swap-panels{
          flex-direction: row-reverse;
          background: #f9f9f9 url('../images/candidate-background.svg') no-repeat center center;
          background-size: cover;
          box-shadow: inset 0px -7px 15px 5px rgba(0,0,0,0.05);
        }
        .district_mayor-hero.swap-panels .d-mayor-cover{
        background-position: bottom right;
        }

        .district_mayor-hero .d-mayor-info{
          flex-grow: 2;
          padding-left: 150px;
        }
        .district_mayor-hero .d-mayor-info h3{
          font-size: 46px;
          font-weight: 900;
        }
        .district_mayor-hero .d-mayor-info p{
          font-size: 28px;
        }
        .district_mayor-hero .d-mayor-cover{
          width: 60%;
          height: 70vh;
          background-position: bottom left;
          background-size: contain;
          background-repeat: no-repeat;
        }
        .district_mayor-hero .d-mayor-footer{
          display: flex;
          gap: 20px;
          align-items: center;
        }
        .district_mayor-hero .vote-num{
		  font-weight: 900;
		  font-size: 55px;
		  width: 90px;
		  height: 90px;
		  background: #f4b42b;
		  text-align: center;
		  line-height: 81px;
        }

        /* District mayor panel on mobile */
        @media screen and (max-width: 1200px){
          .district_mayor-hero{
            position: relative;
            flex-direction: column-reverse !important;
            gap: 0;
            background: none !important;
            margin-bottom: 40px;
            box-shadow: none !important;
          }
          .district_mayor-hero .d-mayor-cover{
            width: 100%;
            height: 45vh;
            background-position: bottom center !important;
          }
          .district_mayor-hero .d-mayor-info{
            width: 100%;
            background: #ededed;
            padding: 36px;
            text-align: center;
          }
          .district_mayor-hero .d-mayor-info h3{
            font-size: 32px;
          }
          .district_mayor-hero .d-mayor-info p{
            font-size: 20px;
          }
          .district_mayor-hero .vote-num{
            position: absolute;
            top: 0;
          }
          .district_mayor-hero .d-mayor-footer .btn{
            width: 100%;
            display: block;
          }
        }

        @media screen and (max-width: 768px){
          .candidate-info .btn{
            display: block;
          }
        }

/* Coallition stripe */
.coallition-stripe{
  background: rgba(0,0,0,0.9);
  padding: 16px;
  color: #fff;
}
        .coallition-items{
          display: flex;
          gap: 40px;
          margin-bottom: 5px;
        }
        .coallition-items img{
          height: 40px;
        }
        .coallition-stripe p{
          margin-bottom: 0;
        }

        /* Coallition stripe on mobile */
        @media screen and (max-width: 767px){
          .coallition-items{
            justify-content: center;
          }
          .coallition-stripe p{
            text-align: center;
          }
          .coallition-stripe .btn-purple{
            display: block;
            margin-top: 20px;
          }
        }

/* Carousel */
.carousel-container{
  margin-bottom: 40px;
}
.news-roller .slick-list{
  padding: 20px 0;
}
.related-news nav {
  display: flex;
  flex-direction: column;
}
        .related-news nav a {
          padding: 5px 0;
        }
.slick-slide{
  display: flex !important;
  padding: 0 15px;
  align-items: stretch;
}
.slick-dots{
  bottom: -40px;
  padding-left: 10px;
  text-align: left !important;
}
        .slick-dots li{
          width: 30px;
          height: 30px;
        }
        .slick-dots button{
          display: block;
          width: 30px;
          height: 30px;
          overflow: hidden;
          border-radius: 15px;
          background: var(--subtitle-text) !important;
          transition: 0.3s all ease-in-out;
          text-indent: -999px;
          opacity: 0.6;
        }
        .slick-dots button:hover,
        .slick-dots li.slick-active button{
          background: var(--main-color) !important;
          opacity: 1;
        }
        .slick-dots button:before{
          content: '';
          display: none;
        }

/* Counter hero */
.counter-container{
  background: radial-gradient(#ddd 1px, transparent 1px) 0 0 / 20px 20px;
}
        .counter-container .subtitle{
          color: var(--master-color);
        }
        .counters{
          margin: 100px 0 50px 0;
          background: #f8f8f8;
        }
        .counters .counter-panel{
          position: relative;
          padding-top: 60px;
          margin-bottom: 30px;
        }
        .counter-panel .counter-prime{
          position: absolute;
          font-weight: 900;
          font-size: 96px;
          color: var(--secondary-color);
          top: -55px;
          left: 0;
          right: 0;
          width: 100%;
          text-align: center;
        }
        .counter-panel .counter-subtitle{
          font-weight: 900;
          font-size: 26px;
        }
        .counter-panel .counter-note{
          font-size: 20px;
          color: var(--subtitle-text);
        }
        @media screen and (max-width: 992px){
          .counters .counter-panel{
            margin-bottom: 70px;
          }
        }

/* Day 5 */
.give-5-container{
  margin-bottom: 100px;
}
        .hide-on-mobile{
          display: inline-block;
        }
        .hide-on-desktop{
          display: none;
        }
        .give-5-campaign{
          padding: 40px 0;
        }
        .campaign-logo{
          display: block;
          width: 70%;
          margin: 30px auto;
        }
        .give-5-container .video-panel{
          position: relative;
        }
        .give-5-container .video-panel iframe{
          z-index: 5;
        }
        .give-5-container .video-panel:before{
          position: absolute;
          content: '';
          width: 150px;
          height: 151px;
          background: url('../images/squares-2.svg') no-repeat center center;
          background-size: contain;
          bottom: -75px;
          left: -40px;
          z-index: 1;
        }
        .give-5-container .video-panel:after{
          position: absolute;
          content: '';
          width: 212px;
          height: 252px;
          background: url('../images/squares-1.svg') no-repeat center center;
          background-size: contain;
          top: -140px;
          right: -177px;
          z-index: 1;
        }
        @media screen and (max-width: 992px){
          .give-5-container{
            margin-bottom: 0;
          }
          .hide-on-mobile{
            display: none;
          }
          .hide-on-desktop{
            display: inline-block;
          }
          .give-5-container .video-panel:after,
          .give-5-container .video-panel:before{
            display: none;
          }
          .campaign-logo{
            display: block;
            width: 50%;
            margin: 30px auto;
          }
        }

/* Image hero */
.image-hero{
  margin-top: 140px;
  padding: 100px 0;
  width: 100%;
  display: flex;
}
        .image-hero.top-location{
          margin-top: 0;
        }
        .image-hero.content-right .container{
          display: flex;
          justify-content: flex-end;
        }
        .image-hero.content-top{
          padding-top: 0;
          padding-bottom: 150px;
          align-items: flex-start;
        }
        .hero-content-panel{
          width: 50%;
          background: rgba(0,0,0,0.75);
          backdrop-filter: blur(7px);
          color: #fff;
          padding: 40px;
        }
        .hero-content-panel .hero-title{
          position: relative;
        }
        .image-hero.wide .hero-content-panel{
          width: 70%;
        }
        .hero-content-panel .hero-title h1,
        .hero-content-panel .hero-title h2{
          font-size: 48px;
          font-weight: 900;
        }
        .hero-content-panel .hero-title.hero-frame{
          margin-bottom: 60px;
        }
        .hero-content-panel .hero-title.hero-frame:before{
          position: absolute;
          content: '';
          border: 4px solid var(--secondary-color);
          top: -100px;
          bottom: -40px;
          left: -100px;
          right: -10px;
        }
        .hero-content-panel .hero-content p{
          font-size: 18px;
        }

        /* Collapse hero into a panel */
        @media screen and (max-width: 992px){
          .image-hero{
            margin-top: 0;
            padding-bottom: 30px;
          }
          .image-hero.content-top{
            padding-top: 300px;
            padding-bottom: 50px;
            margin: 0;
            background-position: top center !important;
            background-size: contain !important;
          }
          .image-hero .hero-content-panel{
            width: 90%;
          }
          .image-hero .hero-content-panel .hero-title.hero-frame:before{
            position: absolute;
            content: '';
            border: 4px solid var(--secondary-color);
            top: -70px;
            bottom: -40px;
            left: -70px;
            right: -10px;
          }
          .image-hero .hero-content-panel{
            width: 100% !important;
            background: rgba(255,255,255,0.85);
            color: var(--master-color);
          }
          .image-hero.content-top .hero-content-panel .hero-title.hero-frame:before,
          .image-hero.content-top .hero-content-panel .hero-title .relative{
            display: none;
          }
        }

/* Plan hero */
.plan-hero{
  position: relative;
  padding: 100px 0;
  background: url('../images/plan-hero.png') no-repeat top center;
  background-size: cover;
  margin-bottom: 60px;
}
        .plan-hero:before{
          position: absolute;
          content: '';
          bottom: -2px;
          left: 0;
          width: 100%;
          height: 200px;
          background: url('../images/plan-wave.svg') no-repeat bottom center;
          background-size: cover;
          z-index: 1;
        }
        .plan-hero h1{
          font-size: 64px;
          color: #fff;
        }
        .plan-hero h1 span{
          color: var(--secondary-color);
        }
        .plan-hero .subtitle{
          color: #fff;
          font-size: 36px;
        }
        @media screen and (min-width: 1200px){
          .plan-hero{
            margin-bottom: 60px;
            padding: 100px 0 200px 0;
          }
          .plan-hero .container{
            position: relative;
          }
          .plan-hero .container:after{
            position: absolute;
            content: '';
            bottom: -196px;
            right: 0;
            width: 400px;
            height: 400px;
            background: url('../images/plan-for-sofia-logo.svg') no-repeat center center;
            background-size: contain;
            z-index: 10;
          }
        }

/* Topic hero */
.topic-hero{
  display: flex;
  flex-wrap: nowrap;
  gap: 64px;
}
        .topic-hero .icon-container{
          position: relative;
          width: 30%;
          flex-grow: 0;
          text-align: right;
          height: 529px;
        }
        .topic-hero .icon-container:after{
          position: absolute;
          content: '';
          display: block;
          left: 0;
          top: 0;
          width: calc(100% - 119px);
          height: 440px;
          border-right: 12px solid #fff;
          border-bottom: 12px solid #fff;
          border-bottom-right-radius: 30px;
          z-index: 0;
        }
        .topic-hero .icon-container img{
          position: absolute;
          width: 250px;
          right: 0;
          top: 60px;
          z-index: 3;
        }
        .topic-hero .name-container{
          padding-top: 115px;
          width: 40%;
          color: #fff;
        }
        .topic-hero .name-container h1{
          font-size: 55px;
        }
        .topic-hero .name-container p{
          font-size: 24px;
        }
        .topic-hero .illustration-container{
          position: absolute;
          right: 0;
          bottom: -450px;
          width: 35%;
          height: 820px;
        }

        .plan-prompt{
          margin-top: 100px;
          margin-bottom: 50px;
        }

        /* Topic hero on smaller desktops */
        @media screen and (max-width: 1199px){
          .topic-hero{
            gap: 32px;
          }
          .topic-hero .icon-container{
            width: 20%;
            height: 400px;
          }
          .topic-hero .icon-container:after{
            width: calc(100% - 68px);
            height: 280px;
          }
          .topic-hero .icon-container img{
            width: 150px;
            top: 30px;
          }
          .topic-hero .name-container{
            padding-top: 30px;
          }
          .topic-hero .illustration-container{
            bottom: -200px;
            width: 35%;
            height: 530px;
          }
        }

        /* Topic hero on mobile */
        @media screen and (max-width: 768px){
          .topic-hero{
            gap: 0;
            flex-direction: column;
          }
		  .topic-hero .name-container h1{
				font-size: 36px;
		  }
          .topic-hero .icon-container{
            padding: 30px 0 0 0;
            width: 100%;
            height: auto;
            text-align: center;
          }
          .topic-hero .icon-container:after{
            display: none;
          }
          .topic-hero .icon-container img{
            position: relative;
            display: inline-block;
          }
          .topic-hero .name-container{
            padding: 60px 0;
            margin: 0 auto;
            width: 90%;
            text-align: center;
          }
          .topic-hero .illustration-container{
            display: none;
          }
          .plan-prompt{
            margin-top: 50px;
            margin-bottom: 50px;
          }
        }

/* Priority hero */
.priority-hero{
  height: 70vh;
  display: flex;
  align-items: center;
  padding-left: 220px;
}
        .priority-hero.is-archive{
          height: 40vh;
        }
        .priority-hero .hero-content-panel{
          background: none;
          backdrop-filter: none;
          padding: 0 100px 0 0;
          width: auto;
          max-width: 60%;
        }
        .priority-hero .hero-content-panel .hero-title h1{
          font-size: 100px;
        }
        .priority-hero .hero-content-panel .hero-content p{
          font-size: 40px;
        }
        @media screen and (max-width: 1199px){
          .priority-hero{
            height: auto;
            padding: 50px 30px;
            justify-content: center;
          }
          .priority-hero .hero-content-panel{
            min-width: 100% !important;
            padding-right: 0;
          }
          .priority-hero .hero-content-panel .hero-title h1{
            font-size: 70px;
          }
          .priority-hero .hero-content-panel .hero-content p{
            font-size: 30px;
          }
          .priority-hero .block-secondary,
          .priority-hero .block-white,
          .priority-hero .block-main{
            display: none !important;
          }
        }

/* Topic switches */
.topic-switches{
  margin: 20px 0;
  display: flex;
  justify-content: center;
}
        .topic-switches .nav-pill{
          margin: 0 10px;
          height: 46px;
          line-height: 46px;
          padding: 0 20px;
          background: var(--btn-disabled);
          border-radius: 23px;
          text-decoration: none;
          font-size: 20px;
        }
        .topic-switches .nav-pill:hover,
        .topic-switches .nav-pill.active{
          background: var(--secondary-color);
          color: #000;
        }
        .topic-switches .nav-pill.active:hover{
          color: #fff;
        }

/* Topic hero */
.topic-container{
  box-sizing: border-box;
  position: relative;
  padding-top: 10vh;
  min-height: 25vh;
  height: auto;
  margin-bottom: 50px;
}
        .topic-category-hero{
          position: absolute;
          top: 0;
          left: 0;
          height: 25vh;
          width: 100%;
          z-index: 1;
        }
        .topic-content{
          height: auto;
          min-height: 25vh;
          position: relative;
          background: rgba(255,255,255,0.9);
          backdrop-filter: blur(7px);
          box-shadow: rgba(40, 40, 40, 0.25) 0px 5px 15px -3px;
          padding: 30px;
          z-index: 2;
        }
        .measure-nav{
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          align-items: stretch;
          align-content: flex-start;
        }
        .measure-nav .measure-link{
          position: relative;
          width: calc(50% - 15px);
          padding: 15px 0 15px 40px;
          font-size: 25px;
          font-weight: 900;
          text-decoration: none;
          transition: 0.3s all ease-in-out;
        }
        .measure-nav .measure-link i{
          position: absolute;
          top: 23px;
          left: 0;
          font-size: 25px;
          color: var(--secondary-color);
        }
        .measure-nav .measure-link:hover{
          text-decoration: underline;
          color: #000;
        }
        .measure-nav .measure-link i:hover{
          text-decoration: none !important;
        }

        /* Measure menu on mobile */
        @media screen and (max-width: 1199px){
          .measure-nav .measure-link{
            width: 100%;
          }
          .measure-see-more{
            text-align: center !important;
          }
        }

/* Form hero */
.form-container{
  padding: 50px 0;
  background: #fafafa;
  margin-bottom: 50px;
}

/* Contacts hero */
.contact-hero{
  padding: 90px 0;
  background: #FAFAFA;
  margin-bottom: 60px;
}
        .contact-hero.contact-page{
          background: #FAFAFA url('../images/contacts.png') no-repeat right center;
          background-size: auto 200%;
        }
        .contact-hero img{
          max-height: 300px;
        }
        .contact-hero h3{
          font-weight: 900;
        }
        .contact-hero.contact-page h3{
          font-size: 64px;
        }
        @media screen and (max-width: 1199px){
          .contact-hero.contact-page{
            background: #FAFAFA;
          }
        }

/* Testimonial accents */
/* Features in plans */
.testimonials,
.priorities{
  position: relative;
}
        .priorities{
          margin-top: 75px;
        }
        .testimonials .container:before,
        .priorities .container:before{
          position: absolute;
          content: '';
          width: 150px;
          height: 151px;
          background: url('../images/squares-2.svg') no-repeat center center;
          background-size: contain;
          bottom: 35px;
          left: 100px;
          z-index: -1;
        }
        .testimonials .container:after,
        .priorities .container:after{
          position: absolute;
          content: '';
          width: 212px;
          height: 252px;
          background: url('../images/squares-1.svg') no-repeat center center;
          background-size: contain;
          top: -50px;
          right: 87px;
          z-index: -1;
        }
        .testimonial-row{
          padding-top: 100px;
        }
        .testimonial-panel .card-accent{
          padding-top: 30%;
        }
        .card-accent .testimonial-image{
          position: absolute;
          width: 50%;
          left: 50%;
          top: -100px;
          margin-left: -25%;
        }
        .testimonial-panel .card-accent .card-body{
          padding: 10px 40px 30px 40px;
        }
        .testimonial-panel .card-accent .card-body .card-text{
          position: relative;
        }
        .testimonial-panel .card-accent .card-text:before{
          position: absolute;
          content: '„';
          color: var(--link-color-hover);
          font-size: 50px;
          top: -30px;
          left: -20px;
        }
        .testimonial-panel .card-accent .card-text:after{
          position: absolute;
          content: '“';
          color: var(--link-color-hover);
          font-size: 50px;
          bottom: -20px;
          right: -20px;
        }
        /* Accent cards on mobile */
        @media screen and (max-width: 992px){
          .testimonial-row{
            padding: 0;
          }
          .testimonial-panel .card-accent{
            margin-top: 150px;
          }
          .testimonial-panel .card-accent {
              padding-top: 120px;
          }
          .card-accent .testimonial-image{
            position: absolute;
            width: 200px;
            left: 50%;
            top: -100px;
            margin-left: -100px;
          }
          .testimonials .container:before,
          .testimonials .container:after,
          .priorities .container:before,
          .priorities .container:after{
            display: none;
          }
          .priorities{
            margin-top: 60px;
          }
        }

/* Join us hero */
.join-us{
  position: relative;
  padding: 50px 0;
  background: linear-gradient(0deg,rgba(0,0,0,0.2),rgba(0,0,0,0.2)),linear-gradient(0deg,rgba(62,41,77,0.8),rgba(62,41,77,0.8)),url('../images/meeting-flipped.jpg'),linear-gradient(0deg,#3E294D,#3E294D);
  background-blend-mode: normal,normal,luminosity,normal;
  background-size: cover;
  background-position: top,left,top 35% left,top;
  background-repeat: no-repeat;
}
        .join-us h2,
        .join-us .subtitle{
          color: #fff;
        }
        /* Join us hero on mobile */
        @media screen and (max-width: 1002px){
          .join-us{
            background-position: top,left,top 35% left,center;
          }
        }

/* Social menus */
.share-post{
  padding-left: 30px;
  margin-bottom: 50px;
  border-left: 5px solid var(--secondary-color);
}
        .share-post .social-share-title{
          font-size: 30px;
          font-weight: 900;
        }
        .social-share-menu{
          display: flex;
          flex-direction: row;
          justify-content: flex-start;
        }
        .social-share-menu .social-item{
          height: 24px;
          margin-right: 10px;
          justify-items: flex-end;
        }
        .social-share-menu .social-item.twitter{
          margin-top: 4px;
        }

/* Centered share panel */
.share-post.share-centre{
  padding: 0;
  margin-bottom: 50px;
  border-left: none;
  text-align: center;
}
        .share-post.share-centre .social-share-title{
          font-size: 48px;
          font-weight: 900;
          margin-bottom: 60px;
          position: relative;
        }
        .share-post.share-centre .social-share-title:before{
          display: block;
          content: '';
          position: absolute;
          bottom: -25px;
          left: 50%;
          width: 200px;
          margin-left: -100px;
          height: 5px;
          background: var(--secondary-color);
        }
        .share-centre .social-share-menu{
          justify-content: center;
        }

/* Other priorities */
.other-priorities{
  display: block;
  margin: 90px 0;
  position: relative;
}
        .other-priorities .book-cover{
          position: absolute;
          right: 60%;
          top: -40px;
          transform: rotate(10deg);
        }
        .opri-panel{
          background: #f2f2f2;
          padding: 30px 0;
        }
        .opri-panel h3{
          font-weight: 900;
          font-size: 28px;
          margin-bottom: 20px;
        }
        .opri-panel .other-priority-link{
          position: relative;
          display: block;
          margin-bottom: 20px;
          background: #fff;
          box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 10px -5px;
          padding: 10px 70px 10px 10px;
          text-decoration: none;
        }
        .opri-panel .other-priority-link .link-title{
          display: block;
          position: relative;
          font-weight: 900;
          font-size: 20px;
          padding-bottom: 18px;
        }
        .opri-panel .other-priority-link .link-title:before{
          position: absolute;
          content: '';
          bottom: 5px;
          left: 0;
          width: 100px;
          height: 4px;
          background: var(--secondary-color);
        }
        .opri-panel .other-priority-link .link-arrow{
          background: var(--main-color);
          width: 50px;
          height: 50px;
          position: absolute;
          top: 50%;
          right: 10px;
          margin-top: -25px;
          line-height: 50px;
          text-align: center;
          color: #fff;
        }
        .opri-panel .other-priority-link p{
          margin: 0;
        }
        .pzs-panel{
          background: #000;
          padding: 20px 0;
          color: #fff;
        }
        .pzs-panel .read-pzs{
          display: block;
          color: var(--secondary-color);
          font-size: 22px;
          margin-bottom: 25px;
          text-decoration: none;
          transition: 0.3s all ease-in-out;
        }
        .pzs-panel .read-pzs:hover{
          color: var(--btn-hover);
        }
        .pzs-panel .read-pzs i{
          margin-left: 5px;
          transform: rotate(-45deg);
        }
        .pzs-logo img{
          width: 100%;
          max-width: 130px;
        }
        /* Join us hero on mobile */
        @media screen and (max-width: 768px){
          .other-priorities .book-cover{
            display: none;
          }
        }

/* Join page content */
.join-box{
  position: relative;
  width: 75%;
  padding: 30px 30px 70px 30px;
}
        .jb{
          display: flex;
          justify-content: flex-end;
          background: linear-gradient(0deg,rgba(0,0,0,0.2),rgba(0,0,0,0.2)),linear-gradient(0deg,rgba(236, 182, 77, 0.8),rgba(236, 182, 77, 0.8)),url('../images/meeting-flipped.jpg'),linear-gradient(0deg,rgb(242, 181, 24),rgb(242, 181, 24));
          background-blend-mode: normal,normal,luminosity,normal;
          background-size: cover;
          background-position: top,left,top 35% left,top;
          background-repeat: no-repeat;
        }
        .jb-alt{
          display: flex;
          justify-content: flex-start;
          background: linear-gradient(0deg,rgba(0,0,0,0.2),rgba(0,0,0,0.2)),linear-gradient(0deg,rgba(62,41,77,0.8),rgba(62,41,77,0.8)),url('../images/join-us-campaign.png'),linear-gradient(0deg,#3E294D,#3E294D);
          background-blend-mode: normal,normal,luminosity,normal;
          background-size: cover;
          background-position: top,left,top 65% left,top;
          background-repeat: no-repeat;
        }
        .jb .join-box{
          text-align: right;
        }
        .join-box{
          color: #fff;
        }
        .jb .join-box .btn{
          right: 30px;
        }
        .jb-alt .join-box .btn{
          left: 30px;
        }
        .join-box .btn{
          position: absolute;
          bottom: 30px;
        }
        /* Join boxes on mobile */
        @media screen and (max-width: 1002px){
          .join-box{
            width: 90%;
          }
        }

/* Team member single content */
.person-portrait{
  width: 100%;
}
        .person-portrait img{
          width: 100%;
        }
.person-title{
  border-left: 5px solid var(--secondary-color);
  padding-left: 30px;
  margin-bottom: 40px;
}
        .person-title h1{
          font-size: 36px;
          margin: 0;
        }
        .person-title .person-profession{
          margin: 0 0 20px 0;
          font-size: 26px;
          color: var(--subtitle-text);
        }
.person-socials{
  margin: 20px 0;
  display: flex;
  justify-content: flex-start;
}
        .person-socials a{
          color: var(--main-color);
          transition: 0.3s all ease-in-out;
          font-size: 36px;
          line-height: 36px;
          margin-right: 20px;
        }
        .person-socials a:hover{
          color: var(--secondary-color);
        }
        /* Team member single content on mobile */
        @media screen and (max-width: 767px){
          .person-title{
            margin-top: 40px;
          }
          .person-portrait{
            width: 100%;
            padding-top: 100%;
            overflow: hidden;
            position: relative;
          }
          .person-portrait img{
            width: 100%;
            position: absolute;
            top: 0;
            left: 0;
          }
        }

/* Project single content */
.project-details{
  margin-bottom: 20px;
}
        .project-details p{
          margin-bottom: 10px;
          font-size: 18px;
        }
        .project-details span{
          font-weight: 900;
        }
.project-files{
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
}
        .project-files a{
          position: relative;
          padding: 6px 0 6px 30px;
          text-decoration: none;
          color: var(--master-color);
          font-size: 18px;
          transition: 0.3s all ease-in-out;
        }
        .project-files a:hover{
          color: var(--link-color-hover);
        }
        .project-files i{
          position: absolute;
          top: 10px;
          left: 0;
          font-size: 20px;
        }
        .project-files i.fa-file-pdf{
          color: #CC1515 !important;
        }
        .project-files i.fa-file-excel{
          color: #3A9922 !important;
        }
        .project-files i.fa-file-word{
          color: #1E6AAF !important;
        }
        .project-files i.fa-box-archive{
          color: #A0A0A0 !important;
        }
        .project-files i.fa-image{
          color: var(--link-color-hover) !important;
        }
.project-cover,
.post-cover{
  overflow: hidden;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}
        .project-cover img,
        .post-cover img{
          width: 100%;
        }
        .round-bottom{
          border-radius: 6px !important;
        }
.project-issues{
  background: #F1F1F1;
  padding: 20px;
  margin-bottom: 20px;
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}
        .project-issues ul{
          padding: 0;
          margin: 0;
        }
        .project-issues ul li{
          position: relative;
          list-style: none;
          padding: 3px 0 3px 20px;
          font-size: 16px;

        }
        .project-issues ul li:before{
          position: absolute;
          width: 8px;
          height: 8px;
          background: var(--secondary-color);
          top: 50%;
          margin-top: -4px;
          left: 0;
          content: '';
        }

/* Post single */
.post-content{
  margin: 20px 0;
}

/* Archive template */
.category-header{
  position: relative;
  padding: 120px 0;
  background: url('../images/news.jpg') no-repeat top center;
  background-size: 150% auto;
  margin-bottom: 60px;
}
        .category-header .paper-planes{
          position: absolute;
        }
        .category-header h1{
          text-align: center;
          font-size: 84px;
          margin: 0;
        }
        .category-header .search-title{
          text-align: center;
          font-size: 54px;
          margin: 0;
        }
        .category-header .search-title strong{
          color: var(--main-color);
        }

/* Tax header */
.tax-header{
  position: relative;
  padding: 120px 0;
  margin-bottom: 60px;
}
        .tax-header h1{
          text-align: center;
          font-size: 84px;
          margin: 0;
          color: #fff;
        }

/* Pagination */
.nav-previous a,
.nav-next a{
  background: #fff;
  border: 1px solid var(--main-color);
  border-radius: 2px;
  color: var(--main-color);
  line-height: 24px;
  text-decoration: none;
  padding: 8px 12px;
}
      .nav-previous a:hover,
      .nav-next a:hover{
        background: #fff;
        border: 1px solid var(--link-color-hover);
        color: var(--link-color-hover);
        box-shadow: 0px 8px 16px rgba(141, 93, 184, 0.32) !important;
      }

/* Article cards */
.article-card.card{
  position: relative;
  width: 100%;
  padding-bottom: 60px;
  border: none;
  border-radius: 2px;
  box-shadow: 0 0 10px 0 rgba(0,0,0,.25);
}
        .article-card .card-body{
          padding: 30px;
        }
        .article-card .card-img-top{
          border-top-left-radius: 2px;
          border-top-right-radius: 2px;
        }
        .article-card .card-title-link{
          transition: 0.3s all ease-in-out;
          text-decoration: none !important;
          color: var(--master-color);
        }
        .article-card .card-title-link:hover{
          text-decoration: none !important;
          color: var(--link-color-hover);
        }
        .article-card .card-title-link .card-title{
          font-size: 24px;
          font-weight: bold;
        }
        .article-card .card-date{
          font-size: 18px;
          color: var(--subtitle-text);
        }
        .article-card .cat-link{
          text-decoration: underline;
          color: var(--subtitle-text);
          transition: 0.3s all ease-in-out;
        }
        .article-card .post-div{
          display: inline-block;
          width: 6px;
          height: 6px;
          border-radius: 3px;
          margin: 0 5px 2px 5px;
          background: var(--subtitle-text);
        }
        .article-card .cat-link:hover{
          text-decoration: underline;
          color: var(--secondary-color);
        }
        .article-card .btn{
          position: absolute;
          left: 30px;
          bottom: 30px;
        }
        .article-card.search-result .card-img-wrapper{
          position: relative;
          height: 260px;
          overflow: hidden;
        }
        .article-card.search-result .card-img-wrapper img{
          position: absolute;
          top: 0;
          left: 0;
          height: auto;
          width: 100%;
          border-radius: 0;
        }

/* Plan card */
.plan-card{
  border-top-width: 8px;
  border-radius: 2px;
  box-shadow: 0 0 10px 0 rgba(0,0,0,.25);
  padding: 64px 16px 16px 16px;
  margin-top: 90px;
  text-decoration: none;
}
        .plan-card .hexagon{
          position: absolute;
          top: -80px;
          left: 50%;
          margin-left: -64px;
          width: 128px;
          transition: 0.4s all ease-in-out;
        }
        .plan-card:hover{
          color: var(--master-color);
        }
        .plan-card:hover .hexagon{
          transform: translateY(-20px);
        }
        .plan-card .card-body{
          text-align: center;
        }
        .plan-card .card-title{
          font-weight: 900;
          font-size: 24px;
        }

.reader{
  position: relative;
}
        .reader .reader-nav{
          position: absolute;
          right: 20px;
          top: 20px;
          z-index: 999;
        }

/* Measure card */
.measure-card{
  position: relative;
  flex-direction: row;
  text-decoration: none !important;
  box-shadow: 0 0 10px 0 rgba(0,0,0,.25);
}
        .measure-card.compact{
          flex-direction: column;
        }
        .measure-card.compact .plan-thumb,
        .measure-card.compact .card-body{
          overflow: visible;
          width: 100%;
        }
        .measure-card .plan-thumb{
          border-bottom-left-radius: 5px;
        }
        .measure-card .plan-thumb img{
          width: auto;
		  max-height: 300px;
        }
        .measure-card.compact .plan-thumb img{
          width: 100%;
		  max-height: auto !important;
        }
        .measure-card.compact .plan-thumb{
          border-bottom-left-radius: 0;
        }
        .is-casestudy :before{
          position: absolute;
          display: block;
          left: 16px;
          top: 16px;
          width: 66px;
          height: 66px;
          background: url('../images/case-study-icon.svg') no-repeat center center;
          background-size: contain;
          content: '';
        }
        .measure-card .plan-thumb,
        .measure-card .card-body{
          width: 50%;
          overflow: hidden;
        }
        .measure-card .card-title-link{
          text-decoration: none;
        }
        .measure-card .card-title{
          font-weight: 900;
        }
        .measure-card .card-body p,
        .measure-card:hover .card-body p{
          color: var(--master-color);
          font-size: 14px;
        }
        /* Measure card on tablet and mobile */
        @media screen and (max-width: 990px){
          .measure-card{
            flex-direction: column;
            text-decoration: none !important;
          }
          .measure-card .plan-thumb,
          .measure-card .card-body{
            width: 100%;
            overflow: visible;
          }
          .measure-card .plan-thumb{
            border-bottom-left-radius: 0;
          }
          .measure-card .plan-thumb img{
            width: 100%;
			max-height: auto !important;
          }
          .measure-card .card-title-link{
            text-decoration: none;
          }
          .measure-card .card-title{
            font-weight: 900;
          }
        }

/* Candidate propmt */
.plan-person{
  margin: 40px 0;
}
        .vote-stripe{
          display: flex;
          margin-top: 30px;
          align-items: flex-end;
          text-decoration: none !important;
        }
        .vote-stripe .vote-photo{
          overflow: hidden;
          width: 250px;
          height: 250px;
        }
        .vote-stripe .vote-photo img{
          width: 100%;
        }
        .vote-stripe .vote-info{
          position: relative;
          min-height: 210px;
          padding: 16px 32px;
          flex-grow: 2;
          color: #fff;
          background: url('../images/plan-person.png') no-repeat center left;
          background-size: cover;
          box-shadow: 0px 8px 16px rgba(62, 41, 77, 0.2);
        }
        .vote-stripe .vote-info:before{
          position: absolute;
          top: -40px;
          left: 0px;
          height: 40px;
          width: 40px;
          content: '';
          background: url('../images/candidate-triangle.svg') no-repeat center center;
          background-size: contain;
        }
        .vote-stripe .vote-info h4{
          font-size: 36px;
          margin-bottom: 5px;
          font-weight: 900;
        }
        .vote-stripe.rayon .vote-info h4{
          font-size: 46px;
        }
        .vote-stripe .vote-info h4 span{
          color: var(--secondary-color);
        }
        .vote-stripe .vote-info h4 .divider{
          display: inline-block;
          height: 36px;
          width: 2px;
          background: #fff;
          margin: 0 10px;
        }
        .vote-stripe .vote-numbers{
          display: flex;
          gap: 20px;
        }
        .vote-stripe .vote-numbers .vote-ballot,
        .vote-stripe .vote-numbers .vote-pref{
          width: 60px;
          height: 60px;
          border: 2px solid #fff;
        }
        .vote-stripe .vote-numbers .vote-ballot{
          font-size: 40px;
          font-weight: 900;
          text-align:center;
          line-height: 50px;
        }
        .vote-stripe .vote-numbers .vote-pref{
          border-radius: 30px;
          font-size: 25px;
          font-weight: 900;
          text-align:center;
          line-height: 50px;
        }
        .vote-stripe .vote-prompt{
          font-size: 18px;
          color: var(--secondary-color);
        }

        /* Vote stripe on mobile */
        @media screen and (max-width: 768px){
          .plan-person h3{
            text-align: center;
          }
          .vote-stripe{
            width: 80%;
            margin: 30px auto;
            box-shadow: 0px 8px 16px rgba(62, 41, 77, 0.2);
            flex-direction: column;
            align-items: center;
          }
          .vote-stripe .vote-photo{
            width: 100%;
            height: 45vh;
          }
          .vote-stripe .vote-info{
            padding: 32px;
            height: auto;
            text-align: center;
            width: 100%;
          }
          .vote-stripe .vote-info:before{
            display: none;
          }
          .vote-stripe .vote-numbers{
            align-items: center;
            justify-content: center;
            gap: 10px;
          }

        }

/* Vote banner */
.vote-aspect-ratio{
  margin-top: -100px;
  background: url('../images/vote-strip.png') no-repeat bottom right;
  background-size: contain;
  width: 100%;
  padding-bottom: 28%;
  position: relative;
}
        .vote-banner{
          display: flex;
          align-items: center;
          position: absolute;
          top: 36%;
          left: 5%;
          height: 24.5%;
        }
        .vote-banner-content{
          display: flex;
          gap: 30px;
          align-items: center;
          color: #fff;
        }
        .vote-banner-content .vote-num{
		  background: #f4b42b;
		  width: 90px;
		  height: 90px;
		  text-align: center;
		  font-size: 60px;
		  font-weight: 900;
		  line-height: 78px;
		  color: var(--main-color);
        }
        .vote-banner-content p{
          font-size: 20px;
        }
        #council_members{
          margin-top: -40px;
        }
        @media screen and (max-width: 1400px){
          .vote-aspect-ratio{
            display: none;
          }
        }

/* Candidates menu */
.candidate-menu{
  padding: 12px;
  display: flex;
  gap: 20px;
  justify-content: center;
  background: #F1F1F1;
}
        .candidate-menu .btn{
          border-radius: 25px;
        }

/* Contact card */
.card.card-contacts{
  background: var(--main-color);
  color: #fff;
  border-radius: 0;
  border: none;
}
        .card.card-contacts .card-body{
          padding: 30px;
        }
        .card.card-contacts .card-body h1{
          font-size: 22px;
        }

/* Accent cards */
.card.card-accent{
  width: 100%;
  position: relative;
  border-radius: 0;
  border-color: var(--secondary-color);
  box-shadow: rgba(40, 40, 40, 0.25) 0px 5px 15px -3px;
  text-align: center;
}
        .card-accent .card-body{
          padding: 30px;
        }
        .card-accent .card-body .card-title{
          font-size: 25px;
          margin-bottom: 20px;
        }
        .card-accent .card-counter{
          display: block;
          margin: 40px auto 0 auto;
          width: 50px;
          background: var(--main-color);
          text-align: left;
          line-height: 50px;
          font-size: 70px;
          font-weight: 900;
          color: #fff;
        }
        .card-accent .card-counter span{
          margin-left: -3px;
        }
		a.card-accent, a.card-accent > * {
			text-decoration: none !important;
		}

/* Tabs */
.project-container{
  margin-top: 50px;
}
.tab-content{
  padding: 20px 0;
}
        .nav-tabs{
          position: relative;
          border: none;
          justify-content: space-between;
          margin-bottom: 30px;
        }
        .nav-tabs:before{
          position: absolute;
          display: block;
          content: '';
          width: 2px;
          height: 76px;
          bottom: 0;
          left: 50%;
          margin-left: -1px;
          background: var(--secondary-color);
        }
        .nav-tabs .nav-item{
          width: calc(50% - 1px);
        }
        .nav-tabs.regular-tabs .nav-item{
          width: auto;
        }
        .nav-tabs.regular-tabs:before{
          display: none;
        }
        .nav-tabs.regular-tabs .nav-item{
          width: auto;
        }
        .nav-tabs .nav-item .nav-link{
          height: 76px;
          width: 100%;
          border: none;
          font-weight: normal;
          font-size: 40px;
          line-height: 48px;
          color: var(--master-color);
          transition: 0.3s all ease-in-out;
          margin-bottom: 20px;
        }
        .nav-tabs.regular-tabs .nav-item .nav-link{
          height: 76px;
          width: 100%;
          border: none;
          font-weight: normal;
          font-size: 26px;
          line-height: 48px;
          color: var(--master-color);
          transition: 0.3s all ease-in-out;
          margin-bottom: 20px;
        }
        .nav-tabs .nav-item .nav-link.active{
          color: var(--subtitle-text);
          position: relative;
        }
        .nav-tabs .nav-item .nav-link.active:after{
          display: block;
          position: absolute;
          content: '';
          width: 80px;
          height: 8px;
          left: 50%;
          margin-left: -40px;
          bottom: -10px;
          background: var(--secondary-color);
        }
        .nav-tabs .nav-item .nav-link:hover{
          color: var(--btn-hover);
        }
        /* Tabs on mobile */
        @media screen and (max-width: 992px){
          .project-container{
            margin-top: 0;
          }
          .nav-tabs{
            border-bottom: 0;
          }
          .nav-tabs:before{
            height: 40px;
          }
          .nav-tabs.regular-tabs .nav-item{
            width: 100%;
          }
          .nav-tabs .nav-item .nav-link{
            height: 40px;
            font-size: 20px;
            line-height: 24px;
          }
          .nav-tabs .nav-item .nav-link.active:after{
            height: 4px;
          }
        }

/* Accordion */
.accordion{
  margin-bottom: 40px;
}
        .accordion .accordion-item,
        .accordion .accordion-item .accordion-button,
        .accordion .accordion-item:first-of-type .accordion-button{
          border: none;
          border-radius: 0;
          box-shadow: none;
          background: none;
        }
        .accordion .accordion-header{
          padding: 20px 0;
          border-bottom: 2px solid var(--secondary-color);
        }
        .accordion .accordion-button{
          font-size: 30px;
          font-weight: 900;
        }
        .accordion-button:not(.collapsed){
          color: var(--btn-hover);
        }

/* Team */
.team-img{
  background: url('../images/team.png') no-repeat center center;
  background-size: cover;
}
        .people-title{
          font-size: 64px;
        }
        #team-title-rotate{
          color: var(--secondary-color);
          transition: 0.5s all ease-in-out;
          animation: animate infinite 6s;
        }
        /* Team members */
        .person-container{
          width: 100%;
          position: relative;
        }
        .person-container img{
          filter: grayscale(100%);
          -webkit-filter: grayscale(100%);
          z-index: 1;
          transition: all 0.5s ease;
        }
        .person-container .candidate_pref{
          position: absolute;
          display: block;
          width: 60px;
          height: 60px;
          border-radius: 30px;
          text-align: center;
          line-height: 55px;
          top: 20px;
          right: 20px;
          font-size: 25px;
          font-weight: 900;
          color: #fff;
          background: var(--main-color);
        }
        .person-overlay{
          position: absolute;
          top: 0;
          left: 0;
          bottom: 0;
          right: 0;
          display: flex;
          justify-content: flex-end;
          flex-direction: column;
          padding: 20px;
          background-color: transparent;
          background-image: linear-gradient(221deg, #FFFFFF00 27%, var(--main-color) 87%);
          text-decoration: none;
          color: #fff;
          transition: 0.6s all ease-in-out;
          z-index: 2;
        }
        .person-container:hover .person-overlay{
          color: var(--secondary-color);
        }
        .person-container:hover img{
          filter: grayscale(0%);
        }
        .person-overlay h3{
          font-size: 22px;
          margin-bottom: 0;
        }
        .person-overlay span{
          font-size: 14px;
        }

        /* Volunteers */
        .person-container.volunteer{
          overflow: hidden;
          height: 0;
          padding-top: 100%;
        }

/* Signal page */
.signal-hero{
  padding: 100px 0 30px 0;
  background: radial-gradient(#ddd 1px, transparent 1px) 0 0 / 20px 20px;
}
        .signal-hero h1{
          font-size: 64px;
        }
        .signal-hero h1 span{
          color: var(--secondary-color);
        }
        .signal-hero .subtitle{
          color: var(--master-color);
          font-size: 36px;
        }
        .category-title{
          font-weight: 900;
          font-size: 28px;
          line-height: 120%;
          margin: 32px 0;
        }
        .signal-card{
          display: flex;
          flex-direction: row;
          position: relative;
          width: 100%;
          border: none;
          border-radius: 2px;
          box-shadow: 0 0 10px 0 rgba(0,0,0,.25);
          text-decoration: none;
          transition: 0.3s all ease-in-out;
        }
        .signal-card:hover{
          background: #FBF8FF;
        }
        .signal-card img{
          display: inline-block;
          margin: 15px;
          width: 50px;
        }
        .signal-card .card-body{
          align-self: center;
          text-align: left;
        }
        .signal-card .card-title{
          font-size: 24px;
          font-weight: 900;
          margin: 0;
        }

        /* Category compartments */
        .category-section{
          padding: 60px 0;
          margin-top: -1px;
        }
        .category-section h4{
          margin: 0 0 60px 0;
        }
        .category-section-2{
          background: #F1F1F1 url('../images/cat-section-bgr.png') repeat-x top;
        }
        .category-section-4{
          padding-bottom: 90px;
          background: url(../images/cat-section-bgr-buildings.svg) no-repeat bottom center;
          background-size: contain;
        }
        .category-section-5{
          background: #F1F1F1;
        }
        .signal-cat-panel{
          padding-left: 30px;
          border-left: 5px solid var(--secondary-color);
          margin-bottom: 60px;
        }
        .measure-cat-panel{
          position: relative;
          padding: 60px 0 60px 80px;
          border-left: 5px solid var(--secondary-color);
          margin-bottom: 60px;
          margin-left: 50px;
        }
        .measure-cat-panel img{
          position: absolute;
          width: 100px;
          top: 40px;
          left: -52.5px;
        }
        .signal-title{
          font-size: 36px;
          margin-bottom: 10px;
        }
        .signal-subtitle{
          color: var(--link-color-hover);
          font-size: 26px;
        }
        .signal-related{
          font-weight: 900;
          font-size: 30px;
          margin: 30px 0;
        }
        .related-projects{
          padding: 0 0 30px 0;
          margin: 0 0 30px 0;
          border-bottom: 1px solid #dbdbdb;
        }
        .related-projects nav{
          display: flex;
          flex-direction: column;
        }
        .related-projects nav a{
          position: relative;
          padding: 6px 0 6px 15px;
          color: var(--link-color-hover);
        }
        .related-projects nav a:hover{
          color: var(--master-color);
        }
        .related-projects nav a:before{
          position: absolute;
          content: '';
          width: 5px;
          height: 5px;
          background: var(--link-color-hover);
          top: 17px;
          left: 0;
        }
        .signal-person{
          background: #fafafa;
          padding: 20px;
        }
        .signal-person h3{
          font-size: 20px;
          margin-bottom: 20px;
        }
        .signal-person h4{
          margin: 10px 0 0 0;
          font-size: 28px;
          font-weight: 900;
          line-height: 120%;
        }
        .signal-person .person-image{
          position: relative;
          display: block;
        }
        .signal-person .person-image:before{
          position: absolute;
          top: 0;
          right: 0;
          width: 50px;
          height: 50px;
          content: '';
          background: url('../images/person-pic.png') no-repeat center center;
        }
		@media screen and (max-width: 768px){
			.measure-cat-panel{
			  position: relative;
			  padding: 80px 0 0 0;
			  border-left: none;
			  border-top: 5px solid var(--secondary-color);
			  margin-top: 60px;
			  margin-left: 0;
			  text-align: center;
			}
			.measure-cat-panel h1{
				font-size: 36px;
			}
			.measure-cat-panel img{
			  position: absolute;
			  width: 100px;
			  top: -62px;
			  left: calc(50% - 50px);
			}
		}

/* Election prompt */
.candidate-prompt-hero{
  background: #F1F1F1;
  margin-bottom: 160px;
}
        .candidate-prompt-hero .prompt{
          display: flex;
          gap: 100px;
          align-items: center;
        }
        .candidate-prompt-hero .prompt-content,
        .candidate-prompt-hero .prompt-image{
          width: 50%;
        }
        .candidate-prompt-hero .prompt-image img{
          width: 100%;
          margin-bottom: -120px;
        }
        .candidate-prompt-hero .prompt-content h3{
          font-weight: 900;
          font-size: 90px;
          line-height: 1;
        }
        .candidate-prompt-hero .prompt-content h3 span{
          background: url('../images/text-clip.svg') no-repeat;
          background-size: cover;
          -webkit-background-clip: text;
          background-clip: text;
          color: transparent;
        }
        .candidate-prompt-hero .prompt-content p{
          font-size: 30px;
        }
        /* Prompt on mobile */
        @media screen and (max-width: 1400px){
          .candidate-prompt-hero{
            margin-bottom: 90px;
          }
          .candidate-prompt-hero .prompt-content{
            padding: 20px 0;
          }
          .candidate-prompt-hero .prompt-content h3{
            font-size: 36px;
          }
          .candidate-prompt-hero .prompt-content p{
            font-size: 24px;
          }
        }
        /* Prompt on mobile */
        @media screen and (max-width: 768px){
          .candidate-prompt-hero{
            background: #F1F1F1;
            margin-bottom: 0;
          }
          .candidate-prompt-hero .prompt{
            flex-direction: column-reverse;
          }
          .candidate-prompt-hero .prompt-content,
          .candidate-prompt-hero .prompt-image{
            width: 100%;
            text-align: center;
          }
          .candidate-prompt-hero .prompt-content{
            padding: 60px 0;
          }
          .candidate-prompt-hero .prompt-image img{
            width: 70%;
          }
          .candidate-prompt-hero .prompt-content .btn{
            display: block;
            margin-top: 32px !important;
          }
        }

/* Donation page */
.donation-container{
  margin-top: -30px;
  padding: 32px 48px;
  box-shadow: rgba(0, 0, 0, 0.35) 0px 0px 10px;
  background: #fff;
}
        .fake-radio-btn-parent > h3:nth-of-type(1) {
          margin-bottom: 12px;
        }
        .fake-radio-btn-parent > h3:nth-of-type(2) {
          margin-bottom: 8px;
          margin-top: 16px;
        }
        .fake-radio-btn-parent > h3:nth-of-type(3) {
          margin-bottom: 12px;
          margin-top: 32px;
        }
        .fake-radio-btn-parent > h3:nth-of-type(4) {
          margin-bottom: 8px;
          margin-top: 32px;
        }
        .fake-radio-btn-parent > h3 {
        font-size: 28px;
        font-weight: bold;
        }
        #subscription-amount-illustration > h3 {
          font-weight: 700;
          font-size: 28px;
          line-height: 1.25;
          margin-bottom: 24px;
        }
        .fake-radio-btn-parent > form {
          display: grid;
          grid-template-columns: repeat(3, minmax(0, 1fr));
          gap: 24px;
        }
        .fake-radio-btn-parent > form .support-btn {
          font-size: 36px;
        }
        .fake-radio-btn-parent input[type="radio"],
        .fake-radio-btn-parent input[type="submit"] {
          position: absolute;
          display: none;
        }
        .fake-radio-btn-parent input[type="radio"]:checked ~ .support-btn:not(.payment-method),
        .fake-radio-btn-parent input[type="submit"]:checked ~ .support-btn:not(.payment-method) {
          background: var(--secondary-color);
          box-shadow: none;
        }
        .fake-radio-btn-parent input[type="radio"]:disabled ~ .support-btn,
        .fake-radio-btn-parent input[type="submit"]:disabled ~ .support-btn {
          background: white;
          border-color: #eaeaea;
          box-shadow: none;
          opacity: 0.36;
        }
        .support-btn {
          display: flex;
          justify-content: center;
          align-items: center;
          background: white;
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.16);
          border: 1px solid var(--secondary-color);
          text-align: center;
          min-height: 48px;
          transition: 0.3s all ease-in-out;
        }
        .support-btn:hover {
          background-color: var(--btn-disabled);
          cursor: pointer;
        }
        .payment-method {
          height: 24px;
          padding: 14px;
          text-align: left;
          width: 100%;
          display: flex;
          flex-direction: row;
          align-items: center;
        }
        #patreon-form .payment-method span,
        #epay-form .payment-method span,
        #paypal-form .payment-method span{
          flex-grow: 2;
          padding-left: 8px;
        }
        #patreon-form .payment-method,
        #epay-form .payment-method,
        #paypal-form .payment-method{
          height: 24px;
          padding: 14px;
          text-align: left;
          width: 100%;
          display: flex;
          flex-direction: row;
          justify-content: space-between;
          align-items: center;
        }
        #custom-amount {
          width: 100%;
          display: flex;
          justify-content: space-between;
          padding: 8px;
          border: 1px solid var(--secondary-color);
          border-radius: 2px;
          box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.16);
          gap: 8px;
        }
        #custom-amount > input {
          appearance: none;
          border-width: 0px;
          outline: 2px solid transparent;
          outline-offset: 2px;
          width: 100%;
          padding: 0px;
        }
        #subscription-type-options {
          display: grid;
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        #payment-methods {
          display: grid;
          grid-template-columns: repeat(1, minmax(0, 1fr));
          gap: 8px;
        }
        #payment-methods #bank + .payment-method, #payment-methods #card + .payment-method {
          height: auto;
          max-height: 24px;
          flex-direction: column;
          transition-property: max-height;
          transition-duration: 150ms;
          transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
        }
        #payment-methods #bank + .payment-method > div, #payment-methods #card + .payment-method > div:not(.forminator-guttenberg) {
          width: 100%;
          display: flex;
          flex-direction: row;
          align-items: center;
        }
        #payment-methods #bank + .payment-method > div > span, #payment-methods #card + .payment-method > div:not(.forminator-guttenberg) > span {
          width: 100%;
          text-align: left;
          margin-left: 10px;
          margin-right: 10px;
        }
        #payment-methods #bank + .payment-method > span, #payment-methods #card + .payment-method > .forminator-guttenberg {
          text-align: left;
          margin-top: 16px;
          display: none;
        }
        #payment-methods > form > label {
          display: block;
        }
        #subscription-amount-illustration > span {
          display: block;
          width: 100%;
          padding-top: 100%;
          background-repeat: no-repeat;
          background-position: bottom;
          background-size: contain;
          transition-property: all;
          transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
          transition-duration: 150ms;
        }
        @media screen and (max-width: 992px){
          .fake-radio-btn-parent > form {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 24px;
          }
          #subscription-amount-illustration > span {
            display: none;
          }
        }

/* Sidebar */
.sidebar-container{
  margin-bottom: 30px;
}
        .sidebar-list .sidebar-title{
          position: relative;
          margin-bottom: 30px;
        }
        .sidebar-list .sidebar-title:after{
          position: absolute;
          content: '';
          bottom: -10px;
          left: 0;
          width: 150px;
          height: 5px;
          background: var(--secondary-color);
        }
        .sidebar-title{
          font-weight: 900;
          font-size: 26px;
          margin-bottom: 10px;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-title h3{
          display: none;
        }
        .sidebar-subtitle,
        .sidebar-panel.sidebar-newsletter .mailerlite-form-description p{
          font-size: 20px;
        }
        .mailerlite-form-description p strong{
          color: var(--secondary-color);
        }
        .sidebar-panel{
          padding: 50px 30px;
          box-shadow: 0px 8px 16px rgba(62, 41, 77, 0.2);
        }
        .sidebar-panel .sidebar-icon{
          display: inline-block;
          width: 60px;
          height: 60px;
          border-radius: 30px;
          line-height: 60px;
          font-size: 30px;
          margin-bottom: 10px;
        }
        .sidebar-panel.sidebar-secondary{
          background: var(--secondary-color) url('../images/podkrepi-ni-bgr.svg') no-repeat center right -40px;
          background-size: auto 125%;
        }
        .sidebar-panel.sidebar-secondary .sidebar-icon{
          color: var(--secondary-color);
          background: var(--master-color);
        }
        .sidebar-panel.sidebar-newsletter{
          background: #3E294D url('../images/sidebar-bgr-dark.svg') no-repeat top center;
          background-size: 150% auto;
          color: #fff;
        }
        .sidebar-panel hr{
          width: 100px;
          height: 7px;
          margin: 20px auto;
          background: var(--master-color);
        }
        .sidebar-panel.social-sidebar{
          background: #B07BED url('../images/sidebar-bgr-social.svg') no-repeat top center;
          background-size: 150% auto;
        }
        .sidebar-panel.elections-sidebar{
          background: #B07BED url('../images/sidebar-bgr-elections.svg') no-repeat top center;
          background-size: cover;
        }
        .sidebar-panel .sidebar-socials{
          font-size: 32px;
        }
        .sidebar-panel .sidebar-socials a{
          padding: 0 10px;
        }
        .sidebar-panel .sidebar-counter{
          font-size: 40px;
        }
        .sidebar-panel .sidebar-counter span{
          display: block;
          font-size: 70px;
          font-weight: 900;
          line-height: 1;
        }

        /* MailerLite subscription form */
        .sidebar-panel.sidebar-newsletter .mailerlite-form-field{
          margin-bottom: 16px;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-field label{
          display: none;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-field #mailerlite-1-field-email-error{
          width: 100%;
          color: #ffa0a0;
          padding: 4px 0;
          text-align: left !important;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-field #mailerlite-1-field-email-error:before{
          display: inline;
          content: '\f071';
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          margin-right: 5px;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-loader{
          margin-bottom: 20px;
          color: var(--link-color-hover);
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-response h4,
        .sidebar-panel.sidebar-newsletter .mailerlite-form-response p{
          font-size: 18px !important;
          margin-bottom: 0;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-response{
          width: 100%;
          background: #ceffd1;
          padding: 10px;
          border-radius: 2px;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-field #mailerlite-1-field-email{
          width: 100%;
          border-radius: 2px;
          border: 1px solid transparent;
          padding: 8px 12px;
          transition: 0.3s all ease-in-out;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-form-field #mailerlite-1-field-email:focus-visible{
          outline: none;
          border: 1px solid var(--link-color-hover);
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-subscribe-button-container .mailerlite-subscribe-submit{
          width: 100%;
          background: var(--secondary-color);
          color: var(--master-color);
          border-radius: 2px;
          border: none;
          padding: 8px 12px;
          transition: 0.3s all ease-in-out;
        }
        .sidebar-panel.sidebar-newsletter .mailerlite-subscribe-button-container .mailerlite-subscribe-submit:hover{
          background: var(--btn-hover);
          box-shadow: 0px 8px 16px rgba(141, 93, 14, 0.32) !important;
        }

        .sidebar-menu{
          padding: 0;
          margin: 0;
        }
        .sidebar-menu .menu-option{
          list-style: none;
          padding: 6px 0;
        }
        .sidebar-menu .menu-option a{
          display: block;
          text-decoration: none;
          font-size: 18px;
          font-weight: 900;
        }
        .sidebar-menu .menu-option .post-date{
          color: var(--subtitle-text);
        }

/* Search */
.search-form{
  margin-left: -350px;
  background: #fff;
  border: 1px solid var(--secondary-color);
}
        .search-form.absolute{
          position: absolute;
          width: 700px;
          bottom: -20px;
          left: 50%;
        }
        @media screen and (max-width: 992px){
          .search-form.absolute{
            position: absolute;
            width: 80%;
            bottom: -20px;
            left: 50%;
            margin-left: -40%;
          }
        }
.search-block{
  padding-left: 40px;
  display: flex;
  position: relative;
  overflow: hidden;
}
        .search-block input{
          background: transparent;
          border: none;
          padding: 10px 5px;
        }
        .search-block input:focus{
          outline: none !important;
        }
        .search-form:before{
          position: absolute;
          top: 7px;
          left: 12px;
          font-size: 20px;
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          content: '\f002';
          color: var(--master-color);
        }

/* Photos */
.photo-piece{
  display: inline-block;
  padding: 20px;
  background: #fff;
  box-shadow: 0 0 15px -5px rgba(0,0,0,0.5);
  text-align: center;
  font-size: 22px;
}
        .photo-piece img{
          display: inline-block;
          width: 100%;
          margin-bottom: 10px;
        }
        .photo-piece p{
          width: 80%;
          margin: 0 auto;
        }
        @media screen and (max-width: 992px){
          .related{
            margin-top: 0 !important;
          }
          .photo-piece{
            width: 100% !important;
            transform: none !important;
            margin-bottom: 20px;
            font-size: 18px;
          }
        }

/* Footer */
.upper-footer{
  margin-bottom: -1px;
  padding: 0 0 60px 0;
  background: url('../images/footer-sofia-landmarks-purple-1.png') no-repeat bottom center;
  background-size: 100% auto;
}
footer{
    background: linear-gradient(0deg,rgba(0,0,0,0.2),rgba(0,0,0,0.2)),linear-gradient(0deg,rgba(62,41,77,0.8),rgba(62,41,77,0.8)),url('../images/footer-blokove-scaled.jpg'),linear-gradient(0deg,#3E294D,#3E294D);
    background-blend-mode: normal,normal,luminosity,normal;
    background-size: cover;
    background-position: center,center,top 35% right,center;
    background-repeat: no-repeat;
    color: #fff;
    font-size: 15px;
}
        footer a{
          transition: 0.3s all ease-in-out;
          color: #fff;
          text-decoration: none;
        }
        footer a:hover{
          color: var(--secondary-color);
          text-decoration: none;
        }
        footer .copyright p{
          margin-top: 3px;
        }

        /* Footer menus */
        footer .footer-nav{
          display: flex;
          justify-content: center;
        }
        footer .menu{
          padding: 0;
          margin: 0;
        }
        footer .menu li{
          list-style: none;
        }
        footer .menu li:first-child{
          margin-bottom: 5px;
        }
        footer .menu li a{
          padding: 5px 0;
        }
        footer .menu li:not(:first-child) a:after{
          font-family: "Font Awesome 5 Free";
          font-weight: 900;
          font-size: 50%;
          content: '\f08e';
          margin-left: 5px;
        }
        footer .menu li:first-child a{
          font-size: 17px;
          font-weight: 900;
        }

        /* Footer socials */
        footer .footer-socials{
          display: flex;
          justify-content: flex-end;
        }
        footer .footer-socials .footer-soc-item{
          margin-left: 20px;
          font-size: 25px;
        }

        /* Cookies menu */
        footer .cookies-menu{
          margin-bottom: 60px;
        }
        footer .cookies-menu .menu{
          display: flex;
          flex-direction: row;
          justify-content: flex-end;
        }
        footer .cookies-menu .menu li{
          margin-left: 40px;
          margin-bottom: 0 !important;
        }
        footer .cookies-menu .menu li a{
          font-weight: normal !important;
          font-size: 17px !important;
        }
        footer .cookies-menu .menu li a:after{
          content: '';
        }

        /* Mobile footer */
        @media screen and (max-width: 992px){
          footer{
            text-align: center;
          }
          footer .footer-brand{
            margin-top: 40px;
          }
          footer .footer-nav{
            display: none;
          }

          footer .footer-socials,
          footer .cookies-menu .menu{
            justify-content: center;
          }
          footer .cookies-menu .menu li:first-child{
            margin-left: 0;
          }
          footer .footer-socials .footer-soc-item:first-child{
            margin-left: 0;
          }
        }

/* 404 */
.container-404{
  margin: 80px 0 40px 0;
}
        .container-404 img{
          width: 50%;
        }
        .content-404 h1{
          color: var(--secondary-color);
          margin: 0 0 50px 0;
          font-size: 48px;
        }
        .content-404 .subtitle span{
          color: var(--master-color);
        }
        .content-404 .search-form{
          position: relative;
          width: 70%;
          margin: 0 auto !important;
        }

/* Content the_content filters,
  chnaging how the the_content() wp-blocks behave*/
.the-content{

}
        .the-content.larger-font p{
          font-size: 20px;
        }
        /* Quote */
        .the-content .wp-block-quote{
          width: 70%;
          margin: 30px auto;
          position: relative;
          padding: 40px 0;
        }
        .the-content .wp-block-quote p{
          margin-bottom: 0;
          text-align: center;
          font-size: 20px;
          color: var(--subtitle-text);
        }
        .the-content .wp-block-quote:before,
        .the-content .wp-block-quote:after{
          content: '';
          position: absolute;
          width: 200px;
          height: 1px;
          background: var(--subtitle-text);
          margin-left: -100px;
        }
        .the-content .wp-block-quote:before{
          bottom: 15px;
          left: 50%;
        }
        .the-content .wp-block-quote:after{
          top: 15px;
          left: 50%;
        }
        .the-content .info-bubble{
          text-align: left;
          position: relative;
          width: 40%;
          float: right;
          margin: 32px 0 32px 32px;
          border-radius: 4px;
          border: 2px dashed var(--secondary-color);
          padding: 16px 16px 16px 64px;
          font-family: 'Sofia';
          font-size: 16px;
          font-weight: normal;
          line-height: 1.5;
        }
        .the-content .info-bubble:before{
          position: absolute;
          content: '';
          top: 16px;
          left: 16px;
          background: url('../images/info-bubble.svg') no-repeat center center;
          background-size: contain;
          width: 30px;
          height: 30px;
        }
        /* Mobile footer */
        @media screen and (max-width: 992px){
          .the-content .info-bubble{
            text-align: left;
            position: relative;
            width: 100%;
            float: none;
            margin: 32px 0;
          }
        }

        /* Lists */
        .the-content ul,
        .the-content ol{
          padding-left: 20px;
          counter-reset: item;
        }
        .the-content ul li,
        .the-content ol li{
          counter-increment: item;
          list-style: none;
          position: relative;
          margin-bottom: 5px;
        }
        .the-content ul li:before{
          position: absolute;
          content: '';
          width: 5px;
          height: 5px;
          background: var(--subtitle-text);
          top: 11px;
          left: -20px;
        }
        .the-content ol li:before{
          position: absolute;
          content: counter(item);
          top: 0;
          left: -20px;
          color: var(--subtitle-text);
        }

/* Priority carousel */
.priority-carousel{
  margin: 0 0 100px 0;
  height: 60vh;
}
.priority-carousel .carousel-item{
  margin-top: 40px;
  position: relative;
  height: 60vh;
}
        .priority-carousel .carousel-content{
          color: #fff;
          position: absolute;
          top: -40px;
          right: 0;
          width: 40%;
          padding: 40px 60px 40px 40px;
          background: rgba(0,0,0,0.8);
          backdrop-filter: blur(10px);
        }
        .priority-carousel .carousel-content:before{
          display: block;
          position: absolute;
          content: '';
          background: url('../images/carousel-before.svg') no-repeat center center;
          width: 40px;
          height: 40px;
          left: -40px;
          top: 0;
        }
        .priority-carousel .carousel-content h3{
          font-weight: 900;
          margin-bottom: 20px;
        }
        .carousel-control-prev,
        .carousel-control-next{
          width: 60px;
          height: 60px;
          background: #fff;
          color: #000;
          opacity: 1;
          border-radius: 3px;
          transition: 0.3s all ease-in-out;
        }
        .carousel-control-prev:hover,
        .carousel-control-next:hover{
          background: rgba(225,225,225,0.8);
          opacity: 1;
        }
        .carousel-control-prev i,
        .carousel-control-next i{
          font-size: 26px;
          color: var(--main-color);
        }
        .carousel-control-prev:hover i,
        .carousel-control-prev i:hover,
        .carousel-control-next:hover i,
        .carousel-control-next i:hover{
          color: var(--main-color);
        }
        .carousel-control-next{
          position: absolute;
          top: auto;
          bottom: 0;
          left: 120px;
        }
        .carousel-control-prev{
          position: absolute;
          top: auto;
          bottom: 0;
          left: 40px;
        }
        @media screen and (max-width: 1200px){
          .priority-carousel .carousel-content{
            width: 60%;
          }
        }
        @media screen and (max-width: 768px){
          .priority-carousel{
            margin-bottom: 10px;
          }
          .priority-carousel .carousel-item{
            padding-bottom: 100px;
          }
          .priority-carousel,
          .priority-carousel .carousel-item{
            min-height: 60vh;
            height: auto;
          }
          .priority-carousel .carousel-content{
            padding: 30px;
            position: relative;
            width: 100%;
          }
          .carousel-control-next,
          .carousel-control-prev{
            bottom: 20px;
          }
          .carousel-content .btn{
            display: block;
          }
        }

/* Real flipbook button */
.plan-trigger>div{
	background: var(--btn);
    border: 1px solid var(--btn);
    color: var(--btn-text);
	border-radius: 2px;
    transition: 0.3s all ease-in-out;
    padding: 10px 16px !important;
	font-size: 19px !important;
}
.plan-trigger>div>span{
	padding: 0 !important;
}
.plan-trigger img{
	display: none !important;
}
.plan-trigger>div:hover{
    background: var(--btn-hover);
    border: 1px solid var(--btn-hover);
    box-shadow: 0px 8px 16px rgba(141, 93, 14, 0.32) !important;
}

/* YouTube iframe */
.wp-block-embed iframe{
	width: 100% !important;
	height: 400px !Important;
}