:root {
    --bs-primary-rgb: 13, 110, 253; /* Keep Bootstrap Blue or change e.g. to 0, 80, 150 for a deeper blue */
}

body {
    position: relative;
}

/* --- Navigation --- */
.navbar-brand {
    font-weight: bold;
}

.navbar .nav-link {
    transition: color 0.3s ease-in-out;
}

.navbar .nav-link:hover, .navbar .nav-link.active {
    color: #fff !important; 
    font-weight: 500;
}

.navbar.scrolled {
    background-color: rgba(0, 0, 0, 0.7) !important;
    backdrop-filter: blur(5px);
    transition: background-color 0.5s;
}

/* --- Hero Section --- */
#home {
    min-height: 100vh;
    background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('../hero.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* Parallax effect */
}

#home h1 {
    font-weight: 700;
}

/* --- Sections --- */
section {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

h2 {
    margin-bottom: 1rem;
}

/* --- About Us Section --- */
#o-nas .p-4 {
    transition: transform 0.3s, box-shadow 0.3s;
    border-radius: .5rem;
}

#o-nas .p-4:hover {
    transform: translateY(-10px);
    box-shadow: 0 0.5rem 1rem rgba(0,0,0,.15);
}

/* --- Pricing Section --- */
#cennik .card {
    transition: transform 0.3s;
}

#cennik .card:hover {
    transform: scale(1.03);
}

.card-header {
    font-size: 1.25rem;
    font-weight: 500;
}

/* --- Contact Section --- */
#kontakt a {
    transition: color 0.3s;
}

#kontakt a:hover {
    color: var(--bs-primary) !important;
}

/* --- Footer --- */
footer {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

/* Smooth scroll behavior */
html {
    scroll-behavior: smooth;
    scroll-padding-top: 70px; /* Offset for fixed navbar */
}
