@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Sora:wght@500;600;700;800&display=swap";:root{--bg-dark:#17362e;--bg-dark-soft:#23453d;--bg-light:#f6f7f2;--bg-light-alt:#edf2e8;--bg-accent:#93c98f;--bg-accent-strong:#5f9d6d;--bg-accent-soft:#dff0dc;--surface-light:#ffffffd1;--surface-solid:#fff;--surface-dark:#ffffff12;--text-dark:#1d2a24;--text-muted:#5b6d66;--text-light:#eef6ef;--line-soft:#8fc19a42;--card-border:#1b342d1f;--shadow-soft:0 18px 40px #15241e14;--shadow-card:0 16px 32px #12231e14;--shadow-float:0 28px 58px #12231e24;--radius-sm:12px;--radius-md:18px;--radius-lg:24px;--container-max:1180px;--section-space:clamp(84px, 8vw, 108px);--section-tight:clamp(72px, 7vw, 90px);--body-size:1rem;--body-size-lg:1.08rem;--heading-size:clamp(2.2rem, 4vw, 3.55rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--text-dark);background:radial-gradient(circle at top right, #8dbd911f, transparent 24%), linear-gradient(180deg, #fbfcf8 0%, var(--bg-light) 32%, var(--bg-light-alt) 100%);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Manrope,Segoe UI,sans-serif;line-height:1.6}body.dark-mode{--bg-dark:#0d1714;--bg-dark-soft:#15231f;--bg-light:#111816;--bg-light-alt:#151f1b;--bg-accent:#9bc59d;--bg-accent-strong:#bdd7be;--bg-accent-soft:#9bc59d1f;--surface-light:#17211dd6;--surface-solid:#18211d;--surface-dark:#ffffff0d;--text-dark:#eef5ef;--text-muted:#b8c5be;--text-light:#f4fbf5;--line-soft:#ffffff24;--card-border:#ffffff1a;--shadow-soft:0 20px 42px #00000057;--shadow-card:0 18px 36px #00000047;--shadow-float:0 30px 60px #0000005c;background:radial-gradient(circle at top right, #9bc59d14, transparent 22%), linear-gradient(180deg, #111816 0%, var(--bg-light) 32%, var(--bg-light-alt) 100%)}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1.5px;transition:color .2s,background-color .2s,border-color .2s,transform .2s,box-shadow .2s,opacity .2s}button,input,textarea,select{font:inherit}button{cursor:pointer}.App{overflow-x:clip}.container{width:100%}section{scroll-margin-top:108px;position:relative}p,ul,ol{margin-top:0}svg{display:block}:focus-visible{outline-offset:3px;outline:3px solid #8dbd9152}.site-nav{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#142722e6;border-bottom:1px solid #ffffff14;position:fixed;inset:0 0 auto;box-shadow:0 10px 24px #00000014}.nav-inner{max-width:var(--container-max);justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding:16px 24px;display:flex}.logo{color:var(--text-light);letter-spacing:-.04em;font-family:Space Grotesk,Manrope,sans-serif;font-size:1.85rem;font-weight:700;line-height:1}.nav-links{flex-wrap:wrap;align-items:center;gap:24px;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:#eff5eceb;padding:6px 0;font-size:.95rem;font-weight:600;line-height:1;text-decoration:none;position:relative}.nav-links a:after{content:"";background:var(--bg-accent);transform-origin:0;border-radius:999px;width:100%;height:2px;transition:transform .22s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.nav-links a:hover:after,.nav-links a:focus-visible:after{transform:scaleX(1)}.nav-links a:hover,.nav-links a:focus-visible{color:#fff}.nav-actions{flex-shrink:0;align-items:center;gap:14px;display:flex}.toggleWrapper,.wrapper{align-items:center;display:flex}#hide-checkbox{opacity:0;pointer-events:none;position:absolute}.toggle{cursor:pointer;background:linear-gradient(135deg,#f1c862,#f6d46f);border:1px solid #ffffff29;border-radius:999px;align-items:center;width:78px;height:34px;transition:background .25s;display:inline-flex;position:relative;overflow:hidden}.toggle-button{background:#fff4dd;border-radius:50%;width:28px;height:28px;transition:transform .26s,background .26s;position:absolute;top:3px;left:3px;box-shadow:0 1px 10px #ffffff8c}.crater,.star{position:absolute}.crater{opacity:0;background:#e4d4b6cc;border-radius:50%;transition:opacity .2s}.crater-1{width:9px;height:9px;top:5px;left:13px}.crater-2{width:5px;height:5px;top:16px;left:9px}.crater-3{width:6px;height:6px;top:12px;left:18px}.crater-4,.crater-5,.crater-6,.crater-7{display:none}.star{background:#ffffffeb;border-radius:999px;transition:all .25s}.star-1{width:7px;height:7px;top:8px;right:15px}.star-2{width:4px;height:4px;top:19px;right:24px}.star-3{width:3px;height:3px;top:11px;right:30px}.star-4,.star-5,.star-6,.star-7,.star-8{display:none}#hide-checkbox:checked+.toggle{background:linear-gradient(135deg,#334741,#243630)}#hide-checkbox:checked+.toggle .toggle-button{background:#e9eef0;transform:translate(44px)}#hide-checkbox:checked+.toggle .crater{opacity:1}.icon-link{width:40px;height:40px;color:var(--text-light);background:#ffffff0a;border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.icon-link svg{fill:currentColor;width:18px;height:18px}.icon-link:hover,.icon-link:focus-visible{background:#ffffff1f;transform:translateY(-1px)}.resume-btn{background:var(--bg-accent);color:#133129;border-radius:999px;justify-content:center;align-items:center;min-width:110px;height:40px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 10px 18px #8dbd9133}.resume-btn:hover,.resume-btn:focus-visible{background:#9ccc96;transform:translateY(-1px);box-shadow:0 14px 24px #8dbd9147}.hero-section{width:100%;min-height:720px;color:var(--text-light);background:radial-gradient(circle at 22% 14%,#9cd2a929,#0000 18%),radial-gradient(circle at 76% 18%,#7cb88d33,#0000 24%),radial-gradient(circle at 50% 0,#ffffff0f,#0000 28%),linear-gradient(#16332d 0%,#1f3c35 60%,#223b34 100%);padding:156px 0 112px}.hero-inner{justify-content:center;align-items:center;max-width:1220px;margin:auto;padding:0 40px;display:flex}.hero-text{text-align:center;width:100%;max-width:920px}.hero-kicker{letter-spacing:.12em;text-transform:uppercase;color:#eff5ecc2;align-items:center;gap:12px;margin:0 0 22px;font-size:.82rem;font-weight:700;display:inline-flex}.hero-kicker:before,.hero-kicker:after{content:"";background:#8fc19a75;width:42px;height:1px}.hero-text h1{letter-spacing:-.05em;text-wrap:balance;max-width:820px;margin:0 auto 18px;font-family:Space Grotesk,Manrope,sans-serif;font-size:clamp(3.2rem,6.4vw,5.25rem);font-weight:700;line-height:.94}.hero-role{letter-spacing:.12em;text-transform:uppercase;color:#abd7ad;max-width:760px;margin:0 auto 20px;font-size:1rem;font-weight:700}.hero-desc{color:#eff5ece6;max-width:760px;margin:0 auto 18px;font-size:1.08rem;line-height:1.76}.hero-support{color:#eff5eca8;max-width:700px;margin:0 auto 34px;font-size:1rem;line-height:1.72}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.hero-btn{letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-weight:700;text-decoration:none;display:inline-flex}.hero-btn.primary{color:#163128;background:linear-gradient(#abd7ad,#8fc98b);box-shadow:0 14px 28px #12201b2e}.hero-btn.ghost{color:var(--text-light);background:#ffffff0a;border:1px solid #eff5ec33}.hero-btn:hover,.hero-btn:focus-visible{transform:translateY(-1px)}.hero-btn.ghost:hover,.hero-btn.ghost:focus-visible{background:#ffffff17}.hero-meta{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;display:flex}.hero-meta span{color:#eff5ece6;background:#ffffff14;border:1px solid #8fc19a3d;border-radius:999px;align-items:center;min-height:38px;padding:0 14px;font-size:.86rem;font-weight:600;display:inline-flex}.about-section,.skills-section,.projects-section,.connect-section,.site-footer,.education-section,.experience-section,.certificates-section{width:100%}.about-section{background:var(--bg-light);padding:var(--section-space) 0}.about-inner{max-width:var(--container-max);grid-template-columns:minmax(0,1.25fr) minmax(320px,390px);align-items:start;gap:42px;margin:0 auto;padding:0 24px;display:grid}.about-left{min-width:0}.about-title{font-family:Space Grotesk,Manrope,sans-serif;font-size:var(--heading-size);color:var(--text-dark);text-wrap:balance;margin:0;line-height:1.02}.about-underline{background:linear-gradient(90deg,#89b588,#aac8a6);border-radius:999px;width:96px;height:5px;margin:16px 0 26px;display:block}.about-text{max-width:none;color:var(--text-muted);margin:0 0 34px;font-size:1.06rem;line-height:1.78}.about-highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 36px;display:grid}.about-highlight:last-child{grid-column:1/-1}.about-highlight{box-shadow:var(--shadow-card);background:linear-gradient(#fffffff0,#f8fbf7e0);border:1px solid #203b351a;border-radius:16px;padding:20px 20px 18px}.about-highlight h3{color:var(--text-dark);margin:0 0 10px;font-size:1.02rem;line-height:1.35}.about-highlight p{color:var(--text-muted);margin:0;font-size:.94rem;line-height:1.68}.competencies-title{color:var(--text-dark);margin:0 0 20px;font-family:Space Grotesk,Manrope,sans-serif;font-size:clamp(1.78rem,3vw,2.2rem);line-height:1.1}.competency-tags,.skill-tags,.project-tags{flex-wrap:wrap;gap:10px;display:flex}.competency-tags span,.skill-tags span,.project-tags span{min-height:36px;color:var(--text-dark);background:#ffffffe0;border:1px solid #203b351f;border-radius:999px;align-items:center;padding:0 14px;font-size:.86rem;font-weight:600;display:inline-flex}.competency-tags span:hover,.skill-tags span:hover,.project-tags span:hover{background:#fff;transform:translateY(-1px)}.about-card{border-radius:var(--radius-lg);color:var(--text-light);box-shadow:var(--shadow-float);background:linear-gradient(#ffffff0a,#fff0),linear-gradient(#21433b,#19352e);padding:28px 28px 26px}.about-card h3{margin:0;font-family:Space Grotesk,Manrope,sans-serif;font-size:1.55rem}.card-divider{background:#8fc19a52;width:100%;height:1px;margin:22px 0 24px;display:block}.degree-title{color:#b8d9b5;margin:0 0 12px;font-size:1.3rem;font-weight:700;line-height:1.32}.degree-school{margin:0 0 8px;padding-left:16px;font-weight:600;position:relative}.degree-school:before{content:"";background:#8dbd91;border-radius:50%;width:7px;height:7px;position:absolute;top:11px;left:0}.degree-date{color:#eff5ecbd;margin:0 0 22px;font-size:.94rem}.wam-box{background:#ffffff0f;border:1px solid #8fc19a38;border-radius:16px;margin-bottom:24px;padding:18px 22px 16px}.wam-label,.coursework-label{text-transform:uppercase;letter-spacing:.16em;color:#a6c7a3;margin:0 0 10px;font-size:.76rem}.wam-value{margin:0;font-family:Space Grotesk,Manrope,sans-serif;font-size:3rem;font-weight:700;line-height:1}.coursework ul{margin:0;padding:0;list-style:none}.coursework li{color:#eff5ece0;padding:7px 0 7px 20px;position:relative}.coursework li:before{content:"";background:#8dbd91;border-radius:50%;width:6px;height:6px;position:absolute;top:17px;left:0}.skills-section{background:var(--bg-light-alt);padding:var(--section-space) 0}.skills-inner{max-width:var(--container-max);margin:0 auto;padding:0 24px}.skills-header{text-align:center;max-width:760px;margin:0 auto 44px}.skills-header h2{font-family:Space Grotesk,Manrope,sans-serif;font-size:var(--heading-size);text-wrap:balance;margin:0 0 14px}.skills-header p{color:var(--text-muted);margin:0;font-size:1rem;line-height:1.72}.skills-grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:22px;max-width:1040px;margin:0 auto;display:grid}.skill-card{min-height:208px;box-shadow:var(--shadow-card);background:linear-gradient(#fffffff0,#f8faf7e6);border:1px solid #203b3524;border-radius:18px;padding:24px 22px 22px;transition:transform .22s,box-shadow .22s,background-color .22s}.skill-card:hover{box-shadow:var(--shadow-soft);background:#fffffff5;transform:translateY(-4px)}.skill-title{align-items:center;gap:14px;margin-bottom:18px;display:flex}.skill-title h3{margin:0;font-size:1.24rem;line-height:1.3}.skill-icon{background:linear-gradient(#98c998,#78ab7b);border:none;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;box-shadow:0 10px 18px #6d9d7233}.skill-icon svg{width:20px;height:20px;stroke:var(--text-light);stroke-width:1.8px;fill:none}.experience-section{background:radial-gradient(circle at top center, #8fc19a14, transparent 18%), var(--bg-dark);color:var(--text-light);padding:var(--section-tight) 0 calc(var(--section-tight) + 10px)}.experience-inner{max-width:var(--container-max);margin:0 auto;padding:0 24px}.experience-header{max-width:860px;margin:0 auto 20px}.experience-title{text-align:center;font-family:Space Grotesk,Manrope,sans-serif;font-size:var(--heading-size);text-wrap:balance;margin:0}.experience-underline{background:linear-gradient(90deg,#89b588,#aecbab);border-radius:999px;width:78px;height:4px;margin:14px auto 18px;display:block}.experience-intro{text-align:center;color:#eff5ecc2;max-width:760px;margin:0 auto 30px;line-height:1.72}.experience-timeline{grid-template-columns:58px 1fr;align-items:start;gap:26px;max-width:900px;margin:0 auto;display:grid}.exp-rail{cursor:pointer;min-height:560px;position:relative}.exp-rail:before{content:"";background:linear-gradient(#8fc19a6b,#8fc19a14);width:2px;position:absolute;top:10px;bottom:10px;left:50%;transform:translate(-50%)}.exp-dot{background:#a4d19d;border-radius:50%;width:16px;height:16px;transition:top .22s;position:absolute;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 8px #a4d19d1f}.exp-rail.dragging .exp-dot{transition:none}.exp-cards{justify-content:flex-start;display:flex}.experience-card{width:100%;max-width:100%;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(#ffffff14,#ffffff0a);border:1px solid #8fc19a33;border-radius:22px;padding:32px 34px 30px;transition:transform .22s,border-color .22s,box-shadow .22s}.experience-card:hover{box-shadow:var(--shadow-float);border-color:#8fc19a66;transform:translateY(-4px)}.experience-card h3{color:#c4e5bf;margin:0 0 12px;font-family:Space Grotesk,Manrope,sans-serif;font-size:1.46rem;line-height:1.3}.exp-org{color:#fff;margin:0 0 16px;font-size:.96rem;font-weight:700}.exp-org:before{content:"| ";color:#8dbd91}.exp-summary{color:#eff5ecd1;margin:0 0 18px;font-size:1rem;line-height:1.74}.exp-label{color:#fff;margin:0 0 12px;font-size:.96rem;font-weight:700}.experience-card ul{margin:0;padding:0;list-style:none}.experience-card li{color:#eff5ecd6;padding:10px 0 10px 22px;line-height:1.68;position:relative}.experience-card li:before{content:"";background:#9bc79d;border-radius:50%;width:7px;height:7px;position:absolute;top:19px;left:0}.projects-section{background:var(--bg-light);padding:var(--section-space) 0 calc(var(--section-space) + 8px)}.projects-inner{max-width:var(--container-max);margin:0 auto;padding:0 24px}.projects-header{text-align:center;max-width:840px;margin:0 auto 42px}.projects-header h2{font-family:Space Grotesk,Manrope,sans-serif;font-size:var(--heading-size);text-wrap:balance;margin:0 0 12px}.projects-header p{color:var(--text-muted);margin:0;font-size:1rem;line-height:1.74}.projects-grid{max-width:var(--container-max);grid-template-columns:repeat(3,minmax(260px,1fr));gap:22px;margin:0 auto;display:grid}.project-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:linear-gradient(#fffffff5,#f8faf6e6);border:1px solid #203b351a;transition:transform .24s,box-shadow .24s,border-color .24s;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-float);border-color:#203b352e;transform:translateY(-6px)}.project-thumb{border-bottom:1px solid #203b3514;height:210px}.movie-thumb{background:radial-gradient(circle at 46% 34%,#ffffffdb,#0000 16%),radial-gradient(circle at 53% 38%,#fff9,#0000 22%),linear-gradient(#000000e0,#140d0ae6 28%,#3c1911f0)}.shelf-thumb{background:linear-gradient(135deg,#ffffff29,#0000 52%),linear-gradient(135deg,#5c7a68,#84ac8f)}.rag-thumb{background:radial-gradient(circle at 30% 35%,#ffffff24,#0000 24%),linear-gradient(135deg,#4c6672,#7d94a0)}.portfolio-thumb{background:linear-gradient(135deg,#ffffff24,#0000 48%),linear-gradient(135deg,#5d7f67,#90b493)}.telescope-thumb{background:linear-gradient(135deg,#ffffff14,#0000 40%),linear-gradient(135deg,#465964,#718692)}.project-body h3{text-wrap:balance;margin:0 0 14px;font-family:Space Grotesk,Manrope,sans-serif;font-size:1.36rem;line-height:1.28}.project-body p{color:var(--text-muted);margin:0 0 18px;font-size:.97rem;line-height:1.68}.project-copy{gap:12px;margin-bottom:18px;display:grid}.project-copy p,.project-live-url{margin:0}.project-live-url a{color:var(--text-dark);word-break:break-word}.project-tags span{min-height:34px;color:var(--text-muted);background:var(--bg-accent-soft);border-radius:999px;font-size:.82rem}.project-links{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.project-links a{background:#ffffffeb;border:1px solid #203b351f;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.project-links a:hover,.project-links a:focus-visible{background:#fff;transform:translateY(-1px)}.projects-cta{text-align:center;margin-top:38px}.projects-btn{color:#163128;background:linear-gradient(#abd7ad,#8fc98b);border-radius:999px;justify-content:center;align-items:center;min-width:250px;min-height:50px;padding:0 24px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 14px 28px #74a8762e}.projects-btn:hover,.projects-btn:focus-visible{background:#9ccc96;transform:translateY(-2px);box-shadow:0 14px 28px #74a87638}.certificates-section{background:var(--bg-light-alt);padding:var(--section-tight) 0}.certificates-inner{max-width:var(--container-max);margin:0 auto;padding:0 24px}.certificates-header{text-align:center;max-width:760px;margin:0 auto 34px}.certificates-header h2{margin:0 0 12px;font-family:Space Grotesk,Manrope,sans-serif;font-size:clamp(2.15rem,4vw,3rem)}.certificates-header p{color:var(--text-muted);margin:0;line-height:1.7}.certificates-grid{grid-template-columns:repeat(3,minmax(240px,1fr));gap:18px;display:grid}.certificate-card{box-shadow:var(--shadow-card);background:#ffffffe6;border:1px solid #203b351a;border-radius:18px;padding:22px 20px}.certificate-card h3{margin:0 0 10px;font-size:1.1rem;line-height:1.35}.certificate-card p{color:var(--text-muted);margin:0 0 16px;font-size:.94rem;line-height:1.62}.certificate-card a{font-weight:700;text-decoration:none}.certificate-card a:hover,.certificate-card a:focus-visible{color:var(--bg-dark)}.certificate-badge{min-height:28px;color:var(--text-dark);letter-spacing:.08em;text-transform:uppercase;background:#88b58738;border-radius:999px;justify-content:center;align-items:center;margin-bottom:16px;padding:0 12px;font-size:.76rem;font-weight:800;display:inline-flex}.connect-section{background:radial-gradient(circle at 20% 10%,#ffffff1f,#0000 20%),linear-gradient(#99c695 0%,#88b587 100%);padding:78px 0 72px}.connect-inner{text-align:center;max-width:1040px;margin:0 auto;padding:0 24px}.connect-inner h2{color:var(--text-dark);text-wrap:balance;margin:0 0 18px;font-family:Space Grotesk,Manrope,sans-serif;font-size:clamp(2.7rem,5vw,4.1rem);line-height:1.06}.connect-inner p{color:#20342dd9;max-width:760px;margin:0 auto 30px;font-size:1rem;line-height:1.72}.connect-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.connect-pill{min-height:50px;color:var(--text-light);background:linear-gradient(#1f4037,#17332c);border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:0 20px;font-size:.94rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 14px 24px #18342d24}.connect-pill-wide{min-width:250px}.connect-pill-phone{min-width:220px}.pill-icon{flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.pill-icon svg{fill:currentColor;stroke:currentColor;width:22px;height:22px}.connect-pill:hover,.connect-pill:focus-visible{background:#102722;transform:translateY(-2px)}.site-footer{background:linear-gradient(#88b587 0%,#84b181 100%);padding:56px 0 24px}.footer-inner{max-width:var(--container-max);grid-template-columns:minmax(280px,1.35fr) minmax(220px,1fr) minmax(220px,.95fr);align-items:start;gap:36px;margin:0 auto;padding:0 24px;display:grid}.footer-brand h3{color:var(--text-dark);margin:0 0 16px;font-family:Space Grotesk,Manrope,sans-serif;font-size:1.55rem}.footer-brand p{color:#20342dd1;max-width:390px;margin:0;font-size:.96rem;line-height:1.72}.footer-links h4{color:var(--text-dark);margin:0 0 16px;font-size:.98rem}.footer-links ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.footer-links a,.footer-social a{color:#20342de0;font-size:.96rem;text-decoration:none}.footer-links a:hover,.footer-links a:focus-visible{color:#10211c;transform:translate(2px)}.footer-social{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.footer-social a{min-width:46px;min-height:46px;color:var(--text-light);background:#19362f;border-radius:12px;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.footer-social svg{fill:currentColor;stroke:currentColor;width:20px;height:20px}.footer-social a:hover,.footer-social a:focus-visible{background:#102722;transform:translateY(-2px)}.footer-bottom{max-width:var(--container-max);color:#20342dd1;border-top:1px solid #20342d2e;justify-content:space-between;align-items:center;gap:16px;margin:42px auto 0;padding:24px 24px 0;font-size:.86rem;display:flex}.back-top{border:1px solid #20342d3d;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;text-decoration:none;display:inline-flex}.back-top:hover,.back-top:focus-visible{background:#ffffff3d;transform:translateY(-2px)}.education-section{display:none}body.dark-mode .site-nav{background:#090e0ce6;border-bottom-color:#ffffff14}body.dark-mode .nav-links a{color:#ffffffeb}body.dark-mode .toggle{background:linear-gradient(135deg,#2c2c2c,#474747)}body.dark-mode #hide-checkbox:checked+.toggle{background:linear-gradient(135deg,#080808,#1a1a1a)}body.dark-mode .icon-link{background:#ffffff08;border-color:#ffffff1f}body.dark-mode .resume-btn{color:#111;background:#dbe7dc}body.dark-mode .resume-btn:hover,body.dark-mode .resume-btn:focus-visible{background:#fff}body.dark-mode .skills-section,body.dark-mode .certificates-section{background:#18211d}body.dark-mode .experience-section{background:radial-gradient(circle at top,#9bc59d0d,#0000 18%),#0d1412}body.dark-mode .about-title,body.dark-mode .competencies-title,body.dark-mode .skills-header h2,body.dark-mode .projects-header h2,body.dark-mode .experience-title,body.dark-mode .connect-inner h2,body.dark-mode .footer-brand h3,body.dark-mode .footer-links h4,body.dark-mode .project-body h3,body.dark-mode .skill-title h3,body.dark-mode .about-card h3,body.dark-mode .exp-org,body.dark-mode .exp-label,body.dark-mode .coursework li,body.dark-mode .degree-school,body.dark-mode .wam-value,body.dark-mode .certificate-card h3,body.dark-mode .certificates-header h2{color:#fff}body.dark-mode .about-highlight,body.dark-mode .skill-card,body.dark-mode .project-card,body.dark-mode .certificate-card{box-shadow:var(--shadow-card);background:linear-gradient(#1d2823eb,#161f1ce6);border-color:#ffffff14}body.dark-mode .about-card,body.dark-mode .experience-card{box-shadow:var(--shadow-float);background:linear-gradient(#1d2823eb,#161f1ce6);border-color:#ffffff1a}body.dark-mode .skill-card:hover,body.dark-mode .project-card:hover,body.dark-mode .certificate-card:hover{background:#1b2722f0}body.dark-mode .competency-tags span,body.dark-mode .skill-tags span,body.dark-mode .project-tags span{color:#eef5ef;background:#ffffff0d;border-color:#ffffff14}body.dark-mode .project-tags span{background:#9bc59d14}body.dark-mode .project-live-url a{color:#fff}body.dark-mode .card-divider,body.dark-mode .exp-rail:before{background:#ffffff1f}body.dark-mode .degree-school:before,body.dark-mode .coursework li:before,body.dark-mode .experience-card li:before,body.dark-mode .exp-dot{background:#b8d9b5}body.dark-mode .exp-dot{box-shadow:0 0 0 8px #b8d9b514}body.dark-mode .project-tags span,body.dark-mode .certificate-card p,body.dark-mode .certificates-header p,body.dark-mode .footer-links a,body.dark-mode .footer-brand p,body.dark-mode .footer-bottom,body.dark-mode .connect-inner p,body.dark-mode .project-body p,body.dark-mode .skills-header p,body.dark-mode .projects-header p,body.dark-mode .about-text,body.dark-mode .about-highlight p,body.dark-mode .exp-summary,body.dark-mode .degree-date,body.dark-mode .hero-support,body.dark-mode .hero-desc{color:#b8c5be}body.dark-mode .certificate-badge{color:#f4f4f4;background:#ffffff14}body.dark-mode .projects-btn{color:#111;background:linear-gradient(#dbe7dc,#bccfbd)}body.dark-mode .projects-btn:hover,body.dark-mode .projects-btn:focus-visible{background:#fff}body.dark-mode .connect-pill,body.dark-mode .footer-social a,body.dark-mode .back-top{color:#f8f8f8;background:linear-gradient(#18231f,#101815);border-color:#ffffff1f}body.dark-mode .connect-pill:hover,body.dark-mode .connect-pill:focus-visible,body.dark-mode .footer-social a:hover,body.dark-mode .footer-social a:focus-visible,body.dark-mode .back-top:hover,body.dark-mode .back-top:focus-visible{background:#1a2521}body.dark-mode .footer-links a:hover,body.dark-mode .footer-links a:focus-visible{color:#fff}body.dark-mode .footer-bottom{border-top-color:#ffffff1a}body.dark-mode .hero-btn.primary{color:#111;background:#dbe7dc}body.dark-mode .hero-btn.ghost{background:#ffffff08;border-color:#ffffff24}body.dark-mode .hero-btn.ghost:hover,body.dark-mode .hero-btn.ghost:focus-visible{background:#ffffff14}@media (width<=980px){.nav-inner{flex-wrap:wrap;justify-content:center}.hero-section{min-height:auto;padding-top:140px}.about-inner{grid-template-columns:1fr;gap:34px}.skills-grid,.footer-inner{grid-template-columns:1fr}.skills-grid{max-width:100%}.footer-social-stack{max-width:none}.experience-timeline{grid-template-columns:48px 1fr;max-width:760px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:980px}.certificates-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.nav-links{flex-wrap:wrap;justify-content:center;gap:16px}.nav-actions{flex-wrap:wrap;justify-content:center;width:100%}.hero-inner,.about-inner,.skills-inner,.experience-inner,.projects-inner,.certificates-inner,.connect-inner,.footer-inner,.footer-bottom{padding-left:18px;padding-right:18px}.hero-actions,.connect-actions{flex-direction:column}.hero-text{max-width:100%}.hero-text h1{max-width:100%;font-size:clamp(2.85rem,12vw,4.3rem);line-height:.98}.hero-role{letter-spacing:.11em;font-size:.92rem}.hero-desc{max-width:100%;font-size:1rem}.hero-btn,.connect-pill,.projects-btn{width:100%}.about-highlights,.skills-grid,.certificates-grid{grid-template-columns:1fr}.experience-timeline{grid-template-columns:1fr;gap:18px}.projects-grid{grid-template-columns:1fr}.exp-rail{display:none}.exp-cards{justify-content:center}.experience-card,.about-card{max-width:none}.project-links{flex-direction:column}.project-links a{width:100%}.footer-bottom{flex-direction:column;align-items:flex-start}}:root{--bg-light:#f7f6ef;--bg-light-alt:#eef3eb;--bg-accent:#a6d39b;--bg-accent-strong:#6fa67b;--bg-accent-soft:#a6d39b29;--surface-light:#ffffffdb;--surface-solid:#fff;--text-dark:#1a3028;--text-muted:#597067;--card-border:#1a30281a;--shadow-soft:0 20px 48px #14251f14;--shadow-card:0 14px 30px #14251f14;--shadow-float:0 26px 56px #14251f24;--radius-md:20px;--radius-lg:26px;--container-max:1200px}body{color:var(--text-dark);background:radial-gradient(circle at 10% 12%, #a0cd9d1f, transparent 18%), radial-gradient(circle at 92% 18%, #a0cd9d14, transparent 20%), linear-gradient(180deg, #fcfcf8 0%, var(--bg-light) 32%, var(--bg-light-alt) 100%);font-family:Plus Jakarta Sans,Segoe UI,sans-serif}.logo,.hero-text h1,.hero-panel h2,.about-title,.competencies-title,.skills-header h2,.experience-title,.projects-header h2,.certificates-header h2,.connect-inner h2,.footer-brand h3,.project-body h3,.skill-title h3,.about-card h3,.experience-card h3{font-family:Sora,Plus Jakarta Sans,sans-serif}.site-nav{background:#142722eb;box-shadow:0 12px 30px #0000001a}.nav-inner{gap:24px;padding:15px 26px}.logo{letter-spacing:-.05em;font-size:1.9rem}.nav-links{gap:22px}.nav-links a{letter-spacing:.01em;font-size:.94rem}.icon-link,.resume-btn{box-shadow:0 10px 24px #0000001f}.hero-section{background:radial-gradient(circle at 15% 14%,#abd7ad33,#0000 18%),radial-gradient(circle at 85% 18%,#7eb98f33,#0000 22%),linear-gradient(#14332c 0%,#1d4038 58%,#234138 100%);min-height:760px;padding:162px 0 118px}.hero-inner{max-width:1240px;padding:0 28px}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,410px);align-items:center;gap:52px;display:grid}.hero-text{text-align:left;max-width:none}.hero-kicker{color:#eff5eccc;margin-bottom:18px}.hero-kicker:before,.hero-kicker:after{width:34px}.hero-text h1{max-width:720px;margin:0 0 18px;font-size:clamp(3.4rem,5.6vw,5.4rem);line-height:.96}.hero-role{letter-spacing:.16em;color:#b9ddb8;max-width:680px;margin:0 0 18px;font-size:.93rem}.hero-desc{max-width:680px;margin:0 0 16px;font-size:1.08rem;line-height:1.82}.hero-support{max-width:620px;margin:0 0 30px;font-size:1rem}.hero-actions,.hero-meta{justify-content:flex-start}.hero-btn{min-height:50px;padding:0 24px;box-shadow:0 14px 26px #0f1c1729}.hero-btn.primary{background:linear-gradient(#c4e4b8,#98cd94)}.hero-meta{gap:10px;margin-top:28px}.hero-meta span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff12;min-height:36px}.hero-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#ffffff1f,#ffffff0a),#0d1c173d;border:1px solid #ffffff1f;border-radius:28px;padding:30px 28px;position:relative;box-shadow:0 26px 60px #060f0c3d}.hero-panel:after{content:"";background:linear-gradient(90deg,#0000,#ffffff38,#0000);height:1px;position:absolute;inset:auto 24px 0}.hero-panel-label{color:#dff0dc;letter-spacing:.12em;text-transform:uppercase;background:#a6d39b29;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.74rem;font-weight:800;display:inline-flex}.hero-panel h2{color:#f3faf4;margin:18px 0 12px;font-size:clamp(1.5rem,2vw,1.9rem);line-height:1.25}.hero-panel p{color:#eff5ecc2;margin:0 0 20px;font-size:.97rem;line-height:1.72}.hero-panel-points{gap:14px;margin-bottom:20px;display:grid}.hero-panel-points div{background:#ffffff0d;border:1px solid #ffffff14;border-radius:18px;padding:14px 16px}.hero-panel-points span{letter-spacing:.1em;text-transform:uppercase;color:#a9cba8;margin-bottom:6px;font-size:.76rem;font-weight:700;display:block}.hero-panel-points strong{color:#f7fcf7;font-size:.98rem;line-height:1.5;display:block}.hero-panel-tags,.experience-tags{flex-wrap:wrap;gap:10px;display:flex}.hero-panel-tags span,.experience-tags span{color:#edf6ed;background:#ffffff14;border:1px solid #ffffff14;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:.82rem;font-weight:600;display:inline-flex}.about-section,.projects-section{background:linear-gradient(180deg, #ffffff75, #fff0), var(--bg-light)}.about-inner,.skills-inner,.experience-inner,.projects-inner,.certificates-inner,.footer-inner,.footer-bottom{padding-left:28px;padding-right:28px}.about-title,.skills-header h2,.projects-header h2,.experience-title,.certificates-header h2{letter-spacing:-.04em}.about-text,.skills-header p,.projects-header p,.certificates-header p{font-size:1.02rem}.about-highlights{gap:18px}.about-highlight{border-radius:18px;padding:22px 22px 20px}.about-card{border:1px solid #ffffff14;position:sticky;top:108px}.wam-box{background:#ffffff12}.skills-header{margin-bottom:48px}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1100px}.skill-card{min-height:188px;padding:24px}.skill-title{margin-bottom:16px}.skill-icon{background:linear-gradient(#a4d09f,#77ab7c);border-radius:14px;width:46px;height:46px}.experience-section{padding:92px 0 102px}.experience-header{margin-bottom:34px}.experience-flow{gap:22px;max-width:1020px;margin:0 auto;display:grid}.experience-card{padding:30px 30px 26px;position:relative;overflow:hidden}.experience-card:before{content:"";background:linear-gradient(#aed4ad,#aed4ad29);border-radius:999px;width:4px;position:absolute;top:24px;bottom:24px;left:0}.experience-card-top{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.experience-copy{min-width:0}.experience-period{letter-spacing:.12em;text-transform:uppercase;color:#a8cdab;margin:0 0 10px;font-size:.76rem;font-weight:800}.experience-card h3{margin-bottom:14px}.experience-meta{flex-wrap:wrap;gap:10px;margin-bottom:6px;display:flex}.experience-meta span{color:#eef6ef;background:#ffffff12;border:1px solid #ffffff14;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:.84rem;font-weight:700;display:inline-flex}.exp-summary{max-width:90ch;margin:2px 0}.experience-card ul{gap:4px;display:grid}.experience-tags{margin-top:4px}.projects-grid{align-items:stretch;gap:24px}.project-card{flex-direction:column;display:flex}.project-thumb{height:196px;position:relative}.project-thumb:after{content:"";background:linear-gradient(#0000,#0b141147);height:72px;position:absolute;inset:auto 0 0}.project-thumb-badge{z-index:1;color:#f7fbf7;letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff3;border:1px solid #ffffff47;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.74rem;font-weight:800;display:inline-flex;position:absolute;top:16px;left:16px}.project-body{flex-direction:column;flex:1;padding:24px 22px 22px;display:flex}.project-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#6f8f7d;margin:0 0 10px;font-size:.77rem;font-weight:800}.project-copy{gap:14px}.project-body p{font-size:.95rem}.project-tags{margin-top:auto;padding-top:8px}.project-links a{min-height:42px}.projects-btn{background:linear-gradient(#b8deb0,#93cb90);min-height:52px}.certificate-card{border-radius:20px;transition:transform .22s,box-shadow .22s,border-color .22s}.certificate-card:hover{box-shadow:var(--shadow-soft);border-color:#1a302829;transform:translateY(-4px)}.connect-section{background:radial-gradient(circle at 18% 12%,#ffffff29,#0000 18%),linear-gradient(135deg,#9fcc9a 0%,#8bb786 55%,#84af80 100%)}.connect-inner{max-width:1100px}.connect-inner h2{letter-spacing:-.04em;max-width:900px;margin-left:auto;margin-right:auto}.connect-pill{min-height:52px}.site-footer{background:linear-gradient(#89b585 0%,#82ae7f 100%)}.footer-brand p,.footer-links a,.footer-bottom{color:#162720db}body.dark-mode{--bg-light:#111916;--bg-light-alt:#151e1a;--bg-accent:#a9cfa8;--bg-accent-strong:#d7e7d5;--bg-accent-soft:#a9cfa81f;--surface-solid:#17211d;--text-dark:#edf5ee;--text-muted:#b6c5bd;--card-border:#ffffff14;background:radial-gradient(circle at 8% 10%, #a9cfa814, transparent 18%), radial-gradient(circle at 90% 18%, #a9cfa80d, transparent 20%), linear-gradient(180deg, #101714 0%, var(--bg-light) 34%, var(--bg-light-alt) 100%)}body.dark-mode .hero-section{background:radial-gradient(circle at 16% 14%,#bee1be14,#0000 18%),radial-gradient(circle at 84% 18%,#a9cfa814,#0000 22%),linear-gradient(#0f1c18 0%,#14231f 56%,#162723 100%)}body.dark-mode .hero-panel{background:linear-gradient(#ffffff0f,#ffffff05),#0a110e57;border-color:#ffffff14}body.dark-mode .project-eyebrow,body.dark-mode .experience-period,body.dark-mode .hero-panel-points span{color:#b7d2b5}body.dark-mode .about-section,body.dark-mode .projects-section{background:linear-gradient(#ffffff05,#fff0),#121915}body.dark-mode .about-highlight,body.dark-mode .skill-card,body.dark-mode .project-card,body.dark-mode .certificate-card{background:linear-gradient(#1a241ff5,#151d19eb)}body.dark-mode .project-thumb-badge{background:#0a100e5c;border-color:#ffffff24}body.dark-mode .connect-section,body.dark-mode .site-footer{background:linear-gradient(#1a2621 0%,#16211d 100%)}body.dark-mode .footer-brand p,body.dark-mode .footer-links a,body.dark-mode .footer-bottom{color:#b9c6be}@media (width<=1100px){.hero-grid{grid-template-columns:1fr;gap:30px}.hero-text,.hero-kicker,.hero-actions,.hero-meta{text-align:center;justify-content:center}.hero-kicker{justify-content:center;display:flex}.hero-text h1,.hero-role,.hero-desc,.hero-support{text-align:center;margin-left:auto;margin-right:auto}.hero-panel{max-width:760px;margin:0 auto}.about-card{position:static}}@media (width<=820px){.about-inner,.footer-inner,.projects-grid,.certificates-grid,.skills-grid{grid-template-columns:1fr}.hero-section{min-height:auto;padding:146px 0 98px}.hero-inner,.about-inner,.skills-inner,.experience-inner,.projects-inner,.certificates-inner,.connect-inner,.footer-inner,.footer-bottom{padding-left:20px;padding-right:20px}.about-highlights{grid-template-columns:1fr}.about-highlight:last-child{grid-column:auto}}@media (width<=640px){.nav-inner{padding:14px 18px}.hero-text h1{font-size:clamp(2.7rem,11vw,3.8rem)}.hero-actions,.connect-actions,.project-links{flex-direction:column}.hero-btn,.connect-pill,.projects-btn,.project-links a{width:100%}.hero-panel,.experience-card,.about-card{padding:24px 22px}.experience-card:before{top:18px;bottom:18px}.project-thumb{height:180px}}.nav-inner{padding-top:14px;padding-bottom:14px}.logo{font-size:1.7rem}.nav-links a{font-size:.9rem}.hero-section{min-height:700px;padding:146px 0 96px}.hero-inner{max-width:1200px}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:42px}.hero-text h1{max-width:640px;font-size:clamp(2.95rem,4.9vw,4.7rem);line-height:.98}.hero-role{letter-spacing:.14em;max-width:620px;font-size:.82rem}.hero-desc{max-width:600px;font-size:1rem;line-height:1.72}.hero-support{max-width:580px;margin-bottom:26px;font-size:.95rem}.hero-actions{gap:10px}.hero-btn{min-height:46px;padding:0 20px;font-size:.92rem}.hero-meta span{min-height:34px;font-size:.8rem}.hero-panel{border-radius:22px;padding:24px 22px}.hero-panel h2{font-size:1.35rem;line-height:1.28}.hero-panel p{font-size:.92rem}.hero-panel-points{gap:10px}.hero-panel-points div{border-radius:14px;padding:12px 13px}.hero-panel-points strong{font-size:.9rem}.hero-panel-tags span{min-height:32px;font-size:.78rem}.about-section,.skills-section,.experience-section,.projects-section,.certificates-section{padding-top:78px;padding-bottom:84px}.about-inner,.skills-inner,.experience-inner,.projects-inner,.certificates-inner,.connect-inner,.footer-inner,.footer-bottom{max-width:1160px}.about-inner{grid-template-columns:minmax(0,1.18fr) minmax(320px,360px);gap:32px}.about-title,.skills-header h2,.experience-title,.projects-header h2,.certificates-header h2{font-size:clamp(2.2rem,3.4vw,3rem)}.about-underline,.experience-underline{height:3px}.about-text{max-width:64ch;margin-bottom:28px}.about-highlights{gap:14px;margin-bottom:28px}.about-highlight{padding:18px 18px 16px}.about-highlight h3{font-size:.97rem}.about-highlight p{font-size:.9rem}.competencies-title{margin-bottom:16px;font-size:1.5rem}.competency-tags span,.skill-tags span,.project-tags span,.experience-tags span{min-height:32px;padding:0 12px;font-size:.78rem}.about-card{padding:24px 22px}.about-card h3{font-size:1.28rem}.degree-title{font-size:1.12rem}.wam-box{padding:16px 18px 14px}.wam-value{font-size:2.45rem}.skills-header{max-width:700px;margin-bottom:34px}.skills-grid{gap:16px;max-width:980px}.skill-card{border-radius:16px;min-height:160px;padding:18px 18px 16px}.skill-title{gap:12px;margin-bottom:14px}.skill-title h3{font-size:1rem}.skill-icon{width:38px;height:38px}.skill-icon svg{width:18px;height:18px}.experience-section{padding-top:82px;padding-bottom:92px}.experience-header{max-width:760px;margin-bottom:28px}.experience-intro{max-width:660px;margin-bottom:0;font-size:.96rem}.experience-flow{gap:16px;max-width:980px}.experience-card{border-radius:18px;padding:24px 24px 22px 26px}.experience-card:before{width:3px;top:20px;bottom:20px}.experience-period{margin-bottom:8px;font-size:.72rem}.experience-card h3{font-size:1.12rem;line-height:1.35}.experience-meta{margin-bottom:8px}.experience-meta span{min-height:30px;font-size:.76rem}.exp-summary{font-size:.94rem;line-height:1.66}.exp-label{margin-bottom:8px;font-size:.88rem}.experience-card li{padding:8px 0 8px 18px;font-size:.9rem;line-height:1.58}.experience-card li:before{width:6px;height:6px;top:15px}.projects-header{max-width:760px;margin-bottom:32px}.projects-header p{font-size:.96rem}.projects-grid{gap:18px;max-width:980px}.project-thumb{height:142px}.project-thumb-badge{min-height:26px;padding:0 10px;font-size:.68rem;top:12px;left:12px}.project-body{padding:18px 18px 16px}.project-eyebrow{margin-bottom:8px;font-size:.68rem}.project-body h3{margin-bottom:10px;font-size:1.08rem}.project-copy{gap:10px;margin-bottom:14px}.project-body p{font-size:.88rem;line-height:1.56}.project-links{gap:10px;margin-top:14px}.project-links a{min-height:36px;padding:0 12px;font-size:.82rem}.projects-cta{margin-top:28px}.projects-btn{min-width:220px;min-height:46px;font-size:.9rem}.certificates-header{margin-bottom:28px}.certificates-grid{gap:14px;max-width:980px;margin:0 auto}.certificate-card{border-radius:16px;padding:18px 16px}.certificate-badge{min-height:24px;margin-bottom:12px;font-size:.68rem}.certificate-card h3{margin-bottom:8px;font-size:1rem}.certificate-card p{margin-bottom:12px;font-size:.86rem}.certificate-card a{font-size:.86rem}.connect-section{padding:68px 0 34px}.connect-inner h2{max-width:820px;margin-bottom:14px;font-size:clamp(2.15rem,3.8vw,3.4rem);line-height:1.08}.connect-inner p{max-width:700px;margin-bottom:24px;font-size:.96rem}.connect-actions{gap:10px}.connect-pill{min-height:46px;padding:0 16px;font-size:.86rem}.connect-pill-wide,.connect-pill-phone{min-width:0}.footer-inner{grid-template-columns:minmax(260px,1.3fr) minmax(180px,.9fr) minmax(180px,.9fr);gap:28px}.footer-brand h3{margin-bottom:12px;font-size:1.2rem}.footer-brand p,.footer-links a{font-size:.88rem;line-height:1.62}.footer-links h4{margin-bottom:12px;font-size:.9rem}.footer-links ul{gap:10px}.footer-social a{border-radius:10px;min-width:40px;min-height:40px}.footer-bottom{margin-top:28px;padding-top:18px;font-size:.78rem}.back-top{min-height:36px;padding:0 14px;font-size:.8rem}@media (width<=1100px){.hero-grid{grid-template-columns:1fr;gap:26px}.hero-panel{max-width:700px}}@media (width<=820px){.about-inner,.skills-grid,.projects-grid,.certificates-grid,.footer-inner{grid-template-columns:1fr}.about-inner{gap:24px}.hero-section{padding-top:136px}.hero-text h1,.hero-role,.hero-desc,.hero-support{max-width:100%}.project-thumb{height:160px}}@media (width<=640px){.hero-section{padding:128px 0 80px}.hero-text h1{font-size:clamp(2.45rem,10vw,3.4rem)}.hero-panel,.about-card,.experience-card,.certificate-card{padding:20px 18px}.about-section,.skills-section,.experience-section,.projects-section,.certificates-section{padding-top:64px;padding-bottom:68px}.footer-bottom{gap:12px}}.footer-inner{align-items:start;display:grid}.footer-brand,.footer-links{min-width:0}.footer-brand p{max-width:340px}.footer-social-stack{max-width:none}body.dark-mode .project-links a{color:#f3f8f4;background:#ffffff14;border-color:#ffffff1f}body.dark-mode .project-links a:hover,body.dark-mode .project-links a:focus-visible{color:#fff;background:#ffffff24}@media (width<=820px){.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footer-brand{grid-column:1/-1}}@media (width<=640px){.footer-inner{grid-template-columns:1fr}.footer-brand{grid-column:auto}}.site-footer{padding:44px 0 20px}.footer-shell{grid-template-columns:minmax(0,1.4fr) minmax(180px,.9fr) minmax(240px,1fr);align-items:start;gap:28px;max-width:1160px;margin:0 auto;padding:0 28px;display:grid}.footer-column{min-width:0}.footer-brand-block h3,.footer-nav-block h4,.footer-connect-block h4{color:#173128;margin:0 0 12px;font-family:Sora,Plus Jakarta Sans,sans-serif}.footer-brand-block h3{font-size:1.18rem}.footer-nav-block h4,.footer-connect-block h4{font-size:.92rem}.footer-brand-block p{color:#173128d1;max-width:340px;margin:0;font-size:.88rem;line-height:1.62}.footer-nav-block ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.footer-nav-block a,.footer-contact-list a{color:#173128d1;font-size:.88rem;line-height:1.55;text-decoration:none}.footer-nav-block a:hover,.footer-nav-block a:focus-visible,.footer-contact-list a:hover,.footer-contact-list a:focus-visible{color:#0f231d}.footer-social-links{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.footer-social-links a{color:#eef6ef;background:#19362f;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.footer-social-links svg{fill:currentColor;stroke:currentColor;width:18px;height:18px}.footer-social-links a:hover,.footer-social-links a:focus-visible{background:#102722;transform:translateY(-1px)}.footer-contact-list{gap:8px;display:grid}.footer-bottom-shell{max-width:1160px;margin:26px auto 0;padding:18px 28px 0}body.dark-mode .footer-brand-block h3,body.dark-mode .footer-nav-block h4,body.dark-mode .footer-connect-block h4{color:#f3faf4}body.dark-mode .footer-brand-block p,body.dark-mode .footer-nav-block a,body.dark-mode .footer-contact-list a,body.dark-mode .footer-bottom-shell{color:#b9c6be}body.dark-mode .footer-nav-block a:hover,body.dark-mode .footer-nav-block a:focus-visible,body.dark-mode .footer-contact-list a:hover,body.dark-mode .footer-contact-list a:focus-visible{color:#fff}@media (width<=820px){.footer-shell{grid-template-columns:1fr 1fr;padding-left:20px;padding-right:20px}.footer-brand-block{grid-column:1/-1}.footer-bottom-shell{padding-left:20px;padding-right:20px}}@media (width<=640px){.footer-shell{grid-template-columns:1fr}.footer-brand-block{grid-column:auto}}
