.style12 {font-size: 12px}
.style13 {color: #FFCC33}
.style14 {font-size: 10px}
.style15 {
	font-family: "trojan pro";
	color: #FFFFFF;
	font-size: 12px;
}

body {
	overflow-x: hidden;
}

section#banner {
	display: none;
}

.scrollspy-main-list {
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.scrollspy-main-list a {
	filter: drop-shadow(2px 4px 6px black);
	color: #eacf7e !important;
	transition: all .3s ease-out;
}
.scrollspy-main-list a:hover {
	opacity: 0.7;
	transform: scale(1.5);
}
.scrollspy-main-list a::after {
	font: normal normal 900 0.75rem/1 "Font Awesome 6 Free";
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
	font-weight: 500;
	content: '\f111';
}
.scrollspy-main-list a.active::after {
	content: '\f192';
}

.gallery .col {
	filter: drop-shadow(2px 4px 6px black);
}

.carousel-item img, .gallery a[data-fancybox], .gallery a[data-fancybox] img {
	-webkit-user-drag: none;
}

video.bg-video {
	position: absolute;
	top: 0;
	left: 50%;
	width: 100vw;
	height: 100vh;
	max-width: clamp(1920px, 1920px, 100vw);
	object-fit: cover;
	z-index: -1;
	pointer-events: none;
	transform: translate(-50%, 0);
}

.main-content .video-banner {
	height: 100vh;
	margin-bottom: 3rem;
	position: relative;
	overflow: hidden;
}

.main-content .video-banner::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg,#816f59,#ebc9a0,#816f59,#ebc9a0,#816f59),linear-gradient(90deg,#ebc9a0,#816f59,#ebc9a0);
	background-blend-mode: normal,normal;
	width: 200%;
	max-width: clamp(1920px, 1920px, 100vw);
	transform: translateX(-50%);
}

html:not([data-template]) video.bg-video {
	width: calc(980px - 41px);
	max-width: calc(980px - 41px);
	z-index: 0;
}

html:not([data-template]) .main-content .video-banner::after {
	width: calc(100% - 42px);
	max-width: calc(100% - 42px);
}

@media only screen and (min-width: 1024px) {
	html[data-template="template-1"], html[data-template="template-2"] {
		background: #181c1f url(../images/main/main_bg.jpg) center top/100% no-repeat;
		background-image: image-set(
			"../images/main/main_bg.webp" type("image/webp"),
			"../images/main/main_bg.avif" type("image/avif"),
			"../images/main/main_bg.jpg" type("image/jpg") );
	}
	html:has(.bg-video) {
		background: #181c1f url(/images/main/background-texture.jpg) center/cover no-repeat fixed;
	}
	:root::after {
		content: '';
		background: linear-gradient(to bottom, rgb(0 0 0 / 15%) 0%, rgba(0,136,204,0) 100%) !important;
		display: block;
		position: fixed;
		width: 100%;
		height: 100vh;
		top: 0;
		pointer-events: none;
		z-index: -1;
	}
	html:not([data-template]) section#main .wrapper {
		background: url(../images/backround-clear-black.jpg) no-repeat center top;	
		background-size: 100% 106.5%;
	}
	html:not([data-template]) .carousel {
		margin: 1.15rem 1.35rem 4rem 1.44rem;
	}
	
	body {
		max-width: 1260px !important;
	}
	html:not([data-template]) body {
		max-width: none !important;
	}
	html[data-template="template-1"] section#main, html[data-template="template-1"] section#footer, 
	html[data-template="template-2"] section#main, html[data-template="template-2"] section#footer {
		width: clamp(815px, 85.9vw, 1042px);
		width: clamp(815px, 100vw, 1042px);
	}
	html[data-template="template-1"] section#main, 
	html[data-template="template-1b"] section#main, 
	html[data-template="template-2"] section#main, 
	html[data-template="template-3"] section#main {
		transform: translate(-0.6px, 70px);
		transform: none;
	}
	
	html[data-template="template-1"] body > header:not(.sticky), 
	html[data-template="template-1b"] body > header:not(.sticky), 
	html[data-template="template-2"] body > header:not(.sticky), 
	html[data-template="template-3"] body > header:not(.sticky) {
		background: none !important;
		filter: none;
		box-shadow: none;
		position: static !important;
		transform: none;
	}
	html[data-template="template-1"] body > header:not(.sticky) .nav > li a:not(:hover), 
	html[data-template="template-1b"] body > header:not(.sticky) .nav > li a:not(:hover), 
	html[data-template="template-2"] body > header:not(.sticky) .nav > li a:not(:hover), 
	html[data-template="template-3"] body > header:not(.sticky).nav > li a:not(:hover) {
		filter: drop-shadow(2px 4px 6px black);
	}
	html[data-template="template-1"] body header:not(.sticky) #google_translate_element select, 
	html[data-template="template-1b"] body header:not(.sticky) #google_translate_element select, 
	html[data-template="template-2"] body header:not(.sticky) #google_translate_element select, 
	html[data-template="template-3"] body header:not(.sticky) #google_translate_element select {
		background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0z'/%3E%3Cpath fill='%23212529' d='M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6z'/%3E%3C/svg%3E") calc(100% - 0.5rem) center/1.1rem no-repeat;
		color: var(--bs-dark);
		border: solid 1px var(--bs-gray-700) !important;
	}
	
	html[data-template="template-1"] body:has(.bg-video) header:not(.sticky) #google_translate_element select, 
	html[data-template="template-1b"] body:has(.bg-video) header:not(.sticky) #google_translate_element select, 
	html[data-template="template-2"] body:has(.bg-video) header:not(.sticky) #google_translate_element select, 
	html[data-template="template-3"] body:has(.bg-video) header:not(.sticky) #google_translate_element select {
		background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0z'/%3E%3Cpath fill='%23ffffff' d='M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6z'/%3E%3C/svg%3E") calc(100% - 0.5rem) center/1.1rem no-repeat;
		color: var(--bs-light);
		border: solid 1px #a6a6a6 !important;
	}
	
	/*html[data-template="template-1"] #mainCarousel {
		width: 96.5% !important;
		margin: 0 auto 3rem;
	}*/
}

@media only screen and (max-width: 1023px) {
	.main-content {
		margin-top: 0;
	}
	html:not([data-template]) video.bg-video {
		max-width: 100%;
	}
	html:not([data-template]) .main-content .video-banner::after {
		width: 100%;
		max-width: 100%;
	}
	html[data-template="template-1"], html[data-template="template-2"] {
		background: #181c1f url(../images/main/main_bg-sm.jpg) fixed center top/cover no-repeat;
		background-image: image-set(
			"../images/main/main_bg-sm.webp" type("image/webp"),
			"../images/main/main_bg-sm.avif" type("image/avif"),
			"../images/main/main_bg-sm.jpg" type("image/jpg") );
	}
	section#main .wrapper {
		background: linear-gradient(to bottom, rgb(0 0 0 / 15%) 0%, rgba(0,136,204,0) 100%) !important;
	}
}

@media only screen and (max-width: 767px) {
	html[data-template="template-1"], html[data-template="template-2"] {
		background: #181c1f url(../images/main/main_bg-xs.jpg) fixed center top/cover no-repeat;
		background-image: image-set(
			"../images/main/main_bg-xs.webp" type("image/webp"),
			"../images/main/main_bg-xs.avif" type("image/avif"),
			"../images/main/main_bg-xs.jpg" type("image/jpg") );
	}
}

.bg-transparent {
    background: transparent!important;
}
/* Carousel base class */
.carousel {
	margin-bottom: 4rem;
}
/* Since positioning the image, we need to help out the caption */
.carousel-caption {
	bottom: 3rem;
	z-index: 10;
}

/* Declare heights because of positioning of img element */
.carousel-item {
	height: 32rem;
}
.carousel-indicators [data-bs-target].active:hover {
	cursor: default;
}
.carousel-indicators [data-bs-target]:hover {
	background: #fff !important;
}

.carousel-control-next, .carousel-control-prev {
	top: 50%;
	bottom: auto;
	transform: translateY(-50%);
	z-index: 1;
	width: auto;
}

.carousel-control-next-icon, .carousel-control-prev-icon {
	background-image: url(../images/home.png);
	width: 48px;
	height: 34px;
	background-size: auto;
}
.carousel-control-next-icon {
	background-position: -518px -298px;
}
.carousel-control-prev-icon {
	background-position: -448px -298px;
}
.carousel-item img {
	filter: drop-shadow(2px 4px 16px var(--bs-primary));
}
.carousel-item img.colorate-move {
	object-fit: cover;
	height: 100%;
	max-height: 328px;
	transform: translateY(50%);
}
@media only screen and (min-width: 1024px) {
	.carousel-item img.colorate {
		animation: colorate 2s ease 2s infinite alternate;	
	}
	.carousel-item img.colorate-move {
		width: auto !important;
		float: right;
		animation: colorate-move 2s ease 2s infinite alternate;
	}
}
	
@keyframes colorate {
	0%   {filter: drop-shadow(2px 4px 16px var(--bs-primary));}
	100% {filter: drop-shadow(2px 4px 16px #eacf7e);}
}

@keyframes colorate-move {
	0%   {filter: drop-shadow(2px 4px 16px var(--bs-primary)); transform: translateY(50%) scale3d(1, 1, 1);}
	100% {filter: drop-shadow(2px 4px 16px #eacf7e); transform: translateY(50%) scale3d(.97, .97, .97);}
}

@media only screen and (max-width: 1023px) {
	.carousel-item {
		height: auto;
		flex-direction: column;
		padding: 2rem 0;
	}
	.carousel-item.active {
		display: flex;	
	}
	.carousel-item .container {
		margin: 3rem auto;
		padding: 0 3rem;
	}
	.carousel-caption {
		position: static;
		text-align: center !important;
	}
	.carousel-item img.colorate-move {
		height: 250px;
		object-position: center !important;
		transform: none;
		margin-right: 0 auto;
	}
}

/* MARKETING CONTENT
-------------------------------------------------- */

/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
	margin-bottom: 1.5rem;
	text-align: center;
}
/* rtl:begin:ignore */
.marketing .col-lg-4 p {
	margin-right: .75rem;
	margin-left: .75rem;
}
/* rtl:end:ignore */


/* Featurettes
------------------------- */

.featurette-divider {
	margin: 5rem 0; /* Space out the Bootstrap <hr> more */
}

/* Thin out the marketing headings */
/* rtl:begin:remove */
.featurette-heading {
	letter-spacing: -.05rem;
}

/* rtl:end:remove */

/* RESPONSIVE CSS
-------------------------------------------------- */

@media (min-width: 40em) {
	/* Bump up size of carousel content */
	.carousel-caption p {
		margin-bottom: 1.25rem;
		font-size: 1.25rem;
		line-height: 1.4;
	}

	.featurette-heading {
	font-size: 50px;
		}
}

@media (min-width: 62em) {
	.featurette-heading {
		margin-top: 7rem;
	}
}


/* Characters Carousel */
.carousel__nav {
  display: flex;
  justify-content: center;
  flex-direction: row-reverse;
}

#mainCarousel .carousel__button.is-prev, #mainCarousel .carousel__button.is-next {
  position: unset;
  transform: unset;

  margin: 0 12px;

  width: 26px;
  height: 26px;

  --carousel-button-svg-width: 17px;
  --carousel-button-svg-height: 17px;
  --carousel-button-svg-stroke-width: 2.6;

  border-radius: 50%;
  box-shadow: 0 0 0 2px #1d1d1f;
  outline: none;

  transition: opacity 0.15s;
}
#mainCarousel .carousel__button.is-prev:not(:hover), #mainCarousel .carousel__button.is-next:not(:hover) {
	color: #eacf7e !important;
}
.carousel__button {
	padding: 0 !important;
	background: transparent !important;;
}
.carousel__button.is-prev:not([disabled]):hover,
.carousel__button.is-next:not([disabled]):hover {
  background: #1d1d1f !important;;
  color: #fff;
}
html[data-template="template-1"] .carousel__button.is-prev:not([disabled]):hover, 
html[data-template="template-1"] .carousel__button.is-next:not([disabled]):hover {
	background: var(--bs-border-color) !important;
	color: #fff;
}

#newsCarousel a {
	transition: 0.25s;
	cursor: grab;
	position: relative;
}
#newsCarousel a, #newsCarousel a picture, .gallery a[data-fancybox], .has-image .fancybox__content {
	/*clip-path: polygon(20px 0%, calc(100% - 20px) 0%, 100% 20px, 100% calc(100% - 20px), calc(100% - 20px) 100%, 20px 100%, 0% calc(100% - 20px), 0% 20px);*/
	-webkit-mask-image:
		radial-gradient(circle at top left, transparent 0, transparent  20px, black 21px),
		radial-gradient(circle at top right, transparent 0, transparent  20px, black 21px),
		radial-gradient(circle at bottom left, transparent 0, transparent  20px, black 21px),
		radial-gradient(circle at bottom right, transparent 0, transparent  20px, black 21px);
	-webkit-mask-position: top left, top right, bottom left, bottom right;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 51% 51%;
	mask-image:
		radial-gradient(circle at top left, transparent 0, transparent 20px, black 21px),
		radial-gradient(circle at top right, transparent 0, transparent 20px, black 21px),
		radial-gradient(circle at bottom left, transparent 0, transparent 20px, black 21px),
		radial-gradient(circle at bottom right, transparent 0, transparent 20px, black 21px);
	mask-position: top left, top right, bottom left, bottom right;
	mask-repeat: no-repeat;
	mask-size: 51% 51%;
}
.gallery a[data-fancybox] {
	/*-webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500.9 296' preserveAspectRatio='none'%3E%3Cpath d='M486.8 0H14C14 7.8 7.7 14.1-.1 14.1V281.8c7.8 0 14.1 6.3 14.1 14.1H486.8c0-7.8 6.3-14.1 14.1-14.1V14.1c-7.7 0-14.1-6.3-14.1-14.1z'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;*/
	position: relative;
}
#newsCarousel a:not(:hover)::after, .gallery a[data-fancybox]:hover::after, .more-info .row .card:hover::after {
	content: "";
	border-image-source: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4BAMAAADLSivhAAAAJFBMVEVHcEz///////////////////////////////////////////8Uel1nAAAADHRSTlMA0FBAwO4UpTCIc2TPMYKpAAAA70lEQVRYw+3ZKw/CQBAE4ElDWh4Ogi8oLAKPoHiShhIwFdTXVOAISQUOBxKDx/D/sA10c0vWAJl17d53t2fnANYPlj9UVCpgL545KwoF3Mnd0wV3odE6ubG4phG6sTcVGlnqxv5SaJzdFtgJm640eFI/XpBrsLDqprgy4K/r/rZVUwPltWbHYq/DzeR9wsdcZ4Ht5uXYQ9HVWmCQjKqH9+OL3gLHaFH56n1CAWBMTExMTExMTExMTExMTExMTPwv2BQsmSItWMI0GGM8U4Boiy5toakuri2F+SxBsS2iNoXjplje9CBgeoowPYKwvrqeb75VOVBLwh0AAAAASUVORK5CYII=");
	border-image-slice: 40 40 40 40;
	border-image-width: 40px 40px 40px 40px;
	border-image-outset: 0 0 0 0;
	border-image-repeat: stretch stretch;
	border-style: solid;
	position: absolute;
	top: 5px;
	left: 5px;
	right: 5px;
	bottom: 5px;
	margin-left: 0;
	pointer-events: none;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
}
#newsCarousel .is-dragging a {
	cursor: grabbing;
}

#newsCarousel a picture {
  display: block;
  position: relative;
}

#newsCarousel a picture::after {
  opacity: 0;
  transition: 0.25s;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000;
}

#newsCarousel a picture img {
	object-fit: cover;
	object-position: top;
	transition: 0.25s;
	height: 435px;
	/*height: clamp(255px, 35vw, 435px);*/
}

#newsCarousel a:hover {
  box-shadow: 10px 10px 20px 0px rgb(0 0 0 / 4%),
    -10px 0 20px 0px rgb(0 0 0 / 4%);
}

.gallery .card img, .more-info .row .card img {
	transition: 0.25s;
}

#newsCarousel a:hover picture img, .gallery .card:hover img, .more-info .row .card:hover img {
  transform: scale(1.05);
}

#newsCarousel a:hover picture::after {
  opacity: 0.15;
}

.carousel__slide {
	--carousel-slide-width: max(30%, 150px);
	--carousel-slide-width: 300px;
	overflow: hidden;
}
.carousel__slide figure{
	margin: 0;
}
.carousel__slide figcaption {
	opacity: 0;
	background: rgb(255 255 255 / 78%);
	position: absolute;
	top: 0;
	backdrop-filter: blur(1px) brightness(0.75);
	/* filter: drop-shadow(2px 4px 6px black); */
	height: 100%;
	max-width: 100%;
	text-align: center;
	transition: opacity 0.15s;
}
.carousel__slide:hover figcaption {
	opacity: 1;
}

@media only screen and (min-width: 1024px) {
	html[data-template="template-1"] #newsCarousel.carousel {
		margin: 1rem -0.1rem 4rem;
	}
	html[data-template="template-2"] #newsCarousel.carousel {
		margin: 1rem 0.125rem 4rem;
	}
}


@media (max-width: 575px) {
	.more-info .row-cols-1>* {
		width: auto;
	}
	.more-info .row .card img {
		max-width: 33vw;
	}
}
