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


:root {

    --bg-primary: #050816;

    --bg-secondary: #0b1228;

    --card-bg: rgba(255,255,255,0.08);

    --border-color: rgba(255,255,255,0.12);

    --text-primary: #ffffff;

    --text-secondary: #a8b3cf;

    --accent: #00d9ff;

    --accent-blue: #0077ff;

    --gradient:
    linear-gradient(
        135deg,
        #00d9ff,
        #0077ff
    );

    --shadow:
    0 20px 40px rgba(0,0,0,0.35);

}





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


* {

    margin:0;

    padding:0;

    box-sizing:border-box;

    scroll-behavior:smooth;

}



html {

    overflow-x:hidden;

}



body {

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

    background:var(--bg-primary);

    color:var(--text-primary);

    line-height:1.6;

    overflow-x:hidden;

}



a {

    text-decoration:none;

    color:inherit;

}



img {

    max-width:100%;

    display:block;

}



ul {

    list-style:none;

}





/* =====================================
   AURORA BACKGROUND
===================================== */


.aurora {

    position:fixed;

    width:700px;

    height:700px;

    background:
    radial-gradient(
        circle,
        rgba(0,217,255,.25),
        transparent 65%
    );

    top:-200px;

    right:-200px;

    filter:blur(80px);

    z-index:-1;

}





/* =====================================
   NAVBAR
===================================== */


header {

    position:fixed;

    width:100%;

    top:0;

    z-index:1000;

}



.navbar {


    max-width:1200px;

    margin:auto;

    padding:25px 40px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:
    rgba(5,8,22,.65);

    backdrop-filter:blur(20px);

}



.logo {

    font-size:28px;

    font-weight:800;

}



.logo span {

    color:var(--accent);

}



.nav-links {

    display:flex;

    gap:35px;

}



.nav-links a {

    color:var(--text-secondary);

    transition:.3s;

}



.nav-links a:hover {

    color:var(--accent);

}



.nav-actions {

    display:flex;

    gap:20px;

    align-items:center;

}



#theme-toggle {

    background:none;

    border:none;

    color:white;

    cursor:pointer;

    font-size:18px;

}

#theme-toggle .fa-sun {
    color: #FFD700;
}

#theme-toggle .fa-moon {
    color: #FFFFFF;
}



.menu-toggle {

    display:none;

    cursor:pointer;

}







/* =====================================
   COMMON SECTIONS
===================================== */


.section {

    padding:100px 8%;

}



.section-title {

    text-align:center;

    margin-bottom:60px;

}



.section-title p {

    color:var(--accent);

    font-size:14px;

    text-transform:uppercase;

    letter-spacing:3px;

}



.section-title h2 {

    font-size:42px;

    margin-top:10px;

}





/* =====================================
   GLASS EFFECT
===================================== */


.glass {


    background:

    var(--card-bg);


    border:

    1px solid var(--border-color);


    backdrop-filter:

    blur(20px);


    border-radius:25px;


    box-shadow:

    var(--shadow);


}







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


.hero {


    min-height:100vh;

    padding:

    150px 8% 80px;


    display:flex;

    align-items:center;


}



.hero-content {

    width:100%;

    display:grid;

    grid-template-columns:

    1fr 1fr;

    align-items:center;

    gap:50px;

}



.hello {

    color:var(--accent);

    font-size:20px;

}



.hero h1 {

    font-size:70px;

    line-height:1.1;

    margin:15px 0;

}



.hero h2 {

    font-size:35px;

    color:var(--accent);

}



.hero-description {


    color:var(--text-secondary);

    max-width:600px;

    margin:25px 0;

    font-size:18px;

}



.location {


    color:#cbd5e1;

    margin-bottom:25px;

}



.location i {

    color:var(--accent);

}





/* BUTTONS */


.hero-buttons {

    display:flex;

    gap:20px;

    margin-bottom:30px;

}



.primary-btn,
.secondary-btn {


    padding:14px 30px;

    border-radius:50px;

    font-weight:600;

    display:inline-block;

    transition:.3s;

}



.primary-btn {

    background:

    var(--gradient);

    color:white;

}



.secondary-btn {

    border:

    1px solid var(--accent);

}



.primary-btn:hover,
.secondary-btn:hover {

    transform:translateY(-5px);

}






/* SOCIAL ICONS */


.social-links {

    display:flex;

    gap:20px;

}



.social-links a {

    width:45px;

    height:45px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:

    rgba(255,255,255,.08);

    transition:.3s;

}



.social-links a:hover {

    background:var(--accent);

    color:#000;

}







/* PROFILE IMAGE */


.profile-card {

    width:380px;

    height:380px;

    margin:auto;

    border-radius:50%;

    padding:15px;

    position:relative;

    background:

    var(--gradient);

}



.profile-card img {


    width:100%;

    height:100%;

    object-fit:cover;

    border-radius:50%;

    border:8px solid var(--bg-primary);

}






/* =====================================
   ABOUT
===================================== */


.about-card {

    max-width:900px;

    margin:auto;

    padding:40px;

    color:var(--text-secondary);

    font-size:18px;

}







/* =====================================
   SKILLS
===================================== */


.skills-grid {

    display:grid;

    grid-template-columns:

    repeat(4,1fr);

    gap:25px;

}



.skill-card {

    padding:35px;

    text-align:center;

    transition:.3s;

}



.skill-card i {

    font-size:40px;

    color:var(--accent);

    margin-bottom:20px;

}



.skill-card h3 {

    margin-bottom:15px;

}



.skill-card p {

    color:var(--text-secondary);

}



.skill-card:hover {

    transform:translateY(-10px);

}
/* =====================================
   EXPERIENCE TIMELINE
===================================== */


.timeline {

    max-width:900px;

    margin:auto;

    position:relative;

}



.timeline::before {

    content:"";

    position:absolute;

    left:20px;

    top:0;

    height:100%;

    width:2px;

    background:var(--accent);

}



.timeline-item {

    position:relative;

    margin-bottom:40px;

    padding:30px 35px 30px 70px;

}



.timeline-dot {

    position:absolute;

    left:10px;

    top:35px;

    width:22px;

    height:22px;

    border-radius:50%;

    background:var(--accent);

    box-shadow:
    0 0 20px var(--accent);

}



.timeline-item span {

    color:var(--accent);

    font-weight:700;

}



.timeline-item h3 {

    margin:10px 0;

    font-size:24px;

}



.timeline-item p {

    color:var(--text-secondary);

}







/* =====================================
   PROJECT SECTION
===================================== */


.projects-grid {

    display:grid;

    grid-template-columns:

    repeat(2,1fr);

    gap:35px;

}



.project-card {

    overflow:hidden;

    transition:.4s;

}



.project-card:hover {

    transform:

    translateY(-10px);

}



.project-image {

    height:250px;

    overflow:hidden;

}



.project-image img {

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.5s;

}



.project-card:hover img {

    transform:scale(1.08);

}





.project-content {

    padding:30px;

}



.project-content h3 {

    font-size:24px;

    margin-bottom:15px;

}



.project-content p {

    color:var(--text-secondary);

    margin-bottom:20px;

}







/* Architecture Box */


.architecture {

    background:

    rgba(0,0,0,.35);

    border:

    1px solid rgba(0,217,255,.2);

    border-radius:15px;

    padding:20px;

    color:#dbeafe;

    font-family:monospace;

    margin-bottom:20px;

}







/* PROJECT TAGS */


.tags {

    display:flex;

    flex-wrap:wrap;

    gap:10px;

}



.tags span {

    padding:6px 14px;

    border-radius:20px;

    background:

    rgba(0,217,255,.15);

    color:var(--accent);

    font-size:13px;

}








/* =====================================
   GITHUB SECTION
===================================== */


.github-card {

    max-width:900px;

    margin:auto;

    padding:40px;

    text-align:center;

}



.github-profile {

    display:flex;

    justify-content:center;

    align-items:center;

    gap:20px;

    margin-bottom:40px;

}



.github-profile i {

    font-size:55px;

    color:white;

}



.github-profile p {

    color:var(--text-secondary);

}





.github-stats {

    display:flex;

    justify-content:center;

    gap:30px;

    margin-bottom:35px;

}



.stat-box {

    padding:25px;

    min-width:150px;

    border-radius:20px;

    background:

    rgba(255,255,255,.06);

}



.stat-box h3 {

    font-size:35px;

    color:var(--accent);

}



.stat-box p {

    color:var(--text-secondary);

}








/* =====================================
   CONTACT SECTION
===================================== */


.contact-container {

    display:grid;

    grid-template-columns:

    1fr 1fr;

    gap:40px;

}



.contact-info,
.contact-form {

    padding:40px;

}



.contact-info h3 {

    font-size:30px;

    margin-bottom:20px;

}



.contact-info p {

    color:var(--text-secondary);

    margin-bottom:30px;

}



.contact-item {

    display:flex;

    gap:15px;

    align-items:center;

    margin:20px 0;

}



.contact-item i {

    color:var(--accent);

    font-size:20px;

}



.contact-social {

    display:flex;

    gap:20px;

    margin-top:30px;

}



.contact-social a {

    width:45px;

    height:45px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:

    rgba(255,255,255,.08);

}





.contact-social a:hover {

    background:var(--accent);

    color:#000;

}






/* FORM */


.input-group {

    margin-bottom:20px;

}



.input-group input,
.input-group textarea {


    width:100%;

    padding:15px 20px;

    background:

    rgba(255,255,255,.06);

    border:

    1px solid var(--border-color);

    border-radius:15px;

    color:white;

    outline:none;

    font-size:16px;

}



.input-group input:focus,
.input-group textarea:focus {

    border-color:var(--accent);

}



textarea {

    resize:none;

}







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


footer {

    margin-top:50px;

    padding:50px 8%;

    background:

    rgba(0,0,0,.3);

    text-align:center;

}



.footer-content h3 {

    font-size:30px;

}



.footer-content p {

    color:var(--text-secondary);

}



.footer-links {

    display:flex;

    justify-content:center;

    gap:30px;

    margin:25px 0;

}



.footer-links a:hover {

    color:var(--accent);

}



.copyright {

    font-size:14px;

}







/* =====================================
   BACK TO TOP
===================================== */


#back-to-top {

    position:fixed;

    bottom:30px;

    right:30px;

    width:50px;

    height:50px;

    border-radius:50%;

    border:none;

    background:

    var(--gradient);

    color:white;

    cursor:pointer;

    display:none;

    font-size:18px;

    z-index:999;

}



#back-to-top:hover {

    transform:translateY(-5px);

}






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


::-webkit-scrollbar {

    width:10px;

}



::-webkit-scrollbar-track {

    background:#050816;

}



::-webkit-scrollbar-thumb {

    background:var(--accent);

    border-radius:20px;

}
/* =====================================
   LIGHT THEME
===================================== */


body.light-theme {


    --bg-primary:#f8fafc;

    --bg-secondary:#ffffff;

    --text-primary:#0f172a;

    --text-secondary:#475569;

    --card-bg:rgba(255,255,255,0.7);

    --border-color:rgba(15,23,42,.1);


}



body.light-theme .navbar {


    background:

    rgba(255,255,255,.75);


}



body.light-theme .architecture {


    background:

    rgba(15,23,42,.05);

    color:#0f172a;


}



body.light-theme .social-links a,
body.light-theme .contact-social a {


    background:

    rgba(15,23,42,.08);


}



body.light-theme .input-group input,
body.light-theme .input-group textarea {


    color:#0f172a;

}
/*==================================================
                CERTIFICATES SECTION
==================================================*/

.certificate-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:35px;
    margin-top:60px;
}

.certificate-card{
    overflow:hidden;
    border-radius:20px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(15px);
    transition:all .4s ease;
}

.certificate-card:hover{
    transform:translateY(-12px);
    border-color:#00d4ff;
    box-shadow:
        0 0 20px rgba(0,212,255,.20),
        0 0 45px rgba(0,212,255,.12);
}

.certificate-image{
    position:relative;
    overflow:hidden;
}

.certificate-image img{
    width:100%;
    height:230px;
    object-fit:cover;
    display:block;
    transition:transform .5s ease;
}

.certificate-card:hover .certificate-image img{
    transform:scale(1.05);
}

.certificate-tag{
    position:absolute;
    top:18px;
    right:18px;
    background:#00d4ff;
    color:#fff;
    padding:8px 16px;
    border-radius:30px;
    font-size:12px;
    font-weight:600;
}

.certificate-content{
    padding:25px;
}

.certificate-content h3{
    font-size:24px;
    margin-bottom:10px;
    color:#fff;
}

.issuer{
    color:#00d4ff;
    margin-bottom:8px;
    font-weight:500;
}

.certificate-date{
    color:#9ca3af;
    font-size:15px;
    margin-bottom:20px;
}

.certificate-btn{
    display:inline-block;
    padding:12px 24px;
    background:#00d4ff;
    color:#fff;
    border:none;
    border-radius:10px;
    cursor:pointer;
    font-weight:600;
    transition:.3s ease;
}

.certificate-btn:hover{
    background:#00bce4;
    transform:translateY(-2px);
    box-shadow:0 10px 20px rgba(0,212,255,.25);
}
/*==========================
      CERTIFICATE MODAL
==========================*/

.certificate-modal{
display:none;
position:fixed;
z-index:9999;
left:0;
top:0;
width:100%;
height:100%;
background:rgba(0,0,0,.88);
backdrop-filter:blur(8px);
justify-content:center;
align-items:center;
animation:fadeIn .3s ease;
}

.certificate-modal img{
max-width:90%;
max-height:88%;
border-radius:15px;
box-shadow:0 0 40px rgba(0,200,255,.35);
animation:zoomIn .35s ease;
}

.close-modal{
position:absolute;
top:30px;
right:40px;
font-size:45px;
font-weight:bold;
cursor:pointer;
color:#fff;
transition:.3s;
}

.close-modal:hover{
color:#00d4ff;
transform:rotate(90deg);
}

/* =====================================
        BLOG SECTION
===================================== */

.blog-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(360px,1fr));

    gap:35px;

    margin-top:60px;

}

.blog-card{

    overflow:hidden;

    border-radius:22px;

    transition:.4s ease;

}

.blog-card:hover{

    transform:translateY(-10px);

    box-shadow:0 15px 40px rgba(0,140,255,.25);

}

.blog-image{

    position:relative;

    overflow:hidden;

    height:230px;

}

.blog-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.5s;

}

.blog-card:hover .blog-image img{

    transform:scale(1.08);

}

.blog-tag{

    position:absolute;

    top:18px;

    left:18px;

    background:#0ea5e9;

    color:#fff;

    padding:6px 15px;

    border-radius:30px;

    font-size:13px;

    font-weight:600;

}

.blog-content{

    padding:28px;

}

.blog-content h3{

    margin-bottom:15px;

    font-size:22px;

}

.blog-content p{

    color:#b8b8b8;

    line-height:1.7;

    margin-bottom:22px;

}

.blog-meta{

    display:flex;

    justify-content:space-between;

    margin-bottom:22px;

    color:#8fa5c3;

    font-size:14px;

}

.blog-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:12px 24px;

    border-radius:50px;

    background:#0ea5e9;

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.blog-btn:hover{

    background:#0284c7;

    transform:translateY(-2px);

}

.project-modal{

display:none;

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,0.7);

justify-content:center;

align-items:center;

z-index:9999;

}


.project-modal-content{

background:#111;

padding:30px;

border-radius:20px;

width:90%;

max-width:700px;

color:white;

}


.project-modal-content img{

width:100%;

border-radius:15px;

margin-bottom:20px;

}


.close-project{

float:right;

font-size:30px;

cursor:pointer;

}


.open-project{

cursor:pointer;

}