/*-----------------------------------------------------------------------------------

    [Master Stylesheet]

    Project:    Websole
    
    Version:    1.0

-----------------------------------------------------------------------------------

    [Table of contents]
    
        01. header
        02. navbar
        03. btn
        04. hero-section
        05. get-a-quote
        06. heading
        07. shaps-img
        08. loading
        09. marquee
        10. presenting
        11. how-it-works
        12. video
        13. team-section
        14. accordion
        15. pricing-plans
        16. clients-section
        17. blog
        18. tag
        19. count-style
        20. footer
        21. widget-title
        22. all-rights
        23. scroll-percentage
        24. hero-section.for
        25. hero-section.two
        26. hero-section.three
        27. subscribe-text
        28. transition 

-----------------------------------------------------------------------------------*/


@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

:root {
    --bgcolor: #ebe125;
    --main-color: #6637ed;
    /* forms */
    --primary: #6637ed;
    --secondary: #9c7df7;
    --accent: #fd79a8;
    --dark: #2d3436;
    --light: #f5f6fa;
    --glass: rgba(255, 255, 255, 0.2);
    --shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    --border-glass: 1px solid rgba(255, 255, 255, 0.3);
}

body,
html {
    font-family: "Inter";
    overflow-x: hidden;
}

p {
    font-size: 16px;
    line-height: 28px;
    color: #444;
    margin: 0;
    font-weight: 400;
}

* {
    margin: 0;
    padding: 0;
}

a,
h2,
h3,
h4,
h5,
h6 {
    color: #000;
    margin: 0;
}

a {
    text-decoration: none;
    cursor: pointer;
}

h1 {
    font-size: 60px;
}

h2 {
    font-size: 60px;
}

h3 {
    font-size: 26px;
}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 20px;
}

h6 {
    font-size: 18px;
}

img {
    max-width: 100%;
}

.gap {
    padding: 120px 0;
}

.no-top {
    padding-top: 0;
}

.no-bottom {
    padding-bottom: 0;
}

ul {
    padding: 0;
    margin: 0;
}

li {
    display: block;
}

figure {
    overflow: hidden;
}

hr {
    margin: 0;
}

input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

/* 01. header */
/* .top-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #000;
    padding: 32px 70px;
    border-radius: 32px;
}

.top-bar ul {
    display: flex;
    align-items: center;
}

.top-bar a i svg {
    width: 30px;
    fill: #fff;
    height: auto;
}

.top-bar a i {
    margin-right: 10px;
    color: #fff;
    border-radius: 50%;
    color: #fff;
    font-size: 24px;
}

.top-bar a {
    font-size: 18px;
    color: #fff;
    display: flex;
    align-items: center;
}

.top-bar a .questions .btn span i {
    padding-right: 10px;
}

/* 02. navbar */
/*.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: -1;
    opacity: 0;
    transition: 1s all;
}

.navbar {
    display: flex;
    align-items: center;
    position: relative;
    justify-content: center;
    padding: 0;
}

.navbar-logo {
    color: #ff3f34;
    text-decoration: none;
    font-size: 25px;
    padding: 0px 20px;
}

.navbar-links {
    list-style-type: none;
    display: flex;
}

.navbar-links li:not(:last-child) {
    padding-right: 40px;
}

.navbar-links li a {
    display: block;
    text-decoration: none;
    color: #707070;
    transition: 0.4s all;
    padding-bottom: 10px;
    padding-top: 10px;
}

.navbar-links li.navbar-dropdown {
    position: relative;
}

.navbar-links li.navbar-dropdown:hover .sub-menu {
    visibility: visible;
    opacity: 1;
    transform: translatey(34px);
    z-index: 1111;
}

.navbar-links li.navbar-dropdown .sub-menu {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: 100%;
    transform: translatey(44px);
    left: 0;
    width: 230px;
    box-shadow: 0px 10px 10px 3px hsl(0deg 0% 0% / 16%);
    z-index: 111;
    transition: 0.4s all;
    display: block;
    border-radius: 30px;
    background-color: #000000;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-bottom: 14px;
}

.navbar-links li.navbar-dropdown .sub-menu a {
    font-size: 16px;
    padding-left: 25px;
    padding-top: 15px;
    padding-bottom: 15px;
    font-weight: 700;
    border: 0;
    position: relative;
    text-transform: capitalize;
    color: #ffffff;
    /* background-color: #FFF;
} */

/*.navbar-links li.navbar-dropdown .sub-menu li a:hover {
    color: var(--bgcolor);
}

.navbar-links li.navbar-dropdown .sub-menu li {
    position: relative;
    padding: 0;
}

.navbar-links li.navbar-dropdown .sub-menu li:not(:last-child):before {
    content: "";
    z-index: 11;
    position: absolute;
    height: 1px;
    background-color: #6a6a6a;
    width: 75%;
    bottom: 0;
    left: 25px;
}

li.menu-item-children>a:before {
    content: "";
    background-image: url(../img/down-arrow.svg);
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    right: 83px;
    width: 8px;
    height: 8px;
}

.navbar-links li>a {
    border-bottom: 5px solid transparent;
    color: white;
    text-transform: capitalize;
    font-size: 16px;
    font-weight: 500;
}

li.sub-menu-item-children:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    z-index: 1;
    right: 31px;
    background-color: black;
    clip-path: polygon(68% 50%, 0 0, 0 100%);
    top: 44%;
}

.navbar-links li.navbar-dropdown .sub-menu li:hover .sub-menu {
    opacity: 1;
}

.navbar-links li.navbar-dropdown:hover .sub-menu .sub-menu {
    position: absolute;
    left: 100%;
    border-left: 3px solid var(--theme-colour);
    opacity: 0;
    top: 20%;
}

a.search-btn svg {
    width: 22px;
    height: auto;
    display: flex;
    fill: #fff;
}

.navbar-links li>a i {
    padding-right: 6px;
}

@media only screen and (max-width: 1920px) and (min-width: 1200px) {
    #stickyHeader.slideUp {
        top: 0;
        z-index: 111111111;
        position: fixed;
        border-radius: 0;
        left: 0;
        padding-bottom: 20px;
        padding-top: 20px;
    }

    body.dark #stickyHeader.slideUp {
        background: #111;
    }

    body.light #stickyHeader.slideUp {
        background: #f6fafb;
    }
}

header {
    padding-top: 25px;
    position: absolute;
    z-index: 1;
    width: 100%;
}

.top-bar ul li {
    padding-right: 50px;
}

.top-bar ul li a {
    color: white;
}

.top-bar ul li a:hover {
    color: var(--bgcolor);
} */



header {
    width: 100%;
    position: absolute;
    z-index: 1;
    padding-top: 25px;
}

.container {
    max-width: 1400px;
    margin: auto;
    padding: 0 20px;
}

.top-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #000;
    padding: 32px 40px;
    border-radius: 32px;
    flex-wrap: wrap;
}

.logo img {
    width: 150px;
}

.menu-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
}

.menu-toggle span {
    height: 3px;
    width: 25px;
    background-color: white;
    border-radius: 2px;
    display: block;
}

.navbar-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
}

.navbar-links {
    list-style: none;
    display: flex;
}

.navbar-links li {
    padding-right: 40px;
}

.navbar-links li a {
    text-decoration: none;
    color: #fff;
    font-size: 16px;
    text-transform: capitalize;
    font-weight: 500;
    transition: 0.3s;
}

.navbar-links li a:hover {
    color: var(--bgcolor, #ff3f34);
}

.head-but a {
    background-color: #ff3f34;
    color: #fff;
    padding: 10px 20px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: bold;
    transition: background 0.3s;
}

.head-but a:hover {
    background-color: var(--main-color);
}

.phone-section a {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: white;
    font-size: 18px;
}

.phone-section i {
    font-size: 24px;
    margin-right: 10px;
    color: white;
}

@media only screen and (max-width: 1920px) and (min-width: 1200px) {
    #stickyHeader.slideUp {
        top: 0;
        z-index: 111111111;
        position: fixed;
        border-radius: 0;
        left: 0;
        padding-bottom: 20px;
        padding-top: 20px;
    }

    body.dark #stickyHeader.slideUp {
        background: #111;
    }

    body.light #stickyHeader.slideUp {
        background: #f6fafb;
    }
}

/* Responsive */
@media (max-width: 991px) {
    .menu-toggle {
        display: flex;
    }

    .navbar-menu {
        display: none;
        flex-direction: column;
        align-items: center;
        width: 100%;
        overflow: hidden;
        max-height: 0;
        transition: max-height 0.5s ease-in-out;
        background-color: #000;
        border-radius: 0 0 20px 20px;
        margin-top: 20px;
    }

    .navbar-menu.open {
        display: flex;
        max-height: 800px;
    }

    .navbar-links {
        flex-direction: column;
        align-items: center;
        width: 100%;
        padding: 20px 0;
    }

    .navbar-links li {
        padding: 15px 0;
    }

    .head-but {
        padding: 20px 0;
    }

    .phone-section {
        padding: 10px 0 20px;
    }
}

/* 03. btn */
/* .head-but{
    background-color: var(--main-color);
    border-radius: 5px;
    padding: 5px;
    padding-right: 20px;
    padding-left: 20px;
    margin-left: 5px;
}
.head-but:hover{
    background-color: #7446fb;
    color: #000000;
}
.bg{
    background-color:#2ecc71;
    margin-left: 10px;
} */

.btn {
    border: none;
    text-align: center;
    cursor: pointer;
    text-transform: capitalize;
    outline: none;
    position: relative;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    background-color: #000;
    padding: 18px 65px;
    border-radius: 15px;
}

.button {
    pointer-events: auto;
    cursor: pointer;
    background: #e7e7e7;
    border: none;
    padding: 1.5rem 3rem;
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    position: relative;
    display: inline-block;
}

.button::before,
.button::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.btn {
    padding: 1rem 3.5rem;
    border: 1px solid #000;
    overflow: hidden;
    color: #fff;
}

.btn span {
    display: block;
    position: relative;
}

.btn>span {
    overflow: hidden;
}

.btn>span>span {
    overflow: hidden;
}

.btn:hover>span>span {
    animation: MoveUpInitial 0.2s forwards, MoveUpEnd 0.2s forwards 0.2s;
    color: #000;
}

@keyframes MoveUpInitial {
    to {
        transform: translate3d(0, -105%, 0);
    }
}

@keyframes MoveUpEnd {
    from {
        transform: translate3d(0, 100%, 0);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.btn::before {
    content: '';
    background: #000;
    transition: transform 0.3s cubic-bezier(0.7, 0, 0.2, 1);
    transform-origin: 100% 50%;
}

.btn:hover::before {
    transform: scale3d(0, 1, 1);
    transform-origin: 0% 50%;
}

.top-bar .btn {
    padding: 12px 26px;
}

header .btn:after {
    width: 136%;
}

li.navbar-dropdown.menu-item-children {
    padding-right: 100px;
}

/* 4. hero-section */
.hero-section {
    position: relative;
    padding-top: 187px;
    overflow: hidden;
    background-color: var(--bgcolor);
    background-repeat: no-repeat;
    background-position: right;
    padding-bottom: 70px;
}

.hero-text {
    position: relative;
    margin-top: 40px;
}

.hero-text {
    padding-bottom: 64px;
}

.hero-text p {
    font-size: 22px;
    color: #000;
    line-height: 36px;
}

.hero-text span {
    background-color: #fff;
    padding: 4px 20px;
    border-radius: 50px;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 16px;
    display: inline-block;
}

.hero-text img.heroimg {
    position: absolute;
    right: -25%;
    z-index: 1;
    bottom: -47%;
    width: 52%;
    height: auto;
}

.hero-text h2 {
    /* color: #fff; */
    padding-bottom: 26px;
    line-height: 90px;
    font-weight: bold;
    font-size: 85px;
}

.hero-text h2 span {
    color: var(--main-color);
}

.hero-text ul li {
    color: white;
    padding-bottom: 18px;
    display: flex;
    align-items: center;
    font-size: 18px;
}

.hero-text ul li img {
    width: 30px;
    height: 30px;
    display: flex;
    border-radius: 50%;
    background-color: #ffffff30;
    margin-right: 17px;
    padding: 7px;
}

.listing {
    justify-content: space-between;
    width: 89%;
}

.hero-text>img {
    margin-left: auto;
    display: block;
    height: 263px;
    margin-top: 30px;
}

.review {
    display: flex;
    align-items: center;
}

.review h6 {
    font-weight: bold;
    padding-left: 8px;
}

.review ul {
    display: flex;
    /* margin-left: 20px; */
}

.review img {
    margin: 0px 30px;
}

.review ul li {
    padding-right: 4px;
}

/* 5. get-a-quote */
form#contact-form h3 {
    font-size: 40px;
    font-weight: bold;
    line-height: 46px;
    padding-bottom: 6px;
}

.get-a-quote h6 {
    color: #000000;
    font-size: 16px;
    font-weight: 400;
    padding-bottom: 30px;
}

.get-a-quote {
    z-index: 11;
    /* margin-bottom: 40px; */
    background-color: white;
    padding: 40px;
    border-radius: 20px;
    position: relative;
    box-shadow: 0px 30px 50px 0px rgb(0 0 0 / 55%);
    width: 94%;
    margin-left: auto;
}

.get-a-quote input[type="text"],
.get-a-quote input[type="email"],
.get-a-quote input[type="number"] {
    width: 100%;
    height: 60px;
    border: 0;
    outline: 0;
    margin-bottom: 20px;
    color: #444;
    font-size: 16px;
    background-color: #fafafa;
    border: 1px solid #cdcdcd;
    border-radius: 18px;
    padding-left: 20px;
}

.get-a-quote input:focus {
    border-color: var(--bgcolor);
}

.get-a-quote p {
    font-weight: 600;
    padding-bottom: 10px;
    color: #000;
}

.radio-button {
    margin-right: 15px;
    font-size: 16px;
    font-weight: 600;
    align-items: center;
    display: flex;
    margin-bottom: 25px;
}

.radio-button label {
    padding-left: 10px;
}

.radio-button input {
    width: 22px;
    height: 22px;
    background-color: #ebebeb !important;
    border: 0 !important;
}

.group-img {
    position: relative;
}

.group-img svg {
    position: absolute;
    right: 0;
    width: 22px;
    height: auto;
    top: 21px;
}

.get-a-quote img {
    position: absolute;
    right: 34px;
    animation: top-bottom 2s infinite;
}

.get-a-quote .btn {
    width: 100%;
}

/* 06. heading */
.heading {
    text-align: center;
    width: 72%;
    margin: auto;
    margin-bottom: 40px;
}

.heading h2 {
    font-size: 70px;
    padding-top: 20px;
    font-weight: bold;
}

.heading span {
    font-weight: 500;
    font-size: 18px;
    background-color: var(--main-color);
    padding: 5px 20px;
    display: inline-block;
    border-radius: 50px;
    color: #FFF;
}

.heading h5 {
    padding-top: 20px;
    font-weight: bold;
    font-size: 35px;
}

/* 07. shaps-img */
ul.shaps-img li {
    position: absolute;
}

ul.shaps-img li:nth-child(1) {
    top: 20%;
    left: 11%;
    animation: 8s rotate infinite;
}

ul.shaps-img li:nth-child(2) {
    top: 52%;
    left: 8%;
    animation: 10s toptop infinite;
}

ul.shaps-img li:nth-child(3) {
    bottom: 23%;
    left: 4%;
    animation: 10s toptop infinite;
}

ul.shaps-img li:nth-child(4) {
    bottom: 16%;
    left: 50%;
    animation: 10s rotate infinite;
}

ul.shaps-img li:nth-child(5) {
    bottom: 3%;
    right: 4%;
    animation: 10s leftleft infinite;
}

/* 08. loading */

.loading-text {
    font-size: 5vw;
    line-height: 64px;
    letter-spacing: 10px;
    margin-bottom: 32px;
    display: flex;
    justify-content: space-evenly;
}

.loading-text span {
    -webkit-animation: moveLetters 2.4s infinite ease-in-out;
    animation: moveLetters 2.4s infinite ease-in-out;
    transform: translatex(0);
    position: relative;
    display: inline-block;
    opacity: 0;
    color: #000;
    text-shadow: 0px 2px 10px rgba(46, 74, 81, 0.3);
}

.loading-text span:nth-child(1) {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}

.loading-text span:nth-child(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

.loading-text span:nth-child(3) {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.loading-text span:nth-child(4) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}

.loading-text span:nth-child(5) {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.loading-text span:nth-child(6) {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
}

.loading-text span:nth-child(7) {
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s;
}

@keyframes moveLetters {
    0% {
        transform: translateX(-15vw);
        opacity: 0;
    }

    33.3%,
    66% {
        transform: translateX(0);
        opacity: 1;
    }

    100% {
        transform: translateX(15vw);
        opacity: 0;
    }
}

.preloader {
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    position: fixed;
    z-index: 999999999999999999;
    right: 0;
    background-color: var(--bgcolor);
    top: 0;
    transition-duration: 1s;
    -webkit-transition-duration: 1s;
    transition-timing-function: cubic-bezier(0.86, 0, 0.09, 1);
    -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.09, 1);
}

.preloader {
    top: 0%;
}

.page-loaded .preloader {
    top: -100%;
}

footer {
    background-repeat: no-repeat;
}

/* 09. marquee */
.marquee-icon,
.marquee-box-one {
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: center;
}

.marquee-content-one {
    display: flex;
    gap: 25px;
    padding-left: 20px;
    animation: scroll-one 30s linear infinite;
}

.marquee-content {
    animation: scroll-one 15s linear infinite;
}

.marquee-content-two {
    display: flex;
    gap: 25px;
    padding-left: 20px;
    animation: scroll-one 38s linear infinite;
}

@keyframes scroll-one {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}

@keyframes scroll-two {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(0);
    }
}

.marquee-three {
    margin-top: 20px;
    padding-left: 0;
}

.marquee-three,
.marquee-two {
    position: relative;
}

.marquee-two:before,
.marquee-three:before {
    content: "";
    width: 23%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background: linear-gradient(270deg, rgba(66, 201, 250, 0) 0%, hsl(0deg 0% 0%) 100%);
    position: absolute;
    z-index: 11;
}

.marquee-two:after,
.marquee-three:after {
    content: "";
    width: 23%;
    height: 100%;
    top: 0;
    right: 0;
    position: absolute;
    background: linear-gradient(90deg, rgba(66, 201, 250, 0) 0%, hsl(0deg 0% 0%) 100%);
    position: absolute;
    z-index: 11;
}

.marquee-content {
    display: flex;
}

.marquee {
    display: flex;
    overflow: hidden;
    position: relative;
}

.marquee-item {
    width: 400px;
    /* margin-left: 40px; */
    justify-content: center;
    display: flex;
    align-items: center;
}

.marquee:before {
    content: "";
    width: 250px;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background: linear-gradient(270deg, rgba(66, 201, 250, 0) 0%, hsl(0deg 0% 100%) 100%);
    z-index: 1111;
}

.marquee:after {
    content: "";
    width: 250px;
    height: 100%;
    top: 0;
    right: 0;
    position: absolute;
    background: linear-gradient(90deg, rgba(66, 201, 250, 0) 0%, hsl(0deg 0% 100%) 100%);
}

.marquee img {
    width: 250px !important;
    max-width: max-content;
}

.marquee-text {
    text-align: center;
    padding-top: 60px;
}

.marquee-text p {
    font-size: 18px;
}

/* 10. presenting */
.presenting {
    display: flex;
    /* align-items: center; */
    margin-top: 40px;
    width: 97%;
}

.presenting i {
    width: 124px;
    height: 124px;
    background-color: var(--bgcolor);
    border-radius: 50%;
    margin-right: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 74px;
    border: 1px solid #7e8f83;
    outline: 8px solid var(--bgcolor);
    position: relative;
    z-index: 111;
}

.presenting:hover i:before {
    z-index: 11;
    color: #fff;
}

.presenting i:after {
    content: "";
    width: 124px;
    height: 124px;
    position: absolute;
    border-radius: 50%;
    border: 1px solid #444;
}

.presenting:hover i:after {
    border: 70px solid #444;
}

.presenting h3 {
    font-weight: bold;
    padding-bottom: 7px;
}

.presenting p {
    font-size: 16px;
    border-bottom: 3px solid #e6e6e6;
    padding-bottom: 58px;
    margin-bottom: 28px;
}

/* 11. how-it-works  */
.how-it-works {
    background-color: #f4f4f7;
    background-size: cover;
}

.heading.two {
    width: 100%;
    text-align: left;
    margin-bottom: 24px;
}

.heading.two p {
    width: 78%;
    padding-top: 18px;
}

ul.chek li {
    padding-bottom: 12px;
    font-size: 18px;
}

ul.chek li img {
    margin-right: 12px;
    width: auto;
    height: auto;
}

.how-do-stap {
    text-align: center;
    position: relative;
    background-color: #fff;
    padding: 50px 24px;
    border-radius: 28px;
}

.how-do-stap span {
    position: absolute;
    left: 10px;
    top: 10px;
    background-color: var(--bgcolor);
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    border-radius: 50%;
}

.how-do-stap h4 {
    color: #444;
    font-weight: bold;
    font-size: 18px;
    line-height: 26px;
    padding-top: 10px;
}

.how-do-stap i {
    font-size: 98px;
    padding-bottom: 0;
    transition: all .4s;
    line-height: 10px;
}

.how-do-stap.two {
    margin-top: 24px;
    background-color: var(--main-color);
}

.how-do-stap.two i,
.how-do-stap.two h4 {
    color: #fff;
}

.how-do-stap.three {
    margin-top: 60px;
    background-color: #000;
    margin-bottom: 25px;
}

.how-do-stap.three i,
.how-do-stap.three h4 {
    color: #fff;
}

/* 12. video */
.video {
    position: relative;
    right: 0;
    text-align: center;
}

a.video-pop:hover i {
    color: #000;
    background-color: #fff;
}

.video img {
    border-radius: 30px;
}

.video i {
    position: absolute;
    animation: shadow-pulse 1s infinite;
    width: 94px;
    height: 94px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: #fff 1px solid;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    /* margin: 10px; */
    /* outline: solid 1px #fff; */
    color: #fff;
    font-size: 20px;
}

@keyframes shadow-pulse {
    0% {
        box-shadow: 0 0 0 0px rgb(255 255 255);
    }

    100% {
        box-shadow: 0 0 0 35px rgba(0, 0, 0, 0);
    }
}

@keyframes top-bottom {

    0%,
    100%,
    20%,
    50%,
    80% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
        transform: translateY(-8px);
    }

    60% {
        -webkit-transform: translateY(-4px);
        -ms-transform: translateY(-4px);
        transform: translateY(-4px);
    }
}

@keyframes toptop {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(20px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes leftleft {
    0% {
        transform: translatex(0);
    }

    50% {
        transform: translatex(20px);
    }

    100% {
        transform: translatex(0px);
    }
}

@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }

    50% {
        transform: rotate(360deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

/* 13. team-section */
.team-section {
    background-color: var(--main-color);
    position: relative;
}

.team-section .heading h2,
.team-section .heading span,
.team-section .heading p {
    color: #fff;
}

.team-section .heading span {
    border: 1px solid #fff;
}

.team-section .heading p {
    width: 90%;
    padding-top: 10px;
    margin: auto;
}

.team img {
    border-radius: 50%;
    border: 9px solid #fff;
}

.team {
    position: relative;
    padding-bottom: 20px;
    text-align: center;
}

.team:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 74%;
    background-color: #855ff1;
    right: 0;
    bottom: 0;
    border-radius: 30px;
}

.team:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 0%;
    background-color: #fff;
    right: 0;
    bottom: 0;
    border-radius: 30px;
}

.team:hover:after {
    height: 74%;
}

.team figure {
    position: relative;
    margin-bottom: 30px;
    z-index: 22;
}

.team span {
    position: relative;
    color: #fff;
    font-size: 18px;
    z-index: 22;
}

.team h4 {
    color: #fff;
    position: relative;
    font-size: 28px;
    padding-top: 8px;
    font-weight: bold;
    z-index: 10;
}

.team>a {
    position: relative;
    color: #fff;
    font-size: 18px;
    border: 1px solid #fff;
    display: flex;
    padding: 16px;
    width: 90%;
    margin: auto;
    border-radius: 20px;
    margin-top: 28px;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.team>a i {
    font-size: 28px;
    padding-right: 10px;
}

.team:hover span,
.team:hover a,
.team:hover h4 {
    color: #000;
}

.team:hover a {
    border: 1px solid #bfbfbf;
}

.how-do-stap i {
    display: block;
}

.how-do-stap:hover i {
    animation: top-bottom 1s infinite;
}

.expert {
    text-align: center;
    position: relative;
}

.expert-icon {
    position: absolute;
    top: 44%;
    z-index: 1111;
    left: 16%;
}

.icon-share li {
    display: block;
}

.icon-share a:hover i {
    /* color: #fff; */
    transform: rotate(360deg);
    /* box-shadow: none; */
}

.expert-icon>i {
    color: #a5a5a5;
    background: #fafafa;
    height: 80px;
    width: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 53px;
    font-size: 30px;
    transition: 0.5s ease-in-out;
}

.expert-icon a i {
    width: 70px;
    height: 70px;
    display: flex;
    font-size: 24px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #fff;
}

.expert-icon li {
    margin-top: 4px;
}

.team:hover .expert-icon a i {
    background-color: var(--bgcolor);
}

.team:hover .expert-icon ul.icon-share {
    opacity: 1;
    visibility: visible;
    top: -125px;
}

.expert-icon a {
    text-decoration: none;
    font-size: 25px;
}

ul.icon-share {
    position: absolute;
    top: -65px;
    left: 4px;
    opacity: 0;
    visibility: hidden;
    transition: 0.5s ease-in-out;
}

.icon-share li i {
    width: 56px;
    height: 56px;
}

.center.review {
    justify-content: center;
    margin-top: 60px;
}

.center.review h6,
.center.review li i {
    color: #fff;
}

.team-section ul.shaps-img li:nth-child(1) {
    left: 69%;
    top: 24%;
    animation: 8s leftleft infinite;
}

.team-section ul.shaps-img li:nth-child(2) {
    top: 24%;
    left: 4%;
    animation: 10s inherit;
    animation: 20s rotate infinite;
}

/* 14. accordion */
.accordion-section .heading.two {
    width: 87%;
    text-align: left;
    margin-bottom: 24px;
    margin-left: 0;
}

.accordion-section {
    position: relative;
}

.accordion-section ul.shaps-img li:nth-child(1) {
    left: 72%;
    animation: 8s toptop infinite;
}

.accordion-item.active .icon:after {
    width: 0;
}

.accordion {
    width: 99%;
    border: 1px solid #d1d1d1;
    padding: 24px 40px;
    border-radius: 30px;
    margin-top: 33px;
}

.accordion-item {
    border: 0;
}

.accordion-item:last-of-type .title {
    border: 0;
}

.accordion-item.active .icon:before {
    background: #000;
}

.accordion-img figure.accordion-img-two {
    background-color: var(--common-colour);
    margin-top: -156px;
    width: fit-content;
    margin-left: 130px;
}

.accordion-item .heading {
    width: 100%;
    display: block;
    text-transform: capitalize;
    text-decoration: none;
    color: #000000;
    font-weight: 700;
    font-size: 20px;
    position: relative;
    transition: 0.3s ease-in-out;
    /* padding-bottom: 12px; */
    margin-bottom: 0;
}

.accordion-item .icon {
    display: block;
    position: absolute;
    top: 50%;
    width: 0;
    height: 0;
    transform: translateY(-50%);
    right: 10px;
    /* background-color: transparent; */
}

.accordion-item.active .title {
    color: #000;
    background-color: #ffffff;
    border: 0;
    padding-bottom: 0;
}

.accordion-item .icon:before,
.accordion-item .icon:after {
    content: "";
    width: 20px;
    height: 1px;
    background: #000000;
    position: absolute;
    left: 50%;
    top: 50%;
    transition: 0.3s ease-in-out;
    transform: translate(-50%, -50%);
}

.accordion-item .icon:after {
    transform: translate(-50%, -50%) rotate(90deg);
    z-index: -1;
}

.accordion-item .content {
    display: none;
}

.content p {
    font-size: 16px;
    font-weight: 500;
    color: #000000;
}

.title {
    text-align: start;
    padding: 25px;
    padding-right: 0;
    color: black;
    font-size: 24px;
    background-color: #fff;
    padding-left: 0;
    font-weight: 700;
    border-bottom: 1px solid #d1d1d1;
}

.accordion-item.active .title {
    /* color: var(--common-colour); */
    padding-bottom: 15px;
}

.accordion-item.active {
    background-color: #fff;
    border: 0;
    border-bottom: 1px solid var(--bgcolor);
    border-radius: 0;
}

.content {
    margin-bottom: 20px;
    padding: 12px 0px;
    padding-top: 0px;
    background-color: #24243500;
    border: 0;
}

.accordion-item {
    background-color: transparent;
}

.accordion-img {
    position: relative;
}

.accordion-item:last-of-type {
    border: 0 !important;
}

.accordion-item:first-of-type {
    border-top: 0;
}

.accordion-img img.dots {
    top: auto;
    z-index: -0;
    right: -5%;
    bottom: 0;
}

.accordion-contact {
    background-color: var(--bgcolor);
    padding: 20px;
    border-radius: 30px;
    padding-bottom: 16px;
    padding-top: 56px;
    position: relative;
    z-index: 11;
}

.accordion-contact .btn {
    width: 100%;
    margin-top: 16px;
}

.accordion-contact h4 {
    font-size: 18px;
    padding-bottom: 16px;
    padding-left: 32px;
    font-weight: bold;
}

.accordion-contact h4:hover a {
    color: var(--main-color);
}

.accordion-img img {
    width: 100%;
    border-radius: 20px;
    margin-top: 30px;
    position: relative;
    z-index: 11;
}

.team>a:hover {
    background-color: var(--bgcolor);
    border: 1px solid var(--bgcolor);
}

/* 15. pricing-plans */
.pricing-plans {
    background-color: #ffffff;
    padding: 24px 34px;
    border-radius: 20px;
}

.pricing-plans span {
    color: #000000;
    font-weight: 500;
    padding-bottom: 4px;
    display: block;
    font-size: 18px;
    font-weight: bold;
}

.pricing-plans h5 {
    font-size: 60px;
}

.pricing-plans h5 {
    font-size: 60px;
    color: #000000;
}

.pricing-plans sub {
    bottom: 0;
    font-size: 16px;
}

.pricing-plans-text {
    padding-top: 0;
    position: relative;
}

.pricing-plans-text i {
    width: 74px;
    height: 90px;
    display: flex;
    border-radius: 30%;
    background-color: var(--bgcolor);
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 5%;
    top: -20%;
    font-size: 40px;
}

.pricing-plans-text:hover i {
    animation: top-bottom 2s infinite;
}

.pricing-plans-text img {
    height: 60px;
}

.pricing-plans-text .hero-text ul li {
    color: #444;
}

.pricing-plans-text .hero-text ul li img {
    background-color: #e6eeff;
}

.pricing-plans-text .btn {
    width: 100%;
}

.pricing-plans-text i svg {
    width: 50px;
    height: auto;
}

.pricing {
    padding: 10px;
    background-color: #f4f4f7;
    border-radius: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.pricing-plans-text p {
    padding-top: 34px;
    width: 84%;
    margin: auto;
    font-size: 16px;
}

.pricing-plans-text ul {
    width: 84%;
    margin: auto;
    margin-top: 20px;
    margin-bottom: 30px;
}

.pricing-plans-text ul.chek li {
    font-size: 16px;
}

.pricing:hover {
    background-color: var(--bgcolor);
}

.pricing:hover ul.chek li img {
    filter: brightness(0);
}

/* 16. clients-section */
.clients-section {
    background-color: #000;
}

.clients-section .heading h2 {
    width: 100%;
    color: #fff;
}

.clients-section .heading {
    width: 100%;
}

.clients-img img {
    border-radius: 50%;
    border: 1px solid var(--bgcolor);
    margin-right: 24px;
}

.clients-img {
    display: flex;
    align-items: center;
}

ul.star {
    display: flex;
    font-size: 14px;
    gap: 4px;
}

.clients-img i {
    color: #565656;
    font-size: 20px;
}

.clients-img ul.star i {
    color: var(--bgcolor);
    font-size: 12px;
}

.clients-img h3 {
    color: #fff;
    font-size: 24px;
    margin-right: 20px;
    padding-bottom: 10px;
}

.clients {
    width: 650px;
    background-color: #303034;
    padding: 40px;
    border-radius: 25px;
}

.clients p {
    padding-top: 20px;
    color: #fff;
}

.clients-section {
    position: relative;
}

.clients-section ul.shaps-img li:nth-child(1) {
    z-index: 111;
    top: 15%;
    animation: top-bottom 2s infinite;
}

.clients-section ul.shaps-img li:nth-child(2) {
    top: 18%;
    left: auto;
    right: 10%;
    animation: 22s rotate infinite;
}

.section-client {
    position: relative;
}

.section-client ul.shaps-img li:nth-child(2) {
    top: -20%;
}

.section-client ul.shaps-img li:nth-child(2) {
    top: -20%;
}

.section-client ul.shaps-img li:nth-child(1) {
    top: 68%;
    left: 89%;
    animation: 8s rotate infinite;
}

/* 17. blog */
.blog img {
    width: 100%;
    border-radius: 25px;
    transform: scale(1.1);
}

.blog figure {
    border-radius: 25px;
}

#blog {
    position: relative;
}

#blog ul.shaps-img li:nth-child(1) {
    animation: 20s leftleft infinite;
    left: 2%;
}

.blog>a {
    color: #000;
    font-size: 30px;
    font-weight: bold;
    line-height: 40px;
    padding-top: 10px;
    display: block;
    padding-bottom: 10px;
}

.blog {
    position: relative;
    z-index: 11;
}

.blog-img {
    position: relative;
}

.blog-img .tag {
    position: absolute;
    bottom: 10px;
    left: 10px;
}

/* 18. tag */
.tag>span {
    background-color: var(--main-color);
    display: inline-block;
    padding: 4px 22px;
    border-radius: 30px;
    font-weight: bold;
    color: #fff;
}

.tag>a {
    background-color: var(--bgcolor);
    padding: 4px 24px;
    border-radius: 40px;
    font-size: 16px;
    display: block;
    margin-top: 10px;
    font-weight: bold;
}

.tag>a span {
    padding-left: 20px;
}

.tag>a span i {
    padding-right: 10px;
}

.blog a:hover {
    color: var(--bgcolor);
}

.blog p {
    width: 90%;
}

.blog:hover img {
    transform: scale(1.0);
}

/* 19. count-style */
.count-style {
    padding: 50px 85px;
    background-color: var(--bgcolor);
    border-radius: 30px;
    text-align: center;
    padding-bottom: 60px;
    z-index: 11;
    position: relative;
}

.count-style h2 {
    font-weight: bold;
    font-size: 100px;
}

.count-style h2 sup {
    font-size: 58px;
}

.count-style h4 {
    font-size: 26px;
    font-weight: bold;
    padding-bottom: 20px;
    padding-top: 4px;
}

.count-style.two {
    background-color: #000;
}

.count-style.two h2 {
    color: var(--bgcolor);
}

.count-style.two p,
.count-style.two h4 {
    color: #fff;
}

.count-style:hover {
    transform: translateY(20px);
}

/* 20. footer */
.footer-try {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 100px;
}

footer {
    position: relative;
}

.footer-try>div {
    width: 65%;
}

.footer-try h2 {
    color: #fff;
    font-size: 65px;
    font-weight: bold;
}

.footer-try p {
    color: #fff;
    padding-top: 10px;
}

.footer-logo p {
    color: #fff;
    width: 90%;
    padding-top: 30px;
    padding-bottom: 40px;
}

ul.social-media a i {
    color: #fff;
    font-size: 23px;
}

ul.social-media {
    display: flex;
    gap: 25px;
}

ul.social-media a:hover i {
    color: var(--bgcolor);
}

/* 21. widget-title */
.widget-title h3 {
    font-size: 26px;
    font-weight: bold;
    color: #fff;
    padding-bottom: 30px;
}

.widget-title ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 22px;
}

.widget-title ul li {
    width: 50%;
}

.widget-title ul li a {
    color: #fff;
}

.widget-title ul li a:hover {
    color: var(--bgcolor);
}

.widget-title ul li i {
    color: #b6a0f2;
    padding-right: 12px;
}

.get-in-touch i {
    width: 56px;
    height: 56px;
    border: 1px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-right: 20px;
    color: #fff;
    font-size: 24px;
}

.get-in-touch.mb-0 span {
    padding-top: 0 !important;
}

.get-in-touch {
    display: flex;
    margin-bottom: 20px;
    align-items: center;
}

.get-in-touch:hover i {
    background-color: #fff;
    color: #000;
}

.get-in-touch span {
    color: #fff;
    padding-bottom: 4px;
    display: block;
    font-size: 18px;
}

.get-in-touch h6 a {
    color: #fff;
}

.get-in-touch h6 a:hover {
    color: var(--bgcolor);
}

footer {
    padding-bottom: 40px !important;
}

/* 22. all-rights */
.all-rights {
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
    align-items: center;
}

.all-rights ul.star {
    color: #fff;
}

.all-rights .review h6 {
    color: #fff;
}

.all-rights p {
    color: #fff;
    font-size: 18px;
}

footer ul.shaps-img li:nth-child(2) {
    top: 35%;
    left: 4%;
    animation: top-bottom 2s infinite;
}

footer ul.shaps-img li:nth-child(1) {
    top: 9%;
}

footer ul.shaps-img li:nth-child(3) {
    bottom: 54%;
    left: 87%;
    animation: 10s toptop infinite;
}

/* 23. scroll-percentage */
#scroll-percentage {
    position: absolute;
    box-shadow: 0px 0px 20px 0px rgba(184, 184, 184, 0.75);
    height: 60px;
    width: 60px;
    background-color: var(--bgcolor);
    border-radius: 50%;
    position: fixed;
    bottom: 30px;
    right: 30px;
    transform: scale(0);
    display: grid;
    place-items: center;
    cursor: pointer;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s;
    z-index: 1011;
}

@media (max-width: 1400px) {
    #scroll-percentage {
        width: 50px;
        height: 50px;
    }
}

@media (max-width: 992px) {
    #scroll-percentage {
        right: 10px;
    }
}

#scroll-percentage.active {
    bottom: 30px;
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    animation: 500ms ease-in-out 0s normal none 1 running scrollToTop;
    transition: 0.3s;
}

@media (max-width: 1400px) {
    #scroll-percentage.active {
        bottom: 20px;
    }
}

#scroll-percentage-value {
    height: calc(100% - 6px);
    width: calc(100% - 6px);
    background-color: #ffffff;
    color: #000;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 14px;
    font-weight: 600;
}

#scroll-percentage-value i {
    font-size: 20px;
}

@keyframes scrollToTop {
    0% {
        transform: translate3d(0, 80%, 0);
        visibility: visible;
    }

    to {
        transform: translateZ(0);
    }
}

@keyframes wobble-vertical {
    16.65% {
        transform: translateY(8px);
    }

    33.3% {
        transform: translateY(-6px);
    }

    49.95% {
        transform: translateY(4px);
    }

    66.6% {
        transform: translateY(-2px);
    }

    83.25% {
        transform: translateY(1px);
    }

    100% {
        transform: translateY(0);
    }
}

/* 24. hero-section.for */

.hs-responsive-embed-youtube iframe {
    width: 100%;
    height: 624px;
    margin-top: 70px;
    border-radius: 30px;
    border: 7px solid #000;
}

.hero-section.for {
    text-align: center;
    background-position: top;
    background-size: auto;
    padding-bottom: 0;
    margin-bottom: 0;
    padding-top: 236px;
    background-size: 2392px;
    background-color: #fff;
}

.hero-section.for .listing {
    justify-content: space-between;
    width: 100%;
    justify-content: center;
}

.hero-section.for .hero-text,
.hero-section.two .hero-text {
    text-align: center;
    justify-content: center;
    width: 87%;
    margin: auto;
    padding-bottom: 30px;
}

.hero-section.for ul.shaps-img li:nth-child(4) {
    bottom: 49%;
    left: 27%;
}

.hero-section.for ul.shaps-img li:nth-child(5) {
    bottom: 49%;
    right: 4%;
    animation: 10s leftleft infinite;
}

/* 25. hero-section.two */
.hero-section.two .review img {
    margin-left: 0;
}

.hero-section.two {
    text-align: center;
    margin: auto;
    padding-top: 230px;
}

.hero-section.two .review {
    margin-top: 60px;
    justify-content: center;
}

.hero-section.two p {
    text-align: center;
    margin: auto;
}

.hero-section.two ul.shaps-img li:nth-child(4) {
    bottom: 16%;
    left: 31%;
}

.hero-section.two .listing {
    margin: auto;
}

/* 26. hero-section.three */
.hero-section.three {
    text-align: center;
}

.hero-section.three .listing {
    margin: auto;
}

.hero-section.three .hero-text {
    width: 90%;
    margin: auto;
    text-align: center;
}

.hero-section.three {
    padding-top: 230px;
}

.hero-section.three ul.shaps-img li:nth-child(4) {
    bottom: 28%;
    left: 27%;
    animation: 10s rotate infinite;
}

/* 27. subscribe-text */
.subscribe-text #subscribe-form .btn {
    border-color: var(--bgcolor);
    color: #000;
}

.subscribe-text {
    display: flex;
    padding: 30px;
    background-color: #fff;
    border-radius: 20px;
    margin-top: 20px;
    text-align: left;
    align-items: center;
    z-index: 1;
    position: relative;
}

.subscribe-text #subscribe-form {
    position: relative;
}

.subscribe-text #subscribe-form .btn {
    right: 0;
    position: absolute;
    top: 53%;
    transform: translate(-4%, -54%);
    padding: 16px 25px;
}

.subscribe-text #subscribe-form input {
    width: 700px;
    height: 73px;
    padding-left: 20px;
    border-radius: 20px;
    border: 0;
    outline: none;
    background-color: #fafafa;
    border: 3px solid #cdcdcd;
}

.subscribe-text h3 {
    font-size: 30px;
    font-weight: bold;
}

.subscribe-text #subscribe-form .btn::before {
    background-color: var(--bgcolor);
    border-color: var(--bgcolor);
}

.subscribe-text>div {
    margin-right: auto;
    margin-left: 30px;
}

.hero-section.three {
    background-size: cover;
}


/* 28. transition */
.get-in-touch i,
ul.social-media a i,
a.video-pop i,
.icon-share li i,
.accordion-contact h4 a,
.pricing,
.tag>a,
.blog a,
.blog img,
.count-style,
.how-do-stap i,
.team:after,
.team span,
.team a,
.team h4,
ul.chek li img,
.widget-title ul li a,
footer a,
.presenting i:after {
    transition: .4s all;
}

/* forms */

.forms {
    /* background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); */
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    overflow-x: hidden;

}

.floating-shapes {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
}

.shape {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(5px);
    animation: float 15s infinite linear;
}

.shape:nth-child(1) {
    width: 150px;
    height: 150px;
    top: 10%;
    left: 15%;
    animation-delay: 0s;
}

.shape:nth-child(2) {
    width: 200px;
    height: 200px;
    top: 60%;
    left: 25%;
    animation-delay: 2s;
}

.shape:nth-child(3) {
    width: 100px;
    height: 100px;
    top: 30%;
    right: 20%;
    animation-delay: 4s;
}

.shape:nth-child(4) {
    width: 180px;
    height: 180px;
    bottom: 10%;
    right: 15%;
    animation-delay: 6s;
}

@keyframes float {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-50px) rotate(180deg);
    }

    100% {
        transform: translateY(0) rotate(360deg);
    }
}

.form-container {
    display: flex;
    width: 100%;
    max-width: 900px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--shadow);
    backdrop-filter: blur(10px);
    background: var(--glass);
    border: var(--border-glass);
    transition: all 0.5s ease;
    position: relative;
    z-index: 1;
}

.form-container:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
}

.side-image {
    width: 900px;
    height: 900px;
    background: url('/assets/img/form_image.png') center/cover no-repeat;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 30px;
    color: white;
    z-index: 1;
}

/* .side-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(45, 52, 54, 0.8), transparent);
    z-index: -1;
} */

.image-content {
    opacity: 0;
    width: 100%;
    transform: translateY(20px);
    animation: fadeInUp 0.8s 0.4s forwards;
}

.image-content h3 {
    font-size: 28px;
    margin-bottom: 10px;
    font-weight: 700;
}

.image-content p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 20px;
}

.form-section {
    flex: 1;
    padding: 50px;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(5px);
}

.forms h2 {
    color: var(--dark);
    text-align: center;
    margin-bottom: 30px;
    font-weight: 700;
    font-size: 32px;
    position: relative;
    padding-bottom: 15px;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s 0.2s forwards;
}

h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background: var(--primary);
    border-radius: 3px;
}

.form-group {
    margin-bottom: 25px;
    position: relative;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s forwards;
}

@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.form-group:nth-child(1) {
    animation-delay: 0.4s;
}

.form-group:nth-child(2) {
    animation-delay: 0.5s;
}

.form-group:nth-child(3) {
    animation-delay: 0.6s;
}

.form-group:nth-child(4) {
    animation-delay: 0.7s;
}

.form-group:nth-child(5) {
    animation-delay: 0.8s;
}

label {
    display: block;
    margin-bottom: 8px;
    color: var(--dark);
    font-weight: 500;
    font-size: 14px;
}

.input-wrapper {
    position: relative;
}

.input-wrapper i {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--primary);
    font-size: 18px;
}

input,
select,
textarea {
    width: 100%;
    padding: 15px 15px 15px 45px;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    font-size: 16px;
    transition: all 0.3s;
    background-color: rgba(255, 255, 255, 0.8);
}

input:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(108, 92, 231, 0.2);
    background-color: white;
}

/* Premium Dropdown Styling */
.custom-select {
    position: relative;
}

.custom-select select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 40px;
    cursor: pointer;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%236c5ce7'%3e%3cpath d='M7 10l5 5 5-5z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 15px center;
    background-size: 15px;
}

/* Animated Submit Button */
.submit-btn {
    background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
    color: white;
    border: none;
    padding: 16px;
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    transition: all 0.4s;
    box-shadow: 0 4px 15px rgba(108, 92, 231, 0.3);
    position: relative;
    overflow: hidden;
}

.submit-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(108, 92, 231, 0.4);
}

.submit-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: 0.5s;
}

.submit-btn:hover::before {
    left: 100%;
}

/* Success message */
.success-message {
    display: none;
    text-align: center;
    padding: 20px;
    background: rgba(46, 213, 115, 0.2);
    border-radius: 10px;
    margin-top: 20px;
    animation: fadeIn 0.5s;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Mobile Styles */
@media (max-width: 768px) {
    .forms {
        display: flex;
        flex-direction: column;
    }

    .form-container {
        flex-direction: column;
    }

    .side-image {
        display: none;
        /* Hide the side image on mobile */
    }

    .form-section {
        padding: 30px 20px;
        width: 100%;
    }

    h2 {
        font-size: 26px;
    }

    .accordion-img {
        display: none;
    }

}

/* Desktop Styles */
@media (min-width: 769px) {
    .mobile-image {
        display: none;
        /* Hide mobile image on desktop */
    }
}

/* Floating label animation */
.form-group:focus-within label {
    color: var(--primary);
    transform: translateY(-5px);
}

/* Add to your existing CSS */
.submit-btn i.fa-spinner {
    margin-right: 8px;
}

.submit-btn:disabled {
    opacity: 0.8;
    cursor: not-allowed;
}

/* Enhanced Success Message */
.success-message {
    display: none;
    /* Start hidden */
    position: relative;
    z-index: 1000;
    /* Make sure it's above other elements */
    background: rgba(46, 213, 115, 0.2);
    padding: 20px;
    border-radius: 10px;
    margin-top: 20px;
    text-align: center;
    border: 1px solid #2ecc71;
}

/* Animation */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.success-message i {
    color: #2ecc71;
    font-size: 50px;
    margin-bottom: 15px;
    animation: bounce 0.5s 0.2s both;
}

.success-message h3 {
    color: #2d3436;
    margin-bottom: 10px;
    font-size: 24px;
}

.success-message p {
    color: #636e72;
    margin-bottom: 20px;
    line-height: 1.6;
}

@keyframes bounce {

    0%,
    20%,
    50%,
    80%,
    100% {
        transform: translateY(0);
    }

    40% {
        transform: translateY(-20px);
    }

    60% {
        transform: translateY(-10px);
    }
}

/* cars setion Base Styles */
.fancy-card-section {
    position: relative;
    padding: 5rem 1rem;
    background: linear-gradient(145deg, #f8faff 0%, #ffffff 100%);
    overflow: hidden;
}

.container-cards {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
    position: relative;
    z-index: 2;
}

/* Header Styles */
.section-header {
    margin-bottom: 3.5rem;
}

.section-subtitle {
    display: block;
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.gradient-text {
    background: linear-gradient(90deg, #3b82f6 0%, #10b981 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.section-title {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1.5rem;
    color: #1e293b;
}

.highlight-text {
    color: #3b82f6;
    position: relative;
    display: inline-block;
}

.highlight-text::after {
    content: '';
    position: absolute;
    bottom: 5px;
    left: 0;
    width: 100%;
    height: 8px;
    background: rgba(59, 130, 246, 0.2);
    z-index: -1;
    border-radius: 4px;
}

.divider-wave {
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, #3b82f6 0%, #10b981 100%);
    margin: 0 auto;
    border-radius: 2px;
    position: relative;
}

.divider-wave::after {
    content: '';
    position: absolute;
    top: -4px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
    height: 12px;
    background: url("data:image/svg+xml,%3Csvg viewBox='0 0 120 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0,6 C20,0 40,12 60,6 C80,0 100,12 120,6' stroke='%233b82f6' stroke-width='2' fill='none' stroke-opacity='0.2'/%3E%3C/svg%3E") no-repeat center;
}

/* Feature Grid Layout */
.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    margin-bottom: 3rem;
}

/* Feature Card Styles */
.feature-card {
    position: relative;
    background: white;
    border-radius: 16px;
    padding: 1.75rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.1);
    overflow: hidden;
    border: 1px solid rgba(226, 232, 240, 0.5);
}

.feature-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(59, 130, 246, 0.15);
    border-color: rgba(59, 130, 246, 0.2);
}

.feature-icon-container {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: transform 0.3s ease;
}

.feature-card:hover .feature-icon-container {
    transform: rotate(10deg) scale(1.1);
}

.feature-content h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: #1e293b;
    line-height: 1.4;
}

.feature-content p {
    color: #64748b;
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: 1.25rem;
}

.feature-link {
    display: inline-flex;
    align-items: center;
    color: #3b82f6;
    font-weight: 500;
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.feature-link .arrow {
    margin-left: 0.5rem;
    transition: transform 0.3s ease;
}

.feature-link:hover {
    color: #2563eb;
}

.feature-link:hover .arrow {
    transform: translateX(4px);
}

.feature-hover-effect {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.03) 0%, rgba(16, 185, 129, 0.03) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: -1;
}

.feature-card:hover .feature-hover-effect {
    opacity: 1;
}

/* Gradient Backgrounds */
.bg-primary-gradient {
    background: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);
}

.bg-success-gradient {
    background: linear-gradient(135deg, #10b981 0%, #14b8a6 100%);
}

.bg-warning-gradient {
    background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);
}

.bg-info-gradient {
    background: linear-gradient(135deg, #06b6d4 0%, #0ea5e9 100%);
}

.bg-danger-gradient {
    background: linear-gradient(135deg, #ef4444 0%, #f97316 100%);
}

.bg-purple-gradient {
    background: linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%);
}

/* CTA Button Styles */
.cta-container {
    text-align: center;
}

.cta-button {
    position: relative;
    background: linear-gradient(135deg, #3b82f6 0%, #10b981 100%);
    color: white;
    border: none;
    border-radius: 50px;
    padding: 1rem 2rem;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    overflow: hidden;
    transition: all 0.4s ease;
    display: inline-flex;
    align-items: center;
    box-shadow: 0 6px 15px rgba(59, 130, 246, 0.3);
}

.cta-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(59, 130, 246, 0.4);
}

.cta-button .button-icon {
    margin-left: 0.75rem;
    transition: transform 0.3s ease;
}

.cta-button:hover .button-icon {
    transform: translateX(4px);
}

.pulse-animation::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #3b82f6 0%, #10b981 100%);
    border-radius: 50px;
    z-index: -1;
    animation: pulse 2s infinite;
    opacity: 0.7;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.7;
    }

    70% {
        transform: scale(1.1);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        opacity: 0;
    }
}

/* Decorative Elements */
.decorative-circle {
    position: absolute;
    border-radius: 50%;
    filter: blur(40px);
    opacity: 0.15;
    z-index: 1;
}

.circle-1 {
    width: 300px;
    height: 300px;
    background: #3b82f6;
    top: -100px;
    right: -100px;
}

.circle-2 {
    width: 400px;
    height: 400px;
    background: #10b981;
    bottom: -150px;
    left: -150px;
}

.circle-3 {
    width: 200px;
    height: 200px;
    background: #8b5cf6;
    top: 50%;
    left: 10%;
}

/* Responsive Adjustments */
@media (max-width: 1024px) {
    .section-title {
        font-size: 2.2rem;
    }

    .feature-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (max-width: 768px) {
    .fancy-qr-section {
        padding: 4rem 1rem;
    }

    .section-title {
        font-size: 2rem;
    }

    .section-subtitle {
        font-size: 0.8rem;
    }

    .feature-grid {
        gap: 1.25rem;
    }

    .feature-card {
        padding: 1.5rem;
    }

    .feature-icon-container {
        width: 48px;
        height: 48px;
        font-size: 1.25rem;
    }
}

@media (max-width: 480px) {
    .fancy-qr-section {
        padding: 3rem 1rem;
    }

    .section-title {
        font-size: 1.75rem;
    }

    .section-header {
        margin-bottom: 2.5rem;
    }

    .feature-grid {
        grid-template-columns: 1fr;
    }

    .cta-button {
        padding: 0.875rem 1.75rem;
        font-size: 0.9375rem;
    }

    .decorative-circle {
        display: none;
    }
}

@media (max-width: 360px) {
    .section-title {
        font-size: 1.5rem;
    }

    .feature-content h3 {
        font-size: 1.1rem;
    }

    .feature-content p {
        font-size: 0.875rem;
    }
}

/* Animation Styles */
[data-aos] {
    transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

[data-aos="fade-up"] {
    transform: translateY(30px);
    opacity: 0;
}

[data-aos].aos-animate {
    transform: translateY(0);
    opacity: 1;
}

 /* Gallery Section Styling */
 .gallery-section {
    padding: 60px 20px;
    max-width: 1200px;
    margin: 0 auto;
}

.section-header {
    text-align: center;
    margin-bottom: 40px;
}

.section-title {
    font-size: 2.2rem;
    color: #222;
    margin-bottom: 15px;
    font-weight: 600;
    background: linear-gradient(90deg, #3a7bd5, #00d2ff);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.section-subtitle {
    font-size: 1rem;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
}

/* Compact Gallery Styles */
.compact-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 12px;
    width: 100%;
}

.gallery-item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    background: #fff;
    height: 180px; /* Fixed height for uniformity */
}

.gallery-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.gallery-img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.gallery-item:hover .gallery-img {
    transform: scale(1.03);
}

.gallery-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 12px 10px;
    color: white;
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 100%);
    font-size: 0.9rem;
    font-weight: 500;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
}

.gallery-item:hover .gallery-caption {
    opacity: 1;
    transform: translateY(0);
}

/* Lightbox Styles */
.lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    justify-content: center;
    align-items: center;
}

.lightbox-content {
    max-width: 90%;
    max-height: 90%;
}

.lightbox-img {
    max-width: 100%;
    max-height: 80vh;
    display: block;
    margin: 0 auto;
    border-radius: 6px;
}

.lightbox-caption {
    color: white;
    text-align: center;
    margin-top: 12px;
    font-size: 1rem;
}

.close-lightbox {
    position: absolute;
    top: 20px;
    right: 25px;
    color: white;
    font-size: 2rem;
    cursor: pointer;
    transition: all 0.2s;
}

.close-lightbox:hover {
    transform: scale(1.1);
}

/* Responsive adjustments */
@media (max-width: 900px) {
    .compact-gallery {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    }
    
    .gallery-item {
        height: 150px;
    }
    
    .section-title {
        font-size: 1.8rem;
    }
}

@media (max-width: 600px) {
    .compact-gallery {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
        gap: 8px;
    }
    
    .gallery-item {
        height: 120px;
        border-radius: 6px;
    }
    
    .gallery-section {
        padding: 40px 15px;
    }
    
    .section-title {
        font-size: 1.6rem;
    }
    
    .gallery-caption {
        font-size: 0.8rem;
        padding: 8px;
    }
}

.sponsor-promotion {
    --primary: #2563eb;
    --primary-light: #dbeafe;
    --secondary: #7c3aed;
    --accent: #dc2626;
    padding: 5rem 0;
    background: linear-gradient(to bottom, #f8fafc, #f1f5f9);
    position: relative;
}

.sponsor-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.sponsor-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 3rem;
    align-items: center;
}

.sponsor-header {
    margin-bottom: 2.5rem;
}

.sponsor-badge {
    display: inline-block;
    background-color: var(--primary-light);
    color: var(--primary);
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 1rem;
}

.sponsor-title {
    font-size: 2.25rem;
    font-weight: 800;
    color: #1e293b;
    line-height: 1.2;
    margin-bottom: 1.25rem;
}

.sponsor-description {
    font-size: 1.125rem;
    color: #475569;
    line-height: 1.6;
    max-width: 90%;
}

.sponsor-benefits {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 1rem;
}

.benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
    background-color: white;
    border-radius: 0.75rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s, box-shadow 0.2s;
}

.benefit-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.benefit-icon {
    flex-shrink: 0;
    width: 1.75rem;
    height: 1.75rem;
    background-color: var(--primary-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
}

.benefit-icon svg {
    width: 1rem;
    height: 1rem;
    fill: currentColor;
}

.benefit-item span {
    font-size: 1rem;
    color: #334155;
    line-height: 1.5;
}

.sponsor-steps {
    display: grid;
    gap: 1.5rem;
}

.step-card {
    position: relative;
    padding: 2rem;
    background-color: white;
    border-radius: 1rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
}

.step-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
}

.step-indicator {
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 3rem;
    font-weight: 800;
    color: #e2e8f0;
    line-height: 1;
    z-index: 0;
}

.step-content {
    position: relative;
    z-index: 1;
}

.step-icon {
    width: 3rem;
    height: 3rem;
    background-color: var(--primary-light);
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
    color: var(--primary);
}

.step-icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: currentColor;
}

.step-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 0.75rem;
}

.step-text {
    color: #64748b;
    line-height: 1.6;
    margin: 0;
}

.step-highlight .step-icon {
    background-color: #ede9fe;
    color: var(--secondary);
}

.step-highlight::after {
    background: linear-gradient(to bottom right, #ede9fe, white);
}

.step-accent .step-icon {
    background-color: #fee2e2;
    color: var(--accent);
}

@media (max-width: 768px) {
    .sponsor-promotion {
        padding: 3rem 0;
    }
    
    .sponsor-title {
        font-size: 1.75rem;
    }
    
    .sponsor-description {
        max-width: 100%;
    }
}