/*---------------------------------------
    Theme Name: 
    Description: 
    Author Name: 
    Author URI:  
    Theme URI: 
    Version: 1.0
-----------------------------------------
    Table of contents
-----------------------------------------
    1 Base Style
        1.1 Functions
        1.2 Variables
        1.3 Mixins
        1.4 Global
    2 Modules Style
        2.1 Hero
        2.2 Header
        2.3 Logo
        2.4 List
        2.5 Nav
        2.6 Primary Nav
        2.7 Nav Toggler
        2.8 Nice Select
        2.9 Form Control
        2.10 Primary Submenu Toggler
        2.11 Preloader
        2.12 Back To Top
        2.13 Button Style
        2.15 Section 
    3 Theme Style
        3.1 Color
        3.2 Background
        3.3 Padding
        3.4 Margin
        3.5 Utility Classes
        3.6 Animation
    4. Layouts Style
        4.1 Course Section
        4.2 Feedback Section
        4.3 CTA Section
        4.4 Footer 1
        4.5 Service Section

/*---------------------------------------
    0.1 Base Style
-----------------------------------------*/
/*---------------------------------------
    1. Global
-----------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=DM+Serif+Display&display=swap");

:root {
    --heading-font: "DM Sans", sans-serif;
    --body-font: "DM Sans", sans-serif;
    --style-font: "DM Serif Display", serif;
    --d1: clamp(3.5rem, 6vw + 1rem, 8rem);
    --h1: clamp(2.8125rem, 4vw + 1rem, 4.209rem);
    --h2: clamp(2.0625rem, 3vw + 1rem, 3.1575rem);
    --h3: clamp(1.875rem, 2.7vw + 1rem, 2.369rem);
    --h4: clamp(1.4rem, 2vw + 1rem, 1.777rem);
    --h5: 1.333rem;
    --h6: 1rem;
    --base-h: 249;
    --base-s: 100%;
    --base-l: 67%;
    --base: var(--base-h) var(--base-s) var(--base-l);
    --accent-h: 250;
    --accent-s: 60%;
    --accent-l: 53%;
    --accent: var(--accent-h) var(--accent-s) var(--accent-l);
    --light-h: 240;
    --light-s: 100%;
    --light-l: 98%;
    --light: var(--light-h) var(--light-s) var(--light-l);
    --light-200: var(--light-h) var(--light-s) calc(var(--light-l) - 2%);
    --light-300: calc(var(--light-h) - 18) var(--light-s) calc(var(--light-l) - 7%);
    --dark-h: 237;
    --dark-s: 57%;
    --dark-l: 15%;
    --dark: var(--dark-h) var(--dark-s) var(--dark-l);
    --dark-100: var(--dark-h) calc(var(--dark-s) - 7%) calc(var(--dark-l) + 15%);
    --dark-200: var(--dark-h) calc(var(--dark-s) - 7%) calc(var(--dark-l) + 10%);
    --dark-300: var(--dark-h) calc(var(--dark-s) - 7%) calc(var(--dark-l) + 8%);
    --dark-400: var(--dark-h) calc(var(--dark-s) - 7%) calc(var(--dark-l) + 5%);
    --dark-500: var(--dark-h) var(--dark-s) calc(var(--dark-l) - 2%);
    --dark-600: var(--dark-h) var(--dark-s) calc(var(--dark-l) - 4%);
    --dark-700: var(--dark-h) var(--dark-s) calc(var(--dark-l) - 6%);
    --dark-800: var(--dark-h) var(--dark-s) calc(var(--dark-l) - 8%);
    --black-h: 0;
    --black-s: 0%;
    --black-l: 0%;
    --black: var(--black-h) var(--black-s) var(--black-l);
    --white: 0 0% 100%;
    --primary: 204 88% 44%;
    --secondary: 208 23% 55%;
    --success: 161 74% 48%;
    --success-light: 160 69% 95%;
    --danger: 356 76% 55%;
    --danger-light: 356 97% 84%;
    --warning: 24 97% 54%;
    --warning-light: 23 100% 95%;
    --info: 190 76% 40%;
    --gradient-1: linear-gradient(120deg, hsl(var(--success)), hsl(var(--base)));
    --gradient-2: linear-gradient(120deg, hsl(var(--base)), hsl(var(--danger-light)));
    --gradient-3: linear-gradient(120deg, hsl(var(--base)), hsl(var(--info)));
    --gradient-4: linear-gradient(120deg, hsl(var(--success)), hsl(var(--info)));
    --gradient-5: linear-gradient(120deg, hsl(var(--warning)), hsl(var(--base)));
    --text: var(--black);
    --heading: var(--black);
    --border: 0 0% 88%;
}

html {
    font-size: 100%;
    scroll-behavior: smooth;
}

body {
    position: relative;
    background: hsl(var(--white));
    font-family: var(--body-font);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.75;
    color: hsl(var(--text));
}

p {
    margin-bottom: 1rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 1.5rem 0 1rem;
    font-family: var(--heading-font);
    font-weight: 700;
    line-height: 1.2;
    color: hsl(var(--heading));
}

h1 {
    margin-top: 0;
    font-size: var(--h1);
}

h2 {
    font-size: var(--h2);
}

h3 {
    font-size: var(--h3);
}

h4 {
    font-size: var(--h4);
}

h5 {
    font-size: var(--h5);
}

h6 {
    font-size: var(--h6);
    letter-spacing: 0.05em;
}

.xsm-text {
    font-size: 0.75rem;
}

small,
.sm-text {
    font-size: 0.875rem;
}

.lg-text {
    font-size: 1.125rem;
}

.xl-text {
    font-size: 1.25rem;
}

.xxl-text {
    font-size: 1.5rem;
}

.fw-regular {
    font-weight: 400;
}

.fw-md {
    font-weight: 500;
}

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

.hr {
    background-color: hsl(var(--base));
}

button:focus {
    outline: none !important;
}

.btn:focus,
.btn.focus {
    outline: none;
    box-shadow: none;
}

input:focus {
    outline: none;
}

.form-control {
    border: 1px solid hsl(var(--border));
}

textarea {
    resize: none;
}

@media screen and (min-width: 1600px) {
    .container-restricted {
        max-width: 1540px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

/*---------------------------------------
    0.2 Modules Style
-----------------------------------------*/
/*---------------------------------------
    Hero
-----------------------------------------*/
.hero {
    display: flex;
    flex-direction: column;
    position: relative;
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-image: url(../images/hero.png);
    z-index: 2;
}

@media screen and (min-width: 1200px) {
    .hero {
        min-height: 100vh;
    }
}

.hero__img {
    position: relative;
    text-align: center;
}

@media screen and (min-width: 1200px) {
    .hero__img-is {
        max-width: 650px;
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        filter: drop-shadow(0px 5px 150px hsl(var(--base) / .6));
    }
}


@media screen and (min-width: 1920px) {
    .hero__img-is {
        max-width: 900px;
        filter: drop-shadow(0px 5px 150px hsl(var(--base) / .6));
    }
}

.hero__content {
    padding-top: 100px;
    padding-bottom: 80px;
    margin-top: auto;
    margin-bottom: auto;
}

@media screen and (min-width: 1200px) {
    .hero__content {
        margin-top: 0;
    }
}

.hero__content-title {
    font-size: 47px;
    color: hsl(var(--white));
}

.hero__content-para {
    max-width: 35ch;
    font-size: 1.2rem;
    color: hsl(var(--white));
}

.hero__btn-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
}

.hero__elements {
    display: none;
    position: absolute;
    inset: 0;
    z-index: -1;
}

@media screen and (min-width: 1200px) {
    .hero__elements {
        display: block;
    }
}

.hero__elements-img {
    position: absolute;
}

.hero__elements-img-1 {
    left: 3%;
    bottom: 5%;
    animation: topRight 15s infinite linear;
}

@media screen and (min-width: 1920px) {
    .hero__elements-img-1 {
        opacity: 0.5;
    }
}

.hero__elements-img-2 {
    right: 15%;
    bottom: 2.5%;
}

.hero__elements-img-3 {
    right: 3%;
    bottom: 7%;
    opacity: 0.5;
    animation: rotates 20s infinite linear;
}

.hero__elements-img-4 {
    left: 5%;
    top: 20%;
    opacity: 0.5;
    animation: circlerotate 20s infinite linear;
}

.hero__elements-img-5 {
    left: 15%;
    top: 40%;
    opacity: 0.5;
    animation: topLeft 20s infinite linear;
}

.hero__elements-img-6 {
    right: 15%;
    top: 15%;
    opacity: 0.8;
    animation: circlerotate 30s infinite linear;
}

/*---------------------------------------
    Header Priamry
-----------------------------------------*/
.header-primary {
    width: 100%;
    padding-top: 8px;
    padding-bottom: 8px;
    z-index: 19;
}

.header-primary--sticky {
    position: sticky;
    top: 0;
    background: hsl(var(--dark));
}

.header-primary--fixed {
    position: absolute;
    transition: all 0.3s ease;
}

@media screen and (min-width: 992px) {
    .header-primary__content {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
    }
}

/*---------------------------------------
    Logo
-----------------------------------------*/
.logo {
    display: flex;
    align-items: center;
    max-width: 140px;
    height: 40px;
    font-size: 24px;
    text-transform: capitalize;
    font-family: var(--heading-font);
    font-weight: 700;
    color: hsl(var(--white));
    letter-spacing: 0.03em;
}

.logo:hover {
    color: hsl(var(--white));
}

@media screen and (min-width: 992px) {
    .logo {
        max-width: 200px;
    }
}

.logo__is {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*---------------------------------------
    List
-----------------------------------------*/
.list {
    display: flex;
    flex-direction: column;
    gap: var(--gap, 1rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

.list--row {
    flex-direction: row;
}

.list--base>li {
    position: relative;
    display: flex;
    align-items: center;
}

.list--base>li::before {
    content: "";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 10px;
    height: 10px;
    line-height: 10px;
    border-radius: 50%;
    margin-right: 15px;
    background: hsl(var(--base));
    box-shadow: 0 0 0 5px hsl(var(--base)/0.2);
}

/*---------------------------------------
    Nav
-----------------------------------------*/
.nav-container {
    position: relative;
    background: hsl(var(--white));
    border-radius: 5px;
}

@media screen and (min-width: 992px) {
    .nav-container {
        border-radius: 0;
        background: transparent;
    }
}

/*---------------------------------------
    Primary Menu
-----------------------------------------*/
.primary-menu {
    gap: 0;
}

@media screen and (min-width: 992px) {
    .primary-menu {
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: wrap;
        gap: 0.5rem;
    }
}

.primary-menu>li {
    border-bottom: 1px solid hsl(var(--dark)/0.1);
}

@media screen and (min-width: 992px) {
    .primary-menu>li {
        border-bottom: none;
    }
}

.primary-menu>li:last-child {
    border-bottom: none;
}

@media screen and (min-width: 992px) {
    .primary-menu>li.has-sub {
        position: relative;
    }

    .primary-menu>li.has-sub:hover .primary-menu__sub {
        visibility: visible;
        opacity: 1;
        top: 100%;
    }
}

.primary-menu>li.has-sub .primary-menu__link {
    position: relative;
}

.primary-menu>li.has-sub .primary-menu__link::after {
    content: "\f107";
    position: absolute;
    font-family: "Line Awesome Free";
    font-weight: 900;
    line-height: 1;
    top: 50%;
    right: -6px;
    transform: translateY(-50%);
    font-size: 12px;
    transition: all 0.3s ease;
}

.primary-menu>li.has-sub .primary-menu__link.active::after {
    content: "\f106";
}

.primary-menu__link {
    display: block;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-left: 15px;
    margin-right: 15px;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 14px;
    color: hsl(var(--dark));
}

@media screen and (min-width: 992px) {
    .primary-menu__link {
        color: hsl(var(--white)/0.8);
        margin-left: 0;
        margin-right: 0;
        font-weight: 500;
        border-bottom: none;
        padding: 15px;
        font-size: 16px;
    }
}

.primary-menu__link:hover {
    color: hsl(var(--base));
    text-decoration: none;
}

@media screen and (min-width: 992px) {
    .primary-menu__link:hover {
        color: hsl(var(--white));
    }
}

.primary-menu__link.active {
    color: hsl(var(--base));
}

.primary-menu__sub {
    list-style: none;
    padding: 0;
    margin-left: 15px;
    margin-right: 15px;
    display: none;
}

@media screen and (min-width: 992px) {
    .primary-menu__sub {
        display: block !important;
        height: max-content !important;
        visibility: hidden;
        opacity: 0;
        transition: all 0.3s ease;
        min-width: 220px;
        padding: 15px;
        position: absolute;
        left: 50%;
        top: calc(100% + 20px);
        transform: translateX(-50%);
        margin-left: 0;
        margin-right: 0;
        background-color: hsl(var(--white));
        border-radius: 5px;
        box-shadow: 0 5px 15px hsl(var(--dark)/0.4);
    }

    .primary-menu__sub::after {
        content: "";
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 10px solid transparent;
        border-bottom: 10px solid hsl(var(--white));
        position: absolute;
        top: -20px;
        left: 50%;
        transform: translateX(-50%);
    }
}

.primary-menu__sub>li:first-child .primary-menu__sub-link {
    padding-top: 0;
}

@media screen and (min-width: 992px) {
    .primary-menu__sub>li:first-child .primary-menu__sub-link {
        padding-top: 8px;
    }
}

.primary-menu__sub>li:last-child .primary-menu__sub-link {
    padding-bottom: 5px;
}

@media screen and (min-width: 992px) {
    .primary-menu__sub>li:last-child .primary-menu__sub-link {
        padding-bottom: 8px;
    }
}

.primary-menu__sub-link {
    display: block;
    padding-top: 5px;
    padding-left: 15px;
    padding-right: 15px;
    color: hsl(var(--dark));
    transition: all 0.3s ease;
    position: relative;
    font-size: 13px;
}

@media screen and (min-width: 992px) {
    .primary-menu__sub-link {
        padding-top: 8px;
        padding-bottom: 8px;
        border-radius: 3px !important;
        background-color: hsl(var(--white));
        color: hsl(var(--dark));
        text-align: center;
        font-size: 14px;
    }
}

.primary-menu__sub-link:hover {
    color: hsl(var(--base));
}

@media screen and (min-width: 992px) {
    .primary-menu__sub-link:hover {
        color: hsl(var(--white));
        background-color: hsl(var(--base));
    }
}

/*---------------------------------------
    Nav Toggler
-----------------------------------------*/
.navbar-toggler {
    padding: 0;
    border: none;
}

.navbar-toggler:focus {
    outline: none;
    box-shadow: none;
}

.navbar-toggler[aria-expanded=true] .menu-toggle {
    border-color: transparent;
}

.navbar-toggler[aria-expanded=true] .menu-toggle::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.navbar-toggler[aria-expanded=true] .menu-toggle::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

/*---------------------------------------
    Form Control
-----------------------------------------*/
.form--control {
    height: 45px;
    line-height: 32px;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 500;
    border: 1px solid hsl(var(--border)/0.3);
    background: hsl(var(--light)/0.3);
    color: hsl(var(--heading));
    transition: all 0.3s ease;
}

.form--control::placeholder {
    color: hsl(var(--dark));
}

.form--control:focus {
    outline: none;
    border: 1px solid hsl(var(--border)/0.3);
    background: hsl(var(--light)/0.3);
    color: hsl(var(--heading));
    box-shadow: none;
}

.form--control:-webkit-autofill {
    -webkit-text-fill-color: hsl(var(--heading)) !important;
    -webkit-box-shadow: 0 0 0px 1000px hsl(var(--light)/0.3) inset;
}

.form--control[readonly] {
    background: hsl(var(--dark)/0.1);
    border: 1px solid hsl(var(--dark)/0.05);
    color: hsl(var(--dark-400));
}

.form--control[readonly]::placeholder {
    color: hsl(var(--dark-400)/0.5);
}

.form--control[disabled] {
    background: hsl(var(--dark)/0.1);
    border: 1px solid hsl(var(--dark)/0.05);
    color: hsl(var(--dark-400));
}

.form--control[disabled]::placeholder {
    color: hsl(var(--dark-400)/0.5);
}

.form--control[type=file]::-webkit-file-upload-button {
    background: hsl(var(--base)) !important;
    color: hsl(var(--dark)) !important;
}

textarea.form--control {
    height: auto;
    line-height: normal;
    padding-top: 15px;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 500;
    border: 1px solid hsl(var(--border)/0.3);
    background: hsl(var(--light)/0.3);
    color: hsl(var(--heading));
    transition: all 0.3s ease;
}

textarea.form--control::placeholder {
    color: hsl(var(--dark-400)/0.5);
}

textarea.form--control:focus {
    outline: none;
    border: 1px solid hsl(var(--border)/0.3);
    background: hsl(var(--light)/0.3);
    color: hsl(var(--dark));
    box-shadow: none;
}

/*---------------------------------------
    Preloader
-----------------------------------------*/
.preloader {
    position: relative;
    display: grid;
    place-items: center;
    height: 100vh;
    background-color: hsl(var(--dark));
    position: fixed;
    inset: 0;
    z-index: 9999;
}

.preloader__img {
    width: 80px;
    height: 80px;
    animation: imageBeat 2s infinite ease;
}

.preloader__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*---------------------------------------
    Back To Top
-----------------------------------------*/
.back-to-top {
    position: fixed;
    right: 30px;
    bottom: 15px;
    width: 40px;
    height: 40px;
    background-color: hsl(var(--base));
    color: hsl(var(--white));
    text-align: center;
    line-height: 40px;
    border-radius: 50%;
    z-index: 99;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 0 5px hsl(var(--black)/0.5);
    display: none;
}

/*---------------------------------------
    Button Style
-----------------------------------------*/
.btn {
    font-family: var(--heading-font);
    font-weight: 500;
    transition: all 0.3s ease;
    border-radius: 3px;
    flex-shrink: 0;
}

.btn:hover {
    box-shadow: 0 3px 6px hsl(var(--dark)/0.05);
}

.btn--primary {
    background: hsl(var(--primary));
    color: hsl(var(--white));
}

.btn--primary:hover {
    color: hsl(var(--white));
    background: hsl(var(--primary));
}

.btn--secondary {
    background: hsl(var(--secondary));
    color: hsl(var(--white));
}

.btn--secondary:hover {
    color: hsl(var(--white));
    background: hsl(var(--secondary));
}

.btn--success {
    font-weight: 700;
    background: hsl(var(--success));
    color: hsl(var(--dark));
}

.btn--success:hover {
    border: 1px solid transparent;
    background: hsl(var(--success));
    color: hsl(var(--dark));
}

.btn--success:focus {
    border: 1px solid transparent;
    background: hsl(var(--success));
    color: hsl(var(--dark));
}

.btn--success:action {
    border: 1px solid transparent;
    background: hsl(var(--success));
    color: hsl(var(--dark));
}

.btn--danger {
    background: hsl(var(--danger));
    color: hsl(var(--white));
}

.btn--danger:hover {
    color: hsl(var(--white));
    background: hsl(var(--danger));
}

.btn--warning {
    background: hsl(var(--warning));
    color: hsl(var(--white));
}

.btn--warning:hover {
    color: hsl(var(--white));
    background: hsl(var(--warning));
}

.btn--info {
    background: hsl(var(--info));
    color: hsl(var(--white));
}

.btn--info:hover {
    color: hsl(var(--white));
    background: hsl(var(--info));
}

.btn--dark {
    background: hsl(var(--dark));
    color: hsl(var(--white));
}

.btn--dark:hover {
    color: hsl(var(--white));
    background: hsl(var(--dark));
}

.btn--light {
    border: none;
    border-radius: 5px;
    background-color: hsl(var(--light));
    color: hsl(var(--dark));
}

.btn--light:hover {
    color: hsl(var(--base));
    background-color: hsl(var(--light));
}

.btn--light:focus {
    color: hsl(var(--base));
    background-color: hsl(var(--light));
}

.btn--base {
    overflow: hidden;
    position: relative;
    isolation: isolate;
    background: hsl(var(--base));
    font-weight: 700;
    color: hsl(var(--light));
}

.btn--base:hover {
    border: 1px solid transparent;
    background: hsl(var(--base));
    color: hsl(var(--light));
}

.btn--base:focus {
    border: 1px solid transparent;
    background: hsl(var(--base));
    color: hsl(var(--light));
}

.btn--base:action {
    border: 1px solid transparent;
    background: hsl(var(--base));
    color: hsl(var(--light));
}

.btn--sqr {
    line-height: 1;
    padding: 0.75rem;
    font-size: 20px;
}

.btn--sm {
    padding: 0.5rem 1rem;
}

.btn--md {
    padding: 0.5rem 1.5rem;
}

.btn--lg {
    padding: 0.625rem 1.25rem;
}

.btn--xl {
    padding: 0.75rem 1.5rem;
}

.btn--xxl {
    padding: 1rem 2rem;
}

/*---------------------------------------
    Section 
-----------------------------------------*/
.section {
    padding-top: clamp(60px, 8vw, 120px);
    padding-bottom: clamp(60px, 8vw, 120px);
}

.section--sm {
    padding-top: clamp(30px, 4vw, 60px);
    padding-bottom: clamp(30px, 4vw, 60px);
}

.section--top {
    padding-top: clamp(60px, 8vw, 120px);
}

.section--bottom {
    padding-bottom: clamp(60px, 8vw, 120px);
}

.section__head {
    padding-bottom: clamp(30px, 4vw, 60px);
}

.section__para {
    max-width: 60ch;
}

.section__subtitle {
    display: inline-block;
    position: relative;
    font-weight: 700;
    letter-spacing: 0.1em;
    font-family: var(--heading-font);
    color: hsl(var(--base));
}

@media screen and (min-width: 1366px) {
    .section__shrink-content {
        padding-left: 70px;
    }
}

@media screen and (min-width: 1366px) {
    .section__shrink-content-alt {
        padding-right: 70px;
    }
}

/*---------------------------------------
    Icon
-----------------------------------------*/
.icon {
    position: relative;
    display: grid;
    place-items: center;
}

.icon--circle {
    border-radius: 50%;
    text-align: center;
}

.icon--sqr {
    border-radius: 5px;
    text-align: center;
}

.icon--xs {
    width: 40px;
    height: 40px;
    font-size: 16px;
}

.icon--sm {
    width: 45px;
    height: 45px;
    font-size: 18px;
}

.icon--md {
    width: 50px;
    height: 50px;
    font-size: 20px;
}

.icon--lg {
    width: 60px;
    height: 60px;
    font-size: 24px;
}

.icon--xl {
    width: 70px;
    height: 70px;
    font-size: 28px;
}

.icon--xxl {
    width: 80px;
    height: 80px;
    font-size: 34px;
}

/*---------------------------------------
    Search Popup
-----------------------------------------*/
.search-popup.active .search-form {
    visibility: visible;
    opacity: 1;
    z-index: 9999;
}

.search--toggler {
    font-size: 23px;
    line-height: 1;
}

.search-popup .search-form {
    min-width: 90%;
    position: absolute;
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -o-transition: 0.5s ease;
    transition: 0.5s ease;
    visibility: hidden;
    opacity: 0;
    -ms-transform: translate(-50%, -50%);
    /* IE 9 */
    -webkit-transform: translate(-50%, -50%);
    /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
    .search-popup .search-form {
        min-width: 50%;
    }
}

@media screen and (min-width: 1200px) {
    .search-popup .search-form {
        min-width: 40%;
    }
}

.search-popup .search-form .form-group .form-control {
    border: none;
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
    height: 55px;
    padding: 0 100px 0 30px;
}

.search-popup .search-form .submit-btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    height: 55px;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    background-color: hsl(var(--base));
    transition: all 0.3s ease;
    padding: 0;
    text-align: center;
    border: 0;
    color: hsl(var(--white));
}

.search-popup .search-form .submit-btn:hover {
    background: hsl(var(--accent));
    cursor: pointer;
}

.body-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    display: block;
    background-color: hsl(var(--black)/0.6);
    z-index: 9998;
    content: "";
    left: 0;
    top: 0;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.3s ease-in;
    -moz-transition: all 0.3s ease-in;
    -o-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in;
    cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVBAMAAABbObilAAAAMFBMVEVMaXH////////////////////////////////////////////////////////////6w4mEAAAAD3RSTlMAlAX+BKLcA5+b6hJ7foD4ZP1OAAAAkUlEQVR4XkWPoQ3CUBQAL4SktoKAbCUjgAKLJZ2ABYosngTJCHSD6joUI6BZgqSoB/+Shqde7sS9x3OGk81fdO+texMtRVTia+TsQtHEUJLdohJfgNNPJHyEJPZTsWLoxShqsWITazEwqePAn69Sw2TUxk1+euPis3EwaXy8RMHSZBIlRcKKnC5hRctjMf57/wJbBlAIs9k1BAAAAABJRU5ErkJggg==), progress;
}

.body-overlay.active {
    visibility: visible;
    opacity: 0.8;
}

/*---------------------------------------
    Widget
-----------------------------------------*/
.widget {
    padding: 30px 15px;
    border-radius: 15px;
    border-top: 4px solid hsl(var(--base));
    border-bottom: 4px solid hsl(var(--base));
    background-color: hsl(var(--accent));
    box-shadow: 0 15px 30px hsl(var(--black)/0.2);
}

@media screen and (min-width: 1400px) {
    .widget {
        padding: 40px 30px;
    }
}

.widget__title {
    margin-top: 0;
}

.widget__link {
    color: hsl(var(--base));
}

.widget__link:hover {
    color: hsl(var(--accent));
}

.widget-alt__head {
    padding: 15px 30px;
    border-radius: 5px 5px 0 0;
    background: hsl(var(--primary));
}

.widget-alt__body {
    background: hsl(var(--light));
    padding: 15px 30px;
}

/*---------------------------------------
    Widget Category
-----------------------------------------*/
.widget-category__item {
    border-bottom: 1px dashed hsl(var(--base));
}

.widget-category__item:last-child {
    border-bottom: none;
}

.widget-category__item:last-child .vh-widget-category__link {
    padding-bottom: 0;
}

.widget-category__link {
    display: inline-block;
    padding-bottom: 1rem;
    color: hsl(var(--text));
    transition: all 0.3s ease;
}

.widget-category__link:hover {
    color: hsl(var(--base));
}

/*---------------------------------------
    User
-----------------------------------------*/
.user {
    display: flex;
}

.user__img {
    flex-shrink: 0;
    border-radius: 50%;
    overflow: hidden;
}

.user__img--sm {
    width: 35px;
    height: 35px;
}

.user__img--md {
    width: 45px;
    height: 45px;
}

.user__img--lg {
    width: 50px;
    height: 50px;
}

.user__img--xl {
    width: 70px;
    height: 70px;
}

.user__img--xxl {
    width: 130px;
    height: 130px;
}

.user__img-is {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/*---------------------------------------
    Banner
-----------------------------------------*/
.banner {
    display: flex;
    flex-direction: column;
    position: relative;
    isolation: isolate;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.banner::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: hsl(var(--black)/0.5);
    mix-blend-mode: darken;
    z-index: -1;
}

.banner__content {
    padding-top: clamp(140px, 12vw, 170px);
    padding-bottom: clamp(80px, 8vw, 100px);
    margin-top: auto;
    margin-bottom: auto;
}

/*---------------------------------------
    Table
-----------------------------------------*/
/* table css start */
.custom--table {
    margin-bottom: 0;
    border-radius: 10px;
    box-shadow: 0 5px 10px hsl(var(--black)/0.1);
    background: hsl(var(--light));
}

.custom--table> :not(:first-child) {
    border-top: none;
}

.custom--table> :not(caption)>*>* {
    border-bottom-width: 0;
}

.custom--table thead {
    background-color: hsl(var(--base));
}

.custom--table thead th {
    padding: 0.75rem 1.25rem;
    font-family: var(--heading-font);
    color: hsl(var(--white));
    text-transform: uppercase;
    text-align: center;
    font-weight: 500;
    vertical-align: middle;
}

.custom--table thead th:first-child {
    border-radius: 10px 0 0 0;
    text-align: left;
}

.custom--table thead th:last-child {
    border-radius: 0 10px 0 0;
    text-align: right;
}

.custom--table tbody td {
    border-top: none;
    border-bottom: 1px solid hsl(var(--base)/0.2);
    padding: 15px 20px;
    font-family: var(--heading-font);
    color: hsl(var(--heading));
    text-align: center;
    vertical-align: middle;
}

.custom--table tbody td:first-child {
    text-align: left;
}

.custom--table tbody td:last-child {
    text-align: right;
}

.custom--table tbody tr:last-child td {
    border-bottom: none;
}

.custom--table [data-label] {
    position: relative;
}

.custom--table [data-label]::before {
    position: absolute;
    content: attr(data-label);
    font-weight: 500;
    left: 0;
    padding: 0.8125rem 0.9375rem;
    display: none;
    color: hsl(var(--heading));
}

@media (max-width: 991px) {
    .table-responsive--md thead {
        display: none;
    }

    .table-responsive--md tbody tr:nth-child(odd) {
        background-color: hsl(var(--white));
    }

    .table-responsive--md tbody tr:last-child td {
        border-top: 1px solid hsl(var(--base)/0.2);
    }

    .table-responsive--md tbody tr td {
        padding-right: 15px;
    }

    .table-responsive--md tbody tr td:last-child {
        padding-right: 15px;
    }

    .table-responsive--md tr th,
    .table-responsive--md tr td {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        padding-left: 45% !important;
        text-align: right !important;
    }

    .table-responsive--md tr th:first-child,
    .table-responsive--md tr td:first-child {
        border-top: none !important;
    }

    .table-responsive--md [data-label]::before {
        display: block;
        color: hsl(var(--black));
    }
}

@media (max-width: 767px) {
    .table-responsive--sm thead {
        display: none;
    }

    .table-responsive--sm tbody tr:nth-child(odd) {
        background-color: hsl(var(--accent));
    }

    .table-responsive--sm tbody tr td {
        padding-right: 15px;
    }

    .table-responsive--sm tbody tr td:last-child {
        padding-right: 15px;
    }

    .table-responsive--sm tr th,
    .table-responsive--sm tr td {
        display: block;
        padding-left: 45% !important;
        text-align: right !important;
        border-bottom: 1px solid hsl(var(--base)/0.25);
    }

    .table-responsive--sm tr th:first-child,
    .table-responsive--sm tr td:first-child {
        border-top: none !important;
    }

    .table-responsive--sm [data-label]::before {
        display: block;
    }
}

/* table css end */
/*---------------------------------------
    Accordion
-----------------------------------------*/
.custom--accordion .accordion-header {
    margin-top: 0;
}

.custom--accordion .accordion-item {
    border-radius: 0 !important;
    margin-bottom: 5px;
    background: transparent;
    color: hsl(var(--text));
    border: 0;
}

.custom--accordion .accordion-item:last-child {
    margin-bottom: 0;
}

.custom--accordion .accordion-button {
    padding: 12px 20px;
    border-radius: 3px;
    border: 1px solid hsl(var(--border)/0.5);
    background: hsl(var(--white));
    color: hsl(var(--heading));
    font-family: var(--body-font);
    font-size: 16px;
    font-weight: 500;
}

.custom--accordion .accordion-button:focus {
    border-color: hsl(var(--border));
    box-shadow: none;
}

.custom--accordion .accordion-button[aria-expanded=true]::after {
    content: "\f068";
}

.custom--accordion .accordion-button[aria-expanded=false]::after {
    content: "\f067";
}

.custom--accordion .accordion-button::after {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-image: initial !important;
    transform: rotate(0deg) !important;
    font-family: "Line Awesome Free";
    font-weight: 900;
    font-size: 18px;
    color: hsl(var(--base));
    line-height: 1;
}

.custom--accordion .accordion-button:not(.collapsed) {
    border: 1px solid hsl(var(--border)/0.5);
    background-color: hsl(var(--white));
    background-image: initial !important;
    box-shadow: inset 0 0 0 transparent !important;
    color: hsl(var(--heading));
}

.custom--accordion .accordion-button:not(.collapsed)::after {
    color: hsl(var(--base));
}

.custom--accordion .accordion-body {
    margin-top: 5px;
    border-radius: 5px;
    border: 1px solid hsl(var(--border)/0.5);
    background: hsl(var(--white));
    color: hsl(var(--text));
}

/*---------------------------------------
    Badge
-----------------------------------------*/
.badge {
    border-radius: 2px;
}

.badge--primary {
    background: hsl(var(--primary)/0.15);
    border: 1px solid hsl(var(--primary));
    color: hsl(var(--primary));
}

.badge--secondary {
    background: hsl(var(--secondary)/0.15);
    border: 1px solid hsl(var(--secondary));
    color: hsl(var(--secondary));
}

.badge--danger {
    background: hsl(var(--danger)/0.15);
    border: 1px solid hsl(var(--danger));
    color: hsl(var(--danger));
}

.badge--success {
    background: hsl(var(--success)/0.15);
    border: 1px solid hsl(var(--success));
    color: hsl(var(--success));
}

.badge--warning {
    background: hsl(var(--warning)/0.15);
    border: 1px solid hsl(var(--warning));
    color: hsl(var(--warning));
}

.badge--info {
    background: hsl(var(--info)/0.15);
    border: 1px solid hsl(var(--info));
    color: hsl(var(--info));
}

.badge--dark {
    background: hsl(var(--dark)/0.15);
    border: 1px solid hsl(var(--dark));
    color: hsl(var(--dark));
}

/*---------------------------------------
    Form Select
-----------------------------------------*/
.form--select {
    position: relative;
    isolation: isolate;
}

.form--select::before {
    content: "\f107";
    font-family: "Line Awesome Free";
    font-weight: 900;
    color: hsl(var(--dark));
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    height: 100%;
    background: hsl(var(--base));
    display: grid;
    place-items: center;
    padding-inline: 15px;
    border-radius: 0 0.25rem 0.25rem 0;
    pointer-events: none;
    z-index: 1;
}

.form--select .form-select {
    height: 45px;
    border-radius: 3px;
    padding-right: 46px;
    font-size: 0.875rem;
    font-weight: 500;
    border: 1px solid hsl(var(--border)/0.3);
    background: hsl(var(--light)/0.3);
    color: hsl(var(--heading));
}

.form--select .form-select:focus {
    outline: none;
    border: 1px solid hsl(var(--border)/0.3);
    background: hsl(var(--light)/0.3);
    color: hsl(var(--heading));
    box-shadow: none;
}

/*---------------------------------------
    Custom Check
-----------------------------------------*/
.custom--check {
    border-radius: 1px !important;
    border: 1px solid hsl(var(--border));
    background: hsl(var(--light));
}

.custom--check:checked {
    background-color: hsl(var(--base));
    border: 1px solid hsl(var(--base)/0.5);
}

.custom--check:focus {
    border: 1px solid hsl(var(--base)/0.5);
    box-shadow: none;
}

/*---------------------------------------
    Breadcrumbs
-----------------------------------------*/
.breadcrumbs {
    align-items: center;
}

.breadcrumbs__item {
    display: flex;
    align-items: center;
    position: relative;
}

.breadcrumbs__item::after {
    content: "";
    position: relative;
    display: inline-block;
    right: -1rem;
    height: 16px;
    width: 2px;
    background-color: hsl(var(--white));
    transform: skew(-25deg);
}

.breadcrumbs__item:last-child {
    margin-right: 0;
}

.breadcrumbs__item:last-child::after {
    display: none;
}

.breadcrumbs__link {
    color: hsl(var(--white));
}

.breadcrumbs__link:hover {
    color: hsl(var(--base));
}

/*---------------------------------------
    Custom Pagination
-----------------------------------------*/
.pagination {
    margin-bottom: 0;
}

.pagination .page-item {
    margin-right: 1rem;
}

.pagination .page-item.active .page-link {
    background-color: hsl(var(--base));
    border: 1px solid hsl(var(--base));
}

.pagination .page-item.disabled .page-link {
    background: hsl(var(--accent));
    border-color: hsl(var(--accent));
}

.pagination .page-item:last-child {
    margin-right: 0;
}

.pagination .page-item:first-child .page-link {
    border-radius: 50%;
    font-size: 18px;
    line-height: 1;
}

.pagination .page-item:last-child .page-link {
    border-radius: 50%;
    font-size: 18px;
    line-height: 1;
}

.pagination .page-link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid hsl(var(--base));
    color: hsl(var(--base));
    text-align: center;
    font-size: 14px;
    background: transparent;
}

.pagination .page-link:hover {
    background-color: hsl(var(--base));
    border: 1px solid hsl(var(--base));
    color: hsl(var(--white));
}

/*---------------------------------------
    Custom Card
-----------------------------------------*/
.custom--card {
    border-radius: 3px;
    background-color: hsl(var(--white));
    border: 1px solid hsl(var(--border));
}

.custom--card .card-header {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 0;
    padding: 0.8rem 1.5rem;
    border-bottom: 1px solid hsl(var(--border));
    font-family: var(--heading-font);
    font-size: 1rem;
    font-weight: 500;
}

.custom--card .card-header__icon {
    display: inline-block;
    font-size: 22px;
    line-height: 1;
}

.custom--card .card-title {
    margin-top: 0;
    margin-bottom: 0;
}

.custom--card .card-text {
    margin-top: 1rem;
}

.custom--card .card-body {
    padding: 2rem 1.5rem;
}

.custom--card .card-footer {
    padding: 0.8rem 1.5rem;
    background: hsl(var(--light));
    border-top: 1px solid hsl(var(--border));
}

/*---------------------------------------
    Custom Modal
-----------------------------------------*/
.custom--modal .modal-content {
    border-radius: 5px;
    background-color: hsl(var(--white));
    border: 1px solid hsl(var(--border));
}

.custom--modal .modal-title {
    margin-top: 0;
    color: hsl(var(--heading));
}

.custom--modal .btn-close {
    position: relative;
    background: transparent;
    color: hsl(var(--base));
    opacity: 1;
    transition: all 0.3s ease;
}

.custom--modal .btn-close:hover {
    outline: none;
    box-shadow: none;
    color: hsl(var(--base));
}

.custom--modal .btn-close:focus {
    outline: none;
    box-shadow: none;
    color: hsl(var(--base));
}

.custom--modal .btn-close::after {
    content: "\f00d";
    font-family: "Line Awesome Free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 24px;
}

.custom--modal .modal-body p {
    margin-bottom: 0;
}

.custom--modal .modal-header {
    padding: 0.6rem 1rem;
    border-bottom: 1px solid hsl(var(--border));
}

.custom--modal .modal-footer {
    padding: 0.6rem 1rem;
    border-top: 1px solid hsl(var(--border));
}

/*---------------------------------------
    Fixed Header 
-----------------------------------------*/
.fixed-header .header-primary--fixed {
    position: fixed;
    top: 0;
    background: hsl(var(--dark));
}

.fixed-header .nav-container {
    border-radius: 5px;
}

/*---------------------------------------
    User Group List
-----------------------------------------*/
.user-group-list li {
    margin-right: -25px;
}

.user-group-list li .user__img {
    box-shadow: 0 0 8px hsl(var(--black)/0.5);
}

/*---------------------------------------
    Input Group
-----------------------------------------*/
.input--group .input-group-text {
    display: grid;
    place-items: center;
    padding-inline: 15px;
    position: relative;
    border: 1px solid hsl(var(--base)/0.3);
    background: hsl(var(--base));
    font-size: 14px;
    font-weight: 500;
    color: hsl(var(--dark));
}

/*---------------------------------------
    Menu Toggle
-----------------------------------------*/
.menu-toggle {
    margin: 10px 0;
    position: relative;
    display: block;
    width: 1.5rem;
    height: 1.25rem;
    cursor: pointer;
    background: transparent;
    border-top: 2px solid;
    border-bottom: 2px solid;
    color: hsl(var(--base));
    font-size: 0;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
}

.menu-toggle::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    background: currentColor;
    transform: translate(-50%, -50%);
    transition: transform 0.25s ease-in-out;
    background-color: hsl(var(--base));
}

.menu-toggle::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    background: currentColor;
    transform: translate(-50%, -50%);
    transition: transform 0.25s ease-in-out;
    background-color: hsl(var(--base));
}

/*---------------------------------------
    Navbar collapse
-----------------------------------------*/
@media screen and (min-width: 992px) {
    .navbar-collapse {
        display: block !important;
    }
}

.navbar-collapse.show {
    margin-bottom: 15px;
}

@media screen and (min-width: 992px) {
    .navbar-collapse.show {
        margin-bottom: 0;
    }
}

/*---------------------------------------
    Navbar
-----------------------------------------*/
@media screen and (min-width: 992px) {
    .navbar {
        padding-top: 0;
        padding-bottom: 0;
    }
}

/*---------------------------------------
    Custom Dropdown
-----------------------------------------*/
.custom-dropdown-open .custom-dropdown__content.is-open {
    visibility: visible;
    opacity: 1;
    top: calc(100% + 20px);
}

.custom-dropdown {
    position: relative;
    isolation: isolate;
}

.custom-dropdown__user {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
}

.custom-dropdown__user:hover {
    cursor: pointer;
}

.custom-dropdown__user:hover::after {
    inset: 0;
}

.custom-dropdown__user::after {
    content: "";
    position: absolute;
    inset: -3px;
    outline: 2px solid hsl(var(--base));
    border-radius: 50%;
    transition: all 0.3s ease;
}

.custom-dropdown__user-img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1;
    border-radius: 50%;
    object-fit: cover;
    outline: 1px solid hsl(var(--base)/0.3);
}

.custom-dropdown__content {
    min-width: 250px;
    position: absolute;
    top: calc(100% + 30px);
    background: hsl(var(--white));
    border-radius: 5px;
    box-shadow: 0 0 20px hsl(var(--dark)/0.2);
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease;
    border: 1px solid hsl(var(--base)/0.3);
}

.custom-dropdown__content-start {
    left: 0;
}

.custom-dropdown__content-start::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid hsl(var(--white));
    position: absolute;
    bottom: 100%;
    left: 5px;
    filter: drop-shadow(1px 0 0 hsl(var(--base)/0.3)) drop-shadow(-1px 0 0 hsl(var(--base)/0.3));
}

.custom-dropdown__content-end {
    right: 0;
}

.custom-dropdown__content-end::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid hsl(var(--white));
    position: absolute;
    bottom: 100%;
    right: 5px;
    filter: drop-shadow(1px 0 0 hsl(var(--base)/0.3)) drop-shadow(-1px 0 0 hsl(var(--base)/0.3));
}

.custom-dropdown__content-center {
    left: 50%;
    transform: translateX(-50%);
}

.custom-dropdown__content-center::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid hsl(var(--white));
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    filter: drop-shadow(1px 0 0 hsl(var(--base)/0.3)) drop-shadow(-1px 0 0 hsl(var(--base)/0.3));
}

.custom-dropdown__list {
    --gap: 0;
}

.custom-dropdown__list li {
    line-height: 1;
    border-bottom: 1px solid hsl(var(--base)/0.2);
}

.custom-dropdown__list li:last-child {
    border-bottom: none;
}

.custom-dropdown__body {
    max-height: 275px;
}

.custom-dropdown__body-link {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 10px 15px;
}

.custom-dropdown__body-link:hover {
    background: hsl(var(--base)/0.05);
}

.custom-dropdown__body-icon {
    display: inline-block;
    font-size: 24px;
    color: hsl(var(--base));
}

.custom-dropdown__body-text {
    display: inline-block;
    font-size: 14px;
    color: hsl(var(--dark));
}

/*---------------------------------------
    Title Style
-----------------------------------------*/
.title-style span {
    display: inline;
    position: relative;
    isolation: isolate;
}

.title-style--gradient span {
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent;
}

.title-style--gradient-1 span {
    background: var(--gradient-1);
}

.title-style--gradient-2 span {
    background: var(--gradient-2);
}

.title-style--gradient-3 span {
    background: var(--gradient-3);
}

.title-style--gradient-4 span {
    background: var(--gradient-4);
}

.title-style--gradient-5 span {
    background: var(--gradient-5);
}

.title-style--line span {
    padding-right: 0.05em;
}

.title-style--line span::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 15px;
    height: 15px;
    z-index: -1;
    background: var(--gradient-1);
}

/*---------------------------------------
    Usage Card
-----------------------------------------*/
.usage-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 20px 15px;
    position: relative;
    isolation: isolate;
    background: hsl(var(--white)) url(../images/usage-shape.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 12px;
    overflow: hidden;
}

@media screen and (min-width: 375px) {
    .usage-card {
        padding: 30px;
    }
}

@media screen and (min-width: 1200px) {
    .usage-card {
        padding: 40px 30px;
    }
}

.usage-card-base::after {
    content: "";
    position: absolute;
    mix-blend-mode: color;
    inset: 0;
    background: hsl(var(--base));
    z-index: -1;
}

.usage-card-danger::after {
    content: "";
    position: absolute;
    mix-blend-mode: color;
    inset: 0;
    background: hsl(var(--danger));
    z-index: -1;
}

.usage-card-success::after {
    content: "";
    position: absolute;
    mix-blend-mode: color;
    inset: 0;
    background: hsl(var(--success-light));
    z-index: -1;
}

.usage-card__icon span {
    font-size: 3rem;
    line-height: 1;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent;
}

.usage-card__title {
    margin: 0;
}

.usage-card__description {
    margin-bottom: 0;
}

/*---------------------------------------
    User Feature
-----------------------------------------*/
.user-feature--1 .user-feature__icon {
    background-image: linear-gradient(to top, #c471f5 0%, #fa71cd 100%);
    color: hsl(var(--white));
}

.user-feature--2 .user-feature__icon {
    background-image: linear-gradient(to right, #f78ca0 0%, #f9748f 19%, #fd868c 60%, #fe9a8b 100%);
    color: hsl(var(--white));
}

.user-feature--3 .user-feature__icon {
    background-image: linear-gradient(to top, #48c6ef 0%, #6f86d6 100%);
    color: hsl(var(--white));
}

.user-feature--4 .user-feature__icon {
    background-image: linear-gradient(to right, #ff758c 0%, #ff7eb3 100%);
    color: hsl(var(--white));
}

.user-feature--5 .user-feature__icon {
    background-image: linear-gradient(to top, #4481eb 0%, #04befe 100%);
    color: hsl(var(--white));
}

.user-feature--6 .user-feature__icon {
    background-image: linear-gradient(to top, #209cff 0%, #68e0cf 100%);
    color: hsl(var(--white));
}

.user-feature--6 .user-feature__icon {
    background-image: linear-gradient(to top, #b224ef 0%, #7579ff 100%);
    color: hsl(var(--white));
}

.user-feature--7 .user-feature__icon {
    background-image: linear-gradient(to top, #007adf 0%, #00ecbc 100%);
    color: hsl(var(--white));
}

.user-feature--8 .user-feature__icon {
    background-image: linear-gradient(-225deg, #FFE29F 0%, #FFA99F 48%, #FF719A 100%);
    color: hsl(var(--white));
}

.user-feature__icon {
    display: inline-grid;
    place-content: center;
    width: 60px;
    height: 60px;
    border-radius: 12px;
    font-size: 1.8rem;
    line-height: 1;
    transition: all 0.3s ease;
}

.user-feature__title {
    margin-top: 0.8rem;
    margin-bottom: 0.5rem;
}

.user-feature__description {
    margin-bottom: 0;
}

/*---------------------------------------
    Placeholder Text
-----------------------------------------*/
.placeholder-text {
    position: relative;
    isolation: isolate;
}

.placeholder-text--left .placeholder-text__is {
    left: -100px;
    transform: translateY(-50%) scale(-1);
}

.placeholder-text--right .placeholder-text__is {
    right: -100px;
}

.placeholder-text__is {
    display: none;
    position: absolute;
    top: 50%;
    writing-mode: vertical-rl;
    transform: translateY(-50%);
    font-family: var(--style-font);
    font-size: var(--d1);
    line-height: 1;
    background: linear-gradient(90deg, hsl(var(--dark)/0.01), hsl(var(--dark)/0.2));
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent;
}

@media screen and (min-width: 1920px) {
    .placeholder-text__is {
        display: inline-block;
    }
}

/*---------------------------------------
    Feature Card
-----------------------------------------*/
.feature-card__img {
    width: 100%;
    height: 250px;
    text-align: center;
}

.feature-card__img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/*---------------------------------------
    Secondary Feature
-----------------------------------------*/
@media screen and (min-width: 1200px) {
    .secondary-feature--list {
        row-gap: 2rem;
        column-gap: 0.5rem;
    }
}

.secondary-feature--list li {
    width: calc(50% - 1rem);
}

@media screen and (min-width: 576px) {
    .secondary-feature--list li {
        width: calc(33% - 1rem);
    }
}

@media screen and (min-width: 768px) {
    .secondary-feature--list li {
        width: calc(25% - 1rem);
    }
}

@media screen and (min-width: 992px) {
    .secondary-feature--list li {
        width: calc(20% - 1rem);
    }
}

@media screen and (min-width: 1200px) {
    .secondary-feature--list li {
        width: calc(16.6% - 1rem);
    }
}

.secondary-feature--list li:nth-of-type(1) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #ff3d00 0%, #0400ff 100%);
}

.secondary-feature--list li:nth-of-type(2) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #60efff 0%, #00ff87 100%);
}

.secondary-feature--list li:nth-of-type(3) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #60efff 0%, #0061ff 100%);
}

.secondary-feature--list li:nth-of-type(4) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #45caff 0%, #ff1b6b 100%);
}

.secondary-feature--list li:nth-of-type(5) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #e81cff 0%, #40c9ff 100%);
}

.secondary-feature--list li:nth-of-type(6) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #c6f8ff 0%, #595cff 100%);
}

.secondary-feature--list li:nth-of-type(7) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #f8acff 0%, #696eff 100%);
}

.secondary-feature--list li:nth-of-type(8) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #ffc8c8 0%, #ff5858 100%);
}

.secondary-feature--list li:nth-of-type(9) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #b84fce 0%, #d4acfb 100%);
}

.secondary-feature--list li:nth-of-type(10) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #aefb2a 0%, #57ebde 100%);
}

.secondary-feature--list li:nth-of-type(11) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #03E5B7 0%, #037ADE 100%);
}

.secondary-feature--list li:nth-of-type(12) .secondary-feature__icon::before {
    background: linear-gradient(-45deg, #FFF000 0%, #ED008C 100%);
}

.secondary-feature {
    text-align: center;
}

.secondary-feature__icon {
    width: 90px;
    height: 90px;
    display: grid;
    place-content: center;
    place-items: center;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    border-radius: 10px;
    background: hsl(var(--white));
    box-shadow: 0 0 8px hsl(var(--dark)/0.05);
}

.secondary-feature__icon::before {
    content: "";
    z-index: -1;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translate3d(0px, 10px, 0) scale(0.95);
    filter: blur(20px);
    opacity: 0.25;
    transition: opacity 0.3s;
    border-radius: inherit;
}

.secondary-feature__icon::after {
    content: "";
    z-index: -1;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: inherit;
    border-radius: inherit;
}

.secondary-feature__icon-is {
    width: 85%;
    height: 85%;
    object-fit: contain;
}

.secondary-feature__title {
    display: block;
    margin-top: 0.5rem;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
}

@media screen and (min-width: 1200px) {
    .secondary-feature__title {
        margin-top: 1rem;
    }
}

/*---------------------------------------
    Feedback Card
-----------------------------------------*/
.feedback-card {
    padding: 25px 15px;
    background: hsl(var(--white));
}

@media screen and (min-width: 400px) {
    .feedback-card {
        padding: 30px 20px;
        border-radius: 10px;
    }
}

@media screen and (min-width: 576px) {
    .feedback-card {
        padding: 30px;
    }
}

@media screen and (min-width: 768px) {
    .feedback-card {
        padding: 40px 24px;
    }
}

.feedback-card__header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0.5rem;
}

.feedback-card__title {
    margin: 0;
    flex-grow: 1;
}

.feedback-card__rating {
    flex-shrink: 0;
    --gap: 5px;
}

.feedback-card__star {
    display: inline-block;
    font-size: 14px;
    color: hsl(var(--warning));
}

.feedback-card__body {
    padding-top: 20px;
    padding-bottom: 20px;
}

.feedback-card__user {
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    overflow: hidden;
}

.feedback-card__user-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.feedback-card__username {
    margin: 0;
}

.feedback-card__designation {
    display: block;
    font-size: 14px;
}

.feedback-card__footer {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.feedback-card__footer-content {
    flex-grow: 1;
}

/*---------------------------------------
    Feedback Slider
-----------------------------------------*/
.feedback-slider:hover .feedback-slider__arrow {
    visibility: visible;
    opacity: 1;
}

.feedback-slider__item {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.feedback-slider__arrow {
    display: grid;
    place-content: center;
    visibility: hidden;
    opacity: 0;
    padding: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid hsl(var(--base));
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: hsl(var(--light));
    color: hsl(var(--base));
    line-height: 1;
    transition: all 0.3s ease;
    z-index: 1;
}

.feedback-slider__arrow:hover {
    background: hsl(var(--base));
    color: hsl(var(--light));
}

.feedback-slider__arrow-prev {
    left: 0;
}

.feedback-slider__arrow-next {
    right: 0;
}

.feedback-slider .slick-track {
    display: flex;
}

.feedback-slider .slick-slide {
    height: auto;
}

.feedback-slider .slick-slide>div {
    height: 100%;
}

.feedback-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.feedback-slider__item {
    display: flex !important;
    height: 100%;
}

.feedback-card__footer {
    margin-top: auto;
}

/*---------------------------------------
    CTA
-----------------------------------------*/
.cta {
    padding: 30px 15px;
    background-image: url(../images/cta-bg.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
    .cta {
        padding: 50px 30px;
        border-radius: 15px;
    }
}

@media screen and (min-width: 1366px) {
    .cta {
        padding: 60px 50px;
    }
}

/*---------------------------------------
    Social List
-----------------------------------------*/
.social-list {
    --gap: .5rem;
}

.social-list__icon {
    display: inline-block;
    text-decoration: none;
}

.social-list__icon i,
.social-list__icon span {
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    font-size: 18px;
    transition: all 0.3s ease;
    background: hsl(var(--base));
    color: hsl(var(--white));
}

.social-list__icon i:hover,
.social-list__icon span:hover {
    box-shadow: 0 5px 15px 0 hsl(var(--dark)/0.3);
}

.social-list__icon [class*=facebook] {
    background: #1877f2;
    color: #fff;
}

.social-list__icon [class*=linkedin] {
    background: #0077b5;
    color: #fff;
}

.social-list__icon [class*=instagram] {
    background: #d6249f;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
    color: #fff;
}

.social-list__icon [class*=twitter] {
    background: #1da1f2;
    color: #fff;
}

/*---------------------------------------
    Demo Card
-----------------------------------------*/
.demo-card--important {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.demo-card__label {
    width: 50%;
    position: absolute;
    background: hsl(var(--base));
    color: hsl(var(--white));
    transform: rotate(45deg);
    z-index: 4;
    right: -50px;
    top: 30px;
    text-align: center;
}


.demo-card:hover .demo-card__body::after {
    visibility: visible;
    opacity: 1;
}

.demo-card:hover .demo-card__btn {
    visibility: visible;
    opacity: 1;
    transition-delay: 0.2s;
    top: 50%;
}

.demo-card:hover .demo-card__btn-group {
    visibility: visible;
    opacity: 1;
    transition-delay: 0.2s;
    top: 50%;
}

.demo-card__body {
    position: relative;
    isolation: isolate;
    transition: all 0.3s ease;
    border-radius: 10px;
    overflow: hidden;
}

.demo-card__body::after {
    content: "";
    position: absolute;
    inset: 0;
    background: hsl(var(--dark)/0.5);
    visibility: hidden;
    opacity: 0;
}

.demo-card__premium {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 1;
    width: 35px;
    height: 35px;
    display: grid;
    place-items: center;
    border-radius: 3px;
    font-size: 14px;
    line-height: 1;
    background: hsl(var(--light));
    backdrop-filter: blur(2px);
    color: hsl(var(--warning));
}

.demo-card__btn {
    position: absolute;
    top: 55%;
    left: 50%;
    visibility: hidden;
    opacity: 0;
    transform: translate(-50%, -50%);
    background: hsl(var(--light));
    border-radius: 2rem;
    border: none;
    z-index: 2;
    font-size: 14px;
    transition: all 0.2s ease;
}

.demo-card__btn:hover {
    background: hsl(var(--base));
    color: hsl(var(--light));
}

.demo-card__premium-btn {
    background: hsl(var(--light));
    border-radius: 2rem;
    border: none;
    font-size: 14px;
}

.demo-card__premium-btn:hover {
    background: hsl(var(--light));
}

.demo-card__premium-btn-alt {
    background: hsl(var(--base));
    color: hsl(var(--light));
    border-radius: 2rem;
    border: none;
    font-size: 14px;
}

.demo-card__premium-btn-alt:hover {
    background: hsl(var(--base));
    color: hsl(var(--light));
}

.demo-card__btn-group {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    position: absolute;
    top: 55%;
    left: 50%;
    visibility: hidden;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: all 0.2s ease;
    z-index: 1;
}

.demo-card__img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

.demo-card__title {
    display: block;
    text-decoration: none;
    color: hsl(var(--heading));
    transition: all 0.3s ease;
}

.demo-card__title:hover {
    color: hsl(var(--base));
}

/*---------------------------------------
    0.3 Theme Style
-----------------------------------------*/
/*---------------------------------------
    3.1 Color
-----------------------------------------*/
.text--primary {
    color: hsl(var(--primary));
}

.text--secondary {
    color: hsl(var(--secondary));
}

.text--success {
    color: hsl(var(--success));
}

.text--danger {
    color: hsl(var(--danger));
}

.text--warning {
    color: hsl(var(--warning));
}

.text--info {
    color: hsl(var(--info));
}

.text--dark {
    color: hsl(var(--dark));
}

.text--white {
    color: hsl(var(--white));
}

.text-clr {
    color: hsl(var(--text));
}

.heading-clr {
    color: hsl(var(--heading));
}

.text--base {
    color: hsl(var(--base));
}

.text--accent {
    color: hsl(var(--accent));
}

/*---------------------------------------
    3.2 Background
-----------------------------------------*/
.bg--primary {
    background: hsl(var(--primary));
}

.bg--secondary {
    background: hsl(var(--secondary));
}

.bg--success {
    background: hsl(var(--success));
}

.bg--danger {
    background: hsl(var(--danger));
}

.bg--warning {
    background: hsl(var(--warning));
}

.bg--info {
    background: hsl(var(--info));
}

.bg--dark {
    background: hsl(var(--dark));
}

.bg--light {
    background-color: hsl(var(--white));
}

.bg--base {
    background-color: hsl(var(--base));
}

.bg--accent {
    background: hsl(var(--accent));
}

/*---------------------------------------
    3.3 Padding
-----------------------------------------*/
.t-pt-5 {
    padding-top: 5px;
}

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

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

.t-pt-20 {
    padding-top: 20px;
}

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

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

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

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

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

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

.t-pt-55 {
    padding-top: 55px;
}

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

.t-pt-65 {
    padding-top: 65px;
}

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

.t-pt-75 {
    padding-top: 75px;
}

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

.t-pt-85 {
    padding-top: 85px;
}

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

.t-pt-95 {
    padding-top: 95px;
}

.t-pt-100 {
    padding-top: 100px;
}

.t-pt-105 {
    padding-top: 105px;
}

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

.t-pt-115 {
    padding-top: 115px;
}

.t-pt-120 {
    padding-top: 120px;
}

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

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

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

.t-pb-20 {
    padding-bottom: 20px;
}

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

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

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

.t-pb-40 {
    padding-bottom: 40px;
}

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

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

.t-pb-55 {
    padding-bottom: 55px;
}

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

.t-pb-65 {
    padding-bottom: 65px;
}

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

.t-pb-75 {
    padding-bottom: 75px;
}

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

.t-pb-85 {
    padding-bottom: 85px;
}

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

.t-pb-95 {
    padding-bottom: 95px;
}

.t-pb-100 {
    padding-bottom: 100px;
}

.t-pb-105 {
    padding-bottom: 105px;
}

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

.t-pb-115 {
    padding-bottom: 115px;
}

.t-pb-120 {
    padding-bottom: 120px;
}

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

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

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

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

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

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

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

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

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

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

.t-pr-55 {
    padding-right: 55px;
}

.t-pr-60 {
    padding-right: 60px;
}

.t-pr-65 {
    padding-right: 65px;
}

.t-pr-70 {
    padding-right: 70px;
}

.t-pr-75 {
    padding-right: 75px;
}

.t-pr-80 {
    padding-right: 80px;
}

.t-pr-85 {
    padding-right: 85px;
}

.t-pr-90 {
    padding-right: 90px;
}

.t-pr-95 {
    padding-right: 95px;
}

.t-pr-100 {
    padding-right: 100px;
}

.t-pr-105 {
    padding-right: 105px;
}

.t-pr-110 {
    padding-right: 110px;
}

.t-pr-115 {
    padding-right: 115px;
}

.t-pr-120 {
    padding-right: 120px;
}

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

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

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

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

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

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

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

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

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

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

.t-pl-55 {
    padding-left: 55px;
}

.t-pl-60 {
    padding-left: 60px;
}

.t-pl-65 {
    padding-left: 65px;
}

.t-pl-70 {
    padding-left: 70px;
}

.t-pl-75 {
    padding-left: 75px;
}

.t-pl-80 {
    padding-left: 80px;
}

.t-pl-85 {
    padding-left: 85px;
}

.t-pl-90 {
    padding-left: 90px;
}

.t-pl-95 {
    padding-left: 95px;
}

.t-pl-100 {
    padding-left: 100px;
}

.t-pl-105 {
    padding-left: 105px;
}

.t-pl-110 {
    padding-left: 110px;
}

.t-pl-115 {
    padding-left: 115px;
}

.t-pl-120 {
    padding-left: 120px;
}

/*---------------------------------------
    3.4 Margin
-----------------------------------------*/
.t-mt-5 {
    margin-top: 5px;
}

.t-mt-10 {
    margin-top: 10px;
}

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

.t-mt-20 {
    margin-top: 20px;
}

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

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

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

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

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

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

.t-mt-55 {
    margin-top: 55px;
}

.t-mt-60 {
    margin-top: 60px;
}

.t-mt-65 {
    margin-top: 65px;
}

.t-mt-70 {
    margin-top: 70px;
}

.t-mt-75 {
    margin-top: 75px;
}

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

.t-mt-85 {
    margin-top: 85px;
}

.t-mt-90 {
    margin-top: 90px;
}

.t-mt-95 {
    margin-top: 95px;
}

.t-mt-100 {
    margin-top: 100px;
}

.t-mt-105 {
    margin-top: 105px;
}

.t-mt-110 {
    margin-top: 110px;
}

.t-mt-115 {
    margin-top: 115px;
}

.t-mt-120 {
    margin-top: 120px;
}

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

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

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

.t-mb-20 {
    margin-bottom: 20px;
}

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

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

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

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

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

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

.t-mb-55 {
    margin-bottom: 55px;
}

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

.t-mb-65 {
    margin-bottom: 65px;
}

.t-mb-70 {
    margin-bottom: 70px;
}

.t-mb-75 {
    margin-bottom: 75px;
}

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

.t-mb-85 {
    margin-bottom: 85px;
}

.t-mb-90 {
    margin-bottom: 90px;
}

.t-mb-95 {
    margin-bottom: 95px;
}

.t-mb-100 {
    margin-bottom: 100px;
}

.t-mb-105 {
    margin-bottom: 105px;
}

.t-mb-110 {
    margin-bottom: 110px;
}

.t-mb-115 {
    margin-bottom: 115px;
}

.t-mb-120 {
    margin-bottom: 120px;
}

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

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

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

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

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

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

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

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

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

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

.t-mr-55 {
    margin-right: 55px;
}

.t-mr-60 {
    margin-right: 60px;
}

.t-mr-65 {
    margin-right: 65px;
}

.t-mr-70 {
    margin-right: 70px;
}

.t-mr-75 {
    margin-right: 75px;
}

.t-mr-80 {
    margin-right: 80px;
}

.t-mr-85 {
    margin-right: 85px;
}

.t-mr-90 {
    margin-right: 90px;
}

.t-mr-95 {
    margin-right: 95px;
}

.t-mr-100 {
    margin-right: 100px;
}

.t-mr-105 {
    margin-right: 105px;
}

.t-mr-110 {
    margin-right: 110px;
}

.t-mr-115 {
    margin-right: 115px;
}

.t-mr-120 {
    margin-right: 120px;
}

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

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

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

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

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

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

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

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

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

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

.t-ml-55 {
    margin-left: 55px;
}

.t-ml-60 {
    margin-left: 60px;
}

.t-ml-65 {
    margin-left: 65px;
}

.t-ml-70 {
    margin-left: 70px;
}

.t-ml-75 {
    margin-left: 75px;
}

.t-ml-80 {
    margin-left: 80px;
}

.t-ml-85 {
    margin-left: 85px;
}

.t-ml-90 {
    margin-left: 90px;
}

.t-ml-95 {
    margin-left: 95px;
}

.t-ml-100 {
    margin-left: 100px;
}

.t-ml-105 {
    margin-left: 105px;
}

.t-ml-110 {
    margin-left: 110px;
}

.t-ml-115 {
    margin-left: 115px;
}

.t-ml-120 {
    margin-left: 120px;
}

/*---------------------------------------
    3.5 Utility Classes
-----------------------------------------*/
.t-heading-font {
    font-family: var(--heading-font);
}

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

.t-link {
    text-decoration: none;
    transition: all 0.3s ease;
}

.t-link:hover {
    text-decoration: none;
}

.t-link--primary:hover {
    color: hsl(var(--primary));
}

.t-link--danger:hover {
    color: hsl(var(--danger));
}

.t-link--success:hover {
    color: hsl(var(--success));
}

.t-link--info:hover {
    color: hsl(var(--info));
}

.t-link--light:hover {
    color: hsl(var(--white));
}

.t-link--base:hover {
    color: hsl(var(--base));
}

.t-link--accent:hover {
    color: hsl(var(--accent));
}

.t-short-para {
    max-width: 55ch;
}

/*---------------------------------------
    3.6 Animation
-----------------------------------------*/
@keyframes btnVideo {
    0% {
        box-shadow: 0 0 0 0 hsl(var(--warning));
    }

    50% {
        box-shadow: 0 0 0 10px hsl(var(--warning)/0.3);
    }

    100% {
        box-shadow: 0 0 0 20px hsl(var(--warning)/0.04);
    }
}

@keyframes circle {
    0% {
        transform: rotate(0deg) translate(-20px) rotate(0deg);
    }

    100% {
        transform: rotate(360deg) translate(-20px) rotate(-360deg);
    }
}

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

    50% {
        transform: translateX(20px);
    }

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

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

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

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

@keyframes topRight {
    0% {
        transform: translate(0);
    }

    50% {
        transform: translate(20px, -20px);
    }

    100% {
        transform: translate(0);
    }
}

@keyframes topLeft {
    0% {
        transform: translate(0);
    }

    50% {
        transform: translate(20px, 20px);
    }

    100% {
        transform: translate(0);
    }
}

@keyframes circlerotate {
    0% {
        transform: rotate(0deg) translate(-20px);
    }

    100% {
        transform: rotate(360deg) translate(-20px);
    }
}

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

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

@keyframes goTop {
    0% {
        transform: translateY(0) translateX(-50%);
    }

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

    100% {
        transform: translateY(0) translateX(-50%);
    }
}

@keyframes heartBeat {
    0% {
        outline: 0 solid hsl(var(--base)/0.5);
    }

    25% {
        outline: 5px solid hsl(var(--base)/0.5);
    }

    50% {
        outline: 10px solid hsl(var(--base)/0.5);
    }

    75% {
        outline: 5px solid hsl(var(--base)/0.5);
    }

    100% {
        outline: 0 solid hsl(var(--base)/0.5);
    }
}

@keyframes imageBeat {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(0.7);
    }

    100% {
        transform: scale(1);
    }
}

/*---------------------------------------
    0.4 Layouts Style
-----------------------------------------*/
/*---------------------------------------
Main Container
-----------------------------------------*/
.main-container {
    background-image: url(../images/main-bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/*---------------------------------------
UI Section
-----------------------------------------*/
.ui-section {
    position: relative;
    isolation: isolate;
}

/*---------------------------------------
CTA Section
-----------------------------------------*/
.cta-section {
    position: relative;
    isolation: isolate;
}

.cta-section::after {
    content: "";
    height: 120px;
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: -1px;
    background: hsl(var(--dark));
    z-index: -1;
}

/*---------------------------------------
FAQ Section
-----------------------------------------*/
.faq-section {
    position: relative;
    isolation: isolate;
    background-image: url(../images/faq-bg.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/*---------------------------------------
Footer
-----------------------------------------*/
.footer {
    background: hsl(var(--dark));
}

.footer__copyright {
    background: hsl(var(--dark-600));
}

/* new css */
.new-badge {
    position: absolute;
    color: hsl(var(--white));
    top: -2px;
    right: 0;
    padding: 4px 10px;
    font-size: 11px;
    background: linear-gradient(#E91E63 0%, #FFC107 100%);
    border-radius: 12px;
    line-height: 1;
    font-weight: 700;
}

.section-heading,
.tech-wrapper {
    padding-bottom: clamp(30px, 4vw, 60px);
}

.tech-wrapper {
    --gap: 24px;
    --count: 4;
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 768px;
    width: 100%;
    margin: 0 auto;
}

@media (max-width: 424px) {
    .tech-wrapper {
        --count: 2;
    }
}

.tech-logo {
    width: calc(100% / var(--count) - (var(--gap) - (var(--gap) / var(--count))));
}

.tech-logo img {
    width: 100%;
}

.tech-info-item h6 {
    font-size: 20px;
    margin-bottom: 20px;
    color: hsl(var(--white));
    margin-top: 0;
}

.tech-info-item p {
    color: hsl(var(--white));
    line-height: 1.5;
    font-size: 0.9125rem;
    margin: 0;
}

.tech-info-wrapper {
    padding: 50px;
    border-radius: 12px;
    background: linear-gradient(120deg, hsl(var(--info)), hsl(var(--base)));
}

.cta-wrapper {
    background-image: url(../images/cta-bg.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 50px;
    border-radius: 12px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

@media (max-width: 991px) {

    .cta-wrapper,
    .tech-info-wrapper {
        padding: 32px;
    }
}

@media (max-width: 575px) {

    .cta-wrapper,
    .tech-info-wrapper {
        padding: 24px;
    }
}

@media (max-width: 424px) {

    .cta-wrapper,
    .tech-info-wrapper {
        padding: 24px 16px;
    }
}

.cta-wrapper::after {
    content: "";
    position: absolute;
    opacity: .5;
    filter: blur(300px);
    width: 40rem;
    height: 40rem;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
    background-color: #E91E63;
    z-index: -1;
}

.cta-content :is(h4, p) {
    color: hsl(var(--white));
}

.tech-info-btn {
    margin-top: 50px;
}

.tech-info-item .icon {
    color: hsl(var(--white));
    margin-bottom: 20px;
    height: 42px;
    width: 42px;
    display: grid;
    place-content: center;
    background: linear-gradient(to top, #c471f5 0%, #fa71cd 100%);
    border-radius: 8px;
}

.tech-info-wrapper div[class*="col"]:nth-child(1) .tech-info-item .icon {
    background: linear-gradient(to top, #c471f5 0%, #fa71cd 100%);
}

.tech-info-wrapper div[class*="col"]:nth-child(2) .tech-info-item .icon {
    background: linear-gradient(to right, #ff758c 0%, #ff7eb3 100%);
}

.tech-info-wrapper div[class*="col"]:nth-child(3) .tech-info-item .icon {
    background: linear-gradient(-225deg, #FFE29F 0%, #FFA99F 48%, #FF719A 100%);
}

.tech-info-wrapper div[class*="col"]:nth-child(4) .tech-info-item .icon {
    background: linear-gradient(to top, #ef246a 0%, #ff7575 100%);
}
