 
/* 
Reset Styles 
=============== */

.kcw {
  box-sizing: unset;
}

.kcw * {
  /* per https://kyruus.jira.com/browse/KENG-35371: this negates the effect of Kyruus' * {font-size: 14px} */
  font-size: 16px;
}

.kcw section,
.kcw div,
.kcw dl,
.kcw dt,
.kcw dd,
.kcw ul,
.kcw ol,
.kcw li,
.kcw h1,
.kcw h2,
.kcw h3,
.kcw h4,
.kcw h5,
.kcw h6,
.kcw pre,
.kcw form,
.kcw fieldset,
.kcw input,
.kcw textarea,
.kcw label,
.kcw p,
.kcw blockquote,
.kcw th,
.kcw td,
.kcw a {
  margin: 0;
}

.kcw table {
  border-collapse: collapse;
  border-spacing: 0;
}

.kcw fieldset,
.kcw img {
  border: 0;
}

.kcw address,
.kcw caption,
.kcw cite,
.kcw code,
.kcw dfn,
.kcw em,
.kcw strong,
.kcw th,
.kcw var {
  font-style: normal;
  font-weight: normal;
}

.kcw ol,
.kcw ul {
  list-style: none;
}

.kcw caption,
.kcw th {
  text-align: left;
}

.kcw h1,
.kcw h2,
.kcw h3,
.kcw h4,
.kcw h5,
.kcw h6 {
  font-size: 100%;
  font-weight: bold;
}

.kcw q:before,
.kcw q:after {
  content: '';
}

.kcw abbr,
.kcw acronym {
  border: 0;
}

.kcw a {
  /* per https://kyruus.jira.com/browse/KENG-35371: this negates the effect of Kyruus' a {display: inline-block} */
  display: inline;
}

.kcw p:first-child {
  /* per https://kyruus.jira.com/browse/KENG-35371: this negates the effect of Kyruus' p:first-child margin-top styles */
  margin-top: inherit;
}

.kcw p:last-child {
  /* per https://kyruus.jira.com/browse/KENG-35371: this negates the effect of Kyruus' p:last-child margin-bottom styles */
  margin-bottom: inherit;
}

/* Reset Styles End
=============== */


 .kcw #kcw__sj_header {
    position:relative;

    margin: 0 auto;
    font-family: Roboto, serif;
}

@media (max-width: 1024px) {
     .kcw #kcw__sj_header_desktop {
        display: none;
    }
}

@media (min-width: 1023px) {
     .kcw #kcw__sj_header_mobile {
        display: none;
    }
}

 .kcw #kcw__sj_header_upper {
    background-color: white;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px 8px 8px 8px;
}

 .kcw #kcw__sj_logo {
    flex: 1;
}

 .kcw #kcw__sj_nav_upper {
    flex: 2;
    text-align: right;
}

 .kcw #kcw__sj_header ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

 .kcw #kcw__sj_header ul li {
    display: inline-block;
    margin-left: 24px;
    padding: 8px 16px 8px 16px;
    border-bottom: 3px solid transparent;
}

 .kcw #kcw__sj_header ul li:hover {
    border-bottom: 3px solid black;
}

 .kcw #kcw__sj_header ul li a {
    color: black;
    text-decoration: none;
    font-size: 16px;
}

 .kcw #kcw__sj_header_lower {
    background-color: white;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 8px 12px 8px;
}

 .kcw #kcw__sj_nav_lower ul li a {
    font-size: 20px;
}

 .kcw #kcw__sj_lower_buttons {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    column-gap: 20px;
}

 .kcw a#kcw__fad {
    padding: 12px 20px 12px 20px;
    border-radius: 4px;
    background-color: #064A74;
    color: white;
    font-size: 16px !important;
    text-decoration: none;
}

 .kcw #kcw__search {
    padding: 12px 20px 12px 20px;
    border-radius: 4px;
    background-color: #f1f1f1;
    color: black;
    font-size: 16px;
    text-decoration: none;
}

 .kcw #kcw__sj_mobile_wrapper {
    background-color: transparent;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    overflow: visible;
}


 .kcw #kcw__sj_mobile_menu {
    position: absolute;
    top: 55px;
    left: 0;
    min-height: calc(100% - 80px);
    background-color: white;
    width: 100%;
    z-index: 999;
    display: none;
    flex-grow: 1;
    padding-top: 32px;
}

 .kcw #kcw__sj_mobile_header_buffer {
    display: block;
    width: 100%;
    height: 80px;
    background-color: transparent !important;
}

 .kcw #kcw__sj_mobile_buttons {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    column-gap: 12px;
}

 .kcw #kcw__sj_mobile_wrapper {
    background-color: white;
}
 .kcw #kcw__sj_mobile_menu ul li {
    display: block;
}
 .kcw #kcw__sj_mobile_menu ul li a {
    color: #0170B9;
    font-size: 20px;
}

 .kcw #kcw__sj_mobile_fad {
    display: block;
    padding: 12px 20px 12px 20px;
    text-align: center;
    color: #ffffff;
    font-size: 20px;
    text-decoration: none;
    border-radius: 32px;
    background-color: #064A74;
    margin: 0 32px 16px 32px;
}

 .kcw #kcw__sj_header_mobile ul li:hover {
    border-bottom: 3px solid transparent;
}

 .kcw #kcw__menu_toggle:checked ~ #kcw__sj_mobile_menu {
    display: block;
}
 .kcw #kcw__menu_toggle:checked + label #kcw__mobile_menu_icon {
    content: url('https://cdn.kyruus.com/pmc-customer-static-assets/stjosephsnj/fonts/1.7/close.svg'); /* Change the image source when checked */
}

 .kcw #kcw__sj_mobile_search {
    position: absolute;
    top: 80px;
    left: 0;
    height: 40px;
    background-color: white;
    width: calc(100% - 24px);
    z-index: 100;
    display: none;
    flex-grow: 1;
    padding: 12px;
}

 .kcw #kcw__sj_mobile_search input {
    width: calc(100% - 48px);
    padding: 12px 24px 12px 24px;
    font-size: 16px;
    border: 0;
    border-radius: 12px;
    background-color: #f1f1f1;
}

 .kcw #kcw__search_toggle:checked ~ #kcw__sj_mobile_search {
    display: block;
}

 .kcw #kcw__desktop_search_label {
    display: flex;
    column-gap: 12px;
    padding: 12px 30px;
    background-color: #ddd;
    color: black;
    cursor: pointer;
    border-radius: 5px;
    text-indent: 0px;
}

 .kcw #kcw__desktop_search_toggle:checked + #kcw__desktop_search_label + #kcw__desktop_search {
    display: block;
}

 .kcw #kcw__desktop_search {
    position: absolute;
    top: 130px;
    left: 0;
    display: none;
    width: 100%;
    max-width: 1140px;
}

 .kcw #kcw__desktop_search input {
    width: calc(100% - 56px);
    padding: 16px 28px 16px 28px;
    font-size: 16px;
    border: 0;
    border-radius: 12px;
    background-color: #f1f1f1;
}

html .kcw , body .kcw  {
    padding: 0;
    margin: 0;
}

 .kcw footer {
    width: 100%;
    background-color: #064A74;
    font-family: Roboto, serif;
}

 .kcw #kcw__sj_footer_wrapper {
    max-width: 1140px;
    margin: 0 auto;
    padding: 24px;
    font-family: Roboto, serif;
}

@media (min-width: 768px) {
     .kcw #kcw__sj_footer_desktop_top {
        display: flex;
        flex-direction: row;
    }
}

 .kcw #kcw__sj_footer_logo {
    flex: 1;
}
 .kcw #kcw__sj_footer_logo img {
    width: 270px;
}

@media (max-width: 767px) {
     .kcw #kcw__sj_footer_logo {
        text-align: center;
    }
}

@media (max-width: 767px) {
     .kcw #kcw__sj_footer_social {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}
@media (min-width: 768px) {
     .kcw #kcw__sj_footer_social {
        display: flex;
        flex-direction: column;
        align-items: end;
    }
}


 .kcw #kcw__sj_footer_social_icons {
    column-gap: 12px;
    display: flex;
    flex-direction: row;
    align-items: center;
}

 .kcw #kcw__sj_footer_social_icons img {
    flex: 1;
    width: 32px;
    color: white;
}

 .kcw #kcw__sj_footer_social_icons img * {
    fill: white;
}

@media (min-width: 768px) {
     .kcw #kcw__sj_footer_desktop_menus {
        width: 75%;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
}
@media (max-width: 767px) {
     .kcw #kcw__sj_footer_desktop_menus {
        width: 100%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        row-gap: 24px;
    }
}

 .kcw #kcw__sj_footer_desktop_menus div {
    height: auto;
}

 .kcw #kcw__sj_footer_desktop_menus h5 {
    color: white;
    font-size: 16px;
    margin-top: 0;
}

 .kcw #kcw__sj_footer_desktop_menus ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

 .kcw #kcw__sj_footer_desktop_menus ul li {
    margin-bottom: 12px;
}

 .kcw #kcw__sj_footer_desktop_menus ul li a {
    color: white;
    text-decoration: none;
    font-size: 14px;
    font-style: normal;
    font-weight: 300 !important;
}

 .kcw #kcw__sj_footer_desktop_bottom {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-top: 24px;
}

 .kcw #kcw__sj_footer_desktop_bottom ul {
    list-style: none;
}

 .kcw #kcw__sj_footer_desktop_bottom ul li {
    display: inline-block;
    margin-left: 32px;
}

 .kcw #kcw__sj_footer_desktop_bottom ul li a {
    color: white;
    text-decoration: none;
    font-size: 14px;
}

 .kcw #kcw__sj_footer_copyright {
    text-align: center;
    color: white;
    font-size: 13px;
    padding-bottom: 32px;
}