/* 01. Typography */
/* 02. Top Bar */
/* 03. Navigation */
/* 04. Search Results */
/* 05. Posts */
/* --> Posts list module */
/* 06. Careers */
/* 07. Modules */
/* 08. LearnDash */
/* 09. Forums */
/* 10. Members */

/* 01. Typography */
html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

:root {
	--lcni-blue: #444c8b;
	--lcni-green: #00808a;
	--lcni-pink: #c9115b;
	--lcni-orange: #e1542b;
	--black: #000;
	--white: #fff;
}

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

/* a:hover, input:hover {
	outline-offset: 8px !important;
	outline: 2px solid var(--lcni-green) !important;
}

a:focus, input:focus {
	outline-offset: 8px !important;
	outline: 2px solid var(--lcni-orange) !important;
} */

#organisation-map a:focus {
	outline: none !important;
}

.p-no-margin p {
	margin-bottom: 0 !important;
}

.display-none {
	display: none;
	width: 0px;
	height: 0px;
	overflow: hidden;
	padding: 0;
	margin: 0;
	opacity: 0;
}

.flex-middle {
	align-content: center;
}

.position-relative {
	position: relative;
}

.position-absolute {
	position: absolute;
}

#fl-main-content h1 a,
#fl-main-content h2 a,
#fl-main-content h3 a,
#fl-main-content h4 a,
#fl-main-content h5 a,
#fl-main-content h6 a {
	text-decoration: none;
}

/* 02. Top Bar */
@media screen and (max-width: 768px) {
	.mobile-hide {
		display: none;
	}
	.fl-button-group-buttons:has(.mobile-hide) .fl-button-icon {
		margin-right: 0;
	}
	.fl-button-group-buttons {
		display: flex;
	}
	.fl-button-group-button, .fl-button-wrap, .fl-button-wrap .fl-button, .fl-button-wrap .fl-button .fl-button-text {
		display: flex;
		flex-wrap: nowrap;
		flex-grow: 1;
		justify-content: center;
	}
}

/* 03. Navigation */
.fl-search-form-fields .fl-button-wrap .fl-button {
	padding-right: 0;
	padding-left: 0;
	margin-left: 10px;
}

#breadcrumb {
	text-align: left;
	font-size: 0.7em;
}

#breadcrumb.left {
	text-align: left;
}

font {
    color: unset !important;
}

.skiptranslate.goog-te-gadget {
    display: none !important;
}

.languages {
    list-style: none;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    padding: 0;
    font-size: 0.9em;
    gap: 20px;
}

@media screen and (max-width: 768px) {
	.languages {
		grid-template-columns: 1fr;
	}
}

.languages li, .languages li a, .languages li a span {
    display: block;
    text-decoration: none !important;
    color: var(--black);
}

.languages li a span {
    font-size: 0.9em;
    color: var(--lcni-pink);
}

#filtered {
    line-height: 2em;
    margin: 0 0 2em 0;
    font-size: 1em;
    border-color: var(--black);
    color: var(--black);
}

/* Language modal window popup */
.fl-node-2emyglqatuj5-3.fl-button-lightbox-content,
.fl-node-eshki6xb9l8p-0.fl-button-lightbox-content {
	width: 70vw;
    max-width: 1348px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
	border-radius: 18px;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
}


.fl-node-2emyglqatuj5-3.fl-button-lightbox-content .fl-module-content,
.fl-node-eshki6xb9l8p-0.fl-button-lightbox-content .fl-module-content{
	margin: 0 !important;
}

.asw-menu-content .asw-card:first-child {
	display: none !important;
}

body:not(.single-careers) .mfp-bg {
	background: rgba(255,255,255,0.3) !important;
}

body:not(.single-careers) .mfp-inline-holder {
	padding: 2em !important;
}

body:not(.single-careers) .mfp-content {
	vertical-align: top !important;
}

body:not(.single-careers) .mfp-close {
    font-size: 3.4em !important;
    opacity: 1 !important;
	width: unset !important;
	display: flex !important;
}

body:not(.single-careers) .mfp-close:after {
	content: "Close";
	font-size: 0.4em !important;
	padding: 0 1em;
	color: var(--white);
	background: var(--lcni-pink);
	border-radius: 12px;
}

.landscape img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

.readonly input {
	pointer-events: none;
	opacity: 0.9;
	user-select: none;
}

/* 04. Search Results */
#search_results img {
    aspect-ratio: 3 /2 !important;
    object-fit: cover;
}

/* 05. Posts */
#post_bio {
	font-size: 0.9em;
}

#post_bio .fl-module-content {
    border-radius: 0px 30px 30px 30px;
}

.superseded-post .fl-icon-wrap {
	color: var(--lcni-orange);
	border-bottom: 1px solid var(--lcni-orange);
}

.last-updated .fl-icon-wrap {
	color: var(--lcni-black);
	border-bottom: 1px solid var(--black);
}

.last-updated .fl-icon-text-wrap:before {
    content: "Last updated on";
}

/* Posts lists module */
@media screen and (min-width: 769px) {
	.two-col .fl-post-feed-post {
		display: grid;
		align-items: center;
		grid-template-columns: 1fr 1.4fr;
	}
}

.fl-post-image a {
	display: block;
	border: 1px solid #cacaca;
	margin: 10px 0 0;
}

.post-aspect img {
    aspect-ratio: 2 /1.3;
    object-fit: cover;
}

/* Post archives */
.widgettitle {
    font-size: 1.4em;
    margin: 0 0 20px 0;
}

.widget_tag_cloud a {
    font-size: 0.9em !important;
    background: #fefefe;
    padding: 8px 12px;
    border-radius: 14px;
    border: 1px solid var(--lcni-blue);
    text-decoration: none !important;
    color: var(--lcni-blue);
	white-space: nowrap;
}

.large_tags .widget_tag_cloud a {
    font-size: 1em !important;
    padding: 10px 18px;
    border-radius: 18px;
    border: 1px solid var(--lcni-green);
    color: var(--lcni-green);
}


/* 06. Careers */
/* Meta */
.meta-margin ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.meta-margin ul li {
    display: inline-block;
    background: var(--lcni-blue);
    padding: 0 24px;
    color: var(--white);
    margin: 0 12px 0 0;
    border-radius: 18px;
}
/* Docs */
#meta-docs ul {
	list-style: none;
    margin: 0;
    padding: 0;
}

#meta-docs ul li a:before {
	content: "\f019";
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	color: var(--white);
	padding: 0 10px 0 0;
}
/* Form job applying for - read only */
.single-careers #input_2_7 {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	cursor: pointer;
	opacity: 0.8;
}

/* 07. Modules */
details summary {
    background: var(--lcni-green);
    color: var(--white);
    padding: 12px;
    margin: 12px 0;
}

details summary:before {
    display: inline-block;
	content: "\0024D8";
	padding-right: 16px;
}

details[open] summary {
    background: var(--black);
}

/* 08. LearnDash */
.learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo {
	padding: .1em !important;
}

.ld-course-navigation-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
}

.learndash-wrapper .ld-expand-button {
    justify-content: unset !important;
	width: unset !important;
	max-width: unset !important;
	margin: 0 0 1.5em !important;
}

/* .fl-post-thumb img {
    height: auto !important;
    width: 100%;
    max-height: 40vh;
    object-fit: cover;
    border-radius: 6px;
} */

.learndash-course-grid .author {
	display: none !important;
}

/* Materials */

div:not([aria-labelledby^="ld-materials-tab-"]) .wp-block-list {
    margin: 8px 20px !important;
}

/* General link icon styling */
div[aria-labelledby^="ld-materials-tab-"] a::before {
  display: inline-block;
  margin-right: 0.3em;
}

div[aria-labelledby^="ld-materials-tab-"] ul,
div[aria-labelledby^="ld-materials-tab-"] .wp-block-list {
	display: grid !important;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
    align-items: stretch;
	margin: 0 !important;
	padding-left: 0 !important;
}

@media screen and (max-width: 980px) {
	div[aria-labelledby^="ld-materials-tab-"] ul,
	div[aria-labelledby^="ld-materials-tab-"] .wp-block-list {
	grid-template-columns: 1fr;
	}
}

div[aria-labelledby^="ld-materials-tab-"] ul li,
div[aria-labelledby^="ld-materials-tab-"] .wp-block-list li {
	font-size: 0.92em !important;
    background: #f0f3f6;
    list-style: none;
    padding: 12px;
}

div[aria-labelledby^="ld-materials-tab-"] ul li a,
div[aria-labelledby^="ld-materials-tab-"] .wp-block-list li a {
	font-size: 1em !important;
}

/* PDF links */
/* External links (not lawcentreni.org) */
div[aria-labelledby^="ld-materials-tab-"] a[href^="http"]:not([href*="lawcentreni.org"])::before {
  content: "🌐";
}

/* Internal links (lawcentreni.org or relative) */
div[aria-labelledby^="ld-materials-tab-"] a[href*="lawcentreni.org"]::before,
div[aria-labelledby^="ld-materials-tab-"] a[href^="/"]::before {
  content: "🏠";
}

div[aria-labelledby^="ld-materials-tab-"] a[href$=".pdf"]::before {
  content: "📄" !important;
}

/* Word document links */
div[aria-labelledby^="ld-materials-tab-"] a[href$=".doc"]::before, 
div[aria-labelledby^="ld-materials-tab-"] a[href$=".docx"]::before {
  content: "📝" !important;
}

/* PowerPoint document links */
div[aria-labelledby^="ld-materials-tab-"] a[href$=".ppt"]::before, 
div[aria-labelledby^="ld-materials-tab-"] a[href$=".pptx"]::before {
  content: "📊" !important;
}

/* Course grid */
.section.total-students {
	display: none !important;
}

/* Course status */
#enrollment_status .ld-course-status-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-items: center;
    justify-content: space-around;
}

/* #enrollment_status .ld-course-status-bar > div {
    width: 50%;
    text-align: center;
}

#enrollment_status .ld-course-status-bar > div:last-child {
    width: 100%;
} */

#enrollment_status .ld-course-status-bar > div > strong {
    display: block;
    font-variant: all-small-caps;
	color: var(--lcni-green);
}

#enrollment_status .learndash-wrapper:not(.ld-registration__outer-wrapper) .btn-join {
    max-width: unset !important;
    border-radius: 16px;
    margin-top: 10px;
    text-align: center;
    background: var(--lcni-green);
    text-transform: uppercase;
}

#enrollment_status .learndash-wrapper:not(.ld-registration__outer-wrapper) .btn-join:hover {
    background: var(--black);
}

#enrollment_status .members-price {
    font-size: 0.67em;
    padding: 0 16px;
    border-radius: 16px;
    background: var(--lcni-orange);
    color: var(--white);
    margin-left: 10px;
}

#enrollment_status .ld-price > span {
    align-items: center;
    justify-content: center;
    display: flex;
}

/* Styling fixes */
.learndash-wrapper:not(.ld-registration__outer-wrapper) .ld-focus-header #learndash_mark_complete_button, .learndash-wrapper:not(.ld-registration__outer-wrapper) .ld-focus-header .learndash_mark_complete_button {
	padding: 0.6em 1em !important;
	font-size: 0.7em !important;
}

/* Course archives */
.fl-course-type > span > span {
    background: var(--lcni-orange);
    font-size: 0.7em !important;
    color: var(--white);
    padding: 3px 9px;
    border-radius: 9px;
    text-transform: uppercase;
    margin-right: 9px;
	pointer-events: none;
}

.course-meta .learndash-wrapper .learndash-course-visitor-message p {
	display: none;
}

.course-meta .learndash-wrapper > div {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
	justify-content: space-between;
}

/* 09. Forums */
#bbpress-forums, #bbpress-forums ul.bbp-forums, #bbpress-forums ul.bbp-lead-topic, #bbpress-forums ul.bbp-replies, #bbpress-forums ul.bbp-search-results, #bbpress-forums ul.bbp-topics, div.bbp-template-notice li, div.bbp-template-notice p, div.bbp-template-notice li, div.bbp-template-notice p {
	font-size: 1em !important;
	line-height: unset !important;
}

#bbpress-forums div.bbp-the-content-wrapper textarea.bbp-the-content {
	font-size: 0.92em !important;
	line-height: 1.12em !important;
}

span.bbp-admin-links a {
	font-size: 0.9em !important;
	line-height: 1em !important
}

.single-forum .fl-heading .fl-heading-text:after {
	content: " forums";
}

/* 10. Members */
#account-profile table {
	width: 100%;
}

/*  11. Directory */
#organisation-map {
	height: 50vh;
}

@media screen and (min-width: 1029px) {
	#organisation-map {
		height: 100vh;
		width: 100%;
	}
	#organisation-list-container {
		height: 100vh;
		overflow-y: scroll;
	}
}

#organisation-list {
	padding: 0;
	list-style: none;
}


#organisation-list-container {
  --sb-track-color: #d8f0f2;
  --sb-thumb-color: #00808a;
  --sb-size: 14px;
}

#organisation-list-container::-webkit-scrollbar {
  width: var(--sb-size)
}

#organisation-list-container::-webkit-scrollbar-track {
  background: var(--sb-track-color);
  border-radius: 3px;
}

#organisation-list-container::-webkit-scrollbar-thumb {
  background: var(--sb-thumb-color);
  border-radius: 3px;
}

#organisation-list-container h2 {
	line-height: 0.8em;
}

#organisation-list-container h2 a {
	font-size: 0.6em;
	text-decoration: none !important;
}

.organisation-list-item {
	margin-bottom: 40px;
	padding-bottom: 40px;
}

.organisation-list-item:not(:last-child) {
	border-bottom: 1px solid rgba(0,0,0,0.1);
}

.organisation-header {
	display: flex;
	align-items: center;
    gap: 20px;
	margin-bottom: 20px;
}

.organisation-header img {
	width: 100px;
	height: 100px;
	object-fit: contain;
	border: 1px solid rgba(0,0,0,0.1);
	box-shadow: 4px 4px 0px var(--lcni-green);
	border-radius: 12px;
}

.organisation-details .meta {
	font-size: 0.7em;
	line-height: 1.1em;
	white-space: nowrap;
}

.organisation-details .meta.councils {
	display: none;
}

@supports not selector(::-webkit-scrollbar) {
  #organisation-list-container {
    scrollbar-color: var(--sb-thumb-color)
                     var(--sb-track-color);
  }
}

.organisation-contact {
	margin-top: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.gm-svpc div img {
    position: relative !important;
}

/* WooCommerce */
.woocommerce-MyAccount-navigation-link--payment-methods {
	display: none;
}

.post-type-archive-product .woocommerce div.product form.cart {
	margin: 0 !important;
}

/* .post-type-archive-product .fl-theme-builder-woo-notices {
	display: none;
} */

.full-height-booking .fl-col-content {
    min-height: calc(100vh - 101px);
    background-color: #f4f9f9 !important;
}

/* My Account */
.woocommerce-account .woocommerce-MyAccount-navigation {
	display: none;
}
.woocommerce-account .woocommerce-MyAccount-content {
	float: unset !important;
	width: unset !important;
}

.variation-table p {
    padding: 0 !important;
    border: none !important;
}

.variation-table {
	background: #fff;
    border: 2px solid #e2e7ed;
    margin: 1em 0;
}

.learndash-wrapper .ld-item-list .ld-item-list-item {
	border-radius: 0px !important;
}

button.single_add_to_cart_button.button.alt,
button.single_add_to_cart_button.button.alt:hover,
.woocommerce div.product form.cart .variations select, .woocommerce-page div.product form.cart .variations select,
.woocommerce div.product form.cart .variations select:hover, .woocommerce-page div.product form.cart .variations select:hover {
    float: unset;
    width: 100%;
    padding: 18px !important;
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #cfd7df !important;
    border-radius: 4px !important;
    box-shadow: 0 1px 3px 0 #e6ebf1 !important;
    -webkit-transition: box-shadow 150ms ease;
    transition: box-shadow 150ms ease;
}

.woocommerce div.product form.cart .variations select, .woocommerce-page div.product form.cart .variations select,
.woocommerce div.product form.cart .variations select:hover, .woocommerce-page div.product form.cart .variations select:hover {
	padding: 8px 20px !important;
}

button.single_add_to_cart_button.button.alt:hover,
.woocommerce div.product form.cart .variations select:hover, .woocommerce-page div.product form.cart .variations select:hover {
     box-shadow: 0 3px 6px 0 #e6ebf1 !important;
}

.reset_variations,
.stock.in-stock {
	display: none !important;
}