:root {
    --ss-primary-color: #5897fb;
    --ss-bg-color: #0000;
    --ss-font-color: #fff;
    --ss-font-placeholder-color: #ffffff80;
    --ss-disabled-color: #8a8a8a;
    --ss-border-color: #ffffff29;
    --ss-highlight-color: #fffb8c;
    --ss-error-color: red;
    --ss-main-height: 50px;
    --ss-content-height: 300px;
    --ss-spacing-l: 24px;
    --ss-spacing-m: 8px;
    --ss-spacing-s: 3px;
    --ss-animation-timing: 0.3s;
    --ss-border-radius: 0px;
    /* Why Us customization tokens */
    --why-card-hover-bg: linear-gradient(180deg, rgba(0,0,0,0.76), rgba(0,0,0,0.52));
    --why-card-hover-border: rgba(0,0,0,0.65);
  }

#main {
    position: relative;
    overflow: hidden;
}
#page {
    position: relative;
    height: 100vh;
    width: 100vw;
    background-color: transparent;
}
#page1 {
    position: relative;
    height: 100vh;
    width: 100vw;
    background-color: transparent;
}
#page2 {
    position: relative;
    height: 100vh;
    width: 100vw;
    background-color: transparent;
}
#page3 {
    position: relative;
    height: 100vh;
    width: 100vw;
    background-color: transparent;
}
canvas {
    position: relative;
    z-index: -1;
    max-width: 100vw;
    max-height: 100vh;
}
#loop {
    display: flex;
    position: absolute;
    top: 30%;
    height: 25%;
    width: 100%;
    font-size: 100px;
    white-space: nowrap;
    font-family: Gilroy;
}
#loop>h1 {
    font-weight: 400;
    color: #fff;
    animation-name: loops;
    animation-duration: 15s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;

}
#loop>h1>span {
    -webkit-text-stroke: 1.2px #ffffff;
    color: transparent;
    font-weight: 500;
}


@keyframes loops {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}


/* CANS MAIN */
.text {
    width: 100%;
}
.text h1 {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    letter-spacing: 2.7em;
    font-family: FranieR;
    font-size: clamp(64px,32px + 2.5vw,80px);
    font-weight: 200;
    letter-spacing: var(--letter-spacing);
    text-align: center;
    text-transform: uppercase;
    transition: transform 1s cubic-bezier(.25,.25,0,1);
    margin-bottom: 50px;
}

.hero-description {
    font-family: FranieL;
    font-size: 32px;
    font-weight: 300;
    letter-spacing: .26em;
    line-height: 1.3;
    text-align: center;
    text-transform: uppercase;
    transition: transform 1s cubic-bezier(.25,.25,0,1);
}
.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    transition: transform 1s cubic-bezier(.25,.25,0,1);
}
.btn-white {
    --color-default: #000;
    --color-hover: #fff;
    --bg-color-default: #fff;
    --circle-bg-color-default: #283fff;
    --circle-bg-color-active: #4256ff
}


.btn, .text-button {
    font-family: FranieR;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: .04em;
    text-decoration: none;
    color: #000000;
    padding: 20px;
    background: #ffffff;
    border-radius: 10px;
    margin-top: 50px;

}
.btn-blue {
    font-family: FranieR;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: .04em;
    text-decoration: none;
    color: #fff;
    padding: 20px;
    background: #283fff;
    border-radius: 10px;
    margin-top: 50px;

}

button {
    background-color: #0000;
    border: 0;
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    padding: 0;
    text-transform: inherit;
}


/*  Page 1 */

#page1 {
    width: 100%;
    height: 100vh;
    background: transparent;
    padding: 0px 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;

}

#page2 {
    width: 100%;
    height: 100vh;
    background: transparent;
    padding: 0px 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;

}


#page3 {
    width: 100%;
    height: 100vh;
    background: transparent;
    padding: 0px 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;

  
}


.text-wrap {
    width: 400px;
    height: 200px;
    overflow: hidden;
    position: relative;
}

.text-wrap h3 {
    font-family: FranieL;
    font-size: clamp(24px,-8px + 2.5vw,40px);
    font-weight: 400;
    letter-spacing: .02em;
    line-height: 1.4;
    margin-bottom: 5px;
}

.text-wrap p {
    font-family: NunitoSansL;
    font-size:  clamp(16px,6px + .78125vw,21px);
}

.text-wrap button {
    font-family: FranieL;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: .04em;
    padding: 17px 40px;
    background: #cccccc3d;
    border-radius: 0.4rem;
    margin-top: 15px;
}

/* =========================
   Why Us - Enhanced Styles
   ========================= */
#why-us {
    position: relative;
    z-index: 2;
    pointer-events: none; /* let scroll happen smoothly; children can enable if needed */
}

.why-container {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 6vh 24px;
}

.why-inner {
    width: min(1150px, 92vw);
    margin: 0 auto;
    text-align: center;
    pointer-events: auto;
}

.reveal-word {
    display: inline-block;
    overflow: hidden; /* mask for inner slide-up */
}
.reveal-word-inner {
    display: inline-block;
    will-change: transform, opacity, filter;
}

.why-subtitle {
    font-family: NunitoSansL;
    font-size: clamp(16px, 2.6vw, 22px);
    color: #ffffffcc;
    margin-bottom: 36px;
}

.why-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}
@media (max-width: 1100px) {
    .why-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}
@media (max-width: 560px) {
    .why-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}

.why-card {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(255,255,255,0.04));
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 16px;
    padding: 20px 18px;
    text-align: left;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transform-style: preserve-3d;
    box-shadow: 0 8px 28px rgba(0,0,0,0.24);
    transition: transform 0.36s ease, box-shadow 0.36s ease, background 0.36s ease, border-color 0.36s ease;
}
.why-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 36px rgba(0,0,0,0.35);
    background: var(--why-card-hover-bg);
    border-color: var(--why-card-hover-border);
}
.why-card i {
    font-size: 26px;
    margin-bottom: 10px;
    color: #ff8a00;
}
.why-card h4 {
    font-family: FranieSL;
    font-size: clamp(18px, 1.8vw, 22px);
    margin-bottom: 6px;
    color: #ff8a00;
}
.why-card p {
    font-family: NunitoSansL;
    font-size: clamp(14px, 1.7vw, 16px);
    color: #ffffffcc;
}

/* Space icon and title row inside Why Us cards */
.why-card .d-flex {
    display: flex;
    align-items: center;
}
.why-card .d-flex i {
    margin-right: 10px;
}
.why-card .d-flex h4 {
    margin: 0;
}

@media (min-width: 318px) and (max-width: 768px) {
.why-container{
    padding: 0;
}

}

@media (max-width: 320px){
    .why-card{
        padding: 20px 5px;
    }
}