/*
Theme Name: Robert Reavley Pharmaceutical Chemist
Author: Pipe Media
Author URI: https://pipemedia.co.uk
Description: Responsive WordPress Theme for Robert Reavley Pharmaceutical Chemist
Version: 1.0
*/

/* Basic Styles
------------------------------------------- */

	body {
		background-color: #FFFFFF;
		font-family: "futura-pt", Arial, Helvetica, Sans-serif;
		font-size: 18px;
		line-height: 24px;
		color: #222222;
	}

/* Typography
------------------------------------------- */

	h1, h2, h3, h4, h5, h6 {
		font-weight: 300;
		color: #111111;
		margin: 0 0 20px; }
	h1 { font-size: 50px; line-height: 54px; color: #1E5B2F; text-transform: uppercase; margin-bottom: 40px; }
	h2 { font-size: 36px; line-height: 40px; margin-top: 25px; }
	h3 { font-size: 24px; line-height: 28px; margin-top: 20px; }
	h4 { font-size: 20px; line-height: 24px; margin-top: 15px; }
	h5 { font-size: 16px; line-height: 20px; margin-top: 10px; }
	h6 { font-size: 14px; line-height: 18px; margin-top: 5px; }
	
	p { margin: 0 0 15px; }
	p img { margin: 0; }

	em { font-style: italic; }
	strong { font-weight: 600; }
	small { font-size: 80%; }

/*	Blockquotes  */
	blockquote, blockquote p { line-height: 22px; color: #555555; }
	blockquote { margin: 0; padding: 20px 0; }
	blockquote p:last-child { margin: 0; }
	blockquote cite { display: block; font-size: 12px; color: #555; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #555; }
	
	blockquote span.name { display: block; font-weight: 600; }

/*	Horizontal Line  */
	hr { border: solid #CCCCCC; border-width: 1px 0 0; clear: both; margin: 20px 0; height: 0; }

/* Links
------------------------------------------- */

	a { color: #000000; text-decoration: underline; }
	a:hover { color: #000000; }

/* Lists
------------------------------------------- */

	ul {
		list-style: disc;
		padding: 0 0 0 25px;
	}
	
	ul li, ol li {
		margin: 0 0 7px;
	}

/* Images
------------------------------------------- */

	img {
		max-width: 100%;
		height: auto;
	}

	img.alignleft {
		float: left;
		margin: 0 40px 0 0;
	}
	
	img.alignright {
		float: right;
		margin: 0 0 0 40px;
	}
	
	img.aligncenter {
		margin: 40px auto;
		display: block;
	}

/* Forms
------------------------------------------- */
	
	input[type="text"], input[type="email"], input[type="password"], textarea {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		border-radius: 0;
		line-height: 20px;
	}
	
	form label {
		margin: 0 0 5px !important;
	}

	form input, form textarea, form select {
		box-shadow: none !important;
	}
	
	form .frm_submit button {
		background-color: #1E5B2F;
		color: #FFFFFF;
		display: block;
		text-align: center;
		padding: 12px 20px;
		font-weight: 600;
	}

/* Table
------------------------------------------- */

	table {
		border-collapse: collapse;
		margin: 0 0 20px;
		width: 100%;
	}

	table tr td {
		border-bottom: 1px solid #DDDDDD;
		padding: 10px;
	}

/* Cookie Consent
------------------------------------------- */

	#cookie-law {
		border-bottom: 1px solid #FFFFFF;
	    background-color: #1E5B2F;
		padding: 12px 0;
		width: 100%;
	}

	#cookie-law p {
	    font-size: 16px;
	    color: #FFFFFF;
		margin: 0;
	}

	#cookie-law p a {
		color: #FFFFFF;
	}

	#cookie-law p a.close-cookie-banner {
		background: url('images/close.png') no-repeat;
		background-size: 15px 15px;
		float: right;
		width: 15px;
		height: 15px;
		display: block;
		text-indent: -9999px;
		margin: 6px 0 0;
	}

/* Header
------------------------------------------- */
	
	header {
		background: #1E5B2F;
		padding: 15px 0;
	}
	
	header .row {
		position: relative;
	}
	
	header nav {
		margin-top: 35px;
	}
	
	header nav ul {
		list-style: none;
		margin: 0;
		padding: 0;
		float: right;
		clear: both;
	}
	
	header nav ul li {
		display: inline-block;
		position: relative;
		margin: 0;
		font-size: 19px;
	}
	
	header nav ul li a {
		text-decoration: none;
		color: #95C940;
		display: block;
		padding: 15px 10px 10px;
	}
	
	header nav ul li#menu-item-32 a {
		padding-right: 0;
	}
	
	header nav ul li a:hover {
		text-decoration: underline;
		color: #95C940;
	}
	
	header nav ul > li.current_page_item > a,
	header nav ul > li.current-menu-parent > a {
		font-weight: 600;
		color: #FFFFFF;
	}
	
	header nav ul li ul {
		background-color: #95C940;
		display: none;
		position: absolute;
		top: 100%;
		left: 10px;
		z-index: 9999;
		width: 180px;
		padding: 0 10px;
	}
	
	header nav ul li ul::before {
		bottom: 100%;
		left: 5%;
		border: solid transparent;
		content: " ";
		height: 0;
		width: 0;
		position: absolute;
		border-color: rgba(194, 225, 245, 0);
		border-bottom-color: #95C940;
		border-width: 8px;
	}
	
	header nav ul li:hover ul {
		display: block;
	}
	
	header nav ul li ul li {
		border-bottom: 1px solid #FFFFFF;
		text-align: left;
		display: block;
		font-weight: 300;
	}
	
	header nav ul li ul li:last-child {
		border: none;
	}
	
	header nav ul li ul li a,
	header nav ul li ul li.current_page_item a,
	header nav ul li ul li a:hover {
		padding: 7px 0;
		color: #FFFFFF;
	}
	
	header ul.social {
		list-style: none;
		margin: 0;
		padding: 0;
		float: right;
	}
	
	header ul.social li {
		background: url('images/social.png') no-repeat;
		background-size: 105px auto;
		width: 35px;
		height: 35px;
		margin: 0 0 0 5px;
		display: inline-block;
	}
	
	header ul.social li.twitter {
		background-position: -35px 0;
	}
	
	header ul.social li.instagram {
		background-position: -70px 0;
	}
	
	header ul.social li a {
		display: block;
		width: 100%;
		height: 100%;
		text-indent: -9999px;
	}
	
	header #opening-hours {
		font-weight: 300;
		position: absolute;
		top: 12px;
		right: 1rem;
		color: #FFFFFF;
		font-size: 18px;
		font-weight: bold;
	}
	
	header #basket {
		position: absolute;
		top: 15px;
		left: 1rem;
	}
	
	header #basket a {
		background-color: #B68F50;
		color: #FFFFFF;
		text-decoration: none;
		display: block;
		padding: 7px 15px;
	}

/* Footer
------------------------------------------- */
	
	footer {
		background-color: #1E5B2F;
		border-top: 3px solid #95C940;
		padding: 35px 0;
	}
	
	footer p, footer p a, footer p a:hover {
		color: #FFFFFF;
		margin: 0;
	}
	
	footer p.title {
		font-size: 24px;
		margin-bottom: 15px;
		font-weight: 600;
	}
	
	footer p a {
		text-decoration: none;
	}
	
	footer img {
		margin-top: 15px;
	}
	
	footer p.copyright {
		margin-top: 30px;
		font-size: 14px;
		line-height: 21px;
	}
	
	ul.affiliations {
		list-style: none;
		margin: 60px 0 40px;
		padding: 0;
		text-align: center;
	}
	
	ul.affiliations li {
		display: inline-block;
		margin: 0 20px;
	}
	
	ul.affiliations li img {
		max-height: 40px;
		width: auto;
	}
	
/* Newsletter
------------------------------------------- */

	#newsletter {
		background-color: #1E5B2F;
		padding: 35px 0;
		text-align: center;
		color: #FFFFFF;
	}

	#newsletter p.title {
		font-size: 28px;
		margin-bottom: 25px;
		font-weight: 600;
	}

	#newsletter form label {
		color: #FFFFFF !important;
	}

	#newsletter form .frm_submit button {
		background-color: #FFFFFF;
		color: #1E5B2F;
		display: block;
		width: 100%;
	}

/* Page
------------------------------------------- */	
	
	.row {
		max-width: 1115px;
	}
	
	#page {
		background-color: #FFFFFF;
		/*max-width: 1115px;
		margin: 0 auto;*/
	}
	
	#hero {
		background-color: #454545;
		background-size: cover !important;
		text-align: center;
		position: relative;
		height: 325px;
	}
	
	#hero.hero-shop {
		height: 250px;
	}
	
	body.page-id-14 #hero {
		height: 450px;
	}
	
	#hero .overlay {
		background: rgba(0, 0, 0, 0.4);
		width: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		position: absolute;
	}
	
	#hero .overlay .overlay-text {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		text-align: center;
		width: 100%;
	}
	
	#hero h1 {
		color: #FFFFFF;
		margin: 0;
	}
	
	#intro {
		background-color: #95C940;
		color: #FFFFFF;
		text-align: center;
		padding: 30px 0;
	}
	
	#intro h2 {
		line-height: 28px;
		font-size: 22px;
		color: #FFFFFF;
		margin-top: 0;
	}
	
	#intro h2:last-child,
	#intro p:last-child {
		margin: 0;
	}
	
	#content {
		padding: 40px 0;
	}
	
	#content.cta {
		background-color: #EEEEEE;
	}

	#content.cta h2 {
		margin-top: 0;
	}
	
	#content.sections {
		padding-bottom: 0;
	}
	
	#content.sections h2 {
		font-family: "futura-pt", Arial, Helvetica, Sans-serif;
		line-height: 26px;
		font-size: 22px;
		font-weight: 600;
		margin: 0 0 10px;
	}
	
	#content.sections p {
		text-align: justify;
	}
	
	#content.sections img {
		margin-bottom: 20px;
	}
	
	#content.sections .row .row {
		margin-bottom: 40px;
	}
	
	#content.premium-products h2 {
		margin-top: 0;
	}
	
	#content.premium-products .row {
		margin-bottom: 40px;
	}
	
	#content img {
		border: 3px solid #95C940;
		padding: 2px;
	}
	
	.notice {
		background: #D9D4C4 url('images/notice.png') left 30px center no-repeat;
		background-size: 170px auto;
		border: 3px solid #B7904B;
		padding: 30px 30px 30px 260px;
		margin-bottom: 40px;
	}
	
	.notice p.title {
		
		line-height: 32px;
		font-size: 26px;
	}
	
	.notice p:last-child {
		margin: 0;
	}
	
	#accordion h3 {
		border-bottom: 1px solid #CCCCCC;
		padding-bottom: 15px;
		margin: 15px 0 0;
		cursor: pointer;
		position: relative;
	}
	
	#accordion h3:focus {
		outline: none;
	}
	
	#accordion h3 span {
		background: url('images/accordion.png') no-repeat;
		background-size: 32px auto;
		width: 16px;
		height: 16px;
		display: block;
		position: absolute;
		right: 0;
		top: 6px;
	}
	
	#accordion h3.ui-state-active span {
		background-position: -16px 0;
	}
	
	#accordion .accordion-content {
		border: 1px solid #CCCCCC;
		border-top: none;
		padding: 15px;
	}
	
/* Home
------------------------------------------- */

	#slider {
		text-align: center;
		position: relative;
	}
	
	#slider .caption {
		background: rgba(30, 91, 47, 0.75);
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		color: #FFFFFF;
		font-size: 36px;
		line-height: 42px;
		padding: 20px;
	}
	
	#slider img {
		margin: 0 auto;
	}
	
	#slider .overlay {
		background: rgba(0, 0, 0, 0.4);
		width: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		position: absolute;
	}
	
	#slider .overlay .overlay-text {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		text-align: center;
		width: 100%;
	}
	
	#slider h1 {
		font-size: 56px;
		line-height: 62px;
		color: #FFFFFF;
	}
	
	#slider p {
		
		line-height: 32px;
		font-size: 26px;
		margin: 0;
		color: #FFFFFF;
		font-weight: 300;
		font-style: italic;
	}
	
	#slider .bx-wrapper .bx-prev {
		background: url('images/arrow-left.png') no-repeat;
		background-size: 32px auto;
	}
	
	#slider .bx-wrapper .bx-next {
		background: url('images/arrow-right.png') no-repeat;
		background-size: 32px auto;
	}
	
	#content video {
		margin: 40px auto 0;
		display: block;
	}

	#blocks .block {
		background: #454545 url('images/pharmacy-services.jpg') center no-repeat;
		background-size: cover;
		position: relative;
		min-height: 250px;
	}
	
	#blocks .block.block-prescriptions {
		background: #454545 url('images/online-prescriptions.jpg') center no-repeat;
		background-size: cover;
	}
	
	#blocks .block.block-post-office {
		background: #454545 url('images/post-office.jpg') center no-repeat;
		background-size: cover;
	}
	
	#blocks .block.block-clinic {
		background: #454545 url('images/clinic.jpg') center no-repeat;
		background-size: cover;
	}
	
	#blocks .block a {
		display: block;
		width: 100%;
		height: 100%;
	}
	
	#blocks .block a span {
		background-color: #1E5B2F;
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 15px 0;
		text-transform: uppercase;
		color: #FFFFFF;
		text-align: center;
		font-size: 22px;
		line-height: 22px;
	}
	
/* About
------------------------------------------- */
	
	.meet-team .team-member {
		margin-bottom: 45px;
		min-height: 275px;
	}
	
	.meet-team .team-member p {
		margin-bottom: 45px;
	}

	.meet-team .team-member p.name {
		
		line-height: 28px;
		font-size: 22px;
		margin: 15px 0 0;
	}

/* Our History
------------------------------------------- */

	#message {
		border: 3px solid #B7904B;
		background: #DACEB2 url('images/welcome.jpg') center no-repeat;
		background-size: cover;
		padding: 30px 0;
	}
	
	#message .large-9 {
		background: url('images/apothecary.png') left center no-repeat;
		background-size: 220px auto;
	}
	
	#message p {
		padding: 20px 0 20px 240px;
		
		font-size: 24px;
		line-height: 30px;
		margin: 0;
	}

/* Blog
------------------------------------------- */

	article h2 a {
		text-decoration: none;
		color: #1E5B2F;
	}

/* Contact
------------------------------------------- */
	
	#map {
		background-color: #FFFFFF;
		width: 100%;
		height: 400px;
	}

	#map #map-normal,
	#map #map-streetview {
		height: 100%;
	}

/* Shop
------------------------------------------- */

	.woocommerce table {
		background-color: #FFFFFF;
	}
	
	.woocommerce div.product p.price,
	.woocommerce div.product span.price {
		color: #1E5B2F;
	}
	
	.woocommerce #respond input#submit,.woocommerce a.button,
	.woocommerce button.button, .woocommerce input.button {
		border-radius: 0;
	}
	
	.woocommerce #respond input#submit.alt, .woocommerce a.button.alt,
	.woocommerce button.button.alt, .woocommerce input.button.alt,
	.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover,
	.woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover {
		background-color: #1E5B2F;
	}

	.woocommerce form .form-row input.input-text,
	.woocommerce form .form-row textarea {
		border: 1px solid #B7904B;
		padding: 7px;
	}
	
	.woocommerce .quantity .qty {
		background: none;
		border: 1px solid #B7904B;
		padding: 8px;
	}
	
	.post-type-archive-product #content h1,
	.woocommerce .woocommerce-ordering,
	.woocommerce .product_meta {
		display: none;
	}
	
	.woocommerce ul.products li.product a img {
		margin: 0;
	}
	
	.woocommerce ul.products li.product .woocommerce-loop-category__title,
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product h3 {
		line-height: 1.5em;
		font-size: 1.5em;
		padding-bottom: 0;
	}
	
	.woocommerce ul.products li.product .price {
		color: #1E5B2F;
		font-size: 1em;
	}
	
	.woocommerce .woocommerce-product-gallery__image {
		margin-bottom: 15px;
	}

/* Product Options
------------------------------------------- */

	.product-highlight {
		background-color: #EEEEEE;
		margin-top: 20px;
	}

	.product-highlight .product-highlight-title {
		background-color: #1E5B2F;
		color: #FFFFFF;
		padding: 15px;
		border-radius: 5px 5px 0 0;
		min-height: 170px;
	}

	.product-highlight .product-highlight-title h3 {
		color: #FFFFFF;
		margin: 0 0 10px;
	}

	.product-highlight .product-highlight-title p {
		margin: 0;
	}

	.product-highlight .product-highlight-benefits {
		padding: 15px;
	}

	.product-highlight .product-highlight-benefits ul {
		margin: 0;
	}

	.product-highlight .product-highlight-prices {
		background-color: #FFFFFF;
		border: 1px solid #EEEEEE;
		padding: 15px;
		min-height: 120px;
	}

	.product-highlight .product-highlight-prices table {
		margin: 0;
	}

	.product-highlight .product-highlight-prices table tr th,
	.product-highlight .product-highlight-prices table tr td {
		text-align: center;
		padding: 10px;
	}

	.product-highlight .product-highlight-enquire a.btn {
		background-color: #95C940;
		color: #000000;
		display: block;
		text-align: center;
		padding: 12px 20px;
		font-weight: 600;
		text-decoration: none;
	}

/* Media Queries
------------------------------------------- */

/* Small only */
@media screen and (max-width: 39.9375em) {
	
	header {
		position: relative;
	}
	
	header .row {
		position: static;
	}
	
	header #logo {
		margin: 0 auto;
	}
	
	header #mobile-menu-open {
		background: #020E2C url('images/menu.png') center no-repeat;
		background-size: 18px auto;
		width: 40px;
		height: 40px;
		position: absolute;
		top: 15px;
		right: 1rem;
		text-indent: -9999px;
		display: block;
		border-radius: 50%;
	}
	
	header #basket {
		border-radius: 50%;
		width: 40px;
		height: 40px;
		left: 0.5rem;
		right: auto;
		top: 50px;
	}
	
	header #basket a {
		background: #020E2C url('images/basket.png') center no-repeat;
		background-size: 22px auto;
		border-radius: 50%;
		text-indent: -999px;
		width: 100%;
		height: 100%;
		content: "";
	}
	
	header nav {
		display: none;
		margin: 0;
	}
	
	header nav ul {
		margin-top: 20px;
		float: none;
	}
	
	header nav ul li {
		display: block;
		padding: 0;
		margin-bottom: 5px;
	}
	
	header nav ul li a {
		background-color: #FFFFFF;
		padding: 10px;
		color: #454545;
	}
	
	header nav ul > li.current_page_item > a,
	header nav ul > li.current-menu-parent > a {
		background-color: #95C940;
		color: #FFFFFF;
	}
	
	header nav ul li:hover ul {
		display: none;
	}

	header nav ul li ul {
		background: none;
		position: static;
		width: 100%;
		margin: 5px 0 0;
		padding: 0;
	}
	
	header nav ul li ul::before {
		display: none;
	}
	
	header nav ul li ul li {
		border-color: #D9D4C4;
		text-align: center;
		margin: 0;
	}
	
	header nav ul li ul li a,
	header nav ul li ul li a:hover {
		background: none;
		padding: 10px;
	}
	
	#blocks .block {
		margin-bottom: 20px;
	}
	
	#content.sections img {
		margin-bottom: 20px;
	}
	
	#intro h2 {
		line-height: 26px;
		font-size: 20px;
	}
	
	ul.affiliations li {
		margin: 0;
	}
	
	ul.affiliations li img {
		max-height: 40px;
		margin: 15px;
	}
	
	footer .row {
		background: none !important;
	}
	
	footer p {
		margin-bottom: 15px;
	}
	
	footer p.copyright {
		clear: both;
		float: none;
		text-align: left;
		margin-bottom: 0;
	}
	
	footer img {
		float: none;
		margin: 10px 0 40px;
	}
	
	#slider .overlay,
	#slider .overlay .overlay-text {
		position: static;
	}
	
	#slider .overlay {
		background-color: #B7904B;
		padding: 25px 0;
	}
	
	#slider .overlay .overlay-text {
		transform: none;
	}
	
	#slider h1 {
		line-height: 42px;
		font-size: 36px;
	}
	
	#slider p {
		line-height: 26px;
		font-size: 20px;
	}
	
	#slider .swirl {
		background-size: 160px auto;
		width: 160px;
		height: 30px;
	}
	
	#hero {
		height: 250px;
	}
	
	#hero h1 {
		line-height: 48px;
		font-size: 44px;
	}
	
	.notice {
		background-position: top 30px center;
		padding: 200px 30px 30px;
	}
	
	#welcome, #message {
		text-align: center;
	}
	
	#welcome h1, #welcome p,
	#message .large-8 p {
		padding: 0;
	}
	
	#welcome .large-10,
	#message .large-8 {
		background: none;
	}
	
	img.alignleft, img.alignright {
		float: none;
		display: block;
		margin: 0 auto 30px;
	}
	
	h1,
	#hero h1 {
		line-height: 44px;
		font-size: 36px;
	}
	
	video {
		width: 100%;
		height: auto;
	}
	
	#slider .bx-wrapper .bx-prev,
	#slider .bx-wrapper .bx-next {
		display: none;
	}
	
	ul.affiliations {
		margin: 40px 0;
	}
	
	#slider .caption {
		background-color: #1E5B2F;
		position: static;
		padding: 15px;
		font-size: 24px;
		line-height: 28px;
	}
	
}

/* Medium and up */
@media screen and (min-width: 40em) {}

/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
	
	header #logo {
		margin: 0 auto;
	}
	
	header nav {
		margin-top: 20px;
	}
	
	header nav ul {
		float: none;
	}
	
	footer p.title.title-open-hours {
		margin-top: 30px;
	}
	
	ul.affiliations li {
		margin: 10px;
	}
	
	ul.affiliations li img {
		max-height: 30px;
	}
	
	#hero {
		height: 275px;
	}
	
	#welcome .large-10 {
		background-position: left 1rem center;
	}
	
	#message .large-8 {
		background-position: left 1rem center;
	}
	
	#slider h1 {
		line-height: 52px;
		font-size: 48px;
		margin-bottom: 10px;
	}
	
	header #basket {
		top: -20px;
	}
	
	video {
		width: 100%;
		height: auto;
	}
	
	#blocks .block {
		margin: 0 auto 30px;
		max-width: 300px;
	}
	
	#blocks .block {
		min-height: 250px;
	}
	
	#blocks .block a span {
		font-size: 20px;
		line-height: 26px;
	}
	
	h1,
	#hero h1 {
		line-height: 48px;
		font-size: 42px;
	}
	
	#slider .caption {
		padding: 15px;
		font-size: 30px;
		line-height: 34px;
	}
	
}

/* Large and up */
@media screen and (min-width: 64em) {}

/* Large only */
@media screen and (min-width: 64em) and (max-width: 74.9375em) {}