/* Define global CSS variables for theme colors and other constants */
:root {
  --theme-color: #007cfa;
  /* Primary theme color */
  --theme-color2: #fcc10f;
  /* Secondary theme color */
  --theme-color3: #007cfa;
  /* Another theme color, same as --theme-color */
  --title-color: #1f1f1f;
  /* Color for titles */
  --body-color: #797e88;
  /* Color for body text */
  --smoke-color: #f7f7f7;
  /* Light gray background color */
  --smoke-color2: #f6f6f6;
  /* Slightly darker gray background color */
  --black-color: #000000;
  /* Black color */
  --black-color2: #080e1c;
  /* Darker black color */
  --gray-color: #bdbdbd;
  /* Gray color */
  --white-color: #ffffff;
  /* White color */
  --light-color: #bdbdbd;
  /* Light gray color */
  --yellow-color: #ffb539;
  /* Yellow color */
  --gold-color: #ffd700;
  /* Gold color */
  --success-color: #28a745;
  /* Success message color */
  --error-color: #dc3545;
  /* Error message color */
  --th-border-color: #d8dde1;
  /* Border color for table headers */
  --dark-color: #021526;
  /* Dark background color */
  --title-font: "Archivo", sans-serif;
  /* Font for titles */
  --body-font: "DM Sans", sans-serif;
  /* Font for body text */
  --icon-font: "Font Awesome 6 Pro";
  /* Font for icons */
  --main-container: 1290px;
  /* Maximum width for the main container */
  --container-gutters: 30px;
  /* Spacing between columns in container */
  --section-space: 60px;
  /* Vertical space between sections */
  --section-space-mobile: 60px;
  /* Vertical space between sections on mobile */
  --section-title-space: 60px;
  /* Space for section titles */
  --ripple-ani-duration: 5s;
  /* Duration of ripple animation */
}

/* Animations for loader effect */
/* Keyframe for loader animation */
@keyframes animloader {
  0% {
    box-shadow: -38px -6px, -14px 6px, 14px -6px;
  }
  33% {
    box-shadow: -38px 6px, -14px -6px, 14px 6px;
  }
  66% {
    box-shadow: -38px -6px, -14px 6px, 14px -6px;
  }
  100% {
    box-shadow: -38px 6px, -14px -6px, 14px 6px;
  }
}
/* Animation for ripple effect */
/* Keyframe for ripple effect */
@keyframes ripple {
  0% {
    transform: scale(1);
    opacity: 0;
  }
  30% {
    opacity: 0.4;
  }
  100% {
    transform: scale(1.8);
    opacity: 0;
  }
}
/* Animation for second ripple effect with larger scaling */
/* Keyframe for second ripple effect */
@keyframes ripple2 {
  0% {
    transform: scale(1);
    opacity: 0;
  }
  30% {
    opacity: 0.4;
  }
  100% {
    transform: scale(2.8);
    opacity: 0;
  }
}
/* Animation for morphing effect */
/* Keyframe for morphing effect */
@keyframes morph {
  0% {
    border-radius: 60% 40% 30% 70%/60% 30% 70% 40%;
  }
  50% {
    border-radius: 30% 60% 70% 40%/50% 60% 30% 60%;
  }
  100% {
    border-radius: 60% 40% 30% 70%/60% 30% 70% 40%;
  }
}
/* Animation for scrolling effect */
/* Keyframe for scrolling effect */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-100% - var(--gap)));
  }
}
/* Animation for horizontal moving effect */
/* Keyframe for horizontal moving effect */
@keyframes movingX {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(50px);
  }
  100% {
    transform: translateX(0);
  }
}
/* Animation for car-like movement with rotation */
/* Keyframe for car-like movement with rotation */
@keyframes movingCar {
  0% {
    transform: translateX(0) rotateY(0);
  }
  50% {
    transform: translateX(calc(-100vw + 108%));
  }
  51% {
    transform: translateX(calc(-100vw + 108%)) rotateY(180deg);
  }
  100% {
    transform: translateX(0) rotateY(180deg);
  }
}
/* Animation for basic horizontal movement */
/* Keyframe for basic horizontal movement */
@keyframes moving {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-50px);
  }
  100% {
    transform: translateX(0);
  }
}
/* Jumping animation effect */
/* Keyframe for jumping animation effect */
@keyframes jumpAni {
  0% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  100% {
    transform: translateY(0);
  }
}
/* Reverse jumping animation effect */
/* Keyframe for reverse jumping animation effect */
@keyframes jumpReverseAni {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(50px);
  }
  100% {
    transform: translateY(0);
  }
}
/* spin animation effect */
@keyframes spin {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes bgColor {
  0% {
    background-color: #f2ba4c;
  }
  25% {
    background-color: #81f24c;
  }
  50% {
    background-color: #41f27d;
  }
  75% {
    background-color: #0500ff;
  }
  100% {
    background-color: #f2ba4c;
  }
}
/* zoom animation effect */
@keyframes animate-positive {
  0% {
    width: 0;
  }
}
/* fadin animation effect */
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* Slide-in animation from bottom (upwards) */
@keyframes slideinup {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Slide-in animation from right */
@keyframes slideinright {
  0% {
    opacity: 0;
    transform: translateX(180px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
/* Slide-in animation from top (downwards) */
@keyframes slideindown {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Slide-in animation from left */
@keyframes slideinleft {
  0% {
    opacity: 0;
    transform: translateX(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
/* Slide-in animation from bottom-right corner */
@keyframes slidebottomright {
  0% {
    opacity: 0;
    transform: translateX(120px) translateY(120px);
  }
  100% {
    opacity: 1;
    transform: translateX(0) translateY(0);
  }
}
/* Slide-in animation from top-left corner */
@keyframes slidetopleft {
  0% {
    opacity: 0;
    transform: translateX(-100px) translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateX(0) translateY(0);
  }
}
/* Sticky element animation */
@keyframes stickyAni {
  0% {
    transform: translate3d(0, -40px, 0) scaleY(0.8);
    opacity: 0.7;
  }
  100% {
    transform: translate3d(0, 0, 0) scaleY(1);
    opacity: 1;
  }
}
/* Animation for an SVG stroke drawing with fill effect */
@keyframes fillAni {
  0% {
    stroke-dashoffset: 5000;
    fill: transparent;
    opacity: 0.15;
  }
  99% {
    opacity: 0.2;
  }
  100% {
    stroke-dashoffset: 0;
    stroke-width: 1;
    fill: #cee3c6;
    opacity: 1;
  }
}
/* Round element fill animation */
@keyframes roundFill {
  0% {
    width: 0;
  }
  60% {
    width: 100%;
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* Bubble animation for an element rising */
@keyframes bubble-animation {
  0% {
    transform: translate3d(-50%, 0, 0);
    height: 1px;
    width: 1px;
  }
  100% {
    transform: translate3d(-50%, -280px, 0);
    height: 75px;
    width: 75px;
  }
}
/* Ripple animation */
.ripple-animation {
  animation-duration: var(--ripple-ani-duration);
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-name: ripple;
}

/* Fancy animation */
.fancy-animation {
  animation: morph 8s ease-in-out infinite;
}

/* Moving animations */
.movingX {
  animation: movingX 8s linear infinite;
}

.movingCar {
  animation: movingCar 25s linear infinite;
}

.moving {
  animation: moving 8s linear infinite;
}

/* Jump animations */
.jump {
  animation: jumpAni 7s linear infinite;
}

.jump-reverse {
  animation: jumpReverseAni 7s linear infinite;
}

/* Spin animation */
.spin {
  animation: spin 10s linear infinite;
}

/* Background and color animations */
.bg-color-ani {
  animation: bgColor 6s linear infinite;
}

.color-animate {
  animation: bgColor 6s linear infinite;
}

/* Zoom animation */
.zoom1 {
  animation: zoom1 5s infinite ease-in-out;
}

/* Fade and slide animations */
.fadein,
.rollinleft,
.rollinright,
.scalein,
.slidebottomright,
.slideindown,
.slideinleft,
.slideinright,
.slideinup,
.slidetopleft {
  opacity: 0;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-duration: 1.3s;
  animation-delay: 0.3s;
  animation-name: var(--animation-name);
}

/* Swiper slide animation variations */
.swiper-slide-active .fadein {
  --animation-name: fadein;
}
.swiper-slide-active .scalein {
  --animation-name: scalein;
}
.swiper-slide-active .slidetopleft {
  --animation-name: slidetopleft;
}
.swiper-slide-active .slidebottomright {
  --animation-name: slidebottomright;
}
.swiper-slide-active .slideinleft {
  --animation-name: slideinleft;
}
.swiper-slide-active .slideinright {
  --animation-name: slideinright;
}
.swiper-slide-active .slideinup {
  --animation-name: slideinup;
}
.swiper-slide-active .slideindown {
  --animation-name: slideindown;
}
.swiper-slide-active .rollinleft {
  --animation-name: rollinleft;
}
.swiper-slide-active .rollinright {
  --animation-name: rollinright;
}

/* Background theme with custom color */
.bg-theme {
  background-color: var(--theme-color) !important; /* Apply background color from variable */
}

/* Light smoke background color */
.bg-smoke {
  background-color: var(--smoke-color) !important; /* Apply light smoke color */
}

/* Second variation of smoke background */
.bg-smoke2 {
  background-color: var(--smoke-color2) !important; /* Apply second smoke color */
}

/* White background color */
.bg-white {
  background-color: var(--white-color) !important; /* Apply white background */
}

/* Black background color */
.bg-black {
  background-color: var(--black-color) !important; /* Apply black background */
}

/* Darker black background color */
.bg-black2 {
  background-color: var(--black-color2) !important; /* Apply darker black background */
}

/* Title section background color */
.bg-title {
  background-color: var(--title-color) !important; /* Apply title background color */
}

/* Gradient background for body */
.gradient-body { /* Webkit gradient */
  background-image: linear-gradient(100.62deg, rgba(249, 215, 175, 0.3) 0, rgba(214, 202, 245, 0.3) 24.03%, rgba(198, 241, 255, 0.3) 45.73%, rgba(248, 242, 222, 0.3) 69.05%, rgba(212, 179, 253, 0.3) 100.44%); /* Non-webkit gradient */
}

/* First gradient background variation */
.gr-bg1 { /* Webkit gradient */
  background-image: linear-gradient(80deg, rgba(249, 215, 175, 0.3) 0, rgba(214, 202, 245, 0.3) 23.81%, rgba(198, 241, 255, 0.3) 45.3%, rgba(248, 242, 222, 0.3) 68.4%, rgba(212, 179, 253, 0.3) 99.5%); /* Non-webkit gradient */
}

/* Second gradient background variation */
.gr-bg2 { /* Webkit gradient */
  background-image: linear-gradient(100.62deg, rgba(249, 215, 175, 0.3) 0, rgba(214, 202, 245, 0.3) 24.03%, rgba(198, 241, 255, 0.3) 45.73%, rgba(248, 242, 222, 0.3) 69.05%, rgba(212, 179, 253, 0.3) 100.44%); /* Non-webkit gradient */
}

/* Third gradient background variation with backdrop filter */
.gr-bg3 { /* Webkit gradient */
  background-image: linear-gradient(110.59deg, rgba(236, 207, 254, 0.4) 0, rgba(255, 221, 221, 0.5) 46.79%, rgba(247, 255, 229, 0.7) 100%); /* Non-webkit gradient */
  -webkit-backdrop-filter: blur(10px); /* Apply blur effect with Webkit */
  backdrop-filter: blur(10px); /* Apply blur effect */
}

/* Fourth gradient background variation with backdrop filter */
.gr-bg4 { /* Webkit gradient */
  background-image: linear-gradient(105.44deg, rgba(255, 229, 133, 0.4) 0, rgba(189, 255, 199, 0.4) 48.48%, rgba(223, 109, 223, 0.4) 100%); /* Non-webkit gradient */
  -webkit-backdrop-filter: blur(15px); /* Apply blur effect with Webkit */
  backdrop-filter: blur(15px); /* Apply blur effect */
}

/* General background image settings */
.background-image {
  background-repeat: no-repeat; /* Prevent background from repeating */
  background-size: cover; /* Make sure the background covers the entire element */
  background-position: center center; /* Center the background image */
}

/* Background image using a custom data attribute */
[data-bg-src] {
  background-repeat: no-repeat; /* Prevent background from repeating */
  background-size: cover; /* Make sure the background covers the entire element */
  background-position: center center; /* Center the background image */
}

/* Fluid background with 100% width and height */
.bg-fluid {
  background-repeat: no-repeat; /* Prevent background from repeating */
  background-size: 100% 100%; /* Stretch background to fit element */
  background-position: center center; /* Center the background image */
}

/* Auto-sized background */
.bg-auto {
  background-size: auto auto; /* Keep background at its original size */
}

/* Background aligned at the top center */
.bg-top-center {
  background-size: auto; /* Keep original size */
  background-position: top center; /* Align background at the top-center */
}

/* Background with repeating pattern */
.bg-repeat {
  background-size: auto; /* Keep original size */
  background-repeat: repeat; /* Repeat the background */
}

/* Background aligned at the bottom right */
.bg-bottom-right {
  background-size: auto; /* Keep original size */
  background-position: bottom right; /* Align background at the bottom-right */
}

/* Background aligned at the top right */
.bg-top-right {
  background-size: auto; /* Keep original size */
  background-position: top right; /* Align background at the top-right */
}

/* Background aligned at the top left */
.bg-top-left {
  background-size: auto; /* Keep original size */
  background-position: top left; /* Align background at the top-left */
}

/* General overlay styling */
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

/* Centering element with translation */
.position-center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/* Custom overlay styling based on data-overlay attribute */
[data-overlay] {
  position: relative;
  z-index: 2;
  /* Ensure columns have lower z-index than overlay */
  /* Overlay background styling */
}
[data-overlay] [class*=col-] {
  z-index: 1;
}
[data-overlay] [class^=col-] {
  z-index: 1;
}
[data-overlay]:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

/* Different background colors for specific overlay types */
[data-overlay=theme]:before {
  background-color: var(--theme-color);
}

[data-overlay=title]:before {
  background-color: var(--title-color);
}

[data-overlay=smoke]:before {
  background-color: var(--smoke-color);
}

[data-overlay=white]:before {
  background-color: var(--white-color);
}

[data-overlay=black]:before {
  background-color: var(--black-color);
}

[data-overlay=overlay1]:before {
  background-color: #080e1c;
}

/* Different opacity levels for overlay */
[data-opacity="1"]:before {
  opacity: 0.1;
}

[data-opacity="2"]:before {
  opacity: 0.2;
}

[data-opacity="3"]:before {
  opacity: 0.3;
}

[data-opacity="4"]:before {
  opacity: 0.4;
}

[data-opacity="5"]:before {
  opacity: 0.5;
}

[data-opacity="6"]:before {
  opacity: 0.6;
}

[data-opacity="7"]:before {
  opacity: 0.7;
}

[data-opacity="8"]:before {
  opacity: 0.8;
}

[data-opacity="9"]:before {
  opacity: 0.9;
}

[data-opacity="10"]:before {
  opacity: 1;
}

/* General Styles */
body {
  scroll-behavior: auto !important; /* Ensures normal scroll behavior, overriding any smooth scrolling settings */
  font-family: var(--body-font); /* Applies the primary font from the variables */
  font-size: 16px; /* Sets the base font size */
  font-weight: 400; /* Defines the standard font weight */
  color: var(--body-color); /* Sets the text color to a variable color */
  line-height: 26px; /* Adjusts line height for readability */
  overflow-x: hidden; /* Prevents horizontal scrolling */
  -webkit-font-smoothing: antialiased; /* Smoothens the fonts in webkit-based browsers (Chrome, Safari) */
}

html {
  scroll-behavior: auto !important; /* Normal scroll behavior for HTML */
}

/* Styles for iframe elements */
iframe {
  border: none; /* Removes any default border around iframe */
  width: 100%; /* Makes the iframe take full width of the container */
}

/* Slick Slider - Removes outline on focused elements */
.slick-slide:focus {
  outline: 0; /* Ensures no outline is visible when slider item is focused */
}

/* Link Styles */
a {
  color: var(--theme-color); /* Sets the default color for links */
  text-decoration: none; /* Prevents underline from appearing */
  outline: 0; /* Removes outline for better styling */
  transition: all ease 0.4s; /* Smooth transition for color change on hover */
}
a:active {
  outline: 0; /* Removes outline when link is active */
  text-decoration: none; /* Ensures no underline when the link is clicked */
}
a:focus {
  outline: 0; /* Removes outline on focus */
  text-decoration: none; /* Ensures no underline on focus */
}
a:hover {
  color: var(--title-color); /* Changes the color of the link on hover */
  text-decoration: none; /* Ensures no underline on hover */
}
a:visited {
  text-decoration: none; /* Ensures no underline for visited links */
}

/* Button Styles */
button {
  transition: all ease 0.4s; /* Smooth transition effect for buttons */
}
button:focus {
  outline: 0; /* Removes outline on focus */
}

/* Input and Textarea Styles */
input,
textarea {
  outline: 0; /* Removes outline when focused */
  height: 56px; /* Sets fixed height */
  padding: 0 25px; /* Adds padding to the left and right */
  padding-right: 45px; /* Adds extra padding on the right */
  border: 1px solid var(--th-border-color); /* Defines border style */
  color: var(--body-color); /* Sets the text color */
  border-radius: 27px; /* Rounded corners */
  font-size: 14px; /* Sets the font size */
  width: 100%; /* Full width input */
  font-family: var(--body-font); /* Font family */
  transition: 0.4s ease-in-out; /* Smooth transition for focus and hover effects */
  background-color: var(--white-color); /* Background color */
}
input:focus,
textarea:focus {
  outline: 0; /* Removes outline on focus */
  box-shadow: none; /* Removes box-shadow */
  border-color: var(--th-border-color); /* Focus border color */
  background-color: var(--smoke-color2); /* Focus background color */
}
input::-moz-placeholder, textarea::-moz-placeholder {
  color: var(--body-color); /* Placeholder text color */
}
input::placeholder,
textarea::placeholder {
  color: var(--body-color); /* Placeholder text color */
}
input::-webkit-inner-spin-button, input::-webkit-outer-spin-button,
textarea::-webkit-inner-spin-button,
textarea::-webkit-outer-spin-button {
  -webkit-appearance: none; /* Hides spin buttons in input fields */
  margin: 0; /* Removes margin */
}

/* Embed Elements */
embed {
  max-width: 100%; /* Makes embedded content responsive */
  height: auto; /* Ensures the height adjusts automatically */
}

/* Image Styles */
img {
  border: none; /* Removes border around images */
}
img:not([draggable]) {
  max-width: 100%; /* Ensures images scale to fit container */
  height: auto; /* Automatically adjusts height */
}

/* Object Elements */
object {
  max-width: 100%; /* Makes object responsive */
  height: auto; /* Ensures height adjusts accordingly */
}

/* Video Styles */
video {
  max-width: 100%; /* Makes video responsive */
  height: auto; /* Adjusts height automatically */
}

/* List Styles */
ul {
  list-style-type: disc; /* Adds bullet points for unordered lists */
}

ol {
  list-style-type: decimal; /* Numbers ordered lists */
}

/* Table Styles */
table {
  margin-bottom: 1.5em; /* Adds margin below table */
  width: 100%; /* Ensures the table is responsive */
  border-collapse: collapse; /* Collapses table borders into a single line */
  border-spacing: 0; /* Removes space between table cells */
  border: 1px solid var(--th-border-color); /* Defines table border */
}

/* Table Header Styles */
th {
  font-weight: 700; /* Sets font weight for table headers */
  color: var(--title-color); /* Sets the text color for table headers */
  border: 1px solid var(--th-border-color); /* Border for table headers */
  padding: 9px 12px; /* Adds padding inside header cells */
}

/* Table Data Cells */
td {
  border: 1px solid var(--th-border-color); /* Adds border for data cells */
  padding: 9px 12px; /* Adds padding inside data cells */
}

/* Preformatted Text */
pre {
  font-family: var(--body-font); /* Sets font for preformatted text */
  background: #f5f5f5; /* Background color */
  color: #666; /* Sets color for text */
  font-size: 14px; /* Font size */
  margin: 20px 0; /* Adds space around preformatted text */
  overflow: auto; /* Enables scrolling for long content */
  padding: 20px; /* Padding inside preformatted block */
  white-space: pre-wrap; /* Ensures the text wraps */
  word-wrap: break-word; /* Breaks long words in preformatted text */
}

/* Paragraph Styles */
p {
  font-family: var(--body-font); /* Font family */
  margin-bottom: 18px; /* Margin below paragraph */
  color: var(--body-color); /* Text color */
  line-height: 1.75; /* Line height for better readability */
}
p:empty {
  display: none; /* Hides empty paragraphs */
}
p a {
  font-size: inherit; /* Inherits font size from parent */
  font-family: inherit; /* Sets font family for links */
  font-weight: inherit; /* Inherits font weight */
  line-height: inherit; /* Inherits line-height */
}

/* Heading Styles */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--title-font); /* Font family for headings */
  color: var(--title-color); /* Heading text color */
  font-weight: 700; /* Font weight */
  line-height: 1.4; /* Line height */
  margin-bottom: 15px; /* Adds space below headings */
}

h1 {
  font-size: 54px; /* Font size for h1 */
  line-height: 1.18; /* Line height for h1 */
}

h2 {
  font-size: 48px; /* Font size for h2 */
  line-height: 1.12; /* Line height for h2 */
}

h3 {
  font-size: 36px; /* Font size for h3 */
  line-height: 1.278; /* Line height for h3 */
}

h4 {
  font-size: 30px; /* Font size for h4 */
  line-height: 1.333; /* Line height for h4 */
}

h5 {
  font-size: 24px; /* Font size for h5 */
  line-height: 1.417; /* Line height for h5 */
}

h6 {
  font-size: 20px; /* Font size for h6 */
  line-height: 1.5; /* Line height for h6 */
}

/* Gallery Container Styles */
.container-gallery {
  max-width: 1840px; /* Sets a max-width for gallery containers */
}

/* Slick Track Styles for Grid Layout */
.slick-track > [class*=col] {
  flex-shrink: 0; /* Prevents columns from shrinking */
  width: 100%; /* Makes each column take full width */
  padding-right: calc(var(--bs-gutter-x) / 2); /* Adds right padding */
  padding-left: calc(var(--bs-gutter-x) / 2); /* Adds left padding */
  margin-top: var(--bs-gutter-y); /* Adds top margin */
}

/* Spacer Utility Classes for Spacing */
.gy-30,
.gy-40,
.gy-50 {
  --bs-gutter-y: 30px; /* Defines vertical gutter spacing */
}

.g-0 {
  --bs-gutter-x: 0; /* No horizontal gutter spacing */
  --bs-gutter-y: 0; /* No vertical gutter spacing */
}

.gx-0 {
  --bs-gutter-x: 0; /* No horizontal gutter spacing */
}

.gy-10 {
  --bs-gutter-y: 10px; /* Defines vertical gutter spacing of 10px */
}

/* General form control styling */
.form-control {
  height: 56px; /* Set height of input */
  padding: 0 25px 0 25px; /* Add padding on left and right */
  padding-right: 45px; /* Extra padding on the right for icons */
  border: 1px solid var(--th-border-color); /* Border color */
  color: var(--body-color); /* Text color */
  border-radius: 27px; /* Rounded corners */
  font-size: 14px; /* Font size */
  width: 100%; /* Full width */
  font-family: var(--body-font); /* Font family */ /* Smooth transition on focus */
  transition: 0.4s ease-in-out; /* Smooth transition on focus */
  background-color: var(--white-color); /* Background color */
  /* Focus styles */
  /* Placeholder styles */
}
.form-control:focus {
  outline: 0; /* Remove outline */
  box-shadow: none; /* No shadow */
  border-color: var(--th-border-color); /* Focus border color */
  background-color: var(--smoke-color2); /* Focus background color */
}
.form-control::-moz-placeholder {
  color: var(--body-color); /* Placeholder text color */
}
.form-control::placeholder {
  color: var(--body-color); /* Placeholder text color */
}

/* Select input styling */
.form-select {
  height: 56px;
  padding: 0 25px 0 25px;
  padding-right: 45px;
  border: 1px solid var(--th-border-color);
  color: var(--body-color);
  border-radius: 27px;
  font-size: 14px;
  width: 100%;
  font-family: var(--body-font);
  transition: 0.4s ease-in-out;
  background-color: var(--white-color);
  display: block;
  width: 100%;
  line-height: 1.5;
  vertical-align: middle;
  /* Background image for dropdown arrow */
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");
  background-position: right 26px center;
  background-repeat: no-repeat;
  background-size: 16px 12px;
  -webkit-appearance: none; /* Remove default styling */
  -moz-appearance: none; /* Remove default styling */
  appearance: none; /* Remove default styling */
  cursor: pointer;
  /* Focus styles */
  /* Placeholder styles */
}
.form-select:focus {
  outline: 0;
  box-shadow: none;
  border-color: var(--th-border-color);
  background-color: var(--smoke-color2);
}
.form-select::-moz-placeholder {
  color: var(--body-color);
}
.form-select::placeholder {
  color: var(--body-color);
}

/* Custom select styles */
.select.style2 {
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='6' viewBox='0 0 11 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.87109 1.71094L5.71484 5.62109C5.56901 5.7487 5.41406 5.8125 5.25 5.8125C5.08594 5.8125 4.9401 5.7487 4.8125 5.62109L0.65625 1.71094C0.382812 1.40104 0.373698 1.09115 0.628906 0.78125C0.920573 0.507812 1.23047 0.498698 1.55859 0.753906L5.25 4.25391L8.96875 0.753906C9.27865 0.498698 9.57943 0.498698 9.87109 0.753906C10.1263 1.08203 10.1263 1.40104 9.87109 1.71094Z' fill='%238B929C'/%3E%3C/svg%3E");
}

/* Textarea styling */
textarea.form-control {
  min-height: 154px; /* Default height for textarea */
  padding-top: 16px; /* Padding for top */
  padding-bottom: 17px; /* Padding for bottom */
}

textarea.form-control.style2 {
  min-height: 100px; /* Shorter height for textarea style2 */
}

/* Form group container */
.form-group {
  margin-bottom: var(--bs-gutter-x); /* Bottom margin */
  position: relative; /* For absolute positioning of icons */
  /* Icon styling */
  /* Specific icon styling */
}
.form-group > i {
  display: inline-block;
  position: absolute;
  right: 25px;
  top: 19px;
  font-size: 16px;
  color: var(--body-color);
}
.form-group > i.fa-envelope {
  padding-top: 1px;
}
.form-group > i.fa-comment {
  margin-top: -2px;
}
.form-group > i.fa-chevron-down {
  width: 17px;
  background-color: var(--smoke-color2);
}

/* Styling for input borders */
.form-group.style-border input,
.form-group.style-border textarea {
  background-color: transparent; /* Light background */
  border: 1px solid var(--th-border-color); /* Border color */
}

/* Styling for white background inputs */
.form-group.style-white input,
.form-group.style-white textarea {
  background-color: var(--white-color); /* White background */
  border: 1px solid var(--smoke-color); /* Border color */
}

/* Checkbox and radio button styling */
input[type=checkbox],
input[type=radio] {
  visibility: hidden; /* Hide the default checkbox/radio */
  opacity: 0;
  display: inline-block;
  width: 0;
  height: 0;
  /* Custom label styling for checkbox/radio */
}
input[type=checkbox]:checked ~ label:before,
input[type=radio]:checked ~ label:before {
  content: "\f00c"; /* Checked icon */
  color: var(--white-color);
  background-color: var(--theme-color);
  border-color: var(--theme-color);
}
input[type=checkbox] ~ label,
input[type=radio] ~ label {
  position: relative;
  padding-left: 30px;
  cursor: pointer;
  display: block;
}
input[type=checkbox] ~ label:before,
input[type=radio] ~ label:before {
  content: "";
  font-family: var(--icon-font);
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 3.5px;
  background-color: var(--white-color);
  border: 1px solid var(--th-border-color);
  height: 18px;
  width: 18px;
  line-height: 18px;
  text-align: center;
  font-size: 12px;
}

/* Label styling */
label {
  margin-bottom: 0.5em; /* Bottom margin for label */
  margin-top: -0.3em; /* Top margin for label */
  display: block;
  color: var(--title-color); /* Label color */
  font-family: var(--body-font);
  font-size: 16px; /* Font size for label */
}

/* Form validation styles */
.was-validated input:invalid {
  border: 1px solid var(--error-color) !important; /* Invalid input border */
  background-position: right calc(0.375em + 0.8875rem) center;
  background-image: none;
}

/* Error and success message styling */
.form-messages.success {
  color: var(--success-color); /* Success color */
  display: block;
}

.form-messages.error {
  color: var(--error-color); /* Error color */
  display: block;
}

/* Styling for the swiper wrapper with row layout */
.swiper-wrapper.row { /* Ensures flex items don't wrap in WebKit browsers */ /* Ensures flex items don't wrap in Internet Explorer */
  flex-wrap: nowrap; /* Prevents wrapping of flex items */
}

/* Styling for slider with shadow effect */
.th-slider.has-shadow {
  padding-left: 12px; /* Left padding */
  padding-right: 12px; /* Right padding */
  margin: -25px -12px; /* Negative margins for tighter positioning */
  /* Styling for swiper wrapper within the slider */
}
.th-slider.has-shadow .swiper-wrapper {
  padding: 25px 0; /* Padding above and below the swiper wrapper */
}

/* Fade effect for swiper slides */
.swiper-fade .swiper-slide { /* Smooth transition for WebKit browsers */
  transition: 0.6s ease-in-out; /* Smooth transition for non-WebKit browsers */
}
.swiper-fade .swiper-slide-prev {
  opacity: 0; /* Set previous slide opacity to 0 for fade effect */
}

/* Styling for swiper pagination bullets */
.swiper-pagination-bullets {
  position: relative; /* Allows positioning of bullet elements */
  z-index: 3; /* Layering the pagination bullets */
  text-align: center; /* Centering the bullets */
  margin: 50px 0 -7px 0; /* Vertical spacing for bullets */
  line-height: 10px; /* Line height for bullets */
  height: 10px; /* Height for bullets */
  /* Styling for each individual bullet */
  /* Active state for the bullet */
}
.swiper-pagination-bullets .swiper-pagination-bullet {
  display: inline-block; /* Display bullets inline */
  --swiper-pagination-bullet-size: 10px; /* Custom size for bullets */
  --swiper-pagination-bullet-horizontal-gap: 8px; /* Horizontal gap between bullets */
  margin: 5px 7px; /* Margin around each bullet */
  opacity: 1; /* Full opacity for bullets */
  background-color: var(--theme-color); /* Bullet background color */
  position: relative; /* Positioning for absolute children */
  cursor: pointer; /* Pointer cursor on hover */
  /* Styling for before pseudo-element (border effect) */
}
.swiper-pagination-bullets .swiper-pagination-bullet:before {
  content: ""; /* Empty content for the pseudo-element */
  position: absolute; /* Absolute positioning */
  inset: -5px; /* Extend the border outside the bullet */
  border: 1px solid var(--theme-color); /* Border color */ /* Scale for WebKit browsers */ /* Scale for Internet Explorer */
  transform: scale(0.2); /* Initial scale */
  border-radius: inherit; /* Inherit border radius from parent */ /* Smooth transition for WebKit */
  transition: 0.4s ease-in-out; /* Smooth transition */
}
.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--theme-color); /* Change background color */
  /* Animation for scaling the border */
}
.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active:before { /* Scale to 1 for WebKit */ /* Scale to 1 for Internet Explorer */
  transform: scale(1); /* Scale to 1 */
}

/* Style for a different variant of pagination bullets */
.style-2.swiper-pagination-bullets {
  /* Active state for style 2 pagination bullets */
}
.style-2.swiper-pagination-bullets .swiper-pagination-bullet {
  display: inline-block; /* Inline display for bullets */
  --swiper-pagination-bullet-size: 4px; /* Smaller bullet size */
  --swiper-pagination-bullet-horizontal-gap: 0px; /* No gap between bullets */
  margin: 0; /* No margin between bullets */
  opacity: 1; /* Full opacity */
  background-color: var(--theme-color); /* Background color */
  position: relative; /* Positioning for absolute children */
  cursor: pointer; /* Pointer cursor on hover */
  width: 20%; /* Width of each bullet */
  border-radius: 0; /* No rounded corners */
  background-color: var(--th-border-color); /* Different background color */
  /* Border styling for the pseudo-element */
}
.style-2.swiper-pagination-bullets .swiper-pagination-bullet::before {
  inset: 0; /* Stretch to fit the bullet */
  border: 2px solid var(--theme-color); /* Border around the bullet */
}
.style-2.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--theme-color); /* Change background color */
}

/* Styling for the slider container area */
.slider-area {
  position: relative; /* Relative positioning for slider components */
}

/* Styling for slider arrows */
.slider-arrow {
  display: inline-block; /* Inline-block display for arrows */
  padding: 0; /* No padding */
  background-color: var(--theme-color); /* Background color for arrows */
  color: var(--white-color); /* Color for arrows */
  position: absolute; /* Absolute positioning */
  top: 50%; /* Vertically center the arrows */
  border: none; /* Remove default border */
  left: var(--pos-x, -120px); /* Left position with custom property */
  width: var(--icon-size, 56px); /* Width defined by custom property */
  height: var(--icon-size, 56px); /* Height defined by custom property */
  line-height: var(--icon-size, 56px); /* Line height for centering the text */
  font-size: var(--icon-font-size, 18px); /* Font size for the arrow icon */
  margin-top: calc(var(--icon-size, 56px) / -2); /* Center the arrow vertically */
  z-index: 3; /* Layering for visibility */
  border-radius: 99px; /* Rounded arrow shape */
  /* Hover effect for arrows */
}
.slider-arrow:hover {
  background-color: var(--theme-color2); /* Change background color */
  color: var(--white-color); /* Change arrow color */
}

/* Default positioning for the left slider arrow */
.slider-arrow.default {
  position: relative;
  --pos-x: 0; /* Default left position */
  margin-top: 0; /* Reset top margin */
}

/* Positioning for the next arrow (right side) */
.slider-arrow.slider-next {
  right: var(--pos-x, -120px); /* Right positioning */
  left: auto; /* Reset left property */
}

/* Adjust vertical positioning for arrows */
.arrow-margin .slider-arrow {
  top: calc(50% - 30px); /* Adjust top position */
}

/* Wrapping the arrows for hover effect */
.arrow-wrap {
  position: relative;
  /* Arrow default hidden state */
  /* Hover effect for the arrow wrapper */
}
.arrow-wrap .slider-arrow {
  opacity: 0; /* Make arrows invisible */
  visibility: hidden; /* Hide the arrows */ /* Scale down for WebKit browsers */ /* Scale down for Internet Explorer */
  transform: scale(0.4); /* Scale down */
}
.arrow-wrap:hover .slider-arrow {
  opacity: 1; /* Make arrows visible */
  visibility: visible; /* Show the arrows */ /* Scale to normal size for WebKit */ /* Scale to normal size for Internet Explorer */
  transform: scale(1); /* Scale to normal size */
}

/* Styling for the icon box, specifically for the slider arrows inside it */
.icon-box .slider-arrow {
  /* Add margin-right to all slider arrows except the last one */
}
.icon-box .slider-arrow:not(:last-child) {
  margin-right: 8px; /* Right margin for spacing between arrows */
}

/* Styling for the active 3D slick slider */
.slick-3d-active {
  /* Negative margins to create an overlapping effect */
  margin-left: -12%; /* Shift the slider content to the left */
  margin-right: -12%; /* Shift the slider content to the right */
  /* Styling for the slick list to control inner padding */
  /* Styling for the slick track to control slider movement */
  /* Styling for slick slides */
  /* Styling for the next slick slide in the 3D view */
  /* Styling for the second next slick slide in the 3D view */
  /* Styling for the previous slick slide in the 3D view */
  /* Styling for the second previous slick slide in the 3D view */
  /* Styling for the current slick slide */
}
.slick-3d-active .slick-list {
  padding-left: 30% !important; /* Padding on the left side */
  padding-right: 30% !important; /* Padding on the right side */
}
.slick-3d-active .slick-track {
  max-width: 100% !important; /* Ensure track width is 100% */ /* Reset 3D transform for WebKit browsers */
  transform: translate3d(0, 0, 0) !important; /* Reset 3D transform */ /* Set 3D perspective for WebKit */
  perspective: 100px; /* Set 3D perspective */
}
.slick-3d-active .slick-slide {
  position: absolute; /* Absolute positioning for precise placement */
  top: 0; /* Align to the top */
  left: 0; /* Align to the left */
  right: 0; /* Align to the right */
  bottom: 0; /* Align to the bottom */
  margin: auto; /* Center the slides */
  opacity: 0; /* Initially set opacity to 0 for hidden state */
  width: 100% !important; /* Ensure slide takes full width */ /* Reset 3D transform for WebKit */
  transform: translate3d(0, 0, 0); /* Reset 3D transform */ /* Smooth transition for opacity and transform for WebKit */ /* Smooth transition for opacity and transform */
  transition: transform 1s, opacity 1s; /* Smooth transition for transform and opacity */ /* Full transition including all states */
}
.slick-3d-active .slick-3d-next {
  display: block; /* Make the next slide visible */
  opacity: 1; /* Full opacity */ /* Move next slide slightly to the right and adjust Z-axis for 3D effect */
  transform: translate3d(50%, 0, -21px); /* Same transformation for non-WebKit browsers */
  z-index: 1; /* Ensure next slide is above the others */ /* 3D perspective for WebKit */
  perspective: 1000px; /* 3D perspective */
}
.slick-3d-active .slick-3d-next2 {
  display: block; /* Make the next2 slide visible */
  opacity: 1; /* Full opacity */ /* Slightly adjust the second next slide */
  transform: translate3d(40%, 0, -23px); /* Same transformation for non-WebKit browsers */
  z-index: 0; /* Set the second next slide behind the next slide */ /* 3D perspective for WebKit */
  perspective: 1000px; /* 3D perspective */
}
.slick-3d-active .slick-3d-prev {
  display: block; /* Make the previous slide visible */
  opacity: 1; /* Full opacity */ /* Move previous slide slightly to the left */
  transform: translate3d(-50%, 0, -21px); /* Same transformation for non-WebKit browsers */
  /* Remove box-shadow from the testi-card element within the previous slide */
}
.slick-3d-active .slick-3d-prev .testi-card {
  box-shadow: none; /* Remove shadow effect */
}
.slick-3d-active .slick-3d-prev2 {
  display: block; /* Make the previous2 slide visible */
  opacity: 1; /* Full opacity */ /* Adjust the second previous slide */
  transform: translate3d(-40%, 0, -23px); /* Same transformation for non-WebKit browsers */
}
.slick-3d-active .slick-current {
  opacity: 1; /* Full opacity */
  position: relative; /* Relative positioning to allow for layering */
  display: block; /* Ensure the current slide is visible */
  z-index: 2; /* Set current slide above others */
}

/* 
-------------------------------------
General Button Styles (.th-btn)
-------------------------------------
*/
.th-btn {
  position: relative;
  z-index: 1;
  overflow: hidden;
  vertical-align: middle;
  display: inline-block;
  border: none;
  text-transform: uppercase;
  text-align: center;
  background-color: var(--theme-color);
  color: var(--white-color);
  font-family: var(--body-font);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  padding: 21px 44px;
  min-width: 170px;
  border-radius: 30px;
  box-shadow: var(--theme-color) 0 3px 8px -2px;
  transition: all 1s cubic-bezier(0.05, 0.83, 0.43, 0.96);
  transition: all 0.3s ease-in-out;
  position: relative;
  overflow: hidden;
  /* 
  -------------------------------------
  Light Reflection Effect on Button Hover
  -------------------------------------
  */
  /* Icon Size Inside Button */
  /* 
  -------------------------------------
  Button Hover Effects
  -------------------------------------
  */
  /* 
  -------------------------------------
  Special Button Variants with Unique Hover Effects
  -------------------------------------
  */
}
.th-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -85%;
  width: 200%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
  transform: skewX(-45deg);
  transition: all 0.4s ease;
}
.th-btn i {
  font-size: 0.95em;
}
.th-btn:hover {
  color: #333;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  background: var(--theme-color2);
  transform: translateY(-3px);
  transform: scale(1.02);
  /* Move Light Reflection Effect */
}
.th-btn:hover::before {
  left: 110%;
}
.th-btn:hover.star-btn::before {
  top: 14%;
  left: 11%;
  transform: scale(0.9);
}
.th-btn:hover.star-btn::after {
  top: 15%;
  left: 62%;
  transform: scale(1.3);
}
.th-btn:hover.star-btn2::before {
  top: 14%;
  left: 11%;
  transform: scale(0.9);
}
.th-btn:hover.star-btn2::after {
  top: 15%;
  left: 62%;
  transform: scale(1.3);
}

/* 
-------------------------------------
Active State for .th-btn
-------------------------------------
*/
.th-btn.active {
  color: #333;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  background: var(--theme-color2);
  transform: translateY(-3px);
}

/* 
-------------------------------------
Active State for Theme Button (.bg-theme2)
-------------------------------------
*/
.bg-theme2.active {
  color: var(--white-color) !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
  background: var(--theme-color) !important;
  transform: translateY(-3px);
}

/* 
-------------------------------------
Hover Effects for .bg-theme2
-------------------------------------
*/
.bg-theme2 {
  background-color: var(--theme-color2) !important;
}
.bg-theme2:hover {
  color: var(--white-color) !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
  background: var(--theme-color) !important;
  transform: translateY(-3px);
}

/* 
-------------------------------------
Button Style Variants
-------------------------------------
*/
/* 
Style 2: Outlined Button with Border 
-------------------------------------
*/
.th-btn.style2 {
  background-color: transparent;
  color: var(--title-color);
  border: 1px solid var(--th-border-color);
  padding: 20px 40px;
  box-shadow: none;
}
.th-btn.style2:hover {
  color: var(--theme-color);
  border-color: var(--theme-color);
}
.th-btn.style2:hover:after {
  background-color: var(--white-color);
}
.th-btn.style2:hover:before {
  background-color: var(--white-color);
}

/* 
Style 3: Button with Hover Background Change 
-------------------------------------
*/
.th-btn.style3:hover {
  color: var(--title-color);
}
.th-btn.style3:hover:after {
  background-color: var(--white-color);
}
.th-btn.style3:hover:before {
  background-color: var(--white-color);
}

/* 
Style 4: Button with Expanding Background Effect 
-------------------------------------
*/
.th-btn.style4 {
  background-color: var(--theme-color2);
  color: var(--title-color);
  box-shadow: none;
  /* Expanding Background Effect (Left Side) */
  /* Expanding Background Effect (Right Side) */
}
.th-btn.style4:before {
  content: "";
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  width: 0%;
  background-color: var(--title-color);
  z-index: -1;
  transition: all 0.4s ease-out;
}
.th-btn.style4:after {
  content: "";
  position: absolute;
  height: 100%;
  top: 0;
  right: 0;
  width: 0%;
  background-color: var(--title-color);
  z-index: -1;
  transition: all 0.4s ease-out;
}
.th-btn.style4:hover {
  color: var(--white-color);
}
.th-btn.style4:hover:after {
  background-color: var(--title-color);
  width: 100%;
}
.th-btn.style4:hover:before {
  background-color: var(--title-color);
  width: 100%;
}

/* 
Style 5: Simple Button with Background Change on Hover
-------------------------------------
*/
.th-btn.style5 {
  background-color: var(--theme-color);
  color: var(--white-color);
}
.th-btn.style5:hover {
  color: var(--theme-color);
}
.th-btn.style5:hover:after {
  background-color: var(--white-color);
}
.th-btn.style5:hover:before {
  background-color: var(--white-color);
}

/* 
Style 6: Dark Background Button
-------------------------------------
*/
.th-btn.style6 {
  background-color: var(--title-color);
}
.th-btn.style6:hover {
  color: var(--theme-color);
}
.th-btn.style6:hover:after {
  background-color: var(--white-color);
}
.th-btn.style6:hover:before {
  background-color: var(--white-color);
}

/* 
-------------------------------------
Button Variants with Special Styles
-------------------------------------
*/
/* Full-Width Button Style (.th-btn.btn-fw)
   - Button stretches to 100% width
   - Disables the before and after pseudo-elements for this button
*/
.th-btn.btn-fw {
  width: 100%;
  /* Hide the before and after pseudo-elements */
  /* Hover effect changes background color */
}
.th-btn.btn-fw:after {
  display: none;
}
.th-btn.btn-fw:before {
  display: none;
}
.th-btn.btn-fw:hover {
  background-color: var(--title-color);
}

/* Small Button Style (.th-btn.btn-sm)
   - Adjusts padding and minimum width for a smaller button
*/
.th-btn.btn-sm {
  padding: 16px 25px;
  min-width: 152px;
}

/* Icon Button Styles (.icon-btn)
   - Standard button with a round shape and icon size customization
   - Transition effect on hover
*/
.icon-btn {
  display: inline-block;
  width: var(--btn-size, 56px);
  height: var(--btn-size, 56px);
  line-height: var(--btn-size, 54px);
  font-size: var(--btn-font-size, 20px);
  background-color: var(--icon-bg, rgba(247, 247, 247, 0));
  color: var(--title-color);
  text-align: center;
  border-radius: 0;
  border: 1px solid var(--th-border-color);
  transition: 0.4s ease-in-out;
  position: relative;
  /* Hover effect changes background color, text color, and border */
}
.icon-btn:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
  border-color: var(--theme-color);
}

/* Icon Button Style 2 (.icon-btn.style2)
   - Round button with no border and a different hover effect
*/
.icon-btn.style2 {
  background-color: var(--theme-color);
  color: var(--white-color);
  border: none;
  border-radius: 99px;
  /* Hover effect changes background color */
}
.icon-btn.style2:hover {
  background-color: var(--theme-color2);
}

/* Theme Background Button Style 3 (.th-btn.btn-bg-theme-3)
   - Applies a custom background and box shadow based on the theme color 3
*/
.th-btn.btn-bg-theme-3 {
  background: var(--theme-color3);
  box-shadow: var(--theme-color3) 0 3px 8px -2px;
}

/* Theme Background Button Style 2 (.th-btn.btn-bg-theme-2)
   - Applies a custom background, box shadow, and text color from theme color 2
*/
.th-btn.btn-bg-theme-2 {
  background: var(--theme-color2);
  box-shadow: var(--theme-color2) 0 3px 8px -2px;
  color: var(--title-color);
}

/* 
-------------------------------------
Play Button Styles
-------------------------------------
*/
/* Play Button (Primary Style) */
.play-btn {
  display: inline-block;
  position: relative;
  z-index: 1;
  /* Icon inside the button */
  /* Ripple effect behind the icon */
  /* Ripple effect for the before pseudo-element */
  /* Hover effect */
}
.play-btn > i {
  display: inline-block;
  width: var(--icon-size, 100px);
  height: var(--icon-size, 100px);
  line-height: var(--icon-size, 100px);
  text-align: center;
  background-color: transparent;
  color: var(--white-color);
  font-size: var(--icon-font-size, 1.4em);
  border-radius: 50%;
  z-index: 1;
  transition: all ease 0.4s;
  border: 3px solid var(--white-color);
}
.play-btn:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: var(--white-color);
  z-index: -1;
  border-radius: 50%;
  transition: all ease 0.4s;
  animation-delay: 2s;
  animation-duration: var(--ripple-ani-duration);
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-name: ripple;
}
.play-btn:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: var(--white-color);
  z-index: -1;
  border-radius: 50%;
  transition: all ease 0.4s;
  animation-duration: var(--ripple-ani-duration);
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-name: ripple;
}
.play-btn:hover i {
  background-color: var(--theme-color);
  color: var(--white-color);
}
.play-btn:hover::before {
  background-color: var(--theme-color);
  color: var(--white-color);
}
.play-btn:hover:after {
  background-color: var(--theme-color);
  color: var(--white-color);
}

/* Play Button Style 2 (Alternative Design) */
.play-btn.style2:after {
  background-color: transparent;
  border: 3px solid var(--theme-color);
}
.play-btn.style2:before {
  background-color: transparent;
  border: 3px solid var(--theme-color);
}

/* Play Button Style 3 (Smaller Icon) */
.play-btn.style3 {
  /* Hover effect for style3 */
}
.play-btn.style3 > i {
  --icon-size: 40px;
  font-size: 14px;
  border: 1px solid;
  background-color: var(--theme-color);
  color: var(--white-color);
}
.play-btn.style3:after {
  background-color: var(--white-color);
}
.play-btn.style3:before {
  background-color: var(--white-color);
}
.play-btn.style3:hover > i {
  background-color: var(--white-color);
  color: var(--theme-color);
}
.play-btn.style3:hover:after {
  background-color: var(--white-color);
}
.play-btn.style3:hover:before {
  background-color: var(--white-color);
}

/* 
-------------------------------------
Link Button Styles
-------------------------------------
*/
/* Link Button (Simple Design) */
.link-btn {
  font-weight: 500;
  font-size: 16px;
  display: inline-block;
  line-height: 0.8;
  position: relative;
  padding-bottom: 2px;
  margin-bottom: -2px;
  text-transform: capitalize;
  color: var(--title-color);
  /* Icon within the link */
  /* Underline effect */
  /* Hover effect */
}
.link-btn i {
  margin-left: 1px;
  transform: rotate(-45deg);
  font-size: 14px;
  transition: 0.4s;
}
.link-btn:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: var(--title-color);
  transition: all ease 0.4s;
}
.link-btn:hover {
  color: var(--theme-color);
}
.link-btn:hover::before {
  width: 0%;
}
.link-btn:hover i {
  transform: rotate(0);
}

/* 
-------------------------------------
Line Button Styles
-------------------------------------
*/
/* Line Button (Uppercase Text) */
.line-btn {
  font-size: 14px;
  font-weight: 600;
  display: inline-block;
  line-height: 0.8;
  position: relative;
  padding-bottom: 4px;
  margin-bottom: -1px;
  text-transform: uppercase;
  color: var(--title-color);
  /* Icon within the button */
  /* Underline effect */
  /* Hover effect */
}
.line-btn i {
  margin-left: 5px;
  font-size: 0.9rem;
}
.line-btn:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: var(--title-color);
  transition: all ease 0.4s;
}
.line-btn:hover {
  color: var(--theme-color);
}
.line-btn:hover::before {
  background-color: var(--theme-color);
  width: 45px;
}

/* 
-------------------------------------
Scroll Top Button Styles
-------------------------------------
*/
/* Scroll to Top Button */
.scroll-top {
  position: fixed;
  right: 30px;
  bottom: 30px;
  height: 50px;
  width: 50px;
  cursor: pointer;
  display: block;
  border-radius: 50px;
  z-index: 10000;
  opacity: 1;
  visibility: hidden;
  transform: translateY(45px);
  transition: all 0.3s linear;
  /* Arrow Icon for Scroll */
  /* SVG icon customization */
  /* Progress circle animation */
}
.scroll-top:after {
  content: "\f062";
  /* FontAwesome Icon */
  font-family: var(--icon-font);
  position: absolute;
  text-align: center;
  line-height: 50px;
  font-size: 20px;
  color: var(--theme-color);
  left: 0;
  top: 0;
  height: 50px;
  width: 50px;
  cursor: pointer;
  display: block;
  z-index: 1;
  border: 2px solid var(--theme-color);
  box-shadow: none;
  border-radius: 50%;
}
.scroll-top svg {
  color: var(--theme-color);
  border-radius: 50%;
  background: var(--white-color);
}
.scroll-top svg path {
  fill: none;
}
.scroll-top .progress-circle path {
  stroke: var(--theme-color);
  stroke-width: 20px;
  box-sizing: border-box;
  transition: all 0.4s linear;
}

/* Scroll Top Button visible on page */
.scroll-top.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.btn-group {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
}
.btn-group .arrow {
  transform: translate(10px, 10px);
}

.btn-group.style2 {
  gap: 20px 70px;
}

.btn-group {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
}
.btn-group .arrow {
  transform: translate(10px, 10px);
}

.btn-group.style2 {
  gap: 20px 70px;
}

.btn-group {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
}
.btn-group .arrow {
  transform: translate(10px, 10px);
}

.btn-group.style2 {
  gap: 20px 70px;
}

.sec-title {
  margin-bottom: calc(var(--section-title-space) - 11px);
  margin-top: -0.2em;
  text-transform: capitalize;
}

.sub-title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  font-family: var(--title-font);
  letter-spacing: 4px;
  color: var(--theme-color);
  display: flex;
  gap: 10px;
  margin-bottom: 24px;
  text-transform: uppercase;
  align-items: center;
  margin-top: -0.34em;
}
.sub-title:has(img) {
  margin-top: 0;
}
.sub-title img {
  margin: -11px 10px 0 0;
}
.sub-title i {
  font-size: 32px;
  margin-right: 10px;
}

.sub-title.after-none::after {
  display: none;
}

.sub-title.before-none::before {
  display: none;
}

.sub-title.style-theme2 {
  color: var(--theme-color);
}
.sub-title.style-theme2::before, .sub-title.style-theme2::after {
  background-color: var(--theme-color2);
}

.sub-title.h4 {
  font-size: 30px;
  font-weight: 600;
  line-height: 1;
  margin-top: -0.14em;
}

.sub-title.style-3 {
  position: relative;
  color: var(--theme-color);
}
.sub-title.style-3::before, .sub-title.style-3::after {
  display: none;
}
.sub-title.style-3 .left {
  height: 2px;
  width: 60px;
  background-color: var(--theme-color3);
  display: block;
  margin-right: 8px;
  position: relative;
}
.sub-title.style-3 .left::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  background-color: var(--theme-color3);
  top: -3px;
  right: 0;
  transform: rotate(45deg);
}
.sub-title.style-3 .right {
  height: 2px;
  width: 60px;
  background-color: var(--theme-color3);
  display: block;
  margin-left: 8px;
  position: relative;
}
.sub-title.style-3 .right::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  background-color: var(--theme-color3);
  top: -3px;
  left: 0;
  transform: rotate(45deg);
}

.box-title {
  font-size: 24px;
  line-height: 1.417;
  font-weight: 600;
  margin-top: -0.32em;
}
.box-title a {
  color: inherit;
}
.box-title a:hover {
  color: inherit;
}

.box-subtitle {
  margin-bottom: 8px;
}

.box-title2 {
  font-size: 20px;
  line-height: 1.5;
  font-weight: 700;
  margin-top: -0.35em;
}
.box-title2 a {
  color: inherit;
}
.box-title2 a:hover {
  color: var(--theme-color);
}

.title-area {
  margin-bottom: calc(var(--section-title-space) - 11px);
  position: relative;
  z-index: 2;
}
.title-area .sec-title {
  margin-bottom: 18px;
}
.title-area .th-btn {
  margin-top: 20px;
  margin-bottom: 10px;
}

.title-area.mb-0 .sec-title {
  margin-bottom: -0.24em;
}

hr.title-line {
  margin-top: 0;
  background-color: var(--th-border-color);
  opacity: 1;
}

.sec-btn {
  text-align: center;
  margin-bottom: var(--section-title-space);
}

.title-line {
  margin-bottom: var(--section-title-space);
}

.shadow-title {
  font-family: var(--title-font);
  font-size: 74px;
  font-weight: 900;
  line-height: 1;
  background-image: linear-gradient(180deg, rgba(226, 232, 250, 0.7) 0, rgba(226, 232, 250, 0) 88.54%);
  -webkit-background-clip: text;
  background-clip: text;
  text-fill-color: transparent;
  margin: -0.55em 0 -0.45em -0.25em;
}

.shadow-title.color2 {
  background-image: linear-gradient(180deg, #232c47 0, rgba(20, 29, 56, 0) 91.15%);
}

.shadow-title.color3 {
  background-image: linear-gradient(180deg, #e0e0e0 0, rgba(220, 214, 214, 0) 93.75%);
}

.title-area2 {
  padding: 50px 100px;
}
.title-area2 .subtitle {
  color: var(--white-color);
  text-transform: uppercase;
  margin-top: -0.4em;
  margin-bottom: 5px;
  display: block;
}
.title-area2 .title {
  color: var(--white-color);
  max-width: 430px;
  margin-bottom: -0.26em;
}

/* Font families */
.font-icon {
  font-family: var(--icon-font); /* Font for icons */
}

.font-title {
  font-family: var(--title-font); /* Font for titles */
}

.font-body {
  font-family: var(--body-font); /* Font for body text */
}

/* Font weights */
.fw-extralight {
  font-weight: 100; /* Extra light */
}

.fw-light {
  font-weight: 300; /* Light */
}

.fw-normal {
  font-weight: 400; /* Normal weight */
}

.fw-medium {
  font-weight: 500; /* Medium weight */
}

.fw-semibold {
  font-weight: 600; /* Semi-bold */
}

.fw-bold {
  font-weight: 700; /* Bold */
}

.fw-extrabold {
  font-weight: 800; /* Extra bold */
}

/* Font sizes */
.fs-md {
  font-size: 18px; /* Medium size */
}

.fs-16 {
  font-size: 16px !important; /* Fixed size 16px */
}

.fs-xs {
  font-size: 14px; /* Extra small size */
}

/* Text colors */
.text-theme {
  color: var(--theme-color) !important; /* Theme color */
}

.text-theme2 {
  color: var(--theme-color2) !important; /* Second theme color */
}

.text-title {
  color: var(--title-color) !important; /* Title color */
}

.text-body {
  color: var(--body-color) !important; /* Body text color */
}

.text-white {
  color: var(--white-color) !important; /* White text */
}

.text-light {
  color: var(--light-color) !important; /* Light text */
}

.text-yellow {
  color: var(--yellow-color) !important; /* Yellow text */
}

.text-gold {
  color: var(--gold-color) !important; /* Gold text */
}

.text-success {
  color: var(--success-color) !important; /* Success color */
}

.text-error {
  color: var(--error-color) !important; /* Error color */
}

/* Text inheritance and hover styles */
.text-inherit {
  color: inherit; /* Inherited color */
}
.text-inherit:hover {
  color: var(--theme-color); /* Hover color */
}

.text-reset:hover {
  text-decoration: underline; /* Underline on hover */
}

/* Links with theme color */
a.text-theme:hover {
  text-decoration: underline; /* Underline on hover */
}

/* Badge styling */
.badge {
  position: absolute; /* Absolute positioning for the badge */ /* For webkit browsers, adjust width to fit content */
  width: -moz-fit-content; /* For Firefox, adjust width to fit content */
  width: fit-content; /* Standard way to fit content width */
  display: inline-block; /* Inline-block display */
  text-align: center; /* Center the text */
  background-color: var(--theme-color); /* Set background color */
  color: var(--white-color); /* Set text color */
  padding: 0.25em 0.45em; /* Add padding around the badge */
  font-size: 0.7em; /* Set font size */
  border-radius: 50%; /* Make the badge circular */
  top: 8px; /* Position the badge 8px from the top */
  right: 8px; /* Position the badge 8px from the right */
  font-weight: 400; /* Set font weight to normal */ /* Smooth transition for webkit browsers */
  transition: 0.3s ease-in-out; /* Smooth transition */
}

/* Social icon button styling */
.th-social a {
  display: inline-block; /* Display links as inline-blocks */
  width: var(--icon-size, 46px); /* Set width with a default of 46px */
  height: var(--icon-size, 46px); /* Set height with a default of 46px */
  line-height: var(--icon-size, 46px); /* Center text vertically */
  background-color: transparent; /* Set background color */
  color: var(--body-color); /* Set text color */
  font-size: 16px; /* Set font size */
  text-align: center; /* Align text in the center */
  margin-right: 5px; /* Add space between icons */
  border-radius: 10px; /* Round corners */
  border: 1px solid var(--th-border-color); /* Set border color */
  /* Remove margin on the last icon */
  /* Hover state */
}
.th-social a:last-child {
  margin-right: 0; /* Remove right margin on the last icon */
}
.th-social a:hover {
  background-color: var(--theme-color); /* Change background color */
  color: var(--white-color) !important; /* Change text color with importance */
}

/* Color theme variant for social icon buttons */
.th-social.color-theme a {
  color: var(--body-color); /* Set text color */
  border-color: var(--theme-color); /* Set border color */
}

/* Background mask settings */
.bg-mask {
  -webkit-mask-size: 100% 100%; /* Set mask size for webkit browsers */
  mask-size: 100% 100%; /* Set mask size */
  -webkit-mask-repeat: no-repeat; /* Prevent mask repeat for webkit browsers */
  mask-repeat: no-repeat; /* Prevent mask repeat */
}

/* Box icon transition */
.box-icon img { /* Smooth transition for webkit browsers */
  transition: 0.4s ease-in-out; /* Smooth transition */
}

/* Box text margin */
.box-text {
  margin-bottom: -0.5em; /* Add negative bottom margin */
}

/* Background image styling */
.th-bg-img {
  position: absolute; /* Absolute positioning for background image */
  inset: 0; /* Stretch the image to cover the entire element */
  /* Image styling */
}
.th-bg-img img {
  height: 100%; /* Stretch image to fill height */
  width: 100%; /* Stretch image to fill width */
  -o-object-fit: cover;
     object-fit: cover; /* Cover the element with the image */
}

/* Shape mockup wrapper and positioning */
.shape-mockup-wrap {
  z-index: 2; /* Set stacking order for mockup wrapper */
  position: relative; /* Set relative positioning for positioning child elements */
}

/* Shape mockup positioning and SVG size */
.shape-mockup {
  position: absolute; /* Absolute position within its container */
  z-index: -1; /* Place mockup behind other content */
  pointer-events: none; /* Disable interactions with the mockup */
  /* SVG image size */
}
.shape-mockup .svg-img {
  height: 110px; /* Set height for SVG */
  width: 110px; /* Set width for SVG */
}

/* Adjust z-index for different mockup layers */
.shape-mockup.z-index-3 {
  z-index: 3; /* Place mockup at layer 3 */
  pointer-events: none; /* Disable interactions with this mockup */
}

.shape-mockup.z-index-1 {
  z-index: 1; /* Place mockup at layer 1 */
  pointer-events: none; /* Disable interactions with this mockup */
}

/* Positioning for elements with step 1 z-index */
.z-index-step1 {
  position: relative; /* Positioning relative to parent */
  z-index: 4 !important; /* Override any existing z-index for layer 4 */
}

/* Common z-index for elements */
.z-index-common {
  position: relative; /* Relative positioning */
  z-index: 3; /* Set z-index to 3 */
}

/* Set z-index to 3 for this class */
.z-index-3 {
  z-index: 3; /* Set z-index to 3 */
}

/* Set z-index to -1 to position behind other content */
.z-index-n1 {
  z-index: -1; /* Set z-index to -1 for elements to be behind content */
}

/* Flexbox styling for media body */
.media-body { /* Flexbox properties for older webkit browsers */ /* Flexbox properties for webkit browsers */ /* Flexbox properties for IE */
  flex: 1; /* Set flex to 1, taking up remaining space */
}

/* Color scheme container fixed to the right side of the screen */
.color-scheme {
  position: fixed; /* Fixed position for the color scheme container */
  right: -1px; /* Position it just off the right edge */
  top: calc(50% - 100px); /* Center it vertically with an offset */
  z-index: 99; /* Set high stacking order */
  background: var(--black-color); /* Set background color */
  padding: 20px 30px; /* Add padding inside the container */
  border-radius: 10px 0 0 10px; /* Rounded corners for left side */
  max-width: 300px; /* Set maximum width */ /* Initially hidden, off the screen */ /* Initially hidden, off the screen */
  transform: translate(100%, 0); /* Initially hidden, off the screen */ /* Smooth transition for the color scheme container */
  transition: 0.4s; /* Smooth transition for the color scheme container */
  /* Style for the switch icon on the left */
  /* Flex layout for color scheme buttons */
  /* Style for color picker input */
}
.color-scheme .switchIcon {
  position: absolute; /* Absolute positioning */
  left: 0; /* Position to the left side */
  top: 10px; /* Add some space from the top */
  border: 0; /* Remove border */
  background: var(--theme-color); /* Set background to theme color */
  color: var(--white-color); /* Set text color */
  height: 45px; /* Set height for the button */
  width: 45px; /* Set width for the button */
  border-radius: 5px 0 0 5px; /* Round the left corners */ /* Initially hidden to the left */ /* Initially hidden to the left */
  transform: translate(-100%, 0); /* Initially hidden to the left */
}
.color-scheme .color-switch-btns { /* Flexbox layout for older webkit browsers */ /* Flexbox layout for webkit browsers */ /* Flexbox layout for IE */
  display: inline-flex; /* Standard flexbox layout */ /* Allow wrapping of buttons */ /* Allow wrapping of buttons */
  flex-wrap: wrap; /* Allow wrapping of buttons */
  gap: 18px; /* Space between buttons */
  margin-bottom: 20px; /* Add space at the bottom */
  /* Style for individual buttons */
}
.color-scheme .color-switch-btns button {
  padding: 0; /* Remove padding */
  border: 0; /* Remove border */
  background: 0 0; /* Transparent background */
  font-size: 24px; /* Set font size */
  color: var(--theme-color); /* Set button text color */
  text-align: left; /* Align text to the left */
}
.color-scheme #thcolorpicker {
  padding: 0 !important; /* Remove padding */
  border: 2px solid var(--white-color); /* Set border for color picker */
  border-radius: 0; /* No rounding for corners */
  height: 25px; /* Set height */
  border-radius: 15px; /* Rounded corners */
  overflow: hidden; /* Hide overflowing content */
  max-width: 170px; /* Set maximum width */
}

/* Title styling for the color scheme section */
.color-scheme-title {
  font-size: 22px; /* Set font size */
  border-bottom: 1px solid var(--th-border-color); /* Border at the bottom */
  padding-bottom: 6px; /* Space below the title */
  color: var(--white-color); /* Set text color */
  margin-bottom: 20px; /* Space below the title */
  /* Style for icons inside the title */
}
.color-scheme-title i {
  font-size: 18px; /* Set icon font size */
  margin-right: 3px; /* Space between icon and text */
}

/* Text styling for the color scheme section */
.color-scheme-text {
  color: var(--white-color); /* Set text color */
  font-size: 14px; /* Set font size */
  margin-bottom: 6px; /* Space below the text */
}

/* Style for active color scheme container */
.color-scheme.active { /* Move the container into view */ /* Move the container into view */
  transform: translate(0, 0); /* Move the container into view */
}

/* Zoom-in effect for the content */
.mfp-zoom-in {
  /* Content scaling on zoom-in */
}
.mfp-zoom-in .mfp-content {
  opacity: 0; /* Initially hide content */ /* Webkit browser transition */
  transition: all 0.4s ease; /* Smooth transition for all properties */ /* Webkit scale down to 50% */ /* For Internet Explorer, scale down to 50% */
  transform: scale(0.5); /* Scale down to 50% for other browsers */
}

/* Zoom-in effect for background */
.mfp-zoom-in.mfp-bg {
  opacity: 0; /* Initially set background opacity to 0 */ /* Smooth transition for background */
  transition: all 0.4s ease; /* Smooth transition for background */
}

/* Content scaling and background opacity when ready */
.mfp-zoom-in.mfp-ready .mfp-content {
  opacity: 1; /* Fade in the content */ /* Scale content to normal size */ /* For Internet Explorer, scale to normal size */
  transform: scale(1); /* Scale content to normal size */
}

/* Background opacity when ready */
.mfp-zoom-in.mfp-ready.mfp-bg {
  opacity: 0.7; /* Set background opacity to 70% */
}

/* Content scaling and fading out when removing */
.mfp-zoom-in.mfp-removing .mfp-content { /* Scale content to 70% */ /* For Internet Explorer, scale to 70% */
  transform: scale(0.7); /* Scale content to 70% */
  opacity: 0; /* Fade out the content */
}

/* Background opacity when removing */
.mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0; /* Set background opacity to 0 */
}

/* Styling for the close button inside iframe */
.mfp-iframe-holder .mfp-close {
  color: var(--white-color); /* Set close button color */
  right: -1px; /* Position close button 1px from the right */
  top: -51px; /* Position close button 51px from the top */
  text-align: right; /* Align text to the right */
  width: 100%; /* Set width of the button */
  background: var(--theme-color); /* Set background color */
  height: 44px; /* Set button height */
  width: 50px; /* Set button width */
  text-align: center; /* Center align the content */
  margin-bottom: 0; /* Remove bottom margin */
  padding-right: 0; /* Remove right padding */
  opacity: 1; /* Set opacity to 100% */ /* Smooth transition for webkit browsers */
  transition: 0.4s; /* Smooth transition for all browsers */
  border-radius: 8px; /* Round button corners */
  /* Hover effect */
}
.mfp-iframe-holder .mfp-close:hover {
  background: var(--theme-color2); /* Change background color on hover */
}

/* Styling for the close button inside image holder */
.mfp-image-holder .mfp-close {
  color: var(--white-color); /* Set close button color */
  right: -1px; /* Position close button 1px from the right */
  top: -51px; /* Position close button 51px from the top */
  text-align: right; /* Align text to the right */
  width: 100%; /* Set width of the button */
  background: var(--theme-color); /* Set background color */
  height: 44px; /* Set button height */
  width: 50px; /* Set button width */
  text-align: center; /* Center align the content */
  margin-bottom: 0; /* Remove bottom margin */
  padding-right: 0; /* Remove right padding */
  opacity: 1; /* Set opacity to 100% */ /* Smooth transition for webkit browsers */
  transition: 0.4s; /* Smooth transition for all browsers */
  border-radius: 8px; /* Round button corners */
  /* Hover effect */
}
.mfp-image-holder .mfp-close:hover {
  background: var(--theme-color2); /* Change background color on hover */
}

/* Styling for the Archive widget */
.widget_archive ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.widget_archive a {
  display: block;
  background-color: var(--white-color);
  border: 1px solid var(--th-border-color);
  margin: 0 0 14px;
  padding: 17px 30px;
  font-size: 16px;
  line-height: 1.313;
  color: var(--body-color);
  border-radius: 50px;
  transition: 0.4s all ease;
}
.widget_archive a:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.widget_archive a:hover ~ span {
  color: var(--white-color);
}
.widget_archive li {
  display: block;
  position: relative;
}
.widget_archive li > span {
  color: var(--body-color);
  position: absolute;
  right: 30px;
  top: 17px;
  transition: all ease 0.4s;
  pointer-events: none;
  min-width: 20px;
  text-align: right;
}
.widget_archive .menu > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_archive > ul > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_archive .children,
.widget_archive .sub-menu {
  margin-left: 10px;
}

/* Styling for Categories widget (similar to Archive) */
.widget_categories {
  /* Similar structure as .widget_archive */
}
.widget_categories ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.widget_categories a {
  display: block;
  background-color: var(--white-color);
  border: 1px solid var(--th-border-color);
  margin: 0 0 14px;
  padding: 17px 30px;
  font-size: 16px;
  line-height: 1.313;
  color: var(--body-color);
  border-radius: 50px;
  transition: 0.4s all ease;
}
.widget_categories a:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.widget_categories a:hover ~ span {
  color: var(--white-color);
}
.widget_categories li {
  display: block;
  position: relative;
}
.widget_categories li > span {
  color: var(--body-color);
  position: absolute;
  right: 30px;
  top: 17px;
  transition: all ease 0.4s;
  pointer-events: none;
  min-width: 20px;
  text-align: right;
}
.widget_categories .menu > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_categories > ul > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_categories .children,
.widget_categories .sub-menu {
  margin-left: 10px;
}

/* Styling for Meta widget (similar to Categories) */
.widget_meta ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.widget_meta a {
  display: block;
  background-color: var(--white-color);
  border: 1px solid var(--th-border-color);
  margin: 0 0 14px;
  padding: 17px 30px;
  font-size: 16px;
  line-height: 1.313;
  color: var(--body-color);
  border-radius: 50px;
  transition: 0.4s all ease;
  padding-right: 20px;
}
.widget_meta a:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.widget_meta a:hover ~ span {
  color: var(--white-color);
}
.widget_meta li {
  display: block;
  position: relative;
}
.widget_meta li > span {
  color: var(--body-color);
  position: absolute;
  right: 30px;
  top: 17px;
  transition: all ease 0.4s;
  pointer-events: none;
  min-width: 20px;
  text-align: right;
}
.widget_meta .menu > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_meta > ul > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_meta .children,
.widget_meta .sub-menu {
  margin-left: 10px;
}

/* Styling for Navigation Menu widget */
.widget_nav_menu {
  /* Similar structure as the previous widgets */
}
.widget_nav_menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.widget_nav_menu a {
  display: block;
  background-color: var(--white-color);
  border: 1px solid var(--th-border-color);
  margin: 0 0 14px;
  padding: 17px 30px;
  font-size: 16px;
  line-height: 1.313;
  color: var(--body-color);
  border-radius: 50px;
  transition: 0.4s all ease;
  padding-right: 20px;
}
.widget_nav_menu a:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.widget_nav_menu a:hover ~ span {
  color: var(--white-color);
}
.widget_nav_menu li {
  display: block;
  position: relative;
}
.widget_nav_menu li > span {
  color: var(--body-color);
  position: absolute;
  right: 30px;
  top: 17px;
  transition: all ease 0.4s;
  pointer-events: none;
  min-width: 20px;
  text-align: right;
}
.widget_nav_menu .menu > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_nav_menu > ul > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_nav_menu .children,
.widget_nav_menu .sub-menu {
  margin-left: 10px;
}

/* Styling for Pages widget */
.widget_pages ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.widget_pages a {
  display: block;
  background-color: var(--white-color);
  border: 1px solid var(--th-border-color);
  margin: 0 0 14px;
  padding: 17px 30px;
  font-size: 16px;
  line-height: 1.313;
  color: var(--body-color);
  border-radius: 50px;
  transition: 0.4s all ease;
  padding-right: 20px;
}
.widget_pages a:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.widget_pages a:hover ~ span {
  color: var(--white-color);
}
.widget_pages li {
  display: block;
  position: relative;
}
.widget_pages li > span {
  color: var(--body-color);
  position: absolute;
  right: 30px;
  top: 17px;
  transition: all ease 0.4s;
  pointer-events: none;
  min-width: 20px;
  text-align: right;
}
.widget_pages .menu > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_pages > ul > li:last-child > a {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_pages .children,
.widget_pages .sub-menu {
  margin-left: 10px;
}

.widget {
  padding: var(--widget-padding-y, 40px) var(--widget-padding-x, 40px);
  background-color: var(--smoke-color2);
  margin-bottom: 40px;
  position: relative;
  border-radius: 20px;
}
.widget .th-social a {
  box-shadow: 0 2px 14px rgba(4, 6, 66, 0.1);
}
.widget .form-control,
.widget .form-select,
.widget input,
.widget select,
.widget textarea {
  background-color: var(--white-color);
  border-radius: 30px;
}
.widget textarea {
  min-height: 120px;
}
.widget .form-group > i {
  background-color: var(--white-color);
}
.widget .search-form {
  position: relative;
  display: flex;
}
.widget .search-form input {
  flex: 1;
  border-radius: 30px;
  padding-right: 65px;
  border: 1px solid transparent;
  box-shadow: 0 13px 25px rgba(0, 0, 0, 0.04);
}
.widget .search-form input:focus {
  border-color: var(--theme-color);
}
.widget .search-form button {
  border: none;
  font-size: 16px;
  font-weight: 500;
  background-color: var(--theme-color);
  color: var(--white-color);
  width: 56px;
  height: 100%;
  border-radius: 30px;
  position: absolute;
  top: 0;
  right: 0;
}
.widget .search-form button:hover {
  background-color: var(--title-color);
}

.widget[data-overlay]:before {
  z-index: -1;
}

.widget_title {
  position: relative;
  font-size: 24px;
  font-weight: 700;
  font-family: var(--title-font);
  line-height: 1em;
  margin: -0.12em 0 32px 0;
}

.widget-form {
  --bs-gutter-x: 20px;
}

.widget_call {
  background-color: var(--theme-color);
  position: relative;
}
.widget_call .widget_title {
  color: var(--white-color);
}
.widget_call .info-box_subtitle {
  color: var(--white-color);
  font-size: 14px;
  padding-bottom: 3px;
  display: block;
  margin-top: -0.35em;
}
.widget_call .info-box_icon {
  width: 50px;
  height: 50px;
  min-width: 50px;
  line-height: 52px;
  border: 1px solid var(--theme-color3);
  color: var(--theme-color3);
}
.widget_call .info-box_link {
  font-size: 24px;
}
.widget_call .info-box:nth-child(2) .info-box_icon {
  border: 1px solid var(--theme-color2);
  color: var(--theme-color2);
}

.widget-map iframe {
  min-height: 280px;
}

.widget-call {
  position: relative;
  z-index: 2;
  overflow: hidden;
}
.widget-call .text {
  display: block;
  margin: 22px auto 25px auto;
  color: var(--white-color);
  max-width: 310px;
}
.widget-call .call {
  font-size: 30px;
  font-weight: 600;
  color: var(--white-color);
  display: block;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin: 30px auto 0 auto;
}
.widget-call .call:hover {
  color: var(--theme-color);
}
.widget-call .play-btn {
  --icon-size: 60px;
}
.widget-call .play-btn > i {
  font-size: 30px;
}
.widget-call .box-title {
  color: var(--white-color);
  font-weight: 500;
  margin-bottom: 2px;
}
.widget-call .box_text {
  margin-bottom: 30px;
}

.widget_info .info-box {
  margin-bottom: 28px;
}
.widget_info .info-box .info-box_icon {
  width: 56px;
  height: 56px;
  min-width: 56px;
  line-height: 56px;
  font-size: 14px;
  background-color: var(--theme-color);
  color: var(--white-color);
  font-size: 22px;
  border-radius: 20px;
}
.widget_info .info-box .info-box_text {
  font-size: 20px;
  color: var(--title-color);
  font-weight: 600;
}
.widget_info .info-box .info-box_subtitle {
  display: block;
  margin-bottom: 7px;
}
.widget_info .info-box:nth-child(2) .info-box_icon {
  background-color: var(--theme-color);
}
.widget_info .info-box:nth-child(3) .info-box_icon {
  background-color: var(--theme-color2);
}
.widget_info .info-box:nth-child(4) .info-box_icon {
  background-color: var(--theme-color3);
}
.widget_info .info-box:nth-child(5) .info-box_icon {
  background-color: #162479;
}

/* ==============================================
   Mobile Menu Wrapper Styles
   ============================================== */
.th-menu-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 999999;
  opacity: 0;
  visibility: hidden;
  transition: all ease 0.8s;
  /* Mobile Logo Section */
  /* Menu Toggle Button */
  /* Side Menu Area */
}
.th-menu-wrapper .mobile-logo {
  padding-top: 40px;
  padding-bottom: 30px;
  display: block;
  text-align: center;
  background-color: var(--smoke-color2);
}
.th-menu-wrapper .mobile-logo svg {
  max-width: 185px;
}
.th-menu-wrapper .th-menu-toggle {
  position: absolute;
  top: 25px;
  right: -16.5px;
  width: 33px;
  height: 33px;
  line-height: 35px;
  font-size: 18px;
  border: none;
  color: var(--white-color);
  background-color: var(--theme-color);
  border-radius: 50%;
  z-index: 1;
}
.th-menu-wrapper .th-menu-toggle:hover {
  background-color: var(--title-color);
  color: var(--white-color);
}
.th-menu-wrapper .th-menu-area {
  width: 100%;
  max-width: 310px;
  height: 100%;
  background-color: #fff;
  border-right: 3px solid var(--theme-color);
  position: relative;
  left: -110%; /* Initially hidden off-screen */
  opacity: 0;
  visibility: hidden;
  transition: all ease 1s;
  z-index: 1;
}

/* ==============================================
   Mobile Menu Wrapper Active State
   (When the menu is opened)
   ============================================== */
.th-menu-wrapper.th-body-visible {
  opacity: 1;
  visibility: visible;
}
.th-menu-wrapper.th-body-visible .th-menu-area {
  left: 0;
  opacity: 1;
  visibility: visible;
}

/* ==============================================
   Mobile Menu List Styling
   ============================================== */
.th-mobile-menu {
  overflow-y: scroll;
  max-height: calc(100vh - 200px);
  padding-bottom: 40px;
  margin-top: 33px;
  text-align: left;
  /* Outer padding for the main menu */
}
.th-mobile-menu ul {
  margin: 0;
  padding: 0;
  /* Style for each menu item */
  /* Active menu item */
  /* Dropdown (Submenu) Toggle Button */
  /* Active dropdown (open state) */
}
.th-mobile-menu ul li {
  list-style-type: none;
  border-bottom: 1px solid #fdedf1;
  /* First child in nested list */
  /* Menu links */
  /* Nested menu styling */
}
.th-mobile-menu ul li li:first-child {
  border-top: 1px solid #fdedf1;
}
.th-mobile-menu ul li a {
  display: block;
  position: relative;
  padding: 12px 0;
  line-height: 1.4;
  font-size: 16px;
  text-transform: capitalize;
  color: var(--title-color);
  padding-left: 18px;
  /* Arrow icon for submenus */
}
.th-mobile-menu ul li a:before {
  content: "\f105";
  font-family: var(--icon-font);
  position: absolute;
  left: 0;
  top: 12px;
  margin-right: 10px;
  display: inline-block;
}
.th-mobile-menu ul li ul li {
  padding-left: 20px;
}
.th-mobile-menu ul li ul li:last-child {
  border-bottom: none;
}
.th-mobile-menu ul li.th-active > a {
  color: var(--theme-color);
}
.th-mobile-menu ul li.th-active > a:before {
  transform: rotate(90deg);
}
.th-mobile-menu ul .menu-item-has-children > a {
  position: relative;
  /* Expand button */
  /* Additional icon for dropdowns */
}
.th-mobile-menu ul .menu-item-has-children > a .th-mean-expand {
  position: absolute;
  right: 0;
  top: 50%;
  width: 25px;
  height: 25px;
  line-height: 25px;
  margin-top: -12.5px;
  font-weight: 400;
  font-size: 12px;
  text-align: center;
  background-color: var(--smoke-color);
  color: var(--title-color);
  box-shadow: 0 0 20px -8px rgba(173, 136, 88, 0.5);
  border-radius: 50%;
}
.th-mobile-menu ul .menu-item-has-children > a .th-mean-expand:before {
  content: "\f067"; /* Plus icon */
  font-family: var(--icon-font);
}
.th-mobile-menu ul .menu-item-has-children > a:after {
  content: "\f067";
  font-family: var(--icon-font);
  width: 22px;
  height: 22px;
  line-height: 22px;
  display: inline-block;
  text-align: center;
  font-size: 12px;
  border-radius: 50px;
  background-color: var(--smoke-color);
  float: right;
  margin-top: 1px;
}
.th-mobile-menu ul .menu-item-has-children.th-active > a .th-mean-expand:before {
  content: "\f068"; /* Minus icon */
}
.th-mobile-menu ul .menu-item-has-children.th-active > a:after {
  content: "\f068";
}
.th-mobile-menu > ul {
  padding: 0 40px;
}
.th-mobile-menu > ul > li:last-child {
  border-bottom: none;
}

/* ==============================================
   Mobile Menu Toggle Button
   ============================================== */
.th-menu-toggle {
  width: 40px;
  height: 40px;
  padding: 0;
  font-size: 20px;
  border: none;
  background-color: var(--theme-color);
  color: var(--white-color);
  display: inline-block;
  border-radius: 5px;
}
.th-menu-toggle:hover {
  background-color: var(--title-color);
}

/* ==============================================
   Text-Based Menu Toggle Styles
   ============================================== */
.th-menu-toggle.style-text {
  width: auto;
  height: auto;
  background-color: transparent;
  color: var(--title-color);
  font-size: 20px;
}
.th-menu-toggle.style-text i {
  margin-right: 10px;
}

/* White Text Version */
.th-menu-toggle.style-text-white {
  width: auto;
  height: auto;
  background-color: transparent;
  color: var(--white-color);
  font-size: 20px;
}
.th-menu-toggle.style-text-white i {
  margin-right: 10px;
}

.th-header {
  position: relative;
  z-index: 41;
}
.th-header .icon-btn {
  border-radius: 99px;
}
.th-header .menu-area {
  position: relative;
  z-index: 2;
}

.header-default {
  border-radius: 0 0 55px 55px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
.header-default .header-top {
  position: relative;
  padding: 11px 0;
  --body-color: #fff;
  background-color: var(--theme-color);
}

.sticky-wrapper {
  transition: 0.4s ease-in-out;
}

.sticky-wrapper.sticky {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  background-color: var(--white-color);
  filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.07));
  animation: stickyAni 0.4s ease-in-out;
}

.header-layout2 .menu-area {
  margin: 30px 0;
  padding-left: 30px;
  padding-right: 30px;
}
.header-layout2 .menu-area::before {
  content: "";
  position: absolute;
  height: 100%;
  background-color: var(--smoke-color2);
  width: 100%;
  z-index: -1;
  border-radius: 60px;
  left: 50%;
  transform: translateX(-50%);
}
.header-layout2 .menu-area .header-info-box__icon {
  color: var(--theme-color3);
}
.header-layout2 .header-button {
  margin-left: 34px;
}
.header-layout2 .sticky-wrapper.sticky .menu-area {
  margin: 14px 0;
}

.header-info-box {
  display: flex;
  gap: 15px;
  margin-left: 20px;
  padding-left: 30px;
  position: relative;
  margin-right: 17px;
}
.header-info-box:before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  height: 30px;
  width: 1px;
  background-color: var(--th-border-color);
}

.header-info-box__title {
  font-size: 17px;
  margin-bottom: 3px;
  font-weight: 400;
  line-height: 1;
}

.header-info-box__icon {
  font-size: 30px;
  color: var(--theme-color);
}

.header-info-box__text {
  line-height: 1;
  padding-bottom: 0;
  margin-bottom: 0;
  color: var(--body-color);
}

.header-info-box__content {
  flex: 1;
}

.header-info-box__link {
  color: var(--body-color);
  font-size: 14px;
}

.simple-icon {
  display: inline-block;
  font-size: 20px;
  background-color: var(--icon-bg, transparent);
  color: var(--title-color);
  transition: 0.4s ease-in-out;
  position: relative;
  border: 0;
  padding: 0;
}
.simple-icon:hover {
  color: var(--theme-color);
}

.header-logo {
  padding-top: 15px;
  padding-bottom: 15px;
}

.header-links ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.header-links li {
  display: inline-block;
  position: relative;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--title-font);
  color: var(--body-color);
}
.header-links li:not(:last-child) {
  margin: 0 42px 0 0;
}
.header-links li:not(:last-child):after {
  content: "";
  height: 14px;
  width: 1px;
  background-color: var(--theme-color2);
  position: absolute;
  top: 0;
  right: -22px;
  margin-top: 7px;
  opacity: 0.4;
}
.header-links li > i {
  margin-right: 6px;
  color: var(--theme-color2);
}
.header-links a {
  color: var(--body-color);
}
.header-links a:hover {
  color: var(--theme-color2);
}
.header-links p {
  color: var(--body-color);
}
.header-links span {
  color: var(--body-color);
}
.header-links b {
  font-weight: 600;
  margin-right: 6px;
}
.header-links strong {
  font-weight: 600;
  margin-right: 6px;
}
.header-links .social-links a {
  font-size: 14px;
}

.header-notice {
  margin: 0;
}

.header-top {
  padding: 6px 0;
  background-color: var(--theme-color);
  --body-color: #fff;
}
.header-top a:hover {
  color: var(--theme-color2);
}

.main-menu a {
  display: block;
  position: relative;
  font-weight: 600;
  font-size: 14px;
  font-family: var(--title-font);
  color: var(--theme-color);
  text-transform: uppercase;
}
.main-menu a:hover {
  color: var(--theme-color2);
}
.main-menu > ul > li {
  margin: 0 15px;
}
.main-menu > ul > li > a {
  padding: 22px 0;
}
.main-menu > ul > li > a:hover {
  color: var(--theme-color);
}
.main-menu ul {
  margin: 0;
  padding: 0;
}
.main-menu ul li {
  list-style-type: none;
  display: inline-block;
  position: relative;
}
.main-menu ul li:last-child {
  margin-right: 0 !important;
}
.main-menu ul li:first-child {
  margin-left: 0 !important;
}
.main-menu ul li:hover > ul.sub-menu {
  visibility: visible;
  opacity: 1;
  transform: scaleY(1);
  z-index: 9;
  border-top: 4px solid var(--theme-color);
}
.main-menu ul li.menu-item-has-children > a:after {
  content: "+";
  display: inline-block;
  position: relative;
  font-family: var(--icon-font);
  margin-left: 4px;
  font-weight: 600;
  top: 0;
  font-size: 0.9em;
  color: var(--theme-color);
  transition: 0.3s ease-in-out;
}
.main-menu ul li.menu-item-has-children > a:hover:after {
  content: "\f068";
  color: var(--theme-color);
  transform: rotate(180deg);
  top: -2px;
}
.main-menu ul.sub-menu {
  position: absolute;
  text-align: left;
  top: 100%;
  left: 0;
  background-color: var(--white-color);
  visibility: hidden;
  min-width: 270px;
  width: -moz-max-content;
  width: max-content;
  padding: 7px;
  left: -14px;
  opacity: 0;
  z-index: -1;
  box-shadow: 0 4px 15px rgba(1, 15, 28, 0.06);
  border-radius: 0;
  transform: scaleY(0);
  transform-origin: top center;
  transition: all 0.4s ease 0s;
  padding: 18px 20px 18px 18px;
  left: -27px;
}
.main-menu ul.sub-menu a {
  font-size: 16px;
  line-height: 30px;
}
.main-menu ul.sub-menu li {
  display: block;
  margin: 0 0;
  padding: 0 9px;
}
.main-menu ul.sub-menu li a {
  position: relative;
  padding-left: 0;
  text-transform: capitalize;
}
.main-menu ul.sub-menu li a:before {
  content: "\f5d0";
  position: absolute;
  top: 6px;
  left: 10px;
  font-family: var(--icon-font);
  width: 11px;
  height: 11px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
  font-size: 1em;
  line-height: 1;
  color: var(--theme-color2);
  font-weight: 900;
  opacity: 0;
  visibility: visible;
  transition: 0.3s ease-in-out;
}
.main-menu ul.sub-menu li a:hover {
  padding-left: 23px;
}
.main-menu ul.sub-menu li a:hover:before {
  visibility: visible;
  opacity: 1;
  left: 0;
}
.main-menu ul.sub-menu li ul.sub-menu {
  left: 100%;
  right: auto;
  top: 0;
  margin: 0 0;
  margin-left: 20px;
}
.main-menu ul.sub-menu li ul.sub-menu li ul {
  left: 100%;
  right: auto;
}
.main-menu ul.sub-menu li.menu-item-has-children > a:after {
  content: "+";
  float: right;
  top: 1px;
  display: inline-block;
}
.main-menu ul.sub-menu li.menu-item-has-children > a:hover:after {
  content: "\f068";
  transform: rotate(180deg);
}

.menu-style1 > ul > li {
  margin: 0 14px;
}
.menu-style1 > ul > li > a {
  padding: 17px 0;
  color: var(--white-color);
}
.menu-style1 > ul > li > a:hover {
  color: var(--theme-color2);
}
.menu-style1 ul li.menu-item-has-children > a:after {
  color: var(--white-color);
}

.header-button {
  height: 100%;
  display: flex;
  align-items: center;
  gap: 20px;
}
.header-button .icon-btn .badge {
  font-size: 12px;
  top: 0;
  right: 0;
}
.header-button .icon-btn:hover .badge {
  background-color: var(--title-color);
}

.social-links .social-title {
  font-weight: 500;
  font-size: 14px;
  display: inline-block;
  margin: 0 12px 0 0;
  color: var(--body-color);
}
.social-links a {
  font-size: 16px;
  display: inline-block;
  color: var(--body-color);
  margin: 0 15px 0 0;
}
.social-links a:last-child {
  margin-right: 0 !important;
}
.social-links a:hover {
  color: var(--theme-color);
}

.header-icons {
  display: flex;
  display: flex;
  gap: 15px;
}
.header-icons .icon-btn {
  font-size: 18px;
}
.header-icons .icon-btn .badge {
  font-size: 12px;
  top: 0;
  right: 0;
}
.header-icons .icon-btn:hover .badge {
  background-color: var(--title-color);
}

.header-search {
  position: relative;
}
.header-search input {
  height: 46px;
  border: 1px solid var(--th-border-color);
  width: 500px;
  max-width: 100%;
}
.header-search input:focus {
  border-color: var(--theme-color);
}
.header-search button {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  background-color: var(--theme-color);
  color: var(--white-color);
  width: 50px;
  height: 46px;
  line-height: 45px;
  text-align: center;
  padding: 0;
  border-radius: 0 99px 99px 0;
}

.header-layout3 .menu-area {
  position: relative;
  z-index: 2;
  background-color: var(--theme-color);
}
.header-layout3 .header-top {
  --body-color: #54595f;
  background-color: #fbf8f5;
  border-bottom: 1px solid var(--th-border-color);
}
.header-layout3 .header-top .header-links li:not(:last-child):after {
  width: 1px;
  opacity: 0.45;
}
.header-layout3 .th-menu-toggle {
  background-color: var(--theme-color2);
  border-radius: 0;
  height: 60px;
  width: 60px;
}
.header-layout3 .icon-btn {
  border: none;
  background-color: var(--smoke-color2);
}
.header-layout3 .icon-btn:hover {
  background-color: var(--theme-color);
}

.main-logo {
  max-width: 90px !important;
}

/* ==============================================
   Blog Styles start
   ============================================== */
.th-blog {
  margin-bottom: 30px;
}

.blog-meta {
  display: block;
}
.blog-meta a {
  display: inline-block;
  font-size: 14px;
  color: var(--body-color);
  font-family: var(--body-font);
  position: relative;
  margin-right: 23px;
}
.blog-meta a i {
  margin-right: 8px;
  color: var(--theme-color);
}
.blog-meta a:last-child {
  margin-right: 0;
}
.blog-meta a:hover {
  color: var(--theme-color);
}
.blog-meta span {
  display: inline-block;
  font-size: 14px;
  color: var(--body-color);
  font-family: var(--body-font);
  position: relative;
  margin-right: 23px;
}
.blog-meta span i {
  margin-right: 8px;
  color: var(--theme-color);
}
.blog-meta span:last-child {
  margin-right: 0;
}
.blog-meta .author img {
  border-radius: 50%;
  width: 30px;
  height: 30px;
  margin-right: 6px;
}

.blog-audio {
  line-height: 1px;
}
.blog-audio img {
  transition: 0.4s ease-in-out;
}

.blog-img {
  line-height: 1px;
}
.blog-img img {
  transition: 0.4s ease-in-out;
}

.blog-video {
  line-height: 1px;
}
.blog-video img {
  transition: 0.4s ease-in-out;
}

.blog-title a {
  color: inherit;
}
.blog-title a:hover {
  color: var(--theme-color);
}

.blog-inner-title {
  margin-top: -0.25em;
  margin-bottom: 25px;
}
.blog-inner-title i {
  color: var(--theme-color);
  margin-right: 4px;
}

.blog-single {
  position: relative;
  margin-bottom: 40px;
  border-radius: 28px;
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  border: 1px solid var(--th-border-color);
}
.blog-single .blog-title {
  font-size: 30px;
  line-height: 1.25;
  font-weight: 700;
}
.blog-single .blog-text {
  margin-bottom: 27px;
}
.blog-single .blog-meta {
  margin: -0.35em 0 10px 0;
}
.blog-single .blog-content {
  margin: 0;
  padding: 25px;
  position: relative;
}
.blog-single .blog-content .blog-single {
  padding: 20px;
}
.blog-single .blog-audio {
  line-height: 1;
  position: relative;
  overflow: hidden;
  padding: 20px;
  margin-bottom: 0;
  border-radius: 20px 20px 0 0;
}
.blog-single .blog-img {
  position: relative;
  overflow: hidden;
  padding: 20px;
  margin-bottom: 0;
  border-radius: 20px 20px 0 0;
}
.blog-single .blog-img .slider-arrow {
  --pos-x: 30px;
  --icon-size: 44px;
  border: none;
  background-color: var(--white-color);
  color: var(--theme-color);
  box-shadow: none;
  visibility: visible;
  opacity: 1;
}
.blog-single .blog-img .slider-arrow:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
}
.blog-single .blog-img .play-btn {
  --icon-size: 60px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: calc(var(--icon-size) / -2) 0 0 calc(var(--icon-size) / -2);
}
.blog-single .blog-video {
  position: relative;
  overflow: hidden;
  padding: 20px;
  margin-bottom: 0;
  border-radius: 20px 20px 0 0;
}
.blog-single .line-btn {
  display: block;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin-bottom: -1px;
}

.share-links-title {
  font-size: 20px;
  color: var(--title-color);
  font-family: var(--title-font);
  font-weight: 700;
  margin: 0 15px 0 0;
  display: inline-block;
  text-transform: capitalize;
}

.share-links {
  margin: 30px 0 0 0;
  padding: var(--blog-space-y, 40px) 0 0 0;
  border-top: 1px solid var(--th-border-color);
}
.share-links > .row {
  align-items: center;
  --bs-gutter-y: 15px;
}
.share-links .tagcloud {
  display: inline-block;
}
.share-links .tagcloud a {
  background-color: transparent;
  box-shadow: none;
}
.share-links .tagcloud a:hover {
  background-color: var(--theme-color);
}
.share-links .th-social {
  display: inline-block;
}
.share-links .th-social a {
  --icon-size: 40px;
  font-size: 14px;
  border-radius: 99px;
}

.blog-author {
  margin-top: 40px;
  margin-bottom: 40px;
  display: flex;
  background-color: var(--smoke-color);
  border-radius: 20px;
  overflow: hidden;
}
.blog-author .auhtor-img {
  width: 212px;
  min-height: 100%;
  background-color: #0ff;
  text-align: center;
  display: grid;
  align-content: center;
  justify-content: center;
}
.blog-author .auhtor-img img {
  width: 96px;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.blog-author .author-name {
  font-size: 24px;
  margin-top: -0.2em;
  margin-bottom: 16px;
}
.blog-author .author-text {
  margin-bottom: 0;
}
.blog-author .media-body {
  padding: 40px 40px 40px 40px;
  align-self: center;
}

.blog-details .blog-single {
  background-color: transparent;
}
.blog-details .blog-content > p:last-child {
  margin-bottom: 0;
}

.th-comment-form {
  margin-top: var(--blog-space-y, 40px);
  margin-bottom: 30px;
  padding: var(--blog-space-y, 40px) var(--blog-space-x, 40px);
  position: relative;
  padding: 40px;
  box-shadow: none;
  border-radius: 30px;
}
.th-comment-form .row {
  --bs-gutter-x: 20px;
}
.th-comment-form .blog-inner-title {
  margin-bottom: 0;
}
.th-comment-form .form-title {
  margin-top: -0.35em;
}
.th-comment-form .form-title a#cancel-comment-reply-link {
  font-size: 0.7em;
  text-decoration: underline;
}
.th-comment-form .form-text {
  margin-bottom: 25px;
}
.th-comment-form .form-group > i {
  color: inherit;
}
.th-comment-form:has(#wp-temp-form-div) {
  padding: 0;
  box-shadow: none;
  display: none;
}

.blog-comment-area {
  margin-bottom: 25px;
}

.th-comments-wrap {
  padding: 40px;
  box-shadow: none;
  border-radius: 30px;
  margin-top: var(--blog-space-y, 40px);
  margin-bottom: 30px;
}
.th-comments-wrap:has(#wp-temp-form-div) {
  padding: 0;
  box-shadow: none;
  display: none;
}
.th-comments-wrap .description p:last-child {
  margin-bottom: -0.5em;
}
.th-comments-wrap .comment-respond {
  margin: 30px 0;
}
.th-comments-wrap pre {
  background: #ededed;
  color: #666;
  font-size: 14px;
  margin: 20px 0;
  overflow: auto;
  padding: 20px;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.th-comments-wrap li {
  margin: 0;
}
.th-comments-wrap .th-post-comment {
  position: relative;
  display: flex;
  margin-bottom: 30px;
  padding: 30px;
  position: relative;
  border: 1px solid var(--th-border-color);
  border-radius: 30px;
}
.th-comments-wrap .th-post-comment dl {
  margin-bottom: 1rem;
}
.th-comments-wrap .th-post-comment ol {
  margin-bottom: 1rem;
}
.th-comments-wrap .th-post-comment ol ol {
  margin-bottom: 0;
}
.th-comments-wrap .th-post-comment ol ul {
  margin-bottom: 0;
}
.th-comments-wrap .th-post-comment ul {
  margin-bottom: 1rem;
}
.th-comments-wrap .th-post-comment ul ol {
  margin-bottom: 0;
}
.th-comments-wrap .th-post-comment ul ul {
  margin-bottom: 0;
}
.th-comments-wrap ul.comment-list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: -30px;
}
.th-comments-wrap ul.comment-list ol ol {
  margin-bottom: 0;
}
.th-comments-wrap ul.comment-list ol ul {
  margin-bottom: 0;
}
.th-comments-wrap ul.comment-list ul ol {
  margin-bottom: 0;
}
.th-comments-wrap ul.comment-list ul ul {
  margin-bottom: 0;
}
.th-comments-wrap .comment-avater {
  width: 80px;
  height: 80px;
  margin-right: 20px;
  overflow: hidden;
  border-radius: 20px;
}
.th-comments-wrap .comment-avater img {
  width: 100%;
  border-radius: 20px;
}
.th-comments-wrap .comment-content {
  flex: 1;
  margin-top: -6px;
  position: relative;
  margin-bottom: -0.7em;
}
.th-comments-wrap .commented-on {
  font-size: 16px;
  display: inline-block;
  margin-bottom: 2px;
  font-weight: 400;
  color: var(--body-color);
}
.th-comments-wrap .commented-on i {
  color: var(--theme-color);
  margin-right: 7px;
  font-size: 0.9rem;
}
.th-comments-wrap .name {
  margin-bottom: 12px;
  font-size: 18px;
}
.th-comments-wrap .comment-top {
  display: flex;
  justify-content: space-between;
}
.th-comments-wrap .text {
  margin-bottom: 0;
}
.th-comments-wrap .children {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-left: 80px;
}
.th-comments-wrap .reply_and_edit {
  margin-top: 12px;
  margin-bottom: -0.46em;
}
.th-comments-wrap .reply_and_edit a {
  margin-right: 15px;
}
.th-comments-wrap .reply_and_edit a:last-child {
  margin-right: 0;
}
.th-comments-wrap .reply-btn {
  font-weight: 600;
  font-size: 14px;
  color: var(--theme-color2);
  display: inline-block;
  background: 0 0;
  border-radius: 4px;
  text-transform: uppercase;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.th-comments-wrap .reply-btn i {
  color: var(--theme-color2);
  margin-right: 4px;
  transition: all ease 0.4s;
}
.th-comments-wrap .reply-btn:hover {
  color: var(--theme-color);
}
.th-comments-wrap .reply-btn:hover i {
  color: var(--theme-color);
}
.th-comments-wrap .star-rating {
  font-size: 12px;
  margin-bottom: 10px;
  position: absolute;
  top: 5px;
  right: 0;
  width: 80px;
}

.tagcloud {
  margin-right: -10px;
  margin-bottom: -10px;
}
.tagcloud a {
  display: inline-block;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--body-font);
  text-transform: capitalize;
  line-height: 1;
  padding: 13px 20px;
  margin-right: 2px;
  margin-bottom: 10px;
  color: var(--body-color);
  background-color: var(--white-color);
  border-radius: 99px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  border: 1px solid var(--th-border-color);
}
.tagcloud a:hover {
  background-color: var(--theme-color);
  color: var(--white-color) !important;
  border-color: var(--theme-color);
}

.blog-card {
  border-radius: 20px;
}
.blog-card .blog-img {
  border-radius: 20px;
  overflow: hidden;
  overflow: hidden;
}
.blog-card .blog-img img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.blog-card .blog-content {
  background-color: var(--white-color);
  padding-top: 30px;
  position: relative;
  z-index: 3;
}
.blog-card .box-title {
  margin-bottom: 12px;
}
.blog-card .box-title a {
  background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 2px;
  transition: 0.3s ease-in-out;
}
.blog-card .box-title a:hover {
  background-size: 0 0;
}
.blog-card .blog-meta {
  margin: -0.4em 0 15px 0;
}
.blog-card .blog-meta a > i {
  color: var(--theme-color);
}
.blog-card .blog-meta span > i {
  color: var(--theme-color);
}
.blog-card:hover .blog-img img {
  transform: scale(1.08);
}

.homepage-one-blog {
  border: 1px solid gray;
  padding: 15px;
}

.blog-2-padding-bottom {
  padding-bottom: 235px;
}

.blog-card.style-2 {
  border-radius: 30px;
  background-color: var(--white-color);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}
.blog-card.style-2 .blog-img {
  border-radius: 20px;
}
.blog-card.style-2 .blog-content {
  padding: 28px 20px 20px 20px;
  border-radius: 20px;
}

.blog-card.style-3 .box-title {
  border-bottom: 1px solid var(--th-border-color);
  padding-bottom: 20px;
  margin-bottom: 30px;
  font-size: 30px;
  line-height: 1.2;
}
.blog-card.style-3 .blog-content {
  padding-top: 40px;
}
.blog-card.style-3 .blog-meta {
  margin: -0.4em 0 18px 0;
}
.blog-card.style-3 .blog-meta a i {
  color: var(--theme-color3);
}

.blog-box {
  border-radius: 20px;
  padding: 30px;
  background-color: var(--white-color);
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.06);
  display: flex;
  gap: 30px;
}
.blog-box .blog-img {
  width: 208px;
  border-radius: 14px;
  overflow: hidden;
}
.blog-box .blog-img img {
  border-radius: inherit;
  width: 100%;
  transition: 0.4s ease-in-out;
}
.blog-box .blog-content {
  align-self: center;
  flex: 1;
}
.blog-box .box-title {
  font-size: 22px;
  margin-bottom: 14px;
}
.blog-box .box-title a {
  background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 2px;
  transition: 0.5s ease-in-out;
}
.blog-box .box-title a:hover {
  background-size: 100% 2px;
}
.blog-box .blog-meta {
  margin: -0.3em 0 18px 0;
}
.blog-box .blog-meta a > i {
  color: var(--theme-color);
}
.blog-box .blog-meta span > i {
  color: var(--theme-color);
}
.blog-box .th-btn {
  margin-top: 30px;
  padding: 16px 25px;
  min-width: 152px;
  background-color: transparent;
  border: 1px solid var(--th-border-color);
  color: var(--theme-color);
  transition: 0.4s ease-in-out;
}
.blog-box .th-btn::before {
  background-color: var(--theme-color);
}
.blog-box .th-btn:hover {
  color: var(--white-color);
  border-color: transparent;
}
.blog-box:hover .blog-img img {
  transform: scale(1.08);
}

.blog-grid .blog-img {
  border-radius: 20px;
  overflow: hidden;
  overflow: hidden;
}
.blog-grid .blog-img img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.blog-grid .blog-content {
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.06);
  border-radius: 20px;
  background-color: var(--white-color);
  padding: 30px;
  margin: -70px 20px 0 20px;
  position: relative;
  z-index: 3;
}
.blog-grid .box-title {
  font-size: 22px;
  margin-bottom: 20px;
}
.blog-grid .box-title a {
  background-image: linear-gradient(to left, var(--theme-color), var(--theme-color));
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 2px;
  transition: 0.5s ease-in-out;
}
.blog-grid .box-title a:hover {
  background-size: 100% 2px;
}
.blog-grid .blog-meta {
  margin: -0.4em 0 18px 0;
}
.blog-grid .blog-meta a > i {
  color: var(--theme-color);
}
.blog-grid .blog-meta span > i {
  color: var(--theme-color);
}
.blog-grid:hover .blog-img img {
  transform: scale(1.08);
}

/* ==============================================
   Blog Styles end
   ============================================== */
/* ==============================================
   Gallery Styles start
   ============================================== */
.sidebar-gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  max-width: 320px;
}
.sidebar-gallery .gallery-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  color: var(--white-color);
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, 20px);
}
.sidebar-gallery .gallery-btn:hover {
  color: var(--theme-color);
}
.sidebar-gallery .gallery-thumb {
  overflow: hidden;
  position: relative;
  border-radius: 10px;
}
.sidebar-gallery .gallery-thumb:before {
  content: "";
  height: calc(100% - 14px);
  width: calc(100% - 14px);
  background-color: var(--title-color);
  opacity: 0.6;
  position: absolute;
  top: 7px;
  left: 7px;
  border: 1px solid var(--white-color);
  transform: scaleX(0);
  border-radius: inherit;
  transition: 0.4s ease-in-out;
}
.sidebar-gallery .gallery-thumb img {
  width: 100%;
}
.sidebar-gallery .gallery-thumb:hover:before {
  transform: scaleX(1);
}
.sidebar-gallery .gallery-thumb:hover .gallery-btn {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, -50%);
}

.recent-post {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.recent-post:last-child {
  margin-bottom: 0;
}
.recent-post .media-img {
  margin-right: 15px;
  width: 85px;
  overflow: hidden;
  border-radius: 20px;
  position: relative;
}
.recent-post .media-img img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.recent-post .media-img:after {
  content: "\f0c1";
  font-family: var(--icon-font);
  position: absolute;
  inset: 0;
  text-align: center;
  line-height: 85px;
  font-size: 24px;
  background-color: rgba(0, 0, 0, 0.7);
  color: var(--theme-color);
  pointer-events: none;
  transform: scale(0);
  transition: 0.4s ease-in-out;
}
.recent-post .post-title {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.5;
  margin: 0 0 8px 0;
  font-family: var(--title-font);
  text-transform: capitalize;
}
.recent-post .recent-post-meta a {
  text-transform: capitalize;
  font-size: 16px;
  color: var(--body-color);
  font-family: var(--body-font);
}
.recent-post .recent-post-meta a i {
  margin-right: 6px;
  color: var(--theme-color);
}
.recent-post .recent-post-meta a:hover {
  color: var(--theme-color);
}
.recent-post:hover .media-img img {
  transform: scale(1.1);
}
.recent-post:hover .media-img:after {
  transform: scale(1);
}

.sidebar-area {
  margin-bottom: -10px;
}
.sidebar-area input {
  background-color: var(--white-color);
}
.sidebar-area select {
  background-color: var(--white-color);
}
.sidebar-area .widget_archive .menu {
  margin: none;
}
.sidebar-area .widget_archive > ul {
  margin: none;
}
.sidebar-area .widget_categories .menu {
  margin: none;
}
.sidebar-area .widget_categories > ul {
  margin: none;
}
.sidebar-area .widget_meta .menu {
  margin: none;
}
.sidebar-area .widget_meta > ul {
  margin: none;
}
.sidebar-area .widget_nav_menu .menu {
  margin: none;
}
.sidebar-area .widget_nav_menu > ul {
  margin: none;
}
.sidebar-area .widget_pages .menu {
  margin: none;
}
.sidebar-area .widget_pages > ul {
  margin: none;
}
.sidebar-area .sidebar-gallery {
  margin-bottom: 0 !important;
}
.sidebar-area .widget_shopping_cart .th-btn {
  margin-right: 10px;
  padding: 8px 22px;
  font-size: 14px;
}

.download-widget-wrap .th-btn {
  width: 100%;
}
.download-widget-wrap .th-btn:first-child {
  margin-bottom: 15px;
}
.download-widget-wrap .th-btn.style2 {
  color: var(--body-color);
}
.download-widget-wrap .th-btn.style2:before {
  background-color: var(--theme-color);
}
.download-widget-wrap .th-btn.style2:hover {
  color: var(--white-color);
  border-color: var(--theme-color);
}

.price_slider_wrapper {
  margin-top: -0.5em;
}
.price_slider_wrapper .price_label span {
  display: inline-block;
  color: var(--body-color);
}
.price_slider_wrapper .ui-slider {
  height: 6px;
  position: relative;
  width: 100%;
  background-color: var(--theme-color);
  border: none;
  margin-top: 15px;
  margin-bottom: 25px;
  cursor: pointer;
  border-radius: 0;
}
.price_slider_wrapper .ui-slider-range {
  border: none;
  cursor: pointer;
  position: absolute;
  top: 0;
  height: 100%;
  z-index: 1;
  display: block;
  background-color: var(--title-color);
}
.price_slider_wrapper .ui-slider-handle {
  width: 16px;
  height: 16px;
  line-height: 16px;
  border-radius: 50%;
  text-align: center;
  padding: 0;
  cursor: pointer;
  position: absolute;
  margin-top: -5px;
  z-index: 2;
  background-color: var(--white-color);
  border: 3px solid var(--title-color);
  transform: translateX(-1px);
}
.price_slider_wrapper .ui-slider-handle:focus {
  outline: 0;
  box-shadow: 1.5px 2.598px 10px 0 rgba(0, 0, 0, 0.15);
}
.price_slider_wrapper .ui-slider-handle:last-child {
  transform: translateX(-9px);
}
.price_slider_wrapper .button {
  background-color: var(--theme-color);
  color: var(--white-color);
  font-weight: 500;
  line-height: 1.6;
  text-transform: capitalize;
  text-align: center;
  border: none;
  display: inline-block;
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 7px 20px;
  min-width: 100px;
  font-size: 14px;
  border-radius: 0;
  transition: 0.4s ease-in;
}
.price_slider_wrapper .button:hover {
  background-color: var(--title-color);
}
.price_slider_wrapper button {
  background-color: var(--theme-color);
  color: var(--white-color);
  font-weight: 500;
  line-height: 1.6;
  text-transform: capitalize;
  text-align: center;
  border: none;
  display: inline-block;
  overflow: hidden;
  position: relative;
  z-index: 2;
  padding: 7px 20px;
  min-width: 100px;
  font-size: 14px;
  border-radius: 0;
  transition: 0.4s ease-in;
}
.price_slider_wrapper button:hover {
  background-color: var(--title-color);
}

.widget_shopping_cart .widget_title {
  margin-bottom: 35px;
  border-bottom: none;
}
.widget_shopping_cart ul {
  margin: 0;
  padding: 0;
}
.widget_shopping_cart ul li {
  list-style-type: none;
}
.widget_shopping_cart .mini_cart_item {
  position: relative;
  padding: 30px 30px 30px 90px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 0;
  text-align: left;
}
.widget_shopping_cart .mini_cart_item:first-child {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.widget_shopping_cart .cart_list a:not(.remove) {
  display: block;
  color: var(--body-color);
  font-size: 16px;
  font-weight: 500;
  font-family: var(--title-font);
  font-weight: 600;
  color: var(--title-color);
}
.widget_shopping_cart .cart_list a:not(.remove):hover {
  color: var(--theme-color);
}
.widget_shopping_cart .cart_list a.remove {
  position: absolute;
  top: 50%;
  left: 95%;
  transform: translateY(-50%);
  color: var(--body-color);
}
.widget_shopping_cart .cart_list a.remove:hover {
  color: var(--theme-color);
}
.widget_shopping_cart .cart_list img {
  width: 75px;
  height: 75px;
  position: absolute;
  left: 0;
  top: 18px;
}
.widget_shopping_cart .quantity {
  display: inline-flex;
  white-space: nowrap;
  vertical-align: top;
  margin-right: 20px;
  font-size: 14px;
  font-weight: 500;
}
.widget_shopping_cart .total {
  margin-top: 20px;
  font-size: 18px;
  color: var(--title-color);
  font-family: var(--body-font);
}
.widget_shopping_cart .total strong {
  font-family: var(--title-font);
}
.widget_shopping_cart .amount {
  padding-left: 5px;
}
.widget_shopping_cart .th-btn {
  margin-right: 15px;
}
.widget_shopping_cart .th-btn:last-child {
  margin-right: 0;
}

.th-video-widget .video-thumb {
  position: relative;
}
.th-video-widget .play-btn {
  --icon-size: 60px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.th-video-widget .play-btn i {
  font-size: 16px;
}
.th-video-widget .video-thumb-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 10px;
  margin-bottom: -0.3em;
}

.widget_recent_entries ul {
  margin: -0.3em 0 0 0;
  padding: 0;
  list-style: none;
}
.widget_recent_entries ul li > a {
  color: var(--body-color);
  font-weight: 500;
  display: inline-block;
}
.widget_recent_entries ul li > a:hover {
  color: var(--theme-color);
}
.widget_recent_entries ul li span.post-date {
  font-size: 14px;
}
.widget_recent_entries ul li:not(:last-child) {
  border-bottom: 1px solid #dadada;
  padding-bottom: 12px;
  margin-bottom: 12px;
}

.widget_recent_comments ul {
  list-style-type: none;
  padding-left: 0;
  margin-bottom: 0;
}
.widget_recent_comments ol {
  margin-bottom: 0;
}
.widget_recent_comments li {
  margin-bottom: 0;
  color: var(--body-color);
  padding-left: 30px;
  position: relative;
}
.widget_recent_comments li:before {
  content: "\f086";
  position: absolute;
  left: 0;
  top: -1px;
  color: var(--theme-color);
  font-family: var(--icon-font);
}
.widget_recent_comments li:not(:last-child) {
  padding-bottom: 12px;
}
.widget_recent_comments .avatar {
  margin-top: 0.4em;
}
.widget_recent_comments article {
  line-height: 1.5;
}
.widget_recent_comments a {
  color: inherit;
}
.widget_recent_comments a:hover {
  color: var(--theme-color);
}

ol.widget_recent_comments {
  margin-top: -0.11em;
  padding-left: 0;
}

ul.widget_recent_comments {
  margin-top: -0.11em;
  padding-left: 0;
}

.widget_recent_comments.has-avatars li {
  padding-left: 0;
  padding-bottom: 0 !important;
}
.widget_recent_comments.has-avatars li:before {
  display: none;
}

.calendar_wrap {
  position: relative;
  background-color: #fff;
  padding-bottom: 0;
  border: none;
}
.calendar_wrap span[class*=wp-calendar-nav] {
  position: absolute;
  top: 9px;
  left: 20px;
  font-size: 14px;
  color: var(--white-color);
  font-weight: 400;
  z-index: 1;
  line-height: 1.7;
}
.calendar_wrap span[class*=wp-calendar-nav] a {
  color: inherit;
}
.calendar_wrap caption {
  caption-side: top;
  text-align: center;
  color: var(--white-color);
  background-color: var(--theme-color);
}
.calendar_wrap th {
  font-size: 14px;
  padding: 5px 5px;
  border: none;
  text-align: center;
  border-right: 1px solid #fff;
  color: var(--title-color);
  font-weight: 500;
}
.calendar_wrap th:first-child {
  border-left: 1px solid #eee;
}
.calendar_wrap th:last-child {
  border-right: 1px solid #eee;
}
.calendar_wrap table th {
  font-weight: 500;
}
.calendar_wrap td {
  font-size: 14px;
  padding: 5px 5px;
  color: #01133c;
  border: 1px solid #eee;
  text-align: center;
  background-color: transparent;
  transition: all ease 0.4s;
}
.calendar_wrap #today {
  color: var(--theme-color);
  background-color: var(--white-color);
  border-color: #ededed;
}
.calendar_wrap thead {
  background-color: #fff;
}
.calendar_wrap a {
  color: inherit;
  text-decoration: none;
}
.calendar_wrap a:hover {
  color: var(--title-color);
}

ol.widget_rss {
  padding-left: 0;
}

.widget_rss {
  list-style-type: none;
}
.widget_rss ul {
  margin: -0.2em 0 -0.5em 0;
  padding: 0;
  list-style: none;
}
.widget_rss ul .rsswidget {
  color: var(--title-color);
  font-family: var(--theme-font);
  font-size: 18px;
  display: block;
  margin-bottom: 10px;
}
.widget_rss ul .rssSummary {
  font-size: 14px;
  margin-bottom: 7px;
  line-height: 1.5;
}
.widget_rss ul a {
  display: block;
  font-weight: 600;
  color: inherit;
}
.widget_rss ul a:hover {
  color: var(--theme-color);
}
.widget_rss ul .rss-date {
  font-size: 14px;
  display: inline-block;
  margin-bottom: 5px;
  font-weight: 400;
  color: var(--title-color);
}
.widget_rss ul .rss-date:before {
  content: "\f073";
  font-family: var(--icon-font);
  margin-right: 10px;
  font-weight: 300;
  color: var(--theme-color);
}
.widget_rss ul cite {
  font-weight: 500;
  color: var(--title-color);
  font-family: var(--body-font);
  font-size: 14px;
}
.widget_rss ul cite:before {
  content: "";
  position: relative;
  top: -1px;
  left: 0;
  width: 20px;
  height: 2px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
  background-color: var(--theme-color);
}
.widget_rss li:not(:last-child) {
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 16px;
}
.widget_rss a:hover {
  color: var(--theme-color);
}

.textwidget {
  margin-top: -0.1em;
}

/* ==============================================
   Footer Styles start
   ============================================== */
.footer-widget {
  margin-bottom: 50px;
  padding: 0;
  border: none;
  padding-bottom: 0;
  background-color: transparent;
  box-shadow: none;
}
.footer-widget .widget {
  padding: 0;
  border: none;
  padding-bottom: 0;
  background-color: transparent;
  box-shadow: none;
}
.footer-widget .form-group > i {
  color: var(--theme-color);
  top: 18px;
}
.footer-widget .sidebar-gallery {
  max-width: 287px;
  gap: 11px;
  max-width: 250px;
}
.footer-widget .sidebar-gallery .gallery-thumb {
  border-radius: 5px;
}
.footer-widget .widget_title {
  max-width: 270px;
  color: var(--white-color);
  font-weight: 600;
  text-transform: capitalize;
  margin: -0.12em 0 32px 0;
  padding: 0 0 15px 0;
  position: relative;
}
.footer-widget .widget_title:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 68px;
  height: 1px;
  background-color: var(--theme-color2);
}
.footer-widget .widget_title img {
  margin: -7px 10px 0 0;
}
.footer-widget .recent-post {
  max-width: 300px;
  margin-top: -0.4em;
  margin-bottom: 20px;
}
.footer-widget .recent-post .media-img {
  max-width: 74px;
}
.footer-widget .recent-post .media-img:after {
  line-height: 74px;
}
.footer-widget .recent-post .post-title {
  color: var(--white-color);
  font-weight: 500;
}
.footer-widget .recent-post:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}
.footer-widget .recent-post .recent-post-meta a {
  font-weight: 400;
  line-height: 1.2;
}
.footer-widget .recent-post .recent-post-meta a:hover i {
  color: var(--theme-color);
}
.footer-widget .recent-post .recent-post-meta i {
  color: var(--theme-color);
}
.footer-widget .menu-all-pages-container .menu li {
  margin-left: 23px;
}

.footer-widget.widget_archive ul {
  margin-top: -4px;
}
.footer-widget.widget_archive .menu {
  margin-bottom: -4px;
}
.footer-widget.widget_archive > ul {
  margin-bottom: -4px;
}
.footer-widget.widget_archive a {
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  margin-bottom: 18px;
  font-family: var(--body-font);
  color: var(--white-color);
  display: block;
  max-width: 100%;
  width: -moz-max-content;
  width: max-content;
  padding-right: 0;
  background-color: transparent;
  border-bottom: none;
  position: relative;
  border: 0;
}
.footer-widget.widget_archive a:before {
  content: "\f061";
  position: absolute;
  left: -23px;
  top: 2px;
  font-size: 0.9em;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: "Font Awesome 6 Pro";
  transform: rotate(-41deg);
  color: var(--theme-color2);
  transition: all 0.4s;
}
.footer-widget.widget_archive a:hover {
  background-color: transparent;
  color: var(--theme-color2);
}
.footer-widget.widget_archive a:hover:before {
  color: var(--theme-color2);
  transform: rotate(0);
}
.footer-widget.widget_archive li > span {
  width: auto;
  height: auto;
  position: relative;
  background-color: transparent;
  color: var(--body-color);
  line-height: 1;
}
.footer-widget.widget_archive li:last-child a {
  margin-bottom: 0;
}

.footer-widget.widget_categories ul {
  margin-top: -4px;
}
.footer-widget.widget_categories .menu {
  margin-bottom: -4px;
}
.footer-widget.widget_categories > ul {
  margin-bottom: -4px;
}
.footer-widget.widget_categories a {
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  margin-bottom: 18px;
  font-family: var(--body-font);
  color: var(--white-color);
  display: block;
  max-width: 100%;
  width: -moz-max-content;
  width: max-content;
  padding-right: 0;
  background-color: transparent;
  border-bottom: none;
  position: relative;
  border: 0;
}
.footer-widget.widget_categories a:before {
  content: "\f061";
  position: absolute;
  left: -23px;
  top: 2px;
  font-size: 0.9em;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: "Font Awesome 6 Pro";
  transform: rotate(-41deg);
  color: var(--theme-color2);
  transition: all 0.4s;
}
.footer-widget.widget_categories a:hover {
  background-color: transparent;
  color: var(--theme-color2);
}
.footer-widget.widget_categories a:hover:before {
  color: var(--theme-color2);
  transform: rotate(0);
}
.footer-widget.widget_categories li > span {
  width: auto;
  height: auto;
  position: relative;
  background-color: transparent;
  color: var(--body-color);
  line-height: 1;
}
.footer-widget.widget_categories li:last-child a {
  margin-bottom: 0;
}

.footer-widget.widget_meta ul {
  margin-top: -4px;
}
.footer-widget.widget_meta .menu {
  margin-bottom: -4px;
}
.footer-widget.widget_meta > ul {
  margin-bottom: -4px;
}
.footer-widget.widget_meta a {
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  margin-bottom: 18px;
  font-family: var(--body-font);
  color: var(--white-color);
  display: block;
  max-width: 100%;
  width: -moz-max-content;
  width: max-content;
  padding-right: 0;
  background-color: transparent;
  border-bottom: none;
  position: relative;
  border: 0;
}
.footer-widget.widget_meta a:before {
  content: "\f061";
  position: absolute;
  left: -23px;
  top: 2px;
  font-size: 0.9em;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: "Font Awesome 6 Pro";
  transform: rotate(-41deg);
  color: var(--theme-color2);
  transition: all 0.4s;
}
.footer-widget.widget_meta a:hover {
  background-color: transparent;
  color: var(--theme-color2);
}
.footer-widget.widget_meta a:hover:before {
  color: var(--theme-color2);
  transform: rotate(0);
}
.footer-widget.widget_meta li > span {
  width: auto;
  height: auto;
  position: relative;
  background-color: transparent;
  color: var(--body-color);
  line-height: 1;
}
.footer-widget.widget_meta li:last-child a {
  margin-bottom: 0;
}

.footer-widget.widget_nav_menu ul {
  margin-top: -4px;
}
.footer-widget.widget_nav_menu .menu {
  margin-bottom: -4px;
}
.footer-widget.widget_nav_menu > ul {
  margin-bottom: -4px;
}
.footer-widget.widget_nav_menu a {
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  margin-bottom: 18px;
  font-family: var(--body-font);
  color: var(--white-color);
  display: block;
  max-width: 100%;
  width: -moz-max-content;
  width: max-content;
  padding-right: 0;
  background-color: transparent;
  border-bottom: none;
  position: relative;
  border: 0;
}
.footer-widget.widget_nav_menu a:before {
  content: "\f061";
  position: absolute;
  left: -23px;
  top: 2px;
  font-size: 0.9em;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: "Font Awesome 6 Pro";
  transform: rotate(-41deg);
  color: var(--theme-color2);
  transition: all 0.4s;
}
.footer-widget.widget_nav_menu a:hover {
  background-color: transparent;
  color: var(--theme-color2);
}
.footer-widget.widget_nav_menu a:hover:before {
  color: var(--theme-color2);
  transform: rotate(0);
}
.footer-widget.widget_nav_menu li > span {
  width: auto;
  height: auto;
  position: relative;
  background-color: transparent;
  color: var(--body-color);
  line-height: 1;
}
.footer-widget.widget_nav_menu li:last-child a {
  margin-bottom: 0;
}

.footer-widget.widget_pages ul {
  margin-top: -4px;
}
.footer-widget.widget_pages .menu {
  margin-bottom: -4px;
}
.footer-widget.widget_pages > ul {
  margin-bottom: -4px;
}
.footer-widget.widget_pages a {
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  margin-bottom: 18px;
  font-family: var(--body-font);
  color: var(--white-color);
  display: block;
  max-width: 100%;
  width: -moz-max-content;
  width: max-content;
  padding-right: 0;
  background-color: transparent;
  border-bottom: none;
  position: relative;
  border: 0;
}
.footer-widget.widget_pages a:before {
  content: "\f061";
  position: absolute;
  left: -23px;
  top: 2px;
  font-size: 0.9em;
  background-color: transparent;
  border: none;
  color: inherit;
  font-family: "Font Awesome 6 Pro";
  transform: rotate(-41deg);
  color: var(--theme-color2);
  transition: all 0.4s;
}
.footer-widget.widget_pages a:hover {
  background-color: transparent;
  color: var(--theme-color2);
}
.footer-widget.widget_pages a:hover:before {
  color: var(--theme-color2);
  transform: rotate(0);
}
.footer-widget.widget_pages li > span {
  width: auto;
  height: auto;
  position: relative;
  background-color: transparent;
  color: var(--body-color);
  line-height: 1;
}
.footer-widget.widget_pages li:last-child a {
  margin-bottom: 0;
}

.footer-text {
  margin-top: -0.5em;
  margin-bottom: 25px;
}

.footer-wrapper {
  --border-color: rgba(255, 255, 255, 0.3);
  --body-color: #788094;
  position: relative;
  z-index: 2;
  background-color: var(--title-color);
  overflow: hidden;
}
.footer-wrapper .th-social a {
  background-color: #1f2432;
  color: var(--white-color);
}
.footer-wrapper .th-social a:hover {
  background-color: var(--theme-color);
}
.footer-wrapper .social-links a {
  margin: 0 30px 0 0;
}
.footer-wrapper .footer-shape-1 {
  top: 24%;
  left: 3%;
}
.footer-wrapper .footer-shape-2 {
  right: 6%;
  bottom: 18%;
}
.footer-wrapper .footer-bottom-shape {
  height: 120px;
  width: 100%;
  background: var(--theme-color2);
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
}

.widget-area {
  padding-top: 100px;
  padding-bottom: 40px;
}

.sticky-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}

.footer-links ul {
  padding: 0;
  margin: 0;
}
.footer-links li {
  font-family: var(--body-font);
  display: inline-block;
  padding-right: 15px;
  margin-right: 10px;
  position: relative;
}
.footer-links li:after {
  content: "";
  height: 20px;
  width: 1px;
  background-color: var(--body-color);
  position: absolute;
  top: 50%;
  right: 0;
  margin: -10px 0;
}
.footer-links li:last-child {
  margin-right: 0;
  padding-right: 0;
}
.footer-links li:last-child:after {
  display: none;
}
.footer-links a {
  font-family: inherit;
  color: var(--body-color);
}
.footer-links a:hover {
  color: var(--theme-color);
}

.th-widget-contact {
  max-width: 265px;
  max-width: 280px;
}
.th-widget-contact .footer-info-title {
  font-size: 20px;
  color: var(--white-color);
  line-height: 1;
}

.footer-newsletter {
  display: flex;
  justify-content: space-between;
  gap: 25px;
  padding-left: 60px;
}
.footer-newsletter .newsletter-title {
  max-width: 425px;
  margin-bottom: 0;
}

.footer-text {
  margin-bottom: 18px;
  color: var(--white-color);
}

.footer-info-title {
  font-size: 20px;
  color: var(--white-color);
  line-height: 1;
  margin-bottom: 8px;
}

.footer-wrapper.footer-default {
  padding-top: 80px;
  background-color: #0018a6;
}

.footer-logo-wrap {
  display: flex;
  justify-content: space-between;
  padding: 24px 40px;
  border-radius: 50px;
  position: relative;
  gap: 25px;
  flex-wrap: wrap;
  border: 1px solid rgba(255, 255, 255, 0.2509803922);
}
.footer-logo-wrap:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: var(--white-color);
  border-radius: 50px;
  opacity: 0.16;
  z-index: -1;
}

.footer-top-social {
  display: flex;
  align-items: center;
}
.footer-top-social .th-social a {
  border-radius: 100%;
  border-color: 1px solid var(--white-color);
}
.footer-top-social .th-social a:hover {
  color: var(--black-color);
  background-color: var(--theme-color2);
}

.footer-layout1 {
  background-position: top center;
  background-color: transparent;
}
.footer-layout1 .widget-area {
  padding-top: 80px;
  padding-bottom: 30px;
}
.footer-layout1 .newsletter-form {
  max-width: 600px;
  margin-left: auto;
}
.footer-layout1 .newsletter-form .th-btn.style3 {
  position: absolute;
  right: 5px;
  top: 5px;
  padding: 16px 13px;
  min-width: 76px;
}
.footer-layout1 .newsletter-form .th-btn.style3:hover {
  color: var(--white-color);
}
.footer-layout1 .copyright-wrap {
  padding: 12px 0;
  background-color: var(--theme-color);
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}
.footer-layout1 .copyright-wrap .copyright-text {
  color: var(--white-color);
}
.footer-layout1 .copyright-wrap .copyright-text a {
  color: var(--theme-color2);
}
.footer-layout1 .th-social a {
  border-radius: 50%;
  background: 0 0;
}
.footer-layout1 .th-social a:hover {
  background-color: var(--theme-color2);
  color: var(--title-color);
}
.footer-layout1 .th-widget-about .about-bottom-title {
  font-size: 20px;
  color: var(--white-color);
  line-height: 1;
  margin-bottom: 8px;
}
.footer-layout1 .th-widget-about .bottom-info {
  display: flex;
  gap: 11px;
  align-items: baseline;
}
.footer-layout1 .th-widget-about .bottom-info .icon {
  color: var(--theme-color2);
  font-size: 13px;
}
.footer-layout1 .th-widget-about .bottom-info p {
  color: var(--white-color);
  padding-right: 10px;
  margin-bottom: 0;
}

.footer-wrapper.footer-layout1 {
  overflow: initial;
  background-color: var(--theme-color);
}

.footer-wrapper.footer-layout2 {
  overflow: initial;
  background-color: #252525 !important;
}

.footer-top-shape {
  position: absolute;
  left: 0;
  right: 0;
  top: -115px;
  height: 116px;
  z-index: -1;
  width: 100%;
}

.footer-layout2 {
  --body-color: #b5b5b5;
  --th-border-color: rgba(1, 125, 3, 0.5);
  background-color: #002d00;
}
.footer-layout2 a:before {
  transition: 0.3s;
}
.footer-layout2 a:hover {
  color: var(--theme-color2) !important;
}
.footer-layout2 a:hover:before {
  color: var(--theme-color2) !important;
}
.footer-layout2 .th-social a {
  background-color: #123c12;
  color: var(--white-color) !important;
  border-radius: 10px;
}
.footer-layout2 .th-social a:hover {
  background-color: var(--theme-color);
}
.footer-layout2 .copyright-wrap {
  background-size: auto;
  background-position: top center;
  background-repeat: repeat-x;
  background-color: var(--theme-color);
  padding-top: 45px;
  margin-top: -10px;
}
.footer-layout2 .newsletter-wrap {
  padding: 80px 0;
  background-color: transparent;
  border-radius: 0;
  border-bottom: 1px solid var(--th-border-color);
  gap: 20px;
}
.footer-layout2 .newsletter-content {
  display: inline-flex;
  align-items: center;
  gap: 30px;
}

.footer-top-newsletter {
  background-color: var(--smoke-color2);
  border-bottom: 1px solid var(--th-border-color);
}
.footer-top-newsletter .newsletter-wrap {
  padding: 80px 0;
  background-color: transparent;
  border-radius: 0;
  border-bottom: 1px solid var(--th-border-color);
  gap: 20px;
  border-bottom: none;
}
.footer-top-newsletter .newsletter-wrap .form-control {
  border-radius: 99px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.06);
}
.footer-top-newsletter .newsletter-wrap .th-btn {
  border-radius: 99px;
}
.footer-top-newsletter .newsletter-content {
  display: inline-flex;
  align-items: center;
  gap: 30px;
}
.footer-top-newsletter .newsletter-title {
  color: var(--title-color);
}

.footer-layout1.style-2 {
  background-color: #070707;
}
.footer-layout1.style-2 .subscribe-box {
  padding: 60px 0 60px;
  border-bottom: 1px solid #484b4d;
}
.footer-layout1.style-2 .th-widget-contact .footer-info-title {
  font-weight: 600;
  margin-bottom: 12px;
  margin-top: -0.12em;
}
.footer-layout1.style-2 .newsletter-form .th-btn.style3 {
  background-color: var(--theme-color3);
  box-shadow: var(--theme-color3) 0 3px 8px -2px;
  width: 76px;
  height: 46px;
  font-size: 20px;
}
.footer-layout1.style-2 .newsletter-form .th-btn.style3:hover {
  background-color: var(--theme-color);
}
.footer-layout1.style-2 .footer-widget .widget_title::after {
  background-color: var(--theme-color3);
}
.footer-layout1.style-2 .footer-widget .info-box_icon {
  color: var(--theme-color3);
}
.footer-layout1.style-2 .footer-widget.widget_nav_menu a::before {
  color: var(--theme-color3);
}
.footer-layout1.style-2 .footer-widget.widget_nav_menu a:hover {
  color: var(--theme-color3);
}
.footer-layout1.style-2 .bottom-info .icon {
  color: var(--theme-color3);
}
.footer-layout1.style-2 .copyright-wrap {
  background-color: var(--theme-color3);
}
.footer-layout1.style-2 .copyright-wrap .copyright-text a {
  color: var(--title-color);
}
.footer-layout1.style-2 .th-social a:hover {
  background: var(--title-color);
  color: var(--white-color);
}

.about-logo {
  margin-bottom: 15px;
}

.th-widget-about {
  max-width: 315px;
}
.th-widget-about .about-logo {
  margin-bottom: 40px;
}
.th-widget-about .about-text {
  margin-bottom: 30px;
  margin-top: -0.9em;
  color: var(--white-color);
}

.newsletter-form {
  position: relative;
  max-width: 465px;
  display: flex;
  align-items: center;
  gap: 10px;
  display: flex;
  width: 100%;
  max-width: 500px;
  gap: 10px;
}
.newsletter-form .th-btn {
  min-width: 145px;
  padding: 21px 20px;
  min-width: 150px;
}
.newsletter-form .form-group {
  margin-bottom: 0;
  width: 100%;
}
.newsletter-form .form-group > i {
  color: var(--theme-color);
}
.newsletter-form input {
  background-color: var(--white-color);
  border: 1px solid var(--white-color);
  width: 100%;
  padding-right: 91px;
}
.newsletter-form input:focus {
  background-color: var(--white-color);
  color: var(--body-color);
}
.newsletter-form .newsletter-btn {
  display: inline-block;
  border: none;
  background-color: var(--theme-color);
  color: var(--title-color);
  width: 55px;
  height: 55px;
  line-height: 55px;
  min-width: 55px;
}

.copyright-wrap {
  padding: 66px 0 26px;
  background-position: bottom;
}
.copyright-wrap .copyright-text {
  color: var(--title-color);
}
.copyright-wrap .copyright-text a {
  color: var(--theme-color);
}
.copyright-wrap .copyright-text a:hover {
  color: var(--title-color);
}

.copyright-wrap.bg-title .copyright-text a:hover {
  color: var(--theme-color);
}

.copyright-text {
  margin: 0;
}
.copyright-text a {
  color: var(--theme-color);
}
.copyright-text a:hover {
  color: var(--white-color);
}

.newsletter-widget {
  width: 330px;
}
.newsletter-widget .newsletter-form {
  flex-direction: column;
  gap: 15px;
}
.newsletter-widget .newsletter-form .th-btn {
  width: 100%;
}
.newsletter-widget .form-group {
  margin-bottom: 0;
}
.newsletter-widget .icon-btn {
  color: var(--white-color);
  padding: 0;
  border: none;
  position: absolute;
  border-radius: 30px;
  width: 76px;
  height: 46px;
  line-height: 4px;
  right: 5px;
  top: 5px;
  background: var(--theme-color);
}
.newsletter-widget .icon-btn:hover {
  background-color: var(--theme-color2);
  color: var(--title-color);
}
.newsletter-widget .bottom {
  display: flex;
  gap: 11px;
  align-items: baseline;
}
.newsletter-widget .bottom .icon i {
  color: var(--theme-color2);
  font-size: 13px;
}
.newsletter-widget p {
  color: var(--white-color);
  padding-right: 10px;
}

.newsletter-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: var(--theme-color);
  padding: 50px;
  border-radius: 25px;
}
.newsletter-wrap .newsletter-title {
  margin-top: -0.24em;
  margin-bottom: -0.24em;
  max-width: 390px;
  color: var(--white-color);
  font-weight: 600;
}
.newsletter-wrap .newsletter-text {
  margin-bottom: -0.5em;
  max-width: 400px;
}
.newsletter-wrap .form-control {
  border-radius: 10px;
}
.newsletter-wrap .th-btn {
  border-radius: 10px;
}

.subscribe-box {
  position: relative;
  z-index: 1;
  padding: 30px 0 30px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.subscribe-box_title {
  color: var(--white-color);
  font-size: 36px;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 0;
  margin-top: -0.25em;
}

.subscribe-box_text {
  font-size: 18px;
  font-weight: 600;
  font-family: var(--title-font);
  margin-bottom: -0.45em;
}

.info-box {
  display: flex;
  margin-bottom: 27px;
}
.info-box:last-child {
  margin-bottom: 0;
}

.info-box_icon {
  width: 65px;
  height: 65px;
  min-width: 65px;
  line-height: 65px;
  font-size: 28px;
  background-color: #fff;
  color: var(--theme-color);
  border-radius: 50px;
  text-align: center;
  margin-right: 15px;
  border: 1px solid rgba(255, 255, 255, 0.4509803922);
}

.info-icon2 {
  width: 45px;
  height: 45px;
  min-width: 45px;
  line-height: 45px;
  font-size: 22px;
}

.info-box_text {
  display: block;
  color: var(--white-color);
  margin-top: -0.45em;
  margin-bottom: -0.45em;
  align-self: center;
  font-size: 20px;
  text-align: left;
}

.info-text2 {
  font-size: 15px;
}

.info-box_link {
  display: inline-block;
  color: var(--white-color);
}
.info-box_link:hover {
  color: var(--theme-color2);
}

/* ==============================================
   Footer Styles end
   ============================================== */
/* ==============================================
   Breadcumb Styles start
   ============================================== */
.breadcumb-menu {
  max-width: 100%;
  padding: 0;
  margin: 25px 0 -0.5em 0;
  list-style-type: none;
  position: relative;
}
.breadcumb-menu li {
  display: inline-block;
  margin-right: 3px;
  padding-right: 3px;
  list-style: none;
  position: relative;
  white-space: normal;
  color: inherit;
  word-break: break-word;
  font-weight: 600;
  font-size: 20px;
  color: var(--title-color);
}
.breadcumb-menu li:after {
  content: "\f054";
  position: relative;
  margin-left: 6px;
  font-weight: 500;
  font-size: 15px;
  color: inherit;
  font-family: var(--icon-font);
}
.breadcumb-menu li:last-child {
  padding-right: 0;
  margin-right: 0;
  color: var(--white-color);
}
.breadcumb-menu li:last-child:after {
  display: none;
}
.breadcumb-menu li:first-child {
  color: var(--white-color);
}
.breadcumb-menu li:first-child a {
  color: var(--white-color);
}
.breadcumb-menu li:first-child span {
  color: var(--white-color);
}
.breadcumb-menu a {
  white-space: normal;
  color: inherit;
  word-break: break-word;
  font-weight: 600;
  font-size: 20px;
  color: var(--title-color);
}
.breadcumb-menu span {
  white-space: normal;
  color: inherit;
  word-break: break-word;
  font-weight: 600;
  font-size: 20px;
  color: var(--title-color);
}

.breadcumb-title {
  margin: -0.2em 0 -0.18em 0;
  line-height: 1.1;
  font-size: 50px;
  font-weight: 600;
  color: var(--white-color);
}

.breadcumb-wrapper {
  background-color: var(--smoke-color2);
  padding: 220px 0 130px 0;
  text-align: start;
  position: relative;
  z-index: 2;
}
.breadcumb-wrapper:has(.breadcrumb-bottom-shape) {
  padding: 295px 0 210px;
  margin-bottom: -10px;
}
.breadcumb-wrapper:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  background-color: var(--black-color);
  opacity: 0.1;
  z-index: -1;
}
.breadcumb-wrapper .breadcrumb-bottom-shape {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px;
  z-index: 1;
  height: 68px;
}
.breadcumb-wrapper .breadcrumb-bottom-shape img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.breadcumb-wrapper .breadcrumb-left {
  top: 37%;
  left: 7%;
}
.breadcumb-wrapper .breadcrumb-right {
  bottom: 19%;
  left: 50%;
}

.th-pagination {
  margin-bottom: 30px;
}
.th-pagination ul {
  margin: 0;
  padding: 0;
}
.th-pagination li {
  display: inline-block;
  margin: 0 3px;
  list-style-type: none;
}
.th-pagination li:last-child {
  margin-right: 0;
}
.th-pagination li:first-child {
  margin-left: 0;
}
.th-pagination a {
  display: inline-block;
  text-align: center;
  position: relative;
  border: none;
  color: var(--title-color);
  background-color: transparent;
  width: 56px;
  height: 56px;
  line-height: 56px;
  z-index: 1;
  font-size: 18px;
  font-weight: 500;
  border-radius: 20px;
  border: 1px solid var(--th-border-color);
}
.th-pagination a:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.th-pagination span {
  display: inline-block;
  text-align: center;
  position: relative;
  border: none;
  color: var(--title-color);
  background-color: transparent;
  width: 56px;
  height: 56px;
  line-height: 56px;
  z-index: 1;
  font-size: 18px;
  font-weight: 500;
  border-radius: 20px;
  border: 1px solid var(--th-border-color);
}
.th-pagination span:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.th-pagination a.active {
  color: var(--white-color);
  background-color: var(--theme-color);
}
.th-pagination span.active {
  color: var(--white-color);
  background-color: var(--theme-color);
}

blockquote {
  font-size: 16px;
  line-height: 1.56;
  padding: 40px 90px 40px 60px;
  font-weight: 400;
  display: block;
  position: relative;
  background-color: transparent;
  margin: 35px 0 45px 0;
  color: var(--title-color);
  font-family: var(--body-font);
  font-style: italic;
  border: 1px solid var(--th-border-color) !important;
  border-radius: 30px;
}
blockquote p {
  font-family: inherit;
  margin-top: -0.3em;
  margin-bottom: 9px;
  line-height: inherit;
  color: inherit;
  width: 100%;
  position: relative;
  z-index: 3;
  font-size: 16px;
  font-weight: 600;
  font-style: normal;
}
blockquote p a {
  color: inherit;
}
blockquote p:has(cite) {
  padding-bottom: 10px;
}
blockquote p cite {
  margin-top: 20px;
  margin-bottom: -0.5em;
  bottom: -32px;
}
blockquote:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  height: 50px;
  width: 33px;
  background-color: var(--white-color);
}
blockquote:after {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  height: 20px;
  width: 25px;
  background-color: var(--theme-color);
  -webkit-clip-path: path("M2.21945 18.2759C.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z");
  clip-path: path("M2.21945 18.2759C.775335 16.6762 0 14.8819 0 11.9734C0 6.8553 3.44484 2.26804 8.45438 0L9.70641 2.01506C5.03057 4.65307 4.11643 8.07633 3.75189 10.2347C4.5048 9.82818 5.49044 9.68633 6.45645 9.77992C8.98576 10.0241 10.9795 12.1898 10.9795 14.8819C10.9795 16.2393 10.4625 17.5411 9.54219 18.5009C8.62192 19.4608 7.37376 20 6.07229 20C5.35256 19.9934 4.64126 19.8376 3.97981 19.5416C3.31836 19.2457 2.71996 18.8154 2.21945 18.2759ZM16.24 18.2759C14.7959 16.6762 14.0205 14.8819 14.0205 11.9734C14.0205 6.8553 17.4654 2.26804 22.4749 0L23.7269 2.01506C19.0511 4.65307 18.137 8.07633 17.7724 10.2347C18.5253 9.82818 19.511 9.68633 20.477 9.77992C23.0063 10.0241 25 12.1898 25 14.8819C25 16.2393 24.483 17.5411 23.5627 18.5009C22.6424 19.4608 21.3943 20 20.0928 20C19.3731 19.9934 18.6618 19.8376 18.0003 19.5416C17.3389 19.2457 16.7405 18.8154 16.24 18.2759Z");
}
blockquote cite {
  display: inline-block;
  font-size: 20px;
  line-height: 1;
  font-weight: 500;
  font-style: normal;
  font-family: var(--title-font);
  white-space: nowrap;
  position: absolute;
  bottom: -17px;
  left: 80px;
  background-color: var(--theme-color);
  color: var(--white-color);
  padding: 7px 40px 7px 15px;
  -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, calc(100% - 25px) 100%, 0 100%);
  border-radius: 10px 0 0 10px;
}
blockquote cite br {
  display: none;
}
blockquote:not(:has(> cite)) p:last-child {
  margin-bottom: -0.3em;
}

blockquote.has-text-align-right {
  padding: 40px;
  margin-bottom: 30px;
}

blockquote.is-large:not(.is-style-plain) {
  padding: 40px;
  margin-bottom: 30px;
}

blockquote.is-style-large:not(.is-style-plain) {
  padding: 40px;
  margin-bottom: 30px;
}

blockquote.style-left-icon {
  padding: 40px;
  margin-bottom: 30px;
  font-size: 18px;
  color: var(--body-color);
  font-weight: 400;
  line-height: 1.556;
  background-color: var(--smoke-color);
  padding-left: 160px;
}
blockquote.style-left-icon:before {
  right: unset;
  left: 56px;
  top: 60px;
  font-size: 6rem;
  font-weight: 400;
  line-height: 4rem;
  color: var(--theme-color);
  text-shadow: none;
}
blockquote.style-left-icon cite {
  color: var(--title-color);
}
blockquote.style-left-icon cite:before {
  background-color: var(--title-color);
  top: 8px;
}

blockquote.has-very-dark-gray-color {
  color: var(--title-color) !important;
}

.has-cyan-bluish-gray-background-color blockquote {
  background-color: var(--white-color);
}

/* ==============================================
   Breadcumb Styles end
   ============================================== */
/* ==============================================
   Slider Styles end
   ============================================== */
.th-hero-wrapper {
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.th-hero-bg {
  position: absolute;
  inset: 0;
}
.th-hero-bg img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hero-title {
  font-size: 84px;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 30px;
  margin-top: -0.2em;
}
.hero-title .title1 {
  display: block;
  max-width: -moz-fit-content;
  max-width: fit-content;
  position: relative;
}
.hero-title .title2 {
  display: block;
  max-width: -moz-fit-content;
  max-width: fit-content;
  position: relative;
}

.hero-1 {
  margin-top: -8px;
  overflow: hidden;
}
.hero-1 .hero-img {
  position: absolute;
  right: 7%;
  bottom: 0;
  z-index: -3;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap {
  position: absolute;
  bottom: 0;
  width: 654px;
  height: 700px;
  z-index: -1;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left {
  position: absolute;
  bottom: -8px;
  transform: rotate(-45deg);
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-1 {
  position: absolute;
  bottom: 0;
  top: -25px;
  left: 205px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-1 .bg-shape {
  background: var(--theme-color);
  display: inline-block;
  height: 300px;
  margin-top: 76px;
  position: relative;
  width: 76px;
  border-top-left-radius: 2px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-1 .bg-shape:before {
  border-bottom: 67px solid var(--theme-color);
  border-left: 76px solid transparent;
  border-right: 0 solid transparent;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  top: -66px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-2 {
  position: absolute;
  bottom: 0;
  top: -140px;
  left: 295px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape {
  background: var(--theme-color2);
  display: inline-block;
  height: 300px;
  margin-top: 76px;
  position: relative;
  width: 76px;
  border-top-left-radius: 2px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape:before {
  border-bottom: 67px solid var(--theme-color2);
  border-left: 76px solid transparent;
  border-right: 0 solid transparent;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  top: -66px;
  width: 0;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right {
  position: absolute;
  bottom: -22px;
  transform: rotate(45deg);
  right: 27%;
  bottom: 98%;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape-3 {
  position: absolute;
  bottom: 0;
  top: -85px;
  left: 254px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape-3 .bg-shape {
  background: var(--theme-color2);
  display: inline-block;
  height: 300px;
  margin-top: 76px;
  position: relative;
  width: 76px;
  border-top-left-radius: 2px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape-3 .bg-shape:before {
  border-bottom: 67px solid var(--theme-color2);
  border-left: 76px solid var(--theme-color2);
  border-right: 0 solid transparent;
  border-top: 66px solid transparent;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  top: -66px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape-4 {
  position: absolute;
  bottom: 0;
  top: 54px;
  left: 343px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape {
  background: var(--theme-color);
  display: inline-block;
  height: 300px;
  margin-top: 76px;
  position: relative;
  width: 76px;
  border-top-left-radius: 2px;
}
.hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape:before {
  border-bottom: 67px solid var(--theme-color);
  border-left: 76px solid var(--theme-color);
  border-right: 0 solid transparent;
  border-top: 66px solid transparent;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  top: -66px;
}
.hero-1 .hero-shape4 {
  bottom: 0;
  left: 0;
}
.hero-1:hover path {
  animation: fillAni 14s ease-in-out;
}
.hero-1 .shape-1 {
  top: 30%;
  left: 7%;
  z-index: -1;
}
.hero-1 .shape-2 {
  top: 23%;
  left: 20%;
}
.hero-1 .shape-3 {
  top: 25%;
  right: 4%;
}
.hero-1 .shape-4 {
  bottom: 25%;
  left: 5%;
}
.hero-1 .shape-5 {
  bottom: 0;
  left: 35%;
}
.hero-1 .shape-6 {
  bottom: 9%;
  right: 5%;
}

.hero-2 {
  overflow: hidden;
  overflow: hidden;
}
.hero-2 .shape-1 {
  top: 30%;
  left: 7%;
  z-index: -1;
  z-index: 1;
}
.hero-2 .shape-2 {
  top: 23%;
  left: 20%;
}
.hero-2 .shape-3 {
  top: 25%;
  right: 4%;
}
.hero-2 .shape-4 {
  bottom: 25%;
  left: 5%;
  bottom: 16%;
  left: 5%;
  z-index: 1;
}
.hero-2 .shape-5 {
  bottom: 0;
  left: 35%;
}
.hero-2 .shape-6 {
  bottom: 9%;
  right: 5%;
}
.hero-2 .th-hero-bg2 {
  position: absolute;
  inset: 0;
}
.hero-2 .th-hero-bg2 img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-2 .hero-bottom-shape {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  z-index: 1;
  height: 68px;
  background: var(--theme-color2);
}
.hero-2 .hero-bottom-shape img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-2 .icon-box {
  position: absolute;
  top: calc(50% - 20px);
  left: 7%;
  width: 56px;
}
.hero-2 .icon-box .slider-arrow {
  background-color: transparent;
  border: 1px solid var(--white-color);
}
.hero-2 .icon-box .slider-arrow:hover {
  background-color: var(--theme-color);
  border-color: var(--theme-color);
}
.hero-2 .icon-box .slider-arrow:first-child {
  margin-bottom: 10px;
}

.svg-img path {
  fill-opacity: 1;
  stroke: var(--theme-color);
  fill: #cee3c6;
  stroke-width: 1;
  stroke-dasharray: 5000;
  stroke-dashoffset: 5000;
}

.hero-style1 {
  position: relative;
  z-index: 6;
  padding: 358px 0 207px;
}
.hero-style1 .sub-title {
  margin-bottom: 25px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 15px;
  margin-top: -0.4em;
  padding-top: 0;
  letter-spacing: normal;
  font-size: 22px;
  text-transform: capitalize;
  font-weight: 600;
}
.hero-style1 .sub-title::before {
  display: none;
}
.hero-style1 .title-img {
  position: absolute;
  bottom: 72%;
  right: 5%;
}

.hero-style2 {
  position: relative;
  z-index: 6;
  padding: 150px 0 120px !important;
}
.hero-style2 .hero-title {
  color: var(--white-color);
  margin-bottom: 12px;
  font-weight: 800;
}
.hero-style2 .sub-title {
  margin-bottom: 25px;
  color: var(--theme-color2);
  gap: 22px;
  letter-spacing: normal;
  text-transform: capitalize;
}
.hero-style2 .sub-title:before {
  background-color: var(--theme-color2);
}
.hero-style2 .sub-title::after {
  height: 8px;
  width: 8px;
  background-color: var(--theme-color2);
  position: absolute;
  left: 60px;
  transform: rotate(45deg);
}
.hero-style2 .hero-text {
  color: var(--white-color);
  margin-bottom: 32px;
}
.hero-style2 .round-line {
  position: relative;
  padding-left: 30px;
  padding-right: 41px;
}

.hero2-bottom-from-area {
  background-color: var(--white-color);
  padding: 60px 0;
}
.hero2-bottom-from-area .hero-from-top-shape {
  position: absolute;
  left: 0;
  right: 0;
  top: -75px;
  z-index: 2;
  height: 95px;
  background: var(--theme-color2);
}
.hero2-bottom-from-area .hero-form-wrap .form-title {
  font-size: 30px;
  text-align: center;
  line-height: 1.33;
  margin-bottom: 30px;
}
.hero2-bottom-from-area .hero-form-wrap .form-group > i.fa-chevron-down {
  color: var(--smoke-color);
  background: 0 0;
  z-index: 3;
}
.hero2-bottom-from-area .form-control::-moz-placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area .form-control::placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area .form-select::-moz-placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area .form-select::placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area input::-moz-placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area input::placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area select::-moz-placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area select::placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area textarea::-moz-placeholder {
  font-size: 14px;
}
.hero2-bottom-from-area textarea::placeholder {
  font-size: 14px;
}

.hero2-animated-bubble {
  opacity: 0;
  opacity: 1;
}
.hero2-animated-bubble .bubbles {
  position: absolute;
  z-index: 9;
}
.hero2-animated-bubble .bubbles:first-child {
  bottom: 20%;
  left: 10%;
  animation: bubble-animation 4.5s infinite ease-in -6.57s;
}
.hero2-animated-bubble .bubbles:nth-child(2) {
  bottom: 10%;
  left: 8%;
  animation: bubble-animation 4.5s infinite ease-in -5.07s;
}
.hero2-animated-bubble .bubbles:nth-child(3) {
  bottom: 5%;
  left: 12%;
  animation: bubble-animation 4.5s infinite ease-in -6.73s;
}
.hero2-animated-bubble .bubbles:nth-child(4) {
  bottom: 26%;
  left: 6%;
  animation: bubble-animation 4.5s infinite ease-in -4.04s;
}
.hero2-animated-bubble .bubbles:nth-child(5) {
  bottom: 44%;
  left: 11%;
  animation: up 7.5s;
  animation: bubble-animation 4.5s infinite ease-in -3.11s;
}
.hero2-animated-bubble .bubbles:nth-child(6) {
  top: 7%;
  left: 8%;
  animation: bubble-animation 4.5s infinite ease-in -5.95s;
}
.hero2-animated-bubble .bubbles:nth-child(7) {
  top: 35%;
  animation: bubble-animation 4.5s infinite ease-in -3.68s;
}
.hero2-animated-bubble .bubbles:nth-child(8) {
  bottom: 40%;
  left: 5%;
  animation: bubble-animation 4.5s infinite ease-in -3.89s;
}
.hero2-animated-bubble .bubbles:nth-child(9) {
  top: 1%;
  left: 12%;
  animation: bubble-animation 4.5s infinite ease-in -2.09s;
}
.hero2-animated-bubble .bubbles:nth-child(10) {
  bottom: 22%;
  left: 11.5%;
  animation: bubble-animation 4.5s infinite ease-in -2.96s;
}
.hero2-animated-bubble .bubbles:nth-child(11) {
  bottom: 28%;
  left: 11%;
  animation: bubble-animation 4.5s infinite ease-in -1.126s;
}
.hero2-animated-bubble .bubbles:nth-child(12) {
  top: 36%;
  left: 11%;
  animation: bubble-animation 4.5s infinite ease-in -2.96s;
}

.home-3-form-wrap .form-group > i.fa-chevron-down {
  color: var(--smoke-color);
  background: 0 0;
}

/* ==============================================
   Slider Styles end
   ============================================== */
/* ==============================================
   Video play button Styles start
   ============================================== */
.play-btn.style-3::before {
  background: var(--theme-color2);
  height: 56px;
  width: 56px;
  inset: 0;
}
.play-btn.style-3 > i {
  --icon-size: 56px;
  --icon-font-size: 20px;
  background-color: var(--theme-color2);
  color: var(--title-color);
  border: 0;
}

.hero-3 {
  margin: 0 auto;
  border: 0 solid var(--black-color);
  border-radius: 0 !important;
}
.hero-3 .home-3-shape-1 {
  left: 6%;
  top: 4%;
}
.hero-3 .home-3-shape-2 {
  left: 46%;
  top: 7%;
}
.hero-3 .home-3-shape-3 {
  bottom: 8%;
  left: 21%;
}
.hero-3 .home-3-shape-4 {
  top: 54%;
}
.hero-3 .moving.home-3-shape-4 {
  top: 55.5%;
  left: 36%;
}

.hero_3-main-img {
  right: 20px;
  z-index: 2;
  bottom: 0;
}

.hero-style3 {
  width: 100%;
  font-weight: 600;
  font-size: 17px;
  padding: 220px 125px 100px 125px;
  position: relative;
  z-index: 4;
}
.hero-style3 .hero-title {
  margin-bottom: 40px;
  text-align: center;
}
.hero-style3 .hero-title span {
  color: var(--theme-color3);
  font-weight: 300;
}
.hero-style3 .hero-text {
  font-weight: 500;
  font-size: 19px;
  margin-bottom: 30px;
  font-family: var(--title-font);
}
.hero-style3 .btn-group .video-wrap {
  display: flex;
  align-items: center;
  gap: 18px;
}
.hero-style3 .btn-group .video-wrap p {
  margin: 0;
  transition: 0.4s;
  text-decoration: underline;
  font-weight: 600;
  color: var(--title-color);
}
.hero-style3 .btn-group .video-wrap p:hover {
  color: var(--theme-color3);
}
.hero-style3 .hero-bottom {
  margin-top: 120px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.hero-style3 .hero-bottom .content {
  margin-right: 30px;
}
.hero-style3 .hero-bottom .content .box-title {
  font-size: 14px;
  color: var(--theme-color3);
  margin: 0;
}
.hero-style3 .hero-bottom .content h5 {
  font-size: 16px;
  margin-bottom: -1px;
  font-weight: 600;
  margin-top: -0.12em;
}
.hero-style3 .hero-bottom .rating-wrap {
  text-align: center;
}
.hero-style3 .hero-bottom .rating-wrap h5 {
  font-size: 16px;
  margin-bottom: 3px;
  margin-top: -0.12em;
}
.hero-style3 .hero-bottom .rating-wrap .rating {
  font-size: 12px;
  color: var(--yellow-color);
  display: flex;
  gap: 3px;
}

/* ==============================================
   Video play button Styles end
   ============================================== */
/* ==============================================
   Search box Styles start
   ============================================== */
.popup-search-box {
  position: fixed;
  top: 0;
  left: 50%;
  background-color: rgba(23, 33, 52, 0.96);
  height: 0;
  width: 0;
  overflow: hidden;
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  border-radius: 50%;
  transform: translateX(-50%);
  transition: all ease 0.4s;
}
.popup-search-box button.searchClose {
  width: 60px;
  height: 60px;
  top: 40px;
  right: 40px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--theme-color);
  background-color: transparent;
  font-size: 22px;
  border-radius: 50%;
  transform: rotate(0);
  transition: all ease 0.4s;
  color: var(--theme-color);
}
.popup-search-box button.searchClose:hover {
  color: var(--body-color);
  background-color: #fff;
  border-color: transparent;
  border-color: transparent;
  transform: rotate(90deg);
}
.popup-search-box form {
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-block;
  padding-bottom: 40px;
  cursor: auto;
  width: 100%;
  max-width: 700px;
  transform: translate(-50%, -50%) scale(0);
  transition: transform ease 0.4s;
}
.popup-search-box form input {
  font-size: 18px;
  height: 70px;
  width: 100%;
  border: 2px solid var(--theme-color);
  background-color: transparent;
  padding-left: 30px;
  color: #fff;
  border-radius: 50px;
}
.popup-search-box form input::-moz-placeholder {
  color: #fff;
}
.popup-search-box form input::placeholder {
  color: #fff;
}
.popup-search-box form button {
  position: absolute;
  top: 0;
  background-color: transparent;
  border: none;
  color: #fff;
  font-size: 24px;
  right: 12px;
  color: var(--white-color);
  cursor: pointer;
  width: 70px;
  height: 70px;
  transition: all ease 0.4s;
  transform: scale(1.001);
}
.popup-search-box form button:hover {
  transform: scale(1.1);
}

.popup-search-box.show {
  opacity: 1;
  visibility: visible;
  width: 100.1%;
  height: 100%;
  transition: all ease 0.4s;
  border-radius: 0;
}
.popup-search-box.show form {
  transition-delay: 0.5s;
  transform: translate(-50%, -50%) scale(1);
}

/* ==============================================
   Search box Styles end
   ============================================== */
.sidemenu-wrapper {
  position: fixed;
  z-index: 99999;
  right: 0;
  top: 0;
  height: 100%;
  width: 0;
  background-color: rgba(0, 0, 0, 0.75);
  opacity: 0;
  visibility: hidden;
  transition: all ease 0.8s;
}
.sidemenu-wrapper .th-social a {
  box-shadow: none;
}
.sidemenu-wrapper .closeButton {
  display: inline-block;
  border: 2px solid;
  width: 50px;
  height: 50px;
  line-height: 48px;
  font-size: 24px;
  padding: 0;
  position: absolute;
  top: 20px;
  right: 20px;
  background-color: var(--white-color);
  border-radius: 50%;
  transform: rotate(0);
  transition: all ease 0.4s;
}
.sidemenu-wrapper .closeButton:hover {
  color: var(--theme-color);
  border-color: var(--theme-color);
  transform: rotate(90deg);
}
.sidemenu-wrapper .sidemenu-content {
  background-color: var(--white-color);
  width: 450px;
  margin-left: auto;
  padding: 80px 30px;
  height: 100%;
  overflow: scroll;
  position: relative;
  right: -500px;
  cursor: auto;
  transition-delay: 1s;
  transition: right ease 1s;
}
.sidemenu-wrapper .sidemenu-content::-webkit-scrollbar-track {
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.1);
  background-color: #f5f5f5;
}
.sidemenu-wrapper .sidemenu-content::-webkit-scrollbar {
  width: 2px;
  background-color: #f5f5f5;
}
.sidemenu-wrapper .sidemenu-content .form-control {
  background-color: var(--smoke-color2);
  border-radius: 27px;
}
.sidemenu-wrapper .sidemenu-content .form-select {
  background-color: var(--smoke-color2);
  border-radius: 27px;
}
.sidemenu-wrapper .sidemenu-content input {
  background-color: var(--smoke-color2);
  border-radius: 27px;
}
.sidemenu-wrapper .sidemenu-content select {
  background-color: var(--smoke-color2);
  border-radius: 27px;
}
.sidemenu-wrapper .sidemenu-content textarea {
  background-color: var(--smoke-color2);
  border-radius: 27px;
}
.sidemenu-wrapper .widget {
  padding: 0;
  border: none;
  background-color: transparent;
}
.sidemenu-wrapper .info-box_icon {
  background-color: rgba(255, 156, 0, 0.15);
}

.sidemenu-wrapper.show {
  opacity: 1;
  visibility: visible;
  width: 100%;
  transition: all ease 0.8s;
}
.sidemenu-wrapper.show .sidemenu-content {
  right: 0;
  opacity: 1;
  visibility: visible;
}

/* ==============================================
   Contact Styles start
   ============================================== */
.contact-feature {
  display: flex;
  gap: 25px;
  border-radius: 40px;
  border: 1px solid var(--th-border-color);
  background: var(--white-color);
  box-shadow: 0 9px 14px 0 #fbfbfb;
  padding: 30px;
  align-items: center;
  position: relative;
}
.contact-feature:not(:last-child) {
  margin-bottom: 24px;
}
.contact-feature .feature-contact-icon {
  position: absolute;
  right: 0;
  top: 5px;
}
.contact-feature .contact-feature-icon {
  height: 70px;
  width: 70px;
  flex: none;
  border-radius: 22px;
  line-height: 70px;
  background-color: var(--theme-color);
  font-size: 40px;
  text-align: center;
  color: var(--white-color);
  transition: 0.4s;
}
.contact-feature .contact-feature-icon i {
  transition: 0.4s;
}
.contact-feature .media-body {
  margin-bottom: -0.4em;
}
.contact-feature .contact-feature_label {
  font-size: 20px;
  font-family: var(--title-font);
  color: var(--title-color);
  font-weight: 600;
  margin-top: -0.4em;
  margin-bottom: 0;
}
.contact-feature .contact-feature_link {
  font-family: var(--body-font);
  color: #4d5765;
  line-height: 24px;
  font-size: 14px;
  display: block;
}
.contact-feature .contact-feature_link span {
  color: var(--title-color);
}
.contact-feature:hover .contact-feature-icon {
  background: var(--theme-color);
  color: var(--white-color);
}
.contact-feature:hover .contact-feature-icon i {
  transform: rotateY(180deg);
}

.contact-feature-wrap:nth-child(2) .contact-feature-icon {
  background-color: var(--theme-color3);
}
.contact-feature-wrap:nth-child(3) .contact-feature-icon {
  background-color: var(--theme-color);
}

.appointment-form-wrapper {
  position: relative;
  padding-top: 80px;
}
.appointment-form-wrapper:before {
  position: absolute;
  content: "";
  left: -118%;
  height: 90.2%;
  width: 1086px;
  background-color: var(--smoke-color2);
  top: 0;
  border-radius: 0 50px 50px 0;
  z-index: -2;
}
.appointment-form-wrapper .contact-form {
  border-radius: 50px;
  padding: 50px;
}

.quote-form-box.style-2 {
  border-radius: 30px;
}
.quote-form-box.style-2 .contact-form {
  max-width: 800px;
  border: 1px solid var(--th-border-color);
  border-radius: 0 30px 30px 0;
  background: var(--smoke-color);
}
.quote-form-box.style-2 .contact-form .form-title {
  margin-bottom: 28px;
}

.contact-form {
  border-radius: 20px;
  background-color: var(--white-color);
  padding: 60px;
  text-align: center;
}
.contact-form .sec-title {
  margin-bottom: 25px;
}

.rounded-20 {
  border-radius: 20px !important;
  overflow: hidden;
  border-radius: 20px !important;
}

.form-text {
  font-size: 16px;
}

.contact-map {
  line-height: 0;
  width: 100%;
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
}
.contact-map iframe {
  width: 100%;
  height: 600px;
  border-radius: 0;
}

/* ==============================================
   Contact Styles end
   ============================================== */
/* ==============================================
   About Styles start
   ============================================== */
.img-box1 {
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
}
.img-box1 .img1 {
  position: absolute;
  top: 24.5rem;
  left: 0;
  z-index: 3;
}
.img-box1 .img1 img {
  border-radius: 20px;
  border-radius: 20px;
}
.img-box1 .img2 {
  display: inline-block;
  position: relative;
  z-index: 2;
}
.img-box1 .img2 img {
  border-radius: 30px;
}
.img-box1 .img2 .about-play-btn-wrap {
  position: absolute;
  left: 50%;
  z-index: 3;
  top: 50%;
  transform: translate(-50%, -50%);
}
.img-box1 .shape1 {
  position: absolute;
  top: 54%;
  right: 26px;
  z-index: 3;
  border-radius: 20px;
}
.img-box1 .shape1 img {
  border-radius: 20px;
  border-radius: 20px;
}

.year-counter {
  position: absolute;
  left: -20px;
  top: 80px;
}
.year-counter .rotate-text {
  transform: rotate(-90deg);
}

.year-counter_number {
  font-family: var(--title-font);
  font-size: 70px;
  font-weight: 700;
  color: var(--theme-color);
  line-height: 50px;
  margin-bottom: 20px;
}

.year-counter_text-small {
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 0;
  text-align: start;
}

.year-counter_text-big {
  font-size: 36px;
  color: #a1a6b0;
  margin-bottom: 84px;
}

.about-feature {
  display: flex;
  align-items: center;
  gap: 15px;
  background-color: var(--smoke-color2);
  border-radius: 15px;
  padding: 10px 15px;
  max-width: 244px;
  text-align: left;
}
.about-feature .box-title {
  font-size: 18px;
  line-height: 26px;
  margin-top: -0.34em;
  margin-bottom: -0.34em;
}

.about-feature-wrap {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 40px;
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--th-border-color);
}

.about-sec-2-left .img-box1 {
  text-align: start;
}
.about-sec-2-left .img-box1 .shape1 {
  border: 8px solid #fff;
  height: 218px;
  width: 218px;
  border-radius: 50%;
  top: 36px;
  right: 43px;
}
.about-sec-2-left .img-box1 .shape1 img {
  border-radius: 50%;
}
.about-sec-2-left .img2 img {
  border-radius: 40px;
}
.about-sec-2-left .year-counter {
  top: 62%;
  right: -20px;
  text-align: center;
}
.about-sec-2-left .year-counter_text-big {
  font-size: 34px;
  margin-bottom: 70px;
}

.about-sec-2 .title-area {
  margin-bottom: 30px;
}
.about-sec-2 .about-bottom-box-wrap {
  max-width: 500px;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__box {
  display: flex;
  gap: 15px;
  align-content: center;
  margin-bottom: 28px;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__box:last-child {
  margin-bottom: 0;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__box:hover .about-bottom__icon i {
  transform: rotateY(-180deg);
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__box:nth-child(2) .about-bottom__icon {
  border: 1px solid var(--theme-color);
  color: var(--theme-color);
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__icon {
  height: 70px;
  width: 70px;
  line-height: 70px;
  text-align: center;
  border: 1px solid var(--theme-color);
  border-radius: 50px;
  color: var(--theme-color);
  font-size: 22px;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__icon i {
  transition: 0.4s;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__content {
  flex: 1;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__box-title {
  font-size: 22px;
  margin-bottom: 8px;
  font-weight: 600;
  margin-top: -0.15em;
}
.about-sec-2 .about-bottom-box-wrap .about-bottom__box-text {
  margin-bottom: -0.15em;
  font-size: 15px;
}

.home-3-shape-1 {
  right: 100px;
  top: 100px;
}

.home-3-shape-2 {
  bottom: 100px;
  right: 50px;
}

.about-sec-3 {
  border-radius: 100px;
}
.about-sec-3 .about-bottom__box {
  display: flex;
  gap: 18px;
}
.about-sec-3 .about-bottom__box:hover .about-bottom__icon i {
  transform: rotateY(-180deg);
}
.about-sec-3 .about-bottom__content {
  flex: 1;
}
.about-sec-3 .about-bottom__icon {
  height: 70px;
  width: 70px;
  text-align: center;
  line-height: 70px;
  border-radius: 24px;
  background-color: var(--theme-color3);
  color: var(--white-color);
  font-size: 40px;
}
.about-sec-3 .about-bottom__icon i {
  transition: 0.4s;
}
.about-sec-3 .about-bottom__box-title {
  font-size: 22px;
  color: var(--white-color);
  margin-bottom: 8px;
  margin-top: -0.32em;
}
.about-sec-3 .about-bottom__box-text {
  margin: 0;
}

.about-3-counter-wrap {
  background: #1f1f1f;
  border-radius: 50px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  padding: 80px 45px 75px 45px;
}
.about-3-counter-wrap .counter-card {
  position: relative;
  padding: 10px 75px 45px 45px;
  border-right: 1px solid rgba(255, 255, 255, 0.26);
  border-bottom: 1px solid rgba(255, 255, 255, 0.26);
}
.about-3-counter-wrap .counter-card .box-number {
  margin-bottom: 2px;
}
.about-3-counter-wrap .counter-card .box-number .plus {
  font-size: 60px;
}
.about-3-counter-wrap .counter-card .box-number .number {
  font-size: 64px;
  color: var(--white-color);
}
.about-3-counter-wrap .counter-card .box-number .number .counter-number {
  color: var(--white-color);
  font-size: 64px;
}
.about-3-counter-wrap .counter-card:nth-child(1) {
  padding-left: 0;
  padding-right: 45px;
  border-bottom: 0;
}
.about-3-counter-wrap .counter-card:nth-child(1) .about-3-count-shape {
  position: absolute;
  right: -19px;
  top: -38.5px;
  width: 36px;
  height: 43px;
  background: var(--theme-color2);
}
.about-3-counter-wrap .counter-card:nth-child(1) .box-number .plus {
  color: var(--theme-color3);
}
.about-3-counter-wrap .counter-card:nth-child(1):before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  height: 1px;
  width: 88%;
  background-color: rgba(255, 255, 255, 0.26);
}
.about-3-counter-wrap .counter-card:nth-child(2) {
  border-right: 1px solid transparent;
  padding-right: 0;
  border-bottom: 0;
}
.about-3-counter-wrap .counter-card:nth-child(2) .about-3-count-shape {
  position: absolute;
  width: 45px;
  height: 36px;
  background: var(--theme-color3);
  right: -8px;
  bottom: -18px;
}
.about-3-counter-wrap .counter-card:nth-child(2) .box-number .plus {
  color: var(--theme-color2);
}
.about-3-counter-wrap .counter-card:nth-child(2):before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 88%;
  background-color: rgba(255, 255, 255, 0.26);
}
.about-3-counter-wrap .counter-card:nth-child(3) {
  border-bottom: 1px solid transparent;
  padding-left: 0;
  padding-bottom: 20px;
  padding-top: 40px;
}
.about-3-counter-wrap .counter-card:nth-child(3) .about-3-count-shape {
  position: absolute;
  width: 45px;
  height: 36px;
  background: var(--theme-color3);
  left: -8px;
  top: -18.5px;
}
.about-3-counter-wrap .counter-card:nth-child(3) .box-number .plus {
  color: var(--theme-color2);
}
.about-3-counter-wrap .counter-card:nth-child(4) {
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  padding-bottom: 20px;
  padding-right: 0;
  padding-top: 40px;
}
.about-3-counter-wrap .counter-card:nth-child(4) .about-3-count-shape {
  position: absolute;
  width: 36px;
  height: 43px;
  background: var(--theme-color2);
  bottom: -38.5px;
  left: -18px;
}
.about-3-counter-wrap .counter-card:nth-child(4) .box-number .plus {
  color: var(--theme-color3);
}

.about-3-right-content {
  padding-left: 70px;
  padding-bottom: 50px;
}
.about-3-right-content p {
  margin-bottom: 0;
  line-height: 26px;
}

.img-box.about-3 img {
  width: 100%;
  height: 100%;
}

.about-bottom__box-wrap:nth-child(2) .about-bottom__icon {
  background-color: var(--theme-color2);
}
.about-bottom__box-wrap:nth-child(3) .about-bottom__icon {
  background-color: var(--theme-color);
}

.about-info {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 30px 0 30px 30px;
}
.about-info:not(:first-child) {
  border-left: 1px solid rgba(27, 31, 37, 0.1);
}
.about-info:nth-child(1) {
  border-bottom: 1px solid rgba(27, 31, 37, 0.1);
}
.about-info:nth-child(2) {
  border-bottom: 1px solid rgba(27, 31, 37, 0.1);
}
.about-info:nth-child(2) .about-info_icon i {
  background-color: var(--theme-color2);
}
.about-info:nth-child(3) {
  border-left: none;
}
.about-info:nth-child(3) .about-info_icon i {
  background-color: var(--theme-color3);
}
.about-info:nth-child(4) .about-info_icon i {
  background-color: #162479;
}

.about-info-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border: 1px solid rgba(27, 31, 37, 0.1);
  margin-bottom: 40px;
  border-radius: 50px;
}

.about-info_icon i {
  width: 50px;
  height: 50px;
  line-height: 50px;
  color: var(--white-color);
  background-color: var(--theme-color);
  border: none;
  border-radius: 50%;
  text-align: center;
  transition: all 0.4s ease-in-out;
}
.about-info_icon i:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
}

.about-info_subtitle {
  margin-bottom: 0;
}

.about-info_title {
  font-family: var(--body-font);
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 0;
}
.about-info_title a {
  color: inherit;
}
.about-info_title a:hover {
  color: var(--theme-color);
}

/* ==============================================
   About Styles end
   ============================================== */
/* ==============================================
   Team Styles start
   ============================================== */
.team-area-1__shape-1 {
  left: 23%;
  top: 10%;
}

.team-area-1__shape-2 {
  right: 12%;
  top: 14%;
}

.team-area-1__shape-3 {
  bottom: 8%;
  left: 8%;
}

.team-area-1__shape-4 {
  bottom: 6%;
  right: 7%;
}

.team-card {
  position: relative;
  overflow: hidden;
  background-color: var(--white-color);
  background: #fff;
  border-radius: 205px 205px 0 25px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.team-card .team-img {
  overflow: hidden;
  position: relative;
  border-radius: 30px;
}
.team-card .team-img:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transition: 0.4s;
  background: rgba(14, 18, 29, 0.4);
}
.team-card .team-img img {
  width: 100%;
  transition: 0.4s ease-in-out;
}
.team-card .box-title {
  margin-bottom: 0;
}
.team-card .team-social {
  position: absolute;
  right: 31px;
  top: 34px;
}
.team-card .team-social .icon-btn {
  --btn-size: 40px;
  color: var(--title-color);
  cursor: pointer;
  border-radius: 50%;
}
.team-card .th-social {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  transition: 0.4s;
  width: -moz-max-content;
  width: max-content;
  opacity: 0;
  visibility: hidden;
  bottom: 20px;
}
.team-card .th-social a {
  opacity: 0;
  transform: translateY(20px);
  transition: 0.3s;
  display: block;
  margin: 0 0 10px 0;
  box-shadow: 0 5px 18px rgba(76, 88, 104, 0.06);
  --icon-size: 40px;
  border-radius: 50%;
  background: var(--smoke-color2);
  color: var(--title-color);
  border: 0;
}
.team-card .th-social a:hover {
  background-color: var(--theme-color);
}
.team-card .th-social a:hover i {
  color: var(--white-color);
}
.team-card .team-title {
  margin-bottom: 2px;
}
.team-card .team-title a {
  color: var(--white-color);
}
.team-card .team-title a:hover {
  color: var(--theme-color);
}
.team-card .team-desig {
  display: block;
  font-size: 15px;
  font-weight: 400;
  margin-bottom: -0.3em;
}
.team-card .team-content {
  padding: 15px;
  position: relative;
  text-align: start;
}
.team-card:hover .team-img-wrap {
  border-color: var(--theme-color);
}
.team-card:hover .team-img img {
  transform: scale(1.08);
}
.team-card:hover .team-img:after {
  opacity: 1;
}
.team-card:hover .team-social .th-social {
  opacity: 1;
  visibility: visible;
  bottom: 40px;
}
.team-card:hover .th-social a {
  opacity: 1;
  transform: translateY(0);
}
.team-card:hover .icon-btn {
  transform: rotate(45deg);
  background-color: var(--theme-color);
}
.team-card:hover .icon-btn i {
  color: var(--white-color);
}
.team-card:hover::after {
  height: 100%;
  bottom: 0;
}
.team-card:hover .team-content .box-title {
  color: #fff;
}
.team-card:hover .team-content span {
  color: #fff;
}
.team-card:hover .social-links {
  width: 36px;
  height: 36px;
  line-height: 38px;
  border-radius: 5px 5px 5px 0;
  border: 1px solid #eee;
  color: var(--theme-color);
  display: inline-block;
  font-size: 16px;
  background: #fff;
}
.team-card:after {
  content: "";
  position: absolute;
  background-color: var(--theme-color);
  width: 100%;
  height: 0;
  border-radius: 205px 205px 0 25px;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  transition: all ease 0.7s;
}
.team-card .social-links {
  width: 36px;
  height: 36px;
  line-height: 38px;
  border-radius: 5px 5px 5px 0;
  border: 1px solid rgba(136, 136, 136, 0.5);
  color: rgba(136, 136, 136, 0.5);
  display: inline-block;
  font-size: 16px;
}

.team-2-sec-title .title-area {
  padding-right: 25px;
}
.team-2-sec-title .title-area .sec-text {
  margin-bottom: 13px;
}

.team-2-card-wrap {
  max-width: 960px;
  margin-right: -108px;
}

.team-diff-color:nth-child(1) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(0, 124, 250, 0.2) 100%);
}
.team-diff-color:nth-child(5) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(0, 124, 250, 0.2) 100%);
}
.team-diff-color:nth-child(2) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(255, 199, 2, 0.2) 100%);
}
.team-diff-color:nth-child(6) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(255, 199, 2, 0.2) 100%);
}
.team-diff-color:nth-child(3) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(140, 198, 63, 0.2) 100%);
}
.team-diff-color:nth-child(7) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(140, 198, 63, 0.2) 100%);
}
.team-diff-color:nth-child(4) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(179, 189, 164, 0.2) 100%);
}
.team-diff-color:nth-child(8) .team-card.style-2 {
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(179, 189, 164, 0.2) 100%);
}

.team-card.style-2 {
  border-radius: 20px;
  background: linear-gradient(170deg, rgba(246, 246, 246, 0) 47%, rgba(100, 87, 12, 0.2) 100%);
}
.team-card.style-2:hover .team-social .th-social {
  opacity: 1;
  visibility: visible;
  top: 114%;
}
.team-card.style-2 .team-img {
  border-radius: 200px;
}
.team-card.style-2 .team-content {
  text-align: center;
  position: static;
}
.team-card.style-2 .team-social {
  right: 31px;
  top: 50px;
}
.team-card.style-2 .team-social .th-social {
  top: 90%;
}
.team-card.style-2 .team-social .th-social a {
  margin: 0 0 7px 0;
}

.team-details {
  position: relative;
  border-radius: 100px;
  background: #f3f4f6;
  padding: 60px;
  overflow: hidden;
}
.team-details img {
  width: 100%;
  height: 511px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50px;
}
.team-details .th-social {
  width: 100%;
  text-align: end;
  flex: 1;
}
.team-details .th-social a {
  --icon-size: 40px;
  border-radius: 100%;
  color: var(--title-color);
  border: 0;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.24);
}
.team-details .th-social a:not(:hover) {
  background-color: var(--smoke-color);
}

.team-about .team-wrapp .top-wrap {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.team-about .th-btn {
  padding: 19.5px 38.9px;
}

.team-about_title {
  margin-top: -0.4rem;
  margin-bottom: 0;
}

.team-about_desig {
  font-weight: 500;
  margin-bottom: 0;
}

.team-about_text {
  margin-bottom: 30px;
}

.team-contact-form {
  padding: 50px;
  background-color: var(--smoke-color);
}
.team-contact-form textarea {
  height: 120px;
}
.team-contact-form .form-title {
  margin-top: -0.3em;
  margin-bottom: 25px;
}

.skill-feature {
  text-align: left;
}
.skill-feature:not(:last-child) {
  margin-bottom: 30px;
}
.skill-feature .progress-value {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 10px;
  margin-top: -0.5em;
  font-family: var(--title-font);
  color: var(--title-color);
  position: absolute;
  top: -30px;
  right: -8px;
}
.skill-feature .progress {
  position: relative;
  height: 8px;
  background-color: transparent;
  border: 1px solid var(--smoke-color2);
  overflow: visible;
  border-radius: 0;
}
.skill-feature .progress-bar {
  background-color: var(--theme-color);
  height: 2px;
  margin: 2px;
  border-radius: inherit;
  overflow: visible;
  position: relative;
}

.skill-feature_title {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 10px;
  margin-top: -0.5em;
  font-family: var(--title-font);
  color: var(--title-color);
}

.circle-progressbar {
  text-align: center;
}

.circle-top {
  margin-bottom: 30px;
}
.circle-top .box-title {
  font-size: 36px;
  margin-bottom: 5px;
}

.circular-progress {
  position: relative;
  width: 190px;
  height: 190px;
  text-align: center;
  display: inline-block;
}
.circular-progress svg {
  width: 100%;
  height: 100%;
}
.circular-progress .circle-bg {
  fill: none;
  stroke: var(--smoke-color2);
  stroke-width: 3;
}
.circular-progress .circle {
  fill: none;
  stroke-width: 3;
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  transition: stroke-dashoffset 1s ease;
  stroke-linecap: round;
  stroke: var(--theme-color);
}
.circular-progress .box-title {
  font-size: 16px;
  font-weight: 400;
  color: var(--body-color);
  margin-bottom: -0.3em;
  margin-top: 13px;
}
.circular-progress .circle-progressbar-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 36px;
  font-weight: 700;
  color: var(--title-color);
  width: 100%;
}

.team-circle-progressbar:nth-child(2) .circular-progress .circle {
  stroke: var(--theme-color2);
}
.team-circle-progressbar:nth-child(3) .circular-progress .circle {
  stroke: var(--theme-color3);
}
.team-circle-progressbar:nth-child(4) .circular-progress .circle {
  stroke: #162479;
}
.team-circle-progressbar:nth-child(5) .circular-progress .circle {
  stroke: var(--body-color);
}
.team-circle-progressbar:nth-child(6) .circular-progress .circle {
  stroke: var(--title-color);
}

/* ==============================================
   Team Styles end
   ============================================== */
/* ==============================================
   Testimonial Styles start
   ============================================== */
.testi-img-box {
  position: relative;
  margin-left: -308px;
  z-index: 1;
}

.testi-1-main-img {
  left: -61%;
  bottom: 0;
  width: 741px;
  z-index: 2;
}

.testi-1-shape-1 {
  position: absolute;
  -webkit-clip-path: polygon(16px -163.27%, 97.54% 83.61%, 80.07% 101.47%, 4.13% 103.92%);
  clip-path: polygon(16px -163.27%, 97.54% 83.61%, 80.07% 101.47%, 4.13% 103.92%);
  left: 8%;
  bottom: 0;
  background: var(--theme-color);
  z-index: -1;
  height: 204px;
  width: 606px;
}

.testi-1-shape-2 {
  position: absolute;
  -webkit-clip-path: polygon(-5px -165.23%, 99.35% 89%, 85.52% 100%, 0 100%);
  clip-path: polygon(-5px -165.23%, 99.35% 89%, 85.52% 100%, 0 100%);
  left: 8%;
  bottom: 0;
  background: var(--theme-color2);
  width: 260px;
  z-index: -2;
  height: 221px;
  width: 638px;
}

.testi-block {
  border-radius: 30px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  transition: 0.4s;
  padding: 40px;
  background-color: var(--white-color);
}
.testi-block:hover {
  transform: translateY(-3px);
}
.testi-block .box-review {
  color: var(--theme-color);
  margin-bottom: -0.3em;
  display: flex;
  gap: 6px;
  margin-bottom: 25px;
}

.testi-block-top {
  display: flex;
  gap: 15px;
  align-items: center;
  margin-bottom: 25px;
}
.testi-block-top .box-img {
  border-radius: 15px;
}
.testi-block-top .box-img img {
  border-radius: 15px;
}
.testi-block-top .content {
  flex: 1;
}
.testi-block-top .content p {
  margin: 0;
  line-height: 1;
  margin-bottom: -0.45em;
}
.testi-block-top .content .box-title {
  font-size: 22px;
  line-height: 1;
  margin-bottom: 6px;
}

.title-area.testi-2-title {
  max-width: 580px;
}

.test-img-2-box .img1 {
  margin-right: -190px;
  mix-blend-mode: multiply;
}

.test-2-right-shape {
  right: 0;
  max-width: 720px;
}

.testi-block.style-3 .box-review {
  color: var(--yellow-color);
}

.testi-card {
  position: relative;
}

.testi-card-area {
  padding-top: var(--section-space);
  padding-bottom: var(--section-space);
  max-width: 720px;
  margin-left: auto;
}

.testi-card-slide {
  position: relative;
}
.testi-card-slide .icon-box {
  position: absolute;
  bottom: 18px;
  right: 20px;
}
.testi-card-slide .icon-box .slider-arrow {
  --icon-size: 46px;
  border: none;
  background-color: var(--white-color);
  color: var(--theme-color);
}
.testi-card-slide .icon-box .slider-arrow:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
}

.testi-card_profile {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 3;
  gap: 20px;
}

.testi-card_avater {
  width: 80px;
  min-width: 80px;
  border-radius: 15px;
}
.testi-card_avater img {
  border-radius: inherit;
}

.testi-card_name {
  font-size: 30px;
  font-weight: 600;
  margin-bottom: 8px;
}

.testi-card_desig {
  margin-bottom: 0;
  display: block;
  color: var(--theme-color);
}

.testi-card_text {
  font-size: 24px;
  font-weight: 500;
  margin: -0.5em 0 25px 0;
  font-style: italic;
}

.testi-shape1 {
  height: 100%;
}
.testi-shape1 img {
  height: 100%;
  width: -moz-max-content;
  width: max-content;
  -o-object-position: center right;
     object-position: center right;
}

.testi-box-area {
  display: flex;
  background-color: var(--smoke-color2);
  border-radius: 30px;
  overflow: hidden;
  background-size: auto;
  background-position: bottom right;
}

.testi-box-img {
  flex: 370px;
}
.testi-box-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.testi-box-shape {
  flex: 60px;
  margin-left: -10px;
  margin-right: -10px;
  position: relative;
  z-index: 3;
}
.testi-box-shape img {
  height: 100%;
}

.testi-box-slide {
  flex: 806px;
  width: 100%;
  max-width: 806px;
  padding: 50px;
  position: relative;
}

.testi-box_name {
  font-size: 30px;
  font-weight: 500;
  margin-bottom: 6px;
}

.testi-box_desig {
  font-weight: 500;
  display: block;
  color: var(--theme-color);
  margin-bottom: 35px;
}

.testi-box_text {
  font-size: 20px;
  font-weight: 500;
  margin-top: -0.5em;
  margin-bottom: 48px;
  font-style: italic;
}

.testi-box_quote {
  position: absolute;
  bottom: 50px;
  right: 60px;
  z-index: 2;
}

.testi-grid {
  text-align: center;
}

.testi-grid-area {
  text-align: center;
  --pos-x: 80px;
}

.testi-grid-thumb {
  max-width: 250px;
  margin-bottom: 20px;
}
.testi-grid-thumb .box-img {
  width: 100%;
  border: 4px solid var(--white-color);
  border-radius: 50%;
  overflow: hidden;
  transition: 0.4s ease-in-out;
  cursor: pointer;
}
.testi-grid-thumb .swiper-slide-thumb-active {
  opacity: 1;
}
.testi-grid-thumb .swiper-slide-thumb-active .box-img {
  border-color: var(--theme-color);
}

.testi-grid_title {
  font-size: 30px;
  font-weight: 500;
  margin-bottom: 16px;
}

.testi-grid_text {
  font-size: 18px;
  line-height: 28px;
  font-family: var(--title-font);
  max-width: 750px;
  margin: 0 auto 20px auto;
}
.testi-grid_text span {
  color: var(--theme-color);
}

.testi-grid_name {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 5px;
}

.testi-grid_desig {
  font-weight: 400;
  color: var(--body-color);
}

.testi-grid_review {
  font-size: 14px;
  color: var(--theme-color2);
  margin-bottom: -0.4em;
}
.testi-grid_review i {
  margin: 0 2px;
}

/* ==============================================
   Testimonial Styles end
   ============================================== */
/* ==============================================
   Counter Number Styles start
   ============================================== */
.counter-card {
  --border-color: #d4d4d4;
  display: flex;
  align-items: center;
  gap: 15px;
}
.counter-card .box-number {
  font-size: 84px;
  line-height: 1;
  color: var(--theme-color);
  font-weight: 400;
  margin-bottom: 8px;
  margin-top: -0.12em;
}
.counter-card .box-number .counter-number {
  color: var(--title-color);
  font-size: 84px;
  font-weight: 900;
}
.counter-card .box-text {
  font-size: 18px;
  font-weight: 600;
  color: var(--body-color);
}
.counter-card .media-body {
  flex: 1;
}

.counter-card-wrap {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.counter-card-wrap .right-shape:last-child {
  display: none;
}

.counter-card-wrap.style2:before {
  display: none;
}
.counter-card-wrap.style2 .box-number {
  font-size: 54px;
  margin-bottom: 0;
  font-weight: 400;
}
.counter-card-wrap.style2 .box-number .counter-number {
  font-weight: 700;
  font-size: 64px;
}

/* ==============================================
   Counter Number Styles end
   ============================================== */
/* ==============================================
   Brand Slider Styles start
   ============================================== */
.brand-bg-wrap {
  background-color: var(--smoke-color);
  margin-top: 55px;
  padding: 38px 0;
}
.brand-bg-wrap .brand-1-top .box-title {
  text-align: center;
  margin-bottom: 20px;
}

.brand-box {
  display: grid;
  align-content: center;
  text-align: center;
  justify-content: center;
  min-height: 84px;
  transition: 0.4s ease-in-out;
  filter: none;
}
.brand-box:hover {
  transform: scale(1.04);
}

.brand-bg-wrap.style-2 {
  margin-top: 0;
}

.brand-bg-wrap.style-3 {
  padding-top: 275px;
  border-radius: 0;
  margin-top: -190px;
  padding-bottom: 180px;
  overflow: hidden;
}

/* ==============================================
   Brand Slider Styles end
   ============================================== */
/* ==============================================
   Pricing Styles start
   ============================================== */
.home-3-booking-from-area .home-3-form-wrap {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  background-color: var(--white-color);
  border-radius: 50px;
  padding: 40px;
  margin-top: -111px;
}
.home-3-booking-from-area .home-3-form-wrap .form-title {
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 33px;
}

.checklist ul {
  padding-left: 0;
  list-style: none;
  text-align: left;
  margin-bottom: 0;
}
.checklist li {
  display: flex;
  gap: 10px;
}
.checklist li > i {
  color: var(--theme-color);
  font-size: 16px;
  line-height: 28px;
}
.checklist li:not(:last-child) {
  margin-bottom: 10px;
}

.checklist.list-two-column ul {
  display: inline-grid;
  grid-template-columns: auto auto;
  gap: 0 40px;
}

.checklist.style-2 li > i {
  color: var(--theme-color2);
}

.check-list ul {
  padding-left: 0;
  list-style: none;
  text-align: left;
  margin-bottom: 0;
}
.check-list li {
  margin-bottom: 16px;
}
.check-list li:last-child {
  margin-bottom: 0;
}
.check-list li > i {
  color: var(--theme-color);
  margin-right: 5px;
}

/* ==============================================
   Pricing Styles end
   ============================================== */
/* ==============================================
   Radius Styles start
   ============================================== */
.rounded-10 {
  border-radius: 10px !important;
}

.rounded-30 {
  border-radius: 30px !important;
}

.rounded-50 {
  border-radius: 50px !important;
}

.rounded-60 {
  border-radius: 60px !important;
}

/* ==============================================
   Radius Styles end
   ============================================== */
/* ==============================================
   Why Choose Us Styles Start
   ============================================== */
.btn-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 30px;
}

.filter-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 15px;
  text-align: center;
  margin-top: -20px;
  margin-bottom: 60px;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px 10px;
  margin-top: 22px;
  position: relative;
}
.filter-menu .th-btn {
  border-radius: 5px;
  padding: 15px 30px;
  background-color: transparent;
  color: var(--body-color);
  border: 1px solid var(--th-border-color);
  min-width: auto;
}
.filter-menu .th-btn:before {
  background-color: var(--theme-color);
}
.filter-menu .th-btn:hover {
  border-color: var(--theme-color);
  color: var(--white-color);
}
.filter-menu .th-btn:hover:before {
  border-radius: 3px;
}
.filter-menu .th-btn.active {
  border-color: var(--theme-color);
  color: var(--white-color);
}
.filter-menu .th-btn.active:before {
  border-radius: 3px;
}
.filter-menu button {
  border: none;
  padding: 0;
  margin-bottom: 5px;
  background-color: transparent;
  padding: 10px 30px;
  border: 1px solid #d4d4d4;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--title-color);
  position: relative;
}
.filter-menu button:hover {
  background-color: var(--theme-color);
  color: var(--white-color);
  border-color: var(--theme-color);
}
.filter-menu button.active {
  background-color: var(--theme-color);
  color: var(--white-color);
  border-color: var(--theme-color);
}
.filter-menu .indicator {
  position: absolute;
  height: 12px;
  background-image: url(../img/theme-img/button_shape.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  width: calc(var(--width-set) + 24px);
  left: calc(var(--pos-x) - 12px);
  top: calc(var(--pos-y) + 20px);
  transition: 0.4s ease-in-out;
}

.why-choose-1-right-card {
  padding: 52px 66px;
  background-color: var(--title-color);
  border-radius: 12px;
}
.why-choose-1-right-card .box-number {
  color: var(--white-color);
  line-height: 1;
  margin-bottom: 10px;
}
.why-choose-1-right-card .box-number .plus {
  margin-left: 7px;
  display: inline-block;
}
.why-choose-1-right-card .box-text {
  font-size: 20px;
  color: var(--white-color);
}

.why-choose-1-right .why-count-star-1-1 {
  z-index: 1;
  top: 13px;
  right: 15px;
}

.why-img-box1 {
  border-radius: 30px;
}
.why-img-box1 .img1 img {
  border-radius: 30px;
  width: 100%;
}

.choose-feature-wrap {
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px 40px;
  align-items: center;
  text-align: center;
}
.choose-feature-wrap .box-icon {
  width: 92px;
  height: 92px;
  line-height: 92px;
  text-align: center;
  background-color: var(--theme-color);
  border-radius: 30px;
  color: var(--white-color);
  font-size: 36px;
}
.choose-feature-wrap .box-icon i {
  transition: all 0.4s;
}

.choose-feature-wrap__box {
  display: flex;
  gap: 22px;
  text-align: left;
}
.choose-feature-wrap__box:hover .box-icon i {
  transform: rotateY(180deg);
}

.choose-feature-wrap__content {
  flex: 1;
}
.choose-feature-wrap__content .box-title {
  font-size: 24px;
  line-height: 1.41;
  margin-bottom: 12px;
}

.why-2-left {
  margin-right: 48px;
  position: relative;
  overflow: hidden;
}
.why-2-left .why-2-left-shape-1 {
  left: 17%;
  z-index: 2;
}
.why-2-left .why-2-left-shape-2 {
  right: 0;
  top: 27%;
  z-index: 1;
}
.why-2-left .img2 {
  text-align: center;
}
.why-2-left .smoke-bg {
  height: 100%;
  width: 100%;
  background-color: var(--smoke-color2);
  position: absolute;
  z-index: -1;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
}
.why-2-left .theme-bg {
  height: 90%;
  width: 80%;
  background-color: var(--theme-color);
  position: absolute;
  z-index: -1;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  bottom: 1px;
  left: 50%;
  transform: translateX(-50%);
}
.why-2-left .theme2-bg {
  height: 82%;
  width: 100%;
  background-color: var(--theme-color2);
  position: absolute;
  z-index: -1;
  border-top-right-radius: 248%;
  border-top-left-radius: 248%;
  top: 54%;
}

.why-2-right .title-area {
  margin-bottom: 32px;
}

.why-2-right-bg-triangle {
  position: absolute;
  top: 31px;
  z-index: -2;
  height: 224px;
  background: var(--theme-color);
  width: 454px;
  left: 14%;
}

.why-2-right-bottom {
  display: flex;
  gap: 24px;
  justify-content: space-between;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjMwIiBoZWlnaHQ9IjMxMiIgdmlld0JveD0iMCAwIDYzMCAzMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMCAzMEMwIDEzLjQzMTUgMTMuNDMxNSAwIDMwIDBIMTgwQzE5Ni41NjkgMCAyMTAgMTMuNDMxNSAyMTAgMzBWMTE1QzIxMCAxMzEuNTY5IDIyMy40MzEgMTQ1IDI0MCAxNDVIMzkwQzQwNi41NjkgMTQ1IDQyMCAxMzEuNTY5IDQyMCAxMTVWMzBDNDIwIDEzLjQzMTUgNDMzLjQzMSAwIDQ1MCAwSDYwMEM2MTYuNTY5IDAgNjMwIDEzLjQzMTUgNjMwIDMwVjEzN0M2MzAgMTUzLjU2OSA2MTYuNTY5IDE2NyA2MDAgMTY3SDQ1MEM0MzMuNDMxIDE2NyA0MjAgMTgwLjQzMSA0MjAgMTk3VjI4MkM0MjAgMjk4LjU2OSA0MDYuNTY5IDMxMiAzOTAgMzEySDI0MEMyMjMuNDMxIDMxMiAyMTAgMjk4LjU2OSAyMTAgMjgyVjE5N0MyMTAgMTgwLjQzMSAxOTYuNTY5IDE2NyAxODAgMTY3SDMwQzEzLjQzMTUgMTY3IDAgMTUzLjU2OSAwIDEzN1YzMFoiIGZpbGw9IiNFRUVFRUUiLz4KPC9zdmc+Cg==);
  background-position: center top;
  background-repeat: no-repeat;
  position: relative;
  border-radius: 30px;
}

.why-2-right-bottom__box {
  padding: 20px 20px 20px 24px;
  border-radius: 30px;
  flex: 1;
}
.why-2-right-bottom__box:hover .why-2-right-bottom__box-icon img {
  transform: rotateY(-180deg);
}
.why-2-right-bottom__box:nth-child(2) {
  margin-top: 144px;
}

.why-2-right-bottom__box-icon {
  display: inline-block;
  margin-bottom: 20px;
  position: relative;
  z-index: 4;
  margin-top: 8px;
  margin-left: 23px;
}
.why-2-right-bottom__box-icon img {
  transition: 0.4s;
}
.why-2-right-bottom__box-icon::before {
  content: "";
  position: absolute;
  left: -23px;
  top: -9px;
  background-color: var(--theme-color2);
  height: 54px;
  width: 54px;
  border-radius: 50%;
  z-index: -1;
}

.why-2-right-bottom__box-content .box-title {
  font-size: 22px;
  margin-bottom: 0;
  font-weight: 600;
}

/* ==============================================
   Why Choose Us Styles end
   ============================================== */
/* ==============================================
   Faq Styles start
   ============================================== */
.accordion-card {
  transition: 0.4s ease-in-out;
  border-radius: 20px;
  overflow: hidden;
  text-align: left;
  position: relative;
  z-index: 3;
  border: 1px solid var(--th-border-color);
}
.accordion-card:not(:last-child) {
  margin-bottom: 32px;
}
.accordion-card .accordion-button {
  font-size: 20px;
  font-weight: 600;
  font-family: var(--title-font);
  border: 0;
  border-color: var(--th-border-color);
  color: var(--title-color);
  background-color: transparent;
  border-radius: 0;
  padding: 22px 50px 22px 30px;
  min-height: 60px;
  gap: 10px;
  margin-bottom: 0;
  text-align: left;
  transition: 0.3s;
  position: relative;
}
.accordion-card .accordion-button:after {
  content: "\f06e";
  height: 100%;
  width: auto;
  line-height: 1;
  background-color: transparent;
  background-image: none;
  font-family: var(--icon-font);
  color: var(--theme-color);
  font-weight: 500;
  font-size: 1em;
  display: grid;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: absolute;
  top: 0;
  right: 30px;
  transition: 0.3s ease-in-out;
}
.accordion-card .accordion-button:focus {
  outline: 0;
  box-shadow: none;
}
.accordion-card .accordion-button:not(.collapsed) {
  box-shadow: none;
  border-radius: 0;
  position: relative;
}
.accordion-card .accordion-button:not(.collapsed):before {
  position: absolute;
  content: "";
  bottom: 0;
  width: 93%;
  height: 1px;
  background-color: var(--th-border-color);
}
.accordion-card .accordion-button:not(.collapsed):after {
  content: "\f070";
  transform: rotateX(180deg);
}
.accordion-card .accordion-collapse {
  border: none;
}
.accordion-card .accordion-body {
  border-radius: 0;
  border: none;
  padding: 23px 30px 30px 30px;
}
.accordion-card .faq-text {
  margin-bottom: -0.48em;
}
.accordion-card:has(.show) {
  border-radius: 20px;
}

.faq-img1 {
  position: relative;
  margin-right: 36px;
  z-index: 2;
}
.faq-img1 .img1 {
  border-radius: 999px;
  border: 2px dashed var(--theme-color);
  padding: 30px;
}
.faq-img1 .img1 img {
  width: 100%;
  border-radius: 999px;
}
.faq-img1 .shape1 {
  position: absolute;
  inset: -50px -120px -60px -150px;
  z-index: -1;
}
.faq-img1 .shape1 img {
  width: -moz-fit-content;
  width: fit-content;
}

/* ==============================================
   Faq Styles end
   ============================================== */
/* ==============================================
   Project and Service Styles start
   ============================================== */
.th-service-1__shape-1 {
  left: 9%;
  top: 16%;
}

.th-service-1__shape-2 {
  right: 0;
  top: 17%;
}

.th-service-1__shape-3 {
  bottom: 6%;
  left: 5%;
}

.th-service-1__shape-4 {
  bottom: 5%;
  right: 3%;
}

.service-card {
  position: relative;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.04));
  background: var(--white-color);
  border-radius: 30px;
  padding: 18px;
  transition: 0.4s;
  margin-top: 5px;
  margin-bottom: 5px;
}
.service-card:hover {
  transform: translateY(-3px);
}
.service-card:hover .box-img img {
  transform: scale(1.1);
}
.service-card .box-top-wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.service-card .box-top-wrap .box-top-left {
  display: flex;
  align-items: center;
  gap: 6px;
  background: var(--theme-color2);
  border-radius: 30px;
  padding: 8px 14px;
}
.service-card .box-top-wrap .box-top-left p {
  color: var(--title-color);
  line-height: 1;
  margin-bottom: 1px;
}
.service-card .box-top-wrap .box-top-right .icon {
  background: var(--theme-color);
  color: var(--white-color);
  padding: 1px 22px;
  border-radius: 8px;
  display: block;
}
.service-card .box-top-wrap .box-top-right .icon:hover {
  background-color: var(--theme-color2);
  color: #333;
}
.service-card .box-img {
  border-radius: 14px 14px 0 0;
  overflow: hidden;
}
.service-card .box-img img {
  height: 250px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.4s ease-in-out;
}
.service-card .box-content {
  padding: 30px 0;
  border-radius: 0 0 14px 14px;
}
.service-card .box-title {
  margin-bottom: 10px;
}

.th-service-2__shape-1 {
  left: 6%;
  top: 7%;
}

.th-service-2__shape-2 {
  left: 3%;
  bottom: 11%;
}

.service-slider-2 .slider-pagination.swiper-pagination-progressbar.swiper-pagination-horizontal {
  top: 98%;
  left: 130px;
  background-color: var(--th-border-color);
  width: 100%;
}
.service-slider-2 .slider-pagination2 .current-slide {
  font-size: 54px;
  color: var(--title-color);
  font-weight: 700;
  margin-right: 5px;
}
.service-slider-2 .slider-pagination2 .total-slides {
  font-size: 17px;
  position: relative;
}
.service-slider-2 .slider-pagination2 .total-slides:before {
  content: "/";
}

.service-2-bg-right {
  top: 0;
  right: 0;
  z-index: 1;
}

.service-2-bg-right-mask {
  top: 0;
  right: 0;
  width: 915px;
  background: var(--theme-color);
  bottom: 0;
}

.service-card.style-2 {
  padding: 30px;
  background: 0 0;
  margin-bottom: 35px;
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
}
.service-card.style-2:hover .icon img {
  transform: rotateY(-180deg);
  filter: brightness(0);
}
.service-card.style-2:hover .icon .service-2-icon-bg {
  background-color: var(--theme-color2);
}
.service-card.style-2:hover .box-bottom-right .link-icon {
  background-color: var(--theme-color2);
}
.service-card.style-2:hover .box-bottom-right .link-icon i {
  color: var(--black-color);
}
.service-card.style-2 .service-2-card-bg {
  position: absolute;
  right: 0;
  top: 0;
}
.service-card.style-2 .box-content {
  padding: 0;
  background: 0 0;
}
.service-card.style-2 .icon {
  height: 80px;
  width: 80px;
  line-height: 80px;
  text-align: center;
  border-radius: 16px;
  margin-bottom: 30px;
  position: relative;
}
.service-card.style-2 .icon img {
  transition: 0.4s;
}
.service-card.style-2 .icon .service-2-icon-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: var(--theme-color);
  height: 100%;
  z-index: -1;
  transition: 0.4s;
}
.service-card.style-2 .box-bottom-right .link-icon {
  height: 56px;
  width: 56px;
  display: block;
  background-color: var(--theme-color);
  border-radius: 50%;
  text-align: center;
  line-height: 56px;
  color: var(--white-color);
  font-size: 20px;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 3;
  transition: 0.4s;
}
.service-card.style-2 .box-bottom-right .link-icon i {
  transition: 0.4s;
}
.service-card.style-2 .box-bottom-right .link-icon:hover {
  background-color: var(--theme-color2);
}
.service-card.style-2 .box-bottom-right .link-icon:hover i {
  color: var(--black-color);
}

.service-3-shape-1 {
  top: 100px;
  left: 101px;
}

.service-3-shape-2 {
  bottom: 100px;
  left: 20px;
}

.service-3-slider {
  height: 500px;
  padding-bottom: 23px;
  overflow-x: inherit;
}
.service-3-slider .slider-arrow {
  --icon-size: 46px;
  bottom: 0;
  left: 0;
  top: 94%;
  left: 52%;
  background: var(--white-color);
  color: var(--theme-color);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.06);
}
.service-3-slider .slider-arrow.slider-next {
  left: 50%;
  transform: translateX(-50%);
}

.service-sec-3 {
  margin: 0 80px;
  border-radius: 100px;
}

.service-3-wrap {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px;
}

.service-3-card {
  position: relative;
  padding: 15px 22px 15px 15px;
  border-radius: 15px;
  display: flex;
  gap: 30px;
  align-items: center;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.06));
  background: #fff;
}
.service-3-card:nth-child(2) .service-3-card__icon::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--theme-color2);
  opacity: 0.12;
  border-radius: 30px;
  z-index: -1;
}
.service-3-card:nth-child(3) .service-3-card__icon::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--theme-color);
  opacity: 0.12;
  border-radius: 30px;
  z-index: -1;
}
.service-3-card .link-service-3 {
  position: absolute;
  display: block;
  bottom: -1px;
  right: 27px;
  font-size: 25px;
  color: var(--title-color);
}
.service-3-card .link-service-3:hover {
  color: var(--theme-color3);
}

.service-3-card__icon {
  border-radius: 15px;
  width: 180px;
  height: 100px;
  line-height: 98px;
  text-align: center;
  position: relative;
}
.service-3-card__icon img {
  transition: 0.4s;
}
.service-3-card__icon::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.12;
  border-radius: 15px;
  z-index: -1;
}

.service-3-card__content {
  flex: 1;
}
.service-3-card__content .box-title {
  font-size: 20px;
  margin-bottom: 5px;
}

.page-title {
  margin-bottom: 10px;
}

.page-img {
  margin-bottom: 30px;
  overflow: hidden;
  border-radius: 20px;
}
.page-img img {
  width: 100%;
}

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

.service-feature {
  background-color: var(--white-color);
  padding: 20px 20px 20px 70px;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
.service-feature .box-icon {
  background: var(--smoke-color2);
  width: 80px;
  height: 80px;
  line-height: 80px;
  text-align: center;
  border-radius: 99px;
  position: absolute;
  top: -20px;
  left: -20px;
  z-index: 2;
}
.service-feature .box-icon:after {
  content: "";
  position: absolute;
  inset: 10px;
  background-color: var(--theme-color);
  border-radius: inherit;
  z-index: -1;
}
.service-feature .box-title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  margin-top: -0.3em;
}

.service-feature-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

/* ==============================================
   Project and Service Styles end
   ============================================== */
/* ==============================================
   Process Styles Start
   ============================================== */
.process-box {
  position: relative;
  z-index: 2;
  text-align: center;
}
.process-box .box-number {
  text-transform: uppercase;
  margin-bottom: 10px;
  margin-top: -0.45em;
}
.process-box .box-title {
  font-weight: 500;
  margin-bottom: 12px;
}
.process-box .box-img {
  margin: 0 auto 30px auto;
  max-width: 257px;
  aspect-ratio: 16/16;
}
.process-box .box-icon {
  height: 100px;
  width: 100px;
  text-align: center;
  line-height: 100px;
  border: 1px solid var(--th-border-color);
  border-radius: 50%;
  font-size: 35px;
  color: var(--theme-color);
  margin: 0 auto 29px;
  transition: all 0.4s;
}
.process-box .box-icon i {
  transition: inherit;
}
.process-box .box-icon:before {
  color: var(--white-color);
  position: absolute;
  z-index: -1;
  right: -30%;
  transform: rotate(35deg);
  top: 12%;
  transition: all 0.4s;
}
.process-box:hover .box-icon {
  background-color: var(--theme-color);
  color: var(--white-color);
}
.process-box:hover .box-icon i {
  transform: rotateY(180deg);
}

.process-box-wrap:nth-child(even) {
  margin-top: 70px;
}
.process-box-wrap:nth-child(even) .process-box .box-icon::before {
  transform: scaleY(1);
  top: -6%;
  right: -34%;
}
.process-box-wrap:last-child .process-box .box-icon::before {
  display: none;
}

.process-card {
  position: relative;
  z-index: 2;
  padding: 80px 0 0 0;
  text-align: center;
}
.process-card .box-content {
  background-color: var(--white-color);
  box-shadow: 0 10px 50px rgba(0, 0, 0, 0.08);
  border-radius: 30px;
  padding: 30px 30px 40px 30px;
}
.process-card .box-top {
  padding: 75px 0 0 0;
}
.process-card .box-number {
  text-transform: uppercase;
  margin-bottom: 8px;
  margin-top: -0.45em;
}
.process-card .box-title {
  margin-bottom: 12px;
}
.process-card .box-icon {
  position: absolute;
  top: 0;
  left: calc(50% - 69px);
  height: 160px;
  width: 138px;
  text-align: center;
  line-height: 150px;
  filter: drop-shadow(0 10px 50px rgba(0, 0, 0, 0.08));
  z-index: 2;
}
.process-card .box-icon:before {
  content: "";
  background-color: var(--white-color);
  position: absolute;
  inset: 0;
  -webkit-clip-path: path("M14.9541 124.669L53.9541 147.278C63.2594 152.672 74.7406 152.672 84.0459 147.278L123.046 124.669C132.302 119.303 138 109.414 138 98.7148V53.2852C138 42.5861 132.302 32.6968 123.046 27.331L84.0459 4.72227C74.7406 -.672132 63.2594 -.67213 53.9541 4.72227L14.9541 27.331C5.69794 32.6968 0 42.5861 0 53.2852V98.7148C0 109.414 5.69794 119.303 14.9541 124.669Z");
  clip-path: path("M14.9541 124.669L53.9541 147.278C63.2594 152.672 74.7406 152.672 84.0459 147.278L123.046 124.669C132.302 119.303 138 109.414 138 98.7148V53.2852C138 42.5861 132.302 32.6968 123.046 27.331L84.0459 4.72227C74.7406 -.672132 63.2594 -.67213 53.9541 4.72227L14.9541 27.331C5.69794 32.6968 0 42.5861 0 53.2852V98.7148C0 109.414 5.69794 119.303 14.9541 124.669Z");
  z-index: -1;
}
.process-card:hover .box-icon img {
  transform: rotateY(180deg);
}

.process-box-2-wrap.background-image {
  background-position: top left;
  background-size: auto;
}

.process-box-2-wrap {
  padding: 16px 0 65px 30px;
}
.process-box-2-wrap .box-count-title {
  font-size: 36px;
  font-weight: 700;
  color: var(--th-border-color);
  margin-bottom: 20px;
}

.process-box-2 {
  display: flex;
  gap: 30px;
}
.process-box-2:hover .box-icon img {
  transform: rotateY(-180deg);
}
.process-box-2 .box-icon {
  margin-top: 30px;
}
.process-box-2 .content {
  background: var(--smoke-color2);
  padding: 30px;
  border-radius: 20px;
  flex: 1;
}
.process-box-2 .content .box-title {
  margin-bottom: 12px;
}

.process-3-shape-4 {
  right: 50px;
  bottom: 100px;
}

.process-3-shape-1 {
  top: 100px;
  left: 110px;
}

.process-box.style-3 .box-icon {
  color: var(--theme-color2);
}
.process-box.style-3:hover .box-icon {
  color: var(--title-color);
  background-color: var(--theme-color2);
}

/* ==============================================
   Process Styles Start
   ============================================== */
/* ==============================================
   Price Styles Start
   ============================================== */
.price-sec-1.background-image {
  background-size: auto;
  background-position: top center;
}

.price-sec-1__shape-1 {
  left: 17%;
  top: 10%;
}

.price-sec-1__shape-2 {
  right: 17%;
  top: 12%;
}

.price-sec-1__shape-left-1 {
  position: absolute;
  -webkit-clip-path: polygon(92.26% -10px, 99.59% -7px, 39.18% 85.46%, 0.92% 85.12%);
  clip-path: polygon(92.26% -10px, 99.59% -7px, 39.18% 85.46%, 0.92% 85.12%);
  left: 0;
  top: 0;
  bottom: 0;
  background: var(--theme-color);
  width: 240px;
  z-index: 1;
  height: 540px;
}

.price-sec-1__shape-left-2 {
  position: absolute;
  -webkit-clip-path: polygon(66% 0, 91% 0, 21% 100%, 0 100%);
  clip-path: polygon(30.16% 453px, 41% 445px, 10.99% 100.58%, 0.66% 100.07%);
  left: 0;
  top: 0;
  bottom: 0;
  background: var(--theme-color2);
  width: 240px;
  z-index: -11;
  height: 660px;
}

.price-sec-1__shape-right-1 {
  height: 550px;
  width: 550px;
  background-color: transparent;
  position: absolute;
  right: -6%;
  top: 23%;
  transform: rotate(-19deg);
  overflow: hidden;
}

.price-sec-1__round-shape {
  height: 111%;
  width: 111%;
  background-color: transparent;
  position: absolute;
  outline: 100px solid var(--theme-color2);
  border-radius: 50%;
  top: 123px;
}

.price-card {
  background-color: var(--white-color);
  border-radius: 30px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  transition: 0.4s;
}
.price-card:hover {
  background-color: var(--theme-color);
  transform: translateY(-3px);
}
.price-card:hover .price-card_title {
  color: var(--white-color);
}
.price-card:hover .price-card_price {
  color: var(--white-color);
}
.price-card:hover .price-card_price .duration {
  color: var(--white-color);
}
.price-card:hover .price-card_content .checklist li {
  color: var(--white-color);
}
.price-card:hover .price-card_content .checklist li i {
  color: var(--theme-color2);
}
.price-card:hover .price-card_content .checklist li.unavailable {
  color: var(--white-color);
  opacity: 0.7;
}
.price-card:hover .price-card_content .checklist li.unavailable i {
  color: var(--white-color);
}
.price-card:hover .price-card_content .th-btn {
  background: var(--theme-color2);
}

.price-card_content {
  padding: 40px;
}
.price-card_content .checklist li {
  padding-bottom: 5px;
  transition: 0.4s;
}
.price-card_content .checklist li i {
  font-size: 18px;
  transition: 0.4s;
}
.price-card_content .checklist li.unavailable {
  opacity: 0.6;
}
.price-card_content .th-btn {
  margin-top: 30px;
}

.price-card_top {
  padding: 40px;
}

.price-card_title {
  font-size: 28px;
  line-height: 1.3;
  font-weight: 700;
  text-align: left;
  margin-bottom: 0;
  padding-bottom: 20px;
  transition: 0.4s;
  border-bottom: 1.5px solid #c5c5c5;
}

.price-card_price {
  font-size: 44px;
  line-height: 1.18;
  color: var(--theme-color);
  padding: 18px 0;
  text-align: left;
  margin-bottom: 10px;
  transition: 0.4s;
}
.price-card_price .duration {
  font-size: 18px;
  color: var(--title-color);
  font-weight: 600;
  margin-left: -10px;
  transition: 0.4s;
}

.pricing-tabs {
  margin-top: 31px;
  margin-bottom: 60px;
}
.pricing-tabs .discount-tag {
  color: var(--theme-color);
  font-size: 16px;
  font-weight: 500;
  font-family: var(--body-font);
  position: absolute;
  bottom: -3px;
  transform: translate(-35px, 100%);
  display: inline-flex;
  align-items: end;
  gap: 10px;
}

.pricing-tabs.style2 .switch-area .toggler {
  color: var(--white-color);
}
.pricing-tabs.style2 .switch-area .toggle {
  height: 36px;
}
.pricing-tabs.style2 .switch-area .switch {
  left: 3px;
  top: 3px;
  bottom: 3px;
  right: 45%;
}
.pricing-tabs.style2 .switch-area .check:checked ~ .switch {
  right: 3px;
  left: 47%;
}

.switch-area {
  display: inline-flex;
  align-items: center;
  gap: 20px;
}
.switch-area .toggler {
  transition: 0.2s;
  font-weight: 600;
  font-size: 20px;
  font-family: var(--body-font);
  color: var(--white-color);
  background: 0 0;
  margin-bottom: -0.4em;
  cursor: pointer;
}
.switch-area .toggle {
  position: relative;
  width: 70px;
  height: 36px;
  border-radius: 100px;
  background-color: var(--theme-color);
  overflow: hidden;
  box-shadow: inset 0 0 2px 1px rgba(0, 0, 0, 0.05);
}
.switch-area .check {
  position: absolute;
  display: block;
  cursor: pointer;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 6;
  visibility: visible;
}
.switch-area .check:checked ~ .switch {
  right: 3px;
  left: 53%;
  transition: 0.25s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition-property: left, right;
  transition-delay: 0.08s, 0s;
}
.switch-area .switch {
  position: absolute;
  left: 3px;
  top: 3px;
  bottom: 3px;
  right: 53%;
  background-color: var(--white-color);
  border-radius: 36px;
  z-index: 1;
  transition: 0.25s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition-property: left, right;
  transition-delay: 0s, 0.08s;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.wrapper-full.hide {
  display: none;
}

.wrapper-pack.hide {
  display: none;
}

.price-sec-2-shape-1 {
  z-index: 1;
  left: 11%;
  top: 10%;
}

.price-sec-2-shape-2 {
  z-index: 1;
  top: 44%;
  left: 4%;
}

.pricing-bg-2-left-mask {
  position: absolute;
  left: 0;
  top: 0;
  width: 670px;
  height: 640px;
  background: var(--theme-color);
  z-index: -1;
}

.price-card.style-2:hover {
  background-color: var(--white-color);
}
.price-card.style-2:hover .price-card_title {
  color: inherit;
}
.price-card.style-2:hover .price-card_price {
  background-color: rgba(255, 255, 255, 0.1098039216);
  color: inherit;
  border: 1px solid rgba(255, 255, 255, 0.2588235294);
}
.price-card.style-2:hover .price-card_price .duration {
  color: inherit;
}
.price-card.style-2:hover .price-card_content .checklist li {
  color: inherit;
}
.price-card.style-2:hover .price-card_content .checklist li i {
  color: var(--white-color) !important;
}
.price-card.style-2:hover .price-card_content .checklist li.unavailable {
  color: inherit;
  opacity: 0.7;
}
.price-card.style-2:hover .price-card_content .checklist li.unavailable i {
  color: inherit;
}
.price-card.style-2 .price-card_top .title-wrap {
  display: flex;
  gap: 23px;
  margin-bottom: 26px;
  align-items: center;
}
.price-card.style-2 .price-card_top .title-wrap .icon {
  height: 60px;
  width: 60px;
  line-height: 60px;
  text-align: center;
  border-radius: 16px;
  border: 1px solid var(--th-border-color);
  background-color: var(--smoke-color2);
}
.price-card.style-2 .price-card_top .title-wrap .price-card_title {
  flex: 1;
  margin: 0;
  text-align: start;
  line-height: 1;
}
.price-card.style-2 .price-card_top .price-card_price {
  text-align: start;
  padding: 0;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid var(--th-border-color);
  border-radius: 0;
  margin-bottom: 35px;
  padding-bottom: 28px;
  color: var(--title-color);
}
.price-card.style-2 .price-card_top .price-card_price .duration {
  color: var(--body-color);
}
.price-card.style-2 .th-btn {
  background-color: var(--theme-color2);
  color: var(--title-color);
  box-shadow: var(--theme-color2) 0 3px 8px -2px;
}
.price-card.style-2 .th-btn:hover {
  color: var(--white-color);
  background-color: var(--theme-color);
  box-shadow: var(--theme-color) 0 3px 8px -2px;
}
.price-card.style-2 .price-card_content .checklist li i {
  height: 30px;
  width: 30px;
  line-height: 30px;
  text-align: center;
  background-color: var(--theme-color);
  border-radius: 50%;
  color: var(--white-color);
}
.price-card.style-2 .price-card_content .checklist li .fa-circle-xmark {
  height: 30px;
  width: 30px;
  line-height: 30px;
  text-align: center;
  background-color: #ff746c;
  border-radius: 50%;
  color: var(--white-color);
}

/* ==============================================
   Price Styles end
   ============================================== */
/* ==============================================
   Feature Styles Start
   ============================================== */
.feature-item {
  padding: 30px;
  position: relative;
  border-radius: 30px;
  transition: all 0.4s ease-in-out;
  transition: 0.4s;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  display: flex;
  align-items: center;
  gap: 10px;
}
.feature-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  height: 100%;
  transition: all 0.4s ease;
  z-index: -1;
  border-radius: 30px;
}
.feature-item .box-title {
  transition: 0.4s;
}
.feature-item:hover {
  transform: translateY(-3px);
}
.feature-item:hover::before {
  width: 100%;
}
.feature-item:hover .feature-item__icon {
  color: var(--white-color);
}
.feature-item:hover .feature-item__btn {
  background: var(--theme-color);
  color: #fff;
  border: none;
}

.feature-item__icon {
  height: 65px;
  width: 65px;
  line-height: 65px;
  text-align: center;
  border-radius: 50%;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
  margin-bottom: 30px;
  transition: 0.4s;
}
.feature-item__icon img {
  width: 60%;
  transition: all 0.4s ease;
}

.feature-item__text {
  margin-bottom: -0.3em;
  transition: 0.4s;
  text-align: center;
}

.gallery-2-shape-1 {
  left: 9%;
  top: 11%;
}

.gallery-2-shape-2 {
  right: 1%;
}

.gallery-2-shape-3 {
  left: 2%;
  top: 47%;
}

.gallery-2-shape-4 {
  right: 9%;
  top: 50%;
}

.gallery-2-shape-round-top {
  height: 480px;
  width: 480px;
  background: 0 0;
  border-radius: 50%;
  position: absolute;
  top: -300px;
  right: 30px;
  border: 80px solid var(--theme-color2);
}

.gallery-1-bg-mask {
  position: absolute;
  left: 37px;
  top: 519px;
  z-index: -1;
  height: 106px;
  background: var(--theme-color2);
  width: 480px;
}

.gallery-wrapper {
  display: flex;
  overflow: auto;
  scroll-snap-type: x mandatory;
  gap: 30px;
}

.gallery-wrapper__item {
  height: 550px;
  flex: 2;
  transition: 0.5s;
  will-change: transform;
  position: relative;
  overflow: hidden;
  z-index: 1;
  border-radius: 30px;
}
.gallery-wrapper__item img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 1.5s cubic-bezier(0, 0, 0.2, 1);
  position: relative;
  z-index: -1;
  border-radius: 30px;
}

.gallery-wrapper__item.active {
  flex: 6;
  scroll-snap-align: start;
}
.gallery-wrapper__item.active img {
  transform: scale3d(1.1, 1.1, 1.1);
  width: 100%;
}

.gallery-sec-3 {
  border-radius: 100px;
  filter: drop-shadow(10px -3px 1px rgba(0, 0, 0, 0.06));
}

.gallery-row {
  --bs-gutter-y: 1.5rem;
}

.gallery-card {
  position: relative;
  text-align: center;
}
.gallery-card .gallery-img {
  position: relative;
  border-radius: 20px;
  transition: 0.4s ease-in-out;
}
.gallery-card .gallery-img:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  border-radius: 20px;
  background-color: rgba(22, 25, 33, 0.6);
  transition: 0.4s ease-in-out;
  transform: scaleX(0);
  visibility: hidden;
  opacity: 0;
}
.gallery-card .gallery-img img {
  border-radius: 20px;
}
.gallery-card .gallery-overlay {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-size: 100% 100%;
  transition: 0.4s ease-in-out;
  transform: scaleX(0);
  visibility: hidden;
  opacity: 0;
}
.gallery-card .icon-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 20px 0 0 -28px;
  background-color: var(--theme-color);
  color: var(--white-color);
  border: 1px solid #fff;
  border-radius: 12px;
  width: 46px;
  height: 46px;
  line-height: 46px;
  font-size: 20px;
  transition: 0.4s ease-in-out;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: calc(50% - 28px);
  left: calc(50% - 28px);
  z-index: 3;
  transform: scale(0);
}
.gallery-card .icon-btn:hover {
  background-color: var(--white-color);
  color: var(--theme-color);
}
.gallery-card .box-img {
  position: relative;
  z-index: 2;
  border-radius: 30px;
  overflow: hidden;
}
.gallery-card .box-img img {
  width: 100%;
  height: 450px;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery-card .box-img:after {
  content: "";
  position: absolute;
  inset: 40px 40px 0 40px;
  border-radius: 12px 12px 0 0;
  background-color: var(--title-color);
  opacity: 0;
  transition: 0.4s ease;
  transform: scale(0.3);
}
.gallery-card .box-content {
  max-width: 300px;
  padding: 30px 10px;
  background-color: var(--white-color);
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
  border-radius: 30px;
  margin: -60px auto 0 auto;
  position: relative;
  z-index: 3;
  transition: 0.4s ease-in-out;
  visibility: hidden;
  opacity: 0;
  transform: translateY(40px);
}
.gallery-card .box-title {
  font-weight: 500;
  margin-bottom: 0;
}

.gallery-card2 {
  position: relative;
}
.gallery-card2 .gallery-img {
  position: relative;
  border-radius: 50px;
  transition: 0.4s ease-in-out;
}
.gallery-card2 .gallery-img:before {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  border-radius: 50px;
  background-color: var(--title-color);
  transition: 0.4s ease-in-out;
  transform: scaleX(0);
  visibility: hidden;
  opacity: 0;
}
.gallery-card2 .gallery-img img {
  width: 100%;
  border-radius: 50px;
}
.gallery-card2 .gallery-content {
  position: absolute;
  bottom: 30%;
  left: 50%;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease-in-out;
}
.gallery-card2 .icon-btn {
  --btn-size: 50px;
  background-color: transparent;
  border: 2px solid var(--white-color);
  margin-bottom: 30px;
  border-radius: 50%;
  top: 135px;
  right: 240px;
  position: absolute;
  color: var(--white-color);
  transform: rotate(-45deg);
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease-in-out;
}
.gallery-card2 .icon-btn:hover {
  color: var(--theme-color3);
  border-color: var(--theme-color3);
  transform: rotate(0);
}
.gallery-card2 .box-title {
  color: var(--white-color);
  margin-bottom: 0;
}
.gallery-card2 .box-text {
  color: var(--theme-color2);
  margin-bottom: 12px;
}
.gallery-card2:hover .gallery-img:before {
  opacity: 0.8;
  visibility: visible;
  transform: scaleX(1);
}
.gallery-card2:hover .gallery-img .icon-btn {
  opacity: 1;
  visibility: visible;
  top: 35px;
  right: 40px;
}
.gallery-card2:hover .gallery-content {
  bottom: 40px;
  opacity: 1;
  visibility: visible;
  left: 40px;
}

.filter-item .gallery-card:hover .icon-btn {
  margin: -28px 0 0 -28px;
  visibility: visible;
  opacity: 1;
}
.filter-item .gallery-card:hover .gallery-img:before {
  transform: scaleX(1);
  visibility: visible;
  opacity: 1;
}
.filter-item .gallery-card:hover .gallery-overlay {
  transform: scaleX(1);
  visibility: visible;
  opacity: 1;
}

#gallerySlider1 .swiper-slide-active .gallery-card .box-img:after {
  opacity: 0.7;
  transform: scale(1);
}
#gallerySlider1 .swiper-slide-active .gallery-card .box-content {
  transform: translateY(0);
  visibility: visible;
  opacity: 1;
}
#gallerySlider1 .swiper-slide-active .gallery-card .icon-btn {
  transform: scale(1);
}

.gallery-card.style-hover {
  position: relative;
  height: 450px;
}
.gallery-card.style-hover .box-img {
  height: 450px;
  transition: 0.4s ease-in-out;
}
.gallery-card.style-hover .box-img:after {
  inset: 30px 30px 95px 30px;
  border-radius: 15px;
}
.gallery-card.style-hover .box-content {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50px);
  width: 100%;
  max-width: 330px;
  border-radius: 25px;
}
.gallery-card.style-hover:hover .box-img {
  height: 395px;
}
.gallery-card.style-hover:hover .box-img:after {
  opacity: 0.7;
  transform: scale(1);
}
.gallery-card.style-hover:hover .icon-btn {
  transform: scale(1);
  margin-top: -35px;
}
.gallery-card.style-hover:hover .box-content {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, 0);
}

.gallery-img {
  overflow: hidden;
  display: inline-block;
}
.gallery-img a img {
  transition: transform 0.3s ease-in-out;
  display: block;
}
.gallery-img a:hover img {
  transform: scale(1.2);
}

/* ==============================================
   Gallery Styles end
   ============================================== */
.project-meta-wrap {
  display: flex;
  padding: 29px 30px;
  justify-content: space-between;
  max-width: 820px;
  border-radius: 0 0 20px 20px;
  background-color: var(--white-color);
  box-shadow: 0 10px 50px rgba(0, 0, 0, 0.08);
  position: relative;
  z-index: 3;
  margin: 0 auto -70px auto;
}
.project-meta-wrap:after {
  content: "";
  position: absolute;
  top: 0;
  border-style: solid;
  display: inline-block;
  z-index: -1;
  border-width: 30px 0 0 30px;
  border-color: transparent transparent transparent var(--gray-color);
  right: -30px;
}
.project-meta-wrap:before {
  content: "";
  position: absolute;
  top: 0;
  border-style: solid;
  display: inline-block;
  z-index: -1;
  border-width: 0 0 30px 30px;
  border-color: transparent transparent var(--gray-color) transparent;
  left: -30px;
}
.project-meta-wrap .line {
  background-color: var(--th-border-color);
  height: 40px;
  width: 1px;
}

.project-meta .box-title {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 2px;
}

.project-details .page-title {
  font-weight: 600;
  text-align: center;
}
.project-details .page-text {
  max-width: 890px;
  margin: 0 auto 32px auto;
  text-align: center;
}

.project-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--th-border-color);
  border-bottom: 1px solid var(--th-border-color);
  padding: 17px 0;
  margin-top: 22px;
}
.project-nav .icon-btn {
  --btn-size: 46px;
  font-size: 16px;
  border-radius: 99px;
  border: none;
  background-color: var(--theme-color);
  color: var(--white-color);
}
.project-nav .icon-btn:hover {
  background-color: var(--theme-color2);
}
.project-nav .nav-btn {
  color: var(--title-color);
  font-family: var(--title-font);
  font-weight: 500;
}
.project-nav .nav-btn:first-child .icon-btn {
  margin-right: 5px;
}
.project-nav .nav-btn:last-child .icon-btn {
  margin-left: 5px;
}
.project-nav .nav-btn:hover {
  color: var(--theme-color);
}

.category-card {
  background-color: var(--smoke-color2);
  padding: 40px 15px 45px 15px;
  text-align: center;
  transition: 0.4s ease-in-out;
}
.category-card .box-shape {
  position: absolute;
  inset: 2px;
  pointer-events: none;
  background-size: 100% 100%;
}
.category-card .box-icon {
  width: 120px;
  height: 120px;
  line-height: 120px;
  background-color: var(--white-color);
  margin: 0 auto 20px auto;
}
.category-card .box-title {
  font-size: 18px;
  margin-bottom: -0.3em;
  transition: 0.1s;
}
.category-card .box-title a:hover {
  color: var(--title-color);
}
.category-card .box-subtitle {
  font-size: 14px;
  font-weight: 500;
  font-family: var(--title-font);
  transition: 0.4s ease-in-out;
}
.category-card:hover {
  background-color: var(--theme-color);
}
.category-card:hover .box-title {
  color: var(--white-color);
}
.category-card:hover .box-subtitle {
  color: var(--white-color);
}
.category-card:hover .box-icon img {
  transform: rotateY(180deg);
}

.category-box {
  text-align: center;
}
.category-box .box-icon {
  width: 150px;
  height: 150px;
  line-height: 150px;
  margin: 0 auto 20px auto;
  border-radius: 999px;
  position: relative;
  z-index: 2;
}
.category-box .box-icon:after {
  content: "";
  position: absolute;
  border-radius: inherit;
  z-index: -1;
  inset: 0;
  border: 2px dashed var(--th-border-color);
}
.category-box .box-icon:before {
  content: "";
  position: absolute;
  border-radius: inherit;
  z-index: -1;
  inset: 11px;
  background-color: var(--white-color);
}
.category-box .box-title {
  font-size: 20px;
  margin-bottom: 5px;
}
.category-box .box-text {
  font-size: 14px;
}
.category-box:hover .box-icon img {
  transform: rotateY(180deg);
}
.category-box:hover .box-icon:after {
  border-color: var(--theme-color);
  animation: spin 10s linear infinite;
}

.service-offer-wrapper {
  padding: 0 35px;
}
.service-offer-wrapper .service-offer-box {
  position: relative;
  --duration: 120s;
  --gap: 0px;
  display: flex;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  gap: var(--gap);
}
.service-offer-wrapper .service-offer-box:first-child {
  --duration: 100s;
}
.service-offer-wrapper .service-offer-box:last-child {
  --duration: 80s;
}
.service-offer-wrapper .service-offer-box .service-offer-group {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: var(--gap);
  min-width: 100%;
  animation: scroll var(--duration) linear infinite;
}
.service-offer-wrapper .service-offer-box .service-offer-group .text {
  font-family: var(--title-font);
  font-weight: 700;
  font-size: 36px;
  line-height: 1.27px;
  text-align: center;
  letter-spacing: 0.02em;
  text-transform: capitalize;
  color: var(--white-color);
  padding: 64px 0 57px;
  display: inline-block;
  cursor: pointer;
  transition: all 0.4s ease-in-out;
}
.service-offer-wrapper .service-offer-box .service-offer-group .text A {
  color: var(--white-color);
}
.service-offer-wrapper .service-offer-box .service-offer-group .text img {
  margin: 0 28px;
}
.service-offer-wrapper .service-offer-box.marquee--reverse .service-offer-group {
  animation-direction: reverse;
}

.cta-2-area .sub-title::before {
  background: var(--theme-color2);
}
.cta-2-area .sub-title::after {
  background: var(--theme-color2);
}
.cta-2-area .cta-2-bg-wrapper {
  border-radius: 50px;
  overflow: hidden;
}

.cta-box2 .title-area {
  margin-bottom: 30px;
  line-height: 140%;
}
.cta-box2 .th-btn {
  border: 2px solid var(--white-color);
}

.cta-2-bottom-shape {
  height: 212px;
  width: 212px;
  background: 0 0;
  border-radius: 50%;
  border: 30px solid var(--theme-color2);
  left: 9%;
  bottom: -137px;
}

.cta-2-top-shape {
  height: 212px;
  width: 212px;
  background: 0 0;
  border-radius: 50%;
  border: 30px solid var(--theme-color2);
  right: 9%;
  top: -137px;
}

.service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text {
  padding: 85px 0 0;
  margin: 0;
}
.service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
  color: var(--title-color);
  text-transform: uppercase;
  font-size: 84px;
}
.service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
  border: 2px solid var(--theme-color2);
  border-radius: 50%;
  margin-top: -10px;
}

.cta-4-area-inner {
  border-radius: 100px;
  margin: 0 80px;
  position: relative;
}
.cta-4-area-inner:before {
  border-radius: 100px;
}

.shape-mockup.cta-4-shape-lef {
  left: 42px;
  z-index: 1;
  top: 0;
  height: 100%;
}
.shape-mockup.cta-4-shape-lef img {
  height: 100%;
}

.shape-mockup.cta-4-shape-right {
  z-index: 1;
  right: -10px;
  top: 0;
}

.cta-box4 .title-area {
  margin-bottom: 35px;
}
.cta-box4 .title-area .box-title {
  font-size: 54px;
  line-height: 1.19;
}
.cta-box4 .title-area .box-text {
  color: #a1a6b0;
  max-width: 76%;
  margin: 0 auto 0;
}

.offer-card {
  padding: 70px 40px;
  border-radius: 30px;
  background-position: top left;
}
.offer-card .box-subtitle {
  font-size: 20px;
  font-weight: 600;
  margin-top: -0.4em;
  margin-bottom: 20px;
  display: block;
}
.offer-card .box-title {
  font-size: 30px;
  line-height: 40px;
  font-weight: 700;
  margin-bottom: 33px;
}

.offer-box {
  padding: 40px 30px;
  border-radius: 20px;
  background-position: left center;
}
.offer-box .box-subtitle {
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 24px;
  padding: 0 13px;
  margin-bottom: 21px;
  border-radius: 99px;
  display: inline-block;
  background-color: var(--theme-color2);
  color: var(--white-color);
}
.offer-box .box-title {
  margin-bottom: 23px;
}

.offer-grid {
  padding: 40px 30px 40px 30px;
  border-radius: 20px;
  background-position: top left;
  height: 100%;
}
.offer-grid .box-subtitle {
  font-size: 18px;
  font-weight: 500;
  margin-top: -0.4em;
  margin-bottom: 20px;
  display: block;
}
.offer-grid .box-title {
  font-weight: 700;
  margin-bottom: 33px;
}

.offer-block {
  padding: 27px 40px 40px 40px;
  border-radius: 30px;
  background-color: var(--smoke-color2);
}
.offer-block .box-img {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
}
.offer-block .box-subtitle {
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  margin-top: -0.36em;
  margin-bottom: 16px;
  display: block;
  color: var(--theme-color);
}
.offer-block .box-heading {
  display: block;
  font-family: var(--title-font);
  font-size: 20px;
  font-weight: 300;
  color: var(--theme-color);
  margin-bottom: 10px;
  margin-top: -0.4em;
}
.offer-block .box-title {
  font-size: 36px;
  font-weight: 300;
  margin-bottom: 0;
  position: relative;
  z-index: 3;
}
.offer-block .box-title b {
  font-weight: 700;
}
.offer-block .box-text {
  margin-bottom: 22px;
  position: relative;
  z-index: 3;
}
.offer-block .box-content {
  position: relative;
  padding: 35px;
  border: 5px solid var(--white-color);
  border-radius: 15px;
  box-sizing: border-box;
}
.offer-block .box-content:after {
  content: "";
  position: absolute;
  right: -5px;
  bottom: -5px;
  height: 70%;
  width: 80%;
  border-bottom: 5px solid var(--th-border-color);
  border-right: 5px solid var(--th-border-color);
  border-radius: 0 0 15px 0;
}
.offer-block .box-shape {
  position: absolute;
  inset: 0;
}
.offer-block .box-shape img {
  width: 100%;
  height: 100%;
}

.product-deal {
  border-radius: 40px;
  border-bottom: 56px solid var(--theme-color2);
  position: relative;
  z-index: 2;
  padding-bottom: 0;
}
.product-deal:before {
  content: "";
  height: 200px;
  width: 100%;
  background-color: var(--white-color);
  position: absolute;
  left: 0;
  bottom: -32px;
  border-radius: 0 0 40px 40px;
  z-index: -1;
}
.product-deal .product-img {
  margin-bottom: 30px;
  border-radius: 35px;
}
.product-deal .product-img .actions {
  top: 20px;
  right: 20px;
}
.product-deal .product-title {
  font-size: 24px;
  margin-top: 10px;
  margin-bottom: 10px;
}
.product-deal .deal-counter {
  margin-top: 25px;
  margin-bottom: -15px;
}
.product-deal:hover {
  border-color: var(--theme-color);
}

.deal-counter {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
}
.deal-counter li {
  list-style: none;
  background-color: var(--white-color);
  text-align: center;
  display: flex;
  align-items: center;
}
.deal-counter li:after {
  content: ":";
  color: var(--theme-color);
  font-size: 44px;
  font-weight: 700;
  padding-left: 20px;
  padding-right: 20px;
  margin-top: -11px;
}
.deal-counter li:last-child {
  margin: 0;
}
.deal-counter li:last-child:after {
  display: none;
}
.deal-counter .count-number {
  font-size: 24px;
  margin-bottom: -2px;
  line-height: 1;
  font-weight: 700;
  font-family: var(--title-font);
  color: var(--title-color);
}
.deal-counter .count-name {
  font-weight: 500;
  font-size: 16px;
  text-transform: capitalize;
}

.countdown-style1 {
  display: flex;
  justify-content: space-between;
  max-width: 380px;
  margin: 0 auto 40px auto;
  padding: 0;
  list-style: none;
  text-align: center;
}
.countdown-style1 li {
  width: 80px;
  height: 80px;
  padding: 20px 0;
  border-radius: 30px;
  background-color: var(--theme-color);
}
.countdown-style1 .count-number {
  font-size: 24px;
  line-height: 22px;
  font-weight: 700;
  color: var(--white-color);
}
.countdown-style1 .count-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--white-color);
}

.deal-sec-area {
  position: relative;
  z-index: 3;
  margin-bottom: 40px;
}
.deal-sec-area:before {
  content: "";
  position: absolute;
  inset: 40px -40px -40px -40px;
  background-color: var(--smoke-color2);
  border-top: 5px solid var(--theme-color2);
  border-radius: 50px;
  z-index: -1;
}

.tab-menu1 {
  gap: 10px;
  justify-content: center;
}
.tab-menu1 .tab-btn {
  font-size: 14px;
  padding: 4px 12px;
  background-color: var(--smoke-color2);
  border: 1px solid var(--th-border-color);
  border-radius: 6px;
}
.tab-menu1 .tab-btn.active {
  background-color: var(--theme-color);
  border-color: var(--theme-color);
  color: var(--white-color);
}

.px-5 {
  padding-right: 5px;
  padding-left: 5px;
}

.px-10 {
  padding-right: 10px;
  padding-left: 10px;
}

.px-15 {
  padding-right: 15px;
  padding-left: 15px;
}

.px-20 {
  padding-right: 20px;
  padding-left: 20px;
}

.px-25 {
  padding-right: 25px;
  padding-left: 25px;
}

.px-30 {
  padding-right: 30px;
  padding-left: 30px;
}

.px-35 {
  padding-right: 35px;
  padding-left: 35px;
}

.px-40 {
  padding-right: 40px;
  padding-left: 40px;
}

.px-45 {
  padding-right: 45px;
  padding-left: 45px;
}

.px-50 {
  padding-right: 50px;
  padding-left: 50px;
}

.py-5 {
  padding-top: 5px;
  padding-bottom: 5px;
}

.py-10 {
  padding-top: 10px;
  padding-bottom: 10px;
}

.py-15 {
  padding-top: 15px;
  padding-bottom: 15px;
}

.py-20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.py-25 {
  padding-top: 25px;
  padding-bottom: 25px;
}

.py-30 {
  padding-top: 30px;
  padding-bottom: 30px;
}

.py-35 {
  padding-top: 35px;
  padding-bottom: 35px;
}

.py-40 {
  padding-top: 40px;
  padding-bottom: 40px;
}

.py-45 {
  padding-top: 45px;
  padding-bottom: 45px;
}

.py-50 {
  padding-top: 50px;
  padding-bottom: 50px;
}

.pt-5 {
  padding-top: 5px;
}

.pt-10 {
  padding-top: 10px;
}

.pt-6 {
  padding-top: 6px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-25 {
  padding-top: 25px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-35 {
  padding-top: 35px;
}

.pt-40 {
  padding-top: 40px;
}

.pt-45 {
  padding-top: 45px;
}

.pt-50 {
  padding-top: 50px;
}

.pt-70 {
  padding-top: 70px;
}

.pb-5 {
  padding-bottom: 5px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-6 {
  padding-bottom: 6px;
}

.pb-15 {
  padding-bottom: 15px;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-25 {
  padding-bottom: 25px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-35 {
  padding-bottom: 35px;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-45 {
  padding-bottom: 45px;
}

.pb-50 {
  padding-bottom: 50px;
}

.pb-70 {
  padding-bottom: 70px;
}

.pl-5 {
  padding-left: 5px;
}

.pl-10 {
  padding-left: 10px;
}

.pl-15 {
  padding-left: 15px;
}

.pl-20 {
  padding-left: 20px;
}

.pl-25 {
  padding-left: 25px;
}

.pl-30 {
  padding-left: 30px;
}

.pl-35 {
  padding-left: 35px;
}

.pl-40 {
  padding-left: 40px;
}

.pl-45 {
  padding-left: 45px;
}

.pl-50 {
  padding-left: 50px;
}

.pr-5 {
  padding-right: 5px;
}

.pr-10 {
  padding-right: 10px;
}

.pr-15 {
  padding-right: 15px;
}

.pr-20 {
  padding-right: 20px;
}

.pr-25 {
  padding-right: 25px;
}

.pr-30 {
  padding-right: 30px;
}

.pr-35 {
  padding-right: 35px;
}

.pr-40 {
  padding-right: 40px;
}

.pr-45 {
  padding-right: 45px;
}

.pr-50 {
  padding-right: 50px;
}

.pb-60 {
  padding-bottom: 60px;
}

.mx-5 {
  margin-right: 5px;
  margin-left: 5px;
}

.mx-10 {
  margin-right: 10px;
  margin-left: 10px;
}

.mx-15 {
  margin-right: 15px;
  margin-left: 15px;
}

.mx-20 {
  margin-right: 20px;
  margin-left: 20px;
}

.mx-25 {
  margin-right: 25px;
  margin-left: 25px;
}

.mx-30 {
  margin-right: 30px;
  margin-left: 30px;
}

.mx-35 {
  margin-right: 35px;
  margin-left: 35px;
}

.mx-40 {
  margin-right: 40px;
  margin-left: 40px;
}

.mx-45 {
  margin-right: 45px;
  margin-left: 45px;
}

.mx-50 {
  margin-right: 50px;
  margin-left: 50px;
}

.my-5 {
  margin-top: 5px;
  margin-bottom: 5px;
}

.my-10 {
  margin-top: 10px;
  margin-bottom: 10px;
}

.my-15 {
  margin-top: 15px;
  margin-bottom: 15px;
}

.my-20 {
  margin-top: 20px;
  margin-bottom: 20px;
}

.my-25 {
  margin-top: 25px;
  margin-bottom: 25px;
}

.my-30 {
  margin-top: 30px;
  margin-bottom: 30px;
}

.my-35 {
  margin-top: 35px;
  margin-bottom: 35px;
}

.my-40 {
  margin-top: 40px;
  margin-bottom: 40px;
}

.my-45 {
  margin-top: 45px;
  margin-bottom: 45px;
}

.my-50 {
  margin-top: 50px;
  margin-bottom: 50px;
}

.mt-5 {
  margin-top: 5px;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-25 {
  margin-top: 25px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-35 {
  margin-top: 35px;
}

.mt-40 {
  margin-top: 40px;
  margin-top: 40px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-50 {
  margin-top: 50px;
}

.mb-5 {
  margin-bottom: 5px;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-44 {
  margin-bottom: 15px !important;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-25 {
  margin-bottom: 25px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-35 {
  margin-bottom: 35px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-45 {
  margin-bottom: 45px;
}

.mb-50 {
  margin-bottom: 50px;
}

.ml-5 {
  margin-left: 5px;
}

.ml-10 {
  margin-left: 10px;
}

.ml-15 {
  margin-left: 15px;
}

.ml-20 {
  margin-left: 20px;
}

.ml-25 {
  margin-left: 25px;
}

.ml-30 {
  margin-left: 30px;
}

.ml-35 {
  margin-left: 35px;
}

.ml-40 {
  margin-left: 40px;
}

.ml-45 {
  margin-left: 45px;
}

.ml-50 {
  margin-left: 50px;
}

.mr-5 {
  margin-right: 5px;
}

.mr-10 {
  margin-right: 10px;
}

.mr-15 {
  margin-right: 15px;
}

.mr-20 {
  margin-right: 20px;
}

.mr-25 {
  margin-right: 25px;
}

.mr-30 {
  margin-right: 30px;
}

.mr-35 {
  margin-right: 35px;
}

.mr-40 {
  margin-right: 40px;
}

.mr-45 {
  margin-right: 45px;
}

.mr-50 {
  margin-right: 50px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-33 {
  margin-bottom: 33px;
}

.mb-28 {
  margin-bottom: 28px;
}

.mt-n1 {
  margin-top: -0.25rem;
}

.mt-n2 {
  margin-top: -0.45rem;
}

.mt-n3 {
  margin-top: -0.8rem;
}

.mt-n4 {
  margin-top: -1.5rem;
}

.mt-n5 {
  margin-top: -3rem;
}

.mb-n1 {
  margin-bottom: -0.25rem;
}

.mb-n2 {
  margin-bottom: -0.45rem;
}

.mb-n3 {
  margin-bottom: -0.8rem;
}

.mb-n4 {
  margin-bottom: -1.5rem;
}

.mb-n5 {
  margin-bottom: -3rem;
}

.space {
  padding-top: var(--section-space);
  padding-bottom: var(--section-space);
}

.space-top {
  padding-top: var(--section-space);
}

.space-bottom {
  padding-bottom: var(--section-space);
}

.space-extra {
  padding-top: calc(var(--section-space) - 30px);
  padding-bottom: calc(var(--section-space) - 30px);
}

.space-extra-top {
  padding-top: calc(var(--section-space) - 30px);
}

.space-extra-bottom {
  padding-bottom: calc(var(--section-space) - 30px);
}

.space-extra2 {
  padding-top: calc(var(--section-space) - 40px);
  padding-bottom: calc(var(--section-space) - 40px);
}

.space-extra2-top {
  padding-top: calc(var(--section-space) - 40px);
}

.space-extra2-bottom {
  padding-bottom: calc(var(--section-space) - 40px);
}

.underline-style {
  border-bottom: 1.5px solid var(--theme-color);
  padding-bottom: 10px;
}

.feature-item__btn {
  padding: 10px 30px;
  border: 1px solid #ddd;
  color: #bdbdbd;
  font-weight: 600;
  border-radius: 35px;
  margin-top: 2rem;
}

.video-watch-item {
  position: relative;
  z-index: 2;
}
.video-watch-item .video-play {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  text-align: center;
  z-index: 5;
}

.popup-youtube:hover img {
  transform: scale(1.3);
  transition: 1s;
}

.mfp-close {
  background: 0 0 !important;
}

.team-card-custo {
  background: #fff !important;
  box-shadow: 0 0 36px -5px #ddd;
  border-top-left-radius: 260px !important;
  border-top-right-radius: 260px !important;
}

.border-left {
  border-left: 3px solid var(--theme-color);
  padding-left: 1rem;
}

.bg-none {
  background: 0 0 !important;
}

.nav-tabs .nav-link {
  background: #f0f0f0;
  border-radius: 8px;
  padding: 20px;
  font-weight: 600;
  color: #333;
  max-width: 243px;
  height: 100%;
}
.nav-tabs .nav-link.active {
  background: var(--theme-color);
  color: #fff;
}

.service-content {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-top: 20px;
}
.service-content img {
  max-width: 400px;
  border-radius: 10px;
}

.features {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  margin-top: 15px;
}

.feature-icon {
  width: 10px;
  height: 10px;
  background: #ff4081;
  border-radius: 50%;
}

/* ==============================================
   Feature Styles end
   ============================================== */
/* ==============================================
   About-Work Styles start
   ============================================== */
.about-icon__numbers {
  background: #d5eaff !important;
  font-weight: 700 !important;
}

.about-box__numbers {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 0 5px 1px #ddd;
  align-items: center;
}
.about-box__numbers:nth-child(2) {
  margin-left: 2rem;
}
.about-box__numbers:nth-child(1) {
  margin-right: 2rem;
}
.about-box__numbers:nth-child(3) {
  margin-right: 2rem;
}

/* ==============================================
   About-Work Styles end
   ============================================== */
.fa-certificate {
  padding-left: 35px;
  font-size: 40px;
  color: rgba(22, 110, 199, 0.19);
}

/* ==============================================
	   Ribbon Styles Start
	   ============================================== */
.ribbon-2 {
  --f: 0px;
  --r: 15px;
  --t: 25rem;
  inset: var(--t) calc(-1 * var(--f)) auto auto;
  padding: 0 10px var(--f) calc(10px + var(--r));
  -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--f)), calc(100% - var(--f)) 100%, calc(100% - var(--f)) calc(100% - var(--f)), 0 calc(100% - var(--f)), var(--r) calc(50% - var(--f) / 2));
          clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--f)), calc(100% - var(--f)) 100%, calc(100% - var(--f)) calc(100% - var(--f)), 0 calc(100% - var(--f)), var(--r) calc(50% - var(--f) / 2));
  background: var(--theme-color);
  box-shadow: 0 calc(-1 * var(--f)) 0 inset rgba(0, 0, 0, 0.3333333333);
  color: #fff;
  font-size: 13px;
}

/* ==============================================
	   Ribbon Styles end
	   ============================================== */
/* ==============================================
	   Overlay Styles start
	   ============================================== */
.hero-bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -2;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(41, 41, 41, 0.57);
  z-index: -1;
}

/* ==============================================
	   Overlay Styles end
	   ============================================== */
/* ==============================================
   parallax Styles start
   ============================================== */
.parallax-container {
  position: relative;
  background-image: url(../img/bg/parallax.png);
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #fff;
  padding: 50px 0;
}

.parallax-text {
  padding: 20px;
  border-radius: 10px;
  font-size: 2rem;
  max-width: 80%;
}

/* ==============================================
   parallax Styles end
   ============================================== */
/* ==============================================
   preloader Styles start
   ============================================== */
.mfp-wrap {
  top: 0 !important;
  left: 0;
  width: 100%;
  height: 100% !important;
  z-index: 1043;
  position: fixed !important;
  outline: 0 !important;
  -webkit-backface-visibility: hidden;
}

#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #242424;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

#loader-container {
  position: relative;
  width: 180px;
  height: 180px;
}
#loader-container img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100px;
  height: auto;
  z-index: 10;
}

#loader {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 4px solid transparent;
  border-top-color: var(--theme-color2);
  animation: spin 2s linear infinite;
}
#loader::before, #loader::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  border: 4px solid transparent;
}
#loader::before {
  top: 8px;
  left: 8px;
  right: 8px;
  bottom: 8px;
  border-top-color: var(--theme-color2);
  animation: spin 3s linear infinite;
}
#loader::after {
  top: 16px;
  left: 16px;
  right: 16px;
  bottom: 16px;
  border-top-color: var(--theme-color);
  animation: spin 1.5s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.hide-preloader {
  opacity: 0;
  visibility: hidden;
}

.newsletter-bottom {
  margin-top: 10%;
}

/* ==============================================
   preloader Styles end
   ============================================== */
/* ==============================================
   All Media Query Styles start
   ============================================== */
@media (max-width: 1199px) {
  .h1 {
    font-size: 44px;
    line-height: 1.3;
  }
  h1 {
    font-size: 44px;
    line-height: 1.3;
  }
  .h2 {
    font-size: 36px;
    line-height: 1.3;
  }
  h2 {
    font-size: 36px;
    line-height: 1.3;
  }
  .h3 {
    font-size: 30px;
  }
  h3 {
    font-size: 30px;
  }
  .h4 {
    font-size: 24px;
  }
  h4 {
    font-size: 24px;
  }
  .h5 {
    font-size: 20px;
  }
  h5 {
    font-size: 20px;
  }
  .h6 {
    font-size: 16px;
  }
  h6 {
    font-size: 16px;
  }
  .sub-title.lg-after-none:after {
    display: none;
  }
  .title-area.text-center.text-xl-start .sub-title {
    justify-content: center;
  }
  .sub-title {
    margin-bottom: 20px;
  }
  .shadow-title {
    font-size: 64px;
  }
  .sec-title {
    --section-title-space: 60px;
  }
  .title-area {
    --section-title-space: 60px;
  }
  .sec-title.mb-45 {
    margin-bottom: 36px;
  }
  .title-area.mb-45 {
    margin-bottom: 36px;
  }
  .sec-title.mb-50 {
    margin-bottom: 40px;
  }
  .title-area.mb-50 {
    margin-bottom: 40px;
  }
  .sec-btn {
    --section-title-space: 55px;
  }
  .title-line {
    --section-title-space: 55px;
  }
  .title-area2 .title {
    max-width: 300px;
  }
  .widget {
    --widget-padding-y: 30px;
    --widget-padding-x: 30px;
  }
  .widget_title {
    font-size: 22px;
    margin: -0.12em 0 28px 0;
  }
  .author-widget-wrap .name {
    font-size: 22px;
  }
  .footer-widget.widget_archive a {
    margin-bottom: 16px;
  }
  .footer-widget.widget_categories a {
    margin-bottom: 16px;
  }
  .footer-widget.widget_meta a {
    margin-bottom: 16px;
  }
  .footer-widget.widget_nav_menu a {
    margin-bottom: 16px;
  }
  .footer-widget.widget_pages a {
    margin-bottom: 16px;
  }
  .header-search input {
    max-width: 350px;
  }
  .newsletter-form {
    max-width: 460px;
  }
  .widget-area {
    padding-bottom: 10px;
  }
  .subscribe-box {
    text-align: center;
  }
  .breadcumb-wrapper .breadcrumb-left {
    display: none;
  }
  .breadcumb-menu {
    margin: 15px 0 -0.5em 0;
  }
  .breadcumb-menu a {
    font-size: 18px;
  }
  .breadcumb-menu li {
    font-size: 18px;
  }
  .breadcumb-menu span {
    font-size: 18px;
  }
  .breadcumb-title {
    font-size: 64px;
  }
  .blog-meta a {
    margin-right: 15px;
  }
  .blog-meta a:not(:last-child) {
    padding-right: 15px;
  }
  .blog-meta span {
    margin-right: 15px;
  }
  .blog-meta span:not(:last-child) {
    padding-right: 15px;
  }
  .blog-single {
    --blog-space-x: 20px;
    --blog-space-y: 20px;
  }
  .th-comments-wrap .children {
    margin-left: 40px;
  }
  .hero-1 .hero-img {
    max-width: 565px;
  }
  .hero-1 .shape-5 {
    display: none;
  }
  .hero-2 .shape-5 {
    display: none;
  }
  .hero-2 .shape-4 {
    bottom: 10% !important;
    width: 45px;
  }
  .hero-title {
    font-size: 55px;
  }
  .hero-style1 {
    padding: 270px 0 125px;
  }
  .hero-style1 .title-img {
    right: 3%;
  }
  .hero-style2 {
    padding: 300px 0 205px;
  }
  .hero-style3 {
    padding: 160px 60px 40px 60px;
    width: 100%;
  }
  .hero-style3 .hero-bottom {
    margin-top: 65px;
  }
  .hero-style3 .hero-bottom .content {
    margin-right: 0;
  }
  .popup-search-box form {
    max-width: 600px;
  }
  .woocommerce-Reviews .th-post-comment {
    padding: 30px !important;
  }
  .th-sort-bar select {
    min-width: auto;
  }
  .product-tab-style1 {
    margin: 55px 0 40px 0;
  }
  .product-about {
    padding-left: 0;
  }
  .summary-content {
    padding-left: 0;
  }
  .contact-map iframe {
    height: 400px;
  }
  .img-box1 {
    max-width: 690px;
    margin-left: auto;
    margin-right: auto;
  }
  .about-sec-2-left .img-box1 {
    text-align: center;
  }
  .about-sec-3 {
    border-radius: 20px;
  }
  .about-3-counter-wrap .counter-card .box-number .plus {
    font-size: 35px;
  }
  .about-3-counter-wrap .counter-card .box-number .number {
    font-size: 40px;
  }
  .about-3-counter-wrap .counter-card .box-number .number .counter-number {
    font-size: 40px;
  }
  .about-3-counter-wrap .counter-card:nth-child(1):before {
    width: 92%;
  }
  .about-3-counter-wrap .counter-card:nth-child(2):before {
    width: 92%;
  }
  .team-area-1__shape-1 {
    top: 4%;
  }
  .team-area-1__shape-2 {
    top: 4%;
  }
  .team-details img {
    height: 100%;
  }
  .testi-img-box {
    margin-left: 0;
  }
  .testi-1-main-img {
    width: inherit;
    text-align: start;
  }
  .title-area.testi-2-title {
    max-width: 100%;
  }
  .test-img-2-box .img1 {
    margin-right: 0;
    text-align: center;
  }
  .testi-shape1 img {
    margin-left: -65%;
  }
  .testi-box-slide {
    max-width: 620px;
  }
  .testi-box_text {
    font-size: 18px;
  }
  .testi-grid-area .slider-arrow {
    display: none;
  }
  .counter-card {
    flex-direction: column;
    text-align: center;
    gap: 20px;
  }
  .counter-card .box-number {
    font-size: 45px;
    margin-bottom: 5px;
  }
  .counter-card .box-number .counter-number {
    font-size: 60px;
  }
  .counter-card-wrap.style2 .box-number {
    font-size: 48px;
  }
  .counter-card-wrap.style2 .box-number .counter-number {
    font-size: 58px;
  }
  .blog-card.style-3 .box-title {
    font-size: 25px;
  }
  .blog-box .blog-img {
    width: 400px;
  }
  .blog-box .blog-img img {
    max-height: 250px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .checklist.mb-45 {
    margin-bottom: 40px;
  }
  .filter-menu {
    margin-bottom: 50px;
    gap: 8px;
  }
  .filter-menu button {
    padding: 10px 20px;
  }
  p.mb-40 {
    margin-bottom: 35px;
  }
  p.mb-45 {
    margin-bottom: 38px;
  }
  .why-choose-1-right-card {
    display: none;
  }
  .why-img-box1 {
    margin-right: 0;
  }
  .why-img-box1 .img1 {
    text-align: center;
  }
  .choose-feature-wrap {
    grid-template-columns: 1fr 1fr;
    row-gap: 40px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .why-2-right-bg-triangle {
    display: none;
  }
  .why-2-right-bottom {
    background-image: none !important;
  }
  .why-2-right-bottom__box {
    background-color: var(--smoke-color2);
    border-radius: 20px;
  }
  .why-2-right-bottom__box:nth-child(2) {
    margin-top: 0;
  }
  .why-2-right-bottom__box-content .box-title {
    font-size: 22px;
  }
  .faq-img1 {
    margin-bottom: 40px;
  }
  .faq-img1 .img1 img {
    max-height: 600px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top center;
       object-position: top center;
  }
  .faq-img1 .shape1 {
    inset: -50px -80px -20px -80px;
  }
  .process-box-wrap {
    margin-top: 40px !important;
  }
  .process-box .box-icon {
    left: 22%;
  }
  .process-box .box-icon:before {
    display: none;
  }
  .process-card .box-content {
    padding: 30px 10px;
  }
  .process-3-shape-4 {
    display: none;
  }
  .process-3-shape-1 {
    display: none;
  }
  .price-sec-1__shape-1 {
    display: none;
  }
  .price-sec-1__shape-2 {
    display: none;
  }
  .price-sec-1__shape-right-1 {
    display: none;
  }
  .feature-list {
    display: block;
    text-align: center;
    padding: 15px 5px;
  }
  .feature-list .box-icon {
    margin: 0 auto 15px auto;
  }
  .feature-list-line {
    height: 155px;
  }
  .gallery-sec-3 {
    border-radius: inherit;
  }
  .gallery-card2 .gallery-img:before {
    border-radius: 30px;
  }
  .gallery-card2 .gallery-img img {
    border-radius: 30px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
    font-size: 45px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 40px;
  }
  .shape-mockup.cta-4-shape-lef {
    display: none;
  }
  .shape-mockup.cta-4-shape-right {
    display: none;
  }
  .cta-box4 .title-area .box-title {
    font-size: 32px;
  }
}
@media (max-width: 767px) {
  .h1 {
    font-size: 40px;
  }
  h1 {
    font-size: 40px;
  }
  .h2 {
    font-size: 34px;
    line-height: 1.3;
  }
  h2 {
    font-size: 34px;
    line-height: 1.3;
  }
  .h3 {
    font-size: 26px;
  }
  h3 {
    font-size: 26px;
  }
  .h4 {
    font-size: 22px;
  }
  h4 {
    font-size: 22px;
  }
  .h5 {
    font-size: 18px;
  }
  h5 {
    font-size: 18px;
  }
  .h6 {
    font-size: 16px;
  }
  h6 {
    font-size: 16px;
  }
  .title-area2 {
    text-align: center;
  }
  .title-area2 .title {
    max-width: 100%;
  }
  .btn-group.style2 {
    gap: 20px 30px;
  }
  .btn-group {
    gap: 20px;
  }
  .widget_call .info-box_link {
    font-size: 20px;
  }
  .widget {
    border-radius: 10px;
  }
  .footer-widget .widget_title {
    margin: -0.12em 0 25px 0;
    padding: 0 0 11px 0;
  }
  .th-widget-about .about-text {
    margin-bottom: 20px;
  }
  .social-box.mb-30 {
    margin-bottom: 25px;
  }
  .header-links li:not(:last-child) {
    margin: 0;
  }
  .header-links li:not(:last-child):after {
    display: none;
  }
  .header-layout2 .menu-area {
    margin: 15px 0;
    padding-left: 15px;
    padding-right: 15px;
  }
  .newsletter-wrap {
    flex-wrap: wrap;
    justify-content: center;
    gap: 25px;
  }
  .newsletter-wrap .newsletter-title {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .footer-wrapper .newsletter-form {
    max-width: 550px;
    gap: 15px;
    justify-content: center;
  }
  .footer-layout1 .widget-area {
    padding-top: 50px;
    padding-bottom: 0;
  }
  .subscribe-box {
    padding: 10px 0 70px;
  }
  .footer-top-shape {
    top: -60px;
    height: 60px;
  }
  .breadcumb-wrapper {
    padding: 250px 0 110px 0;
  }
  .breadcumb-wrapper:has(.breadcrumb-bottom-shape) {
    padding: 255px 0 175px;
  }
  .breadcumb-title {
    font-size: 40px;
  }
  .th-pagination a {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .th-pagination span {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .wp-block-query-pagination-numbers a {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .wp-block-query-pagination-numbers span {
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .wp-block-quote {
    padding: 30px;
  }
  .wp-block-quote cite {
    font-size: 18px;
    left: 30px;
  }
  blockquote {
    padding: 30px;
  }
  blockquote cite {
    font-size: 18px;
    left: 30px;
  }
  .wp-block-pullquote.is-style-solid-color blockquote {
    max-width: 90%;
  }
  .blog-author {
    flex-direction: column;
  }
  .blog-author .auhtor-img {
    width: 100%;
    min-height: 200px;
  }
  .blog-author .auhtor-img img {
    width: 100%;
  }
  .share-links {
    --blog-space-x: 20px;
  }
  .blog-details .blog-single {
    --blog-space-x: 20px;
    --blog-space-y: 20px;
  }
  .blog-single {
    --blog-space-x: 20px;
    --blog-space-y: 20px;
    border-radius: 10px;
  }
  .blog-single .blog-audio {
    border-radius: 10px 10px 0 0;
  }
  .blog-single .blog-img {
    border-radius: 10px 10px 0 0;
  }
  .blog-single .blog-video {
    border-radius: 10px 10px 0 0;
  }
  .blog-single .blog-title {
    font-size: 24px;
    line-height: 1.3;
  }
  .blog-single .blog-text {
    margin-bottom: 22px;
  }
  .blog-single .blog-bottom {
    padding-top: 15px;
  }
  .th-comment-form {
    border-radius: 10px;
    padding: 40px 20px;
    --blog-space-x: 20px;
  }
  .th-comments-wrap {
    border-radius: 10px;
    padding: 40px 20px;
  }
  .th-comments-wrap .th-post-comment {
    display: block;
  }
  .th-comments-wrap .star-rating {
    position: relative;
    top: 0;
    right: 0;
  }
  .th-comments-wrap .comment-top {
    display: block;
  }
  .th-comments-wrap .comment-avater {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .th-comments-wrap .children {
    margin-left: 40px;
    margin-left: 30px;
  }
  .hero-1 .shape-2 {
    top: 16%;
    left: 17%;
    width: 50px;
  }
  .hero-2 .shape-2 {
    top: 16%;
    left: 17%;
    width: 50px;
  }
  .hero-style1 {
    padding: 230px 0 50px;
  }
  .hero-title {
    font-size: 54px;
  }
  .hero-style2 {
    padding: 240px 0 135px;
  }
  .hero-style2 .hero-title {
    font-size: 55px;
  }
  .hero-style2 .sub-title {
    margin-bottom: 14px;
  }
  .hero-style2 .round-line::after {
    height: 88px;
    width: 102%;
    background-size: 211px 108px;
    left: 1px;
  }
  .hero-style3 {
    padding: 170px 60px 40px 60px;
    width: 100%;
    text-align: center;
    padding-left: 10px;
    padding-right: 10px;
  }
  .hero-style3 .hero-bottom {
    justify-content: center;
    margin-top: 45px;
  }
  .error-title {
    margin-bottom: 10px;
  }
  .woocommerce-info {
    font-size: 14px;
    line-height: 22px;
    padding: 10px 15px 10px 37px;
  }
  .woocommerce-info:before {
    font-size: 16px;
    top: 10px;
    left: 15px;
  }
  .woocommerce-message {
    font-size: 14px;
    line-height: 22px;
    padding: 10px 15px 10px 37px;
  }
  .woocommerce-message:before {
    font-size: 16px;
    top: 10px;
    left: 15px;
  }
  .th-sort-bar {
    text-align: center;
    padding: 10px 15px 15px 15px;
  }
  .th-sort-bar .nav {
    justify-content: center;
  }
  .th-sort-bar select {
    margin: 0 auto;
  }
  .th-sort-bar .woocommerce-result-count {
    padding-left: 0;
  }
  .th-product-box.list-view .product-img {
    max-width: 130px;
  }
  .th-product-box.list-view .actions {
    --btn-size: 30px;
    --btn-font-size: 10px;
    --icon-gap-x: 2px;
  }
  .cart_table {
    text-align: left;
    min-width: auto;
    border-collapse: separate;
    border-spacing: 0 20px;
    border: none;
  }
  .cart_table thead {
    display: none;
  }
  .cart_table td {
    padding: 15px;
    display: block;
    width: 100%;
    padding-left: 25%;
    text-align: right;
    border: 1px solid #f3f3f3;
    border-bottom: none;
  }
  .cart_table td::before {
    display: block;
  }
  .cart_table td:last-child {
    border-bottom: 1px solid #f3f3f3;
  }
  .cart_table td.actions {
    padding-left: 15px;
    text-align: center;
  }
  .cart_table td.actions > .th-btn {
    margin-top: 10px;
    margin-right: 0;
    display: block;
    width: -moz-max-content;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
  .cart_table td.actions > .th-btn:last-child {
    margin-right: auto;
  }
  .cart_table .th-cart-coupon {
    width: 100%;
    text-align: center;
    float: none;
    justify-content: center;
    display: block;
    padding-bottom: 10px;
  }
  .cart_table .th-cart-coupon input {
    width: 100%;
    margin-bottom: 10px;
  }
  .cart_totals td {
    padding: 15px 10px;
  }
  .cart_totals td:first-child {
    width: 17%;
    line-height: 1.4;
  }
  .cart_totals th {
    padding: 15px 10px;
  }
  .cart_totals th:first-child {
    width: 17%;
    line-height: 1.4;
  }
  tfoot.checkout-ordertable th {
    display: none;
  }
  .woocommerce-checkout-payment ul input[type=radio] ~ label img {
    max-width: 150px;
  }
  .checkout-ordertable td {
    padding: 5px 20px 5px 60px;
  }
  .checkout-ordertable th {
    padding: 5px 20px 5px 60px;
  }
  .tinv-wishlist table {
    table-layout: fixed;
    border-bottom: 1px solid var(--th-border-color);
  }
  .tinv-wishlist table td {
    border: 1px solid var(--th-border-color);
    border-bottom: none;
  }
  .tinv-wishlist table th {
    border: 1px solid var(--th-border-color);
    border-bottom: none;
  }
  .tinv-wishlist table tfoot {
    border-bottom: 1px solid var(--th-border-color);
  }
  .tinv-wishlist table.tinvwl-table-manage-list tbody td.product-remove {
    display: none;
  }
  .tinv-wishlist table.tinvwl-table-manage-list tbody td {
    display: block;
    width: 100% !important;
    text-align: center;
  }
  .tinv-wishlist table.tinvwl-table-manage-list thead th:not(.product-name) {
    display: none;
  }
  .tinv-wishlist .social-buttons {
    max-width: 100%;
    margin-left: unset;
    flex-direction: column;
  }
  .tinv-wishlist .social-buttons ul {
    margin-left: unset;
    margin-top: 5px;
  }
  .product-name {
    text-align: center;
  }
  .tinvwl-txt {
    display: inline-block !important;
  }
  .contact-feature {
    padding: 20px;
    border-radius: 20px;
  }
  .contact-feature .contact-feature-icon {
    border-radius: 15px;
  }
  .appointment-form-wrapper .contact-form {
    border-radius: 20px;
  }
  .img-box1 .img1 {
    width: 120px;
  }
  .img-box1 .shape1 {
    right: -5px;
    width: 126px;
  }
  .year-counter {
    position: static;
  }
  .year-counter .rotate-text {
    transform: inherit;
    margin-top: 25px;
  }
  .year-counter_number {
    margin-bottom: 0;
  }
  .year-counter_text-small {
    text-align: center;
  }
  .year-counter_text-big {
    margin-bottom: 3px;
  }
  .about-feature-wrap {
    gap: 20px;
  }
  .about-sec-2-left .year-counter_text-big {
    margin-bottom: 7px;
  }
  .about-3-counter-wrap {
    padding: 30px;
  }
  .about-3-counter-wrap .counter-card {
    border-right: 0;
  }
  .about-3-counter-wrap .counter-card .box-number .plus {
    font-size: 30px;
  }
  .about-3-counter-wrap .counter-card .box-number .number {
    font-size: 30px;
  }
  .about-3-counter-wrap .counter-card .box-number .number .counter-number {
    font-size: 30px;
  }
  .about-3-counter-wrap .counter-card:nth-child(1) {
    padding-bottom: 0;
    margin-bottom: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.26);
  }
  .about-3-counter-wrap .counter-card:nth-child(1) .about-3-count-shape {
    display: none;
  }
  .about-3-counter-wrap .counter-card:nth-child(2) .about-3-count-shape {
    display: none;
  }
  .about-3-counter-wrap .counter-card:nth-child(3) {
    padding-bottom: 0;
    margin-bottom: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.26);
  }
  .about-3-counter-wrap .counter-card:nth-child(3) .about-3-count-shape {
    display: none;
  }
  .about-3-counter-wrap .counter-card:nth-child(4) .about-3-count-shape {
    display: none;
  }
  .team-area-1__shape-1 {
    top: 2%;
    width: 50px;
  }
  .team-area-1__shape-2 {
    top: 2%;
    width: 40px;
  }
  .team-card .team-social {
    right: 22px;
    top: 24px;
  }
  .team-card .team-content {
    padding: 20px;
  }
  .about-info-wrap {
    border-radius: 20px;
    grid-template-columns: repeat(1, 1fr);
  }
  .about-info:not(:first-child) {
    border-left: none;
  }
  .about-info:nth-child(3) {
    border-bottom: 1px solid rgba(27, 31, 37, 0.1);
  }
  .circle-top .box-title {
    font-size: 26px;
  }
  .testi-1-shape-1 {
    width: 415px;
  }
  .testi-1-shape-2 {
    width: 448px;
  }
  .testi-block {
    padding: 25px;
  }
  .testi-card_text {
    font-size: 22px;
  }
  .testi-box_quote {
    display: none;
  }
  .testi-grid_title {
    font-size: 24px;
  }
  .testi-grid_text {
    font-size: 16px;
  }
  .counter-card-wrap {
    padding-left: 10px;
    padding-right: 10px;
    flex-wrap: wrap;
    position: relative;
    gap: 70px;
  }
  .counter-card {
    flex: 50%;
    padding-left: 10px;
    padding-right: 10px;
  }
  .counter-card .box-number {
    font-size: 30px;
  }
  .counter-card .box-number .counter-number {
    font-size: 35px;
  }
  .counter-card-wrap.style2 .box-number {
    font-size: 38px;
  }
  .counter-card-wrap.style2 .box-number .counter-number {
    font-size: 45px;
  }
  .blog-card .box-title {
    font-size: 24px;
  }
  .blog-2-padding-bottom {
    padding-bottom: 140px;
  }
  .blog-card.style-3 .box-title {
    font-size: 20px;
  }
  .blog-box {
    flex-wrap: wrap;
  }
  .blog-box .blog-img {
    width: 100%;
  }
  .blog-box .box-title {
    font-size: 24px;
  }
  .blog-grid .blog-content {
    padding: 30px;
  }
  .home-3-booking-from-area .home-3-form-wrap {
    padding: 30px;
  }
  .checklist.list-two-column ul {
    grid-template-columns: auto;
  }
  .checklist.list-two-column ul li {
    text-align: initial;
  }
  .rounded-20 {
    border-radius: 10px !important;
  }
  .choose-feature-wrap {
    grid-template-columns: 1fr;
    row-gap: 40px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .why-2-left .why-2-left-shape-2 {
    right: 11px;
    top: 24%;
    width: 50px;
  }
  .why-2-right-bottom {
    flex-wrap: wrap;
  }
  .why-2-right-bottom__box {
    flex: 0 0 auto;
    width: 47%;
    justify-content: center;
  }
  .why-2-right-bottom__box-content .box-title {
    font-size: 20px;
  }
  .th-service-1__shape-1 {
    max-width: 55px;
    top: 3%;
  }
  .th-service-1__shape-2 {
    max-width: 40px;
    top: 4%;
  }
  .service-slider-2 .slider-pagination.swiper-pagination-progressbar {
    display: none;
  }
  .service-slider-2 .slider-pagination2 {
    display: none;
  }
  .page-img {
    border-radius: 10px;
  }
  .service-feature-wrap {
    grid-template-columns: repeat(1, 1fr);
  }
  .process-card .box-content {
    padding: 30px;
  }
  .process-box-2-wrap {
    padding: 16px 0 85px 30px;
  }
  .gallery-2-shape-1 {
    display: none;
  }
  .gallery-2-shape-2 {
    display: none;
  }
  .gallery-2-shape-round-top {
    top: -154px;
    right: 30px;
    border: 25px solid var(--theme-color2);
    width: 200px;
    height: 200px;
  }
  .gallery-wrapper {
    display: initial;
  }
  .gallery-wrapper__item {
    border-radius: 20px;
    height: 150px;
    margin-bottom: 20px;
  }
  .gallery-wrapper__item img {
    width: 100%;
  }
  .gallery-wrapper__item.active {
    height: 400px;
  }
  .project-meta-wrap {
    gap: 20px 7px;
    flex-wrap: wrap;
    margin: 0 0 20px 0;
    border-radius: 15px;
  }
  .project-meta-wrap .line {
    display: none;
  }
  .project-meta {
    flex: calc(50% - 4px);
  }
  .service-offer-wrapper {
    padding: 0 20px;
  }
  .service-offer-wrapper .service-offer-box .service-offer-group .text {
    font-size: 28px;
    padding: 58px 0 48px;
  }
  .cta-2-area .cta-2-bg-wrapper {
    border-radius: 25px;
  }
  .cta-2-bottom-shape {
    width: 200px;
    height: 200px;
  }
  .cta-2-top-shape {
    width: 200px;
    height: 200px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
    font-size: 32px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 30px;
    margin-top: 6px;
  }
  .cta-box4 .title-area .box-text {
    max-width: 100%;
  }
  .offer-block .box-img {
    max-width: 55%;
  }
}
@media (max-width: 575px) {
  .h1 {
    font-size: 34px;
    line-height: 1.35;
  }
  h1 {
    font-size: 34px;
    line-height: 1.35;
  }
  .h2 {
    font-size: 28px;
  }
  h2 {
    font-size: 28px;
  }
  .shadow-title {
    font-size: 52px;
  }
  .col-md-6:last-child .newsletter-widget {
    margin-bottom: 27px;
  }
  .header-default {
    border-radius: 0 0 20px 20px;
  }
  .header-logo img {
    max-width: 180px;
  }
  .call-btn {
    padding: 0 15px;
  }
  .call-btn .box-title {
    font-size: 16px;
  }
  .copyright-wrap {
    background-color: var(--theme-color2);
    padding: 25px 0 20px;
  }
  .newsletter-wrap {
    padding: 40px 20px;
  }
  .newsletter-wrap .newsletter-title {
    font-size: 24px;
  }
  .newsletter-wrap .newsletter-form {
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer-wrapper .newsletter-form {
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer-wrapper .footer-shape-2 {
    display: none;
  }
  .footer-wrapper .footer-bottom-shape {
    display: none;
  }
  .widget-area {
    padding-bottom: 0;
  }
  .footer-logo-wrap {
    padding: 24px 30px;
    border-radius: 50px;
  }
  .subscribe-box {
    padding: 50px 0 50px !important;
  }
  .subscribe-box .subscribe-box_title {
    font-size: 26px;
  }
  .subscribe-box .subscribe-box_text {
    font-size: 16px;
  }
  .breadcumb-wrapper:has(.breadcrumb-bottom-shape) {
    padding: 215px 0 155px;
  }
  .breadcumb-wrapper .breadcrumb-right {
    bottom: 15%;
    left: 50%;
    width: 39px;
  }
  .breadcumb-title {
    font-size: 34px;
  }
  .wp-block-quote.is-large:not(.is-style-plain) p {
    font-size: 1.2em;
  }
  .wp-block-quote.is-style-large:not(.is-style-plain) p {
    font-size: 1.2em;
  }
  .blog-meta a {
    margin-right: 20px;
  }
  .blog-meta a:not(:last-child) {
    padding-right: 0;
  }
  .blog-meta a:not(:last-child):after {
    display: none;
  }
  .blog-meta span {
    margin-right: 20px;
  }
  .blog-meta span:not(:last-child) {
    padding-right: 0;
  }
  .blog-meta span:not(:last-child):after {
    display: none;
  }
  .blog-author .media-body {
    padding: 35px 20px 30px 20px;
  }
  .share-links-title {
    margin: 0 15px 5px 0;
  }
  .hero-1 .shape-3 {
    top: 15%;
  }
  .hero-2 .shape-3 {
    top: 15%;
  }
  .hero-2 .shape-4 {
    display: none;
  }
  .hero-2 .hero-shape2 {
    top: 19%;
    left: 34%;
  }
  .hero-style1 .title-img {
    right: 3%;
  }
  .hero-style1 .sub-title {
    font-size: 16px;
    margin-bottom: 15px;
  }
  .hero-title {
    font-size: 42px;
    line-height: 1.24;
    margin-bottom: 35px;
  }
  .hero-style2 .hero-title {
    font-size: 60px !important;
  }
  .hero-style2 .round-line::after {
    height: 86px;
    width: 86%;
    background-size: 172px 111px;
    left: 5px;
  }
  .hero-3 {
    border-radius: 20px;
  }
  .woocommerce-form-coupon {
    padding: 40px 20px;
    border-radius: 10px;
  }
  .woocommerce-form-login {
    padding: 40px 20px;
    border-radius: 10px;
  }
  .woocommerce-form-register {
    padding: 40px 20px;
    border-radius: 10px;
  }
  .woocommerce-Reviews .th-comment-form {
    padding: 40px 20px;
  }
  .product-about .actions {
    gap: 15px 15px;
  }
  .product-thumb-tab {
    --thumb: 74px;
    --gap: 6px;
  }
  .product-thumb-tab .tab-btn:not(:last-of-type) {
    margin-bottom: 10px;
  }
  .product-grid {
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
  }
  .contact-form {
    padding: 40px 20px;
  }
  .img-box1 .img1 {
    display: none;
  }
  .img-box1 .shape1 {
    display: none;
  }
  .year-counter_number {
    font-size: 50px;
    margin-bottom: 0;
  }
  .about-3-counter-wrap {
    border-radius: 20px;
    padding: 25px;
  }
  .about-3-counter-wrap .counter-card {
    padding: 20px;
  }
  .about-3-counter-wrap .counter-card .box-number .plus {
    font-size: 25px;
  }
  .about-3-counter-wrap .counter-card .box-number .number {
    font-size: 25px;
  }
  .about-3-counter-wrap .counter-card .box-number .number .counter-number {
    font-size: 25px;
  }
  .about-3-counter-wrap .counter-card:nth-child(1) {
    padding-right: 20px;
  }
  .about-3-counter-wrap .counter-card:nth-child(3) {
    padding-top: 20px;
  }
  .about-3-counter-wrap .counter-card:nth-child(4) {
    padding-top: 20px;
  }
  .team-area-1__shape-1 {
    top: 28px;
    left: 16%;
    width: 30px;
  }
  .team-area-1__shape-2 {
    top: 28px;
    right: 16%;
    width: 25px;
  }
  .team-details {
    padding: 40px 20px !important;
  }
  .team-details .th-social {
    text-align: start;
  }
  .team-about .team-wrapp .top-wrap {
    flex-direction: column;
  }
  .about-info {
    padding: 20px 0 20px 20px;
  }
  .team-contact-form {
    padding: 40px 20px;
  }
  .testi-1-shape-1 {
    display: none;
  }
  .testi-1-shape-2 {
    display: none;
  }
  .testi-card-slide .icon-box {
    display: none;
  }
  .testi-card_text {
    font-size: 20px;
  }
  .testi-box-area {
    border-radius: 20px;
  }
  .testi-box-slide {
    padding: 40px 20px;
  }
  .testi-box_name {
    font-size: 24px;
  }
  .testi-box_text {
    margin-bottom: 25px;
    font-size: 16px;
  }
  .testi-box_desig {
    margin-bottom: 25px;
  }
  .counter-card-wrap::before {
    left: 0;
    width: 100%;
  }
  .counter-card .box-number {
    font-size: 32px;
  }
  .counter-card .box-number .counter-number {
    font-size: 30px;
  }
  .counter-card-wrap.style2 .box-number {
    font-size: 30px;
  }
  .counter-card-wrap.style2 .box-number .counter-number {
    font-size: 34px;
  }
  .blog-card.style-3 .box-title {
    font-size: 18px;
  }
  .why-2-left .why-2-left-shape-1 {
    width: 43px;
  }
  .why-2-left .why-2-left-shape-2 {
    display: none;
  }
  .faq-img1 .img1 {
    padding: 20px;
  }
  .accordion-card .accordion-button {
    font-size: 16px;
  }
  .th-service-1__shape-1 {
    max-width: 40px;
    top: 3%;
    left: 16%;
  }
  .th-service-1__shape-2 {
    max-width: 150px;
    right: 0;
  }
  .pricing-tabs {
    margin-bottom: 0;
  }
  .pricing-tabs .discount-tag {
    display: none;
  }
  .gallery-card .box-img:after {
    inset: 30px 30px 0 30px;
  }
  .service-offer-wrapper .service-offer-box .service-offer-group .text {
    font-size: 24px;
    padding: 58px 0 48px;
  }
  .service-offer-wrapper .service-offer-box .service-offer-group .text img {
    margin: 0 22px;
  }
  .cta-2-bottom-shape {
    width: 180px;
    height: 180px;
  }
  .cta-2-top-shape {
    width: 180px;
    height: 180px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text {
    padding: 75px 0 0;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
    font-size: 28px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 27px;
  }
  .offer-card {
    padding: 55px 40px;
    border-radius: 20px;
  }
  .offer-block {
    padding: 30px;
    border-radius: 20px;
  }
  .offer-block .box-img {
    max-width: 50%;
  }
  .offer-block .box-subtitle {
    margin-bottom: 12px;
  }
  .offer-block .box-content {
    padding: 15px;
    border: 3px solid var(--white-color);
  }
}
@media (max-width: 375px) {
  .h1 {
    font-size: 32px;
  }
  h1 {
    font-size: 32px;
  }
  .sub-title::before {
    display: none;
  }
  .sub-title::after {
    display: none;
  }
  .shadow-title {
    font-size: 40px;
  }
  .title-area2 {
    padding: 40px 20px;
  }
  .col-md-6:last-child .newsletter-widget {
    margin-bottom: 15px;
  }
  .header-logo img {
    max-width: 160px;
  }
  .header-layout2 .menu-area {
    padding-left: 10px;
    padding-right: 10px;
  }
  .newsletter-widget {
    width: inherit;
  }
  .footer-layout1.style-2 .subscribe-box {
    padding: 30px 0 30px;
  }
  .breadcumb-wrapper {
    padding: 220px 0 145px 0;
  }
  .breadcumb-wrapper:has(.breadcrumb-bottom-shape) {
    padding: 210px 0 140px;
  }
  .wp-block-quote {
    padding: 22px;
  }
  .wp-block-quote cite {
    font-size: 18px;
    padding-left: 22px;
  }
  .wp-block-quote cite:before {
    width: 20px;
  }
  blockquote {
    padding: 22px;
  }
  blockquote cite {
    font-size: 18px;
    padding-left: 22px;
  }
  blockquote cite:before {
    width: 20px;
  }
  .hero-style2 {
    padding: 210px 0 95px !important;
  }
  .hero-style2 .hero-title {
    font-size: 34px !important;
  }
  .hero-style2 .round-line {
    padding-left: 20px;
    padding-right: 10px;
  }
  .hero-style2 .round-line::after {
    height: 82px;
    width: 41%;
    background-size: 128px 114px;
    left: 9px;
  }
  .hero2-bottom-from-area .hero-from-top-shape {
    display: none;
  }
  .hero-3 .home-3-shape-1 {
    top: 4%;
    width: 50px;
    left: 53%;
  }
  .hero-3 .home-3-shape-2 {
    display: none;
  }
  .hero-3 .home-3-shape-3 {
    bottom: 4%;
  }
  .hero-style3 {
    padding-left: 10px;
    padding-right: 10px;
  }
  .hero-style3 .hero-title {
    font-size: 25px;
  }
  .hero-style3 .hero-bottom {
    margin-top: 30px;
    gap: 10px;
  }
  .th-product.list-view .product-img {
    max-width: 130px;
  }
  .th-product.list-view .product-content {
    padding: 0 15px;
  }
  .contact-feature {
    display: block;
  }
  .contact-feature .contact-feature-icon {
    margin-bottom: 20px;
  }
  .about-3-counter-wrap {
    grid-template-columns: repeat(1, 1fr);
  }
  .about-3-counter-wrap .counter-card {
    padding-bottom: 20px;
    padding-right: 0;
    border-right: 0;
  }
  .about-3-counter-wrap .counter-card:nth-child(1) {
    padding-bottom: 30px;
    padding-right: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.26);
  }
  .about-3-counter-wrap .counter-card:nth-child(1):before {
    display: none;
  }
  .about-3-counter-wrap .counter-card:nth-child(2) {
    padding-bottom: 30px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.26);
  }
  .about-3-counter-wrap .counter-card:nth-child(2):before {
    display: none;
  }
  .about-3-counter-wrap .counter-card:nth-child(3) {
    padding-top: 30px;
    padding-bottom: 30px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.26);
  }
  .about-info {
    flex-direction: column;
    justify-content: center;
    padding-left: 0;
  }
  .about-info_subtitle {
    text-align: center;
  }
  .testi-card_name {
    font-size: 24px;
  }
  .counter-card .box-number {
    font-size: 30px;
  }
  .counter-card .box-number .counter-number {
    font-size: 28px;
  }
  .counter-card-wrap.style2 {
    gap: 30px;
  }
  .counter-card-wrap.style2 .counter-card {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .blog-box .box-title {
    font-size: 22px;
  }
  .blog-grid .blog-img {
    border-radius: 10px;
  }
  .blog-grid .blog-content {
    padding: 20px;
    border-radius: 10px;
    margin-left: 10px;
    margin-right: 10px;
  }
  .home-3-booking-from-area .home-3-form-wrap {
    padding: 20px;
  }
  .why-2-left .why-2-left-shape-1 {
    display: none;
  }
  .process-box-2-wrap {
    padding: 16px 0 20px 16px;
  }
  .process-box-2 .content {
    padding: 20px;
  }
  .process-box-2 .content .box-title {
    margin-bottom: 10px;
    line-height: 1.2;
  }
  .price-card_content {
    padding: 25px;
  }
  .price-card_top {
    padding: 25px;
  }
  .price-card_price {
    font-size: 35px;
  }
  .category-box .box-icon {
    width: 130px;
    height: 130px;
    line-height: 130px;
  }
  .category-box .box-title {
    font-size: 18px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 25px;
  }
  .offer-card {
    padding: 40px 20px;
  }
  .offer-card .box-title {
    font-size: 26px;
  }
  .offer-block {
    padding: 25px;
  }
  .offer-block .box-title {
    font-size: 30px;
  }
}
@media (max-width: 1399px) {
  :root {
    --main-container: 1250px;
  }
  .slider-arrow {
    --arrow-horizontal: 40px !important;
    --pos-x: -17px !important;
  }
  .blog-single .blog-title {
    font-size: 28px;
    line-height: 1.4;
  }
  .share-links {
    --blog-space-x: 20px;
  }
  .th-comment-form {
    padding: 40px 30px;
  }
  .th-comments-wrap {
    padding: 40px 30px;
  }
  .hero-2 .icon-box {
    display: none;
  }
  .hero-style2 {
    padding: 150px 0 120px !important;
  }
  .hero_3-right_shape {
    width: 615px;
  }
  .hero_3-right_shape2 {
    width: 655px;
  }
  .hero-style3 .hero-bottom {
    margin-top: 80px;
  }
  .th-product.list-view .product-img {
    max-width: 150px;
  }
  .about-3-right-content {
    padding-left: 0;
  }
  .testi-grid-area .slider-arrow {
    --pos-x: 50px;
  }
  .th-service-1__shape-3 {
    display: none;
  }
  .th-service-1__shape-4 {
    display: none;
  }
  .service-2-bg-right {
    display: none;
  }
  .service-2-bg-right-mask {
    display: none;
  }
  .service-card.style-2 .box-bottom-right .link-icon {
    display: none;
  }
  .service-3-shape-2 {
    display: none;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
    font-size: 65px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 53px;
  }
  .shape-mockup.cta-4-shape-lef {
    left: -85px;
  }
  .shape-mockup.cta-4-shape-right {
    right: -185px;
  }
}
@media (min-width: 1560px) {
  .th-container2 {
    width: 100%;
    max-width: 1560px;
    margin-left: auto;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  .th-container2 .container {
    --main-container: 1220px;
  }
  .th-container3 {
    width: 100%;
    max-width: 1560px;
    margin-left: 0;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
  .th-container3 .container {
    --main-container: 1220px;
  }
}
@media (min-width: 1922px) {
  .th-container2 {
    margin-right: auto;
  }
  .th-container3 {
    margin-right: auto;
  }
}
@media only screen and (min-width: 1300px) {
  .container {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
  .container-lg {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
  .container-md {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
  .container-sm {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
  .container-xl {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
  .container-xxl {
    max-width: calc(var(--main-container) + var(--container-gutters));
    padding-left: calc(var(--container-gutters) / 2);
    padding-right: calc(var(--container-gutters) / 2);
  }
  .container-lg.px-0 {
    max-width: var(--main-container);
  }
  .container-md.px-0 {
    max-width: var(--main-container);
  }
  .container-sm.px-0 {
    max-width: var(--main-container);
  }
  .container-xl.px-0 {
    max-width: var(--main-container);
  }
  .container-xxl.px-0 {
    max-width: var(--main-container);
  }
  .container.px-0 {
    max-width: var(--main-container);
  }
  .th-container {
    --main-container: 1720px;
  }
  .header-layout2 {
    --main-container: 1740px;
  }
}
@media only screen and (max-width: 1600px) {
  .container-fluid.px-0 {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .container-fluid.px-0 .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media (min-width: 1300px) {
  .row {
    --bs-gutter-x: 24px;
  }
  .footer-top-newsletter .newsletter-form {
    max-width: 600px;
  }
  .breadcumb-title {
    font-size: 50px;
    line-height: 1.11;
  }
  .blog-author {
    margin-right: 16px;
  }
  .blog-single {
    margin-right: 16px;
  }
  .page-single {
    margin-right: 16px;
  }
  .search-active-wrap {
    margin-right: 16px;
  }
  .search-wrap {
    margin-right: 16px;
  }
  .th-comment-form {
    margin-right: 16px;
  }
  .th-comments-wrap {
    margin-right: 16px;
  }
  .gallery-row .col-xl-auto {
    width: auto;
  }
}
@media (min-width: 1299px) {
  .gx-60 {
    --bs-gutter-x: 60px;
  }
}
@media (min-width: 1399px) {
  .gx-30 {
    --bs-gutter-x: 30px;
  }
  .gx-25 {
    --bs-gutter-x: 25px;
  }
  .gx-40 {
    --bs-gutter-x: 40px;
  }
}
@media (max-width: 991px) {
  .gy-50 {
    --bs-gutter-y: 40px;
  }
  .slider-arrow {
    --icon-size: 40px;
    line-height: 38px;
    margin-right: 40px;
    font-size: 14px;
  }
  .slider-arrow.slider-next {
    margin-right: 0;
    margin-left: 40px;
  }
  .slick-dots {
    margin: 40px 0 0 0;
  }
  .icon-box .slider-arrow {
    margin-right: 0;
  }
  .sub-title i {
    font-size: 24px;
  }
  .shadow-title {
    font-size: 60px;
  }
  .sec-title {
    --section-title-space: 50px;
  }
  .title-area {
    --section-title-space: 50px;
  }
  .sec-title.mb-45 {
    margin-bottom: 35px;
  }
  .title-area.mb-45 {
    margin-bottom: 35px;
  }
  .sec-btn {
    --section-title-space: 50px;
  }
  .title-line {
    --section-title-space: 50px;
  }
  .sub-title.h4 {
    font-size: 22px;
  }
  .sidebar-area {
    padding-top: 30px;
  }
  .widget {
    --widget-padding-y: 40px;
    --widget-padding-x: 40px;
  }
  .header-layout2 .menu-area::before {
    border-radius: 20px;
  }
  .newsletter-wrap {
    flex-direction: column;
    text-align: center;
    gap: 25px 0;
    padding: 40px;
  }
  .newsletter-wrap .newsletter-form {
    max-width: 100%;
  }
  .newsletter-wrap .newsletter-title {
    font-size: 30px;
  }
  .newsletter-wrap .newsletter-text {
    font-size: 16px;
  }
  .footer-wrapper .newsletter-form {
    max-width: 400px;
  }
  .footer-wrapper .widget-area {
    padding-top: var(--section-space-mobile);
    padding-bottom: 0;
  }
  .copyright-text {
    text-align: center;
  }
  .footer-layout2 .newsletter-wrap {
    padding: 60px 0;
  }
  .footer-layout2 .newsletter-content .email-icon {
    display: none;
  }
  .footer-top-newsletter .newsletter-wrap {
    padding: 60px 0;
  }
  .footer-top-newsletter .newsletter-content .email-icon {
    display: none;
  }
  .breadcumb-wrapper:has(.breadcrumb-bottom-shape) {
    margin-bottom: -20px;
    padding: 275px 0 185px;
  }
  .blog-single {
    --blog-space-x: 40px;
    --blog-space-y: 40px;
  }
  .share-links {
    --blog-space-x: 40px;
  }
  .th-comment-form {
    padding: 40px;
  }
  .th-comments-wrap {
    padding: 40px;
  }
  .hero-1 .shape-2 {
    top: 12%;
    left: 14%;
  }
  .hero-1 .hero-img {
    position: static;
    max-width: 100%;
    text-align: center;
    margin: 0 auto 0 auto;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap {
    display: none;
  }
  .hero-1 .hero-shape2 {
    display: none;
  }
  .hero-2 {
    background-position: left center;
  }
  .hero-2 .shape-2 {
    top: 12%;
    left: 14%;
  }
  .hero-style1 {
    padding: 250px 0 50px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .hero-style1 .sub-title {
    justify-content: center;
  }
  .hero-style1 .sub-title::after {
    display: none;
  }
  .hero-style1 .title1 {
    margin-left: auto;
    margin-right: auto;
  }
  .hero-style1 .title2 {
    margin-left: auto;
    margin-right: auto;
  }
  .hero-style1 .title-img {
    max-width: 40px;
    right: 5%;
  }
  .hero-title {
    font-size: 60px;
    line-height: 1.2;
  }
  .hero-style2 {
    padding: 271px 0 175px;
  }
  .hero-style2 .btn-group .arrow {
    display: none;
  }
  .hero-3 {
    border-radius: 30px;
  }
  .hero-3 .home-3-shape-1 {
    width: 70px;
    left: 18%;
    top: 5%;
  }
  .hero-3 .home-3-shape-3 {
    width: 50px;
  }
  .hero_3-right_shape {
    display: none;
  }
  .hero_3-right_shape2 {
    display: none;
  }
  .hero_3-main-img {
    display: none;
  }
  .hero-style3 {
    width: 100%;
    padding: 170px 60px 40px 60px;
  }
  .error-title {
    margin-bottom: 15px;
  }
  .error-img {
    margin-bottom: 30px;
  }
  .error-text {
    margin-bottom: 25px;
  }
  .woocommerce-Reviews .comment-list {
    grid-template-columns: repeat(1, 1fr);
  }
  .woocommerce-Reviews .comment-list li {
    width: 100%;
  }
  .woocommerce-Reviews .th-comment-form {
    padding: 40px;
  }
  .product-big-img {
    margin-bottom: 40px;
  }
  .product-thumb-tab {
    margin-left: -10px;
  }
  .th-product-box.list-view .product-img {
    max-width: 150px;
  }
  .th-sort-bar .row {
    --bs-gutter-x: 20px;
  }
  .th-sort-bar .nav a:last-child {
    margin-right: 0;
    padding-right: 0;
  }
  .th-sort-bar .nav a:last-child:before {
    display: none;
  }
  .woosq-product > .product .thumbnails {
    max-height: 400px;
    min-height: 200px;
    padding: 10px;
  }
  .cart_table th {
    padding: 23px 8px;
    font-size: 14px;
  }
  .cart_table .cart-productname {
    font-size: 14px;
  }
  .cart_table .th-cart-coupon {
    width: 100%;
    margin-bottom: 20px;
    justify-content: center;
  }
  .cart_table .actions {
    text-align: center;
  }
  .cart_table .cart-productimage {
    max-width: 100px;
  }
  .tinvwl-full {
    display: none;
  }
  .tinv-wishlist .tinvwl-mobile {
    display: block;
  }
  .tinvwl-txt {
    display: inline-block !important;
  }
  .product-stock {
    width: 40px;
    text-align: center;
  }
  .contact-form {
    padding: 40px;
  }
  .contact-map iframe {
    height: 350px;
    border-radius: 0;
  }
  .about-3-counter-wrap .counter-card:nth-child(1):before {
    width: 88%;
  }
  .about-3-counter-wrap .counter-card:nth-child(2):before {
    width: 88%;
  }
  .team-details {
    padding: 50px 40px;
    border-radius: 30px;
  }
  .team-details img {
    border-radius: 20px;
  }
  .testi-block .box-title {
    font-size: 22px;
  }
  .testi-block-top .content .box-title {
    font-size: 20px;
  }
  .testi-card-area {
    padding-top: var(--section-space-mobile);
    padding-bottom: var(--section-space-mobile);
  }
  .testi-shape1 {
    display: none;
  }
  .testi-box-area {
    flex-wrap: wrap;
  }
  .testi-box-img {
    width: 100%;
    flex: 100%;
  }
  .testi-box-img img {
    max-height: 400px;
  }
  .testi-box-shape {
    display: none;
  }
  .testi-box-slide {
    flex: 100%;
    max-width: 100%;
  }
  .counter-card-wrap {
    padding-left: 30px;
    padding-right: 30px;
  }
  .counter-card-wrap::before {
    left: -5%;
    width: 110%;
    border-radius: 0;
  }
  .counter-card-wrap .right-shape {
    display: none;
  }
  .counter-card .box-number {
    font-size: 35px;
  }
  .counter-card .box-number .counter-number {
    font-size: 45px;
  }
  .counter-card .box-text {
    font-size: 16px;
  }
  .counter-card-wrap.style2 .box-number {
    font-size: 42px;
  }
  .counter-card-wrap.style2 .box-number .counter-number {
    font-size: 50px;
  }
  .blog-card .box-title {
    font-size: 22px;
  }
  .blog-2-padding-bottom {
    padding-bottom: 200px;
  }
  .blog-card.style-3 .box-title {
    font-size: 22px;
  }
  .blog-box .blog-img {
    width: 270px;
  }
  .blog-grid .blog-content {
    padding: 20px;
  }
  .filter-menu {
    margin-top: -10px;
    margin-bottom: 45px;
    gap: 6px;
    justify-content: center;
    margin: 0 0 30px 0;
  }
  .filter-menu .th-btn {
    padding: 13px 20px;
  }
  .why-2-left {
    margin-right: 0;
  }
  .service-card {
    padding: 20px;
  }
  .service-card .box-content {
    padding: 20px;
  }
  .process-box-2-wrap {
    padding: 16px 0 15px 30px;
  }
  .process-box-2 .content .box-title {
    font-size: 19px;
    margin-bottom: 10px;
  }
  .price-card_title {
    font-size: 24px;
  }
  .price-card_price {
    font-size: 40px;
  }
  .feature-list {
    flex: 50%;
    padding: 15px 8px;
  }
  .feature-list:nth-child(1) {
    border-right: 1px solid var(--th-border-color);
    border-bottom: 1px solid var(--th-border-color);
  }
  .feature-list:nth-child(5) {
    border-right: 1px solid var(--th-border-color);
  }
  .feature-list:nth-child(3) {
    border-bottom: 1px solid var(--th-border-color);
  }
  .feature-list-wrap {
    flex-wrap: wrap;
    padding: 0;
    align-items: stretch;
  }
  .feature-list-line {
    display: none;
  }
  .gallery-2-shape-1 {
    left: 2%;
  }
  .gallery-2-shape-2 {
    right: 0;
  }
  .gallery-card2 .gallery-img:before {
    border-radius: 20px;
  }
  .gallery-card2 .gallery-img img {
    border-radius: 20px;
  }
  .project-meta-wrap:after {
    display: none;
  }
  .project-meta-wrap:before {
    display: none;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
    font-size: 40px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 35px;
  }
  .cta-box4 .title-area .box-title {
    font-size: 28px;
  }
  .cta-box4 .title-area .box-text {
    max-width: 90%;
  }
  .space {
    padding-top: var(--section-space-mobile);
    padding-bottom: var(--section-space-mobile);
  }
  .space-top {
    padding-top: var(--section-space-mobile);
  }
  .space-bottom {
    padding-bottom: var(--section-space-mobile);
  }
  .space-extra {
    padding-top: calc(var(--section-space-mobile) - 30px);
    padding-bottom: calc(var(--section-space-mobile) - 30px);
  }
  .space-extra-top {
    padding-top: calc(var(--section-space-mobile) - 30px);
  }
  .space-extra-bottom {
    padding-bottom: calc(var(--section-space-mobile) - 30px);
  }
  .space-top-md-none {
    padding-top: 0;
  }
  .space-extra2 {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .space-extra2-top {
    padding-top: 70px;
  }
  .space-extra2-bottom {
    padding-bottom: 70px;
  }
}
@media (max-width: 1299px) {
  .arrow-wrap .slider-arrow {
    display: none;
  }
  .widget-call .title {
    font-size: 34px;
  }
  .menu-style1 > ul > li {
    margin: 0 10px;
  }
  .header-info-box {
    display: none;
  }
  .menu-expand {
    font-size: 15px;
  }
  .subscribe-box .subscribe-box_title {
    font-size: 30px;
  }
  .breadcumb-wrapper {
    padding: 220px 0 120px 0;
  }
  .breadcumb-wrapper .breadcrumb-left {
    width: 50px;
    top: 28%;
  }
  .hero-1 .hero-img {
    right: 2%;
  }
  .hero-1 .shape-6 {
    display: none;
  }
  .hero-2 .shape-6 {
    display: none;
  }
  .hero-style3 {
    width: 100%;
  }
  .product-thumb-tab {
    --thumb: 100px;
    margin-left: -40px;
  }
  .product-thumb-area {
    margin-right: 0;
  }
  .year-counter {
    right: -70px;
  }
  .about-sec-2-left .img-box1 .shape1 {
    right: -21px;
  }
  .about-sec-2-left .year-counter {
    top: 65%;
    right: -59px;
  }
  .team-details {
    padding: 60px 45px;
  }
  .about-info {
    gap: 15px;
  }
  .circular-progress {
    width: 170px;
    height: 170px;
  }
  .circular-progress .circle-bg {
    stroke-width: 2;
  }
  .circular-progress .circle {
    stroke-width: 2;
  }
  .circular-progress .box-title {
    font-size: 14px;
  }
  .testi-img-box {
    margin-left: -305px;
  }
  .test-2-right-shape {
    display: none;
  }
  .testi-shape1 img {
    margin-left: -45%;
  }
  .testi-grid-area .slider-arrow {
    display: block;
    --pos-x: 40px;
  }
  .counter-card-wrap::before {
    left: -3%;
    width: 106%;
  }
  .counter-card .box-number {
    font-size: 65px;
  }
  .counter-card .box-number .counter-number {
    font-size: 75px;
  }
  .choose-feature-wrap {
    gap: 50px 20px;
    margin-left: 0;
  }
  .why-2-right-bottom__box-content .box-title {
    font-size: 19px;
  }
  .faq-img1 {
    margin-right: 0;
  }
  .service-3-slider {
    height: 600px;
  }
  .service-3-slider .slider-arrow {
    display: none;
  }
  .service-3-card {
    padding: 15px 22px 15px 15px;
    gap: 25px;
  }
  .service-3-card .link-service-3 {
    display: none;
  }
  .process-box-wrap:nth-child(even) .process-box .box-icon::before {
    right: -40%;
  }
  .process-box .box-icon:before {
    right: -35%;
  }
  .price-sec-1__shape-right-1 {
    right: -19%;
  }
  .price-card_content {
    padding: 36px;
  }
  .price-card_top {
    padding: 36px;
  }
  .price-card_price {
    font-size: 45px;
  }
  .price-sec-2-shape-1 {
    display: none;
  }
  .pricing-bg-2-left-mask {
    display: none;
  }
  .gallery-2-shape-round-top {
    top: -140px;
    right: 70px;
    border: 35px solid var(--theme-color2);
    width: 200px;
    height: 200px;
  }
  .gallery-card .gallery-img img {
    width: 100%;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a {
    font-size: 55px;
  }
  .service-offer-wrapper.style-2 .service-offer-box .service-offer-group .text a img {
    width: 48px;
  }
  .cta-box4 .title-area .box-title {
    font-size: 45px;
  }
}
@media (max-width: 1500px) {
  .slider-arrow {
    --arrow-horizontal: -20px;
    --pos-x: -70px;
  }
  .main-menu > ul > li {
    margin: 0 13px;
  }
  .header-layout1 .main-menu > ul > li {
    margin: 0 11px;
  }
  .header-layout2 .main-menu > ul > li {
    margin: 0 11px;
  }
  .hero-1 .hero-img {
    right: 6%;
    max-width: 650px;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap {
    position: absolute;
    bottom: -9%;
    width: 654px;
    height: 700px;
    z-index: -1;
    right: 12%;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-1 {
    top: 3px;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-1 .bg-shape {
    height: 154px;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape {
    height: 250px;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap .left .bg-shape-2 {
    top: -110px;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape-3 .bg-shape {
    height: 250px;
    margin-top: 218px;
  }
  .hero-1 .hero-img .hero-img-bg-shape-wrap .right .bg-shape {
    height: 183px;
    margin-top: 195px;
  }
  .hero-1 .shape-1 {
    display: none;
  }
  .hero-1 .shape-5 {
    max-width: 200px;
  }
  .hero-2 .shape-1 {
    display: none;
  }
  .hero-2 .shape-5 {
    max-width: 200px;
  }
  .hero-2 .icon-box {
    left: 5px;
  }
  .hero-style1 {
    padding: 250px 0 125px;
  }
  .hero-title {
    font-size: 45px !important;
  }
  .hero-style2 .hero-title {
    font-size: 84px;
  }
  .hero-3 .moving.home-3-shape-4 {
    display: none;
  }
  .hero_3-right_shape {
    width: 806px;
  }
  .hero_3-right_shape2 {
    width: 835px;
  }
  .hero_3-main-img {
    max-width: 550px;
  }
  .team-area-1__shape-1 {
    left: 12%;
  }
  .team-area-1__shape-2 {
    right: 8%;
  }
  .team-area-1__shape-3 {
    display: none;
  }
  .team-area-1__shape-4 {
    display: none;
  }
  .testi-img-box {
    margin-left: -250px;
  }
  .th-service-2__shape-1 {
    display: none;
  }
  .th-service-2__shape-2 {
    display: none;
  }
  .service-sec-3 {
    margin: inherit;
    border-radius: 0;
  }
  .price-sec-1__shape-right-1 {
    right: -12%;
    top: 23%;
  }
  .price-sec-2-shape-2 {
    display: none;
  }
  .gallery-2-shape-3 {
    display: none;
  }
  .gallery-2-shape-4 {
    display: none;
  }
  .gallery-2-shape-round-top {
    top: -400px;
    border: 60px solid var(--theme-color2);
  }
  .gallery-1-bg-mask {
    display: none;
  }
  .cta-4-area-inner {
    margin: inherit;
    border-radius: 0;
  }
  .cta-4-area-inner:before {
    border-radius: inherit;
  }
}
@media (max-width: 400px) {
  .th-menu-wrapper .th-menu-area {
    width: 100%;
    max-width: 270px;
  }
  .th-mobile-menu > ul {
    padding: 0 20px;
  }
  .breadcumb-wrapper .breadcrumb-bottom-shape {
    bottom: -8px;
  }
  .process-box-2-wrap {
    padding: 16px 0 70px 16px;
  }
}
@media (max-width: 450px) {
  .sub-title.style-3 .left {
    display: none;
  }
  .sub-title.style-3 .right {
    display: none;
  }
  .choose-feature-wrap__box {
    flex-direction: column;
  }
  .choose-feature-wrap__content {
    text-align: center;
  }
  .choose-feature-wrap .box-icon {
    margin: auto;
  }
  .why-2-right-bottom__box {
    width: 100%;
  }
}
@media (max-width: 1700px) {
  .title-area2 {
    padding: 50px 50px;
  }
  .header-layout1 .header-button {
    margin-left: 15px;
  }
  .header-info-box {
    gap: 10px;
    margin-left: 10px;
    padding-left: 20px;
    position: relative;
    margin-right: 5px;
    gap: 10px;
    margin-left: 5px;
    padding-left: 10px;
    position: relative;
    margin-right: 0;
  }
  .header-layout2 .header-button {
    margin-left: 15px;
  }
  .hero-1 .shape-1 {
    left: 2%;
  }
  .hero-1 .shape-6 {
    right: 2%;
  }
  .hero-2 .shape-1 {
    left: 2%;
  }
  .hero-2 .shape-6 {
    right: 2%;
  }
  .hero-3 .moving.home-3-shape-4 {
    width: 260px;
    top: 62%;
    left: 38%;
  }
  .team-area-1__shape-3 {
    left: 3%;
    max-width: 50px;
  }
  .team-area-1__shape-4 {
    right: 3%;
    max-width: 59px;
  }
  .test-img-2-box .img1 {
    margin-right: -140px;
  }
  .process-3-shape-1 {
    width: 60px;
    left: 80px;
  }
}
@media (min-width: 1200px) {
  .sidebar-shop .widget {
    padding: 30px;
  }
  .th-container-right {
    margin-right: -560px;
    padding-right: 0;
    padding-top: 80px;
    padding-bottom: 80px;
    position: relative;
  }
  .gallery-row .col-lg-6 {
    width: 50%;
  }
  .gallery-row .col-md-6 {
    width: 50%;
  }
}
@media (min-width: 992px) {
  .sidebar-shop .widget {
    margin-bottom: 24px;
  }
}
@media (max-width: 330px) {
  .recent-post .post-title {
    font-size: 14px;
    line-height: 24px;
  }
  .recent-post .recent-post-meta a {
    font-size: 12px;
  }
  .hero-title {
    font-size: 32px;
  }
}
@media (min-width: 1700px) {
  .header-layout1 {
    --main-container: 1615px;
  }
}
@media (min-width: 1800px) {
  .header-layout2 {
    --main-container: 1740px;
  }
}
@media (min-width: 1600px) and (max-width: 1799px) {
  .header-layout2 {
    --main-container: 1670px;
  }
}
@media (max-width: 1600px) {
  .header-info-box {
    display: none;
  }
  .footer-wrapper .footer-shape-1 {
    top: 24%;
    left: 1%;
  }
  .breadcumb-wrapper .breadcrumb-left {
    width: 69px;
    top: 26%;
  }
  .hero-3 .moving.home-3-shape-4 {
    width: 196px;
    top: 66%;
    left: 41%;
  }
  .counter-card-wrap::before {
    left: -5%;
    width: 110%;
  }
  .th-service-1__shape-3 {
    left: 3%;
    max-width: 40px;
  }
  .th-service-1__shape-4 {
    right: 3%;
    max-width: 40px;
  }
  .service-3-shape-1 {
    display: none;
  }
  .price-sec-2-shape-2 {
    left: 2%;
  }
}
@media (max-width: 1800px) {
  .breadcumb-wrapper .breadcrumb-left {
    left: 3%;
  }
  .hero-1 .hero-img {
    right: 5%;
  }
  .hero-3 {
    max-width: 100%;
  }
  .home-3-shape-1 {
    right: 20px;
  }
  .th-service-2__shape-1 {
    left: 4%;
  }
  .th-service-2__shape-2 {
    left: 2%;
  }
  .service-3-shape-1 {
    left: 10px;
  }
  .service-3-shape-2 {
    width: 80px;
    bottom: 40px;
    left: 40px;
  }
}
@media (max-width: 1650px) {
  .hero-1 .hero-img {
    right: 0;
  }
  .process-3-shape-4 {
    width: 60px;
    right: 10px;
  }
  .shape-mockup.cta-4-shape-lef {
    left: 0;
  }
  .shape-mockup.cta-4-shape-right {
    right: -60px;
  }
}
@media (max-width: 390px) {
  .hero-title {
    font-size: 36px;
    line-height: 1.3;
  }
}
@media (max-width: 1380px) {
  .hero2-bottom-from-area .hero-from-top-shape {
    top: -60px;
  }
}
@media (max-width: 650px) {
  .hero2-bottom-from-area .hero-from-top-shape {
    top: -37px;
    height: 60px;
  }
}
@media (max-width: 1250px) {
  .hero_3-right_shape {
    width: 535px;
  }
  .hero_3-right_shape2 {
    width: 565px;
  }
}
@media (max-width: 1150px) {
  .hero_3-right_shape {
    width: 450px;
  }
  .hero_3-right_shape2 {
    width: 480px;
  }
}
@media (max-width: 1030px) {
  .hero_3-right_shape {
    width: 422px;
  }
}
@media (max-width: 1080px) {
  .hero_3-right_shape2 {
    width: 422px;
  }
}
@media (max-width: 1680px) {
  .hero_3-main-img {
    right: 0;
    max-width: 690px;
  }
}
@media (max-width: 1550px) {
  .hero_3-main-img {
    right: 0;
    max-width: 640px;
  }
  .team-2-card-wrap {
    margin-right: inherit;
  }
  .counter-card-wrap {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media (max-width: 1270px) {
  .hero_3-main-img {
    max-width: 480px;
  }
}
@media (max-width: 1090px) {
  .hero_3-main-img {
    max-width: 400px;
  }
}
@media (max-width: 1660px) {
  .home-3-shape-1 {
    width: 75px;
    right: 10px;
  }
}
@media (max-width: 1450px) {
  .home-3-shape-1 {
    display: none;
  }
  .home-3-shape-2 {
    display: none;
  }
  .counter-card-wrap::before {
    left: -3%;
    width: 106%;
  }
}
@media (max-width: 1750px) {
  .testi-shape1 img {
    margin-left: -25%;
  }
  .price-sec-1__shape-right-1 {
    right: -9%;
  }
  .gallery-2-shape-4 {
    right: 3%;
  }
}
@media (max-width: 1330px) {
  .counter-card-wrap::before {
    left: -2%;
    width: 104%;
  }
}
@media (max-width: 767px) and (max-width: 375px) {
  .counter-card-wrap {
    flex-direction: column;
  }
}
@media (max-width: 410px) {
  .blog-card .box-title {
    font-size: 22px;
  }
}
@media (max-width: 350px) {
  .blog-card .box-title {
    font-size: 20px;
  }
}
@media (max-width: 530px) {
  .service-3-slider {
    height: 740px;
  }
  .service-3-card {
    flex-direction: column;
    justify-content: center;
    padding: 15px 22px 15px 15px;
    border-radius: 15px;
    flex-direction: column;
    justify-content: center;
    padding: 15px 22px 15px 15px;
    border-radius: 15px;
  }
  .service-3-card .link-service-3 {
    display: none;
  }
  .service-3-card__content {
    text-align: center;
  }
}
@media (max-width: 1670px) {
  .process-3-shape-1 {
    left: 10px;
  }
}
@media (max-width: 1470px) {
  .process-3-shape-1 {
    top: 30px;
  }
}
@media (max-width: 1907px) {
  .price-sec-1__shape-left-1 {
    left: -4px;
  }
  .price-sec-1__shape-left-2 {
    left: -4px;
  }
}
@media (max-width: 1897px) {
  .price-sec-1__shape-left-1 {
    left: -11px;
  }
  .price-sec-1__shape-left-2 {
    left: -11px;
  }
}
@media (max-width: 1863px) {
  .price-sec-1__shape-left-1 {
    display: none;
  }
  .price-sec-1__shape-left-2 {
    display: none;
  }
}
@media (max-width: 340px) {
  .deal-counter li:after {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media only screen and (max-width: 1200px) {
  .about-box__numbers:nth-child(2) {
    margin-left: 0 !important;
  }
  .about-box__numbers:nth-child(1) {
    margin-right: 0 !important;
  }
  .about-box__numbers:nth-child(3) {
    margin-right: 0 !important;
  }
}
@media (max-width: 768px) {
  .parallax-text {
    font-size: 1.5rem;
    max-width: 90%;
  }
}
/* ==============================================
   All Media Query Styles end
   ============================================== *//*# sourceMappingURL=style.css.map */