html {
	scroll-behavior : auto !important;
}

/* //////////////////////////////////////////////////////////// */
/* // Type , vars, main */
/* //////////////////////////////////////////////////////////// */
:root {
	--white              : #FFF;
	--black              : #000;
	--primary            : #384435;
	--primary-lighter    : #BBC8B8;
	--primary-darker     : #D2E0EC;
	--secondary          : #E06A26;
	--secondary-lighter  : #E6E0D6;
	--secondary-darker   : #E4E9E3;
	--tertiary           : #C7D8E7;
	--tertiary-lighter   : #F5F3EF;
	--tertiary-darker    : #a4bed5;
	--preloader-bg       : #fff;
	--preloader-circle   : rgba(30, 30, 30, 0.1);
	--form-error         : #690207;
	--input-label        : #000;
	--input-color        : #000;
	--input-placeholder  : #000;
	--input-bg           : #fff;
	--input-borders      : grey;
	--header-size-large  : 0px;
	--header-size-medium : 0px;
	--header-size-small  : 0px;
	--swiper-theme-color : #FFF;
	--swiper-bullet      : #FFF;
	--swiper-bullet-off  : #000;
	--swiper-bullet-on   : #FFF;
	--nav-large          : 0px;
	--nav-small          : 0px;
	--alt-font           : Times;
	--popup-bg           : #000;
	--popup-colour       : #FFF;
	--padding-x          : 80px;
	--grid-gap           : 70px;
	--space              : 0.8;
}

body, html {
	color : var(--primary);
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	font-family : 'RoxboroughCF-Regular';
	font-weight : 500;
	/*color       : var(--primary);*/
}

h1, .h1 {
	font-size      : var(--step-6);
	margin-bottom  : 1.5rem;
	letter-spacing : 1px;
}

.h1 b,
h1 b {
	font-family : 'RoxboroughCF-Bold';
}

h2, .h2 {
	font-size      : var(--step-7);
	margin-bottom  : 1.3rem;
	letter-spacing : 1px;
}

h3, .h3 {
	font-size      : var(--step-8);
	margin-bottom  : 1.1rem;
	letter-spacing : 1px;
}

h4, .h4 {
	font-size      : var(--step-9);
	margin-bottom  : 1rem;
	letter-spacing : 1px;
}

/* //////////////////////////////////////////////////////////// */
/* // Header and Main Navigation */
/* //////////////////////////////////////////////////////////// */
.navbar-logo img {
	max-height : 38px;
	padding    : 7px 0 6px 0;
}

.navbar-items > ul {
	margin : 0px auto;
}

nav {
	background : var(--primary);
	z-index    : 42;
}

.desktop-logo {
	width       : 269px;
	height      : 35px;
	padding-top : 7px;
}

nav .inner {
	justify-content : center;
}

.navbar-items li {
	position : relative;
}

.navbar-items li div {
	width               : 29px;
	height              : 5px;
	background-image    : url("../images/swish-dark.svg");
	background-size     : 41px auto;
	background-repeat   : no-repeat;
	overflow            : hidden;
	background-position : bottom center;
	position            : absolute;
	left                : 0;
	right               : 0;
	bottom              : 0;
	top                 : auto;
	margin              : auto;
	transition          : all 0.25s ease-in-out;
	opacity             : 0;
	visibility          : hidden;
	z-index             : 1;
}

.navbar-items li.active div /*,
.navbar-items li:hover div */
{
	bottom     : 14px;
	/*height     : 10px;*/
	opacity    : 1;
	visibility : visible;
}

.navbar-items a {
	font-weight : 100;
	white-space : nowrap;
}

body[folder="home"] nav-spacer {
	display : none;
}

body[folder="home"] nav {
	opacity    : 0;
	visibility : hidden;
}

body[folder="home"].scrolled nav {
	opacity    : 1;
	visibility : visible;
}

/* //////////////////////////////////////////////////////////// */
/* // Content */
/* //////////////////////////////////////////////////////////// */
body,
.generic {
	font-size   : 14px;
	font-family : "europa", sans-serif;
	font-weight : 300;
	font-style  : normal;
}

.fix-image {
	max-height : 85vh;
}

/* //////////////////////////////////////////////////////////// */
/* // Footer */
/* //////////////////////////////////////////////////////////// */
.nav-social {
	transition : all 0.25s ease-in-out;
	width      : 32px;
}

.nav-social:hover {
	filter : invert();
}

.footer-bottom {
	padding-left  : 10px;
	padding-right : 10px;
}

.footer-middle {
	border-top    : 1px solid rgba(255, 255, 255, 0.5);
	border-bottom : 1px solid rgba(255, 255, 255, 0.5);
	display       : block;
	text-align    : center;
}

form .sub-title {
	font-size : 18px;
}

/* //////////////////////////////////////////////////////////// */
/* // Buttons */
/* //////////////////////////////////////////////////////////// */
.button {
	color            : #fff;
	background-color : var(--primary);
	letter-spacing   : 1px;
	text-transform   : uppercase;
	padding          : 5px 30px;
	display          : inline-block;
	min-width        : 140px;
}

.button:hover {
	color            : #fff;
	background-color : #000;
	letter-spacing   : 1px;
	text-transform   : uppercase;
}

.button.button-blue {
	background-color : var(--tertiary);
	color            : var(--primary);
	text-transform   : none;
	letter-spacing   : 0px;
}

.button.button-blue:hover {
	background-color : var(--tertiary-darker);
	color            : var(--primary)
}

/* //////////////////////////////////////////////////////////// */
/* // Forms */
/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
/* // Custom */
/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
.artist-impression {
	opacity     : 0.8;
	font-family : 'Arial', sans-serif;
}

.gradient {
	transition : all 1s ease-in-out;
	position   : absolute;
	z-index    : 20;
	bottom     : 0;
	left       : 0;
	height     : calc(100vh - 200px);
	width      : 100%;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0.21+0,0+100;Neutral+Density */
	background : linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.33) 100%);
}

.swiper-pagination {
	text-align : left;
	left       : 30px !important;
	bottom     : 20px !important;
}

.scroll-down {
	width : 30px;
}

.padding-x .swiper-arrows {
	position : absolute;
	top      : 0;
	bottom   : 0;
	margin   : auto 0;
	width    : 100%;
	height   : 50%;
}

.shape {
	opacity    : 1;
	height     : 230px;
	width      : 100%;
	max-height : 30vh;
}

.grid-2 {
	display               : grid;
	grid-template-columns : 1fr 1fr;
}

.grid-3 > div {
	padding       : 0px 15px;
	border-right  : 1px solid #000;
	position      : relative;
	margin-bottom : 39px; /* Space below each item */
}

.grid-3 {
	display               : grid;
	grid-template-columns : repeat(3, 1fr);
	grid-gap              : 60px 0;
	margin                : 0px auto 0px calc(var(--grid-gap) * -1);
	width                 : calc(100% + calc(var(--grid-gap) * 2));
	height                : calc(100% - 1px);
	overflow              : hidden;
}

.grid-3.updates {
	grid-template-columns : repeat(3, 33.3%);
}

/* Create the horizontal rule */
.grid-3.grid-extra > div:after {
	content          : "";
	display          : block;
	height           : 1px;
	background-color : #000;
	position         : absolute;
	bottom           : -50px;
	left             : 0;
	width            : calc(100% + 1px);
}

.grid-3.grid-extra > div {
	padding-left  : var(--grid-gap);
	padding-right : var(--grid-gap);
}

.grid-3 > div:last-child {
	border-right : none;
}

/*.grid-3.grid-extra > div:nth-child(3n + 1) {
	padding-left: 0;
}

.grid-3.grid-extra > div:nth-child(3n + 1) {
	padding-left: 0;
}
.grid-3.grid-extra > div:nth-child(3n) {
	padding-right: 0;
}*/
.grid-4 > div {
	padding      : 0px 15px;
	border-right : 1px solid rgb(187 144 104 / 50%)
}

.grid-4 {
	display               : grid;
	grid-template-columns : repeat(4, 1fr);
	grid-gap              : 30px 0;
}

.grid-4 > div:last-child,
.grid-4 > div:nth-child(4n) {
	border-right : none;
}

.grid .line {
	margin : -6px auto 10px auto;
}

hr {
	border-color : #000;
}

.date-style {
	font-size      : 11px;
	letter-spacing : 0.5px;
}

.invert-button {
	filter : invert(1) brightness(100) contrast(100);
}

.slider-text {
	text-shadow : 0px 0px 5px #00000085;
}

.slider_1 h3 {
	text-shadow : 0px 0px 10px #00000085;
}

.slider_one p,
.slider_three p {
	text-align     : center;
	padding        : 15px 5px 5px 5px;
	font-size      : 80%;
	letter-spacing : 1px;
}

.form-box .suggestions {
	margin-top : -1px;
	border-top : 1px solid grey;
}

.square {
	aspect-ratio : 1/1;
}

.social-icons > div {
	padding : 3px 5px 3px 5px;
}

.social-icon {
	width  : 42px;
	height : 42px;
	/*margin-right: -5px;
	margin-left: 5px;*/
}

.hl-logo {
	margin-left : auto;
	max-height  : 40px;
	width       : auto;
	max-width   : 125px;
}

.line-list {
	list-style : none;
	padding    : 0px;
	margin     : 0px;
	text-align : left;
}

.line-list li {
	padding    : 0px;
	margin     : 0px;
	transition : all 0.25s ease-in-out;
}

.line-list li:hover {
	margin-right : -10px;
}

.line-list li a {
	padding       : 5px 15px 5px 5px;
	display       : block;
	position      : relative;
	margin        : 0px;
	border-bottom : 1px solid #384435;
}

.line-list li a:after {
	background-repeat : no-repeat;
	position          : absolute;
	background-image  : url(../images/nugget.svg);
	height            : 50%;
	width             : 15px;
	right             : 0;
	top               : 0;
	content           : "";
	bottom            : 0;
	margin            : auto;
}

.grid-news > div {
	border-color   : #384435;
	padding-top    : 0px;
	padding-bottom : 0px;
}

.grid-news > div h3 {
	margin-top : 0px;
}

.slider_three p,
.slider_one p {
	text-transform : uppercase;
}

.desktop-logo-fix-b {
	text-align : center;
	width      : 100%;
}

.stage-info {
	border-bottom : 1px solid #000;
}

.stage-info td {
	padding        : 5px;
	text-align     : left;
	vertical-align : top;
	border-bottom  : 1px solid #000;
}

.stage-info thead div {
	font-family : 'TT Firs Text Demi';
	/*text-transform : uppercase;*/
	/* border-bottom: 1px solid #000; */
}

.stage-info small {
	font-size : 80%;
}

@media (min-width : 1600px) {
}

@media (min-width : 1400px) {
	/*.desktop-logo-fix-b {
		width      : 570px;
		text-align : center;
	}*/
	.swiper-button-prev,
	.swiper-rtl .swiper-button-next {
		left : var(--swiper-navigation-sides-offset, 40px);
	}

	.swiper-button-next, .swiper-rtl .swiper-button-prev {
		right : var(--swiper-navigation-sides-offset, 40px);
		left  : auto;
	}

	.swiper-pagination {
		left   : 40px !important;
		bottom : 40px !important;
	}

	.updates .swiper-pagination {
		left   : 20px !important;
		bottom : 20px !important;
	}
}

@media (min-width : 1200px) {
	:root {
		--padding-x : 50px;
	}
}

@media (min-width : 1025px) {
	.desktop-logo {
		margin-right : -25px;
		display      : inline-block;
	}

	hr {
		max-width : calc(100% - 50px);
		margin    : 0 auto;
	}

	.slider_1 h3 {
		line-height : 35px;
	}

	.slider_1 h3 img {
		margin-top : -10px;
	}

	/* Apply styles for the first element in each row */
	.grid-3.grid-extra > div:nth-child(3n + 1):after {
		margin-left : 70px;
		max-width   : calc(100% - 70px);
	}

	/* Apply styles for the last element in each row */
	.grid-3.grid-extra > div:nth-child(3n):after {
		max-width : calc(100% - 70px);
	}

	.navbar-items,
	nav .navbar-items ul,
	.main-nav {
		width     : 100%;
		max-width : 100%;
	}

	nav .navbar-items ul {
		justify-content : center;
		/*max-width       : calc(100vw - 90px);*/
	}

	.navbar-items .desktop-logo-fix a {
		padding : 15px 14px;
	}

	.navbar-items > ul > li {
		border-left  : 1px solid var(--primary);
		border-right : 1px solid var(--primary);
		margin-right : -1px;
		position     : relative;
		line-height  : 3;
		display      : block;
		height       : 100%;
	}

	.navbar-items > ul > li:first-of-type {
		border-left : none;
	}

	.toggle-nav {
		display : none !important;
	}

	.navbar-items ul > li {
		position : relative;
	}

	.navbar-items ul > li ul {
		visibility       : hidden;
		position         : absolute;
		bottom           : -42px;
		left             : -42px;
		padding          : 12px 20px 12px 20px;
		color            : var(--primary-darker);
		background-color : var(--tertiary);
		overflow         : hidden;
		width            : 160px;
		max-height       : 0;
		opacity          : 0;
	}

	.navbar-items ul > li ul > li:first-of-type a {
		padding-top : 0px;
	}

	.navbar-items ul > li ul > li:last-of-type a {
		padding-bottom : 0px;
	}

	.navbar-items ul > li:hover ul {
		visibility : visible;
		max-height : 400px;
		opacity    : 1;
	}

	.navbar-items ul > li ul li {
	}

	.navbar-items ul ul li.active > a,
	.navbar-items ul > li ul li a.active,
	.navbar-items ul > li ul li:hover a {
		color : var(--primary-darker);
	}

	.navbar-items > ul > li.active:not(.desktop-only) div {
		/*color            : #fff;
		background-color : var(--primary);*/
		opacity    : 1;
		visibility : visible;
	}

	.always-on {
		color            : #fff;
		background-color : var(--primary);
	}

	.navbar-items > ul > li:hover:not(.desktop-only) a {
		color            : #fff;
		background-color : var(--primary);
	}

	.navbar-items > ul > li:hover:not(.desktop-only) div {
		background-image : url(../images/swish-light.svg);
	}

	.navbar-items ul > li ul li a {
		color   : var(--primary-darker);
		padding : 3px 0;
		display : block;
	}

	.navbar-items .nav-fix {
		position : absolute;
		right    : -65px;
	}

	.navbar-items a {
		padding    : 15px 25px;
		width      : 100px;
		text-align : center;
	}

	.main-nav {
		padding   : 0px 0px;
		font-size : 13px;
	}

	nav .navbar-items ul {
		height  : 69px;
		padding : 0px;
	}

	.grid-3 > div:nth-child(3n) {
		border-right : none;
	}
}

@media (min-width : 769px) {
	/*.slider_one .swiper-slide img {
		max-width : 313px;
	}*/
	.white-fix > div {
		width     : 100%;
		max-width : 413px;
	}

	.padding-x .swiper-button-prev {
		left : -39px;
	}

	.padding-x .swiper-button-next {
		right : 62px;
	}

	/*.fix-1 {
		margin-right : -80px;
	}*/
	footer .desktop-only {
		display : inline-block;
	}

	.intro .generic .h1 {
		font-size   : var(--step-1);
		line-height : var(--step-1);
	}

	.intro .generic .h1.bigger {
		font-size : 121px;
	}
}

@media (max-width : 1200px) {
	:root {
		--padding-x : 50px;
	}
}

@media (max-width : 1024px) {
	:root {
		--grid-gap : 22px;
	}

	.grid-4,
	body:not([folder="home"]) .grid-3 {
		grid-template-columns : repeat(2, 50%);
		grid-gap              : 50px 0;
	}

	.grid-4 > div:last-child,
	.grid-4 > div:nth-child(2n),
	body:not([folder="home"]) .grid-3 > div:last-child,
	body:not([folder="home"]) .grid-3 > div:nth-child(2n) {
		border-right : none;
	}

	.navbar-items > ul > li:not(.desktop-only).active > a {
		font-weight : bold;
	}

	.navbar-items li div {
		display : none;
	}

	.navbar-items ul {
		margin  : 20px 0 0 0 !important;
		padding : 20px 0;
	}

	.main-nav .desktop-only {
		display : none !important;
	}

	.main-nav .touch-only {
		display : block !important;
	}
}

@media (max-width : 768px) {
	.white-fix > div {
		width     : 100%;
		max-width : 75%;
		padding   : 60px 0;
	}

	.padding-x .swiper-button-prev {
		left   : 12px;
		filter : invert(1) brightness(100) contrast(100);
	}

	.padding-x .swiper-button-next {
		right  : 75px;
		filter : invert(1) brightness(100) contrast(100);
	}

	.white-fix .padding-x .swiper-button-prev,
	.white-fix .padding-x .swiper-button-next {
		filter : none;
	}

	.white-fix .swiper-button-prev {
		left : -40px;
	}

	.white-fix .swiper-button-next {
		right : -40px;
	}

	.swiper-pagination {
		text-align : center;
		width      : 100%;
		left       : 0 !important;
		bottom     : 10px !important;
	}

	.height-fix,
	.height-fix > div:not(.artist-impression),
	.height-fix > div img.main-image {
		max-height : calc(80vh - (var(--padding-x) * 2));
		height     : 100%;
	}

	:root {
		--padding-x : 30px;
	}

	.footer-bottom {
		text-align : center;
	}
}

@media (max-width : 640px) {
}

@media (min-width : 480px) {
}

@media (max-width : 480px) {
	:root {
		--grid-gap : 22px;
	}

	.grid-3,
	.grid-4 {
		grid-template-columns : repeat(1, 100%) !important;
		grid-gap              : 40px 0;
	}

	.grid-3 > div,
	.grid-4 > div {
		border-right : none;
	}

	.shape {
		height : 15vh;
	}

	.footer-bottom .flex {
		align-content   : center;
		justify-content : center;
	}

	.social-icon {
		width  : 32px;
		height : 32px;
	}

	.swiper-pagination {
		bottom : 23px !important;
	}
}