a {
    color: #0f172a;
    text-decoration: none;
}

:root {
    color-scheme: light;
}
/* Disable smooth scrolling for instant anchor navigation */
html {
    scroll-behavior: auto;
}
header{
    z-index:9999999 !important;
}
#lead-content h2 {
    background: linear-gradient(120deg, #00B0FF 0%, #1E40FF 50%, #ffffff 99%);
    -webkit-background-clip: text;
    background-clip: text; /* standard property */
    color: transparent;
    font-weight: 600;
    font-size: 2.5em;
    font-weight: 500;
    padding: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

#lead::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3); /* Dark overlay with 30% opacity */
    z-index: 1; /* Ensure it sits above the background */
}

header li,header ul{display:inline-block}#lead,.heading{position:relative}#lead-down,header{right:0;z-index:10}#lead-down span,.top span{cursor:pointer;width:35px;height:35px;text-align:center}#education,#experience,#lead-content,#lead-down,#lead-down span,.top,.top span,header,header ul{text-align:center}#contact,.background-alt{background:#f2f2f5}#about,#contact,#education,#experience,#projects{border-bottom:1px solid #dcd9d9}#contact-form button,.shadow{box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24)}#lead,.project,body.active{overflow:hidden}body{font-family:Lato,sans-serif;font-size:16px}body.active{z-index:-1}.no-js #experience-timeline>div{background:#fff;padding:10px;margin-bottom:10px;border:1px solid #dcd9d9}.no-js #experience-timeline>div h3,.vtimeline-content h3{font-size:1.5em;font-weight:300;color:#374054;display:inline-block;margin:0}.no-js #experience-timeline>div h4,.vtimeline-content h4{font-size:1.2em;font-weight:300;color:#7e8890;margin:0 0 15px}.copyright p,.social a,.top i{color:#74808a}.no-js #experience-timeline>div p,.vtimeline-content p{color:#74808a;font-size:.9em;margin:0}.no-js #experience-timeline:after,.no-js #experience-timeline:before{content:none}@keyframes dropHeader{0%{transform:translateY(-100%)}100%{transform:translateY(0)}}header{position:fixed;top:0;left:0;animation-name:dropHeader;animation-iteration-count:1;animation-timing-function:ease;animation-duration:.75s}

body{
    background:#f3f4fb;
    color:#1f2335;
    transition:background .4s ease,color .4s ease;
}

/* DEPRECATED (dark legacy full-width bar) — neutralized */
header ul{
    width:auto;
    background:transparent !important;
    box-shadow:none !important;
    padding:0;
    margin:0;
    border:0;
    transition:none;
}

/* Glassmorphism header on scroll */
/* Remove dark overlay on scroll for any UL inside header */
header.scrolled ul { background:transparent !important; box-shadow:none !important; border:0 !important; backdrop-filter:none !important; }

/* Header Logo Styling */
.header-logo {
    position: fixed;
    top: 20px;
    left: 20px;
    z-index: 99999;
    transition: all 0.3s ease;
}

.header-logo a {
    display: block;
    text-decoration: none;
}

.logo-img {
    height: 45px;
    width: auto;
    max-width: 180px;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.3));
}

.logo-img:hover {
    transform: scale(1.05);
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.4));
}

/* Desktop Navigation (Glass / pill container style) */
.desktop-nav {
    position: fixed;
    inset: 0 0 auto 0; /* top full width */
    z-index: 99999;
    background: transparent;
    padding: 14px 18px; /* outer breathing space */
    pointer-events: none; /* only inner bar interactive */
}

.desktop-nav .nav-bar {
    pointer-events: auto;
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 18px 36px; /* a bit more breathing room like p-4 */
    background: rgba(255,255,255,0.30); /* lighter glass */
    backdrop-filter: blur(24px) saturate(160%);
    -webkit-backdrop-filter: blur(24px) saturate(160%);
    border: 1px solid transparent;
    border-radius: 24px; /* close to rounded-2xl */
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.10), 0 4px 6px -4px rgba(0,0,0,0.12); /* shadow-lg style */
    transition: background .35s ease, padding .35s ease, box-shadow .35s ease, transform .4s ease, border-color .35s ease;
}

.desktop-nav .nav-logo img {
    height: 38px;
    width: auto;
    display: block;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,.35));
    transition: transform .3s ease;
}
.desktop-nav .nav-logo img:hover { transform: scale(1.07); }

.nav-menu {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 34px;
    list-style: none;
    margin: 0;
    padding: 0;
    background: transparent;
}

.nav-menu li { margin: 0; }

.nav-menu a {
    position: relative;
    color: #111;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: .35px;
    text-decoration: none;
    padding: 6px 2px;
    transition: color .3s ease;
}
.desktop-nav .nav-bar, .nav-menu a { color: #111; }
body:not(.dark) .desktop-nav .nav-bar .nav-menu a { color: #111; }

/* underline reveal */
.nav-menu a:after {
    content: '';
    position: absolute;
    left: 0; bottom: -4px;
    width: 0; height: 2px;
    background: linear-gradient(90deg,#003973,#1E3C72); /* dark blue gradient */
    border-radius: 2px;
    transition: width .35s ease;
}
.nav-menu a:hover:after, .nav-menu a.active:after { width: 100%; }
.nav-menu a:before {
    content: none;
}
.nav-menu a:hover { color: #0b0b0b; }
.nav-menu a.active { font-weight: 600; }

.theme-toggle {
    pointer-events: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.2);
    background: rgba(255, 255, 255, 0.65);
    color: #0f172a;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
.theme-toggle__label {
    display: none;
}
}

.theme-toggle:hover {
    background: #ffffff;
}

.theme-toggle__icon {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
}

.theme-toggle__icon .theme-toggle__icon-sun,
.theme-toggle__icon .theme-toggle__icon-moon {
    display: inline-block;
}

body:not(.dark-mode) .theme-toggle__icon .theme-toggle__icon-moon {
    display: none;
}

body.dark-mode .theme-toggle__icon .theme-toggle__icon-sun {
    display: none;
}

.mobile-topbar__actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.theme-toggle--compact {
    padding: 8px 10px;
}

.theme-toggle--compact .theme-toggle__label {
    display: none;
}

/* Scroll shrink */
header.scrolled .desktop-nav .nav-bar {
    background: rgba(255,255,255,0.40);
    border-color: transparent;
    padding: 14px 32px; /* subtle shrink */
    box-shadow: 0 12px 22px -6px rgba(0,0,0,0.15), 0 4px 12px -2px rgba(0,0,0,0.10);
    transform: translateY(-2px);
}
header.scrolled .nav-menu a { color: #111; }
header.scrolled .nav-menu a:after { background: linear-gradient(90deg,#003973,#1E3C72); }

/* Override older generic header ul styling to avoid double backgrounds */
header > nav.desktop-nav > ul.nav-menu {
    display: flex !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    width: auto !important;
}

/* actual structure now: header > nav.desktop-nav > div.nav-bar > ul.nav-menu */
header nav.desktop-nav .nav-menu {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    width: auto !important;
}

header.scrolled .desktop-nav { background: transparent !important; box-shadow: none !important; }

header > nav.desktop-nav > ul.nav-menu li { margin: 0; }

header.scrolled > nav.desktop-nav > ul.nav-menu {
    background: transparent !important;
    backdrop-filter: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

header > nav.desktop-nav > ul.nav-menu li {
    display: block !important;
}

/* Mobile: Hide desktop nav, show hamburger */
@media (max-width: 768px) {
    .desktop-nav {
        display: none;
    }
    
    .header-logo {
        top: 15px;
        left: 15px;
    }
    
    .logo-img {
        height: 35px;
        max-width: 140px;
    }
    
    .mobile-menu {
        max-width: 280px;
    }
    
    .mobile-menu a {
        font-size: 16px;
        padding: 14px 0;
    }
}

@media (max-width: 480px) {
    .header-logo {
        top: 12px;
        left: 12px;
    }
    
    .logo-img {
        height: 30px;
        max-width: 120px;
    }
}

#menu.active,.top span,header a,header.active{display:block}
header a{padding:10px}
header a:focus{outline:2px solid rgba(0,0,0,0.3);outline-offset:2px;background:transparent}
header.sticky{position:fixed;z-index:999}

/* Force desktop nav links to stay dark */
.desktop-nav .nav-menu a{color:#111 !important;}
header.scrolled .desktop-nav .nav-menu a{color:#111 !important;}
.nav-menu a:after{background:linear-gradient(90deg,#003973,#1E3C72) !important;}

#mobile-menu-open {
    display: none;
    cursor: pointer;
    position: fixed;
    right: 20px;
    top: 20px;
    z-index: 99999;
    width: 44px;
    height: 44px;
    background: rgba(0, 0, 0, 0.9);
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

#mobile-menu-open:hover {
    background: rgba(0, 0, 0, 0.95);
    transform: scale(1.05);
}

/* Animated Hamburger Lines */
.hamburger-line {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 20px;
    height: 2px;
    background: #ffffff;
    border-radius: 2px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform-origin: center;
}

.hamburger-line:nth-child(1) { transform: translate(-50%, -50%) translateY(-6px); }
.hamburger-line:nth-child(2) { transform: translate(-50%, -50%); opacity: 1; }
.hamburger-line:nth-child(3) { transform: translate(-50%, -50%) translateY(6px); width: 14px; }

.menu-active .hamburger-line:nth-child(1) { transform: translate(-50%, -50%) rotate(45deg); }
.menu-active .hamburger-line:nth-child(2) { opacity: 0; transform: translate(-50%, -50%) scale(0); }
.menu-active .hamburger-line:nth-child(3) { width: 20px; transform: translate(-50%, -50%) rotate(-45deg); }

/* Full Screen Overlay - SOLID BLACK */
#mobile-menu-close {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #000000;
    z-index: 99998;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

#mobile-menu-close.active {
    opacity: 1;
    visibility: visible;
    display: flex;
}

#mobile-menu-close::before {
    content: 'MENU';
    position: absolute;
    top: 18px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 12px;
    letter-spacing: 4px;
    color: rgba(255, 255, 255, 0.6);
    font-weight: 400;
}

#mobile-menu-close::after {
    content: 'tap outside to close';
    position: absolute;
    bottom: 18px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 10px;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, 0.35);
}

/* Close Button */
.close-button {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 40px;
    height: 40px;
    background: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.close-button:hover { background: rgba(255, 255, 255, 0.1); }

/* Mobile Menu Items */
.mobile-menu {
    position: static;
    transform: none;
    width: 100%;
    max-width: 320px;
    padding: 0 16px;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    list-style: none;
    margin: 0 auto;
}

.mobile-menu.active { display: block; }

.mobile-menu li {
    margin: 0;
    padding: 0;
    opacity: 0;
    transform: translateY(30px);
    animation: none;
    background: transparent;
}

.mobile-menu.active li { animation: slideInUp 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; }
.mobile-menu.active li:nth-child(1) { animation-delay: 0.05s; }
.mobile-menu.active li:nth-child(2) { animation-delay: 0.1s; }
.mobile-menu.active li:nth-child(3) { animation-delay: 0.15s; }
.mobile-menu.active li:nth-child(4) { animation-delay: 0.2s; }
.mobile-menu.active li:nth-child(5) { animation-delay: 0.25s; }
.mobile-menu.active li:nth-child(6) { animation-delay: 0.3s; }

@keyframes slideInUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

.mobile-menu a, #menu a {
    display: block;
    color: #ffffff;
    padding: 14px 0;
    margin: 0;
    font-size: 17px;
    font-weight: 500;
    text-align: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    transition: color 0.2s ease;
    text-decoration: none;
    letter-spacing: 0.2px;
}

.mobile-menu a:last-child, #menu a:last-child { border-bottom: none; }
.mobile-menu a:hover, #menu a:hover { color: #ffffff; background: transparent; text-decoration: none; }

[unselectable], .no-select {
    user-select: none;
    -webkit-user-select: none;
}

.mobile-menu a.active, #menu a.active {
    color: #ffffff;
    background: transparent;
}

/* Close Icon */
.close-icon { position: relative; width: 20px; height: 20px; }
.close-icon::before,
.close-icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    background: #ffffff;
    border-radius: 1px;
}
.close-icon::before { transform: translate(-50%, -50%) rotate(45deg); }
.close-icon::after { transform: translate(-50%, -50%) rotate(-45deg); }

footer{padding:50px 0;background:#f2f2f5;}
.footer-status{padding-top:18px;}
.status-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: #fff;
    border: 1px solid #dcd9d9;
    border-radius: 30px;
    font-size: 14px;
    color: #374054;
    font-weight: 500;
}
.status-dot {
    width: 10px;
    height: 10px;
    background: #4CAF50;
    border-radius: 50%;
    animation: pulse-dot 2s infinite;
}
@keyframes pulse-dot {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.7; transform: scale(1.2); }
}
.copyright{padding-top:20px}
.copyright p{margin:0;font-size:16px;color:#374054;font-weight:500;}
.footer-copyright{margin-top:15px;font-size:13px;color:#74808a;text-align:center;}
.top span{margin:15px auto 0;border-radius:50%;border:3px solid #b9bfc4}
.btn-rounded-white,.heading,.social li{display:inline-block}
.social{text-align:right}
.social ul{margin:5px 0 0;padding:0}
.social li{font-size:1.25em;list-style:none}
.social a{display:block;padding:10px}
.social a:hover{color:#3498db}
.btn-rounded-white{color:#fff;padding:15px 25px;border:3px solid #fff;border-radius:30px;transition:.5s;font-size:18px;}
.btn-rounded-white:hover{color:#003161;background:#fff;text-decoration:none}
#experience-timeline:after,#experience-timeline:before,.heading:after{position:absolute;content:'';background:#3498db}
.shadow-large{box-shadow:0 3px 6px rgba(0,0,0,.08),0 3px 6px rgba(0,0,0,.15)}
.heading{font-size:2em;font-weight:300;margin:0 0 30px}
.heading:after{top:100%;height:1px;width:50px;left:0;right:0;margin:0 auto}
#lead{height:100vh;min-height:500px;max-height:1080px;background:url(../images/lead-bg.jpg) 0 0/cover;padding:15px}
#lead-content{position:absolute;z-index:10;top:50%;left:50%;transform:translate(-50%,-50%)}
#lead-content h1,#lead-content h2{margin:0}
#lead-content h1{color:#fff;font-weight:900;font-size:5em;text-transform:uppercase;letter-spacing:.05em;line-height:.9em}
#lead-content h2{font-size:2.25em;margin-bottom:15px}
#lead-down{position:absolute;left:0;width:100%;bottom:15px;color:#fff}
#lead-down span{display:block;margin:0 auto;border-radius:50%;border:3px solid #a0cfee}
#lead-down i{animation:1.5s infinite pulsate;padding-top:5px}
@keyframes pulsate{0%,100%{transform:scale(1,1)}50%{transform:scale(1.2,1.2)}}
#about{padding:75px 15px}
#about h2,#experience h2,.optional-section h2{color:#374054}
#about p{color:#74808a;margin:0}
#experience{padding:50px 15px}
#experience-timeline{margin:30px auto 0;position:relative;max-width:1000px}
#experience-timeline:before{top:0;bottom:0;left:303px;right:auto;height:100%;width:3px;z-index:0}
#experience-timeline:after{width:3px;height:40px;background:linear-gradient(to bottom,#3498db,rgba(52,152,219,0));top:100%;left:303px}
.vtimeline-content{margin-left:350px;background:#fff;border:1px solid #e6e6e6;padding:15px;border-radius:3px;text-align:left ;border-radius:28px;}
.vtimeline-point{position:relative;display:block;vertical-align:top;margin-bottom:30px}
.vtimeline-icon {
    position: relative;
    color: #fff;
    width: 50px;
    height: 50px;
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%);
    border-radius: 50%;
    float: left;
    z-index: 99;
    margin-left: 280px;
}
.vtimeline-icon i{display:block;font-size:2em;margin-top:10px}
.vtimeline-date{width:260px;text-align:right;position:absolute;left:0;top:10px;font-weight:300;color:#374054}
#education{padding:50px 15px 20px}
#education h2,#projects h2,#skills h2, #technologies h2{color:#374054;margin-bottom:50px;}
.education-block{max-width:700px;margin:0 auto 30px;padding:15px;border-radius:28px;border:1px solid #dcd9d9;text-align:left}
#contact,#projects,#skills,.optional-section{padding:50px 15px;text-align:center}
#contact{background:#fff !important;}
.education-block h3{font-weight:500;float:left;margin:0;color:#374054}
.education-block span{color:#74808a;float:right}
.education-block h4,.optional-section-block h4{color:#74808a;clear:both;font-weight:500;margin:0 0 15px}
.education-block p,.education-block ul{margin:0;color:#74808a;font-size:16px}
#contact h2,.optional-section-block h3{color:#374054;font-weight:500;margin:0 0 15px}
.education-block ul,.optional-section-block ul{padding:0 0 0 15px}
.project-info h3{font-weight:300;margin:0 0 15px}
.project-info p{margin:0 0 15px}
#lead-overlay,#more-projects{display:none}
#skills ul{display:block;margin:0 auto;padding:0;max-width:800px}

/* Enhanced animated skill tags */
#skills li{
    display:inline-block;
    margin:7px;
    padding:5px 10px;
    color:#374054;
    background:#e4e4ea;
    list-style:none;
    cursor:default;
    font-size:1.2em;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    border-radius: 20px;
}

#skills li::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    transition: left 0.6s;
}

#skills li:hover {
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%);
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(1, 3, 210, 0.3);
}

#skills li:hover::before { left: 100%; }

#contact-form{max-width:500px;margin:0 auto}
#contact-form input,#contact-form textarea{display:block;width:100%;padding:10px;border-radius:4px;border:none;margin-bottom:10px;background:#1d6fa5;color:#fff;transition:.5s}
#contact-form input::-webkit-input-placeholder,#contact-form textarea::-webkit-input-placeholder{color:#fff}
#contact-form input:-moz-placeholder,#contact-form textarea:-moz-placeholder{color:#fff;opacity:1}
#contact-form input::-moz-placeholder,#contact-form textarea::-moz-placeholder{color:#fff;opacity:1}
#contact-form input:-ms-input-placeholder,#contact-form textarea:-ms-input-placeholder{color:#fff}
#contact-form input:focus,#contact-form textarea:focus{outline:0;background:#16527a}
#contact-form textarea{height:150px;resize:none}
#contact-form button{display:block;width:100%;background:#fff;border-radius:4px;padding:5px 10px;border:none;color:#3498db;font-weight:700;transition:.5s}
#contact-form button:hover{box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.23)}
.optional-section{border-top:1px solid #dcd9d9}
.optional-section-block{max-width:700px;margin:0 auto 30px;padding:15px;border:1px solid #dcd9d9;background:#fff;text-align:left}
.optional-section-block p,.optional-section-block ul{margin:0 0 15px;color:#74808a;font-size:.9em}
@media only screen and (max-width:750px){
  #experience-timeline:after,#experience-timeline:before{left:23px}
  .vtimeline-date{width:auto;text-align:left;position:relative;margin-bottom:15px;display:block;margin-left:70px}
  .vtimeline-icon{margin-left:0}
  .vtimeline-content{margin-left:70px}
}
@media only screen and (max-width:992px){
  #lead{height:auto;min-height:auto;max-height:auto;padding:100px 15px}
  #lead-content{position:relative;transform:none;left:auto;top:auto}
  #lead-content h1{font-size:3em}
  #lead-content h2{font-size:1.75em}
  #about{text-align:center}
  #about p{text-align:left}
}
@media only screen and (max-width:768px){
  #menu li,#mobile-menu-close,#mobile-menu-open{display:block}
  #lead-down{display:none}

  header{
      position: fixed; top: 0; left: 0; right: 0; bottom: auto; height: auto;
      z-index: 99990 !important;
      animation: none;
      background: transparent;
  }

  header.active { display: block; }

  @media (max-width: 768px) {
      header { display: block !important; }
      header nav.desktop-nav { display: none !important; }
  }

  @media (max-width: 768px) and (orientation: landscape) {
      .mobile-menu { top: 55%; }
      .mobile-menu a { padding: 12px 0; margin: 0; font-size: 18px; }
      .close-button { top: 15px; right: 15px; }
  }

  @media (max-width: 480px) {
      .mobile-menu { max-width: 250px; }
      .mobile-menu a { font-size: 16px; padding: 12px 0; }
      .close-button { width: 40px; height: 40px; }
  }

  #menu{
      height:auto;
      max-height: 85vh;
      overflow-y:auto;
      -webkit-overflow-scrolling: touch;
      box-shadow:none;
      border-radius:0;
      width:100%;
      background: transparent;
      margin: 0;
      padding: 0;
  }

  #menu::-webkit-scrollbar { width: 0 !important; height: 0 !important; }
  #menu { scrollbar-width: none; }

  #menu li{margin-bottom:0; margin: 0; padding: 0; background: transparent;}
  #lead-content h1{font-size:2em}
  #lead-content h2{font-size:1.3em}
  #lead-content a{padding:10px 20px}
  .education-block h3,.education-block span{float:none}
  .project-info{position:relative;margin:0;padding:30px 15px;top:auto;transform:none}
  .social,footer{text-align:center}
}
@media only screen and (max-width:480px){
  #lead-content h1{font-size:1.5em}
  #lead-content h2{font-size:2em}
  #lead-content a{font-size:.9em;padding:5px 10px}
}

.project{position:relative;background:#fff;max-width:600px;margin:0 auto 30px;border-radius:28px;box-shadow:0 2px 4px rgba(0,0,0,.1)}
.project-content{display:flex;flex-direction:column}
.project-image{float:left;width:100%;border-top-left-radius:4px;border-top-right-radius:4px}
.project-info{padding:15px;background-color:#f7f7f7;border:1px solid #ddd;border-top:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}
.project-info h3{font-size:1.2em;color:#374054;margin-bottom:10px}
.project-info p{color:#74808a;font-size:16px;margin-bottom:10px}
.project-info a{display:inline-block;background-color:#124e66;color:#fff;padding:8px 15px;border-radius:4px;text-decoration:none;transition:background-color .3s}
.project-info a:hover{background-color:#2b3643}
.thatsme{width:150px;height:150px;border-radius:50%;display:block;margin-left:auto;margin-right:auto;margin-top:10px}
@media only screen and (min-width:992px){.thatsme{width:150px;height:150px;border-radius:50%;display:block;margin-top:10px;margin-right:220px}}

::-webkit-scrollbar { width: 20px; }
#about p{ font-size: 18px; line-height: 26px; color: #4a5565; }
::-webkit-scrollbar-track { box-shadow: inset 0 0 5px grey; border-radius: 10px; }
::-webkit-scrollbar-thumb { background: linear-gradient(0deg, rgb(1, 0, 190) 0%, rgb(6, 0, 122) 100%); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: linear-gradient(0deg, rgb(1, 0, 190) 0%, rgb(6, 0, 122) 100%); }

.count-particles{
  background: #000022;
  position: absolute;
  top: 48px;
  left: 0;
  width: 80px;
  color: #13E8E9;
  font-size: .8em;
  text-align: left;
  text-indent: 4px;
  line-height: 14px;
  padding-bottom: 2px;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: bold;
}

.js-count-particles{ font-size: 1.1em; }

#stats, .count-particles{
  -webkit-user-select: none;
  margin-top: 5px;
  margin-left: 5px;
}

#stats{ border-radius: 3px 3px 0 0; overflow: hidden; }
.count-particles{ border-radius: 0 0 3px 3px; }

@media only screen and (max-width: 992px) {
    #lead-content { position: relative; transform: none; left: auto; top: auto; }
}
@media only screen and (max-width: 992px) {
    #lead { height: auto; min-height: auto; max-height: auto; padding: 100px 15px; }
}

/* ---- particles.js container ---- */
#particles-js{
  width: 100%;
  height: 100%;
  background-image: url('');
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

.project:hover::before { transform: scale(1.1) !important; box-shadow: 0 0 15px #ababab !important; }

.project { transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); transform-origin: center; }

/* iOS Safari fix */
@supports (-webkit-touch-callout: none) {
    @media (max-width: 991px) {
        .mobile-topbar {
            position: sticky !important;
            top: calc(env(safe-area-inset-top) + 8px) !important;
            left: auto !important; right: auto !important;
            margin: 0 8px !important;
            width: auto !important;
            will-change: top;
        }
        header {
            position: sticky !important;
            top: 0 !important;
            left: 0 !important; right: 0 !important;
            z-index: 99980 !important;
        }
    }
}

@media (max-width: 768px) {
    header {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: sticky !important;
        top: 0 !important;
        left: 0 !important; right: 0 !important;
        height: auto !important;
        z-index: 99990 !important;
        transform: none !important;
    }
    header nav.desktop-nav { display: none !important; }
}

.project:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); }

@keyframes slideIn {
    0% { transform: translateX(-20px); opacity: 0; }
    100% { transform: translateX(0); opacity: 1; }
}

.new-ribbon {
    position: absolute;
    top: 10px;
    left: 10px;
    background: linear-gradient(135deg, #ff5252, #ff7979);
    color: white;
    padding: 5px 10px;
    font-size: 10px;
    font-weight: bold;
    text-transform: uppercase;
    border-radius: 0 4px 4px 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    animation: slideIn 0.8s ease-out, pulse 1.5s ease-in-out infinite;
}

.project-content { position: relative; animation: fadeInOut 3s infinite; }

/* --- Scroll reveal animation for project cards --- */
.reveal-up { opacity: 0; transform: translateY(24px); transition: opacity 0.6s ease, transform 0.6s ease; will-change: opacity, transform; }
.reveal-visible { opacity: 1; transform: translateY(0); }

/* --- Projects: 2 per row on desktop --- */
@media (min-width: 992px) {
    #projects .row {
        display: flex;
        flex-wrap: wrap;
        gap: 50px 30px;
        align-items: stretch;
        margin-left: 0;
        margin-right: 0;
        justify-content: flex-start;
        align-content: flex-start;
    }

    #projects .project {
        flex: 1 1 calc(50% - 30px);
        max-width: calc(50% - 30px);
        margin: 0;
        box-sizing: border-box;
    }

    #projects > .container {
        padding-left: 0;
        padding-right: 0;
    }
}

#projects .project .project-content { height: 100%; display: flex; flex-direction: column; }
#projects .project .project-info { flex: 1 1 auto; display: flex; flex-direction: column; }
#projects .project .project-info a { margin-top: auto; align-self: center; width: auto; }

/* --- Project card visual fixes (remove white band) --- */
.project { background: transparent; }
.project-image {
    float: none;
    display: block;
    width: 100%;
    border-top-left-radius: 28px;
    border-top-right-radius: 28px;
}
.project-info { border-bottom-left-radius: 28px; border-bottom-right-radius: 28px; }
.project-content { animation: none; }

/* Active nav highlight */
header a.active{
    background: transparent;
    color: #ffffff !important;
    border-radius: 0;
    box-shadow: inset 0 -2px 0 rgba(255, 255, 255, 0.6);
}

/* Scroll Progress Bar */
.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%);
    z-index: 99999;
    transition: width 0.1s ease;
}

/* Enhanced CTA Buttons */
.cta-primary {
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%) !important;
    color: white !important;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-block;
    border: none;
    cursor: pointer;
}
.cta-primary:hover {
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(1, 3, 210, 0.4);
    text-decoration: none;
}

/* Apply to existing project CTAs */
.project-info a {
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%) !important;
    color: white !important;
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 14px;
}
.project-info a:hover {
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(1, 3, 210, 0.4);
    text-decoration: none;
}

/* Project Tags */
.project-tags { margin-bottom: 15px; }
.project-tags .tag {
    display: inline-block;
    background: rgba(1, 3, 210, 0.1);
    color: rgb(1, 3, 210);
    padding: 4px 8px;
    margin: 2px 4px 2px 0;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 1px solid rgba(1, 3, 210, 0.2);
    transition: all 0.3s ease;
}
.project-tags .tag:hover {
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%);
    color: white;
    transform: translateY(-1px);
}

/* ==========================================================
   NEW UI/UX EXPERIMENTAL FEATURES - December 2025
   ========================================================== */

/* 1. Animated Gradient Text for Hero */
.hero-title {
    background: linear-gradient(90deg, #fff, #00B0FF, #fff, #1E40FF, #fff);
    background-size: 400% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: gradientText 8s ease infinite;
}

@keyframes gradientText {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* 2. Stats Counter Section */
.stats-section {
    background: #fff;
    padding: 50px 20px;
    border-bottom: 1px solid #e5e5e5;
}

.stats-grid {
    display: flex;
    justify-content: center;
    gap: 50px;
    flex-wrap: wrap;
    max-width: 800px;
    margin: 0 auto;
}

.stat-item {
    text-align: center;
}

.stat-number {
    font-size: 2.5em;
    font-weight: 700;
    color: #374054;
    display: block;
    line-height: 1;
}

.stat-label {
    font-size: 0.85em;
    color: #6b7280;
    margin-top: 6px;
    font-weight: 400;
}

/* Stats Mobile */
@media (max-width: 768px) {
    .stats-section {
        padding: 35px 20px;
    }
    
    .stats-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 25px 15px;
    }
    
    .stat-number {
        font-size: 1.8em;
    }
    
    .stat-label {
        font-size: 0.75em;
    }
}

/* 5. Section Dividers with Wave Effect */
.wave-divider {
    width: 100%;
    height: 80px;
    overflow: hidden;
    position: relative;
}

.wave-divider svg {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100%;
}

/* 6. Enhanced Project Card Hover with 3D Effect */
.project {
    perspective: 1000px;
    transform-style: preserve-3d;
}

.project:hover .project-content {
    transform: rotateX(2deg) rotateY(-2deg);
}

.project-content {
    transition: transform 0.4s ease;
}

/* 7. Testimonials Section - Styled like Education/Experience */
.testimonials-section {
    padding: 50px 15px;
    background: #f2f2f5;
    text-align: center;
    border-bottom: 1px solid #dcd9d9;
}

.testimonials-section .heading {
    color: #374054;
    margin-bottom: 50px;
}

.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 15px;
}

.testimonial-card {
    background: #fff;
    padding: 25px;
    border-radius: 28px;
    border: 1px solid #dcd9d9;
    text-align: left;
    position: relative;
    transition: all 0.3s ease;
}

.testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
}

.testimonial-card::before {
    content: '\201C';
    font-size: 60px;
    color: rgba(55, 64, 84, 0.15);
    position: absolute;
    top: 15px;
    left: 20px;
    font-family: Georgia, serif;
    line-height: 1;
}

.testimonial-text {
    font-size: 16px;
    line-height: 1.7;
    color: #74808a;
    margin-bottom: 20px;
    margin-top: 30px;
    font-style: italic;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 15px;
}

.testimonial-avatar {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: linear-gradient(0deg, rgb(1, 3, 210) 0%, rgb(6, 0, 122) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 600;
    font-size: 16px;
}

.testimonial-info h4 {
    margin: 0;
    font-size: 15px;
    font-weight: 500;
    color: #374054;
}

.testimonial-info span {
    font-size: 13px;
    color: #7e8890;
}

/* 8. Skills Section Enhancement with Categories */
.skills-categories {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.skill-category {
    background: #fff;
    padding: 25px;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
}

.skill-category h3 {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #374054;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid rgba(1, 3, 210, 0.2);
}

/* 9. Contact Form Enhancement */
#contact_form input:focus,
#contact_form textarea:focus,
#contact_form select:focus {
    border-color: rgb(1, 3, 210);
    box-shadow: 0 0 0 3px rgba(1, 3, 210, 0.1);
    outline: none;
}

/* 10. Micro-interactions */
.vtimeline-icon {
    transition: all 0.3s ease;
}

.vtimeline-point:hover .vtimeline-icon {
    transform: scale(1.15);
    box-shadow: 0 0 20px rgba(1, 3, 210, 0.4);
}

.education-block {
    transition: all 0.3s ease;
}

.education-block:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
}

/* 11. Loading Animation for Images */
.project-image {
    opacity: 0;
    transition: opacity 0.5s ease;
}

.project-image.loaded {
    opacity: 1;
}

/* 12. Typed cursor blink enhancement */
.typed-cursor {
    opacity: 1;
    animation: blink-cursor 0.8s infinite;
}

@keyframes blink-cursor {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

/* 13. Social icons hover enhancement */
.social a {
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.social a:hover {
    background: linear-gradient(135deg, #003161, #1E3C72);
    color: #fff !important;
    transform: translateY(-3px);
}

/* 14. Section fade-in on scroll */
.section-fade {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.section-fade.visible {
    opacity: 1;
    transform: translateY(0);
}

/* 15. Glassmorphism Cards for About Section */
#about .container {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(10px);
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.06);
}

/* 16. Animated underline for links */
#about a,
.project-info a {
    position: relative;
}

/* 17. Enhanced scroll-to-top button */
.top span {
    transition: all 0.3s ease;
    background: linear-gradient(135deg, #003161, #1E3C72);
    border-color: transparent;
}

.top span:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(1, 3, 210, 0.3);
}

.top span i {
    color: #fff;
}

/* 18. Contact section intro text */
.contact-intro {
    color: #5a5a5a;
    font-size: 16px;
    margin-bottom: 30px;
}

.contact-reassurance {
    font-size: 13px;
    color: #888;
    margin-top: 20px;
    opacity: 0.8;
}

/* 19. Skills list modern style */
.skills-list {
    list-style: none;
    padding: 0;
    max-width: 900px;
    margin: 0 auto;
    text-align: left;
}

.skills-list li {
    padding: 20px 25px;
    margin: 15px 0;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    font-size: 16px;
    color: #4a5565;
    line-height: 1.6;
    transition: all 0.3s ease;
    border-left: 4px solid transparent;
}

.skills-list li:hover {
    transform: translateX(8px);
    border-left-color: rgb(1, 3, 210);
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}

.skills-list li strong {
    color: rgb(1, 3, 210);
    font-weight: 600;
}

/* 20. Experience summary styling */
.experience-summary {
    font-size: 15px;
    line-height: 1.65;
    color: #5a6577;
}

/* Section intro text */
.section-intro {
    font-size: 17px;
    color: #5a6577;
    line-height: 1.6;
}

/* ==========================================================
   FINAL OVERRIDES (SAFE) — put at end, wins specificity
   1) HERO Readability Fix
   2) Hide EPAL Education block completely
   ========================================================== */

/* 1) HERO: stop pseudo overlay + use real overlay layer */
#lead::before { content: none !important; }
#lead { position: relative !important; overflow: hidden !important; }

/* ensure overlay actually exists and covers */
#lead-overlay{
    display:block !important;
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    background: radial-gradient(1100px 520px at 50% 45%, rgba(0,0,0,.32), rgba(0,0,0,.58)) !important;
    pointer-events:none !important;
}

/* particles behind overlay */
#particles-js{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
}

/* content above overlay (glass card) */
#lead-content{
  position:absolute !important;
    z-index:5 !important;
  max-width: 980px !important;
  padding: 26px 26px !important;
  border-radius: 18px !important;
  background: rgba(0,0,0,.18) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.25) !important;
}

/* Seasonal snow overlay for hero */
.snow-layer{
    position:absolute;
    inset:-10% 0 0 0;
    z-index:4;
    pointer-events:none;
    background-image:
        radial-gradient(2.5px 2.5px at 20px 40px, rgba(255,255,255,.95), transparent 55%),
        radial-gradient(2px 2px at 140px 10px, rgba(255,255,255,.8), transparent 50%),
        radial-gradient(1.6px 1.6px at 90px 120px, rgba(255,255,255,.7), transparent 60%);
    background-size: 220px 240px, 260px 320px, 320px 380px;
    background-repeat: repeat;
    opacity:.55;
    animation: heroSnowDrift 42s linear infinite;
    mix-blend-mode: screen;
}

.snow-layer--front{
    animation-duration: 18s;
    opacity:.78;
    filter: drop-shadow(0 0 6px rgba(255,255,255,.4));
}

.snow-layer--back{
    animation-duration: 55s;
    opacity:.35;
    filter: blur(0.8px);
}

@keyframes heroSnowDrift{
    from{background-position:0 0,0 0,0 0;}
    to{background-position:0 600px,0 800px,0 950px;}
}

@media (prefers-reduced-motion: reduce){
    .snow-layer{animation:none;opacity:0;}
}

/* Site-wide snow overlay */
.site-snow{
    position:fixed;
    inset:-5% 0 auto 0;
    width:100%;
    height:120vh;
    pointer-events:none;
    z-index:20;
    mix-blend-mode:screen;
    background-image:
        radial-gradient(3px 3px at 20px 20px, rgba(255,255,255,.8), transparent 60%),
        radial-gradient(2px 2px at 120px 40px, rgba(255,255,255,.7), transparent 55%),
        radial-gradient(1.4px 1.4px at 60px 80px, rgba(255,255,255,.6), transparent 65%),
        radial-gradient(2.8px 2.8px at 200px 160px, rgba(255,255,255,.85), transparent 50%);
    background-size: 260px 280px, 240px 320px, 300px 360px, 340px 420px;
    opacity:.45;
    animation: siteSnowFall 30s linear infinite;
}

.site-snow--front{
    animation-duration:16s;
    opacity:.7;
    filter:drop-shadow(0 0 8px rgba(255,255,255,.5));
}

.site-snow--back{
    animation-duration:52s;
    opacity:.3;
    filter:blur(1px);
}

@keyframes siteSnowFall{
    from{background-position:0 0, 0 0, 0 0, 0 0;}
    to{background-position:0 900px, 0 700px, 0 800px, 0 1000px;}
}

@media (prefers-reduced-motion: reduce){
    .site-snow{animation:none;opacity:0;}
}

/* typography tune for new hero classes */
#lead-content .hero-kicker{
  color: rgba(255,255,255,.92) !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  margin-bottom: 10px !important;
}
#lead-content .hero-title{
  color:#fff !important;
  text-transform:none !important;
  letter-spacing:-0.02em !important;
    line-height:1.02 !important;
    font-size:clamp(2.5rem,4vw,3.6rem) !important;
}
#lead-content .hero-subtitle{
  color: rgba(255,255,255,.92) !important;
  max-width: 72ch !important;
  line-height: 1.55 !important;
  font-size: 16px !important;
    margin-top: 14px !important;
    margin-bottom: 26px !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* CTA polish */
#lead-content .btn-rounded-white{
  border-width: 2px !important;
  padding: 14px 22px !important;
}

/* mobile hero: avoid absolute centering issues */
@media (max-width: 992px){
  #lead-content{
    position: relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    margin: 0 auto !important;
  }
}

/* ==========================================================
   DARK THEME OVERRIDES
   ========================================================== */
body.dark-mode {
    background:#040813;
    color:#e4e9ff;
}

body.dark-mode a {
    color:#a5c8ff;
}

body.dark-mode a:hover {
    color:#d8e5ff;
}

body.dark-mode .heading,
body.dark-mode .section-intro,
body.dark-mode .experience-summary,
body.dark-mode .contact-intro,
body.dark-mode .contact-reassurance,
body.dark-mode p,
body.dark-mode li,
body.dark-mode .stat-label,
body.dark-mode .skills-list li,
body.dark-mode .tech-item span {
    color:#cfd7ff;
}

body.dark-mode .stat-number,
body.dark-mode .heading,
body.dark-mode h3,
body.dark-mode h4 {
    color:#f5f7ff;
}

body.dark-mode .skills-list li strong {
    color:#9cc2ff;
}

body.dark-mode #about,
body.dark-mode #contact,
body.dark-mode #education,
body.dark-mode #experience,
body.dark-mode #projects {
    border-bottom:1px solid rgba(255,255,255,0.08);
}

body.dark-mode .background-alt,
body.dark-mode #skills,
body.dark-mode #technologies,
body.dark-mode #contact,
body.dark-mode .stats-section,
body.dark-mode .testimonials-section,
body.dark-mode footer,
body.dark-mode #about .container {
    background:#050c1c;
    color:#d9e3ff;
}

body.dark-mode #contact {
    background:linear-gradient(180deg,#050c1c 0%,#01030a 100%) !important;
}

body.dark-mode .desktop-nav .nav-bar {
    background: rgba(5, 9, 23, 0.9);
    border: 1px solid rgba(148,163,184,0.25);
    box-shadow: 0 18px 40px rgba(0,0,0,0.45);
}

body.dark-mode header.scrolled .desktop-nav .nav-bar {
    background: rgba(6, 10, 26, 0.95);
}

body.dark-mode .nav-menu a {
    color:#f5f7ff !important;
}

body.dark-mode .nav-menu a:after {
    background: linear-gradient(90deg,#38bdf8,#a78bfa) !important;
}

body.dark-mode .theme-toggle {
    background: rgba(19,25,43,0.9);
    border-color: rgba(148,163,184,0.35);
    color:#eff4ff;
}

body.dark-mode .mobile-topbar {
    background: rgba(5, 9, 23, 0.9);
    box-shadow: 0 12px 28px rgba(0,0,0,0.55);
}

body.dark-mode #mobile-menu-open {
    background: rgba(255,255,255,0.18);
    border-color: rgba(255,255,255,0.25);
}

body.dark-mode #mobile-menu-open:hover {
    background: rgba(255,255,255,0.28);
}

body.dark-mode .status-badge {
    background: rgba(15,22,36,0.85);
    border-color: rgba(148,163,184,0.3);
    color:#e2e8ff;
}

body.dark-mode .project,
body.dark-mode .project-info,
body.dark-mode .skills-list li,
body.dark-mode .skill-category,
body.dark-mode .tech-category,
body.dark-mode .education-block,
body.dark-mode .vtimeline-content,
body.dark-mode .optional-section-block,
body.dark-mode .testimonial-card,
body.dark-mode #container {
    background: rgba(10,16,32,0.92);
    border-color: rgba(148,163,184,0.25);
    box-shadow: 0 25px 45px rgba(0,0,0,0.45);
    color:#e2e7ff;
}

body.dark-mode .project-info p,
body.dark-mode .testimonial-text {
    color:#cbd5ff;
}

body.dark-mode #projects .project-info,
body.dark-mode #projects .project-info h3,
body.dark-mode #projects .project-info p,
body.dark-mode #projects .project-info a,
body.dark-mode #projects .project-tags .tag {
    color:#fff !important;
}

body.dark-mode #projects .project-tags .tag {
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0.4);
}

body.dark-mode #projects .project-tags .tag:hover {
    background: rgba(255,255,255,0.25);
}

body.dark-mode .project-tags .tag {
    background: rgba(59,130,246,0.18);
    color:#cfe0ff;
    border-color: rgba(99,102,241,0.45);
}

body.dark-mode .project-info {
    border:1px solid rgba(148,163,184,0.35);
}

body.dark-mode .skills-list li {
    border-left-color: #60a5fa;
}

body.dark-mode .skill-category h3 {
    border-bottom-color: rgba(147,197,253,0.4);
}

body.dark-mode #experience h2,
body.dark-mode #experience-timeline h3,
body.dark-mode #experience-timeline h4,
body.dark-mode #experience-timeline p,
body.dark-mode #experience .experience-summary,
body.dark-mode .vtimeline-date {
    color:#fff !important;
}

body.dark-mode #about .heading,
body.dark-mode #about p,
body.dark-mode #about .thatsme,
body.dark-mode #about .container,
body.dark-mode #projects .heading,
body.dark-mode #projects .section-intro,
body.dark-mode #projects .project-info,
body.dark-mode #projects .project-info h3,
body.dark-mode #projects .project-info p,
body.dark-mode .testimonials-section,
body.dark-mode .testimonials-section .heading,
body.dark-mode .testimonials-section p,
body.dark-mode .testimonial-info h4,
body.dark-mode .testimonial-info span,
body.dark-mode #contact .heading,
body.dark-mode #contact .contact-intro,
body.dark-mode #contact .contact-reassurance,
body.dark-mode #contact_form,
body.dark-mode #contact_form label,
body.dark-mode #contact_form option,
body.dark-mode #contact_form select,
body.dark-mode #contact_form textarea,
body.dark-mode #contact_form input,
body.dark-mode footer .status-badge {
    color:#fff !important;
}

body.dark-mode #contact_form select,
body.dark-mode #contact_form textarea,
body.dark-mode #contact_form input {
    background-color:#0f1c33;
    border-bottom:2px solid rgba(255,255,255,0.5);
}

body.dark-mode #contact_form option {
    background-color:#0f1c33;
    color:#fff;
}

body.dark-mode .tech-item {
    background: rgba(15,23,42,0.7);
    border-radius: 12px;
}

body.dark-mode .tech-item:hover {
    background: rgba(59,130,246,0.2);
}

body.dark-mode .cta-primary,
body.dark-mode .project-info a {
    box-shadow: 0 12px 30px rgba(37,99,235,0.45);
}

body.dark-mode #contact_form input,
body.dark-mode #contact_form textarea,
body.dark-mode #contact_form select,
body.dark-mode #contact-form input,
body.dark-mode #contact-form textarea {
    background-color:#0f1c33;
    color:#f4f7ff;
    border-bottom:2px solid rgba(148,163,184,0.5);
}

body.dark-mode #contact_form input::placeholder,
body.dark-mode #contact_form textarea::placeholder,
body.dark-mode #contact_form select,
body.dark-mode #contact-form input::placeholder,
body.dark-mode #contact-form textarea::placeholder {
    color:rgba(226,232,255,0.6);
}

body.dark-mode #contact-form input::-webkit-input-placeholder,
body.dark-mode #contact-form textarea::-webkit-input-placeholder,
body.dark-mode #contact_form input::-webkit-input-placeholder,
body.dark-mode #contact_form textarea::-webkit-input-placeholder {
    color:rgba(226,232,255,0.6);
}

body.dark-mode #contact-form input:-moz-placeholder,
body.dark-mode #contact-form textarea:-moz-placeholder,
body.dark-mode #contact_form input:-moz-placeholder,
body.dark-mode #contact_form textarea:-moz-placeholder {
    color:rgba(226,232,255,0.6);
}

body.dark-mode #contact-form input::-moz-placeholder,
body.dark-mode #contact-form textarea::-moz-placeholder,
body.dark-mode #contact_form input::-moz-placeholder,
body.dark-mode #contact_form textarea::-moz-placeholder {
    color:rgba(226,232,255,0.6);
}

body.dark-mode #contact-form input:-ms-input-placeholder,
body.dark-mode #contact-form textarea:-ms-input-placeholder,
body.dark-mode #contact_form input:-ms-input-placeholder,
body.dark-mode #contact_form textarea:-ms-input-placeholder {
    color:rgba(226,232,255,0.6);
}

body.dark-mode #contact_form button,
body.dark-mode #form_button,
body.dark-mode #contact-form button {
    border-color: rgba(226,232,255,0.6);
    color:#e2e8ff;
    background: transparent;
}

body.dark-mode #contact_form button:hover,
body.dark-mode #form_button:hover,
body.dark-mode #contact-form button:hover {
    background: rgba(99,102,241,0.25);
    color:#fff;
}

body.dark-mode .scroll-progress {
    background: linear-gradient(90deg,#22d3ee,#c084fc);
}

body.dark-mode .site-snow {
    opacity:0.28;
}

body.dark-mode .stats-section,
body.dark-mode .testimonials-section {
    border-bottom:1px solid rgba(255,255,255,0.05);
}

body.dark-mode footer .copyright p,
body.dark-mode .footer-copyright {
    color:#d8e2ff;
}

body.dark-mode #skills li {
    background: rgba(59,130,246,0.2);
    color:#fff;
}

body.dark-mode #skills li:hover {
    background: linear-gradient(0deg,#38bdf8 0%, #6366f1 100%);
}

body.dark-mode .nav-logo img,
body.dark-mode .mobile-logo,
body.dark-mode .footer-img {
    filter: brightness(1.25) saturate(1.1) drop-shadow(0 8px 20px rgba(0,0,0,0.4));
}

body.dark-mode #education .heading,
body.dark-mode #education h3,
body.dark-mode #education h4,
body.dark-mode #education span,
body.dark-mode #education li,
body.dark-mode #education p,
body.dark-mode #education a {
    color:#fff !important;
}

body.dark-mode #education .education-block,
body.dark-mode #education .education-block ul {
    border-color: rgba(255,255,255,0.3);
}

body.dark-mode #skills .heading,
body.dark-mode #technologies .heading,
body.dark-mode #technologies .tech-category h3,
body.dark-mode #technologies .tech-item span {
    color:#fff !important;
}

