:root {
	--alp-width-sec: 786px;
	--alp-bg-1: white; /* White -> Black */
	--alp-bg-2: #f1f1f1; /* Gray-1 -> Gray-3 */
	--alp-bg-3: rgba(0,0,0,0.75); /* Modal blocker */
	--alp-bg-4: #fff; /* White -> Gray-3 */
	--alp-body: #232323;
	--alp-f-body: invert(12%) sepia(3%) saturate(24%) hue-rotate(2deg) brightness(90%) contrast(92%);
	
	--alp-blue-1: #daf3ff;
	--alp-blue-2: #039be5;
	--alp-blue-3: #0c75cb;
	--alp-f-blue-2: invert(72%) sepia(67%) saturate(7360%) hue-rotate(173deg) brightness(99%) contrast(98%);
	--alp-f-blue-3: invert(35%) sepia(57%) saturate(5682%) hue-rotate(191deg) brightness(92%) contrast(91%);
	
	--alp-green-1: #d6e9dc;
  --alp-green-2: #15af68;
  --alp-green-3: #0e7813;
	--alp-f-green-2: invert(48%) sepia(95%) saturate(371%) hue-rotate(100deg) brightness(93%) contrast(97%);
	--alp-f-green-3: brightness(0) saturate(100%) invert(18%) sepia(83%) saturate(5970%) hue-rotate(98deg) brightness(100%) contrast(89%);
	
	--alp-turq-1:#97e3dc;
	--alp-turq-2:#22d5c4;
	--alp-turq-3:#108c81;
	--alp-f-turq-2: brightness(0) saturate(100%) invert(70%) sepia(100%) saturate(337%) hue-rotate(116deg) brightness(83%) contrast(103%);
  --alp-f-turq-3: brightness(0) saturate(100%) invert(41%) sepia(20%) saturate(3668%) hue-rotate(140deg) brightness(90%) contrast(87%);

	--alp-red-1: #f3dada;
	--alp-red-2: #c31b1b;
	--alp-red-3: #910f0f;
	--alp-f-red-2: invert(16%) sepia(91%) saturate(3453%) hue-rotate(354deg) brightness(86%) contrast(88%);
	--alp-f-red-3: invert(14%) sepia(30%) saturate(5867%) hue-rotate(344deg) brightness(108%) contrast(109%);
	
	--alp-orange-1: #eeae80;
	--alp-orange-2: #e99906;
	--alp-orange-3: #c25e16;
	--alp-f-orange-1: brightness(0) saturate(100%) invert(89%) sepia(64%) saturate(6822%) hue-rotate(300deg) brightness(96%) contrast(95%);
	--alp-f-orange-2: brightness(0) saturate(100%) invert(71%) sepia(49%) saturate(4563%) hue-rotate(5deg) brightness(99%) contrast(95%);
	--alp-f-orange-3: brightness(0) saturate(100%) invert(32%) sepia(72%) saturate(4896%) hue-rotate(26deg) brightness(105%) contrast(83%);
	
	--alp-purple-1:#c1a2e3;
	--alp-purple-2:#8b3ddf;
	--alp-purple-3:#4c1489;
	--alp-f-purple-2: brightness(0) saturate(100%) invert(25%) sepia(39%) saturate(2906%) hue-rotate(249deg) brightness(118%) contrast(101%);
  --alp-f-purple-3: brightness(0) saturate(100%) invert(16%) sepia(52%) saturate(3809%) hue-rotate(259deg) brightness(82%) contrast(110%);
	
	--alp-magenta-1:#e784c5;
	--alp-magenta-2:#d21791;
	--alp-magenta-3:#951569;
	--alp-f-magenta-2: brightness(0) saturate(100%) invert(25%) sepia(75%) saturate(2163%) hue-rotate(296deg) brightness(88%) contrast(115%);
  --alp-f-magenta-3: brightness(0) saturate(100%) invert(15%) sepia(89%) saturate(2230%) hue-rotate(300deg) brightness(99%) contrast(102%);
	
	--alp-slate-2: #4e5c68;
	
	--alp-gold-1: #f1e9c2;
	--alp-gold-2: #d5b822;
	--alp-gold-3: #6b5d13;
	--alp-f-gold-1: brightness(0) saturate(100%) invert(94%) sepia(17%) saturate(508%) hue-rotate(340deg) brightness(103%) contrast(89%);
	--alp-f-gold-2: brightness(0) saturate(100%) invert(65%) sepia(72%) saturate(476%) hue-rotate(10deg) brightness(99%) contrast(89%);
	--alp-f-gold-3: brightness(0) saturate(100%) invert(32%) sepia(11%) saturate(6474%) hue-rotate(29deg) brightness(92%) contrast(85%);
		
	--alp-black: black;

	--alp-black-1: #c3c3c3;
	--alp-black-2: #424242;
	--alp-black-3: black;
	--alp-f-black-1: brightness(0) saturate(100%) invert(84%) sepia(0%) saturate(643%) hue-rotate(181deg) brightness(94%) contrast(90%);
	--alp-f-black-2: brightness(0) saturate(100%) invert(20%) sepia(9%) saturate(10%) hue-rotate(69deg) brightness(107%) contrast(85%);
	--alp-f-black-3: brightness(0) saturate(100%) invert(0%) sepia(1%) saturate(7493%) hue-rotate(323deg) brightness(102%) contrast(95%);
		

	--alp-white: white;
	--alp-f-white: invert(100%) sepia(0%) saturate(1%) hue-rotate(200deg) brightness(110%) contrast(101%);
	
	--alp-gray-1: #f1f1f1;
	--alp-gray-2: gray;
	--alp-gray-3: #232323;
	--alp-gray-4: #d6d6d6;
	--alp-gray-5: #b5b5b5;
	--alp-f-gray-1: brightness(0) saturate(100%) invert(100%) sepia(45%) saturate(69%) hue-rotate(180deg) brightness(116%) contrast(89%);;
	--alp-f-gray-2: invert(50%) sepia(37%) saturate(18%) hue-rotate(326deg) brightness(93%) contrast(94%);
	--alp-f-gray-3: brightness(0) saturate(100%) invert(10%) sepia(13%) saturate(0%) hue-rotate(152deg) brightness(93%) contrast(89%);
	
	--alp-brand: #01205e;
	--alp-f-brand: brightness(0) saturate(100%) invert(8%) sepia(56%) saturate(4637%) hue-rotate(214deg) brightness(98%) contrast(105%);
	
	--alp-border: 1px solid #ced4da;
	--alp-border-color: #ced4da;
	--alp-shadow-1: 0px 1px 4px 0px #c4c4c4;
	--alp-shadow-2: rgba(101, 119, 134, 0.2) 0px 0px 15px, rgba(101, 119, 134, 0.15) 0px 0px 3px 1px;
	--alp-shadow-3: 0 8px 17px 2px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12),0 5px 5px -3px rgba(0,0,0,.2) !important;
	
	--alp-highlight-blue: #daf3ff;
	--alp-highlight-yellow: rgb(255, 255, 0);
	--alp-highlight-gray: #f1f1f1;
	--alp-highlight-none: white;
	scrollbar-color: auto auto;
}
html:root {
	--alp-gsc-1: var(--alp-black-1) !important;
	--alp-gsc-2: var(--alp-black-2) !important;
	--alp-gsc-3: var(--alp-black-3) !important;
	--alp-f-gsc-1: var(--alp-f-black-1) !important;
	--alp-f-gsc-2: var(--alp-f-black-2) !important;
	--alp-f-gsc-3: var(--alp-f-black-3) !important;
}

html,body {
	margin:0;
	padding:0;
	color:var(--alp-body);
	overflow:hidden;
	background: var(--alp-bg-1);
	font-size: 1rem;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	
	* {
		box-sizing:border-box;
	}

	a, a:visited, a:link, a:active {
		text-decoration:none;
		color:var(--alp-blue-2);
		cursor:pointer;
		transition:color 320ms;

		&:hover {
			color:var(--alp-blue-3);
			transition:color 320ms;
		}
	}
	.hide, .visually-hidden {
		display: none !important;
	}
	
	button, input, textarea {
		font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	}
}

.hide, .visually-hidden {display:none !important;}
bodyWrap {
	display:block;
	height:100dvh;
	overflow-x:hidden;
	overflow-y:auto;
	scrollbar-width:thin;
	scrollbar-color:#c7c7c7 transparent;
	scroll-behavior: smooth;
	
	&::-webkit-scrollbar-track {
		background: transparent;
	}
}

section {
	.row {
		width:100%;
		max-width:768px;
		margin:0 auto;
		padding:0 20px;
	}
	.row-banner {
		text-align:center;
		padding:0 20px;
		margin-bottom: 20px;
		
		> .inner {
			padding:40px 0 20px 0;
			border-top:var(--alp-border);
			border-bottom:var(--alp-border);
		}
		
		h1 {
			margin:0 0 5px 0;
		}
		h2 {
			margin: 0 0 30px 0;
			font-weight: 400;
			font-size: 1.15rem;
		}
		
		p.desc {
			text-align:justify;
			max-width:580px;
			margin: 0 auto 40px auto;
		}
		.r-logo {
			margin:0 auto 15px auto;
			width: 100px;
			height: 100px;
			border: var(--alp-border);
			border-radius: 10px;
			position: relative;
			
			img {
				display:block;
				margin:0;
				width:80px;
				position:absolute;
				top:50%;
				left:50%;
				transform:translateX(-50%) translateY(-50%);
			}
		}
	}
	.row-about {
		border-bottom:var(--alp-border);
		
		h3 {margin:0 0 5px 0;}
		p {margin:0 0 20px 0;}
	}
}

.alp-releases {
	h2 {
		font-size:1.1rem;
		margin:30px 0 10px 0;
	}
	
	> ul {
		list-style-type:none;
		margin:0;
		padding:0;
		
		> li {
			border-bottom:var(--alp-border);
			
			> a {
				display:block;
				color:var(--alp-body);
				padding:10px 0 10px 49px;
				position:relative;
				
				span {display:block;}
				
				.rel-title {font-size: .9rem;}
				.rel-sub {
					font-size:.85rem;
					color:var(--alp-gray-2);
				}
				
				&::before {
					display:block;
					content:"";
					width:34px;
					height:34px;
					position:absolute;
					top:10px;
					left:0;
					background:url(/incl/img/static/icn/bullhorn-solid.svg) center center no-repeat;
					background-size:26px 26px;
					filter: var(--alp-f-gray-2);
					border: var(--alp-border);
					border-radius: 5px;
					opacity: 0.5;
				}
			}
		}
	}
}

.alp-feed {
	.feed-item {
		box-shadow: var(--alp-shadow-2);
		position:relative;
		display:flex;
		color:var(--alp-body);
		margin:0 0 20px 0;
		top:0;
		transition:all 320ms;
		
		&:hover {
			color:var(--alp-body);
			top:-2px;
			transition:all 320ms;
		}
		.html-item {
			flex:0 0 64px;
			position:relative;
			
			.button {
				display:inline-block;
				height:22px;
				line-height:21px;
				padding:0 6px;
				background-color:var(--alp-blue-2);
				width:auto;
				border-radius:6px;
				color:white;
				position:absolute;
				top:50%;
				left:50%;
				transform:translateX(-50%) translateY(-50%);
				
				&:hover {
					background-color:var(--alp-blue-3);
				}
			}
		}
		.pdf-item {
			flex:0 0 64px;
			padding-right:10px;
			position:relative;
			
			.button {
				display:inline-block;
				content:"PDF";
				height:22px;
				line-height:21px;
				padding:0 6px;
				background-color:#d00f0f;
				width:auto;
				border-radius:6px;
				color:white;
				position:absolute;
				top:50%;
				left:5px;
				transform:translateY(-50%);
				
				&:hover {
					background-color:#a50909;
				}
			}
		}
		a.flex-item {
			flex:1 1 auto;
			display:flex;
			color:var(--alp-body);
		}
		span {
			display:block;
			flex:0 0 auto;
			vertical-align:baseline;
		}
		
		.fi-icon {
			flex:0 0 59px;
			background-repeat:no-repeat;
			background-position:center center;
			background-size:40px 40px;
			background-color:white;
		}
		.type-label {
			background-color:var(--alp-green-2);
			display:inline-block;
			padding:0 7px;
			height:20px;
			line-height:19px;
			color:white;
			border-radius: 4px;
			font-size: .80rem;
			font-weight: 500;
			text-transform: uppercase;
			vertical-align:text-bottom;
		}
		.fi-main {
			flex:1 1 auto;
			padding: 10px 0;
			
			.main-title {
				line-height: 24px;
    		height: 24px;
				white-space: nowrap;
			}
			.main-sub {
				font-size:.7rem;
				color:var(--alp-gray-2);
			}
			.main-intro {
				font-size:.8rem;
				margin:10px 0 0 0;
				display: -webkit-box;
				-webkit-line-clamp: 2;
				-webkit-box-orient: vertical;
				overflow: hidden;
			}
		}
	}
}

section.header {
	.row {
		display:flex;
		padding:10px 20px 10px 14px;
	}
	.r-logo {
		flex:0 0 auto;
		margin-right: 7px;
		
		a {
			display:block;
			width:38px;
			padding:5px;
			border-radius: 10px;
			
			&:hover {
				background-color:#f1f1f1;
			}
		}
		img {width:100%;margin:0;display: block;}
	}
	.r-sep {
		flex:0 0 auto;
		font-size:1.3rem;
		color:var(--alp-gray-2);
		line-height:36px;
		margin-right: 4px;
	}
	.r-entity {
		flex:0 0 auto;
		
		a {
			display:block;
			padding:0 6px 0 40px;
			font-weight:500;
			font-size:1.3rem;
			color:var(--alp-body);
			line-height:36px;
			height: 38px;
			border-radius: 10px;
			position:relative;
			
			.icon {
				display:block;
				position:absolute;
				top:5px;
				left:5px;
				width:28px;
				height:28px;
				background-repeat:no-repeat;
				background-position:center center;
				background-size:22px 22px;
				border:var(--alp-border);
				border-radius:5px;
				background-color:white;
			}
			.name {display:block;}
			&:hover {
				background-color:#f1f1f1;
			}
		}
	}
	
	.r-spacer {
		flex:1 1 auto;
	}
	.r-pdf {
		flex:0 0 auto;
		padding:5px 0;
		margin-left:10px;
		
		a {
			display:block;
			padding:0 8px;
			font-weight:500;
			font-size:1.1rem;
			background-color:#d00f0f;
			color:white;
			line-height:26px;
			height: 28px;
			border-radius: 6px;
			
			&:hover {
				background-color:#a50909;
			}
		}
	}
	.r-share, .r-qrcode, .r-search {
		flex:0 0 auto;
		padding:5px 0;
		
		a {
			display:block;
			padding:0;
			font-weight:500;
			font-size:1.1rem;
			background: var(--alp-gray-4);
			color:white;
			line-height:26px;
			height: 28px;
			width:28px;
			border-radius: 6px;
			position:relative;
			
			&:hover {
				background: var(--alp-gray-5);
			}
			
			&::before {
				position:absolute;
				display:block;
				content:"";
				width:28px;
				height:28px;
				filter:var(--alp-f-body);
				background-position: center center;
				background-repeat: no-repeat;
				background-size:18px 18px;
			}
		}
	}
	
	.r-share a::before {
		background-image:url(/incl/img/static/icn/share-solid.svg);
	}
	.r-qrcode {
		margin-right:10px;
		
		a::before {
			background-image:url(/incl/img/static/icn/qr.svg);
		}
	}
	.r-search {
		margin-right:10px;
		
		a::before {
			background-image:url(/incl/img/static/icn/search-solid.svg);
			background-size: 15px 15px;
		}
	}
}

section.footer {
	.row {
		display:flex;
		flex-wrap: wrap;
		padding:10px 20px 10px 20px;
		
		*, a {
			color:var(--alp-gray-2);
			font-size:.9rem;
		}
		
		a:hover {
			text-decoration:underline;
		}
	}
	
	.row-desc {
		padding-bottom:0;
	}
	
	.r-desc {
		flex:0 0 100%;
		padding-bottom:10px;
		border-bottom:var(--alp-border);
	}
	.r-brand {
		flex:0 0 auto;
		font-weight:500;
		margin-right:10px;
		color:var(--alp-body) !important;
		padding:0 0 0 26px;
		position:relative;
		
		&::before {
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			width: 18px;
			height: 18px;
			content: "";
			background: url(/incl/img/static/icn/brand-alilpr.svg) center center no-repeat;
			background-size: 18px auto;
		}
	}
	
	.r-cr {
		flex:0 0 auto;
		text-align:center;
	}
	.r-spacer {flex:1 1 auto;}
	.r-menu {
		flex:0 0 auto;
		
		ul {
			display:flex;
			flex-wrap:nowrap;
			list-style-type:none;
			margin:0;
			padding:0;
			
			li {
				margin-right:7px;
				
				&:last-of-type {margin-right:0;}
			}
		}
	}
}

#releaseFrame {
	box-shadow:var(--alp-shadow-2);
	position:relative;
	aspect-ratio:8.5 / 11;
	padding:40px 40px 40px 55px;
	font-family: "Times New Roman", Times, serif;
	
	> * {font-family: "Times New Roman", Times, serif;}
	
	#releaseBorder {
		position:absolute;
		top:0;
		left:0;
		width:15px;
		height:100%;
		background-color:black;
	}
	
	#releaseLogo {
		height:50px;
		margin:0 0 20px 0;
		
		img {
			height:100%;
			width:auto;
			border: var(--alp-border);
      border-radius: 10px;
		}
	}
	
	h1 {
		margin:0 0 20px 0;
		font-size:1.45rem;
		font-weight:normal;
	}
	
	p {margin:0 0 20px 0;}
	
	h2 {font-size:1rem;margin:0 0 5px 0;}
	
	#releaseMeta {
		margin-bottom:5px;
		
		a {text-decoration:underline;}
	}
	#releaseAboutSub a {text-decoration:underline;}
	
	#releaseMetaMain {
		margin:0 0 5px 0;
		text-transform:uppercase;
	}

	#releaseText {
		margin-bottom:20px;
		
		a {text-decoration:underline;}
	}
	
	#releaseAboutSub {
		margin-bottom:5px;
	}
	
	#releaseContact {
		margin:0 0 20px 0;
		
		ul {
			list-style-type:none;
			margin:0;
			padding:0;
			
			li {
				margin:0 0 5px 0;
			}
		}
	}
	
	#releaseFoot {
		color:var(--alp-gray-2);
		text-align:center;
		font-size:.85rem;
		
		a {
			color:var(--alp-gray-2);
		}
	}
}

#toast-container {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
}
.toast {
    background-color: var(--alp-body);
    color: white;
    padding: 15px;
    margin-top: 10px;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    opacity: 0;
    transition: opacity 0.5s ease-out, transform 0.5s ease-out;
    transform: translateY(20px);

    &.show {
    	opacity: 1;
    	transform: translateY(0);
    }
}

.show-561 {display:none;}

@media only screen and (max-width: 768px) {
	.hide-768 {display:none!important;visibility:hidden;}
	section.header {
		.r-entity a {
			padding:0 6px;
			width:37px;
		}
	}
	#releaseFrame {
		padding:25px 25px 25px 40px;
		width: calc(100% + 40px);
    margin-left: -20px;
		
    h1 {
    	font-size: 1.3rem;
    }
	}
}

@media only screen and (max-width: 601px) {
	.alp-feed {
  	.feed-item {
    	.html-item {display:none;}
  	}
	}
}

@media only screen and (max-width: 561px) {
	.hide-561 {display:none!important;visibility:hidden;}
	.show-561 {display:block!important;visibility:visible;}
	section.footer {
		.row {
			.r-brand, .r-cr, .r-menu {
				flex:0 0 100%;
				text-align:center;
			}
			.r-brand {
				display: inline-block;
				flex:0 0 auto;
				margin: 0 auto;
			}
			.r-cr {padding:15px 0;}
			.r-menu ul {
				justify-content:center;
			}
		}
		.row-legal {
			padding:20px 20px;
		}
	}
}

@media only screen and (max-width: 440px) {
	.hide-440 {display:none!important;visibility:hidden;}
}








