/*==================================================
 DOXA SNS Landing Page
 Author: Fredrich Kizza
===================================================*/

/*============ GOOGLE FONT ============*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

/*============ VARIABLES ============*/

:root{

    /* ICP / DFINITY COLORS */

    --primary:#020607;
    --secondary:#3329f4;
    --pink:#bf2882;
    --orange:#F7931E;

    --gradient:
    linear-gradient(
        90deg,
        #4e4848 0%,
        #29ABE2 0%,
        #6C63FF 35%,
        #EC008C 70%,
        #F7931E 100%
    );

    --gradient2:
    linear-gradient(
        135deg,
        #29ABE2,
        #6C63FF,
        #EC008C
    );

    /* Neutral */

    --white:#ffffff;

    --black:#111111;

    --gray100:#fafafa;

    --gray200:#f2f2f2;

    --gray300:#e5e5e5;

    --gray500:#888;

    --gray700:#444;

    --shadow:

        0 25px 60px rgba(0,0,0,.08);

    --radius:

        22px;

    --transition:

        all .35s ease;

}

/*============ RESET ============*/

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Inter',sans-serif;

    background:#fff;

    color:var(--black);

    overflow-x:hidden;

    line-height:1.7;

}

img{

    max-width:100%;

    display:block;

}

a{

    text-decoration:none;

    color:inherit;

}

ul{

    list-style:none;

}

button{

    font-family:inherit;

}

/*============ SCROLLBAR ============*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-thumb{

    background:var(--gradient);

    border-radius:100px;

}

::-webkit-scrollbar-track{

    background:#fafafa;

}

/*============ CONTAINER ============*/

.container{

    width:min(1200px,92%);

    margin:auto;

}

.section{

    padding:120px 0;

}

/*============ TYPOGRAPHY ============*/

h1{

    font-size:clamp(3rem,6vw,5.4rem);

    line-height:1.05;

    font-weight:900;

}

h2{

    font-size:clamp(2.1rem,4vw,3.5rem);

    font-weight:800;

}

h3{

    font-size:1.3rem;

    font-weight:700;

}

p{

    color:var(--gray700);

    font-size:1.05rem;

}

.section-header{

    text-align:center;

    max-width:760px;

    margin:0 auto 70px;

}

.section-header h2{

    margin:18px 0;

}

.section-tag{

    display:inline-flex;

    align-items:center;

    gap:.5rem;

    background:#f5f7ff;

    color:var(--secondary);

    padding:10px 18px;

    border-radius:999px;

    font-size:.85rem;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

/*============ BUTTONS ============*/

.btn-primary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 26px;

    border-radius:999px;

    color:#fff;

    background:var(--gradient);

    font-weight:700;

    transition:var(--transition);

    box-shadow:

        0 15px 35px rgba(108,99,255,.30);

}

.btn-primary:hover{

    transform:translateY(-4px);

    box-shadow:

        0 25px 50px rgba(108,99,255,.35);

}

.btn-secondary{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:10px 26px;

    border-radius:999px;

    border:2px solid #ddd;

    background:#fff;

    color:#111;

    font-weight:700;

    transition:var(--transition);

}

.btn-secondary:hover{

    border-color:var(--secondary);

    color:var(--secondary);

}

.full{

    width:100%;

}

/*============ HEADER ============*/

.header{

    position:fixed;

    width:100%;

    top:0;

    left:0;

    z-index:1000;

    background:rgba(255,255,255,.88);

    backdrop-filter:blur(16px);

    border-bottom:1px solid rgba(0,0,0,.05);

}

.nav{

    display:flex;

    align-items:center;

    justify-content:space-between;

    height:86px;

}

.logo{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:1.25rem;

    font-weight:800;

}

.logo img{

    width:42px;

}

.nav-links{

    display:flex;

    gap:36px;

}

.nav-links a{

    font-weight:600;

    transition:.3s;

    position:relative;

}

.nav-links a:hover{

    color:var(--secondary);

}

.nav-links a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:var(--gradient);

    transition:.3s;

}

.nav-links a:hover::after{

    width:100%;

}

.nav-buttons{

    display:flex;

    gap:16px;

}

.mobile-toggle{

    display:none;

    font-size:1.6rem;

    cursor:pointer;

}

/*============ HERO ============*/

.hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    overflow:hidden;

    padding-top:100px;

}

.hero-grid{

    display:grid;

    grid-template-columns:1.1fr .9fr;

    gap:70px;

    align-items:center;

}

.hero-content h1{

    margin:22px 0;

}

.hero-content h1 span{

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.hero-content p{

    font-size:1.15rem;

    max-width:620px;

}

.tag{

    display:inline-flex;

    align-items:center;

    gap:8px;

    background:#f6f8ff;

    padding:12px 18px;

    border-radius:999px;

    color:var(--secondary);

    font-weight:700;

}

.hero-buttons{

    display:flex;

    gap:20px;

    margin-top:40px;

}

.hero-stats{

    display:flex;

    gap:50px;

    margin-top:70px;

}

.hero-stats h3{

    font-size:2rem;

    font-weight:900;

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.hero-stats span{

    color:#777;

}

/*============ HERO CARD ============*/

.hero-card{

    background:#fff;

    border-radius:30px;

    padding:45px;

    box-shadow:var(--shadow);

    position:relative;

    border:1px solid #eee;

}

.icp-logo{

    width:90px;

    margin-bottom:20px;

}

.hero-card h2{

    margin-bottom:30px;

}

/*============ COUNTDOWN ============*/

.countdown{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:15px;

    margin:40px 0;

}

.countdown div{

    background:#fafafa;

    border-radius:18px;

    padding:22px;

    text-align:center;

}

.countdown span{

    display:block;

    font-size:2rem;

    font-weight:900;

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.countdown small{

    color:#777;

}

/*============ BACKGROUND BLOBS ============*/

.hero-background{

    position:absolute;

    inset:0;

    z-index:-1;

}

.gradient{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    opacity:.18;

}

.gradient.one{

    width:500px;

    height:500px;

    background:#29ABE2;

    top:-100px;

    right:-150px;

}

.gradient.two{

    width:450px;

    height:450px;

    background:#EC008C;

    bottom:-120px;

    left:-120px;

}

.gradient.three{

    width:350px;

    height:350px;

    background:#6C63FF;

    top:40%;

    left:45%;

}

/*============ SCROLL ICON ============*/

.scroll-down{

    position:absolute;

    bottom:30px;

    left:50%;

    transform:translateX(-50%);

    font-size:1.4rem;

    animation:bounce 2s infinite;

}
/*==================================================
    TRUST SECTION
==================================================*/

.trust-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.trust-card{
    background:#fff;
    border:1px solid #ececec;
    border-radius:24px;
    padding:40px 30px;
    transition:var(--transition);
    text-align:center;
    box-shadow:0 10px 35px rgba(0,0,0,.04);
}

.trust-card:hover{
    transform:translateY(-10px);
    box-shadow:0 25px 60px rgba(0,0,0,.08);
}

.trust-card i{
    width:72px;
    height:72px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 25px;
    font-size:1.8rem;
    background:var(--gradient);
    color:#fff;
}

.trust-card h3{
    margin-bottom:15px;
}

/*==================================================
    PROBLEM SECTION
==================================================*/

.split-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
}

.problem-list{
    margin-top:35px;
}

.problem-list li{
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px 0;
    font-size:1.05rem;
}

.problem-list i{
    color:#ff4d4f;
    font-size:1rem;
}

.problem-card{
    background:#fff;
    padding:50px;
    border-radius:30px;
    box-shadow:var(--shadow);
    border:1px solid #eee;
}

.problem-card h3{
    margin-bottom:20px;
    font-size:2rem;
}

.problem-card p{
    margin-bottom:35px;
}

/*==================================================
    ECOSYSTEM
==================================================*/

.ecosystem-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:35px;
}

.ecosystem-card{
    background:#fff;
    border-radius:28px;
    padding:45px;
    text-align:center;
    border:1px solid #ececec;
    transition:var(--transition);
}

.ecosystem-card:hover{
    transform:translateY(-12px);
    box-shadow:0 25px 60px rgba(0,0,0,.08);
}

.ecosystem-card img{
    width:70px;
    margin:auto;
    margin-bottom:25px;
}

.ecosystem-card h3{
    margin-bottom:18px;
}

.ecosystem-card p{
    color:#666;
}

/*==================================================
    WHY DOXA
==================================================*/

.features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.feature-card{
    background:#fff;
    padding:40px;
    border-radius:26px;
    border:1px solid #ececec;
    text-align:center;
    transition:var(--transition);
}

.feature-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow);
}

.feature-card i{
    width:70px;
    height:70px;
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    background:var(--gradient);
    color:#fff;
    font-size:1.7rem;
    margin:auto;
    margin-bottom:22px;
}

.feature-card h3{
    margin-bottom:15px;
}

/*==================================================
    ICP SECTION
==================================================*/

.icp{
    background:#fafcff;
}

.icp-large{
    width: 1000px;
    margin:auto;
    animation:float 5s ease-in-out infinite;
}

.icp-list{
    margin-top:40px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}

.icp-list div{
    display:flex;
    align-items:center;
    gap:15px;
    background:#fff;
    padding:20px 24px;
    border-radius:18px;
    border:1px solid #ececec;
    transition:var(--transition);
}

.icp-list div:hover{
    transform:translateY(-5px);
    box-shadow:0 15px 40px rgba(0,0,0,.06);
}

.icp-list i{
    width:40px;
    height:40px;
    display:flex;
    justify-content:center;
    align-items:center;
    border-radius:50%;
    background:var(--gradient);
    color:#fff;
    font-size:.9rem;
}

/*==================================================
    SECTION SPACING
==================================================*/

.trust,
.problem,
.ecosystem,
.why,
.icp{
    position:relative;
}

.trust::before,
.ecosystem::before{
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    border-radius:50%;
    background:linear-gradient(
        135deg,
        rgba(41,171,226,.06),
        rgba(108,99,255,.05)
    );
    filter:blur(60px);
    z-index:-1;
}

.trust::before{
    top:-60px;
    right:-80px;
}

.ecosystem::before{
    bottom:-60px;
    left:-80px;
}
/*==================================================
    TOKENOMICS
==================================================*/

.tokenomics{
    background:#fcfcfd;
}

.tokenomics-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

.chart-card{

    position:relative;

    width:450px;
    height:450px;

    margin:auto;

    background:#fff;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    box-shadow:0 30px 80px rgba(0,0,0,.08);

    border:1px solid #eee;

}

.chart-card canvas{

    width:380px !important;

    height:380px !important;

}

.chart-center{

    position:absolute;

    width:170px;

    height:170px;

    background:#fff;

    border-radius:50%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    box-shadow:0 10px 40px rgba(0,0,0,.08);

}

.chart-center h2{

    font-size:3rem;

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

    font-weight:900;

}

.chart-center span{

    color:#777;

    font-weight:600;

}

.allocation{

    display:flex;

    flex-direction:column;

    gap:24px;

}

.allocation-item{

    display:flex;

    align-items:center;

    gap:20px;

    padding:20px 24px;

    background:#fff;

    border-radius:18px;

    border:1px solid #ececec;

    transition:.35s;

}

.allocation-item:hover{

    transform:translateX(8px);

    box-shadow:0 20px 45px rgba(0,0,0,.06);

}

.allocation-item span{

    width:22px;

    height:22px;

    border-radius:50%;

}

.treasury span{

    background:#29ABE2;

}

.sns span{

    background:#6C63FF;

}

.foundation span{

    background:#EC008C;

}

.team span{

    background:#F7931E;

}

.contributors span{

    background:#111;

}

.allocation-item h4{

    margin-bottom:5px;

}

.allocation-item p{

    color:#888;

}

/*==================================================
    ECONOMICS
==================================================*/

.economics{

    background:#fff;

}

.flow{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:25px;

    flex-wrap:wrap;

}

.flow-box{

    background:#fff;

    padding:28px 36px;

    border-radius:20px;

    font-weight:700;

    border:1px solid #ececec;

    box-shadow:0 10px 35px rgba(0,0,0,.05);

    transition:.35s;

}

.flow-box:hover{

    transform:translateY(-6px);

}

.flow i{

    font-size:2rem;

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

/*==================================================
    SNS TIMELINE
==================================================*/

.timeline{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:35px;

}

.timeline-card{

    position:relative;

    background:#fff;

    border-radius:26px;

    padding:45px 35px;

    text-align:center;

    border:1px solid #ececec;

    transition:.35s;

}

.timeline-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(0,0,0,.08);

}

.number{

    width:75px;

    height:75px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    margin:0 auto 25px;

    background:var(--gradient);

    color:#fff;

    font-size:1.5rem;

    font-weight:800;

}

.timeline-card h3{

    margin-bottom:15px;

}

/*==================================================
    VIDEO
==================================================*/

.video{

    background:#fafcff;

}

.video-wrapper{

    max-width:960px;

    margin:60px auto;

    border-radius:30px;

    overflow:hidden;

    box-shadow:0 30px 80px rgba(0,0,0,.08);

}

.video-wrapper iframe{

    width:100%;

    height:540px;

    border:none;

}

.video-buttons{

    display:flex;

    justify-content:center;

    gap:25px;

}

/*==================================================
    SNS COUNTDOWN
==================================================*/

.launch-card{

    max-width:1100px;

    margin:auto;

    background:linear-gradient(135deg,#ffffff,#fafcff);

    border-radius:36px;

    padding:80px;

    text-align:center;

    border:1px solid #ececec;

    box-shadow:0 40px 100px rgba(0,0,0,.08);

}

.launch-card span{

    color:var(--secondary);

    font-weight:800;

    letter-spacing:.1em;

    text-transform:uppercase;

}

.launch-card h2{

    margin:20px 0 50px;

}

.launch-countdown{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

    margin-bottom:55px;

}

.launch-countdown div{

    background:#fff;

    border-radius:25px;

    padding:35px;

    border:1px solid #ececec;

}

.launch-countdown h1{

    font-size:4rem;

    font-weight:900;

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.launch-countdown p{

    margin-top:10px;

    color:#777;

}

/*==================================================
    FLOAT ANIMATION
==================================================*/

@keyframes float{

    0%{

        transform:translateY(0px);

    }

    50%{

        transform:translateY(-18px);

    }

    100%{

        transform:translateY(0);

    }

}

@keyframes bounce{

    0%,100%{

        transform:translate(-50%,0);

    }

    50%{

        transform:translate(-50%,-12px);

    }

}
/*==================================================
    TEAM
==================================================*/

.team{
    background:#fff;
}

.team-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:35px;
}

.team-card{

    background:#fff;

    border:1px solid #ececec;

    border-radius:30px;

    overflow:hidden;

    text-align:center;

    transition:var(--transition);

    box-shadow:0 10px 30px rgba(0,0,0,.04);

}

.team-card:hover{

    transform:translateY(-12px);

    box-shadow:0 30px 80px rgba(0,0,0,.08);

}

.team-card img{

    width:100%;

    height:340px;

    object-fit:cover;

}

.team-card h3{

    margin-top:30px;

}

.team-card span{

    display:block;

    color:var(--secondary);

    margin:12px 0;

    font-weight:700;

}

.team-card p{

    padding:0 30px;

    min-height:90px;

}

.linkedin{

    display:inline-flex;

    align-items:center;

    gap:10px;

    margin:30px;

    padding:12px 26px;

    border-radius:999px;

    background:#f5f5f5;

    transition:.35s;

}

.linkedin:hover{

    background:var(--gradient);

    color:#fff;

}

/*==================================================
    PARTNERS
==================================================*/

.partners{

    background:#fafcff;

}

.logo-grid{

    display:grid;

    grid-template-columns:repeat(5,1fr);

    gap:40px;

    align-items:center;

}

.logo-grid img{

    width:140px;

    margin:auto;

    filter:grayscale(100%);

    opacity:.75;

    transition:.35s;

}

.logo-grid img:hover{

    filter:none;

    opacity:1;

    transform:scale(1.08);

}

/*==================================================
    SECURITY
==================================================*/

.security-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.security-card{

    background:#fff;

    border-radius:28px;

    padding:45px;

    text-align:center;

    border:1px solid #ececec;

    transition:.35s;

}

.security-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow);

}

.security-card i{

    width:75px;

    height:75px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    margin:auto auto 25px;

    background:var(--gradient);

    color:#fff;

    font-size:1.7rem;

}

.audit-badges{

    display:flex;

    justify-content:center;

    gap:25px;

    margin-top:60px;

    flex-wrap:wrap;

}

.badge{

    padding:18px 28px;

    border-radius:999px;

    border:1px solid #ececec;

    background:#fff;

    display:flex;

    gap:12px;

    align-items:center;

    font-weight:700;

}

.pending{

    color:#d97706;

}

/*==================================================
    ROADMAP
==================================================*/

.roadmap{

    background:#fafafa;

}

.roadmap-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.phase{

    background:#fff;

    border-radius:30px;

    padding:45px;

    border:1px solid #ececec;

    transition:.35s;

}

.phase:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow);

}

.phase h3{

    margin-bottom:25px;

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

.phase ul{

    display:flex;

    flex-direction:column;

    gap:15px;

}

/*==================================================
    FAQ
==================================================*/

.faq-container{

    max-width:900px;

    margin:auto;

}

.faq-item{

    border:1px solid #ececec;

    border-radius:20px;

    margin-bottom:20px;

    overflow:hidden;

    background:#fff;

}

.faq-question{

    width:100%;

    padding:28px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:none;

    border:none;

    cursor:pointer;

    font-size:1.1rem;

    font-weight:700;

}

.faq-answer{

    display:none;

    padding:0 28px 28px;

}

.faq-item.active .faq-answer{

    display:block;

}

/*==================================================
    CTA
==================================================*/

.cta-card{

    background:var(--gradient);

    color:#fff;

    border-radius:40px;

    padding:90px;

    text-align:center;

}

.cta-card h2{

    color:#fff;

}

.cta-card p{

    color:rgba(255,255,255,.92);

    max-width:700px;

    margin:25px auto 45px;

}

.cta-buttons{

    display:flex;

    justify-content:center;

    gap:25px;

}

.cta-card .btn-secondary{

    background:#fff;

}

/*==================================================
    FOOTER
==================================================*/

.footer{

    background:#111;

    color:#fff;

    padding:80px 0 30px;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1fr;

    gap:60px;

}

.footer-logo{

    width:55px;

    margin-bottom:20px;

}

.footer h4{

    margin-bottom:20px;

}

.footer ul{

    display:flex;

    flex-direction:column;

    gap:14px;

}

.footer p{

    color:#bbb;

}

.footer a{

    color:#bbb;

    transition:.3s;

}

.footer a:hover{

    color:#fff;

}

.socials{

    display:flex;

    gap:18px;

}

.socials a{

    width:45px;

    height:45px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#222;

    font-size:1.1rem;

}

.socials a:hover{

    background:var(--gradient);

}

.copyright{

    text-align:center;

    margin-top:70px;

    color:#777;

    border-top:1px solid #222;

    padding-top:30px;

}

/*==================================================
    MOBILE CTA
==================================================*/

.mobile-cta{

    position:fixed;

    bottom:20px;

    left:50%;

    transform:translateX(-50%);

    width:min(450px,90%);

    display:none;

    z-index:999;

}

.mobile-cta .btn-primary{

    box-shadow:0 20px 50px rgba(0,0,0,.25);

}/*==================================================
    LARGE SCREENS
==================================================*/

@media (max-width:1200px){

.container{
    width:94%;
}

.hero-grid,
.tokenomics-grid,
.split-grid{
    gap:50px;
}

.chart-card{
    width:380px;
    height:380px;
}

.chart-card canvas{
    width:320px !important;
    height:320px !important;
}

}

/*==================================================
    TABLETS
==================================================*/

@media (max-width:992px){

.section{
    padding:90px 0;
}

.nav-links,
.nav-buttons{
    display:none;
}

.mobile-toggle{
    display:block;
}

.hero{
    padding-top:140px;
}

.hero-grid,
.split-grid,
.tokenomics-grid{
    grid-template-columns:1fr;
    text-align:center;
}

.hero-content p{
    margin:auto;
}

.hero-buttons{
    justify-content:center;
}

.hero-stats{
    justify-content:center;
}

.hero-card{
    max-width:550px;
    margin:auto;
}

.trust-grid,
.features-grid,
.ecosystem-grid,
.timeline,
.security-grid,
.team-grid,
.roadmap-grid{
    grid-template-columns:repeat(2,1fr);
}

.logo-grid{
    grid-template-columns:repeat(3,1fr);
}

.footer-grid{
    grid-template-columns:repeat(2,1fr);
}

.video-wrapper iframe{
    height:420px;
}

.icp-large{
    width:280px;
}

.launch-card{
    padding:60px 40px;
}

.launch-countdown{
    grid-template-columns:repeat(2,1fr);
}

.flow{
    flex-direction:column;
}

.flow i{
    transform:rotate(90deg);
}

}

/*==================================================
    MOBILE
==================================================*/

@media (max-width:768px){

.section{
    padding:70px 0;
}

h1{
    font-size:2.8rem;
}

h2{
    font-size:2rem;
}

.hero-buttons{
    flex-direction:column;
}

.hero-stats{
    flex-direction:column;
    gap:25px;
}

.hero-card{
    padding:30px;
}

.countdown{
    grid-template-columns:repeat(2,1fr);
}

.launch-countdown{
    grid-template-columns:repeat(2,1fr);
}

.trust-grid,
.features-grid,
.ecosystem-grid,
.timeline,
.security-grid,
.team-grid,
.roadmap-grid{
    grid-template-columns:1fr;
}

.logo-grid{
    grid-template-columns:repeat(2,1fr);
}

.footer-grid{
    grid-template-columns:1fr;
    text-align:center;
}

.socials{
    justify-content:center;
}

.video-wrapper iframe{
    height:300px;
}

.chart-card{
    width:320px;
    height:320px;
}

.chart-card canvas{
    width:270px !important;
    height:270px !important;
}

.chart-center{
    width:120px;
    height:120px;
}

.chart-center h2{
    font-size:2rem;
}

.cta-card{
    padding:60px 30px;
}

.cta-buttons{
    flex-direction:column;
}

.mobile-cta{
    display:block;
}

.launch-card{
    padding:40px 20px;
}

}

/*==================================================
    SMALL PHONES
==================================================*/

@media (max-width:480px){

.container{
    width:92%;
}

.hero{
    min-height:auto;
    padding-bottom:80px;
}

.hero h1{
    font-size:2.3rem;
}

.section-header{
    margin-bottom:50px;
}

.hero-card{
    border-radius:20px;
}

.countdown div,
.launch-countdown div{
    padding:18px;
}

.countdown span{
    font-size:1.5rem;
}

.launch-countdown h1{
    font-size:2.3rem;
}

.problem-card,
.security-card,
.team-card,
.phase,
.trust-card,
.feature-card,
.ecosystem-card{
    padding:30px;
}

.logo-grid img{
    width:90px;
}

.footer{
    padding-top:60px;
}

}
/*=========================================
DOXA SNS LANDING PAGE ANIMATIONS
==========================================*/

/*========================
GLOBAL TRANSITIONS
=========================*/

*{
    transition:
        background .35s ease,
        color .35s ease,
        border-color .35s ease,
        transform .35s ease,
        box-shadow .35s ease;
}

/*========================
SECTION REVEAL
=========================*/

.reveal{

    opacity:0;

    transform:translateY(70px);

    transition:all 1s ease;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

/*========================
LEFT REVEAL
=========================*/

.reveal-left{

    opacity:0;

    transform:translateX(-80px);

    transition:all 1s ease;

}

.reveal-left.active{

    opacity:1;

    transform:translateX(0);

}

/*========================
RIGHT REVEAL
=========================*/

.reveal-right{

    opacity:0;

    transform:translateX(80px);

    transition:all 1s ease;

}

.reveal-right.active{

    opacity:1;

    transform:translateX(0);

}

/*========================
ZOOM
=========================*/

.zoom{

    opacity:0;

    transform:scale(.8);

    transition:all .9s ease;

}

.zoom.active{

    opacity:1;

    transform:scale(1);

}

/*========================
FLOATING
=========================*/

.float{

    animation:float 5s ease-in-out infinite;

}

@keyframes float{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-20px);

    }

    100%{

        transform:translateY(0);

    }

}

/*========================
HERO GLOW
=========================*/

.hero::before{

    content:"";

    position:absolute;

    width:700px;

    height:700px;

    border-radius:50%;

    background:

        radial-gradient(

        rgba(108,99,255,.12),

        transparent 70%

        );

    top:-250px;

    right:-200px;

    filter:blur(50px);

    animation:pulseGlow 8s infinite;

}

@keyframes pulseGlow{

    0%{

        transform:scale(1);

    }

    50%{

        transform:scale(1.2);

    }

    100%{

        transform:scale(1);

    }

}

/*========================
BUTTON SHINE
=========================*/

.btn-primary{

    overflow:hidden;

    position:relative;

}

.btn-primary::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:70%;

    height:100%;

    background:

    linear-gradient(

        120deg,

        transparent,

        rgba(255,255,255,.55),

        transparent

    );

    transform:skewX(-25deg);

}

.btn-primary:hover::before{

    animation:shine .8s;

}

@keyframes shine{

    from{

        left:-120%;

    }

    to{

        left:140%;

    }

}

/*========================
CARD HOVER
=========================*/

.trust-card,
.feature-card,
.ecosystem-card,
.team-card,
.timeline-card,
.phase,
.security-card{

    transform:translateY(0);

}

.trust-card:hover,
.feature-card:hover,
.ecosystem-card:hover,
.team-card:hover,
.timeline-card:hover,
.phase:hover,
.security-card:hover{

    transform:

        translateY(-12px)

        scale(1.02);

}

/*========================
ICON ROTATION
=========================*/

.feature-card:hover i,
.security-card:hover i,
.trust-card:hover i{

    transform:rotate(360deg);

}

/*========================
GRADIENT BORDER
=========================*/

.gradient-border{

    position:relative;

}

.gradient-border::before{

    content:"";

    position:absolute;

    inset:-2px;

    border-radius:inherit;

    padding:2px;

    background:linear-gradient(

        135deg,

        #29ABE2,

        #6C63FF,

        #EC008C,

        #F7931E

    );

    -webkit-mask:

        linear-gradient(#fff 0 0)

        content-box,

        linear-gradient(#fff 0 0);

    -webkit-mask-composite:xor;

    mask-composite:exclude;

}

/*========================
TOKEN CHART
=========================*/

.chart-card{

    animation:chartAppear 1.2s ease;

}

@keyframes chartAppear{

    from{

        transform:scale(.7);

        opacity:0;

    }

    to{

        transform:scale(1);

        opacity:1;

    }

}

/*========================
TIMELINE
=========================*/

.timeline-card{

    position:relative;

}

.timeline-card::after{

    content:"";

    position:absolute;

    width:100%;

    height:4px;

    left:50%;

    bottom:-2px;

    transform:translateX(-50%);

    background:linear-gradient(

        90deg,

        #29ABE2,

        #6C63FF,

        #EC008C

    );

    transform-origin:left;

    transform:scaleX(0);

    transition:.45s;

}

.timeline-card:hover::after{

    transform:scaleX(1);

}

/*========================
LOGO ANIMATION
=========================*/

.logo-grid img{

    transition:

        transform .4s,

        filter .4s,

        opacity .4s;

}

.logo-grid img:hover{

    transform:

        scale(1.15)

        rotate(2deg);

}

/*========================
SOCIAL ICONS
=========================*/

.socials a:hover{

    transform:

        translateY(-6px)

        rotate(8deg);

}

/*========================
COUNTDOWN
=========================*/

.countdown span,
.launch-countdown h1{

    animation:pop 1.2s ease;

}

@keyframes pop{

    0%{

        transform:scale(.5);

        opacity:0;

    }

    70%{

        transform:scale(1.15);

    }

    100%{

        transform:scale(1);

        opacity:1;

    }

}

/*========================
SCROLL INDICATOR
=========================*/

.scroll-down{

    animation:bounce 2s infinite;

}

@keyframes bounce{

    0%,100%{

        transform:

        translateX(-50%)

        translateY(0);

    }

    50%{

        transform:

        translateX(-50%)

        translateY(-12px);

    }

}

/*========================
SPIN
=========================*/

.spin{

    animation:spin 12s linear infinite;

}

@keyframes spin{

    from{

        transform:rotate(0);

    }

    to{

        transform:rotate(360deg);

    }

}

/*========================
FADE
=========================*/

.fade{

    animation:fade 1s ease;

}

@keyframes fade{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

/*========================
PULSE
=========================*/

.pulse{

    animation:pulse 2s infinite;

}

@keyframes pulse{

    0%{

        transform:scale(1);

    }

    50%{

        transform:scale(1.05);

    }

    100%{

        transform:scale(1);

    }

}

/*========================
DELAYS
=========================*/

.delay-1{

    animation-delay:.15s;

}

.delay-2{

    animation-delay:.3s;

}

.delay-3{

    animation-delay:.45s;

}

.delay-4{

    animation-delay:.6s;

}
/*==============================
NAVBAR STATES
===============================*/

.header{

    transition:
        transform .4s ease,
        background .35s ease,
        box-shadow .35s ease;

}

.header.scrolled{

    background:rgba(255,255,255,.96);

    box-shadow:0 10px 35px rgba(0,0,0,.08);

}

.nav-links a.active{

    color:var(--secondary);

}

.nav-links a.active::after{

    width:100%;

}

/*==============================
MOBILE MENU
===============================*/

@media (max-width:992px){

.nav-links{

    position:fixed;

    top:86px;

    left:0;

    width:100%;

    background:#fff;

    flex-direction:column;

    align-items:center;

    gap:30px;

    padding:40px;

    transform:translateY(-150%);

    transition:.4s;

    box-shadow:0 20px 40px rgba(0,0,0,.08);

}

.nav-links.show-menu{

    transform:translateY(0);

}

}
.logo img {
    width: 42px;
    padding-right: 10px;
}
.needy{
    text-align: center;
}