/*
 Theme Name: GeneratePress Child
 Theme URI: https://generatepress.com/
 Description: Motyw potomny (child theme) dla GeneratePress.
 Author: Audytel S.A.
 Author URI: https://audytel.pl/
 Template: generatepress
 Version: 1.0.0
 Text Domain: generatepress-child
*/

/* Twoje style umieszczaj poniżej */
/* Sticky top-bar + menu (GeneratePress) */
.top-bar,
.site-header {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 9999;
}


/* Globalna szerokość strony */
.condes
 {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;

}









.template-h1 {
    position: absolute;
    left: -9999px;
}

/* podniesione logo w stosunku do menu */
.header-image {
        padding-bottom: 15px;
}

/* ustawienie adresu i telefonu w pasku */
.nav-float-right .header-widget {
    padding-right: 20px;
    padding-bottom: 10px;
    text-align: right;
}

/* NOWY GLOBALNY STYL: UKRYCIE POZIOMEGO PASKA PRZEWIJANIA */
html { 
    overflow-x: hidden !important; 
}

/* =========================================
   Padding na stronach artykułów + img wyśrodkowany
   ========================================= */

.padding {
    padding: 20px;
    background-color: white;
    text-align: justify;  
}

.padding img {
  display: block;
  margin: 0 auto;
}


.padding h1 {
    font-size: 2em;
    font-family: 'Yantramanav';
    margin-bottom: 20px;
    line-height: 1.2em;
    font-weight: 300;
    }
.padding h2 {
    font-size: 1.5em;
    font-family: 'Yantramanav';
    font-weight: 300;
    padding-top: 1em;
        
}
.padding h3 {
    font-size: 1.3em;
    font-family: 'Yantramanav';
    font-weight: 300;
    padding-top: 1em;
        
}

.padding  b, strong {
    font-weight: 400;
}

.padding .entry-content ul {
    padding-left: 17px !important;
}


/* Domyślnie: ukryj menu z widżetu */
.mobile-only-menu {
    display: none;
}

/* Pokaż menu z widżetu tylko na mobile */
@media (max-width: 1179px) {
    .mobile-only-menu {
        display: block;
    }
}

/* Pasek przewijający tekst  */
.ticker-container {
    width: 100%;
    background-color: #ffffff; /* biały pasek */
    overflow: hidden;
    white-space: nowrap;
    padding: 10px 0;
    box-sizing: border-box;
        
}

.ticker-text {
    display: inline-block;
    font-family: 'Yantramanav';
    padding-left: 100%;
    animation: ticker 27s linear infinite;
    color: #922221; /* czerowny tekst */
    font-size: 24px;
    font-weight: 300;
    padding-top: 0.5em;
}

@keyframes ticker {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-100%); }
}


/* --- LANG SWITCH W MENU --- */

/* Sam kontener <li> z przełącznikiem */


.lang-switch {
    display: inline-flex;
    align-items: center;
    margin: 0px 1px 18px 7px;
}


/* Wrapper od GTranslate wewnątrz menu */
.lang-switch .gtranslate_wrapper {
    display: inline-block !important;
    white-space: nowrap;
}

/* Każdy link języka – EN, PL */
.lang-switch .gtranslate_wrapper a {
    display: inline-block !important;  /* nadpisuje block z Max Mega Menu */
    float: none !important;
    margin: 0 2px;
    padding: 0;
    color: #ffffff;
    opacity: 0.8;
    text-decoration: none;
}


#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item {
    margin: 0 3px 6px 0;
    display: inline-block;
    height: auto;
    vertical-align: unset !important;
}

#mega-menu-wrap-primary #mega-menu-primary {
    padding-top: 10px !important;
}




/* MOBILE: niższy pasek + logo obok adresu */
@media (max-width: 1179px) {

    /* główny kontener headera */
    .site-header.has-inline-mobile-toggle .inside-header {
        display: flex;
        flex-direction: row;
        align-items: center;          /* pionowe wyrównanie logo + adresu */
        justify-content: space-between;
        flex-wrap: nowrap;            /* nie pozwala elementom wskoczyć w drugi wiersz */
        padding-top: 6px !important;  /* niższy header */
        padding-bottom: 6px !important;
        padding-left: 16px;
        padding-right: 16px;
        min-height: auto !important;
        margin-bottom: 0;
    }


    /* logo – bez dodatkowych marginesów */
    .site-header .site-logo,
    .site-header .site-branding {
        margin: 0;
        flex: 0 0 auto;
    }}





/* Jeśli full-width sekcja jest w środku ograniczonego kontenera, niech nie rozsadza layoutu */
.content .content_section.bg_white,
.content .content_section.bg_gray,
.content .content_section.bg_red {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}










/*skrócenie paska z logo*/


.inside-header {
    padding-left: 40px;
    padding-top: 7px;
    margin-bottom: -11px;
}

/* =========================
   DESKTOP
   ========================= */
@media (min-width: 1180px) {
    .mobile-services {
        display: none !important;
    }
}

/* =========================
   MOBILE + IPAD
   ========================= */
@media (max-width: 1179px) {
    .custom-width-wrapper {
        display: none !important;
    }

    .nav-float-right #site-navigation{
    display: none !important;}

    .mobile-services {
        display: flex !important;
    }
}



/* MOBILE – pion (do 767px) */
@media (max-width: 1179px) {

    .mobile-services {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 15px !important;
        padding: 10px !important;
        box-sizing: border-box !important;
    }

    .mobile-service {
        width: 45% !important; /* 2 obok siebie */
        aspect-ratio: 1 / 1 !important;
        background: #ffffff !important;
        border-radius: 20px !important;
        box-shadow: 0 2px 10px rgba(146 34 33 / 81%) !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        cursor: pointer !important;
        padding: 10px !important;
    }
}

/* Wspólne style ikon */
.mobile-service img {
    max-width: 60% !important;
    height: auto !important;
}

.mobile-service span {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #7E0D0D !important;
    line-height: 1.1 !important;
}







/* Kontener dostanie tło/ramkę TYLKO jeśli zawiera title8 */
#pcp_wrapper-112900 .sp-pcp-post:has(.sp_pcp_ctf-title8:not(:empty)) {
    background-color: #f2ff0017 !important; 

}
/* Kolor + miganie tylko pola title8 */
#pcp_wrapper-112900 .sp_pcp_ctf-title8 {
    color: #922221 !important;
    text-align: center;
    animation: blinkTitle8 1s infinite;
}

/* Definicja animacji migającej */
@keyframes blinkTitle8 {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; }
}



/* =========================================
   usunięcie maila autora przy wpisie/artykule na topie
   ========================================= */
.entry-meta {
    display: none;
}
/* Kolory zdefiniowane */
:root {
  --maincolor: #922221; /* nowy czerwony */
  --jasnyszary: #f7f8f9; 
}

/* =========================================
   1. STYLENAPRAWY UKŁADU (KRYTYCZNE - 50/50)
   ========================================= */

.wp-post-image { display: none !important; }
/* NAPRAWA: PRZYWRACAMY 20px PADDINGU DLA CAŁEJ TREŚCI (usunięcie 0 0px) */

.site-content, .inside-article { background-color: #ffffff !important; padding: 0 !important; }

/* KONTENER KOLUMN: Wymuszenie Flexbox (klucz do równej wysokości) */
.kyma-row { 
    display: flex !important; /* Wymuszamy Flexbox na kontenerze rzędu */
    flex-wrap: wrap !important; 
    margin: 0 !important; 
}

.main-navigation .main-nav ul li a {
    padding-left: 15px;
    padding-right: 10px;
    line-height: 30px;
}

.top-bar {
    font-weight: 400;
    text-transform: none;
    font-size: 14px;
    background-color: var(--jasnyszary);
    color: #ffffff;
}

.button, .wp-block-button .wp-block-button__link {
    padding: 0px 20px;
    display: inline-block;
}

.inside-top-bar {
    padding: 0px 40px;
}

.wp-block-button__link {

    border-radius: 0px;
  }

:where(.wp-block-button__link) {
border-radius: 0px;
 }




a {
    text-decoration: none !important;
}

/* czcionka*/
@font-face {
    font-family: 'Yantramanav';
    src: url('fonts/yantramanav-thin.woff2') format('woff2'),
	 url('fonts/yantramanav-thin.ttf') format('truetype');
         font-weight: 100; /* waga thin */
         

}


@font-face {
    font-family: 'Yantramanav';
    src: url('fonts/yantramanav-regular.woff2') format('woff2'),
	 url('fonts/yantramanav-regular.ttf') format('truetype');
         font-weight: 300; /* waga regular */
         

}

@font-face {
    font-family: 'Yantramanav';
    src: url('fonts/yantramanav-medium.woff2') format('woff2'),
	 url('fonts/yantramanav-medium.ttf') format('truetype');
         font-weight: 500; /* waga medium*/
         

}

@font-face {
    font-family: 'Yantramanav';
    src: url('fonts/yantramanav-bold.woff2') format('woff2'),
	 url('fonts/yantramanav-bold.ttf') format('truetype');
         font-weight: 700; /* waga bold*/
         

}


/* WERSJA DESKTOPOWA: Kolumny 50/50 */
@media (min-width: 1180px) {
    .kyma-top-section .kyma-row .col-md-6 {
        float: left !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
        width: 50% !important;
        margin-bottom: 10 !important;
        margin-top: 20px !important;
    }
    .kyma-col-left { padding-right: 15px !important; }
    .kyma-col-right { padding-left: 15px !important; }


.main_title .title { font-family: Yantramanav; font-size: 2.2em; font-weight: 100; line-height: 65px; padding-top: 0.5em; color: #000; text-align: center;  position: relative;  }


/* Sekcja kontaktu (flex_pb) - Zdjęcie obok tekstu */
.flex_pb {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding-left: 5em !important;
    padding-right: 5em !important;
}

.flex_pb div:first-child { 
    flex-grow: 1 !important;
    padding-right: 1em !important;
}

.flex_pb img { 
    max-width: 120px !important;
    height: auto !important;
    border-radius: 50% !important; 
    box-shadow: none !important;
}
.pb-button2000 {
    background-color: var(--maincolor);
    color: white;
    padding: 20px;
    text-align: center;
    line-height: 1;
width: 100vw !important;
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
}


.pb-top{
        background-color: #712222;
        color: white;
        
        text-align: center;
        line-height: 1;
        width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
    }


}

/* WERSJA mobile */


@media (max-width: 767px) {

.kyma-col-left, .kyma-col-right {
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
}

.main_title .title {
    font-family: Yantramanav;
    font-size: 1.72em;
    font-weight: 100;
    line-height: 45px;
    margin: 10px 0 10px;
    color: #000;
    text-align: center;
    position: relative;
}

/* Sekcja kontaktu (flex_pb) - Zdjęcie nad tekstem */
.flex_pb {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding-left: 1em !important;
    padding-right: 1em !important;
    flex-direction: column-reverse;
}

.flex_pb div:first-child { 
    flex-grow: 1 !important;
    padding-right: 1em !important;
}

.flex_pb img { 
    max-width: 120px !important;
    height: auto !important;
    border-radius: 50% !important; 
    box-shadow: none !important;
}
.pb-button2000 { 
    background-color: var(--maincolor);
    color: white;
    padding: 20px;
    text-align: center;
    line-height: 1.5;
    margin-left: 20px !important;
    margin-right: 20px !important;
    padding-left: 10px !important;
}





}



/* =========================================
   2. ESTETYKA GÓRNEJ SEKCJI (BLOKI Z CIENIEM)
   ========================================= */

/* KONTENER NADRZĘDNY SEKCJI - PRZYWRÓCENIE TŁA NA CAŁĄ SZEROKOŚĆ */
.kyma-top-section {
    background-color: #f7f7f7 !important; 
    padding-top: 50px !important; 
    padding-bottom: 50px !important;
    /* margin-bottom: 40px !important; */
    border: none !important; 
    

/* ROZCIĄGANIE TŁA NA CAŁĄ SZEROKOŚĆ – stabilne (bez odlatywania) */
position: relative !important;
width: 100vw !important;
left: 50% !important;
transform: translateX(-50%) !important;
margin-left: 0 !important;
margin-right: 0 !important;



}

/* LEWY MODUŁ (title8) - BIAŁY BLOK */
.kyma-col-left .height {
    background-color: white !important;
    border-radius: 5px !important;
    padding-bottom: 2em !important; 
    border: 1px solid #eeeeee !important; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important;
    box-sizing: border-box !important;
    height: 100% !important; 
}


.kyma-col-left .height b,
.kyma-col-left .height strong {
    font-weight: 500;
    font-size: 80%;
}





.kyma-col-left strong.top-main {
    font-weight: 400 !important;
    font-size: 100%;
}

.col-md-6.kyma-col-left hr {
    background-color: rgba(0, 0, 0, 0.1) !important;
    border: 0;
    height: 1px;
    margin-top: 20px;
    margin-bottom: 10px;
}



/* ********** PRAWY MODUŁ - BIAŁY BLOK FORMULARZA ********** */

.kyma-form-column #formularz {
    background-color: white !important; 
    border-radius: 5px !important;
    border: 1px solid #eeeeee !important; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important; 
    overflow: hidden !important; 
    height: 100% !important; 
}

.kyma-form-column #form {
    background-color: white !important; 
    border-radius: 5px !important;
    border: 1px solid #eeeeee !important; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important; 
    overflow: hidden !important; 
    height: 100% !important; 
}

/* PRAWY MODUŁ (Formularz) - Czerwony Nagłówek */
.pb-red_button {
    display: block !important;
    background-color: var(--maincolor);
    color: white !important;
    text-align: center !important;
    padding: 23px 15px !important;
    font-size: 130% !important;
    font-weight: 300 !important;
    
    border-radius: 0 !important;
    text-decoration: none !important;
/* DODANIE ROZCIĄGANIA NA PEŁNĄ SZEROKOŚĆ */
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}



/* Kontener formularza (dół - .wpcf7) */
.kyma-form-column .wpcf7 {
    background-color: white !important;
    padding: 30px 40px !important;
    border-radius: 0 !important; 
    border: none !important; 
    box-shadow: none !important; 
    -webkit-box-shadow: none !important; 
    -moz-box-shadow: none !important;
}

/* Nagłówek H1 */


.kyma-col-left h1, .kyma-col-left h2, .kyma-col-left h3 {
    font-family: Yantramanav;
    font-weight: 300 !important;
    font-size: 28px !important;
    color: var(--maincolor);
    padding: 1em 2em 0.5em 1.5em !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}



/* Przycisk WYŚLIJ na środku */
.kyma-form-column input[type="submit"] {
    font-family: 'Yantramanav';
    display: block !important;
    margin: 15px auto 0 auto !important;
   
    color: white !important;
    padding: 15px 30px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    font-weight: 300 !important;
    text-transform: uppercase !important;
}







/* =========================================
   3. STYLE DLA SEKCJI DOLNEJ (desc7)
   ========================================= */

/* KOREKTA WCIĘCIA DLA TREŚCI Z DESC7 (usunięcie podwójnego wcięcia) */
.entry-content > h2,
.entry-content > p,
.entry-content > ul,
.entry-content > ol {
    /* To powinno usunąć dodatkowe, niechciane paddingi motywu na elementach Modułu C */
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* ROZCIĄGANIE NA CAŁĄ SZEROKOŚĆ DLA PASKÓW TŁA */
.content_section.bg_white, 
.content_section.bg_gray, .content_section.bg_red { 
    /* TECHNIKA ROZCIĄGANIA TŁA */
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

/* Utrzymanie wewnętrznego paddingu i ograniczenie szerokości dla TREŚCI wewnątrz PASKÓW */
.content { 
    max-width: 1400px !important; 
    margin: 0 auto !important; 
    padding: 0 20px !important; /* Spójne wcięcie dla treści w pasku */
}


/* POZOSTAŁE STYLE SEKJI DOLNEJ */



.bg_white {
    background-color: #fff !important;
    padding: 0.5em 0 0.5em 0 !important;   
}

.bg_gray {
    background-color: #f7f7f7 !important;
    padding: 0.5em 0 0.5em 0 !important;  
}

.bg_red {
    background-color: #922221 !important;
    padding: 0.5em 0 0.5em 0 !important;  
}

/* Pierwszy i ostatni element w sekcji – bez dodatkowych marginesów,
   żeby tło było idealnie równe */
.content_section > *:first-child {
    margin-top: 0 !important;
}

.content_section > *:last-child {
    margin-bottom: 0 !important;
}


.kyma-text-block { font-size: 20px !important; text-align: left !important; padding-left: 2em !important; padding-right: 2em !important; font-weight: 300 !important; color: black !important; }
.kyma-red-link { color: var(--maincolor) !important; font-weight: 300 !important; }
.kyma-form-column input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .kyma-form-column textarea { width: 100% !important; padding: 15px !important; margin-bottom: 15px !important; border: 1px solid #ccc !important; border-radius: 5px !important; box-sizing: border-box !important; }
.main_title { text-align: center !important;  }
.main_title.upper .title {  letter-spacing: 1px !important; }

.lead_tekst { font-size: 19px !important; line-height: 1.7em !important; font-weight: 300 !important; color: #444 !important; margin-bottom: 25px !important; }
.pb-check8 { list-style: none !important; padding-left: 0 !important;    text-align: left !important;}
.pb-check8 li { position: relative !important; padding-left: 25px !important; line-height: 1.7em !important; margin-bottom: 10px !important; }
.pb-check8 li:before { content: "\2713" !important; color: var(--maincolor) !important; font-size: 1.2em !important; font-weight: bold !important; position: absolute !important; left: 0 !important; top: 0 !important; }


.konsultacja-button {
    display: inline-block;
    background-color: #fff;
    color: var(--maincolor);
    border: 2px solid #fff;
    padding: 10px 20px;
    border-radius: 30px;
    text-decoration: none;
    
    transition: background-color 0.3s, color 0.3s;
}
.konsultacja-button:hover { background-color: #cccccc !important; }
.entry-content ul {  padding-left: 0px !important; }
.entry-content p, .entry-content ul, .entry-content ol { line-height: 1.7 !important; margin-bottom: 2px !important; font-weight: 100;}

/* PODSTAWOWE STYLE SEKJI DOLNEJ */
h2.title, h3.title {
    font-family: Yantramanav;
    font-size: 2.9em;
    font-weight: 100;
    line-height: 65px;
    margin: 30px 0 30px;
    color: #000;
    text-align: center;
    position: relative;
}
/* kreska pod tytułem */
h2.title:after, h3.title:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    width: 140px;
    height: 1px;
    background-color: var(--maincolor);
}

/* Bold w określonych sekcjach */
.content_section.bg_white b,
.content_section.bg_white strong,
.content_section.bg_gray b,
.content_section.bg_gray strong {
    font-weight: 500;
}

/* odstępy od znaczników w sekcji C */
.content_section.bg_gray,
.content_section.bg_white ol, ul {
    margin: 0 0 1.5em 1em;
}



.pb-button2000 .pb-text { display: block !important; font-size: 1.5em !important; font-weight: 300 !important;  margin-bottom: 15px !important; }

/* plusiki w sekcji zalety */
.flex_pb_trans {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    column-gap: 1em;
    padding: em;
    margin-left: 2%;
}

/* =========================================
   4. NAPRAWA TOP BANNERA (IMAGE HOVER)
   ========================================= */

/* UNIWERSALNY KONTENER OGRANICZAJĄCY SZEROKOŚĆ */
.custom-width-wrapper {
    max-width: 1400px !important; /* Maksymalna szerokość kontenera */
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important; /* Dodatkowe wcięcie, aby treść nie dotykała brzegów */
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* Opcjonalnie: upewnienie się, że elementy wtyczki respektują kontener */
.custom-width-wrapper .ih-item,
.custom-width-wrapper .ih-item-list {
    max-width: 100% !important;
}



/* =========================================
   5. STYLE DLA FORMULARZA NA DOLE STRONY
   ========================================= */

/* Kontener dolnego formularza (np. na stronie, poza sekcją kyma-top-section) */
.content_section .wpcf7 {
    max-width: 800px !important;

    padding: 30px 40px !important;
    background-color: #ffffff !important;
    border-radius: 5px !important;
    border: 1px solid #eeeeee !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1) !important;
    margin-left: auto;
    margin-right: auto;
}

/* Tytuł nad dolnym formularzem - spójny z resztą sekcji desc7 */
.main_title.form-title {
    margin-bottom: 20px !important;
}

/* Nagłówek dla sekcji "Porozmawiajmy o współpracy" */
.content_section h4.form-heading {
    text-align: center !important;
    font-size: 24px !important;
    font-weight: 500 !important; /* Waga medium */
    color: #000 !important;
    margin-bottom: 30px !important;
}


/* Pola tekstowe i textarea - zapewnienie pełnej szerokości */
/* Ponowne użycie już zdefiniowanego stylu w sekcji 3: */
/* .kyma-form-column input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), 
   .kyma-form-column textarea */

/* Wystarczy, że elementy będą w tym samym kontekście (bez .kyma-form-column) 
   lub dodamy dedykowany styl */
.content_section .wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), 
.content_section .wpcf7 textarea { 
    width: 100% !important; 
    padding: 15px !important; 
    margin-bottom: 15px !important; 
    border: 1px solid #ccc !important; 
    border-radius: 5px !important; 
    box-sizing: border-box !important; 
}


/* Checkboxy i ich etykiety */
.content_section .wpcf7-list-item {
    display: block !important;
    margin-bottom: 15px !important;
}







/* Styl dla przycisku WYŚLIJ w dolnym formularzu (spójny z górnym) */
.content_section input[type="submit"] {
     font-family: 'Yantramanav';
    display: block !important;
    margin: 15px auto 0 auto !important;
   
    color: white !important;
    padding: 15px 30px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    font-weight: 300 !important;
    text-transform: uppercase !important;
}

.content_section input[type="submit"]:hover {
    background-color: var(--maincolor); /* Ciemniejszy odcień czerwieni na hover */
}

/* WERSJA MOBILNA: Pełna szerokość formularza */
@media (max-width: 767px) {
    .content_section .wpcf7 {
        padding: 20px !important;
        margin-left: 10px !important;
        margin-right: 10px !important;
    }
}
/* =========================================
   AGRESYWNA BLOKADA HORYZONTALNEGO PRZEWIJANIA (MOBILE FIX)
   ========================================= */
@media (max-width: 767px) {
    /* KROK 1: Wymuszenie ukrycia i ograniczenia szerokości na poziomie BODY/HTML */
    html, body {
        max-width: 100vw !important; 
        overflow-x: hidden !important;
    }
    
    
}

/*
 * Styl dla niestandardowej stopki 6 kolumn
 * Używany w zmodyfikowanym footer.php
 */

/* DESKTOP */
.moj-footer-six-col .grid-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; 
    max-width: 1200px; /* Dostosuj do szerokości Twojego głównego kontenera */
    margin: 0 auto;
    padding: 20px 0;
}

.col-lista {font-weight: 100;}

.moj-footer-six-col .footer-col {
    width: 15%; /* 6 kolumn * 15% = 90%. Zostaje 10% na marginesy */
    margin-bottom: 20px;
}

.moj-footer-six-col h4.col-title {
    font-size: 1em;
    margin-top: 0;
    border-bottom: 2px solid #EEE; /* Lekkie oddzielenie tytułu */
    padding-bottom: 5px;
    margin-bottom: 10px;
    font-weight: 300;
}

.moj-footer-six-col ul.col-links,
.moj-footer-six-col .kontakt-data {
    list-style: none;
    padding: 0;
    margin: 0;
}

.moj-footer-six-col .col-more a {
    font-weight: 100;
    display: block;
    margin-top: 10px;
}

/* MOBILE */
/* Poniżej 1179px (standardowy breakpoint dla tabletów/telefonów) */
@media (max-width: 1179px) {
    .moj-footer-six-col .grid-container {
        display: block; /* Ustawienie blokowe dla mobilnych */
        padding: 10px 20px;
    }

    .moj-footer-six-col .footer-col {
        width: 100%; /* Pełna szerokość dla mobilnych */
        margin-bottom: 0; /* Brak odstępów między działami */
    }

    /* Ukrycie szczegółów dla mobilnych: 4 opisy + link Więcej (pozostawiamy tylko tytuły) */
    .moj-footer-six-col .desktop-only {
        display: none;
    }

    /* Dopasowanie stylu tytułów działów na mobilnym */
    .moj-footer-six-col .footer-col-dzial h4.col-title {
        margin-bottom: 5px;
        padding-bottom: 0;
        border-bottom: none;
    }

    /* Sekcja Kontaktowa (na końcu) */
    .moj-footer-six-col .footer-col-kontakt {
        margin-top: 20px; /* Oddzielenie sekcji kontaktowej */
        border-top: 1px solid #CCC;
        padding-top: 10px;
    }



    /* Upewnienie się, że dane kontaktowe są widoczne */
    .moj-footer-six-col .footer-col-kontakt .kontakt-data {
        display: block;
    }
}

/* =========================================
   6. STYLE DLA CZERWONEJ BELKI NA DOLE
   ========================================= */

.czerwona-belka-bottom {
    background-color: var(--maincolor); /* Użycie tego samego koloru czerwonego co w formularzu */
    color: white;
    padding: 15px 0;
    font-size: 0.85em;
    /* Rozciągnięcie na pełną szerokość ekranu */
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

.czerwona-belka-bottom .grid-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px; 
    margin: 0 auto;
    padding: 0 20px; /* Zapewnienie wcięcia na desktopie, gdy nie jest rozciągnięty */
}

/* Ustawienie kolumn dla desktopu */
.czerwona-belka-bottom .col-bottom-1,
.czerwona-belka-bottom .col-bottom-2,
.czerwona-belka-bottom .col-bottom-3,
.czerwona-belka-bottom .col-bottom-4 {
    flex: 1; /* Równa szerokość dla wszystkich 4 kolumn */
    text-align: center;
}

/* Wyrównanie pierwszej kolumny do lewej, reszty do środka/prawej */
.czerwona-belka-bottom .col-bottom-1 {
    text-align: center;
   
    
}

.czerwona-belka-bottom .col-bottom-4 {
    text-align: center;
    
}

.czerwona-belka-bottom a {
    color: white !important;
    text-decoration: none !important;
    transition: opacity 0.3s;
    font-weight: 300;
}

.czerwona-belka-bottom a:hover {
    opacity: 0.8;
}

.czerwona-belka-bottom p {
    margin: 0;
    padding: 0;
    line-height: 1.2;
    font-weight: 100;
}

/* MOBILE FIX */
@media (max-width: 767px) {
    .czerwona-belka-bottom .grid-container {
        flex-direction: column; /* Ułożenie w kolumnę dla mobilnych */
        align-items: flex-start;
        padding: 0 10px;
    }

    .czerwona-belka-bottom .col-bottom-1,
    .czerwona-belka-bottom .col-bottom-2,
    .czerwona-belka-bottom .col-bottom-3,
    .czerwona-belka-bottom .col-bottom-4 {
        width: 100%; /* Pełna szerokość */
        text-align: left; /* Wyrównanie do lewej */
        margin-bottom: 5px; /* Mały odstęp między elementami */
        flex: auto;
    }
    
    .czerwona-belka-bottom .col-bottom-1 p {
        margin-bottom: 10px;
    }
}

/* Naprawa wyśrodkowania w naszych atutach */
.flex_pb_trans .lead_tekst  {    margin-bottom: 0px !important;}
#pcp_wrapper-141919 .sp-pcp-post {
    margin: 23px 29px 0px 23px !important;
}

/* GLOBALNY FIX "ZĄBKÓW" MIĘDZY SEKCJAMI content_section */

/* 1. Sekcje nie mają własnych pionowych marginesów */
.content_section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    position: relative;      /* wspomaga overflow + tła */
    overflow: hidden;        /* zapobiega wyciekaniu marginesów dzieci (margin-collapsing) */
}

/* 2. Pierwszy i ostatni element wewnątrz sekcji nie powiększa sekcji marginesem */
.content_section > .content:first-child {
    margin-top: 0 !important;
}
.content_section > .content:last-child {
    margin-bottom: 0 !important;
}


/*tlo menu */
.main-navigation .inside-navigation {
    justify-content: flex-end;
    background: var(--maincolor);
}
.main-navigation, .main-navigation ul ul {
    background-color: var(--maincolor);
}


/* HERO w szablonie: tło full width, treść centralnie 1400 */



/* SZABLON LID-MAKER: wycentruj układ dwóch kolumn w HERO */
@media (min-width: 1180px) {
  .kyma-top-section .kyma-row {  display: flex !important;
    justify-content: center !important;
  }
}


@media (min-width: 1180px) {
  .kyma-top-section .kyma-content-wrapper {
    display: flex !important;
    justify-content: center !important;
  }
  .kyma-top-section .kyma-row {
    width: 100% !important;
    max-width: 1400px !important;
  }
}



