@charset "UTF-8";:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#f5b6cd;background-color:#2b2b2b;cursor:crosshair;font-synthesis:none;overflow-x:hidden}html{overflow-y:scroll;overflow-x:hidden}html::-webkit-scrollbar{display:none}@media screen and (min-width: 992px){html{scroll-snap-type:y mandatory}}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}.header__section{position:fixed;top:25px;left:0;width:100vw;z-index:100}.header__navbar{display:flex;justify-content:space-evenly;align-items:baseline;margin:auto;width:90%;max-width:1300px;padding:0 20px;border:1px solid #F5B6CD;border-radius:15px;box-sizing:border-box;background-color:#2b2b2b}@media screen and (min-width: 576px){.header__navbar{justify-content:space-between}}.header__brandName{width:20px;display:none}.header__brandName:hover{cursor:none;font-weight:bolder;scale:1.5}@media screen and (min-width: 576px){.header__brandName{display:block}}.header__menu{width:300px;list-style:none;display:flex;justify-content:center;padding:0;cursor:none;margin:5px;justify-content:space-around}@media screen and (min-width: 576px){.header__menu{margin:16px;justify-content:space-between}}.header__menu li{display:flex}.cursor{width:30px;height:30px;position:fixed;background-color:#f5b6cd;border-radius:50%;top:-15px;left:-15px;pointer-events:none;z-index:1000000;display:none}@media screen and (min-width: 768px){.cursor{display:block}}.headerLink__link{overflow-x:hidden;color:#f5b6cd;text-decoration:none;transition:scale .2s ease,font-weight .2s ease;-webkit-tap-highlight-color:transparent}.headerLink__link:link,.headerLink__link:visited,.headerLink__link:active,.headerLink__link:focus{color:#f5b6cd}.headerLink__link:active{scale:1.1;font-weight:600}.headerLink__background{background-color:#f5b6cd;height:1.5px;opacity:0}@media (hover: hover) and (pointer: fine){.headerLink__background{opacity:1}}@media (any-hover: hover){.has-mouse .headerLink__background{opacity:1}}@media (hover: hover) and (pointer: fine){.headerLink__link:hover{scale:1.1;font-weight:600;cursor:none}}@media (any-hover: hover){.has-mouse .headerLink__link:hover{scale:1.1;font-weight:600;cursor:none}}.main__container{width:100vw;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}@media screen and (min-width: 768px){.main__container{overflow:visible}}.main__container::-webkit-scrollbar{display:none}.home__section{width:100vw;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;scroll-snap-align:start}.home__container{width:80%}@media screen and (min-width: 576px){.home__container{width:55%;align-items:center}}@media screen and (min-width: 768px){.home__container{width:auto}}.home__intro{font-size:1rem}.home__h1{font-size:96px;margin:0;line-height:.9;width:auto;font-family:Oswald,sans-serif}@media screen and (min-width: 576px){.home__h1{font-size:100px}}@media screen and (min-width: 768px){.home__h1{margin:10px 0}}@media screen and (min-width: 992px){.home__h1{font-size:130px}}@media screen and (min-width: 1200px){.home__h1{font-size:140px}}.home__name-logo{height:82px}@media screen and (min-width: 576px){.home__name-logo{height:82px}}@media screen and (min-width: 768px){.home__name-logo{height:85px}}@media screen and (min-width: 992px){.home__name-logo{height:110px}}@media screen and (min-width: 1200px){.home__name-logo{height:115px}}.home__h3{margin:10px;line-height:1.2;font-size:25px;font-weight:500;-webkit-text-stroke:1.5px #F5B6CD;color:transparent}@media screen and (min-width: 576px){.home__h3{font-size:32px;-webkit-text-stroke:.8px #F5B6CD}}@media screen and (min-width: 768px){.home__h3{font-size:40px;font-weight:700;-webkit-text-stroke:1.1px #F5B6CD}}@media screen and (min-width: 992px){.home__h3{font-size:55px}}@media screen and (min-width: 1200px){.home__h3{font-size:60px;font-weight:500}}.about__section{width:100vw;min-height:100vh;display:flex;justify-content:center;align-items:end;position:relative;scroll-snap-align:start;overflow-y:hidden}.about__container{display:flex;flex-direction:column;align-items:end;max-width:1200px;width:90%;overflow-x:hidden}@media screen and (min-width: 576px){.about__container{margin-top:400px}}@media screen and (min-width: 768px){.about__container{margin-top:310px;margin-bottom:100px}}.about__img-container{position:absolute;width:350px;top:100px;left:0px;mask-image:linear-gradient(to top,transparent 15%,black 100%)}@media screen and (min-width: 576px){.about__img-container{width:60%;max-width:440px}}@media screen and (min-width: 768px){.about__img-container{min-width:440px}}@media screen and (min-width: 992px){.about__img-container{width:40%;max-width:550px}}@media screen and (min-width: 992px){.about__img-container{left:10%}}.about__img-container img{width:100%;opacity:80%;filter:grayscale(100%)}.about__h2{display:flex;width:fit-content;justify-content:end;font-size:50px;font-weight:400;margin:0 0 20px;line-height:.9;text-align:end}@media screen and (min-width: 768px){.about__h2{font-size:75px}}.about__body{display:flex;flex-direction:column;text-align:end;justify-content:end;width:100%;margin-bottom:30px}.about__body p{align-self:end}@media screen and (min-width: 768px){.about__body p{width:80%}}@media screen and (min-width: 1200px){.about__body p{width:600px}}.view-cv-button__container{margin-top:15px;align-self:end;display:flex;position:relative;width:116px;height:50px}.view-cv-button__btn{border-radius:25px;padding:.6rem 1rem;width:80px;text-align:center;position:absolute}.view-cv-button__content{border:2px solid #F5B6CD;color:#f5b6cd}.view-cv-button__background{background-color:#000;color:#000}.contact__section{width:100vw;height:100vh;color:#2b2b2b;display:flex;align-items:center;justify-content:center;background:#F5B6CD;scroll-snap-align:start}.contact__container{display:flex;flex-direction:column;width:90%}@media screen and (min-width: 576px){.contact__container{width:auto}}.contact__subtitle{font-weight:700;font-size:16px;z-index:10}@media screen and (min-width: 576px){.contact__subtitle{font-size:20px}}.contact__titleContainer{font-family:Oswald,sans-serif;padding-bottom:1rem;margin:0;padding:0;position:relative;overflow:hidden;line-height:1.4}@media screen and (min-width: 576px){.contact__titleContainer{font-size:px}}.contact__h2{font-size:19vw;position:relative;border-bottom:4px solid;width:fit-content;margin:0}@media screen and (min-width: 576px){.contact__h2{padding-bottom:1rem;font-size:115px}}@media screen and (min-width: 768px){.contact__h2{font-size:150px;line-height:.9}}@media screen and (min-width: 992px){.contact__h2{font-size:180px}}@media screen and (min-width: 1200px){.contact__h2{font-size:200px;height:180px}}.contact__linkContainer{display:flex;justify-content:space-between;font-weight:700;width:100%;z-index:1000;font-size:16px;margin-top:1rem}@media screen and (min-width: 768px){.contact__linkContainer{font-size:20px}}.contactLink__container{display:flex;color:#2b2b2b;text-decoration:none}.contactLink__header{height:100%;display:flex;flex-wrap:nowrap;align-content:center;justify-content:space-between;flex-wrap:wrap;overflow-x:hidden;border-bottom:1px solid #F5B6CD}.contactLink__title{font-size:16px;margin-left:5px}@media screen and (min-width: 576px){.contactLink__title{font-size:18px}}.contactLink__iconContainer{display:flex;flex-direction:column;justify-content:center}.contactLink__button{border:2px solid #F5B6CD;padding:4px 15px 6px;font-size:13px;border-radius:20px;display:flex;align-items:center;color:#f5b6cd;text-decoration:none;position:relative}.banter-BackgroundFigure{position:fixed;left:50%;top:50%;width:288px;height:288px;margin-left:-144px;margin-top:-144px;z-index:-10;scroll-behavior:smooth}.banter-BackgroundFigure__box{float:left;position:relative;width:80px;height:80px;margin-right:24px}.banter-BackgroundFigure__box:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.0862745098)}.banter-BackgroundFigure__box:nth-child(3n){margin-right:0;margin-bottom:24px}.banter-BackgroundFigure__box:nth-child(1):before,.banter-BackgroundFigure__box:nth-child(4):before{margin-left:104px}.banter-BackgroundFigure__box:nth-child(3):before{margin-top:208px}.banter-BackgroundFigure__box:last-child{margin-bottom:0}@keyframes moveBox-1{9.0909090909%{transform:translate(-104px)}18.1818181818%{transform:translate(0)}27.2727272727%{transform:translate(0)}36.3636363636%{transform:translate(104px)}45.4545454545%{transform:translate(104px,104px)}54.5454545455%{transform:translate(104px,104px)}63.6363636364%{transform:translate(104px,104px)}72.7272727273%{transform:translate(104px)}81.8181818182%{transform:translate(0)}90.9090909091%{transform:translate(-104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(1){animation:moveBox-1 8s infinite}@keyframes moveBox-2{9.0909090909%{transform:translate(0)}18.1818181818%{transform:translate(104px)}27.2727272727%{transform:translate(0)}36.3636363636%{transform:translate(104px)}45.4545454545%{transform:translate(104px,104px)}54.5454545455%{transform:translate(104px,104px)}63.6363636364%{transform:translate(104px,104px)}72.7272727273%{transform:translate(104px,104px)}81.8181818182%{transform:translateY(104px)}90.9090909091%{transform:translateY(104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(2){animation:moveBox-2 8s infinite}@keyframes moveBox-3{9.0909090909%{transform:translate(-104px)}18.1818181818%{transform:translate(-104px)}27.2727272727%{transform:translate(0)}36.3636363636%{transform:translate(-104px)}45.4545454545%{transform:translate(-104px)}54.5454545455%{transform:translate(-104px)}63.6363636364%{transform:translate(-104px)}72.7272727273%{transform:translate(-104px)}81.8181818182%{transform:translate(-104px,-104px)}90.9090909091%{transform:translateY(-104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(3){animation:moveBox-3 8s infinite}@keyframes moveBox-4{9.0909090909%{transform:translate(-104px)}18.1818181818%{transform:translate(-104px)}27.2727272727%{transform:translate(-104px,-104px)}36.3636363636%{transform:translateY(-104px)}45.4545454545%{transform:translate(0)}54.5454545455%{transform:translateY(-104px)}63.6363636364%{transform:translateY(-104px)}72.7272727273%{transform:translateY(-104px)}81.8181818182%{transform:translate(-104px,-104px)}90.9090909091%{transform:translate(-104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(4){animation:moveBox-4 8s infinite}@keyframes moveBox-5{9.0909090909%{transform:translate(0)}18.1818181818%{transform:translate(0)}27.2727272727%{transform:translate(0)}36.3636363636%{transform:translate(104px)}45.4545454545%{transform:translate(104px)}54.5454545455%{transform:translate(104px)}63.6363636364%{transform:translate(104px)}72.7272727273%{transform:translate(104px)}81.8181818182%{transform:translate(104px,-104px)}90.9090909091%{transform:translateY(-104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(5){animation:moveBox-5 8s infinite}@keyframes moveBox-6{9.0909090909%{transform:translate(0)}18.1818181818%{transform:translate(-104px)}27.2727272727%{transform:translate(-104px)}36.3636363636%{transform:translate(0)}45.4545454545%{transform:translate(0)}54.5454545455%{transform:translate(0)}63.6363636364%{transform:translate(0)}72.7272727273%{transform:translateY(104px)}81.8181818182%{transform:translate(-104px,104px)}90.9090909091%{transform:translate(-104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(6){animation:moveBox-6 8s infinite}@keyframes moveBox-7{9.0909090909%{transform:translate(104px)}18.1818181818%{transform:translate(104px)}27.2727272727%{transform:translate(104px)}36.3636363636%{transform:translate(0)}45.4545454545%{transform:translateY(-104px)}54.5454545455%{transform:translate(104px,-104px)}63.6363636364%{transform:translateY(-104px)}72.7272727273%{transform:translateY(-104px)}81.8181818182%{transform:translate(0)}90.9090909091%{transform:translate(104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(7){animation:moveBox-7 8s infinite}@keyframes moveBox-8{9.0909090909%{transform:translate(0)}18.1818181818%{transform:translate(-104px)}27.2727272727%{transform:translate(-104px,-104px)}36.3636363636%{transform:translateY(-104px)}45.4545454545%{transform:translateY(-104px)}54.5454545455%{transform:translateY(-104px)}63.6363636364%{transform:translateY(-104px)}72.7272727273%{transform:translateY(-104px)}81.8181818182%{transform:translate(104px,-104px)}90.9090909091%{transform:translate(104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(8){animation:moveBox-8 8s infinite}@keyframes moveBox-9{9.0909090909%{transform:translate(-104px)}18.1818181818%{transform:translate(-104px)}27.2727272727%{transform:translate(0)}36.3636363636%{transform:translate(-104px)}45.4545454545%{transform:translate(0)}54.5454545455%{transform:translate(0)}63.6363636364%{transform:translate(-104px)}72.7272727273%{transform:translate(-104px)}81.8181818182%{transform:translate(-52px)}90.9090909091%{transform:translate(-104px)}to{transform:translate(0)}}.banter-BackgroundFigure__box:nth-child(9){animation:moveBox-9 8s infinite}.projects__section{margin:0;padding-top:100px;width:100vw;min-height:100vh;display:flex;justify-content:center;align-items:start;z-index:10;position:relative;padding-bottom:40px;box-sizing:border-box;scroll-snap-align:start}.projects__container{width:90%;height:100%;max-width:1200px;display:flex;flex-direction:column}@media screen and (min-width: 576px){.projects__container{width:80%}}@media screen and (min-width: 768px){.projects__container{width:90%}}@media screen and (min-width: 1800px){.projects__container{padding-top:70px}}.projects__h2{display:flex;width:fit-content;justify-content:end;font-size:50px;font-weight:400;margin:0 0 20px;line-height:.9;text-align:end}@media screen and (min-width: 768px){.projects__h2{font-size:75px}}.projects__carouselContainer{margin:3rem 0}@media screen and (min-width: 768px){.projects__carouselContainer{margin:1rem 0}}.projects__visorProjects{position:absolute;bottom:0;right:0;justify-content:flex-end;width:50vw;height:60%;overflow:hidden;display:none}@media screen and (min-width: 992px){.projects__visorProjects{display:block}}.projects__section.projects--exit-right{transform:translate(100%);opacity:0;transition:transform .45s ease-in-out,opacity .35s ease-in-out}.projects__section.projects--exit-left{transform:translate(-100%);opacity:0;transition:transform .45s ease-in-out,opacity .35s ease-in-out}.carousel{width:100%;min-height:60vh;position:relative;align-items:center}@media screen and (min-width: 768px){.carousel{display:flex;flex-direction:column;justify-content:center}}.carousel__viewport{display:flex;justify-content:space-between;width:100%;position:relative;height:595px;overflow:hidden}@media screen and (min-width: 768px){.carousel__viewport{overflow:visible;height:auto;width:90%}}.carousel__card--preview{display:none}@media screen and (min-width: 768px){.carousel__card--preview{display:block;filter:blur(.8px);opacity:.8}}.carousel__card--center{position:absolute;justify-self:anchor-center;touch-action:pan-y}@media screen and (min-width: 768px){.carousel__card--center{transform:scale(1.6);z-index:10}}.carousel__nav{position:absolute;width:800px;display:flex;justify-content:space-between;align-items:center}.card{height:592px;display:flex;flex-direction:column;max-width:400px;background-color:#27144f1e;backdrop-filter:blur(5px);border:1px solid #F5B6CD;box-shadow:0 4px 25px #00000073;border-radius:16px;overflow:hidden}@media screen and (min-width: 768px){.card{height:285px}}.card--center{max-width:300px;min-height:562px}.card__media{aspect-ratio:16/9;background-position:center}@media screen and (min-width: 768px){.card__media{min-width:100%;aspect-ratio:16/4.5;background-size:cover}}.card__body{padding:1rem;display:flex;flex-direction:column;flex-grow:1}@media screen and (min-width: 768px){.card__body{padding:.5rem}}.card__meta{display:flex;justify-content:space-between;align-items:center}.card__type{text-transform:uppercase;letter-spacing:.5px;color:#f5f5f5a6}@media screen and (min-width: 768px){.card__type{font-size:.55rem}}.card__visibility{text-transform:capitalize;padding:2px 8px;border-radius:6px;white-space:nowrap}.card__visibility.public{background:rgba(56,189,248,.08);color:#38bdf8}.card__visibility.private{background:rgba(255,255,255,.08);color:#f5f5f5bf}@media screen and (min-width: 768px){.card__visibility{font-size:.55rem}}.card__title{font-weight:500;line-height:1.2}@media screen and (min-width: 768px){.card__title{margin:0 0 .35rem;font-size:clamp(.75rem,.5rem + .4vw,1.2rem)}}.card__desc{color:#f5f5f5db;line-height:1.45;margin:0 0 1rem}@media screen and (min-width: 768px){.card__desc{font-size:clamp(.6rem,.1rem + .2vw,1rem);margin-bottom:.5rem}}.card__tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 .8rem}@media screen and (min-width: 768px){.card__tags{margin:auto 0}}.card__tag{line-height:1;padding:5px 10px;border-radius:999px;color:#f5f5f5b3;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(2px)}@media screen and (min-width: 768px){.card__tag{font-size:.5rem}}.card__actions{display:flex;gap:10px;flex-grow:1;align-items:flex-end}@media screen and (min-width: 768px){.card__actions{margin-top:10px}}@media (hover: hover) and (pointer: fine){.card--featured{transition:transform .15s cubic-bezier(.2,.9,.2,1),box-shadow .26s ease;will-change:transform,box-shadow}.card--featured:hover,.card--featured:focus-visible{transform:translateY(-3px) translateZ(0);box-shadow:inset 0 8px 36px #38bdf829}}@media (prefers-reduced-motion: reduce){.card--featured{transition:none!important}}@media (any-hover: hover){.card--featured{transition:transform .26s cubic-bezier(.2,.9,.2,1),box-shadow .26s ease;will-change:transform,box-shadow}.card--featured:hover,.card--featured:focus-visible{transform:translateY(-4px) translateZ(0);box-shadow:0 20px 60px #0000004d,inset 0 8px 36px #38bdf829}}.has-mouse .card--featured{transition:transform .26s cubic-bezier(.2,.9,.2,1),box-shadow .26s ease;will-change:transform,box-shadow}.has-mouse .card--featured:hover,.has-mouse .card--featured:focus-visible{transform:translateY(-4px) translateZ(0);box-shadow:0 20px 60px #0000004d,inset 0 8px 36px #38bdf829}.card__body,.card__title,.card__tags,.card__desc{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.cardButton__link{padding:.2rem .5rem;border:1px solid #F5B6CD;font-size:1rem;font-weight:400;border-radius:7px;display:flex;align-items:center;text-decoration:none;position:relative;overflow:hidden;color:#f5b6cd;cursor:none;width:min-content}@media screen and (min-width: 768px){.cardButton__link{font-size:.6rem}}.cardButton__link--disabled{opacity:.5;pointer-events:none;cursor:not-allowed;border-color:#f5b6cd73;color:#f5b6cd99}.cardButton__link--background{position:absolute;left:0;background-color:#aa8da0ad;height:100%;width:80%;border:1px solid aa8da0ad;z-index:-10;cursor:none;right:100px}.carouselButton__nav{display:none;margin:50px;align-items:center;justify-content:center;background:rgba(0,0,0,.42);color:#fff;border:none;width:52px;height:52px;border-radius:50%;cursor:pointer;box-shadow:0 10px 30px #00000038;transition:transform .18s ease,box-shadow .18s ease,background .12s ease}@media screen and (min-width: 768px){.carouselButton__nav{display:flex;margin:10px}}.carouselButton__nav:focus-visible{outline:none;box-shadow:0 0 0 4px #38bdf81f}.carouselButton__nav:hover{background:rgba(0,0,0,.52);box-shadow:0 14px 36px #00000047}.carouselButton__nav span{font-size:22px;line-height:1;display:inline-block;transform:translateY(-1px)}.carousel__dot{width:6px;height:6px;border-radius:50%;background:rgba(245,245,245,.18);border:none;padding:6px;display:inline-block;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.carousel__dot:focus-visible{outline:none;box-shadow:0 0 0 4px #f5b6cd29;border-radius:50%}.carousel__dots-inner{position:relative;display:inline-flex;gap:8px;align-items:center}.carousel__dot-indicator{position:absolute;border-radius:50%;background:#F5B6CD;z-index:2;transition:left .36s cubic-bezier(.2,.9,.2,1),top .28s cubic-bezier(.2,.9,.2,1),width .24s ease,height .24s ease;pointer-events:none;box-shadow:0 10px 28px #f5b6cd38}@keyframes dotPulse{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}@media (prefers-reduced-motion: no-preference){.carousel__dot--active,.carousel__dot-indicator{animation:dotPulse 1.8s ease-in-out infinite}}@media (prefers-reduced-motion: reduce){.carousel__dot,.carousel__dot-indicator{transition:none!important;animation:none!important}}.carousel__dot{-webkit-tap-highlight-color:transparent}.carousel__dot:active{transform:scale(.98);opacity:.92}.carousel__dots{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:1rem;position:static}@media screen and (min-width: 768px){.carousel__dots{position:absolute;bottom:-30px;left:50%;transform:translate(-50%);z-index:100;margin-top:0;pointer-events:auto;padding:6px 12px;background:rgba(0,0,0,.22);border-radius:999px;box-shadow:0 6px 18px #0000002e}}@media screen and (min-width: 1800px){.carousel__dots{bottom:40px}}.projectDetail__section{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:start;padding-top:100px;padding-bottom:40px;box-sizing:border-box;position:relative}@media screen and (min-width: 768px){.projectDetail__section{padding-top:120px}}@media screen and (min-width: 992px){.projectDetail__section{padding-top:140px}}.projectDetail__container{width:100%;max-width:1200px;margin:0 auto;padding:0 .5rem;box-sizing:border-box}@media screen and (min-width: 400px){.projectDetail__container{width:95%;padding:0}}@media screen and (min-width: 576px){.projectDetail__container{width:90%}}.projectDetail__body{position:relative;background:rgba(39,20,79,.118);backdrop-filter:blur(5px);border:1px solid #F5B6CD;box-shadow:0 4px 25px #00000073;border-radius:12px;padding:.75rem;min-height:60vh;box-sizing:border-box;overflow-x:hidden}@media screen and (min-width: 400px){.projectDetail__body{padding:1rem;border-radius:16px}}@media screen and (min-width: 576px){.projectDetail__body{padding:1.25rem}}@media screen and (min-width: 768px){.projectDetail__body{padding:1.5rem}}@media screen and (min-width: 992px){.projectDetail__body{padding:2rem}}.projectDetail__loading,.projectDetail__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#f5f5f5;font-size:.95rem;text-align:center;padding:1rem}@media screen and (min-width: 768px){.projectDetail__loading,.projectDetail__error{min-height:400px;font-size:1.1rem}}.projectDetail__spinner{width:40px;height:40px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#f5b6cd;margin-bottom:1rem}.projectDetail__error p{color:#f5f5f5db;margin-bottom:1.5rem}.projectDetail__actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}@media screen and (min-width: 768px){.projectDetail__actions{gap:1rem}}.projectDetail__btn{border:1px solid #F5B6CD;font-size:.9rem;font-weight:400;border-radius:7px;color:#f5b6cd;background:transparent;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block}@media screen and (min-width: 768px){.projectDetail__btn{padding:.5rem 1.25rem;font-size:1rem}}.projectDetail__fab{position:fixed;bottom:calc(env(safe-area-inset-bottom,0px) + 12px);right:calc(env(safe-area-inset-right,0px) + 25px);width:56px;height:56px;border-radius:50%;background:#F5B6CD;border:none;color:#f5f5f5;font-size:24px;font-weight:700;cursor:pointer;align-items:center;justify-content:center;box-shadow:0 4px 20px #ff14934d;z-index:99999;display:flex;pointer-events:auto;transition:all .3s ease}@media screen and (min-width: 576px){.projectDetail__fab{bottom:calc(env(safe-area-inset-bottom,0px) + 15px);right:calc(env(safe-area-inset-right,0px) + 8%);width:48px;height:48px;min-width:48px;min-height:48px;padding:0;box-sizing:border-box;aspect-ratio:1/1;font-size:20px}}@media screen and (min-width: 768px){.projectDetail__fab{right:calc(env(safe-area-inset-right,0px) + 7%)}}@media screen and (min-width: 1200px){.projectDetail__fab{right:max((100vw - 1200px) / 2 + 20px,5% + 20px)}}.projectDetail__fab:hover{box-shadow:0 8px 32px #ff149380}.projectDetail__fab:active{transform:scale(.95)}.projectDetail__layout{display:flex;flex-direction:column;gap:1rem;align-items:start;width:100%;box-sizing:border-box}@media screen and (min-width: 400px){.projectDetail__layout{gap:1.5rem}}@media screen and (min-width: 992px){.projectDetail__layout{flex-direction:row;gap:2rem}}.projectDetail__toc{flex-shrink:0;width:100%;background:rgba(255,255,255,.04);backdrop-filter:blur(3px);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.75rem;position:static;max-height:none;overflow-y:visible;box-sizing:border-box}@media screen and (min-width: 400px){.projectDetail__toc{padding:.85rem;border-radius:10px}}@media screen and (min-width: 576px){.projectDetail__toc{padding:1rem;border-radius:12px}}@media screen and (min-width: 768px){.projectDetail__toc{padding:1.15rem}}@media screen and (min-width: 992px){.projectDetail__toc{width:240px;position:sticky;top:160px;max-height:calc(100vh - 200px);overflow-y:auto;padding:1.25rem}}.projectDetail__toc strong{display:block;color:#f5b6cd;font-size:.8rem;font-weight:500;margin-bottom:.6rem;text-transform:uppercase;letter-spacing:.5px}@media screen and (min-width: 400px){.projectDetail__toc strong{font-size:.85rem;margin-bottom:.65rem}}@media screen and (min-width: 768px){.projectDetail__toc strong{font-size:.9rem;margin-bottom:.75rem}}@media screen and (min-width: 992px){.projectDetail__toc strong{font-size:.95rem}}.projectDetail__toc ul{list-style:none;padding:0;margin:0}.projectDetail__toc li{margin-bottom:.4rem;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__toc li{margin-bottom:.45rem;line-height:1.35}}@media screen and (min-width: 768px){.projectDetail__toc li{margin-bottom:.5rem;line-height:1.4}}.projectDetail__toc li.toc-level-1{padding-left:0;font-weight:500;font-size:.85rem}@media screen and (min-width: 400px){.projectDetail__toc li.toc-level-1{font-size:.9rem}}@media screen and (min-width: 768px){.projectDetail__toc li.toc-level-1{font-size:.95rem}}.projectDetail__toc li.toc-level-2{padding-left:.5rem;font-size:.8rem}@media screen and (min-width: 400px){.projectDetail__toc li.toc-level-2{padding-left:.75rem;font-size:.85rem}}@media screen and (min-width: 768px){.projectDetail__toc li.toc-level-2{font-size:.9rem}}.projectDetail__toc li.toc-level-3{padding-left:1rem;font-size:.75rem}@media screen and (min-width: 400px){.projectDetail__toc li.toc-level-3{padding-left:1.5rem;font-size:.8rem}}@media screen and (min-width: 768px){.projectDetail__toc li.toc-level-3{font-size:.85rem}}.projectDetail__toc li.toc-level-4,.projectDetail__toc li.toc-level-5,.projectDetail__toc li.toc-level-6{padding-left:1.5rem;font-size:.7rem}@media screen and (min-width: 400px){.projectDetail__toc li.toc-level-4,.projectDetail__toc li.toc-level-5,.projectDetail__toc li.toc-level-6{padding-left:2.25rem;font-size:.75rem}}@media screen and (min-width: 768px){.projectDetail__toc li.toc-level-4,.projectDetail__toc li.toc-level-5,.projectDetail__toc li.toc-level-6{font-size:.8rem}}.projectDetail__toc a{color:#38bdf8;text-decoration:none;transition:color .2s ease;display:block}.projectDetail__toc a:hover{color:#f5b6cd}@media screen and (min-width: 992px){.projectDetail__toc::-webkit-scrollbar{width:6px}.projectDetail__toc::-webkit-scrollbar-track{background:rgba(255,255,255,.02);border-radius:3px}.projectDetail__toc::-webkit-scrollbar-thumb{background:rgba(245,182,205,.3);border-radius:3px}.projectDetail__toc::-webkit-scrollbar-thumb:hover{background:rgba(245,182,205,.5)}}.projectDetail__markdown{flex:1;color:#f5f5f5;line-height:1.6;overflow-wrap:break-word;word-wrap:break-word;min-width:0;max-width:100%;box-sizing:border-box}.projectDetail__markdown *{max-width:100%;box-sizing:border-box}.projectDetail__markdown h1{font-size:1.5rem;color:#f5b6cd;font-weight:500;line-height:1.2;margin:0 0 .85rem;padding-bottom:.35rem;border-bottom:2px solid rgba(245,182,205,.3);word-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown h1{font-size:1.65rem;margin-bottom:.95rem}}@media screen and (min-width: 576px){.projectDetail__markdown h1{font-size:2rem;margin-bottom:1.25rem;padding-bottom:.45rem}}@media screen and (min-width: 768px){.projectDetail__markdown h1{font-size:2.25rem;margin-bottom:1.5rem;padding-bottom:.5rem}}@media screen and (min-width: 992px){.projectDetail__markdown h1{font-size:2.5rem}}@media screen and (min-width: 1200px){.projectDetail__markdown h1{font-size:3rem}}.projectDetail__markdown h2{font-size:1.25rem;color:#f5f5f5;font-weight:500;line-height:1.3;margin:1.25rem 0 .75rem;padding-bottom:.25rem;border-bottom:1px solid rgba(245,182,205,.2);word-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown h2{font-size:1.35rem;margin:1.4rem 0 .8rem}}@media screen and (min-width: 576px){.projectDetail__markdown h2{font-size:1.5rem;margin:1.75rem 0 .9rem}}@media screen and (min-width: 768px){.projectDetail__markdown h2{font-size:1.75rem;margin:2rem 0 1rem;padding-bottom:.35rem}}@media screen and (min-width: 992px){.projectDetail__markdown h2{font-size:2rem}}@media screen and (min-width: 1200px){.projectDetail__markdown h2{font-size:2.25rem}}.projectDetail__markdown h3{font-size:1.1rem;color:#f5f5f5f2;font-weight:500;line-height:1.3;margin:1.1rem 0 .6rem;word-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown h3{font-size:1.15rem}}@media screen and (min-width: 576px){.projectDetail__markdown h3{font-size:1.25rem}}@media screen and (min-width: 768px){.projectDetail__markdown h3{font-size:1.4rem;margin:1.5rem 0 .75rem}}@media screen and (min-width: 992px){.projectDetail__markdown h3{font-size:1.6rem}}@media screen and (min-width: 1200px){.projectDetail__markdown h3{font-size:1.75rem}}.projectDetail__markdown h4{font-size:1rem;color:#f5f5f5e6;font-weight:500;line-height:1.4;margin:.95rem 0 .45rem;word-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown h4{font-size:1.05rem}}@media screen and (min-width: 576px){.projectDetail__markdown h4{font-size:1.1rem}}@media screen and (min-width: 768px){.projectDetail__markdown h4{font-size:1.2rem;margin:1.25rem 0 .5rem}}@media screen and (min-width: 992px){.projectDetail__markdown h4{font-size:1.3rem}}@media screen and (min-width: 1200px){.projectDetail__markdown h4{font-size:1.4rem}}.projectDetail__markdown h5,.projectDetail__markdown h6{font-size:.9rem;color:#f5f5f5d9;font-weight:500;margin:.85rem 0 .45rem;word-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown h5,.projectDetail__markdown h6{font-size:.95rem}}@media screen and (min-width: 768px){.projectDetail__markdown h5,.projectDetail__markdown h6{font-size:1rem;margin:1rem 0 .5rem}}.projectDetail__markdown p{color:#f5f5f5db;margin:0 0 .85rem;line-height:1.55;font-size:.9rem;word-wrap:break-word;overflow-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown p{font-size:.95rem;line-height:1.6;margin-bottom:1rem}}@media screen and (min-width: 768px){.projectDetail__markdown p{font-size:1rem;line-height:1.65}}.projectDetail__markdown a{color:#38bdf8;text-decoration:none;border-bottom:1px solid rgba(56,189,248,.3);transition:all .2s ease;word-wrap:break-word;overflow-wrap:break-word}.projectDetail__markdown a:hover{color:#f5b6cd;border-bottom-color:#f5b6cd80}.projectDetail__markdown ul,.projectDetail__markdown ol{margin:0 0 .85rem;padding-left:1rem;color:#f5f5f5db;font-size:.9rem}@media screen and (min-width: 400px){.projectDetail__markdown ul,.projectDetail__markdown ol{padding-left:1.25rem;font-size:.95rem;margin-bottom:1rem}}@media screen and (min-width: 768px){.projectDetail__markdown ul,.projectDetail__markdown ol{padding-left:1.5rem;font-size:1rem}}.projectDetail__markdown ul{list-style:none}.projectDetail__markdown ul li:before{content:"●";color:#f5b6cd;font-weight:700;display:inline-block;width:.9em;margin-left:-.9em}@media screen and (min-width: 400px){.projectDetail__markdown ul li:before{width:1em;margin-left:-1em}}.projectDetail__markdown ol{list-style:decimal}.projectDetail__markdown ol li::marker{color:#38bdf8;font-weight:500}.projectDetail__markdown li{margin-bottom:.4rem;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word}@media screen and (min-width: 400px){.projectDetail__markdown li{margin-bottom:.45rem;line-height:1.55}}@media screen and (min-width: 768px){.projectDetail__markdown li{margin-bottom:.5rem;line-height:1.6}}.projectDetail__markdown code{font-family:Consolas,Monaco,Courier New,monospace;font-size:.85em;word-wrap:break-word;overflow-wrap:break-word}@media screen and (min-width: 768px){.projectDetail__markdown code{font-size:.9em}}.projectDetail__markdown :not(pre)>code{background:rgba(245,182,205,.12);color:#f5b6cd;padding:.1rem .3rem;border-radius:4px;border:1px solid rgba(245,182,205,.2)}@media screen and (min-width: 400px){.projectDetail__markdown :not(pre)>code{padding:.15rem .4rem}}.projectDetail__markdown pre{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:.65rem;overflow-x:auto;margin:.85rem 0;max-width:100%;box-sizing:border-box}@media screen and (min-width: 400px){.projectDetail__markdown pre{padding:.75rem;border-radius:8px;margin:1rem 0}}@media screen and (min-width: 768px){.projectDetail__markdown pre{padding:1rem}}.projectDetail__markdown pre code{background:none;color:#f5f5f5e6;padding:0;border:none;font-size:.75rem;line-height:1.45}@media screen and (min-width: 400px){.projectDetail__markdown pre code{font-size:.8rem;line-height:1.5}}@media screen and (min-width: 768px){.projectDetail__markdown pre code{font-size:.875rem}}.projectDetail__markdown pre::-webkit-scrollbar{height:6px}@media screen and (min-width: 768px){.projectDetail__markdown pre::-webkit-scrollbar{height:8px}}.projectDetail__markdown pre::-webkit-scrollbar-track{background:rgba(255,255,255,.02);border-radius:4px}.projectDetail__markdown pre::-webkit-scrollbar-thumb{background:rgba(56,189,248,.3);border-radius:4px}.projectDetail__markdown pre::-webkit-scrollbar-thumb:hover{background:rgba(56,189,248,.5)}.projectDetail__markdown blockquote{border-left:3px solid #38bdf8;background:rgba(56,189,248,.08);padding:.6rem .85rem;margin:1rem 0;border-radius:0 8px 8px 0;color:#f5f5f5e6;font-style:italic;font-size:.95rem}@media screen and (min-width: 768px){.projectDetail__markdown blockquote{border-left-width:4px;padding:.75rem 1rem;font-size:1rem}}.projectDetail__markdown blockquote p{margin:0}.projectDetail__markdown table{width:100%;border-collapse:collapse;margin:1.25rem 0;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:6px;overflow:hidden;font-size:.8rem;display:block;overflow-x:auto}@media screen and (min-width: 400px){.projectDetail__markdown table{font-size:.85rem;border-radius:8px;margin:1.5rem 0}}@media screen and (min-width: 768px){.projectDetail__markdown table{font-size:.9rem;display:table}}@media screen and (min-width: 992px){.projectDetail__markdown table{font-size:1rem}}.projectDetail__markdown thead{background:rgba(245,182,205,.15)}.projectDetail__markdown th{color:#f5b6cd;font-weight:500;text-align:left;padding:.5rem .6rem;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}@media screen and (min-width: 400px){.projectDetail__markdown th{padding:.6rem .75rem}}@media screen and (min-width: 768px){.projectDetail__markdown th{padding:.75rem 1rem;white-space:normal}}.projectDetail__markdown td{color:#f5f5f5db;padding:.5rem .6rem;border-bottom:1px solid rgba(255,255,255,.05)}@media screen and (min-width: 400px){.projectDetail__markdown td{padding:.6rem .75rem}}@media screen and (min-width: 768px){.projectDetail__markdown td{padding:.75rem 1rem}}.projectDetail__markdown tbody tr:last-child td{border-bottom:none}.projectDetail__markdown tbody tr:hover{background:rgba(255,255,255,.03)}.projectDetail__markdown hr{border:none;height:1px;background:linear-gradient(to right,transparent,rgba(245,182,205,.3),transparent);margin:2rem 0}.projectDetail__markdown img{max-width:100%;height:auto;border-radius:8px;margin:1rem 0;border:1px solid rgba(255,255,255,.08)}.projectDetail__markdown input[type=checkbox]{margin-right:.5rem;accent-color:#38bdf8}
