/*
  Theme Name: Esto - Creative Agency HTML Template
  Author: Dope Theme
  Support: support@dopetheme.com
  Description: Creative  HTML5 template.
  Version: 1.0
*/
/* CSS Index
-----------------------------------
1. Basics
2. Navigation Styles
3. Header Section Styles
4. Brand Logo Section Styles
5. About Section Styles
6. Service Section  Styles
7. Testimonial Section Styles
8. Portfolio Section Styles
9. Price Section Styles
10. News Section Styles
11. Footer Section Styles
12. Page Header Styles
13. About Page Styles
14. Service Page Styles
15. Conatct Page Styles
16. Blog Page Styles
17. Responsive Styles
*/
/*----------------------------------------*/
/*  01 - Basics
/*----------------------------------------*/
body {
  font-family: "Quicksand", sans-serif;
  color: #828181;
  font-size: 14px;
  line-height: 24px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Quicksand", sans-serif;
  color: #404040;
  font-weight: 700;
}

h1 {
  font-size: 50px;
}

h4 {
  font-size: 35px;
}

p {
  font-family: "Quicksand", sans-serif;
  color: #828181;
  font-size: 14px;
  line-height: 24px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

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

input {
  color: #888888;
}

input::-webkit-input-placeholder {
  color: #888888;
}

input:-ms-input-placeholder {
  color: #888888;
}

input::-ms-input-placeholder {
  color: #888888;
}

input::placeholder {
  color: #888888;
}

._keyfocus :focus,
input:not([disabled]):focus,
textarea:not([disabled]):focus,
select:not([disabled]):focus {
  outline: 0;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
}

.img-full {
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: block;
}

a {
  color: #404040;
}

a:hover {
  color: #2c57e4;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover {
  color: #2c57e4;
}

:hover {
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

a,
a:hover,
a:focus,
a:active,
button,
button:focus,
input,
select,
textarea {
  outline: none;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

button {
  cursor: pointer;
  border: none;
  padding: 0;
  outline: none;
  background: transparent;
}

.section-gap {
  padding: 100px 0px;
}

.btn-style {
  background: #2c57e4;
  color: #fff;
  border-radius: 5px;
  padding: 12px 28px;
  display: inline-block;
  font-weight: 500;
  border: none;
}

.btn-style:hover {
  color: #fff;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.22);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.22);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.owl-carousel .owl-item img {
  display: block;
  width: auto !important;
}

.owl-carousel .owl-stage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section-title-wrap {
  text-align: center;
  padding-bottom: 50px;
}

.section-title-wrap .title {
  color: #2c57e4;
  font-weight: 700;
}

.section-title-wrap h1 {
  font-size: 35px;
  margin-bottom: 10px;
  line-height: 1.3em;
}

.section-title-wrap h1 span {
  color: #2c57e4;
}

.section-title-wrap p {
  max-width: 400px;
  margin: 0 auto;
}

.social-links li {
  display: inline-block;
  margin-right: 10px;
}

.social-links li a {
  background: #e6ecfc;
  border-radius: 30px;
  padding: 9px 12px;
  font-size: 14px;
}

.social-links li a:hover {
  background: #2c57e4;
}

.social-links li a:hover i {
  color: #fff;
}

#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #f5f5f5;
  /* change if the mask should be a color other than white */
  z-index: 9999;
  /* makes sure it stays on top */
}

.pre-container {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  text-align: center;
}

.spinner {
  width: 40px;
  height: 40px;
  position: relative;
  margin: 100px auto;
}

.double-bounce1,
.double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #2c57e4;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: bounce 2.0s infinite ease-in-out;
  animation: bounce 2.0s infinite ease-in-out;
}

.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

@-webkit-keyframes bounce {
  0%,
  100% {
    -webkit-transform: scale(0);
  }
  50% {
    -webkit-transform: scale(1);
  }
}

@keyframes bounce {
  0%,
  100% {
    transform: scale(0);
    -webkit-transform: scale(0);
  }
  50% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

.scroll-top {
  width: 44px;
  line-height: 44px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 999;
  font-size: 22px;
  color: #fff;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  display: none;
  background: #2c57e4;
  border-radius: 3px;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.25);
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.25);
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
}

/*----------------------------------------*/
/*  02 - Navigation Styles
/*----------------------------------------*/
.nav-section {
  padding: 20px 0px;
  position: fixed;
  width: 100%;
  z-index: 2;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.nav-section .main-menu ul {
  text-align: right;
}

.nav-section .main-menu ul li {
  display: inline-block;
  margin-left: 35px;
}

.nav-section .main-menu ul li a {
  font-weight: 500;
}

.nav-section .menu-btn {
  border: 1px solid #e6e9f5;
  border-radius: 5px;
  padding: 10px 34px;
}

.nav-section .menu-btn:hover {
  background: #2c57e4;
  color: #fff;
  border-color: #fff;
}

.nav-section .mobile-menu-icon {
  display: none;
}

.menu-fix .menu-btn,
.page .menu-btn {
  background: #2c57e4;
  color: #fff;
  border-color: transparent !important;
}

.menu-fix {
  background: #fff;
  z-index: 999;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
}

.mobile-menu-wrap {
  -webkit-transform: translateX(-300px);
          transform: translateX(-300px);
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: #f9fbfe;
  width: 300px;
  z-index: 999;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.mobile-menu-wrap .close-btn {
  position: absolute;
  right: 0;
  padding: 25px;
}

.mobile-menu-show {
  -webkit-transform: translateX(0px) !important;
          transform: translateX(0px) !important;
}

#mobile-menu ul {
  margin-top: 60px;
}

#mobile-menu ul li {
  padding: 12px 29px;
}

#mobile-menu ul li a {
  font-weight: 500;
  font-size: 20px;
}

#mobile-menu ul li:last-child {
  border-bottom: none;
}

.mobile-menu-icon:hover,
.close-btn:hover {
  cursor: pointer;
}

/*----------------------------------------*/
/*  03 - Header Section Styles
/*----------------------------------------*/
.header-section {
  background: url(../img/header-bg.jpg);
  padding: 120px 0px;
}

@media (min-width: 1280px) {
  .header-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .header-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .header-section {
    background-size: cover;
    background-position: center center;
  }
}

.header-section .header-left h1 {
  font-size: 55px;
}

.header-section .header-left h1 span {
  color: #2c57e4;
}

.header-section .header-left p {
  max-width: 465px;
  margin-bottom: 0px;
  padding-top: 10px;
  padding-bottom: 25px;
}

/*----------------------------------------*/
/*  04 - Brand Logo Section Styles
/*----------------------------------------*/
.brand-logo-section {
  background: #f9fbfe;
  padding: 50px 0px;
}

/*----------------------------------------*/
/*  05 - About Section Styles
/*----------------------------------------*/
.about-section {
  background: url(../img/about-bg.jpg);
}

@media (min-width: 1280px) {
  .about-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .about-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .about-section {
    background-size: cover;
    background-position: center center;
  }
}

.about-section .about-right .title {
  color: #2c57e4;
  font-weight: 700;
  margin-bottom: 0px;
}

.about-section .about-right .btn-style {
  margin-top: 5px;
}

/*----------------------------------------*/
/*  06 - Service Section  Styles
/*----------------------------------------*/
.service-section {
  background: url(../img/service-bg.jpg);
}

@media (min-width: 1280px) {
  .service-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .service-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .service-section {
    background-size: cover;
    background-position: center center;
  }
}

.service-section .single-service {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
  text-align: center;
  padding: 24px;
  margin: 15px;
}

.service-section .single-service .icon-wrap {
  color: #2c57e4;
  font-size: 30px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 40px 0px;
}

.service-section .single-service .icon-wrap i {
  z-index: 2;
}

.service-section .single-service .icon-wrap svg {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  width: 30%;
}

.service-section .single-service h4 {
  font-size: 22px;
}

.service-section .single-service a {
  font-weight: 700;
  color: #2c57e4;
  display: inline-block;
}

.service-section .single-service a:after {
  content: '';
  display: block;
  width: 30%;
  height: 2px;
  background: #2c57e4;
  -webkit-transition: width .3s;
  transition: width .3s;
}

.service-section .single-service:hover {
  background: #2c57e4;
  cursor: pointer;
}

.service-section .single-service:hover h4,
.service-section .single-service:hover p,
.service-section .single-service:hover a {
  color: #fff;
}

.service-section .single-service:hover a:after {
  width: 100%;
  background: #fff;
}

/*----------------------------------------*/
/*  07 - Testimonial Section Styles
/*----------------------------------------*/
.testimonial-section {
  background: url(../img/testimonial-bg.jpg);
}

@media (min-width: 1280px) {
  .testimonial-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .testimonial-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .testimonial-section {
    background-size: cover;
    background-position: center center;
  }
}

.testimonial-section .title {
  font-weight: 700;
  color: #2c57e4;
  margin-bottom: 0px;
}

.testimonial-section .testimonial-left p {
  max-width: 420px;
}

.testimonial-section .testimonial-left .t-img ul li {
  display: inline-block;
  margin-right: 10px;
}

.testimonial-section .testimonial-left .t-img ul li:hover {
  cursor: pointer;
}

.testimonial-section .testimonial-right {
  background: url(../img/t-slider-bg.png);
  background-size: 100% 100%;
}

.testimonial-section .testimonial-right .single-testimonial {
  padding: 90px;
  margin-top: 80px;
}

.testimonial-section .testimonial-right .owl-nav {
  position: absolute;
  right: 30%;
  bottom: 25%;
}

.testimonial-section .testimonial-right .owl-nav i {
  font-size: 35px;
}

/*----------------------------------------*/
/*  08 - Portfolio Section Styles
/*----------------------------------------*/
.portfolio-section {
  background: url(../img/portfolio-bg.jpg);
}

@media (min-width: 1280px) {
  .portfolio-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .portfolio-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .portfolio-section {
    background-size: cover;
    background-position: center center;
  }
}

.portfolio-section .single-portfolio img {
  width: 100%;
}

.portfolio-section .single-portfolio .portfolio-details {
  background: #fff;
  padding: 15px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
          box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
}

.portfolio-section .single-portfolio .portfolio-details p {
  margin-bottom: 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.portfolio-section .single-portfolio .portfolio-details h4 {
  font-size: 20px;
}

.portfolio-section .single-portfolio:hover .portfolio-details {
  background: #2c57e4;
}

.portfolio-section .single-portfolio:hover .portfolio-details h4,
.portfolio-section .single-portfolio:hover .portfolio-details p {
  color: #fff;
}

.portfolio-section .btn-style {
  margin-top: 40px;
}

/*----------------------------------------*/
/*  09 - Price Section Styles
/*----------------------------------------*/
.price-section {
  background: url(../img/price-bg.jpg);
}

@media (min-width: 1280px) {
  .price-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .price-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .price-section {
    background-size: cover;
    background-position: center center;
  }
}

.price-section .price-left .title {
  color: #2c57e4;
  font-weight: 700;
  margin-bottom: 0px;
}

.price-section .price-left p {
  max-width: 450px;
}

.price-section .price-right .buiness-plan {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.price-section .price-right .single-plan {
  background-color: white;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
          box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
  border-radius: 5px;
  padding: 30px;
  overflow: hidden;
  position: relative;
  border-bottom: 4px solid #2c57e4;
}

.price-section .price-right .single-plan .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 12px;
}

.price-section .price-right .single-plan .title h4 {
  color: #2c57e4;
  font-size: 18px;
  margin-bottom: 0px;
}

.price-section .price-right .single-plan .title i {
  background: #2c57e4;
  color: #fff;
  padding: 8px;
  border-radius: 5px;
}

.price-section .price-right .single-plan h2 {
  margin-bottom: 20px;
}

.price-section .price-right .single-plan h2 span {
  font-size: 18px;
  color: #828181;
}

.price-section .price-right .single-plan ul li {
  font-size: 14px;
  color: #828181;
  font-weight: 500;
}

.price-section .price-right .single-plan p {
  margin-top: 40px;
  margin-bottom: 0px;
  color: #828181;
  font-weight: 500;
}

.price-section .price-right .single-plan p span {
  color: #ff3600;
}

.price-section .price-right .single-plan .plan-border {
  width: 459px;
  height: 270px;
  display: block;
  border-radius: 50%;
  position: absolute;
  top: -15px;
  right: -36px;
  z-index: 1;
  border-bottom: 1px solid #e9ecef;
}

/*----------------------------------------*/
/*  10 - News Section Styles
/*----------------------------------------*/
.news-section {
  background: url(../img/news-bg.jpg);
  padding-bottom: 100px;
}

@media (min-width: 1280px) {
  .news-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .news-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .news-section {
    background-size: cover;
    background-position: center center;
  }
}

.news-section .single-news {
  background: #fff;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
          box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
  border-radius: 5px;
  overflow: hidden;
}

.news-section .single-news .news-thumb {
  width: 100%;
  overflow: hidden;
}

.news-section .single-news .news-thumb img {
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.news-section .single-news .news-details {
  padding: 20px;
}

.news-section .single-news .news-details .meta {
  color: #2c57e4;
  font-weight: 500;
  margin-bottom: 0px;
}

.news-section .single-news .news-details h4 {
  font-size: 20px;
}

.news-section .single-news .read-more {
  font-weight: 700;
  color: #2c57e4;
  display: inline-block;
}

.news-section .single-news .read-more:after {
  content: '';
  display: block;
  width: 30%;
  height: 2px;
  background: #2c57e4;
  -webkit-transition: width .3s;
  transition: width .3s;
}

.news-section .single-news:hover a {
  color: #2c57e4;
}

.news-section .single-news:hover .news-thumb img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.news-section .single-news:hover .read-more:after {
  width: 100%;
}

/*----------------------------------------*/
/*  11 - Footer Section Styles
/*----------------------------------------*/
.footer-section {
  background: url(../img/footer-bg.jpg);
  padding-top: 100px;
}

@media (min-width: 1280px) {
  .footer-section {
    background-size: cover;
  }
}

@media (max-width: 1279px) {
  .footer-section {
    background-size: contain;
  }
}

@media (max-width: 991px) {
  .footer-section {
    background-size: cover;
    background-position: center center;
  }
}

.footer-section .footer-widget-wrap {
  padding-bottom: 100px;
  border-bottom: 1px solid #f3f3f3;
}

.footer-section .widget-title {
  font-size: 22px;
  margin-bottom: 25px;
}

.footer-section .footer-left p {
  padding: 20px 0px;
  margin-bottom: 0px;
  max-width: 300px;
}

.footer-section .footer-bottom ul li {
  margin-bottom: 8px;
}

.footer-section .footer-bottom ul li:last-child {
  margin-bottom: 0px;
}

.footer-section .footer-bottom ul li a {
  font-weight: 500;
  color: #828181;
}

.footer-section .footer-bottom ul li a:hover {
  color: #2c57e4;
}

.footer-section .footer-right .subscribe-wrap .input-group-append {
  margin-left: -26px;
  z-index: 9999;
}

.footer-section .footer-right .subscribe-wrap .input-group-append i {
  font-size: 16px;
}

.footer-section .footer-right .subscribe-wrap input {
  padding-top: 20px;
  padding-bottom: 20px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
          box-shadow: 0px 0px 10px 0px rgba(34, 34, 34, 0.13);
  font-size: 14px;
}

.footer-section .footer-right .subscribe-wrap input:focus {
  border-color: #2c57e4;
}

.footer-section .copyright-txt {
  padding: 20px 0px;
  margin-bottom: 0px;
}

/*----------------------------------------*/
/*  12 - Page Header Styles
/*----------------------------------------*/
.page-header-section {
  background: url(../img/page-header-bg.jpg);
  background-size: cover;
  padding: 152px 0px;
  background-position: center center;
  position: relative;
}

.page-header-section .title-wrap {
  z-index: 2;
}

.page-header-section .bottom-curve {
  position: absolute;
  bottom: -5px;
  width: 100%;
  z-index: 1;
}

.page-header-section .page-title span {
  color: #2c57e4;
}

.page-header-section .page-nav li {
  display: inline-block;
}

.page-header-section .page-nav li a {
  color: #000;
  font-weight: 500;
  font-size: 16px;
}

.page-header-section .page-nav .active {
  color: #2c57e4;
  font-size: 16px;
  font-weight: 500;
}

/*----------------------------------------*/
/*  13 - About Page Styles
/*----------------------------------------*/
.about-details-section .video-thumb-wrap {
  position: relative;
}

.about-details-section .play-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.about-details-section .play-btn i {
  background: #2c57e4;
  color: #fff;
  padding: 20px;
  border-radius: 30px;
}

.about-details-section .bottom-wrap {
  margin-top: 50px;
}

.about-details-section .bottom-wrap .bottom-wrap-left p:last-child,
.about-details-section .bottom-wrap .bottom-wrap-right p:last-child {
  margin-bottom: 0px !important;
}

.about-details-section .bottom-wrap .title {
  color: #2c57e4;
  font-weight: 500;
  margin-bottom: 0px;
}

.about-details-section .bottom-wrap h4 {
  margin-bottom: 10px;
}

.about-details-section .bottom-wrap p {
  max-width: 440px;
}

.team-section {
  padding-top: 100px;
}

.team-section .single-team .team-thumb {
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  text-align: center;
}

.team-section .single-team .team-thumb ul {
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  text-align: center;
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}

.team-section .single-team .team-thumb ul li {
  display: inline-block;
  padding: 10px;
}

.team-section .single-team .team-thumb a {
  color: #fff;
  font-size: 22px;
  background: #2c57e4;
  padding: 10px 12px;
  border-radius: 50px;
}

.team-section .single-team .details {
  margin-top: 10px;
}

.team-section .single-team .details p {
  margin-bottom: 0px;
}

.team-section .single-team:hover .team-thumb ul {
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
}

/*----------------------------------------*/
/*  14 - Service Page Styles
/*----------------------------------------*/
.services-section {
  padding-top: 100px;
}

.services-section .single-service {
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
  text-align: center;
  padding: 24px;
  margin: 15px;
}

.services-section .single-service .icon-wrap {
  color: #2c57e4;
  font-size: 30px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 40px 0px;
}

.services-section .single-service .icon-wrap i {
  z-index: 2;
}

.services-section .single-service .icon-wrap svg {
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  width: 30%;
}

.services-section .single-service h4 {
  font-size: 22px;
}

.services-section .single-service a {
  font-weight: 700;
  color: #2c57e4;
  display: inline-block;
}

.services-section .single-service a:after {
  content: '';
  display: block;
  width: 30%;
  height: 2px;
  background: #2c57e4;
  -webkit-transition: width .3s;
  transition: width .3s;
}

.services-section .single-service:hover {
  background: #2c57e4;
  cursor: pointer;
}

.services-section .single-service:hover h4,
.services-section .single-service:hover p,
.services-section .single-service:hover a {
  color: #fff;
}

.services-section .single-service:hover a:after {
  width: 100%;
  background: #fff;
}

.page .testimonial-section {
  padding-bottom: 0px !important;
}

.page .service-section {
  background: #fff !important;
}

.service-details-section {
  padding-top: 100px;
}

.service-details-section .single-work h4 {
  font-size: 16px;
}

.service-details-section .single-work p {
  margin-bottom: 0px;
}

.service-details-section .works-wrap {
  margin-top: 20px;
}

.service-details-section .single-service-right img {
  margin-bottom: 20px;
  border-radius: 5px;
}

.page .portfolio-section {
  background: #fff;
  padding-bottom: 0 !important;
}

.page .portfolio-section .single-portfolio {
  margin-bottom: 30px;
}

.portfolio-details-section {
  padding-top: 100px;
}

.portfolio-details-section img {
  margin-bottom: 40px;
}

.portfolio-details-section .portfolio-details-left img {
  border-radius: 5px;
}

.portfolio-details-section .portfolio-details-right .details-wrap {
  background: #f7fbfe;
  padding: 30px;
}

/*----------------------------------------*/
/*  15 - Conatct Page Styles
/*----------------------------------------*/
.contact-section h4 span {
  color: #2c57e4;
}

.contact-section .contact-form-wrap {
  margin-top: 60px;
}

.contact-section .contact-form-wrap .form-control {
  margin-bottom: 30px;
}

.contact-section .message {
  height: 50px;
  width: 100%;
  font-size: 13px;
  line-height: 50px;
  text-align: center;
  float: none;
  margin-top: 20px;
  display: none;
  color: #fff;
}

.contact-section .error {
  background: #ef5659;
}

.contact-section .success {
  background: #2c57e4;
}

.contact-section .address-wrap {
  margin-top: 80px;
}

.contact-section .address-wrap .single-address {
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
  border-radius: 5px;
  padding: 60px 30px;
  text-align: center;
  border-bottom: 4px solid #2c57e4;
}

.contact-section .address-wrap .single-address h4 {
  font-size: 22px;
  margin-bottom: 20px;
}

.contact-section .address-wrap .single-address p {
  margin-bottom: 0px;
  font-weight: 500;
}

/*----------------------------------------*/
/*  16 - Blog Page Styles
/*----------------------------------------*/
.blog-posts-section .single-posts {
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
  margin-bottom: 60px;
}

.blog-posts-section .single-posts .blog-thumb img {
  width: 100%;
  border-radius: 5px;
}

.blog-posts-section .single-posts .blog-details {
  padding: 30px;
  border-radius: 5px;
}

.blog-posts-section .single-posts .blog-details .meta {
  font-weight: 500;
  margin-bottom: 15px;
}

.blog-posts-section .single-posts .blog-details .meta li {
  display: inline-block;
}

.blog-posts-section .single-posts .blog-details .meta li:after {
  content: " /";
}

.blog-posts-section .single-posts .blog-details .meta li:last-child::after {
  content: none;
}

.blog-posts-section .single-posts .blog-details .meta li img {
  width: 30px;
  margin-right: 10px;
}

.blog-posts-section .single-posts .blog-details blockquote {
  font-size: 20px;
  line-height: 2em;
  background: #2c57e4;
  color: #fff;
  padding: 28px;
}

.blog-posts-section .single-posts .read-more {
  font-weight: 500;
  color: #2c57e4;
}

.blog-posts-section .navigation-btn {
  padding-bottom: 60px;
}

.blog-posts-section .author-details {
  border-radius: 5px;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
  padding: 30px;
}

.blog-posts-section .page-item.active .page-link {
  background: #2c57e4;
  color: #fff;
  font-weight: 700;
}

.blog-posts-section .page-link {
  color: #2c57e4;
  font-weight: 700;
}

.blog-posts-section .single-widget {
  background: #f7fbfe;
  padding: 30px;
  border-radius: 5px;
  margin-bottom: 30px;
}

.blog-posts-section .single-widget:last-child {
  margin-bottom: 0px;
}

.blog-posts-section .single-widget h4 {
  margin-bottom: 20px;
}

.blog-posts-section .single-widget h4:after {
  content: '';
  display: block;
  width: 20%;
  height: 3px;
  background: #2c57e4;
  margin-top: 15px;
}

.blog-posts-section .single-widget ul li {
  font-size: 15px;
  margin-bottom: 10px;
  border-bottom: 1px solid #d4d9dd;
  padding-bottom: 10px;
  font-weight: 500;
}

.blog-posts-section .single-widget ul li:last-child {
  border-bottom: none;
  padding-bottom: 0px;
  margin-bottom: 0px;
}

.blog-posts-section .search-widget .input-group-append {
  margin-left: 0px !important;
  background: #2c57e4;
  padding: 0px 12px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.blog-posts-section .search-widget .input-group-append i {
  color: #fff;
}

.blog-posts-section .tag-widget ul li {
  display: -webkit-inline-box;
  border-bottom: none;
  background: rgba(44, 87, 228, 0.5);
  margin-bottom: 9px;
  padding: 10px 25px !important;
  border-radius: 5px;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.blog-posts-section .tag-widget ul li:hover {
  background: #2c57e4;
}

.blog-posts-section .tag-widget ul li a {
  color: #fff;
}

/*----------------------------------------*/
/*  17 - Responsive Styles
/*----------------------------------------*/
@media (max-width: 320px) {
  .testimonial-section .single-testimonial {
    padding: 20px !important;
  }
  .testimonial-section .single-testimonial .details {
    margin-left: 20px;
  }
  .testimonial-section .testimonial-right .owl-nav {
    bottom: 10% !important;
  }
}

@media (max-width: 413px) {
  .testimonial-section .single-testimonial p {
    font-size: 10px;
  }
}

@media (max-width: 414px) {
  .page-header-section .page-title {
    font-size: 40px;
  }
  .header-section .header-left h1 {
    font-size: 30px;
  }
  .section-title-wrap h1 {
    font-size: 18px !important;
  }
  .section-title-wrap p {
    font-size: 11px !important;
    max-width: 280px !important;
  }
  .about-right h4 {
    font-size: 20px;
  }
  .about-right p {
    font-size: 12px;
  }
  .testimonial-section .testimonial-left h4 {
    font-size: 20px;
  }
  .testimonial-section .testimonial-left .t-img li {
    width: 55px;
  }
  .price-section .price-left h4 {
    font-size: 20px;
  }
  .bottom-wrap-left h4,
  .bottom-wrap-right h4 {
    font-size: 20px;
  }
  .bottom-wrap-left p,
  .bottom-wrap-right p {
    font-size: 12px;
  }
}

@media (max-width: 575px) {
  .testimonial-section .testimonial-right .single-testimonial {
    padding: 50px;
  }
  .blog-posts-section .single-posts h4 {
    font-size: 26px;
  }
  .replay-comment {
    margin-left: -80px;
  }
  .footer-section .subscribe-wrap {
    width: 97% !important;
  }
}

@media (max-width: 767px) {
  .footer-section,
  .team-section,
  .service-section,
  .service-details-section,
  .portfolio-details-section,
  .services-section {
    padding-top: 50px;
  }
  .footer-widget-wrap,
  .news-section {
    padding-bottom: 50px !important;
  }
  .header-section {
    padding: 60px 0px;
  }
  .section-gap {
    padding: 50px 0px !important;
  }
  .section-title-wrap h1 {
    font-size: 30px;
  }
  .portfolio-section .single-portfolio {
    margin-bottom: 30px;
  }
  .price-section .price-right .single-plan {
    -webkit-transform: scale(1) !important;
            transform: scale(1) !important;
    margin-bottom: 30px;
  }
  .price-section .price-right .price-wrap .col-md-6:last-child .single-plan {
    margin-bottom: 0px;
  }
  .footer-section .footer-widget-col {
    margin-bottom: 30px;
  }
  .news-section .single-news {
    margin-bottom: 30px;
  }
  .about-details-section .bottom-wrap .bottom-wrap-left {
    margin-bottom: 30px;
  }
  .team-section .single-team {
    margin-bottom: 30px;
  }
  .team-section .single-team:last-child {
    margin-bottom: 0px;
  }
  .works-wrap .single-work {
    margin-bottom: 30px;
  }
  .address-wrap .single-address {
    margin-bottom: 30px;
  }
  .author-details .author-thumb {
    text-align: center;
    margin-bottom: 20px;
  }
  .author-details .author-thumb img {
    width: 250px;
  }
}

@media (max-width: 991px) {
  .main-menu ul {
    display: none;
  }
  .mobile-menu-icon {
    display: block !important;
    text-align: right;
    font-size: 20px;
  }
  .header-section .header-left {
    text-align: center;
  }
  .header-section .header-left p {
    margin: 0 auto;
  }
  .testimonial-section .testimonial-left {
    text-align: center;
    margin-bottom: 30px;
  }
  .testimonial-section .testimonial-left p {
    margin: 0 auto;
    padding-bottom: 20px;
  }
  .price-section .price-left {
    margin-bottom: 60px;
  }
  .address-wrap .single-address {
    padding: 60px 15px !important;
  }
  .address-wrap .single-address h4 {
    font-size: 18px !important;
  }
  .sidebar {
    margin-top: 60px;
  }
}

@media (max-width: 1199px) {
  .main-menu ul li {
    margin-left: 30px !important;
  }
}

@media (min-width: 1281px) {
  .page-header-section {
    padding: 250px 0px !important;
  }
}

.comment-wrap {
  margin-top: 30px;
  border-radius: 5px;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
          box-shadow: 0px 0px 30px 0px rgba(34, 34, 34, 0.08);
  overflow: hidden;
  padding: 30px;
}

.comment-wrap h3 {
  margin-bottom: 30px;
}

.comment-wrap .media {
  border-bottom: 1px solid #eee;
  padding-bottom: 20px;
}

.comment-wrap .media:last-child {
  border-bottom: none;
  margin-bottom: 0px;
  padding-bottom: 0px;
}

.comment-wrap .media img {
  width: 90px;
  border-radius: 50px;
}

.comment-wrap .replay-comment {
  border-bottom: none;
  border-top: 1px solid #eee;
  padding: 20px;
  margin-bottom: 0px !important;
}

.comment-wrap .comments {
  margin-bottom: 30px;
}

.comment-wrap .black-btn {
  min-width: 80px !important;
}

.comment-wrap .media-body h5 {
  margin-bottom: 10px;
}

.comment-wrap .comment-form h3 {
  margin-bottom: 30px;
}

.comment-form {
  margin-top: 30px;
  background: #fff;
  border-radius: 5px;
  -webkit-box-shadow: 0px 30px 90px rgba(0, 0, 0, 0.14) !important;
          box-shadow: 0px 30px 90px rgba(0, 0, 0, 0.14) !important;
  overflow: hidden;
  padding: 30px;
}

.comment-form .form-control:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
  border-color: #ced4da;
}

.comment-form .btn-style {
  margin-top: 30px;
}

.comment-form h3 {
  margin-bottom: 30px;
}

.comment-form .form-col-wrap {
  margin-bottom: 30px;
}
/*# sourceMappingURL=style.css.map */