/***** Typefaces *****/

@font-face {
    font-family: 'Univers-65Bold';
    src: url('../fonts/Univers-65Bold.eot?#iefix') format('embedded-opentype'),  url('../fonts/Univers-65Bold.otf')  format('opentype'),
         url('../fonts/Univers-65Bold.woff') format('woff'), url('../fonts/Univers-65Bold.ttf')  format('truetype'), url('../fonts/Univers-65Bold.svg#Univers-65Bold') format('svg');
    font-weight: normal;
    font-style: normal;
} 

/***** CSS Reset *****/

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, strong, 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 {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	font-family: Univers-65Bold, 'Helvetica';
	font-weight: normal;
	font-style: normal;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 2.5em;
    line-height: 1.1em;
    word-spacing: 0.1em;
    cursor: default;
}
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;
}
a{ 
    text-decoration: none; 
    color: black;
}
img{
    -khtml-user-select: none;
    -o-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    outline: none;
    border: none;
}
.button{
    display: block;
    cursor: pointer;
}

/***** Generic *****/

.upper{ text-transform: uppercase; }
.caps{ text-transform: capitalize; }

.hidden{ display: none !important; }
.box{ box-sizing: border-box; }
.button{ cursor: pointer; }

.elp{  
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
/*

::-webkit-scrollbar { 
    display: none; 
}
*/

em{
    opacity: 0;
    margin-right: 0.35em;
}
em:last-child{ margin-right: 0; }

.title em:first-child{ margin-right: 0; }
.title em:last-child{ margin-right: 0; margin-left: -0.35em; }

/***** Spacing *****/

.pad-a{ padding: 1em; }
.pad-t{ padding-top: 1em; }
.pad-b{ padding-bottom: 1em; }
.pad-l{ padding-left: 1em; }
.pad-r{ padding-right: 1em; }

    .pad-a-h{ padding: 0.5em; }
    .pad-t-h{ padding-top: 0.5em; }
    .pad-b-h{ padding-bottom: 0.5em; }
    .pad-l-h{ padding-left: 0.5em; }
    .pad-r-h{ padding-right: 0.5em; }

    .pad-a-2{ padding: 0.8em 1em; }
    .pad-t-2{ padding-top: 0.8em; }
    .pad-b-2{ padding-bottom: 0.8em; }
    .pad-l-2{ padding-left: 1em; }
    .pad-r-2{ padding-right: 1em; }

    .pad-a-3{ padding: 4.2em; }
    .pad-t-3{ padding-top: 4.2em; }
    .pad-b-3{ padding-bottom: 4.2em; }
    .pad-l-3{ padding-left: 4.2em; }
    .pad-r-3{ padding-right: 4.2em; }

.marg-a{ margin: 1em; }
.marg-t{ margin-top: 1em; }
.marg-b{ margin-bottom: 1em; }
.marg-l{ margin-left: 1em; }
.marg-r{ margin-right: 1em; }
    
    .marg-a-h{ margin: 0.5em; }
    .marg-t-h{ margin-top: 0.5em; }
    .marg-b-h{ margin-bottom: 0.5em; }
    .marg-l-h{ margin-left: 0.5em; }
    .marg-r-h{ margin-right: 0.5em; }

    .marg-a-2{ margin: 1.5em; }
    .marg-t-2{ margin-top: 1.5em; }
    .marg-b-2{ margin-bottom: 1.5em; }
    .marg-l-2{ margin-left: 1.5em; }
    .marg-r-2{ margin-right: 1.5em; }

    .marg-a-3{ margin: 1.2em 1.5em; }
    .marg-t-3{ margin-top: 1.2em; }
    .marg-b-3{ margin-bottom: 1.2em; }
    .marg-l-3{ margin-left: 1.5em; }
    .marg-r-3{ margin-right: 1.5em; }

    .marg-a-4{ margin: 1.6em 1.9em; }
    .marg-t-4{ margin-top: 1.6em; }
    .marg-b-4{ margin-bottom: 1.6em; }
    .marg-l-4{ margin-left: 1.9em; }
    .marg-r-4{ margin-right: 1.9em; }


/***** Global *****/

.fixed{ position: fixed; }
.abs{ position: absolute; }


/***** Main *****/

#page-wrapper{
    position: absolute;
    height: auto;
    width: 100%;
/*    background-color: lime;*/
}
    #nav-parent,
    #seasonal-parent,
    #content-parent{
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #nav-parent{
        left: 50%;
        top: 0;
        transform: translate(-50%, 0%);
        /* position: fixed; */
        text-transform: uppercase;
        margin: 0 auto;
        height: auto;
        width: auto;
        z-index: 99;
    }

    #seasonal-parent{
        width: 100%;
        height: 100%;
        z-index: 0;
        overflow-y: scroll;
    }

#content-wrapper{
    float: left;
    width: auto;
    margin-top: 3.1em;
/*    background-color: blue;*/
}


/***** Seasonal *****/

.slide-container{
    height: 100%;
    width: 100%;
    overflow: scroll;
}
.slide-container .slide,
.slide-container .spacer{
    float: left;
    width: 100%;
} 

    .slide-container.abs{
        opacity: 0;
/*        scroll-snap-type: y mandatory;*/
        z-index: 20;
    }
        .slide-container.abs .slide{ 
            height: 15vh;
            outline: solid 1px blue;
/*            scroll-snap-align: start;*/
        }
        .slide-container.abs .spacer{ 
            height: 85vh;
            background-color: yellow;
        }

    .slide-container.fixed{
        display: flex;
        justify-content: center;
        align-items: center;
        pointer-events: none;
        z-index: 10; 
    }

        .slide-container.fixed .slide{ 
            display: flex;
            justify-content: center;
            align-items: center;
            pointer-events: none;
            height: 100vh;
            width: 100vw;
        }
            .slide-container.fixed .slide.hidden:first-child{ display: flex; } 

            .slide img{ 
                max-height: 100vh;
            }


/*
.slide.sCode{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100% !important;
    width: 100% !important;
}
*/



/***** Extra *****/


        #nav-wrapper.abs,
        #content-wrapper.abs{ position: absolute;}

        #content-wrapper.abs{
            display: block !important;
        }

        #nav-wrapper.fixed,
        #content-wrapper.fixed{ position: fixed;}

        .inner-parent{
            float: left;
            width: 1400px;
        }

/***** Navigation *****/

.main-menu{
    float: left;
    text-align: center;
    width: 100%;
/*    background-color: lime;*/
}

    .nav-item{ text-transform: uppercase; }
    .nav-item svg{
        height: 30px;
/*        background-color: yellow;*/
    }

.sub-menu{
    text-align: center;
    width: 9.2em;
    height: auto;
}
    .logo-header{
        padding: 0.5em;
        box-sizing: border-box;
        width: auto;
        height: auto;
        text-align: center;
    }

    .line.aw20{ margin-bottom: .2em }
    .line.aw20.inactive{ opacity: 0; }
    .line.aw20 svg{ height: 1em; }

    .line.logo{ margin-bottom: .45em; }
    .line.logo svg{ height: .52em; }

    .line.info.inactive{ opacity: 0;}
    .line.info svg{ height: 1em; }


/* Template Styles */

        .slide[p='left']{ background-position: top; }
        .slide[p='center']{ background-position: center; }
        .slide[p='right']{ background-position:  right; }

        .slide[e='off']{ background-repeat: no-repeat; }
        .slide[e='on']{ background-repeat: repeat; }

        .slide[s='full']{ background-size: contain; }
        .slide[s='cover']{ background-size: cover; }
        .slide[s='large']{ background-size: 80vh; }
        .slide[s='medium']{ background-size: 60vh; }
        .slide[s='small']{ background-size: 40vh; }



/***** Archive *****/

.title.optical{
    position: relative;
/*    left: -0.5em;*/
}
    .ext-link:after{ content: ','; }
    .ext-link:last-child:after{ content: ''; }


/***** Stockists *****/

.region{
    float: left;
    width: 100%;
/*    background-color: red;*/
}
    .stockists-parent{
        float: left;
        width: 100%;
/*        background-color: aqua;*/
    }
        .stockist-item{
            float: left;
            width: 100%;
/*            background-color: yellow;*/
        }
            .stockist-item .name,
            .stockist-item .location{
                float: left;
                width: 50%;
/*                background-color: lime;*/
            }


/***** Contact *****/

.category-parent{
    float: left;
    width: 100%;
/*    background-color: blue;*/
}
    .category{
        float: left;
        width: 100%;
/*        background-color: yellow;*/
    }

    .category-item{
        float: left;
        width: 100%;
/*        background-color: red;*/
    }


/* Phones */
@media only screen and (max-width: 1200px) {
    body{
        width: 100vw;
        height: auto;
        overflow-x: hidden;
/*        font-size: 2em;*/
        line-height: 1.1em;
        word-spacing: 0.1em;
    }
    .logo-header svg{
        height: 0.7em;
    }
    .inner-parent{ width: 100%; }
        .slide-container {
            height: 100vh;
            width: 100vw;
        }
        .slide-container.fixed .slide {
            height: 100vh;
        }
    
}
@media only screen and (min-width: 1200px) and (max-width: 1400px) {
    body{
/*        font-size: 2.8em;*/
        line-height: 1.1em;
        word-spacing: 0.1em;
    }
    .inner-parent{ width: 1200px; }
}

/* Extra large devices (large laptops and desktops) */
@media only screen and (min-width: 1400px) {
    body{
/*        font-size: 2.8em;*/
        line-height: 1.1em;
        word-spacing: 0.1em;
    }
    .inner-parent{ width: 1400px; }
}