/*
 * BiB Directory — front-end styles.
 * Colors and fonts come from the site's Elementor Global Colors/Fonts when
 * available (so changing them in Elementor restyles the directory too), with
 * the original site palette as the fallback.
 */
.bib-dir, .bib-dir-container {
	--bib-primary: var(--e-global-color-primary, #EFBD2B);
	--bib-secondary: var(--e-global-color-secondary, #54595F);
	--bib-text: var(--e-global-color-text, #7A7A7A);
	--bib-dark: #1f2124;
	--bib-border: #e6e6e6;
	--bib-soft: #faf7ee;
	--bib-radius: 10px;
	--bib-heading-font: var(--e-global-typography-primary-font-family, "Roboto"), sans-serif;
	--bib-body-font: var(--e-global-typography-text-font-family, "Roboto"), sans-serif;
	font-family: var(--bib-body-font);
	color: var(--bib-secondary);
	box-sizing: border-box;
}
.bib-dir *, .bib-dir *::before, .bib-dir *::after { box-sizing: inherit; }

.bib-dir-container { max-width: 1200px; margin: 0 auto; padding: 40px 20px 60px; }
.bib-dir-page__header { margin-bottom: 24px; }
.bib-dir-page__title, .bib-dir-single__title {
	font-family: var(--bib-heading-font); color: var(--bib-dark);
	font-size: clamp(1.8rem, 3.5vw, 2.6rem); line-height: 1.15; margin: 0 0 8px;
}
.bib-dir-page__desc { color: var(--bib-text); max-width: 760px; }

/* Buttons --------------------------------------------------------------- */
.bib-dir-btn {
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--bib-primary); color: var(--bib-dark); border: 2px solid var(--bib-primary);
	border-radius: 50px; padding: 12px 28px; font-family: var(--bib-heading-font);
	font-weight: 600; font-size: 1rem; line-height: 1.2; cursor: pointer; text-decoration: none;
	transition: background-color .3s, color .3s, transform .3s;
}
.bib-dir-btn:hover, .bib-dir-btn:focus-visible { background: var(--bib-dark); border-color: var(--bib-dark); color: #fff; transform: translateY(-1px); }

/* Search ---------------------------------------------------------------- */
.bib-dir-search {
	display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch;
	background: #fff; border: 1px solid var(--bib-border); border-radius: 60px;
	padding: 8px; box-shadow: 0 6px 24px rgba(0,0,0,.06); margin: 0 0 18px;
}
.bib-dir-search__field { flex: 1 1 170px; display: flex; }
.bib-dir-search__field--q { flex: 3 1 260px; }
.bib-dir-search input, .bib-dir-search select {
	width: 100%; border: 0; background: transparent; padding: 10px 16px; font: inherit;
	font-size: 1rem; color: var(--bib-dark); min-height: 46px; border-radius: 40px;
}
.bib-dir-search select { border-left: 1px solid var(--bib-border); border-radius: 0; cursor: pointer; }
.bib-dir-search input:focus, .bib-dir-search select:focus { outline: 2px solid var(--bib-primary); outline-offset: -2px; }
@media (max-width: 767px) {
	.bib-dir-search { border-radius: 16px; padding: 10px; }
	.bib-dir-search__field { flex: 1 1 100%; }
	.bib-dir-search input { border: 1px solid var(--bib-border); }
	.bib-dir-search select { border: 1px solid var(--bib-border); border-radius: 40px; }
	.bib-dir-search .bib-dir-btn { flex: 1 1 100%; }
}

.bib-dir-count { color: var(--bib-text); font-size: .95rem; margin: 0 0 14px; }
.bib-dir-count a { color: var(--bib-secondary); text-decoration: underline; }

/* Map ------------------------------------------------------------------- */
.bib-dir-map { width: 100%; border-radius: var(--bib-radius); overflow: hidden; border: 1px solid var(--bib-border); margin: 0 0 28px; z-index: 0; position: relative; background: #eef0f2; }
.bib-dir-popup { font-family: var(--bib-body-font); min-width: 160px; }
.bib-dir-popup__cat { font-size: 11px; text-transform: uppercase; letter-spacing: .06em; color: #8a6d12; margin-bottom: 2px; }
.bib-dir-popup__title { display: block; font-size: 15px; color: #1f2124; margin-bottom: 4px; }
.bib-dir-popup__addr { font-size: 12px; color: #54595F; margin-bottom: 6px; }
.bib-dir-popup a { font-weight: 600; color: #1f2124; text-decoration: underline; }

/* Cards ----------------------------------------------------------------- */
.bib-dir-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px; }
.bib-dir-card {
	display: flex; flex-direction: column; background: #fff; border: 1px solid var(--bib-border);
	border-radius: var(--bib-radius); overflow: hidden; transition: box-shadow .3s, transform .3s;
}
.bib-dir-card:hover { box-shadow: 0 10px 30px rgba(0,0,0,.08); transform: translateY(-2px); }
.bib-dir-card.is-featured { border-color: var(--bib-primary); box-shadow: 0 0 0 1px var(--bib-primary); }
.bib-dir-card__media { text-decoration: none !important; position: relative; display: block; aspect-ratio: 16 / 10; background: var(--bib-soft); overflow: hidden; }
.bib-dir-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bib-dir-card__placeholder {
	display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;
	font-family: var(--bib-heading-font); font-size: 3rem; font-weight: 700; color: var(--bib-primary);
}
.bib-dir-card__body { padding: 16px 18px 18px; display: flex; flex-direction: column; flex: 1; }
.bib-dir-card__cat { font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: #8a6d12; margin: 0 0 6px; font-weight: 600; }
.bib-dir-card__title { font-family: var(--bib-heading-font); font-size: 1.15rem; line-height: 1.3; margin: 0 0 8px; }
.bib-dir-card__title a { color: var(--bib-dark); text-decoration: none; }
.bib-dir-card__title a:hover { color: var(--bib-secondary); text-decoration: underline; }
.bib-dir-card__desc { font-size: .92rem; line-height: 1.5; color: var(--bib-text); margin: 0 0 12px; }
.bib-dir-card__meta { list-style: none; margin: auto 0 0; padding: 10px 0 0; border-top: 1px solid var(--bib-border); font-size: .9rem; }
.bib-dir-card__meta li { margin: 4px 0; }
.bib-dir-card__meta a { color: var(--bib-secondary); text-decoration: none; }

.bib-dir-badge {
	position: absolute; top: 12px; left: 12px; background: var(--bib-primary); color: var(--bib-dark);
	font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em;
	padding: 5px 10px; border-radius: 50px;
}
.bib-dir-badge--inline { position: static; display: inline-block; vertical-align: middle; }

/* Icons (pure CSS masks, no icon font needed) */
.bib-dir-icon { position: relative; padding-left: 24px; }
.bib-dir-icon::before {
	content: ""; position: absolute; left: 0; top: .2em; width: 16px; height: 16px;
	background: var(--bib-primary); -webkit-mask: var(--bib-icon) center / contain no-repeat; mask: var(--bib-icon) center / contain no-repeat;
}
.bib-dir-icon--pin   { --bib-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E"); }
.bib-dir-icon--phone { --bib-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11.4 11.4 0 0 0 3.6.57 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.45.57 3.57a1 1 0 0 1-.25 1z'/%3E%3C/svg%3E"); }
.bib-dir-icon--mail  { --bib-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2zm0 4-8 5-8-5V6l8 5 8-5z'/%3E%3C/svg%3E"); }
.bib-dir-icon--web   { --bib-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm6.9 6h-2.9a15.7 15.7 0 0 0-1.4-3.6A8 8 0 0 1 18.9 8zM12 4c.8 1.2 1.5 2.5 1.9 4h-3.8c.4-1.5 1.1-2.8 1.9-4zM4.3 14a8.2 8.2 0 0 1 0-4h3.4a16.5 16.5 0 0 0 0 4zm.8 2h2.9c.3 1.3.8 2.5 1.4 3.6A8 8 0 0 1 5.1 16zM8 8H5.1a8 8 0 0 1 4.3-3.6C8.8 5.5 8.3 6.7 8 8zm4 12c-.8-1.2-1.5-2.5-1.9-4h3.8c-.4 1.5-1.1 2.8-1.9 4zm2.3-6H9.7a14.7 14.7 0 0 1 0-4h4.6a14.7 14.7 0 0 1 0 4zm.3 5.6c.6-1.1 1.1-2.3 1.4-3.6h2.9a8 8 0 0 1-4.3 3.6zm1.7-5.6a16.5 16.5 0 0 0 0-4h3.4a8.2 8.2 0 0 1 0 4z'/%3E%3C/svg%3E"); }

/* Pagination ------------------------------------------------------------ */
.bib-dir-pagination { margin: 36px 0 0; }
.bib-dir-pagination ul { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 0; padding: 0; }
.bib-dir-pagination a, .bib-dir-pagination span {
	display: inline-block; min-width: 42px; padding: 9px 14px; text-align: center; border-radius: 50px;
	border: 1px solid var(--bib-border); color: var(--bib-secondary); text-decoration: none; background: #fff;
}
.bib-dir-pagination a:hover { border-color: var(--bib-primary); }
.bib-dir-pagination .current { background: var(--bib-primary); border-color: var(--bib-primary); color: var(--bib-dark); font-weight: 700; }
.bib-dir-empty { padding: 30px; text-align: center; background: var(--bib-soft); border-radius: var(--bib-radius); }

/* Categories ------------------------------------------------------------ */
.bib-dir-cats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
.bib-dir-cats a {
	display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 14px 18px;
	border: 1px solid var(--bib-border); border-radius: var(--bib-radius); background: #fff;
	color: var(--bib-dark); text-decoration: none; transition: border-color .3s, background-color .3s;
}
.bib-dir-cats a:hover { border-color: var(--bib-primary); background: var(--bib-soft); }
.bib-dir-cats__count { background: var(--bib-soft); color: #8a6d12; border-radius: 50px; padding: 2px 10px; font-size: .85rem; font-weight: 700; }

/* Single listing -------------------------------------------------------- */
.bib-dir-single__back { margin: 0 0 14px; font-size: .95rem; }
.bib-dir-single__back a { color: var(--bib-secondary); text-decoration: none; }
.bib-dir-single__back a:hover { text-decoration: underline; }
.bib-dir-single__cats { margin: 0 0 10px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.bib-dir-chip {
	display: inline-block; padding: 5px 14px; border-radius: 50px; background: var(--bib-primary);
	color: var(--bib-dark); font-size: .82rem; font-weight: 600; text-decoration: none;
}
.bib-dir-chip--light { background: var(--bib-soft); color: var(--bib-secondary); font-weight: 400; }
.bib-dir-chip:hover { filter: brightness(.95); }
.bib-dir-single__layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 36px; margin-top: 24px; }
@media (max-width: 900px) { .bib-dir-single__layout { grid-template-columns: 1fr; } }
.bib-dir-single__hero { margin: 0 0 24px; border-radius: var(--bib-radius); overflow: hidden; background: var(--bib-soft); }
.bib-dir-single__hero img { width: 100%; height: auto; max-height: 520px; object-fit: contain; display: block; margin: 0 auto; }
.bib-dir-single__content { font-size: 1.05rem; line-height: 1.7; color: var(--bib-secondary); }
.bib-dir-single__subhead { font-family: var(--bib-heading-font); color: var(--bib-dark); font-size: 1.4rem; margin: 32px 0 14px; }
.bib-dir-gallery { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.bib-dir-gallery img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 8px; display: block; }
.bib-dir-single__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.bib-dir-info { background: var(--bib-soft); border-radius: var(--bib-radius); padding: 24px; margin-bottom: 20px; border-top: 4px solid var(--bib-primary); }
.bib-dir-info__title { font-family: var(--bib-heading-font); color: var(--bib-dark); font-size: 1.25rem; margin: 0 0 14px; }
.bib-dir-info__list { list-style: none; margin: 0; padding: 0; }
.bib-dir-info__list li { margin: 0 0 14px; line-height: 1.5; word-break: break-word; }
.bib-dir-info__list a { color: var(--bib-dark); }
.bib-dir-social { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 0; }
.bib-dir-social__link { display: inline-block; padding: 8px 16px; border-radius: 50px; color: #fff; text-decoration: none; font-size: .9rem; font-weight: 600; }
.bib-dir-social__link--facebook { background: #1877F2; }
.bib-dir-social__link--instagram { background: #C13584; }
.bib-dir-social__link:hover { opacity: .9; color: #fff; }

/* Submission form ------------------------------------------------------- */
.bib-dir-form { max-width: 760px; }
.bib-dir-form fieldset { border: 1px solid var(--bib-border); border-radius: var(--bib-radius); padding: 18px 22px 6px; margin: 0 0 22px; }
.bib-dir-form legend { font-family: var(--bib-heading-font); font-weight: 700; color: var(--bib-dark); padding: 0 8px; }
.bib-dir-form__row { margin: 0 0 16px; }
.bib-dir-form__row label { display: block; font-weight: 600; margin-bottom: 6px; color: var(--bib-dark); }
.bib-dir-form input[type="text"], .bib-dir-form input[type="email"], .bib-dir-form input[type="url"],
.bib-dir-form input[type="tel"], .bib-dir-form select, .bib-dir-form textarea {
	width: 100%; padding: 11px 14px; border: 1px solid #cfcfcf; border-radius: 8px; font: inherit; font-size: 1rem; background: #fff; color: var(--bib-dark);
}
.bib-dir-form input:focus, .bib-dir-form select:focus, .bib-dir-form textarea:focus { outline: 2px solid var(--bib-primary); outline-offset: 0; border-color: var(--bib-primary); }
.bib-dir-form__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0 16px; }
.bib-dir-form__check label { font-weight: 400; display: flex; gap: 8px; align-items: flex-start; }
.bib-dir-form__note { font-size: .9rem; color: var(--bib-text); }
.bib-dir-req { color: #b32d2e; }
.bib-dir-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.bib-dir-notice { padding: 14px 18px; border-radius: 8px; margin: 0 0 20px; background: var(--bib-soft); border-left: 4px solid var(--bib-primary); }
.bib-dir-notice--success { background: #edf7ee; border-left-color: #2e7d32; }
.bib-dir-notice--error { background: #fdecea; border-left-color: #b32d2e; }

.bib-dir .screen-reader-text {
	border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px;
	overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important;
}

@media (max-width: 767px) {
	.bib-dir-map { max-height: 300px; }
}

/* --------------------------------------------------------------------------
 * Theme-proofing. Hello Elementor (and many themes) style every button and
 * text box (pink outlined buttons, grey boxed inputs). These rules are more
 * specific than any theme default, so the directory always keeps its look.
 * ----------------------------------------------------------------------- */
.bib-dir .bib-dir-btn,
.bib-dir button.bib-dir-btn[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center; width: auto;
	background-color: var(--bib-primary); color: var(--bib-dark); border: 2px solid var(--bib-primary);
	border-radius: 50px; padding: 12px 28px; margin: 0; font-family: var(--bib-heading-font);
	font-weight: 700; font-size: 1rem; line-height: 1.2; white-space: nowrap; text-decoration: none; cursor: pointer;
}
.bib-dir .bib-dir-btn:hover, .bib-dir .bib-dir-btn:focus-visible,
.bib-dir button.bib-dir-btn[type="submit"]:hover, .bib-dir button.bib-dir-btn[type="submit"]:focus-visible {
	background-color: var(--bib-dark); border-color: var(--bib-dark); color: #fff;
}
.bib-dir button.bib-dir-btn[type="submit"]:focus:not(:focus-visible) { background-color: var(--bib-primary); color: var(--bib-dark); border-color: var(--bib-primary); }
.bib-dir .bib-dir-search input[type="search"],
.bib-dir .bib-dir-search select {
	width: 100%; min-height: 46px; margin: 0; border: 0; border-radius: 40px; background: transparent;
	padding: 10px 16px; font-family: inherit; font-size: 1rem; line-height: 1.4; color: var(--bib-dark); box-shadow: none;
}
.bib-dir .bib-dir-search select { border-left: 1px solid var(--bib-border); border-radius: 0; }
.bib-dir .bib-dir-search input[type="search"]:focus,
.bib-dir .bib-dir-search select:focus { border-color: var(--bib-border); outline: 2px solid var(--bib-primary); outline-offset: -2px; }
.bib-dir .bib-dir-search input[type="search"]::-webkit-search-cancel-button { cursor: pointer; }
@media (max-width: 767px) {
	.bib-dir .bib-dir-search input[type="search"] { border: 1px solid var(--bib-border); }
	.bib-dir .bib-dir-search select { border: 1px solid var(--bib-border); border-radius: 40px; }
	.bib-dir .bib-dir-search .bib-dir-btn { width: 100%; }
}
.bib-dir .bib-dir-form input[type="text"], .bib-dir .bib-dir-form input[type="email"],
.bib-dir .bib-dir-form input[type="url"], .bib-dir .bib-dir-form input[type="tel"],
.bib-dir .bib-dir-form select, .bib-dir .bib-dir-form textarea {
	border: 1px solid #cfcfcf; border-radius: 8px; padding: 11px 14px;
}
.bib-dir .bib-dir-form label { display: block; line-height: 1.3; }
.bib-dir .bib-dir-form .bib-dir-form__check label { display: flex; }

/* ===================================================================
   Header menu [bib_nav] — gold #EFBD2B, black, Nunito, pill buttons
   =================================================================== */
.bib-nav{position:relative;display:flex;align-items:center;justify-content:flex-end;font-family:'Nunito',sans-serif}
.bib-nav .bib-nav-panel{display:flex;align-items:center;gap:28px}
.bib-nav ul.bib-nav-list{display:flex;align-items:center;gap:4px;margin:0;padding:0;list-style:none}
.bib-nav ul.bib-nav-list li{position:relative;margin:0;padding:0}
.bib-nav ul.bib-nav-list a{display:block;padding:10px 12px;color:#000;font-weight:700;font-size:17px;line-height:1.2;text-decoration:none;white-space:nowrap}
.bib-nav ul.bib-nav-list > li > a{position:relative}
/* Underline sits inside the link's padding so menu text stays centred with the logo and button. */
.bib-nav ul.bib-nav-list > li > a::after{content:'';position:absolute;left:12px;right:12px;bottom:2px;height:3px;border-radius:3px;background:#EFBD2B;transform:scaleX(0);transition:transform .25s}
.bib-nav ul.bib-nav-list > li > a:hover::after,.bib-nav ul.bib-nav-list > li > a:focus-visible::after,
.bib-nav ul.bib-nav-list > li.current-menu-item > a::after,.bib-nav ul.bib-nav-list > li.current-menu-ancestor > a::after{transform:scaleX(1)}
.bib-nav ul.bib-nav-list a:focus-visible{outline:3px solid #EFBD2B;outline-offset:2px;border-radius:6px}
.bib-nav ul.bib-nav-list .sub-menu{position:absolute;top:100%;left:0;z-index:50;min-width:220px;margin:0;padding:8px 0;list-style:none;background:#fff;border-top:4px solid #EFBD2B;box-shadow:0 12px 30px rgba(0,0,0,.15);opacity:0;visibility:hidden;transition:opacity .2s}
.bib-nav ul.bib-nav-list li:hover > .sub-menu,.bib-nav ul.bib-nav-list li:focus-within > .sub-menu{opacity:1;visibility:visible}
.bib-nav ul.bib-nav-list .sub-menu a{padding:10px 18px;font-size:16px}
.bib-nav ul.bib-nav-list .sub-menu a:hover{background:#fdf5dc}
.bib-nav a.bib-nav-cta{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;background:#EFBD2B;color:#000;border:2px solid #000;border-radius:53px;font-weight:700;font-size:17px;line-height:1.2;text-decoration:none;white-space:nowrap;box-shadow:-6px 4px 1px rgba(0,0,0,.5);transition:background-color .3s,color .3s,border-color .3s,transform .3s}
.bib-nav a.bib-nav-cta:hover,.bib-nav a.bib-nav-cta:focus-visible{background:#000;color:#EFBD2B;border-color:#EFBD2B;transform:translateY(-1px)}
.bib-nav button.bib-nav-toggle{display:none;align-items:center;gap:10px;margin:0;padding:12px 18px;background:#000;color:#fff;border:2px solid #000;border-radius:53px;font-family:'Nunito',sans-serif;font-weight:700;font-size:16px;line-height:1;cursor:pointer;box-shadow:none;transition:background-color .3s,color .3s}
.bib-nav button.bib-nav-toggle:hover,.bib-nav button.bib-nav-toggle:focus-visible{background:#EFBD2B;color:#000}
.bib-nav .bib-nav-bars,.bib-nav .bib-nav-bars span,.bib-nav .bib-nav-bars::before,.bib-nav .bib-nav-bars::after{display:block;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform .25s,opacity .25s}
.bib-nav .bib-nav-bars{position:relative;background:none}
.bib-nav .bib-nav-bars::before,.bib-nav .bib-nav-bars::after{content:'';position:absolute;left:0}
.bib-nav .bib-nav-bars::before{top:-6px}.bib-nav .bib-nav-bars::after{top:6px}
.bib-nav.is-open .bib-nav-bars span{opacity:0}
.bib-nav.is-open .bib-nav-bars::before{transform:translateY(6px) rotate(45deg)}
.bib-nav.is-open .bib-nav-bars::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:1200px){
	.bib-nav .bib-nav-panel{gap:16px}
	.bib-nav ul.bib-nav-list a{padding:10px 8px;font-size:16px}
	.bib-nav ul.bib-nav-list > li > a::after{left:8px;right:8px}
	.bib-nav a.bib-nav-cta{padding:12px 22px;font-size:16px}
}
@media (max-width:1024px){
	.bib-nav button.bib-nav-toggle{display:inline-flex}
	.bib-nav .bib-nav-panel{display:none;position:absolute;top:calc(100% + 14px);right:0;z-index:999;width:min(340px,calc(100vw - 32px));flex-direction:column;align-items:stretch;gap:12px;padding:14px 18px 20px;background:#fff;border-top:4px solid #EFBD2B;border-radius:0 0 14px 14px;box-shadow:0 18px 40px rgba(0,0,0,.18)}
	.bib-nav.is-open .bib-nav-panel{display:flex}
	.bib-nav ul.bib-nav-list{flex-direction:column;align-items:stretch;gap:0}
	.bib-nav ul.bib-nav-list > li{border-bottom:1px solid #eee}
	.bib-nav ul.bib-nav-list a{padding:14px 4px;font-size:18px}
	.bib-nav ul.bib-nav-list > li > a::after{display:none}
	.bib-nav ul.bib-nav-list > li.current-menu-item > a{color:#000;box-shadow:inset 4px 0 0 #EFBD2B;padding-left:14px}
	.bib-nav ul.bib-nav-list .sub-menu{position:static;opacity:1;visibility:visible;box-shadow:none;border:0;padding:0 0 8px 14px;min-width:0}
	.bib-nav a.bib-nav-cta{margin-top:6px;font-size:17px;padding:14px 22px}
}
/* Top bar links */
.bib-topbar a{color:#EFBD2B;text-decoration:none;font-weight:700}
.bib-topbar a:hover,.bib-topbar a:focus-visible{color:#fff;text-decoration:underline}
/* The header now sits above the home page photo (1.2.x floated it over the photo). */
body.home #masthead{position:relative!important;top:auto!important}
