@import url(animate.css);
/*========================================================
                      Main Styles
=========================================================*/
body {
  color: #000;
  font: 400 16px/24px "PT Serif", serif;
  -webkit-text-size-adjust: none;
  background: #fff; }
  @media (min-width: 768px) {
    body {
      font-size: 18px;
      line-height: 28px; } }

img {
  max-width: 100%;
  height: auto; }

h1 {
  font-size: 24px;
  line-height: 30px;
  letter-spacing: .5px; }

h2 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 32px;
  text-transform: uppercase;
  letter-spacing: .5px; }
  @media (min-width: 992px) {
    h2 {
      font-size: 30px;
      line-height: 36px;
      letter-spacing: 2px; } }

h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 30px; }

h4 {
  font-family: 'Montserrat', sans-serif;
  font-size: 22px;
  line-height: 28px;
  letter-spacing: 1px; }

h5 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 28px; }

h6 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700; }

h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
  color: #6b4da7; }

p a:hover, .marked-list a:hover, .list a:hover {
  text-decoration: underline; }
p .fa, .marked-list .fa, .list .fa {
  text-decoration: none; }

time {
  display: block; }

a {
  font: inherit;
  color: inherit;
  text-decoration: none;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s; }
  a:focus {
    outline: none; }
  a:active {
    background-color: transparent; }

a[href^="tel:"],
a[href^="callto:"] {
  color: inherit;
  text-decoration: none; }
  a[href^="tel:"]:hover,
  a[href^="callto:"]:hover {
    text-decoration: underline; }

strong {
  font-weight: 700; }

.fa {
  line-height: inherit; }

[class*='fa-']:before {
  font-weight: 400;
  font-family: "FontAwesome"; }

.page {
  overflow: hidden;
  min-height: 500px; }
  .lt-ie9 .page {
    min-width: 1200px; }

[class^='col-'] + [class^='col-'] {
  margin-top: 30px; }
  @media (min-width: 768px) {
    [class^='col-'] + [class^='col-'] {
      margin-top: 0; } }

@media (min-width: 480px) {
  [class^='col-xs-'] + [class^='col-xs-'] {
    margin-top: 0; } }

section {
  overflow: hidden;
  position: relative; }

/*=======================================================
                       Main Layout
=========================================================*/
h2 + * {
  margin-top: 50px; }

h3 + * {
  margin-top: 27px; }

h4 + * {
  margin-top: 30px; }

.row + .row {
  margin-top: 52px; }

/*=======================================================
                        Helpers
=========================================================*/
.text-center {
  text-align: center; }

@media (min-width: 480px) {
  .text-right {
    text-align: right; } }

@media (max-width: 767px) {
  .text-center-1 {
    text-align: center; } }

.row.offset-1 {
  margin-top: 80px; }
  @media (min-width: 768px) {
    .row.offset-1 {
      margin-top: 225px; } }

/*=======================================================
                        Components
=========================================================*/
/*==================     Brand     ======================*/
.brand {
  display: block; }
  .brand_name {
    overflow: hidden; }

/*==================  Backgrounds  ======================*/
.bg-primary-variant-1 {
  background: #fdd835; }
  .bg-primary-variant-1 .box .icon-circle {
    background: #fff; }
  .bg-primary-variant-1 .inline-list a {
    color: #7e6a0f; }
    .bg-primary-variant-1 .inline-list a:hover {
      color: #6b4da7; }
  .bg-primary-variant-1 .btn-primary {
    background: #000;
    color: #fff; }

/*==================    Buttons    ======================*/
.btn {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  line-height: 24px;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-align: center; }
  .btn-md {
    padding: 15px 41px;
    font-size: 18px;
    border-radius: 28px;
    min-width: 225px; }
  .btn-primary {
    background: #fdd835;
    color: #000; }
    .btn-primary:hover {
      background: #6b4da7;
      color: #fff; }
    .btn-primary:active {
      background: #553d84; }
  * + .btn {
    margin-top: 30px; }
  .btn-group {
    text-align: center;
    margin-top: 50px; }

/*==================      Box      ======================*/
.box {
  text-align: center; }
  .box .icon-circle {
    display: inline-block;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    line-height: 110px;
    background: #fdd835; }
    .box .icon-circle.fa {
      font-size: 40px; }
    .box .icon-circle.fa-cogs {
      font-size: 36px; }
    .box .icon-circle.num {
      font-size: 48px;
      font-family: 'Montserrat', sans-serif;
      font-weight: 700; }
    .box .icon-circle + * {
      margin-top: 20px; }

/*==================      Service-box      ======================*/
.service-box:before, .service-box:after {
  display: table;
  content: "";
  line-height: 0; }
.service-box:after {
  clear: both; }
.service-box_aside {
  width: 130px;
  margin: 0 auto 30px; }
@media (min-width: 480px) and (max-width: 767px) {
  .service-box_aside {
    float: left;
    margin-right: 30px;
    margin-bottom: 0; }
  .service-box_cnt__no-flow {
    overflow: hidden; } }
@media (min-width: 992px) {
  .service-box_aside {
    float: left;
    margin-right: 30px;
    margin-bottom: 0; }
  .service-box_cnt__no-flow {
    overflow: hidden;
    padding-right: 10%; } }

/*==================      Quote     ======================*/
.quote {
  padding-top: 15px; }
  .quote-heading {
    padding-left: 80px;
    position: relative; }
    .quote-heading img {
      position: absolute;
      top: 50%;
      left: 0;
      margin-top: -30px;
      display: block;
      width: 60px;
      height: 60px;
      border-radius: 50%; }
    .quote-heading + * {
      margin-top: 37px; }

/*==================      Inline-list      ======================*/
.inline-list li {
  display: inline-block;
  font-size: 20px;
  line-height: 28px; }
  .inline-list li + li {
    margin-left: 25px; }
  .inline-list li a:hover {
    color: #fdd835; }

/*==================      Vide     ======================*/
.vide {
  color: #fff; }
  .vide_content {
    position: relative; }

/*==================      Shortcodes      ======================*/
.header-variant-1 {
  padding-bottom: 50px;
  background: no-repeat url(../images/parallax01.jpg);
  background-size: cover;
  color: #fff; }
  .header-variant-1 .brand {
    margin-top: 0; }

.shortcodes-content {
  color: #212121;
  background: #f7f7f7; }

.icon-short-code {
  font-size: 16px;
  line-height: 2; }

.icon-short-code .box__left {
  padding-right: 10px;
  color: black; }

.box .box__left,
.box .box__right,
.box .box__body {
  display: table-cell;
  vertical-align: top; }

@media (max-width: 767px) {
  .icon-short-code.box .box__left,
  .icon-short-code.box .box__right,
  .icon-short-code.box .box__body {
    display: inline-block; } }
div.row div.clear-shortcode-xs-6 {
  margin-top: 0;
  margin-bottom: 0; }

@media (max-width: 600px) {
  div.row div.clear-shortcode-xs-6 {
    width: 100%; } }
@media (min-width: 1200px) {
  div.row div.clear-shortcode-xs-6:nth-child(3n+4) {
    clear: left; } }
@media (min-width: 992px) and (max-width: 1199px) {
  div.row div.clear-shortcode-xs-6:nth-child(3n+4) {
    clear: left; } }
@media (min-width: 500px) and (max-width: 991px) {
  div.row div.clear-shortcode-xs-6:nth-child(2n+3) {
    clear: left; } }
/*==================     ToTop     ======================*/
.toTop {
  width: 50px;
  height: 50px;
  font-size: 24px;
  line-height: 46px;
  color: #fff;
  background: #6b4da7;
  border-radius: 50%;
  -webkit-box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.4);
  box-shadow: 4px 4px 8px 0 rgba(0, 0, 0, 0.4);
  position: fixed;
  right: 40px;
  bottom: 40px;
  display: none;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  z-index: 20; }
  .toTop:hover {
    color: #fff;
    background: #fdd835;
    text-decoration: none; }

.mobile .toTop,
.tablet .toTop {
  display: none !important; }

/*==================  RD Parallax    ======================*/
.parallax {
  position: relative;
  overflow: hidden; }
  .parallax_image, .parallax_pattern {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background-position: center center;
    will-change: transform; }
  .parallax_image {
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover; }
  .parallax_pattern {
    background-repeat: repeat; }
  .parallax_cnt {
    position: relative;
    color: #fff; }

/*========================================================
                     HEADER  Section
=========================================================*/
header {
  padding-top: 35px;
  padding-bottom: 200px; }
  header em {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: 40px;
    text-transform: uppercase; }
    @media (min-width: 768px) {
      header em {
        font-size: 54px;
        line-height: 62px;
        letter-spacing: 4px; } }
  header .brand {
    margin-top: 37px; }
    header .brand + * {
      margin-top: 50px; }
  @media (max-width: 479px) {
    header {
      text-align: center; } }

/*========================================================
                     CONTENT  Section
=========================================================*/
main {
  display: block; }

.link {
  color: #6b4da7;
  text-decoration: underline; }
  .link:hover {
    text-decoration: none; }

.bg-img {
  display: block;
  margin: 30px auto 0; }
  @media (min-width: 768px) {
    .bg-img {
      position: absolute;
      bottom: 0;
      left: 50%;
      margin-left: -455px;
      margin-top: 0; } }

.contact-info .fa {
  font-size: 30px;
  line-height: 28px;
  margin-right: 10px; }
.contact-info .big {
  font-size: 24px;
  line-height: 28px; }
  .contact-info .big + .btn {
    margin-top: 20px; }

/*==================      Well     ======================*/
.well-md {
  padding-top: 100px;
  padding-bottom: 102px; }
  @media (max-width: 767px) {
    .well-md-variant-1 {
      padding-bottom: 0; } }

/*========================================================
                     FOOTER  Styles
=========================================================*/
footer {
  padding-top: 14px;
  padding-bottom: 12px; }
  footer .copy {
    font-size: 14px;
    line-height: 24px;
    color: #6d6d6d; }
