/* Styl dla linku do nowej strony edu-pyszczak - gradientowy, nowoczesny, z wysoką specyficznością */
.trial-content .edu, .trial .edu, .edu {
    display: inline-block !important;
    margin-top: 18px !important;
    font-size: 1.3em !important;
    font-weight: bold !important;
    color: #fff !important;
    background: linear-gradient(90deg, #2a7ae2 60%, #5A8C8C 100%) !important;
    padding: 14px 32px !important;
    border-radius: 30px !important;
    box-shadow: 0 4px 16px rgba(42, 122, 226, 0.13) !important;
    text-decoration: none !important;
    letter-spacing: 1px !important;
    transition: background 0.3s, color 0.3s, transform 0.2s, box-shadow 0.3s !important;
}
.trial-content .edu:hover, .trial .edu:hover, .edu:hover, .trial-content .edu:focus, .trial .edu:focus, .edu:focus {
    background: linear-gradient(90deg, #5A8C8C 60%, #2a7ae2 100%) !important;
    color: #fff !important;
    transform: scale(1.07) !important;
    box-shadow: 0 8px 24px rgba(42, 122, 226, 0.22) !important;
    text-decoration: underline !important;
}
/* Sekcja #pakiet - wygląd jak inne sekcje */
#pakiet.trial {
    background: #E3E6DA !important;
    color: #000 !important;
    padding: 100px 20px;
    text-align: center;
}
#pakiet .trial-content {
    background: #fff !important;
    color: #000 !important;
    padding: 30px;
    max-width: 900px;
    margin: 0 auto;
    border-radius: 15px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.08);
}
/* Poprawka: neutralne tło i brak czerwonej ramki dla sekcji #pakiet */
#pakiet.trial {
    background: #fff !important;
    border: none !important;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.08);
}
#pakiet .trial-content {
    background: #fff !important;
    color: #000 !important;
    border: none !important;
    box-shadow: none;
}
/* ======== GLOBALNE USTAWIENIA ======== */

/* Podstawowy font, tło, kolory i wyśrodkowanie tekstu */
body {
    font-family: 'garamond', sans-serif; 
    background-color: #E3E6DA !important;
    color: #000;
    margin: 0;
    padding: 0;
    text-align: center;
}

/* Płynne przewijanie strony */
html {
    scroll-behavior: smooth;
}

/* Paragrafy: justowanie, odstępy i wysokość linii */
p {
    line-height: 1.8; 
    text-align: justify;
    margin-bottom: 5px; 
}

/* Nagłówki h1 i h2 wyśrodkowane */
h1, h2 {
    text-align: center;
}

/* Klasa do wyśrodkowanego tekstu */
.text-center {
    text-align: center !important;
}

/* ======== TYPOGRAFIA - rozmiary fontów responsywne ======== */

.text-par {
    font-size: 1.4em;
}

/* Większe ekrany powyżej 1200px */
@media (min-width: 1200px) {
    .text-par {
        font-size: 1.4em;
    }
}

/* Tablety i małe laptopy (max-width: 768px) */
@media (max-width: 768px) {
    .text-par {
        font-size: 1.2em;
    } 
}

/* Małe urządzenia (max-width: 580px) */
@media (max-width: 580px) {
    .text-par {
        font-size: 1.0em;
    } 
}

/* Bardzo małe urządzenia (max-width: 480px) */
@media (max-width: 480px) {
    .text-par {
        font-size: 0.8em;
    } 
}

@media (max-width: 700px) {
    .contact-btn {
        position: fixed;
        left: 20px;
        bottom: 30px;
        margin: 0;
        z-index: 1001;
        top: 300px;
    }
}

/* ======== HEADER - pasek nawigacyjny ======== */

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 20px;
    background: rgba(0, 0, 0, 0.7) !important; /* przezroczysty czarny */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    max-width: 100%;
    z-index: 1000;
}

/* Logo z tekstem i obrazkiem - pozycjonowanie i skalowanie */
.logo-container {
    display: flex;
    align-items: center;
    gap: 8px;
    position: absolute;
    top: 5px;
    left: 10px;
    transition: transform 0.3s ease-in-out;
}

/* Powiększenie logo przy najechaniu */
.logo-container:hover {
    transform: scale(1.05); 
}

/* Obrazek logo - wysokość stała */
.logo-img {
    height: 60px;
    width: auto;
}

/* Tekst logo - duża czcionka, biały kolor */
.logo-text {
    font-size: 2em;
    font-weight: bold;
    color: white;
    text-align: center;
}

/* Nawigacja - lista pozioma, pozycja absolutna w prawym górnym rogu */
nav {
    position: absolute;
    top: 15px;
    right: 5%;
}

nav ul {
    list-style: none;
    display: flex;
    flex-direction: row;
    gap: 15px;
    padding: 0 20px 0 0;
    margin: 0;
}

nav ul li {
    display: inline-block; 
}

/* Linki menu - wygląd i animacja podkreślenia */
nav ul li a {
    color: #fff;
    text-decoration: none;
    font-weight: normal;
    font-size: 0.9em;
    position: relative;
    transition: color 0.3s ease;
}

/* Animacja podkreślenia linków przy hover */
nav ul li a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -3px; 
    width: 0;
    height: 2px;
    background-color: white;
    transition: width 0.3s ease-in-out, left 0.3s ease-in-out;
}

nav ul li a:hover {
    color: #EEE0CB;
}

nav ul li a:hover::after {
    width: 100%;
    left: 0;
}

/* ======== STYL HAMBURGER MENU (dla responsywności) ======== */

.hamburger {
    display: none;
    font-size: 2em;
    cursor: pointer;
    color: white;
    position: absolute;
    top: 10px;
    right: 40px;
    z-index: 1010;
    transition: transform 0.3s ease-in-out;
}

/* Efekt powiększenia przy kliknięciu hamburgera */
.hamburger:active {
    transform: scale(1.1);
}


/* ======== SEKCJA HERO - główna sekcja z tłem i tekstem ======== */

.hero {
    background: url('images/bg8.jpg') no-repeat center center;
    background-size: cover;
    min-height: 1000px;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: #fff;
}

/* Półprzezroczysta nakładka na tło dla lepszego kontrastu tekstu */
.hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.0);
    z-index: 1;
}

/* Kontener z tekstem hero, nałożony ponad nakładkę */
.hero-content {
    position: relative;
    z-index: 2;
    padding: 20px;
    background: rgba(0, 0, 0, 0.7); /* półprzezroczyste tło */
    border-radius: 10px;
}

/* Nagłówek w hero - duży font, biały kolor, cień tekstu */
.hero-content h1 {
    font-size: 2.5em;
    color: white;
    text-shadow: 4px 4px 8px rgba(0, 0, 0, 0.8);
    line-height: 2.2em;
}

/* Paragraf w hero - biały tekst, cień */
.hero-content p {
    font-size: 1.2em;
    color: white;
    text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.7); 
}

/* Kontener przycisków CTA (Call To Action) w hero */
.button-container {
    display: flex;
    gap: 40px; 
    justify-content: center;
    margin-top: 20px;
}

/* Przyciski CTA - koła z tekstem i ikonami */
.cta {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    text-decoration: none;
    transition: transform 0.2s ease-in-out, background 0.3s ease-in-out;
}

/* Styl przycisku telefon (call) */
.cta.call {
    color: white;
    position: relative;
    z-index: 1000;
    pointer-events: auto;
}

/* Powiększenie przy hover/focus dla przycisku call */
.cta.call:hover,
.cta.call:focus {
    cursor: pointer;
    transform: scale(1.2); 
}

/* Styl przycisku wiadomości (message) */
.cta.message {
    color: white;
    position: relative;
    z-index: 1000;
    pointer-events: auto;
}

/* Powiększenie przy hover dla message */
.cta.message:hover {
    transform: scale(1.2);
}

/* Ikona wewnątrz przycisków CTA */
.cta i {
    font-size: 1.2em;
}

/* ======== NOWY PRZYCISK CONTACT - pod HERO ======== */


.hero-buttons {
    position: absolute;
    left: 50%;
    top: 54%; /* dostosuj w razie potrzeby, by był idealnie na środku telefonu */
    transform: translate(-50%, -50%);
    padding-top: 0;
    text-align: center;
    z-index: 10;
}

/* Styl przycisku kontaktowego */
.contact-btn {
    background-color: #5A8C8C;
    color: white;
    font-size: 1.2em;
    padding: 12px 20px;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.3s ease-in-out, transform 0.3s ease-in-out;
    display: inline-block;
    z-index: 1001;
    position: relative;
    top: 120px;
    
}

.contact-btn {
    /* ...inne style... */
    transform: none !important;
    transition: background 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.contact-btn:hover {
    background-color: #002B3D;
    transform: scale(1.1) !important;
}

/* Jeśli chcesz pochylić tylko tekst w przycisku: */
.contact-btn span {
    display: inline-block;
    transform: none !important;
}


/* Hover na przycisku kontaktowym */
.contact-btn:hover {
    background-color: #002B3D;
    transform: scale(1.1);
}

/* ======== RESPONSYWNOŚĆ ======== */

@media (max-width: 768px) {
    .hero-buttons {
        flex-direction: column;
        gap: 15px;
    }
    .contact-btn {
        font-size: 1em;
        padding: 10px 18px;
        max-width: 220px;
    }
    .contact-icons {
        gap: 10px;
    }
    .contact-icons a {
        font-size: 1.6em;
        width: 40px;
        height: 40px;
        padding: 10px;
    }
}

@media (max-width: 480px) {
    .contact-btn {
        font-size: 0.9em;
        padding: 8px 15px;
        max-width: 200px;
        top: 150px;
        right: 50%;
    }
    .contact-icons {
        flex-direction: row;
        gap: 8px;
        flex-wrap: wrap;
    }
    .contact-icons a {
        font-size: 1.4em;
        width: 30px;
        height: 30px;
        padding: 6px;
    }
}

/* ======== KONTAKT - IKONY KONTAKTOWE ======== */

/* Kontener ikon kontaktowych (ukryty domyślnie) */
.contact-icons {
    display: flex !important;
    /* flex-direction: row !important; */
    /* justify-content: center !important; */
    /* align-items: center !important; */
    gap: 20px !important;
    margin-top: 250px;
    opacity: 0;
    /* pointer-events:none; */
    position: absolute;
    left: 50%;
    /* transform: translateX(-10%) translateY(-1px); */
    transition: opacity 0.01s ease, transform 0.1s ease;
}

/* Klasa pokazująca ikony kontaktowe (pokazuje je z animacją) */
.contact-icons.show {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
   
    flex-direction: row !important;
}

@media (max-width: 1200px), (max-width: 1000px), (max-width: 768px), (max-width: 580px), (max-width: 480px) {
    .contact-icons {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 12px !important;
        position: absolute;
        left: 50%;
        transform: translateX(-50%) translateY(-10px);
    }
}

/* Pojedyncza ikona kontaktowa */
.contact-icons a {
    font-size: 2em;
    color: white;
    background-color: #5A8C8C;
    padding: 15px;
    border-radius: 50%;
    transition: transform 0.3s ease, background 0.3s ease;
    text-decoration: none;
    z-index: 1002;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
}

/* Hover na ikonie kontaktowej - powiększenie i ciemniejsze tło */
.contact-icons a:hover {
    transform: scale(1.2);
    background-color: #4A7A7A;
}

.about, .goals, .trial, .price, .ofert, .faq, .contact, .opinie {
    padding: 100px 20px;
    text-align: center;
    background: #E3E6DA !important;
    color: #000 !important;
}

.goals-content, .trial-content, .price-content, .ofert-content, .faq-content, .contact-content, .about-container, .opinie-content {
    background: #fff !important;
    color: #000 !important;
    padding: 30px;
    max-width: 900px;
    margin: 0 auto;
    border-radius: 15px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.08);
}


.about-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 900px;
    margin: 0 auto;
    gap: 30px;
    padding: 30px;
    background: #0F1E2E;
    border-radius: 15px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
}

.about-content {
    flex: 1;
    text-align: justify;
    padding: 20px;
    background-color: #fff !important;
    color: #000 !important;
}


.about-image {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.about-image img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
    background-color: #0F1E2E;
}
.goal-list {
    list-style: none;
    padding: 0;
    max-width: 800px;
    margin: 0 auto;
}

.goal-item {
    color: #000 !important;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: left;
}

.goal-item i {
    color: #000 !important;
}

.pricing-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    width: 100%;
    background-color: #fff !important;
}

.tile {
    background-color: white;
    border: 2px solid #EEE0CB;
    border-radius: 10px;
    padding: 20px;
    width: 260px;
    box-shadow: 0 4px 8px rgba(42, 122, 226, 0.08);
    transition: transform 0.3s, background-color 0.3s, box-shadow 0.3s, border-color 0.3s;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 10px;
    color: #0F1E2E;
}

.gremlin {
    background-color: #0F1E2E;
    border: 2px solid #EEE0CB;
    border-radius: 10px;
    padding: 20px;
    width: 260px;
    box-shadow: 0 4px 8px rgba(42, 122, 226, 0.08);
    transition: transform 0.3s, background-color 0.3s, box-shadow 0.3s, border-color 0.3s;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 10px;
    color: #fff;}
.korki {
   
    color: #0F1E2E!important;
}
.frog {
       background-color: white;
    border: 2px solid #EEE0CB;
    border-radius: 10px;
    padding: 20px;
    width: 260px;
    box-shadow: 0 4px 8px rgba(42, 122, 226, 0.08);
    transition: transform 0.3s, background-color 0.3s, box-shadow 0.3s, border-color 0.3s;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 10px;
    color: #0F1E2E;
}

@media (max-width: 1000px) {
    .pricing-container {
        flex-direction: column;
        align-items: center;
    }
    .tile {
        width: 90vw;
        max-width: 340px;
    }
    .frog {
        width: 90vw;
        max-width: 340px;
    }
}
@media (max-width: 600px) {
    .tile {
        width: 98vw;
        max-width: 98vw;
        min-width: 0;
        padding: 14px;
    }

     .tile {
        width: 98vw;
        max-width: 98vw;
        min-width: 0;
        padding: 14px;
    }
    .pricing-container {
        gap: 12px;
    }
}

  .main-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100px;
    width: 100%;
  }

  .pricing-container {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    max-width: 1200px;
    justify-content: center;
    background-color: #0F1E2E;
  }
  .tile {
    background-color: white;
    border: 2px solid #EEE0CB;
    border-radius: 10px;
    padding: 20px;
    width: 280px;
    box-shadow: 0 4px 8px rgba(42, 122, 226, 0.2);
    transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

    .frog {
    background-color: white;
    border: 2px solid #EEE0CB;
    border-radius: 10px;
    padding: 20px;
    width: 280px;
    box-shadow: 0 4px 8px rgba(42, 122, 226, 0.2);
    transition: transform 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .tile:hover {
    background-color: #d0e7ff;
    box-shadow: 0 8px 16px rgba(26, 91, 184, 0.4);
    border-color: #1a5bb8;
    transform: scale(1.05);
  }

    .frog:hover {
    background-color: #d0e7ff;
    box-shadow: 0 8px 16px rgba(26, 91, 184, 0.4);
    border-color: #1a5bb8;
    transform: scale(1.05);
    }



  .tile h3 {
    color: #2a7ae2;
    margin-top: 0;
  }

    .frog h3 {
    color: #2a7ae2;
    margin-top: 0;
  }

  .features {
    margin-top: 10px;
    padding-left: 20px;
    flex-grow: 1;
  }
  .features li {
    margin-bottom: 8px;
  }
  .btn-container {
    margin-top: 15px;
    text-align: center;
  }
  .schedule-btn {
    display: none;
    margin-top: 10px;
    background-color: #2a7ae2;
    color: white;
    border: none;
    border-radius: 5px;
    padding: 10px 15px;
    font-size: 14px;
    cursor: pointer;
    text-decoration: none;
  }
  .show {
    display: inline-block !important;
  }

.price {
    padding: 80px 20px;
    text-align: center;
    background: #fff; /* Dopasowanie do reszty strony */
}
.ofert {
    padding: 80px 20px;
    text-align: center;
    background: #fff; /* Dopasowanie do reszty strony */
}

.offers-container {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
}

.offer-column {
    flex: 1 1 45%;
    min-width: 300px;
}

.text-par {
    margin-bottom: 20px;
}

ul {
    margin: 10px 0 0 20px;
    padding: 0;
}
.opinie {
    padding: 80px 20px;
    text-align: center;
    background: #fff; /* Dopasowanie do reszty strony */
}

.opinie-content {
    background: #0F1E2E;
    padding: 30px;
    max-width: 600px;
    margin: 0 auto;
    border-radius: 15px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
}

.opinie h2 {
    margin-bottom: 20px;
    color: #2F4F4F;
}

.fb-reviews {
    display: flex;
    justify-content: center;
    align-items: center;
}
.faq-question {
    background: none;
    border: none;
    width: 100%;
    text-align: left;
    font-size: 1.1rem;
    font-weight: bold;
    padding: 1rem 0;
    cursor: pointer;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #000 !important;
    margin: 15px 0;
    transition: color 0.3s;
}

.faq-question:hover {
    color: #007BFF;
}

.faq-toggle {
    font-size: 1.5rem;
    transition: transform 0.3s ease;
}

.faq-answer {
    display: none;
    padding: 0.5rem 0 1.5rem 0;
    color: #000 !important;
    line-height: 1.6;
    margin-bottom: 15px;
    animation: fadeIn 0.3s ease;
}

.faq-item.open .faq-answer {
    display: block;
}

.faq-item.open .faq-toggle {
    transform: rotate(45deg); /* plus zamienia się w X */
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}
.contact-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    max-width: 400px;
    width: 85%;
    margin: 0 auto;
    padding: 20px;
    background: white;
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
    overflow-y: auto;
}

.contact-content p {
    display: flex;
    justify-content: center;
}

.contact-content a {
    color: #3E707A;
    text-decoration: none;
    font-weight: bold;
}

.contact-content a:hover {
    text-decoration: underline;
}

form {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 20px;
}

label {
    font-weight: normal;
}

input, textarea {
    width: 98%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-family: 'Georgia', serif;
}

button.cta {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: inherit;
    width: fit-content;
    background-color: #007bff;
    color: white;
    padding: 8px 15px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.3s ease-in-out;
}

button.cta:hover {
    background-color: #5A8C9E;
    transform: scale(1.3);
}
.footer {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    background: #E3E6DA;
    color: #2F4F4F;
    padding: 15px 20px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    flex-wrap: wrap;
}

.social-icons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

@media (max-width: 480px) {
    .footer {
        flex-direction: column;
    }
}
.fb-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #2F4F4F;
    color: white;
    margin-left: 10px;
    text-decoration: none;
    transition: transform 0.3s ease-in-out, background 0.3s ease;
}

.fb-icon:hover {
    transform: scale(1.2);
    background: #1877f2;
}
/* ======== BANNER COOKIES ======== */
.cookie-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.9);
    color: white;
    text-align: center;
    padding: 15px;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    z-index: 1000;
}

/* Przycisk akceptacji cookie */
.cookie-btn {
    background-color: #FFD700;
    color: black;
    border: none;
    padding: 8px 15px;
    border-radius: 5px;

    cursor: pointer;
    transition: background 0.3s ease-in-out;
}

.cookie-btn:hover {
    background-color: #E6C200;
}

/* ======== RESPONSYWNOŚĆ ======== */
@media (min-width: 1400px) {
    .contact-content {
        max-width: 600px; /* Jeszcze mniejszy formularz */
        padding: 18px;
    }

    input, textarea {
        width: 90%;
        padding: 6px;
    }

    button.cta {
        padding: 7px 12px;
    }
}

@media (max-width: 768px) {
    header {
        flex-direction: row;
        height: auto;
        padding: 5px 15px;
    }

    .logo-container {
        position: relative;
        top: 0;
        left: 0;
    }

    .logo-text {
        font-size: 1.5em;
    }

    .logo-img {
        height: 50px;
    }

    nav {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(0, 0, 0, 0.8);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        display: flex;
        align-items: center;
        justify-content: center;
        transform: translateY(-100%);
        transition: transform 0.3s ease-in-out;
        z-index: 1000;
    }

    nav ul {
        flex-direction: column;
        text-align: center;
        gap: 25px;
        padding: 0;
    }

    nav ul li a {
        font-size: 1.5em;
        color: white;
        text-decoration: none;
        font-weight: bold;
    }

    nav.show {
        transform: translateY(0);
        display: flex;
        flex-direction: column;
    }

    .hamburger {
        display: block;
    }

    .about-container {
        flex-direction: column;
        text-align: center;
        padding: 20px;
        background-color: #0F1E2E;
    }

    .about-content {
        text-align: center;
        padding: 15px;
    }

    .about-image img {
        width: 80%;
    }

    .contact-content {
        width: 90%;
        padding: 15px;
    }

    input, textarea {
        width: 90%;
        padding: 8px;
    }

    button.cta {
        padding: 10px;
        width: 60%;
    }
}

@media (max-width: 480px) {
    .hero-content h1 {
        font-size: 1.5em;
    }

    .logo-text {
        font-size: 1.2em;
    }

    .logo-img {
        height: 40px;
    }

    .about-content, 
    .goals-content, 
    .trial-content, 
    .price-content, 
    .ofert-content, 
    .faq-content, 
    .contact-content {
        padding: 15px;
        background-color: #0F1E2E;
    }

    .goal-item {
        margin-bottom: 10px;
    }

    nav ul {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    nav ul li {
        display: block;
    }

    header {
        height: auto;
    }

    .contact-content {
        width: 95%;
        padding: 12px;
        border-radius: 8px;
    }

    input, textarea {
        width: 95%;
        padding: 5px;
    }

    button.cta {
        padding: 6px 10px;
    }

    .button-container {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    .cta {
        width: 80px;
        height: 80px;
    }
}

/* Wyjustowanie wszystkich tekstów oprócz tytułowego */
h1, .hero-content h1 {
    text-align: center !important;
}

h2 {
    text-align: center !important;
}

/* Wyjustowanie pozostałych tekstów oprócz h1 i h2 */
h3, h4, h5, h6, p, li, .text-par, .goal-item, .faq-answer, .faq-question, .about-content, .about-container, .trial-content, .price-content, .ofert-content, .faq-content, .contact-content, .opinie-content, .tile, .frog, .gremlin, .korki, .features, .features li, .goal-list, .goal-item, .btn-container, .footer, .cookie-banner, .contact-icons, .contact-btn, .schedule-btn, .main-container, .pricing-container, .offers-container, .offer-column, .opinie, .goal-list, .goal-item, .faq-answer, .faq-question {
    text-align: justify !important;
}

/* Wyłącz justowanie nagłówków h3 w cenniku */
.pricing-container .tile h3,
.pricing-container .frog h3 {
    text-align: center !important;
}

/* ======== ANIMACJA POJAWIANIA SIĘ SEKCIJ ======== */
.section-reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 1.8s cubic-bezier(0.4,0,0.2,1), transform 0.8s cubic-bezier(0.4,0,0.2,1);
}
.section-reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Dodajemy do głównych sekcji klasę .section-reveal w HTML lub przez JS */
