:root {
	--bosla-color-navy: #102a4c;
	--bosla-color-blue: #246bfe;
	--bosla-color-ink: #172033;
	--bosla-color-muted: #5f6f89;
	--bosla-color-surface: #f5f8fc;
	--bosla-color-white: #fff;
	--bosla-shadow: 0 0.75rem 2rem rgb(16 42 76 / 10%);
	--bosla-font-latin: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--bosla-font-arabic: "El Messiri", Tahoma, Arial, sans-serif;
	--bosla-base-size: 1rem;
	--bosla-line-height: 1.6;
	--bosla-container: 76rem;
	--bosla-button-radius: .5rem;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	color: var(--bosla-color-ink);
	font-family: var(--bosla-font-latin);
	font-size: var(--bosla-base-size);
	line-height: var(--bosla-line-height);
}

html[dir="rtl"] {
	font-family: var(--bosla-font-arabic);
}

body {
	background: var(--bosla-color-white);
	margin: 0;
}

a {
	color: var(--bosla-color-blue);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 0.1875rem solid var(--bosla-color-blue);
	outline-offset: 0.1875rem;
}

.site-shell {
	margin-inline: auto;
	max-width: var(--bosla-container);
	padding-inline: 1rem;
}

.site-header,
.site-footer {
	background: var(--bosla-color-navy);
	color: var(--bosla-color-white);
}

.site-header {
	box-shadow: 0 0.35rem 1.25rem rgb(5 22 45 / 18%);
	position: sticky;
	top: 0;
	z-index: 9990;
}
.site-header.is-static{position:relative}.site-header.is-transparent{background:transparent;position:absolute;width:100%}.site-header__actions{align-items:center;display:flex;gap:.75rem}.site-header__actions>a{text-decoration:none}.bosla-back-to-top{background:var(--bosla-primary,#246bfe);border:0;border-radius:50%;bottom:1rem;color:#fff;cursor:pointer;height:3rem;position:fixed;right:1rem;width:3rem;z-index:20}

.admin-bar .site-header {
	top: 32px;
}

.site-header__inner,
.site-footer__inner {
	align-items: center;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	min-height: 4.5rem;
}
.site-header--centered .site-header__inner{flex-direction:column;justify-content:center;padding-block:.75rem}.site-header--compact .site-header__inner{min-height:3.5rem}.site-header--compact .primary-navigation a{padding:.35rem .6rem}

.site-title,
.site-header a,
.site-footer a {
	color: inherit;
}

.site-branding { flex: 0 0 auto; font-size: 1.125rem; font-weight: 800; }
.custom-logo-link { display: block; line-height: 0; }
.custom-logo { block-size: auto; max-block-size: 3rem; inline-size: auto; }
.primary-navigation { min-inline-size: 0; }
.primary-navigation ul {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	justify-content: flex-end;
	list-style: none;
	margin: 0;
	padding: 0;
}
.primary-navigation li { margin: 0; }
.primary-navigation a {
	border-radius: 0.5rem;
	display: block;
	font-weight: 700;
	padding: 0.55rem 0.8rem;
	text-decoration: none;
}
.primary-navigation a:hover,
.primary-navigation .current-menu-item > a,
.primary-navigation .current_page_item > a { background: rgb(255 255 255 / 14%); color: var(--bosla-color-white); }
.footer-navigation ul { display: flex; flex-wrap: wrap; gap: 0.35rem 1rem; justify-content: flex-end; list-style: none; margin: 0; padding: 0; }
.footer-navigation li { margin: 0; }
.footer-navigation a { display: block; padding-block: 0.25rem; text-decoration: none; }
.site-footer__copyright { margin: 0; }
.bosla-announcement{background:var(--bosla-primary,#246bfe);color:#fff;font-weight:700;padding:.65rem 0;text-align:center}.bosla-announcement .site-shell{align-items:center;display:flex;gap:1rem;justify-content:center}.bosla-announcement a{color:inherit}.bosla-announcement button{background:transparent;border:0;color:inherit;cursor:pointer;font-size:1.35rem}.bosla-announcement--accent{background:var(--bosla-accent,#18a9e1)}.bosla-announcement--dark{background:#172033}.bosla-announcement--light{background:#eef4ff;color:#172033}.bosla-radius-none :is(.course-card,.category-card,.homepage-section){border-radius:0}.bosla-radius-small :is(.course-card,.category-card){border-radius:.5rem}.bosla-radius-large :is(.course-card,.category-card){border-radius:1.25rem}.bosla-shadow-none :is(.course-card,.category-card){box-shadow:none}.bosla-shadow-medium :is(.course-card,.category-card){box-shadow:0 12px 32px rgb(16 42 76 / 15%)}.bosla-shadow-strong :is(.course-card,.category-card){box-shadow:0 18px 48px rgb(16 42 76 / 24%)}.bosla-focus-visible :focus-visible{outline:3px solid var(--bosla-accent,#18a9e1);outline-offset:3px}.bosla-underline-links main a{text-decoration:underline}.bosla-lead{background:var(--bosla-surface,#f5f8fc);border-radius:1rem;margin-block:2rem;padding:2rem;text-align:center}.bosla-lead form{display:flex;gap:.75rem;justify-content:center}.bosla-lead input{min-height:44px;padding:.6rem 1rem}.bosla-lead button{background:var(--bosla-primary,#246bfe);border:0;border-radius:.5rem;color:#fff;padding:.6rem 1.2rem}.bosla-catalogue__filters{align-items:end;background:var(--bosla-color-surface,#f5f8fc);border-radius:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr auto;margin-block:2rem;padding:1rem}.bosla-catalogue__filters label{display:grid;gap:.35rem}.bosla-catalogue__filters input,.bosla-catalogue__filters select{min-height:44px;padding:.55rem}.bosla-catalogue__filters button{background:var(--bosla-primary,#246bfe);border:0;border-radius:.6rem;color:#fff;min-height:44px;padding:.6rem 1.2rem}@media(max-width:700px){.bosla-catalogue__filters{grid-template-columns:1fr}}@media(max-width:600px){.bosla-hide-mobile-decorations [aria-hidden=true]{display:none!important}.bosla-lead form{align-items:stretch;flex-direction:column}}
.site-footer__grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));padding-block:2.5rem}.site-footer__grid h2{font-size:1rem;margin:0 0 .75rem}.site-footer__grid p{color:#d6e1f2;font-size:.9rem}.site-footer__bottom{border-top:1px solid rgb(255 255 255 / 15%);padding-block:1rem;text-align:center}.site-footer--minimal .site-footer__grid{grid-template-columns:minmax(0,1fr);text-align:center}.site-footer__social{display:flex;flex-wrap:wrap;gap:.75rem;padding-block:0 1rem}.site-footer__social a{border:1px solid rgb(255 255 255 / 20%);border-radius:999px;padding:.25rem .6rem;text-decoration:none}.site-footer__widget{margin-block:1rem}

.site-main {
	padding-block: 2rem 4rem;
	min-inline-size: 0;
}

.entry-title {
	line-height: 1.2;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

img,
svg { max-inline-size: 100%; }

.screen-reader-text {
	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;
}

.screen-reader-text:focus {
	clip: auto;
	clip-path: none;
	display: block;
	height: auto;
	inset-inline-start: 1rem;
	top: 1rem;
	width: auto;
	z-index: 100000;
}

@media (max-width: 44rem) {
	.site-header__inner,
	.site-footer__inner {
		align-items: flex-start;
		flex-direction: column;
		justify-content: center;
		padding-block: 1rem;
	}
	.primary-navigation,
	.primary-navigation ul { inline-size: 100%; }
	.primary-navigation ul { align-items: stretch; justify-content: flex-start; }
	.primary-navigation li { flex: 1 1 auto; }
	.primary-navigation a { text-align: center; }
	.footer-navigation ul { justify-content: flex-start; }
	.site-footer__grid { grid-template-columns:1fr; }
}

@media (max-width: 782px) {
	.admin-bar .site-header {
		top: 46px;
	}
}
.bosla-heading-center .homepage-section>header,.bosla-heading-center .bosla-section-heading{text-align:center}.bosla-heading-end .homepage-section>header,.bosla-heading-end .bosla-section-heading{text-align:end}.bosla-space-compact .homepage-section{padding-block:2rem}.bosla-space-standard .homepage-section{padding-block:4rem}.bosla-space-generous .homepage-section{padding-block:clamp(4rem,8vw,7rem)}.bosla-radius-none .bosla-course-card{border-radius:0}.bosla-radius-small .bosla-course-card{border-radius:.5rem}.bosla-radius-large .bosla-course-card{border-radius:1.25rem}.bosla-shadow-none .bosla-course-card{box-shadow:none}.bosla-shadow-medium .bosla-course-card{box-shadow:0 12px 32px rgb(16 42 76 / 15%)}.bosla-shadow-strong .bosla-course-card{box-shadow:0 18px 48px rgb(16 42 76 / 24%)}

/* Long learner/instructor names must not force native LMS cards beyond mobile width. */
.mj-dashboard__head, .mj-dashboard__head > *, .mj-instructor-card > div {
	min-inline-size: 0;
	overflow-wrap: anywhere;
}
.mj-instructor-card > div { flex: 1; }

/* Advertising slots stay within the page and reserve only configured space. */
.bosla-ad-slot{box-sizing:border-box;max-inline-size:100%;margin:24px auto;padding:0 16px;overflow-wrap:anywhere}.bosla-ad-slot iframe,.bosla-ad-slot img,.bosla-ad-slot ins{max-inline-size:100%}.lp-body>.bosla-ad-slot,.bp-directory-grid>.bosla-ad-slot{grid-column:1 / -1}
@media(max-width:44rem){.site-header .primary-navigation,.site-header .primary-navigation ul{max-inline-size:100%;min-inline-size:0}.site-header .primary-navigation ul{flex-wrap:wrap!important;white-space:normal}}
.portal-block--books .portal-tile{min-inline-size:0;overflow-wrap:anywhere}.portal-block--books .portal-tile :is(h2,p){min-inline-size:0;overflow-wrap:anywhere}
@media(max-width:640px){.portal-block--books .portal-block__items{grid-template-columns:minmax(0,1fr)}}
