/*--RESET--*/

html, body, header, nav, main, section, ul, h1, h2, h3, h4, p, iframe, img, form, footer {
    border: 0; 
    display: block; 
    margin: 0; 
    padding: 0;
}

html, body {
    height: 100%; 
    width: 100%;
}

a, a:active, a:hover, a:link, a:visited, input, textarea, button, button:active, button:focus, button:hover {
    border: 0; 
    outline: none; 
    text-decoration: none;
}

button {
    cursor: pointer;
}

ul {
    list-style: none; 
}

/*--FONT FACES--*/

@font-face {
    font-family: 'headings';
    src: url('../fonts/hinted-TallDeco-Normal.woff2') format('woff2'),
         url('../fonts/hinted-TallDeco-Normal.woff') format('woff'),
         url('../fonts/hinted-TallDeco-Normal.ttf') format('truetype');
    font-style: normal; 
    font-weight: normal; 
}

@font-face {
    font-family: 'general';
    src: url('../fonts/hinted-Quicksand-Regular.woff2') format('woff2'),
         url('../fonts/hinted-Quicksand-Regular.woff') format('woff'),
         url('../fonts/hinted-Quicksand-Regular.ttf') format('truetype');
    font-weight: normal; 
    font-style: normal;
}

h1, h1 span, h2, h2 span, h3 {
    color:  #CC9966;
    font-family: 'headings', sans-serif; 
    font-style: normal; 
    font-weight: normal;
}

li, p, span, a, label, input, textarea, placeholder, button {
    font-family: 'general', serif; 
    font-style: normal; 
    font-weight: normal;
}

/*--RESPONSIVE NAV--*/

.js .nav-collapse {
    clip: rect(0, 0, 0, 0); 
    display: block; 
    max-height: 0; 
    overflow: hidden; 
    position: absolute; zoom: 1;   
}

.nav-collapse.opened {
    max-height: 9999px;
}

.nav-toggle {
    -webkit-user-select: none; 
    -moz-user-select: none; 
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

/*--GENERAL--*/

nav ul, .container {
    margin: 0 auto;
    padding: 0 5%;
}

/*--HEADER--*/

header {
    background: #181818 url('../images/head-dark.jpg') scroll center center no-repeat;
    background-size: cover;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color:  #CC9966;
    min-height: 100vh;
    padding-bottom: 2rem;
    position: relative;
    width: 100%;
}

h1 {
    background: url('../graphics/header.svg') center top no-repeat;
    background-size: 100%;
    margin-bottom: 1rem;
    overflow: hidden;
    padding-bottom: 15.5%;
}

header .subhead {
    background: url('../graphics/header.svg') center bottom no-repeat;
    margin-bottom: 1rem;
}

header .intro {
    margin-bottom: 1rem;
}

header a {
    display: block;
    height: 3rem;
    margin: 0 auto;
    overflow: hidden;
    width: 3rem;
}

header a span {
    display: none;
}

/*NAV*/

nav {
    background-color: #E5CCB2;
    left: 0;
    position: fixed;
    text-align: center;
    top: 0;
    width: 100%;
    z-index: 9;
}

nav li {
    background-color: #E5CCB2;
}

nav a {
    color: #0D0A07;
}

/*MAIN*/

section {
    padding-top: 4rem;
}

.audiences, .audiences h2 span, .profile, .profile h2 span {
    background-color: #181818;
}

.performance, .performance h2 span, .accolades, .accolades h2 span, .contact, .contact h2 span {
    background-color: #0C0C0C;
}

h2 {
    background: url('../graphics/h2.svg') left center no-repeat;
    background-size: 96rem 3rem;
    height: 4rem;
    margin-bottom: 0.5rem;
    overflow: hidden;
}

h2 span {
    background: url('../graphics/h2.svg') right center no-repeat;
    background-size: 96rem 3rem;
    display: inline-block;
    font-size: 4rem;
    height: 4rem;
    overflow: hidden;
    padding-right: 6.25rem;
}

.division {
    border-bottom: #CC9966 solid 0.1rem;
}

.container .division:last-child {
    border-bottom: 0;
}

main p, header .intro {
    font-size: 1rem;
    line-height: 1.75;
}

main p {
    color: #F7F7F7;    
}

header .intro {
    color: #F7F7F7;
}

.accolades p {
    background: url('../graphics/accolades.svg') left center no-repeat, url('../graphics/accolades.svg') right center no-repeat;
    background-size: 500rem 1rem, 500rem 1rem;
    display: inline;
    padding: 0 1.5rem;
}

.accolades p+span {
    color: #DFBF9F;
    display: block;
    line-height: 1.75;
    margin-bottom: 1.5rem;
}

.accolades p+span:last-of-type {
    margin-bottom: 0;
}

h3 {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
}

.audiences li, .profile li {
    color: #F7F7F7;
    display: inline;
    font-size: 1rem;
    line-height: 1.75;
}

.audiences li::after, .profile li::after {
    content: ", ";
}

.audiences li:last-child::before, .profile li:last-child::before {
    content: "and ";
}

.audiences li:last-child::after, .profile li:last-child::after {
    content:".";
}

.contact a {
    border-bottom: #CC9966 solid 0.1rem;
    display: block;
    overflow: hidden;
    padding: 1.5rem 0;
}
    
.contact a:first-child {
    padding-top: 0;
}

.contact a span {
    color: #F7F7F7;
    display: block;
}

/*FOOTER*/

footer {
    background-color: #E5CCB2;
    color: #0D0A07;
    font-size: 1rem;
    line-height: 1;
    padding: 0.5rem 0;
    text-align: center;
}

/*IMAGES*/

.roving {
    background-image: url('../images/roving.jpg');
}

.appearing-vip {
    background-image: url('../images/appearing-vip.jpg');
}

.venues {
    background-image: url('../images/venues.jpg');
}

.unique {
    background-image: url('../images/unique.jpg');
}

.style {
    background-image: url('../images/style.jpg');
}

/*SLIDESHOW*/

#slides {
    height: 0;
    list-style-type: none;
    overflow: hidden; 
    position: relative; 
    z-index: 2; 
}

.slide  {
    height: 100%;
    left: 0;
    margin: 0;
    z-index: 1;
    opacity: 0;	
    padding: 0; 
    position: absolute;
    top: 0;
    -webkit-transition: opacity 1s; 
    transition: opacity 1s;
    width: 100%; 
}

.slide span {
    display: none;
}

.showing {
	opacity: 1; 
    z-index: 2;
}

.slide:nth-of-type(1){
    background: url(../images/bespoke-01.jpg) no-repeat center center; background-size: cover;
}

.slide:nth-of-type(2){
    background: url(../images/bespoke-02.jpg) no-repeat center center; background-size: cover;
}

.slide:nth-of-type(3){
    background: url(../images/bespoke-03.jpg) no-repeat center center; background-size: cover;
}

.slide:nth-of-type(4){
    background: url(../images/bespoke-04.jpg) no-repeat center center; background-size: cover;
}

/*IFRAME*/

iframe {
    width: 100%;
}

@media screen and (max-width: 456px) {
    iframe {
        height: 19rem;
    }
}

@media screen and (min-width: 456px) and (max-width: 506px) {
    iframe {
        height: 24rem;
    }
}

@media screen and (min-width: 507px) {

    iframe {
        height: 19rem;
    }
}

/*DEVICES*/

@media screen and (max-width: 359px) {
    
    /*GENERAL*/
    
    nav ul, .container, .up {
        max-width: 22.5rem;
    }
    
    /*HEADER*/
    
    header {
        padding-top: 5rem;
        }
    
    h1 {
        background: none;
        font-size: 4rem;
        line-height: 1;
        padding: 0;
    }
    
    header .subhead {
        background: none;
        font-size: 1.5rem;
    }
    
    header a {
        background: url('../graphics/arrows.svg') center top no-repeat;
        background-size: 3rem 24rem;
    }
            
    /*NAV*/
    
    nav li {
        border-bottom: #CC9966 solid 1px;
        display: block;
    }
    
    nav li:first-child {
        border-top: #CC9966 solid 1px;
    }
    
    nav li:last-child {
        border-bottom: #E5CCB2 solid 1px;
    }
    
    nav a {
        display: block;
    }
        
    /*MAIN*/
    
    h2, h2 span {
        background: none;
    }
    
    .division {
        padding: 2.5rem 0;
    }
    
    img {
        max-width: 100%;
        padding-top: 1rem;
    }
    
    
    #slides{
        display: block;
        padding-bottom: 75%;
        margin-top: 1rem;
    }
        
    .accolades p {
        background: none;
        padding-left: 0;
        padding-right: 0;
    }
    
    .accolades p:before {
        content: "\201C";
    }
    
    .accolades p:after {
        content: "\201D";
    }
    
    .accolades p+span:last-of-type {
        padding-bottom: 2.5rem;
    }
    
    .contact a:last-child {
        margin-bottom: 1.5rem;
    }
    
    .contact a {
        background: url('../graphics/contact-icons.svg') no-repeat;
        background-size: 420rem 3rem;
        padding: 1.5rem 0;
    }
    
    a.phone {
        background-position: left top;
    }
    
    a.email {
        background-position: -60rem 1.5rem;
    }
    
    a.facebook {
        background-position: -120rem 1.5rem;
    }
    
    a.linkedin {
        background-position: -180rem 1.5rem;
    }
    
    .contact a h3 {
        padding-left: 3.5rem;
    }
    
    .contact a p {
        color: #F7F7F7;
    }
    
    .contact a span {
        display: none;
    }
    
    .contact {
        border-bottom: #CC9966 solid 1px;
    }
    
    .up {
        background: #0C0C0C url('../graphics/arrows.svg') 5% -10rem no-repeat;
        background-size: 3rem 24rem;
        color: #DFBF9F;
        display: block;
        font-size: 1rem;
        height: 3rem;
        line-height: 3rem;
        margin: 0 auto;
        opacity: 1;
        overflow: hidden;
        padding: 2rem 5%;
        text-indent: 3.5rem;
    }
}

@media screen and (min-width: 360px) and (max-width: 768px) {
    
    /*GENERAL*/
    
    nav ul, .container {
        max-width: 32rem;
    }
    
    /*HEADER*/
    
    header {
        padding-top: 5rem;
    }
        
    header .subhead {
        background-size: 32rem;
        padding-top: 1.5rem;
    }
        
    header span {
        display: none;
    }
    
    header a {
        background: url('../graphics/arrows.svg') center top no-repeat;
        background-size: 3rem 24rem;
    }
            
    /*NAV*/
    
    nav li {
        border-bottom: #CC9966 solid 1px;
        display: block;
    }
    
    nav li:first-child {
        border-top: #CC9966 solid 1px;
    }
    
    nav li:last-child {
        border-bottom: #E5CCB2 solid 1px;
    }
    
    nav a {
        display: block;
    }
        
    /*MAIN*/
        
    .division {
        padding: 2.5rem 0;
    }
    
    img {
        max-width: 100%;
        padding-top: 1rem;
    }
    
    #slides {
        display: block;
        padding-bottom: 75%;
        margin-top: 1rem;
    }
    
    .accolades p+span:last-of-type {
        padding-bottom: 2.5rem;
    }
                  
    .contact a {
        padding: 1.5rem 0;
    }
    
    .contact a:last-child {
        margin-bottom: 1.5rem;
    }
    
    .contact a p {
        background: url('../graphics/contact-icons.svg') no-repeat;
        background-size: 420rem 3rem;
        color: #DFBF9F;
        padding-left: 3.5rem;
    }
    
    .phone div p {
        background-position: left center;
    }

    .email div p {
        background-position: -60rem center;
    }

    .facebook div p {
        background-position: -120rem center;
    }

    .linkedin div p {
        background-position: -180rem center;
    }
    
    .up {
        background: url('../graphics/arrows.svg') center -12rem no-repeat;
        background-size: 3rem 24rem;
        bottom: 2rem;
        display: block;
        height: 3rem;
        opacity: 0;
        overflow: hidden;
        position: fixed;
        right: 2rem;
        text-indent: -9999px;
        -webkit-transition: opacity 0.5s ease;
        transition: opacity 0.5s ease;
        width: 3rem;
        z-index: 9;
    }
}

@media screen and (max-width: 959px) {
    html {
        font-size: 16px;
    }
    
    /*NAV*/
    
    nav {
        height: 2.5rem;
    }

    nav li {
        height: 2.5rem;
    }

    nav a {
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
}

@media screen and (min-width: 769px) {
    
    /*RESPONSIVE NAV DESKTOP*/

    .js .nav-collapse {
        position: relative;
    }

    .js .nav-collapse.closed {
        max-height: none;
    }

    .nav-toggle {
        display: none;
    }
    
    /*GENERAL*/
    
    nav ul, .container {
        max-width: 48rem;
    }
    
    /*HEADER*/
    
    header {
        padding-top: 6rem;
    }
    
    header .subhead {
        background-size: 48rem;
        padding-top: 2rem;
    }
    
    header a {
        background: url('../graphics/arrows.svg') center top no-repeat;
        background-size: 3rem 24rem;
    } 
         
    header span {
        display: none;
    } 
    
    /*NAV*/
    
    nav li {
        display: inline-block;
    }

    nav a {
        padding: 1rem;
    }
    
    nav li:first-child a {
        padding-left: 0;
    }
    
    nav li:last-child a {
        padding-right: 0;
    }
        
    /*MAIN*/
        
    .division {
        padding: 2.5rem 0;
    }
    
    .half, .first, .roving, .appearing-vip, .venues, .unique, .style, #slides  {
        display: inline-block;
        vertical-align: middle;
        width: 47.5%;
    }
    
    #slides {
        padding-bottom: 35.6%;
    }
    
    .first, div:empty {
        margin-right: 5%;
    }
    
    div:empty {
        background-attachment: scroll;
        background-position: left top;
        background-repeat: no-repeat;
        background-size: contain;
        padding-bottom: 35.6%;
    }
    
    .full {
        display: none;
    }
    
    .accolades p+span:last-of-type {
        padding-bottom: 2.5rem;
    }
        
    .contact .first, .contact .half {
        vertical-align: top;
    }
    
    .contact a:last-child {
        border: 0;
        padding-bottom: 0;
    }
    
    .contact a p {
        background: url('../graphics/contact-icons.svg') no-repeat;
        background-size: 420rem 3rem;
        color: #DFBF9F;
        padding-left: 3.5rem;
    }
    
    .phone div p {
        background-position: left center;
    }

    .email div p {
        background-position: -60rem center;
    }

    .facebook div p {
        background-position: -120rem center;
    }

    .linkedin div p {
        background-position: -180rem center;
    }
    
    .up {
        background: url('../graphics/arrows.svg') center -12rem no-repeat;
        background-size: 3rem 24rem;
        bottom: 2rem;
        display: block;
        height: 3rem;
        opacity: 0;
        overflow: hidden;
        position: fixed;
        right: 2rem;
        text-indent: -9999px;
        -webkit-transition: opacity 0.5s ease;
        transition: opacity 0.5s ease;
        width: 3rem;
        z-index: 9;
    }

    /*FOOTER*/
    
    /*FORM*/
    
    iframe {
        width: 100%;
    }
}

@media screen and (min-width: 960px) {
    html {
        font-size: 20px;
    }
    
    /*NAV*/
    
    nav {
        height: 2rem;
    }

    nav li {
        height: 2rem;
    }

    nav a {
        font-size: 1rem;
        line-height: 2rem;
    }
}
