.elementor-kit-6{--e-global-color-primary:#041D32;--e-global-color-secondary:#95989E;--e-global-color-text:#000000;--e-global-color-accent:#FFFFFF;--e-global-color-0233376:#CACBCF;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-6 h1{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-6 h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-6 h3{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-6 h4{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-6 h5{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-6 h6{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Tworzy pionową linię */
.etapy {
    position: relative;
}

.etapy::before {
    content: '';
    position: absolute;
    left: 25px; /* Dopasuj do środka Twojego kwadracika */
    top: 10px;
    bottom: 0px;
    width: 2px;
    background-color: #ffffff;
    z-index: 0;
    height: calc(100% - 100px);
}

/* Gdy najeżdżasz na ostatni etap, linia w kontenerze głównym ma się skrócić */
/* GŁÓWNA DEKLARACJA (Desktop / Domyślna) */
.etapy:has(.etap:last-child:hover)::before {
    height: calc(100% - 220px);
    transition: height 0.4s ease;
}

/* 2. Tablet */
@media screen and (max-width: 768px) {
    .etapy:has(.etap:last-child:hover)::before {
        height: 65%;
    }
}

/* 3. Telefon */
@media screen and (max-width: 420px) {
    .etapy:has(.etap:last-child:hover)::before {
        height: 57%;
    }
}

/* 4. Bardzo mały telefon */
@media screen and (max-width: 395px) {
    .etapy:has(.etap:last-child:hover)::before {
        height: 54%;
    }
}



/* Ustawienie elementów, aby linia była pod spodem */
.etap {
    position: relative;
    z-index: 1;
 
}

/* Ukrywa treść domyślnie */
.opis-etapu {
max-height: 0;         /* Wysokość zero - "zwinięcie" */
    opacity: 0;            /* Pełna przezroczystość */
    overflow: hidden;      /* Ukrywa tekst wystający poza zero */
    transition: 
        max-height 0.5s ease, 
        opacity 0.4s ease, 
        margin 0.4s ease;  /* Płynne przejście */
    margin-top: 0;
    pointer-events: none;  /* Blokuje interakcję, gdy ukryte */
}

/* Pokazuje treść po najechaniu na cały etap */
.etap:hover .opis-etapu {
  max-height: 1000px;    /* Dowolna duża wartość, by zmieścić tekst */
    opacity: 1;            /* Pokazujemy treść */
    margin-top: 20px;      /* Dodajemy odstęp od nagłówka */
    pointer-events: auto;  /* Przywraca możliwość klikania w tekst */
}

#accordion-button summary {
    width: fit-content;
}


.page-content {
    overflow: hidden;
}/* End custom CSS */