html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{font-size:100%;font:inherit;padding:0;border:0;margin:0;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}.clear{clear:both}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}

textarea:focus, input:focus{outline: none;}
*:focus {outline: none;}

html {height: 100%;}

body {
	color: #FFFFFF;
	background-color: #3333F3;
	font-family: "merriweather", serif;
	font-weight: 300;
	font-style: normal;
	line-height: 1.5;
}
h1, h2, h3, h4, h5, h6 {
	font-family: soleil, sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1.2;
	margin: 0 0 20px 0;
}
h1, .h1 {
	font-size: 55px;
	font-weight: 800;
	text-wrap: balance;
	text-transform: uppercase;
}
h2 {
	font-size: 38px;
	font-weight: 800;
	text-wrap: balance;
	text-transform: uppercase;
}
h3 {
	font-size: 28px;
	font-weight: 400;
}
h4 {
	font-size: 24px;
	font-weight: 400;
}
h5 {
	font-size: 16px;
	font-weight: 700;
}
h6 {
	font-size: 14px;
	font-weight: 400;
}

p, li {
	font-size: 17px;
	margin: 0 0 20px 0;
}
i, em {font-style: italic;}
a {
	text-decoration: none;
	color: inherit;
}
b, strong, .bold {font-weight: 700;}

.white {color: #FFFFFF;}
.green {color: #00E600;}
.yellow {color: #FFC900;}


/* Containers */

.wrapper {
	background: linear-gradient(to bottom, #3333F3, #12067B);
	min-height: 100vh;
	overflow: hidden;
	position: relative;
}
.wrapper:before {
	content: '';
	width: 1000px;
	height: 700px;
	margin: 0 auto;
	position: absolute;
	top: 50px;
	left: 0;
	background-image: url(../im/gradient-triangle.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.full-width {
	width: 100%;
	float: left;
	box-sizing: border-box;
}
.fixed-width {
	width: 1170px;
	margin: 0 auto;
	box-sizing: border-box;
}
.inner-width {
	width: 1040px;
	margin: 0 auto;
	box-sizing: border-box;
}
.content {
	position: relative;
	margin-top: 140px;
}

/* /Containers */


/* Buttons */

.button {
	width: max-content;
	margin: 0 auto;
	margin-bottom: 20px;	
	text-align: center;
	color: #12067B;
	background-color: #FFC900;
	border-radius: 10px;
    position: relative;
    cursor: pointer;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    -ms-transition: .25s ease-in-out;
    -webkit-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    clear: both;
    box-sizing: border-box;
}
.button.style-alt {background-color: #00E600;}
.button a {
	display: block;
	padding: 10px 55px 10px 30px;
}
.button a h5 {margin: 0 auto;}
.button:after {
	content: '';
	width: 15px;
	height: 15px;
	margin: 0 auto;
	position: absolute;
	top: 12.5px;
	right: 30px;
	background-image: url(../im/icon-triangle.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	pointer-events: none;
}

/* /Buttons */


/* Transitions */

.transition {
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    -ms-transition: .25s ease-in-out;
    -webkit-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
.transition-slow {
	-moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    -ms-transition: .5s ease-in-out;
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}

/* /Transitions */


/* Header */

.header {
	height: 140px;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	background: linear-gradient(to right, #12067B, #3333F3);
}

.header .home {
	width: 30px;
	float: left;
	margin: 50px 0 0 0;
}
.header .home img {
	width: 100%;
	height: auto;
	float: left;
}

.header .logos {
	width: 820px;
    margin: 0 auto;
	display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 50px;
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
}
.header .logos .week,
.header .logos .awards {
	flex: 1;
	display: flex;   
}
.header .logos .week {justify-content: flex-end;}
.header .logos .awards {justify-content: flex-start;}
.header .logos .week img,
.header .logos .awards img {
	width: auto;
	height: 60px;
}
.header .logos .luxe-scot {
	flex: 0;
	width: auto;
	height: 90px;
}

.header .toggle {
	float: right;
	margin: 52.5px 0 0 0;
}

.header .divider {
	height: 10px;
	background: linear-gradient(to right, #FFC900, #3333F3, #00E600);
	margin: 0 auto;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.header .menu {
	width: 500px;
	height: calc(100vh - 140px);
	margin: 0 auto;
	padding: 50px 100px;
	position: absolute;
	top: 140px;
	right: -500px;
	background: linear-gradient(to bottom, #3333F3, #12067B);
	text-align: right;
	text-transform: uppercase;
	overflow-y: auto;
	box-sizing: border-box;
}
.header.menu-active .menu {right: 0;}
.header .menu .stage {
	min-height: 100%;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
}
.header .menu .stage .item {
	margin: 0 0 10px 0;
	position: relative;
}
.header .menu .stage .item a:hover,
.header .menu .stage .item.item-active a {color: #9696E9;}
.header .menu .stage .item h5 {font-size: 20px;}
.header .menu .stage .item h6 {font-size: 16px;}
.header .menu .stage .item.item-has-submenu > h5 {
	padding-right: 30px;
	position: relative;
}
.header .menu .stage .item.item-has-submenu > h5:after {
	content: '';
	width: 15px;
	height: 15px;
	margin: 0 auto;
	position: absolute;
	top: 50%;
    transform: translateY(-50%);
	right: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.header .menu .stage .item.item-has-submenu.style-yellow > h5:after {background-image: url(../im/icon-triangle-yellow.png);}
.header .menu .stage .item.item-has-submenu.style-green > h5:after {background-image: url(../im/icon-triangle-green.png);}

/* /Header */


/* Footer */

.footer {
	text-align: center;
	padding-top: 50px;
	position: relative;
}

.footer .socials {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 40px;
}
.footer .socials .item img {
	width: 30px;
	height: 30px;
}

.footer .logos {
    width: 600px;
    margin: 0 auto;
    padding: 40px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 50px;
}
.footer .logos .week,
.footer .logos .awards {
	flex: 1;
	display: flex;   
}
.footer .logos .week {justify-content: flex-end;}
.footer .logos .awards {justify-content: flex-start;}
.footer .logos .week img,
.footer .logos .awards img {
	width: auto;
	height: 40px;
}
.footer .logos .luxe-scot {
	flex: 0;
	width: auto;
	height: 80px;
}

.bopgun {
	color: #12067B;
	background-color: #FFFFFF;
	text-align: center;
}
.bopgun h6 {margin: 10px 0;}

/* /Footer */


/* Layouts */

.layouts .layout.style-white {
	color: #12067B;
	background-color: #FFFFFF;
}
.layouts ul,
.layouts ol {
	width: 100%;
	float: left;
	margin: 0 0 10px 0;
}
.layouts ul li,
.layouts ol li {margin: 0 0 10px 20px;}
.layouts ul li {list-style: disc;}
.layouts ol li {list-style: decimal;}
.layouts p a,
.layouts ul li a {
	font-weight: 700;
	text-decoration: underline;
}

.layout.l-hero {	
	display: flex;
    align-items: end;	
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
}
.layout.l-hero.type-title .breadcrumbs {margin: 20px 0 0 0;}
.layout.l-hero.type-title .title {
	padding: 100px 0 50px 0;
	text-align: center;
}
.layout.l-hero.type-image,
.layout.l-hero.type-image-alt {height: 660px;}
.layout.l-hero.type-image:before,
.layout.l-hero.type-image-alt:before {
	content: '';
	width: 75%;
	height: 100%;
	margin: 0 auto;
	position: absolute;
	bottom: 0;
	left: 0;	
	background-size: cover;
	background-position: right center;
	background-repeat: no-repeat;
}
.layout.l-hero.type-image:before {background-image: url(../im/gradient-triangle-2.png);}
.layout.l-hero.type-image-alt:before {background-image: url(../im/gradient-triangle-3.png);}
.layout.l-hero .copy {
	width: 520px;
	max-width: 70%;
	padding-bottom: 30px;
	position: relative;
}

.layout.l-copy {padding: 50px 0;}
.layout.l-copy .featured-title {
	margin: 0 0 30px 0;
	text-align: center;
}
.layout.l-copy .featured-title h2 {
	margin: 0 auto;
	line-height: 1.1;
}
.layout.l-copy .button,
.layout.l-copy .outro {margin-top: 30px;}

.layout.l-copy-form {padding: 100px 0 50px 0;}
.layout.l-copy-form .stage {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 100px;
    align-items: stretch;
}

.layout.l-form {padding: 50px 0;}
.layout.l-form .copy {margin: 0 0 20px 0;}

.layout.l-images .images {
	padding: 50px 0;
	display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch;
}
.layout.l-images .images img {
    width: 100%;
    height: auto;
    aspect-ratio: 1.4 / 1;
    object-fit: cover;
    object-position: center;
}

.layout.l-boxes-events .stage {display: flex;}
.layout.l-boxes-events .stage .box {
	width: 50%;
	float: left;
	padding: 100px 100px 80px 100px;
	background-size: cover;
	background-position: right center;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
}
.layout.l-boxes-events .stage .box:before {
    content: '';
    width: 100%;
    height: 150%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    right: 20px;
    background-image: url(../im/gradient-triangle.png);
    background-size: 100% 100%;
    background-position: top right;
    background-repeat: no-repeat;
}
.layout.l-boxes-events .stage .box .logo {position: relative;}
.layout.l-boxes-events .stage .box .logo img {
	width: auto;
	height: 80px;
	margin: 0 0 20px 0;
}
.layout.l-boxes-events .stage .box .copy {
	max-width: 350px;
	position: relative;
}
.layout.l-boxes-events .stage .box .button {float: left;}

.layout.l-sponsors {padding: 50px 0;}
.layout.l-sponsors .title {
	text-align: center;
	margin: 0 0 30px 0;
}
.layout.l-sponsors .list .item {
	display: flex;
	column-gap: 100px;
	margin: 0 0 50px 0;
}
.layout.l-sponsors .list .item:nth-child(2n+2) {flex-direction: row-reverse;}
.layout.l-sponsors .list .item .image img {
	width: 250px;
	height: auto;
	aspect-ratio: 1/1;
	object-fit: cover;
	object-position: center;
	border-radius: 100%;
}
.layout.l-sponsors .list .item .button {float: left;}

.layout.l-video {
	text-align: center;
	padding: 100px 0;
}
.layout.l-video video {
	width: 100%;
	height: auto;
	float: left;
}

.layout.l-boxes-cta,
.layout.l-boxes-winners,
.layout.l-boxes-awards {padding: 80px 0;}
.layout.l-boxes-winners.style-white,
.layout.l-boxes-awards.style-white {background-color: rgb(255,255,255,0.95);}
.layout.l-boxes-cta .list,
.layout.l-boxes-winners .list,
.layout.l-boxes-awards .list {    
    display: grid;
    column-gap: 40px;
    row-gap: 40px;
    justify-content: center;
    text-align: center;
}
.layout.l-boxes-cta .list {
	grid-auto-flow: column;
    grid-auto-columns: 260px;
}
.layout.l-boxes-winners .list {grid-template-columns: repeat(4, minmax(0, 1fr));}
.layout.l-boxes-awards .list {grid-template-columns: repeat(3, minmax(0, 1fr));}
.layout.l-boxes-cta .list .box,
.layout.l-boxes-winners .list .box,
.layout.l-boxes-awards .list .box {
	color: #12067B;
	background-color: #FFFFFF;
}
.layout.l-boxes-cta .list .box .image,
.layout.l-boxes-winners .list .box .image,
.layout.l-boxes-awards .list .box .image {position: relative;}
.layout.l-boxes-awards .list .box .image {
	min-height: 200px;
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.layout.l-boxes-cta .list .box .image img,
.layout.l-boxes-winners .list .box .image img {
	width: 100%;
    height: auto;
    float: left;
    aspect-ratio: 1.35 / 1;
    object-fit: cover;
    object-position: center;
}
.layout.l-boxes-winners .list .box .image .trigger {
	padding: 2.5px 0;
	background-color: #00E600;
	margin: 0 auto;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	cursor: pointer;
}
.layout.l-boxes-winners .list .box .image .trigger h5 {
	margin: 0 auto;
	display: inline-block;
}
.layout.l-boxes-winners .list .box .image .trigger img {
	width: 12.5px;
	height: auto;
	float: none;
	aspect-ratio: 1/1;
	margin: 0 auto;
	display: inline-block;
}
.layout.l-boxes-awards .list .box .image .title {padding: 20px;}
.layout.l-boxes-awards .list .box .image.has-label .title {padding: 50px 20px 20px 20px;}
.layout.l-boxes-awards .list .box .image .title h4 {margin: 0 auto;}
.layout.l-boxes-awards .list .box .image .label {
	padding: 2.5px 0;
	background-color: #00E600;
	margin: 0 auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	cursor: pointer;
}
.layout.l-boxes-awards .list .box .image .label h5 {
	margin: 0 auto;
	display: inline-block;
}
.layout.l-boxes-cta .list .box .copy {padding: 40px 20px 20px 20px;}
.layout.l-boxes-winners .list .box .copy,
.layout.l-boxes-awards .list .box .copy {padding: 20px;}
.layout.l-boxes-awards .list .box .copy .sponsor h5 {margin: 0 0 10px 0;}
.layout.l-boxes-awards .list .box .copy .sponsor img {
	width: 200px;
	max-width: 100%;
	height: auto;
}
.layout.l-boxes-winners .lightbox {
	opacity: 0;
	visibility: hidden;
	width: 100vw;
	height: 100vh;
	background-color: rgb(0,0,0,0.75);
	margin: 0 auto;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}
.layout.l-boxes-winners .lightbox.show {
	opacity: 1;
	visibility: visible;
}
.layout.l-boxes-winners .lightbox .stage {
	height: 100vh;
	position: relative;
	text-align: center;
}
.layout.l-boxes-winners .lightbox .stage .item {
	display: none;
	margin: 0 auto;
	position: absolute;
	top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
}
.layout.l-boxes-winners .lightbox .stage .item.active {display: block;}
.layout.l-boxes-winners .lightbox .stage .item .close {
	width: 20px;
	height: auto;
	margin: 0 auto;
	position: absolute;
	top: 20px;
	right: 20px;
	cursor: pointer;
}
.layout.l-boxes-winners .lightbox .stage .item .image img {
	width: 100%;
    height: auto;
    float: left;
    aspect-ratio: 2.35 / 1;
    object-fit: cover;
    object-position: 50% 30%;
}
.layout.l-boxes-winners .lightbox .stage .item .copy {
	color: #12067B;
	background-color: #FFFFFF;
	padding: 20px 20px 0 20px;
}

/* /Layouts */


/* Burger */

.hamburger {
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible; 
}
.hamburger:hover {opacity: 1;}
.hamburger.is-active:hover {opacity: 1;}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {background-color: #FFFFFF;}
.hamburger-box {
    width: 40px;
    height: 24px;
    display: inline-block;
    position: relative; 
}
.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px; 
}
.hamburger-inner, 
.hamburger-inner::before, 
.hamburger-inner::after {
    width: 35px;
    height: 2px;
    background-color: #FFFFFF;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; 
}
.hamburger-inner::before, 
.hamburger-inner::after {
    content: "";
    display: block; 
}
.hamburger-inner::before {top: -10px;}
.hamburger-inner::after {bottom: -10px;}

/* Spin */
.hamburger--spin .hamburger-inner {
    transition-duration: 0.22s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin.is-active .hamburger-inner {
    transform: rotate(225deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* /Burger */
