/*
 Theme Name:   Bootscore Child
 Description:  Bootscore Child Theme
 Author:       Bootscore
 Author URI:   https://bootscore.me
 Template:     bootscore
 Version:      6.0.0
 Requires at least: 5.0
 Tested up to: 6.6
 Requires PHP: 7.4
 License: MIT License
 License URI: https://github.com/bootscore/bootscore-child/blob/main/LICENSE
 Text Domain:  bootscore
*/

/* 
All style editing is done via /assets/scss/_bootscore_custom.scss
*/


h1, h2, h3, h4, h5, h6 {
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.wtw-offcanvas .offcanvas-header{background-color: #0d2946;}
.wtw-offcanvas .offcanvas-body{background-color: #1a3443;}
.wtw-offcanvas .offcanvas-title{font-family: "EB Garamond", serif; color: #d4af37; font-weight: 700; font-size: 24px;}
.wtw-offcanvas .btn-close{color: #d4af37;}
.wtw-offcanvas .navbar-nav{font-family: "EB Garamond", serif;  font-size: 20px;}
.wtw-offcanvas .navbar-nav li a{color: #d4af37;}
.wtw-offcanvas .navbar-nav .nav-link.active, .navbar-nav .nav-link.show {background-color: #0d2946; color: #d4af37;}
.wtw-offcanvas .dropdown-menu{background-color: #0d2946;}

#top-navbar{font-family: "EB Garamond", serif; font-size: 18px; text-transform: uppercase;}
#top-navbar li{display: inline !important;}
#top-navbar li a{font-weight: 700;}


#logo_top, .bg-body-main{
background-color: #1a3443;
padding: 20px;
}

    .acf-photo-gallery .acf-photo-gallery-grid{
        display: grid;
        gap: 10px;
        align-items: start;
    }
    .acf-photo-gallery .acf-photo-item{ margin:0; }
    .acf-photo-gallery .acf-photo-item img{ width:100%; height:auto; display:block; border-radius:6px; }
    .acf-photo-gallery .acf-photo-caption{ font-size:0.9rem; margin-top:6px; color:#666; }
    .acf-photo-link{ display:block; text-decoration:none; }


.btn-outline-blue {
    --bs-btn-color: #1a3443;
    --bs-btn-border-color: #1a3443;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #1a3443;
    --bs-btn-hover-border-color: #1a3443;
    --bs-btn-focus-shadow-rgb: 108, 117, 125;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1a3443;
    --bs-btn-active-border-color: #1a3443;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #1a3443;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #1a3443;
    --bs-gradient: none;
}


.site-header{
border-bottom: solid 1px #1a3443;
padding-top: 2px;
padding-bottom: 2px;
background-color: #fff;
}


.countdown-wrapper{background-color: #1a3443;}
.countdown-wrapper h4{color: #fff;}

:root {
    --bg-dark-body: #ffffff;    /* Tło całej strony (białe) */
    --box-navy: #1a3443;        /* Głęboki granat dla boksów */
    --accent-gold: #d4af37;     /* Złoto dla linii i detali */
    --text-white: #ffffff;      /* Biały tekst wewnątrz boksów */
    --text-muted: #e2e8f0;      /* Jaśniejszy tekst dla opisów */
    --dot-size: 18px;
    --line-width: 3px;
}

.timeline-container.alternate {
    position: relative;
    max-width: 1000px;
    margin: 50px auto;
    padding: 20px;
    background-color: var(--bg-dark-body);
}

/* Złota linia środkowa */
.timeline-container.alternate .timeline-line {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: var(--line-width);
    height: 100%;
    background: var(--accent-gold);
    opacity: 0.8;
}

.timeline-item {
    position: relative;
    width: 100%;
    margin-bottom: 60px;
    display: flex;
    justify-content: flex-end; /* Prawa strona */
}

.timeline-item:nth-child(even) {
    justify-content: flex-start; /* Lewa strona */
}

/* Złota kropka na linii */
.timeline-dot {
    position: absolute;
    left: 50%;
    top: 25px;
    transform: translateX(-50%);
    width: var(--dot-size);
    height: var(--dot-size);
    background-color: var(--box-navy);
    border: 3px solid var(--accent-gold);
    border-radius: 50%;
    z-index: 10;
    box-shadow: 0 0 12px rgba(212, 175, 55, 0.5);
}

/* Boks wydarzenia - Głęboki Granat */
.timeline-content {
    position: relative;
    width: 44%;
    padding: 25px;
    background-color: var(--box-navy); 
    border: 2px solid var(--accent-gold); /* Wyraźniejsza złota ramka */
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(26, 52, 67, 0.2);
    transition: all 0.3s ease;
}

.timeline-content:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(212, 175, 55, 0.2);
}

/* Tekst wewnątrz granatowego boksu */
.timeline-date {
    display: block;
    font-weight: 800;
    color: var(--accent-gold);
    margin-bottom: 10px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-size: 0.85rem;
}

.timeline-content h3 {
    color: #d4af37;
    margin-top: 0;
    margin-bottom: 12px;
    font-size: 1.4rem;
    font-weight: 700;
}

.timeline-text {
    color: #fff;
    line-height: 1.7;
    margin-bottom: 0;
    font-size: 0.95rem;
}

/* Strzałki łączące boks z linią (w kolorze granatowym) */
.timeline-content::after {
    content: "";
    position: absolute;
    top: 22px;
    border-style: solid;
}

/* Strzałka dla boksów po prawej */
.timeline-item:nth-child(odd) .timeline-content::after {
    left: -17px;
    border-width: 10px 15px 10px 0;
    border-color: transparent var(--accent-gold) transparent transparent;
}

/* Strzałka dla boksów po lewej */
.timeline-item:nth-child(even) .timeline-content::after {
    right: -17px;
    border-width: 10px 0 10px 15px;
    border-color: transparent transparent transparent var(--accent-gold);
}

/* Responsywność dla urządzeń mobilnych */
@media (max-width: 768px) {
    .timeline-container.alternate .timeline-line {
        left: 20px;
        transform: none;
    }
    .timeline-dot {
        left: 20px;
    }
    .timeline-item, .timeline-item:nth-child(even) {
        justify-content: flex-start;
        padding-left: 50px;
    }
    .timeline-content {
        width: 100%;
    }
    .timeline-item:nth-child(even) .timeline-content::after,
    .timeline-item:nth-child(odd) .timeline-content::after {
        left: -17px;
        border-width: 10px 15px 10px 0;
        border-color: transparent var(--accent-gold) transparent transparent;
    }
}
/* Responsywność */
@media (max-width: 768px) {
    .timeline-container.alternate .timeline-line { left: 20px; transform: none; }
    .timeline-dot { left: 20px; transform: translateX(-50%); }
    .timeline-item, .timeline-item:nth-child(even) {
        justify-content: flex-start;
        padding-left: 50px;
    }
    .timeline-content { width: 100%; }
}

/* Responsywność dla Mobile */
@media (max-width: 768px) {
    .timeline-container.alternate .timeline-line {
        left: 30px;
    }
    
    .timeline-item, .timeline-item:nth-child(even) {
        justify-content: flex-start;
        padding-left: 60px;
        margin-bottom: 30px;
    }
    
    .timeline-content {
        width: 100%;
    }
    
    .timeline-dot {
        left: 30px;
    }

    .timeline-item:nth-child(even) .timeline-content::after,
    .timeline-item:nth-child(odd) .timeline-content::after {
        left: -15px;
        border-width: 10px 15px 10px 0;
        border-color: transparent #fff transparent transparent;
    }
}

/* Responsywność dla bardzo małych ekranów */
@media (max-width: 576px) {
    .timeline-line { left: 20px; }
    .timeline-dot { left: calc(20px - 7px); }
    .timeline-item { padding-left: 45px; }
}



.card {
    overflow: hidden;
}

.card .overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0,0,0,0.55); /* półprzezroczysta apla */
    color: #fff;
    padding: 1rem;
    z-index: 5;
}

.card-img-top {
    display: block;
    width: 100%;
    height: auto;
}

.pinnews{border: none; background-color: #1a3443;}
.pinnews h2 a{color: #cca445;}
.pinnews p{color: #fff;}

.overlay .card-title a{color: #cca445; text-decoration: none;}

.sport-card, .sport-card-gold {
    width: 100%;
    border-radius: 12px;
    overflow: hidden;

}

.sport-card{background: #1a3443;       /* ‹ kolor pod zaokrągleniem IMG */}
.sport-card-gold{background: #cca445;       /* ‹ kolor pod zaokrągleniem IMG */}



/* warstwa dla zdjęcia z maską */
.img-layer, .img-layer-color {
    position: relative;
    /*background: #1a3443;       /* widoczny w zaokrągleniu */
}

/* TU SIĘ DZIEJE MAGIA ?? */
.img-layer img {
    width: 100%;
    display: block;

    /* prawdziwe zaokrąglenie BEZ prześwitów */
    -webkit-mask-image: radial-gradient(circle at top left, transparent 0, black 0),
                        radial-gradient(circle at top right, transparent 0, black 0),
                        radial-gradient(circle at bottom left, transparent 0, black 0),
                        radial-gradient(circle at bottom right, transparent 0, black 0);
    border-radius: 12px; /* przejmuje kształt maski */
    filter: grayscale(100%);
    transition: filter .45s ease-in-out; /* ładne płynne przejście */
}

.sport-card:hover .img-layer img, .sport-card-gold:hover .img-layer img  {
    filter: grayscale(0%);
}

.sponsor-img {
    filter: grayscale(100%);
    transition: filter 0.3s ease;
    opacity: 0.7;
}

.sponsor-link:hover .sponsor-img {
    filter: grayscale(0%);
    opacity: 1;
}

/* Kontener na logo */
.logo-wrapper {
    width: 200px;
    height: 100px;
    margin: 0 auto; /* Centrowanie w kolumnie */
    display: flex;
    align-items: center;    /* Centrowanie pionowe */
    justify-content: center; /* Centrowanie poziome */
    background-color: transparent; /* Możesz zmienić na biały, jeśli loga są ciemne */
    overflow: hidden;
}

/* Stylizacja samego obrazka */
.sponsor-img-uniform {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    /* Kluczowa właściwość: */
    object-fit: contain; 
    
    /* Opcjonalnie: poprawa jakości skalowania */
    image-rendering: -webkit-optimize-contrast;
}

/* Responsywność - na małych ekranach można zmniejszyć pudełko */
@media (max-width: 576px) {
    .logo-wrapper {
        width: 150px;
        height: 75px;
    }
}

/* Label jak na grafice */
.sport-label, .sport-label-gold {
    position: absolute;
    bottom: 30px;
    right: 0;
    color: #fff;
    padding: 8px 16px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 0 0 0 0;
    text-transform: uppercase;
}

.sport-label{background: #1a3443;}
.sport-label-gold {background: #cca445;}

/* pasek pod obrazem */
.blue-bar {
    height: 14px;
    background: #1a3443;
    border-radius: 0 0 12px 12px;
}

.gold-bar {
    height: 14px;
    background: #cca445;
    border-radius: 0 0 12px 12px;
}


/* Płynne przejścia */
.sport-card,
.sport-label,
.blue-bar,
.gold-bar {
    transition: all .35s ease;
}

/* Domyślny kolor */
.sport-card {
    background: #1a3443;
}

.sport-card-gold {
    background: #cca445;
}

/* HOVER – zamiana całości na złoto */
.sport-card:hover {
    background: #d4af37; /* całe tło pod zdjęciem */
}

.sport-card-gold:hover {
    background: #cca445; /* całe tło pod zdjęciem */
}


.sport-card:hover .sport-label {
    background: #d4af37; 
    color: #fff;
}

.sport-card-gold:hover .sport-label {
    background: #d4af37; 
    color: #fff;
}

.sport-card:hover .blue-bar {
    background: #d4af37;
}


.sport-card-gold:hover .blue-bar {
    background: #d4af37;
}

/* Ukrywamy domyślnie wszystkie kontenery ze zdjęciami */
.object-image-container {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

/* Pokazujemy tylko ten z klasą aktywną */
.object-image-container.active-img {
    display: block;
    opacity: 1;
}

/* Opcjonalnie: Styl dla aktywnego przycisku na liście (jeśli nie używasz Bootstrapa) */
.object-trigger.active {
    background-color: #007bff;
    color: white;
    font-weight: bold;
}

.break-first {
    display: block;
    text-align: center;
}

.break-first::after {
    content: "";
    display: block;
    text-align: cemter;
}

.obiekty-left .list-group{background-color: #fff; border-radius: 12px; padding: 20px; margin-top: 40px; margin-left: 40px; margin-right: 40px;}

#obiekty {
    position: relative; /* pseudo-element absolutny względem sekcji */
}

#obiekty .row {
    display: flex;
    align-items: stretch; /* kolumny mają równą wysokość */
}

.roundedmore{border-radius: 12px;}

#obiekty::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 37.9%; /* szerokość pierwszej kolumny */
    height: 100%;    /* wypełnia całą wysokość rzędu */
    background-color: #ededed;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    z-index: -1;
}



.product-home{border: none;}
.product-home-image{}
.product-home-image img{ border-radius: 12px;bordeR: solid 1px #1a3443;}
.product-home .card-body{padding-left: 0px; padding-right: 0px;}
.btn-blue{background-color: #1a3443; color: #cca445;}
.btn-blue:hover{background-color: #cca445; color: #1a3443;}
.product-home .card-body .amount{font-size: 20px; padding: 5px;}
.product-home .card-body h3 a{text-decoration: none; color: #1a3443;}


.product-home a img, .img-layera a img, .kronika a img {
    transition: transform 0.4s ease, filter 0.4s ease;
}

.product-home:hover a img, .img-layera:hover a img, .kronika:hover a img {
    transform: scale(1.09);
    filter: brightness(1.09);
}

.add_to_cart_button {
    display: flex;
    align-items: center;
    justify-content: center; /* cena wycentrowana */
    padding: 6px 12px;
    border-radius: 6px;
    transition: background-color 0.3s ease;
    position: relative;
}

.add_to_cart_button:hover {
    background-color: #cca445; /* ciemniejszy odcień przycisku */
    
}

.add_to_cart_button .price {
    flex: 1;
    text-align: center;
    transition: color 0.3s ease;
    color: #fff;
}

.add_to_cart_button:hover .price {
    color: #1a3443; /* efekt hover ceny */
}

.add_to_cart_button .cart-icon {
    display: flex;
    align-items: center;
    margin-left: 8px;
    transition: transform 0.3s ease;
    color: #fff;
}

.add_to_cart_button:hover .cart-icon {
    transform: translateX(5px); /* ikona przesuwa się w prawo */
    color: #1a3443; /* efekt hover ceny */
}


#news, #coop{background-color: #ededed;}




.copy-footer{background-color: #0d2946; text-transform: uppercase; color: #fff; font-size: 13px;}
.footer_widget{font-size: 14px; color: #fff;}
.footer_widget a{color: #fff; text-decoration: underline;}

#kronika{}
.kronika-imagebox{background-color: #fff; padding-top: 15px; padding-bottom: 15px; border-radius: 12px;}
.kronika-title h4{text-transform: uppercase; background-color: #1a3443; padding: 10px; display: table-cell; color: #fff;}

.trophy-list{}
.trophy-list li{background-color: rgba(26,52,27,0.3); border-radius: 12px; padding: 10px; color: #fff;}

.trophy-list .trophy-bullet {
    width: 35px;      /* rozmiar ikonki */
    height: 35px;     /* dopasuj według potrzeb */
    object-fit: contain;
    flex-shrink: 0;
    margin-top: 4px;  /* wyrównanie z tekstem */
}

#rokCarousel .carousel-item {
    min-height: 360px; /* dopasuj */
}

/* Strzałki po bokach tytułu */
.position-relative .btn.position-absolute {
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
}
.position-relative .btn.start-0 { left: -25px; }  
.position-relative .btn.end-0 { right: -25px; }

.nav-item a{color: #1a3443; font-size: 18px; font-weight: 400;}
.nav-item a:hover{color: #cca445;}
.dropdown-item.active{background-color:#cca445; color:#1a3443 !important;}

.obiekty-left .list-group-item{border: none; background-color: #f4f4f4; margin-bottom: 2px; color: #1a3443;}
.obiekty-left .list-group-item.active, .list-group-item:hover{background-color: #1a3443; color: #cca445;margin-bottom: 2px;}

.partner-logo {
    max-height: 150px;
    width: auto;
    object-fit: contain;
    transition: transform .2s ease;
}

.partner-logo:hover {
    transform: scale(1.05);
}

.partner-carousel .owl-nav button {
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
    background: transparent !important;
    border: none !important;
}

.partner-carousel .owl-nav .owl-prev {
    left: -40px;
}

.partner-carousel .owl-nav .owl-next {
    right: -40px;
}

.partner-carousel .owl-nav i {
    color: #333;
    font-size: 2rem;
}

.partner-carousel .owl-nav i:hover {
    color: #000;
}




.attachements{background-color: #ededed; border-radius: 12px;}
.see_also{padding-lefT: 0px; list-style: none;}
.see_also li{background-color: #d6d6d6; color: #cca445; margin-bottom: 3px; display: block; border-radius: 12px;}
.see_also li a{color: #1a3443; text-decoration: none; display: block; padding-top: 7px; padding-bottom: 7px; padding-left: 14px; padding-right: 14px; }
.see_also li a:hover{color: #cca445; text-decoration: none;}
.see_also li:hover{background-color: #1a3443;}


.entry-header .post-thumbnail{background-color: #1a3443;}
.entry-header .post-thumbnail img{border-bottom-left-radius: 12px; border-bottom-right-radius: 12px;}
.entry-header .entry-title{background-color: #1a3443; color: #cca445; margin-bottom: 0px; padding: 15px; border-top-left-radius: 12px; border-top-right-radius: 12px;}
/*.single-dyscyplina .entry-header .entry-title{background-color: #cca445; color: #1a3443; margin-bottom: 0px; padding: 15px; border-top-left-radius: 12px; border-top-right-radius: 12px;}
.single-dyscyplina .entry-header .post-thumbnail{background-color: #1a3443;}*/
/*.page .entry-header .entry-title, .wc-block-components-checkout-step__title{color: #1a3443; }*/
.acf-photo-item{background-color: #1a3443; border-radius: 12px;}
.acf-photo-item img{border-radius: 12px;}
.acf-photo-item:hover, .acf-photo-item:hover .blue-bar{background-color: #cca445;}
.trener .post-thumbnail{background-color: #cca445;}

.single-trener .entry-header .entry-title{color: #1a3443 !important; background-color: transparent !important; padding-left: 0px; padding-right: 0px; padding-top: 0px;}


.breadcrumb{font-size: 12px;}
.bootscore-copyright a, .breadcrumb a{color: #cca445; text-decoration: none;}
.breadcrumb a:hover{color: #1a3443;}

/* ===========================================
   PAGINACJA BOOTSCORE – PEŁNA PERSONALIZACJA
   =========================================== */

/* Ogólne linki */
.pagination .page-link {
    color: #1a3443;
    padding: 0.5rem 0.75rem;
    border-radius: 0.25rem;
    border: 1px solid #dee2e6;
    transition: all 0.2s ease-in-out;
}

/* Hover – każdy element */
.pagination .page-link:hover {
    background-color: #1a3443 !important;
    border-color: #1a3443 !important;
    color: #cca445 !important;
}

/* Focus */
.pagination .page-link:focus {
    box-shadow: 0 0 0 0.2rem rgba(26, 52, 67, 0.3);
    background-color: #1a3443 !important;
    color: #cca445 !important;
    border-color: #1a3443 !important;
}

/* ACTIVE */
.pagination .page-item.active .page-link {
    background-color: #1a3443 !important;
    border-color: #1a3443 !important;
    color: #cca445 !important;
}

/* ACTIVE hover */
.pagination .page-item.active .page-link:hover,
.pagination .page-item.active .page-link:focus {
    background-color: #1a3443 !important;
    border-color: #1a3443 !important;
    color: #cca445 !important;
}

/* DISABLED */
.pagination .page-item.disabled .page-link {
    background-color: #f0f0f0 !important;
    border-color: #e0e0e0 !important;
    color: #999 !important;
    cursor: not-allowed;
    opacity: 0.6;
}

/* Prev / Next — dopasowanie */
.pagination .page-item .page-link[aria-label="Next"],
.pagination .page-item .page-link[aria-label="Previous"] {
    font-weight: 600;
    color: #1a3443;
}

/* Prev / Next hover */
.pagination .page-item .page-link[aria-label="Next"]:hover,
.pagination .page-item .page-link[aria-label="Previous"]:hover {
    background-color: #1a3443 !important;
    color: #cca445 !important;
    border-color: #1a3443 !important;
}

/* Opcjonalnie – zaokrąglenie paginacji */
.pagination .page-link {
    border-radius: 6px;
}

/* Odstępy między przyciskami */
.pagination .page-item {
    margin: 0 3px;
}

/* ===========================================
   BACK TO TOP BUTTON – KOLORY DOPASOWANE
   =========================================== */

/* Dla Bootscore 5 / 5.x */
.top-button {
    background-color: #1a3443 !important;
    color: #cca445 !important;
    border: 2px solid #1a3443 !important;
    border-radius: 50%;
    padding: 12px 14px;
    right: 40px; 
    bottom: 20px;
    transition: all 0.25s ease-in-out;
}

/* Ikona */
.top-button svg {
    fill: #cca445 !important;
}

/* Hover */
.top-button:hover {
    background-color: #cca445 !important;
    color: #1a3443 !important;
    border-color: #cca445 !important;
    transform: scale(1.08);
}

/* Ikona hover */
.top-button:hover svg {
    fill: #1a3443 !important;
}

/* Shadow dla lepszej widoczności */
.top-button {
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

/* Kontener spisu treści */
.toc-container {
    background-color: #f8f9fa; /* Jasne tło */
    border-left: 5px solid #1a3443; /* Pasek w kolorze Twojego motywu */
    padding: 20px;
    margin-bottom: 30px;
    border-radius: 4px;
}

.toc-title {
    font-size: 1.2rem;
    margin-bottom: 10px;
    font-weight: bold;
    color: #1a3443;
}

.toc-list {
    list-style: none; /* Usuwa kropki */
    padding-left: 0;
    margin: 0;
    /*display: flex; /* Ustawia linki obok siebie (opcjonalnie) */
    /*flex-wrap: wrap;
    gap: 15px; */
}

.toc-list li a {
    text-decoration: none;
    color: #333;
    font-weight: 500;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}

.toc-list li a:hover {
    color: #d4af37; /* Złoty kolor po najechaniu */
    border-bottom-color: #d4af37;
}

.gold{background-color: #cca445;}
.text-gold{color: #cca445;}
.blue{background-color: #1a3443;}
.text-blue{color: #1a3443;}
.grey{background-color: #ededed;}
.darkgrey{background-color: #d6d6d6;}
.lightgrey{background-color: #f4f4f4;}

/*.acf-map {
    width: 100%;
    height: 400px;
    border: #ccc solid 1px;
    margin: 20px 0;
}*/

/* Fix dla map Google wewnątrz edytorów lub responsywności */
.acf-map img {
   max-width: inherit !important;
}

/* 1. Główny kontener trzymający całość */
.map-wrapper {
    position: relative;
    width: 100%;
    height: 400px; /* WAŻNE: Tu ustalamy wysokość mapy */
    overflow: hidden; /* Żeby nic nie wystawało */
}

/* 2. Mapa Google - rozciągamy ją na cały wrapper */
.acf-map {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; /* Najniższa warstwa (tło) */
    margin: 0; /* Reset marginesów ACF */
}

/* 3. Niebieski boks - warstwa wyżej */
.blue-overlay {
    position: absolute;
    top: 100px;
    left: 30px;
    width: 25%; /* 30% powierzchni */
    /*height: 100%;*/
    background-color: rgba(26, 52, 67, 0.85); /* Niebieski z przezroczystością */
    z-index: 10; /* Wyżej niż mapa */
    pointer-events: auto; /* Pozwala klikać w tekst w boksie */
    border-radius: 12px;
}

.brt-12{border-top-left-radius: 12px;border-top-right-radius: 12px;}
.address-list{list-style: none; color: #fff; padding-left: 20px;}

.logo-overlay{background-color: #1a3443; padding: 12px; border-radius: 12px;}

.logo-overlay img {
    border-radius: 12px;
}

    /* Domyślne tło dla wszystkich kart */
    .kalendarium-section .card {
        background-color: #f4f4f4;
        overflow: hidden;
    }

    /* STYL DLA OSTATNIEGO ELEMENTU */
    .kalendarium-section .card.is-last-event {
        background-color: #1a3443 !important; /* Ciemne tło */
        border-start-color: #cca445 !important; /* Złoty pasek boczny */
    }

    /* Zmiana kolorów tekstów wewnątrz ostatniego elementu */
    .is-last-event .title-color,
    .is-last-event .text-muted,
    .is-last-event .text-primary {
        color: #ffffff !important;
    }

    .is-last-event .text-muted {
        opacity: 0.7;
    }

    /* Hover dla kart */
    .kalendarium-section .card:hover {
        transform: translateY(-5px);
        box-shadow: 0 12px 24px rgba(0,0,0,0.12) !important;
        opacity: 1 !important;
    }

    .text-primary {
        color: #1a3443 !important; 
    }
    
/* Kontener zachowujący proporcje 16:9 */
.video-container {
    position: relative;
    padding-bottom: 56.25%; /* Proporcja 16/9 = 0.5625 */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
    margin-bottom: 20px;
    border-radius: 12px;
}

/* Pozycjonowanie iframe wewnątrz kontenera */
.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}    


/* Stylizacja pól formularza CF7 */
.wpcf7-form-control:not(.wpcf7-submit) {
    display: block;
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #1a3443;
    background-color: #fff;
    background-clip: padding-box;
    border: 2px solid #dee2e6;
    border-radius: 0.375rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    margin-bottom: 20px;
}

/* Stan focus dla pól (kliknięcie) */
.wpcf7-form-control:not(.wpcf7-submit):focus {
    color: #1a3443;
    background-color: #fff;
    border-color: #1a3443;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(26, 52, 67, 0.1);
}

/* Stylizacja przycisku Wyślij */
.wpcf7-submit {
    display: inline-block;
    padding: 0.75rem 2.5rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    background-color: #1a3443; /* Twój granat */
    color: #ffffff;
    border: 2px solid #1a3443;
    border-radius: 0.375rem;
    cursor: pointer;
    transition: all 0.3s ease;
    width: auto;
}

/* Hover dla przycisku Wyślij */
.wpcf7-submit:hover {
    background-color: #cca445; /* Twoje złoto */
    border-color: #cca445;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(204, 164, 69, 0.3);
}

/* Styl ogólny dla komunikatów CF7 */
.wpcf7-response-output {
    margin: 20px 0 0 0 !important;
    padding: 15px 20px !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    text-align: center !important;
    border: none !important; /* Usuwamy domyślną ramkę */
}

/* Stan: Błąd walidacji lub błąd wysyłki (Czerwone tło) */
.wpcf7-validation-errors, 
.wpcf7-mail-sent-ng, 
.wpcf7-aborted,
.wpcf7-spam-blocked {
    background-color: #dc3545 !important; /* Intensywna czerwień Bootstrap */
    color: #ffffff !important;           /* Biały tekst */
}

/* Stan: Sukces (Zielone tło - dla kontrastu) */
.wpcf7-mail-sent-ok {
    background-color: #198754 !important; /* Zieleń Bootstrap */
    color: #ffffff !important;           /* Biały tekst */
}

/* Etykiety pól (labels) */
.wpcf7 label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: #1a3443;
}


/* Styl dla klauzuli pod ceną */
.xsmall {
    font-size: 0.75rem;
}


/* Dopasowanie do kolorów Twojej galerii */
.card .text-primary {
    color: #1a3443 !important; /* Tutaj wstaw swój główny niebieski */
}


.shorts-gallery {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
}

.short-item {
  /* Tutaj kontrolujesz rozmiar */
  height: 430px; 
  width: 242px; /* To jest proporcja 9:16 dla wysokości 450px */
  
  border-radius: 10px;
  overflow: hidden;
  background: #000; /* Tło na wypadek przesunięć */
}

.short-item iframe {
  width: 100%;
  height: 100%;
}

.field-item{margin-top: 10px;}

/* --- Ukrywanie na ekranach mobilnych (poniżej 992px) --- */
@media (max-width: 991.98px) {
    #baf-container {
        display: none !important;
    }
}

/* Opcjonalnie: Stylizacja przycisku, aby był bardziej elegancki */
#baf-toggle:hover {
    padding-right: 20px; /* Lekki efekt wysunięcia przy najechaniu */
}

.single-event .acf-photo-gallery{margin-top: 10px !important; padding-top: 0px !important;}
.single-event .video-container{margin-bottom: 0px !important;}

.eventowy{background-color: #1a3443; border-top-left-radius: 12px; border-top-right-radius: 12px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; }
.event-card-text{font-size: 12px; color: #cca445 !important;}

/* Dostosowanie dla małych ekranów (telefony) */
@media (max-width: 600px) {
  .short-item {
    flex: 1 1 100%;
    max-width: 100%;
  }
}


/* 4. Tytuł - najwyższa warstwa */
.address_fields {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 20; /* Wyżej niż boks i mapa */
}

/* RWD - Na telefonach boks na dole */
@media (max-width: 768px) {
    .blue-overlay {
        width: 85%;
        /*height: 50%;*/
        top: auto;
        bottom: 10px;
    }
}