.container{display:flex;flex-direction:column;justify-content:center;min-height:90dvh;gap:50px;margin:0 auto}.gradient-home{position:absolute;top:0;left:0;width:100dvw;height:100dvh;z-index:-1;overflow:visible;background-color:var(--background);background-image:radial-gradient(100% 100vh at 50% 0,var(--background-accent) 0,var(--background) 100%);background-image:radial-gradient(100% 100dvh at 50% 0,var(--background-accent) 0,var(--background) 100%);animation:homeGradient 1s ease}@keyframes homeGradient{0%{top:-100%}to{top:0}}.projects-section__header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px}.projects-section__header h1{font-family:var(--font-playfair);font-size:48px;font-style:italic;font-weight:500}.projects-section__header p{font-family:var(--font-poppins);font-size:16px}.about-section{gap:40px}.about-section,.about-section__info{display:flex;flex-direction:column;align-items:center}.about-section__info{justify-content:center;padding:12px;gap:24px}.about-section__info h1{font-family:var(--font-playfair);font-size:48px;font-style:italic;font-weight:500}.about-section__info__p{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:720px;font-size:14px;gap:12px}.about-section__info__p p{text-align:center}.contact{gap:50px}.contact,.contact__info{display:flex;flex-direction:column}.contact__info{align-items:center;justify-content:center;gap:12px}.contact__info h1{font-family:var(--font-playfair);font-size:48px;font-style:italic;font-weight:500}.contact__info p{font-family:var(--font-poppins);font-size:16px;max-width:720px;text-align:center}.contact__info .open-to-work{display:flex;align-items:center;padding:8px 16px;background-color:color-mix(in oklab,var(--foreground) 10%,var(--background));gap:8px;border-radius:5px}.contact__info .open-to-work .dot{width:8px;height:8px;background-color:#00ff15;border-radius:50%;box-shadow:0 0 5px 3px color-mix(in oklab,#00FF15 15%,transparent),0 0 4px 1px color-mix(in oklab,#00FF15 30%,transparent),0 0 2px 0 #00ff15}.contact__info .open-to-work p{font-family:var(--font-poppins);font-size:16px;color:var(--foreground)}.contact__links{display:flex;align-items:center;justify-content:center;gap:20px}@media(max-width:768px){.contact__links{flex-direction:column}}.contact__links a{font-family:var(--font-poppins);font-size:14px;color:var(--foreground);display:flex;gap:10px;align-items:center}.contact__links a:hover{text-decoration:underline}.carousel{position:relative;width:100%;margin:0;overflow:visible;display:flex;align-items:center;justify-content:center;--slides-to-show:3}@media(max-width:767px){.carousel{--slides-to-show:1}}.carousel__viewport{position:relative;width:100%;overflow:hidden;z-index:10}.carousel__viewport:before{left:0;background:linear-gradient(to right,var(--background),transparent)}.carousel__viewport:after,.carousel__viewport:before{content:"";position:absolute;top:0;width:42px;height:100%;z-index:15;pointer-events:none}.carousel__viewport:after{right:0;background:linear-gradient(to left,var(--background),transparent)}.carousel__track{display:flex;transition:transform .4s ease-in-out;will-change:transform;transform:translateX(calc(-1 * var(--index, 0) * 100% / var(--slides-to-show) + var(--drag-offset, 0%)))}.carousel__track.is-dragging{cursor:grabbing}.carousel__item{flex:0 0 calc(100%/var(--slides-to-show));padding:1rem}.carousel__item,.carousel__item .carousel-card{display:flex;align-items:center;justify-content:center}.carousel__item .carousel-card{width:100%;height:200px;border-radius:12px;background:#2b2b28;color:#fff;font-weight:600;letter-spacing:.3px}.carousel__button{background:color-mix(in oklab,var(--foreground) 15%,transparent);border:none;color:var(--foreground);font-size:2rem;cursor:pointer;user-select:none;display:flex;padding:4px;border-radius:6px;z-index:20;transition:background-color .2s ease,color .2s ease,transform .2s ease}.carousel__button:hover{background-color:color-mix(in oklab,var(--foreground) 20%,transparent);transform:scale(1.05)}.carousel__button--prev{position:absolute;left:.25rem}.carousel__button--next{position:absolute;right:.25rem}