/* HLAVNE */
:root { --bs-main-rgb: 0, 101, 159; --bs-scnd-rgb: 26, 39, 69; }
html { scroll-behavior: smooth; scroll-padding-top: 0px; }

/* COOKIES */
#cookieBanner { z-index: 1100 !important; }

/* FARBY POZADIA, BTN A TEXTOV */
.bg-main, th.bg-main { background-color: rgba(var(--bs-main-rgb), var(--bs-bg-opacity)); color: white; }
.bg-scnd, th.bg-scnd { background-color: rgba(var(--bs-scnd-rgb), var(--bs-bg-opacity)); color: white; }
.border-main { border-color: rgba(var(--bs-main-rgb), var(--bs-border-opacity)) !important; }
.border-scnd { border-color: rgba(var(--bs-scnd-rgb), var(--bs-border-opacity)) !important; }
.btn-main, .btn-outline-main:focus, .btn-outline-main:hover { background-color: rgb(var(--bs-main-rgb)); border-color: rgb(var(--bs-main-rgb)) !important; color: white; }
.btn-main.active, .btn-main:focus, .btn-main:hover { background-color: rgba(var(--bs-main-rgb), 0.9) !important; color: white; }
.btn-outline-main { border-color: rgb(var(--bs-main-rgb)); color: rgb(var(--bs-main-rgb)); }
.btn-outline-scnd { border-color: rgb(var(--bs-scnd-rgb)); color: rgb(var(--bs-scnd-rgb)); }
.btn-scnd, .btn-outline-scnd:focus, .btn-outline-scnd:hover { background-color: rgb(var(--bs-scnd-rgb)); border-color: rgb(var(--bs-scnd-rgb)) !important; color: white; }
.btn-scnd.active, .btn-scnd:focus, .btn-scnd:hover { background-color: rgba(var(--bs-scnd-rgb), 0.9) !important; color: white; }
.link-main, .text-main { color: rgba(var(--bs-main-rgb), var(--bs-text-opacity)); }
.link-scnd, .text-scnd { color: rgba(var(--bs-scnd-rgb), var(--bs-text-opacity)); }

/* FONTY */
.dm-sans { font-family: "DM Sans", sans-serif; font-optical-sizing: auto; font-style: normal;}
.font-main { font-family: "Oswald", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
.font-scnd { font-family: "Dynalight", cursive; font-weight: 400; font-style: normal; }
.montserrat { font-family: "Montserrat", sans-serif; font-optical-sizing: auto; font-style: normal; }
.roboto { font-family: "Roboto", sans-serif; font-optical-sizing: auto; font-style: normal; font-variation-settings: "wdth" 100; }

/* HERO CAROUSEL */
#heroCarousel { overflow: visible; }
#heroCarousel, #heroCarousel .carousel-inner, #heroCarousel .carousel-item { height: 100vh; max-height: 100vh; }
#heroCarousel .carousel-control-next, #heroCarousel .carousel-control-prev { align-items: center; bottom: 0; filter: none !important; justify-content: center; opacity: 1; padding: 0; top: 0; width: 4.75rem; z-index: 6; }
#heroCarousel .carousel-control-prev { justify-content: flex-start; left: calc((100vw - 100%) / -2); }
#heroCarousel .carousel-control-next { justify-content: flex-end; right: calc((100vw - 100%) / -2); }
#heroCarousel .carousel-control-next-icon, #heroCarousel .carousel-control-prev-icon { background-color: rgba(0, 0, 0, 0.78); background-image: none !important; border-radius: 0; box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.25); filter: none !important; height: clamp(3rem, 4vw, 3.6rem); margin: 0; opacity: 0; pointer-events: none; position: relative; transform: scale(0.96); transition: opacity 160ms ease, transform 160ms ease; width: clamp(3rem, 4vw, 3.6rem); }
#heroCarousel .carousel-control-next-icon::before, #heroCarousel .carousel-control-prev-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 5l7 7-7 7' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5'/%3E%3C/svg%3E"); background-position: center; background-repeat: no-repeat; background-size: contain; content: ''; filter: none !important; height: clamp(1.9rem, 2.6vw, 2.25rem); left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); width: clamp(1.9rem, 2.6vw, 2.25rem); }
#heroCarousel .carousel-control-prev-icon::before { transform: translate(-50%, -50%) rotate(180deg); }
#heroCarousel:hover .carousel-control-next-icon, #heroCarousel:hover .carousel-control-prev-icon { opacity: 1; transform: scale(1); }
#heroCarousel:focus-within .carousel-control-next-icon, #heroCarousel:focus-within .carousel-control-prev-icon { opacity: 1; transform: scale(1); }
@media (hover: none) { #heroCarousel .carousel-control-next-icon, #heroCarousel .carousel-control-prev-icon { opacity: 1; transform: scale(1); } }
@media (max-width: 575.98px) { #heroCarousel .carousel-control-next, #heroCarousel .carousel-control-prev { width: 4.25rem; } }
@media (orientation: landscape) and (max-width: 991.98px) { #heroCarousel .carousel-caption { top: 24px !important; } }

/* IKONY */
.icon-white { filter: brightness(0) invert(1); }

/* MENU - ROZŠÍRENIE */
#mainNav .active { color: rgb(var(--bs-main-rgb)); font-weight: 700; }
.dropdown-item { color: #212529; font-weight: 500; padding: 0.75rem 1.5rem; transition: all 150ms ease-in-out; }
.dropdown-item.active, .dropdown-item:active { background-color: rgb(var(--bs-main-rgb)) !important; color: #fff !important; }
.dropdown-item:hover { background-color: rgba(var(--bs-main-rgb), 0.1); color: rgb(var(--bs-main-rgb)); }
.dropdown-menu { backdrop-filter: blur(12px); background-color: rgba(255, 255, 255, 0.95); border: 0; border-radius: 0; box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175); margin-top: 0; padding: 0; }
.dropdown-toggle::after { vertical-align: 0.15em; }
@media (max-width: 991.98px) { .dropdown-menu { backdrop-filter: none; background-color: transparent; box-shadow: none; padding-left: 1rem; } }

/* KARTY */
.card:hover { background-color: rgba(var(--bs-main-rgb), 0.75) !important; }

/* NADPISY */
.hb { display: inline-block; padding-bottom: 0.6rem; position: relative; text-align: center; }
.hb::after { background-color: rgb(var(--bs-main-rgb)); bottom: 0; content: ""; height: 2px; left: 50%; position: absolute; transform: translateX(-50%); width: 100%; }
.hbw::after { background-color: white; }

/* OBRAZKOVE POZADIA */
.bg-img { background: url("/content/background.jpg") right top /cover no-repeat;}
.bg-img-pattern { background: url("/content/background-pattern.jpg") right top /cover no-repeat; }

/* OSTATNE */
.blur { backdrop-filter: blur(6px); }
.cursor-pointer { cursor: pointer; }
.text-shadow { text-shadow: 0 2px 8px rgba(0,0,0,.6); }

/* RECAPTCHA */
.grecaptcha-badge { visibility: hidden; }

/* ZOZNAMY */
ul.custom-list { list-style: none; margin: 0; padding-left: 0; }
ul.custom-list li { padding-left: 1.75rem; position: relative; }
ul.custom-list li::before { background-color: rgb(var(--bs-main-rgb)); content: ''; height: .5rem; left: 0.15em; position: absolute; top: 0.85em; width: .5rem; }
ul.custom-list.is-scnd li::before { background-color: rgb(var(--bs-scnd-rgb)); }