/* Fonts */
@font-face {
	font-family: 'Montserrat';
	src: url('/assets/fonts/montserrat/Montserrat-VariableFont.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}

/* Colors */
:root {
	--accent-color: #2163AD;
	--accent-light-color: #5fa9ff;
	--accent-extralight-color: #deeeff;

	--alert-color: #ff5800;
	--control-color: #b1b1b1ff;

	--menu-icon-color: #2163AD;
	--menu-icon-color-hover: #2980b9;
	--menu-text-color: #1a2028;
	--menu-mobile-text-color: #2163AD;
	--menu-text-color-hover: #2163AD;
	--menu-icon-filter: brightness(0) saturate(100%) invert(44%) sepia(93%) saturate(1558%) hue-rotate(183deg) brightness(95%) contrast(89%);

	--text-common-color: #333;
	--text-common-white: white;
	--text-link-color: #1176ea;

	--background-common: white;
	--background-dark-semi: rgba(0, 0, 0, 0.6);

	--sidebar-background-color: #eee;
	--sidebar-background-color-hover: #ddd;
	--sidebar-text-color: var(--text-common-color);
	--sidebar-corner-radius: var(--corner-radius-default);
	--sidebar-link-color: #1176ea;

	--corner-radius-default: 12px;
	--corner-radius-small: 8px;
	
	--padding-small: 8px;
	--padding-default: 16px;

	--button-corner-radius: 8px;

	--decor-underline-width: 2px;
	--decor-underline-color-active: var(--alert-color);
	--decor-underline-color-inactive: transparent;
	
}

/* Common styles */
#backToTop {
	transition: all 0.3s ease;
}

#backToTop:hover {
	transform: translateY(-3px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2) !important;
}

.bg-accent {
	background-color: var(--accent-color);
	color: var(--text-common-white);
	transition: background-color 0.3s ease;
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 400 !important;
	font-size: medium !important;
}

.bg-dark-semi {
	background-color: var(--background-dark-semi);
	color: var(--text-common-white);
	transition: background-color 0.3s ease;
}

.text-common-white {
	color: var(--text-common-white);
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 400 !important;
	font-size: medium !important;
}

.text, .text-common {
	color: var(--text-common);
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 400 !important;
	font-size: medium !important;
}

.text-subtitle-white {
	color: var(--text-common-white);
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 500 !important;
	font-size: large !important;
}

.text-subtitle {
	color: var(--text-common);
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 500 !important;
	font-size: large !important;
}

.text-subtitle-accent {
	color: var(--accent-color);
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 500 !important;
	font-size: large !important;
}

.header-line {
	background-color: var(--accent-color);
	min-height: 40px !important;
}

.btn-close-alert {
	position: absolute;
	top: 1.25rem;
	right: 1.25rem;
	width: 2rem;
	height: 2rem;
	background: rgba(108, 117, 125, 0.1) !important;
	border: none;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #6c757d;
	transition: all 0.3s ease;
	cursor: pointer;
	padding: 0;
}

.btn-close-alert:hover {
	background: rgba(108, 117, 125, 0.2);
	color: #495057;
	transform: rotate(90deg);
}

.btn-close-alert:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(108, 117, 125, 0.3);
}

.close-icon {
	font-size: 1.1rem;
	line-height: 1;
}

.btn-primary {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 500;
	font-size: large;
	min-height: 40px !important;
	color: var(--text-common-white);
}

/* Content styles */
h1 {
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 600 !important;
	font-size: xx-large !important;
	text-decoration: none !important;
	margin-top: 1rem !important;
	margin-bottom: 1rem !important;
	color: var(--text-common-color) !important;
}

h2 {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 600;
	font-size: x-large;
	text-decoration: none;
	margin-top: 1rem;
	margin-bottom: 1rem;
	color: var(--text-common-color);
}

h3 {
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 600 !important;
	font-size: large !important;
	text-decoration: none !important;
	margin-top: 1rem !important;
	margin-bottom: 1rem !important;
	color: var(--text-common-color) !important;
}
div.com-content-article.item-page * h4 {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 600;
	font-size: medium;
	text-decoration: none;
	margin-top: 1rem;
	margin-bottom: 1rem;
	color: var(--text-common-color);
}

p,
div.com-content-article.item-page div.com-content-article__body p {
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 400 !important;
	font-size: medium !important;
	text-decoration: none !important;
	color: var(--text-common-color) !important;
}

div.com-content-article.item-page div.com-content-article__body ul li,
div.com-content-article.item-page div.com-content-article__body div.text div.text ul li {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 500;
	font-size: medium;
	text-decoration: none;
	color: var(--text-common-color);
}

div.com-content-article.item-page div.com-content-article__body div.text div.text dl dd {
	font-family: 'Montserrat', 'open-sans';
	font-style: italic;
	font-weight: 500;
	font-size: medium;
	text-decoration: none;
	color: var(--text-common-color);
}

div.com-content-article.item-page div.com-content-article__body ol li {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 400;
	font-size: medium;
	text-decoration: none;
	color: var(--text-common-color);
}

/* Forms */
div.jo-form-container * textarea.form-control,
div.jo-form-container * label {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 500;
	font-size: medium;
	text-decoration: none;
	color: var(--text-common-color);
}

div.jo-form-container * div.jo-html-field {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 600;
	font-size: medium;
	text-decoration: none;
	color: var(--text-common-color);
}
 
/* Breadcrumbs */
.mod-breadcrumbs__wrapper {
	width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box !important;
		font-family: 'Montserrat', 'open-sans';
			font-weight: 400;
			font-size: medium;
			text-decoration: none;
}
@media (min-width: 576px) {
	.mod-breadcrumbs__wrapper {
		max-width: 540px;
	}
}
@media (min-width: 768px) {
	.mod-breadcrumbs__wrapper {
		max-width: 720px;
	}
}
@media (min-width: 992px) {
	.mod-breadcrumbs__wrapper {
		max-width: 960px;
	}
}
@media (min-width: 1200px) {
	.mod-breadcrumbs__wrapper {
		max-width: 1140px;
	}
}
@media (min-width: 1400px) {
	.mod-breadcrumbs__wrapper {
		max-width: 1320px;
	}
}

/* Sidebar */
.sidebar {
	margin: 8px;
	margin-top: 16px;
	padding: 8px;
	padding-top: 16px;
	background-color: var(--sidebar-background-color);
	border-radius: var(--sidebar-corner-radius);
}
.sidebar:hover {
	background-color: var(--sidebar-background-color-hover);
}
html body div.container div.row div.col-md-4.col-lg-3.order-0.order-md-1 aside.sidebar * a 	{
	color: var(--sidebar-link-color) !important;
	font-size: medium;
	font-weight: 500;
	font-family: 'Montserrat', 'open-sans';
	text-decoration: none;
}
aside.sidebar * p {
	color: var(--sidebar-text-color) !important;
	font-size: large !important;
	font-weight: 600 !important;
	font-family: 'Montserrat', 'open-sans' !important;
	text-decoration: none !important;
	margin-left: 1rem !important;
}

html body div.container div.row div.col-md-4.col-lg-3.order-0.order-md-1 aside.sidebar ul.lnpd_item_wrapper li.lnpd_item_with_intro a.lnpd_item_title, a.lnpd_item_title span {
	color: var(--sidebar-link-color) !important;
	font-size: medium;
	font-weight: 400;
	font-family: 'Montserrat', 'open-sans';
	text-decoration: none;
}

li.lnpd_item_with_intro span.lnpd_item_date, li.lnpd_item_with_intro div.lnpd_item_introtext, .lnd_introdate {
	color: var(--sidebar-text-color) !important;
	font-size: medium;
	font-weight: 400;
	font-family: 'Montserrat', 'open-sans';
	text-decoration: none;
}

.mod-custom .custom {
	margin-top: 8px !important;
	/* padding-top: 8px; */
	/* border-top: #c6c6c6 1px solid !important; */
}

aside.sidebar * a img, aside.sidebar * i {
	width: 32px !important;
	height: 32px !important;
	margin-left: 8px !important;
	margin-right: 8px !important;
}

/* Tables */
div.com-content-article.item-page * .table-responsive tbody tr td {
	color: var(--text-common-color) !important;
	font-size: medium !important;
	font-weight: 400 !important;
	font-family: 'Montserrat', 'open-sans' !important;
	text-decoration: none !important;
}

div.com-content-article.item-page * .table-responsive tbody tr td strong {
	color: var(--text-common-color) !important;
	font-size: medium !important;
	font-weight: 600 !important;
	font-family: 'Montserrat', 'open-sans' !important;
	text-decoration: none !important;
}

div.com-content-article.item-page div.com-content-article__body * .table-responsive tbody tr td a {
	color: var(--text-link-color) !important;
	font-size: medium !important;
	font-weight: 500 !important;
	font-family: 'Montserrat', 'open-sans' !important;
	text-decoration: none !important;
}

/* Menu */
.navbar {
	background: var(--accent-extralight-color) !important;
}
.nav-link {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 400;
	font-size: larger;
}
.nav-link {
	color: var(--menu-text-color) !important;
}
.nav-link i {
	margin-right: 0.5rem;
	color: var(--menu-icon-color) !important;
}
.nav-icon {
	width: 32px;
	height: 32px;
	margin-right: 8px;
	filter: var(--menu-icon-filter);
	transition: filter 0.3s ease;
}
.nav-link:hover .nav-icon {
	filter: brightness(0) saturate(100%) invert(33%) sepia(93%) saturate(1558%) hue-rotate(183deg) brightness(75%) contrast(89%);
}
.nav-icon-fa {
	color: var(--menu-icon-color);
	font-size: 32px;
	transition: color 0.3s ease;
}
.nav-link:hover .nav-icon-fa {
	color: var(--menu-icon-color-hover);
}
.nav-icon {
	width: 32px;
	height: 32px;
	filter: var(--menu-icon-filter);
	transition: filter 0.3s ease;
}
.nav-link:hover .nav-icon {
	filter: brightness(0) saturate(100%) invert(33%) sepia(93%) saturate(1558%) hue-rotate(183deg) brightness(75%) contrast(89%);
}
.nav-icon-fa {
	color: var(--menu-icon-color);
	font-size: 32px;
	transition: color 0.3s ease;
}
.nav-link:hover .nav-icon-fa {
	color: var(--menu-icon-color-hover);
}
.dropdown-item {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 400;
	font-size: medium;
}

/* News */
div.com-content-category-blog.blog * dl.article-info.text-muted dd.published time {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 400;
	font-size: small;
}
ul.lnpd_item_wrapper {
	list-style: none !important;
	padding-left: 0 !important;
}
a.lnpd_item_title,
a.lnpd_item_title:hover,
a.lnpd_item_title:focus,
a.lnpd_item_title:active {
	color: var(--text-common) !important;
}
.lnpd_item_title span[itemprop="name"] {
	color: inherit !important;
}

@media (max-width: 500px) {	
	#newsBlock {
		display: none !important;
	}
}

/* Images */
.image-logo {
	height: 52px;
	margin-right: 16px;
}

div.com-content-article.item-page div.com-content-article__body table tbody tr td img,
img.pull-left,
.pull-left img {
	width: 240px !important;
	height: auto !important;
	object-fit: cover !important;
	border-radius: var(--corner-radius-default);
}

html body div.container div.row div.col-md-8.col-lg-9.order-1.order-md-0 main.main-content div.com-content-article.item-page div.com-content-article__body p img.pull-left.dontzoom,
html body div.container div.row div.col-md-12.col-lg-12.order-1.order-md-0 main.main-content div.com-content-article.item-page div.com-content-article__body p img.pull-left.dontzoom {
	width: 32px !important;
	height: auto !important;
}

.dontzoom {
	border-radius: 8px;
}

div.com-content-article.item-page * p img,
div.com-content-article.item-page * p img.pull-right,
div.com-content-article.item-page * p a img.pull-right,
div.com-content-article.item-page * p img.pull-left,
.pull-left img,
img[src*="/images/News/"] {
	width: 240px !important;
	height: auto !important;
	border-radius: 8px;
}

/* Advert cards */
  .sliding-u-l-r-l {
  	position: relative;
  	text-decoration: none;
  }

  .sliding-u-l-r-l .card-img-top {
  	position: relative;
  	overflow: hidden;
  }

  .sliding-u-l-r-l .card-img-top::after {
  	content: '';
  	position: absolute;
  	bottom: 0;
  	left: 0;
  	width: 100%;
  	height: 3px;
  	background-color: var(--alert-color) !important;
  	transform: scaleX(0);
  	transform-origin: bottom right;
  	transition: transform 0.3s ease;
  }

  .sliding-u-l-r-l:hover .card-img-top::after {
  	transform: scaleX(1);
  	transform-origin: bottom left;
  }

  .card-title {
  	font-family: 'Montserrat', 'open-sans' !important;
  	font-weight: 500 !important;
  	font-size: larger !important;
  	color: var(--accent-color) !important;
  }

  .card-text {
	font-family: 'Montserrat', 'open-sans' !important;
	font-weight: 400 !important;
	font-size: medium !important;
	color: var(--text-common-color) !important;
}

/* Menu */
.navbar {
	background: var(--accent-extralight-color) !important;
}
.nav-link {
	font-family: 'Montserrat', 'open-sans';
	font-weight: 400;
	font-size: larger;
}
.nav-link {
	color: var(--menu-text-color) !important;
}
.nav-link i {
	margin-right: 0.5rem;
	color: var(--menu-icon-color) !important;
}
.nav-icon {
	width: 32px;
	height: 32px;
	margin-right: 8px;
	filter: var(--menu-icon-filter);
	transition: filter 0.3s ease;
}
.nav-link:hover .nav-icon {
	filter: brightness(0) saturate(100%) invert(33%) sepia(93%) saturate(1558%) hue-rotate(183deg) brightness(75%) contrast(89%);
}
.nav-icon-fa {
	color: var(--menu-icon-color);
	font-size: 32px;
	transition: color 0.3s ease;
}
.nav-link:hover .nav-icon-fa {
	color: var(--menu-icon-color-hover);
}
.nav-icon {
	width: 32px;
	height: 32px;
	filter: var(--menu-icon-filter);
	transition: filter 0.3s ease;
}
.nav-link:hover .nav-icon {
	filter: brightness(0) saturate(100%) invert(33%) sepia(93%) saturate(1558%) hue-rotate(183deg) brightness(75%) contrast(89%);
}
.nav-icon-fa {
	color: var(--menu-icon-color);
	font-size: 32px;
	transition: color 0.3s ease;
}
.nav-link:hover .nav-icon-fa {
	color: var(--menu-icon-color-hover);
}

.navbar-brand {
	font-weight: bold;
	color: var(--primary-color) !important;
}

.desktop-menu .nav-link {
	color: rgba(255, 255, 255, 0.9);
	padding: 0.5rem 1rem;
	display: flex;
	align-items: center;
	transition: color 0.2s;
}

.desktop-menu .nav-link:hover {
	color: white;
}






@media (min-width: 992px) {
	.desktop-dropdown {
		/* position: relative; <-- REMOVE or COMMENT OUT this line */
	}

	/* Make navbar the positioning context */
	.navbar {
		position: relative !important;
		overflow: visible !important;
	}

	.desktop-dropdown .dropdown-menu {
		/* Position relative to navbar, not menu item */
		position: absolute !important;

		/* Center horizontally relative to navbar/container */
		left: 50% !important;
		transform: translateX(-50%) !important;

		/* Container width */
		width: calc(100% - 3rem) !important;
		max-width: 1140px !important;
		min-width: auto !important;

		/* Position below entire navbar */
		top: 100% !important;
		margin-top: 0;

		/* Visual styling */
		background: var(--background-common) !important;
		padding-left: 1.5rem !important;
		padding-right: 1.5rem !important;

		/* Show/hide */
		display: block !important;
		opacity: 0;
		visibility: hidden;
		transition: all 0.3s ease;
		z-index: 1000;

		border-radius: 0 0 8px 8px;
		border: 1px solid rgba(0, 0, 0, .15);
		box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
	}

	/* Show on hover */
	.desktop-dropdown:hover .dropdown-menu {
		opacity: 1;
		visibility: visible;
	}

	.dropdown-item {
		font-family: 'Montserrat', 'open-sans';
		font-weight: 400;
		font-size: medium;
		padding: 0.5rem 1rem;
		display: flex;
		align-items: center;
		color: var(--text-common-color) !important;
	}

	.dropdown-item:hover {
		color: var(--menu-text-color-hover) !important;
		background-color: transparent !important;	
		font-weight: 500;
	}
	
	/* .dropdown-item {
		color: var(--text-common-color) !important;
		text-decoration: none;
		padding: 0.5rem 0;
		display: block;
	} */

	/* .dropdown-item:hover {
		color: var(--menu-text-color-hover) !important;
		background-color: transparent !important;
	} */

	.dropdown-header {
		font-family: 'Montserrat', 'open-sans';
		font-weight: 600;
		font-size: large;
		color: var(--accent-color) !important;
		margin-bottom: 0.75rem;
		padding-bottom: 0.25rem;
		border-bottom: 2px solid #2163AD;
	}
}











/* Mobile: Hamburger with vertical accordion */
@media (max-width: 991.98px) {
	.desktop-menu {
		display: none !important;
	}

	.mobile-accordion {
		display: block !important;
		width: 100%;
	}

	.accordion-button {
		padding: 0.75rem 1rem;
		font-family: 'Montserrat', 'open-sans';
		font-weight: 600;
		font-size: larger;

		color: var(--accent-color) !important;

		background-color: transparent;
		border: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);

		text-align: left;
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.accordion-button::before {
		display: none !important;
	}

	.accordion-button:not(.collapsed) {
		background-color: rgba(255, 255, 255, 0.1);
		color: white;
	}

	.accordion-button:focus {
		box-shadow: none;
	}

	.accordion-button::after {
		/* content: '\f078'; */
		font-family: 'Font Awesome 5 Free';
		font-weight: 900;
		background-image: none;
		width: auto;
		height: auto;
		font-size: 0.875rem;
	}

	.accordion-button.collapsed::after {
		/* content: '\f078'; */
		transform: rotate(0deg);
	}

	.accordion-button:not(.collapsed)::after {
		/* content: '\f078'; */
		transform: rotate(180deg);
	}

	.accordion-body {
		padding: 0;
		/* background-color: rgba(0, 0, 0, 0.2); */
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

	.submenu-item {
		display: block;
		padding: 0.75rem 1rem 0.75rem 2rem;
		color: rgba(255, 255, 255, 0.9);
		text-decoration: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.05);
		transition: background-color 0.2s;
	}

	.submenu-item:last-child {
		border-bottom: none;
	}

	.submenu-item:hover {
		background-color: rgba(255, 255, 255, 0.05);
		color: white;
	}

	.nav-link.mobile-link {
		color: white;
		padding: 0.75rem 1rem;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		display: flex;
		align-items: center;
		text-decoration: none;
	}

	.nav-link.mobile-link:hover {
		background-color: rgba(255, 255, 255, 0.1);
	}

	.icon-spacing {
		margin-right: 0.75rem;
		width: 20px;
		text-align: center;
	}

	.mobile-section-header {
		padding: 0.75rem 1rem;
		font-family: 'Montserrat', 'open-sans';
		font-weight: 600;
		font-size: large;
	}

	.mobile-submenu-item {
		padding: 1rem;
		font-family: 'Montserrat', 'open-sans';
		font-weight: 500;
		font-size: medium;
		text-decoration: none;
		color: var(--menu-mobile-text-color);
	}
}
