:root {
    --text: #e9e7f6;
    --background: #010007;
    --primary: #000080;
    --secondary: color-mix(in srgb, var(--background), var(--primary));
    --accent: color-mix(in srgb, var(--primary) 90%, var(--text) 10%);
    --font-display-2xl: clamp(3rem, 2rem + 2.5vw, 4.5rem);   /* 36px → 72px */
    --line-display-2xl: 1.25;
    --letter-display-2xl: -0.02em;

    --font-display-xl: clamp(2rem, 1.1rem + 2.5vw, 3.75rem);    /* 32px → 60px */
    --line-display-xl: 1.2;
    --letter-display-xl: -0.02em;

    --font-display-lg: clamp(1.75rem, 1rem + 2vw, 3rem);        /* 28px → 48px */
    --line-display-lg: 1.25;
    --letter-display-lg: -0.02em;

    --font-display-md: clamp(1.5rem, 0.9rem + 1.5vw, 2.25rem);  /* 24px → 36px */
    --line-display-md: 1.22;
    --letter-display-md: -0.02em;

    --font-display-xs: clamp(1rem, 0.7rem + 0.7vw, 1.25rem);    /* 16px → 20px */
    --line-display-xs: 1.5;
    --letter-display-xs: -0.02em;

    --font-text-xl: clamp(1rem, 0.8rem + 0.5vw, 1.125rem);      /* 16px → 18px */
    --line-text-xl: 1.56;
    --letter-text-xl: -0.02em;

    --font-text-lg: clamp(0.875rem, 0.7rem + 0.5vw, 1rem);      /* 14px → 16px */
    --line-text-lg: 1.5;
    --letter-text-lg: -0.02em;

    --font-text-md: clamp(0.75rem, 0.6rem + 0.4vw, 0.875rem);   /* 12px → 14px */
    --line-text-md: 1.43;
    --letter-text-md: -0.02em;

    --font-text-sm: clamp(0.6875rem, 0.5rem + 0.3vw, 0.75rem);  /* 11px → 12px */
    --line-text-sm: 1.5;
    --letter-text-sm: -0.02em;

    --font-text-xs: clamp(0.7rem, 0.5rem + 0.35vw, 0.8rem);   /* 10px → 12px */
    --line-text-xs: 1.5;
    --letter-text-xs: -0.02em;

    --font-text-2xs: clamp(0.5625rem, 0.45rem + 0.2vw, 0.625rem); /* 8px → 10px */
    --line-text-2xs: 1.5;
    --letter-text-2xs: -0.02em;

    --font-text-3xs: clamp(0.4375rem, 0.35rem + 0.2vw, 0.5rem);   /* 6px → 8px */
    --line-text-3xs: 1.5;
    --letter-text-3xs: -0.02em;
    
}
@font-face {
    font-family: 'IranYekan';
    src: url('./font/IRANYekanXVF.woff') format('woff');
    font-style: normal;
    font-display: swap;
}
/* .text-display-2xl { font-size: var(--font-display-2xl); line-height: var(--line-display-2xl); letter-spacing: var(--letter-display-2xl); }
.text-display-xl  { font-size: var(--font-display-xl); line-height: var(--line-display-xl); letter-spacing: var(--letter-display-xl); }
.text-display-lg  { font-size: var(--font-display-lg); line-height: var(--line-display-lg); letter-spacing: var(--letter-display-lg); }
.text-display-md  { font-size: var(--font-display-md); line-height: var(--line-display-md); letter-spacing: var(--letter-display-md); }
.text-display-xs  { font-size: var(--font-display-xs); line-height: var(--line-display-xs); letter-spacing: var(--letter-display-xs); }
.text-xl { font-size: var(--font-text-xl); line-height: var(--line-text-xl); letter-spacing: var(--letter-text-xl); }
.text-lg { font-size: var(--font-text-lg); line-height: var(--line-text-lg); letter-spacing: var(--letter-text-lg); }
.text-md { font-size: var(--font-text-md); line-height: var(--line-text-md); letter-spacing: var(--letter-text-md); }
.text-sm { font-size: var(--font-text-sm); line-height: var(--line-text-sm); letter-spacing: var(--letter-text-sm); }
.text-xs { font-size: var(--font-text-xs); line-height: var(--line-text-xs); letter-spacing: var(--letter-text-xs); }
.text-2xs { font-size: var(--font-text-2xs); line-height: var(--line-text-2xs); letter-spacing: var(--letter-text-2xs); }
.text-3xs { font-size: var(--font-text-3xs); line-height: var(--line-text-3xs); letter-spacing: var(--letter-text-3xs); } */

.text-display-2xl { font-size: var(--font-display-2xl); line-height: var(--line-display-2xl); letter-spacing: var(--letter-display-2xl); }
.text-display-xl  { font-size: var(--font-display-2xl); line-height: var(--line-display-2xl); letter-spacing: var(--letter-display-2xl); }
.text-display-lg  { font-size: var(--font-display-xl); line-height: var(--line-display-xl); letter-spacing: var(--letter-display-xl); }
.text-display-md  { font-size: var(--font-display-lg); line-height: var(--line-display-lg); letter-spacing: var(--letter-display-lg);  }
.text-display-xs  { font-size: var(--font-display-md); line-height: var(--line-display-md); letter-spacing: var(--letter-display-md); }
.text-xl { font-size: var(--font-display-xs); line-height: var(--line-display-xs); letter-spacing: var(--letter-display-xs); }
.text-lg { font-size: var(--font-text-xl); line-height: var(--line-text-xl); letter-spacing: var(--letter-text-xl); }
.text-md { font-size: var(--font-text-lg); line-height: var(--line-text-lg); letter-spacing: var(--letter-text-lg); }
.text-sm { font-size: var(--font-text-md); line-height: var(--line-text-md); letter-spacing: var(--letter-text-md); }
.text-xs {font-size: var(--font-text-sm); line-height: var(--line-text-sm); letter-spacing: var(--letter-text-sm); }
.text-2xs { font-size: var(--font-text-2xs); line-height: var(--line-text-2xs); letter-spacing: var(--letter-text-2xs); }
.text-3xs { font-size: var(--font-text-3xs); line-height: var(--line-text-3xs); letter-spacing: var(--letter-text-3xs); }



.font-400 { font-weight: 400; } /* Regular */
.font-500 { font-weight: 500; } /* Medium */
.font-600 { font-weight: 600; } /* SemiBold */
.font-700 { font-weight: 700; } /* Bold */
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family:'IranYekan', sans-serif
    
}
a{
    text-decoration: none;
    color: var(--text);
}
html{
    scroll-behavior: smooth;
}
body::-webkit-scrollbar {
    width: 2px;
}
body::-webkit-scrollbar-track {
    background-color: var(--gray-25);
}
body::-webkit-scrollbar-thumb {
    background-color: var(--text);
}
body{
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: center;
    direction: rtl;
    overflow-x: hidden;
    color: var(--text);
}
::selection {
    background-color: var(--primary); 
    color: var(--text);               
}
.wrapper{
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
}
.phone-navbar{
    display: none;
}
.phone-navbar-menu{
    display: none;
}
.navbar{
    padding-top: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 32px;
    padding-bottom: 12px;
    border-radius: 75px;
    position: sticky;
    top: 18px;
    left: 100px;
    background: rgba(248, 242, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 100;
    width: calc(100% - 200px);
    max-width: 1440px;
}
.navbar-link-container{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 24px;
}
.navbar-logo-container{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100px;
}
.navbar-logo-container img{
    width: 100%;
}

.hero-section {
    width: 100%;
    height: 100vh;
    
    background: linear-gradient(180deg, var(--background) 20%, rgb(3, 1, 58) 60%, var(--background));
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
}
.hero-section h1{
    margin-top: calc(17vh + 160px);
    max-width: 720px;
    text-align: center;
    opacity: 0.7;
    color: var(--text);
}
.hero-alter-text-container{
    margin-top: 130px;
    margin-bottom: 110px;
    position: relative;
    max-width: 1100px;
    width: 100%;
    text-align: center;
}
.hero-alter-text{
    position: absolute;
    animation: emerge 5s forwards;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all ease 0.5s;
}
.hero-alter-text.fade-out {
    animation: fadeOut 0.5s forwards;
}

.hero-alter-text.fade-in {
    animation: fadeIn 0.5s forwards;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
    100% {
        opacity: 0;
        transform: translate(-50%, -50%);
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translate(-50%, -50%);
    }
    100% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}
.hero-button-container{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}
.hero-button-container a{
    border-radius: 8px;
    padding-inline: 36px;
    padding-block: 10px;

}
.hero-button-container a:nth-child(1){
    background-color: var(--accent);
    color: var(--text);
}
.hero-button-container a:nth-child(2){
    background-color: var(--text);
    color: var(--background);
}


.card-section{
    width: 100%;
    min-height: 100vh;
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    
}
.card-section-header{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.card-section-body{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-top: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 48px;
    /* flex-wrap: wrap; */
}
.card {
    width: 600px;
    height: unset;
    border-radius: 16px;
    position: relative;
    z-index: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    opacity: 0;
    transform: translateY(100px);
    transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1), opacity 1s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    box-shadow: 0px 0px 30px 0px var(--secondary);
    background: var(--background);
    
}





.card.visible {
    opacity: 1;
    transform: translateY(0);
}
.card:nth-child(1).visible { transition-delay: 0s; }      
.card:nth-child(2).visible { transition-delay: 0.5s; }
.card:nth-child(3).visible { transition-delay: 1s; }

/* .card::before {
    content: '';
    position: absolute;
    inset: -3px;
    background: linear-gradient(45deg, var(--accent), var(--secondary), var(--accent));
    border-radius: 19px;
    z-index: -1;
}

.card::after {
    content: '';
    position: absolute;
    inset: -3px;
    background: linear-gradient(45deg, var(--accent), var(--secondary), var(--accent));
    border-radius: 19px;
    z-index: -2;
    filter: blur(8px);
    opacity: 0.5;
} */

.card-header{
    width: 100%;
    
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    padding-block: 24px;
    padding-inline: 24px;
}
.card-body{
    width: 100%;
    
    flex-grow: 1;
    padding-top: 24px;
    padding-bottom: 48px;
    padding-inline: 24px;
}
.card-footer{
    width: 100%;
    display: none;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    padding-block: 24px;
    padding-inline: 24px;
}
.card-section-footer{
    height: 2px;
    width: 70%;
    background: linear-gradient(90deg, var(--background), var(--accent), var(--background));
    margin-top: 120px;
    min-width: 760px;
}




.steps-section{
    width: 100%;
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    
}
.steps-section-header{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-top: 60px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.steps-section-body{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-top: 100px;
    padding-bottom: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
}
.step{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 60%;
    padding-block: 32px;
    opacity: 0;
    transform: translate(100%);
    transition: all ease 0.8s;
}
.animate-in{
    transform: translate(0%);
    opacity: 1;
}
.step-right{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    direction: ltr;
}
.step-right p{
    border-radius: 16px;
    background-color: var(--secondary);
    height: 70px;
    width: 70px;
    display: flex;
    align-items: center;
    justify-content:center ;
    text-align: center;
}
.step-right-line{
    width: 80%;
    height: 2px;
    border-radius: 1px;
    background: linear-gradient(90deg, var(--secondary), var(--accent), var(--background));
}
.step-center{
    width: 100%;
    display: flex;
    align-items: flex-start;
    gap: 24px;
    flex-direction: column;
    padding-inline: 36px;
    padding-block: 20px;
}
.step-center p{
    width: 75%;
    text-align: right;
    opacity: 0.8;
    line-height: 30px;
}
.step-left{
    width: 20%;
    position: relative;
}
.light{
    position: absolute;
    height: 1px;
    width: 1px;
    background-color: var(--secondary);
    box-shadow: 0px 0px 350px 120px var(--secondary);
    z-index: 0;
    display: none;
}
.step-light-0{
    
    left: -200px;
    top: 0px;
}
.step-light-1{
    left: 0;
    top: 30px;
}
.step-light-2{
    left: 100px;
    top: -60px;
}
.step-light-3{
    left: 200px;
    top: 200px;
}
.step-light-4{
    left: 250px;
    top: 150px;
}



.portfolio-section{
    width: 100%;
    max-width:1440px;
    background-color: var(--background);
    position: relative;
    height: 560px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.device-container{
    width: 60%;
    height: 100%;
    background-color: var(--text);
    position: relative;
    -webkit-mask: 
    linear-gradient(180deg, transparent, white 20%, white 80%, transparent),
    linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
mask: 
    linear-gradient(180deg, transparent, white 20%, white 80%, transparent),
    linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
-webkit-mask-composite: intersect;
mask-composite: intersect;
}
.portofolio-text-container{
    width: 40%;
    height: 100%;
    padding-left: 96px;
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.portofolio-text-container p {
    background: linear-gradient(225deg, color-mix(in srgb,var(--secondary), var(--text)), color-mix(in srgb, var(--secondary), var(--text)), var(--text));
    
    background-size: 200%, 200%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;

}




.portfolio-section .light:nth-child(2){
    top: 50%;
    right: 700px;
}
.portfolio-section .light:nth-child(3){
    top: 50%;
    right: 1000px;
}
.mobile-wrapper{
    position: absolute;
    z-index: 1;
}
.mobile-wrapper:nth-child(2){
    top: -60px;
    left: 130px;
}
.mobile-wrapper:nth-child(3){
    bottom: -60px;
    left: 130px;
}
.mobile-wrapper:nth-child(1){
    top: 50%;
    transform: translate(0, -50%);
    left: 320px;
}
.mobile-wrapper:nth-child(4){
    top: -230px;
    left: 320px;
}
.mobile-wrapper:nth-child(5){
    bottom: -230px;
    left: 320px;
}
.mobile-wrapper:nth-child(6){
    top: -60px;
    left: 510px;
}
.mobile-wrapper:nth-child(7){
    bottom: -60px;
    left: 510px;
}
.mobile-wrapper:nth-child(8){
    top: 50%;
    transform: translate(0, -50%);
    left: 710px;
}
.mobile-wrapper:nth-child(9){
    top: -230px;
    left: 710px;
}
.mobile-wrapper:nth-child(10){
    bottom: -230px;
    left: 710px;
}
.mobile-wrapper:nth-child(11){
    top: 50%;
    transform: translate(0, -50%);
    left: -60px;
}
.mobile-wrapper:nth-child(12){
    top: -230px;
    left: -60px;
}
.mobile-wrapper:nth-child(13){
    bottom: -230px;
    left: -60px;
}
.mobile{
    width: 170px;
    height: 330px;
    border-radius: 20px;
    border: 4px solid black;
    position: relative;
    display: flex;
     
}
.mobile img{
    width: 100%;
    height: 100%;
    border-radius: 14px;
   
}
.mobile-image{
    animation-name: blink;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
    animation-fill-mode: forwards;
    z-index: 1;
    opacity: 0.5;
    filter: blur(2px);
}
.mobile-wrapper:nth-child(1) .mobile-image{
    animation-duration: 5s;
    animation-delay: 0s;
}
.mobile-wrapper:nth-child(2) .mobile-image{
    animation-duration: 6s;
    animation-delay: 0.5s;
}
.mobile-wrapper:nth-child(3) .mobile-image{
    animation-duration: 5s;
    animation-delay: 2s;
}
.mobile-wrapper:nth-child(4) .mobile-image{
    animation-duration: 4s;
    animation-delay: 1s;
}
.mobile-wrapper:nth-child(5) .mobile-image{
    animation-duration: 4s;
    animation-delay: 1.7s;
}
.mobile-wrapper:nth-child(6) .mobile-image{
    animation-duration: 5s;
    animation-delay: 1s;
}
.mobile-wrapper:nth-child(7) .mobile-image{
    animation-duration: 5s;
    animation-delay: 2.3s;
}
.mobile-wrapper:nth-child(8) .mobile-image{
    animation-duration: 4s;
    animation-delay: 0.7s;
}
.mobile-wrapper:nth-child(9) .mobile-image{
    animation-duration: 6s;
    animation-delay: 2s;
}
.mobile-wrapper:nth-child(10) .mobile-image{
    animation-duration: 4s;
    animation-delay: 2.3s;
}
.mobile-wrapper:nth-child(11) .mobile-image{
    animation-duration: 5s;
    animation-delay: 0.7s;
}
.mobile-wrapper:nth-child(12) .mobile-image{
    animation-duration: 4s;
    animation-delay: 1s;
}
.mobile-wrapper:nth-child(13) .mobile-image{
    animation-duration: 6s;
    animation-delay: 2.3s;
}
@keyframes blink{
    0% {
        opacity: 0.5;
        filter: blur(2px);
    }
    50% {
        opacity: 1;
        filter: blur(0px);
    }
    100% {
        opacity: 0.5;
        filter: blur(2px);
    }
}
.mobile-notch{
    width: 55px;
    height: 12px;
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: black;
    border-radius: 10px;
    z-index: 2;

}
.mobile-button{
    width: 2px;
    height: 30px;
    position: absolute;
    top: 130px;
    right: -4px;
    transform: translate(100%, -50%);
    background-color: black;
    border-radius: 1px;
    z-index: 2;
}
.mobile-volume{
    width: 2px;
    height: 50px;
    position: absolute;
    top: 80px;
    right: -4px;
    transform: translate(100%, -50%);
    background-color: black;
    border-radius: 1px;
    z-index: 2;
}


.portfolio-section-footer{
    width: 100%;
    max-width:1440px;
    background-color: var(--background);
    position: relative;
    margin-top: 150px;
    margin-bottom: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.portfolio-column{
    height: 400px;
    width: 22%;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-inline: 24px;
    padding-block: 12px;
}
.portfolio-column-image-container{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
}
.portfolio-column-image-container img{
    width: 50%;
    filter: grayscale(1);
}
.portfolio-column:nth-child(9) .portfolio-column-image-container img{
    height: 40px;
    width: auto !important;
}
.portfolio-column p{
    flex-grow: 1;
    opacity: 0.7;
    text-align: center;
    padding-top: 32px;
}
.portfolio-column-button{
    min-width: 50%;
    background-color: var(--secondary);
    border-radius: 8px;
    padding-inline: 36px;
    padding-block: 10px;
    text-align: center;
}
.column-partition{
    width: 2px;
    background: linear-gradient(180deg, var(--background), var(--secondary), var(--background));
    height: 400px;
}

.team-section{
    width: 100%;
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
}
.team-section-header{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-top: 160px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.team-section-body{
    width: 100%;
    max-width: 1440px;
    margin-block: 40px;
    padding-block: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 64px;
    flex-wrap: wrap;
    position: relative;
    /* -webkit-mask: 
    linear-gradient(180deg, transparent, white 20%, white 80%, transparent),
    linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
    mask: 
        linear-gradient(180deg, transparent, white 20%, white 80%, transparent),
        linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
    -webkit-mask-composite: intersect;
    mask-composite: intersect; */
    background-image: url(./img/grid.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}
.team-section-body::after{
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: radial-gradient(circle, transparent, var(--background));
}
.h-grid{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: min(4vw, 80px);
}
.h-line{
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--background), var(--secondary), var(--accent), var(--secondary), var(--background))
}
.h-line:nth-child(1){
    opacity: 0;
}
.v-grid{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: min(4vw, 80px);
    background-color: transparent;
    overflow: hidden;
}
.v-line{
    width: 2px;
    height: 100%;
    background: linear-gradient(90deg, var(--background), var(--secondary), var(--accent), var(--secondary), var(--background))
}
.v-line:nth-child(1){
    opacity: 0;
}
.v-line:nth-child(2){
    opacity: 0;
}
.v-line:last-child{
    opacity: 0;
}
.v-line:nth-last-child(2){
    opacity: 0;
}
.team-card-wrapper{
    width: 406px;
    height: 226px;
    /* background: linear-gradient(225deg, var(--text) , var(--background) , var(--background), var(--background),var(--background),  var(--text) ); */
    background-color: transparent;
    position: relative;
    border-radius: 16px;
    z-index: 10;
}
.team-card{
    width: 400px;
    height: 220px;
    /* background: linear-gradient(225deg, var(--background) , transparent , var(--background), var(--background), var(--background), var(--background) ); */
    background: rgba(248, 242, 255, 0.1);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 16px;
    padding-inline: 16px;
    padding-block: 12px;
    z-index: 1;
    border-radius: 1px solid white;
    
}



.team-card-header{
    width: 100%;
    display: flex;
    gap: 16px;
}
.team-header-image{
    width: 15%;
}
.team-header-image img{
    width: 100%;
    border-radius: 50%;
    display: block;
    border: 2px solid rgb(88, 196, 128);
}
.team-header-text{
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0px;
    justify-content: center;
}
.team-card-body{
    width: 100%;
    padding-block: 24px;
}
.team-card-body p{
    opacity: 0.7;
}
.why-section{
    width: 100%;
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    margin-top: 150px;
}
.why-section-header{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.why-section-body{
    width: 100%;
    max-width: 1440px;
    text-align: center;
    margin-block: 100px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: 96px;
    padding-inline: 64px;
}
.why-card-wrapper{
    width: 506px;
    height: 286px;
    border-radius: 16px;
    background: linear-gradient(225deg, var(--text), var(--background), var(--background), var(--background), var(--background), var(--text));
    position: relative;
}
.why-card-wrapper:nth-child(2), .why-card-wrapper:nth-child(3){
    background: linear-gradient(135deg, var(--text), var(--background), var(--background), var(--background), var(--background), var(--text));
}
.why-card{
    width: 500px;
    height: 280px;
    border-radius: 16px;
    background-color: var(--background);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 48px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-section{
    width: 100%;
    background-color: var(--background);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 150px;
    max-width: 1440px;
    
}
.shadow{
    position: absolute;
    width: 1px;
    height: 1px;
    bottom: 20%;
    right: 15%;
    box-shadow: 0px 0px 300px 250px var(--secondary);
    opacity: 0.3;
}
.form-container{
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 1440px;
    margin-bottom: 100px;
    background: rgba(248, 242, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 24px;
    display: flex;
    align-items: stretch;
    gap: 32px;
    padding-block: 48px;
    padding-inline: 64px;
}
.form-container-right{
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: 64px;
}
.form-container-right-text{
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.form-container-right-text h2{
    width: 80%;
    margin-bottom: 20px;
}
.form-container-right-text-item{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    color: var(--accent);
}
.form-container-right-text-item p{
    color: var(--text) !important;
}

.form-container-right-text-item svg{
    width: 20px;
    height: 20px;
}

.form-container-right-contact{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}
.contact-header{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
}
.contact-item{
    width: 50px;
    height: 50px;
    color: var(--text);
    border: 2px solid var(--text);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.contact-item svg{
    width: 30px;
    height: 30px;
}
.contact-footer p{
    width: 70%;
    text-align: right;
}




.form-container-left{
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
}
.contact-form{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
}
.form-notification{
    width: 100%;
    padding: 14px 20px;
    border-radius: 18px;
    background: rgba(29, 185, 84, 0.16);
    border: 1px solid rgba(29, 185, 84, 0.4);
    color: #dfffea;
}
.form-notification p{
    color: inherit;
}
.form-section{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}
.form-section-body{
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}
.service-label{
    padding: 7px 32px;
    border-radius: 20px;
    background-color: var(--background);
    border: 2px solid var(--background);
    cursor: pointer;
    transition: all ease 0.3s;
}
.service-label:has(input[type="radio"]:checked){
    background-color: var(--accent);
    border: 2px solid var(--accent);
}
.form-section-body input[type="text"]{
    background-color: var(--background);
    border: none;
    padding: 7px 32px;
    border-radius: 20px;
    color: var(--text);
    width: 40%;
    min-width: 300px;
}
.form-section-body textarea{
    background-color: var(--background);
    border: none;
    padding: 7px 32px;
    border-radius: 20px;
    color: var(--text);
    width: calc(80% + 12px);
    max-width: calc(80% + 12px);
    min-width: 612px;
    height: 80px;
    resize: none;
    
}
.submit-section{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}
.submit-section button{
    width: calc(80% + 12px);
    max-width: calc(80% + 12px);
    min-width: 612px;
    background-color: var(--accent);
    border: none;
    padding: 12px 32px;
    border-radius: 20px;
    color: var(--text);
    cursor: pointer;
}
.error-container{
    display: none;
    color: rgb(192, 19, 19)
}
@media(max-width: 1500px) {
    .device-container{
        width: 50%;
    }
}
@media(max-width: 1100px) {
    .phone-navbar{
        width: calc(100% - 32px);
        display:flex;
        align-items: center;
        justify-content: space-between;
        padding-block: 12px;
        padding-inline: 20px;
        background: rgba(248, 242, 255, 0.1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        position: fixed;
        top: 12px;
        left: 16px;
        border-radius: 32px;
        z-index: 99;
    }
    .phone-navbar svg{
        width: 32px;
        height: 32px;
    }
    .phone-navbar-menu{
        display: flex;
        flex-direction: column;
        width: 60%;
        background: rgba(248, 242, 255, 0.1);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        z-index: 100;
        height: 100dvh;
        position: fixed;
        top: 0;
        right: -60%;
        transition: all ease 0.3s;
        z-index: 100;
    }
    .phone-navbar-menu-body{
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 24px;
        padding-inline: 32px;
        padding-top: 64px;
    }
    .navbar-menu-open{
        transform: translate(-100%);
    }
    .opened{
        right: 0 !important;
    }
    .phone-navbar-menu-header{
        width: 100%;
        padding-inline: 32px;
        padding-block: 24px;
    }
    .phone-navbar-menu-header svg{
        width: 32px;
        height: 32px;
    }
    .navbar{
        display: none;
    }
    .hero-section {
        height: 100vh;
    }
    .hero-alter-text-container{
        margin-top: 150px;
        margin-bottom: 90px;
        max-width: 650px;
        
    }
    .card-section-body{
        padding-inline: 64px;
    }
    .card-section-footer{
        min-width: unset;
        width: 90%;
    }
    .card {
        width: 60%;
    }
    .steps-section-header{
        margin-top: 150px;
    }
    .steps-section-body{
        margin-top: 20px;
    }
    
    .step{
        width: 90%;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding-block: 32px;
        opacity: 0;
        transform: translate(-100%);
        transition: all ease 0.8s;
    }
    .animate-in{
        transform: translate(0%);
        opacity: 1;
    }
    .step-center p{
        width: 90%;
    }
    .portfolio-section{
        flex-direction: column;
        align-items: center;
        gap: 64px;
        height: unset;
    }
    .portfolio-section-footer{
        flex-wrap: wrap;
        margin-top: 60px;
        gap: 32px;
    }
    .portfolio-column{
        width: 35%;
        height: 350px;
    }
    .column-partition:nth-child(4){
        display: none;
    }
    .column-partition:nth-child(5){
        display: none;
    }
    .portofolio-text-container{
        width: 100%;
        align-items: center;
        padding-left: unset;
        padding-inline: 48px;
    }
    .device-container{
        width: 80%;
        height: 560px;
    }
    .team-section-body{
        gap: 24px;
        padding-block: 0;
        padding-inline: 12px;
    }
    .why-section-body{
        padding-inline: 12px;
        gap: 64px;
    }
    .form-container{
        width: 94%;
        gap: 16px;
        padding-inline: 24px;
    }
    .form-section-body input[type="text"]{
        width: 100%;
        min-width: unset;
    }
    .form-section-body textarea{
        width: 100%;
        min-width: unset;
        max-width: unset;
        height: 120px;
        
    }
    .submit-section button{
        width: 100%;
        max-width: unset;
        min-width: unset;
    }
    .column-partition:nth-child(8){
        display: none;
    }
}
@media(max-width: 768px) and (max-width: 1100px) {
    .wrapper{
        overflow: hidden;
    }
    
    .hero-section h1 {
        margin-top: 250px;
        padding-inline: 16px;
    }
    .hero-alter-text-container{
        margin-top: 140px;
        margin-bottom: 70px;
    }
    .hero-alter-text{
        padding-inline: 16px;
        font-size: 30px !important;
    }
    .card-section-body{
        gap: 48px;
        padding-inline: 16px;
    }

    .card{
        width: 96%;
        min-height: 350px;
    }
    .step-center{
        padding-inline: 16px;
    }
    .step-center h3{
        text-align: right;
    }
    .step-center p{
        width: 100%;
    }
    .team-card-wrapper{
        width: 100%;
        height: 230px;
    }
    .team-card{
        width: 100%;
        height: 100%;
        padding-block: 12px;
    }
    .team-header-image{
        width: 15%;
    }
    .team-header-image img{
        border: px solid rgb(88, 196, 128);
    }
    .team-section-body{
        gap: 24px;
    }
    .step-right p{
        width: 50px;
        height: 50px;
    }
    .why-card-wrapper{
        width: 100%;
        height: 194px;
    }
    .why-card{
        width: calc(100% - 4px);
        height: 190px;
        padding: 24px;
    }
    .why-card p{
        font-size: 12px;
    }
    .device-container{
        width: 200%;
        overflow: hidden;
    }
    .portfolio-section-footer{
        gap: 24px;

    }
    .portfolio-section-footer{
        align-items: stretch;
    }
    .portfolio-column{
        padding-inline: 0px;
        height: unset;
        gap: 16px;
    }
    .portfolio-column p{
        font-size: 12px;
        padding-top: 6px;
    }
    .portfolio-column-image-container img{
        width: 100%;
    }
    .form-container{
        flex-direction: column-reverse;
        gap: 64px;
    }
    .form-container-right{
        width: 100%;
        gap: 32px;
    }
    .form-container-left{
        width: 100%;
        gap: 32px;
    }
    .form-container-right-text{
        gap: 16px;
    }
    .form-container-right-text h2{
        width: 100%;
        margin-bottom: 20px;
    }
    .contact-item{
        width: 40px;
        height: 40px;
    }
    .contact-item svg{
        width: 25px;
        height: 25px;
    }
    .contact-footer p{
        width: 100%;
        text-align: right;
    }
}
