:root{--brand:#146520;--ink:#1f2937;--muted:#6b7280;--line:#e7ece9;--card:#fff;--chip:#f3f6f4}*{box-sizing:border-box}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}body{overflow-x:hidden}.resume{border:1px solid var(--line);max-width:1100px;color:var(--ink);opacity:0;background:linear-gradient(145deg,#fafafa,#fff);border-radius:16px;margin:20px auto;padding:24px;transition:opacity .25s,transform .25s,box-shadow .25s;transform:translateY(6px);box-shadow:0 6px 16px #00000014}.resume.fade-in{opacity:1;transform:none}.resume:hover{box-shadow:0 10px 24px #0000001f}.resume-header{grid-template-columns:128px 1fr;align-items:center;gap:20px;margin-bottom:12px;display:grid}.profile-image{object-fit:cover;border-radius:50%;width:128px;height:128px;box-shadow:0 4px 14px #00000026}.resume-title{color:var(--ink);letter-spacing:.2px;margin:0;font-size:clamp(26px,2.2vw + 10px,36px);font-weight:800}.details{line-height:1.7}.details h3{color:#333;border-bottom:2px solid var(--line);margin:18px 0 10px;padding-bottom:6px;font-size:1.25rem;font-weight:700}.details p{color:#374151;margin:0 0 10px}.contact-link{background:linear-gradient(145deg,#f3f4f6,#e5e7eb);border:0;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .25s,box-shadow .25s;display:flex;box-shadow:0 4px 10px #0000001f,inset 0 -2px 5px #fff9}.skills-grid{flex-wrap:wrap;gap:10px;display:flex}.skill-item{background:var(--chip);border:1px solid var(--line);color:#111827;border-radius:10px;padding:8px 12px;font-weight:600}.experience-container{margin-top:6px}.experience-card{background:var(--card);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:14px 16px;display:flex;box-shadow:0 2px 10px #0000000f}.timeline{flex-direction:column;align-items:center;width:32px;display:flex;position:relative}.timeline-marker{background:var(--brand);border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 2px #d7efe1}.timeline-marker.active{transform:scale(1.1)}.timeline-line{background:#e5e7eb;flex:auto;width:2px;margin-top:6px}.experience-content{flex:1}.job-title{color:#111827;margin:2px 0 4px;font-size:1.1rem;font-weight:700}.job-company{color:#374151;margin:0 0 4px;font-style:italic}.job-dates,.job-location{color:var(--muted);margin:0 0 4px;font-size:.9rem}.job-description{color:#374151;line-height:1.55}.toggle-experience,.toggle-projects,.toggle-courses,.toggle-publications,.toggle-certifications{text-align:center;margin-top:10px}.show-all-button,.show-less-button{color:#fff;cursor:pointer;background:#0c63d6;border:none;border-radius:8px;padding:8px 14px;font-weight:600;transition:transform .2s,background .2s}.show-all-button:hover,.show-less-button:hover{background:#0a56bb;transform:translateY(-1px)}.pet-projects-container{gap:16px;margin-top:8px;display:grid}.pet-project-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:0 2px 10px #0000000f}.pet-project-content{flex-direction:column;gap:12px;display:flex}.project-images-container{flex-wrap:wrap;gap:10px;display:flex}.project-image-thumbnail{object-fit:cover;border:1px solid var(--line);cursor:pointer;border-radius:8px;width:96px;height:96px;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 6px #00000014}.project-image-thumbnail:hover{transform:scale(1.04);box-shadow:0 6px 15px #00000024}.project-info{flex:1}.project-title a{color:#111827;font-size:1.1rem;font-weight:700;text-decoration:none}.project-description{color:#374151;margin-top:6px}.project-technologies{margin-top:8px;line-height:1.5}.project-technologies span{color:#0c63d6;background:#eef4ff;border-radius:6px;margin:0 6px 6px 0;padding:4px 8px;font-weight:600;display:inline-block}.project-date{border:1px solid var(--line);color:#4b5563;background:#fafafa;border-radius:6px;margin-top:6px;padding:3px 8px;font-size:.85rem;display:inline-block}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:12px;margin-top:8px;display:grid}.project-card{background:var(--card);border:1px solid var(--line);border-radius:10px;grid-template-columns:96px 1fr;gap:12px;padding:12px;transition:box-shadow .15s,transform .15s;display:grid;box-shadow:0 1px 3px #0000000d}.project-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.project-cover{cursor:pointer;background:0 0;border:0;border-radius:8px;width:96px;height:96px;padding:0;overflow:hidden;box-shadow:0 2px 6px #00000014}.project-cover img{object-fit:cover;width:100%;height:100%;display:block}.project-main{gap:6px;min-width:0;display:grid}.project-title{color:#0b1324;margin:0;font-size:1.02rem;font-weight:700}.project-title a{color:#111827;text-decoration:none}.project-title a:hover{text-decoration:underline}.project-desc{color:#374151;margin:0;line-height:1.45}.clamp-3{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.project-gallery{scroll-snap-type:x proximity;gap:6px;padding-bottom:2px;display:flex;overflow:auto}.project-gallery::-webkit-scrollbar{height:6px}.project-gallery::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:6px}.project-thumb{border:1px solid var(--line);object-fit:cover;cursor:pointer;scroll-snap-align:start;border-radius:6px;flex:0 0 64px;height:64px;transition:transform .15s,box-shadow .15s;box-shadow:0 1px 3px #00000014}.project-thumb:hover{transform:scale(1.04);box-shadow:0 4px 10px #00000024}.project-tags{flex-wrap:wrap;gap:6px;display:flex}.project-tags .tag{color:#0c63d6;background:#eef4ff;border:1px solid #d9e6ff;border-radius:6px;padding:2px 8px;font-size:.78rem;font-weight:600}.project-meta{color:var(--muted);font-size:.85rem}.project-desc{color:#374151;margin:0;line-height:1.55;position:relative}.project-desc.clamped{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.project-desc.clamped:after{content:"";pointer-events:none;background:linear-gradient(to bottom, #fff0, var(--card));height:2.2em;position:absolute;bottom:0;left:0;right:0}.project-desc.expanded{display:block}.project-more{color:var(--brand);cursor:pointer;align-items:center;gap:6px;margin-top:4px;font-size:.92rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;width:auto!important;padding:4px 0!important}.project-more:after{content:"▾";font-size:.9em;transition:transform .15s;transform:translateY(1px)}.project-more[aria-expanded=true]:after{transform:rotate(180deg)}.project-more:hover{text-decoration:underline}@media (width<=640px){.projects-grid{grid-template-columns:1fr}.project-card{grid-template-columns:72px 1fr;padding:10px}.project-cover{width:72px;height:72px}}.certifications-container{gap:10px;margin-top:6px;display:grid}.cert-card{background:var(--card);border:1px solid var(--line);border-radius:10px;grid-template-columns:44px 1fr auto;align-items:start;gap:12px;padding:12px;transition:box-shadow .15s,transform .15s;display:grid;box-shadow:0 1px 3px #0000000d}.cert-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.cert-org img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:6px;width:40px;height:40px}.cert-main{justify-items:start}.cert-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.cert-title{color:#0b1324;margin:0;font-size:1rem;font-weight:700;line-height:1.2}.cert-pill{border:1px solid var(--line);white-space:nowrap;border-radius:999px;justify-self:start;width:max-content;padding:3px 8px;font-size:.78rem;font-weight:700}.cert-pill.is-valid{color:#065f46;background:#ecfdf5;border-color:#bbf7d0}.cert-pill.is-expired{color:#991b1b;background:#fef2f2;border-color:#fecaca}.cert-meta,.cert-id{color:var(--muted);margin:0;font-size:.88rem}.cert-skills{color:#374151;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.92rem;line-height:1.35;display:-webkit-box;overflow:hidden}.cert-thumb{cursor:pointer;background:0 0;border:0;place-self:center end;margin:0;padding:0}.cert-thumb img{object-fit:contain;border-radius:8px;width:180px;max-height:110px;box-shadow:0 2px 8px #0000001a}.show-credential,.show-credential:hover{text-decoration:none}.show-credential{color:#fff;cursor:pointer;background:#0c63d6;border:0;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.85rem;font-weight:700;line-height:1;transition:background .15s,box-shadow .15s,transform .15s;display:inline-flex;transform:translateZ(0);box-shadow:0 3px 8px #0c63d633}.show-credential:visited{color:#fff}.show-credential:hover,.show-credential:focus-visible{background:#0a56bb;outline:none;transform:translateY(-1px);box-shadow:0 5px 12px #0a56bb38}.show-credential:active{transform:translateY(0);box-shadow:0 2px 6px #0a56bb2e}.clamp-1{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width<=640px){.cert-card{grid-template-columns:36px 1fr}.cert-thumb{grid-column:1/-1;justify-self:start;margin-top:6px}.cert-thumb img{width:100%;max-height:160px}}.courses-container{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:stretch;gap:16px;margin:12px 0 0;display:grid}.course-card{background:var(--card);border:1px solid var(--line);border-radius:12px;grid-template-columns:48px 1fr;align-items:start;gap:12px;padding:14px;display:grid;box-shadow:0 2px 10px #0000000f}.course-content{flex-direction:column;min-height:160px;display:flex}.course-title{-webkit-line-clamp:3;line-clamp:3;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;word-break:normal;-webkit-box-orient:vertical;min-height:3.66em;margin:0 0 6px;font-size:1rem;font-weight:700;line-height:1.22;display:-webkit-box;overflow:hidden}.course-icon{border-radius:6px;flex:none;width:40px;height:40px}.course-content h4{color:#111827;margin:0 0 6px;font-size:1rem;font-weight:700}.course-platform,.course-year{color:var(--muted);margin:0;font-size:.9rem}.course-desc{color:#374151;margin:4px 0 0;line-height:1.5;position:relative}.course-desc.clamped{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course-desc.clamped:after{content:"";pointer-events:none;background:linear-gradient(to bottom, #fff0, var(--card));height:2em;position:absolute;bottom:0;left:0;right:0}.course-desc.expanded{display:block}.course-actions{align-items:center;gap:10px;margin-top:8px;display:flex}.course-badge-link{align-items:center;display:inline-flex}.course-badge-icon{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:4px;width:22px;height:22px}.certificate-container{margin-top:auto}.certificate-thumbnail{border-radius:8px;width:160px;overflow:hidden}.certificate-thumbnail-image{width:100%;height:auto;display:block}@media (width<=640px){.course-card{grid-template-columns:40px 1fr}.certificate-thumbnail{aspect-ratio:auto;width:100%}.course-title{-webkit-line-clamp:2;line-clamp:2;min-height:2.44em}}.education-container{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:10px;margin-top:6px;display:grid}.education-card{background:var(--card);border:1px solid var(--line);border-radius:10px;grid-template-columns:28px 1fr;gap:8px 12px;padding:12px;transition:box-shadow .15s,transform .15s;display:grid;box-shadow:0 1px 3px #0000000d}.education-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.edu-marker{background:var(--brand);border-radius:50%;width:18px;height:18px;margin-top:2px;box-shadow:0 0 0 3px #e6f3ec}.edu-logo{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:4px;width:24px;height:24px;margin-top:2px}.edu-body{gap:4px;display:grid}.edu-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.edu-institution{color:#0b1324;margin:0;font-size:1rem;font-weight:700;line-height:1.2}.edu-years{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.85rem}.edu-degree{color:#374151;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.95rem;line-height:1.35;display:-webkit-box;overflow:hidden}.edu-skills{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.edu-skill{color:#0c63d6;background:#eef4ff;border:1px solid #d9e6ff;border-radius:6px;padding:2px 8px;font-size:.78rem;font-weight:600}@media (width<=640px){.education-container{grid-template-columns:1fr}.education-card{grid-template-columns:24px 1fr;padding:10px}.edu-marker{width:16px;height:16px}.edu-logo{width:22px;height:22px}}.publications-container{gap:8px;margin-top:6px;display:grid}.publication-card{background:var(--card);border:1px solid var(--line);border-radius:8px;grid-template-columns:28px 1fr auto;gap:6px 10px;padding:10px 12px;transition:box-shadow .15s,transform .15s;display:grid;box-shadow:0 1px 3px #0000000d}.publication-header{grid-column:1/3;align-items:center;gap:10px;display:flex}.medium-icon{object-fit:contain;background:0 0;border-radius:4px;width:24px;height:24px}.publication-title{color:#0b1324;margin:0;font-size:.95rem;font-weight:700;line-height:1.2}.publication-meta{color:var(--muted);grid-column:2;margin:0;font-size:.82rem}.publication-description{color:#374151;grid-column:2;margin:2px 0 0;line-height:1.45}.publication-link{color:#fff;white-space:nowrap;background:#0c63d6;border-radius:999px;grid-column:3;place-self:start end;padding:5px 9px;font-size:.82rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s,box-shadow .15s;box-shadow:0 3px 8px #0c63d638}.publication-link:hover{background:#0a56bb;transform:translateY(-1px);box-shadow:0 5px 12px #0a56bb40}.awards-container{gap:8px;margin-top:6px;display:grid}.award-card{background:var(--card);border:1px solid var(--line);border-radius:8px;grid-template-columns:28px 1fr auto;gap:6px 10px;padding:10px 12px;transition:box-shadow .15s,transform .15s;display:grid;box-shadow:0 1px 3px #0000000d}.award-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.award-header{grid-column:1/3;grid-template-columns:28px 1fr;align-items:center;gap:10px;display:grid}.award-icon{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:4px;width:24px;height:24px}.award-title{color:#0c63d6;margin:0;font-size:.95rem;font-weight:700;text-decoration:none}.award-title:hover{text-decoration:underline}.award-issued{color:var(--muted);grid-column:2;margin:0;font-size:.82rem}.award-category{border:1px solid var(--line);background:#f3f6f4;border-radius:999px;justify-self:start;align-items:center;width:max-content;max-width:100%;padding:2px 10px;display:inline-flex}@supports not (width:max-content){.award-category{width:fit-content}}.award-description{color:#374151;grid-column:2;margin:4px 0 0;line-height:1.45}.award-image-container{cursor:pointer;grid-column:3;place-self:start end}.award-thumbnail{border-radius:8px;width:72px;transition:transform .15s,box-shadow .15s;box-shadow:0 2px 8px #0000001f}.award-thumbnail:hover{transform:translateY(-1px);box-shadow:0 6px 14px #00000029}.publication-description,.award-description{color:#374151;line-height:1.55;position:relative}.publication-description.clamped,.award-description.clamped{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.publication-description.clamped:after,.award-description.clamped:after{content:"";pointer-events:none;background:linear-gradient(to bottom, #fff0, var(--card));height:2em;position:absolute;bottom:0;left:0;right:0}.publication-description.expanded,.award-description.expanded{display:block}.award-description.expanded:after,.publication-description.expanded:after{display:none}.toggle-text{color:var(--brand);cursor:pointer;background:0 0;border:none;margin-top:2px;padding:0;font-size:.85rem;font-weight:600}.toggle-text:hover{text-decoration:underline}@media (width<=640px){.publication-card{grid-template-columns:24px 1fr;padding:8px 10px}.publication-link{grid-column:2;justify-self:start;margin-top:6px}.medium-icon{width:22px;height:22px}.award-card{grid-template-columns:24px 1fr;padding:8px 10px}.award-header{grid-template-columns:24px 1fr}.award-icon{width:22px;height:22px}.award-image-container{grid-column:2;justify-self:start;margin-top:6px}}.modal{z-index:9999;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;max-width:92vw;max-height:92vh;padding:16px;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000059}.modal-image{object-fit:contain;border-radius:10px;max-width:86vw;max-height:80vh;display:block}.close-button{cursor:pointer;color:#111;background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:8px;right:12px}.prev-button,.next-button{color:#0c63d6;cursor:pointer;background:0 0;border:none;font-size:2rem;position:absolute;top:50%;transform:translateY(-50%)}.prev-button{left:10px}.next-button{right:10px}.prev-button:hover,.next-button:hover{color:#094ea8}@media (width<=900px){.resume-header{grid-template-columns:96px 1fr}.profile-image{width:96px;height:96px}}@media (width<=640px){.resume{margin:12px auto;padding:16px}.resume-header{grid-template-columns:72px 1fr;gap:12px}.profile-image{width:72px;height:72px}.contact-info{flex-flow:row;display:flex}.project-image-thumbnail{width:88px;height:88px}}.resume{color:#10221a;background:radial-gradient(circle at 100% 0,#1465201a,#0000 28%),radial-gradient(circle at 0 100%,#0c63d614,#0000 30%),linear-gradient(#f8fcfa 0%,#fff 52%,#f7fbff 100%);border:1px solid #dbe6df;border-radius:24px;max-width:1160px;margin:clamp(14px,2.4vw,30px) auto;padding:clamp(18px,2.6vw,32px);font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;box-shadow:0 22px 52px #102d231f}.resume:hover{transform:translateY(-1px);box-shadow:0 28px 58px #102d2326}.resume.fade-in{opacity:1;animation:.42s ease-out resumeReveal;transform:none}@keyframes resumeReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.resume-header{grid-template-columns:132px 1fr;align-items:center;gap:24px;margin-bottom:18px}.profile-image{border:3px solid #fff;width:132px;height:132px;box-shadow:0 14px 28px #102d2333}.resume-header__content{gap:10px;min-width:0;display:grid}.resume-kicker{color:#285440;letter-spacing:.08em;text-transform:uppercase;background:#e9f4ee;border:1px solid #d4e6dc;border-radius:999px;align-items:center;width:max-content;padding:4px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.resume-title{color:#103024;margin:0;font-size:clamp(2rem,1.5rem + 1.4vw,3rem);font-weight:900;line-height:1.03}.resume-signals{flex-wrap:wrap;gap:8px;display:flex}.resume-signal{color:#24493a;background:#fff;border:1px solid #d5e4db;border-radius:999px;align-items:center;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.details h3{letter-spacing:.09em;text-transform:uppercase;color:#2b5a45;border:0;align-items:center;gap:10px;margin:22px 0 10px;padding:0;font-size:.86rem;font-weight:800;display:flex}.details h3:before{content:"";background:linear-gradient(90deg,#146520 0%,#0c63d6 100%);border-radius:999px;width:24px;height:2px}.about-lead{color:#2e4740;white-space:pre-line;background:#fff;border:1px solid #dce8e1;border-radius:14px;margin:0;padding:16px 18px;line-height:1.72;box-shadow:0 8px 22px #102d2312}.contact-info{flex-flow:row;justify-content:flex-start;align-items:center;gap:12px;margin:6px 0 4px;display:flex}.contact-info p{margin:0}.contact-link{background:#fff;border:1px solid #d6e4dc;border-radius:14px;width:56px;height:56px;box-shadow:0 6px 14px #102d2314}.contact-link:hover{transform:translateY(-2px);box-shadow:0 10px 18px #102d2324}.contact-icon{width:28px;height:28px}.skills-grid{gap:8px 10px}.skill-item{color:#1f3f32;background:#f2f8f4;border:1px solid #d8e8de;border-radius:999px;padding:6px 11px;font-size:.86rem;font-weight:700}.experience-container,.projects-grid,.certifications-container,.courses-container,.education-container,.publications-container,.awards-container{margin-top:8px}.experience-card{background:#fff;border:1px solid #dce7e1;border-radius:14px;gap:12px;padding:16px 16px 16px 14px;box-shadow:0 8px 22px #102d230f}.timeline{width:24px}.timeline-marker{border:1px solid #fff;width:12px;height:12px;box-shadow:0 0 0 4px #e6f3ec}.timeline-line{background:linear-gradient(#d4e3db 0%,#ebf2ee 100%);width:2px}.job-title{color:#112a21;font-size:1.05rem}.job-company{color:#315245;font-style:normal;font-weight:600}.job-dates,.job-location{font-size:.84rem}.job-description{color:#355148;margin-top:6px;line-height:1.58}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:14px}.project-card{background:#fff;border:1px solid #dce7e1;border-radius:14px;grid-template-columns:104px 1fr;gap:12px;padding:14px;box-shadow:0 8px 22px #102d230f}.project-cover{border-radius:10px;width:104px;height:104px}.project-main{gap:7px}.project-desc{color:#425d52;line-height:1.52}.project-tags .tag{color:#124f9f;background:#edf5ff;border:1px solid #d6e6ff}.project-meta{margin-top:2px}.cert-card,.course-card,.education-card,.publication-card,.award-card{background:#fff;border:1px solid #dce7e1;border-radius:14px;box-shadow:0 8px 22px #102d230f}.cert-card,.course-card,.publication-card,.award-card{padding:14px}.cert-title,.course-title,.edu-institution,.publication-title,.award-title{color:#0f2a20}.cert-skills,.publication-description,.award-description,.course-desc,.edu-degree{color:#425d52}.courses-container{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.course-icon{background:#fff;border:1px solid #dce7e1}.certifications-container,.publications-container,.awards-container{gap:12px}.publication-link,.show-credential{background:linear-gradient(135deg,#0f5a3f 0%,#146520 100%);box-shadow:0 8px 16px #1465203d}.publication-link:hover,.show-credential:hover{background:linear-gradient(135deg,#0d4f38 0%,#125b1d 100%);text-decoration:none}.show-all-button,.show-less-button{color:#174835;background:#fff;border:1px solid #cfe0d6;box-shadow:0 4px 10px #102d2314}.show-all-button:hover,.show-less-button:hover{background:#eff7f3;border-color:#b9d3c3}.project-more{color:#1b5a3e!important}.modal{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a100ebd}.modal-content{border:1px solid #d9e5df;border-radius:16px}.modal-image{border-radius:12px}.projects-grid .toggle-projects,.courses-container .toggle-courses,.certifications-container .toggle-certifications,.publications-container .toggle-publications,.experience-container .toggle-experience{text-align:center;grid-column:1/-1;justify-self:center;margin-top:12px}@media (width<=980px){.resume{border-radius:18px;padding:18px}.resume-header{grid-template-columns:102px 1fr;gap:16px}.profile-image{width:102px;height:102px}.projects-grid{grid-template-columns:1fr}.project-card{grid-template-columns:88px 1fr;padding:12px}.project-cover{width:88px;height:88px}.cert-card{grid-template-columns:40px 1fr}.cert-thumb{grid-column:1/-1;justify-self:start;margin-top:8px}.cert-thumb img{width:100%;max-height:180px}}@media (width<=680px){.resume{margin:10px auto;padding:14px}.resume-header{text-align:center;grid-template-columns:1fr;justify-items:center;margin-bottom:14px}.resume-header__content{justify-items:center}.profile-image{width:86px;height:86px}.resume-signals{justify-content:center}.contact-info{gap:10px}.contact-link{border-radius:12px;width:50px;height:50px}.contact-icon{width:24px;height:24px}.education-container,.courses-container{grid-template-columns:1fr}}
