/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

body {
    font-size: 1em;
    line-height: 1.4;
    margin: 0;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
body {
	font-family: Georgia, Times, "Times New Roman", serif;
}
h1,h2,h3,h4,h5,h6 {
	font-family: "Tw Cen MT", "Century Gothic", Futura, "URW Gothic L", Arial, sans-serif;
	text-transform:uppercase;
}
.highlight { 
	color:#00bff3;
}
ul {
	margin:0;
}
img {
    max-width: 100%;
}
.contentwrap {
	max-width:980px;
	margin:0 auto;
    padding:10px;
    box-sizing: border-box;
}
.justify {
	text-align:justify;
}
.justify:after{
	content:"";
	display:inline-block;
	width:100%;
	height:0;
}
header.main {
	background:#09318b url('../img/head-bg.jpg') top center;
	color:#fff;
	text-align:center;
	font-size:24px;
	padding-top:80px;
	padding-bottom:50px;
}
header.main nav a {
	border-radius:116px;
	display:inline-block;
	margin:10px;
	padding:10px;
	width:116px;
	height:116px;
	text-align:center;
	background:#1b1464;
	color:#fff;
	font-family: "Tw Cen MT", "Century Gothic", Futura, "URW Gothic L", Arial, sans-serif;
	text-transform:uppercase;
	text-decoration:none;
	font-size:16px;
	font-weight:bold;
	vertical-align:middle;
}
header.main nav .img {
    width: 60px;
    height: 70px;
    background-size:contain;
    display: inline-block;
    background-position:center;
    background-repeat:no-repeat;
}
#mobile-menu {
    display: none;
    position:fixed;
    background: #1b1464 url(https://kms-au.appspot.com.storage.googleapis.com/sites/uniforms-dynamic/app_files/img/menu-icon.svg) center no-repeat;
    background-size: 24px;
    font-size: 24px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    padding: 8px;
    width: 40px;
    height: 40px;
    margin: 10px;
    cursor: pointer;
    top:10px;
    right:10px;
    z-index: 100;
}
section {
	color:#002157;
	font-size:24px;
	background-color:#d7d7d7;
}
section header .contentwrap {
	position:relative;
}
section nav {
	position:absolute;
	right:0;
	top:0;
}
section nav a {
	background-color:#a5bed7;
	border-radius:116px;
	display:inline-block;
	margin:10px;
	padding:10px;
	width:48px;
	height:48px;
	text-align:center;
	vertical-align:middle;
	background-position:center;
	background-size: 48px;
	background-repeat:no-repeat;
}
section nav a.last {
	margin-right:0;
}
section nav a.active {
	background-color:#0054a6;
}
section header {
	padding:25px 0;
	margin-bottom:20px;	
	background-color:#ececec;
}
section header h1 {
	color:#0d004c;
	margin:0;
	font-size:48px;
}
section header img {
	float: left;
	padding-right: 10px;
}
section header p {
	color:#0072bc;
	font-style:italic;
	margin:0.25em 0 0 0;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
  section nav a.about { background-image: url("../img/btn-about.svg"); background-size:39px 39px;}
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
  section nav a.uniforms { background-image: url("../img/btn-uniform.svg"); background-size:41px 45px; }
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
  section nav a.services { background-image: url("../img/btn-services.svg"); background-size:40px 40px; }
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
  section nav a.contact { background-image: url("../img/btn-mail.svg"); background-size:38px 30px; }
}
/****** Services *****/
#services {
	padding-bottom:20px;
}
#services article .cta {
	border-radius:116px;
	display:inline-block;
	margin:10px;
	padding:10px;
	width:116px;
	height:116px;
	text-align:center;
	background:#1b1464;
	color:#fff;
	text-transform:uppercase;
	text-decoration:none;
	font-weight:bold;
	vertical-align:middle;
	position:relative;
	background-position:center;
	background-repeat:no-repeat;
    cursor: pointer;
}

#services article .cta:hover {
	background:url('../img/embroidery-bg.jpg') center no-repeat;
}
#services article .cta:after {
	content:"";
	position:absolute;
	top:4px;bottom:4px;
	left:4px;right:4px;
	border-radius:116px;
	border:2px dashed #fff;
}
#services article .uniforms:before {
	background-image:url('../img/uniforms.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
	#services article .uniforms:before {
		background-image:url('../img/uniforms.svg');
		background-size: 85px 76px;
	}
}
#services article .alterations:before {
	background-image:url('../img/alterations.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
	#services article .alterations:before {
		background-image:url('../img/alterations.svg');
		background-size: 89px 73px;
	}
}

#services article .fittings:before {
	background-image:url('../img/fittings.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
	#services article .fittings:before {
		background-image:url('../img/fittings.svg');
		background-size: 103px 62px;
	}
}

#services article .mono:before {
	background-image:url('../img/mono.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
	#services article .mono:before {
		background-image:url('../img/mono.svg');
		background-size: 83px 37px;
	}
}
#services article .embroidery:before{
	background-image:url('../img/embroidery.png');
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) { 
	#services article .embroidery:before {
		background-image:url('../img/embroidery.svg');
		background-size: 87px 65px;
	}
}

#services article .cta:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-position:center;
	background-repeat:no-repeat;
	border-radius:116px;
}

#services article .col {
	font-family: "Tw Cen MT", "Century Gothic", Futura, "URW Gothic L", Arial, sans-serif;
	display:inline-block;
	text-transform:uppercase;
	font-weight:bold;
	color:#0054a6;
	width:160px;
	text-align:center;	
	font-size:16px;
}


/*********** About **********/
#about {
	color:#fff;
	background: #1952a4; /* Old browsers */
	background-image:url('../img/about-bg.png');
	background-image:url('../img/about-bg.png'), -moz-linear-gradient(top,  #1952a4 0%, #1952a4 15%, #05143e 100%); /* FF3.6+ */
	background-image:url('../img/about-bg.png'), -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1952a4), color-stop(15%,#1952a4), color-stop(100%,#05143e)); /* Chrome,Safari4+ */
	background-image:url('../img/about-bg.png'), -webkit-linear-gradient(top,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* Chrome10+,Safari5.1+ */
	background-image:url('../img/about-bg.png'), -o-linear-gradient(top,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* Opera 11.10+ */
	background-image:url('../img/about-bg.png'), -ms-linear-gradient(top,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* IE10+ */
	background-color: url('../img/about-bg.png'), linear-gradient(to bottom,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1952a4', endColorstr='#05143e',GradientType=0 ); /* IE6-9 */
	background-position:bottom center;
	background-repeat:no-repeat;
	padding-bottom:400px;
	font-size:20px;
}
#about header {
	background-color:#0d004c;
}
#about h1 {
	color:#fff;
}
#about nav a {
	background-color:#091967;
}
#about nav a.active {
	background-color:#0054a6;
}

/******* uniforms *******/
#uniforms {
	background-color:#e1e1e1;
}
#uniforms .items {
    position: relative;
    padding-top:50%;
    width: 100%;
}
#uniforms .item {
    left:0;
    top:0;
    height: 100%;
    width:33%;
	position:absolute;
    background-position: center;
    background-size: cover;
    cursor: pointer;
}
#uniforms .item h1 {
	display:table-cell;
	width:100%;
	height:100%;
	vertical-align:middle;
	text-align:center;
	color:#fff;
	font-size:24px;
}
#uniforms .item .content p{
	display:table-cell;
}
#uniforms .item .content {
	width:100%;
	height:100%;
	display:table;
	background:rgba(200,200,200,0.6);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99C8C8C8,endColorstr=#99C8C8C8)"; /* IE8 */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#99C8C8C8,endColorstr=#99C8C8C8);   /* IE6 & 7 */
	zoom: 1;
}
#uniforms .item:hover .content {
	background:transparent;
	-ms-filter:none;
	filter:none;
	
}
#uniforms .item .caption {
	position:absolute;
	bottom:0;
	font-size:9px;
	background:rgba(0,0,0,0.8);
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#CC000000,endColorstr=#CC000000)"; /* IE8 */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#CC000000,endColorstr=#CC000000);   /* IE6 & 7 */
	zoom: 1;
	color:#fff;
	font-size:14px;
	padding:10px;
	display:none;
	width:100%;
	box-sizing: border-box;
}
#uniforms .item .caption a {
	color: #00bff3;
}
#uniforms .item:hover .caption {
	display:block;
}
#uniforms .item.corporate {
	width:33%;
	height:100%;
	background-image:url('../img/corporate-bg.jpg');
}
#uniforms .item.hospitality {
	width:33.5%;
    right:0;
    left:auto;
    top:0;
	height:66%;
	background-image:url('../img/hospitality-bg.jpg');
}
#uniforms .item.sports {
	width:30%;
    left:33%;
    bottom:0;
    top:auto;
	height:34%;
	background-image:url('../img/sports-bg.jpg');
}
#uniforms .item.office {
	width:37%;
    right:0;
    left:auto;
    top:auto;
    bottom:0;
	height:34%;
	background-image:url('../img/office-bg.jpg');
}
#uniforms .item.hi-vis {
	width:33.5%;
    left:33%;
	height:66%;
	background-image:url('../img/hi-vis-bg.jpg');
}

/******* contact ******/

#contact {
	color:#fff;
	background: #1952a4; /* Old browsers */
	background-image: -moz-linear-gradient(top,  #1952a4 0%, #1952a4 15%, #05143e 100%); /* FF3.6+ */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1952a4), color-stop(15%,#1952a4), color-stop(100%,#05143e)); /* Chrome,Safari4+ */
	background-image: -webkit-linear-gradient(top,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* Chrome10+,Safari5.1+ */
	background-image: -o-linear-gradient(top,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* Opera 11.10+ */
	background-image: -ms-linear-gradient(top,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* IE10+ */
	background-image: linear-gradient(to bottom,  #1952a4 0%,#1952a4 15%,#05143e 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1952a4', endColorstr='#05143e',GradientType=0 ); /* IE6-9 */
	padding-bottom:50px;
}
#contact article {
	font-size:16px;
}
#contact header {
	background-color:#0d004c;
}
#contact h1 {
	color:#fff;
}
#contact nav a {
	background-color:#091967;
}
#contact nav a.active {
	background-color:#0054a6;
}
#contact .justify {
	text-align:justify;
}
#contact .justify:after {
	content: "";
	width:100%;
	display:inline-block;
}
#contact .col {
	width:auto;
	display:inline-block;
	position:relative;
	padding-left:50px;
	box-sizing:border-box;
	vertical-align:top;
}
#contact .col.first {
	width:32%;
}
#contact .col img {
	position:absolute;
	top:0;
	left:10px;
}
#contact .seperator {
	max-width:100%;
	margin:30px;
	height:1px;
	background: -moz-linear-gradient(left,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,1) 90%, rgba(255,255,255,0) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(255,255,255,0)), color-stop(10%,rgba(255,255,255,1)), color-stop(90%,rgba(255,255,255,1)), color-stop(100%,rgba(255,255,255,0))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%); /* IE10+ */
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 90%,rgba(255,255,255,0) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */

}

#contact .container {
	border-radius:10px;
	width:50%;
	padding:10px;
	margin:0 auto;
	background: rgb(21,70,147); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(21,70,147,1) 0%, rgba(10,36,93,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(21,70,147,1)), color-stop(100%,rgba(10,36,93,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(21,70,147,1) 0%,rgba(10,36,93,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(21,70,147,1) 0%,rgba(10,36,93,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(21,70,147,1) 0%,rgba(10,36,93,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(21,70,147,1) 0%,rgba(10,36,93,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#154693', endColorstr='#0a245d',GradientType=0 ); /* IE6-9 */
}
#contact form {
	font-size:16px;
	text-align:center;
}
#contact form p {
	position:relative;
	margin:0;
	display:inline-block;
	width:100%;
}
#contact form p.top {
	width:49%;
	margin:5px 0;
}
#contact form label.infield-enabled {
	padding:10px 5px;
	color:#555555;
	position:absolute; 
	top:0;
	left:0;
}
#contact form input, #contact form textarea {
	background:#e1e1e1;
	border-radius:10px;
	border:none;
	padding:10px 5px;
	width:100%;
	box-sizing:border-box;
}
#contact form textarea {
	height:6em;
}
#contact form input[type='submit'] {
	background:#0072bc;
	color:#fff;
	text-transform:uppercase;
	font-weight:bold;
	font-size:16px;
	font-family: "Tw Cen MT", "Century Gothic", Futura, "URW Gothic L", Arial, sans-serif;
	margin:20px;
	width:auto;
	padding:10px 30px;
}
#contact a {
	text-decoration:none;
	color:#6dcff6;
}
#contact a.standard {
	color:inherit;
	text-decoration:none;
}
/***** footer *****/
footer {
	background:#ececec;
	color:#363636;
	font-size:12px;
	text-align:center;
	padding:20px 0 50px 0;
}
.bykeo {
    display: block;
    text-align: center;
    font-size: 12px;
    padding-top: 10px;
    padding-bottom: 20px;
    width: 100%;
    box-sizing: border-box;
}
.bykeo, .bykeo a {
    color: grey;
    text-decoration:none;
}
.bykeo img {
    vertical-align: middle;
    display: inline-block;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}
.bykeo a:hover img{
    transform-origin: center;
    transform: translateX(-200%) rotate(-360deg);
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:960px){
    #contact .col.first,
    #contact .col {
        width:49%;
        margin-bottom:10px;
    }
    #contact .container {
        width:90%;
    }
}
@media (max-width:760px){
    header.main nav {
        position: fixed;
        top:0;
        left:0;
        right:0;
        background: #1b1464;
        display: none;
        z-index: 99;
    }
    header.main nav.mobile-active {
        display: block;
    }
    #mobile-menu {
        display: block;
    }
    header.main nav img {
        width:32px;
        height: 32px;
        margin:5px;
    }
    header.main nav a {
        height: auto;
        width: 100%;
        background: none;
        box-sizing: border-box;
        margin:0;
    }
    header.main nav br {
        display: none;
    }
    #contact .col.first,
    #contact .col {
        width:100%;
        margin-bottom:30px;
    }
    section nav {
        position: static;
    }
    #uniforms .items {
        position: static;
        padding-top:0;
    }
    #uniforms .item {
        position: relative;
        width:100% !important;
        left:auto !important;
        padding-top:100%;
    }
    section nav {
        display: none;
    }
    .justify {
        text-align: center;
    }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
	body {} /*Prevent YUI compressor choking */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
