body {
font-family: 'Roboto', sans-serif;
font-weight: 400;
font-size: 1rem;
line-height: 1.75rem;
color: #111;
background-color: #fff;
}

    ::selection {background: rgba(237,73,36,.5);}
    ::-moz-selection {background: rgba(237,73,36,.5)}

p {margin: 1rem 0 1.25rem 0;}

    .align-center {text-align: center;}

p span {
font-family: 'Rajdhani', sans-serif;
font-weight: 700;
font-size: 1.75rem;
line-height: 2rem;
padding: 10px 20px;
background-color: #ed4924;
}

/* Rajdhani
300, 400, 500, 600, 700
*/

h1 {
font-family: 'Rajdhani', sans-serif;
font-weight: 700;
font-size: 4rem;
line-height: 3.75rem;
margin: .5rem 0;
}

h2 {
font-family: 'Rajdhani', sans-serif;
font-weight: 700;
font-size: 2.25rem;
line-height: 2.5rem;
margin: .5rem 0;
color: #003561;
}

h3 {
font-size: 1.2rem;
font-weight: 700;
line-height: 1.75rem;
margin: .5rem 0;
color: #ed4924;
}

a {
cursor: pointer;
text-decoration: none;
color: inherit;
}

    p a {
    border-bottom: 1px solid rgba(237,73,36,.5);
    box-shadow: inset 0 -1px 0 rgba(237,73,36,.5);
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    }

    p a:hover {
    border-bottom: 1px solid rgba(237,73,36,0);
    box-shadow: inset 0 -1px 0 rgba(237,73,36,0);
    background: rgba(250,63,59,.5);
    }

img {display: table;}

main {
float: left;
width: 100%;
}

    main ul {
    list-style: disc;
    padding: 0 20px;
    }

    main ul ul {
    padding: 0;
    margin: 0 0 0 20px;
    }

    main img {margin: 1rem auto;}

section {
float: left;
width: 100%;
padding: 40px;
}

    .white {background-color: #fff;}
    .white .button:hover {background-color: #f5f5f5;}

    .grey {background-color: #f5f5f5;}

    .dark {background-color: #111;}
    .dark h1, .dark h2, .dark h3, .dark p {color: #fff;}

    .orange {background-color: #ed4924;}
    .orange h1, .red h2, .red h3, .red p {color: #fff;}

    .blue {background-color: #003463;}
    .blue h1, .blue h2, .blue h3, .blue p {color: #fff;}

    .has-background {background-size: cover; background-attachment: fixed;}
    .has-background h1, .has-background p {color: #fff;}

    .has-fixed {background-attachment: fixed; background-size: cover;}
    .has-fixed > div {background-color: rgba(0,53,97,.7);}
    .has-fixed .button {background-color: #ed4924;}


.left {float: left;}
.right {float: right;}
.clear {clear: both;}

.height-viewport {height: 100vh;}
.height-fixed {height: 60vh; min-height: 678px;}
.height-relative {height: 100%;}

.flex-left {display: flex; flex-direction: column; justify-content: center;}
.flex-center {display: flex; justify-content: center; align-items: center;}
.flex-bottom {display: flex; justify-content: flex-start; align-items: flex-end;}

.padding {padding: 20px;}
.none {padding: 0;}

.left {float: left;}
.right {float: right;}
.clear {clear: both;}

.width20 {width: 20%;}
.width25 {width: 25%;}
.width33 {width: 33.33%;}
.width50 {width: 50%;}
.width66 {width: 66.66%;}
.width75 {width: 75%;}
.width100 {width: 100%;}

div {
position: relative;
float: left;
}

    section > div {padding: 40px;}

.container {
width: 1160px;
padding: 0;
}

    .type {width: 678px;}

    .center {
    float: none;
    display: table;
    margin: 0 auto;
    }

.column {
-moz-column-count: 2;
-moz-column-gap: 40px;
-webkit-column-count: 2;
-webkit-column-gap: 40px;
column-count: 2;
column-gap: 40px;
}

    .column p {margin: 0 0 1rem 0;}

.button {
font-weight: 600;
font-size: .85rem;
letter-spacing: .05rem;
line-height: 50px;
text-decoration: none;
text-transform: uppercase;
padding: 22px 30px;
color: #fff;
background-color: #003561;
border-radius: 30px;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
cursor: pointer;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

    .button:hover {
    color: #ed4924;
    background-color: #fff;
    }

/* nav */

header {
position: absolute;
top: 40px;
width: 100%;
padding: 20px;
color: #fff;
z-index: 9;

transition: all .3s ease-in-out;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-ms-transition: all .3s ease;
}

    header.scroll {
    position: fixed;
    background: #fff;
    border-bottom: 1px solid rgba(1,1,1,.1);
    }

header > div {width: 100%;}

logo {
float: left;
padding: 6px;
background: #fff;
border-radius: 40px;
-webkit-border-radius: 40px;
}

    logo img {
    float: left;
    display: inline-block;
    max-height: 48px;
    }

#title {
position: absolute;
top: 0;
left: 68px;
font-family: 'Rajdhani', sans-serif;
font-weight: 600;
font-size: 1rem;
line-height: 1rem;
margin: 8px 0 0 0;
}

nav {float: right;}

nav ul li {
display: inline-block;
float: left;
font-weight: 600;
font-size: .85rem;
line-height: 60px;
letter-spacing: .05rem;
text-align: center;
text-transform: uppercase;
margin: 0 0 0 18px;
    
transition: all .4s ease-in-out;
-webkit-transition: all .4s ease;
-moz-transition: all .4s ease;
-ms-transition: all .4s ease;
}

nav ul li:hover, nav ul li.active {color: #ed4924;}

#purchase {
padding: 0 30px;
background: #ed4924;
border-radius: 30px;
}

    #purchase:hover {
    color: #ed4924;
    background-color: #fff;
    }

/* preheader */

#preheader {
position: absolute;
width: 100%;
padding: 0 12px;
color: #fff;
background: #003561;
z-index: 1;
}

#preheader p {
font-family: 'Rajdhani', sans-serif;
font-weight: 600;
font-size: .85rem;
line-height: 40px;
letter-spacing: .02rem;
margin: 0;
}

#preheader ul li {
display: inline-block;
font-family: 'Rajdhani', sans-serif;
font-weight: 600;
font-size: .85rem;
line-height: 40px;
letter-spacing: .02rem;
margin: 0 0 0 12px;
}

#preheader ul {float: right;}

/* preloader */

.pace {
-webkit-pointer-events: none;
pointer-events: none;

-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}

.pace-inactive {
display: none;
}

.pace .pace-progress {
background: #ed4924;
position: fixed;
z-index: 9999;
top: 0;
right: 100%;
width: 100%;
height: 4px;
}

/* index */

#overlap {margin: -120px auto 0 auto;}

.shadow {
background-color: #fff;
border-radius: 6px;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
box-shadow: 0 0 20px 4px rgba(0,0,0,.1);
-webkit-box-shadow: 0 0 20px 4px rgba(0,0,0,.1);
-moz-box-shadow: 0 0 20px 4px rgba(0,0,0,.1);
}

.shadow img {
margin: 0;
border-radius: 6px 0px 0px 6px;
-webkit-border-radius: 6px 0px 0px 6px;
-moz-border-radius: 6px 0px 0px 6px;
}

#quickLinks {
margin: 1rem 0 1rem -8px;
text-align: center;
}

#quickLinks li {
display: inline-block;
font-family: 'Rajdhani', sans-serif;
font-weight: 600;
font-size: .85rem;
line-height: 40px;
letter-spacing: .02rem;
margin: 4px 2px;
padding: 0 20px;
color: #003561;
background-color: rgba(1,1,1,.05);
border-radius: 30px;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
transition: all .3s ease-in-out;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-ms-transition: all .3s ease;
}

    #quickLinks li:hover {
    color: #fff;
    background-color: #003561;
    }

/* embed */

.embed {
position: relative;
width: 100%;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0;
}

.embed iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

/* slick */

#slick {padding: 0;}

.slick-list {width: 100%;}

#slick .slide {
position: relative;
height: 60vh;
min-height: 678px;
width: 100%;
padding: 0;
background-size: cover;

display: flex;
align-items: center;
}

    #slick .slide div {left: 90px;}

    #slick .slide div h2 {
    font-family: 'Futura-Pt', sans-serif;
    font-weight: 700;
    font-size: 4.75rem;
    line-height: 6.15rem;
    max-width: 678px;
    }

#slick .slide div h2 span {
padding: 0 10px;
background-color: #f6dedb;
}

.slick-dots {
position: absolute;
right: 0;
bottom: -70px;
padding: 20px;
text-align: right;
z-index: 7;
}

.slick-dots li {
display: inline-block;
margin: 0;
}

.slick-dots li:after {
content: '/';
font-weight: 900;
font-size: 1.2rem;
line-height: 0px;
margin: 0 8px;
color: #223a73;
}

.slick-dots li:last-child:after {content: '';}

.slick-dots li button {
font-family: 'Futura-Pt', sans-serif;
font-weight: 700;
font-size: 1.2rem;
line-height: 20px;
letter-spacing: -0.02rem;
color: #223a73;
background: none;
width: 20px;

outline: none;
transition: all .3s ease-in-out;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-ms-transition: all .3s ease;
}

    .slick-dots li button:hover {
    
    }

    .slick-dots li.slick-active button {}

/* figure */

.flex {
display: flex;
align-items: stretch;
flex-wrap: wrap;
justify-content: center;
}

.flex figure {
position: relative;
float: left;
}

/* projects */

.projects figure {
position: relative;
float: left;
width: calc(33.33% - 40px);
margin: 20px;
background-color: #e9f6f9;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

.projects figure img {
opacity: .6;
filter: grayscale(100%);
-webkit-filter: grayscale(100%);

transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
    
transition-delay: .25s;
-webkit-transition-delay: .25s;
-moz-transition-delay: .25s;
-o-transition-delay: .25s;
}

    .projects figure img:hover {
    opacity: 1;
    filter: grayscale(0%);
    -webkit-filter: grayscale(0%);
    }

.projects figcaption {
padding: 1.5rem;
background-color: #fff;
}

.projects h3 {
font-weight: 700;
font-size: 1.15rem;
line-height: 1.25rem;
letter-spacing: .15rem;
text-transform: uppercase;
text-align: center;
}

/* portfolio */

.portfolio figure {
position: relative;
float: left;
width: calc(33.33% - 40px);
margin: 20px;
text-align: center;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

.portfolio figure div {
float: none;
overflow: hidden;
}

.portfolio figcaption {padding: 1.5rem;}

.portfolio figcaption h3 {
font-family: 'Rajdhani', sans-serif;
font-weight: 700;
font-size: 1.4rem;
line-height: 1.6rem;
margin: .5rem 0;
color: #111;

transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
transition-delay: .25s;
-webkit-transition-delay: .25s;
-moz-transition-delay: .25s;
-o-transition-delay: .25s;
}

    .portfolio figure:hover figcaption h3 {color: #ed4924;}

.portfolio figure img {
margin: 0;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
transition-delay: .25s;
-webkit-transition-delay: .25s;
-moz-transition-delay: .25s;
-o-transition-delay: .25s;
}

    .portfolio figure:hover img {
    opacity: .6;
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    }

.portfolio p {margin: 0;}

/* sponsors figure */

.sponsors figure {
position: relative;
float: left;
width: calc(33.33% - 40px);
margin: 20px;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

    .sponsor20 figure {width: calc(20% - 40px);}
    .sponsor25 figure {width: calc(25% - 40px);}
    .sponsor33 figure {width: calc(33.33% - 40px);}

.sponsors figure img {
display: table;
margin: 1rem auto;
width: 100%;
max-width: 300px;
}

.exhibitors figure {
position: relative;
float: left;
width: calc(33.33% - 40px);
margin: 20px;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

    .sponsor20 figure {width: calc(20% - 40px);}
    .sponsor25 figure {width: calc(25% - 40px);}
    .sponsor33 figure {width: calc(33.33% - 40px);}

.exhibitors figure img {
display: table;
margin: 1rem auto;
width: 100%;
max-width: 200px;
}
/* download */

#download li {
list-style: none;
margin: 0 0 .5rem 0;
padding: 1rem 1.5rem;
border: 1px solid rgba(0,0,0,0.1);
border-radius: 6px;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;

transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

#download {padding: 0;}

#download li:hover {background-color: #fff;}

#download h3 {color: #003561; margin: 0;}
#download h2 {margin-bottom: 0;}

/* form */

::-webkit-input-placeholder {color: rgba(1,1,1,.4);}
::-moz-input-placeholder {color: rgba(1,1,1,.4);}
::-ms-input-placeholder {color: rgba(1,1,1,.4);}

#contact-form {
float: left;
width: 100%;
}

#contact-form input {
float: left;
width: 100%;
outline: none;
line-height: 1rem;
margin: .5rem 0;
padding: 1rem;
border: 1px solid #dedede;
border-radius: 6px;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
}

#contact-form textarea {
float: left;
min-height: 120px;
width: 100%;
outline: none;
line-height: 1.6rem;
margin: .5rem 0;
padding: 1rem;
border: 1px solid #dedede;
border-radius: 6px;
-webkit-border-radius: 6px;
-moz-border-radius: 6px;
resize: vertical;
}

#contact-form input:focus, #contact-form textarea:focus {border: 1px solid #ed4924;}
#contact-form .button:focus {border: none;}

#contact-form .button {
display: inline-block;
width: auto;
font-weight: 600;
font-size: .85rem;
letter-spacing: .05rem;
line-height: 50px;
text-decoration: none;
text-transform: uppercase;
padding: 4px 30px;
color: #fff;
background-color: #003561;
border: none;
border-radius: 30px;
-webkit-border-radius: 30px;
-moz-border-radius: 30px; 
}

    #contact-form .button:hover {
    color: #ed4924;
    background-color: #fff;
    }

.g-recaptcha {
float: left;
width: 100%;
margin: .5rem 0;
}


/* SG additional classes */
/* book now button */
.button-book:focus {border: none;}
.tight-text {margin: .75rem 0 .75rem 0; padding: 10px;}
.button-more-info {
margin-top: 2rem;
font-family: 'Rajdhani', sans-serif;
font-weight: 700;
font-size: 1.15rem;
line-height: 2rem;
padding: 10px 20px;
color: white;
background-color: #ed4924;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
    .button-more-info:hover {
    background-color: #003561;
    }
.button-book {
display: inline-block;
width: 27rem;
font-weight: 600;
font-family: 'Rajdhani', sans-serif;
font-size: 1.75rem;
line-height: 3rem;
text-decoration: none;
padding: 4px 30px;
margin-top: 7px;
color: #000;
background-color: #cdcccb;
border: none;
border-radius: 0px;
-webkit-border-radius: 0px;
-moz-border-radius: 0px;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}

    .button-book:hover {
    color: #ed4924;
    background-color: #fff;
    }
.video figure {
position: relative;
float: left;
width: calc(50% - 40px);
margin: 20px;
text-align: center;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
}

.video figure div {
float: none;
overflow: hidden;
}

.video figcaption {padding: 1.5rem;}

.video figcaption h3 {
font-family: 'Rajdhani', sans-serif;
font-weight: 700;
font-size: 1.4rem;
line-height: 1.6rem;
margin: .5rem 0;
color: #111;

transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
transition-delay: .25s;
-webkit-transition-delay: .25s;
-moz-transition-delay: .25s;
-o-transition-delay: .25s;
}

    .video figure:hover figcaption h3 {color: #ed4924;}

.video figure img {
margin: 0;
transition: all .3s ease;
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-o-transition: all .3s ease;
transition-delay: .25s;
-webkit-transition-delay: .25s;
-moz-transition-delay: .25s;
-o-transition-delay: .25s;
}

    .portfolio figure:hover img {
    opacity: .6;
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    }

.video p {margin: 0;}



/* footer */

footer {
float: left;
width: 100%;
color: #fff;
}

footer .button {margin: 2rem 0;}

#postfooter {
width: 100%;
padding: 0 12px;
color: #fff;
background: #003561;
}

footer h2 {margin: .5rem 0 1.5rem 0;}

#postfooter p {
font-family: 'Rajdhani', sans-serif;
font-weight: 600;
font-size: .85rem;
line-height: 40px;
letter-spacing: .02rem;
margin: 0;
}

#postfooter ul li {
display: inline-block;
font-family: 'Rajdhani', sans-serif;
font-weight: 600;
font-size: .85rem;
line-height: 40px;
letter-spacing: .02rem;
margin: 0 0 0 12px;
}

#postfooter ul {float: right;}

/* hamburger */

#hamburger {
font-size: 1.2em;
line-height: 60px;
text-decoration: none;
text-align: center;
color: #fff;

position: fixed;
bottom: 15px;
right: 15px;
height: 60px;
width: 60px;
background: #ed4924;
border-radius: 30px;
-webkit-border-radius: 30px;
pointer-events: none;
visibility: hidden;
opacity: 0;
z-index: 99;

transition: all .4s ease-in-out;
-webkit-transition: all .4s ease;
-moz-transition: all .4s ease;
-ms-transition: all .4s ease;
}

    #hamburger:active {
    background: #000;
    }

#hamburger:before {
font-family: FontAwesome;
content: '\f0c9';
}

#hamburger.animate {
transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-ms-transform: rotate(360deg);
}

#hamburger.animate:before {
font-family: FontAwesome;
content: '\f00d';
}

/* breakpoints */

@media(max-width:1200px) {
.container {width: 100%;}

section {padding: 20px;}

.portfolio figure, .sponsors figure {
width: calc(50% - 40px);
}
    
    .sponsor20 figure, .sponsor25 figure, .sponsor33 figure {width: calc(50% - 40px);}
    
p span {
font-size: 1.25rem;
line-height: 1.5rem;
}
}

@media(max-width:800px) {
#hamburger {
pointer-events: auto;
visibility: visible;
opacity: 1;
}    

nav {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;

position: fixed;
left: 0;
bottom: 0;
height: 100%;
width: 100%;
background-color: rgba(0,53,97,.9);
pointer-events: none;
visibility: hidden;
opacity: 0;
transition: all .4s ease-in-out;
-webkit-transition: all .4s ease;
-moz-transition: all .4s ease;
-ms-transition: all .4s ease;
}

    nav.active {
    pointer-events: auto;
    visibility: visible;
    opacity: 1;
    }

    nav ul li {
    display: block;
    margin: 0;
    width: 100%;
    }
}

@media(max-width:678px) {
    
.width20, .width25, .width33, .width50, .width66,.width75, .width100, .type {width: 100%;}
    
.portfolio figure, .sponsors figure {
width: 100%;
margin: 0;
}
    
    .sponsor20 figure, .sponsor25 figure, .sponsor33 figure {width: calc(100% - 40px);}

.shadow img {
margin: 0;
border-radius: 6px 6px 0px 0px;
-webkit-border-radius: 6px 6px 0px 0px;
-moz-border-radius: 6px 6px 0px 0px;
}
    
#postfooter, #preheader {display: none;}
    
header {top: 0;}
}