@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@300;400;600&display=swap);body{-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.topnav{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:#000000d9;border-bottom:1px solid #1a1a1a;box-sizing:border-box;display:flex;font-family:IBM Plex Mono,monospace;font-size:14px;gap:4px;justify-content:center;left:0;padding:0;position:fixed;right:0;top:0;width:100%;z-index:100}.topnav a{color:#888;display:block;letter-spacing:.03em;padding:16px 20px;position:relative;text-align:center;text-decoration:none;transition:color .2s}.topnav a:after{background-color:#00e676;border-radius:2px;bottom:10px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);transition:width .2s ease;width:0}.topnav a:hover{background-color:initial;color:#f0f0f0}.topnav a:hover:after{width:calc(100% - 40px)}.topnav a.active{background-color:initial;color:#00e676}.topnav a.active:after{width:calc(100% - 40px)}@media screen and (max-width:768px){body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}.topnav{border-bottom:none;border-top:1px solid #1a1a1a;bottom:0;font-size:11px;gap:0;left:0;padding:0 0 env(safe-area-inset-bottom);position:fixed;right:0;top:auto}.topnav a{flex:1 1;letter-spacing:.06em;padding:14px 0;text-align:center}.topnav a:after{bottom:auto;height:2px;top:0}.topnav a.active:after,.topnav a:hover:after{width:40%}}:root{--bg:#000;--surface:#0d0d0d;--surface-2:#161616;--border:#222;--accent:#00e676;--accent-dim:#00e67626;--text:#f0f0f0;--text-secondary:#888;--font-body:"Outfit",Arial,sans-serif;--font-mono:"IBM Plex Mono",monospace;--max-width:1100px;--radius:8px}*,:after,:before{box-sizing:border-box}iframe,img,table,video{max-width:100%}body,html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;background-color:#000;background-color:var(--bg);color:#f0f0f0;color:var(--text);font-family:Outfit,Arial,sans-serif;font-family:var(--font-body);font-size:16px;line-height:1.6;margin:0;max-width:100vw;padding-top:49px}.container{display:flex;flex-wrap:wrap;justify-content:center;margin:20px auto;max-width:1100px;max-width:var(--max-width);padding:0 24px}.aboutcontainer{margin:40px auto;max-width:800px;padding:0 24px 100px}.centered-container{align-items:center;background-color:#000;background-color:var(--bg);color:#f0f0f0;color:var(--text);display:flex;flex-direction:column}.center,.row{display:flex;flex-wrap:wrap;justify-content:center}.column{flex:1 0 21%;margin:10px;padding-bottom:10px}.standard{background-color:#000;background-color:var(--bg);color:#f0f0f0;color:var(--text)}h1,h2,h3,h4,h5{font-family:IBM Plex Mono,monospace;font-family:var(--font-mono);font-weight:600;letter-spacing:-.02em;margin:0}p{letter-spacing:.01px}p,p1{color:#f0f0f0;color:var(--text);font-size:17px;line-height:1.7;margin:10px 0;text-align:center}p1{display:block}.p3{font-size:14px;letter-spacing:.5px;line-height:1.6}.lead-text,.p3{text-align:center}.lead-text{color:#888;color:var(--text-secondary);font-size:18px;line-height:1.7;margin:0 auto 16px;max-width:680px}.header{background-color:#000;background-color:var(--bg);border-bottom:1px solid #222;border-bottom:1px solid var(--border);color:#f0f0f0;color:var(--text);font-family:IBM Plex Mono,monospace;font-family:var(--font-mono);font-weight:600;padding:16px 32px;width:100%}.card,.header{text-align:center}.card{background-color:#0d0d0d;background-color:var(--surface);border-radius:8px;border-radius:var(--radius);box-shadow:0 4px 16px #00000080;margin:8px}img{margin-left:5px;margin-right:5px;max-height:9%;max-width:9%}.testimg,img{display:inline-block}.testimg{margin-left:auto;margin-right:auto;max-height:20%;max-width:20%}.imgRight{display:block;float:right;max-height:9%;max-width:9%}.projectImgs{display:inline-block;margin-left:auto;margin-right:auto;max-height:40%;max-width:40%}.homeProjectImgs{max-height:40%}.homeImgs,.homeProjectImgs{height:180px;width:300px}.homeImgs,.homeProjectImgs,.skillsImgs{display:inline-block;margin-left:auto;margin-right:auto;max-width:100%}.skillsImgs{box-shadow:0 4px 8px #0000004d;height:auto;width:auto}.navImgs{display:inline-block;margin-left:auto;margin-right:auto;max-height:75px;max-width:400px;padding:50px 20px;transition:transform .3s ease}.navImgs:hover{transform:scale(1.1)}.meImgs{height:auto;margin-left:auto;margin-right:auto;max-width:225px;padding:50px 10px}.progress-container{background-color:#161616;background-color:var(--surface-2);border-radius:10px;height:20px;overflow:hidden;width:100%}.progress-bar{background-color:#00e676;background-color:var(--accent);height:100%;transition:width .5s ease-in-out}footer{background-color:#000;background-color:var(--bg);border-top:1px solid #222;border-top:1px solid var(--border);color:#888;color:var(--text-secondary);font-family:IBM Plex Mono,monospace;font-family:var(--font-mono);font-size:14px;padding:16px 0;width:100%}.certsTxt,footer{text-align:center}.certsTxt{padding-bottom:25px;padding-top:25px}.cert-image{margin-right:20px;max-width:200px}.button{background-color:initial;border:1px solid #00e676;border:1px solid var(--accent);border-radius:8px;border-radius:var(--radius);color:#00e676;color:var(--accent);cursor:pointer;display:inline-block;font-family:IBM Plex Mono,monospace;font-family:var(--font-mono);font-size:13px;padding:8px 18px;text-decoration:none;transition:background-color .2s,color .2s}.button:hover{background-color:#00e676;background-color:var(--accent);color:#000}.centered-badge{display:flex;justify-content:center;width:100%}@media screen and (max-width:900px){.container{padding:10px;width:90%}.aboutcontainer{padding:0 16px 60px}p,p1{font-size:16px}.p3{font-size:10px}.navImgs{max-height:47px;max-width:250px;padding:30px 5px}.homeImgs{max-height:40px;max-width:225px;padding:30px 5px}.center{max-width:95%}.header{padding:12px}.row{align-items:center;flex-direction:column}.column{padding:5px;width:100%}.card{padding:15px;width:100%}footer{font-size:12px;padding:12px}.cert-image{max-width:100px}}.projects-section{margin:0 auto;max-width:1100px;padding:0 0 80px;width:100%}.projects-header{display:flex;flex-direction:column;gap:8px;margin-bottom:40px;padding:0 4px}.projects-eyebrow{color:#00e676;display:block;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.22em}.projects-heading{color:#f0f0f0;font-family:IBM Plex Mono,monospace;font-size:clamp(28px,4vw,44px);font-weight:600;letter-spacing:-.03em;line-height:1}.projects-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.project-card{background:#080808;border-radius:10px;cursor:pointer;height:340px;isolation:isolate;overflow:hidden;position:relative}.project-card--featured{grid-column:1/-1;height:460px}.pc-media{inset:0;position:absolute;z-index:1}.pc-image{display:block;filter:brightness(.7) saturate(.8);height:100%;margin:0;max-height:none;max-width:none;object-fit:cover;object-position:center;transition:transform .7s cubic-bezier(.4,0,.2,1),filter .7s ease;width:100%}.project-card:hover .pc-image{filter:brightness(.55) saturate(.6);transform:scale(1.07)}.pc-overlay{background:linear-gradient(180deg,#0000,#00000026 25%,#000000b3 60%,#000000f7);inset:0;position:absolute;transition:background .5s ease;z-index:2}.project-card:hover .pc-overlay{background:linear-gradient(180deg,#00000040,#00000080 40%,#000000eb 70%,#000000fa)}.pc-glow{background:radial-gradient(circle,#00e676 0,#0000 70%);background:radial-gradient(circle,var(--accent,#00e676) 0,#0000 70%);border-radius:50%;bottom:-60px;height:240px;left:-60px;opacity:.1;pointer-events:none;position:absolute;transition:opacity .5s ease,transform .5s ease;width:240px;z-index:3}.project-card:hover .pc-glow{opacity:.22;transform:scale(1.2)}.pc-index{color:hsla(0,0%,100%,.035);font-family:IBM Plex Mono,monospace;font-size:110px;font-weight:700;line-height:1;pointer-events:none;position:absolute;right:16px;top:-8px;transition:color .5s ease;-webkit-user-select:none;user-select:none;z-index:4}.project-card:hover .pc-index{color:#ffffff0f}.pc-shimmer{background:linear-gradient(105deg,#0000 35%,hsla(0,0%,100%,.035) 50%,#0000 65%);inset:0;pointer-events:none;position:absolute;transform:translateX(-120%);transition:transform 0s;z-index:5}.project-card:hover .pc-shimmer{transform:translateX(220%);transition:transform .85s cubic-bezier(.4,0,.2,1)}.pc-content{bottom:0;left:0;padding:28px 28px 24px;position:absolute;right:0;transform:translateY(0);transition:transform .45s cubic-bezier(.4,0,.2,1);z-index:6}.project-card:hover .pc-content{transform:translateY(-6px)}.pc-meta{align-items:center;display:flex;gap:10px;margin-bottom:10px}.pc-category{color:#00e676;color:var(--accent,#00e676);letter-spacing:.18em;opacity:.9;text-transform:uppercase}.pc-category,.pc-year{font-family:IBM Plex Mono,monospace;font-size:9.5px}.pc-year{color:#ffffff47;letter-spacing:.08em}.pc-year:before{color:#fff3;content:"·";margin-right:10px}.pc-title{color:#f2f2f2;font-family:IBM Plex Mono,monospace;font-size:18px;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:0 0 4px}.project-card--featured .pc-title{font-size:26px}.pc-role{color:#fff6;font-size:12px;letter-spacing:.01em}.pc-desc,.pc-role{font-family:Outfit,sans-serif;margin:0;text-align:left}.pc-desc{color:#ffffff94;font-size:13px;line-height:1.65;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s cubic-bezier(.4,0,.2,1),opacity .35s ease .08s,margin .35s ease}.project-card:hover .pc-desc{margin:10px 0 0;max-height:90px;opacity:1}.project-card--featured .pc-desc{margin:10px 0 0;max-height:72px;opacity:.6}.project-card--featured:hover .pc-desc{opacity:1}.pc-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:0;margin-top:12px;max-height:0;opacity:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1) .05s,opacity .3s ease .12s,margin .3s ease}.project-card:hover .pc-tags{margin-bottom:14px;max-height:60px;opacity:1}.project-card--featured .pc-tags{margin-bottom:14px;max-height:60px;opacity:.8}.project-card--featured:hover .pc-tags{opacity:1}.pc-tag{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:3px;color:#ffffff80;font-family:IBM Plex Mono,monospace;font-size:9.5px;letter-spacing:.05em;padding:3px 9px;transition:background .2s,border-color .2s,color .2s}.project-card:hover .pc-tag{background:#ffffff17;border-color:#ffffff29;color:#ffffffb3}.pc-cta{align-items:center;color:#00e676;color:var(--accent,#00e676);display:inline-flex;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500;gap:7px;letter-spacing:.03em;opacity:0;text-decoration:none;transform:translateX(-10px);transition:opacity .3s ease .18s,transform .3s ease .18s,color .2s ease}.project-card:hover .pc-cta{opacity:1;transform:translateX(0)}.project-card--featured .pc-cta{opacity:.75;transform:translateX(0)}.project-card--featured:hover .pc-cta{opacity:1}.pc-arrow{display:inline-block;transition:transform .2s ease}.pc-cta:hover .pc-arrow{transform:translateX(4px)}.pc-line{background:#00e676;background:var(--accent,#00e676);bottom:0;height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left center;transition:transform .55s cubic-bezier(.4,0,.2,1);width:100%;z-index:7}.project-card:hover .pc-line{transform:scaleX(1)}@media (max-width:768px){.projects-grid{gap:12px;grid-template-columns:1fr}.project-card,.project-card--featured{height:340px}.project-card--featured{grid-column:auto}.pc-index{font-size:80px}.pc-desc{margin:8px 0 0;max-height:80px;opacity:.6}.pc-tags{margin-bottom:12px;max-height:60px;opacity:.8}.pc-cta{opacity:.8;transform:translateX(0)}.pc-content{padding:20px}.pc-title{font-size:17px}.project-card--featured .pc-title{font-size:20px}}.cert-static-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:600px;width:100%}.grid-card{aspect-ratio:1/1;background-color:#f0f0f0;background-position:50%;background-repeat:no-repeat;background-size:cover;cursor:default;overflow:hidden;position:relative;transition:transform .25s,box-shadow .25s}.grid-card:hover{box-shadow:0 8px 24px #00000080;transform:translateY(-3px);z-index:1}.grid-card--featured{aspect-ratio:2/1;background-size:cover;grid-column:span 2}.grid-card-label{background:linear-gradient(0deg,#000000d9 0,#0000);bottom:0;left:0;opacity:0;padding:10px 12px 8px;position:absolute;right:0;transition:opacity .2s}.grid-card:hover .grid-card-label{opacity:1}.grid-card-label span{color:#fff;font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.05em;line-height:1.4}@media (max-width:768px){.cert-static-grid{gap:5px;max-width:100%}}@media (max-width:480px){.cert-static-grid{gap:4px;grid-template-columns:repeat(2,1fr)}.grid-card--featured{aspect-ratio:1/1;grid-column:span 1}.grid-card-label{background:linear-gradient(0deg,#000000bf 0,#0000);opacity:1;padding:6px 8px 5px}.grid-card-label span{font-size:7px}}.pyramid-container{align-items:center;display:flex;justify-content:center;padding:16px 0 8px}.pyramid{gap:15px}.layer,.pyramid{align-items:center;display:flex;flex-direction:column}.layer{border-radius:12px;box-sizing:initial;color:#fff;font-weight:700;height:80px;justify-content:center;padding:15px;position:relative;text-align:center;transition:transform .3s ease,box-shadow .3s ease;width:450px}.layer:hover{box-shadow:0 8px 15px #0003;transform:scale(1.05)}.database{background-color:#4caf50}.backend{background-color:#2196f3;width:400px}.frontend{background-color:#f44336;width:350px}.hosting{background-color:#9e9e9e;width:300px}.backend-icon,.database-icon{font-size:40px}.frontend-icon{font-size:45px}.hosting-icon{font-size:30px}.icon-group{display:flex;gap:10px;justify-content:center}h3{font-size:18px}h3,p2{margin:5px 0}p2{font-size:14px;opacity:.9}@media (max-width:768px){.layer{border-radius:12px;box-sizing:initial;color:#fff;flex-direction:column;font-weight:700;height:80px;padding:15px;position:relative;text-align:center;transition:transform .3s ease,box-shadow .3s ease;width:275px}.layer,.pyramid-container{align-items:center;display:flex;justify-content:center}.pyramid-container{padding:8px 0}.backend{background-color:#2196f3;width:240px}.frontend{background-color:#f44336;width:205px}.hosting{background-color:#9e9e9e;width:170px}}.homeImgsContainer{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);width:100%}.homeImgsContainer a{align-items:center;background-color:#0d0d0d;border:1px solid #1e1e1e;border-radius:8px;box-sizing:border-box;display:flex;height:120px;justify-content:center;padding:24px;transition:border-color .2s}.homeImgsContainer a:hover{border-color:#333}.HomeLogos{display:block;height:100%;max-height:100%;max-width:100%;object-fit:contain;width:100%}.logo-superloop{padding:8px}.logo-ibm{padding:18px}.logo-envizi{padding:12px}.logo-blackhawk,.logo-tbd{padding:10px}.logo-codecamp{padding:14px}.logo-susfc,.logo-usyd{padding:8px}@media screen and (max-width:768px){.homeImgsContainer{gap:10px;grid-template-columns:repeat(2,1fr);padding:4px 0}.homeImgsContainer a{height:96px;padding:18px}.logo-superloop{padding:6px}.logo-ibm{padding:14px}.logo-envizi{padding:10px}.logo-blackhawk,.logo-tbd{padding:8px}.logo-codecamp{padding:12px}.logo-susfc,.logo-usyd{padding:6px}}.hero{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:800px;padding:100px 24px 80px;text-align:center}.hero-label{color:#00e676;font-size:11px;letter-spacing:.2em;margin-bottom:24px}.hero-label,.hero-name{font-family:IBM Plex Mono,monospace}.hero-name{color:#f0f0f0;font-size:clamp(40px,7vw,80px);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin-bottom:16px}.hero-title{color:#888;font-size:clamp(16px,2.5vw,22px);font-weight:400;letter-spacing:.01em;margin:0 0 20px}.hero-sub,.hero-title{font-family:Outfit,sans-serif}.hero-sub{color:#666;font-size:16px;line-height:1.7;margin:0 auto 28px;max-width:560px;text-align:center}.hero-location{align-items:center;color:#555;display:inline-flex;font-family:IBM Plex Mono,monospace;font-size:12px;gap:8px;letter-spacing:.05em;margin-bottom:36px}.hero-dot{animation:pulse 2s ease-in-out infinite;background-color:#00e676;border-radius:50%;display:inline-block;height:7px;width:7px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.hero-btn-primary{background-color:#00e676;border-radius:6px;color:#000;display:inline-block;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;letter-spacing:.02em;padding:12px 28px;text-decoration:none;transition:background-color .2s,transform .15s}.hero-btn-primary:hover{background-color:#00c853;transform:translateY(-1px)}.hero-btn-secondary{background-color:initial;border:1px solid #333;border-radius:6px;color:#888;display:inline-block;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;letter-spacing:.02em;padding:12px 28px;text-decoration:none;transition:border-color .2s,color .2s,transform .15s}.hero-btn-secondary:hover{border-color:#888;color:#f0f0f0;transform:translateY(-1px)}.home-section{align-items:center;border-top:1px solid #111;display:flex;flex-direction:column;margin:0 auto;max-width:1100px;padding:60px 24px;width:100%}.projects-section{border-top:none;padding-top:40px}.section-label{color:#00e676;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.2em;margin-bottom:28px}@media screen and (max-width:768px){.hero{padding:70px 20px 60px}.hero-actions{align-items:stretch;flex-direction:column}.hero-btn-primary,.hero-btn-secondary{text-align:center}.home-section{padding:40px 16px}}.contact-container{margin:0 auto;max-width:560px;padding:80px 24px 100px}.contact-container .header{border:none;margin-bottom:8px;padding:0 0 8px}.contact-container .header h2{color:#f0f0f0;font-family:IBM Plex Mono,monospace;font-size:clamp(28px,5vw,42px);font-weight:600;letter-spacing:-.03em}.contact-container>p{color:#666;font-size:15px;margin-bottom:40px;text-align:center}.contact-form{gap:20px}.contact-form,.form-group{display:flex;flex-direction:column}.form-group{gap:6px;text-align:left;width:100%}.form-group label{color:#555;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.form-group input,.form-group textarea{background-color:#0d0d0d;border:1px solid #2a2a2a;border-radius:6px;box-sizing:border-box;color:#e0e0e0;font-family:Outfit,sans-serif;font-size:15px;outline:none;padding:12px 14px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#00e676}.form-group textarea{min-height:120px;resize:vertical}.contact-container button,.contact-form button[type=submit]{align-self:flex-start;background-color:#00e676;border:none;border-radius:6px;color:#000;cursor:pointer;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;letter-spacing:.03em;margin-top:4px;padding:12px 28px;transition:background-color .2s,transform .15s}.contact-container button:hover,.contact-form button[type=submit]:hover{background-color:#00c853;transform:translateY(-1px)}@media screen and (max-width:640px){.contact-container{padding:60px 16px 80px}.form-group input,.form-group textarea{width:100%}}.about-page{margin:0 auto;max-width:800px;padding:0 24px 100px}.about-header{border-bottom:1px solid #1a1a1a;padding:80px 0 60px;text-align:center}.about-header-label{color:#00e676;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.2em;margin-bottom:20px}.about-header-name{color:#f0f0f0;font-family:IBM Plex Mono,monospace;font-size:clamp(32px,6vw,56px);font-weight:600;letter-spacing:-.03em;margin-bottom:12px}.about-header-sub{color:#666;font-family:Outfit,sans-serif;font-size:16px;margin:0 0 24px;text-align:center}.about-links{display:flex;gap:16px;justify-content:center}.about-link{border:1px solid #2a2a2a;border-radius:6px;color:#888;font-family:IBM Plex Mono,monospace;font-size:13px;padding:8px 16px;text-decoration:none;transition:color .2s,border-color .2s}.about-link:hover{border-color:#00e676;color:#00e676}.about-section{border-bottom:1px solid #1a1a1a;padding:48px 0}.about-section:last-child{border-bottom:none}.about-section-title{color:#00e676;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;letter-spacing:.1em;margin-bottom:28px;text-transform:uppercase}.about-section-intro{color:#666;font-family:Outfit,sans-serif;font-size:15px;line-height:1.7;margin:0 0 28px}.ds-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.ds-card{background:#0a0a0a;border:1px solid #1e1e1e;border-radius:8px;padding:24px 20px;transition:border-color .2s}.ds-card:hover{border-color:#333}.ds-card-icon{color:#00e676;font-size:20px;margin-bottom:12px;opacity:.8}.ds-card-icon,.ds-card-title{font-family:IBM Plex Mono,monospace}.ds-card-title{color:#d0d0d0;font-size:12px;font-weight:500;letter-spacing:.02em;margin-bottom:10px}.ds-card-desc{color:#555;font-family:Outfit,sans-serif;font-size:13px;line-height:1.65}.skills-grid{display:flex;flex-direction:column;gap:24px}.skill-category-title{color:#555;font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.05em;margin-bottom:10px;text-transform:uppercase}.skill-tags{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{background-color:#0d0d0d;border:1px solid #2a2a2a;border-radius:4px;color:silver;font-family:IBM Plex Mono,monospace;font-size:12px;padding:4px 12px;transition:border-color .2s,color .2s}.skill-tag:hover{border-color:#00e676;color:#00e676}.timeline{display:flex;flex-direction:column;gap:0}.timeline-item{grid-gap:24px;border-bottom:1px solid #111;display:grid;gap:24px;grid-template-columns:180px 1fr;padding:28px 0}.timeline-item:last-child{border-bottom:none}.timeline-meta{display:flex;flex-direction:column;gap:4px;padding-top:2px}.timeline-date{color:#555;font-size:11px;letter-spacing:.03em}.timeline-company,.timeline-date{font-family:IBM Plex Mono,monospace}.timeline-company{color:#00e676;font-size:12px;font-weight:500}.timeline-role{color:#e0e0e0;font-family:Outfit,sans-serif;font-size:16px;font-weight:600;line-height:1.4;margin-bottom:10px}.timeline-desc{color:#777;margin:0 0 10px;text-align:left}.timeline-desc,.timeline-list{font-family:Outfit,sans-serif;font-size:14px;line-height:1.7}.timeline-list{color:#666;margin:8px 0 0;padding-left:20px}.timeline-list li{margin-bottom:4px}.timeline-link{color:#555;font-family:IBM Plex Mono,monospace;font-size:12px;text-decoration:none;transition:color .2s}.timeline-link:hover{color:#00e676}.about-list{color:#777;font-family:Outfit,sans-serif;font-size:15px;line-height:1.8;margin:0;padding-left:20px}.about-list li{margin-bottom:6px}@media screen and (max-width:640px){.about-page{padding:0 16px 60px}.about-header{padding:60px 0 40px}.ds-cards,.timeline-item{grid-template-columns:1fr}.timeline-item{gap:6px}.timeline-meta{align-items:baseline;flex-direction:row;gap:12px}}@media screen and (max-width:900px) and (min-width:641px){.ds-cards{grid-template-columns:1fr 1fr}}.certs-page{font-family:Outfit,sans-serif;margin:0 auto;max-width:860px;padding:0 24px 100px}.certs-header{border-bottom:1px solid #1a1a1a;padding:80px 0 60px;text-align:center}.certs-label{color:#00e676;font-size:11px;letter-spacing:.2em;margin-bottom:20px}.certs-label,.certs-title{font-family:IBM Plex Mono,monospace}.certs-title{color:#f0f0f0;font-size:clamp(28px,5vw,48px);font-weight:600;letter-spacing:-.03em;margin-bottom:16px}.certs-sub{color:#666;font-size:16px;line-height:1.7;margin:0 auto;max-width:560px;text-align:center}.certs-list{display:flex;flex-direction:column;gap:0;margin-top:40px}.cert-card{grid-gap:20px;align-items:center;border-bottom:1px solid #111;border-radius:6px;display:grid;gap:20px;grid-template-columns:48px 100px 1fr 28px;padding:20px 16px;text-decoration:none;transition:background-color .15s}.cert-card:hover{background-color:#0a0a0a}.cert-card:hover .cert-card-arrow{color:#00e676;transform:translate(2px,-2px)}.cert-card-index{color:#333;font-family:IBM Plex Mono,monospace;font-size:11px;text-align:right}.cert-card-img{background-color:#111;border-radius:4px;display:block;height:70px;margin:0;max-height:none;max-width:none;object-fit:contain;padding:4px;width:100px}.cert-card-info{display:flex;flex-direction:column;gap:6px}.cert-card-name{color:#e0e0e0;font-family:Outfit,sans-serif;font-size:15px;font-weight:500;line-height:1.3}.cert-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.cert-card-authority{color:#00e676;font-family:IBM Plex Mono,monospace;font-size:11px}.cert-card-dot{color:#333;font-size:12px}.cert-card-area{color:#555}.cert-card-area,.cert-card-date{font-family:IBM Plex Mono,monospace;font-size:11px}.cert-card-date{color:#444}.cert-card-arrow{color:#333;font-size:16px;justify-self:end;transition:color .15s,transform .15s}@media screen and (max-width:640px){.certs-page{padding:0 16px 60px}.certs-header{padding:60px 0 40px}.cert-card{gap:12px;grid-template-columns:36px 72px 1fr 20px;padding:16px 8px}.cert-card-img{height:50px;width:72px}.cert-card-name{font-size:13px}}
/*# sourceMappingURL=main.16a09beb.css.map*/