@import url(https://fonts.googleapis.com/css2?family=Mulish:wght@400;500;700&display=swap);:root{--header-height:60px}*,:after,:before{box-sizing:border-box;font-family:Mulish,sans-serif}main{height:100dvh;scroll-snap-type:y mandatory}body,html,main{scroll-behavior:smooth}body,html{font-weight:400;height:100%;margin:0}button{font-weight:500}h1,h2,h3{font-weight:700}.container{margin:auto;max-width:800px;padding:20px}section{align-items:center;background:#f8f3d9;color:#504b38;display:flex;justify-content:center;min-height:100vh;padding-top:60px;padding-top:var(--header-height);scroll-snap-align:start}section.about,section.contact{background:#ebe5c2}section.projects{align-items:flex-start;padding-bottom:0}.site-header{align-items:center;background:#504b38;box-shadow:0 8px 6px #0000001a;display:flex;height:60px;height:var(--header-height,60px);justify-content:space-between;left:0;position:fixed;top:0;width:100%;z-index:1000}.site-header .logo{font-size:1.3rem;font-weight:700;left:20px;position:absolute;top:25%;transform:translateY(-50%)}.site-header .logo a{color:#f8f3d9;text-decoration:none}.site-header nav{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.site-header nav.hidden-on-load{display:none}.site-header nav a{color:#f8f3d9;font-size:1rem;font-size:var(--nav-font-size,1rem);font-weight:600;margin:0 30px;margin:0 var(--nav-margin,30px);position:relative;text-decoration:none;transition:color .3s ease;z-index:1}.site-header nav a:hover{color:#b9b28a}.site-header nav a.active{color:#504b38}.bubble-indicator{background-color:#ebe5c2;border-radius:10px;height:32px;left:0;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:left .3s ease,width .3s ease,opacity .3s ease;width:0;z-index:0}.menu-button{bottom:5px;cursor:pointer;display:none;position:absolute;right:20px;z-index:1100}.home-content{align-items:center;display:flex}.home-card{background:#f8f3d9;border-radius:10px;margin:0;max-width:800px}.home-left{align-items:center;display:flex;flex:1 1;justify-content:center}.home-left .avatar{filter:drop-shadow(-10px 0 6px rgba(0,0,0,.3));height:auto;width:250px}.home-right{flex:2 1;padding-bottom:50px;padding-left:20px}.home-right .greeting,.home-right .subtitle{font-size:1.1rem;margin:0}.home-right .name{font-size:2.5rem;margin:0}.home-right .subtitle{color:#504b38;font-style:italic}.home-right .description{color:#504b38;font-size:1rem;line-height:1.5;margin:0;min-width:278px;padding-top:50px}.home-divider{background-color:#504b38;border:none;height:1px;margin:0;width:100%}.home-divider,.home-under-line{align-items:center;display:flex;justify-content:center}.home-under-line{flex-wrap:wrap;gap:20px;margin-top:10px}.home-action-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.home-action-buttons a{text-decoration:none}.home-action-buttons button{align-items:center;background-color:#b9b28a;border:none;border-radius:8px;color:#f8f3d9;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:6px;margin:0;padding:8px 14px;transition:background-color .3s ease}.home-action-buttons button img{height:24px;width:24px}.home-action-buttons button:hover{background-color:#504b38}.home-resume-button a,.home-social-links a{align-items:center;display:flex;text-decoration:none}.home-resume-button img,.home-social-links img{height:40px;transition:transform .2s ease;width:40px}.home-resume-button a:hover img,.home-social-links a:hover img{transform:scale(1.1)}.icon-wrapper{display:inline-block;height:40px;position:relative;width:40px}.icon-wrapper img{height:100%;left:0;position:absolute;top:0;transition:opacity .3s ease,transform .2s ease;width:100%}.icon-wrapper img.hover{opacity:0}.home-social-links a:hover .icon-wrapper img.hover{opacity:1;transform:scale(1.1)}.home-social-links a:hover .icon-wrapper img.default{opacity:0}.home-social-links{display:flex;flex:1 1;flex-wrap:wrap;gap:15px;justify-content:flex-end}.about .description{line-height:1.5}.projects h2{margin:0;text-align:center}.project-card{background:#ebe5c2;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin:20px 0;padding:20px;scroll-margin-top:60px;scroll-margin-top:var(--header-height)}.project-header{align-items:center;display:flex;justify-content:space-between;min-height:40px}.project-header .title{font-size:1.4rem;line-height:1;margin:0}.project-header .githubIcon{align-items:center;display:flex;height:30px;justify-content:center;transition:transform .3s ease-in-out;width:30px}.project-header .githubIcon:hover{transform:scale(1.1)}.github-link-icon{height:auto;width:100%}.project-subheader p{font-size:1rem;font-style:italic;margin:0 0 20px}.project-stack{margin:10px 0 20px}.tag{align-items:center;background:#b9b28a;border-radius:4px;color:#f8f3d9;display:inline-flex;font-size:.9rem;font-weight:700;margin:3px 6px 3px 0;min-height:24px;padding:4px 10px 4px 28px;position:relative;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.tag:hover{box-shadow:0 2px 6px #00000026;transform:scale(1.05)}.project-header .githubIcon,.tag{cursor:pointer}.tag-icon-container{left:6px;position:absolute;top:50%;transform:translateY(-50%)}.tag-icon,.tag-icon-container{height:18px;width:18px}.tag.no-icon{padding-left:12px}.project-divider{align-items:center;background-color:#504b38;border:none;display:flex;height:1px;justify-content:center;margin:0}.project-description{font-size:.95rem;line-height:1.5;margin:20px 0 10px}.gallery-toggle-btn{align-items:center;background-color:#b9b28a;border:none;border-radius:8px;color:#f8f3d9;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:6px;justify-content:center;margin:20px auto 0;padding:10px 14px;transition:all .3s ease-in-out}.gallery-toggle-btn:hover{background-color:#504b38;transform:scale(1.05)}.arrow-icon{height:20px;transition:transform .3s ease;width:20px}.project-gallery{background-color:#b9b28a;border-radius:8px;gap:15px;margin-top:20px;padding:20px}.gallery-item,.project-gallery{display:flex;flex-direction:column}.gallery-item{align-items:center}.gallery-item img{border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:100%}.gallery-item p{color:#f8f3d9;font-size:1rem;font-weight:700;margin-top:8px;text-align:center}.clickable-gallery-image{cursor:zoom-in}.fullscreen-overlay{align-items:center;background-color:#000000e6;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.swipe-hint{display:none}.fullscreen-image{border-radius:8px;box-shadow:0 0 20px #fff3;cursor:zoom-out;max-height:90%;max-width:90%}.fullscreen-close-btn{background:#0006;border:none;cursor:pointer;padding:10px 10px 7px;position:absolute;right:300px;top:40px;z-index:10000}.fullscreen-close-btn img{height:32px;width:32px}.fullscreen-caption{background:#000000a6;border-radius:10px;bottom:10px;color:#f8f3d9;font-size:.9rem;left:50%;max-width:85%;padding:10px 16px;position:absolute;text-align:center;transform:translateX(-50%);z-index:15}.carousel-arrow{align-items:center;background:#0006;border:none;cursor:pointer;display:flex;justify-content:center;padding:10px 16px;position:absolute;top:50%;transform:translateY(-50%);-webkit-user-select:none;user-select:none;z-index:12}.carousel-arrow.left{left:300px}.carousel-arrow.right{right:300px}.arrow-inner{color:#f8f3d9;font-size:2.5rem;transform:translateY(25px);transform:translateY(-4px)}.contact-section{justify-content:center;padding:60px 0 0}.contact-card,.contact-section{background:#ebe5c2;display:flex}.contact-card{border-radius:10px;flex-wrap:wrap;max-width:800px;padding:20px;position:relative;width:100%}.contact-left,.contact-right{flex:1 1;min-width:300px}.contact-left h2{margin:0 0 20px}.contact-left p{line-height:1.5rem}.contact-right{align-items:flex-end;display:flex;flex:1 1;flex-direction:column;justify-content:flex-end;min-width:300px;text-align:right}form label{display:block;font-weight:700;margin-top:10px}input,textarea{background-color:#f8f3d9;border:1px solid #504b38;border-radius:8px;margin-top:5px;padding:10px;resize:none;width:100%}.input-error{border-color:red}.error{color:red;font-size:.85rem;margin-top:4px}button{background-color:#b9b28a;border:none;border-radius:6px;color:#f8f3d9;cursor:pointer;padding:13px 24px;transition:background-color .3s ease}button:hover{background-color:#504b38}.contact-submit-row{align-items:center;display:flex;justify-content:space-between;margin:20px 0 0;width:100%}.contact-submit-row>*{flex-shrink:1}.recaptcha-wrapper{height:47px;overflow:hidden;width:183px}.recaptcha{transform:scale(.6);transform-origin:top left}.contact-submit-row button{align-self:flex-start;max-width:160px;width:100%}.contact-right p{margin-bottom:20px;margin-top:20px}.contact-email a{color:#504b38;font-weight:500;text-decoration:none}.contact-email a:hover{color:#b9b28a;text-decoration:underline}.contact-links-row{align-items:flex-end;display:flex;flex-direction:column;gap:0}.contact-links-row p{font-weight:700;margin:16px 0 0;text-align:right}.contact-social-links{display:flex;gap:10px}.contact-icon-wrapper{display:inline-block;height:34px;position:relative;width:34px}.contact-icon-wrapper img{height:auto;left:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.contact-icon-wrapper img.hover{opacity:0}.contact-icon-wrapper:hover img.hover{opacity:1}.contact-icon-wrapper:hover img.default{opacity:0}@media (max-width:600px){section{min-height:100lvh}section.home{align-items:flex-start;min-height:100svh}.site-header .logo{font-size:1.2rem;left:50%;top:30%;transform:translate(-50%,-50%)}.menu-button{display:block;top:20%}.menu-button img{height:34px;width:34px}.site-header nav{background:#504b38;box-shadow:0 8px 6px #0000001a;display:flex;flex-direction:column;position:fixed;top:60px;top:var(--header-height);transform:translateX(170%);transition:transform .3s ease;width:31%}.site-header nav.active{transform:translateX(66%)}.site-header nav a{border-top:1px solid #b9b28a;color:#f8f3d9;margin:0;padding:10px;text-align:center;text-decoration:none}.site-header nav a.active{color:#504b38}.bubble-indicator{background-color:#ebe5c2;border-radius:0;display:block;opacity:0;pointer-events:none;transition:width .3s ease,height .3s ease,left .3s ease,opacity .3s ease}.site-header nav.active .bubble-indicator{bottom:0;display:block;opacity:1;position:absolute;transform:translateY(50%);z-index:0}.site-header nav:not(.active) .bubble-indicator{display:none}.home-card{margin-top:0;scroll-margin-top:60px}.home-content{flex-direction:column-reverse;text-align:center}.home-right{padding:0;transform-origin:top}.home-right .greeting{font-size:1rem}.home-right .name{font-size:2rem}.home-right .subtitle{font-size:1rem}.home-right .description{font-size:.9rem;margin:0;padding:20px 0;transform-origin:top center}.home-left{margin:0;padding:0;transform-origin:top}.home-left .avatar{height:auto;transform-origin:top;width:200px}.home-divider{transform:scale(80%);transform-origin:top center}.home-under-line{flex-direction:column}.home-action-buttons{font-size:.9rem;justify-content:center;width:100%}.home-action-buttons button{border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 14px;transition:background-color .3s ease}.home-action-buttons button img{height:20px;width:20px}.home-social-links{gap:30px;justify-content:center;margin-top:15px;position:relative}section.about{align-items:center;justify-content:center}.about .description,.about .header{text-align:center}section.projects{padding-bottom:0}.clickable-gallery-image{cursor:zoom-in;transition:transform .2s ease}.clickable-gallery-image:hover{transform:scale(1.03)}@keyframes swipeWave{0%{opacity:0;transform:translateX(-40vw) translateY(0) rotate(-45deg)}10%{opacity:1}25%{transform:translateX(40vw) translateY(0) rotate(45deg)}50%{transform:translateX(-40vw) translateY(0) rotate(-45deg)}75%{transform:translateX(40vw) translateY(0) rotate(45deg)}90%{opacity:1}to{opacity:0;transform:translateX(-40vw) translateY(0) rotate(-45deg)}}.swipe-hint{animation:swipeWave 2s ease-in-out infinite;bottom:40%;display:flex;height:auto;pointer-events:none;position:absolute;transform:translateX(-50%,0);width:80px;z-index:10}.fullscreen-close-btn{padding:6px 6px 4px;right:20px;top:20px}.fullscreen-close-btn img{height:24px;width:24px}.fullscreen-caption{bottom:0}.carousel-arrow{padding:3px 6px}.carousel-arrow.left{left:5px}.carousel-arrow.right{right:5px}.arrow-inner{font-size:2rem}.contact-left h2,.contact-left p{text-align:center}.contact-submit-row{align-items:flex-end;flex-direction:column;gap:8px}.recaptcha-wrapper{height:59px;width:227px}.recaptcha{transform:scale(.75)}.contact-submit-row button{align-self:flex-end;margin:10px 0;max-width:180px;width:100%}}
/*# sourceMappingURL=main.d6af0477.css.map*/