.text-primary {
    color: #1F2E56 !important;
}

.btn-transparent {
    color: #e2e7e8;
}

.bg-primary, .menu-link:hover, .btn-dark:hover, .btn-transparent:hover {
    background-color: #e7eced !important;
}

.menu-link:active, .btn-dark:active, .btn-transparent:active, .dropdown-item:active {
    background-color: #cccfd0 !important;
    color: #1e2e55 !important;
}

.bg-body {
    background-image: url('../imgs/logo_umlub_bgd.svg'), radial-gradient(circle, rgba(53, 66, 117, 1) 0%, rgba(30, 46, 85, 1) 100%);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 100%;
    background-attachment: fixed;
}

.menu-link, .dropdown-item {
    text-decoration: none;
    font-weight: normal !important;
}

.text-light {
    color: #e2e7e8 !important;
}

.text-highlight, .menu-link:hover, .btn-dark:hover, .btn-transparent:hover {
    color: #1e2e55 !important;
}

.border-highlight {
    border-color: #1e2e55 !important;
}

.bg-light {
    background-color: #e2e7e8 !important;
}

.bg-dark {
    background-color: #1e2e55 !important;
}

.bg-dark-gradient {
    background-color: #1e2e55 !important;
    background: radial-gradient(circle,rgba(53, 66, 117, 1) 0%, rgba(30, 46, 85, 1) 100%);
}

.bg-darker {
    background-color: #454545 !important;
}

.border-dark {
    border: solid #1e2e55 2px !important;
}

.border-light {
    border-color: #ddd !important;
}

.segment {
    margin-top: 30px;
}

.segment .row {
    margin: 0;
}

.bg-lighter {
    background-color: #e6e6e6 !important;
}

.btn {
    border-radius: 0;
    border-width: 0;
}

.btn-white {
    background-color: white;
}

.btn-white:hover {
    background-color: lightgray;
}

.btn-light {
    border-color: #1e2e55;
    color: #1d416f;
    font-weight: normal !important;
    -webkit-box-shadow: 0px 0px 10px -5px rgba(66, 68, 90, 1);
    -moz-box-shadow: 0px 0px 10px -5px rgba(66, 68, 90, 1);
    box-shadow: 0px 0px 10px -5px rgba(66, 68, 90, 1);
}

.btn-dark {
    background-color: transparent !important;
    padding-top: 7px;
    padding-bottom: 8px;
}

small {
    font-size: 0.85em;
}

.square {
    display: inline-block;
    margin: 0;
    width: 11px;
    height: 22px;
}

.hover {
    cursor: pointer;
}

a, .btn-link {
    color: #3857a7;
    text-decoration: none;
    font-weight: bold !important;
}

a:hover, .btn-link:hover {
    color: #1e2e55;
}

a div.shadow:hover {
    background-color: #e2e7e8 !important;
}

button:focus, .menu-link:focus, .dropdown-toggle:focus, a.btn:focus {
  outline: 2px solid #3a9eba;
  outline-offset: 2px;
}

#mail-link:focus, #lang-toggle:focus, #contrast-toggle:focus {
    color: #fff;
}

.row {
    padding: 0 !important;
}

.w-33 {
    width: 33.3333%;
}

.img-hover:hover {
    opacity: 0.85;
}

h2.h4, .h5 {
    color: #1F2E56;
}

h3.h5 {
    color: #6c0e14;
}

.highlight:hover {
    background-color: #e2e7e8;
}

p.ms--5 {
    margin-left: -5px;
}

.rounded-0 {
    border-radius: 0;
}   

.dropdown:hover>.dropdown-menu {
    display: block;
}
  
.dropdown>.dropdown-toggle:active {
    /*Without this, clicking will make it sticky*/
    pointer-events: none;
}

.carousel-item img {
    height: 480px;
    object-fit: cover;
}

.carousel-indicators {
    top: 480px;
}

.carousel-control-prev, .carousel-control-next {
    width: 5% !important;
    height: 90%;
}

.gallery-img {
    width: 22%;
    margin: 10px 1%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    max-width: 100%;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.2s;
}

.changes-gallery-img {
    width: 17.5%;
}

.gallery-img:hover {
    transform: scale(1.02);
}

.gallery-img-single {
    aspect-ratio: 16 / 9;
    object-fit: contain;
    max-width: 100%;
    border-radius: 0;
    cursor: pointer;
}

figcaption {
    margin: 2px 5px;
    font-size: 0.8em;
    font-weight: bold;
    color: #555;
}

.media-category-link {
    position: absolute; 
    top: 0; 
    left: 0;
    background-color: rgba(0, 0, 0, 0.3);
}

.media-category-link p {
    font-size: 2.1em;
}

.media-category-link img {
    width: 100%; 
    aspect-ratio: 4/3;
}

#mobile-menu {
    overflow-y: scroll;
}

/* Styl dla trybu wysokiego kontrastu */
.high-contrast, .high-contrast .text-white, .high-contrast .bg-dark, .high-contrast .bg-primary, .high-contrast .accordion-item {
    background-color: #000 !important;
    color: #FFD700 !important;
    background-image: none !important;
}

.high-contrast .display-4, .high-contrast .h5, .high-contrast .text-dark, .high-contrast footer .text-primary {
    color: #FFD700 !important;
}

.high-contrast .accordion .h5 {
    color: #000 !important;
}

.high-contrast a:hover, .high-contrast a.text-white:hover {
    color: #FFA500 !important;
    background-color: #000 !important;
}

.high-contrast button, .high-contrast .btn {
    background-color: #FFD700 !important;
    color: #000 !important;
    border-color: #FFD700 !important;
}

.high-contrast a, .high-contrast nav .btn, .high-contrast .toggle, .high-contrast a.text-white {
    color: #00FFFF !important;
    background-color: #000 !important;
}

.high-contrast .bg-body, .high-contrast nav, .high-contrast .navbar, .high-contrast .dropdown-menu, .high-contrast .bg-white, .high-contrast .bg-lighter {
    background-color: #000 !important;
    background-image: none !important;
}

.high-contrast .bg-lighter div {
    background-image: none !important;
}

.high-contrast img {
    filter: grayscale(100%) contrast(150%);
}

.high-contrast .logo-img, .high-contrast nav img {
    filter: grayscale(100%) brightness(600%);
}

.high-contrast .border-bottom, .high-contrast .border-top, .high-contrast .border-start, .high-contrast .border-end, .high-contrast .border {
    border-color: #FFFFFF !important;
}