@charset "UTF-8";

/* --- FONTS --- */
@font-face {
    font-family: 'Modena Script';
    src: url('fonts/ModenaScript-Regular.woff2') format('woff2'),
        url('fonts/ModenaScript-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Modena Sans';
    src: url('fonts/ModenaSans-Regular.woff2') format('woff2'),
        url('fonts/ModenaSans-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* --- BOOTSTRAP 5THS GRID SYSTEM --- */
.col-10ths,.col-15ths,.col-20ths,.col-5ths,.col-lg-10ths,.col-lg-15ths,.col-lg-20ths,.col-lg-5ths,.col-md-10ths,.col-md-15ths,.col-md-20ths,.col-md-5ths,.col-sm-10ths,.col-sm-15ths,.col-sm-20ths,.col-sm-5ths,.col-xl-10ths,.col-xl-15ths,.col-xl-20ths,.col-xl-5ths{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-5ths{flex:0 0 20%;max-width:20%}.col-10ths{flex:0 0 40%;max-width:40%}.col-15ths{flex:0 0 60%;max-width:60%}.col-20ths{flex:0 0 80%;max-width:80%}@media (min-width:576px){.col-sm-5ths{flex:0 0 20%;max-width:20%}.col-sm-10ths{flex:0 0 40%;max-width:40%}.col-sm-15ths{flex:0 0 60%;max-width:60%}.col-sm-20ths{flex:0 0 80%;max-width:80%}}@media (min-width:768px){.col-md-5ths{flex:0 0 20%;max-width:20%}.col-md-10ths{flex:0 0 40%;max-width:40%}.col-md-15ths{flex:0 0 60%;max-width:60%}.col-md-20ths{flex:0 0 80%;max-width:80%}}@media (min-width:992px){.col-lg-5ths{flex:0 0 20%;max-width:20%}.col-lg-10ths{flex:0 0 40%;max-width:40%}.col-lg-15ths{flex:0 0 60%;max-width:60%}.col-lg-20ths{flex:0 0 80%;max-width:80%}}@media (min-width:1200px){.col-xl-5ths{flex:0 0 20%;max-width:20%}.col-xl-10ths{flex:0 0 40%;max-width:40%}.col-xl-15ths{flex:0 0 60%;max-width:60%}.col-xl-20ths{flex:0 0 80%;max-width:80%}}

/* --- GENERAL & INLINE ELEMENTS --- */
body {
	background: #1F1F1F;
	margin-top: 0;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
}

.text-color-black { color: #000000 !important; }
.text-color-white { color: #FFFFFF !important; }
.text-color-primary { color: #FA9397 !important; }
.text-color-secondary { color: #005569 !important; }

.bg-color-transparent { background-color: unset; }
.bg-color-black { background-color: #000000; }
.bg-color-white { background-color: #FFFFFF; }
.bg-color-primary { background-color: #FA9397 !important; }
.bg-color-secondary { background-color: #005569 !important; }

img:not( .avatar ) {
	width: 100% !important;
	height: auto !important;
}

/* --- MOBILE ARROW DOWN --- */
.mobile-arrow-down {
	pointer-events: none;
	z-index: 100;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40vh;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	
	background: linear-gradient(0deg, #1F1F1FFF 15%, #1F1F1F00 85%);
}

.mobile-arrow-down > i {
	font-size: 100px;
	margin-bottom: 75px;
}

/* --- GRIDS BOX LAYOUT --- */

body > div.container-fluid {
	padding: 15px 15px 0;
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
	padding-right: 0;
}

.row {
	margin-right: 0;
	padding-bottom: 15px;
	align-items: stretch;
}

.row > div > .row {
	padding-bottom: 0;
}

.row > div > .row:first-of-type {
	padding-bottom: 15px;
}

.row:last-child {
	padding-bottom: 0;
}

@media (min-width: 992px){
	div.container-fluid > .row:last-child {
		padding-bottom: 15px;
	}
	
	.row__2x__1x1__holder {
		height: 100%;
		padding-bottom: 0 !important;
	}
	
	.row__2x__1x1__holder > div:first-of-type {
		padding-bottom: 15px !important;
	}
}

@media (max-width: 991px){
	.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
		padding-bottom: 15px;
	}
	
	.row {
		padding-bottom: 0;
	}
	
	.row > div {
		padding-bottom: 15px;
	}
	
	.row > div > .row > div {
		padding-bottom: 0;
	}
	
	.row__2x__1x1__holder {
		padding-bottom: 0 !important;
	}
	
	.row__2x__1x1__holder > div.col-12:first-child {
		padding-bottom: 0;
	}
}

@media (max-width: 767px){
	.row {
		padding-bottom: 0 !important;
	}
	
	.row > div {
		padding-bottom: 0;
	}
	
	.box-holder {
		padding-bottom: 15px !important;
	}
}

.box {
	display: flex;
	width: 100%;
	height: 100%;
	
	align-items: center;
	justify-content: center;
	
	opacity: 0.0;
}

.box.zoomExecuted {
	opacity: 1.0;
}

.ratio-1x1::after {
	content: "";
	display: block;
	padding-bottom: 100%;
}

.ratio-2x1::after {
	content: "";
	display: block;
	padding-bottom: 50%;
}

.ratio-1x2::after {
	content: "";
	display: block;
	padding-bottom: 200%;
}

@media (max-width: 991px){
	div.container-fluid > .row > div > .box.ratio-1x1::after {
		padding-bottom: 50%;
	}
}

@media (max-width: 575px){
	div.container-fluid > .row > div > .box.ratio-1x1::after {
		padding-bottom: 100%;
	}
	
	.ratio-1x2::after {
		padding-bottom: 150%;
	}
}

/* --- INDIVIDUAL BOX STYLINGS --- */
.box {
	overflow: hidden;
	position: relative;
	text-decoration: none !important;
	outline: none !important;
}

.box:not( .bg-color-black, .bg-color-white, .bg-color-primary, .bg-color-secondary, .bg-color-primary-gradient, .bg-color-secondary-gradient ){
	background-color: unset;
}

a.box { cursor: pointer !important; transition: all 0.3s linear; }
a.box.bg-color-black:hover { background-color: #000000DD; }
a.box.bg-color-white:hover { background-color: #00000011; }
a.box.bg-color-primary:hover { background-color: #FA939799; }
a.box.bg-color-secondary:hover { background-color: #00556999; }

.box.bg-image-cover > div.background {
	z-index: 1;
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	
	background-size: cover;
	background-position: center;
	background-attachment: scroll;
	background-repeat: no-repeat;
	background-color: #F7F7F7; /* FALLBACK COLOR */
	
	transform: scale(1.0);
	transition: all 0.5s ease-in-out;
}

.box.bg-image-cover:hover > div.background {
	transform: scale(1.1);
}

.box.bg-image-cover.no-hover:hover > div.background {
	transform: scale(1.0) !important;
}

.box.bg-image-cover > div.overlay {
	z-index: 2;
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	
	opacity: 0.0;
	transition: all 0.5s ease-in-out;
}

.box.bg-image-cover:hover > div.overlay {
	opacity: 1.0;
}

.box.bg-image-cover > div.overlay.color-black { background: linear-gradient(0deg, #000000DF 0%, transparent 100%); }
.box.bg-image-cover > div.overlay.color-white { background: linear-gradient(0deg, #FFFFFFDF 0%, transparent 100%); }
.box.bg-image-cover > div.overlay.color-primary { background-color: #FA939755; }
.box.bg-image-cover > div.overlay.color-primary-gradient { background: linear-gradient(0deg, #FA9397 0%, transparent 100%); }
.box.bg-image-cover > div.overlay.color-secondary { background-color: #00556999; }
.box.bg-image-cover > div.overlay.color-secondary-gradient { background: linear-gradient(0deg, #005569 0%, transparent 100%); }

.box.bg-image-cover > div.overlay.color-primary, .box.bg-image-cover > div.overlay.color-secondary {
	opacity: 1.0;
}

.box.bg-image-cover:hover > div.overlay.color-primary, .box.bg-image-cover:hover > div.overlay.color-secondary {
	opacity: 0.0;
}

.box.bg-image-cover .overlay-content-holder {
	z-index: 3;
	position: absolute;
	margin-left: auto;
	margin-right: auto;
	bottom: -130px;
	
	display: flex;
	flex-direction: column;
	align-items: center;
	
	opacity: 0.0;
	
	transition: all 0.5s ease-in-out;
}

.box.bg-image-cover:hover .overlay-content-holder {
	opacity: 1.0;
	bottom: 30px;
}

.box.bg-image-cover .block-title {
	font-family: 'Modena Script';
    color: #FFFFFF;
    font-size: 26px;
}

.box.bg-image-cover .button {
	width: auto;
	
	display: inline-block;
	padding: 10px 25px;
	
	font-family: 'Modena Sans', sans-serif;
	font-weight: 600;
	font-size: 12px;
	
	border: 2px solid #FFFFFF;
	color: #FFFFFF;
	
	transition: all 0.5s ease-in-out;
}

.box.bg-image-cover .button:hover {
	color: #000000;
	background-color: #FFFFFF;
	border: 2px solid #FFFFFF;
}


/* BOX QUOTE */
.box.style-quote > .quotation-mark {
	position: absolute;
	top: 0;
	left: -15px;
	opacity: 0.2;
	width: 100%;
	
	font-family: 'Yeseva One', cursive;
	font-style: italic;
	font-weight: 400;
	font-size: 180px;
	line-height: 180px;
	letter-spacing: -15px;
}

.box.style-quote > .quote-text {
	z-index: 2;
	position: absolute;
	display: flex;
	align-items: center;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    padding: 15px;
	
    font-family: 'Modena Sans', sans-serif;
    font-size: 10px;
	line-height: 13px;
}

/* BOX INNER IMAGE */
.box.style-image > .inner-image {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	
	width: calc(100% - 60px);
	height: calc(100% - 60px);
	max-width: 450px;
	max-height: 450px;
	background-size: contain;
	background-position: center;
	background-attachment: scroll;
	background-repeat: no-repeat;
}

/* BOX TWO ROW TEXT */
.box.style-two-row-text > .content-holder {
	display: block;
	text-align: center;
	margin: 15px;
}

.box.style-two-row-text > .content-holder > .first-row {
	font-family: 'Modena Script';
	font-size: 36px;
}
.box.style-two-row-text > .content-holder > .second-row {
	font-family: 'Modena Sans';
	font-size: 12px;
}

/* BOX SIMPLE TEXT */
.box.style-simple-text > .simple-text {
	padding: 30px;
	text-align: center;
	
	font-family: 'Yeseva One', cursive;
	font-weight: 400;
	font-size: 24px;
}

/* --- MODAL STYLING --- */
.modal-backdrop { background-color: white; }

div.container-fluid {
	filter: blur(0);
	transition: filter 0.3s linear;
}

div.container-fluid.modalActive { filter: blur(5px); }

.modal-content {
	border: none;
	border-radius: 0;
	box-shadow: 15px 15px 30px rgba(0, 0, 0, 0.25);
}

.modal-body { padding: 40px; }

.modal-body .custom-modal-header {
	pointer-events: none;
	overflow: hidden;
	position: relative;
	display: block;
	margin: -40px -40px;
	margin-bottom:  -144px;
	
	background-size: cover;
	background-position: center;
	background-attachment: scroll;
	background-repeat: no-repeat;
	background-color: #F7F7F7; /* FALLBACK COLOR */
}

.modal-body .custom-modal-header::after {
	content: "";
	display: block;
	padding-bottom: 50%;
}

.modal-body .custom-modal-header .triangle {
	z-index: 10;
	position: absolute;
	bottom: 0;
	left: 0;
	
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 100px 0 0 100px;
	border-color: transparent transparent transparent #FFFFFF;
}

.modal-body div.custom-modal-close {
	cursor: pointer !important;
	position: relative;
	z-index: 10;
	display: inline-flex;
	align-items: center;
	margin-bottom: 40px;
}
.modal-body div.custom-modal-close > i {
	font-size: 60px;
	line-height: 60px;
	width: 60px;
	height: 60px;
}

.modal-body div.custom-modal-close > span {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	font-size: 18px;
	margin-left: 10px;
}

.modal-body h1 {
	position: relative;
	z-index: 10;
	
	font-family: 'Modena Script';
	font-size: 46px;
	
	margin-bottom: 40px;
	padding-left: 10px;
	
	color: #000000;
}

.modal-body p {
	position: relative;
	z-index: 10;
	
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600;
	font-size: 18px;
	
	margin-bottom: 36px;
	
	color: #000000;
}

@media (max-width: 991px){
	.modal-body .custom-modal-header {
		margin-bottom: -45px;
	}
	
	.box.bg-color-transparent.style-none {
		display: none !important;
	}
}

@media (max-width: 575px){
	.box.bg-image-cover > div.overlay {
		opacity: 1.0 !important;
	}
	
	.modal-body .custom-modal-header {
		margin-bottom: -45px;
	}
	
	.modal-body .custom-modal-header::after {
		padding-bottom: 100%;
	}
	
	.modal-body div.custom-modal-close {
		margin-bottom: 20px;
	}
	
	.modal-body div.custom-modal-close > i {
		font-size: 30px;
		line-height: 30px;
		width: 30px;
		height: 30px;
	}
	
	.modal-body div.custom-modal-close > span {
		font-size: 16px;
	}
	
	.modal-body h1 {
		font-size: 24px;
		margin-bottom: 32px;
	}
	
	.modal-body p {
		font-size: 16px;
		margin-bottom: 32px;
	}
}