/* Mini grid + utilities (náhrada za celý Bootstrap) – len triedy použité v téme.
   Breakpointy: md 768, lg 992, xl 1200, xxl 1400. Gutter 0.75rem. */

*, *::before, *::after { box-sizing: border-box; }

/* Kontajnery */
.container-fluid, .container-xl { width: 100%; padding-right: 0.75rem; padding-left: 0.75rem; margin-right: auto; margin-left: auto; }
@media (min-width: 1200px) { .container-xl { max-width: 1140px; } }
@media (min-width: 1400px) { .container-xl { max-width: 1320px; } }

/* Row + stĺpce */
.row { display: flex; flex-wrap: wrap; margin-right: -0.75rem; margin-left: -0.75rem; }
.row > * { flex-shrink: 0; width: 100%; max-width: 100%; padding-right: 0.75rem; padding-left: 0.75rem; }
.col { flex: 1 0 0%; }
.col-auto { flex: 0 0 auto; width: auto; }
.col-12 { flex: 0 0 auto; width: 100%; }
@media (min-width: 768px) {
	.col-md { flex: 1 0 0%; }
	.col-md-auto { flex: 0 0 auto; width: auto; }
}
@media (min-width: 992px) {
	.col-lg-5 { flex: 0 0 auto; width: 41.66666667%; }
	.col-lg-6 { flex: 0 0 auto; width: 50%; }
	.offset-lg-1 { margin-left: 8.33333333%; }
}

/* Navbar layout (zvyšok štýluje theme.css) */
.navbar > .container-fluid, .navbar > .container-xl { display: flex; flex-wrap: inherit; align-items: center; justify-content: space-between; }
.navbar-brand { display: inline-block; }
.navbar-nav { display: flex; flex-direction: row; margin: 0; padding: 0; list-style: none; }

/* Display utilities (responzívne MUSIA byť za .d-none, inak ho !important neprebije) */
.d-none { display: none !important; }
.d-block { display: block !important; }
@media (min-width: 992px) { .d-lg-block { display: block !important; } }

/* Flex utilities */
.ms-auto { margin-left: auto !important; }

/* Spacing utilities (Bootstrap škála: 3=1rem, 4=1.5rem, 5=3rem) */
.mb-0 { margin-bottom: 0 !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-5 { margin-bottom: 3rem !important; }
.me-4 { margin-right: 1.5rem !important; }
.pe-5 { padding-right: 3rem !important; }
.pb-0 { padding-bottom: 0 !important; }
.pb-3 { padding-bottom: 1rem !important; }
@media (min-width: 768px) {
	.pb-md-0 { padding-bottom: 0 !important; }
	.pt-md-5 { padding-top: 3rem !important; }
}
@media (min-width: 1400px) {
	.pb-xxl-4 { padding-bottom: 1.5rem !important; }
}
