@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,700;1,400;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Six+Caps&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Gabarito:wght@200;400;700;900&family=Six+Caps&display=swap');
@import url('https://fonts.googleapis.com/css2?family=family=Montserrat:wght@300;400;700&display=swap');

html {
	scroll-behavior: smooth;
}

html, body {
	margin: 0;
	background: #3d3c3c;
}

body {
	position: relative;
	font-size: 14px;
	font-family: 'Cormorant Garamond';
}

.grecaptcha-badge { 
    visibility: hidden !important;
}

#loader {
	background: #803630;
	position: fixed;
	z-index: 9999999;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
}

#loader #loader-container {
	width: 200px;
	height: auto;
	overflow: hidden;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	margin: 0;
	color: #fff;
	font-size: 30px;
}

#loader #loader-container i {
	margin: 30px;
}

#loader #loader-container img {
	display: block;
	width: 100%;
}

header {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	height: 70px;
	padding: 20px 0 0 0;
	box-sizing: border-box;
	z-index: 999;
	display: none;
}

header #header-container {
	width: 1100px;
	height: 50px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

header #header-container img, #nav-logo img {
	max-width: 100%;
	max-height: 100%;
}

#nav-logo {
	height: 50px;
	width: calc(100% - 90px);
	position: absolute;
	left: 20px;
	top: 20px;
	padding-left: 20px;
	text-align: left;
	display: none;
}

nav {
	min-width: 50px;
	width: auto;
	padding: 20px 20px 0 0;
	height: auto;
	position: fixed;
	top: 0;
	right: 0;
	display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
 	flex-direction: column;
	justify-content: flex-start;
	direction: rtl;
	opacity: .7;
	z-index: 99999;
}

.inversed {
	opacity: .5;
}

.inversed .menu-btn {
	background: #fff;
	color: #49081c;
}

.inversed ul a {
	color: #fff;
}

.bright {
	opacity: 1 !important;
}

nav:hover {
	opacity: 1;
}

nav .menu-btn {
	width: 50px;
	height: 50px;
	background: #49081c;
	border-radius: 50px;
	color: #fff;
	line-height: 50px;
	overflow: hidden;
	cursor: pointer;
	margin-bottom: 20px;
	float: right;
	white-space: nowrap;
	position: relative;
	font-size: 16px;
	font-weight: bold;
}

nav .menu-btn i {
	display: inline-block;
	width: 50px;
	height: 50px;
	text-align: center;
	font-size: 22px;
	float: left;
	line-height: 50px;
}

nav .menu-btn span {
	white-space: nowrap;
	width: auto;
	display: inline-block;
	overflow: hidden;
	direction: ltr;
	padding: 0 0 0 50px;
	transition: all .2s ease-in-out;
	left: 0;
	position: absolute;
}

ul {
	list-style-type: none;
}

nav ul {
	height: auto;
	width: auto;
	overflow: hidden;
	float: left;
	display: block;
	margin: 0 0 20px 0;
	padding: 0;
	display: none;
}

nav ul a li {
	white-space: nowrap;
	height: 30px;
	line-height: 30px;
}

nav ul a {
	text-decoration: none !important;
	color: #000;
	font-weight: bold;
	font-size: 28px;
}

nav ul a li span {
	position: relative;
}

nav ul a li span:after {
	content: '';
	height: 10px;
	background: #ba493f;
	display: block;
	position: absolute;
	top: 20px;
	right: 0;
	z-index: -1;
	opacity: .6;
	transition:left 1s linear;
}

nav ul a:hover span:after {
	left: 0;
}

iframe {
	position: inherit;
	z-index: 9;
}

.video-container {
  position: relative;
  width: 500px;
  padding-bottom: 56.25%;
}

.video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.slick-dotted.slick-slider {
	margin-bottom: 0 !important;
}

.carousel-cell {
	width: 100%;
}

.slick-arrow {
	width: 50px !important;
	height: 50px !important;
	border-radius: 50px;
	background: #fff !important;
	position: absolute;
	opacity: 0.8;
	transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
	z-index: 2;
}

.slick-arrow:hover {
	opacity: 1;
}

.slick-arrow:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	text-align: center;
	line-height: 50px;
	color: #571428;
	font-weight: bold;
}

.slick-dots {
	bottom: 20px !important;
}

.slick-dots li {
	text-align: center;
}

.slick-dots li button {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.3);
	border: none;
	outline: none;
}

.slick-dots li button:before {
	display: none;
}

.slick-dots .slick-active button {
	background: rgba(255, 255, 255, 1);
}

.slick-next {
	right: 20px !important;
}

.slick-next:before {
	font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f054";
}

.slick-prev:before {
	font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f053";
}

.slick-prev {
	left: 20px !important;
}

/* HOME */
.landing {
	position: relative;
	background: transparent;
	align-items: center;
	display: flex;
}

.scroll {
	position: absolute;
	bottom: 40px;
	right: 20px;
	width: 50px;
	height: 50px;
	text-align: center;
	line-height: 50px;
	font-size: 40px;
	color: #49081c;
	cursor: pointer;
}

.scroll:after {
	content: 'Scroll';
	font-size: 14px;
	text-transform: uppercase;
	font-family: 'Gabarito';
	position: absolute;
	left: 0;
	right: 0;
	text-align: center;
	bottom: -30px;
	font-weight: bold;
	transition: all .5s ease-in-out;
}

.home {
	padding: 0 !important;
	color: #fff;
}

.landing .content-container .content-section {
	width: 100%;
	height: auto;
	overflow: hidden;
}

.landing .content-container .content-section h1 {
	font-family: 'Six Caps';
	font-weight: 400;
	font-size: 200px;
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 0;
	letter-spacing: 10px;
	text-transform: uppercase;
}

.landing .content-container .content-section p {
	font-size: 22px;
	text-align: center;
	margin: 0;
}

.landing .content-container .content-section .buttons {
	width: 100%;
	height: auto;
	overflow: hidden;
	display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	gap: 10px;
	flex-direction: row;
	flex-wrap: wrap;
	padding-top: 30px;
}

.landing .content-container .content-section .buttons>.btn {
	flex: 1 0 calc(50% - 5px);
}

.landing .content-container .content-section .buttons>.btn:first-child {
	flex: 0 1 100%;
}

.btn {
	text-align: center;
	font-size: 20px;
}

button {
	background: #49081c;
	color: #fff;
	height: 50px;
	line-height: 50px;
	box-sizing: border-box;
	text-align: center;
	border-radius: 50px;
	width: 100%;
	outline: none;
	border: none;
	font-family: 'Gabarito';
	font-size: 24px;
	cursor: pointer;
}

button:hover {
	background: #73203a;
}

.link {
	color: #fff;
}

.link:hover {
	text-decoration: none;
}

/* BAND */
.band-section {
	display: block !important;
	padding: 70px 0 20px 0;
}

.band-section h2 {
	margin: 20px 0;
	text-align: center;
}

.band-section p {
	margin: 20px 0 40px 0;
	text-align: center;
	font-size: 19px;
}

.members {
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}

.member {
	width: calc(20%);
}

.member img {
	width: 100%;
}

.member p {
	text-align: left;
}

.member .text {
	width: 100%;
	height: auto;
	overflow: hidden;
}

.band-photo {
	width: 100%;
	height: 400px;
	background-size: cover;
	background-position: center center;
}

/* CONTACT */
.contact {
	align-items: normal !important;
}
.contact .content-section p {
	text-align: left;
}

form {
	width: 100%;
	position: relative;
}

form .input {
	left: 0;
	right: 0;
	height: 50px;
	overflow: hidden;
	margin: 10px 0;
	background: #fff;
	border-radius: 25px;
	position: relative;
}

form .input label {
	position: absolute;
	left: 0;
	width: 110px;
	background: #fff;
	border-top-left-radius: 25px;
	border-bottom-left-radius: 25px;
	height: 50px;
	width: 160px;
	color: #000;
	font-weight: bold;
	line-height: 50px;
	box-sizing: border-box;
	padding: 0 10px 0 20px;
	font-size: 18px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

form .input input, form .input textarea {
	position: absolute;
	right: 0;
	left: 110px;
	height: 50px;
	line-height: 50px;
	border-bottom-right-radius: 25px;
	border-top-right-radius: 25px;
	background: #fff;
	border: none;
	outline: none;
	box-sizing: border-box;
	padding: 0 20px 0 5px;
	font-family: 'Montserrat';
}

#message {
	white-space: pre;
}

form .input textarea {
	position: absolute;
	top: 0;
	right: 0;
	line-height: 20px;
	padding: 15px 20px 20px 5px !important;
	height: 200px;
	resize: none;
	font-family: 'Montserrat';
}

form .textarea {
	height: 200px !important;
}

form .input button {
	height: 50px;
	line-height: 50px;
	border-radius: 50px;
}

form .input button:disabled {
	background: #856f76 !important;
	cursor: not-allowed;
}

#error-msg {
	position: fixed;
	width: 400px;
	bottom: 40px;
	right: 40px;
	height: auto;
	overflow: hidden;
	color: #fff;
	font-family: 'Gabarito';
	font-size: 18px;
	display: none;
	z-index: 3;
	transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.valid .msg {
	background: #25cc70;
}

.valid .title {
	background: #1a7543;
}

.invalid .title {
	background: #912020;
}

.invalid .msg {
	background: #c23838;
}

#error-msg .title {
	width: 100%;
	height: 40px;
	line-height: 40px;
	box-sizing: border-box;
	padding: 0 60px 0 20px;
	font-weight: bold;
	white-space: nowrap;
	text-overflow: ellipsis;
}

#error-msg .close-msg {
	position: absolute;
	right: 0;
	top: 0;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	cursor: pointer;
	transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
}

#error-msg .close-msg:hover {
	background: rgba(0, 0, 0, 0.3);
}

#error-msg .msg {
	width: 100%;
	height: auto;
	overflow: hidden;
	box-sizing: border-box;
	padding: 20px;
}
 
/* FOOTER */
footer {
	width: 100%;
	height: auto;
	padding: 20px 0 40px 0;
	overflow: hidden;
	background: rgba(0, 0, 0, 0.2);
}

footer #copyright {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.2);
	font-size: 12px;
	font-weight: 200;
	color: #fff;
	padding: 10px 0;
	text-align: center;
	font-family: 'Montserrat';
}

footer #copyright a {
	font-weight: 400 !important;
	color: #fff;
	text-decoration: none;
}

footer #footer-container {
	width: 1100px;
	height: auto;
	overflow: hidden;
	display: flex;
	justify-content: flex-start;
	margin-left: auto;
	margin-right: auto;
	flex-wrap: nowrap;
}

footer #footer-container .footer-item {
	height: auto;
	overflow: hidden;
	margin: 0 60px 0 0;
}

footer #footer-container .footer-item ul {
	padding: 0;
}

footer #footer-container .footer-item ul li {
	height: 24px;
	line-height: 24px;
	font-size: 12px;
	color: #fff;
	font-family: 'Montserrat';
	font-weight: 200;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

footer #footer-container .footer-item ul li:first-child {
	font-weight: bold;
}

footer #footer-container .footer-item ul li a {
	text-decoration: none;
	color: #fff;
}

footer #footer-container .footer-item ul li a:hover {
	text-decoration: underline;
}

.white footer {
	background: #803630;
}

/* GENERAL & REUSABLE STYLING */
section {
	width: 100%;
	height: auto;
	position: relative;
}

.landing {
	height: 100vh !important;
}

.brown {
	background: #803630;
	color: #fff;
}

.red {
	background: #571428;
	color: #fff;
}

.white {
	background: #fff;
}

.pink {
	background: #ea6f6a;
	color: #fff !important;
}

.no-bg {
	background: none !important;
}

.content-container {
	width: 1100px;
	height: auto;
	overflow: visible;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 70px 0;
	display: flex;
	gap: 50px;
	position: relative;
	align-items: center;
}

.full-width {
	width: 100% !important;
	overflow: hidden !important;
}

.content-section {
	position: relative;
	max-width: 50%;
	max-height: 100%;
}

.home .content-section {
	max-width: 30% !important;
}

.content-section p {
	font-size: 19px;
	text-align: justify;
}

.content-section img {
	max-width: 100%;
	flex: 0 0 auto;
	object-fit: scale-down;
}

.fx-photo {
	position: relative;
	overflow: visible;
}

.fx-photo img {
	opacity: 0;
	transition: all 1s ease-out;
	-o-transition: all 1s ease-out;
	-moz-transition: all 1s ease-out;
	-webkit-transition: all 1s ease-out;
}

.fx-round img, .fx-round:after {
	border-radius: 100% !important;
}

.fx-photo:after {
	content: ' ';
	position: absolute;
	top: -100px;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: all 1s ease-out;
	-o-transition: all 1s ease-out;
	-moz-transition: all 1s ease-out;
	-webkit-transition: all 1s ease-out;
	opacity: 0;
	background: rgba(0, 0, 0, 0.4);
}

.animate:after {
	top: -10px;
	left: -10px;
	opacity: 1;
	z-index: 1;
}

.animate img {
	margin: 10px 0 0 10px;
	opacity: 1;
	position: inherit;
	z-index: 2;
}

h2 {
	font-size: 56px;
	font-family: 'Gabarito';
}

h3 {
	font-size: 26px;
	font-weight: bold;
	margin: 0;
	padding: 0;
}

p {
	margin: 0 0 20px 0;
}

p a {
	text-decoration: underline;
	color: inherit !important;
}

p a:hover {
	text-decoration: none;
}

.transition {
	transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-webkit-transition: all .2s ease-in-out;
}

.open .social-btn {
	display: block;
}

.open #nav-logo {
	display: block;
}

nav .menu-btn .fa-xmark {
	display: none;
}

.open .menu-btn .fa-xmark {
	display: block;
}

.open .menu-btn .fa-bars {
	display: none;
}

/* RESPONSIVE STYLING */
@media only screen and (min-width: 1741px) {
	#nav-logo {
		display: none !important;
	}
}

@media only screen and (max-width: 1740px) {
	.open {
		background: #fff;
		width: 100%;
		height: 100vh;
	}

	nav {
		opacity: 1;
	}
}

@media only screen and (max-width: 1285px) {
    .content-container {
   		padding: 50px 110px 50px 20px;
   		width: 100%;
    }

    .band-section {
    	padding: 50px 70px 50px 20px;
   		width: 100%;
    }

    header #header-container, footer #footer-container {
    	width: 100%;
    	padding: 0 20px;
    }

   	.landing {
   		box-sizing: border-box;
   		padding: 0 20px;
   	}

	.landing .content-container {
		width: 100%;
	}

	.carousel-cell .content-container {
		display: block;
	}

	.carousel-cell .content-container .content-section {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}

	.video-container {
		width: 100%;
	}

	.band-section .members {
		padding: 0 30px;
		box-sizing: border-box;
	}
}

@media only screen and (max-width: 1100px) {

}

@media only screen and (max-width: 930px) {
   .home .content-section {
   		max-width: 50% !important;
   }

   .landing .content-container .content-section p {
   		font-size: 22px;
   }
}

@media only screen and (max-width: 890px) {
	header #header-container img, #nav-logo img {
		max-height: 30px;
	}

	.content-container {
		display: block;
	}

	.content-container .content-section {
		width: 100%;
		max-width: 100%;
	}

	footer #footer-container .footer-item {
		margin: 0 30px 0 0;
	}
}

@media only screen and (max-width: 780px) {
	.landing {
		background-position: 60% center;
	}
}

@media only screen and (max-width: 670px) {
	.landing .content-container .content-section h1 {
		font-size: 120px;
	}

	h2 {
		font-size: 32px;
	}

	#header-container, #footer-container, .content-container, .band-section {
	    padding: 70px 20px;
	    width: 100%;
	}

	.landing .content-container .content-section .buttons {
		display: block;
	}

	.landing .content-container .content-section .buttons .btn {
		width: 100%;
		height: 50px;
		line-height: 50px;
	}

	.slick-arrow {
		top: 50px;
	}

	.social-btn {
		display: none;
	}

	.scroll {
		color: #fff;
	}

	.member {
		width: 40%;
	}
}

@media only screen and (max-width: 510px) {
	.home {
		margin-top: 150px;
	}

	.home .content-section {
   		max-width: 100% !important;
   }

	footer #footer-container {
		flex-direction: column;
	}

	.member {
		width: 45%;
	}
}

@media only screen and (max-width: 470px) {
	.carousel-cell {
		width: 100%;
		margin: 0 20px;
		box-sizing: border-box;
	}

	.slick-arrow {
		top: 50px;
	}

	.slick-dots {
		left: 0;
		right: 0;
		bottom: 30px;
	}

	.slick-next {
		right: 20px !important;
	}
}

@media only screen and (max-width: 470px) {
	#error-msg {
		width: auto;
		left: 40px;
		bottom: 60px;
		right: 40px;
	}
}

@media only screen and (max-width: 380px) {
	.member {
		width: 100%;
	}
}

@media only screen and (max-width: 335px) {
	nav ul a {
		font-size: 21px;
	}

	.member {
		width: 100%;
	}
}