:root{--primary: #0094df;--primary-dark: #0078b8;--dark: #212121;--navbar-bg: #1a1b1e;--footer-bg: #111111;--copyright-bg: #0b0b0b;--section-alt: #f5f6f8;--timeline-accent: #737ab4;--text: #333333;--text-muted: #6b7280;--border: #e5e7eb;--surface: #ffffff;--preloader-bg: #ffffff;--shadow: 0 4px 20px rgba(0, 0, 0, .07);--shadow-hover: 0 8px 30px rgba(0, 0, 0, .14);--transition: all .3s ease;--radius: 8px;--container: 1140px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden;font-size:16px}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;color:var(--text);line-height:1.7;overflow-x:hidden;background:var(--surface)}img{max-width:100%;height:auto;display:block}a{color:var(--primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-dark)}ul{list-style:none}.container{max-width:var(--container);margin:0 auto;padding:0 1.5rem;width:100%}section{padding:80px 0;scroll-margin-top:70px}.section-alt{background:var(--section-alt)}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;color:var(--dark);margin-bottom:.5rem}.section-header hr{display:block;width:60px;height:3px;background:var(--primary);border:none;margin:.75rem auto 0;border-radius:2px}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.fade-left{opacity:0;transform:translate(-24px);transition:opacity .6s ease,transform .6s ease}.fade-left.visible{opacity:1;transform:translate(0)}.fade-right{opacity:0;transform:translate(24px);transition:opacity .6s ease,transform .6s ease}.fade-right.visible{opacity:1;transform:translate(0)}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-14px)}60%{transform:translate(-50%) translateY(-7px)}}.preloader{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--preloader-bg);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease}.preloader.hidden{opacity:0;pointer-events:none}.preloader-spinner{width:42px;height:42px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.25rem 0;background:transparent;transition:background .35s ease,padding .35s ease,box-shadow .35s ease}.navbar.scrolled{background:var(--navbar-bg);padding:.7rem 0;box-shadow:0 2px 20px #0000004d}.nav-container{max-width:var(--container);margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}.nav-brand{font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:3px;text-shadow:0 1px 4px rgba(0,0,0,.3)}.nav-brand:hover{color:var(--primary)}.nav-menu{display:flex;gap:0;align-items:center}.nav-menu{margin-left:auto}.nav-menu li a{display:block;padding:.5rem .85rem;color:#ffffffd9;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;position:relative;text-decoration:none}.nav-menu li a:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:70%;height:2px;background:var(--primary);transition:transform .2s ease}.nav-menu li a:hover,.nav-menu li a.active{color:#fff}.nav-menu li a:hover:after,.nav-menu li a.active:after{transform:translate(-50%) scaleX(1)}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.nav-toggle span{display:block;width:24px;height:2px;background:#fff;transition:all .3s ease;transform-origin:center}.nav-toggle.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.theme-toggle{border:none;background:#0f172a47;color:#fff;width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .28s ease,border-color .28s ease,transform .2s ease;margin-left:.75rem;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.theme-toggle:hover{background:#fff3;transform:translateY(-1px)}.theme-icon-wrap{position:relative;width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center}.theme-icon{position:absolute;top:0;right:0;bottom:0;left:0;width:19px;height:19px;color:currentColor;transition:opacity .24s ease,transform .24s ease}.theme-icon.sun circle{fill:currentColor}.theme-icon.sun path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.theme-icon.moon path{fill:currentColor}.theme-toggle.is-light .theme-icon.sun{opacity:0;transform:rotate(-35deg) scale(.7)}.theme-toggle.is-light .theme-icon.moon,.theme-toggle.is-dark .theme-icon.sun{opacity:1;transform:rotate(0) scale(1)}.theme-toggle.is-dark .theme-icon.moon{opacity:0;transform:rotate(35deg) scale(.72)}.theme-toggle:focus-visible{outline:2px solid rgba(255,255,255,.85);outline-offset:2px}.nav-actions{display:flex;align-items:center;gap:.5rem;margin-left:.75rem}.hero{position:relative;height:100vh;min-height:520px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#0000008c,#0006);z-index:1}.hero-content{position:relative;z-index:2;text-align:center;color:#fff;padding:0 1.5rem;animation:heroIn .9s ease .3s both}@keyframes heroIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-name{font-size:clamp(2.2rem,5.5vw,4.5rem);font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 10px rgba(0,0,0,.4);line-height:1.1}.hero-subtitle{font-size:clamp(1rem,2.2vw,1.4rem);font-weight:400;opacity:.9;margin-bottom:2rem;letter-spacing:.5px}.hero-cta{display:inline-block;padding:.85rem 2.5rem;background:var(--primary);color:#fff;border-radius:50px;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;transition:var(--transition)}.hero-cta:hover{background:var(--primary-dark);color:#fff;transform:translateY(-3px);box-shadow:0 10px 24px #0094df66}.hero-arrow{position:absolute;bottom:2rem;left:50%;z-index:2;color:#fffc;font-size:1.5rem;text-decoration:none;animation:bounce 2s infinite}.hero-arrow:hover{color:#fff}.page-banner{padding:130px 0 60px;background:linear-gradient(135deg,#0f172a,#1f2937,#111827);color:#fff;text-align:center}.page-banner h1{font-size:clamp(2rem,4.4vw,3rem);font-weight:700;margin-bottom:.65rem;letter-spacing:.3px}.page-banner p{color:#fffc;font-size:1rem;max-width:700px;margin:0 auto}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}.about-text p{margin-bottom:1rem;font-size:1rem;line-height:1.8}.about-meta{display:flex;flex-direction:column;gap:.65rem;margin-top:1.5rem}.about-meta-item{display:flex;align-items:center;gap:.75rem;font-size:.95rem}.about-meta-item i{color:var(--primary);width:18px;flex-shrink:0}.about-photo{display:flex;justify-content:center}.about-photo img{width:260px;height:260px;border-radius:50%;object-fit:cover;border:5px solid var(--primary);box-shadow:0 12px 40px #0094df40}.hobbies-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.hobby-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.5rem;text-align:center;box-shadow:var(--shadow);transition:var(--transition)}.hobby-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);border-color:var(--primary)}.hobby-card i{font-size:2.4rem;color:var(--primary);margin-bottom:.85rem;display:block}.hobby-card h3{font-size:1.05rem;font-weight:700;color:var(--dark)}.timeline-wrapper{position:relative;max-width:820px;margin:0 auto;padding-left:2.25rem}.timeline-wrapper:before{content:"";position:absolute;left:0;top:6px;bottom:0;width:3px;background:linear-gradient(to bottom,var(--primary),var(--timeline-accent),#d6d5d5);border-radius:3px}.timeline-item{position:relative;padding:0 0 2.5rem 2rem}.timeline-item:before{content:"";position:absolute;left:-9px;top:4px;width:16px;height:16px;background:var(--timeline-accent);border-radius:50%;border:3px solid #ffffff;box-shadow:0 0 0 3px var(--timeline-accent)}.timeline-date{display:block;font-size:.78rem;color:var(--timeline-accent);font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.timeline-header{display:flex;align-items:center;gap:1rem;margin-bottom:.6rem}.timeline-logo{height:36px;width:auto;max-width:80px;object-fit:contain;border-radius:4px;flex-shrink:0}.timeline-company{font-size:1.2rem;font-weight:700;color:var(--dark);margin-bottom:.15rem}.timeline-company a{color:inherit}.timeline-company a:hover{color:var(--primary)}.timeline-role{font-size:.88rem;color:var(--primary);font-weight:600}.timeline-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);transition:var(--transition)}.timeline-card:hover{box-shadow:var(--shadow-hover);border-color:var(--primary)}.timeline-desc{font-size:.9rem;color:var(--text-muted);line-height:1.7;margin-top:.6rem;margin-bottom:.85rem}.tech-tags{display:flex;flex-wrap:wrap;gap:.4rem}.tech-tag{background:var(--section-alt);color:var(--text-muted);font-size:.72rem;padding:.2rem .65rem;border-radius:50px;font-weight:600}.resume-center{display:flex;justify-content:center}.resume-card{display:inline-flex;flex-direction:column;align-items:center;gap:1.5rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:3rem 4.5rem;box-shadow:var(--shadow);text-align:center;transition:var(--transition)}.resume-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.resume-icon{font-size:5rem;color:#343a40}.resume-card p{color:var(--text-muted);font-size:.95rem}.resume-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 2rem;background:var(--primary);color:#fff;border-radius:50px;font-weight:700;font-size:.9rem;text-decoration:none;transition:var(--transition)}.resume-btn:hover{background:var(--primary-dark);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #0094df59}.skills-board{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}.skill-item{display:flex;align-items:center;justify-content:center;padding:.6rem .75rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition)}.skill-item:hover{transform:scale(1.07);box-shadow:var(--shadow-hover);border-color:var(--primary)}.skill-item img{height:36px;width:auto;max-width:110px;object-fit:contain;filter:grayscale(15%);transition:filter .3s ease}.skill-item:hover img{filter:grayscale(0%)}.education-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.edu-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:2rem 1.25rem;text-align:center;box-shadow:var(--shadow);transition:var(--transition)}.edu-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);border-color:var(--primary)}.edu-icon{font-size:2.4rem;color:var(--primary);margin-bottom:.9rem}.edu-card h3{font-size:.95rem;font-weight:700;color:var(--dark);margin-bottom:.4rem;line-height:1.3}.edu-years{font-size:.85rem;color:var(--primary);font-weight:700;margin-bottom:.4rem;display:block}.edu-card p{font-size:.82rem;color:var(--text-muted);line-height:1.6}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.project-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);display:flex;flex-direction:column}.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);border-color:var(--primary)}.project-card-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}.project-num{font-size:.75rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:.4rem}.project-title{font-size:1rem;font-weight:700;color:var(--dark);margin-bottom:.75rem;line-height:1.3}.project-desc{font-size:.87rem;color:var(--text-muted);line-height:1.7;flex:1;margin-bottom:1rem}.project-tech{display:flex;flex-wrap:wrap;gap:.4rem}.project-tech-tag{background:#e8f4fd;color:var(--primary);font-size:.72rem;padding:.2rem .6rem;border-radius:50px;font-weight:600}.contact-section{background:var(--footer-bg);padding:64px 0;color:#fff}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;text-align:center}.contact-item h3{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.75rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.contact-item h3 i{color:var(--primary)}.contact-item a,.contact-item p{color:#ffffffa6;font-size:.9rem;text-decoration:none;word-break:break-all}.contact-item a:hover{color:var(--primary)}.copyright-bar{background:var(--copyright-bg);padding:1rem 0;text-align:center}.copyright-bar p{color:#ffffff73;font-size:.85rem}.copyright-bar a{color:var(--primary)}.back-to-top{position:fixed;bottom:1.75rem;right:1.75rem;z-index:999;width:44px;height:44px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 4px 14px #0094df66;transition:var(--transition);opacity:0;pointer-events:none;transform:translateY(8px)}.back-to-top.visible{opacity:1;pointer-events:all;transform:translateY(0)}.back-to-top:hover{background:var(--primary-dark);color:#fff;transform:translateY(-3px)}@media (max-width: 1024px){.education-grid,.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){section{padding:60px 0}.nav-actions{margin-left:auto;position:relative;z-index:1101}.nav-toggle{display:flex;order:2}.theme-toggle{order:1}.nav-menu{position:fixed;top:0;right:-100%;width:280px;height:100vh;background:var(--navbar-bg);flex-direction:column;justify-content:center;align-items:center;gap:.25rem;transition:right .3s ease;padding:2rem;z-index:1100}.nav-menu.open{right:0;box-shadow:-4px 0 24px #0000004d}.nav-menu li a{font-size:.95rem;padding:.75rem 1.5rem}.theme-toggle{margin-left:.5rem;width:36px;height:36px}.theme-icon-wrap,.theme-icon{width:17px;height:17px}.about-grid{grid-template-columns:1fr;text-align:center;gap:2rem}.about-meta-item{justify-content:center}.about-photo{order:-1}.hobbies-grid{grid-template-columns:repeat(2,1fr)}.timeline-wrapper{padding-left:1.5rem}.education-grid{grid-template-columns:repeat(2,1fr)}.projects-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:1.5rem}.resume-card{padding:2rem 1.5rem}}@media (max-width: 480px){.hobbies-grid,.education-grid{grid-template-columns:1fr}.hero-name{font-size:2rem}}:root[data-theme=dark]{--dark: #f3f4f6;--navbar-bg: #030712;--footer-bg: #020617;--copyright-bg: #000000;--section-alt: #0b1220;--text: #e5e7eb;--text-muted: #9ca3af;--border: #263245;--surface: #050b18;--preloader-bg: #050b18;--shadow: 0 4px 20px rgba(0, 0, 0, .35);--shadow-hover: 0 12px 32px rgba(0, 0, 0, .45)}:root[data-theme=dark] body{background:var(--surface)}:root[data-theme=light]{--surface: #ffffff;--preloader-bg: #ffffff}:root[data-theme=dark] .page-banner{background:linear-gradient(135deg,#020617,#0f172a 55%,#111827)}:root[data-theme=dark] .section-header h2,:root[data-theme=dark] .project-title,:root[data-theme=dark] .timeline-company,:root[data-theme=dark] .edu-card h3,:root[data-theme=dark] .hobby-card h3{color:#f9fafb}:root[data-theme=dark] .hobby-card,:root[data-theme=dark] .timeline-card,:root[data-theme=dark] .resume-card,:root[data-theme=dark] .skill-item,:root[data-theme=dark] .edu-card,:root[data-theme=dark] .project-card{background:#0f172a;border-color:var(--border)}:root[data-theme=dark] .tech-tag{background:#121d30;color:#c6d2e1}:root[data-theme=dark] .project-tech-tag{background:#0a2334;color:#69c7ff}:root[data-theme=dark] .theme-toggle{background:#0f172aa6}:root[data-theme=dark] .theme-toggle:hover{background:#1e293bf2}:root[data-theme=light] .theme-toggle{background:#ffffff24}html.theme-switching *,html.theme-switching *:before,html.theme-switching *:after{transition-property:background-color,color,border-color,box-shadow,fill,stroke;transition-duration:.28s;transition-timing-function:ease}
