body {
  background: #fff;
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.8;
  color: #6c757d; }

a {
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  text-decoration: none; }
  a:hover {
    text-decoration: none; }

h1, h2, h3, h4, h5 {
  color: #000;
  font-family: "Poppins", sans-serif; }

.btn, .form-control {
  outline: none;
  -webkit-box-shadow: none !important;
  box-shadow: none !important; }

.btn.btn-primary {
  color: #000;
  background: #fecd0e;
  border-color: #fecd0e;
  border-width: 2px; }
  .btn.btn-primary:hover, .btn.btn-primary:active, .btn.btn-primary:focus {
    border-color: #e5b80a;
    background: #e5b80a;
    color: #000; }

.btn.btn-sm {
  font-size: 12px; }

.btn.btn-outline-primary {
  border-width: 2px;
  border-color: #fecd0e;
  color: #fecd0e; }
  .btn.btn-outline-primary:hover, .btn.btn-outline-primary:focus, .btn.btn-outline-primary:active {
    background: #fecd0e;
    border-color: #fecd0e;
    color: #000; }

.btn.btn-outline-white {
  border-width: 2px;
  border-color: #fff;
  color: #fff;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: .2em; }
  .btn.btn-outline-white:hover, .btn.btn-outline-white:focus {
    background: #fff;
    color: #000; }

/* Header */
header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
  background: white; }
  header .navbar-brand {
    text-transform: uppercase;
    letter-spacing: .2em;
    font-weight: 700;
    position: relative;
    z-index: 7; }
    header .navbar-brand span {
      color: #fecd0e; }
    @media (max-width: 991.98px) {
      header .navbar-brand {
        position: relative !important; } }
  header .top-bar {
    background: #dee2e6; }
    header .top-bar a {
      color: #fff;
      padding: 10px;
      font-size: 13px;
      display: inline-block; }
    header .top-bar .cta-btn {
      display: inline-block;
      padding-right: 15px;
      padding-left: 15px;
      background: #fecd0e; }
      header .top-bar .cta-btn a {
        color: #000 !important; }
      header .top-bar .cta-btn:hover {
        background: #e5b80a;
        -webkit-box-shadow: 2px 0 20px 0 rgba(0, 0, 0, 0.1);
        box-shadow: 2px 0 20px 0 rgba(0, 0, 0, 0.1); }
    header .top-bar .social {
      margin-bottom: 0; }
      header .top-bar .social li {
        display: inline-block;
        text-align: center; }
        header .top-bar .social li a {
          color: #fff;
          padding: 10px;
          width: 40px;
          display: inline-block; }
          @media (max-width: 991.98px) {
            header .top-bar .social li a {
              padding-left: 10px;
              padding-right: 10px;
              width: inherit; } }
          header .top-bar .social li a:hover {
            background: #fecd0e;
            color: #000;
            -webkit-box-shadow: 2px 0 20px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 2px 0 20px 0 rgba(0, 0, 0, 0.1); }
  header .navbar {
    padding-top: 0;
    padding-bottom: 0;
    background: white !important; }
    @media (max-width: 1199.98px) {
      header .navbar {
        background: white !important;
        padding-top: .5rem;
        padding-bottom: .5rem; } }
    header .navbar .cta-btn2 {
      position: absolute;
      right: 0; }
      @media (max-width: 991.98px) {
        header .navbar .cta-btn2 {
          position: relative;
          right: 0; } }
    header .navbar .nav-link {
      padding: 1.7rem 1rem !important;
      outline: none !important; }
      @media (max-width: 1199.98px) {
        header .navbar .nav-link {
          padding: 1.7rem .5rem !important; } }
      @media (max-width: 991.98px) {
        header .navbar .nav-link {
          padding: 0.5rem 0rem !important; } }
      header .navbar .nav-link.active {
        color: #fecd0e !important; }
    header .navbar .dropdown-menu {
      font-size: 14px;
      border-radius: 0px;
      border: none;
      -webkit-box-shadow: 0 2px 30px -2px rgba(0, 0, 0, 0.2);
      box-shadow: 0 2px 30px -2px rgba(0, 0, 0, 0.2);
      min-width: 13em;
      position: relative;
      margin-top: -10px; }
      header .navbar .dropdown-menu .dropdown-item:hover {
        background: #fecd0e;
        color: #000; }
      header .navbar .dropdown-menu .dropdown-item.active {
        background: #fecd0e;
        color: #000; }
      header .navbar .dropdown-menu a {
        padding-top: 7px;
        padding-bottom: 7px; }
    header .navbar .cta-btn a {
      background: #fecd0e;
      color: #000 !important;
      padding-left: 20px !important;
      padding-right: 20px !important;
      text-transform: uppercase;
      padding-top: 26px !important;
      padding-bottom: 26px !important;
      line-height: 1;
      -webkit-transition: .3s all ease;
      -o-transition: .3s all ease;
      transition: .3s all ease; }
      header .navbar .cta-btn a:hover {
        background: #e5b80a;
        color: #000 !important;
        -webkit-box-shadow: 2px 0 30px -5px rgba(244, 178, 20, 0.9);
        box-shadow: 2px 0 30px -5px rgba(244, 178, 20, 0.9); }

.cta-overlap {
  margin-bottom: -4em;
  position: relative;
  z-index: 100; }
  .cta-overlap .text {
    background: #111111;
    border-left: 5px solid #fecd0e;
    padding: 3em 2em;
    -webkit-box-shadow: 0 1px 30px -4px rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 30px -4px rgba(0, 0, 0, 0.2); }
    @media (max-width: 991.98px) {
      .cta-overlap .text {
        padding: 30px 15px;
        display: block !important;
        text-align: center; } }
    .cta-overlap .text h2 {
      margin-bottom: 0;
      color: #fff; }
      @media (max-width: 991.98px) {
        .cta-overlap .text h2 {
          margin-bottom: 20px;
          font-size: 26px; } }

.custom-icon {
  font-size: 70px;
  color: #fecd0e; }

/* Owl Carousel */
.owl-carousel .owl-item {
  opacity: .4; }
  .owl-carousel .owl-item.active {
    opacity: 1; }

.owl-carousel .owl-nav {
  position: absolute;
  top: 50%;
  width: 100%; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next {
    position: absolute;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-top: -10px; }
    .owl-carousel .owl-nav .owl-prev:hover, .owl-carousel .owl-nav .owl-prev:focus, .owl-carousel .owl-nav .owl-prev:active,
    .owl-carousel .owl-nav .owl-next:hover,
    .owl-carousel .owl-nav .owl-next:focus,
    .owl-carousel .owl-nav .owl-next:active {
      outline: none; }
    .owl-carousel .owl-nav .owl-prev span:before,
    .owl-carousel .owl-nav .owl-next span:before {
      font-size: 40px; }
  .owl-carousel .owl-nav .owl-prev {
    left: 30px !important; }
  .owl-carousel .owl-nav .owl-next {
    right: 30px !important; }

.owl-carousel .owl-dots {
  text-align: center; }
  .owl-carousel .owl-dots .owl-dot {
    width: 10px;
    height: 10px;
    margin: 5px;
    border-radius: 50%;
    background: #e6e6e6; }
    .owl-carousel .owl-dots .owl-dot.active {
      background: #fecd0e; }

.owl-carousel.home-slider {
  z-index: 1;
  position: relative; }
  .owl-carousel.home-slider .owl-item.active .slider-text h1 .char {
    -webkit-animation: rollLetter 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.15) forwards;
    animation: rollLetter 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.15) forwards; }
  .owl-carousel.home-slider .owl-nav {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease; }
    .owl-carousel.home-slider .owl-nav button {
      color: #fff; }
  .owl-carousel.home-slider:focus .owl-nav, .owl-carousel.home-slider:hover .owl-nav {
    opacity: 1;
    visibility: visible; }
  .slider-item {
    position: relative; }
    .slider-item::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.45);
      z-index: 1; }
    .slider-item .container {
      position: relative;
      z-index: 2; }
  .owl-carousel.home-slider .slider-item {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    height: calc(100vh - 117px);
    min-height: 700px; }
    .owl-carousel.home-slider .slider-item .slider-text {
      color: #fff;
      height: calc(100vh - 117px);
      min-height: 700px; }
      .owl-carousel.home-slider .slider-item .slider-text h1 {
        font-size: 2.7rem;
        color: #fff;
        line-height: 1.2;
        font-weight: 400 !important;
        text-transform: uppercase;
        -webkit-text-stroke: 0.5px #fecd0e;
        text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.6), 2px 2px 0px rgba(0, 0, 0, 0.5), 3px 3px 6px rgba(0, 0, 0, 0.5); }
        @media (max-width: 991.98px) {
          .owl-carousel.home-slider .slider-item .slider-text h1 {
            font-size: 34px; } }
      .owl-carousel.home-slider .slider-item .slider-text h1 .char {
        display: inline-block;
        opacity: 0;
        -webkit-transform: translateX(-15px) scale(0.7) rotate(-10deg);
        -ms-transform: translateX(-15px) scale(0.7) rotate(-10deg);
        transform: translateX(-15px) scale(0.7) rotate(-10deg);
        -webkit-filter: blur(2px);
        filter: blur(2px);
        -webkit-transition: none;
        -o-transition: none;
        transition: none; }
      .owl-carousel.home-slider .slider-item .slider-text p {
        font-size: 20px;
        line-height: 1.6;
        font-weight: 400 !important;
        color: white;
        text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9), 0 0 15px rgba(0, 0, 0, 0.6) !important; }
  .owl-carousel.home-slider.inner-page .slider-item {
    height: calc(50vh - 117px);
    min-height: 500px; }
    .owl-carousel.home-slider.inner-page .slider-item .slider-text {
      color: #fff;
      height: calc(50vh - 117px);
      min-height: 500px; }
  .owl-carousel.home-slider .owl-dots {
    position: absolute;
    bottom: 150px;
    width: 100%; }
    .owl-carousel.home-slider .owl-dots .owl-dot {
      width: 18px;
      height: 18px;
      margin: 5px;
      border-radius: 50%;
      background: #e6e6e6;
      background: none;
      outline: none !important;
      position: relative;
      -webkit-transition: .3s all ease;
      -o-transition: .3s all ease;
      transition: .3s all ease; }
      .owl-carousel.home-slider .owl-dots .owl-dot span {
        position: absolute;
        width: 20px;
        height: 3px;
        background: rgba(255, 255, 255, 0.5);
        left: 50%;
        top: 50%;
        display: block; }
      .owl-carousel.home-slider .owl-dots .owl-dot.active span {
        background: white; }

.owl-carousel.major-caousel .owl-stage-outer {
  padding-top: 30px;
  padding-bottom: 30px; }

.owl-carousel.major-caousel .owl-nav .owl-prev, .owl-carousel.major-caousel .owl-nav .owl-next {
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  color: #495057; }
  .owl-carousel.major-caousel .owl-nav .owl-prev:hover, .owl-carousel.major-caousel .owl-nav .owl-prev:focus, .owl-carousel.major-caousel .owl-nav .owl-next:hover, .owl-carousel.major-caousel .owl-nav .owl-next:focus {
    color: #6c757d;
    outline: none; }
  .owl-carousel.major-caousel .owl-nav .owl-prev.disabled, .owl-carousel.major-caousel .owl-nav .owl-next.disabled {
    color: #dee2e6; }

.owl-carousel.major-caousel .owl-nav .owl-prev {
  left: -60px !important; }

.owl-carousel.major-caousel .owl-nav .owl-next {
  right: -60px !important; }

.owl-carousel.major-caousel .owl-dots {
  bottom: -30px !important;
  position: relative; }

.owl-custom-nav {
  float: right;
  position: relative;
  z-index: 10; }
  .owl-custom-nav .owl-custom-prev,
  .owl-custom-nav .owl-custom-next {
    padding: 10px;
    font-size: 30px;
    background: #ccc;
    line-height: 0;
    width: 60px;
    text-align: center;
    display: inline-block; }

.section {
  padding: 7em 0; }

.cta-link {
  background: #fecd0e;
  padding: 3.5em 0 3em 0;
  display: block;
  text-align: center; }
  .cta-link:focus, .cta-link:active {
    outline: none; }
  .cta-link span {
    line-height: 1.2; }
  .cta-link .sub-heading {
    color: #111111;
    display: block;
    font-size: 20px; }
  .cta-link .heading {
    font-size: 50px;
    color: #111111; }
    @media (max-width: 991.98px) {
      .cta-link .heading {
        font-size: 30px; } }
  .cta-link:hover {
    background: #e5b80a; }

.cover_1 {
  background-size: cover;
  background-position: center center;
  padding: 7em 0; }
  .cover_1 .sub-heading {
    color: rgba(255, 255, 255, 0.7);
    font-size: 22px; }
  .cover_1 .heading {
    font-size: 50px;
    color: white;
    font-weight: 300; }

.heading {
  color: #000; }
  .heading.border-bottom {
    position: relative;
    padding-bottom: 30px;
    border-bottom: none !important; }
    .heading.border-bottom:before {
      bottom: 0;
      position: absolute;
      content: "";
      width: 50px;
      height: 2px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      background: #fecd0e; }


.text-black {
  color: #000 !important; }

.stretch-section .video {
  display: block;
  position: relative;
  -webkit-box-shadow: 4px 4px 70px -20px rgba(0, 0, 0, 0.5);
  box-shadow: 4px 4px 70px -20px rgba(0, 0, 0, 0.5); }

.media-feature {
  padding: 30px;
  -webkit-transition: .2s all ease-out;
  -o-transition: .2s all ease-out;
  transition: .2s all ease-out;
  background: #fff;
  z-index: 1;
  position: relative;
  border-bottom: 10px solid transparent;
  border-radius: 4px;
  font-size: 15px; }
  .media-feature .icon {
    font-size: 60px;
    color: #fecd0e; }
  .media-feature h3 {
    font-size: 16px;
    text-transform: uppercase; }
  .media-feature:hover, .media-feature:focus {
    -webkit-box-shadow: 0 2px 20px -3px rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 20px -3px rgba(0, 0, 0, 0.1);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    z-index: 2;
    border-bottom: 10px solid #fecd0e; }

.media-custom {
  background: #fff;
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  margin-bottom: 30px; }
  .media-custom .meta-post {
    color: #ced4da;
    font-size: 13px;
    text-transform: uppercase; }
  .media-custom .meta-chat {
    color: #ced4da; }
    .media-custom .meta-chat:hover {
      color: #6c757d; }
  .media-custom:focus, .media-custom:hover {
    -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2); }
  .media-custom .media-body {
    padding: 30px; }
    .media-custom .media-body h3 {
      font-size: 20px; }
    .media-custom .media-body p:last-child {
      margin-bottom: 0; }

.media-testimonial img {
  width: 100px;
  border-radius: 50%; }

.media-testimonial blockquote p {
  font-size: 20px;
  color: #000;
  font-style: italic; }

.list-unstyled.check li {
  position: relative;
  padding-left: 30px;
  line-height: 1.3;
  margin-bottom: 10px; }
  .list-unstyled.check li:before {
    color: #fecd0e;
    left: 0;
    font-family: "Ionicons";
    content: "\f122";
    position: absolute; }

#modalAppointment .modal-content {
  border-radius: 0;
  border: none; }

#modalAppointment .modal-body, #modalAppointment .modal-footer {
  padding: 40px; }

.site-footer {
  padding: 10em 0 5em 0;
  background: #f2f2f2;
  font-size: 13px; }
  .site-footer p:last-child {
    margin-bottom: 0; }
  .site-footer a {
    color: #fecd0e; }
    .site-footer a:hover {
      color: #e5b80a; }
  .site-footer h3 {
    font-size: 15px;
    margin-bottom: 20px; }
  .site-footer .footer-link li {
    line-height: 1.5;
    margin-bottom: 15px; }
  .site-footer hr {
    width: 100%; }

.footer-social a {
  line-height: 0;
  border-radius: 50%;
  margin: 0 5px 5px 0;
  border: 1px solid #ccc;
  width: 30px;
  height: 30px;
  text-align: center;
  display: inline-block; }
  .footer-social a:hover {
    background: #fecd0e;
    border-color: #fecd0e;
    color: #000; }

.link-thumbnail {
  display: block;
  position: relative;
  overflow: hidden;
  text-align: center;
  aspect-ratio: 1 / 1;
  width: 100%;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
  .link-thumbnail img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: .8s all ease;
    -o-transition: .8s all ease;
    transition: .8s all ease;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2); }
  .link-thumbnail .icon {
    position: absolute;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    z-index: 4;
    top: 50%;
    font-size: 30px;
    color: #fff;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden;
    margin-top: 30px; }
  .link-thumbnail h3 {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    bottom: -20px;
    left: 0;
    color: #fff;
    font-size: 18px;
    -webkit-transition: .5s all ease;
    -o-transition: .5s all ease;
    transition: .5s all ease;
    z-index: 10;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }
  .link-thumbnail:before {
    opacity: 0;
    visibility: hidden;
    z-index: 2;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(0, 0, 0, 0.6);
    position: absolute; }
  .link-thumbnail:hover h3 {
    opacity: 1;
    visibility: visible;
    bottom: 0px; }
  .link-thumbnail:hover img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
  .link-thumbnail:hover .icon {
    opacity: 1;
    visibility: visible;
    margin-top: 0px; }
  .link-thumbnail:hover:before {
    opacity: 1;
    visibility: visible; }

.border-t {
  border-top: 1px solid #f8f9fa; }

.copyright {
  font-size: 14px; }

.element-animate {
  opacity: 0;
  visibility: hidden; }

#loader {
  position: fixed;
  width: 96px;
  height: 96px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 0px 24px 64px rgba(0, 0, 0, 0.24);
  box-shadow: 0px 24px 64px rgba(0, 0, 0, 0.24);
  border-radius: 16px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .2s ease-out, visibility 0s linear .2s;
  -o-transition: opacity .2s ease-out, visibility 0s linear .2s;
  transition: opacity .2s ease-out, visibility 0s linear .2s;
  z-index: 1000; }

#loader.fullscreen {
  padding: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  background-color: #fff;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none; }

#loader.show {
  -webkit-transition: opacity .4s ease-out, visibility 0s linear 0s;
  -o-transition: opacity .4s ease-out, visibility 0s linear 0s;
  transition: opacity .4s ease-out, visibility 0s linear 0s;
  visibility: visible;
  opacity: 1; }

#loader .circular {
  -webkit-animation: loader-rotate 2s linear infinite;
  animation: loader-rotate 2s linear infinite;
  position: absolute;
  left: calc(50% - 24px);
  top: calc(50% - 24px);
  display: block;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg); }

#loader .path {
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  -webkit-animation: loader-dash 1.5s ease-in-out infinite;
  animation: loader-dash 1.5s ease-in-out infinite;
  stroke-linecap: round; }

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

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

@-webkit-keyframes loader-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px; }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -136px; } }

/* JDMlifts s.r.o. Rebranding Overrides */
.text-primary {
  color: #fecd0e !important;
}
.bg-primary {
  background-color: #fecd0e !important;
}
.btn-primary {
  background-color: #fecd0e !important;
  border-color: #fecd0e !important;
  color: #111111 !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #e5b80a !important;
  border-color: #e5b80a !important;
  color: #111111 !important;
}
.btn-outline-primary {
  color: #fecd0e !important;
  border-color: #fecd0e !important;
}
.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active {
  background-color: #fecd0e !important;
  color: #111111 !important;
}
a:hover {
  color: #e5b80a;
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: #fecd0e !important;
}
.navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .nav-link.active {
  color: #fecd0e !important;
}
.cta-overlap .btn-outline-white:hover {
  background: #fecd0e !important;
  color: #111111 !important;
  border-color: #fecd0e !important;
}
.bg-dark {
  background-color: #111111 !important;
}
.footer-social a {
  color: #fecd0e !important;
  border-color: #fecd0e !important;
}
.footer-social a:hover {
  background-color: #fecd0e !important;
  color: #111111 !important;
}

@keyframes loader-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px; }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -136px; } }

/* Fix mobile touch scrolling issue in Owl Carousel */
.owl-carousel,
.owl-carousel .owl-stage,
.owl-carousel.owl-drag .owl-item {
  -ms-touch-action: pan-y !important;
  touch-action: pan-y !important;
}

/* JDMlifts s.r.o. Logo Positioning and Sizing */
header .navbar-brand {
  position: static !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block;
  z-index: 10;
}
header .navbar-brand .logo-img {
  height: 60px !important; /* Elegant size on desktop */
  width: auto;
  display: block;
}

@media (max-width: 991.98px) {
  header .navbar-brand {
    position: relative !important;
    margin: 5px 0 !important;
    display: inline-block !important;
  }
  header .navbar-brand .logo-img {
    height: 46px !important; /* Scaled down for mobile to fit viewport */
  }
}

/* Symmetrical desktop alignment for logo, menu, and contact button using Flexbox */
@media (min-width: 992px) {
  header .navbar .container {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    position: relative;
  }
  header .navbar-brand {
    flex: 1 1 0% !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    position: static !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10;
  }
  header .navbar-brand .logo-img {
    height: 60px !important;
    width: auto;
    display: block;
  }
  header .navbar .navbar-collapse {
    display: contents !important;
  }
  header .navbar .navbar-nav {
    flex: 0 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
  }
  header .navbar .cta-btn2 {
    flex: 1 1 0% !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    position: static !important;
    transform: none !important;
    margin: 0 !important;
    z-index: 10;
  }
}

@media (max-width: 991.98px) {
  header .navbar .cta-btn2 {
    text-align: center !important;
    margin: 15px 0 !important;
    width: 100% !important;
    display: block !important;
  }
  header .navbar .cta-btn2 .nav-link {
    display: inline-block !important;
    padding: 0 !important;
  }
}

/* Make contact button a solid primary-colored button, transitioning background and border on hover */
header .navbar .cta-btn2 .nav-link {
  padding: 0 !important;
}
header .navbar .cta-btn2 .nav-link span {
  background-color: #fecd0e !important;
  border-color: #fecd0e !important;
  color: #111111 !important;
  font-weight: 500;
  border-radius: 4px;
  transition: all 0.3s ease;
}
header .navbar .cta-btn2 .nav-link:hover span {
  background-color: #e5b80a !important;
  border-color: #e5b80a !important;
  color: #111111 !important;
}

/* Custom cinematic foggy/misty transitions for homepage slider */
@keyframes fogIn {
  0% {
    opacity: 0;
    filter: blur(25px) brightness(1.2);
    transform: scale(1.08);
  }
  100% {
    opacity: 1;
    filter: blur(0px) brightness(1);
    transform: scale(1);
  }
}

@keyframes fogOut {
  0% {
    opacity: 1;
    filter: blur(0px) brightness(1);
    transform: scale(1);
  }
  100% {
    opacity: 0;
    filter: blur(25px) brightness(1.2);
    transform: scale(1.04);
  }
}

.fogIn {
  animation-name: fogIn;
}

.fogOut {
  animation-name: fogOut;
}

/* Slower duration strictly for the homepage slider transition */
.home-slider .animated {
  animation-duration: 2200ms !important;
  animation-fill-mode: both !important;
}

/* Crop and align the home page teaser image with the text on the left */
.about-section-img {
  width: 100%;
  height: 480px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
@media (max-width: 991.98px) {
  .about-section-img {
    height: 380px !important;
  }
}
@media (max-width: 575.98px) {
  .about-section-img {
    height: 280px !important;
  }
}

@-webkit-keyframes rollLetter {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-15px) scale(0.7) rotate(-10deg);
    transform: translateX(-15px) scale(0.7) rotate(-10deg);
    -webkit-filter: blur(2px);
    filter: blur(2px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) scale(1) rotate(0deg);
    transform: translateX(0) scale(1) rotate(0deg);
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@keyframes rollLetter {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-15px) scale(0.7) rotate(-10deg);
    -ms-transform: translateX(-15px) scale(0.7) rotate(-10deg);
    transform: translateX(-15px) scale(0.7) rotate(-10deg);
    -webkit-filter: blur(2px);
    filter: blur(2px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0) scale(1) rotate(0deg);
    -ms-transform: translateX(0) scale(1) rotate(0deg);
    transform: translateX(0) scale(1) rotate(0deg);
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

/* Ensure banner headings in inner-pages match the styled home-slider headings */
.inner-page .slider-item .slider-text h1 {
  font-family: "Poppins", sans-serif;
  font-size: 2.7rem;
  color: #fff;
  line-height: 1.2;
  font-weight: 400 !important;
  text-transform: uppercase;
  -webkit-text-stroke: 0.5px #fecd0e;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.6), 2px 2px 0px rgba(0, 0, 0, 0.5), 3px 3px 6px rgba(0, 0, 0, 0.5);
}
@media (max-width: 991.98px) {
  .inner-page .slider-item .slider-text h1 {
    font-size: 34px;
  }
}

/* Align the yellow bottom border line to the left for left-aligned headings */
.heading.border-bottom.text-left:before {
  left: 0;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

/* Image style for about page to display full images without cropping */
.about-page-img {
  width: 100%;
  height: 420px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

/* Make counter-item numbers smaller and thinner on mobile to prevent overflow */
.counter-item {
  font-size: 3.5rem;
  font-weight: 700;
}

@media (max-width: 575.98px) {
  .counter-item {
    font-size: 2.5rem !important;
    font-weight: 500 !important;
  }
}

/* Add margin above the CTA button on mobile to prevent overlap with heading text */
@media (max-width: 991.98px) {
  .cta-overlap .text .btn-wrap {
    margin-top: 20px;
  }
}

/* Global enhancement for slider description texts (text popping overlay) */
.slider-text p {
  font-weight: 400 !important;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.9), 0 0 15px rgba(0, 0, 0, 0.7) !important;
}

/* Homepage slider background image overlay removal and frosted-glass text readability container */
.home-slider:not(.inner-page) .slider-item::before {
  background: none !important;
  display: none !important;
}

.home-slider:not(.inner-page) .slider-text .element-animate {
  background: rgba(0, 0, 0, 0.25) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  padding: 45px 35px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2) !important;
  display: inline-block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 575.98px) {
  .home-slider:not(.inner-page) .slider-text .element-animate {
    padding: 25px 15px !important;
  }
}

/* Mobile footer content center-alignment overrides */
@media (max-width: 767.98px) {
  .site-footer {
    text-align: center !important;
  }
  .site-footer .footer-link li {
    display: block !important;
    text-align: center !important;
  }
  .site-footer .footer-link li span {
    display: block !important;
    margin-right: 0 !important;
    margin-bottom: 5px !important;
  }
  .site-footer .footer-social {
    justify-content: center !important;
  }
}

/* Background Video Slider Styles */
.home-slider-wrapper {
  position: relative;
  overflow: hidden;
  height: calc(100vh - 117px);
  min-height: 700px;
}

.home-slider-wrapper .slider-video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.home-slider-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent; /* Removed dark overlay to show full original brightness */
  z-index: 1;
}

.home-slider-wrapper .home-slider {
  position: relative;
  z-index: 2;
  background: transparent !important;
}

.home-slider-wrapper.video-active .slider-item {
  background-image: none !important;
  background-color: transparent !important;
}


