/*
	Theme Name: Grathicks
	Theme URI: https://grathicks.com
	Description: Custom Theme from Grathicks. Modified for Bean14
	Version: 1.4.3
	Author: Reece Carter
	Author URI: https://grathicks.com
	Tags: Custom, HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*
 * 
 * COLOURS:
 * 
 * PINK: #FF1199;
 * NEON BLUE: #00A7BC
 * DARK GREY: #222529
*/

/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap');

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size: 62.5%;
	scroll-behavior: smooth;
	background: #191919;
}
body {
	font: 400 16px/1.8 'Montserrat', sans-serif;
	color: #FFFFFF;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color: #00A7BC;
	text-decoration:none;
	transition: 0.2s;
}
a:hover {
	text-decoration: none;
	color: #FF1199;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

main {
	margin-top: 75px; /* Fixed header height */
}

/* wrapper */
.wrapper {
	margin:0 auto;
	position:relative;
	max-width: 1200px;
	box-sizing: border-box;
	padding: 0px 30px;
}
.header {
	background: #191919;
	width: 100%;
	position: fixed;
	top: 0px;
	z-index: 20;
}
/* logo */
.logo {
	box-sizing: border-box;
	padding: 0px;
	float: left;
}
.logo a {
	display: inline-block;
	width: 230px;
}
.logo-img {
	max-width: 100%;
	box-sizing: border-box;
}
/* nav */
.nav {

}

.basket-icon-link {
	width: 25px;
	height: 25px;
	background: url("./img/basket.png");
	background-size: cover;
	display: block;
	float: right;
	margin-top: 32px;
}

.basket-icon-link span {
	background: #D99529;
    display: block;
    float: right;
    margin-top: -8px;
    color: #FFFFFF;
    height: 20px;
    width: 20px;
    line-height: 20px;
    text-align: center;
    font-size: 12px;
    border-radius: 50%;
    margin-right: -10px;
}

/* sidebar */
.sidebar {
	width: 200px;
	float: left;
}

.sidebar ul {
	padding: 0px 0px 35px 0px;
	margin: 0px;
	list-style-type: none;
}

.sidebar h3 {
	color: #7A7A7A;
	font-size: 22px;
}

/* pagination */

.pagination {
	clear: both;
    padding: 10px 0px 35px 0px;
	text-align: center;
}   

.pagination .page-numbers {
	background: #12254F;
	padding: 5px 10px;
	font-weight: bold;
	border-radius: 15px;
	color: #FFFFFF;
}

.pagination .current {
	background: #D99529;
	padding: 5px 10px;
	font-weight: bold;
	border-radius: 50%;
	color: #FFFFFF;
}

.vc_carousel-slideline-inner img {
	height: auto !important;
}

/* footer */
.footer {
	background: #222529;
	color: #FFFFFF;
	box-sizing: border-box;
	padding: 60px 0px;
}

.footer ul {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}

.footer .column-third {
	padding: 0px 50px 0px 0px;
}

.footer a {
	color: #FFFFFF;
	transition: color 0.3s;
}
.footer a:hover {
	color: #D99529;
	text-decoration: none;
}

.footer h3 {
	color: #FFFFFF;
	font-weight: 900;
}

.footer img {
	max-width: 70%;
}

.height-fix img {
	height: auto;
}

video {
	line-height: 0px;
	display: block;
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/

.column-half {
	width: 50%;
	float: left;
}

.column-quarter {
	width: 25%;
	float: left;
}

.column-threequarter {
	width: 75%;
	float: left;
}

.column-third {
	width: 33%;
	float: left;
}
footer .column-third {
	margin-bottom: 35px;
}

.column-twothird {
	width: 67%;
	float: left;
}

table {
	width: 100%;
}
/*
table tr td {
	padding: 10px 30px;
}


table tr:nth-child(odd) {
	background: #ffffff;
}
table tr:nth-child(even) {
	background: #e6e6e6;
}

table tr td:last-child {
	text-align: right;
}
*/
.bg-left .vc_column-inner {
	background-position: left;
}

.overflow-allow {
	overflow: initial !important;
}

/* Form */

.form-control {
	border:  solid 2px #12254F;
	background: #FFFFFF;
	padding: 12px 15px;
	font-size: 16px;
	width: 100%;
	display: block;
	font-weight: 500;
	transition: 0.2s;
}
.form-control:focus {
	border: solid 2px #FF1199;
}

.form-group {
	margin-bottom: 15px;
}

.step h3 {
	margin-top: 35px;
}

/*------------------------------------*\
    TYPOGRAPHY
\*------------------------------------*/

.text-small {
	font-size: 0.8em;
}
.text-large {
	font-size: 1.2em;
}
.text-huge {
	font-size: 2em;
}

.text-white, .white-text, 
.text-white h1, .white-text h1, 
.text-white h2, .white-text h2, 
.text-white h3, .white-text h3, 
.text-white h4, .white-text h4 {
	color: #FFFFFF;
}

.align-right {
	text-align: right;
}

.align-centre {
	text-align: center;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1em;
	font-weight: normal;
	margin: 0px 0px 10px 0px;
}

h1 { font-size: 50px; }
h2 { font-size: 50px; }
h3 { font-size: 20px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 14px; }

/*------------------------------------*\
    NAVIGATION
\*------------------------------------*/

header nav {
	float: left;
	width: calc(100% - 230px);
}

header nav ul {
    padding: 0px 0px;
    margin: 30px 0px 20px 30px;
    text-transform: uppercase;
	float: left;
}
header nav ul li {
	list-style-type: none;
	display: inline-block;
}

header nav ul li a {
    display: block;
    padding: 10px 15px 10px 15px;
    font-weight: 500;
    color: #FFFFFF;
    transition: all 0.3s;
    font-size: 15px;
}

header nav ul li a:hover {
	text-decoration: none;
	color: #FF1199;
}

header nav ul li.menu-item-has-children a:after {
	content: "\25BC";
	color: #00A7BC;
	float: right;
	font-size: 12px;
	padding: 3px 0px 0px 5px;
}

.sub-menu {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	background: #FFFFFF;
	z-index: 30;
	width: 250px;
	transition: all 0.2s;
	margin-top: 20px;
	margin-left: 0px;
	text-align: left;
	font-size: 14px;
	box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5)
}

.sub-menu li a {
	padding: 10px 10px 10px 20px;
	transition: all 0.2s;
	color: #000000;
	border-top: none;
	border-bottom: none;
}

.menu-item-has-children .sub-menu li a:after {
	content:"" !important;
}

.sub-menu li a:hover {
	background: #00A7BC;
	color: #FFFFFF;
	border-top: none;
	border-bottom: none;
}

.sub-menu li, .sub-menu li a {
	width: 100%;
}

header nav ul li:hover > .sub-menu, .sub-menu:hover {
	visibility: visible;
	opacity: 1;
	margin-top: 0px;
}

#mobmenuright .sub-menu {
	box-shadow: none;
}

#mobmenuright .sub-menu li a {
	padding: 10px 0px 10px 10px;
	background: none;
}

#mobmenuright .sub-menu li a:hover {
	border-top: initial;
	border-bottom: initial;
	background: none;
	color: #D99529;
}

/*------------------------------------*\
    CUSTOM BUTTONS & LINKS
\*------------------------------------*/

.cky-btn-revisit-wrapper {
	display: none !important;
}

.enquire-button {
	background: #8CC63F;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: bold;
	padding: 10px 20px;
	cursor: pointer;
	transition: all 0.2s;
	border-radius: 5px;
	border: none;
	font-weight: 500;
}

.enquire-button:hover {
	background: #000000;
}

/*------------------------------------*\
    IMAGES
\*------------------------------------*/

.footer-social {
	margin-top: 35px;
	text-align: center;
}

.footer-social .social-icon-inline {
	margin: 0px 5px 0px 5px;
}

.footer-icon {
	display: block;
	float: left;
	margin-right: 25px;
}

.footer-icon img {
	width: 45px;
	display: block;
	transition: 0.3s;
	transition-timing-function: ease-out;
}

.grathicks-img {
    width: 32px;
}

.social-icon-inline {
	display: inline-block;
	width: 30px;
	margin-left: 15px;
}
.social-icon-inline img {
	width: 100%;
}

.contact-icon {
    display: inline-block;
    width: 28px;
    margin-right: 10px;
    margin-top: 15px;
	height: auto;
}

.middle-align-img {
	margin: 0px 35px 35px 35px !important;
}

/*------------------------------------*\
    FORMS & INPUT
\*------------------------------------*/

/* Contact Form 7 */

.wpcf7-form-control-wrap {
	display: block;
}

.acceptance {
	display: inline !important;
	padding-right: 10px;
}

.wpcf7-select, .wpcf7-text, .wpcf7-number, .wpcf7-textarea, .wpcf7-date {
	border:  solid 2px #00A7BC;
	background: #FFFFFF;
	padding: 12px 15px;
	font-size: 16px;
	width: 100%;
	display: block;
	font-weight: 500;
	transition: 0.2s;
}

.wpcf7-radio {
	background: #FFFFFF;
	padding: 12px 15px;
	font-size: 20px;
	width: 100%;
	display: block;
	font-weight: 500;
}

.wpcf7-select:focus, .wpcf7-text:focus, .wpcf7-textarea:focus, .wpcf7-number:focus, .wpcf7-date:focus {
	border: solid 2px #FF1199;
}

.wpcf7-submit {
	background: #00A7BC;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: bold;
	padding: 12px 60px;
	cursor: pointer;
	transition: all 0.2s;
	border: none;
	font-weight: 900;
}

.wpcf7-submit:hover {
	background: #FF1199;
}

textarea {
	height: 120px;
}

/* Woocommerce */

.input-text {
	border:  solid 2px #12254F;
	background: #FFFFFF;
	padding: 12px 15px;
	font-size: 16px;
	width: 100%;
	display: block;
	font-weight: 500;
	transition: 0.2s;
}

.input-text:focus {
	border: solid 2px #D99529;
}

.select2-selection__rendered {
	border:  solid 2px #12254F;
	background: #FFFFFF;
	padding: 9px 13px;
	font-size: 16px;
	width: 100%;
	display: block;
	font-weight: 500;
	transition: 0.2s;
	height: auto;
	border-radius: 0;	
}

.select2-selection {
	margin-bottom: 20px !important;
	border: none !important;
}

.label {
	text-align: left;
}

.woocommerce div.product form.cart div.quantity {
	margin: 0px;
}

.woocommerce div.product form.cart .button {
	background: #12254F;
    border-radius: 0px;
    padding: 15px 35px 16px 35px;
}

.product_meta {
	display: none;
}

.woocommerce .quantity .qty {
	width: 80px;
}

.rnTotalBox {
	display: none;
}

.woocommerce h2 {
	font-size: 35px;
}

#add_payment_method table.cart img, .woocommerce-cart table.cart img, .woocommerce-checkout table.cart img {
	width: 120px;
}

/* Woocommerce account area */

.woocommerce-MyAccount-navigation {
	background: #f6f6f6;
	padding-right: 0px;
	margin-bottom: 50px;
	border-left: solid 2px #12254F;
}

.woocommerce-MyAccount-navigation ul li {
	list-style-type: none;
	padding: 0px;
	margin: 0px;
}

.woocommerce-MyAccount-navigation ul li a {
	padding: 10px 20px;
	display: block;
}
.woocommerce-MyAccount-navigation ul li a:hover, .woocommerce-MyAccount-navigation ul li.is-active a {
	background: #FFFFFF;
}

.grind-table {
	text-align: center;
	font-size: 0.8em;
}

.grind-table tr td {
	padding: 5px;
	border-top: solid 1px #CCCCCC;
}

.desktop-margin {
	margin-top: 35px;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (max-width:1050px) {
	.products .type-post {
		width: 46%;
		margin: 0px 0px 30px 2%;
	}
}
@media only screen and (max-width:768px) {
	.sidebar {
		display: none;
		width: 100%;
		float: none;
	}

	.desktop-margin {
		margin-top: 0px;
	}
	
	.products {
		width: 100%;
		float: none;
	}
	
	.products .type-post {
		width: 46%;
		margin: 0px 0px 30px 2%;
	}
	
	.products .post_container {
		min-height: 260px;
	}
	
	.column-half, .column-third, .column-quarter {
		width: 100%;
		float: none;
		clear: both;
	}

	.no-collapse {
		width: 50% !important;
		float: left !important;
		clear: none !important;
	}

	.logo {
		margin: auto;
		width: 100%;
	}
	.footer .column-half, .footer .column-third, .footer .align-right, .footer .text-small {
		text-align: center;
		margin: 0px;
		padding: 0px;
	}
	main {
		margin-top: 0px;	
	}

	.footer .copyright {
		margin-top: 35px;
	}

	.footer h3 {
		margin-top: 35px;
	}

	.footer-social .social-icon-inline {
		width: 45px;
		margin: 0px 10px 0px 10px;
	}

	.mobile-darker {
		background:rgba(0, 0, 0, 0.5);
		padding: 20px;
	}
	
	#nav_menu-3 h3 {
		display: none;
	}

	/* Case Studies */

	.news-title-block {
		margin-top: 120px;
		padding: 60px 20px 40px 20px;
	}

	.news-title-block h1 {
		font-size: 40px;
	}
}
@media only screen and (max-width:520px) {
	.products .type-post {
		width: 98%;
		margin: 0px 0px 30px 2%;
	}
	.products .post_container {
		min-height: 0px;
	}
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float: left;
	margin: 0px 20px 0px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		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) ")";
	}
	.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;
	}
	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;
	}
}
