﻿body {
font-family : Ubuntu, "Noto Sans", "Open Sans", Arial, sans-serif;
font-weight : 400;
background-color : #fff;
color : #555;
}
a {
color : #333;
}
#kontakt p {
font-size : 1.1em;
}
.navbar-toggle {
background: rgba(239, 49, 52, 0.1) !important; 
    border: rgba(255, 255, 255, 0.7) solid 1px; 
}
.navbar {
background : #fff;
}
.navbar-toggle span.icon-bar {
background-color : #fff;
}
h1 {
color : #fff;
font-size : 1.4em;
font-family : 'Ubuntu', sans-serif;
font-weight : 700;
margin-top : 10px;
}
.oferta img {
padding : 10px;
border : rgb(150, 150, 150, 0.3) solid 1px;
margin : 5px;
}
#header h1 {
color : #333;
text-align : right;
}
.logo-container img {
padding-top : 15px;
}
h3 {
font-weight : 400;
color : #333;
font-size : 1.1em;
font-family : 'Ubuntu', sans-serif;
font-weight : 700;
}
h2 {
font-family : 'Ubuntu', sans-serif;
font-weight : 700;
}
.bg-info h2 {
color : #555;
font-family : 'Ubuntu', sans-serif;
font-weight : 700;
}
.bg-info h2 .text-muted {
color: #495057;
}
.bg-info p {
    color: #0c5460; 
}
.lead strong {
font-weight : 700;
}
.navbar-nav > li > a {
font-size : 1.3em;
color: #333;
font-family : 'Ubuntu', sans-serif;
font-weight : 700;
}
.fixed-theme .navbar-nav > li > a {
color : #fff;
}
.navbar-nav > li > a:hover {
color: #007bff;
}
.navbar-right > li > a {
font-size : 1em;
}
.navbar-right > li > a {
padding : 5px 15px;
}
@media (min-width: 768px) {
.navbar-right > li > a {
padding : 10px 8px;
line-height : 2.4em;
}
.navbar-right {
padding-right : 15px;
padding-left : 15px;
}
}
.on-scroll-enable {
display : inline;
}
.onscrolldisable {
display : none;
background-color : #66FFFF;
}
.padding-x-10 {
padding-left : 10px;
padding-right : 10px;
}
.padding-x-20 {
padding-left : 20px;
padding-right : 20px;
}
.padding-x-30 {
padding-left : 30px;
padding-right : 30px;
}
.padding-x-40 {
padding-left : 40px;
padding-right : 40px;
}
.padding-x-50 {
padding-left : 50px;
padding-right : 50px;
}
.padding-xl-10 {
padding-left : 10px;
}
.padding-xl-20 {
padding-left : 20px;
}
.padding-xl-30 {
padding-left : 30px;
}
.padding-xl-40 {
padding-left : 40px;
}
.padding-xl-50 {
padding-left : 50px;
}
.padding-xr-10 {
padding-right : 10px;
}
.padding-xr-20 {
padding-right : 20px;
}
.padding-xr-30 {
padding-right : 30px;
}
.padding-xr-40 {
padding-right : 40px;
}
.padding-xr-50 {
padding-right : 50px;
}
.padding-y-10 {
padding-top : 10px;
padding-bottom : 10px;
}
.padding-y-20 {
padding-top : 20px;
padding-bottom : 20px;
}
.padding-y-30 {
padding-top : 30px;
padding-bottom : 30px;
}
.padding-y-40 {
padding-top : 40px;
padding-bottom : 40px;
}
.padding-y-50 {
padding-top : 50px;
padding-bottom : 50px;
}
.padding-yt-10 {
padding-top : 10px;
}
.padding-yt-20 {
padding-top : 20px;
}
.padding-yt-30 {
padding-top : 30px;
}
.padding-yt-40 {
padding-top : 40px;
}
.padding-yt-50 {
padding-top : 50px;
}
.padding-yb-10 {
padding-bottom : 10px;
}
.padding-yb-20 {
padding-bottom : 20px;
}
.padding-yb-30 {
padding-bottom : 30px;
}
.padding-yb-40 {
padding-bottom : 40px;
}
.padding-yb-50 {
padding-bottom : 50px;
}
.zoom-gallery img {
padding-bottom : 30px;
}
.zoom-gallery a {
text-align : center;
}
.google-maps {
height : 240px;
width : 100%;
padding : 0;
margin : 10px 0 0 0;
}
.carousel-inner > .item > a > img, .carousel-inner > .item > img, .img-responsive, .thumbnail a > img, .thumbnail > img {
margin : auto;
}
.featurette ul {
padding-bottom : 20px;
font-size : 18px;
color : #555;
}
hr {
margin-top : 25px;
margin-bottom : 25px;
border : 0;
border-top : 1px solid rgb(130, 130, 130, 0.4);
}
.offer a {
    color: #fff; /* Biały tekst na ciemnym tle - dobry kontrast */
    text-align: center;
    padding-bottom: 40px;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 16px;
    text-decoration: none;
    line-height: 1em;
}
.offer a:hover {
color : #009fe3;
}
@media (max-width: 1200px) {
h1 {
font-size : 1.4em;
}
}
@media (max-width: 768px) {
h1 {
font-size : 1.2em;
padding-top : 10px !important ;
padding-bottom : 10px !important ;
}
.navbar-header {
margin-right : auto !important ;
margin-left : auto !important ;
text-align : center;
}
.navbar-toggle {
float : none;
}
.responsive-text-center {
text-align : center;
}
body {
padding-top : 223px;
}
}
/* HERO SLIDER CSS */

/* GŁÓWNY HERO SLIDER */
.hero-slider {
    position: relative;
    width: 100%;
    height: 500px; /* Zdefiniowana wysokość eliminuje layout shift */
    max-width: 1600px;
    margin: 0 auto;
    overflow: hidden;
    background: #000;
}

.hero-slides {
    position: relative;
    width: 100%;
    height: 100%;
}

.hero-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.hero-slide.active {
    opacity: 1;
}

.hero-slide::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
}

/* HERO CONTROLS */
.hero-controls {
    position: absolute;
    top: 47%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.3);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 100;
    user-select: none;
}

.hero-controls:hover,
.hero-controls:focus {
    background: rgba(0, 0, 0, 0.7);
    border-color: rgba(255, 255, 255, 0.8);
    transform: translateY(-50%) scale(1.1);
    outline: 2px solid #007bff;
    outline-offset: 2px;
}

.hero-prev {
    left: 15px;
}

.hero-next {
    right: 15px;
}

/* HERO INDICATORS */
.hero-indicators {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 100;
}

.hero-indicator {
    width: 15px;
    height: 15px;
    border: 1px solid rgba(158, 158, 158, 1);
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
}

.hero-indicator:hover,
.hero-indicator:focus {
    outline: 2px solid #007bff;
    outline-offset: 2px;
}

.hero-indicator.active {
    box-shadow: 0 0 0 2px #fff;
    background: #fff;
}

/* RESPONSYWNOŚĆ HERO */
@media (max-width: 768px) {
    .hero-slider {
        height: 300px;
    }

    .hero-controls {
        display: none;
    }
}

@media (max-width: 480px) {
    .hero-slider {
        height: 250px;
    }

    .hero-indicators {
        display: none;
    }
}
/* PRODUCT SLIDER CSS */

/* PRODUCT SLIDER */
.product-slider {
    position: relative;
    width: 100%;
    padding: 40px 0;
    background: #d1ecf1;
    overflow: hidden;
}

.product-slider-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.product-slider h2 {
    text-align: center;
    margin-bottom: 30px;
    color: #0c5460;
    font-family: 'Ubuntu', sans-serif;
    font-weight: 700;
}

.product-slider .text-muted {
    color: #495057;
}

.product-description {
    text-align: center;
    margin-bottom: 30px;
    font-weight: 500;
    font-size: 1.3em;
    color: #0c5460;
}

.product-track-container {
    overflow: hidden;
    position: relative;
}

.product-track {
    display: flex;
    transition: transform 0.5s ease;
    gap: 10px;
}

.product-slide {
    flex: 0 0 300px; /* Stała szerokość eliminuje layout shift */
    height: 200px; /* Stała wysokość */
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
}

.product-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    padding: 10px;
    box-sizing: border-box;
}

.product-slide:hover img {
    transform: scale(1.05);
}

/* RESPONSYWNOŚĆ PRODUCT SLIDER */
@media (max-width: 768px) {
    .product-slide {
        flex: 0 0 250px;
        height: 180px;
    }

    .product-description {
        font-size: 1.1em;
        padding: 0 10px;
    }
}

@media (max-width: 480px) {
    .product-slide {
        flex: 0 0 200px;
        height: 150px;
    }

    .product-description {
        font-size: 1em;
        line-height: 1.4;
    }
}

/* LOADING STATES */
.slider-loading {
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
}

.slider-loading::after {
    content: 'Ładowanie...';
    font-size: 18px;
    color: #666;
}