/* Spinner */

body:after {
	content: '';
	z-index: 99999;
	position: fixed;
	inset: 0;
	background-repeat: no-repeat;
	background-size: min(15%, 100px) auto;
	background-position: center center;
	background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' style='margin: auto; background: none; display: block; shape-rendering: auto;' width='211px' height='211px' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid'%3E%3Ccircle cx='50' cy='50' fill='none' stroke='%23005cb9' stroke-width='7' r='45' stroke-dasharray='212.05750411731105 72.68583470577035'%3E%3CanimateTransform attributeName='transform' type='rotate' repeatCount='indefinite' dur='0.641025641025641s' values='0 50 50;360 50 50' keyTimes='0;1'%3E%3C/animateTransform%3E%3C/circle%3E%3C/svg%3E%0A");
	background-color: rgba(255, 255, 255, .67);
	transition-property: opacity, visibility;
	transition-duration: .4s;
	transition-timing-function: ease;
	opacity: 0;
	visibility: hidden;
}

body.is-loading:after {
	opacity: 1;
	visibility: visible;
}

/* App Publications */

.app-publications-section__filters {
	padding-block: 40px;
}

@media screen and (max-width: 1023px) {
	.app-publications-section__filters {
		padding-block: 30px;
	}
}

/* Filters */

.filters__text {
	margin-bottom: 20px;
}

.filters__dropdowns {
	max-width: 658px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px 32px;
}

@media screen and (max-width: 1023px) {
	.filters__dropdowns {
		gap: 24px;
	}
}

@media screen and (max-width: 767px) {
	.filters__dropdowns {
		max-width: initial;
	}
}

@media screen and (max-width: 575px) {
	.filters__dropdowns {
		grid-template-columns: 100%;
		gap: 16px;
	}
}

/* Search form */

.filters__search .search-form label {
	display: block;
	margin-bottom: 0;
}

.filters__search .search-form input {
	/*border-radius: 5px;
	padding: 0 15px;
	border: 1px solid #444;
	font-size: 16px;
	color: #444;
	background-color: #fff;
	min-height: initial;
	width: 100%;
	height: 32px;
	line-height: 32px; */
	 appearance: none;
  -webkit-appearance: none;
  border: 1px solid rgba(15, 23, 42, 0.1);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.85), rgba(255,255,255,0.65)),
    radial-gradient(120% 120% at 10% 0%, rgba(99,102,241,0.09), transparent 45%),
    radial-gradient(100% 120% at 100% 100%, rgba(14,165,233,0.08), transparent 55%),
    rgba(255, 255, 255, 0.72);
  color: #444;
	font-size: 16px;
  min-height: 48px;
  width: min(100%, 360px);
  padding: 12px 16px;

  border-radius: 7px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 5px 15px rgba(15, 23, 42, 0.05);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  display: inline-flex;
  align-items: center;

  text-align: left;

  transition:
    background-color 160ms ease,
    border-color 160ms ease,
    box-shadow 160ms ease,
    transform 120ms ease;
}

/* Dropdown */

.dropdown {
	position: relative;
	z-index: 999;
}

.dropdown.is-active .dropdown__button {
	border-color: #005cb9;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	color: #005cb9;
}

.dropdown.is-active .dropdown__button:after {
	transform: rotate(180deg);
}

.dropdown.is-active .dropdown__body {
	grid-template-rows: 1fr;
}

.dropdown.is-active .dropdown__checkboxes {
	border-color: #005cb9;
}

.dropdown .dropdown__button {
	/*
	position: relative;
	outline: 0;
	border: 1px solid #444;
	border-radius: 5px;
	padding: 0 15px;
	width: 100%;
	font-size: 16px;
	height: 32px;
	line-height: 32px;
	color: #444;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-align: left;
	gap: 30px;
	transition-property: border-color, color;
	transition-duration: .4s; */
	 appearance: none;
	  -webkit-appearance: none;
	  border: 1px solid rgba(15, 23, 42, 0.1);
	  background:
		linear-gradient(180deg, rgba(255,255,255,0.85), rgba(255,255,255,0.65)),
		radial-gradient(120% 120% at 10% 0%, rgba(99,102,241,0.09), transparent 45%),
		radial-gradient(100% 120% at 100% 100%, rgba(14,165,233,0.08), transparent 55%),
		rgba(255, 255, 255, 0.72);
	  color: #0f172a;
	  font-size: 16px;
	  min-height: 48px;
	  width: min(100%, 360px);
	  padding: 12px 14px 12px 16px;

	  border-radius: 7px; /* half-ish of 14 */
	  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 5px 15px rgba(15, 23, 42, 0.05);

	  backdrop-filter: blur(10px);
	  -webkit-backdrop-filter: blur(10px);

	  display: inline-flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 12px;

	  text-align: left;
	  cursor: pointer;

	  transition:
		background-color 160ms ease,
		border-color 160ms ease,
		box-shadow 160ms ease,
		transform 120ms ease;
}

.dropdown .dropdown__button:hover {
  background-color: rgba(255, 255, 255, 0.9);
  border-color: rgba(15, 23, 42, 0.16);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 7px 18px rgba(15, 23, 42, 0.06);
  transform: translateY(-1px);
}

.dropdown .dropdown__button:focus {
	outline-color:#e6e6e6;
}
.dropdown .dropdown__button:active {
  transform: translateY(0);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 4px 10px rgba(15, 23, 42, 0.05);
}

.dropdown .dropdown__button:focus-visible {
  outline: none;
  border-color: rgba(59, 130, 246, 0.25);
  box-shadow:
    0 0 0 4px rgba(59, 130, 246, 0.20),
    0 1px 2px rgba(15, 23, 42, 0.05),
    0 7px 18px rgba(15, 23, 42, 0.06);
}

.dropdown .dropdown__button:hover, .dropdown .dropdown__button:focus {
/* 	border-color: #005cb9; */
/* 	color: #005cb9; */
}

.dropdown .dropdown__button:after {
	content: "";
	display: block;
	mask-image: url("data:image/svg+xml,%3Csvg width='14' height='8' viewBox='0 0 14 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1.41421' y1='1' x2='7' y2='6.58579' stroke='%23444' stroke-width='2' stroke-linecap='round'/%3E%3Cline x1='1' y1='-1' x2='8.8995' y2='-1' transform='matrix(-0.707107 0.707107 0.707107 0.707107 14 1)' stroke='%23444' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	background-color: currentColor;
	width: 14px;
	height: 8px;
	transition: transform .4s;
}

.dropdown .dropdown__body {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.2s ease;
}

.dropdown .dropdown__body-inner {
	overflow: hidden;
}

.dropdown .dropdown__checkboxes {
	max-height: 600px;
	overflow-y: auto;
	padding: 24px 17px;
	border: 1px solid #444;
	border-top: 0;
	background-color: #fff;
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
}

.dropdown .dropdown__checkboxes ul {
	list-style: none;
}

.dropdown .dropdown__checkboxes ul li {
	margin-bottom: 12px;
}

.dropdown .dropdown__checkboxes ul li:last-child {
	margin-bottom: 0;
}

.dropdown .checkbox {
	display: flex;
	gap: 10px;
}

.dropdown .checkbox label {
	position: relative;
	display: block;
	font-weight: 500;
	padding-top: 2px;
	margin-bottom: 0;
}

.dropdown .checkbox input {
	appearance: none;
	display: inline-block;
	width: 19px;
	height: 19px;
	border: 1px solid #ea1d23 !important;
	border-radius: 5px;
}

.dropdown .checkbox input:checked {
	background: #ea1d23 url('data:image/svg+xml,<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg" class="p-checkbox-icon p-icon" aria-hidden="true"><path d="M4.86199 11.5948C4.78717 11.5923 4.71366 11.5745 4.64596 11.5426C4.57826 11.5107 4.51779 11.4652 4.46827 11.4091L0.753985 7.69483C0.683167 7.64891 0.623706 7.58751 0.580092 7.51525C0.536478 7.44299 0.509851 7.36177 0.502221 7.27771C0.49459 7.19366 0.506156 7.10897 0.536046 7.03004C0.565935 6.95111 0.613367 6.88 0.674759 6.82208C0.736151 6.76416 0.8099 6.72095 0.890436 6.69571C0.970973 6.67046 1.05619 6.66385 1.13966 6.67635C1.22313 6.68886 1.30266 6.72017 1.37226 6.76792C1.44186 6.81567 1.4997 6.8786 1.54141 6.95197L4.86199 10.2503L12.6397 2.49483C12.7444 2.42694 12.8689 2.39617 12.9932 2.40745C13.1174 2.41873 13.2343 2.47141 13.3251 2.55705C13.4159 2.64268 13.4753 2.75632 13.4938 2.87973C13.5123 3.00315 13.4888 3.1292 13.4271 3.23768L5.2557 11.4091C5.20618 11.4652 5.14571 11.5107 5.07801 11.5426C5.01031 11.5745 4.9368 11.5923 4.86199 11.5948Z" fill="%23FFFFFF"></path></svg>') center center no-repeat;
	background-size: auto 90%;
}

/* Dropdown Remove Buttons */ 

.dropdown-remove-buttons:has(.dropdown-remove-buttons__clear) {
	margin-top: 16px;
}

.dropdown-remove-buttons ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.dropdown-remove-buttons ul li button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 5px;
	outline: 0;
	border: 0;
	background-color: #005cb9;
	color: #fff;
	padding: 8px 15px;
	border-radius: 5px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
}

.dropdown-remove-buttons ul li:not(.dropdown-remove-buttons__clear) button:after {
	content: '';
	display: inline-block;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath d='M183.1 137.4C170.6 124.9 150.3 124.9 137.8 137.4C125.3 149.9 125.3 170.2 137.8 182.7L275.2 320L137.9 457.4C125.4 469.9 125.4 490.2 137.9 502.7C150.4 515.2 170.7 515.2 183.2 502.7L320.5 365.3L457.9 502.6C470.4 515.1 490.7 515.1 503.2 502.6C515.7 490.1 515.7 469.8 503.2 457.3L365.8 320L503.1 182.6C515.6 170.1 515.6 149.8 503.1 137.3C490.6 124.8 470.3 124.8 457.8 137.3L320.5 274.7L183.1 137.4z'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	width: 20px;
	height: 20px;
	background-color: currentColor;
}

.dropdown-remove-buttons .dropdown-remove-buttons__clear button {
	padding: 0;
	background-color: initial;
	color: #444;
}

@media screen and (max-width: 767px) {
	.dropdown-remove-buttons ul li button {
		font-size: 16px;
	}

	.dropdown-remove-buttons ul li:not(.dropdown-remove-buttons__clear) button:after {
		width: 18px;
		height: 18px;
	}
}

/* App Publications */

.app-publications-section .container {
	max-width: 1198px;
}

.app-publications-section__listing {
	background-color: #F4F4F4;
	padding-block: 35px;
}

.app-publications__results {
	margin-bottom: 30px;
}

.app-publications__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-gap: 30px;
}

.app-publication {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
/* 	box-shadow: 4px 4px 14px #0000001a; */
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 5px 15px rgba(15, 23, 42, 0.05);
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius:7px;
	overflow:hidden;
	background-color: #fff;
	padding: 20px;
	min-height: 286px;
}

.app-publication:after {
	content: '';
	position: absolute;
	top: 0;
	left: 20px;
	width: 80px;
	height: 5px;
	background-color: var(--line-color);
}

.app-publication:hover,
.app-publication:focus-visible {
	background:#005cb9;
}
.app-publication:hover,
.app-publication:focus-visible,
.app-publication:hover .app-publication__content p,
.app-publication:focus-visible .app-publication__content p,
.app-publication:hover .app-publication__title h3,
.app-publication:focus-visible .app-publication__title h3,
.app-publication:hover .app-publication__terms,
.app-publication:focus-visible .app-publication__terms{
	color:#fff;
}


.app-publication:hover .app-publication__link-more:after,
.app-publication:focus-visible .app-publication__link-more:after {
	width: 100%;
}

.app-publication:hover .app-publication__content p,
.app-publication:focus-visible .app-publication__content p {
	text-decoration: underline;
}

.app-publication__body {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.app-publication__title {
	text-align: center;
}

.app-publication__title h3 {
	color: #444;
	font-size: 16px;
	font-weight: 500;
	line-height:1.5;
}

.app-publication__content {
	flex-grow: 1;
	text-align: center;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;  
	overflow: hidden;
}

.app-publication__content {
	margin-bottom: 20px;
}

.app-publication__content p {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0;
	color: #005cb9;
}

.app-publication__link-more {
	position: relative;
	display: inline-flex;
	font-size: 16px;
	font-weight: 700;
	color: #005cb9;
}

.app-publication__link-more:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 10px;
	height: 3px;
	background-color: var(--line-color);
	transition: width .4s;
}

.app-publication__terms {
	font-size: 16px;
	font-weight: 500;
	color: #444444;
}

@media screen and (max-width: 1199px) {
	.app-publications__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.app-publication__content p {
		font-size: 20px;
	}
}

@media screen and (max-width: 767px) {
	.app-publications__grid {
		grid-template-columns: 100%;
		grid-gap: 24px;
	}
}

/* Pagination */ 

.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 50px;
}

.pagination .page-numbers {
	display: flex;
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	color: #444;
	margin: 0 !important;
	transition: color 0.4s;
}

.pagination .page-numbers:hover {
	color: #005cb9;
}

.pagination .page-numbers.current {
	color: #005cb9;
}

.pagination .prev {
	display: flex;
	align-items: center;
	gap: 22px;
	transition: color 0.4s;
}

.pagination .prev:hover {
	color: #005cb9;
}

.pagination span.prev, .pagination span.next {
	color: #444;
}

.pagination .next {
	display: flex;
	align-items: center;
	gap: 20px;
	transition: color 0.4s;
}

.pagination .next:hover {
	color: #005cb9;
}
