.first-section {
            display: flex;
            height: 100vh;
            position: relative;
            width: 100%;
        }

        .column {
            flex: 1;
            display: flex;
            justify-content: center;
        }

        .column-1 {
            /* pusta - nic nie trzeba */
        }

    .column-2 {
    background-size: cover;
    height: 78%;
    display: flex;
    align-items: flex-end;
    flex: 0.7;
}

        .column-3 {
    flex-direction: column;
    margin-bottom: 15%;
}

     .column-3 h1 {
    margin: 0;
    font-size: 24rem;
    font-family: 'EditorCondensed';
    line-height: 70%;
    font-weight: 500;
}

        .column-3 h1 .italic {
            font-style: italic;
        }

    .column-3 p {
    margin: 10% 0px 0px 10%;
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 500;
}

        /* Linia pozioma 1/5 wysokości od dołu sekcji */
        .first-section::before {
            content: "";
            position: absolute;
            bottom: 30%;
            left: 0;
            width: 100%;
            border-bottom: 2px solid black;
            pointer-events: none;
        }

    .about-me {
    margin: 4rem auto 40rem;
    padding: 0 20px;
    font-size: 1.2rem;
    line-height: 1.6;
    text-align: left;
    display: flex;
    gap: 8%;
    font-weight: 500;
    text-transform: uppercase;
}
.about-me .my-2 {
    width: 50%;
}

        /* Nowa sekcja: dwie kolumny */
       .second-section {
    display: flex;
    margin: 60px auto 20rem;
    gap: 40px;
}
    .second-section .left-col {
    flex: 1;
    margin-left: 14%;
}

        .second-section .left-col h2 {
    font-size: 14rem;
    margin-bottom: 15px;
    text-align: center;
    font-family: 'EditorCondensed';
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 72%;
}

        .second-section .left-col h2 .italic {
            font-style: italic;
        }

        .second-section .left-col .idea-description {
    font-size: 1.2rem;
    line-height: 1.6;
    text-align: left;
    text-transform: uppercase;
    font-weight: 500;
}

        .second-section .right-col {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 20px;
}

        .right-col {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 2 kolumny */
    grid-template-rows: auto auto; /* 2 wiersze */
    gap: 10px; /* odstęp między zdjęciami - opcjonalnie */
}

/* Pierwsza kolumna - pierwsze zdjęcie */
.right-col .photo-1 {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    background: url('assets/ZDJĘCIE-10-O-MNIE.webp') no-repeat center center;
    background-size: cover;
    min-height: 150px;
    height: 500px;
}

/* Pierwsza kolumna - drugie zdjęcie */
.right-col .photo-2 {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
    background: url('assets/ZDJĘCIE-11-O-MNIE.webp') no-repeat center center;
    background-size: cover;
    min-height: 150px;
    height: 500px;
}

/* Druga kolumna - jedno zdjęcie, w drugim wierszu */
.right-col .photo-3 {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    background: url('assets/ZDJĘCIE-12-O-MNIE.webp') no-repeat center center;
    background-size: cover;
    min-height: 150px;
    height: 500px;
}



     .column.column-2 img {
    width: 85%;
    height: 75% !important;
}
.idea-description {
    width: 90%;
    margin-top: 10rem;
}






h2.kategoria {
    font-family: 'EditorCondensed';
    font-size: 8rem;
}
h3.podkategoria {
    font-size: 2rem;
    text-transform: uppercase;
    font-weight: 500;
    font-family: 'montserrat';
}
ul.lista-zabiegow {
    font-size: 1.2rem;
    font-weight: 500;
    text-transform: uppercase;
}
.kategoria {
    margin-top: 40px;
    font-size: 24px;
    font-weight: 500;
}
.podkategoria {
    margin-top: 20px;
    font-size: 20px;
    font-weight: 600;
}
.lista-zabiegow {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
    text-transform: uppercase;
    font-weight: 500;
}
.lista-zabiegow th, .lista-zabiegow td {
    padding: 8px 0px;
    text-align: left;
}
.lista-zabiegow th {
    font-weight: 700;
    background-color: #f0f0f0;
    width: 50%;
}
.cena-zabiegu {
    white-space: nowrap;
}


.lista-zabiegow td {
    width: 75%;
}

.right-col img {
    width: 85%;
        object-fit: cover;
}
.left-col {
    width: 100%;
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 500;
    margin-top: 10%;
}
.two-columns-section .opakowane {
    display: flex;
}
.two-columns-section {
    position: relative;
}
.two-columns-section::before {
    content: "";
    position: absolute;
    top: calc(100% / 12); /* 1/12th from top */
    left: 0;
    width: 100%;
    border-top: 1.5px solid #000000;
}
.left-col h3 {
    font-family: 'EditorCondensed';
    font-size: 6rem;
    font-style: italic;
    text-transform: math-auto;
    line-height: 80%;
    width: 60%;
}
.left-col p {
    width: 50%;
    margin-top: 4rem;
}
section.two-columns-section {
    display: flex;
    justify-content: space-between;
    margin-top: 8%;
    margin-bottom: 8%;
}
.right-col {
    display: flex;
    gap: 10px;
    width: 50%;
}
.page-template-cennik h1 {
    text-align: right;
    font-size: 15rem;
    font-family: 'EditorCondensed';
    font-style: italic;
    margin-top: 6%;
}


input#search-cennik {
    background-color: transparent;
    border: 0px;
    margin-top: 6%;
    font-size: 1.2rem;
    color: black;
    text-transform: uppercase;
    width: 100%;
}
.wyszukiwarka input {
    line-height: 150%;
    padding: 1rem 3rem;
    height: 70px;
}
.wyszukiwarka:before {
    content: '';
    display: inline-block;
    width: 42px;
    height: 20px;
    background-image: url(http://klechaestetic.dream-county.pl/wp-content/uploads/2025/09/LUPKA.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-bottom: 2.4rem;
}
.wyszukiwarka {
    text-align: -webkit-center;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: flex-end;
    flex-direction: row-reverse;
    border-bottom: 1px solid black;
    width: 65%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 8%;
}


















.page-template-oferta .full-none {
    display: flex;
    gap: 30px;
    margin-bottom: 50px;
}
.page-template-oferta .full-none .col-1, 
.page-template-oferta .full-none .col-2 {
    flex: 1;
}
.accordion-header {
    border: none;
    text-align: left;
    padding: 15px 0px;
    font-weight: bold;
    background-color: #fcf9f4;
    font-size: 5rem;
    font-family: 'EditorCondensed';
    font-weight: 400;
    width: 70%;
}
.accordion-body {
    display: none;
    padding: 15px;
    display: block;
    text-transform: uppercase;
    font-weight: 500;
}
.accordion-item.active .accordion-body {
    display: block;
}
.my-accordion {
    width: 70%;
}
.accordion-body p {
    font-size: 1.2rem;
}

.page-template-oferta h1 {
    font-size: 15rem;
    font-family: 'EditorCondensed';
    font-style: italic;
}
.oferta-top p {
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 500;
    width: 55%;
}
.oferta-top .col-2 {
    display: flex;
    align-items: flex-end;
}
.zdj-kol {
    width: 50%;
    text-align: right;
}
.page-template-oferta .oferta-content .col-1 {
    flex: 0.64;
}
.page-template-oferta .oferta-content .col-2 {
    flex: 4;
}

.accordion-body {
    padding-left: 25%;
}


button.accordion-header {
    display: flex;
    align-items: center;
    gap: 9%;
    padding-left: 0;
    position: relative;
    width: 100%;
}

button.accordion-header::before {
  content: "";
  display: inline-block;
  width: 120px;
  height: 120px;
  background-image: url('http://klechaestetic.dream-county.pl/wp-content/uploads/2025/08/IKONA-2-e1756196469860.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  transition: 0.3s;
}
.accordion-item.active .accordion-header::before {
    background-image: url('http://klechaestetic.dream-county.pl/wp-content/uploads/2025/08/IKONA-1-e1756196495715.png');
    transition: 0.3s;
}
.accordion-header em {
    font-style: italic;
}
button.accordion-header p {
    line-height: 75%;
}
.accordion-body .my-2 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
    line-height: 130%;
}
.accordion-body strong {
    font-weight: 800;
}
.full-none.oferta-top {
    margin-top: 6%;
}
.full-none.oferta-content {
    margin-top: 10%;
}


.oferta-content {
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

.images-col {
    flex: 1;
}

.images-col {
    position: sticky;
    top: 7rem; /* możesz zmienić w zależności od headera */
}



.wpcf7 form.sent .wpcf7-response-output {
    border-color: #efd8b2;
    background-color: #efd8b2;
    font-size: 1.2rem;
    padding: 2rem;
    transition: 0.3s;
}
.wpcf7 form.sent .wpcf7-response-output:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background-color: black;
    transition: width 0.3s ease; /* animacja szerokości */
}
.wpcf7-list-item {
    display: inline-block;
    margin: 0;
    line-height: 100%;
        font-size: 1.2rem;
    text-align: left;
}

.portfolio-item img {
    max-width: 100%;
    height: auto;
    display: block;
}

.portfolio-wrapper {
    width: 100%; 
    overflow-x: auto;   /* zamiast hidden */
    overflow-y: visible; 
    position: relative;
    scroll-behavior: auto !important;
    scroll-snap-type: none !important;
}

.portfolio-wrapper::before {
    content: "";
  position: absolute;
  left: 0;
  top: 60%;
  width: 100vw;
  height: 1px; 
  background: black; 
  transform: translateY(-50%); 
}

.portfolio-item {
  flex: 0 0 7.5%;
  box-sizing: border-box;
  padding: 5px;
  justify-items: center;
}

.portfolio-item img {
    width: auto;
    display: block;
    height: 350px;
    filter: grayscale(100%);
  transition: 0.3s;
}

/* Film w galerii — te same wymiary co zdjęcie, ale w kolorze i z kontrolkami */
.portfolio-item video {
    display: block;
    height: 350px;
    width: auto;
    max-width: 80vw;
    background: #000;
    cursor: default;
}

.portfolio-gallery {
    display: flex;
    width: max-content;
    padding-top: 6%;
    padding-bottom: 12%;
    flex-wrap: nowrap;
    scroll-behavior: auto;
    cursor: grab;
    gap: 10px;
    z-index: 2;
}

.portfolio-gallery.dragging {
  cursor: grabbing;
}

.portfolio-item img:hover {
  transform: scale(1.2); /* powiększenie o 20% */
  z-index: 10; /* opcjonalne, żeby obrazek nakładał się na sąsiadów */
  position: relative; /* dla z-index */
  filter: grayscale(0%);
  transition: 0.3s;
}

.portfolio-wrapper::-webkit-scrollbar {
  display: none; 
}

.portfolio-wrapper {
  scrollbar-width: none; 
  -ms-overflow-style: none; 
}

.portfolio-wrapper {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: auto !important;
}

/* Taśma: jedna linia, szerokość wg zawartości. Galeria przewijana ręcznie
 * suwakiem pod zdjęciami (bez automatycznej karuzeli). */
.portfolio-gallery {
  --gap: 10px;

  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  gap: var(--gap);
}

/* zmiana kursora podczas przeciągania zdjęć myszą */
.portfolio-gallery.dragging {
  cursor: grabbing;
}

/* Zapewnij, że elementy się nie kurczą */
.portfolio-item { flex: 0 0 auto; }




.port-page h1 {
    font-size: 13rem;
    font-family: 'EditorCondensed';
    font-style: italic;
    margin-top: 4%;
  position: relative;          /* potrzebne do odniesienia pseudoelementu */
  display: inline-block;       /* dopasowanie szerokości do tekstu */  
  z-index: 2;                  /* tekst nad kreską */
  width: 100%;
    text-align: right;
}


.port-page {
  position: relative;
  width: 100vw; /* pełna szerokość widoku */
  overflow: visible;
}

.port-page::before {
  content: "";
  position: absolute;
  left: 0;
  top: 91%;
  width: 100vw;
  height: 1px; /* grubość kreski */
  background: black; /* kolor kreski */
  transform: translateY(-50%); /* wyśrodkowanie w pionie */
  z-index: 1;  /* pod napisem */
}



.kontakt-sekcja-1 img.jeden {
    width: 64%;
}
.kontakt-sekcja-1 img.dwa {
    width: 10%;
    position: absolute;
    top: 56%;
    left: 10%;
}
.kontakt-sekcja-1 .kolumna-2 h2 {
    font-size: 6rem;
    font-family: 'EditorCondensed';
    font-style: italic;
    line-height: 70%;
    text-align: center;
}
.kontakt-sekcja-1 .kolumna-2 h1 {
    font-size: 14rem;
    font-family: 'EditorCondensed';
    font-style: italic;
    text-align: center;
    line-height: 78%;
}
.kontakt-sekcja-1 .kolumna-2 {
    align-self: center;
}

section.kontakt-sekcja-2.opakowane {
    margin-top: 10%;
}

section.kontakt-sekcja-2.opakowane p {
    font-size: 1.6rem;
    line-height: 140%;
}
section.kontakt-sekcja-2.opakowane h3 {
    font-size: 1.6rem;
    text-transform: uppercase;
    font-weight: 600;
    margin-top: 8rem;
    margin-bottom: 3rem;
    font-family: 'Montserrat';
}
section.kontakt-sekcja-2.opakowane .kolumna-1 span {
    color: #bdbdbd;
}
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {
    background-color: transparent;
    border: 0px;
    border-bottom: 1px solid black;
    padding: 2rem 0px;
    margin-bottom: 2rem;
    font-size: 1.2rem;
    width: 100%;
}
textarea.wpcf7-form-control.wpcf7-textarea {
    background-color: transparent;
    border: 0px;
    border-bottom: 1px solid black;
    align-content: flex-end;
    padding: 2rem 0rem;
    height: 200px;
    font-size: 1.2rem;
    width: 100%;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    background-color: transparent;
    border: 0px;
    font-size: 5rem;
    font-family: 'EditorCondensed';
    border-bottom: 1px solid black;
    width: 300px;
    padding: 3.6rem;
    text-transform: lowercase;
}
section.kontakt-sekcja-2.opakowane .kolumna-2 p {
    font-size: 2rem;
    line-height: 140%;
    text-align: center;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    display: flex;
    flex-direction: column;
    place-self: center;
    font-size: 2.4rem;
    padding-bottom: 10px;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: transparent;
    background-color: #414141ba;
    color: white;
    padding: 2rem 3rem;
    font-size: 1.2rem;
}
.wpcf7-not-valid-tip {
    font-size: 1.2rem;
}
section.kontakt-sekcja-1 {
    margin-top: 6%;
}
.col-5.footer-middle-column .col-5 a {
    font-weight: 700;
}
.idea-description.fade-in.visible p {
    width: 100%;
}
input#search-cennik:focus-visible {
    outline: 0;
}
section.two-columns-section .left-col {
    text-align: -webkit-center;
    padding-right: 10%;
}










@media screen and (max-width: 1440px) {
    .second-section .left-col {
    margin-left: 2%;
}
.accordion-body {
    padding-left: 25%;
}
.oferta-top .col-2 {
    padding-left: 6%;
}
}


@media screen and (max-width: 1440px) {
    .oferta-top .col-2 {
        padding-left: 3.3%;
    }
        .accordion-body {
        padding-left: 30%;
    }
}



@media screen and (max-width: 1024px) {
.column-3 h1 {
    font-size: 18rem;
}
.column-2 {
    height: 78%;
    flex: 150;
}







}

@media screen and (max-width: 600px) {
.second-section {
    flex-direction: column;
}
.second-section .right-col {
    width: 100%;
}
.right-col .photo-1, .right-col .photo-2, .right-col .photo-3 {
    height: 250px;
}
.second-section .left-col .idea-description {
    width: 100%;
}    
.idea-description p.my-2 {
    width: 100%;
}
.about-me {
    flex-direction: column;
    margin: 4rem auto 12rem;
}
.about-me .my-2 {
    width: 100%;
}
.column-3 h1, .port-page h1, .page-template-oferta h1 {
        font-size: 7rem;
    }
    .column-3 p {
    margin: 3rem 0rem;
}
.first-section {
    height: 65vh;
}
.page-template-cennik h1 {
    font-size: 8rem;
}
h2.kategoria {
    font-size: 3rem;
}
h3.podkategoria {
    font-size: 1.6rem;
}
.two-columns-section .right-col img {
    height: 40%;
}
.two-columns-section .left-col h3 {
    font-size: 4rem;
    width: 100%;
    margin-top: 8%;
}
.two-columns-section .left-col p {
    width: 100%;
}
.portfolio-wrapper {
    margin-top: 6rem;
    margin-bottom: 6rem;
}
.second-section .left-col h2 {
    font-size: 8rem;
}

.full-none.oferta-top {
    display: flex;
    flex-direction: column;
}
.oferta-top .col-2 {
    display: flex;
    align-items: flex-end;
    width: 100%;
    line-height: 160%;
    padding-left: 2%;
    margin-right: 2%;
}
.oferta-top p, .zdj-kol {
    width: 100%;
}
.full-none.oferta-content {
    flex-direction: column;
}
.page-template-oferta .oferta-content .col-1 {
    min-height: 15vh;
    width: 100%;
    padding-left: 2%;
    padding-right: 2%;
}
.col-2.accordion-col {
    width: 100%;
}
button.accordion-header {
    width: 100%;
        font-size: 4rem;
        gap: 7%;
}
    .my-accordion {
        width: 100%;
        padding-left: 2%;
        padding-right: 2%;
    }
.accordion-body {
    padding: 0px!important;
    display: none;
}
section.kontakt-sekcja-2.opakowane {
    display: flex;
    flex-direction: column;
}
section.kontakt-sekcja-2.opakowane p {
    font-size: 1.2rem;
    line-height: 140%;
}
section.kontakt-sekcja-1 {
    flex-direction: column;
}
.kontakt-sekcja-1 .kolumna-1 {
    margin-left: 2%;
    margin-right: 2%;
}
.kontakt-sekcja-1 img.dwa {
    width: 34%;
    position: absolute;
    top: 35%;
    left: 40%;
}
.kontakt-sekcja-1 .kolumna-2 h1 {
    font-size: 10rem;
}
.kontakt-sekcja-1 .kolumna-2 h2 {
    font-size: 5rem;
}
.kontakt-sekcja-2 .kolumna-1 {
    place-items: center;
}
.kontakt-sekcja-2 .kolumna-1 p {
    text-align: center;
}
.footer-middle-column .row {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
.col-5.footer-right-column .row {
    flex-direction: column-reverse;
}
.col-5.footer-middle-column .col-5 {
    width: 100%;
}
       #footer .col-md-6 {
        width: 55%;
    }
    .col-2.footer-logo {
    width: 100%;
}
.portfolio-wrapper {
    overflow-x: auto; 
    -webkit-overflow-scrolling: touch; 
    transition: .5s all;
  }

  ul#menu-menu-1, ul#menu-dokumenty {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 2;
}

}


/* ===== O nas — „Nasza idea" + dodatkowe sekcje; zdjęcia PRZYKLEJONE z prawej ===== */
/* Prawa kolumna ze zdjęciami zostaje przyklejona, lewa (tekst) przewija się obok,
 * dzięki czemu kolejne sekcje pojawiają się po lewej, a zdjęcia stoją cały czas po prawej. */
.idea-sticky {
    align-items: flex-start;   /* bez tego kolumny by się rozciągnęły i sticky nie miałby zasięgu */
}
.idea-sticky .right-col {
    position: -webkit-sticky;
    position: sticky;
    top: 30px;
    align-self: flex-start;
}
/* zdjęcia nieco niższe, żeby cała trójka mieściła się w oknie podczas przyklejenia */
.idea-sticky .right-col .photo-1,
.idea-sticky .right-col .photo-2,
.idea-sticky .right-col .photo-3 {
    height: 440px;
    min-height: 0;
}

/* dodatkowe sekcje wewnątrz lewej kolumny */
.about-extra-block {
    margin-top: 9rem;
}
.second-section .left-col .about-extra-block h2 {
    display: block;            /* nadpisuje flex-column z .second-section .left-col h2 */
    font-size: 6rem;
    line-height: 0.98;
    margin: 0 0 2rem;
    text-align: left;
}
.second-section .left-col .about-extra-block h2 .italic {
    font-style: italic;
}
.second-section .left-col .about-extra-block .about-extra-text {
    font-size: 1.05rem;
    line-height: 1.8;
    text-transform: none;      /* nadpisuje wersaliki z .left-col */
    font-weight: 400;
    width: 100%;
    margin-top: 0;
}
.second-section .left-col .about-extra-block .about-extra-text p {
    width: 100%;               /* nadpisuje .left-col p { width:50% } */
    margin: 0 0 1.4rem;
}
.second-section .left-col .about-extra-block .about-extra-text ul {
    margin: 1.4rem 0;
    padding-left: 1.4rem;
    list-style: disc;
}
.second-section .left-col .about-extra-block .about-extra-text li {
    margin-bottom: 0.6rem;
}

@media screen and (max-width: 600px) {
    /* na telefonie kolumny i tak stają jedna pod drugą — wyłączamy przyklejenie */
    .idea-sticky .right-col {
        position: static;
        top: auto;
    }
    .about-extra-block {
        margin-top: 5rem;
    }
    .second-section .left-col .about-extra-block h2 {
        font-size: 3.5rem;
    }
}


/* ===== Portfolio: sekcje (Efekty cellulit / BTX pachy / Efekty plasma) ===== */
.portfolio-section {
    margin: 2rem 0 1rem;
}
.portfolio-section-title {
    font-family: 'EditorCondensed';
    font-style: italic;
    font-size: 5rem;
    line-height: 1;
    margin: 4rem 0 1.5rem;
    text-align: center;
}
.portfolio-empty {
    padding-left: 2%;
    font-size: 1.1rem;
    opacity: 0.6;
    margin-bottom: 4rem;
}

/* Gdy elementów jest mało (mieszczą się bez przewijania) — wyśrodkuj i ukryj pasek.
 * Klasę .is-centered dodaje JS po zmierzeniu, czy jest overflow. */
.portfolio-section.is-centered .portfolio-gallery {
    width: 100%;
    justify-content: center;
}
.portfolio-section.is-centered .portfolio-wrapper {
    overflow-x: hidden;        /* żadnego resztkowego przesuwania, gdy treść się mieści */
}
.portfolio-section.is-centered .portfolio-scrollbar {
    display: none;
}

/* ===== Pasek-suwak pod zdjęciami portfolio (zamiast auto-karuzeli) ===== */
.portfolio-scrollbar {
    width: 60%;
    max-width: 720px;
    margin: 0 auto 8rem;
    padding: 0 2%;
    display: flex;
    justify-content: center;
}
.portfolio-range {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 2px;
    background: #d8d2c6;        /* delikatna linia toru */
    outline: none;
    cursor: pointer;
    margin: 0;
}
.portfolio-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 80px;
    height: 6px;
    border: 0;
    border-radius: 0;
    background: #1a1a1a;        /* czarny uchwyt */
    cursor: grab;
}
.portfolio-range::-moz-range-thumb {
    width: 80px;
    height: 6px;
    border: 0;
    border-radius: 0;
    background: #1a1a1a;
    cursor: grab;
}
.portfolio-range:active::-webkit-slider-thumb { cursor: grabbing; }
.portfolio-range:active::-moz-range-thumb { cursor: grabbing; }

/* ===== Portfolio na mobile: pionowo, obrazki jeden pod drugim ===== */
@media screen and (max-width: 768px) {
    .portfolio-scrollbar {
        display: none;            /* na mobile układ pionowy — pasek zbędny */
    }
    .portfolio-section-title {
        font-size: 3rem;
        margin: 2.5rem 0 1rem;
    }
    .portfolio-wrapper {
        overflow-x: hidden;       /* bez poziomego przewijania taśmy */
        overflow-y: visible;
        margin-top: 3rem;
        margin-bottom: 3rem;
    }
    .portfolio-wrapper::before {
        display: none;            /* pozioma kreska tła marquee — zbędna w pionie */
    }
    .portfolio-gallery {
        flex-direction: column;   /* obrazki jeden pod drugim */
        flex-wrap: nowrap;
        width: 100%;
        gap: 16px;
        padding-top: 2rem;
        padding-bottom: 2rem;
        animation: none;          /* wyłącz przewijaną taśmę */
        cursor: default;
    }
    .portfolio-item {
        flex: 0 0 auto;
        width: 100%;
        padding: 0;
    }
    .portfolio-dup {
        display: none;            /* powielony zestaw był tylko dla pętli marquee */
    }
    .portfolio-item img {
        width: 100%;
        height: auto;             /* naturalne proporcje zamiast 350px */
        filter: none;             /* pełny kolor — na mobile nie ma hovera */
    }
    .portfolio-item video {
        width: 100%;
        height: auto;
        max-width: 100%;
    }
    .portfolio-item img:hover {
        transform: none;          /* brak powiększenia przy tapnięciu */
    }
    .port-page h1 {
        font-size: 7rem;          /* żeby tytuł nie wychodził poza ekran */
    }
}




/* Cennik: ukryj puste podkategorie (import z Booksy = kategoria -> zabiegi, bez nazwy podkategorii) */
.podkategoria:empty { display: none; }
