.elementor-9 .elementor-element.elementor-element-8e1ed4a{--display:flex;--min-height:100svh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-around;--align-items:center;--overlay-opacity:0.08;}.elementor-9 .elementor-element.elementor-element-8e1ed4a::before, .elementor-9 .elementor-element.elementor-element-8e1ed4a > .elementor-background-video-container::before, .elementor-9 .elementor-element.elementor-element-8e1ed4a > .e-con-inner > .elementor-background-video-container::before, .elementor-9 .elementor-element.elementor-element-8e1ed4a > .elementor-background-slideshow::before, .elementor-9 .elementor-element.elementor-element-8e1ed4a > .e-con-inner > .elementor-background-slideshow::before, .elementor-9 .elementor-element.elementor-element-8e1ed4a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:radial-gradient(at center center, #52630E 0%, #000000 100%);}.elementor-9 .elementor-element.elementor-element-b2ab9d5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-9 .elementor-element.elementor-element-3ea9be8{width:var( --container-widget-width, 16% );max-width:16%;padding:15px 15px 15px 15px;--container-widget-width:16%;--container-widget-flex-grow:0;}.elementor-9 .elementor-element.elementor-element-d0e4355{width:auto;max-width:auto;top:0px;}body:not(.rtl) .elementor-9 .elementor-element.elementor-element-d0e4355{left:0px;}body.rtl .elementor-9 .elementor-element.elementor-element-d0e4355{right:0px;}.elementor-9 .elementor-element.elementor-element-541d464{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-9 .elementor-element.elementor-element-70cd2c8{text-align:center;}.elementor-9 .elementor-element.elementor-element-70cd2c8 .elementor-heading-title{font-family:"Syne", Sans-serif;font-size:107px;font-weight:600;color:#CFFF04;}.elementor-9 .elementor-element.elementor-element-b847534{width:100%;max-width:100%;text-align:center;}.elementor-9 .elementor-element.elementor-element-b847534 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-size:24px;font-weight:700;letter-spacing:-1.2px;color:var( --e-global-color-text );}.elementor-9 .elementor-element.elementor-element-939e7f2{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-9 .elementor-element.elementor-element-aedda04 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-size:19px;font-weight:600;text-transform:uppercase;color:#B9B9B9;}.elementor-9 .elementor-element.elementor-element-07fe853{--display:flex;--min-height:100svh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:100px;--padding-right:100px;}.elementor-9 .elementor-element.elementor-element-07fe853:not(.elementor-motion-effects-element-type-background), .elementor-9 .elementor-element.elementor-element-07fe853 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-ffa8213 );}.elementor-9 .elementor-element.elementor-element-58d62a9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9 .elementor-element.elementor-element-bbe1b91 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-weight:500;text-transform:uppercase;color:#BEBEBE;}.elementor-9 .elementor-element.elementor-element-9cad0cb{text-align:start;}.elementor-9 .elementor-element.elementor-element-9cad0cb .elementor-heading-title{font-family:"Syne", Sans-serif;font-size:45px;font-weight:600;color:#CFFF04;}.elementor-9 .elementor-element.elementor-element-d16d40b{margin:40px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-9 .elementor-element.elementor-element-d16d40b .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-weight:500;color:#BEBEBE;}.elementor-9 .elementor-element.elementor-element-5f4a841{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-9 .elementor-element.elementor-element-c3e13db{--display:flex;--min-height:100svh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-9 .elementor-element.elementor-element-c3e13db:not(.elementor-motion-effects-element-type-background), .elementor-9 .elementor-element.elementor-element-c3e13db > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-ffa8213 );}.elementor-9 .elementor-element.elementor-element-4a677f9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-between;}.elementor-9 .elementor-element.elementor-element-ec3e696 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-weight:500;text-transform:uppercase;color:#BEBEBE;}.elementor-9 .elementor-element.elementor-element-6b705dc{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-858de5f .elementor-heading-title{font-family:"Syne", Sans-serif;font-size:52px;font-weight:600;color:#FFFFFF;}.elementor-9 .elementor-element.elementor-element-858de5f .elementor-heading-title a:hover, .elementor-9 .elementor-element.elementor-element-858de5f .elementor-heading-title a:focus{color:var( --e-global-color-59d7985 );}.elementor-9 .elementor-element.elementor-element-295ca63 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-text );}.elementor-9 .elementor-element.elementor-element-16af3ce{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-5205a01 .elementor-heading-title{font-family:"Syne", Sans-serif;font-size:52px;font-weight:600;color:#FFFFFF;}.elementor-9 .elementor-element.elementor-element-5205a01 .elementor-heading-title a:hover, .elementor-9 .elementor-element.elementor-element-5205a01 .elementor-heading-title a:focus{color:var( --e-global-color-59d7985 );}.elementor-9 .elementor-element.elementor-element-8101e97 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-text );}.elementor-9 .elementor-element.elementor-element-21f5c93{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-2b0180a .elementor-heading-title{font-family:"Syne", Sans-serif;font-size:52px;font-weight:600;color:#FFFFFF;}.elementor-9 .elementor-element.elementor-element-2b0180a .elementor-heading-title a:hover, .elementor-9 .elementor-element.elementor-element-2b0180a .elementor-heading-title a:focus{color:var( --e-global-color-59d7985 );}.elementor-9 .elementor-element.elementor-element-c6ef6c0 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-text );}.elementor-9 .elementor-element.elementor-element-b788d7f{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:20px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-cef0a32 .elementor-heading-title{font-family:"Space Mono", Sans-serif;font-size:19px;font-weight:600;text-transform:uppercase;color:#B9B9B9;}.elementor-9 .elementor-element.elementor-element-32021fe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-32021fe:not(.elementor-motion-effects-element-type-background), .elementor-9 .elementor-element.elementor-element-32021fe > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-ffa8213 );}@media(min-width:768px){.elementor-9 .elementor-element.elementor-element-58d62a9{--width:50%;}.elementor-9 .elementor-element.elementor-element-5f4a841{--width:50%;}}@media(max-width:767px){.elementor-9 .elementor-element.elementor-element-8e1ed4a{--min-height:100svh;}.elementor-9 .elementor-element.elementor-element-3ea9be8{--container-widget-width:40%;--container-widget-flex-grow:0;width:var( --container-widget-width, 40% );max-width:40%;}.elementor-9 .elementor-element.elementor-element-70cd2c8 .elementor-heading-title{font-size:54px;}.elementor-9 .elementor-element.elementor-element-b847534 .elementor-heading-title{font-size:18px;}.elementor-9 .elementor-element.elementor-element-aedda04 .elementor-heading-title{font-size:14px;}.elementor-9 .elementor-element.elementor-element-07fe853{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-9 .elementor-element.elementor-element-bbe1b91{text-align:center;}.elementor-9 .elementor-element.elementor-element-9cad0cb{text-align:center;}.elementor-9 .elementor-element.elementor-element-9cad0cb .elementor-heading-title{font-size:27px;}.elementor-9 .elementor-element.elementor-element-d16d40b{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:justify;}.elementor-9 .elementor-element.elementor-element-5f4a841{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-4a677f9{--min-height:100vh;--justify-content:space-evenly;}.elementor-9 .elementor-element.elementor-element-ec3e696{text-align:center;}.elementor-9 .elementor-element.elementor-element-6b705dc{--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-858de5f .elementor-heading-title{font-size:20px;}.elementor-9 .elementor-element.elementor-element-295ca63 .elementor-heading-title{font-size:12px;}.elementor-9 .elementor-element.elementor-element-16af3ce{--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-5205a01 .elementor-heading-title{font-size:20px;}.elementor-9 .elementor-element.elementor-element-8101e97 .elementor-heading-title{font-size:12px;}.elementor-9 .elementor-element.elementor-element-21f5c93{--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-2b0180a .elementor-heading-title{font-size:20px;}.elementor-9 .elementor-element.elementor-element-c6ef6c0 .elementor-heading-title{font-size:12px;}.elementor-9 .elementor-element.elementor-element-cef0a32.elementor-element{--align-self:flex-start;}.elementor-9 .elementor-element.elementor-element-cef0a32 .elementor-heading-title{font-size:14px;}}/* Start custom CSS for html, class: .elementor-element-3ea9be8 */:root {
  --dimage-lime: #CCFF00; 
  --dimage-black: #0f172a; 
  --dimage-white: #ffffff;
}
.dimage-logo {
  height: auto;
  display: block;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  cursor: pointer;
}
.dimage-logo .fil0, 
.dimage-logo .fil1 {
  fill: var(--dimage-black);
  transition: fill 0.3s ease;
}
.dimage-logo .fil2 {
  fill: var(--dimage-black);
  transition: fill 0.3s ease;
}
.dimage-logo.on-dark .fil0,
.dimage-logo.on-dark .fil1 {
  fill: var(--dimage-lime);
  filter: drop-shadow(0 0 8px rgba(204, 255, 0, 0.4));
}
.dimage-logo.on-dark .fil2 {
  fill: var(--dimage-white);
}
.dimage-logo:hover .fil0,
.dimage-logo:hover .fil1 {
  fill: var(--dimage-lime);
}
.dimage-logo.on-dark:hover {
  transform: scale(1.05);
}
@keyframes popInBounce {
  0% {
    opacity: 0;
    transform: scale(0.5) translateY(20px);
  }
  60% {
    opacity: 1;
    transform: scale(1.1) translateY(0);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(-30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.dimage-logo.hero-anim .fil0, 
.dimage-logo.hero-anim .fil1, 
.dimage-logo.hero-anim .fil2 {
  opacity: 0;
  transform-origin: center center;
  will-change: transform, opacity;
}
.dimage-logo.hero-anim .fil0 {
  animation: popInBounce 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  animation-delay: 0.1s;
}
.dimage-logo.hero-anim .fil1 {
  animation: popInBounce 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  animation-delay: 0.2s;
}
.dimage-logo.hero-anim .fil2 {
  animation: slideInRight 0.8s ease-out forwards;
  animation-delay: 0.4s;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-70cd2c8 */.elementor-9 .elementor-element.elementor-element-70cd2c8 {
  color: #CFFF04;
  opacity: 0;
  filter: blur(10px);
  transform: scale(0.95);
  animation: focusIn 2.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes focusIn {
  100% {
    opacity: 1;
    filter: blur(0px);
    transform: scale(1);
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-b847534 */.elementor-9 .elementor-element.elementor-element-b847534 {
  color: #888;
  text-align: center;
  opacity: 0;
  letter-spacing: -2px;
  filter: blur(4px);
  animation: decryptText 3s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  animation-delay: 2s;
}
@keyframes decryptText {
  to {
    opacity: 1;
    letter-spacing: 1px;
    filter: blur(0px);
    color: #b0b0b0;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-aedda04 */.elementor-9 .elementor-element.elementor-element-aedda04 {
  font-family: 'Space Mono', monospace;
  font-size: 12px;
  text-transform: uppercase;
  color: #666;
  margin-top: 100px;
  position: relative;
  display: inline-block;
  opacity: 0; 
  animation: 
    fadeIn 1s ease-out 3.3s forwards,
    textPulse 3s ease-in-out 4.3s infinite;
}
.elementor-9 .elementor-element.elementor-element-aedda04::after {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 100%;
  margin-top: 15px;
  width: 1px;
  height: 5px;
  background-color: #CFFF04;
  margin: 10px auto 0;
  opacity: 0;
  animation: lineGrow 2s ease-in-out infinite;
  animation-delay: 3.5s;
}
@keyframes fadeIn {
  to { opacity: 1; }
}
@keyframes textPulse {
  0%, 100% { 
    color: #666; 
    text-shadow: none;
  }
  50% { 
    color: #fff; 
    text-shadow: 0 0 8px rgba(255,255,255,0.5); 
  }
}
@keyframes lineGrow {
  0% { height: 0px; opacity: 0; }
  50% { height: 15px; opacity: 1; }
  100% { height: 0px; opacity: 0; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e1ed4a */.elementor-9 .elementor-element.elementor-element-8e1ed4a {
    background-color: #050505;
    background-image: 
    radial-gradient(circle at center, transparent 20%, #000000 120%),
    repeating-linear-gradient(
      45deg,                  
      transparent,            
      transparent 4px,
      rgba(255, 255, 255, 0.07) 4px,
      rgba(255, 255, 255, 0.07) 5px
    );
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9cad0cb */.elementor-9 .elementor-element.elementor-element-9cad0cb {
  color: #CFFF04;
  opacity: 0;
  filter: blur(10px);
  transform: scale(0.95);
  animation: focusIn 2.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes focusIn {
  100% {
    opacity: 1;
    filter: blur(0px);
    transform: scale(1);
  }
}/* End custom CSS */
/* Start custom CSS *//* ==========================================================
   3. PORTFOLIO SECTION - FIX DLA ELEMENTORA (BARDZO WAŻNE)
   ========================================================== */

/* Ustawiamy sekcję jako punkt odniesienia dla zdjęć */
.portfolio-section {
    position: relative !important;
    background-color: #050505;
    /* To naprawia problemy z z-index w nowych przeglądarkach */
    isolation: isolate; 
}

/* NAPRAWA: Zmuszamy widget HTML, żeby nie blokował zdjęć */
.portfolio-section .elementor-widget-html {
    position: static !important;
    width: 100%;
    height: 100%;
}

/* KONTENER ZDJĘĆ - Rozciągamy na całą sekcję */
.portfolio-background {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; /* Najniższa warstwa (nad tłem sekcji) */
    pointer-events: none; /* Myszka przenika przez zdjęcia */
    overflow: hidden;
}

/* POJEDYNCZE ZDJĘCIA */
.bg-img {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    
    /* Stan domyślny (ukryte) */
    opacity: 0;
    transform: scale(1.1);
    filter: brightness(0.2) grayscale(20%); /* Przyciemnienie */
    
    /* Płynne przejścia */
    transition: opacity 0.6s ease-in-out, transform 4s ease-out;
    will-change: opacity, transform;
}

/* STAN AKTYWNY (Dodawany przez JS) */
.bg-img.active {
    opacity: 1 !important; /* Pokaż zdjęcie */
    transform: scale(1); /* Reset zoomu */
    z-index: 2; /* Przenieś nad inne, znikające zdjęcia */
}

/* LISTA PROJEKTÓW - Musi być na wierzchu */
.project-list {
    position: relative !important;
    z-index: 10 !important; /* Wyżej niż zdjęcia */
}

/* Stylizacja elementów listy */
.project-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    transition: border-color 0.3s ease;
    cursor: pointer; 
    /* Ważne dla JS: */
    position: relative;
    z-index: 20; 
}

.project-item:hover {
    border-color: rgba(207, 255, 4, 0.5);
}

/* Typografia Listy */
.project-name .elementor-heading-title {
    font-family: 'Archivo Black', sans-serif;
    font-size: clamp(2rem, 5vw, 5rem);
    color: #ffffff;
    text-transform: uppercase;
    transition: color 0.3s ease, transform 0.3s ease;
    margin: 0;
}

.project-cat .elementor-widget-container,
.project-cat .elementor-heading-title {
    font-family: 'Space Mono', monospace;
    font-size: 14px;
    color: #888;
    text-transform: uppercase;
    transition: color 0.3s ease, transform 0.3s ease;
    text-align: right;
}

/* Efekty Hover na tekście */
.project-item:hover .project-name .elementor-heading-title {
    color: #CFFF04;
    transform: translateX(20px);
}

.project-item:hover .project-cat .elementor-widget-container {
    color: #fff;
    transform: translateX(-20px);
}

/* Przygaszenie nieaktywnych elementów */
.project-list:hover .project-item:not(:hover) {
    opacity: 0.3;
}

/* =========================================
   4. RESPONSYWNOŚĆ (MOBILE)
   ========================================= */
@media (max-width: 768px) {
    .project-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    .project-name .elementor-heading-title {
        font-size: 2.5rem;
    }
    
    .project-cat .elementor-widget-container {
        text-align: left;
    }
    
    .project-item:hover .project-cat .elementor-widget-container {
        transform: translateX(10px);
    }
}/* End custom CSS */