	html, body {
		height: 100%;
		padding:0 !important;
		margin:0 !important;
		background: #ecf2f3;
	}
	
	#menu {
		z-index: 99;
		position:fixed;
		top:0;
		left:220px;
		right:0;
		padding:0;
		min-height:53px;
		/*background: linear-gradient(to left, #1d87db, #2196f3);*/
		background: linear-gradient(to left, #1d3a52, #2171ca);
		max-width: 1380px;
	}
	
	#sidebar {
		position:fixed;
		top:0;
		left:0;
		bottom:0;
		width: 220px;
		max-width: 220px;
		align-items: flex-start;
		padding-top:53px;
		background-image: url('itcbtp_back.png');
		background-repeat: no-repeat;
		background-position: bottom;
		z-index: 999 !important;
	}
	
	#sidebar > ul {
		padding: 0;
		background: #1f8ee7;
	}
	
	#menu .nav-item a {
		white-space: nowrap;
	}
	
	#menu .nav-item {
		font-size: 14px;
		/*border-right: 2px solid #1d87db;*/
		border-right: 2px solid #00000014;	
	}
	
	#sidebar .nav-item {
		font-size: 0.75rem;
		border-left: 10px solid #2171ca;
		border-bottom: 2px solid #1d87db;
		background: linear-gradient(to left, transparent 50%, #2171ca 50%) right;
		background-size: 200%;
		transition-delay: 0.1s;
	}
	
	#sidebar .nav-item:hover {
		transition: background 0.3s ease;
		background-position: left;
	}
	
	#sidebar .nav-item:last-of-type {
		border-bottom: none;
	}
	
	.nav-item a {
		font-weight: 500;
		padding: 1rem 1.25rem !important;
	}
	
	.bg-main {
		background: #2196f3;
	}
	
	.navbar-nav {
		text-transform: uppercase;
	}
	
	.nav-item {
		transition: none;
		color:#fff !important;
		background: transparent;
	}
	
	.nav-item:hover {
		transition: background 0.5s ease;
		color:#fff !important;
		background: #2171ca;
	}
	
	.nav-item a {
		color: inherit !important;
	}
	
	.nav-item .bi, .nav-item .fa {
		margin-right: 0.5em;
	}
	
	#wrapper {
		padding-left:220px;
		padding-top:53px;
		min-height: 100%;
		display: flex;
		flex-flow: column;
		background-color: #fff;
		max-width: 1600px;
	}
	
	.dropdown-menu {
		font-size: inherit;
		color: inherit !important;
		background:rgba(26, 117, 190, 0.8) !important;
		border: none;
	}
	
	.nav-item .dropdown-item {
		padding: 0.5rem 1rem !important;
	}
	
	.dropdown-item:hover {
		background:rgba(0,0,0,0.2) !important;
	}
	
	main {
		flex: 1;
		padding: 0 !important;
		padding-bottom: 2rem !important;
		background-image: url('./itcbtp_background.png');
		background-repeat: no-repeat;
		background-position: bottom;
		background-size: contain;
	}
	
	footer {
		padding: 1rem 2rem;
		background: #e6e6e6;
	}
	
	h1, h2, h3, h4, h5, h6 {
		text-transform: uppercase;
	}
	
	.content-wrapper > h1, .content-wrapper > h2, .content-wrapper > h3, .content-wrapper > h4, .content-wrapper > h5, .content-wrapper > h6, 
	h1.header, h2.header, h3.header, h4.header, h5.header, h6.header {
		position: relative;
		padding-left:0.7em;
	}
	
	
	.content-wrapper > h1:before, .content-wrapper > h2:before, 
	h1.header:before, h2.header:before {
		position: absolute;
		top:0.25em;
		left:0;
		height: 0.5em;
		width: 0.5em;
		background: orange;
		content: "";
	}
	
	.content-wrapper > h3:before, .content-wrapper > h4:before, .content-wrapper > h5:before, .content-wrapper > h6:before, 
	h3.header:before, h4.header:before, h5.header:before, h6.header:before {
		position: absolute;
		top:0.25em;
		left:0;
		height: 0.5em;
		width: 0.5em;
		background: #a6e3f0;
		content: "";
	}
	
	.content-wrapper {
		padding: 2rem;
		padding-bottom: 1rem;
		margin-left:0px !important;
		max-width: 1200px;
	}
	
	.gallery-carousel {
		max-width: 1024px;
	}
	
	.carousel-item {
		height: 500px;
	}
	
	#main_carousel .carousel-item {
		height: 300px;
	}
	
	.carousel-item img {
		z-index: 1;
		position:absolute;
		width: 100vmax;
		width: calc(100vmax - 220px);
		left:0;right:0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	#main_carousel .carousel-caption {
		top: 5vmin;bottom: auto; left:8vmin; right: auto;
		padding:20px;
		padding-right: 25px;
		background: rgba(255,255,255,0.8);
		color: #000;
	}
	
	#main_carousel .carousel-caption:before {
		content: "";
		width:40px;
		height:40px;
		background: rgba(255,150,0,0.5);
		position: absolute;
		top:-20px;
		left: -20px;
	}
	
	.logo {
		width:100%;height:110px;background:#bde4e9;
		background-image: url('itcbtp_logo.png');
		background-size: cover;
	}
	
	.logo-nav {
		display: none;
		position: absolute;
		top:0;left:0;bottom:0;
		width:100px;
		height: 53px;
		background:#bde4e9;
		background-image: url('itcbtp_logo.png');
		background-size: cover;
	}
	
	.vignette {
		padding: 8px 1vw;
	}
	
	.inner-vignette {
		width:100%;
		height:250px;
		background:#ccc;
		background-size: cover;
		position: relative;
	}
	
	.inner-vignette>a:before {
		content: "";
		position:absolute;
		top:0;left:0;right:0;bottom:0;
		background: rgba(0,0,0,0.05);
		box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
	}
	
	.inner-vignette > a {
		display: block;
		position: absolute;
		top:0;left:0;right:0;bottom:0;
		transition: background 0.5s ease;
	}
	
	.inner-vignette > a:hover {
		z-index: 1;
		background: rgba(0,0,0,0.3);
	}
	
	.inner-vignette > a:hover > .bi {
		color: rgba(255,255,255,0.8);
	}
	
	.title-vignette {
		z-index: 2;
		position: absolute;
		right:-8px;
		top:-8px;
		border-top:8px solid;
		border-right:8px solid;
		padding: 0.5rem 1rem;
		text-align: right;
		color: #fff;
		max-width: 90%;
	}
	
	.title-vignette h4 {
		font-size: 1.25rem;
		width: auto;
	}
	
	.inner-vignette > a > .bi {
		position: absolute;
		bottom:0.5rem;left:1rem;
		font-size: 3rem;
		color: rgba(255,255,255,0.5);
	}
	
	#sidebar .navbar-toggler {
		display: block;
	}
	
	#sidebarDefault {
		position: absolute;
		width: 220px;
		z-index: 999 !important;
		background-color: inherit;
	}
	
	.fs-12 {
		font-size: 12px;
	}
	
	.b-700 {
		font-weight: 700;
	}
	
	.circular {
		width: 100px;
		height: 100px;
		position: relative;
		overflow: hidden;
		border-radius: 50%;
		border: 2px solid #fff;
		outline: 4px solid #eee;
		display: inline-block;
		margin: 4px;
	}
	
	.circular:after {
		content: "";
		position:absolute;
		top:0;left:0;right:0;bottom:0;
		background: transparent;
		transition: background 0.5s ease;
	}
	
	.circular:hover:after {
		background: #114a722b;
	}
	
	.circular > img {
		width:100%;
		position: absolute;
		top: 0;
		bottom: 0;
		left:0;
		margin: auto;
	}
	
	@media (max-width: 1366px) {
		#menu .nav-item {
			font-size: 13.5px;
			line-height: 36px;
		}
		#menu .nav-item a {
			font-weight: 500;
			padding: 0.5rem 0.75rem !important;
		}
	}	
	
	@media (max-width: 1170px) {
		#menu .nav-item {
			font-size: 12px;
			line-height: 36px;
		}
		#menu .nav-item a {
			font-weight: 500;
			padding: 0.5rem 0.75rem !important;
		}
	}
	
	@media (max-width: 768px) {
		#menu {
			left: 40px;
		}	
		#sidebar {
			width: 40px;
			max-width: 40px;
		}	
		#wrapper {
			padding-left:40px;
		}
		#main_carousel .carousel-item img {
			width: calc(100vmax - 40px);
		}
		.logo {
			display: none;
		}
		.logo-nav {
			display: block !important;
		}
	}
	
	@media (min-width: 768px) {
		#sidebar .collapse {
			display: block !important;
		}
		#sidebar .navbar-toggler {
			display: none;
		}
	}
	
	.vignette-full {
		width:100%;
		height:250px;
		background:#ccc;
		background-size: cover;
		position: relative;
	}
	
	.vignette-full > a {
		display: block;
		position: absolute;
		top:0;left:0;right:0;bottom:0;
		transition: background 0.5s ease;
	}
	
	.vignette-full > a:hover {
		z-index: 1;
		background: rgba(0,0,0,0.4);
	}
	
	.vignette-full .title {
		z-index: 2;
		min-height: 50%;
		max-width: 50%;
		position: absolute;
		right:0;
		bottom:0;
		padding: 0.5rem 1rem;
		text-align: right;
		color: #fff;
		text-transform: uppercase;
		font-size: 1.2rem;
	}
	
	.vignette-full a .bi {
		position: absolute;
		bottom:0.25rem;right:1rem;
		font-size: 2rem;
		color: rgba(255,255,255,0.5);
	}
	
	.vignette-full a:hover .bi {
		color: rgba(255,255,255,0.8);
	}
	
	.btn-main {
	  color: #fff;
	  background: #1d87db;
	  border-color: #0d6efd;
	  transition: background 0.5s ease !important;
	}
	.btn-main:hover {
	  color: #fff;
	  background: #0461ab;
	  border-color: #0a58ca;
	}
	
	footer ul {
		list-style: none;
		padding-left: 1rem;
	}
	
	footer h1, footer h2, footer h3, footer h4, footer h5 {
		color:#666;
	}
	
	footer a {
		color:#888;
	}
	
	.date {
		font-size: 0.8rem;
		background: rgba(0,0,0,0.2);
		padding: 1px 0.5em;
		border-radius: 0.2em;
	}
	
	main hr {
		width: 90%;
		border-color: #d7e8eb;
	}
	
	.banner {
		position: relative;
		width:100%;
		height: 300px;
		overflow: hidden;
	}
	
	.banner:after {
		content: "";
		z-index: 2;
		position: absolute;
		top:0;left:0;right:0;bottom:0;
		background: url('./itcbtp_title_back.png');
		background-size:100% 100%;
	}
	
	.banner > img {
		z-index: 1;
		position: absolute;
		width: 100%;
		left:0;right:0;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.banner > .title {
		position: absolute;
		top: 5vmin;bottom: auto; left:8vmin; right: auto;
		background: linear-gradient(45deg, #e89219cc, #e87d3ecc);
		color: #fff;
		font-size: 2rem;
		padding: 10px 20px;
		z-index: 4;
	}
	
	.banner > .title:before {
		content: "";
		width:30px;
		height:30px;
		background: rgba(255,255,255,0.7);
		position: absolute;
		top:-15px;
		left: -15px;
	}
	
	.floating-img {
		float: left;
		width: 25vw;
		margin-right: 1em;
		margin-bottom: 1em;
	}

	.diag-top {
		width:100%;overflow:hidden;
		height: 50px;
		position: relative;
	}
	
	.diag-top:after {
		position: absolute;
		top:0;left:0;right:0;bottom:0;
		content:"";
		width: 0;height: 0;border-style: solid;border-width: 0 0 50px 100vw;border-color: inherit;
		border-top-color:transparent;
		border-right-color:transparent;
		border-left-color:transparent;
	}
	
	.diag-bottom {
		width:100%;overflow:hidden;
		height: 50px;
		position: relative;
	}
	
	.diag-bottom:after {
		position: absolute;
		top:0;left:0;right:0;bottom:0;
		content:"";
		width: 0;height: 0;border-style: solid;border-width: 50px 100vw 0 0;border-color: inherit;
		border-bottom-color:transparent;
		border-right-color:transparent;
		border-left-color:transparent;
	}
	
	#sidebar .dropdown-toggle {
		white-space: initial !important;
	}
	
	.accordion {
		max-width: 600px;
	}
	
	.accordion .card-header {
		border: none;
		background: linear-gradient(45deg, #e89219cc, #e87d3ecc);
	}
	
	.accordion .card-header .card-link {
		position: relative;
		display: block;
	}
	
	.accordion .card-header .card-link:after {
		position: absolute;
		top: 50%;right:0;
		transform: translateY(-50%);
		font-family: bootstrap-icons !important;
		content: "\f282";
		color: #fff;
		font-weight: 700;
	}
	
	.accordion .card-header .card-link[aria-expanded="true"]:after {
		content: "\f286";
	}
	
	.accordion .card-header * {
		color: #fff;
		font-weight: 700;
		text-transform: uppercase;
	}
	
	.lead-table {
		background: linear-gradient(45deg, #e89219cc, #e87d3ecc);
		border-collapse: collapse;
	}

	.lead-table td {
		position: relative;
		width:20vw;
		height:15vw;
		border: 1px solid rgba(255,255,255,0.5);
		text-align: right;
		color:#fff;
		text-transform: uppercase;
		padding:1vw;
		font-size: 1.25vw;
		vertical-align: bottom;
	}
	
	.lead-table td.leader {
		width:40vw;
		height:30vw;
		font-size: 2.25vw;
	}

	.lead-table td b {
		font-size:2em;
		display: block;
	}

	.lead-table td i {
		position:absolute;
		top:1em;left:1em;
		color: #e89219cc;
		background: #fff;
		width: 3em;
		height: 3em;
		border-radius: 50%;
		text-align: center;
		line-height: 3em;
		vertical-align: middle;
		padding: 0;
	}

	.carousel-control-next, .carousel-control-prev {
		z-index:99;
	}
	
	.slogan {
		margin-left: 0.5em;
		font-size: 36px;
		background: linear-gradient(45deg, #e89219cc, #e87d3ecc);
		color: #fff;
		padding: 0.25em 0.5em;
		display: inline-block;
		position: relative;
	}

	.slogan:before {
		position: absolute;
		top: -0.4em;
		left: -0.4em;
		height: 1em;
		width: 1em;
		background: #cdd8da96;
		content: "";
	}