/* Global */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: #5300a0 #7f42a7; 
}

:root {
    --main-color: #5300a0;
    --sec-color: #7f42a7;
    --section-padding: 80px;
    --slide-count: 4;
    --slide-height: 400px;
    --slide-width: 200px;
    --gap: 7px;
    --time: 15s;
    --p-font-size: 1.2rem;
}

::selection {
    color: #fff;
    background-color: #5300a0;
}

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background-color: #5300a0;
}

::-webkit-scrollbar-thumb {
    background-color: #7f42a7;
    border-radius: 10px;
}

body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    background-color: #000;
    color: #e7e7e7;
    min-height: 100vh;
    line-height: 1.5;
}

@media (max-width: 768px) {
    body {
        overflow-x: hidden;
    }
}


ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

a {
    text-decoration: none;
}

.container {
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 768px) {
    .container {
        width: 750px;
    }
}

@media (min-width: 992px) {
    .container {
        width: 970px;
    }
} 

@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
}

@media (max-width: 991px) {
    [data-aos] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
        pointer-events: auto !important;
    }
}

@media (max-width: 991px) {
    .image-gradient {
        visibility: hidden;
    }
    .layer-blur {
        visibility: hidden;
    }
}

.main-heading {
    text-align: center;
}

.main-heading h2 {
    font-weight: normal;
    font-size: 40px;
    position: relative;
    text-transform: uppercase;
    margin-bottom: 70px;
    margin-top: 0;
}

.main-heading h2::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    height: 2px;
    width: 120px;
    background-color: #333;
    bottom: -25px;
}

.main-heading h2::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2px solid #333;
    background-color: #fff;
    bottom: -32px;
}

.main-heading p {
    width: 550px;
    max-width: 100%;
    margin: 0 auto 60px;
    line-height: 2;
    color: #777;
}

.image-gradient {
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0.5;
    z-index: -10;
}

.layer-blur {
    height: 0;
    width: 30rem;
    position: absolute;
    top: 20%;
    right: 0;
    box-shadow: 0 0 700px 15px #fff;
    rotate: -30deg;
    z-index: -1;
}

.dots {
    background-image: url(../images/home/elements/dots.png);
    height: 186px;
    width: 204px;
    background-repeat: no-repeat;
    position: absolute;
    z-index: -1;
}

.dots-up {
    top: 200px;
    right: 0;
}

.dots-down {
    bottom: 200px;
    left: 0;
}

.shapes {
    background-image: url(../images/home/elements/dots.png);
    height: 186px;
    width: 204px;
    background-repeat: no-repeat;
    position: absolute;
    z-index: -1;
}

.shapes-up {
    top: 100px;
    right: 0;
}

.shapes-down {
    bottom: 100px;
    left: 0;
}

.comma {
    background-image: url(../images/home/elements/comma.png);
    opacity: 0.3;
    width: 320px;
    height: 240px;
    background-repeat: no-repeat;
    position: absolute;
    z-index: -1;
}

.comma-up {
    top: 100px;
    right: -40px;
}

.comma-down {
    bottom: 100px;
    left: -40px;
}

.phone {
    background-image: url(../images/home/elements/comma.png);
    opacity: 0.3;
    width: 320px;
    height: 240px;
    background-repeat: no-repeat;
    position: absolute;
    z-index: -1;
}

.phone-up{
    top: 100px;
    right: -116px;
}

.phone-down {
    bottom: 100px;
    left: -79px;
    rotate: -69deg;
}

/* Home Page */
/* - Header - */
header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 5rem;
    z-index: 999;
    height: 80px;
    box-shadow: rgba(122, 122, 122, 0.25) 0px 25px 50px -12px;
}

header a {
    color: #fff;
}

header .logo img{
    width: 150px;
}

header ul {
    display: flex;
    align-items: center;
    gap: 3rem;
    margin-left: -5px;
}

header ul li {
    height: 30px;
}

header nav a {
    height: 100%;
    font-size: 1rem;
    letter-spacing: 0.1rem;
    transition: color 0.2s ease;
    text-decoration: none;
    color: inherit;
}

header nav a:hover {
    color: #a7a7a7;
}

header .btn-signing {
    background-color: #fff;
    color: black;
    padding: 0.8rem 2rem;
    border-radius: 50px;
    border: none;
    font-size: 1rem;
    font-weight: 500;
    transition: background-color 0.2s ease;
    cursor: pointer;
}

header .btn-signing:hover {
    background-color: #a7a7a7;
}

header a img {
    width: 130px;
}

/* -- Responsive Header -- */
.sidebar {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 250px;
    z-index: 1000;
    background-color: rgba(255, 255, 255, 0.084);
    box-shadow: -10px 0 10px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
    display: none;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 20px;
}

.sidebar li {
    width: 100%;
}

.sidebar a {
    width: 100%;
}

.menu-button {
    display: none;
}

header  i {
    font-size: 22px;
}

@media (max-width: 800px) {
    header {
        padding-left: 1rem;
    }
    
    .hide-on-phone {
        display: none;
    }

    .menu-button {
        display: block;
    }

    header .btn-signing.ex {
        display: none;
    }

    header .btn-signing {
        text-align: center;
    }

    header h1 {
        font-size: 1.4rem;
    }

    header ul li a i.bx-menu {
        margin-left: auto;
    }

    header a img {
        margin-right: 55px;
    }
}

@media (max-width: 400px) {
    .sidebar {
        width: 100%;
    }
}

/* User Header */
.header-user-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-user-info .credits {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3px 5px;
    border-radius: 5px;
    background-color: #333336;
    color: rgb(255, 255, 255);
    margin-right: 20px;
}

.header-user-info .credits span{
    display: block;
    padding-right: 3px;
}

.header-user-info .user {
    position: relative;
    cursor: pointer;
    padding-right: 10px;
}

.header-user-info ul {
    z-index: 999;
    display: none;
    margin: 0;
    padding: 0;
    background-color: #333336;
    position: absolute;
    right: 1px;
    min-width: 200px;
    top: calc(100% + -4px);
    border-radius: 5px;
    height: 184px;
}

.header-user-info .user:hover ul{
    display: block;
}

.header-user-info ul li a {
    display: block;
    padding: 10px 15px 10px 15px;
    color: #fff;
    transition: 0.3s;
    margin-top: 10px;
}

.header-user-info ul li i {
    padding-right: 5px;
}


.header-user-info ul li:last-child a{
    color: rgb(210, 76, 76);
} 

.header-user-info ul li a:hover {
    padding-left: 25px;
}

/* -- Hero -- */
.hero {
    width: 100%;
    margin: 0 auto;
    padding: 0 2rem;
    position: relative;
    overflow: hidden;
}

.hero main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: calc(90vh - 6rem);
}

.hero main .content {
    max-width: 40rem;
    margin-left: 10%;
    z-index: 999;
    margin-bottom: 100px;
}

.hero main .tag-box {
    position: relative;
    width: 18rem;
    height: 2.5rem;
    border-radius: 50px;
    background: linear-gradient(to right, #656565, #7f42a7, #6600c5, #5300a0, #757575, #656565);
    background-size: 200%;
    animation: animationGradient 2.5s linear infinite;
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
}

@keyframes animationGradient {
    to {
        background-position: 200%;
    }
}

.hero main .tag-box .tag {
    position: absolute;
    inset: 3px 3px 3px 3px;
    background-color: #000;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.5s ease;
    cursor: pointer;
}

.hero main .tag-box:hover .tag {
    color: #5300a0;
}

.hero main .content h1 {
    font-size: 4rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    margin: 2rem 0;
    line-height: 1.2;
    text-shadow: 0 0 10px rgba(128, 128, 128, 0.418);
}

.hero main .description {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    max-width: 35em;
    color: #a2a2a2;
}

@media (max-width: 852px) {
    .hero main .description {
        color: #d1d1d1;
    }  
} 

.hero main .buttons {
    display: flex;
    gap: 1rem;
    margin-top: 3rem;
}

.hero main .btn-get-started {
    text-decoration: none;
    border: 1px solid #2a2a2a;
    color: #8400ff;
    padding: 0.7rem 1.2rem;
    border-radius: 50px;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    transition: background-color 0.2s ease;
}

.hero main .btn-get-started:hover {
    background-color: #1a1a1a;
}

.hero main .btn-signing-main {
    text-decoration: none;
    background-color: lightgray;
    color: #000;
    padding: 0.6rem 2.5rem;
    border-radius: 50px;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    transition: background-color 0.2s ease;
}

.hero main .btn-signing-main:hover {
    background-color: gray;
}

/* -- IMG Slider -- */
.hero .main-content {
    display: grid;
    grid-template-columns: 50% 50%;
    place-items: center;
    height: calc(100vh - 80px);
    overflow: hidden;
}

.hero .sliders {
    display: flex;
    gap: 35px;
    transform: rotate(8deg);
}

.hero .sliders img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero .sliders  .slider-container {
    width: var(--slide-width);
    height: 100vh;
    background: transparent;
    position: relative;
}

.hero .sliders .slider-track {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    animation: moveUp calc(var(--time) * var(--slide-count)) linear infinite;
}

.hero #slider2 .slider-track {
    animation: moveDown calc(var(--time) * var(--slide-count)) linear infinite;
}


.hero .slide {
    width: var(--slide-width);
    height: var(--slide-height);
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(rgba(255, 255, 255, 0.1), transparent, rgba(255, 255, 255, 0.1));
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 120px;
    margin: var(--gap) 0;
    padding: 10px;
    transition: 0.2s ease;
}

.hero .slide:hover {
    filter: blur(.7px);
}

.hero .slide img {
    border-radius: inherit;
}

@keyframes moveUp {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(calc(-1 * var(--slide-count) * (var(--slide-height) + var(--gap) * 2)));
    }
}

@keyframes moveDown {
    0% {
        transform: translateY(calc(-1 * var(--slide-count) * (var(--slide-height) + var(--gap) * 2)));
    }
    100% {
        transform: translateY(0);
    }
}

/* -- Responsive Hero -- */
@media (max-width: 1500px) {
    :root{
        --slide-height: 350px;
        --slide-width: 180px;
    }

    .hero {
        grid-template-columns: 45% 55%;
    }

    .hero .sliders {
        gap: 15px;
    }
}

@media (max-width: 1200px) {
    :root{
        --slide-height: 300px;
        --slide-width: 150px;
    }

    .hero {
        grid-template-columns: 40% 60%;
    }

    .hero main {
        padding-left: 60px;
    }

    .hero main .content {
        width: 500px;
        margin-left: 10%;
        z-index: 999;
    }
}

@media (max-width: 850px) {
    :root{
        --slide-height: 350px;
        --slide-width: 180px;
    }

    .hero {
        padding: 0 1rem;
    }

    .hero .main-content{
        grid-template-columns: 23% 50%;
        /* height: calc(75vh - 80px); */
    }

    .hero .sliders {
        gap: 30px;
    }

    .hero main .content {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 2;
        background-color: rgba(0, 0, 0, 0.7);
        padding: 40px;
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-left: 0;
}

    .hero main .content h1{
        font-size: 38px;
    }

    .hero main .content p{
        font-size: 15px;
    }

    .hero main .content .buttons .btn-get-started {
        font-size: 15px;
    }

    .hero main .content .buttons .btn-signing-main {
        font-size: 15px;
    }
}

@media (max-width: 650px) {
    :root {
        --slide-height: 300px;
        --slide-width: 150px;
    }

    .sliders {
        gap: 15px;
    }

}

@media (max-width: 350px) {
    .hero main .content {
        padding: 30px;
}}


/* -- Descover Section -- */
.discover {
    width: 100%;
    height: 100%;
    padding-top: 40px;
    padding-bottom: var(--section-padding);
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #fff;
    background-color: #161616;
}

.discover .image-box {
    width: 360px;
    height: 510px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    transition: all 0.9s ease;
}

.discover .image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50px;
    filter: brightness(0.9);
}

.discover p {
    font-size: 12px;
}

.discover h1 {
    font-weight: 600;
    font-size: 60px;
    max-width: 1150px;
    text-align: center;
    margin: 25px 0;
    text-transform: uppercase;
    background: linear-gradient(to right, #9014e2, #ffffff, #ffffff, #ffffff, #ffffff, #9014e2);
    background-size: 200%;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: animate-gradient 1.8s linear infinite;
}

@keyframes animate-gradient {
    to {
        background-position: 200%;
    }
}

.discover h4 {
    margin-top: 50px;
    margin-bottom: 0;
}

.discover h5 {
    margin-top: 5px;
    color: gray;
    max-width: 425px;
    text-align: center;
    line-height: 25px;
}

/* Discover Responsive */
@media (max-width: 992px) {
    .discover {
        text-align: center;
    }

    .discover h1 {
        font-size: 50px;
    }
} 

@media (max-width: 768px) {
    .discover h1 {
        font-size: 40px;
    }
}


/* - Features Section - */
.features {
    padding-top: 20px;
    padding-bottom: 50px;
    position: relative;
}

.features .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 70px;
    position: relative;
    padding-top: 30px;
}

.features .feature {
    position: relative;
    width: 300px;
    height: 350px;
    background-color: #1f1f1f;
    display: flex;
    justify-content: center;
    align-items: center;
}

.features .main-heading h2 {
    margin-bottom: 30px;
}

.features .feature .content {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    gap: 20px;
    padding: 0 20px;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.features .feature .content .icon {
    color: var(--clr);
    width: 80px;
    height: 80px;
    box-shadow: 0 0 0 4px #2e2e2e, 0 0 0 6px var(--clr);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2.5rem;
    background-color: #2e2e2e;
    transition: 0.3s ease-in-out;
}

.features .feature:hover .content .icon {
    background: var(--clr);
    color: #2e2e2e;
    box-shadow: 0 0 0 4px #2e2e2e, 0 0 0 300px var(--clr);
}

.features .feature .content .text h3{
    font-size: 1.5em;
    color: #fff;
    font-weight: 500;
    transition: 0.5s ease-in-out;
    margin: 10px 0 0 0;
}

.features .feature:hover .content .text h3{
    color: #2e2e2e;
}

.features .feature .content .text p {
    color: #999;
    transition: 0.5s ease-in-out;
    margin: 10px 0 0 0;
}

.features .feature:hover .content .text p {
    color: #2e2e2e;
}

.features .feature .content .text a {
    position: relative;
    background: var(--clr);
    color: #2e2e2e;
    padding: 8px 15px;
    display: inline-block;
    text-decoration: none;
    font-weight: 500;
    margin-top: 10px;
    transition: 0.5s ease-in-out;
}

.features .feature:hover .content .text a {
    background: #2e2e2e;
    color: var(--clr);
}

/* - Preview Section - */
.preview {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #161616;
}

.preview .container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.preview .container .wrapper {
    height: 50vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.preview .container .wrapper .contain {
    height: 400px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: start;
}

.preview .container .wrapper .contain .card {
    width: 80px;
    border-radius: .75rem;
    background-size: cover;
    background-position: center;
    cursor: pointer;
    overflow: hidden;
    border-radius: 2rem;
    margin: 0 10px;
    display: flex;
    align-items: flex-end;
    transition: .6s cubic-bezier(.28,-0.03,0,.99);
    box-shadow: 0px 10px 30px -5px rgba(0,0,0,0.8);
    border: 2px solid #fff;
}

.preview .container .wrapper .contain .card > .row {
    color: white;
    display: flex;
    flex-wrap: nowrap;
}

.preview .container .wrapper .contain .card > .row > .icon {
    background: #223;
    color: white;
    border-radius: 50%;
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 15px;
}

.preview .container .wrapper .contain .card > .row > .description {
    display: flex;
    justify-content: center;
    flex-direction: column;
    overflow: hidden;
    height: 80px;
    width: fit-content;
    opacity: 0;
    transform: translateY(30px);
    transition-delay: .3s;
    transition: all .3s ease;
}

.preview .container .wrapper .contain .description p {
    color: #b0b0ba;
    padding-top: 5px;
    margin: 0;
}

.preview .container .wrapper .contain .description h4 {
    text-transform: uppercase;
    margin: 0;
}

.preview .container .wrapper .contain input {
    display: none;
}

.preview .container .wrapper .contain input:checked + label {
    width: 600px;
}

.preview .container .wrapper .contain input:checked + label .description {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

.preview .container .wrapper .contain .card[for="c1"] {
    background-image: url('../../assets/images/home/preview/img-1.webp');
}

.preview .container .wrapper .contain .card[for="c2"] {
    background-image: url('../../assets/images/home/preview/img-2.webp');
}

.preview .container .wrapper .contain .card[for="c3"] {
    background-image: url('../../assets/images/home/preview/img-3.webp');
}

.preview .container .wrapper .contain .card[for="c4"] {
    background-image: url('../../assets/images/home/preview/img-4.webp');
}

.preview .text p{
    width: 400px;
}

.preview .container > #image-comparison-slider {
    margin-top: 120px;
}

.preview .container .image img {
    width: 600px;
    height: auto;
}



/* أسلوب شريط التحميل الجديد */
.progress-tracker {
    position: absolute;
    bottom: -10px;
    left: 0;
    height: 3px;
    width: 0;
    background-color: #ffffff;
    z-index: 10;
    transition: width 2s ease-in;
    border-radius: 3px;
}

.preview .contain {
    position: relative;
}

/* تعديلات للبطاقات لاستيعاب شريط التحميل */
.preview .container .wrapper {
    padding-bottom: 15px;
}


/* Preview Responsive */
@media (max-width: 992px) {
    .preview .container .wrapper {
        width: 100%;
    }

    .preview .container .wrapper .contain {
        width: 100%;
    }

    .preview .container .wrapper .contain .card > .row > .icon {
        width: 30px;
        height: 30px;
        margin: 20px;
        margin-left: 12px;
    }
} 

@media (max-width: 768px) {
    .preview .container .wrapper .contain .card > .row > .icon {
        width: 25px;
        height: 25px;
        margin: 20px;
        margin-left: 1px;
        margin-right: 3px;
    }
}

/* - Gallery Section - */
.gallery {
    position: relative;
    background-color: #161616;
    overflow: hidden;
}

.gallery .container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 60px;
    padding-top: 100px;
    padding-bottom: 40px;
}

.gallery .container .content {
    max-width: 35%;
}

.gallery .container .content p {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    color: gray;
}

.gallery .container .content  .buttons {
    display: flex;
    gap: 1rem;
    margin-top: 10px;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}

.gallery .container .content  .btn-get-started {
    text-decoration: none;
    border: 1px solid #2a2a2a;
    padding: 0.7rem 1.2rem;
    border-radius: 50px;
    background-color: #fff;
    font-weight: 600;
    letter-spacing: 0.1em;
    transition: background-color 0.2s ease;
}

.gallery .container .content  .btn-get-started:hover {
    background-color: rgb(190, 190, 190);
}

.gallery .container .content  .btn-blog {
    text-decoration: none;
    background-color: var(--main-color);
    color: #fff;
    padding: 0.6rem 2.5rem;
    border-radius: 50px;
    font-weight: 600;
    letter-spacing: 0.1em;
    transition: background-color 0.2s ease;
}

.gallery .container .content  .btn-blog:hover {
    background-color: rgb(91, 9, 123);
}


/* -- Img Comparison Slider -- */
:root {
    --image-comparison-slider-width: min(80vw, 600px);
    --image-comparison-slider-handle-width: 50px;
}

.image-comparison-slider {
    position: relative;
    width: var(--image-comparison-slider-width);
    overflow: hidden;
    border-radius: 0.5rem;
    box-shadow: -7px 5px 16px 1px rgba(56, 86, 122, 0.6);
    cursor: col-resize;
  }
  .image-comparison-slider img {
    display: block;
    width: var(--image-comparison-slider-width);
    height: auto;
    max-height: 80vh;
    object-fit: cover;
    pointer-events: none;
    user-select: none;
  }
  .image-comparison-slider .img-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
    transform: translateZ(0);
  }
  .image-comparison-slider .img-wrapper img {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
  }
  .image-comparison-slider .label {
    position: absolute;
    top: 1rem;
    z-index: 3;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.33);
    border-radius: 0.25rem;
    padding: 0.5rem 0.75rem;
    font-size: 0.85rem;
    text-align: center;
    letter-spacing: 1px;
    user-select: none;
    opacity: 0;
    transition: 0.25s cubic-bezier(.68,.26,.58,1.22);
  }
  .image-comparison-slider:hover .label {
    opacity: 1;
  }
  .image-comparison-slider .label.label-before {
    left: 1rem;
  }
  .image-comparison-slider .label.label-after {
    right: 1rem;
    background-color: #5300a0;
  }
  .image-comparison-slider .handle {
    position: absolute;
    top: 0;
    left: calc(50% - var(--image-comparison-slider-handle-width)/2);
    width: var(--image-comparison-slider-handle-width);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    user-select: none;
    z-index: 2;
  }
  .image-comparison-slider .handle-line {
    width: 2px;
    flex-grow: 1;
    background-color: #fff;
  }
  .image-comparison-slider .handle-circle {
    width: var(--image-comparison-slider-handle-width);
    height: var(--image-comparison-slider-handle-width);
    color: #fff;
    border: 2px solid #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
  }
  
  @media (max-width: 768px) {
    :root {
        --image-comparison-slider-width: 90vw;
    }
  }

/* Gallery Responsive */
@media (max-width: 992px) {
    .gallery .container {
        flex-direction: column;
    }

    .gallery .container.reversed {
        flex-direction: column-reverse;
    }

    .gallery .container .content {
        max-width: none;
        width: 100%;
        text-align: center;
    }
} 

@media (max-width: 768px) {
    .gallery .container .content h1 {
        font-size: 30px;
        margin-top: 0px;
    }

    .gallery .container .content p {
        font-size: 17px;
    }

    .image-comparison-slider {
        width: 100%;
    }
}


/* - Buy Now Section - */
.buy-now {
    padding-top: 50px;
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #0000;
    overflow: hidden;
}

.buy-now .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.buy-now .container .content {
    width: 600px;
    background: #baadad21;
    padding: 25px;
    border: 1px solid rgba(106, 106, 106, 0.445);
    border-radius: 5px;
}

.buy-now .container .content h1 {
    font-size: 2.4rem;
}

.buy-now .container .buttons {
    display: flex;
    gap: 1rem;
    margin-top: 3rem;
    align-items: center;
    justify-content: center;
}

.buy-now .container .btn-get-started {
    color: #7d13ff;
    text-decoration: none;
    border: 1px solid #2a2a2a;
    padding: 0.7rem 1.2rem;
    border-radius: 50px;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    transition: background-color 0.2s ease;
}

.buy-now .container .btn-get-started:hover {
    background-color: #1a1a1a;
}

.buy-now .container .btn-signing-main {
    text-decoration: none;
    background-color: var(--main-color);
    color: #fff;
    padding: 0.6rem 2.5rem;
    border-radius: 50px;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    transition: background-color 0.2s ease;
}

.buy-now .container .btn-signing-main:hover {
    background-color: rgb(91, 9, 123);
}

.buy-now .container .content .image img{
    width: 100%;
    border-radius: 4px;
}

.buy-now .container .face {
    position: relative;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background-color: #ffcd00;
    display: flex;
    justify-content: center;
    align-items: center;
}

.buy-now .container .face::before {
    content: "";
    position: absolute;
    top: 210px;
    width: 150px;
    height: 20px;
    background-color: #b57700;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    transition: 0.5s;
}

.buy-now .container .face.smile::before {
    top: 180px; 
    width: 150px;
    height: 70px;
    border-bottom-left-radius: 70px;
    border-bottom-right-radius: 70px;
}

.buy-now .container .face .eyes {
    position: relative;
    top: -40px;
    display: flex;
}

.buy-now .container .face .eyes .eye {
    position: relative;
    width: 80px;
    height: 80px;
    display: block;
    background-color: #fff;
    margin: 0 15px;
    border-radius: 50%;
}

.buy-now .container .face .eyes .eye::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 25px;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    background: #333;
    border-radius: 50%;
}

/* Buy Now Resposive */
@media (max-width: 768px) {
    
}

@media (max-width: 992px) {
    .buy-now .container .face {
        display: none;
    }

    .buy-now .container .content {
        width: 100%;
    }

    .buy-now .container .content h1 {
        font-size: 30px;
    }

    .buy-now .container .buttons .btn-get-started {
        font-size: 15px;
    }

    .buy-now .container .buttons .btn-signing-main {
        font-size: 15px;
    }
} 

/* - Reviews Section - */
.reviews {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #161616;
    overflow: hidden;
}

.reviews .testimonials-item {
    background-color: hsl(0, 0%, 100%);
    padding: 30px;
    border-radius: 30px;
}

.reviews .testimonials-item .info {
    display: flex;
    align-items: center;
}

.reviews .testimonials-item img{
    max-width: 80px;
    border-radius: 50%;
    margin-right: 20px;
    vertical-align: middle;
}

.reviews .testimonials-item .name {
    font-size: 24px;
    text-transform: capitalize;
    font-weight: 600;
    color: hsl(0, 0%, 0%);
    line-height: 1.2;
}

.reviews .testimonials-item .job {
    text-transform: capitalize;
    color: hsl(0, 0%, 40%);
}

.reviews .testimonials-item h3{
    margin: 0;
}

.reviews .testimonials-item p {
    margin-top: 20px;
    color: hsl(0, 0%, 40%);
}

.reviews .testimonials-item .rating {
    margin-top: 15px;
    font-size: 14px;
    color: hsl(36, 88%, 66%);
}

.reviews .swiper-pagination {
    position: relative;
    margin-top: 40px;
    bottom: auto;
}

.reviews .swiper-pagination-bullet {
    height: 12px;
    width: 12px;
    background-color: hsl(0, 0%, 100%);
}

/* - Pricing Section - */
.pricing {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #0000;
    overflow: hidden;
}

.pricing .main-heading p {
    margin-bottom: 0;
}

.pricing .price {
    margin-top: 0;
}

.pricing-plans {
    gap: 32px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    width: 100%;
    padding: 64px;
    padding-top: 0px;
}

.pricing-card {
    --col: #e4e4e7;
    position: relative;
    min-width: 360px;
    padding: 32px;
    padding-bottom: 96px;
    border-radius: 4px;
    border: 1px solid #262626;
    background-color: #26262620;
    box-shadow: 0 0 32px transparent;
    text-align: center;
}

.pricing-card.basic {
    --col: #0891b2;
}

.pricing-card.standard {
    --col: #059669;
    border-color: var(--col);
}

.pricing-card.premium {
    --col: #c026d3;
}

.pricing-card.standard.popular .label{
    position: absolute;
    writing-mode: vertical-rl;
    background-color: var(--main-color);
    color: #fff;
    padding: 10px 5px 35px 10px;
    font-size: 18px;
    right: 20px;
    width: 40px;
    text-align: center;
    top: 0;
}

.pricing-card.standard.popular .label::before{
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    border-style: solid;
    border-color: transparent transparent #000 transparent;
    border-width: 20px;
}

.pricing-card:hover {
    border-color: var(--col);
    background-color: #26262680;
    box-shadow: 0 0 32px #171717;
}

  .pricing-card > *:not(:last-child) {
    margin-bottom: 32px;
}

.pricing-card .heading h4 {
    padding-bottom: 12px;
    color: var(--col);
    font-size: 24px;
    font-weight: normal;
}

.pricing-card .heading p {
    color: #a3a3a3;
    font-size: 14px;
    font-weight: lighter;
}

.pricing-card .price {
    position: relative;
    color: var(--col);
    font-size: 60px;
    font-weight: bold;
}

.pricing-card .price sub {
    position: absolute;
    bottom: 14px;
    color: #a3a3a3;
    font-size: 14px;
    font-weight: lighter;
}

.pricing-card .features li {
    padding-bottom: 16px;
    color: #a3a3a3;
    font-size: 16px;
    font-weight: lighter;
    text-align: left;
}

.pricing-card .features li i,
.pricing-card .features li strong {
    color: #e4e4e7;
    font-size: 16px;
    text-align: left;
}

.pricing-card .features li strong {
    padding-left: 24px;
}

.pricing-card .cta-btn {
    position: absolute;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
    width: 200px;
    padding: 12px;
    border-radius: 4px;
    border: 1px solid var(--col);
    background-color: var(--col);
    color: #e4e4e7;
    font-size: 20px;
    font-weight: bold;
    cursor: pointer;
}

.pricing-card .cta-btn:active {
    background-color: transparent;
    color: var(--col);
    transition: all 0.3s ease;
}

/* DropDown Currency List */
.pricing .dropdown {
    width: fit-content;
    position: relative;
    margin: 2em auto;
}

.pricing .dropdown .select {
    background-color: #2a2f3b;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 2px #2a2f3b solid;
    border-radius: 0.5em;
    padding: 1em;
    cursor: pointer;
    transition: 0.3s;
}

.pricing .dropdown .select-clicked {
    border: 2px #26489a solid;
    box-shadow: 0 0 0.8em #26489a;
}

.pricing .dropdown .select:hover {
    background: #323741;
}

.pricing .dropdown .caret {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #fff;
    transition: 0.3s;
    margin-left: 10px;
    margin-top: 6px;
}

.pricing .dropdown .caret-rotate {
    transform: rotate(180deg);
}

.pricing .dropdown .menu {
    padding: 0.2em 0.5em;
    background: #323741;
    border: 1px #363a43 solid;
    box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.2);
    border-radius: 0.5em;
    color: #9fa5b5;
    position: absolute;
    top: 3em;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    opacity: 0;
    display: none;
    transition: 0.2s;
    z-index: 1;
    margin-top: 20px;
}

.pricing .dropdown .menu li{
    padding: 0.7em 0.5em;
    margin: 0.3em 0;
    border-radius: 0.5em;
    cursor: pointer;
}

.pricing .dropdown .menu li:hover{
    background: #2a2d35;
}

.pricing .dropdown .active {
    background: #23242a;
} 

.pricing .dropdown .menu-open {
    display: block;
    opacity: 1;
} 

/* - Contact Us - */
.contact {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #161616;
    overflow: hidden;
}

.contact h2 {
    margin-bottom: 3rem;
    color: white;
}

.contact form {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3rem;
    text-align: center;
}

.contact form .input-box {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.contact form .input-box input, 
.contact form textarea {
    width: 100%;
    padding: 2rem;
    font-size: 1.2rem;
    color: white;
    background: #131313;
    border-radius: 2rem;
    border: 2px solid #8a50f9;
    margin: 1.5rem 0;
    resize: none;
}

.contact form .btn {
    margin-top: 2rem;
    display: inline-block;
    padding: 1rem 2.8rem;
    background: #8a50f9;
    box-shadow: 0 0 25px #8a50f9;
    border-radius: 4rem;
    font-size: 1.2rem;
    color: black;
    border: 2px solid transparent;
    letter-spacing: 0.1rem;
    font-weight: 600;
    transition: 0.3s ease-in-out;
    cursor: pointer;
}

.contact form .btn:hover {
    transform: scale(1.05);
    box-shadow: 0 0 50px var(--main-color);
}

/* Contact Us Resposive */
@media (max-width: 768px) {
    .contact form {
        flex-direction: column;
    }
}


/* - FAQ Section - */
.faq-section {
    padding-top: 20px;
    padding-bottom: var(--section-padding);
    position: relative;
    overflow: hidden;
}

.faq-section  .container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.faq-section .faq {
    max-width: 900px;
    margin-top: 15px;
    padding-bottom: 0px;
    border-bottom: 2px solid #fff;
    cursor: pointer;
}

.faq-section .question {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.faq-section .question h3 {
    font-size: 26px;
}

.faq-section .question i {
    font-size: 2rem;
    transition: transform 0.5s ease-in;
}

.faq-section .answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 1.2s ease;
}

.answer p {
    padding-top: 0px;
    margin-top: 0px;
    line-height: 1.6;
    font-size: 20px;
    color: gray;
}

.faq-section .faq.active i {
    transform: rotate(180deg);
}

.faq-section .faq.active .answer {
    max-height: 300px;
    animation: fade 1s ease-in-out;
}

@keyframes fade {
    from {
        opacity: 0;
        transform: translateY(-10px);
    } 
    to {
        opacity: 1;
        transform: translateY(0px);
    }
}

/* FAQ Resposive */
@media (max-width: 768px) {
    .faq-section .question h3 {
        font-size: 20px;
    }

    .faq-section .answer p {
        font-size: 16px;
    }
}


/* - Footer - */
.footer {
    background-color: #191919;
    padding: 70px 0 0;
}

.footer .container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 40px;
}

.footer .box h3 {
    color: white;
    font-size: 50px;
    margin: 0 0 20px;
}

.footer .box .social {
    display: flex;
}

.footer .box .social li {
    margin-right: 10px;
}

.footer .box .social li a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: #313131;
    color: #b9b9b9;
    width: 50px;
    height: 50px;
    font-size: 20px;
    transition: .3s;
}

.footer .box .social .facebook:hover {
    background-color: #1877f2;
}

.footer .box .social .twitter:hover {
    background-color: #1da1f2;
}

.footer .box .social .youtube:hover {
    background-color: #ff0000;
}
.footer .box .text {
    line-height: 2;
    color: #b9b9b9;
}

.footer .box .links li {
    padding: 15px 0;
    transition: .3s;
}

.footer .box .links li:not(:last-child) {
    border-bottom: 1px solid #444;
}

.footer .box .links li:hover {
    padding-left: 10px;
}

.footer .box .links li:hover a {
    color: white;
}

.footer .box .links li a {
    color: #b9b9b9;
    transition: .3s;
}

.footer .box .links li a::before {
    font-weight: 900;
    margin-right: 10px;
    color: #2196f3;
}

.footer .box .links li i{
    padding-right: 5px;
}

.footer .box .line {
    display: flex;
    align-items: center;
    color: #b9b9b9;
    margin-bottom: 30px;
}

.footer .box .line i {
    font-size: 30px;
    margin-right: 10px;
    color: #2196f3;
}

.footer .box .line .info {
    line-height: 1.7;
    flex: 1;
}

.footer .footer-gallery img {
    border: 3px solid white;
    margin: 2px;
    width: 100px;
}

.footer .box .line .info span {
    display: block;
}

.footer .copyright {
    text-align: center;
    color: white;
    padding: 25px 0;
    margin: 50px 0 0;
    border-top: 1px solid #444;
}

@media (max-width: 767px) {
    .footer {
        text-align: center;
    }

    .footer .box .social {
        justify-content: center;
    }

    .footer .box .line {
        flex-direction: column;
    }

    .footer .box .line i {
        margin-right: 0;
        margin-bottom: 15px;
    }
    
}

/* Language Switcher Styles */
.language-switcher {
    display: flex;
    gap: 8px;
    margin-bottom: 25px;
}

.lang-btn {
    background-color: #313131;
    color: #b9b9b9;
    border: none;
    padding: 8px 15px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 5px;
}

.lang-btn:hover {
    background-color: #444;
    color: white;
}

.lang-btn.active {
    background-color: #5d0077;
    color: white;
    font-weight: bold;
}

.lang-btn i {
    font-size: 16px;
}

/* RTL adjustments */
[dir="rtl"] .language-switcher {
    flex-direction: row-reverse;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .language-switcher {
        justify-content: center;
    }
}

/* Blog Section */
.blog {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #0000;
}

.blog .container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 40px;
}

.blog .container .article {
    border: 1px solid #353535;
    border-radius: 4px;
    overflow: hidden;
}

.blog .container .article .thumbnail img {
    width: 100%;
}

.blog .container .article .content{
    padding: 10px 20px 15px 20px;
} 

.blog .container .article .content .article-heading {
    color: #fff;
    margin-top: 0;
}

.blog .container .article .content .caption {
    color: gray;
}

.blog .container .article .content .date {
    color: rgb(196, 196, 196);
    display: block;
    text-align: end;
}

/* Blog View Page */
.blog-view {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
}

.blog-view .container {
    display: flex;
    gap: 40px;
}

.blog-view .container .thumbnail img{
    width: 100%;
    border-radius: 4px;
}

.blog-view .container .article-heading {
    color: #fff;
    margin-top: 0;
}

.blog-view .container .details {
    position: relative;
}

.blog-view .container .caption {
    color: gray;
}

.blog-view .container .date {
    color: rgb(196, 196, 196);
    display: block;
    text-align: end;
}

.blog-view .container .blog-content {
    background-color: #191919;
    padding: 20px;
    margin-top: 40px;
    border-radius: 4px;
    width: 100%;
}

.blog-view .container .blog-content img{
    border-radius: 2px;
}


.blog-view .container .blog-content p{
    color: gray;
}

/* Blog Veiw Responsive */
@media (max-width: 992px) {
    .blog-view .container {
        flex-direction: column;
    }    
}

/* Personal Info Section */
.personal-info-section {
    margin-top: 30px;
    margin-bottom: 30px;
    position: relative;
}

.personal-info-section::after {
    content: "";
    display: block;
    position: absolute;
    width: 50%;
    bottom: 0;
    left: 25%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.434);
}

.personal-info-section  .personal-box {
    display: flex;
    position: relative;
}

.personal-info-section  .personal-box .personal-acc-info {
    color: rgb(190, 190, 190);
}

.personal-info-section  .personal-box .personal-acc-info span{
    color: #fff;
}

/* Billings Section */
.billings-section {
    padding-top: 20px;
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #0000;
}

.billings-section .container .table-data {
	display: flex;
	flex-wrap: wrap;
	grid-gap: 24px;
	margin-top: 24px;
	width: 100%;
	color: var(--dark);
}

.billings-section .container .table-data > div {
	border-radius: 20px;
	background: #191919;
	padding: 24px;
	overflow-x: auto;
}

.billings-section .container .table-data .head {
	display: flex;
	align-items: center;
	grid-gap: 16px;
	margin-bottom: 24px;
	width: 100%;
}

.billings-section .container .table-data .head h3 {
	margin-right: auto;
	font-size: 24px;
	font-weight: 600;
}

.billings-section .container .table-data .head .bx {
	cursor: pointer;
}

.billings-section .container .table-data .order {
	flex-grow: 1;
	flex-basis: 500px;
}

.billings-section .container .table-data .order table {
	width: 100%;
	border-collapse: collapse;
}

.billings-section .container .table-data .order table th {
	padding-bottom: 12px;
	font-size: 17px;
	text-align: left;
	border-bottom: 1px solid var(--grey);
}

.billings-section .container .table-data .order table td {
    padding: 16px 20px;
}

.billings-section .container .table-data .order table tr td:first-child {
	display: flex;
	align-items: center;
	grid-gap: 12px;
	padding-left: 6px;
}

.billings-section .container .table-data .order table td img {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	object-fit: cover;
}

.billings-section .container .table-data .order table tbody tr:hover {
	background: var(--grey);
}

.billings-section .container .table-data .order table tr td .plan {
	font-size: 10px;
	padding: 6px 16px;
	color: var(--light);
	border-radius: 20px;
	font-weight: 700;
}

.billings-section .container .table-data .order table tr td .plan.plan1 {
	background: rgb(213, 5, 213);
}
.billings-section .container .table-data .order table tr td .plan.plan2 {
	background: rgb(182, 20, 182);
}
.billings-section .container .table-data .order table tr td .plan.plan3 {
	background: rgb(125, 5, 125);
}

/* Add this to your CSS */
.billings-section .pagination-controls {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
    padding: 10px;
}

.billings-section .pagination-controls button {
    background: #333;
    color: white;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.billings-section .pagination-controls button:hover:not(:disabled) {
    background: #555;
}

.billings-section .pagination-controls button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.billings-section .pagination-controls span {
    color: white;
    font-size: 14px;
}

/* Generated Images Page */
.generated-images-section {
    padding-top: 10px;
    padding-bottom: var(--section-padding);
    position: relative;
    background-color: #0000;
}

.generated-images-section .container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 40px;
	margin-top: 40px;
    margin-bottom: 40px;

}

.generated-images-section .container .created-design {
    border: 1px solid #666666;
    border-radius: 15px;
    overflow: hidden;
}

.generated-images-section .container .created-design .thumbnail img {
    width: 100%;
    border-radius: 15px;
}

.generated-images-section .container .created-design .content{
    padding: 10px 20px 15px 20px;
} 

.generated-images-section .container .created-design .content .date {
    color: rgb(86, 86, 86);
    display: block;
    text-align: end;
	font-size: 14px;
}

.generated-images-section .container  .created-design-btns {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px 15px;
}

.generated-images-section .container .created-design-btns .preview-created-design{
    padding: 4px 6px;
    border: 1px solid #666666;
    border-radius: 4px;
    font-weight: 600;
    color: rgb(213, 213, 213);
    transition: 0.3s;
}

.generated-images-section .container .created-design-btns .download-created-design{
    padding: 4px 6px;
    border: 1px solid #666666;
    border-radius: 4px;
    font-weight: 600;
    color: rgb(213, 213, 213);
    transition: 0.3s;
}

.generated-images-section .container .created-design-btns .preview-created-design:hover {
    background-color: rgba(255, 255, 255, 0.163);
}

.generated-images-section .container .created-design-btns .download-created-design:hover{
    background-color: rgba(255, 255, 255, 0.163);
}

/* Image Preview Modal */
.image-preview-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    backdrop-filter: blur(5px);
}

.image-preview-container {
    position: relative;
    max-width: 90%;
    max-height: 90%;
}

.image-preview-container img {
    max-width: 100%;
    max-height: 80vh;
    display: block;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

.close-preview {
    position: absolute;
    top: -40px;
    right: 0;
    background: none;
    border: none;
    color: white;
    font-size: 30px;
    cursor: pointer;
    padding: 5px 10px;
}

.download-preview {
    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
    background: transparent;
    border: 1px solid #ffffff;
    color: white;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: bold;
    transition: 0.4s;
}

.download-preview:hover {
    background: rgba(255, 255, 255, 0.252);
}

/* Responsive adjustments for the gallery */
@media (max-width: 768px) {
    .generated-images-section .container {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        gap: 20px;
    }
    
    .created-design-btns {
        flex-direction: column;
        gap: 8px;
    }
    
    .created-design-btns a {
        width: 100%;
        text-align: center;
        padding: 6px 0 !important;
    }
}

@media (max-width: 480px) {
    .generated-images-section .container {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
        gap: 15px;
    }
    
    .image-preview-container {
        max-width: 95%;
    }
}

/* Log In Page */
.login-page {
    position: relative;
    font-family: 'Montserrat', sans-serif;
    padding-top: 40px;
}

.login-page:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    z-index: -2;
    overflow: hidden; /* Ensures the background stays contained */
    width: 100%;
    height: 100%;
    background: url(../images/banners/roomobanner.webp);
    background-size: cover;
    box-shadow: inset 0 0 500px rgba(0, 0, 0), inset 0 0 400px rgba(0, 0, 0, 0.9);
}

.login-page::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    overflow: hidden; /* Ensures the background stays contained */
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.226);
}

.login-page .tag-box {
    position: relative;
    width: 18rem;
    height: 2.5rem;
    border-radius: 50px;
    background: linear-gradient(to right, #656565, #7f42a7, #6600c5, #5300a0, #757575, #656565);
    background-size: 200%;
    animation: animationGradient 2.5s linear infinite;
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
    margin-left: 20px;
}

@keyframes animationGradient {
    to {
        background-position: 200%;
    }
}

.login-page .tag-box .tag {
    color: #fff;
    position: absolute;
    inset: 3px 3px 3px 3px;
    background-color: #000;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.5s ease;
    cursor: pointer;
}

.login-page .tag-box .tag  i {
    font-size: 18px;
    margin-right: 5px;
}

.hero main .tag-box .tag a{
    color: #fff;
}

.login-page .tag-box:hover .tag {
    color: #5300a0;
}

/* Login & Reg Form */
.auth-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    padding: 20px;
}

.auth-card {
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    width: 100%;
    max-width: 600px;
    overflow: hidden;
    transition: all 0.3s ease;
}

.auth-header {
    padding: 30px;
    text-align: center;
    background: linear-gradient(135deg, #60179b, #56367d);
    color: white;
}

.auth-header h1 {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 10px;
}

.auth-header p {
    font-size: 14px;
    opacity: 0.9;
}

.auth-tabs {
    display: flex;
    border-bottom: 1px solid #eee;
}

.auth-tab {
    flex: 1;
    padding: 15px;
    text-align: center;
    cursor: pointer;
    font-weight: 500;
    color: #666;
    transition: all 0.3s ease;
}

.auth-tab.active {
    color: #6e8efb;
    border-bottom: 2px solid #6e8efb;
}

.auth-content {
    padding: 30px;
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #555;
}

.form-control {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 15px;
    transition: all 0.3s ease;
}

.form-control:focus {
    border-color: #6e8efb;
    box-shadow: 0 0 0 3px rgba(110, 142, 251, 0.2);
    outline: none;
}

.btn {
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-primary {
    background: linear-gradient(135deg, #5e0088, #613a91);
    color: white;
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(110, 142, 251, 0.4);
}

.divider {
    display: flex;
    align-items: center;
    margin: 20px 0;
    color: #999;
    font-size: 14px;
}

.divider::before, .divider::after {
    content: "";
    flex: 1;
    border-bottom: 1px solid #eee;
}

.divider::before {
    margin-right: 10px;
}

.divider::after {
    margin-left: 10px;
}

.social-login {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 0px;
}

.social-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid #ddd;
    cursor: pointer;
    transition: all 0.3s ease;
}

.social-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

.social-btn i {
    font-size: 18px;
}

.auth-footer {
    text-align: center;
    padding: 20px;
    font-size: 14px;
    color: #666;
    border-top: 1px solid #eee;
}

.auth-footer a {
    color: #6e8efb;
    text-decoration: none;
    font-weight: 500;
}

.back-link {
    display: inline-flex;
    align-items: center;
    color: #6e8efb;
    text-decoration: none;
    font-weight: 500;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

.back-link:hover {
    color: #a777e3;
}

.back-link i {
    margin-right: 5px;
}

/* Hide registration form initially */
#registerForm {
    display: none;
}

/* Error message styling */
.error-message {
    color: #e74c3c;
    font-size: 13px;
    margin-top: 5px;
    display: none;
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .auth-header {
        padding: 20px;
    }
    .auth-content {
        padding: 20px;
    }
}

/* - Door Workspace - */
.door-workspace {
    padding-top: 30px;
    position: relative;
    overflow: hidden;
}

.door-workspace .tag-box {
    position: relative;
    width: 18rem;
    height: 2.5rem;
    border-radius: 50px;
    background: linear-gradient(to right, #656565, #7f42a7, #6600c5, #5300a0, #757575, #656565);
    background-size: 200%;
    animation: animationGradient 2.5s linear infinite;
    box-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
    margin-left: 20px;
}

@keyframes animationGradient {
    to {
        background-position: 200%;
    }
}

.door-workspace .tag-box .tag {
    position: absolute;
    inset: 3px 3px 3px 3px;
    background-color: #000;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.5s ease;
    cursor: pointer;
}

.door-workspace .tag-box .tag  i {
    font-size: 18px;
    margin-right: 5px;
}

.door-workspace .tag-box:hover .tag {
    color: #5300a0;
}

.door-workspace .design-options {
    padding-top: 40px;
    min-height: calc(100vh - 71px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 40px;
}

.door-workspace .design-options a {
    color: rgb(243, 243, 243);
}

.door-workspace .design-options .design-opt {
    width: 300px;
    height: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: transparent;
    border-radius: 15px;
    padding: 20px;
    border: 1px solid #fff;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.door-workspace .design-options .design-opt i {
    font-size: 80px;
}

.door-workspace .design-options .design-opt p {
    margin-top: 0px;
}

.door-workspace .design-options .design-opt:hover {
    animation: flash 1.2s alternate;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px;
}

@keyframes flash {
    0% {
        border-color: #fff;
        background-color: transparent;
    }
    50% {
        border-color: #7300ff;
        border-width: 2px;
        background-color: rgba(77, 171, 247, 0.1);
    }
    100% {
        border-color: #fff;
        background-color: transparent;
    }
}

.door-workspace .design-options .design-opt:hover i {
    animation: pulse 1.5s ;
}

@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}

.door-workspace .design-options .design-opt::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(to top, rgba(138, 43, 226, 0.8), transparent);
    z-index: -1;
    transition: all 0.5s ease;
}

.door-workspace .design-options .design-opt:hover::before {
    height: 100%;
    background: linear-gradient(to top, rgba(138, 43, 226, 0.4), transparent);
}

.door-workspace .design-options .design-opt:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(138, 43, 226, 0.3);
}

/* Website Information Pages */
.web-info-section {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
    position: relative;
}

.web-info-section .container {
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: rgba(255, 255, 255, 0.147);
}

.web-info-section .container p, .web-info-section .container h2, .web-info-section .container h3{
    margin-left: 20px;
}


.web-info-section .container .main-heading-container{
    text-align: center;
    max-width: 600px;
    margin: auto;
}

.web-info-section .container .main-heading-container p{
    color: rgb(164, 164, 164);
}

.web-info-section .container h2{
    padding-top: 40px;
    font-size: 22px;
}

.web-info-section .container h3{
    padding-top: 40px;
    font-size: 19px;
}

