/* -------------------------------------------------------
    La Ferme du Parc - Styles principaux
    Site: lafermeduparc.com
------------------------------------------------------- */
/*
Table of contents

    01. Google font
    02. CSS color variable
    03. Reset
    04. Typography
    05. General
    06. Background and border
    07. Width
    08. Height
    09. Loop
    10. Header
    11. Page title
    12. Layout
    13. Elements
    14. Blog
    15. Portfolio
    16. Shop
    17. Footer

*/
/* ===================================
    01. Google font
====================================== */
@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@200;300;400;500;600;700;800;900&display=swap");
:root {
  --alt-font: "Plus Jakarta Sans", sans-serif;
  --primary-font: "Inter", sans-serif;
}
/* ===================================
    02. CSS color variable
====================================== */
:root {
  --base-color: #2946f3;
  --white: #ffffff;
  --black: #000000;
  --red: #dc3131;
  --light-red: #feedec;
  --green: #2ebb79;
  --crusoe-green: #d39121;
  --yellow: #ffea23;
  --dark-gray: #232323;
  --medium-gray: #717580;
  --extra-medium-gray: #e4e4e4;
  --light-gray: #a8a8a8;
  --very-light-gray: #f7f7f7;
  --light-medium-gray: #eaeaeb;
  --charcoal-blue: #202329;
  --slate-blue: #262b35;
  --medium-slate-blue: #374162;
  --extra-medium-slate-blue: #23262d;
  --dark-slate-blue: #1f232c;
  --extra-dark-slate-blue: #121418;
  --extra-very-slate-blue: #161620;
  --tussock-yellow: #BC8947;
  --aluminium-gray:#80858F;
  --solitude-blue:#f0f4fd;
  --golden-yellow:#fd961e;
  --selago:#eaedff;
  --white-ice:#d8f5ef;
  --cornflower-blue:#445fed;
  --jade:#00AF6B;
  --orange: #ef991f;
  --majorelle-blue: #724ade;
  --light-majorelle-blue: #f2edfe;
  --spring-wood: #f9f6f3;
  --tropical-blue: #1ea3b1;
  --camarone: #20642b;
  --seal-brown: #0e0708;
  --Wasabi: #8ea63a;
}
/* ===================================
    03. Reset
====================================== */
.alt-font {
  font-family: var(--alt-font);
}
html {
  font-size: 16px;
}
body {
  font-family: var(--primary-font);
  font-size: 16px;
  line-height: 30px;
  font-weight: 400;
  color: var(--medium-gray);
  -moz-osx-font-smoothing: grayscale;
  word-break: break-word;
  -webkit-font-smoothing: antialiased;
}
section {
  padding-top: 110px;
  padding-bottom: 110px;
}
img {
  max-width: 100%;
  height: auto;
}
ul li {
  list-style: none;
}
a {
  color: var(--medium-gray);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
}
a:hover {
  color: var(--base-color);
  text-decoration: none;
}
p {
  margin-bottom: 25px;
}
video {
  background-size: cover;
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}
[class*=line-icon], [class*=" line-icon"], [class*=bi-], [class*=feather] {
  display: inline-block;
}
.form-control {
  background-position: right 20px center !important;
}
.container, .container-fluid {
  padding-right: 15px;
  padding-left: 15px;
}
.row {
  margin-right: -15px;
  margin-left: -15px;
}
.row > * {
  padding-right: 15px;
  padding-left: 15px;
}
/* ===================================
    04. Typography
====================================== */
/* Heading */
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-bottom: 30px;
  letter-spacing: -0.5px;
  font-weight: inherit;
}
h1, .h1 {
  font-size: 4.375rem;
  line-height: 4.375rem;
}
h2, .h2 {
  font-size: 3.438rem;
  line-height: 3.438rem;
}
h3, .h3 {
  font-size: 2.813rem;
  line-height: 3.125rem;
}
h4 {
  font-size: 2.375rem;
  line-height: 2.7rem;
}
h5 {
  font-size: 2rem;
  line-height: 2.2rem;
}
h6 {
  font-size: 1.75rem;
  line-height: 1.95rem;
}
/* Font custom */
 strong {
  font-weight: 700;
}
/* Font size */
.fs-12 {
  font-size: 12px;
}
.fs-13 {
  font-size: 13px;
}
.fs-14 {
  font-size: 14px;
}
.fs-15 {
  font-size: 15px;
}
.fs-16 {
  font-size: 16px;
}
.fs-17 {
  font-size: 17px;
}
.fs-18 {
  font-size: 18px;
}
.fs-20 {
  font-size: 20px;
}
.fs-26 {
  font-size: 26px;
  line-height: 38px;
}
.fs-50 {
  font-size: 3.125rem;
  line-height: 3.25rem;
}
/* Line height */
.lh-22 {
  line-height: 22px;
}
.lh-26 {
  line-height: 26px;
}
.lh-28 {
  line-height: 28px;
}
.lh-30 {
  line-height: 30px;
}
.lh-32 {
  line-height: 2rem;
}
.lh-40 {
  line-height: 2.5rem;
}
/* Text color */
.text-white, a.text-white-hover:hover {
  color: var(--white);
}
.text-dark-gray {
  color: var(--dark-gray);
}
.text-medium-gray, a.text-medium-gray-hover:hover {
  color: var(--medium-gray);
}
/* Text gradient color */
/* Text shadow */
.text-shadow-double-large {
  text-shadow: 0 0 100px rgba(0, 0, 0, 0.9);
}
/* Text bottom line */
/* Text outline*/
/* Text stroke width */
/* Text stroke color */
/* Letter spacing */
.ls-1px {
  letter-spacing: 1px !important;
}
.ls-minus-1px {
  letter-spacing: -1px !important;
}
.ls-minus-2px {
  letter-spacing: -2px !important;
}
/* Icon size */
.icon-extra-large {
  font-size: 50px;
}
.icon-very-medium {
  font-size: 28px;
}
/* ===================================
    05. General
====================================== */
/* Separator line */
/* Separator vertical line */
/* Separator line size */
/* Opacity */
 .opacity-medium, .opacity-extra-medium {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.opacity-extra-medium {
  opacity: 0.5;
}
.opacity-medium {
  opacity: 0.75;
}
/* Position */
/* Vertical title center */
/* Skrollr */
.skrollr-zoom {
  transition: none !important;
}
/* Transform */
/* Transition */
.transition {
  -webkit-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}
/* Pointer events */
/* Sticky column */
/* Overflow */
/* Overlap section */
/* Outside box */
/* CSS filter */
/* Box shadow */
.box-shadow {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
  -webkit-transition: 350ms ease-in-out;
  transition: 350ms ease-in-out;
}
.box-shadow-small {
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.08);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.08);
  -webkit-transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
}
.box-shadow-large {
  -webkit-box-shadow: 0 0 25px rgba(0, 0, 0, 0.08);
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.08);
  -webkit-transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
}
.box-shadow-extra-large {
  -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.08);
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.08);
  -webkit-transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
}
.box-shadow-quadruple-large {
  -webkit-box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
  -webkit-transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 350ms cubic-bezier(0.37, 0, 0.63, 1);
}
/* Input */
input, select, textarea, .form-control {
  padding: 12px 25px;
  width: 100%;
  max-width: 100%;
  resize: none;
  outline: none;
  font-size: 16px;
  border: 1px solid var(--extra-medium-gray);
  color: var(--medium-gray);
  line-height: inherit;
  word-break: normal;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
input:focus, select:focus, textarea:focus, .form-control:focus {
  border: 1px solid #c2c2c2;
  box-shadow: none !important;
  color: var(--medium-gray);
}
::-webkit-input-placeholder {
  color: var(--medium-gray) !important;
  text-overflow: ellipsis;
}
::-moz-placeholder {
  color: var(--medium-gray) !important;
  text-overflow: ellipsis;
  opacity: 1;
}
/* Select */
.select {
  position: relative;
}
.select:after {
  content: "\e842";
  font-family: feather !important;
  right: 20px;
  top: 50%;
  height: 34px;
  position: absolute;
  pointer-events: none;
  font-size: 22px;
  margin-top: -15px;
}
/* Date icon */
/* Mozilla firefox */
/* Time icon */
/* Input size */
/* Box overlay */
/* Swiper slider pagination */
/* Swiper pagination style 02 */
/* Swiper pagination style 03 */
/* Swiper pagination style 04 */
/* Custom image pagination */
/* Swiper number pagination style 01 */
/* Swiper number pagination style 02 */
/* Swiper line pagination style 01 */
/* Swiper number line pagination style */
/* Swiper number navigation style */
/* Swiper pagination progress style */
/* Swiper pagination progress style */
/* Swiper pagination bottom */
/* Swiper navigation */
.swiper-button-prev, .swiper-button-next {
  outline: none;
  cursor: pointer;
  height: 45px;
  width: 45px;
  margin-top: 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.swiper-button-prev:hover, .swiper-button-next:hover {
  opacity: 0.8;
}
.swiper-button-next {
  left: inherit;
}
/* Swiper navigation style 01 */
/* Swiper navigation style 02 */
/* Swiper navigation style 03 */
/* Swiper navigation style 04 */
/* Swiper navigation style 05 */
/* Swiper navigation style 06 */
.slider-navigation-style-06 {
  width: auto;
  height: auto;
  left: 60px;
}
.slider-navigation-style-06.swiper-button-next {
  right: 60px;
  left: inherit;
}
/* Swiper navigation style 07 */
/* Swiper navigation style 08 */
/* Slider custom text */
/* Swiper width auto */
/* Slider shadow */
/* Highlight separator */
/* Full screen */
.full-screen {
  height: 100vh;
}
/* Video icons */
@-webkit-keyframes video-icon-sonar {
  0% {
    opacity: 1;
    -webkit-transform: scale(0.1);
    transform: scale(0.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
@keyframes video-icon-sonar {
  0% {
    opacity: 1;
    -webkit-transform: scale(0.1);
    transform: scale(0.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
/* HTML video play */
/* Will change */
@-webkit-keyframes rotation {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(359deg);
  }
}
/* Float animation */
@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(15px);
  }
  100% {
    transform: translateY(30px);
  }
}
@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(5px);
  }
  100% {
    transform: translateY(10px);
  }
}
/* Zoom animation */
@keyframes zoom-in-zoom-out {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.2, 1.2);
  }
  100% {
    transform: scale(1, 1);
  }
}
/* Box shadow animation  */
[data-shadow-animation] {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}
[data-shadow-animation] img {
  opacity: 0;
  transition: opacity 0.65s cubic-bezier(0.5, 1, 0.5, 1);
}
/* Parallax liquid  */
/* Masked image animation */
/* Shape image animation */
/* Magic cursor */
/* Anime animation */
[data-anime] {
  opacity: 0;
  transition: none;
}
[data-anime].btn {
  transition: none;
}
[data-anime].btn.anime-complete {
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}
/* Atropos box */
/* Only for safari browser */
@media not all and (min-resolution: 0.001dpcm) {
  [data-anime] [class*=text-shadow-] {
    text-shadow: none;
  }
  [data-anime][class*=text-shadow-] {
    text-shadow: none;
  }
  [data-fancy-text] [class*=text-shadow-] {
    text-shadow: none;
  }
  [data-fancy-text][class*=text-shadow-] {
    text-shadow: none;
  }
  /* font awesome icon gradient color */
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  /* color issue */
  .text-white a[href^=tel] {
    color: var(--white);
  }
  .text-dark-gray a[href^=tel] {
    color: var(--text-dark-gray);
  }
}
.swiper-slide [data-fancy-text] {
  opacity: 0;
}
.swiper-slide.swiper-slide-active [data-fancy-text] {
  opacity: 1;
}
.swiper-slide.swiper-slide-active [data-anime] {
  opacity: 1;
}
.swiper-slide [data-anime] {
  opacity: 0;
  transition: 0.3s ease-in-out;
}
/* Data top bottom transition animation */
[data-top-bottom] {
  transition: transform 0.65s cubic-bezier(0.23, 1, 0.32, 1);
}
/* Custom cursor */
/* Stack box */
/* stack card */
/* Scrolling text */
/* Marquee slide */
/* Father shadow */
/* Text sliding line */
/* Sliding line */
/* Feature box slider */
/* Page loader */
/* Cookie message */
/* Scroll progress */
.scroll-progress {
  position: fixed;
  right: 20px;
  z-index: 111;
  top: 50%;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  mix-blend-mode: difference;
}
.scroll-progress.visible {
  opacity: 1;
  visibility: visible;
}
.scroll-progress .scroll-top {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.scroll-progress .scroll-line {
  width: 2px;
  height: 60px;
  position: relative;
  background-color: rgba(255, 255, 255, 0.15);
  color: inherit;
  display: block;
}
.scroll-progress .scroll-point {
  display: inline-block;
  width: 2px;
  position: absolute;
  background-color: var(--white);
  top: 0px;
  left: 0px;
}
.scroll-progress .scroll-text {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  writing-mode: vertical-lr;
  margin-bottom: 15px;
  color: var(--white);
  font-size: 11px;
  text-transform: uppercase;
}
/* Progressive blur */
/* Reveal hover */
/* for buy and demo button */
/* Move it (define the animation) */
@-moz-keyframes example1 {
  0% {
    -moz-transform: translateX(100%);
  }
  100% {
    -moz-transform: translateX(-100%);
  }
}
@-webkit-keyframes example1 {
  0% {
    -webkit-transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(-100%);
  }
}
@keyframes example1 {
  0% {
    -moz-transform: translateX(100%); /* Firefox bug fix */
    -webkit-transform: translateX(100%); /* Firefox bug fix */
    transform: translateX(100%);
  }
  100% {
    -moz-transform: translateX(-100%); /* Firefox bug fix */
    -webkit-transform: translateX(-100%); /* Firefox bug fix */
    transform: translateX(-100%);
  }
}
/* ===================================
    06. Background and border
====================================== */
/* Background color */
.bg-dark-gray,
.bg-dark-gray:focus {
  background-color: var(--dark-gray);
}
/* Gradient background color */
/* Transparent background color */
.bg-transparent {
  background-color: transparent;
}
.bg-gradient-dark-transparent {
  background: -webkit-gradient(linear, left bottom, left top, color-stop(7%, #141622), to(transparent));
  background: linear-gradient(to top, #141622 7%, transparent 100%);
}
/* Background image */
.cover-background {
  background-repeat: no-repeat !important;
  background-size: cover;
  overflow: hidden;
  position: relative;
  background-position: center center !important;
}
.background-repeat {
  background-repeat: repeat;
}
/* Background size */
/* Border width */
/* Border style */
/* Border color */
.border-color-light-gray {
  border-color: var(--light-gray) !important;
}
.border-color-extra-medium-gray {
  border-color: var(--extra-medium-gray) !important;
}
/* Gradient border color */
/* Border radius */
.border-radius-5px {
  border-radius: 5px !important;
}
.border-radius-6px {
  border-radius: 6px !important;
}
.border-radius-8px {
  border-radius: 8px !important;
}
.border-radius-100px {
  border-radius: 100px !important;
}
/* Parallax background */
/* ===================================
    07. Width
====================================== */
.w-50px {
  width: 50px !important;
}
.w-55px {
  width: 55px !important;
}
.w-80px {
  width: 80px !important;
}
.w-120px {
  width: 120px !important;
}
.w-60 {
  width: 60% !important;
}
.w-70 {
  width: 70% !important;
}
.w-80 {
  width: 80% !important;
}
.w-85 {
  width: 85% !important;
}
.w-90 {
  width: 90% !important;
}
.w-100 {
  width: 100% !important;
}
/* ===================================
    08. Height
====================================== */
.h-50px {
  height: 50px !important;
}
.h-55px {
  height: 55px !important;
}
.h-80px {
  height: 80px !important;
}
.h-500px {
  height: 500px !important;
}
/* Screen height */
/* Direction ltr and rtl */
/* lr container line */

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: auto;
  }
}
/* ===================================
    09. Loop - Padding, margin, position, font weight, min height, opacity and z-index
====================================== */
/* Padding and margin */
.p-45px {
  padding: 45px !important;
}
.p-60px {
  padding: 60px !important;
}
.p-5 {
  padding: 5% !important;
}
.pt-20px {
  padding-top: 20px !important;
}
.pt-35px {
  padding-top: 35px !important;
}
.pt-40px {
  padding-top: 40px !important;
}
.pt-5 {
  padding-top: 5% !important;
}
.pt-6 {
  padding-top: 6% !important;
}
.pt-8 {
  padding-top: 8% !important;
}
.pe-20px {
  padding-right: 20px !important;
}
.pe-25px {
  padding-right: 25px !important;
}
.pb-20px {
  padding-bottom: 20px !important;
}
.pb-25px {
  padding-bottom: 25px !important;
}
.pb-35px {
  padding-bottom: 35px !important;
}
.pb-40px {
  padding-bottom: 40px !important;
}
.pb-3 {
  padding-bottom: 3% !important;
}
.pb-6 {
  padding-bottom: 6% !important;
}
.pb-8 {
  padding-bottom: 8% !important;
}
.pb-9 {
  padding-bottom: 9% !important;
}
.ps-25px {
  padding-left: 25px !important;
}
.mt-20px {
  margin-top: 20px !important;
}
.mt-35px {
  margin-top: 35px !important;
}
.mt-1 {
  margin-top: 1% !important;
}
.mt-5 {
  margin-top: 5% !important;
}
.me-10px {
  margin-right: 10px !important;
}
.me-15px {
  margin-right: 15px !important;
}
.me-20px {
  margin-right: 20px !important;
}
.me-25px {
  margin-right: 25px !important;
}
.me-30px {
  margin-right: 30px !important;
}
.mb-5px {
  margin-bottom: 5px !important;
}
.mb-10px {
  margin-bottom: 10px !important;
}
.mb-15px {
  margin-bottom: 15px !important;
}
.mb-20px {
  margin-bottom: 20px !important;
}
.mb-25px {
  margin-bottom: 25px !important;
}
.mb-30px {
  margin-bottom: 30px !important;
}
.mb-40px {
  margin-bottom: 40px !important;
}
.mb-50px {
  margin-bottom: 50px !important;
}
.mb-4 {
  margin-bottom: 4% !important;
}
.mb-5 {
  margin-bottom: 5% !important;
}
.mb-6 {
  margin-bottom: 6% !important;
}
/* Position */
.left-15px {
  left: 15px;
}
.bottom-minus-50px {
  bottom: -50px;
}
/* Font weight */
.fw-300 {
  font-weight: 300 !important;
}
.fw-400 {
  font-weight: 400 !important;
}
.fw-500 {
  font-weight: 500 !important;
}
.fw-600 {
  font-weight: 600 !important;
}
.fw-700 {
  font-weight: 700 !important;
}
/* Min height */
/* Opacity */
.opacity-6 {
  opacity: .6;
}
.opacity-8 {
  opacity: .8;
}
/* Z-index */
.z-index-1 {
  z-index: 1;
}
/* ===================================
   10. Header
====================================== */
header .navbar {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 99;
}
header .navbar [class*=col-] {
  padding: 0 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
}
header .navbar [class*=col-].text-end {
  justify-content: flex-end !important;
}
header .navbar [class*=col-] .navbar-nav {
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
header .navbar [class*=col-] .navbar-nav .nav-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
header .navbar [class*=col-] .navbar-nav .nav-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
header .container-fluid {
  padding-left: 45px;
  padding-right: 45px;
}
header.sticky .navbar-brand {
  padding: 20px 0;
}
header.sticky .navbar {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
header.sticky .header-light:not(.disable-fixed) {
  box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
}
header.sticky.sticky-active .header-reverse {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  border-color: transparent !important;
}
header.sticky.sticky-active .navbar-brand .alt-logo {
  visibility: visible;
  opacity: 1;
  width: auto;
}
header.sticky.sticky-active .navbar-brand .default-logo {
  visibility: hidden;
  opacity: 0;
  width: 0;
}
header.sticky.sticky-active [data-header-hover=light] {
  background-color: var(--white) !important;
  box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.1);
}
header.sticky.sticky-active [data-header-hover=light] .navbar-nav .nav-link {
  color: var(--dark-gray);
}
header.sticky.sticky-active [data-header-hover=light] .icon > a {
  color: var(--dark-gray);
}
header.sticky.sticky-active [data-header-hover=light] .icon > a:hover {
  color: var(--medium-gray);
  opacity: 1;
}
header .navbar {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
header .navbar-brand {
  margin-right: 0;
  vertical-align: middle;
  padding: 30px 0;
  display: inline-block;
  font-size: 0;
}
header .navbar-brand .default-logo {
  visibility: visible;
  opacity: 1;
  width: auto;
}
header .navbar-brand .alt-logo, header .navbar-brand .mobile-logo {
  visibility: hidden;
  opacity: 0;
  width: 0;
}
header .navbar-brand img {
  max-height: 46px;
}

/* Navbar */
.navbar {
  padding: 0;
}
.navbar .navbar-nav .nav-item > i {
  display: none;
}
.navbar .navbar-nav .nav-item:hover .nav-link, .navbar .navbar-nav .nav-item.active .nav-link {
  opacity: 0.6;
}
.navbar .navbar-nav .nav-item .nav-link.active {
  opacity: 0.6;
}
.navbar .navbar-nav .nav-link {
  font-size: 16px;
  line-height: 20px;
  padding: 10px 20px;
  position: relative;
  font-weight: 500;
  opacity: 1;
  word-break: normal;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: var(--white);
}
.navbar .navbar-nav .nav-link .label {
  display: inline-block;
  padding: 1px 11px;
  font-size: 12px;
  margin-left: 8px;
  margin-top: 0px;
  vertical-align: middle;
}
/* Header hover submenu dark */
/* Header hover submenu light */
/* Header dark */
/* Header light */
.header-light .navbar-nav .nav-link {
  color: var(--dark-gray);
}
.header-light .header-icon .icon > a {
  color: var(--dark-gray);
}
.header-light .header-icon .icon > a:hover {
  color: var(--dark-gray);
  opacity: 0.6;
}
/* Header icon */
.header-icon {
  display: flex;
  align-items: center;
}
.header-icon .icon {
  position: relative;
  line-height: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: stretch;
  -ms-grid-row-align: stretch;
  align-self: stretch;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.header-icon .icon > a {
  padding-left: 16px;
  font-size: 17px;
  color: var(--white);
}
.header-icon .icon > a:hover {
  color: var(--white);
  opacity: 0.6;
}
.header-icon .icon:first-child a:first-child {
  padding-left: 0;
}
/* Header cart */
/* Header account */
/* Header language */
/* Header widget */
/* Header push button */
/* Header push menu */
/* Header center logo */
/* Header top logo */
/* Header left menu simple */
/* Menu list */
/* Header left menu modern */
/* Header left menu modern dark */
/* Hamburger menu */
/* Hamburger menu half */
/* Hamburger menu simple */
/* Right push menu */
/* Header search popup */
/* Custom hide animation */
@-webkit-keyframes hide-animation {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Custom slide animation */
@-webkit-keyframes show-animation {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
button:focus {
  outline: none;
}
/* Header toggle button  */
.navbar-toggler {
  font-size: 24px;
  width: 22px;
  height: 14px;
  display: inline-block;
  position: relative;
  padding: 0;
  margin: 0;
  border: none;
  vertical-align: middle;
  border-radius: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.navbar-toggler:focus {
  box-shadow: none;
}
.navbar-toggler-line {
  background: var(--dark-gray);
  height: 2px;
  width: 22px;
  content: "";
  display: block;
  border-radius: 0;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s;
  transition: 0.25s;
}
.navbar-toggler-line:nth-child(1) {
  top: 0px;
  width: 14px;
}
.navbar-toggler-line:nth-child(2) {
  top: 6px;
}
.navbar-toggler-line:nth-child(3) {
  top: 6px;
}
.navbar-toggler-line:nth-child(4) {
  top: 12px;
  width: 14px;
}
/* Landing page header */
/* ===================================
   11. Page title
====================================== */
/* Breadcrumb */
/* Page title style */
/* Down section icon */
/* Down section line */
/* ===================================
   12. Layout
====================================== */
/* Sidebar */
/* Grid */
.grid {
  list-style: none;
  padding: 0;
  margin: 0;
}
/* Grid column and gutter spacing */
.grid li img {
  width: 100%;
}
.grid .grid-sizer {
  padding: 0 !important;
  margin: 0 !important;
}
.grid.gutter-large li {
  padding: 10px 10px;
}
.grid.grid-2col li {
  width: 50%;
}
.grid .gutter-large {
  margin-left: 10px;
  margin-right: 10px;
  margin: 0 10px;
}
/* ===================================
    13. Elements
====================================== */
/* Accordion */
.accordion .accordion-item {
  color: inherit;
  border: none;
}
.accordion .accordion-item .accordion-header {
  background-color: transparent;
  border: none;
  padding: 0;
  margin-bottom: 0;
}
.accordion .accordion-item .accordion-header .accordion-title {
  cursor: pointer;
  padding-right: 25px;
}
.accordion .accordion-item .accordion-header .accordion-title i {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.accordion .accordion-item .accordion-collapse {
  border: 0;
}
/* Accordion style 01 */
/* Accordion style 02 */
.accordion-style-02 .accordion-item {
  background-color: transparent;
}
.accordion-style-02 .accordion-item .accordion-header {
  margin-bottom: 0;
  padding: 15px 0;
}
.accordion-style-02 .accordion-item .accordion-header .accordion-title i {
  right: 0;
}
.accordion-style-02 .accordion-item .accordion-body {
  padding: 0 25px 30px 0;
}
/* Accordion style 03 */
/* Accordion style 04 */
/* Accordion style 05 */
/* Accordion style 06 */
/* Alert box */
@keyframes hvr-icon-push {
  50% {
    -webkit-trasfrom: scale(0.5);
    trasfrom: scale(0.5);
  }
}
/* Alert box style 02 */
/* Alert box style 03 */
/* Alert box style 04 */
/* Alert box style 05 */
/* Blockquote */
/* Blockquote style 05 */
/* Use for mac desktop pc */
/* Button */
.btn-box-shadow {
  -webkit-box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 0.3s cubic-bezier(0.2, 0, 0.3, 1);
  transition: all 0.3s cubic-bezier(0.2, 0, 0.3, 1);
}
.btn-box-shadow:hover {
  -webkit-box-shadow: 0 8px 30px 0 rgba(0, 0, 0, 0.15);
  box-shadow: 0 8px 30px 0 rgba(0, 0, 0, 0.15);
  -webkit-transform: translate3d(0, -2px, 0);
  transform: translate3d(0, -2px, 0);
}
 .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check) + .btn:active {
  border-color: initial;
  color: initial;
}
.btn {
  display: inline-block;
  border: 2px solid transparent;
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  width: auto;
  font-family: var(--alt-font);
  font-weight: 500;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}
.btn:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn:hover {
  background-color: inherit;
}
.btn i {
  position: relative;
  margin-left: 6px;
}
.btn.btn-extra-large {
  font-size: 16px;
  padding: 24px 46px;
}
.btn.btn-large {
  font-size: 14px;
  padding: 18px 34px;
}
.btn.btn-small {
  font-size: 12px;
  padding: 13px 26px;
}
.btn.btn-rounded.btn-extra-large {
  padding: 18px 46px;
}
.btn.btn-rounded.btn-large {
  padding: 14px 36px;
}
.btn.btn-rounded.btn-small {
  padding: 10px 26px;
}
.btn.btn-rounded.btn-rounded {
  -webkit-border-radius: 50px;
  border-radius: 50px;
}
.btn.btn-white {
  background-color: var(--white);
  color: var(--dark-gray);
}
.btn.btn-white:hover, .btn.btn-white:active {
  background-color: transparent;
  border-color: var(--white);
  color: var(--white);
}
.btn.btn-box-shadow.btn-white:hover, .btn.btn-box-shadow.btn-white:active {
  background: var(--white);
  color: var(--dark-gray);
}
.btn.with-rounded {
  position: relative;
}
.btn.with-rounded > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  position: absolute;
  border-radius: 100%;
  right: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.35);
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.35);
}
.btn.with-rounded > span i {
  margin: 0;
}
.btn.with-rounded.btn-extra-large {
  padding-right: 70px;
}
.btn.with-rounded.btn-large {
  padding-right: 55px;
}
.btn.with-rounded.btn-large > span {
  width: 34px;
  height: 34px;
  right: 8px;
}
.btn.with-rounded.btn-small {
  padding-right: 45px;
}
.btn.with-rounded.btn-small > span {
  width: 28px;
  height: 28px;
  right: 6px;
}
/* Button icon position */
/* Gradient button */
/* Blog button */
/* Clients style 01 */
/* Clients style 02 */
/* Clients style 03 */
/* Clients style 04 */
/* Clients style 05 */
/* Clients style 06 */
/* Clients style 07 */
/* Clients style 08 */
/* Columns */
/* Contact form */
/* Contact form style 01 */
/* Contact form style 03 */
/* Contact form style 06 */
/* Contact form style 07 */
.swiper-button-next, .swiper-button-prev {
  color: var(--dark-gray);
}
.swiper-button-next:after, .swiper-button-prev:after {
  display: none;
  content: "";
}
/* Text slider 02 */
/* Text slider 03 */
/* Text slider 05 */
/* Countdown style 01 */
/* Countdown style 02 */
/* Countdown style 03 */
/* Countdown style 04 */
/* Counter style 03 */
/* Counter style 04 */
/* Counter style 06 */
/* Counter style 07 */
/* Vertical counter */
/* Divider style 01 */
/* Divider style 02 */
/* Divider style 03 */
/* First letter */
/* First letter block */
/* First letter round */
/* First letter big */
/* First letter small */
/* Event style 02 */
/* Event style 03 */
/* Text image mask */
/* Fancy text box style 01 */
/* Google map */
@keyframes markerWave {
  0% {
    transform: scale(1);
    opacity: 0.8;
  }
  20% {
    opacity: 0.8;
  }
  100% {
    transform: scale(5.5);
    opacity: 0;
  }
}
@-webkit-keyframes markerWave {
  0% {
    -webkit-transform: scale(1);
    opacity: 0.8;
  }
  20% {
    opacity: 0.8;
  }
  100% {
    -webkit-transform: scale(5.5);
    opacity: 0;
  }
}
/* Text highlight */
/* Separator animation */
/* Feature box style */
.feature-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: center;
  position: relative;
  z-index: 1;
}
.feature-box .feature-box-icon i:not([class*=text-gradient-]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
 .feature-box.feature-box-left-icon-middle {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-align: stretch !important;
  -ms-flex-align: stretch !important;
  align-items: stretch !important;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  text-align: left;
}
 .feature-box.feature-box-left-icon-middle .feature-box-icon {
  margin-right: 30px;
}
 .feature-box.feature-box-left-icon-middle .feature-box-content {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.feature-box.feature-box-left-icon-middle {
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  -webkit-box-align: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
  -webkit-box-align: center;
  -ms-flex-pack: center;
  justify-content: flex-start;
  text-align: left;
}
.feature-box.text-start {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: start;
}
.feature-box.text-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
/* Icon with text style 03 */
/* Icon with text style 05 */
/* Icon with text style 07 */
/* Icon with text style 10 */
/* Icon with text style 11 */
/* Image gallery style 01 */
/* Image gallery style 02 */
/* Image gallery style 03 */
/* Image gallery style 04 */
/* Image gallery style 05 */
/* Image gallery style 06 */
/* Instagram */
/* Interactive banner style 01 */
/* Interactive banner style 02 */
/* Interactive banner style 03 */
/* Interactive banner style 04 */
/* Interactive banner style 05 */
/* Interactive banner style 06 */
/* Interactive banner style 07 */
/* Interactive banner style 08 */
/* Interactive banner style 09 */
/* List style 01 */
/* List style 02 */
/* List style 03 */
/* List style 04 */
/* List style 05 */
/* HTML video */
/* Background video */
/* Modal popup */
.mfp-close, .mfp-close:active {
  opacity: 1;
  background-color: transparent;
  right: 20px;
  top: 20px;
  height: 30px;
  width: 30px;
  font-size: 13px;
  line-height: 31px;
  position: absolute;
  color: var(--dark-gray);
}
.mfp-arrow {
  opacity: 1;
}
.mfp-wrap {
  cursor: url("../images/mfg-close.png"), auto;
}
.mfp-wrap .mfp-container {
  cursor: auto;
}
.mfp-arrow-right:after,
.mfp-arrow-left:after {
  display: none;
}
.mfp-arrow-left {
  left: 30px;
}
.mfp-arrow-right {
  right: 30px;
}
.mfp-arrow-left:before {
  border-right: none;
  content: "\e629";
  font-size: 20px;
  font-family: "themify";
  color: var(--white);
  line-height: 60px;
  width: 100%;
  height: 100%;
  border: none;
  margin: 0;
  opacity: 1;
}
.mfp-arrow-right:before {
  border-left: none;
  content: "\e628";
  font-size: 20px;
  font-family: "themify";
  color: var(--white);
  line-height: 60px;
  width: 100%;
  height: 100%;
  border: none;
  margin: 0;
  opacity: 1;
}
.mfp-bottom-bar {
  margin-top: -24px;
  font-size: 12px;
}
.mfp-close {
  font-size: 28px;
  font-family: var(--alt-font);
}
.mfp-figure {
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  -o-animation-name: fadeIn;
  -ms-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.4s;
  -moz-animation-duration: 0.4s;
  -ms-animation-duration: 0.4s;
  -o-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
}
/* Zoom animation */
/* Fade animation */
/* Slide up animation */
.mfp-bg {
  background: var(--dark-gray);
  opacity: 0.9;
}
.mfp-bg, .mfp-wrap {
  z-index: 10007;
}
.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.93;
}
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}
button.mfp-close,
button.mfp-close:active {
  height: 40px;
  width: 40px;
  position: absolute;
  right: 20px;
  top: 20px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0;
}
button.mfp-close:before,
button.mfp-close:active:before {
  content: "\f00d";
  color: var(--black);
  font-family: "Font Awesome 7 Free";
  font-size: 16px;
  font-weight: 900;
}
/* Images gallery */
/* Modal popup */
/* Auto newsletter popup */
/* Parallax background */
/* Video icon effect  */
@-webkit-keyframes border-transform {
  0%, 100% {
    border-radius: 36% 64% 59% 41%/40% 45% 55% 60%;
  }
  24% {
    border-radius: 37% 63% 60% 40%/46% 52% 48% 54%;
  }
  32% {
    border-radius: 40% 60% 54% 46%/52% 56% 44% 48%;
  }
  42% {
    border-radius: 52% 48% 62% 38%/54% 54% 46% 46%;
  }
  56% {
    border-radius: 60% 40% 65% 35%/54% 50% 50% 46%;
  }
  70% {
    border-radius: 44% 56% 43% 57%/42% 50% 50% 58%;
  }
}
@keyframes border-transform {
  0%, 100% {
    border-radius: 36% 64% 59% 41%/40% 45% 55% 60%;
  }
  24% {
    border-radius: 37% 63% 60% 40%/46% 52% 48% 54%;
  }
  32% {
    border-radius: 40% 60% 54% 46%/52% 56% 44% 48%;
  }
  42% {
    border-radius: 52% 48% 62% 38%/54% 54% 46% 46%;
  }
  56% {
    border-radius: 60% 40% 65% 35%/54% 50% 50% 46%;
  }
  70% {
    border-radius: 44% 56% 43% 57%/42% 50% 50% 58%;
  }
}
/* Particles */
/* Pie chart style 01 */
.pie-chart-style-01 {
  position: relative;
  display: inline-block;
}
.pie-chart-style-01 .percent {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
/* Pricing table style 01 */
/* Pricing table style 02 */
/* Pricing table style 04 */
/* Pricing table style 07 */
/* Pricing table style 08 */
/* Pricing table style 09 */
/* Pricing table style 10 */
/* Pricing table style 11 */
/* Pricing table style 12 */
/* Pricing table style 13 */
/* Process step style 01 */
/* Process step style 02 */
/* Process step style 03 */
/* Process step style 04 */
/* Process step style 05 */
/* Process step style 07 */
/* Process step style 08 */
/* Process step style 09 */
/* Process step style 10 */
/* Process step style 11 */
/* Progress bar */
.progress {
  position: relative;
  overflow: visible;
}
/* Progress bar style 01 */
/* Progress bar style 02 */
/* Progress bar style 03 */
/* Progress bar style 04 */
/* Review style 03 */
/* Review style 08 */
/* Rotate box */
/* Rotate box style 01 */
/* Rotate box style 02 */
/* Services box style 01 */
/* Services box style 02 */
/* Services box style 05 */
/* Services box style 06 */
/* Services box style 07 */
/* Services box style 08 */
/* Services box style 09 */
/* Sliding box zoom effect */
@keyframes scale-effect {
  0% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  to {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes scale-effect {
  0% {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  to {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
/* Sliding box fade effect */
@keyframes fade {
  0% {
    opacity: 0.2;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fade {
  0% {
    opacity: 0.2;
  }
  to {
    opacity: 1;
  }
}
/* Sliding box right effect */
@keyframes slide-right {
  0% {
    -webkit-transform: translateX(-25px);
    transform: translateX(-25px);
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes slide-right {
  0% {
    -webkit-transform: translateX(-25px);
    transform: translateX(-25px);
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
/* Sliding box */
/* Sliding box style 01 */
/* Sliding box style 02 */
/* Sliding box style 03 */
/* Social media icon */
/*  Social icon dark and light */
/* Social icon style 01 */
/* Social icon style 03 */
/* Social icon style 04 */
/* Social icon style 05 */
/* Social icon style 06 */
/* Social icon style 07 */
/* Social icon style 08 */
/* Social icon style 09 */
/* Social icon style 10 */
/* Social icon style 11 */
/* Social text style 01 */
/* Subcribe style 01 */
/* Subcribe style 02 */
/* Subcribe style 03 */
/* Subcribe style 04 */
/* Subcribe style 06 */
/* Tab */
.nav-tabs > li.nav-item {
  display: inline-block;
  float: none;
  margin: 0;
  padding: 0 17px;
}
/* Tab style 01 */
/* Tab style 02 */
/* Tab style 03 */
/* Tab style 04 */
/* Tab style 05 */
/* Tab style 06 */
/* Tab style 07 */
/* Tab style 08 */
/* Tab style 09 */
/* Team style 01 */
/* Team style 02 */
/* Team style 04 */
/* Team style 05 */
/* Team style 08 */
/* Team style 09 */
/* Team style 10 */
/* Testimonial style 01 */
/* Testimonial style 04 */
/* Testimonial style 05 */
/* Testimonial style 12 */
/* Testimonial style 13  */
/* ===================================
   14. Blog
====================================== */
/* Blog grid */
/* Blog classic */
/* Blog only text */
/* Blog metro */
/* Blog masonry */
/* Blog simple */
/* Blog date */
/* Blog side image */
/* Blog modern */
/* Blog standard */
/* Blog comment */
/* Pagination style 01 */
/* Blog clean */
/* ===================================
   15. Portfolio
====================================== */
/* Portfolio grid */
.grid-item .portfolio-image img {
  width: 100%;
}
/* Portfolio filter */
/* Portfolio classic */
/* Portfolio boxed */
/* Mousetip */
/* Portfolio transform */
.portfolio-transform .portfolio-box {
  will-change: auto;
  overflow: visible;
}
.portfolio-transform .portfolio-box .portfolio-image {
  overflow: visible;
}
.portfolio-transform .portfolio-box .portfolio-image img {
  -webkit-transition: all 0.6s linear;
  transition: all 0.6s linear;
}
.portfolio-transform .portfolio-box:hover .portfolio-image img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
/* Portfolio creative */
/* Portfolio simple */
/* Portfolio modern */
/* Portfolio attractive */
/* Portfolio simple */
/* Portfolio clean */
/* Portfolio clean */
/* Portfolio and gallery translate animation */
.portfolio-box {
  overflow: hidden;
  will-change: transform;
}
.portfolio-box .portfolio-image {
  position: relative;
  overflow: hidden;
}
/* Portfolio pagination */
/* Grid loading */
@keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.grid-loading {
  overflow: hidden;
  position: relative;
  opacity: 1 !important;
  transition: all 0s ease-in-out !important;
  -webkit-transition: all 0s ease-in-out !important;
  z-index: 99;
}
.grid-loading::after {
  background: none;
  content: "" !important;
  position: absolute;
  top: 100px !important;
  left: calc(50% - 25px) !important;
  width: 50px !important;
  height: 50px !important;
  opacity: 1 !important;
  right: inherit !important;
  z-index: 9;
  text-align: center;
  border: 3px solid rgba(23, 23, 23, 0.2);
  border-top-color: rgba(23, 23, 23, 0.7);
  border-radius: 50%;
  animation: spin 1s linear infinite;
  -webkit-animation: spin 1s linear infinite;
}
.grid-loading:before {
  content: "";
  position: absolute;
  right: 2px;
  top: 1px;
  width: calc(100% - 4px);
  height: calc(100% - 2px);
  border-radius: inherit;
  z-index: 1;
}
.grid-loading .grid-item {
  visibility: hidden;
}
.grid-loading li .grid-item {
  overflow: hidden;
  opacity: 0;
}
/* Portfolio minimal */
/* Horizontal portfolio */
/* ===================================
   16. Shop
====================================== */
/* Categories style 01 */
/* Categories style 02 */
/* Categories style 03 */
/* Shop boxed */
/* Shop modern */
/* Shop sidebar */
/* Toolbar wrapper */
/* Shop lable */
/* Product detail */
/* Single product thumb vertical */
/* Shop color */
/* Shop size */
/* Shop quantity  */
/* Cart */
/* Checkout */
/* Minicart */
/* Shop category style 02 */
/* Shop banner style 01 */
/* ===================================
   17. Footer
====================================== */
footer {
  padding-top: 110px;
  padding-bottom: 110px;
}
footer .footer-logo img {
  max-height: 30px;
}
footer ul {
  padding: 0;
  list-style: none;
  margin: 0;
}
footer ul li {
  margin-bottom: 5px;
}
footer .nav-link {
  color: var(--medium-gray);
  padding: 0.5rem 1rem;
}
/* Footer dark  */
/* Footer light */
/* Footer navbar */
/* Footer sticky */
/* Landing page footer */