@import url("https://use.typekit.net/pyd2krj.css");


/* --- Branding Colors --- */
:root {
    --white: #fff;
    --black: #000;
    --aqua: #00b2a9;
    --slate: #323e48;
    --red: #e7004c;
    --orange: #ff9e1b;
    --navy: #003c71;
}


/* --- Base --- */
*,
*:after,
*:before {
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    font-smooth: antialiased;
    -moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
body {
	background: var(--white) !important;
	color: var(--bs-gray-800) !important;
	font-family: museo-sans, sans-serif !important;
	font-size: 18px !important;
    font-weight: 500;
    overflow-x: hidden;
}
body .sfPublicWrapper {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
body a {
    color: var(--red) !important;
}
body a:hover {
    color: var(--navy) !important;
}
a.btn {
    display: block;
    margin: 10px 0;
    color: var(--white) !important;
    font-size: 1.5rem;
}


/* --- Heading --- */
.header {
    position: fixed;
    top: 46px;
    z-index: 2;
    height: 144px;
    padding: 30px 0 !important;
    box-shadow: 0 3px 9px rgb(0 0 0 / 5%);
    background: var(--white);
    transition: ease-in-out 0.3s;
}
.header img {
    max-height: 84px;
    transition: ease-in-out 0.3s;
}
.header .row .links {
    padding-top: 22px;
    transition: ease-in-out 0.3s;
}
.header.fixed {
    height: 100px;
    padding: 24px 0 !important;
}
.header.fixed img {
    max-height: 52px;
}
.header.fixed .row .links {
    padding-top: 8px;
}


/* --- Navigation --- */
nav .nav-pills {
    justify-content: flex-end;
}
nav .nav-pills :is(.nav-link, .dropdown-item) {
    background-color: transparent !important;
    color: var(--bs-gray-800) !important;
}
nav .nav-pills .show>.nav-link {
    background-color: rgba(92, 184, 178, 0.10);
}
nav .nav-pills :is(.nav-link.active, .dropdown-item.active) {
    background-color: transparent;
}


/* --- Main Content --- */
.main-content {
    margin-top: 190px !important;
    padding: 80px 0 !important;
    /*background-image: url('/images/bwulibraries/bwu/icon-bg.png');
    background-position: 80% bottom;
    background-repeat: no-repeat;*/
}


/* --- Headings --- */
h1 {
    position: relative;
    margin-bottom: 30px !important;
    font-family: museo-slab, serif;
    font-size: 40px !important;
    font-weight: 500 !important;
    text-transform: uppercase;
}
h1::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    display: inline-block;
    width: -webkit-fill-available;
    height: 6px;
    margin-left: 20px;
    background: linear-gradient(90deg, rgba(255,158,24,1) 0%, rgba(231,0,76,1) 100%);
}
h2 {
    margin-top: 40px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid var(--bs-gray-400);
    color: var(--navy);
    font-size: 32px !important;
    font-weight: normal !important;
}
h3 {
    margin-bottom: 10px !important;
    font-size: 22px !important;
    font-weight: 700 !important;
}


/* --- Path Filter --- */
#pathLeaders.disabled {
    pointer-events: none;
    opacity: 0.5;
}
.path-leader-select {
    position: relative;
    width: 100%;
    height: 60px;
    margin: 40px 0;
}
.path-leader-select .row {
    gap: 0px;
}


/* --- Path Filter > Shoelace Selects --- */
.path-leader-select .path-select::part(combobox) {
    height: 60px;
    border-radius: 12px;
    border: 1px solid rgba(50, 62, 72, 0.30);
    background: rgba(92, 184, 178, 0.10);
    box-shadow: none;
 }
 .path-leader-select #pathCommitments {
    display: none;
 }
 .path-leader-select small {
    font-size: 16px !important;
    text-transform: uppercase !important;
 }
 .path-leader-select #pathCommitments.path-select::part(base) {
    padding-left: 20px;
 }


/* --- Path Filter > Buttons --- */
.path-leader-select .buttons button {
    position: relative;
    display: none;
    height: 100%;
    padding: 0 20px;
    border: 4px solid var(--red);
    border-radius: 12px;
    background: var(--white);
    color: var(--black);
    font-size: 16px;
    font-weight: bold;
    transition: ease-in-out 0.3s;
}
.path-leader-select .buttons button:hover {
    background: var(--red);
}
.path-leader-select .buttons #go-button.ready {
    display: block;
    border-color: var(--orange);
}
.path-leader-select .buttons #go-button.ready:hover {
    background-color: var(--orange);
}
.path-leader-select .buttons #go-button.ready.hidden {
    display: none !important;
}


/* --- Path Behaviors --- */
.path-behaviors {
    display: none;
    margin-bottom: 40px;
}
.path-behaviors .path-listing {
    list-style: none;
}
.path-behaviors .path-listing > ul li {
    display: none;
}
.path-behaviors .path-listing .path-listing-behaviors ul {
    list-style: disc;
    margin-left: 20px;
}


/* --- Path Table --- */
.path-table {
    display: none;
}
.sfPageEditor .path-table {
    display: block;
}
.path-table .sf_cols > div {
    min-height: 80px;
}
.path-table .path-table-header {
    display: flex;
    gap: 3px;
}
.path-table .path-table-header > div {
    position: relative;
    padding: 0;
    background-color: var(--slate);
    color: var(--white);
    font-weight: bold;
    text-align: center;
    /*white-space: nowrap;*/
}
.path-table .path-table-header > div > div > div > div > div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.path-table .path-table-header > div sl-button::part(base) {
    border: none;
    background-color: transparent;
    color: var(--white);
    font-family: museo-sans, sans-serif !important;
    font-weight: bold;
    white-space: normal;
}
.path-table .path-table-header > div sl-tooltip::part(base__popup) {
    padding-bottom: 25px;
}
.path-table .path-table-header > div sl-tooltip::part(base__arrow) {
    bottom: 20px !important;
}
.path-table .path-table-row {
    display: flex;
    gap: 3px;
    margin-top: 3px;
}
.path-table .path-table-row > div {
    padding: 5px;
    background-color: #EAECED;
}
.path-table .path-table-row > div:first-of-type {
    line-height: 80px;
    background: rgba(50, 62, 72, 0.30);
    color: var(--slate);
    font-size: 16px;
    text-align: center;
}
.path-table .path-table-row > div sl-button::part(base) {
    border: none;
    background-color: transparent;
    font-family: museo-sans, sans-serif !important;
    font-weight: bold;
    white-space: normal;
}
.path-table .path-listing {
    line-height: normal;
    margin-left: 20px;
    list-style-type: disc;
}
.path-table .path-table-header div:first-of-type {
    border-top-left-radius: 12px;
}
.path-table .path-table-header div:last-of-type {
    border-top-right-radius: 12px;
}
.path-table .path-table-row:last-of-type div:first-of-type {
    border-bottom-left-radius: 12px;
}
.path-table .path-table-row:last-of-type div:last-of-type {
    border-bottom-right-radius: 12px;
}
.path-table .path-listing ul li {
    display: none;
}
.path-table a {
    color: var(--red) !important;
    text-decoration: underline !important;
}


/* --- Path Table > Modal --- */
.path-table .modal-content, #leader-instructions .modal-content {
    position: relative;
    padding: 20px 30px 20px 42px;
    border-radius: 12px;
    overflow: hidden;
}
.path-table .modal-content::before, #leader-instructions .modal-content::before  {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 12px;
    height: 100%;
    background: linear-gradient(180deg, rgba(255,158,24,1) 0%, rgba(231,0,76,1) 100%);
}
.path-table .modal-header, #leader-instructions .modal-header {
    padding: 0 0 20px;
    border-radius: 0 !important;
}
.path-table .modal-header h2, #leader-instructions .modal-header h2 {
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0;
    color: var(--navy);
    font-size: 26px !important;
    font-weight: 500;
    text-align: left;
}
.path-table .modal-body, #leader-instructions .modal-body {
    padding: 20px 0 10px;
    text-align: left;
}
.path-table .modal-body h3 {
    padding-top: 20px;
    font-size: 18px;
    font-weight: bold;
}
.path-table .modal-body .upcoming-list {
    padding-top: 10px;
}
.path-table .modal-body :is(span.webinar-length, span.video-length) {
    display: block;
    margin-top: 20px;
}
.modal-body ul {
    list-style-type: disc;
    margin-left: 20px;
}
.modal-body ol {
    list-style-type: decimal;
    margin-left: 20px;
}


/* --- Leader Categories ---*/
.category-table table {
    margin: 30px 0;
    border: 0 !important;
}
.category-table table th {
    padding: 20px !important;
    border: 0 !important;
    border-right: 3px solid var(--white) !important;
    background-color: var(--slate);
    color: var(--white);
    font-family: museo-sans, sans-serif !important;
    font-size: 0.875rem;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
}
.category-table table th:first-of-type {
    border-top-left-radius: 12px;
}
.category-table table th:last-of-type {
    border-top-right-radius: 12px;
    border: 0 !important;
}
.category-table table td {
    padding: 10px !important;
    border: 0 !important;
    border-top: 3px solid var(--white) !important;
    border-right: 3px solid var(--white) !important;
    background-color: #EAECED;
    vertical-align: top;
}
.category-table table td:first-of-type {
    width: 20%;
    border-left: 0 !important;
    background-color: rgba(50, 62, 72, 0.30);
    color: var(--slate);
    font-weight: bold;
}
.category-table table td:last-of-type {
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
}
.category-table table tr:last-of-type td:first-of-type {
    border-bottom-left-radius: 12px;
}
.category-table table tr:last-of-type td:last-of-type {
    border-bottom-right-radius: 12px;
}
.boxed-text {
    font-family: 'museo-sans', sans-serif;
    font-size: 24px;
    text-align: center;
}


/* --- Catalog Filter Bar --- */
.catalog-filter-bar {
    padding: 40px 0;
}
.catalog-filter-bar .col:first-of-type {
    width: calc(100% - 13px);
    padding-right: 12px;
    border-right: 1px solid rgba(50, 62, 72, 0.30);
}
.catalog-filter-bar .catalog-search {
    position: relative;
}
.catalog-filter-bar .catalog-search input {
    width: 100%;
    height: 46px;
    padding: 0 20px;
    border-radius: 50px;
    border: 1px solid rgba(50, 62, 72, 0.30);
}
.catalog-filter-bar .catalog-search::after {
    content: "\f002";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    font-family: "Font Awesome 6 Pro";
    font-size: 14px;
}
.catalog-filter-bar .catalog-select::part(combobox) {
    height: 46px;
    border-radius: 50px;
    border: 1px solid rgba(50, 62, 72, 0.30);
    box-shadow: none;
    font-family: museo-sans, sans-serif;
    font-size: 18px;
 }
.catalog-filter-bar .catalog-select small {
    font-size: 16px !important;
    text-transform: uppercase !important;
}
.catalog-filter-bar .catalog-select #catalogCommitments.catalog-select::part(base) {
    padding-left: 20px;
}


/* --- Catalog Listings --- */
.catalog-listings li.dupe-Yes {
    display: none;
}
.catalog-listings details {
    padding: 0 0 0 35px;
}
.catalog-listings details[open] {
    border-bottom: 1px solid #EAECED;
    padding-bottom: 20px;
}
.catalog-listings details summary {
    list-style: none;
    margin-left: -35px;
    padding: 30px 0 20px;
    border-bottom: 1px solid #EAECED;
}
.catalog-listings details[open] summary {
    border: none;
}
.catalog-listings details summary h3 {
    padding: 0 35px 0;
    color: initial;
    font-weight: normal !important;
    text-transform: none;
}
.catalog-listings details summary h3 i {
    margin-left: -35px;
    padding-right: 10px;
    color: var(--red);
}
.catalog-listings details summary h3 .fa-square-minus {
    display: none;
}
.catalog-listings details[open] summary h3 .fa-square-minus {
    display: initial;
}
.catalog-listings details[open] summary h3 .fa-square-plus {
    display: none;
}
.catalog-listings details p:last-of-type {
    padding-top: 10px;
}
.catalog-listings details a {
    font-weight: 700;
}
.catalog-listings .table-header {
    display: flex;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--bs-gray-800) !important;
    font-size: 14px;
}
.catalog-listings .table-header > *:first-of-type {
    flex: 0 0 46%;
    text-transform: uppercase;
}
.catalog-listings .table-header > *:nth-of-type(2), .catalog-listings .table-header > *:nth-of-type(3), .catalog-listings .table-header > *:nth-of-type(4) {
    flex: 0 0 18%;
    text-transform: uppercase;
}
.catalog-listings details :is(summary.table-three, summary.table-two) {
    display: flex;
}
.catalog-listings details summary.table-three > h3 {
    flex: 0 0 46%;
}
.catalog-listings details summary.table-three > h3 > span {
    display: block;
    margin-top: 5px;
    color: var(--bs-gray-800);
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
}
.catalog-listings details summary.table-three > div {
    flex: 0 0 18%;
}
.catalog-listings details summary.table-three > div ul:first-of-type {
    margin-top: 0;
}
.catalog-listings details summary.table-three > div ul {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 5px;
}
.catalog-listings details summary.table-three > div ul li {
    display: inline-block;
    padding: 3px 5px;
    border-radius: 5px;
    background-color: var(--navy);
    color: var(--white);
    font-size: 12px;
    font-weight: bold;
}
.catalog-listings details summary.table-three > div ul li.leader-level {
    background-color: var(--navy);
}
.catalog-listings details summary.table-three > div ul li.leader-commitment {
    background-color: var(--red);
}
.catalog-listings details summary.table-three > div ul li.team-commitment {
    background-color: var(--aqua);
}
.catalog-listings details summary.table-three > div ul li.core-commitment {
    background-color: var(--orange);
}
.catalog-listings details summary.table-two > h3 {
    flex: 0 0 70%;
}
.catalog-listings details summary.table-two > span {
    flex: 0 0 30%;
}


/* --- Behavior Listings --- */
.behavior-listing {
    padding-top: 30px;
}
.behavior-listing:first-of-type {
    padding-top: 0;
}
.behavior-listing .listing-behaviors ul {
    list-style: disc;
}
.behavior-listing .listing-behaviors ul li {
    margin-left: 20px;
}


/* --- Print Button --- */
.print-button {
    margin-top: 50px;
    padding: 10px 30px;
    border: none;
    border-radius: 50px;
    background-color: var(--red);
    color: var(--white);
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.print-button i {
    padding-right: 10px;
}
.print-button:hover {
    background-color: var(--navy);
}


/* --- Footer --- */
.footer {
    position: relative;
    padding: 30px 0px !important;
    background-color: var(--slate);
    color: var(--white);
}
.footer::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 0;
    display: block;
    width: 100%;
    height: 20px;
    background: linear-gradient(90deg, rgba(255,158,24,1) 0%, rgba(231,0,76,1) 100%);
}
.footer a {
    color: var(--white) !important;
    text-decoration: underline !important;
}
.footer a:hover {
    color: var(--aqua) !important;
}
.footer img {
    max-height: 64px;
}
.footer .row .sf_colsOut:last-of-type {
    line-height: 64px;
    text-align: right;
}


@media print {
    .super-header, .header, .print-button, .footer {
        display: none;
    }
    .main-content {
        margin-top: 0 !important;
        padding-top: 20px !important;
    }
    .container {
        max-width: 100% !important;
    }
}