/*! normalize.css v3.0.2 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
	font-family: sans-serif; /* 1 */
	-ms-text-size-adjust: 100%; /* 2 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
	left: 0;
	position: absolute;
	transition: transform 300ms ease;
	transition: left 300ms ease;
}


/**
 * 1. Elements will take font from parent, no longer needed to be set
 *    individually
 * 2. Padding included in width allowing pxs and ems without layout change.
 * 3. Default transitions applied to all elements
 */

* {
	font-family: inherit; /* 1 */
	box-sizing: border-box; /* 2 */
	-moz-box-sizing: border-box; /* 2 */
	-webkit-box-sizing: border-box; /* 2 */
}

/**
 * 1. Elements will take font from parent, no longer needed to be set
 *    individually
 * 2. Padding included in width allowing pxs and ems without layout change.
 * 3. Default transitions applied to all elements
 */

a, button
{
	-webkit-transition: all 300ms ease; /* 3 */
	-moz-transition: all 300ms ease; /* 3 */
	-o-transition: all 300ms ease; /* 3 */
	transition: all 300ms ease; /* 3 */
}

/* HTML5 display definitions
	========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
	display: inline-block; /* 1 */
	vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
	display: none;
	height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
	display: none;
}

/* Links
	========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
	background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
	outline: 0;
}

/* Text-level semantics
	========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
	border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
	font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
	font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
	background: #FF0;
	color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

/* Embedded content
	========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
	border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
	overflow: hidden;
}

/* Grouping content
	========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
	margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
	height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
	overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Forms
	========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 * 4. Fixes highlight on Chrome
 */

button,
input,
optgroup,
select,
textarea {
	color: inherit; /* 1 */
	font: inherit; /* 2 */
	margin: 0; /* 3 */
	outline: 0; /* 4 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
	overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
	text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button; /* 2 */
	cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
	cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
	line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
	padding: 0; /* 1 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 */

input[type="search"] {
	-webkit-appearance: textfield; /* 1 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
	border: 0; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
	overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
	font-weight: bold;
}

/**
 * Fix to stop options from having custom styles
 * NOTE: Chrome has started to allow options to change, this can cause a problem when the background and text color are the same
 */

option {
	color: #000000;
	background-color: #FFFFFF;
}

/* Tables
	========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
	border-collapse: collapse;
	border-spacing: 0;
	max-width: 100%;
}

td,
th {
	padding: 0;
}

/* Generic Styles
	========================================================================== */

	.button.disabled																		{ opacity: 0.5; pointer-events: none; cursor: default; }
	.hidden																					{ display: none !important; }
	.icon																					{ text-align: center; vertical-align: middle; display: inline-block; font-family: 'Font Awesome 5 Pro'; }
	.icon.brands																			{ font-family: 'Font Awesome 5 Brands'; }

	.button.primary,
	button.primary																			{ background-color: #313131; color: #FFFFFF; border: none; }
	.button.secondary,
	button.secondary																		{ background-color: #808080; color: #FFFFFF; }
	.button.primary:hover,
	button.primary:hover,
	.button.secondary:hover,
	button.secondary:hover																	{ background-color: #484848; color: #FFFFFF; }

	.button.delete,
	button.delete																			{ color: #FFFFFF; background-color: #D70808; }
	.button.archive,
	button.archive																			{ background-color: #5B70AB; }

	.button-text																			{ margin: 0; padding: 0; min-width: 0; color: inherit; background-color: transparent; display: inline-block; }

/* Responsive iFrame
	========================================================================== */

	.responsive-video-title																	{ font-size: 1.5em; line-height: 1.5em; color: #434343; text-align: center; }
	.responsive-video																		{ margin: 0 auto; padding: 1em 0; }
	.responsive-video .responsive-video-inner												{ padding-bottom: 56.25%; height: 0; position: relative; }
	.responsive-video iframe																{ top: 0; left: 0; width: 100%; height: 100%; position: absolute; }

/* Animation
	========================================================================== */

	@supports (-webkit-animation-play-state: initial) or (animation-play-state: initial)
	{
		.css-animation																		{ visibility: hidden; -webkit-animation-play-state: initial; animation-play-state: initial; }
		.css-animation.animated																{ visibility: visible; -webkit-animation-play-state: running; animation-play-state: running; }

		.wg-child-animations h1,
		.wg-child-animations h2,
		.wg-child-animations h3,
		.wg-child-animations h4,
		.wg-child-animations h5,
		.wg-child-animations h6,
		.wg-child-animations p,
		.wg-child-animations ol,
		.wg-child-animations ul																{ visibility: hidden; -webkit-animation-play-state: initial; animation-play-state: initial; }
		.wg-child-animations .animated														{ visibility: visible; -webkit-animation-play-state: running; animation-play-state: running; }
	}

/* Default Popup
	========================================================================== */

/**
	* Override styles must be created in main stylesheeet
*/
	div.popup-background																	{ width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.56); z-index: 5000; text-align: center; white-space: nowrap; position: fixed; }
	div.popup-background:before																{ width: 0; height: 100%; content: ""; vertical-align: middle; display: inline-block; }
	div.popup-panel																			{ margin: 0 auto; padding: 48px 32px; width: 100%; max-width: 580px; max-height: 100%; overflow-y: auto; color: #000000; background-color: #FFFFFF; text-align: left; vertical-align: middle; white-space: normal; position: relative; display: inline-block; -webkit-overflow-scrolling: touch; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

	div.popup-panel.form																	{ width: 80%; }
	div.popup-panel.file_upload																{ padding: 0.75em; }

	div#form_wrapper div.offset																{ padding:1em 2%; }

	div.popup-panel a 																		{ text-decoration: underline; }
	div.popup-panel span.message 															{ margin-bottom: 1em; text-align: center; display: block; }
	div.popup-panel > :first-child															{ margin-top: 0%; }

	div.popup-panel input,
	div.popup-panel select,
	div.popup-panel textarea																{ border: 1px solid #000000; }
	div.popup-panel span.close																{ top: 18px; right: 18px; font-size: 1.375em; position: absolute; cursor: pointer; color:#F0F0F0; -moz-user-select: none; -webkit-user-select: none; user-select: none; }
	div.popup-panel span.close:hover														{ opacity: 1; }

	div.popup-panel button																	{ margin: 2em auto 0 auto; padding: 0.75em 0.75em; font-size: 0.9375em; line-height: 1em; color: #FEFEFE; background-color: #000000; border: 0 none; display: block; border-radius: 5px; }
	div.popup-panel .button-text															{ margin: 0; padding: 0; color: inherit; background-color: transparent; display: inline-block; }

	div.popup-panel.confirm button 															{ margin: 2.5em 5% 0.5em 5%; width: 40%; display: inline-block; }

	div.popup-panel.alert div.alert-message													{ text-align: center; }
	div.popup-panel.alert p																	{ margin: 0 0 2em 0; text-align: center; }
	div.popup-panel.alert ul 																{ margin: 0; padding: 0; }
	div.popup-panel.alert ul + p 															{ margin-top: 2em; }
	div.popup-panel.alert li 																{ list-style: none; margin-bottom: 0.5em; text-align: center; }
	div.popup-panel.alert li:last-of-type 													{ margin-bottom: 1em; }

	div.popup-panel.file_upload form														{ margin-bottom: 0.75em; }
	div.popup-panel .uploaded-files															{ padding: 1em; }

	div.popup-panel div.confirm-container 													{ display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

	#ifmobile																				{ display: none; }
	#ifmobilesize span																		{ display: none; }

/* */

	.uploaded-files .upload-file															{ padding: 0.5em; width: 25%; display: inline-block; }
	.uploaded-files .upload-file .file-preview												{ display: block; }
	.uploaded-files .upload-label															{ display: block; }
	.uploaded-files .file-buttons															{ padding: 0.5em; font-size: 1.25em; }
	.uploaded-files .file-buttons a															{ float: left; line-height: 1; font-size: 1rem; }
	.uploaded-files .file-buttons button													{ float: right; }

/* Hide All mobile elements */

	.mobile-element																			{ display: none !important; }

/* Validation star defaults*/
	.red-star																				{ font-size: 0.75em; color: #FF0000; }

/* Responsive Resizable Images
	========================================================================== */

/* SVG container used as issues cropped up with image_container.  After recent testing, this may no longer be necessary */

	svg																						{ fill: currentColor; }

	.wg-preloading																			{ background-image: url('../images/ajax-loader.gif'); background-repeat: no-repeat; background-position: center center; background-size: auto !important; }
	.image_container																		{ width: 100%; padding-top: 100%; height: 0; position: relative; }
	.image_container .image_dimensions														{ margin: 0 auto; padding: 1px; left: 0; right: 0; top: 0; bottom: 0; background-color: #FFFFFF; text-align: center; vertical-align: middle; position: absolute; display: inline-block; overflow: hidden; }
	.image_container .image_dimensions:before												{ width: 0; height: 100%; content: ""; vertical-align: middle; display: inline-block; }
	.image_container .image_dimensions img,
	.image_container .image_dimensions picture,
	.image_container .image_dimensions svg													{ max-width: 100%; max-height: 100%; white-space: normal; vertical-align: middle; display: inline; }

	.svg-container																			{ height: 0; padding-top: 100%; width: 100%; overflow: hidden; position: relative; }
	.svg-dimensions																			{ margin: auto; top: 0; bottom: 0; right: 0; left: 0; position: absolute; }
	.svg-dimensions:before																	{ width: 0; height: 100%; content: ""; vertical-align: middle; display: inline-block; }
	.svg-container svg																		{ max-width: 100%; max-height: 100%; white-space: normal; vertical-align: middle; display: inline; }

/* Left wg-slider version in case it needs a specific style later on or if the css will move */
	.no-transition																			{ -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important; }

/* Slideshow
	========================================================================== */

	.wg-slider																				{ margin: 0; padding: 0; width: 100%; position: relative; z-index: 3; -webkit-tap-highlight-color: rgba(0,0,0,0); }
	.wg-slider .no-transition																{ -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important; }

	.wg-slider .slides-container															{ margin: 0 auto; position: relative; z-index: 1; }
	.wg-slider .slides																		{ margin: 0; padding: 0; width: 100%; height: 0; background-color: #FFFFFF; float: none; overflow: hidden; position: relative; cursor: default; }
	.wg-slider.draggable .slides															{ cursor: grab; }
	.wg-slider.draggable .slides.grabbing													{ cursor: grabbing; }
	.wg-slider.draggable .slides.grabbing .slide											{ pointer-events: none; }

	.wg-slider .slide																		{ width: 100%; height: 100%; top: 0; position: absolute; z-index: 1; }
	.wg-slider .slide.current																{ z-index: 2; }
	.wg-slider .slide-image																	{ top: 0; bottom: 0; left: 0; right: 0; background-size: contain; background-repeat: no-repeat; background-position: center center; position: absolute; z-index: 1; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -webkit-tap-highlight-color: transparent; }
	.wg-slider.draggable .slide-image														{ pointer-events: none; }
	.wg-slider .slide-image.slide-loading													{ background-image: url('../images/ajax-loader.gif'); background-size: auto; }
	.wg-slider .slide-thumb																	{ display: none; }

	.wg-slider .slide-caption																{ margin: 0 auto; max-width: 100%; left: 0; right: 0; background-color: rgba(255, 255, 255, 0.8); position: absolute; z-index: 3; -webkit-transition: all 0.5s ease 0s; -moz-transition: all 0.5s ease 0s; -o-transition: all 0.5s ease 0s; transition: all 0.5s ease 0s; pointer-events: none; }
	.wg-slider .slide-caption.loading-large													{ display: none; }
	.wg-slider .slide-caption.hide-caption													{ opacity: 0; }
	.wg-slider .slide-caption.show-caption													{ opacity: 1; }
	.wg-slider .content-thumb																{ display: none; }
	.wg-slider .content																		{ margin: 0; padding: 1em; text-align: center; }
	.wg-slider .content a																	{ pointer-events: all; }
	.wg-slider .content :first-child														{ margin-top: 0; }
	.wg-slider .content :last-child															{ margin-bottom: 0; }

	.wg-slider .pips																		{ margin: 0 auto; padding: 0 1.4%; width: 100%; max-width: 100%; bottom: 1.5%; text-align: center; display: inline-block; position: absolute; z-index: 4; }
	.wg-slider .pips.pips-left																{ text-align: left; }
	.wg-slider .pips.pips-right																{ text-align: right; }
	.wg-slider .pips.pips-below																{ margin-top: 10px; position: relative; }
	.wg-slider .pips.no-pips																{ display: none; }
	.wg-slider .pips .pip																	{ margin: 0 0 0 1em; padding: 0; width: 14px; height: 14px; background-color: #000000; display: inline-block; cursor: pointer; -webkit-border-radius: 14px; border-radius: 14px; -webkit-border-radius: 50%; border-radius: 50%; }
	.wg-slider .pips.pips-square .pip														{ border-radius: 0; }
	.wg-slider .pips .pip:first-child														{ margin-left: 0; }
	.wg-slider .pips .pip.current															{ background-color: #FFFFFF; }

	.wg-slider .slide-arrow																	{ top: 50%; vertical-align: middle; display: inline-block; position: absolute; z-index: 3; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
	.wg-slider .slide-arrow:before															{ margin: 0 0.5em; padding: 0.125em 0.5em; font-size: 2em; line-height: 1.3125em; background-color: #FFFFFF; border-radius: 0.75em; vertical-align: middle; display: inline-block; cursor: pointer; }
	.wg-slider .slide-arrow.arrow-left														{ left: 0; }
	.wg-slider .slide-arrow.arrow-left:before												{ content: '<'; }
	.wg-slider .slide-arrow.arrow-right														{ right: 0; }
	.wg-slider .slide-arrow.arrow-right:before												{ content: '>'; }

	/* Caption Types */

	.wg-slider .slide-caption.caption-span-edge												{ bottom: 0; }
	.wg-slider .slide-caption.caption-span-edge.hide-caption								{ bottom: -50px; }

	.wg-slider .slide-caption.caption-span-edge.caption-span-top							{ top: 0; bottom: auto; }
	.wg-slider .slide-caption.caption-span-edge.caption-span-top.hide-caption				{ top: -50px; }

	.wg-slider .slide-caption.caption-span-edge.caption-span-left,
	.wg-slider .slide-caption.caption-span-edge.caption-span-right							{ width: 400px; height: 100%; top: 0; bottom: 0; }
	.wg-slider .slide-caption.caption-span-edge.caption-span-left:before,
	.wg-slider .slide-caption.caption-span-edge.caption-span-right:before					{ width: 0; height: 100%; content: ""; vertical-align: middle; display: inline-block; }
	.wg-slider .slide-caption.caption-span-edge.caption-span-left div.content,
	.wg-slider .slide-caption.caption-span-edge.caption-span-right div.content				{ width: 100%; text-align: center; vertical-align: middle; position: relative; display: inline-block; }
	.wg-slider .slide-caption.caption-span-edge.caption-span-left div.content-thumb,
	.wg-slider .slide-caption.caption-span-edge.caption-span-right div.content-thumb		{ display: none; }

	.wg-slider .slide-caption.caption-span-edge.caption-span-left							{ right: auto; }
	.wg-slider .slide-caption.caption-span-edge.caption-span-left.hide-caption				{ left: -50px; }

	.wg-slider .slide-caption.caption-span-edge.caption-span-right							{ left: auto; }
	.wg-slider .slide-caption.caption-span-edge.caption-span-right.hide-caption				{ right: -50px; }

	.wg-slider .slide-caption.caption-float-box												{ padding: 0 10%; bottom: 10%; background-color: transparent; }
	.wg-slider .slide-caption.caption-float-box .content									{ margin: 0 auto; width: 100%; max-width: 400px; background-color: rgba(255, 255, 255, 0.8); }

	.wg-slider .slide-caption.caption-float-box.caption-float-left .content					{ margin-left: 0; }
	.wg-slider .slide-caption.caption-float-box.caption-float-right .content				{ margin-right: 0; }

/* Enquiry Forms
	========================================================================== */

	.field-block																			{ margin: 0; padding: 5px 0; width: 100%; position: relative; display: inline-block; }
	.field-block.col-2																		{ width: 50%; }
	.field-block.col-2.left																	{ padding-right: 2%; float: left; clear: left; }
	.field-block.col-2.right																{ padding-left: 2%; float: right; clear: right; }

	.field-block .info																		{ font-size: 0.875em; line-height: 1.6em; opacity: 0.5; padding-left: 0.3em; }
	.field-block .field-label																{ margin: 0; padding: 0.5em 0.5em 0.25em 0.5em; width: 100%; display: block; -webkit-touch-callout: none; -webkit-user-select: none;  -khtml-user-select: none;  -moz-user-select: none;  -ms-user-select: none; user-select: none; }

	.field-block .form-control,
	.field-block input,
	.field-block textarea,
	.field-block select																		{ margin: 0; padding: 0.5em 0.75em; width: 95%; background-color: #FFFFFF; border: 1px solid #DDDDDD; display: inline-block; }
	.field-block input[type=checkbox],
	.field-block input[type=file],
	.field-block input[type=radio]															{ padding: 0; width: auto; background-color: transparent; border: 0 none; }

	.field-block input[type=checkbox],
	.field-block input[type=radio]															{ margin: 0 0.5em 0 0; vertical-align: middle; }

	.field-block .field-option																{ margin: 1em 2.5em 0.5em 1em; display: inline-block; }

	.field-block .field-values																{ padding: 0.75em 0.5em; width: 95%; }
	.field-block .saved-value																{ margin-top: 0.5em; padding: 0.375em 0.5em; background-color: #E0E0E0; border: 1px solid #CCCCCC; border-radius: 4px; display: block; }
	.field-block .delete-value																{ margin-top: -0.5em; margin-right: -0.375em; padding: 0.375em 0.375em; font-size: 1em; float: right; cursor: pointer; }

	.field-block .red-star																	{ padding-left: 0.375em; width: 5%; display: inline-block; }
	.field-block .field-note																{ margin: 0.5em 0% 1em 0%; display: block; }

	.label-inline .field-label																{ width: 30%; display: inline-block; }
	.label-inline .form-control,
	.label-inline .field-label + input,
	.label-inline .field-label + textarea,
	.label-inline .field-label + select														{ width: 65%; }
	.label-inline .field-note																{ margin-left: 30%; }

	.field-block span.form-control															{ padding-left: 0; padding-right: 0; background-color: transparent; border-color: transparent; }

	#rc-imageselect, form .g-recaptcha														{ -webkit-transform-origin: 0 0; transform-origin: 0 0; }
	form .g-recaptcha																		{ margin: 0.75em 0%; }
	form.formBuilder button																	{ margin: 1em 0%; padding: 0.5em 1.75em; border: 1px solid #E0E0E0; border-radius: 4px; color: #000000; background-color: #E1E1E1; }
	form.formBuilder button:hover															{ background-color: #EAEAEA; }

	form.confirm-purchase-eta																{ max-width: 600px; text-align: right; }
	form.confirm-purchase-eta .field-block													{ text-align: left; }
	form.confirm-purchase-eta .field-block .field-label										{ width: 50%; display: inline-block; }
	form.confirm-purchase-eta .field-block input											{ width: 50%; }

	section.main div.content form.formBuilder p.error										{ margin: 0; padding: 1em; font-weight: bold; color: #FFFFFF; background-color: #E10000; }
	section.main div.content form.formBuilder ul.error										{ margin: 0; padding: 0 0 1em 1em; color: #FFFFFF; background-color: #E10000; }
	section.main div.content form.formBuilder ul.error li									{ margin: 0 0 0 1em; padding: 0 0 0.5em; color: inherit; background-color: transparent; list-style-image: none; }
	section.main div.content form.formBuilder ul.error a									{ text-decoration: underline; color: inherit; }

	section.main div.content form.formBuilder ol											{ padding-left: 1.125em; }

	section.main .formBuilder .form-buttons													{ text-align: center; }
	section.main .formBuilder .form-buttons button											{ margin: 0.5em 0.5em 0; }

	section.main .formBuilder.multistep .step-header,
	section.main .formBuilder.multistep .step-section										{ margin:  0 auto; width: 100%; }
	section.main .formBuilder.multistep .step-section										{ max-width: 800px; }

	section.main .formBuilder.multistep .step-header .step-label,
	section.main .formBuilder.multistep .step-header .steps									{ margin: 0; width: 50%; display: inline-block; }
	section.main .formBuilder.multistep .step-header .step-label							{ font-size: 1.5em; font-weight: bold; vertical-align: middle; }
	section.main .formBuilder.multistep .step-header .steps									{ text-align: right; vertical-align: top; }

	section.main .formBuilder.multistep .steps li											{ margin: 0 0 0 0.75em; padding: 0.25em 0.75em; font-size: 1em; line-height: 1.5em; background-color: #DDDDDD; color: #000000; border-radius: 50%; opacity: 0.5; display: inline-block; cursor: default; }
	section.main .formBuilder.multistep .steps li:first-child								{ margin-left: 0; }
	section.main .formBuilder.multistep .steps li.active,
	section.main .formBuilder.multistep .steps li.complete									{ opacity: 1; }
	section.main .formBuilder.multistep .steps li.complete									{ cursor: pointer; }

	section.main .formBuilder .register-address												{ margin-top: 3em; }
	section.main .formBuilder .sign_here													{ margin: 0 auto; padding: 2em 0 1em; max-width: 500px; position: relative; }
	section.main .formBuilder .delete-file													{ cursor: pointer; }
	section.main .formBuilder canvas.jSignature												{ background-color: #FFFFFF; }

	/*  Missing Details
	========================================================================== */

	section.main div.content div.missing-details 											{ font-family: 'Open Sans', sans-serif; }
	section.main div.content div.missing-details h2 										{ text-align: left; }
	section.main div.content div.missing-details p 											{ line-height: 1.5em; margin: 0; text-align: left; }
	section.main div.content div.missing-details table 										{ border: 0px; margin: 1em 0% 0% 0%; width: 100%; }
	section.main div.content div.missing-details table tr									{ border-bottom: 1px solid #DDD; margin: 0%; padding: 0%; }
	section.main div.content div.missing-details table td									{ background-color: transparent; border: 0px none; margin: 0%; padding: 5px; vertical-align: middle; }
	section.main div.content div.missing-details table tr td								{ color: #585858; padding: 8px; vertical-align: middle; }
	section.main div.content div.missing-details label 										{ padding: 0em; min-width: 115px; width: 30%; line-height: 1.5em; display: block; }
	section.main div.content div.missing-details td label 									{ width: 100%; }
	section.main div.content div.missing-details td .red-star 								{ display: inline-block; text-align: center; width: 10%; }
	section.main div.content div.missing-details td input,
	section.main div.content div.missing-details td select 									{ width: 90%; }
	section.main div.content div.missing-details input,
	section.main div.content div.missing-details textarea,
	section.main div.content div.missing-details select 									{ padding: 0.25em 0.25em 0.25em 0.25em; min-width: 115px; width: 70%; font-size: 1em; line-height: 1.5em; border: 1px solid #D6D6D6; border-radius: 5px; }
	section.main div.content div.missing-details .field-block 								{ width: 100%; }
	section.main div.content div.missing-details .field-block.col-2 						{ display: inline-block; padding: 0 0.5em; width: 50%; }
	section.main div.content div.missing-details .field-label 								{ padding: 5px 0%; width: 16.67%; font-weight: 600; display: inline-block; vertical-align: middle; }
	section.main div.content div.missing-details .col-2 .field-label 						{ width: 100%; }
	section.main div.content div.missing-details .field-value 								{ padding: 5px 0%; width: 83.33%; display: inline-block; vertical-align: middle; }
	section.main div.content div.missing-details .field-value input,
	section.main div.content div.missing-details .field-value select 						{ height: 34px; padding: 6px 12px; max-width: 580px; width: 100%; }
	section.main div.content div.missing-details .col-2 .field-value 						{ width: 100%; }
	section.main div.content div.missing-details button.submit 								{ margin-top: 1.25em !important; }

	/* Notice Styles
	============================================================================ */

	div.notice 																				{ background-color: #DD8443; color: #FFFFFF; text-align: center; position: relative; }
	div.notice div.offset 																	{ position: static; }
	div.notice-header 																		{ font-weight: 600; }
	div.notice-header button 																{ background-color: transparent; color: #FFFFFF; min-width: 0; padding: 0.25rem 0.5rem; margin-left: 1rem; }
	div.notice-header button.notice-dismissible 											{ position: absolute; right: 0; }
	div.notice-body 																		{ font-size: 0.875rem; line-height: 1.6; margin: 0 auto; width: 80%; -webkit-transition: all 300ms ease; -moz-transition: all 300ms ease; -ms-transition: all 300ms ease; -o-transition: all 300ms ease; transition: all 300ms ease; overflow: hidden; height: auto; padding: 0; }
	div.notice-body[data-collapsed=false] 													{ padding: 1.5rem 0 2rem 0; }

/* Account Side Menu
	========================================================================== */
	.account-sm-open																		{ cursor: pointer; }

	.account-sidemenu-open																	{ left: -25%; }

	#account-sidemenu																		{ top: 0; bottom: 0; left: 100%; width: 25%; font-weight: 600; color: #FFFFFF; background-color: #282828; position: fixed; overflow: auto; transition: left 300ms ease; }
	.account-sidemenu-open #account-sidemenu												{ left: 75%; }
	#account-sidemenu .account-sm-open														{ margin: 0; top: 0.5em; right: 1em; position: absolute; }
	#account-sidemenu .sidemenu-container													{ padding: 3.8125em 2em 4em 26.5%; }
	#account-sidemenu ul																	{ margin: 3.8125em 0 3.3125em; padding: 0; list-style: none; }
	#account-sidemenu li																	{ margin: 1.0625em 0; }
	#account-sidemenu span																	{ margin: 0 0 0.5625em; color: #A0A0A0; display: block; }
	#account-sidemenu .account-subscription													{ margin: 0.875em 0 0; }
	#account-sidemenu .account-surname														{ font-size: 1.125em; text-transform: uppercase; }

/* Form Progress & Navigaiton Bar */

	.form-progress-bar 																		{ display: flex; justify-content: space-between; padding: 1rem; background-color: #eeeeee; }
	.progress-bar-right .percentage 														{ font-size: 0.875rem; margin-left: 0.5rem; }
	#form_navigation																		{ width:100%; text-align:right; font-size:0.9rem; padding:0.5rem 0; }

/* Collapsible Form */

	#form_wrapper 																		{ max-width: 1000px; margin: 0 auto; }

	.collapsed .step-section																{ display: none; }
	.collapsed .open																		{ display: none; }
	.open .collapsed																		{ display: none; }

	.collapsible .step-container .step-header 							{ background-color: #777; cursor: pointer; padding: 0.5rem 1rem; display: flex; justify-content: space-between; margin-top: 0.25rem; align-items: center; }
	.collapsible .step-container .step-header .step-status .completed 	{ margin-left: 1rem; border-radius: 50%; width: 25px; height: 25px; background-color: #fff; padding: 5px 5px 5px 4px; font-size: 16px; color: #008522; font-weight: 600; display: none; }
	.collapsible .step-container.completed .step-header .step-status .completed { display: inline-block; }
	.collapsible .step-container .step-section  						{ background-color: #eee; padding: 1rem; margin-top: 0; }
	.collapsible .step-container .step-status span 						{ color: #fff; font-size: 1.5rem; cursor: pointer; }
	.collapsible .step-container .field-block 							{ background-color: #f9f9f9; margin-top: 1rem; padding: 0.5rem 1rem; border-radius: 3px; }
	.collapsible .step-container .field-block .field-label				{ padding: 0.5rem 0.5rem 0.25rem 0.5rem; }
	.collapsible .step-container .field-block input[type="number"]		{ width: 100px; }
	.collapsible .step-container .field-block:first-of-type 			{ margin-top: 0; }
	.collapsible .step-container .wg_checkbox 							{ cursor:pointer; position:relative; border-radius: 3px; margin-left:1em; border:1px solid grey; width:2em; height:2em; float: right; }
	.collapsible .step-container .wg_checkbox:hover 					{ background-color: #ccc; }
	.collapsible .step-container .wg_checkbox.active 					{ background-color:#000; }
	.collapsible .step-container .button.yes,
	.collapsible .step-container .button.no,
	.collapsible .step-container .button.na 							{ background-color: #cfcfcf; border: #a1a1a1 1px solid; color: #111111; margin-right: 1rem; width: 90px; min-width: 0; text-transform: uppercase; font-size: 0.875rem; text-align: center; margin-bottom: 5px; }
	.collapsible .step-container .button:hover,
	.collapsible .step-container .button:active,
	.collapsible .step-container .button.active 						{ color: #fff; }
	.collapsible .step-container .button.yes:hover,
	.collapsible .step-container .button.yes:active,
	.collapsible .step-container .button.yes.active 					{ background-color: #333333; border-color: #111111; }
	.collapsible .step-container .button.no:hover,
	.collapsible .step-container .button.no:active,
	.collapsible .step-container .button.no.active 						{ background-color: #333333; border-color: #111111; }
	.collapsible .step-container .button.na:hover,
	.collapsible .step-container .button.na:active,
	.collapsible .step-container .button.na.active 						{ background-color: #333333; border-color: #111111; }
	.collapsible .step-container .button-text							{ color: #437F97; background-color: transparent; border: 0; font-size: 0.875rem; border-radius: 0; padding: 0; min-width: 0; margin-right: 1.5rem; margin-left: 0.5rem; }
	.collapsible .step-container .button-text.active					{ color: #008522; }
	.collapsible .step-container .field-label > .button-text			{ float: right; margin: 0; }
	.collapsible .step-container .button-text.tap-to-edit				{ border: 1px solid #A1A1A1; background-color: transparent; display: block; width: 100%; text-align: left; padding-left: 1.5rem; border-radius: 3px; color: #777; padding-top: 0.375rem; padding-bottom: 0.375rem; }
	.collapsible .step-container .button-text svg						{ width: 24px; height: 24px; margin-right: 0.25rem; }
	.collapsible .step-container .dropzone-upload 						{ margin-left: 0.5rem; }
	.collapsible .step-container .field-options 						{ display: flex; flex-wrap: wrap; background: #F9F9F9; padding: 0.5rem 0 0; margin-left: 0.5rem; }
	.collapsible .step-container .field-options button					{ width: auto; min-width: 0; margin: 0; margin-right: 3%; border: 4px solid #437F97; background-color: transparent; color: #111; margin-bottom: 25px; padding: 0.5rem; border-radius: 8px; font-size: 1rem; }
	.collapsible .step-container .field-options button:hover			{ color: #111; }
	.collapsible .step-container .field-options button.yes:hover,
	.collapsible .step-container .field-options button.no:hover,
	.collapsible .step-container .field-options button.na:hover 		{ color: #fff; }
	.collapsible .step-container .field-options button.active 			{ background-color: #437F97; color: #fff; }

	.collapsible .step-container .field-options button.positive_style.active { background-color:#008522; }
	.collapsible .step-container .field-options button.negative_style.active { background-color:#922d2d; }

	.collapsible .step-container .field-options button.active 			{ background-color: #437F97; color: #fff; }

	.collapsible .step-container .uploaded-files .upload-label 			{ margin-top: 1rem; }
	.collapsible .step-container .field-time 							{ max-width: 250px; float: left; width: 100%; }
	.collapsible .step-container .field-time select:first-of-type		{ margin-right: 10%; }
	.collapsible .step-container .field-time select						{ float: left; width: 45%; cursor: pointer; }
	.collapsible .step-container .field-date 							{ margin-right: 2%; float: left; width: 100%; max-width: 200px; }
	.collapsible .step-container .field-date input						{ max-width: 200px; width: 95%; }

/* Form Data in Popup */

	div.form-data-in-popup 																	{ background-color: #eee; padding: 0; max-width: 700px;  }										
	div.form-data-in-popup .appointment-heading 											{ background-color: #999; color: #fff; text-align: center; padding: 1rem; font-size: 1.25rem; }
	div.form-data-in-popup .field-heading 													{ background-color: #999; color: #fff; text-align: center; padding: 1rem; font-size: 1.25rem; display: block; }
	div.form-data-in-popup .field-block 													{ padding: 0.5rem 1.5rem; }
	div.form-data-in-popup .field-block .field-label										{ color: #777777; }
	div.form-data-in-popup .field-block .form-control										{ background-color: #f9f9f9; border-radius: 3px; border: 0; width: 100%; }
	div.form-data-in-popup .field-block button[class^="test"]								{ margin: 0.5rem 0; background-color: transparent; border: 3px solid #437F97; border-radius: 3px; width: 25%; float: left; }
	div.form-data-in-popup .field-block > input,
	div.form-data-in-popup .field-block > select,
	div.form-data-in-popup .field-block > textarea 											{ width: 100%; border: none; border-radius: 3px; }
	div.form-data-in-popup .field-block textarea 											{ min-height: 120px; border-radius: 3px; border: none; }
	div.form-data-in-popup .field-block.datetime .field-label								{ display: block; width: 100%; }
	div.form-data-in-popup .field-date 														{ display: inline-block; width: 50%; }
	div.form-data-in-popup .field-date input												{ cursor: pointer; border: 0; border-radius: 3px; }
	div.form-data-in-popup .field-time 														{ display: inline-block; width: 50%; }
	div.form-data-in-popup .field-time select												{ display: inline-block; width: 45% !important; cursor: pointer; }
	div.form-data-in-popup .field-time select:first-of-type									{ margin-right: 10%; }
	div.form-data-in-popup .field-options 													{ display: flex; flex-wrap: wrap; background: #F9F9F9; padding: 1.5rem; border-radius: 3px; margin-top: 0.25rem; }
	div.form-data-in-popup .field-options button											{ width: 22%; min-width: 0; margin: 0; margin-right: 3%; border: 4px solid #437F97; background-color: transparent; color: #111; margin-bottom: 25px; padding: 0.5rem; border-radius: 8px; }
	div.form-data-in-popup .field-options button.active 									{ background-color: #437F97; color: #fff; }
	div.form-data-in-popup .popup-buttons 													{ padding: 1.5rem; }
	div.form-data-in-popup .popup-buttons button											{ width: 100%; display: block; text-transform: uppercase; background-color: #777; margin: 1rem auto 0; border-radius: 3px; font-weight: 600; }
	div.form-data-in-popup .popup-buttons button:first-of-type								{ margin-top: 0; }

	div.form-data-in-popup.follow-up .popup-buttons 										{ display: flex; align-items: flex-end; }
	div.form-data-in-popup.follow-up .popup-buttons button									{ width: 28%; display: inline-block; }

	div.popup-panel.file_upload 															{ padding: 0; max-width: 700px; background-color: #eee; }
	div.popup-panel.file_upload .popup-heading 												{ background-color: #999; color: #fff; text-align: center; padding: 1rem; font-size: 1.25rem; display: block; }
	div.popup-panel.file_upload form.dropzone 												{ margin: 2% auto; width: 97%; }
	div.popup-panel.file_upload .popup-buttons 												{ padding: 1.5rem; }
	div.popup-panel.file_upload .popup-buttons button										{ width: 100%; display: block; text-transform: uppercase; background-color: #777; margin: 0 auto; border-radius: 3px; font-weight: 600; }

@media only screen and (min-width: 0px) and (max-width: 1200px) { #ifmobilesize .s1200 { display: block; } }

@media only screen and (min-width: 0px) and (max-width: 1100px)
{
		#ifmobilesize .s1100																{ display: block; }

	/* Account Side Menu
		========================================================================== */

		.account-sidemenu-open																{ left: -50%; }

		.account-sidemenu-open #account-sidemenu											{ left: 50%; }
		#account-sidemenu																	{ width: 50%; }
}

@media only screen and (min-width: 0px) and (max-width: 1000px) { #ifmobilesize .s1000 { display: block; } }

@media only screen and (min-width: 0px) and (max-width: 900px) { #ifmobilesize .s900 { display: block; } }

@media only screen and (min-width: 0px) and (max-width: 800px)
{
	/* Mobile elements */

		.desktop-element																	{ display: none !important; }
		.mobile-element																		{ display: block !important; }
		.mobile-element.display-inline														{ display: inline !important; }
		.mobile-element.display-inline-block												{ display: inline-block !important; }
		.mobile-element.display-table														{ display: table !important; }
		.mobile-element.display-table-row													{ display: table-row !important; }
		.mobile-element.display-table-cell													{ display: table-cell !important; }

		/* Permanent Scrollbar (Must not add -webkit-overflow-scrolling: touch; to .product-list as the scrollbar on iOS will revert to default) */
		.table-container																	{ margin: 0; padding: 0; width: 100%; overflow-x: auto; }
		.table-container::-webkit-scrollbar													{ -webkit-appearance: none; }
		.table-container::-webkit-scrollbar:vertical										{ width: 4px; }
		.table-container::-webkit-scrollbar:horizontal										{ height: 4px; }
		.table-container::-webkit-scrollbar-thumb											{ background-color: rgba(0, 0, 0, 0.75); border-radius: 10px; }
		.table-container::-webkit-scrollbar-track											{ border-radius: 10px; }
		.table-container table																{ margin: 0 auto; width: 90%; min-width: 585px; table-layout: fixed; }

		section.main div.content :not(picture):not(.leaflet-pane):not(.leaflet-tile-container) > img:not(.non_responsive)
																							{ margin: 0 auto 0.5em !important; height: auto !important; display: block; float: none !important; }

	/* Slideshow, thumb is not mobile-element in case of override */

		.wg-slider .slide-large																{ display: none; }
		.wg-slider .slide-thumb																{ display: block; }

		.wg-slider .slide-caption.caption-span-edge.caption-span-left div.content-large,
		.wg-slider .slide-caption.caption-span-edge.caption-span-right div.content-large	{ display: none; }

		.wg-slider .slide-caption.caption-span-edge.caption-span-left div.content-thumb,
		.wg-slider .slide-caption.caption-span-edge.caption-span-right div.content-thumb	{ display: inline-block; }

		.wg-slider .slide-caption.loading-large												{ display: block; }
		.wg-slider .slide-caption.loading-thumb												{ display: none; }
		.wg-slider .content-large															{ display: none; }
		.wg-slider .content-thumb															{ display: block; }

	/* Popup Styles for popup only times */
		div.popup-panel.form																{ padding-left: 5%; padding-right: 5%; }

		#ifmobilesize .s800																	{ display: block; }

	/* Account Side Menu
		========================================================================== */

		.account-sidemenu-open																{ left: -75%; }
		.account-sidemenu-open #account-sidemenu											{ left: 25%; }
		#account-sidemenu																	{ width: 75%; }

		section.forms div.form_container form.collapsible .step-container div.field-block	{ padding: 1.5rem 1rem; }
		section.forms div.form_container form.collapsible div.field-block span.field-label	{ padding-top: 0px; }

		.collapsible .step-container .field-extras											{ text-align: center; }

		.collapsible .step-container .field-date,
		.collapsible .step-container .field-date input										{ max-width: 95%; }

		.collapsible .step-container .field-options button									{ margin: 0% 0% 0.75rem 0%; width: 100%; text-align: center; }
		.collapsible .step-container .dropzone-upload										{ margin: 0% 0% 0.75rem 0%; width: 100%; text-align: center; }

		.collapsible .step-container .button-text											{ padding: 0.75rem 0.25rem; }
}

@media only screen and (min-width: 0px) and (max-width: 700px) { #ifmobilesize .s700 { display: block; } }

@media only screen and (min-width: 0px) and (max-width: 600px)
{
	/* Enquiry Forms */

		.field-block.col-2																	{ width: 100%; }
		.field-block.col-2.left																{ padding: 1% 0; float: none; }
		.field-block.col-2.right															{ padding: 1% 0; float: none; }
		.label-inline .field-note															{ margin-left: 0; }

	/* Popup Styles (Mobile version takes up full screen) */
		div.page.hide-for-popup																{ height: 0; display: none; }

	/* Popup Styles for popup only times */

		div.popup-background.full															{ text-align: left; position: absolute; }

		div.popup-background.full:before													{ height: auto; display: block; }

		div.popup-background.full .popup-panel												{ padding: 0.75em; width: 100%; max-width: none; min-height: 100%; max-height: none; border-width: 0.75em; border-radius: 0; position: absolute; }

		#ifmobile																			{ display: block; }
		#ifmobilesize .s600																	{ display: block; }

	/* Slideshow, float-box override to fit content on mobile */

		.wg-slider .slide-caption.caption-float-box											{ padding-left: 0; padding-right: 0; }

	/* Account Side Menu
		========================================================================== */

		.account-sidemenu-open																{ left: -100%; overflow: hidden; }

		#account-sidemenu																	{ width: 100%; }
		.account-sidemenu-open #account-sidemenu											{ left: 0%; }
		#account-sidemenu .sidemenu-container												{ padding: 3rem 2rem; }

	/* Upload Popup Styles */

		.uploaded-files .upload-file														{ width: 33%; }


}

@media only screen and (min-width: 0px) and (max-width: 500px) { #ifmobilesize .s500 { display: block; } }

@media only screen and (min-width: 0px) and (max-width: 400px) { #ifmobilesize .s400 { display: block; } }

@media only screen and (min-width: 0px) and (max-width: 300px) { #ifmobilesize .s300 { display: block; } }
