/*
Theme Name: PierceHarmony
Theme URI: http://www.graphixweb.co.uk/
Version: 10.0.0
*/

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%;
	vertical-align: baseline;
}
body {
	line-height: 1;
	padding: 0px;
    font-family: 'Libre Baskerville', serif;
	font-weight:400;
	color:#fff;
}
.wrapper {
    position: relative;
    overflow: hidden;
}
.clear { clear:both; }
ol, ul {
	list-style: none;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	color: #fff;
	font-weight: 900;
	text-transform: uppercase;
}
h1 {
    font-size: 50px;
    line-height: 48px;
    padding: 0px 0px 25px 0px;
    margin: 0px;
}
h2 {
    font-size: 35px;
    line-height: 44px;
    margin: 0 0 30px 0;
    padding: 0px;
}
h3 { font-size: 20px; margin: 10px 0px; }
h4 {
    font-size: 20px;
    line-height: 30px;
    padding: 0;
	margin-bottom: 20px;
    color: #542583;
    clear: none;
}
h5 { font-size: 13px; }
h6 { font-size: 12px; }
p, li, address,blockquote { margin: 0 0 15px; font-size: 16px; line-height: 26px; font-weight: 300; }
address { text-align:center; font-style: normal; margin-top: 20px; }
ol, ul { margin: 0 0 0 25px; }
ul ul { margin-bottom: 0; }
ul { list-style: disc outside; }
html {overflow-y: scroll;font-size: 100%;-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {	display: block;}
sub, sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

img {border: 0;	-ms-interpolation-mode: bicubic;    max-width: 100%;}

/* Clearing floats */
.clear:after, .wrapper:after, .format-status .entry-header:after {clear: both;}
.clear:before, .clear:after, .wrapper:before, .wrapper:after, .format-status .entry-header:before, .format-status .entry-header:after {display: table;content: "";}


.menu-toggle,
button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
	cursor: pointer;
}
button[disabled],
input[disabled] {
	cursor: default;
}
.menu-toggle:hover,
.menu-toggle:focus,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
article.post-password-required input[type=submit]:hover {
	border-color: transparent;
}
.menu-toggle:active,
.menu-toggle.toggled-on,
button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
	border-color: transparent;
}

img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}
img.size-full,
img.size-large,
img.header-image,
img.wp-post-image {
	max-width: 100%;
	height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
}

/* Images */
.alignleft {
	float: left;
}
.alignright {
	float: right;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
/* Navigation */
.site-content nav {
	clear: both;
	line-height: 2;
	overflow: hidden;
}

/* =Basic structure
-------------------------------------------------------------- */

/* Body, links, basics */
html { font-size: 87.5%; }
a { outline: none; text-decoration:none; }
a:hover { }
.entry-content a { }

/* Assistive text */
.assistive-text,
.site .screen-reader-text {
	position: absolute !important;
	clip: rect(1px, 1px, 1px, 1px);
	overflow: hidden;
	height: 1px;
	width: 1px;
}
.main-navigation .assistive-text:focus,
.site .screen-reader-text:hover,
.site .screen-reader-text:active,
.site .screen-reader-text:focus {
	clip: auto !important;
	display: block;
	font-size: 12px;
	padding: 12px;
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 100000; /* Above WP toolbar */
}

/* Page structure */
.site { padding: 0 20px; position:relative; }
.container { margin: 0 auto; width: 940px; max-width:90%; }
#main.container { width: 100%; max-width: 100%; position: relative; }
section { padding: 80px 0; }
section#home { padding:0;position:relative }
section#home:after{position:absolute;bottom:0px;z-index: 100;width:100%;content:'';border-bottom: 7px solid #542583;}
a.button {padding: 15px 0px;
    font-size: 17px;
    color: #fff;
    margin: 30px auto 0 auto;
    display: block;
    text-transform: uppercase;
    background: #ea6f00;
    width: 33.333%;
    text-align: center;
	-webkit-transition: background-color 1s ease-out;
  -moz-transition: background-color 1s ease-out;
  -o-transition: background-color 1s ease-out;
  transition: background-color 1s ease-out;
}
a:hover.button { background:#666; }

/* ############ 1. Header ############### */
header { position: absolute; top: 0; left: 0;background: #000; z-index: 1000; white-space: nowrap; width:100%; display:block; }
hgroup { padding: 15px 0px;border-bottom: 7px solid #542583}
hgroup .container { position: relative;width: 100%; }

#logo {
    position: absolute;
    left: 0;
}
#logo img {
    width: 150px;
    height: auto;
    display: block;
    margin: 0;
}
.slogan {
    text-align: center;
    margin: 0px 200px;
    text-transform: uppercase;
    font-size: 20px;
    padding-top: 55px;
    background-image: url(images/decoration.png);
    background-size: auto 45px;
    background-position: top center;
    background-repeat: no-repeat;
}
.hamburger{display:none}
.hamburger:hover {opacity: 1;}
#menus {text-align: center;margin: 20px 200px;}
#menus a { color: #fff; margin: 0px;padding: 15px 10px; font-size: 15px;text-transform: uppercase; display: inline-block;border-right: 1px solid #666;}
#menus a.nonav { border-right: none;}
#menus a:hover {color:#fff;}
#menus a.active,#menus a:hover {color:#fff;background-color: #542583}

.themenu{float:right;}
.themenu a {width: 110px;height: 20px;background: #333;color: #fff;display: block;float: left;font-size: 15px;text-transform: uppercase;text-align: center;padding: 45px 0;line-height: 22px;-webkit-transition: .7s; transition: .7s;}
.themenu a:nth-child(2){background:#666}
.themenu a:nth-child(3){background:#999}

.socials {
    position: absolute;
    right: 0;
    bottom: 55px;
    width: 120px;
}
.socials a {
    display: block;
    width: 40px;
    height: 40px;
    background-size: cover;
    float: right;
    margin: 0 5px;
}
.socials a.instagram{background-image: url(images/icon_instagram.png);}
.socials a.twitter{background-image: url(images/icon-twitter.png);}
.socials a.facebook{background-image: url(images/icon_facebook.png);}


.sticky #primary { margin-top: 0px; }
.sticky header { line-height:normal; }
.sticky hgroup { z-index: 100; position: fixed; width: 100%;background-color:#000}
.sticky #logo img, .sticky .slogan { display: none;}
.sticky #menus{margin-top:0;margin-bottom:0}
.sticky .socials {bottom: 5px}




section { display:block; width:100%; }

.banner .container { position: absolute; z-index: 100; width: 70%; max-width: 100%; text-align: center; top: 40vh; left: 15%; }
.banner, .banner ul { position: relative; margin: 0; padding: 0; height: 100vh; min-height: 700px; width: 100% !important; list-style: none; }
/*.banner .owl-stage-outer::after { content: "";width: 100%;height: 100%;display: block;background-image: url(images/shade.svg);background-size: cover;position: absolute;top: 0;z-index: 10;}*/
.banner ul li { position: relative; display: block; float: left; margin: 0; padding: 0; width: 100%; height: 100vh; min-height: 700px; background-size: cover; background-position: center center; }
.banner .owl-carousel { z-index:10; }
.banner .owl-dots { position: relative; margin-top: -100px; z-index: 1; }
a.down {
    content: '';
    z-index: 100;
    position: relative;
    bottom: 50px;
    left: 50%;
    display: block;
    width: 90px;
    height: 90px;
    background-image: url(images/arrow-down-white.svg);
    background-repeat: no-repeat;
    background-position: center 0px;
    background-size: 30px 50px;
    border-radius: 45px;
    margin-left: -45px;
    color: #542583;
    text-align: center;
    padding: 0;
    font-size: 12px;
    opacity: 1;
    background-color: #542583;
}
.about a.down, .services a.down { color: #FFF; background-color: #2d2d2d; bottom: -105px; }

.entry-content .topper h1 { font-size: 40px; text-align: center; padding: 30px 0; text-transform: uppercase; }
.entry-content .topper p { text-align: center; margin-bottom: 25px; }

/* ######## SLIDERS ######### */
.owl-dots { text-align:center; margin-top: 30px; }
.owl-carousel button.owl-dot { width: 14px; height: 14px;background-color:transparent;margin: 4px;border-radius:7px;border: 2px solid #fff;}
.owl-carousel button.owl-dot.active { background-color:#fff;border: 2px solid #fff; }
#slider.owl-carousel .owl-nav button.owl-next,
#slider.owl-carousel .owl-nav button.owl-prev,
#owl-one.owl-carousel .owl-nav button.owl-next,
#owl-one.owl-carousel .owl-nav button.owl-prev,
#owl-two.owl-carousel .owl-nav button.owl-next,
#owl-two.owl-carousel .owl-nav button.owl-prev,
#owl-three.owl-carousel .owl-nav button.owl-next,
#owl-three.owl-carousel .owl-nav button.owl-prev,
#owl-four.owl-carousel .owl-nav button.owl-next,
#owl-four.owl-carousel .owl-nav button.owl-prev
	{ font-size:80px; color:#fff; font-weight:100; }
.arrow { width: 20px; height: 30px; display: block; background-image: url(images/next.svg); background-size:cover; margin-left: 8px;opacity:0.5 }
.arrow.prev { background-image: url(images/prev.svg); }
.arrow.next { margin-left: 20px; }
.banner #slider.owl-carousel .owl-nav button.owl-next { position: absolute; top: 47vh; right: 0px; width: 50px; height: 50px; border-radius: 25px 0 0 25px; -webkit-transition: .9s; transition: .9s; }
.banner #slider.owl-carousel .owl-nav button.owl-prev {
    position: absolute;
    top: 47vh;
    left: 0px;
    width: 50px;
    height: 50px;
    -webkit-transition: .9s;
    transition: .9s;
    border-radius: 0 25px 25px 0;
}
.banner:hover #slider.owl-carousel .owl-nav button.owl-next {  }
.banner:hover #slider.owl-carousel .owl-nav button.owl-prev {  }

.about .owl-carousel .owl-nav button.owl-next { position: absolute; top: 0px; right: -10px; opacity:0.6; -webkit-transition: .9s; transition: .9s; }
.about .owl-carousel .owl-nav button.owl-prev { position: absolute; top: 0px; left: -10px; opacity:0.6; -webkit-transition: .9s; transition: .9s; }
.about:hover .owl-carousel .owl-nav button.owl-next { opacity:.7; }
.about:hover .owl-carousel .owl-nav button.owl-prev { opacity:.7; }
.photo p { padding-left:200px; min-height:150px; }
.photo img  { width: 160px !important; height: auto; position: absolute; top: 0; left: 0; }

/* ############# 2. Navigation Menu ############# */
.main-navigation { float: none; margin: 0; }
.main-navigation ul.nav-menu, .main-navigation div.nav-menu > ul { display: none; }
.main-navigation ul.nav-menu.toggled-on, .menu-toggle { display: block; background: #fff; list-style: none; margin: 0; }
.main-navigation ul.nav-menu.toggled-on a { display: block; font-size: 15px; padding: 20px; color: #333; text-transform:uppercase; border-bottom: none; }
.menu-menu-1-container { position: absolute; width: 100%; top: -10px;; box-shadow: 0px 5px 5px #ccc; }
.sticky .menu-menu-1-container { top: 40px; }
.menu-menu-1-container ul, .menu-menu-1-container li { margin-bottom:0; }
.nav-menu { position: absolute; width: 100%; top: 0; }
.toggled-on .on, .off { display:none;}
.on, .toggled-on .off { display:block; }

.about .owl-dots, .services .owl-dots { position: absolute; top: 0px; margin: 0; margin-left: 0px; left: 50%; margin-left: -20px; }
.about .owl-dots { top: -40px; }

/* ##################### SECTIONS ####################### */
section.piercings .container:before, section.piercings .container:after,
section.about .container:before, section.about .container:after,
section.brandgallery .container:before,section.brandgallery .container:after,
section.featuredreviews .container:before, section.featuredreviews .container:after,
section.contact .container:before,section.contact .container:after
{content: '';height: 45px;background-image: url(images/decoration.png);background-size: auto 45px;background-position: top center;display: block;background-repeat: no-repeat;margin: 0 0 30px 0;}

section.piercings .container:after, section.about .container:after, section.brandgallery .container:after, section.featuredreviews .container:after, section.contact .container:after{background-image: url(images/decoration2.png);margin: 30px 0 0 0;}


/*piercings*/
section.piercings{background-color:#000;background-image:url(images/piercing_background.jpg);background-size:cover;background-position:center;text-align:center;z-index: 200; position: relative;}
.servicelist{font-size:20px;line-height:40px;}
.serviceitem{padding:0 12px 0 0}
.serviceitem:after{content:'|';padding-left: 12px;}

/*ABOUT US*/
section.about{background: rgb(84,37,131);background: linear-gradient(180deg, rgba(84,37,131,1) 0%, rgba(124,63,140,1) 100%);}
.about::after { content:""; height:50px; background:#ccc; transform: rotate(5deg); }
.about .emma{width:25%;float:left}
.about .emma img {    border-radius: 50%;}
.about .intro{width:70%;float:right;margin-left:5%}


.half { width: 50%; float: left; margin: 0;box-sizing: border-box;padding: 30px 20px 30px 0;}
.half.last{ padding: 30px 0 30px 20px;}

/* GALLERY */
.brandgallery{background-color:#000;text-align:center}
#gallery img {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    float: left;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
	border:3px solid #000;
    object-fit: cover;
    object-position: center;
}
.gallery .gallerypic{float:left;position: relative; width:25%;padding-bottom:25%}
#gallery img:hover { opacity:0.6; }

/* testimonials */
section.featuredreviews {background: rgb(84,37,131);background: linear-gradient(180deg, rgba(84,37,131,1) 0%, rgba(124,63,140,1) 100%);text-align:center}
blockquote {
    font-size: 21px;
    line-height: 33px;
}
section.featuredreviews .ref{font-size:15px;line-height:25px}

/* CONTACT PAGE */
.contact {text-align:center}
.contact h2,.contact p { color:#542583 }
.contact img {
    width: 150px;
    height: auto;
    margin: 0 20px 60px 0;
    float: left;
}
.contact a {text-decoration:none;color:#000}
.line{margin:0 5px}
.social{margin-top:40px}
.social img{width:25px;height:auto;margin:0 10px 0 0}
button, input, select, textarea {border: none;border-radius: 0px;font-family: inherit;padding: 10px;color: #000;background: #e1d7eb;width: 100%;box-sizing: border-box;margin: 0 0 10px 0;font-size: 15px;}
button, input {line-height: normal;}
textarea {overflow: auto;vertical-align: top;}
input[type="submit"], input[type="button"], input[type="reset"]{-webkit-appearance: none;-moz-appearance: none;appearance: none;padding: 10px 20px;font-size: 15px;text-transform:uppercase;border: none;width: auto;background-color: #542583;color: #fff;}
.map { height: 400px; overflow: hidden; display: block; position: relative; margin-top: 40px; }
.map iframe { display: block; position: relative; top: -50px; }

.privacy { padding: 15px 0 5px 0; margin-top:0px; height: 20px; text-align: center; color: #999; font-size: 13px; }
.privacy a{color:#999;text-decoration:underline}


/* ############# Footer ############ */
footer { background:#542583;color:#fff;font-size:12px }
footer .container{padding:30px 0}
footer .footnav a{color:#fff;padding:0 10px}
footer .copy{text-align:center}
footer .copy a{color:#fff;}





/* =Media queries
-------------------------------------------------------------- */

@-ms-viewport {
	width: device-width;
}
@viewport {
	width: device-width;
}

/* Minimum width of 800 pixels. */
@media screen and (min-width: 800px) {
	.site {
		margin: 0 auto;
		max-width: 940px;
		overflow: hidden;
	}
	.site-content {
		float: left;
		width: 65.104166667%;
	}
	body.template-front-page .site-content,
	body.attachment .site-content,
	body.full-width .site-content {
		width: 100%;
	}
	.main-navigation {
    	text-align: center;
    	width: 100%;
	}
	.main-navigation a {
    	text-decoration: none;
	}
	.main-navigation li.nonav { display:none; }
	.main-navigation ul.nav-menu.toggled-on, .menu-toggle {
    	width: 100%;
	}
	.menu-menu-container {
	margin-top:10px;
	}
.main-navigation ul.nav-menu,
	.main-navigation div.nav-menu > ul {
		display: table;
		text-align: center;
		width: 100%;
	}
	.main-navigation ul {
		margin: 0;
		text-indent: 0;
	}
	.main-navigation li a,
	.main-navigation li {
		display: inline-block;
		text-decoration: none;
	}
	.main-navigation li a {
		color:#fff;
	}
	.main-navigation li.current_page_item a {
		color:#000;
	}
	.main-navigation li:hover {
		background:#178614;
	}
	.main-navigation li a {
    	margin: 0px;
    	position: relative;
    	padding: 15px 22px;
    	font-size: 15px;
    	font-weight: 400;
	}
	.main-navigation li:first-child a {
		padding-left:0;
	}
	.main-navigation li:last-child a {
		padding-right:0;
	}
	.main-navigation li ul {
    	margin: 0;
    	padding: 0;
    	position: absolute;
    	top: 100%;
    	z-index: 1;
    	height: 1px;
    	width: 1px;
    	overflow: hidden;
    	clip: rect(1px, 1px, 1px, 1px);
    	background: #AB8E54;
    	text-align: left;
	}
	.main-navigation ul li ul li {
    	margin: 0px !important;
    	padding: 0px !important;
    	border-right: none;
		display: inline;
	}
	.main-navigation li ul ul {
		top: 0;
		left: 100%;
	}
	.main-navigation ul li:hover > ul,
	.main-navigation ul li:focus > ul,
	.main-navigation .focus > ul {
		border-left: 0;
		clip: inherit;
		overflow: inherit;
		height: inherit;
		width: inherit;
	}
	.main-navigation li ul li a {
		display: block;
		font-size: 15px;
		padding: 10px;
		width: 200px;
		white-space: normal;
	}
	.main-navigation li ul li a:hover,
	.main-navigation li ul li a:focus, .main-navigation .sub-menu .current-menu-item > a {
		background: #178614;
	}
	.menu-toggle { display: none; }
}
@media screen and (max-width: 1100px) {
	#logo img {width: 140px;}
	#menus {margin:15px 150px}
	#menus a {padding: 8px;font-size: 14px;}
}
@media screen and (max-width: 1000px) {
	#logo img {width: auto;height: 120px;}
	#menus a {padding: 5px;font-size: 13px;}
	
}
@media screen and (max-width: 800px) {
hgroup .container {height: 120px;}
.slogan {
    margin: 0px 150px; 
    font-size: 15px;
    padding-top: 45px;
    background-size: auto 35px;
}
.hamburger {
    display: inline-block;
    z-index: 200;
    position: absolute;
    top: 30px;
    right: 0;
    width: auto;
    padding: 20px;
    background: #542583;
}
.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after {background-color: #fff !important;}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {  background-color:#fff;}
.hamburger.is-active { }
.hamburger.is-active:hover {opacity: 1;}
.thenav {
    transition: all 0.5s ease;
    position: relative;
    top: 0;
    right: -100%;
    height: auto;
    width: 100%;
    background: #542583;
    color: #fff;
	display: none;
}
.sticky .thenav{position:fixed}
.thenav.pullout {
    right: 0;
    z-index: 10;
    display: block;
    position: absolute;
    top: 90px;
    width: 50%;
    margin: 0 !important;
}
#menus.pullout a {
    padding: 15px 20px;
    font-size: 16px;
    display: block;
    text-align: left;
    border: none;
    color: #fff;
}
	#menus a.hover {
    color: #fff;
    background: #000;
}
	.sticky header {background: transparent;}
	.sticky hgroup {background-color: transparent;border: none;padding: 0;}
	.sticky hgroup .container {height: auto;max-width: 100%;}
	.sticky .hamburger {top: 0;}
	.sticky .thenav.pullout {top: 60px;}
	.socials {right: 50%;bottom: 0;width: 100px;margin-right: -50px;}
	.sticky .socials {display: none;}
	.banner, .banner ul, .banner ul li { min-height: 500px; }
	section { padding: 50px 0; }
	section.whatwedo ul {column-count: 2;}
	.half {width: 100%;float: none;margin: 0;padding: 0;}
	.social {margin-top: 20px;margin-bottom: 30px;}
	.contact img {width: 250px; max-width: 90%;}
	.social img {width: 25px;}
	.gallery .gallerypic{width:50%;padding-bottom:50%}
	footer .copy,footer .footnav {text-align: center; margin-top: 10px;}
	h1 {font-size: 40px;line-height: 46px;padding: 0px 0px 20px 0px;}
	h2 {font-size: 25px;line-height: 35px;margin: 0 0 16px 0;}
	.servicelist {font-size: 17px;line-height: 35px;}
	
}
@media screen and (max-width: 650px) {
	hgroup .container {height: 100px;}
	#logo img {height: 100px;}
	.slogan {margin: 0px 120px;padding-top: 30px; background-size: auto 24px;font-size: 13px;line-height: 16px;}
	.slogan .mobbreak {display: block;}
	.hamburger {top: 20px;}
	.thenav.pullout {top: 80px;width: 80%;}
	.socials {right: 50%;bottom: 0;width: 80px;margin-right: -40px;}
	.socials a {width: 30px;height: 30px;}
	.banner, .banner ul, .banner ul li {min-height: auto;height: 90vh;}
	.about .emma {width: 100%;float: none;margin-bottom: 30px;}
	.about .intro{width: 100%;float: none;}
}

/* =Print
----------------------------------------------- */

@media print {
	body {
		background: none !important;
		color: #000;
		font-size: 10pt;
	}
}