@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap);body,html{font-family:Arial,sans-serif}:root{--header-height:3rem;--hue:0;--sat:7%;--title-color:hsl(var(--hue),var(--sat),20%);--title-color-dark:hsl(var(--hue),var(--sat),0%);--text-color:hsl(var(--hue),var(--sat),46%);--body-color:hsl(var(--hue),var(--sat),98%);--container-color:#fff;--body-font:"Poppins",sans-serif;--big-font-size:3.5rem;--h1-font-size:2.25rem;--h2-font-size:1.5rem;--h3-font-size:1.25rem;--normal-font-size:1rem;--small-font-size:0.875rem;--smaller-font-size:0.813rem;--tiny-font-size:0.625rem;--font-normal:400;--font-medium:500;--font-semi-bold:600;--mb-0-25:0.25rem;--mb-0-5:0.5rem;--mb-0-75:0.75rem;--mb-1:1rem;--mb-1-5:1.5rem;--mb-2:2rem;--mb-2-5:2.5rem;--mb-3:3rem;--z-tooltip:10;--z-fixed:100;--z-modal:1000}@media screen and (max-width:992px){:root{--big-font-size:2.75rem;--h1-font-size:1.5rem;--h2-font-size:1.25rem;--h3-font-size:1rem;--normal-font-size:0.938rem;--small-font-size:0.813rem;--smaller-font-size:0.75rem}}body,html{margin:0;padding:0}#root,body,html{max-width:100%;overflow-x:hidden}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body,button,input,textarea{font-family:Poppins,sans-serif;font-family:var(--body-font);font-size:1rem;font-size:var(--normal-font-size)}body{background-color:#fafafa;background-color:var(--body-color);color:#7e6d6d;color:var(--text-color)}h1,h2,h3{color:#372f2f;color:var(--title-color);font-weight:600;font-weight:var(--font-semi-bold)}ul{list-style:none}a{text-decoration:none}button{border:none;cursor:pointer;outline:none}img{height:auto;max-width:100%}.section{padding:6rem 0 2rem}.section__title{color:#372f2f;color:var(--title-color);font-size:2.25rem;font-size:var(--h1-font-size)}.section__subtitle{display:block;font-size:.875rem;font-size:var(--small-font-size);margin-bottom:2.5rem}.section__subtitle,.section__title{text-align:center}.container{margin-left:auto;margin-right:auto;max-width:968px}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.button{background-color:#372f2f;background-color:var(--title-color);border-radius:1rem;color:#fff;color:var(--container-color);display:inline-block;font-weight:500;font-weight:var(--font-medium);padding:1.25rem 2rem}.button:hover{background-color:#000;background-color:var(--title-color-dark)}.button__icon{margin-left:.5rem;margin-left:var(--mb-0-5)}.button--flex{align-items:center;display:inline-flex}@media screen and (max-width:992px){.container{margin-left:1.5rem;margin-left:var(--mb-1-5);margin-right:1.5rem;margin-right:var(--mb-1-5)}.button{padding:1rem 1.75rem}.button__icon{height:22px;width:22px}}@media screen and (max-width:768px){body{margin:0 0 3rem;margin:0 0 var(--header-height) 0}.section{padding:2rem 0 4rem}.section__subtitle{margin-bottom:3rem;margin-bottom:var(--mb-3)}}@media screen and (max-width:350px){:root{--big-font-size:2.25rem}.container{margin-left:1rem;margin-left:var(--mb-1);margin-right:1rem;margin-right:var(--mb-1)}}.header{background-color:var(--body-color);left:0;position:fixed;top:0;width:100%;z-index:var(--z-fixed)}.nav{align-items:center;column-gap:1rem;display:flex;height:calc(var(--header-height) + 1.5rem);justify-content:space-between}.nav__logo,.nav__toggle{color:var(--title-color);font-weight:var(--font-medium)}.nav__list{column-gap:2rem;display:flex}.nav__link{align-items:center;color:var(--title-color);display:flex;flex-direction:column;font-size:var(--small-font-size);font-weight:var(--font-medium);transition:.3s}.nav__close,.nav__icon,.nav__toggle{display:none}.active-link,.nav__link:hover{color:var(--title-color-dark)}.scroll-header{box-shadow:0 -1px 4px #00000026}@media screen and (max-width:768px){.header{bottom:0;top:auto}.nav{height:var(--header-height)}.nav__menu{background-color:var(--body-color);border-radius:1.5rem 1.5rem 0 0;bottom:-100%;box-shadow:0 -1px 4px #00000026;left:0;padding:2rem 1.5rem 4rem;position:fixed;transition:.3s;width:100%}.show-menu{bottom:0}.nav__list{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}.nav__close,.nav__icon{font-size:1.5rem}.nav__close{bottom:.5rem;color:var(--title-color);cursor:pointer;position:absolute;right:1.3rem}.nav__close:hover{color:var(--title-color-dark)}.nav__toggle{cursor:pointer;font-size:1.1rem}.nav__close,.nav__icon,.nav__toggle{display:block}}@media screen and (max-width:350px){.nav__menu{padding:2rem .25rem 4rem}.nav__list{column-gap:0}}.home__container{row-gap:7rem}.home__content{align-items:center;column-gap:2rem;grid-template-columns:116px repeat(2,1fr);padding-top:5.5rem}.home__social{grid-row-gap:1rem;display:grid;grid-template-columns:max-content;row-gap:1rem}.home__social-icon{color:var(--title-color);font-size:1.25rem}.home__social-icon:hover{color:var(--title-color-dark)}.home__title{font-size:var(--big-font-size);margin-bottom:var(--mb-0-25)}.home__subtitle{font-size:var(--h3-font-size);font-weight:var(--font-normal);margin-bottom:var(--mb-1);padding-left:5.4rem;position:relative}.home__subtitle:before{background-color:var(--text-color);content:"";height:1px;left:0;position:absolute;top:1rem;width:70px}.home__description{margin-bottom:var(--mb-3);max-width:400px;text-align:justify}.home__img{animation:profile__animate 8s ease-in-out 1s infinite;background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:60% 40% 30% 70%/60% 30% 70% 40%;box-shadow:inset 0 0 0 9px #ffffff4d;height:300px;justify-self:center;order:1;width:300px}@keyframes profile__animate{0%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{border-radius:30% 60% 70% 40%/50% 60% 30% 60%}to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}}.home__scroll{margin-bottom:2rem;margin-left:9.25rem}.whell{animation:scroll 2s ease infinite}@keyframes scroll{0%{transform:translateY(0)}30%{transform:translateY(3.75rem)}}.home__scroll-name{color:var(--title-color);font-weight:var(--font-medium);margin-left:2px;margin-right:var(--mb-0-25)}.home__scroll-arrow{color:var(--title-color);font-size:1.25rem}@media screen and (max-width:992px){.home__content{column-gap:1.25rem;grid-template-columns:100px repeat(2,1fr)}.home__subtitle{margin-bottom:var(--mb-1);padding-left:3.75rem}.home__subtitle:before{top:.8rem;width:43px}.home__description{margin-bottom:var(--mb-2-5);max-width:none}.home__img{box-shadow:0 4px 10px #000000b3;height:250px;width:250px}.home__scroll{margin-left:7.5rem}}@media screen and (max-width:768px){.home__content{grid-template-columns:.5fr 3fr;padding-top:3.5rem}.home__img{justify-self:auto;order:0}.home__data{grid-column:1/3}.home__img{box-shadow:0 4px 10px #000000b3;height:200px;width:200px}.home__scroll{display:none}}@media screen and (max-width:350px){.home__img{height:180px;width:180px}}.about__container{align-items:center;column-gap:3rem;grid-template-columns:repeat(2,1fr)}.about__img{border-radius:1.5rem;box-shadow:0 4px 10px #00000080;display:block;margin:0 auto;width:350px}.about__info{gap:.5rem;grid-template-columns:repeat(3,140px);margin-bottom:var(--mb-2)}.about__box{background-color:var(--container-color);border:1px solid #0000001a;border-radius:.75rem;box-shadow:0 4px 10px #0000000a;padding:1rem 1.25rem;text-align:center}.about__icon{color:var(--title-color);font-size:1.5rem;margin-bottom:var(--mb-0-5)}.about__title{font-size:var(--small-font-size);font-weight:var(--font-medium)}.about__subtitle{font-size:var(--tiny-font-size);font-weight:var(--font-medium)}.about__description{margin-bottom:var(--mb-2-5);padding:0 2rem 0 0;text-align:justify}@media screen and (max-width:992px){.about__container{grid-template-columns:1fr;row-gap:2.5rem}.about__img{width:220px}.about__box{padding:.75rem .5rem}.about__data{text-align:center}.about__info{justify-content:center}.about__description{margin-bottom:2rem;padding:0 3rem}}@media screen and (max-width:576px){.about__info{grid-template-columns:repeat(3,1fr)}.about__description{padding:0}}@media screen and (max-width:350px){.about__info{grid-template-columns:repeat(2,1fr)}}.project-card{animation:cardFadeIn .5s ease both;background-color:var(--container-color);border:1px solid #0000000f;border-radius:1.25rem;box-shadow:0 4px 16px #0000000a;cursor:pointer;display:flex;flex-direction:column;height:100%;outline:none;overflow:hidden;position:relative;transition:transform .35s cubic-bezier(.25,1,.5,1),box-shadow .35s cubic-bezier(.25,1,.5,1),border-color .3s ease}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-card:focus-visible,.project-card:hover{border-color:#0000001f;box-shadow:0 20px 48px #0000001a;transform:translateY(-8px)}.project-card:focus-visible{outline:2px solid var(--title-color);outline-offset:3px}.project-card__img-wrapper{aspect-ratio:16/10;background-color:hsl(var(--hue),var(--sat),94%);overflow:hidden;position:relative;width:100%}.project-card__img{display:block;height:100%;object-fit:cover;object-position:center top;transition:transform .5s cubic-bezier(.25,1,.5,1);width:100%}.project-card:hover .project-card__img{transform:scale(1.06)}.project-card__overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .3s ease}.project-card:focus-visible .project-card__overlay,.project-card:hover .project-card__overlay{opacity:1}.project-card__cta{border:1.5px solid #fff9;border-radius:2rem;color:#fff;font-size:var(--small-font-size);font-weight:var(--font-semi-bold);letter-spacing:.5px;padding:.5rem 1.25rem;transition:background .2s ease,border-color .2s ease}.project-card:hover .project-card__cta{background:#ffffff26;border-color:#fff}.project-card__body{display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:1.25rem 1.5rem 1.5rem}.project-card__title{color:var(--title-color);font-size:var(--h3-font-size);font-weight:var(--font-semi-bold);line-height:1.25;margin:0}.project-card__desc{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--text-color);display:-webkit-box;flex:1 1;font-size:var(--small-font-size);line-height:1.6;margin:0;overflow:hidden}.project-card__stacks{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.25rem}.project-card__stack-tag{background-color:hsl(var(--hue),var(--sat),93%);border-radius:2rem;color:var(--title-color);font-size:var(--tiny-font-size);font-weight:var(--font-medium);letter-spacing:.3px;padding:.2rem .6rem;transition:background .2s ease}.project-card__stack-tag--more{color:var(--text-color)}@media screen and (max-width:576px){.project-card__desc{display:none}.project-card__body{gap:.35rem;padding:.875rem 1rem 1rem}.project-card__title{font-size:var(--normal-font-size)}.project-card__stacks{padding-top:.1rem}}.projects-featured__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.projects-featured__cta{display:flex;justify-content:center;margin-top:3rem}.projects-featured__cta-btn{align-items:center;background-color:var(--title-color);border:none;border-radius:3rem;box-shadow:0 4px 16px #0000001a;color:var(--container-color);cursor:pointer;display:inline-flex;font-family:var(--body-font);font-size:var(--normal-font-size);font-weight:var(--font-medium);gap:.5rem;letter-spacing:.2px;padding:.875rem 2rem;transition:background-color .3s ease,transform .3s cubic-bezier(.25,1,.5,1),box-shadow .3s ease}.projects-featured__cta-btn i{font-size:1.3rem;transition:transform .3s ease}.projects-featured__cta-btn:hover{background-color:var(--title-color-dark);box-shadow:0 8px 28px #00000026;transform:translateY(-2px)}.projects-featured__cta-btn:hover i{transform:translateX(4px)}.projects-featured__cta-btn:focus-visible{outline:2px solid var(--title-color);outline-offset:3px}@media screen and (max-width:992px){.projects-featured__grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:576px){.projects-featured__grid{gap:.75rem;grid-template-columns:repeat(2,1fr)}.projects-featured__cta-btn{justify-content:center;width:100%}}.skills__container{column-gap:3rem;grid-template-columns:repeat(2,350px);justify-content:center}.skills__content{background-color:var(--container-color);border:1px solid #0000001a;border-radius:1.25rem;box-shadow:0 4px 10px #0000000d;padding:2rem 4rem}.skills__title{font-size:var(--normal-font-size);font-weight:var(--font-medium);margin-bottom:var(--mb-1-5);text-align:center}.skills__box{column-gap:2.5rem;display:flex;justify-content:center}.skills__group{grid-row-gap:1rem;align-items:flex-start;display:grid;row-gap:1rem}.skills__data{column-gap:.5rem;display:flex}.skills .bx-badge-check{color:var(--title-color);font-size:1rem}.skills__name{font-size:var(--normal-font-size);line-height:18px}.skills__level,.skills__name{font-weight:var(--font-medium)}.skills__level{font-size:var(--tiny-font-size)}@media screen and (max-width:992px){.skills__container{grid-template-columns:max-content;row-gap:2rem}}@media screen and (max-width:576px){.skills__container{grid-template-columns:1fr}.skills__content{padding:1.5rem}}@media screen and (max-width:350px){.skills__box{column-gap:1.25rem}.skills__name{font-size:var(--small-font-size)}}.qualification__container{max-width:768px}.qualification__tabs{display:flex;justify-content:center;margin-bottom:var(--mb-2);position:relative}.qualification__button{color:var(--title-color);cursor:pointer;font-size:var(--h3-font-size);font-weight:var(--font-medium);margin:0 var(--mb-1);padding-bottom:.5rem;position:relative;transition:color .3s ease}.qualification__button:after{background-color:var(--title-color-dark);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.qualification__button.qualification__active:after{width:100%}.qualification__button:hover:after{width:0}.qualification__button.qualification__active:hover:after{width:100%}.qualification__icon{font-size:1.8rem;margin-right:var(--mb-0-25)}.qualification__active{color:var(--title-color-dark)}.qualification__sections{display:grid;grid-template-columns:.5fr;justify-content:center}.qualification__content{display:none}.qualification__content-active{display:block}.qualification__data{grid-column-gap:1.5rem;column-gap:1.5rem;display:grid;grid-template-columns:1fr max-content 1fr}.qualification__title{font-size:var(--normal-font-size);font-weight:var(--font-medium)}.qualification__subtitle{display:inline-block;margin-bottom:var(--mb-1)}.qualification__calender,.qualification__subtitle{font-size:var(--small-font-size)}.qualification__rounder{background-color:var(--text-color);border-radius:50%;display:inline-block;height:13px;width:13px}.qualification__line{background-color:var(--text-color);display:block;height:100%;transform:translate(6px,-7px);width:1px}@media screen and (max-width:992px){.qualification__container{margin-left:auto;margin-right:auto}}@media screen and (max-width:768px){.qualification__container{margin-left:var(--mb-1-5);margin-right:var(--mb-1-5)}.qualification__sections{grid-template-columns:none}}@media screen and (max-width:576px){.qualification__sections{grid-template-columns:none}.qualification__button{margin:0 var(--mb-0-75)}}@media screen and (max-width:350px){.qualification__data{gap:.5rem}}.contact__container{column-gap:6rem;grid-template-columns:repeat(2,max-content);justify-content:center;padding-bottom:3rem}.contact__title{font-size:var(--h3-font-size);font-weight:var(--font-medium);margin-bottom:var(--mb-1-5);text-align:center}.contact__info{grid-row-gap:1rem;display:grid;grid-template-columns:300px;row-gap:1rem}.contact__card{background-color:var(--container-color);border:1px solid #0000001a;border-radius:.75rem;box-shadow:0 4px 10px #0000000d;padding:1rem;text-align:center}.contact__card-icon{color:var(--title-color);font-size:2rem;margin-bottom:var(--mb-0-25)}.contact__card-data,.contact__card-title{font-size:var(--small-font-size)}.contact__card-title{font-weight:var(--font-medium)}.contact__card-data{display:block;margin-bottom:var(--mb-0-75)}.contact__button{align-items:center;color:var(--text-color);column-gap:.25rem;display:inline-flex;font-size:var(--small-font-size);justify-content:center}.contact__button-icon{font-size:1rem;transition:.3s}.contact__button:hover .contact__button-icon{transform:translate(.25rem)}.contact__form{width:360px}.contact__form .button{justify-content:center;width:100%}.contact__form-div{height:4rem;margin-bottom:var(--mb-2);position:relative}.contact__form-input{background:none;border:2px solid var(--text-color);border-radius:.75rem;color:var(--text-color);height:100%;left:0;outline:none;padding:1.5rem;position:absolute;top:0;width:100%;z-index:1}.contact__form-tag{background-color:var(--body-color);color:var(--title-color);font-size:var(--smaller-font-size);left:1.25rem;padding:.25rem;position:absolute;top:-.75rem;z-index:10}.contact__form-area{height:11rem}.contact__form-area textarea{resize:none}.contact__success-message{color:green;font-size:1rem;margin-top:1rem;text-align:center}.contact__success-modal{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.contact__success-content{background-color:var(--container-color);border-radius:1rem;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:2rem;position:relative;text-align:center;width:90%}.contact__success-icon{color:green;font-size:4rem;margin-bottom:1rem}.contact__success-title{color:var(--title-color);font-size:var(--h3-font-size);margin-bottom:.5rem}.contact__success-description{color:var(--text-color);margin-bottom:1.5rem}.contact__success-close{background-color:var(--first-color);border:none;border-radius:.5rem;color:var(--container-color);cursor:pointer;padding:.75rem 1.5rem;transition:background-color .3s ease}.contact__success-close:hover{background-color:var(--first-color-alt)}@media screen and (max-width:992px){.contact__container{column-gap:3rem}}@media screen and (max-width:768px){.contact__container{grid-template-columns:1fr;row-gap:3rem}.contact__info{justify-content:center}.contact__form{margin:0 auto}}@media screen and (max-width:576px){.contact__info{grid-template-columns:1fr}.contact__form{width:100%}}.footer{background-color:var(--container-color);border-top:1px solid #0000001a}.footer__container{padding:2rem 0 6rem}.footer__link,.footer__title{color:var(--title-color)}.footer__title{margin-bottom:var(--mb-2);text-align:center}.footer__link:hover{color:var(--title-color-dark)}.footer__list{column-gap:1.5rem;margin-bottom:var(--mb-2)}.footer__list,.footer__social{display:flex;justify-content:center}.footer__social{column-gap:1.125rem}.footer__social-link{background-color:var(--title-color);border-radius:.5rem;color:var(--container-color);display:inline-flex;font-size:1.125rem;padding:.4rem}.footer__social-link:hover{background-color:var(--title-color-dark)}.footer__copy{color:var(--title-color);display:block;font-size:var(--smaller-font);margin-top:4.5rem;text-align:center}@media screen and (max-width:992px){.footer__social-link{border-radius:.25rem;font-size:1rem;padding:.25rem}}.scrollup{background-color:var(--title-color);border-radius:.4rem;bottom:-20%;opacity:1;padding:.3rem .5rem;position:fixed;right:2.5rem;transition:.4s;z-index:var(--z-tooltip)}.scrollup__icon{color:var(--container-color);font-size:1.5rem}.scrollup:hover{background-color:var(--title-color-dark)}.show-scroll{bottom:3rem}@media screen and (max-width:992px){.scrollup{padding:.25rem .4rem;right:1.5rem}.scrollup__icon{font-size:1.25rem}}@media screen and (max-width:768px){.show-scroll{bottom:4rem}}@media screen and (max-width:350px){.scrollup{right:1rem}}.projects-page{background-color:var(--body-color);min-height:100vh;padding-bottom:4rem}.projects-page__header{align-items:center;animation:headerSlideDown .4s ease both;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:#fafafad9;background-color:rgba(var(--body-color-rgb,250,250,250),.85);border-bottom:1px solid #0000000f;display:flex;gap:1.25rem;padding:1rem 1.5rem;position:sticky;top:0;z-index:50}@keyframes headerSlideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.projects-page__back-btn{align-items:center;background-color:var(--container-color);border:1px solid #0000001a;border-radius:50%;color:var(--title-color);cursor:pointer;display:flex;flex-shrink:0;font-size:1.35rem;height:40px;justify-content:center;transition:background-color .25s ease,transform .25s ease,box-shadow .25s ease;width:40px}.projects-page__back-btn:hover{background-color:var(--title-color);box-shadow:0 4px 12px #0000001a;color:var(--container-color);transform:translateX(-2px)}.projects-page__back-btn:focus-visible{outline:2px solid var(--title-color);outline-offset:2px}.projects-page__title-group{display:flex;flex-direction:column;gap:.1rem}.projects-page__title{color:var(--title-color);font-size:var(--h2-font-size);font-weight:var(--font-semi-bold);line-height:1;margin:0}.projects-page__subtitle{color:var(--text-color);font-size:var(--smaller-font-size);margin:0}.projects-page__main{padding-top:2.5rem}.projects-page__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.projects-page__card-wrapper{animation:cardPageIn .5s ease both;height:100%}@keyframes cardPageIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media screen and (max-width:992px){.projects-page__grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:576px){.projects-page__header{padding:.875rem 1rem}.projects-page__grid{gap:.75rem;grid-template-columns:repeat(2,1fr)}.projects-page__title{font-size:var(--h3-font-size)}}.project-detail{animation:pageIn .4s ease both;background-color:var(--body-color);min-height:100vh;padding-bottom:5rem}@keyframes pageIn{0%{opacity:0}to{opacity:1}}.project-detail__header{align-items:center;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background-color:#fafafae0;border-bottom:1px solid #0000000f;display:flex;gap:1rem;padding:1rem 1.5rem;position:sticky;top:0;z-index:50}.project-detail__back-btn{align-items:center;background-color:var(--container-color);border:1px solid #0000001a;border-radius:50%;color:var(--title-color);cursor:pointer;display:flex;flex-shrink:0;font-size:1.35rem;height:40px;justify-content:center;transition:background-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease;width:40px}.project-detail__back-btn:hover{background-color:var(--title-color);box-shadow:0 4px 12px #0000001f;color:var(--container-color);transform:translateX(-2px)}.project-detail__back-btn:focus-visible{outline:2px solid var(--title-color);outline-offset:2px}.project-detail__header-title{color:var(--title-color);font-size:var(--h3-font-size);font-weight:var(--font-semi-bold);line-height:1.2;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-detail__cover-wrapper{align-items:center;background-color:hsl(var(--hue),var(--sat),94%);display:flex;justify-content:center;max-height:480px;overflow:hidden;width:100%}.project-detail__cover{animation:coverIn .6s ease both;display:block;height:100%;max-height:480px;object-fit:contain;object-position:center;width:100%}@keyframes coverIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.project-detail__body{padding-top:3rem}.project-detail__section{animation:sectionIn .5s ease both;margin-bottom:3.5rem}.project-detail__section:first-child{animation-delay:.05s}.project-detail__section:nth-child(2){animation-delay:.1s}.project-detail__section:nth-child(3){animation-delay:.15s}.project-detail__section:nth-child(4){animation-delay:.2s}@keyframes sectionIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-detail__section-title{border-bottom:1px solid #00000012;color:var(--title-color);font-size:var(--h2-font-size);font-weight:var(--font-semi-bold);margin-bottom:1.25rem;padding-bottom:.75rem;text-align:center}.project-detail__description{color:var(--text-color);font-size:var(--normal-font-size);line-height:1.8;margin:0 auto;max-width:720px;text-align:justify}.project-detail__stacks-grid{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.project-detail__stack-card{align-items:center;background-color:var(--container-color);border:1px solid #0000000f;border-radius:1rem;display:flex;flex-direction:column;gap:.5rem;justify-content:center;padding:1rem .75rem;text-align:center;transition:transform .25s ease,box-shadow .25s ease}.project-detail__stack-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-4px)}.project-detail__stack-icon{color:var(--title-color);font-size:1.5rem;opacity:.7}.project-detail__stack-name{color:var(--title-color);font-size:var(--smaller-font-size);font-weight:var(--font-medium);line-height:1.2}.project-detail__links{display:flex;flex-wrap:wrap;gap:.875rem}.project-detail__link-btn{align-items:center;border:1.5px solid #0000;border-radius:3rem;display:inline-flex;font-family:var(--body-font);font-size:var(--small-font-size);font-weight:var(--font-medium);gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,opacity .2s ease}.project-detail__link-btn:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-2px)}.project-detail__link-btn:focus-visible{outline:2px solid var(--title-color);outline-offset:2px}.project-detail__link-btn i{font-size:1.1rem}.project-detail__link-btn--github{background-color:hsl(var(--hue),var(--sat),15%);color:#fff}.project-detail__link-btn--demo{background-color:var(--title-color);color:var(--container-color)}.project-detail__link-btn--figma{background-color:initial;border-color:#00000026;color:var(--title-color)}.project-detail__link-btn--figma:hover{background-color:#7c3aed;border-color:#0000;color:#fff}.project-detail__gallery{column-count:3;column-gap:1rem}.project-detail__gallery-item{border-radius:1rem;box-shadow:0 4px 14px #0000001a;break-inside:avoid;cursor:pointer;margin-bottom:1rem;overflow:hidden;page-break-inside:avoid;position:relative;transition:transform .3s ease,box-shadow .3s ease}.project-detail__gallery-item:hover{box-shadow:0 16px 40px #0000001f;transform:translateY(-4px);z-index:2}.project-detail__gallery-img{border-radius:1rem;display:block;height:auto;transition:transform .4s ease;width:100%}.project-detail__gallery-item:hover .project-detail__gallery-img{transform:scale(1.02)}.project-detail__gallery-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0006;border-radius:1rem;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .3s ease}.project-detail__gallery-item:hover .project-detail__gallery-overlay{opacity:1}.project-detail__gallery-overlay i{color:#fff;font-size:2.5rem;transform:scale(.5);transition:transform .3s cubic-bezier(.25,1,.5,1)}.project-detail__gallery-item:hover .project-detail__gallery-overlay i{transform:scale(1)}.project-detail__modal{align-items:center;animation:modalFadeIn .3s ease both;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background-color:#000000d9;cursor:zoom-out;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:1000}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.project-detail__modal-close{color:#fff;cursor:pointer;font-size:3rem;position:absolute;right:1.5rem;top:1.5rem;transition:transform .3s ease,color .3s ease;z-index:1001}.project-detail__modal-close:hover{color:hsl(var(--hue),var(--sat),80%);transform:rotate(90deg)}.project-detail__modal-img{animation:modalImgZoom .4s cubic-bezier(.25,1,.5,1) both;border-radius:.5rem;box-shadow:0 10px 40px #00000080;cursor:default;max-height:100%;max-width:100%;object-fit:contain}@keyframes modalImgZoom{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.project-detail__404{align-items:center;background-color:var(--body-color);display:flex;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.project-detail__404-content{max-width:400px}.project-detail__404-code{color:hsl(var(--hue),var(--sat),85%);display:block;font-size:6rem;font-weight:var(--font-semi-bold);line-height:1;margin-bottom:.5rem}.project-detail__404-title{color:var(--title-color);font-size:var(--h2-font-size);margin-bottom:.75rem}.project-detail__404-desc{color:var(--text-color);font-size:var(--normal-font-size);line-height:1.6;margin-bottom:2rem}.project-detail__back-cta{align-items:center;background-color:var(--title-color);border:none;border-radius:3rem;color:var(--container-color);cursor:pointer;display:inline-flex;font-family:var(--body-font);font-size:var(--normal-font-size);font-weight:var(--font-medium);gap:.5rem;padding:.875rem 1.75rem;transition:background-color .3s ease,transform .3s ease}.project-detail__back-cta:hover{background-color:var(--title-color-dark);transform:translateY(-2px)}@media screen and (max-width:992px){.project-detail__gallery{column-count:2}.project-detail__cover,.project-detail__cover-wrapper{max-height:360px}}@media screen and (max-width:576px){.project-detail__header{padding:.75rem 1rem}.project-detail__header-title{font-size:var(--normal-font-size)}.project-detail__cover,.project-detail__cover-wrapper{max-height:240px}.project-detail__gallery{column-count:2;column-gap:.75rem}.project-detail__gallery-item{border-radius:.75rem;margin-bottom:.75rem}.project-detail__stacks-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.project-detail__link-btn{padding:.65rem 1.25rem}}
/*# sourceMappingURL=main.d4f433d3.css.map*/