/*
Theme Name: GutenTheme
Theme URI: http://wordpress.org/
Description: Custom Gutenberg Theme
Author: The Graphix Works
Version: 5.0
Tags: blank
Text Domain: gutentheme
*/

/*	Global Colours
	
*/

/* Reset All */

* {
	margin: 0px;
	padding: 0px;
}

body {
	font-family: var(--theme-font-body);
	font-size: clamp(14px, calc(100vw * (20/1440)), 20px);
	line-height: 1.35;
	text-align: left;
	background-color: white;
}

a {
	color: #000000;
}

a:hover {
	text-decoration: none;	
}

a img {
	border: none;
}

h1 { /* The Only Heading Potentially not in a Block */
	
}

.block-grid {
	margin-left: 0px !important;
	margin-right: 0px !important;
}

body {
	position: relative;
}

header {
	width: 100%;
	background-color: var(--theme-color-primary);
}

header .logo {
	padding: clamp(5px, calc(100vw * (17/1440)), 17px) clamp(10px, calc(100vw * (20/1440)), 20px);
	background-color: rgba(255,255,255,0.5);
	margin-bottom: clamp(-173px, calc(-100vw * (-173/-1440)), 0px);
	position: relative;
	z-index: 150;
}

header .logo img {
	width: clamp(175px, calc(100vw * (225/1440)), 225px);
	height: auto;
}

a.theme-button {
	position: relative;
	font-weight: 400;
	text-transform: none;
	font-size: clamp(15px, calc(100vw * (24/1440)), 24px);
	line-height: 1.1;
	padding: clamp(10px, calc(100vw * (15/1440)), 15px) clamp(20px, calc(100vw * (30/1440)), 30px);
	display: inline-block;
	text-decoration: none;
	color: #FFFFFF;
	background-color: var(--theme-color-secondary);
	transition: all 0.3s ease-out;
}

a.theme-button:hover,
a.theme-button:focus-within {
	background-color: var(--theme-color-primary);
}

/* To allow div to vertical center, apply height to grid */
#specificDiv .grid-container > .grid-x {
	height: 740px;
}

.allPosts .post {
	padding-bottom: 20px;
}

footer {
	font-size: 14px;
}

.map {
	line-height: 0;
}

.map iframe {
	width: 100% !important;
	height: clamp(250px, calc(100vw * (682/1440)), 682px);
}

.footer-upper {
	font-size: clamp(13px, calc(100vw * (16/1440)), 16px);
	line-height: 1.5;
	background-color: #f1f1f1;
	padding-bottom: clamp(10px, calc(100vw * (25/1440)), 25px);
}

.footer-upper img {
	width: clamp(180px, calc(100vw * (267/1440)), 267px);
	height: auto;
	margin-bottom: clamp(5px, calc(100vw * (17/1440)), 17px);
}

.footer-upper .contacts {
	padding-left: clamp(10px, calc(100vw * (60/1440)), 60px);
}

.footer-upper p {
	margin-bottom: 0;
}

.footer-upper .contacts a,
.footer-upper .contacts strong {
	color: black;
	font-weight: 700;
	text-decoration: none;
}

.footer-upper .sitemap ul,
.footer-upper .sitemap ul li {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-upper .sitemap ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
}

.footer-upper .sitemap ul li {
	flex: 1 1 0px;
	width: auto;
	text-align: left;
	padding: 0 clamp(10px, calc(100vw * (25/1440)), 25px);
}

.footer-upper .sitemap ul ul {
	display: block;
}

.footer-upper .sitemap ul ul li {
	padding: 0 0 0 5px;
}

.footer-upper .sitemap ul li a {
	text-decoration: none;
	color: black;
	font-weight: 700;
}

.footer-upper .sitemap ul li a:hover,
.footer-upper .sitemap ul li a:focus-within {
	text-decoration: underline;
}

.footer-upper .sitemap ul ul li a {
	font-weight: 400;
}

.footer-upper .sitemap {
	line-height: 1.25;
}

.footer-upper .sitemap a {
	display: inline-block;
	margin-bottom: 7px;
}

.footer-upper .sitemap .menu-item-244 a {
	min-width: 100px;
	display: inline-block;
}

footer {
	background-color: var(--theme-color-primary);
}

.footer,
.footer a {
	color: white;
}

.footer {
	padding: clamp(10px, calc(100vw * (20/1440)), 20px);
	font-size: 14px;
	text-align: center;
}

.footer-logo {
	margin-top: clamp(-102px, calc(-100vw * (-102/-1440)), 0px)
}

.sitemap {
	padding-left: clamp(0px, calc(100vw * (90/1440)), 90px);
	padding-top: clamp(0px, calc(100vw * (25/1440)), 25px);
}

.footer-upper .sitemap ul li.menu-item-166 {
	min-width: 75px;
}

.the-title {
	background-image: url( images/slides/industrial-worker.jpg );
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}

.the-title h1 {
	color: white;
	margin-bottom: 0;
	padding: clamp(15px, calc(100vw * (80/1440)), 80px) 0 clamp(15px, calc(100vw * (80/1440)), 80px) clamp(0px, calc(100vw * (300/1440)), 300px);
}

/*= Accessibility
-------------------------------------------------------------- */
a:focus-visible,
input.gform_button:focus-visible {
	outline: 2px dotted var(--theme-color-primary);
	outline-offset: 2px;
}

/* =Alignment Classes
-------------------------------------------------------------- */
.text-center {
  text-align: center;
}

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

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

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

/* =Menu
-------------------------------------------------------------- */
nav {
	transition: all 0.5s ease-out;
	padding-left: clamp(0px, calc(100vw * (10/1440)), 10px);
}

nav ul,
nav ul li {
	margin-bottom: 0px;
}

nav ul {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between; /* Change Alignment of Nav Items Here */
	list-style: none;
	z-index: 999;
	padding-left: 0px;
}

nav ul li {
	position: relative;
}

nav li a,
.menu-link {
	font-size: 15px;
	line-height: 1;
}

nav li a {
	display: flex;
    flex: 0 1 auto;
	color: #FFFFFF;
    padding: 10px 15px;
    font-size: clamp(13px, calc(100vw * (16/1440)), 16px);
    line-height: 1;
    font-weight: 700;
    text-transform: uppercase;
    max-width: 250px;
    text-decoration: none;
}

nav ul.menu-main-nav > li a {
	z-index: 171;
}

nav ul ul {
	z-index: 170;
	position: relative;
}

nav ul ul li a {
	text-transform: none;
}

/* Dropdown Appearance */
nav ul ul, /* 1st Dropdown */
nav ul ul ul, /* 2nd Dropdown */
nav ul ul ul ul { /* 3rd Dropdown */
	position: absolute;
	left: 0px;
	top: 100%;
	min-width: 175px;
	width: 100%;
	background-color: var(--theme-color-primary);
	/* x, y, spread, intensity */
	-webkit-box-shadow: 0px 7px 10px 0px black;
	box-shadow: 0px 7px 10px 0px black;
}

nav ul ul ul, /* 2nd Dropdown */
nav ul ul ul ul { /* 3rd Dropdown */
	left: 100%;
	top: 0px;
}

/* Hover States */
nav ul li:hover a,
nav ul li:focus-within a { /* Top Level */
	background-color: var(--theme-color-secondary);
}

nav ul ul li:hover a,
nav ul ul li:focus-within a { /* 1st Dropdown */
	background-color: var(--theme-color-primary);
}

nav ul ul ul li:hover a,
nav ul ul ul li:focus-within a { /* 2nd Dropdown */
	background-color: red;
}

nav ul ul ul ul li:hover a,
nav ul ul ul ul li:focus-within a { /* 3rd Dropdown */
	background-color: orange;
}

nav ul li:hover ul,
nav ul ul li:hover ul,
nav ul ul ul li:hover ul,
nav ul li:hover ul li:hover ul,
nav ul li:hover ul li:hover ul li:hover ul,
nav ul li:focus-within ul,
nav ul ul li:focus-within ul,
nav ul ul ul li:focus-within ul,
nav ul li:focus-within ul li:focus-within ul,
nav ul li:focus-within ul li:focus-within ul li:focus-within ul {
	display: block;
}

nav ul ul, /* 1st Dropdown */
nav ul ul ul, /* 2nd Dropdown */
nav ul ul ul ul, /* 3rd Dropdown */
nav ul li:hover ul ul, /* Hide 2nd on 1st Hover */
nav ul li:hover ul li:hover ul ul,
nav ul li:focus-within ul ul, /* Hide 2nd on 1st Hover */
nav ul li:focus-within ul li:focus-within ul ul { /* Hide 3rd on 2nd Hover */ 
	display: none;
}

/* Current Page Highlight */
nav ul li.current_page_item {
	background-color: var(--theme-color-secondary);
}

.menu-link {
	color: #FFFFFF;
	background-color: var(--theme-color-secondary);
	padding: 10px 50px 10px 20px;
	text-decoration: none;
	text-transform: uppercase;
	position: relative;
	display: none;
}

.menu-link::before {
	content: 'View ';
}

.menu-link.active::before {
	content: 'Hide ';
}

.menu-link::after {
	content: url( images/vector/menu.svg );
	width: 20px;
	right: 14px;
	top: 50%;
	margin-top: -8px;
	position: absolute;
}

/* =Auxilary Pages
-------------------------------------------------------------- */
body.search .entry-utility,
body.search .entry-meta {
	display: none;
}

body.blog .pagination {
	padding: 15px 0;
}

body.blog .pagination a,
body.blog .pagination span {
	padding: 15px;
	color: #FFFFFF;
	background-color: var(--theme-color-primary);
	transition: all 0.3s ease-out;
	text-decoration: none;
}

body.blog .pagination a:hover {
	background-color: var(--theme-color-secondary);	
}

body.blog .pagination span {
	background-color: black;
	color: #EEEEEE;
}

body.blog .pagination .columns {
	text-align: center;
}

body.blog .pagination .columns {
	text-align: center;
}

/* =Images
-------------------------------------------------------------- */
#main img {
	margin: 0;
	max-width: 100%;
}

.entry-content img {
	max-width: 1440px;
}

#main .alignleft,
#main img.alignleft {
	display: inline;
	float: left;
	margin-right: clamp(0px, calc(100vw * (125/1440)), 125px);
	margin-top: 4px;
}

#main .alignright,
#main img.alignright {
	display: inline;
	float: right;
	margin-left: clamp(0px, calc(100vw * (125/1440)), 125px);
	margin-top: 4px;
}

#main .aligncenter,
#main img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

#main img.alignleft,
#main img.alignright,
#main img.aligncenter {
	margin-bottom: 12px;
}

/* =MEDIA QUERIES
-------------------------------------------------------------- */
@media only screen and (max-width: 1440px) { /* Template Width */
	
}
@media only screen and (max-width: 1023px) { /*  Medium Breakpoint  */
	
}
@media only screen and (max-width: 960px) { /* Navigation Switch */
	/* Mobile Menu */
	nav {
		line-height: 1;
	}

	nav ul li:hover > ul,
	nav ul ul li:hover > ul,
	nav ul ul ul li:hover > ul,
	nav ul li.hover ul.sub-menu li ul.sub-menu,
	nav ul li.hover ul.sub-menu li.hover ul.sub-menu li ul.sub-menu {
		display: none;
	}
	
	nav li a {
		max-width: unset;
	}

	nav ul {
		position: absolute;
		background-color: var(--theme-color-primary);
	}

	nav ul ul,
	nav ul ul ul,
	nav ul ul ul ul {
		width: 100%;
		position: relative;
		top: unset;
		left: unset;
	}

	nav ul li {
    	width: 100%;
    	border-bottom: 1px solid #666;
    }

	.active {
        display: block !important;
    }

    .menu-item-has-children {
    	width: 100%;
    	display: flex;
    	flex-wrap: wrap;
    	justify-content: space-between;
    }

    .menu-item-has-children > a,
    .menu-item-has-children .more {
    	display: flex;
    	flex: 0 1 auto;
    }

    .menu-item-has-children > a {
    	width: 80%;
    	max-width: unset;
    }

    .menu-item-has-children .more {
    	width: 20%;
    	border-left: 1px solid #666666;
    	background-color: var(--theme-color-secondary);
		padding: 5px 10px;
        cursor: pointer;
    	z-index: 200;
    	text-align: center;
    	font-size: 0px; /* remove blank space */
    }

    .menu-item-has-children .more:after {
    	content: '+';
		color: #FFFFFF;
		font-size: 25px;
		line-height: 1.2;
		font-family: Arial, Helvetica, sans-serif;
		display: inline-block;
		margin: 0px auto;
    }

	li.hover.menu-item-has-children > .more:after {
		content: '-';
	}

	nav ul li.hover > ul.sub-menu,
	nav ul li.hover ul.sub-menu li.hover ul.sub-menu,
	nav ul li.hover ul.sub-menu li.hover ul.sub-menu li.hover ul.sub-menu {
		display: block;
	}
}

@media only screen and (max-width: 639px) { /* Small Breakpoint */
	.footer span.pipe {
		display: none;
	}

	.footer span.design {
		display: block;
	}
}