@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Raleway:wght@300;400;500;600;700&display=swap);
*,*::before,*::after{margin:0;padding:0;box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%;scroll-behavior:smooth}@media (max-width: 1500px){html{font-size:57.25%}}@media (max-width: 1200px){html{font-size:50%}}@media (max-width: 770px){html{font-size:43.75%}}@media (max-width: 615px){html{font-size:40%}}@media (max-width: 350px){html{font-size:35%}}body{min-height:100vh;color:#fafafa;font-family:montserrat, sans-serif;background-color:#1a1a1a;overflow-x:hidden}li{list-style:none}a{text-decoration:none;color:inherit}button{border:none;outline:none;background-color:transparent;color:inherit}.about{width:1300px;margin-left:auto;margin-right:auto;display:flex;flex-direction:column;align-items:center}@media (max-width: 1500px){.about{width:1100px}}@media (max-width: 1200px){.about{width:auto}}.about__heading:before{position:absolute;content:'';border-bottom:18px solid #ff4d5a;width:16rem;display:block;margin:0 auto;position:relative;left:3.5rem;top:6.3rem;z-index:-1}@media (max-width: 770px){.about__heading:before{border-bottom:14px solid #ff4d5a}}.about__content{display:flex;justify-content:space-between;width:100%}@media (max-width: 1300px){.about__content{flex-direction:column}}.profile{position:relative;display:flex;flex-direction:column;align-items:center;font-weight:500;left:-300px;opacity:0;transition:all 1.1s}@media (max-width: 1301px){.profile{margin-bottom:10rem;left:0;opacity:1}}@media (max-width: 1000px){.profile{margin-bottom:7rem}}.profile__picture{height:24rem;margin-bottom:4rem;display:flex;justify-content:flex-start;align-items:center}.profile__picture svg{transition:all 1.1s}.profile__blurb{font-size:1.8rem;width:500px;line-height:1.8}@media (max-width: 600px){.profile__blurb{width:80vw;margin-left:auto;margin-right:auto}}.profile__fade-in{opacity:1;transform:translateX(300px)}@media (max-width: 1300px){.profile__fade-in{transform:translateX(0)}}.skills{display:flex;justify-content:center}.skills__row{display:flex;flex-direction:column;justify-content:center}.skills__row:not(:last-child){margin-right:25px}@media (max-width: 410px){.skills__row:not(:last-child){margin-right:15px}}@media (max-width: 300px){.skills__row:not(:last-child){margin-right:10px}}.skills__item{opacity:0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;height:100px;width:160px;border:double 3px transparent;border-image-slice:1;border-width:3px;background-image:linear-gradient(#1a1a1a, #1a1a1a),radial-gradient(circle at top left, #51a2e9, #ff4d5a);border-radius:10px;background-origin:border-box;background-clip:content-box, border-box;transition:transform 0.2s, opacity 1.2s;overflow:hidden}@media (max-width: 1500px){.skills__item{height:90px;width:145px}}@media (max-width: 1300px){.skills__item{opacity:1;border-width:2px}}@media (max-width: 1000px){.skills__item{height:80px;width:130px}}@media (max-width: 600px){.skills__item{height:70px;width:115px}}@media (max-width: 500px){.skills__item{height:60px;width:100px}}@media (max-width: 410px){.skills__item{height:50px;width:80px}}@media (max-width: 340px){.skills__item{height:45px;width:70px}}.skills__item:not(:last-child){margin-bottom:3rem}@media (max-width: 410px){.skills__item:not(:last-child){margin-bottom:15px}}.skills__item img{height:60px;width:auto;transition:all 0.2s}@media (max-width: 1500px){.skills__item img{height:55px}}@media (max-width: 1000px){.skills__item img{height:50px}}@media (max-width: 600px){.skills__item img{height:45px}}@media (max-width: 500px){.skills__item img{height:35px}}@media (max-width: 410px){.skills__item img{height:26px}}.skills__item-name{font-size:1.2rem;font-weight:600;line-height:1;transition:all 0.2s;letter-spacing:1px}@media (max-width: 1200px){.skills__item-name{font-size:1.4rem}}.skills__item-fade-in{opacity:1}.skills__item--js img{border-radius:5px}.skills__item--webpack img{border-radius:50%}@keyframes moveInLeft{0%{opacity:0;transform:translateX(-10rem)}100%{opacity:1;transform:translateX(0)}}@keyframes moveInRight{0%{opacity:0;transform:translateX(10rem)}100%{opacity:1;transform:translateX(0)}}@keyframes moveInBottom{0%{opacity:0;transform:translateY(4rem)}100%{opacity:1;transform:translateY(0)}}@keyframes bounce{0%{transform:translateY(0)}50%{transform:translateY(-1rem)}100%{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.contact{position:relative;margin-left:auto;margin-right:auto;display:flex;width:500px;flex-direction:column;align-items:center;justify-content:center;z-index:10;margin-bottom:10rem}@media (max-width: 700px){.contact{width:400px}}@media (max-width: 470px){.contact{width:330px}}@media (max-width: 400px){.contact{width:260px}}.contact__heading{margin-top:-4rem !important;margin-bottom:6rem !important}.contact__heading:before{position:absolute;content:'';border-bottom:18px solid #ff4d5a;width:21rem;display:block;margin:0 auto;position:relative;left:3.5rem;top:6.3rem;z-index:-1}@media (max-width: 770px){.contact__heading:before{border-bottom:14px solid #ff4d5a}}.contact__text{font-size:1.8rem;margin-bottom:6rem}.contact__form{display:flex;flex-direction:column;align-items:center;justify-content:center}.contact__form-name,.contact__form-email{margin-bottom:6px;padding:1rem;height:4rem}.contact__form-message{height:12rem;padding:1rem}.contact__form-submit-2{align-self:flex-start;margin-top:0 !important}.contact__form-submit{align-self:flex-start;position:relative;padding:0.6rem 1rem;width:fit-content;font-size:1.6rem;text-transform:uppercase;font-weight:700;letter-spacing:3px;z-index:9;cursor:pointer}.contact__form-submit:hover{color:#1a1a1a;font-weight:700}.contact__form-submit:after{position:absolute;content:'';border-bottom:2px solid #ff4d5a;width:calc(100% + 2rem);left:-14%;top:0.5rem;display:block;margin:0 auto;position:relative;transform-origin:bottom;transition:all 0.2s;z-index:-1}.contact__form-submit:hover:after{transform:scaleY(17.5)}@media (max-width: 1500px){.contact__form-submit:hover:after{transform:scaleY(16.5)}}@media (max-width: 1200px){.contact__form-submit:hover:after{transform:scaleY(14)}}@media (max-width: 770px){.contact__form-submit:hover:after{transform:scaleY(12.5)}}.contact input,.contact textarea{width:500px;resize:none;border:none;color:inherit;background-color:#282828;font-size:1.6rem;font-family:monserrat, sans-serif;border-left:2px solid transparent;border-radius:0}@media (max-width: 700px){.contact input,.contact textarea{width:400px}}@media (max-width: 470px){.contact input,.contact textarea{width:330px}}@media (max-width: 400px){.contact input,.contact textarea{width:260px}}.contact input:focus,.contact textarea:focus{outline:none}.contact input::placeholder,.contact textarea::placeholder{color:rgba(250,250,250,0.6);opacity:1}.contact input :-ms-input-placeholder,.contact textarea :-ms-input-placeholder{color:rgba(250,250,250,0.6)}.contact input ::-ms-input-placeholder,.contact textarea ::-ms-input-placeholder{color:rgba(250,250,250,0.6)}.contact__form-error-submit{margin-top:1.5rem;height:7rem;width:100%;display:flex;justify-content:space-between;align-items:center}.form-error{align-self:start;font-size:1.6rem;font-weight:500;line-height:1.5}.form-error>*{display:none}.input-error{border-left:2px solid #ff4d5a !important}.footer{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;height:160px;background-color:#282828}.socials{display:flex;margin-bottom:20px}.socials__github,.socials__email{display:flex;justify-content:center;align-items:center;height:35px;background-color:transparent;cursor:pointer;transition:all 0.2s}.socials__github:hover,.socials__email:hover{transform:scale(1.2)}.socials__github{margin-right:1rem}.socials__email{margin-left:1rem}.socials img{height:100%}.copyright{color:#fafafa;font-size:10px;font-weight:500}.return-home{position:absolute;top:-25px;width:40px;height:45px;margin-right:auto;margin-left:auto;left:0;right:0;text-align:center;background-color:#ff4d5a;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;animation-iteration-count:infinite;-webkit-animation-iteration-count:infinite}.return-home:hover{cursor:pointer;animation-name:bounce;-moz-animation-name:bounce}.return-home svg{width:100%}.hero{position:relative;display:flex;height:100vh;width:100%;z-index:999}.canvas{position:absolute;top:0;right:0;left:0;bottom:0;width:100%;height:100vh;background-color:#1a1a1a;overflow:hidden}.connecting-dots{height:100%;width:100%}.heading{position:relative;align-self:center;justify-self:center;display:flex;flex-direction:column;align-items:center;line-height:normal;width:fit-content;height:auto;margin-left:auto;margin-right:auto;color:#fafafa;font-weight:300;z-index:999}.heading__line-1{animation-name:moveInLeft}.heading__line-1 span{color:#ff4d5a;font-weight:400}.heading__line-2{animation-name:moveInRight}.heading__line-1,.heading__line-2{font-size:6rem;background-color:rgba(26,26,26,0.25);animation-duration:1.4s;animation-timing-function:cubic-bezier(0.21, 1.11, 0.81, 0.99)}@media (max-width: 700px){.heading__line-1,.heading__line-2{font-size:5rem;text-align:center;margin-left:4rem;margin-right:4rem}}@media (max-width: 550px){.heading__line-1,.heading__line-2{font-size:5rem}}.heading-cta{position:relative;display:flex;align-items:center;margin-top:2.4rem;padding:0.8rem 3rem;width:27.5rem;height:4.8rem;background-color:rgba(26,26,26,0.6);border:2px solid #ff4d5a;border-radius:2px;color:#ff4d5a;font-size:2.4rem;font-weight:500;cursor:pointer;animation:moveInBottom 0.7s 1.2s;animation-fill-mode:backwards;animation-timing-function:cubic-bezier(0.21, 1.11, 0.81, 0.99)}@media (max-width: 1500px){.heading-cta{width:auto}}@media (max-width: 700px){.heading-cta{margin-top:1.8rem}}@media (max-width: 550px){.heading-cta{padding:0.8rem 2rem}}.heading-cta:before,.heading-cta:after{content:'';position:absolute;top:-2px;left:-2px;width:27.5rem;height:4.8rem;border-radius:3px;border:2px solid #ff4d5a;filter:blur(0);transform-origin:50%;z-index:-1}@media (max-width: 1500px){.heading-cta:before,.heading-cta:after{width:27.8rem}}@media (max-width: 1200px){.heading-cta:before,.heading-cta:after{width:28.5rem;border:2px solid transparent}}.heading-cta:hover{transform:translateY(-2px)}.heading-cta:hover:before,.heading-cta:hover:after{border-color:transparent;filter:blur(2px);transform:scaleX(1.3) scaleY(2.2);transition:800ms transform ease, 1900ms blur ease, 700ms border-color ease;pointer-events:none}.heading-cta:hover:after{transition-delay:150ms}.heading-cta:active{transform:translateY(-1px)}.heading__arrow{display:inline-block;height:24px;width:24px;margin-left:15px;transform:rotate(90deg);fill:#ff4d5a;transition:all 0.3s}@media (max-width: 770px){.heading__arrow{height:20px;width:20px}}@media (max-width: 615px){.heading__arrow{margin-left:10px}}@media (max-width: 550px){.heading__arrow{height:16px;width:16px}}.main-bg{height:100vh;position:fixed;top:0;width:100%;background-color:royalblue}.navigation{display:flex;margin-right:10rem;font-size:2rem;font-weight:500;letter-spacing:1px}@media (max-width: 1200px){.navigation{margin-right:3rem}}@media (max-width: 700px){.navigation{margin-right:0}}.navigation-bar{position:sticky;position:-webkit-sticky;top:0;display:flex;justify-content:flex-end;align-items:center;height:6rem;border-bottom:1px solid #1a1a1a;background-color:rgba(40,40,40,0.95);backdrop-filter:blur(8px);box-shadow:0 4px 4px rgba(0,0,0,0.3);z-index:99999999999}@media (max-width: 700px){.navigation-bar{justify-content:center}}.navigation__item{transition:all 0.2s}.navigation__item:not(:last-child){margin-right:3rem}.navigation__item--active{color:#ff4d5a}.navigation__item:hover{color:#ff4d5a}.projects{display:flex;flex-direction:column;justify-content:center;align-items:center}.projects__heading:before{position:absolute;content:'';border-bottom:18px solid #ff4d5a;width:22.5rem;display:block;margin:0 auto;position:relative;left:3.5rem;top:6.3rem;z-index:-1}@media (max-width: 770px){.projects__heading:before{border-bottom:14px solid #ff4d5a}}.project{position:relative;display:flex;margin-bottom:14rem;justify-content:flex-start}@media (max-width: 560px){.project{margin-bottom:12rem}}@media (max-width: 440px){.project{margin-bottom:10rem}}.project__image-container{position:relative;height:70rem;width:100rem;background-color:#3216bb;transition:all 0.2s;cursor:pointer}@media (max-width: 1100px){.project__image-container{height:64rem;width:90rem}}@media (max-width: 970px){.project__image-container{height:58rem;width:80rem}}@media (max-width: 900px){.project__image-container{height:54rem;width:75rem}}@media (max-width: 700px){.project__image-container{height:48rem;width:64rem}}@media (max-width: 560px){.project__image-container{height:40rem;width:52rem}}@media (max-width: 440px){.project__image-container{height:30rem;width:39rem}}.project__image-container:hover{transform:scale(0.95)}.project__image-image{width:85%;position:relative}.project__image-image img{width:100%}.project__info{position:relative;top:8rem;height:fit-content;padding:1rem;z-index:9999999}@media (max-width: 1000px){.project__info{width:fit-content}}@media (max-width: 700px){.project__info{background-color:rgba(26,26,26,0.5)}}@media (max-width: 560px){.project__info{top:4rem}}@media (max-width: 440px){.project__info{top:2rem}}@media (max-width: 400px){.project__info{top:0}}.project__title{position:relative;z-index:66;font-size:3.5rem}@media (max-width: 900px){.project__title{font-size:3rem}}@media (max-width: 820px){.project__title{font-size:2.7rem}}@media (max-width: 550px){.project__title{font-size:2.5rem}}@media (max-width: 400px){.project__title{font-size:2.2rem}}.project__description{position:relative;margin-top:3rem;font-size:1.8rem;font-weight:500;z-index:999909999}@media (max-width: 560px){.project__description{margin-top:2rem}}.project__live-2{font-size:1.6rem;font-weight:700;letter-spacing:3px;line-height:1;text-transform:uppercase;display:flex;flex-direction:column;justify-content:center;align-items:center;width:fit-content;padding:1rem 1.2rem;position:relative;margin-top:3rem;cursor:pointer}@media (max-width: 560px){.project__live-2{margin-top:2rem}}.project__live-2:after{position:absolute;content:'';height:2px;background-color:#ff4d5a;width:100%;bottom:1px;display:block;transform-origin:bottom;transition:all 0.25s;z-index:-1}.project__live-2:hover{color:#1a1a1a}.project__live-2:hover:after{height:100%}.project__live,.project__code{position:relative;margin-top:3rem;padding:0.6rem 1rem;width:fit-content;font-size:1.6rem;text-transform:uppercase;font-weight:700;letter-spacing:3px;z-index:9;transition:all 0.2s;cursor:pointer}@media (max-width: 560px){.project__live,.project__code{margin-top:2rem}}.project__live:hover,.project__code:hover{color:#1a1a1a;font-weight:700}.project__live:after,.project__code:after{position:absolute;content:'';border-bottom:2px solid #ff4d5a;width:calc(100% + 2rem);left:-10%;top:0.5rem;display:block;margin:0 auto;position:relative;transform-origin:bottom;transition:all 0.2s;z-index:-1}.project__live:hover:after,.project__code:hover:after{transform:scaleY(17.5)}@media (max-width: 1500px){.project__live:hover:after,.project__code:hover:after{transform:scaleY(16.5)}}@media (max-width: 1200px){.project__live:hover:after,.project__code:hover:after{transform:scaleY(14)}}@media (max-width: 770px){.project__live:hover:after,.project__code:hover:after{transform:scaleY(12.5)}}.project__code:after{width:calc(100% + 2rem);left:-8%}.project-left{align-self:flex-start;margin-left:22rem}@media (max-width: 1700px){.project-left{margin-left:11rem}}@media (max-width: 1500px){.project-left{margin-left:0}}.project-left .project__info{left:-8rem;margin-right:-2rem}@media (max-width: 800px){.project-left .project__info{margin-right:-4rem}}@media (max-width: 770px){.project-left .project__info{margin-right:-4rem}}@media (max-width: 600px){.project-left .project__info{margin-right:-6rem}}@media (max-width: 440px){.project-left .project__info{left:-10rem;margin-right:-7rem}}.project-right{align-self:flex-end;}@media (max-width: 1700px){.project-right{margin-right:11rem}}@media (max-width: 1500px){.project-right{margin-right:0}}.project-right .project__info{right:-8rem;margin-left:-2rem}@media (max-width: 770px){.project-right .project__info{margin-left:-4rem}}@media (max-width: 600px){.project-right .project__info{margin-left:-6rem}}@media (max-width: 440px){.project-right .project__info{right:-10rem;margin-left:-7rem}}.retro{display:flex;align-items:flex-end;justify-content:center}.retro img{margin-bottom:-3px}.todo{display:flex;align-items:center;justify-content:flex-end}.weather{display:flex;align-items:center;justify-content:flex-start}.section-heading{position:relative;font-size:5.5rem;font-weight:700;margin-top:9rem;margin-bottom:13rem;z-index:9999}@media (max-width: 1200px){.section-heading{margin-bottom:10rem}}@media (max-width: 1000px){.section-heading{margin-top:6rem}}

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@300;400;500;600;700&display=swap');

/* Reset */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: inherit;
}

html {
    box-sizing: border-box;
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    color: #fafafa;
    font-family: 'Montserrat', sans-serif;
    background-color: #1a1a1a;
    overflow-x: hidden;
}

li { list-style: none; }
a { text-decoration: none; color: inherit; }
button { border: none; outline: none; background-color: transparent; color: inherit; }

/* TEST BUTTON */
.test-button {
    position: fixed;
    right: 3rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99999;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1.2rem 2rem;
    font-size: 1.6rem;
    font-weight: 600;
    font-family: 'Raleway', sans-serif;
    color: #fafafa;
    background: rgba(40, 40, 40, 0.85);
    border: 2px solid #ff4d5a;
    border-radius: 3rem;
    box-shadow: 0 0 15px rgba(255, 77, 90, 0.25);
    backdrop-filter: blur(6px);
    cursor: pointer;
    transition: all 0.25s ease;
}

.test-button:hover {
    color: #1a1a1a;
    background-color: #ff4d5a;
    box-shadow: 0 0 25px rgba(255, 77, 90, 0.5);
    transform: translateY(-50%) scale(1.05);
}

.test-button:active {
    transform: translateY(-50%) scale(0.97);
}

@media (max-width: 600px) {
    .test-button {
        right: 1.5rem;
        bottom: 2rem;
        top: auto;
        transform: none;
        padding: 1rem 1.6rem;
        font-size: 1.4rem;
        border-radius: 2rem;
    }
}

/* === SKILLS SECTION === */
.skills-section {
    padding: 50px 20px;
    text-align: center;
    background-color: #1a1a1a;
    color: #fafafa;
}

/* === GRID === */
.skills-grid {
    display: grid;
    grid-template-columns: repeat(3, 120px); /* 3 kolumny */
    grid-auto-rows: 120px;
    gap: 15px; /* mniejsze odstępy między wierszami */
    justify-content: center;
    align-items: start;
    margin-top: 30px;
    position: relative;
}

/* === POJEDYNCZA IKONA === */
.skills__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 0;
    transform: translateY(25px);
    transition: all 2.5s ease-out;
    width: 100px;
    height: 100px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(255,77,90,0.25), rgba(255,255,255,0.1));
    border: 2px solid transparent;
    background-clip: padding-box, border-box;
    background-origin: border-box;
    position: relative;
}

/* Efekt gradientowej ramki */
.skills__item::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 12px;
    padding: 2px;
    background: linear-gradient(135deg, #ff4d5a, #ff7e00);
    -webkit-mask:
            linear-gradient(#fff 0 0) content-box,
            linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}

/* Efekt hover – delikatne uniesienie i rozświetlenie */
.skills__item:hover {
    transform: translateY(-4px);
    box-shadow: 0 0 15px rgba(255, 77, 90, 0.4);
}

/* Obrazek w ramce */
.skills__item img {
    width: 60px;
    height: 60px;
    object-fit: contain;
    margin-bottom: 6px;
    z-index: 2;
}

.skills__name {
    font-size: 0.9rem;
    font-weight: 600;
    color: #fafafa;
    z-index: 2;
}

/* === GRID 3x3 === */
.skills-grid {
    display: grid;
    grid-template-columns: repeat(3, 120px); /* 3 kolumny */
    grid-auto-rows: 140px; /* wysokość komórki */
    gap: 20px; /* odległość między wierszami */
    justify-content: center;
    align-items: start;
    margin-top: 30px;
    position: relative;
}

/* === Ustawienie wysokości “schodkowej” === */
.skills-grid > :nth-child(1), /* lewa kolumna */
.skills-grid > :nth-child(4),
.skills-grid > :nth-child(7) {
    margin-top: 0;
}

.skills-grid > :nth-child(2), /* środkowa kolumna */
.skills-grid > :nth-child(5),
.skills-grid > :nth-child(8) {
    margin-top: -35px; /* wyżej o 25px */
}

.skills-grid > :nth-child(3), /* prawa kolumna */
.skills-grid > :nth-child(6),
.skills-grid > :nth-child(9) {
    margin-top: 0;
}

/* === Animacja fadeIn w losowej kolejności === */
.skills-grid > :nth-child(1) { animation: fadeInStep 4s ease-out 0.5s forwards; }
.skills-grid > :nth-child(2) { animation: fadeInStep 4s ease-out 2s forwards; }
.skills-grid > :nth-child(3) { animation: fadeInStep 4s ease-out 1s forwards; }
.skills-grid > :nth-child(4) { animation: fadeInStep 4s ease-out 3s forwards; }
.skills-grid > :nth-child(5) { animation: fadeInStep 4s ease-out 0.2s forwards; }
.skills-grid > :nth-child(6) { animation: fadeInStep 4s ease-out 2.5s forwards; }
.skills-grid > :nth-child(7) { animation: fadeInStep 4s ease-out 1.5s forwards; }
.skills-grid > :nth-child(8) { animation: fadeInStep 4s ease-out 3.8s forwards; }
.skills-grid > :nth-child(9) { animation: fadeInStep 4s ease-out 0.8s forwards; }

/* === Definicja animacji === */
@keyframes fadeInStep {
    from {
        opacity: 0;
        transform: translateY(40px) scale(0.95);
    }
    50% {
        opacity: 0.6;
        transform: translateY(10px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}


.profile.profile__fade-in {
    transform: translateX(50px); /* przesunięcie w prawo na stałe */
    opacity: 0;
    animation: slideInFromLeft 1.2s forwards;
    animation-delay: 1s;
}

@keyframes slideInFromLeft {
    from { opacity: 0; transform: translateX(0); }
    to   { opacity: 1; transform: translateX(250px); }
}

footer.footer {
    box-sizing: border-box; /* żeby padding nie zmniejszał szerokości */
    flex-direction: column;
    justify-content: center;
    background-color: #1a1a1a; /* dopasuj kolor */
}


.project {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3rem;

}

/* Naprzemienny układ */
.project-left {
    flex-direction: row;
}

.project-right {
    flex-direction: row-reverse;
}

/* Ograniczenie szerokości tekstu */
.project__info {
    max-width: 700px; /* <= możesz dostosować np. 450–550px */
    line-height: 1.6;
    text-align: justify;
}

/* Styl dla kontenera zdjęcia */
.project__image {
    position: relative;
    display: inline-block;
    background-color: #007bff20; /* delikatne niebieskie tło z przezroczystością */
    padding: 10px; /* tło tylko trochę większe od zdjęcia */
    border-radius: 12px;
}

/* Kontener zdjęcia za efektem hover */
.project__image-container {
    position: relative;
    display: flex;
    align-items: center; /* wyśrodkowanie w pionie */
    justify-content: center;
    background-color: #007bff25; /* bardzo delikatny niebieski */
    padding: 35px 50px; /* tło trochę większe niż zdjęcie */
    border-radius: 16px;
    box-shadow: 0 4px 15px rgba(0, 123, 255, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    width: fit-content;
    height: fit-content;
    overflow: visible;
}

.project__image-container:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 20px rgba(0, 123, 255, 0.25);
}

/* Samo zdjęcie - większe o ~50% */
.project__image-container img {
    display: block;
    width: 200%; /* 50% większe niż wcześniej */
    height: auto;
    border-radius: 12px;
}

/* Zdjęcie przy zewnętrznej krawędzi projektu */
.project-left .project__image-container {
    margin-right: auto; /* przy lewej krawędzi */
}

.project-right .project__image-container {
    margin-left: auto; /* przy prawej krawędzi */
}

/* Lekkie wystawienie zdjęcia poza tło */
.project-left .project__image-container img {
    position: relative;
    right: -10px;
}

.project-right .project__image-container img {
    position: relative;
    left: -75px;
}

/* Responsywność (telefon/tablet) */
@media (max-width: 900px) {
    .project {
        flex-direction: column;
        text-align: center;
    }

    .project__info {
        max-width: 90%;
    }

    .project__image-container img {
        width: 90%; /* zdjęcie dopasowane do ekranu */
    }
}

/* Kontener zdjęcia z tłem */
.project__image-container {
    position: relative;
    display: flex;
    align-items: center;       /* wyśrodkowanie w pionie */
    justify-content: center;   /* wyśrodkowanie w poziomie */
    background-color: #007bff25; /* delikatne niebieskie tło */
    padding: 40px;             /* większe tło wokół zdjęcia */
    border-radius: 16px;
    box-shadow: 0 8px 25px rgba(0, 123, 255, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    width: fit-content;
    height: fit-content;
    overflow: visible;
    margin-top: 100px;          /* odseparowanie od góry */
}

/* Efekt hover */
.project__image-container:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 123, 255, 0.25);
}

/* Zdjęcie wewnątrz kontenera */
.project__image-container img {
    display: block;
    width: 500px;      /* większe zdjęcie */
    height: auto;
    border-radius: 12px;
}

/* Wyśrodkowanie zdjęcia po lewej/prawej stronie projektu */
.project-left .project__image-container {
    justify-content: flex-start;
}

.project-right .project__image-container {
    justify-content: flex-end;
}

/* Responsywność na mniejsze ekrany */
@media (max-width: 900px) {
    .project {
        flex-direction: column;
        text-align: center;
    }

    .project__info {
        max-width: 90%;
        margin: 0 auto;
    }

    .project__image-container {
        justify-content: center;
        padding: 20px;
        margin-top: 20px;
    }

    .project__image-container img {
        width: 90%; /* dopasowanie do ekranu */
        height: auto;
    }
}




.contact__form{

    text-align: center;          /* wyśrodkowanie poziome */
    display: flex;               /* używamy flexbox */
    justify-content: center;     /* wyśrodkowanie poziome */
    align-items: center;         /* wyśrodkowanie pionowe */
    width: 100%;                 /* zajmuje całą szerokość kontenera */
    font-size: 1.6rem;
    margin-bottom: -8rem;         /* jeśli chcesz odstęp pod spodem */
}


.f{
    font-size: 2rem;
    text-align: center;
    margin-bottom: 4rem;
}

/* Navbar (przykładowy) */
.navigation-bar {
    position: sticky;
    top: 0;
    z-index: 9999; /* np. taki miałeś */
}

/* Test button */
.test-button {
    position: fixed;
    right: 3rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 100000; /* wyższy niż navbar */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1.2rem 2rem;
    font-size: 1.6rem;
    font-weight: 600;
    font-family: 'Raleway', sans-serif;
    color: #fafafa;
    background: rgba(40, 40, 40, 0.85);
    border: 2px solid #ff4d5a;
    border-radius: 3rem;
    box-shadow: 0 0 15px rgba(255, 77, 90, 0.25);
    backdrop-filter: blur(6px);
    cursor: pointer;
    transition: all 0.25s ease;
}