html {
    font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    scroll-behavior: smooth;
    font-weight: 200;
}

@font-face {
  font-family: Cheesecake;
  src: url(LuckiestGuy.ttf);
}

body {
    background: linear-gradient(-215deg, rgb(34, 0, 39), rgb(5, 0, 5));
    background-repeat: no-repeat;
    background-attachment: fixed;
    margin: 0;
    padding-top: 140px;
    scroll-behavior: smooth;
}

/* Custom scrollbar styles */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
  border-radius: 0px !important;
}

::-webkit-scrollbar-track {
  background: #2a1a4d; /* Matches your dark purple theme */
  border-radius: 0px !important;
}

::-webkit-scrollbar-thumb {
  background: rgba(80, 48, 155, 0.55); /* Lighter purple for thumb */
  border-radius: 0px !important;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(80, 48, 155, 0.55); /* Slightly lighter on hover */
}

::-webkit-scrollbar-button {
  display: none; /* Hides the arrows */
}

/* For Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: rgb(255, 42, 191) rgb(13, 0, 13);
}

header {
    position: fixed;
    padding: 20px;
    top: 0;
    width: 100%;
    box-sizing: border-box;
    z-index: 100;
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter:  blur(25px);
}

/* header img {
    filter: drop-shadow( 0px 0px 50px rgb(255, 91, 192));
} */

.desktop-nav {
    border-radius: 20px;
    display: flex;
    width: 100%;
    box-sizing: border-box;
    padding: 20px 40px;
    justify-content: space-between;
    align-items: center;
    height: 100%;
   
}

.hamburger {
    border-radius: 20px;

    display: flex;
    width: 100%;
    box-sizing: border-box;
    padding: 20px 40px;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter:  blur(8px);
}

header #logo {
    width: 200px;
}

header nav {
    display: flex;
    gap: 25px;

}

header nav a {
    text-decoration: none;
}
header nav li {
    text-decoration: none;
    color: white;
    list-style: none;
    font-size: 22px;
    font-weight: 300;
    display: flex;
    justify-content: center;
    align-items: end;
}

@media (min-width: 1020px) {
    header li::after {
        content: "";
        background-color: white;
        position: absolute;
        width: 0px;
        height: 2px;
        border-radius: 50px;
        margin-bottom: -7px;
        transition: 0.2s;
    }

    header li:hover:after {
        width: 20px;
    }
}

/* Hamburger Icon */
.hamburger {
    display: none; /* Hidden by default on desktop */
    font-size: 24px;
    color: white;
    cursor: pointer;
}

/* Mobile Navigation */
.mobile-nav {
    position: fixed;
    top: 0;
    right: -100%; /* Off-screen initially */
    width: 300px;
    height: 100vh;
    padding: 20px;
    z-index: 101;
    transition: right 0.3s ease-in-out;
    box-sizing: border-box;
    background: linear-gradient(45deg, rgb(27 0 31), #1c0021);
    border-left: solid 1px rgba(235, 31, 254, 0.757);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter:  blur(30px);
    color: white;
}

.mobile-nav a {
    color: white;
    text-decoration: none;
    font-size: 25px;
    padding: 10px;
    border-radius: 10px;
}

.mobile-nav a:hover {
    background: #ffffff12;
}


.mobile-nav.active {
    display: flex;
    right: 0; /* Slide in when active */
}
.mobile-nav .close-btn {
    font-size: 24px;
    color: rgba(255, 255, 255, 0.715);
    cursor: pointer;
    position: absolute;
    top: 15px;
    right: 15px;
}
.mobile-nav .close-btn:hover {
    color: white;
}
.mobile-nav ul {
    list-style: none;
    margin: 50px 0 0; /* Space below close button */
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
}


@media (max-width: 480px) { /* Mobile */
    .header-container img {
        width: 150px; /* Smaller logo on mobile */
    }
    .mobile-nav {
        width: 250px; /* Slightly narrower on mobile */
    }
}

/* -------------- main --------------- */


main {
    padding: 0 10vh;
    /* border-bottom: dashed 5px rgba(178, 84, 255, 0.174); */
    display: flex;
    justify-content: center;
    padding-top: 12vh;
    min-height: calc(100vh - 130px);
    flex-wrap: wrap;
    box-sizing: border-box;
}

.maincontent {
    max-width: 1300px;
    box-sizing: border-box;
    display: flex;
    gap: 7vw;
    height: fit-content;
    justify-content: center;
    align-items: center;
}

.maincontent > div {
    width: 50%;
    display: flex;
}

.maincontent > div:first-child {
    flex-direction: column;
    gap: 3vh;
    width: 40%;
    flex-wrap: wrap;
}

.maincontent > div:first-child h1 {
    color: white;
    font-size: 35px;
    margin: 0;
    font-weight: 400;
}

.maincontent > div:first-child p {
    color: white;
    font-size: 25px;
    line-height: 35px;
    font-weight: 300;
    margin: 0;
}

.vouchimg {
    max-width: 500px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px;
    box-sizing: border-box;
    border-radius: 20px;
    border: solid rgba(254, 27, 254, 0.469) 4px;
    height: min-content;
    background-color: rgba(242, 96, 255, 0.061);
    box-shadow: rgba(255, 91, 192, 0.241) 0px 0px 150px;
    transition: 0.5s;
}

.vouchimg:hover {
    filter: brightness(1.2);
    box-shadow: rgba(255, 78, 187, 0.253) 0px 0px 150px;
    border: solid rgba(255, 48, 255, 0.758) 4px;
}

.vouchimg img {
    border-radius: 10px;
    width: 100%;
    height: min-content;
}

@media (max-width: 1150px) {
    .desktop-nav {
        display: none; /* Hide desktop nav */
    }
    .hamburger {
        display: flex; /* Show hamburger icon */
    }
    .maincontent {
        flex-direction: column;
        align-items: center;
        gap: 5vh;
    }
    .maincontent > div:first-child {
        align-items: center;
    }
    .maincontent > div {
        width: 100% !important;
        text-align: center;
    }
    .rev:nth-child(2), .rev:nth-child(1) {
        display: none;
    }
    .rev:nth-child(3) {
        padding: 30px;
        gap: 15px;
        margin: 0px 20px;
        border-width: 3px;
        
    }
    .rev:nth-child(3) h4 {
        font-size: 22px !important;
    }
    .rev:nth-child(3) .star-icon {
        width: 25px;
    }
    .rev:nth-child(3) div:last-child {
        font-size: 18px !important;
    }
}

@media (max-width: 1150px) {
    .revs {
        height: 150px;
    }
}

.maincontent > div:last-child  {
    justify-content: center;
}

.maincontent > div:first-child a {
    margin-top: 20px;
    width: fit-content;
}

.mbut {
    height: 100%;
    padding: 12px 15px;
    background-color: rgba(255, 255, 255, 0.058);
    outline: none;
    border: solid 1px rgb(255, 98, 245);
    font-weight: 300;
    border-radius: 10px;
    font-size: 18px;
    color: rgb(255, 98, 245);
    cursor: pointer;
    transition: 0.2s;
    align-items: center;
    text-align: center;
}

.mbut:hover {
    background-color: transparent;
}

/* .mbut::before {
    content: ">";
    color: transparent;
    font-size: 0px;
    margin: 0;
    transition: font-size 0.2s, margin 0.2s, color 0.3s;
    transition-delay: 0s, 0s, 0.3s;
} */

/* .mbut:hover::before {
    margin-right: 10px;
    font-size: 18px;
    color: rgb(101, 31, 254);
} */

/* -------- main review --------- */



/* .rev {
    position: absolute;
    background-color: rgba(80, 48, 155, 0.55);
    border: solid 5px rgb(101, 31, 254);
    height: fit-content;
    color: white;
    padding: 40px;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    gap: 25px;
    max-width: 500px;
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter:  blur(30px);
    transition: 0.4s;
}

.rev > div:first-child {
    display: flex;
    justify-content: space-between;
    
}

.rev > div:first-child div {
    display: flex;
}
.rev > div:first-child h4 {
    font-size: 30px;
    margin: 0;
}


.rev > div:last-child {
    width: 100%;
    font-size: 22px;
    font-weight: 100;
}

.star-icon {
    width: 33px;
    fill: gold;
    transition: 0.4s;
} */

/* ------------------------------- */

/* .rev:nth-child(2) {
    transform: translate(30%, 70%);
    scale: 0.8;
    filter: grayscale(0.3);
    border-color: rgb(82, 46, 159) ;
    color: rgba(255, 255, 255, 0.532);
    .star-icon{
        fill: rgba(255, 217, 0, 0.68);
    }
}

.rev:nth-child(2):hover {
    transform: translate(30%, 100%);
    scale: 0.9;
    border: solid 5px rgb(101, 31, 254);
    color: white;
    filter: grayscale(0);
    .star-icon{
        fill: gold;
    }
}

.rev:nth-child(1) {
    transform: translate(0%, 220%);
    scale: 0.6;
    filter: grayscale(0.5);
    border-color: rgb(85, 49, 171);
    color: rgba(255, 255, 255, 0.271);
    .star-icon{
        fill: rgba(255, 217, 0, 0.409);
    }
    
}

.rev:nth-child(1):hover {
    scale: 0.7;
    transform: translate(10%, 240%);
    border: solid 5px rgb(101, 31, 254);
    color: white;
    filter: grayscale(0);
    .star-icon{
        fill: gold;
    }
}

.rev:nth-child(3) .star-icon {
    filter: drop-shadow( 0px 0px 10px rgba(255, 217, 0, 0.357));
}
.rev:nth-child(3):hover {
    scale: 1.05;
} */


/* ----------------------------*/



/* main > div:last-child:hover .rev:nth-child(3) {
    scale: 1.05;
}

main > div:last-child:hover .rev:nth-child(2) {
    transform: translate(0%, 70%);
    scale: 0.9;
    border: solid 5px rgb(101, 31, 254);
    color: white;
    filter: grayscale(0);
    
}

main > div:last-child:hover .rev:nth-child(2) .star-icon{
    fill: gold;
}

main > div:last-child:hover .rev:nth-child(1) {
    scale: 0.7;
    transform: translate(0%, 160%);
    border: solid 5px rgb(101, 31, 254);
    color: white;
    filter: grayscale(0);
    
}

main > div:last-child:hover .rev:nth-child(1) .star-icon{
    fill: gold;
}

main > div:last-child:active .rev:nth-child(3) {
    transform: translate(0%, -30%);
    scale: 0.7;
}

main > div:last-child:active .rev:nth-child(2) {
    scale: 0.7;
    transform: translate(0%, 80%);
}

main > div:last-child:active .rev:nth-child(1) {
    scale: 0.7;
    transform: translate(0%, 190%);
}

.rev:nth-child(2) {
    transform: translate(30%, 70%);
    scale: 0.8;
    filter: grayscale(0.3);
    border-color: rgb(82, 46, 159) ;
    color: rgba(255, 255, 255, 0.532);

}

.rev:nth-child(2) .star-icon{
    fill: rgba(255, 217, 0, 0.68);
}


.rev:nth-child(1) {
    transform: translate(0%, 170%);
    scale: 0.6;
    filter: grayscale(0.5);
    border-color: rgb(85, 49, 171);
    color: rgba(255, 255, 255, 0.271);

    
}

.rev:nth-child(1) .star-icon{
    fill: rgba(255, 217, 0, 0.409);
}


.rev:nth-child(3) .star-icon {
    filter: drop-shadow( 0px 0px 10px rgba(255, 217, 0, 0.357));
} */


/* ----------- Features ------------ */

#features {
    display: flex;
    flex-direction: column;
    gap: 40px;
    justify-content: center;
    align-items: center;
    /* border-bottom: dashed 5px rgba(178, 84, 255, 0.174); */
    margin-bottom: 30px;
}

#features h2 {
    color: white;
    font-size: 50px;
    margin: 0;
    font-weight: 100;
}

.feas {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    padding: 40px;
    max-width: 1600px;
    margin: 0 auto;
}

.fea {
    display: flex;
    flex-direction: column;
    gap: 20px;
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter:  blur(30px);
    color: white;
    padding: 30px;
    border-radius: 8px;
    border: solid 1px rgba(248, 54, 255, 0.424);
    background: linear-gradient(45deg, rgba(143, 48, 155, 0.187), transparent);
    transition: 0.15s;
}



.fea:hover {
    border: solid 1px rgb(248, 48, 255); 
    /* filter: contrast(1.05); */
    filter: saturate(1.3);
    filter: brightness(1.2);
    box-shadow: #ff37ff18 0px 0px 20px 10px;
}

.fea svg {
    position: absolute;
    height: 70%;
    transform: translateY(-20px);
    right: 0;
    margin: 15px 30px;
    z-index: -1;
    fill: rgba(247, 65, 210, 0.138);
}

.fea h3 {
    margin: 0;
    font-size: 22px;
    font-weight: 400;
}

.fea p {
    margin: 0;
    font-size: 20px;
    font-weight: 200;
}


@media (max-width: 1024px) {
  .feas {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .feas {
    grid-template-columns: 1fr;
  }
}

/* Existing #pricing styles (keep these) */
#pricing {
    padding: 50px 40px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    justify-content: center;
    align-items: center;
}

#pricing h2 {
    color: white;
    font-size: 50px;
    margin: 0;
    font-weight: 100;
}

#reviews {
    padding: 50px 0px;
    display: flex;
    flex-direction: column;
    gap: 40px;
    justify-content: center;
    align-items: center;
}

#reviews h2 {
    color: white;
    font-size: 50px;
    margin: 0;
    font-weight: 100;
}




@media (max-width: 1055px) {
    #pricing {
        padding: 20px;
    }

    .plans {
        flex-direction: column-reverse;
        align-items: center;
        margin: 0 !important ;
        padding: 30px !important;
    }
    
    .plans div:first-child h3 {
        font-size: 30px !important; 
    }
    .plan {
        min-width: 0 !important;
        width: 100%;
    }
    .htext {
        display: none;
    }
    .plans > div:last-child {
        margin-left: 0 !important;
        padding-left: 0 !important;
        border-left: none !important;
        width: 100%;
        border-bottom: solid 1px rgba(247, 29, 255, 0.329);
        padding-bottom: 50px;
    }
}


.plan h3 {
    margin: 0;
    font-size: 20px;
}



.plan {
    margin: 0;
    font-size: 20px;
}

.plan .pricep  {
    margin: 0;
    font-size: 18px;
}

.plan .pricep strong {
    margin: 0;
    font-size: 50px;
}

.plan span {
    margin: 0;
    font-size: 18px;
}

.plan ul {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.plan ul li {
    padding: 5px 0;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.plan .mbut {
    margin-top: auto;
}

.plans {
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter:  blur(30px);
    color: white;
    border-radius: 8px;
    border: solid 1px rgba(248, 54, 255, 0.424);
    background: linear-gradient(45deg, rgba(143, 48, 155, 0.187), transparent);
    transition: 0.15s;
    display: flex;
    gap: 40px 0;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
    padding: 50px;
    margin-top: 40px;
    box-sizing: border-box;
}

/* Ultimate Plan (shiny with particles) */
.ultimate {
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: white;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    min-width: max-content;
    transition: 0.2s;
}

.plans > div:last-child {
    margin-left: 100px;
    padding-left: 50px;
    border-left: solid 1px rgba(247, 29, 255, 0.329);
    display: flex;
    flex-direction: column;
}

.plans > div:first-child h3 {
    font-size: 30px;
    margin: 0;
    margin-top: 18px;
    font-weight: 300;
}

.plans > div:last-child span {
    font-size: 25px;
    margin-top: 20px;
}

.plans > div:last-child p {
    font-size: 20px;
    margin-top: 0;
}

.plans > div:last-child p strong {
    font-size: 60px;
}

.plans::before {
    content: '';
    position: absolute;
    width: 800px;
    height: 800px;
    background: radial-gradient(circle, rgba(241, 84, 255, 0.109) 0%, rgba(247, 31, 254, 0) 70%);
    animation: float 6s infinite ease-in-out;
    top: -400px;
    left: -400px;
    z-index: 0;
}

.plans::after {
    content: '';
    position: absolute;
    width: 800px;
    height: 800px;
    background: radial-gradient(circle, rgba(241, 84, 255, 0.113) 0%, rgba(247, 31, 254, 0) 70%);
    animation: float 8s infinite ease-in-out reverse;
    bottom: -400px;
    right: -400px;
    z-index: 0;
}

@keyframes float {
    0% { transform: translate(0, 0); }
    50% { transform: translate(20px, 20px); }
    100% { transform: translate(0, 0); }
}

/* Icon Styles */
.icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
}

.check-gray {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="gray"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>');
}

.check-green {
    stroke: #e647ff;
    filter: drop-shadow(0 0 5px rgb(208, 65, 255));
}

.x-red {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="red"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>');
}

/* Media queries */
@media (max-width: 1024px) {
    .plans {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .plan {
        grid-template-columns: 1fr;
    }
}

/* ---------- Support ---------- */

@media (max-width: 1150px) {
    main {
        padding: 5vh 5vw;
    }
    #support .sup {
        flex-direction: column;
        align-items: center;
    }
    #support .sup .sups {
        width: 100% !important;
    }
    main > div:first-child h1 {
        font-size: 30px;
    }
    main > div:first-child p {
        font-size: 20px;
        line-height: 30px;
    }
}

#support {
    padding: 50px 0px;
    display: flex;
    flex-direction: column;
    gap: 60px;
    justify-content: center;
    align-items: center;

}

#support h2 {
    color: white;
    font-size: 50px;
    margin: 0;
    font-weight: 100;
}

#support .sup {
    display: flex;
    padding: 0px 5%;
    gap: 40px 5%;
    max-width: 1600px;

}
.sups {
    width: 50%;
}

.sups:first-child {
    display: flex;
    flex-direction: column;
    gap: 20px;
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter:  blur(30px);
    color: white;
    padding: 30px;
    border-radius: 8px;
    border: solid 1px rgba(248, 54, 255, 0.424);
    background: linear-gradient(45deg, rgba(143, 48, 155, 0.187), transparent);
    transition: 0.15s;
    box-sizing: border-box;
    height: fit-content;
}

.sups:first-child h3 {
    margin: 0;
    font-size: 30px;
}
.sups:first-child p {
    font-size: 25px;
    font-weight: 100;
    color: rgba(255, 255, 255, 0.612);
}

.sups:last-child {
    color: white;

}

.sups:last-child h4 {
    margin: 0;
    font-size: 25px;
    font-weight: 100;
}
.sups:last-child p {
    padding-left: 35px;
    font-size: 18px;
    font-weight: 100;
    color: rgba(255, 255, 255, 0.566);
}

/* -------- Footer -------- */

footer {
    display: flex;
    justify-content: space-between;
    color: white;
    padding: 40px;
    border-top: #e647ff3e solid 1px;

}

footer img {
    width: 300px;
    height: auto;
    object-fit: contain;
}

#vouchcord-vouches-container {
    padding: 0 5%;
}

@media (max-width: 1150px) {
    footer {
        flex-direction: column;
        align-items: center;
    }
}


.vouch {
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter:  blur(30px);
    padding: 20px !important;
    border: solid 1px rgba(248, 54, 255, 0.424) !important;
    background: linear-gradient(45deg, rgba(143, 48, 155, 0.187), transparent) !important;
    background-color: none;
    transition: 0.15s;
}

#vouchcord-vouches-container .star-icon {
    fill: rgb(255, 54, 198) !important;
}

.vouchcord-header a {
    color: rgb(255, 54, 198) !important;
}