/*************************************************************************************************
 * BS CUSTOM EDITS
 *************************************************************************************************/
.modal-dialog.custom-expand {
  max-width: 750px;
  margin: 1.75rem auto;
}

/*
 * FONTS
 */

/* E-SHOP */
.s300 {
  font-family: 'Signika', sans-serif;
  font-weight: 300;
  font-style: normal;
}
.s400 {
  font-family: 'Signika', sans-serif;
  font-weight: 400;
  font-style: normal;
}
.s500 {
  font-family: 'Signika', sans-serif;
  font-weight: 500;
  font-style: normal;
}
.s600 {
  font-family: 'Signika', sans-serif;
  font-weight: 600;
  font-style: normal;
}
.s700 {
  font-family: 'Signika', sans-serif;
  font-weight: 700;
  font-style: normal;
}
.l400 {
  font-family: 'Lobster', sans-serif;
  font-weight: 400;
  font-style: normal;
}

.s16 {
  font-size: 16px;
}
.s18 {
  font-size: 18px;
}
.s20 {
  font-size: 20px;
}
.s22 {
  font-size: 22px;
}
.s24 {
  font-size: 24px;
}
.s26 {
  font-size: 26px;
}
.s28 {
  font-size: 28px;
}
.s32 {
  font-size: 32px;
}
.s36 {
  font-size: 36px;
}
@media (max-width: 575.98px) {
  .s22 {
    font-size: 20px;
  }
  .s28 {
    font-size: 24px;
  }
  .s32 {
    font-size: 28px;
  }
  .s36 {
    font-size: 30px;
  }
}

/* KATYD */
.ar600 {
  font-family: 'Arimo', sans-serif;
  font-weight: 600;
  font-style: normal;
}
.ar700 {
  font-family: 'Arimo', sans-serif;
  font-weight: 700;
  font-style: normal;
}
.fa400 {
  font-family: 'Faustina', sans-serif;
  font-weight: 400;
  font-style: normal;
}
.fa400-italic {
  font-family: 'Faustina', sans-serif;
  font-weight: 400;
  font-style: italic;
}
.fa500 {
  font-family: 'Faustina', sans-serif;
  font-weight: 500;
  font-style: normal;
}
.fa600 {
  font-family: 'Faustina', sans-serif;
  font-weight: 600;
  font-style: normal;
}
.fa700 {
  font-family: 'Faustina', sans-serif;
  font-weight: 700;
  font-style: normal;
}

.text-decoration-underline {
  text-decoration: underline;
}
.text-decoration-underline:hover {
  text-decoration: underline !important;
}

/*************************************************************************************************
 * COLORS
 *************************************************************************************************/
.portal-red {
  color: #d32727;
}
.portal-red:hover {
  color: #d32727;
}
a.portal-red {
  color: #d32727 !important;
}
a.portal-red:hover {
  color: #d32727 !important;
}

.eshop-red {
  color: #de3831;
}
.eshop-red:hover {
  color: #de3831;
}
a.eshop-red {
  color: #de3831 !important;
}
a.eshop-red:hover {
  color: #de3831 !important;
}

.katyd-red {
  color: #c4124c;
}
.katyd-red:hover {
  color: #c4124c;
}
a.katyd-red {
  color: #c4124c !important;
}
a.katyd-red:hover {
  color: #c4124c !important;
}

.portal-white {
  color: #fff;
}
.portal-white:hover {
  color: #fff;
}

/*************************************************************************************************
 * RESPONSIVE NAVBAR
 *************************************************************************************************/

.nav-opener {
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.nav-opener:hover {
  opacity: 1;
}
.nav-opener.is-active:hover {
  opacity: 1;
}
.nav-opener.is-active .nav-opener-inner,
.nav-opener.is-active .nav-opener-inner::after,
.nav-opener.is-active .nav-opener-inner::before {
  background-color: #fff;
}
.nav-opener-box {
  width: 36px;
  height: 28px;
  display: inline-block;
  position: relative;
}
.nav-opener-inner {
  display: block;
  top: 50%;
}
.nav-opener-inner,
.nav-opener-inner::after,
.nav-opener-inner::before {
  width: 36px;
  height: 0.28rem;
  background-color: #fff;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.nav-opener-inner::after,
.nav-opener-inner::before {
  content: '';
  display: block;
}
.nav-opener-inner::before {
  top: -10px;
}
.nav-opener-inner::after {
  bottom: -10px;
}
.nav-opener--spring .nav-opener-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear;
}
.nav-opener--spring .nav-opener-inner::before {
  top: 12px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.nav-opener--spring .nav-opener-inner::after {
  top: 24px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.nav-opener--spring.is-active .nav-opener-inner {
  transition-delay: 0.22s;
  background-color: transparent !important;
}
.nav-opener--spring.is-active .nav-opener-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.nav-opener--spring.is-active .nav-opener-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

.responsive-nav {
  width: 100%;
  height: 60px;
  /* display: none; */
  display: flex;
  justify-content: space-between;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 1030;
}
.responsive-nav.expand {
  display: flex !important;
}
#responsiveSidebarOpener {
  padding: 0px 13px;
  cursor: pointer;
}
#responsiveSidebar {
  position: absolute;
  top: 60px;
  width: 100%;
  height: calc(100vh - 60px);
  background-color: transparent;
  transition: margin-left 0.5s;
  margin-left: -100%;
}
#responsiveSidebar.opened {
  margin-left: 0%;
}
#responsiveSidebarTopClose {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 60px;
  background-color: transparent;
}
#responsiveSidebarRightClose {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 15%;
  height: calc(100vh - 60px);
  background-color: transparent;
}
#responsiveSidebarContent {
  position: absolute;
  top: 0px;
  overflow-y: scroll;
  width: 85%;
  height: calc(100vh - 60px);
  background-color: #e7e7e7;
  box-shadow: 5px 0 5px -5px #333;
}
.sidebar_cards-heading {
  padding: 14px 7px 0px;
  border-bottom: 1px solid #a9a9a9;
}
.sidebar_card-heading {
  height: 75px;
  width: 33%;
  cursor: pointer;
  background-color: #fff;
  font-size: 20px;
  border-top: 1px solid #a9a9a9;
  text-transform: uppercase;
}
.sidebar_card-heading.active {
  height: 81px;
  margin-bottom: -1px;
  border-left: 1px solid #a9a9a9;
  border-right: 1px solid #a9a9a9;
}
.sidebar_card-heading.active:nth-of-type(1) + .sidebar_card-heading:nth-of-type(2),
.sidebar_card-heading.active:nth-of-type(1) ~ .sidebar_card-heading:nth-of-type(3) {
  border-right: 1px solid #a9a9a9;
}
.sidebar_cards-content {
  background-color: #fff;
}
.sidebar_card-content {
  display: none;
  padding: 10px 0px 10px 25px;
  overflow-y: scroll;
}
.sidebar_card-content.active {
  display: flex;
}
.sidebar_utils {
  padding: 10px 0px 10px 25px;
}
.collapse-margin {
  margin: 0px 10px;
}
.collapse-category {
  display: flex;
}
.portal-nav-figure {
  height: 35px;
  width: auto;
}
.portal-nav-figure.katyd {
  height: 25px;
  width: auto;
}
.responsive-nav-search-wrapper {
  position: absolute;
  top: 5px;
  left: 62px;
  z-index: 1040;
  height: 60px;
  width: calc(100vw - 140px);
  display: none;
}
@media (max-width: 505.98px) {
  .responsive-nav-search-wrapper {
    width: calc(100vw - 120px);
  }
}
#responsiveNavbarSearch {
  height: 50px;
  width: calc(100vw - 140px);
  background-color: #fff;
  font-size: 18px;
  line-height: 22px;
  transition: opacity 0.5s;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  opacity: 0;
  padding: 0px 12px;
}
@media (max-width: 505.98px) {
  #responsiveNavbarSearch {
    width: calc(100vw - 120px);
  }
}
#responsiveNavbarSearch:focus {
  outline: none;
  box-shadow: none;
}
#responsiveNavbarSearch.active {
  opacity: 1;
}
#responsiveNavbarSearch.results {
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}
.ui-input-text {
  margin: 0 !important;
  border-width: 0 !important;
  border-style: none !important;
}
#responsiveNavbarSearchResults {
  background-color: #fff;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
  border-left: 1px solid #003673;
  border-right: 1px solid #003673;
  border-bottom: 1px solid #003673;
  margin: 0px -1px;
  z-index: 3;
}

/*
 * BRAND LOGO
 */

/* E-SHOP */
.brand-logo_eshop {
  width: 160px;
  height: auto;
}
@media (max-width: 575.98px) {
  .brand-logo_eshop {
    width: 140px;
    height: auto;
  }
}
.brand-logo_eshop-xs {
  display: none;
}

/* KATYD */
.brand-logo_katyd {
  height: 36px;
  width: auto;
  margin-top: 2px;
}

/*
 * SERVER SITE
 */

/* E-SHOP */

/* KATYD */
.katyd-responsive_issue_number {
  color: #fff;
  font-size: 35px;
  line-height: 35px;
  margin: -8px 8px 0px;
}
@media (max-width: 439.98px) {
  .brand-logo_katyd {
    /* margin-bottom: -10px; */
    width: auto;
    height: 30px;
  }
  .katyd-responsive_issue_number {
    /* margin-bottom: -10px; */
    font-size: 32px;
    font-weight: 500 !important;
  }
  #responsiveNavbarKatydSearch img {
    height: 29px !important;
    width: auto;
  }
}
@media (max-width: 379.98px) {
  .brand-logo_katyd {
    width: auto;
    height: 26px;
  }
  .katyd-responsive_issue_number {
    font-size: 30px;
  }
}

#responsiveNavbarKatydIssues {
  cursor: pointer;
}
#responsiveNavbarKatydIssues img {
  height: 25px;
  width: auto;
  margin: -8px 0px 0px;
}
@media (max-width: 479.98px) {
  #responsiveNavbarKatydIssues img {
    display: none;
  }
}
#responsiveNavbarKatydSearch {
  cursor: pointer;
  margin: 0px 13px 0px 0px;
}
#responsiveNavbarKatydSearch img {
  height: 35px;
}

#responsiveNavbarPortalSearch {
  cursor: pointer;
  margin: 0px 13px 0px 0px;
}
#responsiveNavbarPortalSearch img {
  height: 35px;
}

/*
|--------------------------------------------------------------------------
| SIDEBAR
|--------------------------------------------------------------------------
*/

/* CP */
.sidebar_card-heading--cp.active {
  background-color: #d32727;
  color: #fff;
}
.responsive-categories--cp li a {
  font-family: 'Roboto Slab';
  font-size: 20px;
  line-height: 36px;
  font-weight: 600;
  color: #000;
}
.responsive-categories--cp li a img {
  height: 8px;
  width: auto;
}
.responsive-categories--cp li a:hover {
  color: #d32727;
  text-decoration: none;
}
.collapse-category--cp {
  font-size: 18px !important;
  line-height: 34px !important;
}

/* KATYD */
.sidebar_card-heading.katyd.active {
  background-color: #003673;
  color: #fff;
}
.responsive-categories.katyd li a {
  color: #c4124c;
  font-size: 20px;
  line-height: 36px;
}
.responsive-categories.katyd li a img {
  height: 8px;
  width: auto;
}
.responsive-categories.katyd li a:hover {
  color: #c4124c;
  text-decoration: none;
}
.collapse-category.katyd {
  font-size: 18px !important;
  line-height: 34px !important;
}
#responsiveNavbarFulltextSearch {
  font-size: 18px;
  line-height: 22px;
  background-color: #003673;
  color: #fff;
  width: 100%;
  text-transform: uppercase;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}

/*************************************************************************************************
 * MODAL SETUP
 *************************************************************************************************/
.modal-open {
  padding-right: 0px !important;
}
.modal-content {
  border-radius: 5px;
  padding: 30px;
  min-height: 200px;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
}
.modal-content.eshop {
  border: 1px solid #de3831;
}
.modal-content.katyd {
  border: 1px solid #003673;
}
.close-remote-modal {
  padding: 5px;
  cursor: pointer;
  position: absolute;
  top: -30px;
  right: -25px;
}
.close-remote-modal img {
  height: 15px;
  width: auto;
}
.remote-modal-header {
  border-bottom: 1px solid #a9a9a9;
  padding-bottom: 15px;
  margin: 20px 0px 30px;
}
.remote-modal-header img.eshop {
  height: 55px;
  width: auto;
}
.remote-modal-header img.katyd {
  height: 35px;
  width: auto;
  margin-bottom: -8px;
}
.remote-modal-header div {
  margin-bottom: -12px;
}
.remote-modal-show-password {
  height: 15px;
  width: auto;
  right: 8px;
  top: 18px;
  position: absolute;
  cursor: pointer;
}
.switch-form:hover {
  text-decoration: underline;
}
/*************************************************************************************************
 * LOGIN MODAL
 *************************************************************************************************/
.login-inputs {
  border-bottom: 1px solid #a9a9a9;
  padding-bottom: 15px;
  margin: 0px 0px 15px;
}
.login-inputs .floating-label-input {
  margin-bottom: 8px;
}
.login-register_tip-header {
  color: #686c6f;
  margin: 0px 0px -6px;
}
@media (max-width: 575.98px) {
  .login-register_tip_header {
    font-size: 20px;
  }
}
@media (max-width: 575.98px) {
  .login-register_tip {
    font-size: 16px;
  }
}
.login-register_tip img {
  height: 15px;
  width: auto;
  margin-right: 10px;
}
@media (max-width: 575.98px) {
  .login-register_tip img {
    height: 10px;
  }
}

.register-register_tip-site {
  margin-bottom: 15px;
}

.register-register_tip-site.katyd {
  height: 35px;
  width: auto;
}
.register-register_tip-site.eshop {
  height: 45px;
  width: auto;
}

.register-register_tip-badge_katyd {
  text-transform: uppercase;
  padding: 0px 12px;
  background-color: #c4124c;
  color: #fff;
  border-radius: 5px;
  margin-bottom: 15px;
  font-size: 12px;
  margin-left: 8px;
}
.register-register_tip-badge_action {
  padding: 0px 16px;
  border-radius: 25%;
  background-color: #ffc43a;
  color: #000;
  display: inline-block;
  border-radius: 50px;
  margin-bottom: 15px;
}

.register-register_tip {
  border-bottom: 1px solid #a9a9a9;
  padding: 15px 0px;
}

.register-register_tip-content {
  margin-right: 8px;
}

.remote-modal-submit {
  color: #fff;
  padding: 11px 30px;
  border-radius: 5px;
  outline: none;
  border: none;
  transition: all 0.1s ease;
}

.remote-modal-submit.eshop {
  background-color: #de3831;
}
.remote-modal-submit.katyd {
  background-color: #c4124c;
}

.remote-modal-submit.eshop:hover {
  background-color: #c72620;
  color: #fff;
}
.remote-modal-submit.katyd:hover {
  background-color: #aa083e;
  color: #fff;
}

.remote-modal-submit:focus {
  outline: none;
  border: none;
}

.remote-modal-switch-form {
  border: 1px solid black;
  border-radius: 5px;
  background-color: #fff;
  padding: 11px 30px;
  display: inline-block;
  transition: all 0.1s ease;
  outline: 0;
}
.remote-modal-switch-form:focus {
  box-shadow: none;
  outline: 0;
}
.remote-modal-switch-form:hover {
  text-decoration: underline;
}

/* .login_modal_close_wrapper {
    margin: -20px -20px 20px 0px;
    display: flex;
    justify-content: flex-end;
}

.login_modal_header {
    border-bottom: 1px solid #a9a9a9;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 15px;
}

.login_modal_header img {
    height: 55px;
    width: auto;
}

.login_modal_header div {
    margin: 0px 0px -10px 0px;
    text-transform: uppercase;
}

@media (max-width: 575.98px) {
    .login_modal_header img {
        height: 35px;
    }
    #resetPasswordModalContent .login_modal_header img {
        display: none;
    }
}

.login_username {
    margin-top: 30px;
}

.login_password {
    margin-top: 15px;
}

.modal_submit_button_wrapper {
    margin: 0px -15px 0px 0px;
}

.modal_submit_button {
    background-color: #de3831;
    color: #fff;
    padding: 11px 30px;
    border-radius: 5px;
    outline: none;
    border: none;
    transition: all 0.1s ease;
}

.modal_submit_button:hover {
    background-color: #C72620;
}

.modal_submit_button:focus {
    outline: none;
    border: none;
}

@media (max-width: 575.98px) {
    .modal_submit_button_wrapper {
        margin: 0px -15px 25px -15px;
    }
    .modal_submit_button,
    .back2StoreTable {
        width: 100%;
    }
}



.login_modal_register_now {
    border-top: 1px solid #a9a9a9;
    margin: 20px 0px 0px;
    padding-top: 20px;
}

.modal_login_register_button {
    border: 1px solid #000;
    padding: 11px 30px;
    border-radius: 5px;
    font-weight: 500;
}

.modal_login_register_button:hover {
    text-decoration: underline;
}

@media (max-width: 575.98px) {
    .modal_login_register_button {
        width: 100%;
        display: block;
        text-align: center;
    }
}

.floating-label-input {
    width: 100%;
    position: relative;
    margin-top: 5px;
}

.floating-input {
    font-weight: 300;
    border: 1px solid #686c6f;
    padding: 8px 20px;
    border-radius: 5px;
    font-size: 22px;
    width: 100%;
}

@media (max-width: 575.98px) {
    .floating-input {
        font-size: 18px;
        padding: 5px 16px
    }
}

.floating-input:focus {
    font-weight: 500;
    outline: 0;
    border-color: #de3831;
}

.floating-input.cart:focus {
    border-color: #018f34;
}

.floating-label {
    font-weight: 300;
    font-size: 22px;
    position: absolute;
    left: 30px;
    top: 8px;
    background-color: #fff;
    color: #686c6f;
    padding: 0px 6px;
    border-radius: 5px;
}

.floating-label.cartarea {
    left: 26px
}

@media (max-width: 575.98px) {
    .floating-label {
        font-size: 18px;
        top: 5px;
        left: 30px;
    }
    .floating-label.cartarea {
        left: 26px
    }
}

.floating-input:-webkit-autofill,
.floating-input:-webkit-autofill:hover,
.floating-input:-webkit-autofill:focus,
.floating-input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

.floating-input:disabled {
    background-color: rgba(0, 0, 0, 0.1);
}

.floating-label-select {
    position: relative;
}

.floating-label-select label {
    position: absolute;
    top: -13px;
    color: #686c6f;
    font-size: 16px;
    left: 22px;
    font-weight: 300;
    z-index: 1;
    background-color: #fff;
    padding: 0px 6px;
}

.category__all_books {
    border: 1px solid #686c6f;
    padding: 8px 32px;
    color: #686c6f;
    border-radius: 5px;
}

.category__all_books:hover {
    text-decoration: underline;
    color: #686c6f;
}

#registerModalContent,
#resetPasswordModalContent {
    display: none;
}

.modal-spinner,
.remote-modal-spinner {
    background: rgba(0, 0, 0, 0.3);
    left: 0;
    top: 0;
    z-index: 1060;
    display: none;
}

.modal-xl {
    max-width: 1200px;
}

.mandatory_value {
    color: #de3831;
}

.empty-text-muted {
    color: #de3831 !important;
    opacity: 0;
} 
*/

/*************************************************************************************************
 * PORTAL NAVIGATION
 *************************************************************************************************/

.portal_nav {
  display: flex;
  height: 65px;
  border-bottom: 1px solid #de3831;
}

.portal_nav .container {
  display: flex;
}

.portal_nav__server {
  width: auto;
  height: 35px;
}
@media (max-width: 1199px) {
  .portal_nav__server {
    height: 30px;
  }
}
.portal_nav__server__cp {
  width: auto;
  height: 38px;
}
@media (max-width: 1199px) {
  .portal_nav__server__cp {
    height: 33px;
  }
}
.portal_nav__server__kt {
  width: auto;
  height: 25px;
}
@media (max-width: 1199px) {
  .portal_nav__server__kt {
    height: 20px;
  }
}

.portal_nav ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.portal_nav ul li {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: calc(100% / 6);
}

.portal_nav ul li a {
  color: black;
  font-weight: 600;
}

.portal_nav ul li a:hover {
  text-decoration: none;
}

.portal_nav ul li.active {
  background-color: #f3f3f3;
  border-left: 1px solid #de3831;
  border-right: 1px solid #de3831;
  padding-bottom: 1px;
  margin-bottom: -1px;
}

.site_nav {
  background-color: #f3f3f3;
  box-shadow: 0 5px 5px -5px #333;
}

.site_nav__img {
  margin-right: 12px;
  height: 25px;
}

.site_nav__img.knihy {
  width: 24px;
}

.site_nav__img.liturgicke-predmety {
  width: 17px;
}

.site_nav__img.klasterni-produkty {
  width: 25px;
}

.site_nav__img.devocionalie {
  width: 19px;
}

.site_nav__img.mesni-vina {
  width: 14px;
}

.site_nav__img.predplatne {
  width: 18px;
}

@media (max-width: 1125px) {
  .site_nav__img {
    height: 23px;
    margin-right: 6px;
  }
  .site_nav__img.knihy {
    width: 22px;
  }
  .site_nav__img.liturgicke-predmety {
    width: 16px;
  }
  .site_nav__img.klasterni-produkty {
    width: 23px;
  }
  .site_nav__img.devocionalie {
    width: 17px;
  }
  .site_nav__img.mesni-vina {
    width: 13px;
  }
  .site_nav__img.predplatne {
    width: 17px;
  }
}

.site_nav__container {
  display: flex;
  justify-content: space-between;
}

.site_nav__container__categories {
  display: flex;
  height: 45px;
  font-size: 18px;
}

@media (max-width: 1125px) {
  .site_nav__container__categories {
    font-size: 16px;
  }
}

.categories_separator {
  width: 1px;
  background-color: #a9a9a9;
  height: 30px;
  margin: 0px 15px;
}

@media (max-width: 1125px) {
  .categories_separator {
    margin: 0px 10px;
  }
}

.site_nav__container__categories ul {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.site_nav__container__categories ul li {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: 0.4s;
}

.site_nav__container__categories ul li::after {
  position: absolute;
  content: '';
  height: 4px;
  bottom: -14px;
  /* margin: 0 auto; */
  left: 0;
  right: 0;
  width: 0%;
  background: #de3831;
  transition: 0.4s;
  z-index: 10;
}

@media (max-width: 1125px) {
  .site_nav__container__categories ul li::after {
    bottom: -16px;
  }
}

.site_nav__container__categories ul li.categories_separator::after {
  content: '';
  height: 0px;
  background: transparent;
}

.site_nav__container__categories ul li:hover::after {
  width: 100%;
}

.site_nav__container__categories ul li.categories_separator:hover::after {
  width: 0%;
  content: '';
  height: 0px;
  background: transparent;
}

.site_nav__container__categories ul li.active::after {
  position: absolute;
  content: '';
  height: 4px;
  bottom: -14px;
  /* margin: 0 auto; */
  left: 0;
  right: 0;
  width: 100%;
  background: #de3831;
  z-index: 10;
}

@media (max-width: 1125px) {
  .site_nav__container__categories ul li.active::after {
    bottom: -16px;
  }
}

.site_nav__container__categories ul li a {
  color: black;
  display: flex;
  align-items: center;
}

.site_nav__container__categories ul li a:hover {
  text-decoration: none;
}

.site_nav__container__categories ul li a div {
  line-height: 18px;
}

.site_nav__container__login {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
}

@media (max-width: 1125px) {
  .site_nav__container__login {
    font-size: 16px;
  }
}

.site_nav__container__login a {
  position: relative;
}

.site_nav__container__login a:hover {
  text-decoration: none;
}

.site_nav__container__login a::after {
  position: absolute;
  content: '';
  height: 4px;
  bottom: -14px;
  /* margin: 0 auto; */
  left: 0;
  right: 0;
  width: 0%;
  background: #de3831;
  transition: 0.4s;
  z-index: 10;
}

.site_nav__container__login a:hover::after {
  width: 100%;
}

/*************************************************************************************************
 * CUSTOM CHECKBOX
 *************************************************************************************************/
.business_check {
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow: hidden;
}

.business_check__text {
  font-size: 16px;
  color: #686c6f;
  position: relative;
}

.business_check__text::after {
  position: absolute;
  content: '';
  border-top: 1px solid #686c6f;
  left: calc(100% + 8px);
  top: 50%;
  width: 750px;
}

.yes_no_checkbox_wrapper {
  border: 1px solid #686c6f;
  border-radius: 5px;
  width: 88px;
  padding: 3px;
  background-color: #fff;
  z-index: 1;
}

.yes_no_checkbox {
  zoom: 1;
  position: relative;
  cursor: pointer;
  width: 80px;
  height: 43px;
  line-height: 40px;
  font-size: 16px;
}

.yes_no_checkbox label {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background-color: #c2c2c2;
  border-radius: 5px;
  font-weight: bold;
  color: #fff;
  transition: background 0.3s, text-indent 0.3s, left 0.3s;
  text-indent: 27px;
}
.yes_no_checkbox label:after {
  content: 'Ne';
  display: block;
  position: absolute;
  top: 1px;
  left: -12px;
  width: 100%;
  font-size: 16px;
  color: #000;
  z-index: 5;
}
.yes_no_checkbox label:before {
  content: '';
  width: 50px;
  height: 43px;
  border-radius: 5px;
  background-color: #fff;
  position: absolute;
  z-index: 2;
  top: 0px;
  left: 0px;
  display: block;
  transition: left 0.3s;
  border: 1px solid #000;
}
.yes_no_checkbox input:checked + label {
  background-color: #de3831;
  text-indent: 8px;
}

.yes_no_checkbox.cart input:checked + label {
  background-color: #018f34;
  text-indent: 8px;
}

.yes_no_checkbox input + label:after {
  left: -12px;
  transition: left 0.3s;
}
.yes_no_checkbox input:checked + label:after {
  content: 'Ano';
  color: #000;
  left: 35px;
}
.yes_no_checkbox input:checked + label:before {
  left: 30px;
}

/* footer */
.footer_container {
  background-color: #686c6f;
  font-size: 18px;
}

.footer_container a:hover {
  text-decoration: underline;
}

.footer_vertical {
  display: flex;
  align-items: flex-end;
}
@media (max-width: 767.98px) {
  .footer_vertical.katyd {
    display: none;
  }
}
@media (max-width: 575.98px) {
  .footer_vertical {
    display: none;
  }
}
.footer_vertical-xs {
  display: none;
}
@media (max-width: 767.98px) {
  .footer_vertical-xs.katyd {
    display: block;
  }
}
@media (max-width: 575.98px) {
  .footer_vertical-xs {
    display: block;
  }
}

.footer_vertical a:nth-child(2) {
  margin: 0px 8px;
}

.footer_header {
  color: #fff;
  display: flex;
  margin: 0px 0px 4px 0px;
  height: 30px;
}

.footer_link {
  display: block;
  color: #fff !important;
  padding: 2px 0px;
}

.footer_link:hover {
  color: #fff !important;
}

.footer_logo {
  margin: 15px 0px 10px;
  height: 60px;
}
@media (max-width: 575.98px) {
  .footer_logo {
    margin: 15px 0px 10px;
    height: 40px;
  }
}

.footer_social_logo {
  height: 36px;
}

/*
|--------------------------------------------------------------------------
| SEARCH
|--------------------------------------------------------------------------
*/
#portalDesktopSearch:-webkit-autofill,
#portalDesktopSearch:-webkit-autofill:hover,
#portalDesktopSearch:-webkit-autofill:focus,
#portalDesktopSearch:-webkit-autofill:active {
  -webkit-transition: background-color 5000s;
  transition: background-color 5000s;
  -webkit-text-fill-color: #fff !important;
}
#portalDesktopSearch {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
  z-index: 1080;
  background-color: rgba(104, 108, 111, 0.95);
  color: #fff;
}
#portalDesktopSearchClose {
  width: 24px;
  height: 24px;
}
#portalDesktopSearchResults {
  margin-top: 50px;
}
.portal-d-search-d-box-wrapper {
  display: flex;
  justify-content: center;
  height: 100%;
  z-index: 1090;
}
.portal-d-search-box-wrapper__search-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 960px;
  margin-top: 20vh;
}
@media (max-width: 990px) {
  .portal-d-search-box-wrapper__search-box {
    width: 100%;
    padding: 0px 15px;
  }
}
@media (max-width: 991px) {
  .portal-d-search-box-wrapper__search-box {
    display: none;
  }
}
.portal-d-search-box-wrapper__search-box__search-header span {
  font-size: 24px;
}
.portal-d-search-box-wrapper__search-box__search-header img {
  height: 24px;
  width: auto;
  cursor: pointer;
}
.portal-d-search-input-wrapper {
  position: relative;
}
#portalDesktopSearchInput {
  font-size: 96px;
  line-height: 102px;
  border-bottom: 4px solid #cccccc;
  border-top: none;
  border-left: none;
  border-right: none;
  outline: 0;
  box-shadow: none;
  background-color: transparent;
  color: #fff;
  padding: 0px 128px 0px 8px;
}
.btn--portal-d-search {
  width: 120px;
  height: 45px;
  position: absolute;
  right: 0px;
  top: 33px;
  border: 1px solid #fff;
  background-color: transparent;
  color: #fff;
  text-transform: uppercase;
  transition: none;
}
.btn--portal-d-search:focus {
  box-shadow: none;
}
.portal-d-serch-caption {
  margin-top: 10px;
  color: #cccccc;
  font-size: 24px;
}
.portal-d-serch-caption.active {
  color: #fff;
}

.cp-search-result a {
  color: #cccccc;
  font-weight: 400;
  font-size: 36px;
  line-height: 54px;
}
.cp-search-result:hover a {
  color: #fff;
  text-decoration: underline;
}
.cp-search-result__bullet {
  width: 12px;
  height: 12px;
  margin-right: 18px;
}
.cp-search-result__ellipsis {
  width: 720px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cp-search-result__additional-data {
  font-size: 24px;
  font-weight: 300;
}

.portal-fulltext-search-nav-bullet-wrapper {
  margin: 0px;
}
@media (max-width: 991px) {
  .portal-fulltext-search-nav-bullet-wrapper {
    margin: 25px 0px 0px 0px;
  }
}

/* FULLTEXT NAV - CP */
.portal-fulltext-search-nav-bullet--cp a {
  color: #d32727;
}
.portal-fulltext-search-nav-bullet--cp a:hover {
  color: #d32727;
}
.portal-fulltext-search-nav-bullet--cp {
  color: #d32727;
  font-size: 24px;
  position: relative;
  cursor: pointer;
  margin-right: 25px;
}
.portal-fulltext-search-nav-bullet--cp:hover::after {
  content: '';
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  background-color: #d32727;
}
.portal-fulltext-search-nav-bullet--cp.active::after {
  content: '';
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  background-color: #d32727;
}
/*  */
.portal-fulltext-search-nav-bullet--katyd a {
  color: #c4124c;
}
.portal-fulltext-search-nav-bullet--katyd a:hover {
  color: #c4124c;
}
.portal-fulltext-search-nav-bullet--katyd {
  color: #c4124c;
  font-size: 24px;
  position: relative;
  cursor: pointer;
  margin-right: 25px;
}
.portal-fulltext-search-nav-bullet--katyd:hover::after {
  content: '';
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  background-color: #c4124c;
}
.portal-fulltext-search-nav-bullet--katyd.active::after {
  content: '';
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  background-color: #c4124c;
}
/* ESHOP */
.portal-fulltext-search-nav-bullet--eshop a {
  color: #de3831;
}
.portal-fulltext-search-nav-bullet--eshop a:hover {
  color: #de3831;
}
.portal-fulltext-search-nav-bullet--eshop {
  color: #de3831;
  font-size: 24px;
  position: relative;
  cursor: pointer;
  margin-right: 25px;
}
.portal-fulltext-search-nav-bullet--eshop:hover::after {
  content: '';
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  background-color: #de3831;
}
.portal-fulltext-search-nav-bullet--eshop.active::after {
  content: '';
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: -4px;
  width: 100%;
  height: 4px;
  background-color: #de3831;
}
@media (max-width: 576px) {
  .portal-fulltext-search-nav-bullet {
    font-size: 18px;
    line-height: 22px;
    margin-right: 18px;
    text-align: center;
  }
}

.search-result-card {
  display: none;
}
.search-result-card.active {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.fulltext_search_results-logo--portal {
  height: 60px;
  width: auto;
  margin: 25px 0px;
}
.fulltext_search_results-logo--katyd {
  height: 50px;
  width: auto;
  margin: 25px 0px;
}
@media (max-width: 576px) {
  .fulltext_search_results-logo--katyd {
    height: 42px;
    width: auto;
  }
}
.fulltext_search_results-logo--eshop {
  height: 55px;
  width: auto;
  margin: 25px 0px;
}
@media (max-width: 339px) {
  .fulltext_search_results-logo--eshop {
    width: 100%;
    height: auto;
  }
}

/* GLOBAL SEARCH FOR KATYD ARTICLES */
.katyd-fulltext-result--responsive--portal {
  flex-direction: row;
  margin: 0px 0px 17px 0px;
}
@media (max-width: 448px) {
  .katyd-fulltext-result--responsive--portal {
    flex-direction: column;
  }
}
.katyd-fulltext-result--responsive--portal:hover .katyd_fulltext-search-heading--responsive--portal {
  text-decoration: underline;
}
.katyd-fulltext-result--responsive__thumbnail--portal {
  width: 175px;
  max-width: 175px;
  min-width: 175px;
  height: 98.44px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0px 17px 0px 0px;
  border-radius: 5px;
}
@media (max-width: 576px) {
  .katyd-fulltext-result--responsive__thumbnail--portal {
    width: 144px;
    max-width: 144px;
    min-width: 144px;
    height: 69.75px;
  }
}
@media (max-width: 448px) {
  .katyd-fulltext-result--responsive__thumbnail--portal {
    width: 160px;
    max-width: 160px;
    min-width: 160px;
    height: 90px;
  }
}
.katyd_fulltext-search-image--responsive--portal {
  width: auto;
  max-height: 98.44px;
}
@media (max-width: 448px) {
  .katyd_fulltext-search-image--responsive--portal {
    max-height: 90px;
  }
}

.katyd_fulltext-search-heading--responsive--portal {
  font-size: 20px;
  line-height: 26px;
  margin: 0px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 576px) {
  .katyd_fulltext-search-heading--responsive--portal {
    font-size: 18px;
    line-height: 22px;
    margin: 4px 0px;
  }
}
.katyd_fulltext-search-issue--responsive--portal {
  font-size: 16px;
  line-height: 16px;
  color: #686c6f;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0px;
}
.katyd_fulltext-search-content--responsive--portal {
  font-size: 16px;
  line-height: 22px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 576px) {
  .katyd_fulltext-search-content--responsive--portal {
    -webkit-line-clamp: 2;
  }
}

.katyd-fulltext-result--responsive--eshop {
  padding: 12px 25px;
}
.katyd-fulltext-result--responsive--eshop:hover {
  background-color: #e5ebf1;
}
.katyd-fulltext-result--responsive--eshop:hover .katyd_fulltext-search-heading--responsive--eshop {
  text-decoration: underline;
}
.katyd_fulltext-search-image--responsive--eshop {
  height: 146px;
  width: auto;
  border-radius: 5px;
}
.katyd_fulltext-search-heading--responsive--eshop {
  font-size: 36px;
  line-height: 42px;
  margin: 0px;
}
.katyd_fulltext-search-issue--responsive--eshop {
  font-size: 24px;
  line-height: 32px;
  color: #686c6f;
  margin: 0px;
}
.katyd_fulltext-search-content--responsive--eshop {
  font-size: 24px;
  line-height: 32px;
  margin: 8px 0px 0px;
}

/* GLOBAL SEARCH ESHOP RESULTS */
.search-result--eshop {
  display: flex;
  margin: 0px 0px 17px 0px;
}
.search-result--eshop:hover .search-result--eshop__card__title {
  text-decoration: underline;
}
.search-result--eshop__thumbnail {
  width: 175px;
  min-width: 175px;
  height: 206px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0px 17px 0px 0px;
}
@media (max-width: 991px) {
  .search-result--eshop__thumbnail {
    width: calc(175px * 0.75);
    min-width: calc(175px * 0.75);
    height: calc(206px * 0.75);
  }
}
@media (max-width: 576px) {
  .search-result--eshop__thumbnail {
    width: calc(175px * 0.5);
    min-width: calc(175px * 0.5);
    height: calc(206px * 0.5);
  }
}
.search-result--eshop__thumbnail img {
  width: auto;
  max-height: 206px;
}
@media (max-width: 991px) {
  .search-result--eshop__thumbnail img {
    max-height: calc(206px * 0.75);
  }
}
@media (max-width: 576px) {
  .search-result--eshop__thumbnail img {
    max-height: calc(206px * 0.5);
  }
}
.search-result--eshop__card__title {
  font-size: 20px;
  line-height: 26px;
  margin: 0px;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.search-result--eshop__card__author {
  font-size: 16px;
  line-height: 16px;
  color: #686c6f;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 8px 0px 4px 0px;
}
.search-result--eshop__card__description {
  font-size: 16px;
  line-height: 22px;
  display: -webkit-box;
  -webkit-line-clamp: 7;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 991px) {
  .search-result--eshop__card__description {
    -webkit-line-clamp: 3;
  }
}

/* KATYD BADGES */
.katyd_badge {
  font-size: 12px;
  padding: 6px 12px;
  background-color: #003673;
  text-transform: uppercase;
  color: #ffffff;
  display: inline-block;
  letter-spacing: 1px;
  white-space: nowrap;
}
.katyd_badge--portal--wrapper div {
  margin: 0px 12px 8px 0px;
}
.katyd_badge--portal--wrapper span {
  margin: 0px 0px 8px 0px;
}
.katyd_badge--portal {
  margin: 0px 12px 0px 0px;
  white-space: normal;
}

.badge-from_home {
  background-color: #003673 !important;
}
.badge-from_home:hover {
  background-color: #003673 !important;
}

.badge-from_the_world {
  background-color: #335e8f !important;
}
.badge-from_the_world:hover {
  background-color: #335e8f !important;
}

.badge-pope {
  background-color: #6686ab !important;
}
.badge-pope:hover {
  background-color: #6686ab !important;
}

.badge-topic {
  background-color: #c4124c !important;
}
.badge-topic:hover {
  background-color: #c4124c !important;
}

.badge-journalism {
  background-color: #33898f !important;
}
.badge-journalism:hover {
  background-color: #33898f !important;
}

.badge-perspectives {
  background-color: #009fe3 !important;
}
.badge-perspectives:hover {
  background-color: #009fe3 !important;
}

.badge-opinions {
  background-color: #686c6f !important;
}
.badge-opinions:hover {
  background-color: #686c6f !important;
}

.badge-liturgy_homily {
  background-color: #b89449 !important;
}
.badge-liturgy_homily:hover {
  background-color: #b89449 !important;
}

.badge-interview {
  background-color: #8eb200 !important;
}
.badge-interview:hover {
  background-color: #8eb200 !important;
}

.badge-home {
  background-color: #d97365 !important;
}
.badge-home:hover {
  background-color: #d97365 !important;
}

.badge-saints {
  background-color: #664e8c !important;
}
.badge-saints:hover {
  background-color: #664e8c !important;
}

.badge-diocese {
  background-color: #ad5d09 !important;
}
.badge-diocese:hover {
  background-color: #ad5d09 !important;
}

.btn-portal-search-again--portal {
  width: 170px;
  height: 45px;
  border: 1px solid #d32727;
  background-color: transparent;
  color: #d32727;
  text-transform: uppercase;
  transition: none;
  margin-top: 0px;
}
.btn-portal-search-again--portal:hover {
  border: 1px solid #d32727;
  background-color: #d32727;
  color: #fff;
}
.btn-portal-search-again--portal:focus {
  box-shadow: none;
}

.btn-portal-search-again--eshop {
  width: 170px;
  height: 45px;
  border: 1px solid #de3831;
  background-color: transparent;
  color: #de3831;
  text-transform: uppercase;
  transition: none;
  margin-top: 0px;
}
.btn-portal-search-again--eshop:hover {
  border: 1px solid #de3831;
  background-color: #de3831;
  color: #fff;
}
.btn-portal-search-again--eshop:focus {
  box-shadow: none;
}

.btn-portal-search-again--katyd {
  width: 170px;
  height: 45px;
  border: 1px solid #c4124c;
  background-color: transparent;
  color: #c4124c;
  text-transform: uppercase;
  transition: none;
  margin-top: 0px;
}
.btn-portal-search-again--katyd:hover {
  border: 1px solid #c4124c;
  background-color: #c4124c;
  color: #fff;
}
.btn-portal-search-again--katyd:focus {
  box-shadow: none;
}

/* FULLTEXT SEARCH SHOW MORE RESULTS */
.fulltext-show-more-results-wrapper {
  width: 100%;
  display: flex;
}
.fulltext-show-more-results {
  border: 1px solid #000;
  width: 100%;
  height: 50px;
}
@media (max-width: 575.98px) {
  .fulltext-show-more-results {
    margin: 0 auto;
    width: 75%;
  }
}
.fulltext-show-more-results:focus {
  box-shadow: none;
}
.fulltext-more_results_separator {
  height: 1px;
  width: 100%;
  margin: 0px 25px;
  background-color: #000;
}
@media (max-width: 575.98px) {
  .fulltext-more_results_separator {
    display: none;
  }
}

/* STOLEN */
.m-cp_search-result a {
  color: #333;
  font-weight: 400;
  font-size: 18px;
  line-height: 22px;
  padding: 12px 12px;
}
.m-cp_search-result:hover a {
  color: #333;
  text-decoration: underline;
}
.m-cp_result-bullet {
  width: 8px;
  height: 8px;
  margin-right: 12px;
  display: none;
}
.m-cp_search-result-issue {
  font-size: 18px;
  font-weight: 300;
  white-space: nowrap;
}
@media (max-width: 575.98px) {
  .m-cp_search-result-issue {
    display: none;
  }
}

#responsiveNavbarFulltextSearch--cp {
  font-size: 18px;
  line-height: 22px;
  background-color: #d32727;
  color: #fff;
  width: 100%;
  text-transform: uppercase;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}
