@charset "UTF-8";

/*===========
   Theme Name: AliThemes - Bootstrap Dev Starter
   Author : alithemes
   Support: https://alithemes.ticksy.com
   Version: 1.0
=======
Table of contents
    01. Theme Default CSS
    02. Header
    03. Mobile Menu
    04. Banner
    05. Slider
    06. About
    07. Services
    08. Choose
    09. Project
    10. Pricing
    11. Request
    12. Consulting
    13. Testimonial
    14. Features
    15. Marquee
    16. Fact
    17. Team
    18. Call-back
    19. Blog
    20. Contact
    21. Brand
    22. 404 Error
    23. Footer
    24. Accordion
==============*/
/*LIGHT MODE*/
:root {
    --tc-body-font-family: Inter, sans-serif;
    --tc-heading-font-family: Inter, sans-serif;
    --tc-display-font-family: Inter, sans-serif;
    --tc-body-font-size: 16px;
    --tc-fs-xs: 12px;
    --tc-fs-sm: 14px;
    --tc-fs-base: 16px;
    --tc-fs-lg: 18px;
    --tc-fs-xl: 20px;
    --tc-fs-2xl: 22px;
    --tc-fs-3xl: 24px;
    --tc-fs-4xl: 26px;
    --tc-fs-5xl: 34px;
    --tc-fs-6xl: 46px;
    --tc-fs-7xl: 66px;
    --tc-fs-8xl: 91px;
    --tc-fs-9xl: 100px;
    --tc-body-line-height: 1.5;
    --tc-heading-line-height: 1.2;
    --tc-body-background: rgb(255, 255, 255);
    --tc-body-dark-background: rgb(36, 38, 43);
    --tc-theme-primary: rgb(255, 207, 1);
    --tc-theme-primary-light: rgb(255, 246, 207);
    --tc-theme-dark-primary: rgb(255, 207, 1);
    --tc-theme-dark-primary-dark: rgb(23, 23, 19);
    --tc-neutral-0: rgb(255, 255, 255);
    --tc-neutral-200: rgb(248, 245, 241);
    --tc-neutral-300: rgb(227, 227, 227);
    --tc-neutral-400: rgb(169, 169, 169);
    --tc-neutral-500: rgb(135, 134, 128);
    --tc-neutral-600: rgb(212, 215, 229);
    --tc-neutral-700: rgb(97, 102, 112);
    --tc-neutral-800: rgb(36, 35, 29);
    --tc-neutral-950: rgb(21, 22, 24);
    --tc-neutral-dark-0: rgb(21, 22, 24);
    --tc-neutral-dark-200: rgb(36, 35, 29);
    --tc-neutral-dark-300: rgb(97, 102, 112);
    --tc-neutral-dark-400: rgb(212, 215, 229);
    --tc-neutral-dark-500: rgb(135, 134, 128);
    --tc-neutral-dark-600: rgb(169, 169, 169);
    --tc-neutral-dark-700: rgb(227, 227, 227);
    --tc-neutral-dark-800: rgb(248, 245, 241);
    --tc-neutral-dark-950: rgb(255, 255, 255);
    --tc-linear-1: linear-gradient(180deg, rgba(255, 207, 1, 0.1) 0%, rgba(255, 207, 1, 0) 100%);
    --tc-linear-2: linear-gradient(180deg, rgba(255, 207, 1, 0) 0%, rgba(255, 207, 1, 0.12) 100%);
    --tc-linear-3: linear-gradient(180deg, rgba(255, 207, 1, 0.1) 0%, #ffcf01 100%);
    --tc-shadow-1: 0px 0px 60px 0px rgba(0, 0, 0, 0.05);
    --tc-shadow-2: 0px 10px 15px 0px rgba(10, 16, 11, 0.08);
    --tc-fw-black: 900;
    --tc-fw-extra-bold: 800;
    --tc-fw-bold: 700;
    --tc-fw-semi-bold: 600;
    --tc-fw-medium: 500;
    --tc-fw-regular: 400;
    --tc-fw-light: 300;
}

/*DARK MODE*/
[data-bs-theme=dark] body,
.nav-dark body {
    background-color: var(--tc-body-dark-background);
}

[data-bs-theme=dark],
.nav-dark {
    --tc-theme-primary: var(--tc-theme-dark-primary);
    --tc-theme-primary-light: var(--tc-theme-dark-primary-dark);
    --tc-neutral-0: var(--tc-neutral-dark-0);
    --tc-neutral-200: var(--tc-neutral-dark-200);
    --tc-neutral-300: var(--tc-neutral-dark-300);
    --tc-neutral-400: var(--tc-neutral-dark-400);
    --tc-neutral-500: var(--tc-neutral-dark-500);
    --tc-neutral-600: var(--tc-neutral-dark-600);
    --tc-neutral-700: var(--tc-neutral-dark-700);
    --tc-neutral-800: var(--tc-neutral-dark-800);
    --tc-neutral-950: var(--tc-neutral-dark-950);
}

[data-bs-theme=dark] .dark-mode-invert,
.nav-dark .dark-mode-invert {
    filter: invert(1);
}

[data-bs-theme=dark] .changeless,
.nav-dark .changeless {
    --tc-theme-primary: #ffcf01;
    --tc-theme-primary-light: rgba(255, 246, 207, 1);
    --tc-neutral-0: rgba(255, 255, 255, 1);
    --tc-neutral-200: rgba(248, 245, 241, 1);
    --tc-neutral-300: rgba(227, 227, 227, 1);
    --tc-neutral-400: rgba(169, 169, 169, 1);
    --tc-neutral-500: rgba(135, 134, 128, 1);
    --tc-neutral-600: rgba(212, 215, 229, 1);
    --tc-neutral-700: rgba(97, 102, 112, 1);
    --tc-neutral-800: rgba(36, 35, 29, 1);
    --tc-neutral-950: rgba(21, 22, 24, 1);
}

[data-bs-theme=dark] .navbar-stick:not(.navbar-dark),
.nav-dark .navbar-stick:not(.navbar-dark) {
    box-shadow: var(--tc-shadow-1);
    background-color: #323439;
}

[data-bs-theme=dark] .navbar .navbar-nav .nav-item .dropdown-toggle::before,
.nav-dark .navbar .navbar-nav .nav-item .dropdown-toggle::before {
    filter: invert(1);
}

[data-bs-theme=dark] .blockquote::before,
.nav-dark .blockquote::before {
    filter: invert(1);
}

[data-bs-theme=dark] .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.has-child::after,
.nav-dark .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.has-child::after {
    filter: invert(1);
}

[data-bs-theme=dark] .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover::after,
.nav-dark .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover::after {
    filter: invert(0);
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
    line-height: 1.15;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/* Sections
     ========================================================================== */
/**
   * Remove the margin in all browsers.
   */
body {
    margin: 0;
}

/**
   * Render the `main` element consistently in IE.
   */
main {
    display: block;
}

/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
     ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
     ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
    background-color: transparent;
}

/**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    /* 2 */
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
    font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
    font-size: 0.875em;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
    font-size: 0.75em;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10.
   */
img {
    border-style: none;
}

/* Forms
     ========================================================================== */
/**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
    /* 1 */
    overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
    /* 1 */
    text-transform: none;
    cursor: pointer;
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
    vertical-align: baseline;
}

/**
   * Remove the default vertical scrollbar in IE 10+.
   */
textarea {
    overflow: auto;
}

/**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

/* Interactive
     ========================================================================== */
/*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
details {
    display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
    display: list-item;
}

/* Misc
     ========================================================================== */
/**
   * Add the correct display in IE 10+.
   */
template {
    display: none;
}

/**
   * Add the correct display in IE 10.
   */
[hidden] {
    display: none;
}

a {
    text-decoration: none;
}

img {
    max-width: 100%;
}

/*=============================
	Typography css start
===============================*/
body {
    font-family: var(--tc-body-font-family);
    background-color: var(--tc-body-background);
    font-size: var(--tc-body-font-size);
    font-weight: var(--tc-fw-regular);
    color: var(--tc-neutral-700);
    line-height: var(--tc-body-line-height);
}

.font-body {
    font-family: var(--tc-body-font-family);
}

.fs-xs {
    font-size: var(--tc-fs-xs);
}

.fs-sm {
    font-size: var(--tc-fs-sm);
}

.fs-base {
    font-size: var(--tc-fs-base);
}

.fs-lg {
    font-size: var(--tc-fs-lg);
}

.fs-xl {
    font-size: var(--tc-fs-xl);
}

.fs-2xl {
    font-size: var(--tc-fs-2xl);
}

.fs-3xl {
    font-size: var(--tc-fs-3xl);
}

.fs-4xl {
    font-size: var(--tc-fs-4xl);
}

.fs-5xl {
    font-size: var(--tc-fs-5xl);
}

.fs-6xl {
    font-size: var(--tc-fs-6xl);
}

.fs-7xl {
    font-size: var(--tc-fs-7xl);
}

.fs-8xl {
    font-size: var(--tc-fs-8xl);
}

.fs-9xl {
    font-size: var(--tc-fs-9xl);
}

.fw-light {
    font-weight: var(--tc-fw-light);
}

.fw-regular {
    font-weight: var(--tc-fw-regular);
}

.fw-medium {
    font-weight: var(--tc-fw-medium);
}

.fw-semibold {
    font-weight: var(--tc-fw-semi-bold);
}

.fw-bold {
    font-weight: var(--tc-fw-bold);
}

.fw-extra-bold {
    font-weight: var(--tc-fw-extra-bold);
}

.fw-black {
    font-weight: var(--tc-fw-black);
}

/* Text Truncation */
.text-truncate-1 {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 1.5em;
    word-break: break-word;
    overflow-wrap: break-word;
}

.text-truncate-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 3em;
    word-break: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}

.text-truncate-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 4.5em;
    word-break: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}

.text-truncate-4 {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 6em;
    word-break: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}

.text-start {
    text-align: left !important;
}

.text-end {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-decoration-underline {
    text-decoration: underline !important;
}

.text-decoration-line-through {
    text-decoration: line-through !important;
}

.text-lowercase {
    text-transform: lowercase !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.text-wrap {
    white-space: normal !important;
}

.text-nowrap {
    white-space: nowrap !important;
}

.size-14 {
    width: 14px;
    height: 14px;
}

.size-12 {
    width: 12px;
    height: 12px;
}

.size-22 {
    width: 22px;
    height: 22px;
}

.size-30 {
    width: 30px !important;
    height: 30px !important;
}

.size-36 {
    width: 36px !important;
    height: 36px !important;
}

.size-48 {
    width: 48px;
    height: 48px;
}

.size-50 {
    width: 50px;
    height: 50px;
}

.size-60 {
    width: 60px;
    height: 60px;
}

.size-75 {
    width: 75px;
    height: 75px;
}

.w-80 {
    width: 80%;
}

.w-fit-content {
    width: -moz-fit-content;
    width: fit-content;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

img,
.img {
    max-width: 100%;
    transition: 0.3s;
    height: auto;
}

a,
button {
    color: var(--tc-neutral-950);
    outline: none;
    text-decoration: none;
    transition: 0.3s;
}

.img-container {
    position: relative;
}

.category-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 2;
}

*,
::after,
::before {
    box-sizing: border-box;
}

a:focus,
.btn:focus,
.button:focus {
    text-decoration: none;
    outline: none;
    box-shadow: none;
}

button:focus,
input:focus,
input:focus,
textarea,
textarea:focus {
    outline: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--tc-heading-font-family);
    color: var(--tc-neutral-950);
    margin-top: 0px;
    font-weight: var(--tc-fw-bold);
    line-height: var(--tc-heading-line-height);
    text-transform: unset;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: inherit;
}

h1 {
    font-size: 46px;
}

h2 {
    font-size: 34px;
}

h3 {
    font-size: 26px;
}

h4 {
    font-size: 34px;
}

h5 {
    font-size: 26px;
}

h6 {
    font-size: 20px;
}

.list-wrap {
    margin: 0px;
    padding: 0px;
}

.list-wrap li {
    list-style: none;
}

p {
    font-family: var(--tc-body-font-family);
    font-size: var(--tc-body-font-size);
    line-height: var(--tc-body-line-height);
    font-weight: var(--tc-fw-medium);
    color: var(--tc-neutral-700);
    margin-bottom: 15px;
}

hr {
    border-bottom: 1px solid var(--tc-neutral-500);
    border-top: 0 none;
    margin: 30px 0;
    padding: 0;
}

label {
    color: var(--tc-neutral-950);
    cursor: pointer;
    font-size: var(--tc-body-font-size);
    font-weight: var(--tc-fw-regular);
}

input[type="color"] {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: 0;
    cursor: pointer;
    height: 100%;
    width: 100%;
    padding: 0;
    border-radius: 50%;
}

/*=============================
    - Input Placeholder
===============================*/
input,
textarea {
    color: var(--tc-neutral-700);
}

*::-moz-placeholder {
    color: var(--tc-neutral-700);
    font-size: var(--tc-body-font-size);
    opacity: 1;
}

*::placeholder {
    color: var(--tc-neutral-700);
    font-size: var(--tc-body-font-size);
    opacity: 1;
}

/*=============================
    - Common Classes
===============================*/
.shadow-0 {
    box-shadow: none !important;
}

.shadow-1 {
    box-shadow: var(--tc-shadow-1);
}

.text-white {
    color: var(--tc-neutral-0) !important;
}

.text-dark {
    color: var(--tc-neutral-950) !important;
}

.text-dark-default {
    color: var(--tc-neutral-950);
}

.text-neutral-200 {
    color: var(--tc-neutral-200) !important;
}

.text-neutral-300 {
    color: var(--tc-neutral-300) !important;
}

.text-neutral-400 {
    color: var(--tc-neutral-400) !important;
}

.text-neutral-500 {
    color: var(--tc-neutral-500) !important;
}

.text-neutral-600 {
    color: var(--tc-neutral-600) !important;
}

.text-neutral-700 {
    color: var(--tc-neutral-700) !important;
}

.text-neutral-800 {
    color: var(--tc-neutral-800) !important;
}

.text-primary {
    color: var(--tc-theme-primary) !important;
}

.text-primary-light {
    color: var(--tc-theme-primary-light) !important;
}

.hover-primary:hover {
    color: var(--tc-theme-primary) !important;
}

.bg-primary {
    background-color: var(--tc-theme-primary) !important;
}

.bg-white {
    background-color: var(--tc-neutral-0) !important;
}

.bg-primary-light {
    background-color: var(--tc-theme-primary-light) !important;
}

.bg-neutral-200 {
    background-color: var(--tc-neutral-200) !important;
}

.bg-neutral-300 {
    background-color: var(--tc-neutral-300) !important;
}

.bg-linear-1 {
    background: var(--tc-linear-1);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1 !important;
    width: 100%;
    height: 100vh;
    position: absolute;
}

.bg-linear-2 {
    background: var(--tc-linear-2);
}

.bg-linear-3 {
    background: var(--tc-linear-3);
}

/*=============================
    Keyframe Animation
===============================*/
@keyframes hoverShine {
    100% {
        left: 125%;
    }
}

.shine-animate {
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.shine-animate:before {
    position: absolute;
    top: 0;
    left: -100%;
    display: block;
    content: "";
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
    transform: skewX(-25deg);
    z-index: 1;
}

.shine-animate-item:hover .shine-animate:before {
    animation: hoverShine 1.2s;
}

.alltuchtopdown {
    animation: alltuchtopdown 1.5s ease-in-out 0s infinite alternate;
    animation-duration: 3s;
}

@keyframes alltuchtopdown {
    0% {
        transform: rotateX(0deg) translateY(0px);
    }

    50% {
        transform: rotateX(0deg) translateY(-20px);
    }

    100% {
        transform: rotateX(0deg) translateY(0px);
    }
}

.rightToLeft {
    animation-name: rightToLeft;
    animation-duration: 10s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes rightToLeft {
    0% {
        transform: translateX(-30px);
    }

    50% {
        transform: translateX(-10px);
    }

    100% {
        transform: translateX(-30px);
    }
}

.ribbonRotate {
    animation-name: ribbonRotate;
    animation-duration: 10s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes ribbonRotate {

    0%,
    100% {
        transform: rotate(0);
    }

    25%,
    75% {
        transform: rotate(15deg);
    }

    50% {
        transform: rotate(30deg);
    }
}

.rotateme {
    animation-name: rotateme;
    animation-duration: 10s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes rotateme {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes fadeInUp2 {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.fadeInUp2 {
    animation-name: fadeInUp2;
    animation-delay: 0.5s;
    animation-duration: 0.5s;
    animation-fill-mode: both;
}

@keyframes fadeInLeft2 {
    0% {
        opacity: 0;
        transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.fadeInLeft2 {
    animation-name: fadeInLeft2;
    animation-delay: 0.5s;
    animation-duration: 0.5s;
    animation-fill-mode: both;
}

@keyframes marquee {
    0% {
        transform: translateX(0%);
    }

    100% {
        transform: translateX(-100%);
    }
}

@keyframes heartbeat {
    from {
        transform: scale(0.8);
    }

    to {
        transform: scale(1.05);
    }
}

@keyframes pulse-border {
    0% {
        transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
        opacity: 1;
    }

    100% {
        transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
        opacity: 0;
    }
}

.shake {
    animation-name: shake;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes shake {
    0% {
        transform: rotate(15deg);
    }

    50% {
        transform: rotate(-15deg);
    }

    100% {
        transform: rotate(15deg);
    }
}

@keyframes animation__shape {
    0% {
        stroke-dashoffset: 12;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes animation__shape-two {
    0% {
        stroke-dashoffset: 18;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes animation__shape-three {
    0% {
        stroke-dashoffset: 24;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes animation__shape-four {
    0% {
        stroke-dashoffset: 14;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes animation__shape-five {
    0% {
        stroke-dashoffset: 16;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes animate-positive {
    0% {
        width: 0;
    }
}

.spin {
    animation: spin 15s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*img-animation**********************/
.img-custom-anim-right {
    animation: img-anim-right 1.3s forwards cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s;
    opacity: 0;
}

@keyframes img-anim-right {
    0% {
        transform: translateX(5%);
        clip-path: inset(0 0 0 100%);
        opacity: 0;
    }

    100% {
        transform: translateX(0);
        clip-path: inset(0 0 0 0);
        opacity: 1;
    }
}

.img-custom-anim-left {
    animation: img-anim-left 1.3s forwards cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s;
    opacity: 0;
}

@keyframes img-anim-left {
    0% {
        transform: translateX(-5%);
        clip-path: inset(0 100% 0 0);
        opacity: 0;
    }

    100% {
        transform: translateX(0);
        clip-path: inset(0 0 0 0);
        opacity: 1;
    }
}

.img-custom-anim-top {
    animation: img-anim-top 1.3s forwards cubic-bezier(0.645, 0.045, 0.355, 1);
    opacity: 0;
}

@keyframes img-anim-top {
    0% {
        transform: translateY(-5%);
        clip-path: inset(0 0 100% 0);
        opacity: 0;
    }

    100% {
        transform: translateY(0);
        clip-path: inset(0 0 0 0);
        opacity: 1;
    }
}

@media (max-width: 767px) {

    .img-custom-anim-right,
    .img-custom-anim-left,
    .img-custom-anim-top {
        animation: none;
        opacity: 1;
    }
}

.slideinleft,
.slideinright,
.slideindown,
.slideinup {
    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-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;
}

@keyframes slideinleft {
    0% {
        opacity: 0;
        transform: translateX(-100px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideinright {
    0% {
        opacity: 0;
        transform: translateX(180px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideindown {
    0% {
        opacity: 0;
        transform: translateY(-100px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideinup {
    0% {
        opacity: 0;
        transform: translateY(100px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/*Scroll to top*/
.btn-scroll-top {
    position: fixed;
    right: 1.5rem;
    bottom: 1.5rem;
    width: 3rem;
    height: 3rem;
    cursor: pointer;
    display: block;
    border-radius: 10px;
    box-shadow: inset 0 0 0 0.1rem rgba(227, 229, 233, 0.25);
    z-index: 1010;
    opacity: 0;
    visibility: hidden;
    transform: translateY(0.75rem);
    transition: all 0.2s linear, margin-right 0s;
    background-color: var(--tc-neutral-0);
}

.btn-scroll-top:after {
    position: absolute;
    font-family: "bootstrap-icons" !important;
    content: "\f145";
    text-align: center;
    line-height: 3rem;
    font-size: 1.5rem;
    color: var(--tc-theme-primary);
    left: 0;
    top: 0;
    height: 3rem;
    width: 3rem;
    cursor: pointer;
    display: block;
    z-index: 1;
    transition: all 0.2s linear;
}

.btn-scroll-top.active-progress {
    visibility: visible;
    transform: translateY(0);
}

@media (min-width: 320px) {
    .btn-scroll-top.active-progress {
        opacity: 1;
    }
}

.btn-scroll-top svg path {
    fill: none;
}

.btn-scroll-top svg.progress-square path {
    stroke: var(--tc-theme-primary);
    stroke-width: 2;
    box-sizing: border-box;
    transition: all 0.2s linear;
}

.btn {
    --bs-btn-padding-x: 40px;
    --bs-btn-padding-y: 22px;
    --bs-btn-font-family: "Inter", sans-serif;
    --bs-btn-font-size: 18px;
    --bs-btn-font-weight: 500;
    --bs-btn-line-height: 1;
    --bs-btn-color: var(--tc-neutral-950);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: 50px;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), 0.5);
    --bs-btn-border-width: 1px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background: var(--bs-btn-bg);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.btn:hover {
    background: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
    color: var(--bs-btn-hover-color);
}

.btn.btn-md {
    --bs-btn-padding-x: 25px;
    --bs-btn-padding-y: 14px;
}

.btn.btn-sm {
    --bs-btn-padding-x: 21px;
    --bs-btn-padding-y: 12px;
}

.btn.disabled,
.btn:disabled {
    color: var(--bs-btn-disabled-color);
    pointer-events: none;
    background-color: var(--bs-btn-disabled-bg);
    border-color: var(--bs-btn-disabled-border-color);
    opacity: var(--bs-btn-disabled-opacity);
}

.btn-dark {
    --bs-btn-color: var(--tc-neutral-0);
    --bs-btn-bg: var(--tc-neutral-950);
    --bs-btn-border-color: none;
    --bs-btn-hover-color: var(--tc-neutral-0);
    --bs-btn-hover-bg: var(--tc-neutral-950);
    --bs-btn-hover-border-color: none;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: var(--tc-neutral-0);
    --bs-btn-active-bg: var(--tc-neutral-950);
    --bs-btn-active-border-color: none;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--tc-neutral-0);
    --bs-btn-disabled-bg: var(--tc-neutral-300);
    --bs-btn-disabled-border-color: none;
}

.btn-primary {
    --bs-btn-color: var(--tc-neutral-950);
    --bs-btn-bg: var(--tc-theme-primary);
    --bs-btn-border-color: none;
    --bs-btn-hover-color: var(--tc-neutral-950);
    --bs-btn-hover-bg: var(--tc-theme-primary);
    --bs-btn-hover-border-color: none;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: var(--tc-neutral-0);
    --bs-btn-active-bg: var(--tc-theme-primary);
    --bs-btn-active-border-color: var(--tc-theme-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--tc-neutral-0);
    --bs-btn-disabled-bg: var(--tc-theme-primary);
    --bs-btn-disabled-border-color: var(--tc-theme-primary);
}

.btn-outline-dark {
    --bs-btn-color: var(--tc-neutral-950);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: var(--tc-neutral-950);
    --bs-btn-hover-color: var(--tc-neutral-950);
    --bs-btn-hover-bg: var(--tc-neutral-0);
    --bs-btn-hover-border-color: var(--tc-neutral-950);
    --bs-btn-focus-shadow-rgb: 108, 117, 125;
    --bs-btn-active-color: var(--tc-neutral-950);
    --bs-btn-active-bg: var(--tc-neutral-0);
    --bs-btn-active-border-color: var(--tc-neutral-950);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

.btn-category {
    display: flex;
    padding: 8px 20px;
    justify-content: center;
    align-items: center;
    gap: 15px;
    border-radius: 26px;
    border: 1px solid var(--tc-neutral-300);
    background: var(--tc-neutral-0);
}

.btn-category a {
    color: var(--tc-neutral-950);
    font-weight: 500;
    display: inline-block;
    font-size: 16px;
}

.btn-category:hover {
    border-color: var(--tc-neutral-950) !important;
    background-color: var(--tc-neutral-950);
}

.btn-category:hover a {
    color: var(--tc-neutral-0) !important;
}

.avatar {
    position: relative;
    display: inline-block;
    width: 3rem;
    height: 3rem;
}

.avatar-xs {
    width: 1.5rem;
    height: 1.5rem;
}

.avatar-sm {
    width: 2rem;
    height: 2rem;
}

.avatar-md {
    width: 2.5rem;
    height: 2.5rem;
}

.avatar-lg {
    width: 3.5rem;
    height: 3.5rem;
}

.avatar-xl {
    width: 5rem;
    height: 5rem;
}

.avatar-xxl {
    width: 7rem;
    height: 7rem;
}

.icon-xl {
    width: 3.5rem;
    height: 3.5rem;
    line-height: 3.5rem;
}

.icon-shape {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    vertical-align: middle;
}

.icon-xxs {
    width: 1rem;
    height: 1rem;
    line-height: 1rem;
}

.icon-xs {
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1.5rem;
}

.icon-sm {
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
}

.icon-md {
    width: 2.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
}

.icon-lg {
    width: 3rem;
    height: 3rem;
    line-height: 3rem;
}

.icon-xl {
    width: 3.5rem;
    height: 3.5rem;
    line-height: 3.5rem;
}

.icon-xxl {
    width: 4rem;
    height: 4rem;
    line-height: 4rem;
}

.icon-xxxl {
    width: 7rem;
    height: 7rem;
    line-height: 7rem;
}

.icon_80 {
    width: 80px;
    height: 80px;
    line-height: 80px;
}

.dropdown-menu {
    line-height: 1.5rem;
    border: none;
    box-shadow: var(--tc-shadow-1);
    border-radius: 0.5rem;
    z-index: 1021;
    padding: 1rem 0rem;
}

.dropdown-item {
    padding: 0.45rem 1.5rem;
    display: flex;
    align-items: center;
    font-weight: 500;
}

.navbar {
    padding: 0.5rem 0;
    background-color: transparent;
    z-index: 999;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

@media (max-width: 990px) {
    .navbar {
        padding: 0.75rem 0.5rem;
    }
}

.navbar .navbar-brand {
    padding-top: 0.2rem;
    padding-bottom: 0.2rem;
}

.navbar .dark-light-switcher {
    cursor: pointer;
}

.navbar .search-box {
    position: inherit;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.navbar .search-box .search-box-content {
    position: absolute;
    margin: 0 10px;
    top: 110%;
    right: 0;
    background-color: var(--tc-neutral-0);
    border-radius: 26px;
    padding: 60px;
    box-shadow: var(--tc-shadow-1);
    z-index: 5;
    display: none;
    max-width: 100%;
}

.navbar .search-box .search-box-content.show {
    display: block;
}

@media (min-width: 991px) {
    .navbar .search-box .search-box-content {
        transform: translateX(-340px);
        max-width: 500px;
    }
}

@media (max-width: 474.98px) {
    .navbar .search-box .search-box-content {
        padding: 30px;
    }
}

.navbar .dropdown .dropdown-toggle:after {
    color: var(--tc-neutral-950);
    font-family: "bootstrap-icons" !important;
    content: "\f282";
    line-height: 1.5rem;
    margin-left: 0.625rem;
}

.navbar .dropdown .dropdown-toggle:after:hover {
    transform: rotate(180deg);
}

.navbar .dropdown-menu {
    position: absolute;
    top: 100%;
    color: var(--tc-neutral-700);
    border: none;
    background-color: var(--tc-neutral-0);
    min-width: 12rem;
    box-shadow: var(--tc-shadow-1);
    border-radius: 0.5rem;
    margin-top: 0rem;
    list-style: none;
}

@media (max-width: 992px) {
    .navbar .dropdown-menu {
        box-shadow: none;
        min-width: 0 !important;
        background-color: transparent;
    }
}

.navbar .dropdown-menu .dropdown-item {
    color: var(--tc-neutral-700);
    text-wrap: nowrap;
}

.navbar .dropdown-menu .dropdown-item:hover {
    color: var(--tc-neutral-950);
}

.navbar .dropdown-fullwidth {
    position: static !important;
}

.navbar .dropdown-fullwidth .dropdown-menu {
    position: absolute;
    left: 0 !important;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 1290px;
    right: 0 !important;
    top: 110%;
    transform: none !important;
}

.navbar .navbar-nav {
    display: flex;
    list-style: none;
    z-index: 999;
}

@media (min-width: 990px) {
    .navbar .navbar-nav .dropdown>.dropdown-menu {
        left: 0;
        transform: translate(0%, 30px);
    }
}

.navbar .navbar-nav .dropend>.dropdown-menu {
    transform: translateY(10px);
}

.navbar .navbar-nav .nav-item {
    position: relative;
}

.navbar .navbar-nav .nav-item .nav-link {
    font-size: var(--tc-fs-lg);
    color: var(--tc-neutral-950);
    font-weight: 500;
    padding: 2rem 1rem;
    border-radius: 0.25rem;
}

@media (max-width: 992px) {
    .navbar .navbar-nav .nav-item .nav-link {
        padding: 0.75rem 0rem !important;
        border-bottom: 1px solid var(--tc-neutral-200);
        border-radius: 0rem;
    }

    .navbar .navbar-nav .nav-item .nav-link:hover {
        color: var(--tc-neutral-900);
        background-color: transparent !important;
    }
}

.navbar .navbar-nav .nav-item .nav-link:focus-visible {
    box-shadow: none;
}

.navbar .navbar-nav .nav-item .nav-link:hover {
    color: var(--tc-theme-primary);
}

.navbar .navbar-nav .nav-item .nav-link.active {
    color: var(--tc-theme-primary);
}

.navbar.ideko-navbar-dark {
    background-color: #323439;
}

.navbar.ideko-navbar-dark.navbar-stick:not(.ideko-navbar-dark) {
    background-color: #323439;
}

.navbar.ideko-navbar-dark .dropdown-menu,
.navbar.ideko-navbar-dark .search-box-content {
    background-color: rgb(36, 38, 43);
}

.navbar.ideko-navbar-dark .icon-switcher-dark {
    filter: invert(1);
}

.close-sidebar {
    cursor: pointer;
    transition: transform 0.3s ease;
    display: inline-block;
    width: 24px;
    height: 24px;
}

.close-sidebar:hover {
    transform: rotate(90deg);
}

@media (min-width: 1200px) {
    .navbar .dropdown-menu.show {
        display: none;
    }

    .navbar .dropdown-menu {
        display: block;
        visibility: hidden;
        opacity: 0;
        transition: all 0.3s ease-in-out;
        transform: translate(-50%);
    }

    .navbar .dropdown:hover>.dropdown-menu {
        opacity: 1;
        visibility: visible;
    }
}

.ideko-navbar-dark .navbar-brand {
    filter: brightness(0) invert(1);
}

.ideko-navbar-dark .navbar-nav .nav-link {
    color: var(--tc-neutral-300);
}

@media (max-width: 990px) {
    .ideko-navbar-dark .navbar-nav .nav-link {
        color: var(--tc-neutral-950) !important;
    }
}

.ideko-navbar-dark .navbar-nav .dropdown .dropdown-toggle:after {
    color: var(--tc-neutral-300);
}

@media (max-width: 990px) {
    .ideko-navbar-dark .navbar-nav .dropdown .dropdown-toggle:after {
        color: var(--tc-neutral-950) !important;
    }
}

.navbar-stick {
    transform: translateY(0%);
}

.navbar-stick:not(.ideko-navbar-dark) {
    box-shadow: var(--tc-shadow-1);
    background-color: #fffbe8;
}

.navbar-stick:not(.ideko-navbar-dark).navbar-brand {
    filter: brightness(0) invert(1);
}

.navbar>.container,
.navbar>.container-fluid,
.navbar>.container-lg,
.navbar>.container-md,
.navbar>.container-sm,
.navbar>.container-xl,
.navbar>.container-xxl {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}

/*=============================
Preloader
===============================*/
#preloader {
    height: 100%;
    width: 100%;
    position: fixed;
    margin-top: 0px;
    top: 0px;
    z-index: 9999;
    background-color: var(--tc-body-background);
}

#preloader .loader .loader-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
    height: 100px;
    border-radius: 50%;
}

#preloader.black-bg .loader-container,
#preloader.black2-bg .loader-container {
    border: 3px solid #1a1a1a;
}

#preloader.black-bg .loader-icon,
#preloader.black2-bg .loader-icon {
    filter: brightness(99) grayscale(9);
}

/* From Uiverse.io by aryamitra06 */
.loader {
    display: flex;
    align-items: center;
}

.bar {
    display: inline-block;
    width: 3px;
    height: 20px;
    background-color: var(--tc-neutral-950);
    border-radius: 10px;
    animation: scale-up4 1s linear infinite;
}

.bar:nth-child(2) {
    height: 35px;
    margin: 0 5px;
    animation-delay: .25s;
}

.bar:nth-child(3) {
    animation-delay: .5s;
}

/* From Uiverse.io by dovatgabriel */
.dot-wave {
    --uib-size: 50px;
    --uib-speed: 0.6s;
    --uib-color: var(--tc-neutral-950);
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    width: var(--uib-size);
    height: calc(var(--uib-size) * 0.17);
    padding-top: calc(var(--uib-size) * 0.34);
}

.dot-wave__dot {
    flex-shrink: 0;
    width: calc(var(--uib-size) * 0.17);
    height: calc(var(--uib-size) * 0.17);
    border-radius: 50%;
    background-color: var(--uib-color);
    will-change: transform;
}

.dot-wave__dot:nth-child(1) {
    animation: jump824 var(--uib-speed) ease-in-out calc(var(--uib-speed) * -0.45) infinite;
}

.dot-wave__dot:nth-child(2) {
    animation: jump824 var(--uib-speed) ease-in-out calc(var(--uib-speed) * -0.3) infinite;
}

.dot-wave__dot:nth-child(3) {
    animation: jump824 var(--uib-speed) ease-in-out calc(var(--uib-speed) * -0.15) infinite;
}

.dot-wave__dot:nth-child(4) {
    animation: jump824 var(--uib-speed) ease-in-out infinite;
}

@keyframes jump824 {

    0%,
    100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-200%);
    }
}


@keyframes scale-up4 {
    20% {
        background-color: var(--tc-neutral-950);
        transform: scaleY(1.5);
    }

    40% {
        transform: scaleY(1);
    }
}


.loader4 {
    --loader: var(--tc-neutral-950);
    --loader-size: 3px;
    position: relative;
    width: 40px;
    height: 40px;
    overflow: hidden;
    transition: .5s;
    letter-spacing: 2px
}

.loader4 span {
    position: absolute;
}

.loader4 span:nth-child(1) {
    top: 0;
    left: -100%;
    width: 100%;
    height: var(--loader-size);
    background: linear-gradient(90deg, transparent, var(--loader));
    animation: loader-anim1 1s linear infinite;
}

@keyframes loader-anim1 {
    0% {
        left: -100%;
    }

    50%,
    100% {
        left: 100%;
    }
}

.loader4 span:nth-child(2) {
    top: -100%;
    right: 0;
    width: var(--loader-size);
    height: 100%;
    background: linear-gradient(180deg, transparent, var(--loader));
    animation: loader-anim2 1s linear infinite;
    animation-delay: .25s
}

@keyframes loader-anim2 {
    0% {
        top: -100%;
    }

    50%,
    100% {
        top: 100%;
    }
}

.loader4 span:nth-child(3) {
    bottom: 0;
    right: -100%;
    width: 100%;
    height: var(--loader-size);
    background: linear-gradient(270deg, transparent, var(--loader));
    animation: loader-anim3 1s linear infinite;
    animation-delay: .5s
}

@keyframes loader-anim3 {
    0% {
        right: -100%;
    }

    50%,
    100% {
        right: 100%;
    }
}

.loader4 span:nth-child(4) {
    bottom: -100%;
    left: 0;
    width: var(--loader-size);
    height: 100%;
    background: linear-gradient(360deg, transparent, var(--loader));
    animation: loader-anim4 1s linear infinite;
    animation-delay: .75s
}

@keyframes loader-anim4 {
    0% {
        bottom: -100%;
    }

    50%,
    100% {
        bottom: 100%;
    }
}


.loader5 {
    display: block;
    --height-of-loader: 4px;
    --loader-color: var(--tc-neutral-950);
    width: 130px;
    height: var(--height-of-loader);
    border-radius: 30px;
    background-color: var(--tc-neutral-200);
    position: relative;
}

.loader5::before {
    content: "";
    position: absolute;
    background: var(--loader-color);
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    border-radius: 30px;
    animation: moving 1s ease-in-out infinite;
    ;
}

@keyframes moving {
    50% {
        width: 100%;
    }

    100% {
        width: 0;
        right: 0;
        left: unset;
    }
}


@media screen and (max-width: 991.98px) {
    .fs-sm {
        font-size: 14px;
    }

    .fs-base {
        font-size: 16px;
    }

    .fs-lg {
        font-size: 18px;
    }

    .fs-xl {
        font-size: 20px;
    }

    .fs-2xl {
        font-size: 22px;
    }

    .fs-3xl {
        font-size: 24px;
    }

    .fs-4xl {
        font-size: 26px;
    }

    .fs-5xl {
        font-size: 34px;
    }

    .fs-6xl {
        font-size: 46px;
    }

    .fs-7xl {
        font-size: 66px;
    }

    .fs-8xl {
        font-size: 91px;
    }

    .fs-9xl {
        font-size: 66px;
    }
}

@media screen and (max-width: 474.98px) {
    .fs-sm {
        font-size: 12px;
    }

    .fs-base {
        font-size: 14px;
    }

    .fs-lg {
        font-size: 16px;
    }

    .fs-xl {
        font-size: 18px;
    }

    .fs-2xl {
        font-size: 20px;
    }

    .fs-3xl {
        font-size: 22px;
    }

    .fs-4xl {
        font-size: 24px;
    }

    .fs-5xl {
        font-size: 26px;
    }

    .fs-6xl {
        font-size: 34px;
    }

    .fs-7xl {
        font-size: 46px;
    }

    .fs-8xl {
        font-size: 58px;
    }

    .fs-9xl {
        font-size: 66px;
    }

    .btn {
        --bs-btn-padding-x: 20px;
        --bs-btn-padding-y: 12px;
    }

    .pt-140px {
        padding-top: 80px;
    }

    .container-breadcrumb {
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        text-align: left !important;
    }
}

@media (min-width: 768px) {
    .heading-1 {
        font-size: 66px;
        line-height: 83px;
    }

    .heading-2 {
        font-size: 46px;
        line-height: 72px;
    }

    .heading-3 {
        font-size: 34px;
        line-height: 48px;
    }
}

@media (min-width: 1024px) {
    .heading-1 {
        font-size: 100px;
        line-height: 110px;
    }

    .heading-2 {
        font-size: 66px;
        line-height: 83px;
    }

    .heading-3 {
        font-size: 46px;
        line-height: 72px;
    }
}

/* =============================================
=              Sidebar Menu    =
=============================================*/
.sidebar_widget {
    margin-bottom: 50px;
}

.sidebar_widget.widget_magzin-posts-slider {
    margin-bottom: 10px;
}

.sidebar-left .menu {
    list-style: none;
    margin-top: 20px;
    margin-bottom: 0px;
    padding: 0;
}

/* Style for menu items with children */
.sidebar-left .menu-item-has-children>a {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--tc-neutral-950);
    transition: color 0.3s ease;
    text-decoration: none;
}

.sidebar-left .menu-item a {
    padding: 8px 0;
    display: inline-block;
    width: 100%;
}

/* Add arrow indicator for items with children */
.sidebar-left .menu-item-has-children>a::after {
    content: "";
    position: absolute;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7' fill='none'%3E%3Cpath d='M6.16668 6.66667C6.1009 6.66705 6.03569 6.65444 5.97479 6.62957C5.91389 6.60469 5.8585 6.56804 5.8118 6.52172L0.8135 1.52342C0.71938 1.4293 0.666504 1.30164 0.666504 1.16854C0.666504 1.03543 0.71938 0.90778 0.8135 0.81366C0.90762 0.71954 1.03527 0.666664 1.16838 0.666664C1.30148 0.666664 1.42914 0.71954 1.52326 0.81366L6.16668 5.46208L10.8101 0.81366C10.9042 0.71954 11.0319 0.666664 11.165 0.666664C11.2981 0.666664 11.4257 0.71954 11.5199 0.81366C11.614 0.90778 11.6669 1.03543 11.6669 1.16854C11.6669 1.30164 11.614 1.4293 11.5199 1.52342L6.52156 6.52172C6.47485 6.56804 6.41946 6.60469 6.35857 6.62957C6.29767 6.65444 6.23246 6.66705 6.16668 6.66667Z' fill='%236B7280' /%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    width: 12px;
    height: 7px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
    opacity: 0.7;
}

/* Rotate arrow when menu is active */
.sidebar-left .menu-item.active>a::after {
    transform: translateY(-50%) rotate(180deg);
}

/* Hide sub-menu by default */
.sidebar-left .sub-menu {
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    margin: 0;
    padding-left: 15px;
    max-height: 0;
    list-style: none;
    overflow: hidden;
}

/* Show sub-menu when parent is active */
.sidebar-left .menu-item.active .sub-menu {
    max-height: 1000px;
    opacity: 1;
    visibility: visible;
    padding: 0px 0 5px 15px;
}

/* Style for sub-menu items */
.sidebar-left .sub-menu .menu-item {
    padding: 0;
    transition-duration: 0.3s;
}

.sidebar-left .sub-menu .menu-item:hover {
    padding-left: 3px;
    transition-duration: 0.3s;
}

.sidebar-left .sub-menu .menu-item a {
    font-size: 14px;
    padding: 8px 0 !important;
    display: block;
    color: var(--tc-neutral-950);
    text-decoration: none;
    transition: color 0.2s ease;
}

.sidebar-left .sub-menu .menu-item a:hover {
    color: var(--tc-neutral-950);
}

/* Active state for menu items */
.sidebar-left .menu-item.active>a {
    color: var(--tc-neutral-950);
    font-weight: 600;
}

/* Current page indicator */
.sidebar-left .current-menu-item>a {
    color: var(--tc-neutral-950);
    font-weight: 600;
}

/* Current menu parent styling */
.sidebar-left .current-menu-parent>a {
    color: var(--tc-neutral-950);
    font-weight: 600;
}

/* Hover effects */
.sidebar-left .menu-item>a:hover {
    color: var(--tc-neutral-700);
}

/* Mobile menu support */
@media (max-width: 991px) {
    .sidebar-left .sub-menu {
        padding-left: 12px;
    }

    .sidebar-left .sub-menu .menu-item a {
        min-height: unset;
    }
}

/* Tablet support */
@media (min-width: 768px) and (max-width: 1024px) {
    .sidebar-left .sub-menu {
        padding-left: 18px;
    }
}

/* Ensure proper spacing for nested menus */
.sidebar-left .sub-menu .sub-menu {
    padding-left: 15px;
}

/* Smooth transitions for all menu interactions */
.sidebar-left .menu * {
    transition: all 0.3s ease;
}


.admin-bar .navbar,
.admin-bar .navbar.navbar-stick,
.admin-bar .elementor .navbar.navbar-stick,
.admin-bar .sidebar-left {
    margin-top: 32px;
}

@media screen and (max-width: 782px) {

    .admin-bar .navbar,
    .admin-bar .navbar.navbar-stick,
    .admin-bar .elementor .navbar.navbar-stick,
    .admin-bar .sidebar-left {
        margin-top: 42px;
    }
}

.admin-bar .elementor .navbar {
    margin-top: 0;
}

@media screen and (max-width: 768px) {
    .admin-bar .sidebar-left {
        margin-top: 46px;
    }

    .admin-bar.has-navbar-stick .sidebar-left,
    .admin-bar .navbar.navbar-stick {
        margin-top: 0;
    }

    .wpcf7-submit {
        width: 100% !important;
    }
}

/* =============================================
=              Sidebar Menu    =
=============================================*/

.sidebar-left {
    max-width: 372px;
    width: 372px;
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: var(--tc-neutral-0);
    padding: 0 1.5rem;
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
    overflow-y: auto;
    z-index: 1000;
}

.sidebar-left.active {
    transform: translateX(0);
}

.sidebar-left .header-sidebar {
    position: sticky;
    top: 0;
    padding: 20px 0;
    z-index: 10;
    border-bottom: 1px solid var(--tc-neutral-300);
    background-color: var(--tc-neutral-0);
}

.sidebar-left .sidebar-nav {
    display: flex;
    flex-direction: column;
    padding: 15px 0;
}

.sidebar-left .sidebar-nav .collapse-menu,
.sidebar-left .sidebar-nav .sub-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
    margin: 0;
    padding-left: 15px;
}

.sidebar-left .sidebar-nav .collapse-menu li,
.sidebar-left .sidebar-nav .sub-menu li {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.sidebar-left .sidebar-nav .nav-item.active>.nav-link:after,
.sidebar-left .sidebar-nav .nav-item-has-child.active>.nav-link:after {
    transform: translateY(-50%) rotate(180deg);
}

.sidebar-left .sidebar-nav .nav-item.active>.collapse-menu,
.sidebar-left .sidebar-nav .nav-item.active>.sub-menu,
.sidebar-left .sidebar-nav .nav-item-has-child.active>.collapse-menu,
.sidebar-left .sidebar-nav .nav-item-has-child.active>.sub-menu {
    max-height: 2000px;
}

.sidebar-left .sidebar-nav .nav-item.active>.collapse-menu>li,
.sidebar-left .sidebar-nav .nav-item.active>.sub-menu>li,
.sidebar-left .sidebar-nav .nav-item-has-child.active>.collapse-menu>li,
.sidebar-left .sidebar-nav .nav-item-has-child.active>.sub-menu>li {
    opacity: 1;
    transition-delay: 0.2s;
}

.sidebar-left .sidebar-nav .nav-item {
    position: relative;
    padding: 10px 0;
}

.sidebar-left .sidebar-nav .nav-item.active>.nav-link:after {
    transform: translateY(-50%) rotate(180deg);
}

.sidebar-left .sidebar-nav .nav-item.active>.collapse-menu {
    max-height: 1000px;
    opacity: 1;
    visibility: visible;
    padding: 10px 0 5px 15px;
}

.sidebar-left .sidebar-nav .nav-item .nav-link {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--tc-neutral-950);
    font-weight: 500;
    transition: color 0.3s ease;
}

.sidebar-left .sidebar-nav .nav-item .nav-link.collapsed:after {
    transform: translateY(-50%) rotate(-90deg);
}

.sidebar-left .sidebar-nav .nav-item.menu-item-has-children .nav-link:after {
    content: "";
    position: absolute;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7' fill='none'%3E%3Cpath d='M6.16668 6.66667C6.1009 6.66705 6.03569 6.65444 5.97479 6.62957C5.91389 6.60469 5.8585 6.56804 5.8118 6.52172L0.8135 1.52342C0.71938 1.4293 0.666504 1.30164 0.666504 1.16854C0.666504 1.03543 0.71938 0.90778 0.8135 0.81366C0.90762 0.71954 1.03527 0.666664 1.16838 0.666664C1.30148 0.666664 1.42914 0.71954 1.52326 0.81366L6.16668 5.46208L10.8101 0.81366C10.9042 0.71954 11.0319 0.666664 11.165 0.666664C11.2981 0.666664 11.4257 0.71954 11.5199 0.81366C11.614 0.90778 11.6669 1.03543 11.6669 1.16854C11.6669 1.30164 11.614 1.4293 11.5199 1.52342L6.52156 6.52172C6.47485 6.56804 6.41946 6.60469 6.35857 6.62957C6.29767 6.65444 6.23246 6.66705 6.16668 6.66667Z' fill='%236B7280' /%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    width: 12px;
    height: 7px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
    opacity: 0.7;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu {
    opacity: 0;
    transition: all 0.3s ease;
    margin: 0;
    padding-left: 15px;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item {
    margin-bottom: 5px;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item .nav-link {
    font-size: 14px;
    padding: 8px 0;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item .nav-link:after {
    width: 12px;
    height: 12px;
    right: 5px;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item .sub-menu {
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    padding-left: 15px;
    margin: 0;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item .sub-menu .collapse-item {
    display: block;
    padding: 6px 0;
    color: var(--tc-neutral-700);
    font-size: 13px;
    transition: color 0.2s ease;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item.show-submenu>.nav-link:after {
    transform: translateY(-50%) rotate(180deg);
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .nav-item.show-submenu>.sub-menu {
    max-height: 1000px;
    opacity: 1;
    visibility: visible;
    padding: 5px 0 5px 15px;
}

.sidebar-left .sidebar-nav .nav-item .collapse-menu .collapse-item {
    display: block;
    padding: 5px 0;
    color: var(--tc-neutral-800);
    font-size: 16px;
    transition: color 0.2s ease;
}

.sidebar-left .sidebar-footer {
    margin-top: 40px;
    margin-bottom: 30px;
    display: flex;
    padding: 30px;
    flex-direction: column;
    align-items: flex-start;
    gap: 27px;
    flex-shrink: 0;
    border-radius: 16px;
    border: 1px solid var(--tc-neutral-200);
    background-color: var(--tc-system-white);
}

.sidebar-left .sidebar-footer .form-control {
    max-width: 275px;
}

.sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-in-out;
}

.sidebar-overlay.active {
    opacity: 1;
    visibility: visible;
}

/*=============================================
=              Accordion Component            =
=============================================*/
.accordion-item {
    transition: all 0.3s ease;
    border: 1px solid var(--neutral-300);
}

.accordion-item:hover {
    border-color: var(--primary-color);
}

.accordion-item.active {
    border-color: var(--primary-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.accordion-header {
    cursor: pointer;
    transition: all 0.3s ease;
}

.accordion-header:hover .accordion-icon {
    transform: scale(1.1);
}

.accordion-icon {
    transition: all 0.3s ease;
}

.accordion-icon.active {
    transform: rotate(45deg);
}

.accordion-content {
    overflow: hidden;
    transition: all 0.3s ease;
}

.accordion-content.show {
    display: block !important;
    animation: slideDown 0.3s ease;
}

.accordion-content.hide {
    animation: slideUp 0.3s ease;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideUp {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 0;
        transform: translateY(-10px);
    }
}

.cursor-pointer {
    cursor: pointer;
}

/*-----------------------------------------------------------------
 --------------- START THEME CUSTOMIZE ----------------------------
-----------------------------------------------------------------*/
::-moz-selection {
    background: var(--tc-theme-primary-light);
    color: var(--tc-neutral-950);
}

::selection {
    background: var(--tc-theme-primary-light);
    color: var(--tc-neutral-950);
}

::-moz-selection {
    background: var(--tc-theme-primary-light);
    color: var(--tc-neutral-950);
}

b,
strong {
    font-weight: bolder;
    color: var(--tc-neutral-800);
}

.w-100 {
    width: 100% !important;
}

.h-100 {
    height: 100% !important;
}

.rounded-0 {
    border-radius: 0 !important;
}

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

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

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

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

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

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

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

.overflow-hidden {
    overflow: hidden !important;
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

.pd-tb-150px {
    padding: 150px 0;
}

.pd-bottom-120px {
    padding-bottom: 120px;
}

.pd-bottom-250px {
    padding-bottom: 250px;
}

.pd-top-120px {
    padding-top: 120px;
}

.pd-top-250px {
    padding-top: 250px;
}

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

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

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

.py-90px {
    padding: 90px 0;
}

.gap-0 {
    gap: 0 !important;
}

.gap-1 {
    gap: 0.25rem !important;
}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

.gap-4 {
    gap: 1.5rem !important;
}

.gap-5 {
    gap: 3rem !important;
}

.border-0 {
    border: 0 !important;
}

.border-top-neutral-300 {
    border-top: 1px solid var(--tc-neutral-300) !important;
}

.border-neutral-950 {
    border: 1px solid var(--tc-neutral-950) !important;
}

.border-top {
    border-top: 1px solid var(--tc-neutral-950) !important;
}

.border-top-500 {
    border-top: 1px solid var(--tc-neutral-500) !important;
}

.border-bottom-300 {
    border-bottom: 1px solid var(--tc-neutral-300) !important;
}

.border-neutral-200 {
    border: 1px solid var(--tc-neutral-200) !important;
}

.border-dark {
    border: 1px solid var(--tc-neutral-950) !important;
}

.border-neutral-300 {
    border: 1px solid var(--tc-neutral-300);
}

.border-700 {
    border-color: var(--tc-neutral-700) !important;
}

.swiper-button-prev::after,
.swiper-button-next::after {
    transition: all 0.3s ease;
    font-size: 20px;
    color: var(--tc-neutral-0);
    opacity: 1;
    font-family: "bootstrap-icons";
}

.swiper-button-next::after {
    content: "\F135";
}

.swiper-button-prev::after {
    content: "\F12C";
}

.swiper-button-next,
.swiper-button-prev {
    --swiper-navigation-size: 16px;
    --swiper-navigation-top-offset: 50%;
    --swiper-navigation-sides-offset: 10px;
    display: flex;
    width: 50px;
    height: 50px;
    padding: 10px;
    font-size: 16px;
    border-radius: 30px;
    background-color: var(--tc-neutral-950);
    transition: all 0.3s ease;
    /* border: 1px solid var(--tc-neutral-400); */
}

.swiper-button-next:hover,
.swiper-button-next :active,
.swiper-button-prev:hover,
.swiper-button-prev :active {
    --swiper-navigation-color: var(--tc-theme-primary);
    background-color: var(--tc-theme-primary);
}

.swiper-button-next:hover::after,
.swiper-button-prev:hover::after {
    color: var(--tc-neutral-950);
}

.swiper-horizontal {
    padding-bottom: 30px;
    padding-top: 30px;
}

.swiper-pagination {
    bottom: 0 !important;
}

.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    text-align: center;
    line-height: 10px;
    font-size: 12px;
    color: #000;
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.2);
}

.swiper-pagination.style-2 {
    bottom: 50px !important;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 5px 8px;
    align-items: center;
    left: 50% !important;
    width: unset !important;
    gap: 5px;
    border-radius: 100px;
    background: rgba(255, 255, 255, 0.5);
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px);
    transform: translateX(-50%);
}

.swiper-pagination.style-2 .swiper-pagination-bullet {
    /* color: var(--tc-neutral-0); */
    background-color: var(--tc-neutral-0);
}

.swiper-pagination-bullet-active {
    background-color: var(--tc-theme-primary);
}

.image-blog-slider {
    max-height: 470px;
    min-height: 470px;
}

.hover-up {
    transition: all 0.3s ease-in-out;
}

.hover-up:hover {
    transform: translateY(-3px);
    transition-duration: 0.3s;
}

.hover-up:hover.hover-bg-neutral-300 {
    background-color: var(--tc-neutral-300);
}

.hover-up:hover.hover-bg-neutral-300 a {
    color: var(--tc-neutral-950) !important;
}

.hover-effect {
    border: none;
    text-align: center;
    transition: all 0.5s;
    cursor: pointer;
}

.hover-effect {
    cursor: pointer;
    display: inline-block;
    position: relative;
    transition: 0.5s;
}

.hover-effect:after {
    content: "🠚";
    color: var(--tc-theme-primary);
    position: absolute;
    opacity: 0;
    left: -20px;
    transition: 0.5s;
}

.hover-effect:hover {
    color: #fff !important;
    padding-left: 30px;
    padding-right: 8px;
}

.hover-effect:hover:after {
    opacity: 1;
    left: 10px;
}

.hover-effect-1 i {
    position: relative;
    transition: 0.5s;
}

.hover-effect-1:hover i {
    padding-left: 10px;
}

.hover-effect-2 {
    transition: all 0.3s ease-in-out;
}

.hover-effect-2:hover {
    transform: translateX(5px);
    transition: all 0.3s ease-in-out;
    color: var(--tc-theme-primary);
}

@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1290px;
    }
}

.lh-1 {
    line-height: 1 !important;
}

.custom-container {
    max-width: 1475px;
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-right: auto;
    margin-left: auto;
}

.bg-dark {
    background-color: #151618;
}

.language-switcher {
    position: relative;
    z-index: 10;
}

.language-switcher .language {
    position: absolute;
    display: inline-flex;
    top: 0;
    left: 0;
}

.social-icons {
    display: flex;
}

.social-icons .social-icons-item {
    display: flex;
    padding: 17px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 5px;
    border: 1px solid var(--tc-neutral-300);
    background-color: var(--tc-body-background);
    width: 50px;
    height: 50px;
}

.social-icons .social-icons-item i {
    font-size: 16px;
}

.social-icons .social-icons-item:hover {
    background-color: var(--tc-neutral-300);
}

.cart-category-1 {
    position: relative;
}

.cart-category-1 .img-container {
    min-width: 300px;
    max-height: 200px;
    min-height: 200px;
    border-radius: 26px;
    overflow: hidden;
}

.cart-category-1 .img-container img {
    width: 100%;
    min-height: 200px;
    -o-object-fit: cover;
    object-fit: cover;
}

.cart-category-1 .btn-tag {
    display: inline-flex;
    padding: 9px 13px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 26px;
    background: var(--tc-neutral-0);
    position: absolute;
    bottom: 10px;
    left: 10px;
}

.cart-category-1 .btn-tag .number {
    width: 28px;
    height: 28px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: var(--tc-theme-primary);
}

.pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.pagination .pagination_item {
    background-color: var(--tc-neutral-200);
    transition: 0.3s ease-in-out;
    font-weight: 600;
}

.pagination .pagination_item svg path {
    stroke: var(--tc-neutral-950) !important;
    transition: 0.3s ease-in-out;
}

.pagination .pagination_item:hover {
    color: var(--tc-neutral-950) !important;
    background-color: var(--tc-theme-primary) !important;
    transition: 0.3s ease-in-out;
}

.pagination .pagination_item.current {
    color: var(--tc-neutral-950) !important;
    background-color: var(--tc-theme-primary) !important;
    transition: 0.3s ease-in-out;
}

.pagination .pagination_item.current svg path {
    stroke: var(--tc-neutral-0) !important;
}

.pagination .pagination_item:focus {
    box-shadow: none;
    background-color: var(--tc-theme-primary) !important;
    border-color: var(--tc-theme-primary);
    color: var(--tc-neutral-950) !important;
    transition: 0.3s ease-in-out;
}

.pagination .pagination_item:focus svg path {
    stroke: var(--tc-neutral-0) !important;
}

@media (min-width: 768px) {
    .input-group {
        width: 100%;
        background-color: var(--tc-neutral-200);
        padding: 5px 6px 5px 40px;
        border: 1px solid var(--tc-neutral-300);
        box-shadow: var(--tc-shadow-1);
    }

    .input-group.style-2 {
        background-color: var(--tc-neutral-0);
    }
}

.input-group .form-control {
    font-size: 14px;
    background-color: var(--tc-neutral-200);
    border: 1px solid var(--tc-neutral-300);
    box-shadow: var(--tc-shadow-1);
    border-radius: 50px;
    padding: 22px;
    height: auto;
    line-height: 1.5;
    color: var(--tc-neutral-950);
    width: 100%;
}

.input-group .form-control::-moz-placeholder {
    color: var(--tc-neutral-500);
}

.input-group .form-control::placeholder {
    color: var(--tc-neutral-500);
}

@media (min-width: 768px) {
    .input-group .form-control {
        border: none;
        border-radius: 0px;
        box-shadow: none;
        padding: 0;
    }
}

.hover-underline {
    position: relative;
    text-decoration: none;
    display: inline-block;
}

.hover-underline h4 {
    position: relative;
    transition: all 0.3s ease;
    margin: 0;
    display: inline;
}

.hover-underline .line-wrapper {
    position: relative;
    display: inline;
}

.hover-underline .line-wrapper::after {
    content: "";
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--tc-theme-primary);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.hover-underline:hover h4 {
    transform: translateY(-1px);
}

.hover-underline:hover .line-wrapper::after {
    transform: scaleX(1);
    transform-origin: left;
}

.hover-underline .line-wrapper::after {
    transform-origin: right;
}

.img-fluid {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.link-hover {
    position: relative;
}

.link-hover::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    bottom: -3px;
    left: 0;
    background-color: #ffcf01;
    transform: scaleX(0);
    transform-origin: bottom right;
    transition: transform 0.3s;
}

.link-hover:hover {
    color: var(--tc-neutral-950) !important;
}

.link-hover:hover::after {
    transform-origin: bottom left;
    transform: scaleX(1);
}

.fill-neutral-700 path {
    fill: var(--tc-neutral-700);
}

.fill-dark path {
    fill: var(--tc-neutral-950);
}

.fill-primary path {
    fill: var(--tc-theme-primary);
}

.card-author {
    position: relative;
    border-radius: 26px;
    border: 2px solid var(--tc-neutral-300);
    overflow: hidden;
    padding: 40px;
}

.card-author .bg-primary {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 30%;
    z-index: -1;
}

.card-author .avatar-author {
    width: 144px;
    height: 144px;
    border-radius: 50%;
    border: 4px solid var(--tc-neutral-0);
    overflow: hidden;
}

.card-blog-1 .img-container {
    max-height: 465px;
    width: 100%;
}

@media (max-width: 768px) {
    .card-blog-1 .img-container {
        min-height: unset;
        max-height: unset;
    }
}

.card-blog-1 .img-container a {
    width: 100%;
    height: 100%;
}

.card-blog-1.style-2 .img-container {
    max-height: 370px;
    min-height: unset;
    width: 100%;
}

.card-blog-1.style-3 .img-container {
    max-height: 225px;
    min-height: 225px;
    width: 100%;
}

.card-blog-2 {
    border-radius: 26px;
    border: 2px solid var(--tc-neutral-300);
    padding: 10px;
}

@media (min-width: 768px) {
    .card-blog-2 .img-container {
        max-width: 280px;
        min-width: 280px;
        max-height: 170px;
        min-height: 170px;
    }
}

@media (min-width: 992px) {
    .card-blog-2 {
        padding: 10px 100px 10px 10px;
    }
}

.card-blog-10 .img-container {
    max-height: 465px;
    width: 100%;
}

.card-blog-10 .img-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.card-blog-12 .img-container {
    max-height: 370px;
    width: 100%;
}

.card-blog-12 .img-container img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.card-blog-13 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (min-width: 768px) {
    .card-blog-13 .img {
        max-width: 190px;
        max-height: 190px;
        min-height: 190px;
        min-width: 190px;
        width: 190px;
        height: 190px;
    }
}

.card-blog-5 {
    border-radius: 26px;
    border: 2px solid var(--tc-neutral-300);
    overflow: hidden;
}

.card-blog-5 .rounded-4 {
    border-radius: 0 0 26px 26px !important;
}

.card-blog-5 .card-body {
    padding: 20px 20px 30px 20px;
}

.card-blog-5 .img-container {
    max-height: 180px;
    min-height: 180px;
    width: 100%;
}

.card-blog-7 {
    border-radius: 26px;
    border: 2px solid var(--tc-neutral-700);
}

.card-blog-7 .img-container {
    display: inline-flex;
    overflow: hidden;
    max-width: 100%;
    max-height: 330px;
}

@media (min-width: 992px) {
    .card-blog-7 .img-container {
        max-width: 300px;
        max-height: 330px;
        min-height: 332px;
        min-width: 265px;
    }
}

.card-blog-7 .card-body {
    padding: 20px 20px 30px 20px;
}

.card-blog-11 {
    border-radius: 26px;
    border: 2px solid var(--tc-neutral-300);
    background-color: var(--tc-neutral-0);
}

@media (min-width: 768px) {
    .card-blog-11 .img-container {
        max-width: 300px;
    }
}

.card-blog-11 .card-body {
    padding: 20px 20px 30px 20px;
}

.img-card-blog-4 {
    max-width: 106px;
    min-width: 106px;
    max-height: 106px;
    min-height: 106px;
}

.box-join {
    position: relative;
    border-radius: 26px;
    background: var(--tc-theme-primary-light);
    padding: 40px;
}

@media (min-width: 992px) {
    .box-join {
        padding: 78px 67px;
    }
}

.box-join .img-decorate-1 {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.1;
}

.box-join .img-decorate-2 {
    position: absolute;
    bottom: 0;
    right: 0;
    opacity: 0.1;
}

.block-slider {
    position: relative;
}

.block-slider .container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}

.block-slider .background-slider {
    height: 570px;
    width: 100%;
    border-radius: 30px;
    background-color: var(--tc-theme-primary);
}

.cover-image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.ads-banner {
    position: relative;
}

.ads-banner .bg-gradient {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.65) 100%)
}

.home-3-section-1 .card-blog-5 {
    background-color: rgb(36, 38, 43);
}

.home-3-section-1 .card-blog-5 .card-body h3,
.home-3-section-1 .card-blog-5 .card-body .time-post {
    color: #fff !important;
}

.box-features-primary {
    border-radius: 26px;
    padding: 40px;
}

@media (min-width: 992px) {
    .box-features-primary {
        padding: 80px 165.5px 64px 164.5px;
    }
}



.single-pagination {
    position: relative;
}

.single-pagination .content-post {
    width: 70%;
}

.single-pagination .v-divider {
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: var(--tc-neutral-300);
    transform: translate(-50%, -50%);
    width: 80%;
    height: 1px;
}

@media (min-width: 768px) {
    .single-pagination .v-divider {
        width: 1px;
        height: 50%;
    }
}

input[type="checkbox"] {
    accent-color: var(--tc-theme-primary);
}

.wpcf7-list-item-label {
    color: var(--tc-neutral-700);
    font-size: 14px;
}

.input-default {
    width: 100%;
    border-radius: 0.5rem;
    border-width: 1px;
    border-color: var(--tc-neutral-600);
    border-style: solid;
    background-color: var(--tc-neutral-0);
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.input-default:focus {
    outline: 2px solid var(--tc-theme-primary-light);
    outline-offset: 2px;
    box-shadow: none;
}

.textarea-default {
    margin-bottom: 1rem;
    min-height: 12rem;
    width: 100%;
    border-radius: 0.5rem;
    border-width: 1px;
    border-color: var(--tc-neutral-600);
    border-style: solid;
    background-color: var(--tc-neutral-0);
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.textarea-default:focus {
    outline: 2px solid var(--tc-theme-primary-light);
    outline-offset: 2px;
    box-shadow: none;
}

[data-bs-theme="dark"],
.ideko-navbar-dark {
    /* --tc-body-background: var(--tc-body-dark-background); */
    --tc-theme-primary: var(--tc-theme-dark-primary);
    --tc-theme-primary-light: var(--tc-theme-dark-primary-dark);
    --tc-neutral-0: var(--tc-neutral-dark-0);
    --tc-neutral-200: var(--tc-neutral-dark-200);
    --tc-neutral-300: var(--tc-neutral-dark-300);
    --tc-neutral-400: var(--tc-neutral-dark-400);
    --tc-neutral-500: var(--tc-neutral-dark-500);
    --tc-neutral-600: var(--tc-neutral-dark-600);
    --tc-neutral-700: var(--tc-neutral-dark-700);
    --tc-neutral-800: var(--tc-neutral-dark-800);
    --tc-neutral-950: var(--tc-neutral-dark-950);
}

[data-bs-theme="dark"] .dark-mode-invert,
.ideko-navbar-dark .dark-mode-invert {
    filter: invert(1);
}

[data-bs-theme="dark"] .changeless,
.ideko-navbar-dark .changeless {
    --tc-theme-primary: #ffcf01;
    --tc-theme-primary-light: rgba(255, 246, 207, 1);
    --tc-neutral-0: rgba(255, 255, 255, 1);
    --tc-neutral-200: rgba(248, 245, 241, 1);
    --tc-neutral-300: rgba(227, 227, 227, 1);
    --tc-neutral-400: rgba(169, 169, 169, 1);
    --tc-neutral-500: rgba(135, 134, 128, 1);
    --tc-neutral-600: rgba(212, 215, 229, 1);
    --tc-neutral-700: rgba(97, 102, 112, 1);
    --tc-neutral-800: rgba(36, 35, 29, 1);
    --tc-neutral-950: rgba(21, 22, 24, 1);
}

[data-bs-theme="dark"] .navbar-stick:not(.ideko-navbar-dark),
.ideko-navbar-dark .navbar-stick:not(.ideko-navbar-dark) {
    box-shadow: var(--tc-shadow-1);
    background-color: #323439;
}

[data-bs-theme="dark"] .navbar .navbar-nav .nav-item .dropdown-toggle::before,
.ideko-navbar-dark .navbar .navbar-nav .nav-item .dropdown-toggle::before {
    filter: invert(1);
}

[data-bs-theme="dark"] .blockquote::before,
.ideko-navbar-dark .blockquote::before {
    filter: invert(1);
}

[data-bs-theme="dark"] .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.has-child::after,
.ideko-navbar-dark .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item.has-child::after {
    filter: invert(1);
}

[data-bs-theme="dark"] .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover::after,
.ideko-navbar-dark .navbar .navbar-nav .nav-item .dropdown-menu .dropdown-item:hover::after {
    filter: invert(0);
}

[data-bs-theme="dark"] .main-logo.logo-light,
.main-logo {
    display: none;
}

[data-bs-theme="dark"] .main-logo.logo-dark {
    display: block;
}

.main-logo.logo-light {
    display: block;
}

.card-blog .img-container,
.cart-category-box .img-container {
    position: relative;
}

.ads-banner img,
.cart-category-box .img-container img,
.card-blog .img-container img {
    transition: 0.3s ease-in-out;
}

.ads-banner:hover img,
.cart-category-box:hover .img-container img,
.card-blog:hover .img-container img {
    transform: scale(1.03);
    transition: 0.3s ease-in-out;
}

.single-header-1 .single-thumbnail {
    max-height: 550px;
    width: 100%;
    overflow: hidden;
    border-radius: 26px;
    display: flex;
    align-items: center;
}

.single-header-1 .single-thumbnail img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    display: block;
    margin: 0 auto;
}

/*Single content*/

.single-content::after,
.single-content::before {
    content: "";
    display: table;
    clear: both;
}

.single-content> :not(.wp-block-heading, .alignwide, .alignfull),
.single-content .wp-block-column>*,
.single-content .wp-block-group__inner-container>*,
.single-content .wp-block-cover__inner-container>*,
.single-content .wp-block-media-text__content>* {
    margin-bottom: 24px;
    margin-top: 8px;
}

.single-content .single-excerpt,
.single-content .single-excerpt p {
    font-size: 1.28rem;
    color: var(--tc-neutral-950);
    margin: 0 0 25px 0;
    font-weight: 500;
}

.single-content {
    color: var(--tc-neutral-800);
    font-size: 1.125rem;
    font-weight: 400;
    overflow: hidden;
}

.single-content p {
    color: var(--tc-neutral-800);
    margin-top: 0;
    font-size: 1.125rem;
    font-weight: 400;
}

.single-content blockquote,
blockquote.post-blockquote {
    position: relative;
    padding: 25px 25px 25px 100px;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 2rem;
    background-color: var(--tc-neutral-200);
    border-radius: 13px;
    overflow: hidden;
}

.wp-block-quote.is-large:where(:not(.is-style-plain)),
.wp-block-quote.is-style-large:where(:not(.is-style-plain)) {
    margin-bottom: 1em;
    padding: 25px 25px 25px 100px;
}

.single-content blockquote::before,
blockquote.post-blockquote::before {
    content: "";
    position: absolute;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="49" height="36" viewBox="0 0 49 36" class="fill-primary-light changeless opacity-20 absolute top-8 left-0"><path d="M10.5 0.5C16.2969 0.5 21 5.20312 21 11V21.5C21 29.2656 14.6562 35.5 7 35.5C5.03125 35.5 3.5 33.9688 3.5 32C3.5 30.1406 5.03125 28.5 7 28.5C10.8281 28.5 14 25.4375 14 21.5V20.9531C12.7969 21.2812 11.7031 21.5 10.5 21.5C4.59375 21.5 0 16.9062 0 11C0 5.20312 4.59375 0.5 10.5 0.5ZM49 11V21.5C49 29.2656 42.6562 35.5 35 35.5C33.0312 35.5 31.5 33.9688 31.5 32C31.5 30.1406 33.0312 28.5 35 28.5C38.8281 28.5 42 25.4375 42 21.5V20.9531C40.7969 21.2812 39.7031 21.5 38.5 21.5C32.5938 21.5 28 16.9062 28 11C28 5.20312 32.5938 0.5 38.5 0.5C44.2969 0.5 49 5.20312 49 11Z" fill="%23FFCF01"></path></svg>');
    opacity: 1;
    top: 20px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    left: 20px;
    width: 50px;
    height: 50px;
}

.single-content blockquote p,
blockquote.post-blockquote p {
    font-size: 1.675rem;
    color: var(--tc-neutral-950);
}

blockquote.post-blockquote p.fs-8 {
    font-size: 1rem;
}

.single-content h1,
.single-content h2,
.single-content h3,
.single-content h4,
.single-content h5,
.single-content h6 {
    color: var(--tc-neutral-950);
}

.single-content h1 {
    font-size: 1.875rem;
}

.single-content h2 {
    font-size: 1.625rem;
}

.single-content h3 {
    font-size: 1.25rem;
}

.single-content h4 {
    font-size: 1.125rem;
}

.single-content h5 {
    font-size: 1rem;
}

.single-content h6 {
    font-size: 0.875rem;
}

.single-content cite,
caption {
    font-size: 0.75rem;
}


.single-content table,
.single-content .wp-block-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 0;
    text-align: left;
}



.single-content table th,
.single-content .wp-block-table th,
.single-content table td,
.single-content .wp-block-table td {
    padding: 0.75rem;
    vertical-align: middle;
    border: none;
    border-top: 1px solid var(--tc-neutral-500);
}

.single-content table th,
.single-content .wp-block-table th,
.single-content table td,
.single-content .wp-block-table td {
    border: 1px solid var(--tc-neutral-500);
}

.single-content pre,
.single-content code {
    background-color: var(--tc-neutral-200);
}

.single-content ul,
.single-content ol {
    padding-left: 24px;
    margin-left: 0;
    list-style-position: inside;
}

.single-content ul li,
.single-content ol li {
    margin: 6px 0;
}

.single-content p img {
    max-width: 100%;
    height: auto;
}

.single-content pre {
    padding: 20px;
    border-radius: 26px;
    overflow: hidden;
}

.aligncenter {
    clear: both;
    margin: 0 auto;
    text-align: center;
    display: block;
}

.alignleft {
    float: left;
    margin-right: 15px;
}

.alignright {
    float: right;
    margin-left: 15px;
}

.alignfull {
    clear: both;
}

.alignwide {
    clear: both;
}

.alignfull,
.alignwide {
    max-width: none;
}

.swiper-button-next,
.swiper-button-prev {
    width: 30px !important;
    height: 30px !important;
    line-height: 30px !important;
    font-size: 10px !important;
}

.swiper-pagination-bullet {
    opacity: 1 !important;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
    right: -20px !important;
    text-align: center !important;
    padding-right: 0 !important;
    width: 40px !important;
}