/*! jQuery UI - v1.14.1 - 2024-11-15
* https://jqueryui.com
* Includes: draggable.css, core.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css, theme.css
* Copyright OpenJS Foundation and other contributors; Licensed MIT */

.ui-draggable-handle {
	touch-action: none;
}
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
	display: none;
}
.ui-helper-hidden-accessible {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.ui-helper-reset {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	line-height: 1.3;
	text-decoration: none;
	font-size: 100%;
	list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
	content: "";
	display: table;
	border-collapse: collapse;
}
.ui-helper-clearfix:after {
	clear: both;
}
.ui-helper-zfix {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	opacity: 0;
}

.ui-front {
	z-index: 100;
}


/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
	cursor: default !important;
	pointer-events: none;
}


/* Icons
----------------------------------*/
.ui-icon {
	display: inline-block;
	vertical-align: middle;
	margin-top: -.25em;
	position: relative;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
}

.ui-widget-icon-block {
	left: 50%;
	margin-left: -8px;
	display: block;
}

/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.ui-resizable {
	position: relative;
}
.ui-resizable-handle {
	position: absolute;
	font-size: 0.1px;
	display: block;
	touch-action: none;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
	display: none;
}
.ui-resizable-n {
	cursor: n-resize;
	height: 7px;
	width: 100%;
	top: -5px;
	left: 0;
}
.ui-resizable-s {
	cursor: s-resize;
	height: 7px;
	width: 100%;
	bottom: -5px;
	left: 0;
}
.ui-resizable-e {
	cursor: e-resize;
	width: 7px;
	right: -5px;
	top: 0;
	height: 100%;
}
.ui-resizable-w {
	cursor: w-resize;
	width: 7px;
	left: -5px;
	top: 0;
	height: 100%;
}
.ui-resizable-se {
	cursor: se-resize;
	width: 12px;
	height: 12px;
	right: 1px;
	bottom: 1px;
}
.ui-resizable-sw {
	cursor: sw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	bottom: -5px;
}
.ui-resizable-nw {
	cursor: nw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	top: -5px;
}
.ui-resizable-ne {
	cursor: ne-resize;
	width: 9px;
	height: 9px;
	right: -5px;
	top: -5px;
}
.ui-selectable {
	touch-action: none;
}
.ui-selectable-helper {
	position: absolute;
	z-index: 100;
	border: 1px dotted black;
}
.ui-sortable-handle {
	touch-action: none;
}
.ui-accordion .ui-accordion-header {
	display: block;
	cursor: pointer;
	position: relative;
	margin: 2px 0 0 0;
	padding: .5em .5em .5em .7em;
	font-size: 100%;
}
.ui-accordion .ui-accordion-content {
	padding: 1em 2.2em;
	border-top: 0;
	overflow: auto;
}
.ui-autocomplete {
	position: absolute;
	top: 0;
	left: 0;
	cursor: default;
}
.ui-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: block;
	outline: 0;
}
.ui-menu .ui-menu {
	position: absolute;
}
.ui-menu .ui-menu-item {
	margin: 0;
	cursor: pointer;
}
.ui-menu .ui-menu-item-wrapper {
	position: relative;
	padding: 3px 1em 3px .4em;
}
.ui-menu .ui-menu-divider {
	margin: 5px 0;
	height: 0;
	font-size: 0;
	line-height: 0;
	border-width: 1px 0 0 0;
}
.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
	margin: -1px;
}

/* icon support */
.ui-menu-icons {
	position: relative;
}
.ui-menu-icons .ui-menu-item-wrapper {
	padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon {
	position: absolute;
	top: 0;
	bottom: 0;
	left: .2em;
	margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon {
	left: auto;
	right: 0;
}
.ui-button {
	padding: .4em 1em;
	display: inline-block;
	position: relative;
	line-height: normal;
	margin-right: .1em;
	cursor: pointer;
	vertical-align: middle;
	text-align: center;
	-webkit-user-select: none;
	user-select: none;
}

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
	text-decoration: none;
}

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
	width: 2em;
	box-sizing: border-box;
	text-indent: -9999px;
	white-space: nowrap;
}

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
	text-indent: 0;
}

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -8px;
	margin-left: -8px;
}

.ui-button.ui-icon-notext .ui-icon {
	padding: 0;
	width: 2.1em;
	height: 2.1em;
	text-indent: -9999px;
	white-space: nowrap;

}

input.ui-button.ui-icon-notext .ui-icon {
	width: auto;
	height: auto;
	text-indent: 0;
	white-space: normal;
	padding: .4em 1em;
}

/* workarounds */
/* Support: Firefox 5 - 125+ */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
	border: 0;
	padding: 0;
}
.ui-controlgroup {
	vertical-align: middle;
	display: inline-block;
}
.ui-controlgroup > .ui-controlgroup-item {
	float: left;
	margin-left: 0;
	margin-right: 0;
}
.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
	z-index: 9999;
}
.ui-controlgroup-vertical > .ui-controlgroup-item {
	display: block;
	float: none;
	width: 100%;
	margin-top: 0;
	margin-bottom: 0;
	text-align: left;
}
.ui-controlgroup-vertical .ui-controlgroup-item {
	box-sizing: border-box;
}
.ui-controlgroup .ui-controlgroup-label {
	padding: .4em 1em;
}
.ui-controlgroup .ui-controlgroup-label span {
	font-size: 80%;
}
.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
	border-left: none;
}
.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
	border-top: none;
}
.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
	border-right: none;
}
.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
	border-bottom: none;
}

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {
	width: calc( 100% - 2.4em );
}
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
	border-top-style: solid;
}

.ui-checkboxradio-label .ui-icon-background {
	box-shadow: inset 1px 1px 1px #ccc;
	border-radius: .12em;
	border: none;
}
.ui-checkboxradio-radio-label .ui-icon-background {
	width: 16px;
	height: 16px;
	border-radius: 1em;
	overflow: visible;
	border: none;
}
.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
	background-image: none;
	width: 8px;
	height: 8px;
	border-width: 4px;
	border-style: solid;
}
.ui-checkboxradio-disabled {
	pointer-events: none;
}
.ui-datepicker {
	width: 17em;
	padding: .2em .2em 0;
	display: none;
}
.ui-datepicker .ui-datepicker-header {
	position: relative;
	padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	position: absolute;
	top: 2px;
	width: 1.8em;
	height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
	top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
	left: 2px;
}
.ui-datepicker .ui-datepicker-next {
	right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
	left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
	right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -8px;
	top: 50%;
	margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
	margin: 0 2.3em;
	line-height: 1.8em;
	text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
	font-size: 1em;
	margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
	width: 45%;
}
.ui-datepicker table {
	width: 100%;
	font-size: .9em;
	border-collapse: collapse;
	margin: 0 0 .4em;
}
.ui-datepicker th {
	padding: .7em .3em;
	text-align: center;
	font-weight: bold;
	border: 0;
}
.ui-datepicker td {
	border: 0;
	padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
	display: block;
	padding: .2em;
	text-align: right;
	text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
	background-image: none;
	margin: .7em 0 0 0;
	padding: 0 .2em;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
	float: right;
	margin: .5em .2em .4em;
	cursor: pointer;
	padding: .2em .6em .3em .6em;
	width: auto;
	overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
	float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
	width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
	float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
	width: 95%;
	margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
	width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
	width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
	width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
	border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
	clear: left;
}
.ui-datepicker-row-break {
	clear: both;
	width: 100%;
	font-size: 0;
}

/* RTL support */
.ui-datepicker-rtl {
	direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
	right: 2px;
	left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
	left: 2px;
	right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
	right: 1px;
	left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
	left: 1px;
	right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
	clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
	float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
	float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
	border-right-width: 0;
	border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon {
	display: block;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
	left: .5em;
	top: .3em;
}
.ui-dialog {
	position: absolute;
	top: 0;
	left: 0;
	padding: .2em;
	outline: 0;
}
.ui-dialog .ui-dialog-titlebar {
	padding: .4em 1em;
	position: relative;
}
.ui-dialog .ui-dialog-title {
	float: left;
	margin: .1em 0;
	white-space: nowrap;
	width: 90%;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
	position: absolute;
	right: .3em;
	top: 50%;
	width: 20px;
	margin: -10px 0 0 0;
	padding: 1px;
	height: 20px;
}
.ui-dialog .ui-dialog-content {
	position: relative;
	border: 0;
	padding: .5em 1em;
	background: none;
	overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
	text-align: left;
	border-width: 1px 0 0 0;
	background-image: none;
	margin-top: .5em;
	padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
	float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
	margin: .5em .4em .5em 0;
	cursor: pointer;
}
.ui-dialog .ui-resizable-n {
	height: 2px;
	top: 0;
}
.ui-dialog .ui-resizable-e {
	width: 2px;
	right: 0;
}
.ui-dialog .ui-resizable-s {
	height: 2px;
	bottom: 0;
}
.ui-dialog .ui-resizable-w {
	width: 2px;
	left: 0;
}
.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw {
	width: 7px;
	height: 7px;
}
.ui-dialog .ui-resizable-se {
	right: 0;
	bottom: 0;
}
.ui-dialog .ui-resizable-sw {
	left: 0;
	bottom: 0;
}
.ui-dialog .ui-resizable-ne {
	right: 0;
	top: 0;
}
.ui-dialog .ui-resizable-nw {
	left: 0;
	top: 0;
}
.ui-draggable .ui-dialog-titlebar {
	cursor: move;
}
.ui-progressbar {
	height: 2em;
	text-align: left;
	overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
	margin: -1px;
	height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
	background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
	height: 100%;
	opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
	background-image: none;
}
.ui-selectmenu-menu {
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}
.ui-selectmenu-menu .ui-menu {
	overflow: auto;
	overflow-x: hidden;
	padding-bottom: 1px;
}
.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
	font-size: 1em;
	font-weight: bold;
	line-height: 1.5;
	padding: 2px 0.4em;
	margin: 0.5em 0 0 0;
	height: auto;
	border: 0;
}
.ui-selectmenu-open {
	display: block;
}
.ui-selectmenu-text {
	display: block;
	margin-right: 20px;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ui-selectmenu-button.ui-button {
	text-align: left;
	white-space: nowrap;
	width: 14em;
}
.ui-selectmenu-icon.ui-icon {
	float: right;
	margin-top: 0;
}
.ui-slider {
	position: relative;
	text-align: left;
}
.ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	width: 1.2em;
	height: 1.2em;
	cursor: pointer;
	touch-action: none;
}
.ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	font-size: .7em;
	display: block;
	border: 0;
	background-position: 0 0;
}

.ui-slider-horizontal {
	height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
	top: -.3em;
	margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
	top: 0;
	height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
	left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
	right: 0;
}

.ui-slider-vertical {
	width: .8em;
	height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
	left: -.3em;
	margin-left: 0;
	margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
	left: 0;
	width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
	bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
	top: 0;
}
.ui-spinner {
	position: relative;
	display: inline-block;
	overflow: hidden;
	padding: 0;
	vertical-align: middle;
}
.ui-spinner-input {
	border: none;
	background: none;
	color: inherit;
	padding: .222em 0;
	margin: .2em 0;
	vertical-align: middle;
	margin-left: .4em;
	margin-right: 2em;
}
.ui-spinner-button {
	width: 1.6em;
	height: 50%;
	font-size: .5em;
	padding: 0;
	margin: 0;
	text-align: center;
	position: absolute;
	cursor: default;
	display: block;
	overflow: hidden;
	right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
	border-top-style: none;
	border-bottom-style: none;
	border-right-style: none;
}
.ui-spinner-up {
	top: 0;
}
.ui-spinner-down {
	bottom: 0;
}
.ui-tabs {
	position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
	padding: .2em;
}
.ui-tabs .ui-tabs-nav {
	margin: 0;
	padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
	list-style: none;
	float: left;
	position: relative;
	top: 0;
	margin: 1px .2em 0 0;
	border-bottom-width: 0;
	padding: 0;
	white-space: nowrap;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
	float: left;
	padding: .5em 1em;
	text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
	margin-bottom: -1px;
	padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
	cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
	cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
	display: block;
	border-width: 0;
	padding: 1em 1.4em;
	background: none;
}
.ui-tooltip {
	padding: 8px;
	position: absolute;
	z-index: 9999;
	max-width: 300px;
}
body .ui-tooltip {
	border-width: 2px;
}

/* Component containers
----------------------------------*/
.ui-widget {
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1em;
}
.ui-widget .ui-widget {
	font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1em;
}
.ui-widget.ui-widget-content {
	border: 1px solid #c5c5c5;
}
.ui-widget-content {
	border: 1px solid #dddddd;
	background: #ffffff;
	color: #333333;
}
.ui-widget-content a {
	color: #333333;
}
.ui-widget-header {
	border: 1px solid #dddddd;
	background: #e9e9e9;
	color: #333333;
	font-weight: bold;
}
.ui-widget-header a {
	color: #333333;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,

/* We use html here because we need a greater specificity to make sure disabled
works properly when clicked or hovered */
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
	border: 1px solid #c5c5c5;
	background: #f6f6f6;
	font-weight: normal;
	color: #454545;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
	color: #454545;
	text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 1px solid #cccccc;
	background: #ededed;
	font-weight: normal;
	color: #2b2b2b;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
	color: #2b2b2b;
	text-decoration: none;
}

.ui-visual-focus {
	box-shadow: 0 0 3px 1px rgb(94, 158, 214);
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
	border: 1px solid #003eff;
	background: #007fff;
	font-weight: normal;
	color: #ffffff;
}
.ui-icon-background,
.ui-state-active .ui-icon-background {
	border: #003eff;
	background-color: #ffffff;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
	color: #ffffff;
	text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
	border: 1px solid #dad55e;
	background: #fffa90;
	color: #777620;
}
.ui-state-checked {
	border: 1px solid #dad55e;
	background: #fffa90;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
	color: #777620;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
	border: 1px solid #f1a899;
	background: #fddfdf;
	color: #5f3f3f;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
	color: #5f3f3f;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
	color: #5f3f3f;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
	font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
	opacity: .7;
	font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
	opacity: .35;
	background-image: none;
}

/* Icons
----------------------------------*/

/* states and images */
.ui-icon {
	width: 16px;
	height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
	background-image: url("/images/jqueryui/ui-icons_444444_256x240.png");
}
.ui-widget-header .ui-icon {
	background-image: url("/images/jqueryui/ui-icons_444444_256x240.png");
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
	background-image: url("/images/jqueryui/ui-icons_555555_256x240.png");
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
	background-image: url("/images/jqueryui/ui-icons_ffffff_256x240.png");
}
.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
	background-image: url("/images/jqueryui/ui-icons_777620_256x240.png");
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
	background-image: url("/images/jqueryui/ui-icons_cc0000_256x240.png");
}
.ui-button .ui-icon {
	background-image: url("/images/jqueryui/ui-icons_777777_256x240.png");
}

/* positioning */
/* Three classes needed to override `.ui-button:hover .ui-icon` */
.ui-icon-blank.ui-icon-blank.ui-icon-blank {
	background-image: none;
}
.ui-icon-caret-1-n { background-position: 0 0; }
.ui-icon-caret-1-ne { background-position: -16px 0; }
.ui-icon-caret-1-e { background-position: -32px 0; }
.ui-icon-caret-1-se { background-position: -48px 0; }
.ui-icon-caret-1-s { background-position: -65px 0; }
.ui-icon-caret-1-sw { background-position: -80px 0; }
.ui-icon-caret-1-w { background-position: -96px 0; }
.ui-icon-caret-1-nw { background-position: -112px 0; }
.ui-icon-caret-2-n-s { background-position: -128px 0; }
.ui-icon-caret-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -65px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -65px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }


/* Misc visuals
----------------------------------*/

/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
	border-top-left-radius: 3px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
	border-top-right-radius: 3px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
	border-bottom-left-radius: 3px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
	border-bottom-right-radius: 3px;
}

/* Overlays */
.ui-widget-overlay {
	background: #aaaaaa;
	opacity: .3;
}
.ui-widget-shadow {
	box-shadow: 0px 0px 5px #666666;
}
/* ------------------------------------------------------------------------------------
	SCREEN - v6 swiffy 2023
	Filename : swiffy.css
	Last Updated : 15. 07. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd
	Web : http://www.etailsystems.com
------------------------------------------------------------------------------------- */

.swiffy-slider  {
	position: relative;
	display: block;
	width: 100%;
	--swiffy-slider-snap-align: center;
	--swiffy-slider-item-width: 100%;
	--swiffy-slider-item-gap: 1rem;
	--swiffy-slider-item-reveal: 0rem;
	--swiffy-slider-item-ratio: 1/1;
	--swiffy-slider-item-count: 1;

	--swiffy-slider-nav-zoom: 1;
	--swiffy-slider-track-opacity: 0.1;
	--swiffy-slider-track-height: 0;
	--swiffy-slider-nav-outside-size: 3.5rem;
	--swiffy-slider-indicator-outside-size: 1.5rem;
	--swiffy-slider-animation-duration: .75s;
	--swiffy-slider-animation-delay: 0s;
	--swiffy-slider-animation-timing: ease-in-out;
}

.swiffy-slider,
.swiffy-slider::after,
.swiffy-slider::before {
	box-sizing: border-box
}

.swiffy-slider ::-webkit-scrollbar {
	height: var(--swiffy-slider-track-height)
}

.swiffy-slider ::-webkit-scrollbar-track {
	background: rgba(0, 0, 0, var(--swiffy-slider-track-opacity))
}

.swiffy-slider ::-webkit-scrollbar-thumb {
	background: rgba(0, 0, 0, .4);
	border-radius: 1rem
}

.swiffy-slider ::-webkit-scrollbar-thumb:hover {
	background: rgba(0, 0, 0, .6)
}

.slider-container {
	--swiffy-slider-item-gap-totalwidth: calc(var(--swiffy-slider-item-gap) * (var(--swiffy-slider-item-count) - 1));
	--swiffy-slider-item-width: calc((100% - var(--swiffy-slider-item-reveal) - var(--swiffy-slider-item-gap-totalwidth)) / var(--swiffy-slider-item-count));
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	-ms-scroll-snap-type: x mandatory;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	display: grid;
	align-items: center;
	height: 100%;
	grid: auto/auto-flow -webkit-max-content;
	grid: auto/auto-flow max-content;
	grid-auto-rows: 100%;
	grid-auto-columns: var(--swiffy-slider-item-width);
	grid-auto-flow: column;
	grid-gap: var(--swiffy-slider-item-gap);
	list-style: none;
	margin: 0;
	padding: 0;
	scrollbar-width: none;
	scrollbar-color: rgba(0, 0, 0, .4) rgba(0, 0, 0, var(--swiffy-slider-track-opacity));
	background-clip: padding-box
}

.slider-container>* {
	scroll-snap-align: var(--swiffy-slider-snap-align);
	position: relative;
	width: 100%;
	height: 100%
}

.slider-item-helper .slider-container>* {
	background-size: cover;
	background-color: #e1e1e1;
	background-position: 50% 50%;
	display: flex;
	justify-content: center;
	align-items: center
}

.slider-item-helper:not(.slider-item-ratio) .slider-container>* {
	min-height: 20rem
}

.slider-item-ratio .slider-container>*>*{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.slider-item-ratio-contain .slider-container>*>*{
	-o-object-fit: contain;
	object-fit: contain
}

.slider-item-ratio .slider-container>::after{
	display: block;
	padding-top: calc(100% / var(--swiffy-slider-item-ratio) );
	content: ""
}


.slider-indicators {
	display: flex;
	/* position:absolute; */
	bottom:0em;
	justify-content: center;
	padding: 1em 0;
	list-style: none;
	width:100%;
}

.slider-nav-scrollbar .slider-indicators {
	margin-bottom: calc(1rem + var(--swiffy-slider-track-height))
}

.slider-indicators>.active {
	opacity: 1;
	background-color: var(--swiffy-slider-active-item-color);
}


.slider-indicators>* {
	box-sizing: content-box;
	flex: 0 1 auto;
	width: 2rem;
	height: .2rem;
	padding: 0;
	border: .4rem solid transparent;
	cursor: pointer;
	background-color: var(--swiffy-slider-item-color);
	background-clip: padding-box;
	opacity: .5;
	transition: opacity .4s ease;
	
	width: 10px;
	height:10px;
	border: .4rem solid transparent;
	border-radius: 50%

	
}

.slider-nav {
	position: absolute;
	top: 0;
	left: 0.5rem;
	bottom: 0;
	border: 0;
	background-color: transparent;
	cursor: pointer;
	padding: 0;
	visibility: hidden;
	opacity: .8;
	transition: visibility .1s, opacity .2s linear;
	margin-bottom: var(--swiffy-slider-track-height);
	display: flex;
	align-items: center;
	padding: 0 .5rem;
	-webkit-filter: drop-shadow(0 0 .5rem rgba(0, 0, 0, .5));
	filter: drop-shadow(0 0 .5rem rgba(0, 0, 0, .5));
	transform: scale(var(--swiffy-slider-nav-zoom));
	/* overflow:hidden; */

	pointer-events:none;
}

.slider-nav::before {
	position: absolute;
	content: "";
	/* padding: .5rem 0; */
	width: 3rem;
	height: 3rem;
	pointer-events:all;
	background-color:var(--white);
}

.slider-nav::after {
	content: "";
	-webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'></path></svg>");
	mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'></path></svg>");
	-webkit-mask-size: cover;
	mask-size: cover;
	background-color: var(--swiffy-slider-nav);
	background-origin: content-box;
	width: 3rem;
	height: 3rem
}

.slider-nav-arrow .slider-nav::after {
	-webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M12 8a.5.5 0 0 1-.5.5H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H11.5a.5.5 0 0 1 .5.5z'></path></svg>");
	mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M12 8a.5.5 0 0 1-.5.5H5.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L5.707 7.5H11.5a.5.5 0 0 1 .5.5z'></path></svg>")
}

.slider-nav-chevron .slider-nav::after {
	-webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M9.224 1.553a.5.5 0 0 1 .223.67L6.56 8l2.888 5.776a.5.5 0 1 1-.894.448l-3-6a.5.5 0 0 1 0-.448l3-6a.5.5 0 0 1 .67-.223z'></path></svg>");
	mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M9.224 1.553a.5.5 0 0 1 .223.67L6.56 8l2.888 5.776a.5.5 0 1 1-.894.448l-3-6a.5.5 0 0 1 0-.448l3-6a.5.5 0 0 1 .67-.223z'></path></svg>")
}

.slider-nav-caret .slider-nav::after {
	-webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path d='M10 12.796V3.204L4.519 8 10 12.796zm-.659.753-5.48-4.796a1 1 0 0 1 0-1.506l5.48-4.796A1 1 0 0 1 11 3.204v9.592a1 1 0 0 1-1.659.753z'></path></svg>");
	mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path d='M10 12.796V3.204L4.519 8 10 12.796zm-.659.753-5.48-4.796a1 1 0 0 1 0-1.506l5.48-4.796A1 1 0 0 1 11 3.204v9.592a1 1 0 0 1-1.659.753z'></path></svg>")
}

.slider-nav-caretfill .slider-nav::after {
	-webkit-mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path d='m3.86 8.753 5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z'></path></svg>");
	mask: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'><path d='m3.86 8.753 5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z'></path></svg>")
}

.swiffy-slider:hover .slider-nav {
	visibility: visible
}

.swiffy-slider.slider-nav-autohide.slider-item-first-visible .slider-nav:not(.slider-nav-next) {
	visibility: hidden
}

.swiffy-slider.slider-nav-autohide.slider-item-last-visible .slider-nav.slider-nav-next {
	visibility: hidden
}

.slider-nav-outside .slider-container {
	margin: 0 var(--swiffy-slider-nav-outside-size)
}

.slider-nav-outside .slider-nav {
	padding: 0
}

.swiffy-slider .slider-nav:hover {
	opacity: 1
}

.slider-nav-square .slider-nav {
	padding: 0
}


.slider-nav-round .slider-nav::before {
	border-radius: 50%
}

.slider-nav-round .slider-nav::after {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' %3E%3Cpath fill-rule='evenodd' d='M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z'%3E%3C/path%3E%3C/svg%3E");
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' %3E%3Cpath fill-rule='evenodd' d='M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z'%3E%3C/path%3E%3C/svg%3E")
}

.slider-nav-dark .slider-nav::after {
	background-color: var(--swiffy-slider-nav-dark)
}

.slider-nav-sm {
	--swiffy-slider-nav-zoom: .75;
	--swiffy-slider-nav-outside-size: 2.5rem
}

.slider-nav.slider-nav-next::after {
	transform: rotate(180deg)
}

.slider-nav.slider-nav-next {
	right: .5rem;
	left: unset
}

.slider-nav-visible .slider-nav {
	visibility: visible
}

.slider-nav-dark .slider-nav {
	opacity: .6
}

.slider-nav-mousedrag .slider-container {
	cursor: -webkit-grab;
	cursor: grab
}

.slider-nav-mousedrag.dragging .slider-container {
	-ms-scroll-snap-type: unset;
	scroll-snap-type: unset;
	scroll-behavior: unset;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.slider-nav-mousedrag.dragging .slider-nav {
	visibility: hidden
}

@media (hover:hover) {
	.slider-nav-mousedrag .slider-container::after {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%
	}
}

@media (prefers-reduced-motion:no-preference) {
	.slider-nav-animation.slider-nav-animation-fast {
		--swiffy-slider-animation-duration: .25s
	}
	.slider-nav-animation.slider-nav-animation-slow {
		--swiffy-slider-animation-duration: 1.25s
	}
	.slider-nav-animation .slider-container>*>* {
		transition: opacity var(--swiffy-slider-animation-duration) var(--swiffy-slider-animation-timing), transform var(--swiffy-slider-animation-duration) var(--swiffy-slider-animation-timing);
		transition-delay: var(--swiffy-slider-animation-delay)
	}
	.slider-nav-animation .slider-container .slide-visible>* {
		transition: opacity var(--swiffy-slider-animation-duration) var(--swiffy-slider-animation-timing), transform var(--swiffy-slider-animation-duration) var(--swiffy-slider-animation-timing);
		transition-delay: var(--swiffy-slider-animation-delay)
	}
	.slider-nav-animation.slider-nav-animation-fadein .slider-container>*>* {
		opacity: .5
	}
	.slider-nav-animation.slider-nav-animation-scale .slider-container>*>* {
		transform: scale(.9)
	}
	.slider-nav-animation.slider-nav-animation-appear .slider-container>*>* {
		opacity: .3;
		transform: scale(.9)
	}
	.slider-nav-animation.slider-nav-animation-scaleup .slider-container>*>* {
		transform: scale(.25)
	}
	.slider-nav-animation.slider-nav-animation-zoomout .slider-container>* {
		overflow: hidden
	}
	.slider-nav-animation.slider-nav-animation-zoomout .slider-container>*>* {
		transform: scale(1.3)
	}
	.slider-nav-animation.slider-nav-animation-turn .slider-container>*>* {
		transform: rotateY(70deg)
	}
	.slider-nav-animation.slider-nav-animation-slideup .slider-container>*>* {
		transform: translateY(60%) scale(.99)
	}
	.slider-nav-animation.slider-nav-animation-slideup .slider-container {
		overflow-y: hidden
	}
	.slider-nav-animation .slider-container>.slide-visible>* {
		opacity: 1;
		transform: none
	}
}

@media (min-width:62rem) {
	.slider-item-show2:not(.slider-item-snapstart) .slider-container>*,
	.slider-item-show4:not(.slider-item-snapstart) .slider-container>*,
	.slider-item-show6:not(.slider-item-snapstart) .slider-container>* {
		scroll-snap-align: unset
	}
	.slider-item-show2:not(.slider-item-snapstart) .slider-container>::before,
	.slider-item-show4:not(.slider-item-snapstart) .slider-container>::before,
	.slider-item-show6:not(.slider-item-snapstart) .slider-container>::before {
		content: " ";
		display: block;
		position: absolute;
		left: calc((var(--swiffy-slider-item-gap)/2)*-1);
		top: 0;
		width: 1px;
		height: 1px;
		scroll-snap-align: var(--swiffy-slider-snap-align)
	}
	.slider-nav-outside-expand .slider-nav {
		margin-left: -4rem
	}
	.slider-nav-outside-expand .slider-nav.slider-nav-next {
		margin-right: -4rem
	}
	.slider-nav-sm.slider-nav-outside-expand .slider-nav {
		margin-left: -3.5rem
	}
	.slider-nav-sm.slider-nav-outside-expand .slider-nav.slider-nav-next {
		margin-right: -3.5rem
	}
	.slider-indicators-sm.slider-indicators {
		display: none
	}
}

@media (max-width:62rem) {
	.swiffy-slider {
		--swiffy-slider-track-height: 0rem;
		--swiffy-slider-item-reveal: 0rem;
		--swiffy-slider-item-count: 1;
		--swiffy-slider-nav-zoom: .875
	}
	.swiffy-slider .slider-item-show2-sm {
		--swiffy-slider-item-count: 2
	}
	.slider-item-reveal {
		--swiffy-slider-item-reveal: 4rem
	}
	.slider-item-snapstart.slider-item-reveal {
		--swiffy-slider-item-reveal: 2rem
	}
	.slider-item-show6 .slider-container {
		grid-auto-columns: calc(25% - (var(--swiffy-slider-item-gap)/ 4*3))
	}
	.slider-item-show6.slider-item-reveal .slider-container {
		grid-auto-columns: calc(25% - (var(--swiffy-slider-item-gap)/ 4*3) - .5rem)
	}
	.slider-item-show6.slider-item-reveal .slider-container>* {
		scroll-snap-align: unset
	}
	.slider-item-show6.slider-item-reveal .slider-container>::before {
		content: " ";
		display: block;
		position: absolute;
		left: calc((var(--swiffy-slider-item-gap)/2)*-1);
		top: 0;
		width: 1px;
		height: 1px;
		scroll-snap-align: center
	}
	.slider-nav::after,
	.slider-nav::before {
		width: 2rem;
		height: 2rem;
		padding: .3rem
	}
	.slider-nav-round .slider-nav::after,
	.slider-nav-square .slider-nav::after {
		width: 1.75rem;
		height: 1.75rem;
		margin: .125rem
	}
	.slider-nav-outside .slider-container,
	.slider-nav-outside-expand .slider-container {
		margin: 0 2rem
	}
	.slider-nav-outside-expand .slider-container {
		margin: 0 var(--swiffy-slider-nav-outside-size)
	}
	.slider-nav-outside-expand .slider-nav {
		padding: 0
	}
	.slider-indicators-round .slider-indicators>*,
	.slider-indicators-round.slider-indicators>*,
	.slider-indicators-square .slider-indicators>*,
	.slider-indicators-square.slider-indicators>* {
		width: .3rem;
		height: .3rem
	}
	.slider-indicators {
		/* margin-bottom: .5rem; */
		/* display: none; */
	}
	.slider-nav-scrollbar .slider-indicators {
		margin-bottom: 0
	}
	.slider-indicators>* {
		/* width: 1rem; */
		/* height: .125rem; */
		/* border-width: .25rem; */
	}
	.slider-indicators-sm .slider-indicators,
	.slider-indicators-sm.slider-indicators {
		display: flex
	}
}

@media (max-width:48rem) {
	.slider-item-show6 .slider-container {
		grid-auto-columns: calc(50% - (var(--swiffy-slider-item-gap)/ 2))
	}
	.slider-item-show6.slider-item-reveal .slider-container {
		grid-auto-columns: calc(50% - (var(--swiffy-slider-item-gap)/ 2) - 1.5rem)
	}
}

@media (hover:none) {
	.swiffy-slider.slider-nav-touch .slider-nav {
		visibility: visible
	}
	.swiffy-slider:not(.slider-nav-touch).slider-nav-outside .slider-container,
	.swiffy-slider:not(.slider-nav-touch).slider-nav-outside-expand .slider-container {
		margin: 0 0
	}
	.slider-item-nosnap-touch {
		--swiffy-slider-snap-align: unset
	}
}
/* ------------------------------------------------------------------------------------
	SCREEN - v6 GEM Imports 2024 
	Filename : sitepanes.css
	Last Updated : 14. 01. 2025
	Copyright :(c) 2025 Etail Systems Ltd
	Author : Etail Systems Ltd
	Web : http://www.etailsystems.com

	Table of Contents
		=Definitions
		=Reset
		=Normalise

		=Page 
		=Typography 	
		=Grid Layout
		=SiteContainers		
		=FIXEDTop Panel #ptf		
		=Top Panel #pt	
		=Center Panel #pc
		=Main Panel #pmid
		=Footer Panel #pf
		=Bottom Panel #pb
		=FIXEDBottom Panel #pbf
		=Breadcrumb
		=Swiffy Slider
		=Blog

		=SearchHeader / SearchFooter 	
		=FilterSearch 		
		=Deptsingle  		
		=Subdepartment tree  
		=FeaturedProducts 
		=ProductPage 
		=Super Attributes
		=Basket 
		=Checkout Process 
		=MyAccount
			NEW my account menu
		=ConfirmationPage
		=Sitemap  
		=Client Specific Stylings 
		



/* -------------------------------------------------------------------------------------
=Header 
------------------------------------------------------------------------------------- */

/* Subheader
------------------------------------------------------- */
		

/* -------------------------------------------------------------------------------------	
=Definitions
------------------------------------------------------------------------------------- */
@font-face {
	font-family: "OceanwideProSemibold";
	src: url('/fonts/OceanwideProSemibold/font.woff2') format('woff2'), url('/fonts/OceanwideProSemibold/font.woff') format('woff');
}


:root{

	/*standard colors */
	--error-color: #B51E1E;
	--warn-color: rgb(230 167 27);
	--info-color: #5eb20a;
	--help-color: #2879ff;
	
	/* client color scheme */
	--black: #0d0d0d;
	--white: #fff;
	--off-white: #f0f0f0;
	
	--pink: #eb529d;
	--green:#92c94e;
	--blue:#0397d6;
	--grey:#807F83;
	--dark-grey: #555555;
	--light-grey:#dcdcdc;


	--highlight-color:var(--pink);
	--highlight-text-color:var(--white);

	--featured-color:var(--blue);
	
	--site-max-width: 1400px;
	--menu-max-width: calc(100vw - 2rem);
	
	--left-panel-width: calc(var(--site-max-width) / 5);
	--right-panel-width: calc(var(--site-max-width) / 5);
	
	--line-height: 1.5;
	--letter-spacing: .2rem;
	--outline-width: 3px;
	--spacing: 1rem;
	--half-spacing: .5rem;
	--typography-spacing-vertical: .5rem;
	
	--block-spacing-vertical: calc(var(--spacing) * 2);
	--block-spacing-horizontal: var(--spacing);
	--form-element-spacing-vertical: 0.5rem;
	--form-element-spacing-horizontal: .725rem;
	--nav-element-spacing-vertical: 1rem;
	--nav-element-spacing-horizontal: 0.5rem;
	--nav-link-spacing-vertical: 0.5rem;
	--nav-link-spacing-horizontal: 0.5rem;
	--form-label-font-weight: var(--text-font-weight);
	
	/* fonts */
	--text-font: 'Open Sans', sans-serif;
	--text-font-weight: 400;
	
	--heading-font:  'OceanwideProSemibold', sans-serif;
	--heading-font-weight: 600;
	
	--sub-heading-font: 'OceanwideProSemibold', sans-serif;
	--sub-heading-font-weight: 700;

	--button-font:'OceanwideProSemibold', sans-serif;
	--button-font-weight: 600;
	
	--font-awesome:"Font Awesome 6 Pro";
	--font-size: 16px;
	
	/* grid info */
	--grid-spacing-vertical: var(--spacing);
	--grid-spacing-horizontal: var(--spacing);
	
	/* shadows */
	--box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
	--box-shadow-alt: -2px 2px 2px rgba(0, 0, 0, 0.5);
	--transition: 0s ease-in-out;
	
	/*Section colors */
	--background-color: var(--white);
	--top-bar-color: var(--off-white);
	--top-bar-text-color: var(--white);
	--top-bar-link-color: var(--white);

	
	--top-panel-color: var(--white);
	
	--center-panel-color: var(--white);
	
	--main-panel-color: var(--white);
	
	--footer-panel-color: var(--off-white);
	--footer-panel-alt-color: var(--grey);
	
	--bottom-panel-color: var(--light-grey);
	--bottom-panel-heading-color: var(--black);
	--bottom-panel-text-color: var(--black);
	
	--bottom-bar-color: var(--black);
	--bottom-bar-text-color: var(--white);
	
	
	--panel-color: var(--white);
	--dropdown-color: var(--white);
	--popout-color: var(--white);
	--form-color: var(--white);



	
	/*nav */

	--navbar-dropdown-text:var(--heading-font);
	--navbar-heading-font:var(--heading-font);
	--navbar-heading-font-size:15px;

	--navbar-color: var(--blue);
	--navbar-heading-color: var(--white);
	--navbar-heading-weight: 400;
	--navbar-link-color: var(--black);
	--navbar-icon-color: var(--black);
	
	--navbar-active-color: var(--blue);
	--navbar-active-text-color: var(--white);
	
	--navbar-hover-color: var(--off-white);
	--navbar-hover-text-color: var(--black);
	
	--navbar-dropdown-width: 300px;
	--navbar-dropdown-item-height: 40px;
	--navbar-dropdown-color: var(--off-white);
	--navbar-dropdown-text-color: var(--grey);
	--navbar-dropdown-text-size: .875rem;
	
	--navbar-sidebar-color: var(--off-white);
	--navbar-sidebar-text-color: var(--grey);
	--navbar-sidebar-hover-color: var(--off-white);
	--navbar-popout-color: var(--white);
	
	/*Buttons */

	--button-color: var(--blue);
	--button-text-color: var(--white);
	--button-border-color: var(--blue);
	--button-hover-text-color: var(--white);
	--button-hover-color: var(--blue);
	--button-hover-border-color: var(--blue);
	
	--alt-button-color: var(--off-white);
	--alt-button-text-color: var(--grey);
	--alt-button-border-color: var(--grey);
	--alt-button-hover-text-color: var(--grey);
	--alt-button-hover-color: var(--grey);
	--alt-button-hover-border-color: var(--grey);
	
	--checkout-button: var(--blue);
	--checkout-button-text: var(--white);
	
	--info-button: var(--info-color);
	--info-button-text: var(--white);
	--icon-color: var(--error-color);
	
	/*Borders */
	--border-color: var(--light-grey);
	--border-alt-color: var(--grey);
	--border-color-light: var(--light-grey);
	--border-radius: 0em;
	--border-width: 2px;
	
	/*Text */
	--color: var(--black);
	--text-color: var(--black);
	--text-color-light: var(--light-grey);
	--text-heading-color: var(--black);
	--text-sub-heading-color: var(--grey);
	--text-link-color: var(--black);
	--text-link-color-hover: var(--blue);
	--text-link-color-focus: transparent;

	--text-decoration:none;
	--text-decoration-color: var(--blue);
	
	/* featured product element fprd*/
	--fprd-color: var(--off-white);
	--fprd-title-font: var(--sub-heading-font);
	--fprd-title-font-weight: var(--font-weight);
	--fprd-title-color: var(--black);

	/*swiffy nav options */
	--swiffy-slider-nav: var(--blue);
	--swiffy-slider-item-color:var(--grey);
	--swiffy-slider-active-item-color:var(--blue);
}

/* -------------------------------------------------------------------------------------
=Reset 
------------------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
	-webkit-font-smoothing: antialiased;
}


/* To enable HTML5 elements in IE */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {
	display: block;
}

input, select, textarea {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

input:focus, textarea:focus, select:focus {
	outline-offset: 0px;
}

/* -------------------------------------------------------------------------------------
=Normalise v8.0.1 | MIT License | github.com/necolas/normalize.css 
------------------------------------------------------------------------------------- */
html {
	line-height: var(--line-height);
	-webkit-text-size-adjust: 100%;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

b, strong {
	font-weight: var(--heading-font-weight);
}

code, kbd, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img, picture, video, canvas, svg {
	display: block;
	max-width: 100%;
	height: auto;
	margin: auto;
}

.imgcont {}

.imgcont img {
	display: block;
}

button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button, input {
	overflow: visible;
}

button, select {
	text-transform: none;
}

button, [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"], [type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

::placeholder {
	/* Chrome, Firefox, Opera, Safari 10.1+ */
	color: var(--grey);
	opacity: 1;
	/* Firefox */
}

:-ms-input-placeholder {
	/* Internet Explorer 10-11 */
	color: var(--grey);
}

::-ms-input-placeholder {
	/* Microsoft Edge */
	color: var(--grey);
}



/* -------------------------------------------------------------------------------------
=Page 
------------------------------------------------------------------------------------- */
html {
	-webkit-font-smoothing: antialiased
}

body {
	background-color: var(--background-color);
	font-family: var(--text-font);
	-webkit-font-smoothing: antialiased;
	/* Looks pretty much the same than Windows */
	color: var(--text-color);
	font-size:16px;
}

ol {
	margin-left: .5em;
}

/* -------------------------------------------------------------------------------------
=Typography 
------------------------------------------------------------------------------------- */
/* Defaults
------------------------------------------------------- */

p {
	overflow-wrap: break-word;
}

b, strong {
	font-weight: 700;
}

sub, sup {
	position: relative;
	font-size: 0.75em;
	line-height: 0;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

a, [role=link] {
	--background-color: transparent;
	outline: none;
	background-color: var(--background-color);
	color: inherit;
	-webkit-text-decoration: var(--text-decoration);
	text-decoration: var(--text-decoration);
	text-decoration-color:var(--text-decoration-color);
	transition: background-color var(--transition), color var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
	transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition);
	transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
}

a:is([aria-current], :hover, :active, :focus),[role=link]:is([aria-current], :hover, :active, :focus) {
	--color: var(--text-link-color-hover);
	--text-decoration: underline;
}

a:focus, [role=link]:focus {
	--background-color: var(--text-link-color-focus);
}

h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: var(--typography-spacing-vertical);
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	font-size: var(--font-size);
	overflow-wrap: break-word;
}

h1 em,
h2 em,
h3 em,
h4 em,
h5 em,
h6 em{
	font-style:normal;
	font-family:var(--text-font);
	font-weight:200;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span{
}

h1 {
	font-size: 2em;
	--typography-spacing-vertical: .5rem;
}

h2 {
	font-size: 1.6em;
	--typography-spacing-vertical: .5rem;
}

h3 {
	font-size: 1.5em;
	--typography-spacing-vertical: .5rem;
}

h4 {
	font-size: 1.25em;
	--typography-spacing-vertical: .5rem;
}

h5 {
	font-size: 1.125em;
	--typography-spacing-vertical: .5rem;
}

p {
	font-family: var(--text-font);
	margin-bottom: var(--typography-spacing-vertical);
}

em {
	font-style: italic;
}

small {
	font-size: .825em;
}

[type=checkbox], [type=radio] {
	--border-width: 2px;
}

[type=checkbox][role=switch] {
	--border-width: 3px;
}

thead th, thead td, tfoot th, tfoot td {
	--border-width: 3px;
}

:not(thead):not(tfoot)>*>td {
	--font-size: 0.875em;
}

pre, code, kbd, samp {
	--font-family: "Menlo", "Consolas", "Roboto Mono", "Ubuntu Monospace", "Noto Mono", "Oxygen Mono", "Liberation Mono", monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

kbd {
	--text-font-weight: var(--heading-font-weight);
}

/* custom dropdown - same on all things... */
select, textarea {
	padding: var(--half-spacing);
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	border: var(--border-width) solid var(--border-color);
}

select {
	background: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0Ljk1IDEwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9LmNscy0ye2ZpbGw6IzQ0NDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPmFycm93czwvdGl0bGU+PHJlY3QgY2xhc3M9ImNscy0xIiB3aWR0aD0iNC45NSIgaGVpZ2h0PSIxMCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMiIgcG9pbnRzPSIxLjQxIDQuNjcgMi40OCAzLjE4IDMuNTQgNC42NyAxLjQxIDQuNjciLz48cG9seWdvbiBjbGFzcz0iY2xzLTIiIHBvaW50cz0iMy41NCA1LjMzIDIuNDggNi44MiAxLjQxIDUuMzMgMy41NCA1LjMzIi8+PC9zdmc+) #fff no-repeat right .5em center;
	padding-right: 2em;
	padding-left:.5em;
	display: inline;
	max-width: 100%;
	border: var(--border-width) solid var(--border-color);
	border-radius: var(--border-radius);
	color:var(--text-color);
	font-size:1rem;
	font-family:var(--text-font);
	cursor:pointer;
}

/* Articles
------------------------------------------------------- */

/*articles - may require many unsets for other things... */
#pm .artp ul {
	list-style-type: disc;
	padding-inline-start: 2em;
	margin-block-start: 1em;
	margin-block-end: 1em;
	font-size:1em;
}

#pm .artp ul ul, #pm .artp ul ul ul {
	margin-block-start: 0em;
	margin-block-end: 0em;
}

#pm .artp ul li {}

#pm .artp ul.nobullets {
	list-style-type: none;
	margin: .5em 0;
}

#pm .artp ol {
	font-size:1.2em;
	list-style-type: decimal;
	padding-inline-start: 2em;
	margin-block-start: 1em;
	margin-block-end: 1em;
}

#pm .artp ol li{
	
}

#pm .artp ol ol,
#pm .artp ol ol ol {
	margin-block-start: 0em;
	margin-block-end: 0em;
}

#pm .artp a {
	font-weight: 600;
	/* color:var(--text-link-color); */
}


/* Buttons 
------------------------------------------------------- */
.submit,
a.btn {
	display: inline-block;
	vertical-align: middle;
	font-size: 1em;
	font-weight: var(--button-font-weight);
	text-align: center;
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	background-color: var(--button-color);
	color: var(--button-text-color);
	border: var(--border-width) solid var(--button-border-color);
	border-radius: var(--border-radius);
	outline: none;
	padding: var(--half-spacing) var(--spacing);
	text-decoration:none;
	text-transform:uppercase;
	font-family:sans-serif;
	font-weight:600;
}

.submit:hover,
a.btn:hover {
	text-decoration: none;
	background-color: var(--button-hover-color);
	color: var(--button-hover-text-color);
	border: var(--border-width) solid var(--button-hover-border-color);
	text-decoration:none;
}

/* iphone specific overrides */
textarea, input.text, 
input.inputtext,
input.inputtext_short,
.ui-widget select,
input[type="text"],
input[type="email"],
input[type="button"],
input[type="submit"],
input[type="image"],
input#searchbox,
.input-checkbox {
	-webkit-appearance: revert;
	font-size: 16px;
	font-weight: 400;
	padding: var(--half-spacing);
	width: auto;
	border-width: 2px;
	border-style: solid;
}

input[type="submit"]{
	font-weight:600;
}

td a.btn {
	display: block;
}

input.inputtext,
input.inputtext_light {
	font-size:1rem;
	padding: var(--half-spacing);
	border: var(--border-width) solid var(--blue);
	border-radius: var(--border-radius);
	color:var(--text-color);
}

/* Tables 
------------------------------------------------------- */

/* Defaults 
------------------------------------------------------- */
table {
	border:1px #e8e8e8 solid;
	/*stops that stupid break between cells */
	border-collapse:collapse;
	min-width: 100%;
	font-size: 1em;
}

thead,
tbody {
 display: contents;
}

/*set table headers */
table th {
	font-family: var(--mainFont);
	color:var(--bgaltColor);
	font-weight:600;
	text-align:left;
	padding:.5em;
	width:auto;
}

/* for when no header has been used in the code !*/
table tbody tr:first-child td{
	font-family: var(--mainFont);
	color: #000;
	text-align:left;
	padding:.5em;
}

table tr td {
	padding:.5em;
	vertical-align:middle;
	font-size:1em;
}

th,
td {
 padding: .5em;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
 text-align:left;
}

tr:nth-child(even) td {
 background: #f8f8f8;
}

/*ensures font size for a p in a table is the same as it is for text that is NOT in a p block */
table tr td p,
table tr td li {
	font-size:1em;
}

#pm .artp table td p {
	font-size:1em;
}

table th:first-child {}

table tr:nth-child(odd) {
	background-color:#e8e8e8;
}


/* Headings 
------------------------------------------------------- */
.deptprods h3,
.carousel.prod h2,
.header h2,
.header h3{
	font-size:1.5em;
	/* color:var(--blue); */
	/* text-transform:uppercase; */
	margin: 2rem 0;
	margin-bottom:2rem;
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
}



/* -------------------------------------------------------------------------------------
=Grid Layout
------------------------------------------------------------------------------------- */
#pm .pmind {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-gap: var(--spacing);
	grid-auto-flow: dense;
	/*don't put margin here*/
}

/*this would be avoided if we just wrote the content out in blocks
would be also better if we could add our own "blocks" for things to be in
you currently can't have a banner and an article side by side because of this */

#pm .pmind .pbnr {
	grid-column: 1/-1;
}

#pm .pmind .pbnr {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-gap: var(--spacing);
	grid-auto-flow: dense;
}

/*set the default for any non grid class article #pm is needed as the css class is set higher than the immediate parent container */
.art, .prdlst, .carousel, .brnd, #depts {
	grid-column: 1/-1;
}

.brnd .owl-controls{
	display:none;
}

.fullWidth img,
.halfWidth img,
.halfWidthDbl img,
.third img,
.quarterWidth img,
.twoThirds img,
.fullWidth picture,
.halfWidth picture,
.halfWidthDbl picture,
.third picture,
.quarterWidth picture,
.twoThirdspicture{
	display: block;
	width:100%;
	height: auto;
}

/* layout base classes
------------------------------------------------------- */
.fullWidth {
	grid-column: 1/-1;
}

.news {
	grid-column:1/-1;
	text-align:center;
}

.news label{
	font-family:var(--heading-font);
	font-size:1.5em
}

.titleArticle{
	grid-column:1/-1;
	text-align:center;
}

.halfWidth{
	grid-column: auto / span 6;
}

.halfWidthDbl {
		position:relative;
	grid-column: auto / span 6;
	grid-row: span 2;
}

.quarterWidth {
	grid-column: auto / span 3;
}

.third {
	grid-column: auto / span 4;
}

.carousel:has(.twoThirdWidth),
.twoThirds{
	grid-column: auto / span 8;
}

.fullWidth,
.halfWidth,
.quarterWidth,
.third,
.twoThirds{
	position:relative;
	/* added to ensure carousel elements work right in firefox */
	/* display: grid; */
	/* grid-template-columns:100%; */
}


.imageText,
.textImage,
.deptfooter {
	grid-column: 1/-1;
	width: unset;
	padding: 0;
	display: grid;
	grid-gap: 1em;
	grid-template-columns: auto auto;
	width: 100%;
	max-width: var(--site-max-width);
	margin: auto;
}

.imageText .imgcont {
	grid-column: 1;
}

.imageText .artp {
	grid-column: 2;
}

.textImage .artp {
	grid-column: 1;
	grid-row: 2;
}

.textImage .imgcont {
	grid-column: 2;
	grid-row: 2;
}

.imageText h2,
.textImage h2 {
	grid-column: 1/-1;
}

/* responsive iframe - used in articles*/
.responsive-iframe {
	width: calc(100% - 2em);
	margin: 1em;
	display: inline-block;
	vertical-align: top;
	margin-top: 2em;
}
.responsive-iframe .artp,
.responsive-iframe {
	position: relative;
	overflow: hidden;
	padding-top: 56.25%;
}

.responsive-iframe iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}




.blog .fullWidth,
.blog .halfWidth,
.blog .quarterWidth,
.blog .third,
.blog .twoThirdWidth{
	position:relative;
	border-radius:var(--border-radius);
	border: var(--border-width) solid var(--border-color);
	border:0;
	/* added to ensure carousel elements work right in firefox */
	display: grid;
	grid-template-columns:100%;
}

.blog .form{
	grid-column:1/-1;
}



/* Custom classes - should become standard too
------------------------------------------------------- */

/*when a class is applied on the article text it is also applied to the image */
.imgcont .overlay{
	background-color:var(--light-grey);
	text-align:center;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:grid;
	align-items:center;
	transition:var(--transition);
}

div.overlay:hover{
	background-color:var(--pink);
}

div.overlay a,
div.overlay p,
div.overlay h1,
div.overlay h2,
div.overlay h3,
div.overlay h4,
div.overlay h5{
	/*remove transition effect on text */
	transition:none;
}

div.overlay:hover a,
div.overlay:hover p,
div.overlay:hover h1,
div.overlay:hover h2,
div.overlay:hover h3,
div.overlay:hover h4,
div.overlay:hover h5{
	color:white;
	transition:none;
}

div.overlay a{
}


.ctas{
	grid-column: span 6;
}

.ctas .artp{
	display:grid;
	grid-template-columns: auto auto;
	grid-gap:.5em;
}

.ctas .artp p,
.ctas .artp h2,
.ctas .artp h3,
.ctas .artp h4{
	grid-column:1/-1;
}

.ctas .artp .cta{
	display:grid;
	grid-template-columns: 64px 1fr;

	grid-template-areas:
		"icon title"
		"icon strap"
;
	margin-bottom: 4.1rem;
}

.ctas .artp .cta i{
	grid-area:icon;
	font-size:3rem;
	color:var(--pink);
	align-self:center;
}

.ctas .artp .cta h4{
	grid-area:title;
	color:var(--text-color);
	margin:0;
}

.ctas .artp .cta p{
	grid-area:strap;
	margin:0;
}

.ctas .cta-text h3{
	font-size:1.5em;
}

.cta-action a.btn{
	display:block;
	font-weight:600;
	font-size:1.5em;
}



/*hack - should be using multiple classes */

#a123699210{
	border:none;
	display:block;
	text-align:center;
}

#a123699210 .imgcont{
	display:inline-block;
	margin: 0 1em;
}

#a123699210 img{
	max-width: 200px;
}



/* -------------------------------------------------------------------------------------
=SiteContainers
------------------------------------------------------------------------------------- */
#cont {
	margin: auto;
}

#site {
	background-color: var(--background-color);
}

/* -------------------------------------------------------------------------------------
=FIXEDTop Panel #ptf
------------------------------------------------------------------------------------- */
#ptf {
	top: 0px;
	width: 100%;
	background-color:var(--top-bar-color);
	/* border-bottom:1px var(--dark-grey) solid; */
	color:var(--blue);
	text-align: center;
	font-size:14px;
}

/*hide on checkout process */
.chkflow #ptf{
	display:none;
}

#ptf .ext {
	/* padding:.25rem; */
	display: grid;
	grid-template-areas:
		". actions message account .";
	--spacerwidth: calc((100% - var(--site-max-width)) / 2);
	grid-template-columns: var(--spacerwidth) 1fr auto 1fr var(--spacerwidth);
	align-items:center;
}

#ptf p{
	margin:0;
}

#p47611904,
#p50266112 {
	grid-area:actions;
	text-align:left;
}

#a123109379{
	grid-area:message;
	text-align:center;
}

#a123109379 h1,
#a123109379 h2,
#a123109379 h3,
#a123109379 h4,
#a123109379 p{
	margin-bottom:0;
}

#p47611906,
#p50266114 {
	grid-area:account;
	text-align:right;
}

#ptf .info ul{
}

#ptf .info li{
	display: inline-block;
	vertical-align:middle;
	margin: var(--half-spacing);
	text-align: center;
}

#ptf .info .icon a.img {
	grid-area: icon;
	display: inline-block;
	vertical-align:middle;
	margin-right:.5rem;
}

#ptf .info .icon .img img {
	display: block;
	max-height: 1rem;
	width: auto;
}

#ptf .info .icon a.lnk {
	display:inline-block;
	vertical-align:middle;
}




/* -------------------------------------------------------------------------------------
=Top Panel #pt
------------------------------------------------------------------------------------- */

:root{
	--basket-width:300px;
}

#pt {
	width: 100%;
	margin: auto;
	background-color: var(--top-panel-color);
	margin-bottom:1em;
}

/*see media queries for other layouts layout */
#pt .ext {

	/* spacer width is used on wider view ports to keep top panel central */

--spacer-width: calc((100% - var(--site-max-width)) / 2);

--logo-width:300px;

--search-width:1fr;

--quick-order-width:auto;

background-color: var(--top-panel-color);

margin: 0 auto;

position: relative;

display: grid;

grid-column-gap: 1rem;

grid-template-columns: var(--spacer-width) var(--logo-width) var(--search-width) var(--quick-order-width) var(--basket-width)  var(--spacer-width);

grid-template-areas:


". logo search quickorder basket  ."


". subnav subnav subnav subnav ."


"nav nav nav nav nav nav"


"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage ";

align-items: center;
}

#pt .ext>* {
	min-width: 0;
}

/* defaults */
#pt .info li {
	list-style: none;
	display:block;
}

#pt li.pipe {
	display: none;
}

/* fake search toggle, hidden by default - requires an article creating as the COMS implementation doesnt work! */
#a134447126{
	display:none;
}

/*old subnav*/
#p50266119{
	grid-area:subnav;
	text-align:center;
}
#pt .info#p50266119 li{
	display:inline-block;
	font-family: var(--heading-font);
	font-weight:600;
	padding:1em;
	text-transform:uppercase;
}

#pt .info#p50266119 li.pipe {
	display: none;
}

/*new scrolling subnav */
#a134709248{
	grid-area:subnav;
	text-align:center;
	padding:1em;
	font-family:var(--heading-font);
}

#a134709248 .artp{
	width:var(--site-max-width);
	max-width:1000px;
	margin:auto;
	text-transform:uppercase;
}

#a134709248 .slidecont{
	grid-gap:var(--spacing);
}

#a134709248 .slidecont.reviewimg{
	display:inline-block;
	display:block;
	vertical-align:middle;
}

#a134709248 .slidecont.reviewimg img{
	display:inline-block;
	vertical-align:middle;
	max-height: 1rem;
	width:auto;
}

#a134709248 i{
	color:var(--green);
	display:inline-block;
	vertical-align:middle;
	margin-left:auto;
	margin-right:.5rem;
	grid-area:icon;
}

#a134709248 p{
	grid-area:text;
	font-size:.825rem;
	display:inline-block;
	vertical-align:middle;
	margin-right:auto;
	max-width:calc(100% - 2rem)
}

#a134709248 button,
#a134709248 .slider-indicators{
	display:none;
	
}





#a125370386{
	grid-area:sitewidemessage;
	background-color:var(--light-grey);
	text-align:center;
	padding:.5em 0;
}

#a125370386 h4{
	margin:0;
	font-size:1em;
	font-family:var(--text-font);
	font-weight:normal;
}




/* menu toggle - hidden by default, shows on mobile/smaller viewport
------------------------------------------------------- */
.home-hamburger {
	grid-area: nav-start;
	display: none;
	z-index: 1000;
}

.home-hamburger .visible-xs {
	visibility: hidden;
}

/* logo
------------------------------------------------------- */
#pt .pbnr {
	grid-area: logo;
padding:1em 0
}

#pt .pbnr img {
	margin:0 auto;
}

#pt .pbnr a.txt {
	display: none;
}


/* search
------------------------------------------------------- */
#pt .search {
	grid-area: search;
	text-align: center;
	font-size: 16px;
	padding:0;
	/* margin:0 1em; */
	/* width:calc(100% - 2em); */
}

#pt .search form {
	background-color:var(--white);
	border-radius:var(--border-radius);
	border: var(--border-width) solid var(--blue);
}

#pt .search input {
	display: inline-block;
	vertical-align: top;
}

#pt .search input#searchbox {
	width: calc(100% - 2.5rem);
	background-color:transparent;
	margin: auto;
	font-size: 16px;
	/* padding: .5rem .5rem; */
	border:none;
}

#pt .search input#searchbox:focus-visible{
	border:none;
	outline:none;
}

/*could do with some way of nicely seeing font awesome icons in coms */
#pt .search input#search {
	width: auto;
	margin: 0;
	padding: .5rem .75rem;
	background-color:transparent;
	color:var(--dark-grey);
	font-family: var(--font-awesome);
	border: none;
}


/* QuickOrder
------------------------------------------------------- */
#pt #qobtnview{
	grid-area:quickorder;
	text-align: left;
	margin:auto;
	position:relative;
	cursor:pointer;
	display:grid;
	grid-template-areas:
		"image text";
	align-items:center;
	grid-gap: .5em;
}

#pt #qobtnview img{
	grid-area:image;
	display:inline-block;
	max-width:2em;
	
}

#pt #qobtnview span{
	grid-area:text;
	display:inline-block;
	font-family:var(--heading-font);
	margin:0;
	margin-top: 6px;
	padding:0;
}
.qord.hidequickord{
	display:none;
}


.qord {
	position: fixed;
	top: 50%;
	left: 50%;
	/* padding:var(--spacing); */
	width: calc(var(--site-max-width) / 3);
	transform: translate(-50%, -50%);
	z-index: 100;
	border: 1px solid var(--border-color);
	background-color: var(--popout-color);

	text-align: center;
	-webkit-box-shadow: var(--box-shadow);
	-moz-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
	display:grid;
	grid-template-areas:
		"title"
		"form";
	align-items:center;
}

.qord h3{
	grid-area:title;
	background-color:var(--blue);
	color:var(--white);
}
.qord .qordcontainer{
	grid-area:form;
	display:grid;
	align-items:center;
	/* grid-gap:1em; */
	grid-template-areas:
		"qoref-label qoref"
		"qoqty-label qoqty"
		"message message"
		"submit submit";
}

#qoresponse{
	grid-area:message;
}

.qord label[for="qoref"]{
	margin-right:.5em;
	margin-bottom:.5em;
	grid-area:qoref-label;
	text-align:right;
}
.qord #qoref{
	grid-area:qoref;
	margin-bottom:.5em;
	width:7em;
}

.qord label[for="qoqty"]{
	margin-right:.5em;
	margin-bottom:.5em;
	grid-area:qoqty-label;
	text-align:right;
}

.qord #qoqty{
	grid-area:qoqty;
	margin-bottom:.5em;
	width:7em;
}


.qord input#qosubmit{
	grid-area:submit;
}

.qord .qordcontainer .qohidebtn{
	position:absolute;
	top:.5em;
	right:1em;
	background-color:white;
	border-radius:50%;
}

/* Basket
------------------------------------------------------- */
#pt .bskt {
	grid-area:basket;
	border: var(--border-width) solid var(--blue);
}

#pt .bskt img{
	margin:0;
}

#mybskt p,
#mybskt h4 {
	font-weight:600;
	padding: 0;
	margin: 0;
}

/*items in basket 
#pt .bskt p,
#pt .bskt a.mybsktlnk{
    position: absolute;
    top: 0rem;
    right: 0rem;
    background-color: var(--pink);
    color: #fff;
    border-radius: 50%;
    text-align: center;
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1.5rem;
    font-size: .825em;
    font-weight:600;
}*/


/*items in basket */
#bsktitems,
a.bsktitems{
	/* display:none; */
}



#pt .bskt #mybskt{
	padding: 0.325em;
	text-align:center;
	align-items:center;
	color:var(--blue);
	display:grid;
	grid-column-gap:.5em;
	grid-template-columns: 2em auto 1fr;
	grid-template-areas:
		"icon items value";
}

#pt .bskt #mybskt p{
}

/*items in basket */
#bsktitems,
a.bsktitems{
	grid-area:items;
}

#bsktitems span{
	font-family:var(--text-font);
	color:var(--grey);
	font-weight:normal;
	margin-right:.5em;
}

#bsktvalue,
a.bsktvalue{
	grid-area:value;
}

#bsktvalue span{
	font-family:var(--text-font);
	color:var(--grey);
	font-weight:normal;
	margin-right:.5em;
}

#pt .bskt #mybskt a.btn,
#pt .bskt #mybskt img.btn{
	background-color:transparent;
	grid-area:icon;
	/* display:inline-block; */
	outline:none;
	padding:0;
	border:none;
	margin:0;
	/* display:none; */
}

#pt .bskt #mybskt a.btn:hover{
	background-color:transparent;
}

#pt .bskt #mybskt a.btn img{
	margin:0;
	
}

#pt .bskt h4{
	grid-area:freeshipping;
	font-size: .725rem;
	text-align: left;
	margin:0;
	align-self:end;
}




/* client specific 
------------------------------------------------------- */

/* -------------------------------------------------------------------------------------
=Center Panel #pc
------------------------------------------------------------------------------------- */
#pc {
	margin: auto;
	display: flow-root;
	background-color:var(--pink);
	color:var(--white);
	text-align: center;
	margin-bottom:1em;
}


/* cta's */
#a131858436{
	max-width:var(--site-max-width);
	margin:.5em auto;
}

#a131858436 h4{
	color:var(--pink);
	font-size:1em;
	margin:0;
}
#a131858436 p{
	margin:0;
	font-size:.825em;
}

#a131858436 i{
	font-size:2em;
	display:inline-block;
	vertical-align:middle;
	/* padding:var(--half-spacing); */
	margin-right:.5em;
}

#a131858436 a{
	display:inline-block;
	vertical-align:middle;
	font-weight:600;
	font-size:.825em;
	/* padding:var(--half-spacing); */
}


/*hp main banner */
/*main home page banner - uses aspect ratio change in media queries */
.mainBanner {
		position:relative;
}
.mainBanner a.img img{
	width:auto;
	height:auto;
	/*set a max height to avoid it being too humongous on larger displays */
	max-height:400px;
	aspect-ratio: 1900/700;
	width: 100%;
	object-fit: cover;
	margin:auto;
}

.mainBanner .toi{
	position: absolute;
	top: 50%;
	left: 0%;
	/* (full view width - site max width )/ 2 */
	left:calc( (100vw - var(--site-max-width)) / 2);
	/*max width of 1 half of fake max width */
	max-width:calc(var(--site-max-width) / 2);

	min-width:calc(var(--site-max-width) / 3);
	
	transform: translate(0%,-50%);
	padding: 2em 1em;
	z-index: 100;
	text-align: left;
	background-color:rgba(242, 238, 227,0.8);
}

.mainBanner h2{
	font-size:2rem;
	color:var(--black);
}

.mainBanner h3{
	color:var(--pink);
	font-size:1.25rem;
}

.mainBanner p{
	font-size:.825rem;
}

.mainBanner .review-container{
	text-align:left;
	margin-bottom:1rem;
}

.mainBanner .review-container img{
	margin:0;
}


/* client specific 
------------------------------------------------------- */

.sidebyside .imgcont{
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-template-areas:"text image";
}

.sidebyside .imgcont picture{
	grid-area:image;
	height:100%;
}

.sidebyside .imgcont img
{
	height:100%;
	max-height:500px;
	aspect-ratio: 3/1;
	width: 100%;
	object-fit: cover;
	margin:auto;
}

.sidebyside .imgcont .slideCont{
	grid-area:text;
	background-color:var(--pink);
}

.sidebyside .bordered{
	border:2px var(--white) solid;
	color:var(--white);
	padding:2em;
	/* padding-right:4em; */
	height: calc(100% - 6em - 2px);
	margin:1em;
	text-align:right;
	background-image:url('https://www.tigerfeetdirect.com/tigerfeet/i/art/footerbg.webp');
	background-position:bottom left;

}

.sidebyside .centerbox{
	align-content:center;
	display:grid;
	height:100%;
}



.sidebyside .centerbox h3{
	font-size:2em;
	font-family:var(--text-font);
}

.sidebyside .centerbox h3 em{
	font-weight:600;
}

.sidebyside .centerbox h2{
	font-size:6em;
}

.sidebyside .centerbox p{
	margin-bottom:1em;
}

.sidebyside .centerbox a{
	display:inline-block;
	border:2px var(--white) solid;
	padding:1em 2em;
}



/* -------------------------------------------------------------------------------------
=Main Panel
------------------------------------------------------------------------------------- */
#pmid {
	width:100%;
	margin:auto;
	background-color: var(--main-panel-color);
	/*used to ensure left panel displays correctly, unsure why though... */
	display: flex;
	justify-content: flex-start;
	padding-bottom:1rem;
}


/* filter search results? 
------------------------------------------------------- */
#fs {
	display:none;
}

/* full width panel 
------------------------------------------------------- */
.pmfull {
	margin: 0 auto;
	position: relative;
	/*padding should be put in media queries */
	width: var(--site-max-width);
	background-color: var(--main-panel-color);
	min-height:50vh;
	margin-bottom:1rem;
}



/* left panel
------------------------------------------------------- */
#pl {
	width: var(--left-panel-width);
	margin:0;
	margin-left:auto;
	margin-right:1rem;
	vertical-align: top;
}

/* wide panel (used with left panel - or is it... see filter search) 
------------------------------------------------------- */
 .pmwide {
	background-color: var(--main-panel-color);
	width: calc(var(--site-max-width) - var(--left-panel-width) - 1rem);
	display: inline-block;
	vertical-align: top;
	margin:0;
	margin-right:auto;
}


/* -------------------------------------------------------------------------------------
=Footer Panel #pf
------------------------------------------------------------------------------------- */
#pf {
	width: 100%;
	margin: auto;
	margin-top:1em;

	background-color:var(--footer-panel-color);
	color:var(--dark-grey);
}


#pf .artp h1,
#pf .artp h2,
#pf .artp h3,
#pf .artp h4{
	color:var(--pink)
}

#pf .artp h1 em,
#pf .artp h2 em,
#pf .artp h3 em,
#pf .artp h4 em{
	color:var(--grey)
}


#pf .ext {
	margin: 0 auto;
	position: relative;
	/*padding should be put in media queries */
	max-width: var(--site-max-width);
	width:100%;
	padding:0;
	padding-top: 2em;
	padding-bottom: 2em;
}

#pf .carousel{
	margin-bottom:2em;
}


#pf .arts {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-gap: var(--spacing);
	grid-auto-flow: dense;
	/*don't put margin here*/
}


#pf .imgcont {
	outline: 2px solid var(--white);
	outline-offset: -1em;
	position:relative;
}

#pf .imgcont div{
	background-color:var(--pink);
	font-family:var(--heading-font);
	padding:1rem 1.5rem;
	display:inline-block;
	position:absolute;
	bottom:0;
	right:0;
	color:var(--white);
	font-size:1.5em;
}


/* About us Aricle */
#pf #a131104768 .artp {
	display:grid;
	grid-template-columns:1fr 1fr;
	align-items:start;
	grid-column-gap:3em;
	margin:2em 0;
}

#pf #a131104768 .artp h2{
	grid-column:1/-1;
}




/* Newsletter 
------------------------------------------------------- */
#pb .ext .news {
		grid-area: newsletter;
}

#pb .ext .news  h3 {
	--typography-spacing-vertical:0;
	font-size: 1.5em;
	/* font-family:var(--text-font); */
	text-transform:capitalize;
	padding-bottom: 1.5rem;
	color: var(--bottom-panel-heading-color);
}

#pb .ext .news form {
	text-align: left;
	align-self: center;
}

.news_input_container{
	display:grid;
	grid-template-areas:"email subscribe";
	grid-template-columns:1fr auto;
	background-color:var(--white);
	border:var(--border-width) solid var(--blue);
	margin:1em 0;

}

#pb .ext .news label {
	font-size:1em;
	font-weight:400;
	font-family:var(--text-font);
	color:var(--text-color);
}

#pb .ext .news input#email {
	grid-area:email;
	padding: 1em;
	border: var(--border-width) solid var(--white);
}

#pb .ext .news input#subscribe {
	grid-area:subscribe;
	padding:1em 2em;
	border:2px white solid;
}



/* client specific 
------------------------------------------------------- */

/* -------------------------------------------------------------------------------------
=Bottom Panel #pb
------------------------------------------------------------------------------------- */

#pb {
	width: 100%;
	margin: auto;
	/* margin-top: 6em; */
}

/* Info defaults 
------------------------------------------------------- */
/* hide icons if present on info links */
#pb .info li.icon img {
	display: none;
}

#pb .info h3 {
	--typography-spacing-vertical:0;
	font-size: 1.5em;
	text-transform:capitalize;
	padding-bottom: 1.5rem;
	color: var(--bottom-panel-heading-color);
}

#pb .info p {
	color: var(--bottom-panel-text-color);
}


#pb .info ul {
	padding: 0;
}

#pb .info li {
	list-style: none;
	font-size: 1em;
	color: var(--bottom-panel-text-color);
	padding:0;
	padding-bottom:.5em;
}

/*old stuff we don't want written out*/
#pb li.pipe {
	display: none;
}

ul.inline, ul.socials, ul.contacts {
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}

ul.inline li {
	display: inline-block;
	padding-right: .5em;
}


/* Article defaults 
------------------------------------------------------- */
/* hide icons if present on info links */
#pb .art li.icon img {
	display: none;
}

#pb .art h2 {
	font-size: 1.5em;
	/* font-family:var(--text-font); */
	text-transform:capitalize;
	margin-bottom: 1.5rem;
	color: var(--bottom-panel-heading-color);
}

#pb .info p {
	color: var(--bottom-panel-text-color);
}

/* client specific 
------------------------------------------------------- */
#pb .ext {
	--spacer-width: calc((100% - var(
	--site-max-width)) / 2);
	background-color: var(--bottom-panel-color);
	margin: 0 auto;
	padding-top: 3em;
	padding-bottom: 2em;
	position: relative;
	display: grid;
	grid-column-gap:1em;
	align-items: start;
	grid-template-columns: var(--spacer-width) 1.5fr 1fr 1fr 1fr 1fr var(--spacer-width);
	grid-template-areas:
		". contact about help legal newsletter ."
		". contact about help legal social ."
		". contact about help legal payment ."
		". contact about help legal . ."
		". company company company company company .";
	color:var(--bottom-panel-text-color);
}


#a81756163{
	grid-area: contact;
}

#a81756163 strong{
	font-family:var(--heading-font);
	font-weight:normal;
}

#a81756163 img{
	margin:0;
}
#p52461573{
	grid-area:about;
}

#p33128453,
#p51445763{
	grid-area: help;

}

#p33128454,
#p51445764{
	grid-area: legal;

}

#p33128455,
#p51445765{
	grid-area: newsletter;
}

#a82018305{
	grid-area: social;
	margin-top:1em;
}

#a82018305  img{
	margin:0;
	margin-left:auto;
}


#a82018305 ul{
text-align:right;
	margin-top:1em;
}

#a82018305 ul li{
	display:inline-block;
	font-size:1.5em;
	padding:.5rem;

}



#pb .art.socialFooterFA li .fa-facebook-f{
	background-color:var(--blue);
	color:var(--white);
	padding:.5em;
	border-radius:50%;
	width:1em;
}

#pb .art.socialFooterFA li .fa-instagram{
	background-color:var(--blue);
	color:var(--white);
	padding:.5em;
	border-radius:50%;	width:1em;
}

#pb .art.socialFooterFA li .fa-linkedin-in{
	background-color:var(--blue);
	color:var(--white);
	padding:.5em;
	border-radius:50%;	width:1em;
	}


#a82247680{
	grid-area: payment;
	margin-top:1em;
}
.etailcopy{
	grid-area: company;
}



/* -------------------------------------------------------------------------------------
=FIXEDBottom Panel #pbf
------------------------------------------------------------------------------------- */
#pbf {
	background-color: var(--bottom-bar-color);
	font-size: .725em;
}

#pbf .ext {
	--spacer-width: calc((100% - var(
	--site-max-width)) / 2);
	margin: 0 auto;
	position: relative;
	display: grid;
	/* padding-top:1em; */
	/* padding-bottom:1em; */
	text-align:center;
	color:var(--white);
}

#pbf p{
	margin:0;
}


/* cookie popup
------------------------------------------------------- */
#pbf .cookie {
	position: fixed;
	bottom: 0%;
	left: 0%;
	width: 100%;
	z-index: 1000;
	background: var(--black);
	text-align: center;
}

#pbf .cookie p {
	margin: 0 auto;
	float: none;
	color: var(--bottom-bar-text-color);
	padding: .5em 0
}

#pbf .cookie p a {
	float: none;
	color: var(--bottom-bar-text-color);
	text-decoration: underline;
	/* padding: 0 5px; */
}

#pbf .cookie img {
	float: none;
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px
}

#pbf .cookie img:hover {
	cursor: pointer
}

/* -------------------------------------------------------------------------------------
=Breadcrumb	 
------------------------------------------------------------------------------------- */
.page_home .bdcb,
.home .bdcb {
	display: none;
}

.bdcb {
	max-width: var(--site-max-width);
	margin: auto;
	text-align:left;
}

.crumb {
	display: block;
	/* text-align: center; */
	margin: 0 var(--half-spacing);
}

.bdcb ul li {
	list-style: none;
	display: inline-block;
	margin: 0;
}

.bdcb li a, .bdcb li h1,
.bdcb li h3{
	font-family: var(--text-font);
	color: var(--text-color);
	font-size: .825rem;
	padding: 0;
	margin: 0;
	display: inline-block;

}

/*active page */
.bdcb li h1,
.bdcb li h3{
	font-size: .825rem;
	margin: 0;
	color: var(--text-color);
}

/*for the break between the crumb*/
.bdcb li:after {
	display: inline-block;
	font-family: var(--font-awesome);
	color: var(--text-color);
	font-size: .6rem;
	font-weight: normal;
	content: "\f054";
	margin: .5rem;
}

.bdcb li:last-child:after {
	content: "";
	margin: 0;
	display: none;
}

.bdcb span {
	display: inline-block;
	margin: 0;
}

.bdcb h1 {}


/* -------------------------------------------------------------------------------------
=OwlCarousel Overrides
------------------------------------------------------------------------------------- */
/* base settings */
.carousel {
    position: relative;
	/*these are needed to prevent firefox messing things up - otherwise we need to use specific sizes for grid layouts */
    max-width:100%;
    grid-column: 1/-1;
}

.owl-stage-outer {}

/* this should be the title for the carousel */
.carousel h2 {}

.carousel:hover {
    cursor: -moz-grab;
    cursor: -webkit-grab;
    cursor: grab;
}

.carousel.article .owl-dot{
	display:none;
	
}

.noNav .owl-controls {
    display: none;
}

.owl-controls {
    text-align: center;
}

.owl-nav {}

.owl-dot {
    display: inline-block;
    vertical-align: top;
    text-align: center;
}

.owl-dot span {
    display: inline-block;
    vertical-align: top;
    width: 0.825em;
    height: .825em;
    margin: .5em;
    border-radius: 50%;
}

.owl-dot.active span, .owl-dot:hover span {
}

.owl-theme .owl-controls {
	position: absolute;
	top:0%;
	left:0%;
	width:100%;
	height:100%;
	pointer-events:none;
}

.owl-theme .owl-nav {
    text-align: center;
    -webkit-tap-highlight-color: transparent;
}

.owl-nav .owl-prev, .owl-nav .owl-next {
    position: absolute;
    font-size: 2em;
	font-weight:600;
	font-family:var(--heading-font);
    margin: .25rem;
    padding: .5rem;
    background: var(--pink);
    display: block;
    cursor: pointer;
	color:var(--background-color);
	opacity:.8;
	pointer-events:auto;
}

.owl-prev {
	top:calc(50% - 1em);
	left:0em;
}

.owl-next {
		top:calc(50% - 1em);
    right: 0em;
}

.owl-nav .owl-prev:hover, .owl-nav .owl-next:hover {
    text-decoration: none;
	opacity:1;
}


/* -------------------------------------------------------------------------------------
=Swiffy Slider
------------------------------------------------------------------------------------- */
.swiffy-slider {

	}

.swiffy-slider .imgcont img{
	width:100%;
}
.swiffy-slider ul, .swiffy-slider li {}

.swiffy-slider .slidecont p {
	padding: 0;
	margin: 0;
}

.slider-product {
	--swiffy-slider-item-count: 5;
}

.slider-cta {
	--swiffy-slider-item-count: 5;
}

.slider-dept {
	--swiffy-slider-item-count: 5;
	--swiffy-slider-nav-light: #fff;
}

.slider-dept-alt {
	--swiffy-slider-item-count: 10;
}

.slider-featured {
	--swiffy-slider-item-count: 5;
}

/* product sliders - code needs some tweaking */
.carousel.prod h2{
	text-align:center;
	padding:.5rem;
	margin-bottom:1rem;
}

.carousel.prod .swiffy-slider {
	--swiffy-slider-item-count: 5;
}

/* department sliders - code needs some tweaking */
.carousel.dept .swiffy-slider {
	--swiffy-slider-item-count: 4;
}

.carousel.dept .deptlink a.txt {}

/* -------------------------------------------------------------------------------------
=Blog
------------------------------------------------------------------------------------- */
#site.blog #pm{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: var(--spacing);
	grid-auto-flow: dense;
	grid-auto-rows: min-content;
}

/* Blog previews
------------------------------------------------------- */
#pm .blog:not(.art){
	border-radius:var(--border-radius);
	display:grid;
	grid-template-columns:1fr;
	grid-template-areas:"image"
	"title"
	"date"
	"readmore";
	background-color:var(--off-white);
	padding-bottom:1em;
}


#pm .blog:not(.art) a.img{
	grid-area:image;
	border-bottom:3px white solid;
}

#pm .blog:not(.art) a.img img{
	width:100%;
	height:auto !important;
}

#pm .blog:not(.art) a.title{
	grid-area:title;
	font-family:var(--heading-font);
	color:var(--text-heading-color);
	text-align:center;
	padding:1rem;
	font-size:1.25em
}

#pm .blog:not(.art) p.date{
	grid-area:date;
	text-align:center;
	color:var(--text-color);
}

#pm .blog:not(.art) a.more{
	grid-area:readmore;
	margin:auto;
	padding:.5rem 2rem;
	background-color:var(--button-color);
	color:var(--button-text-color);
	font-family:var(--heading-font);
	text-align:center;
	font-size:1.125em;
	border-radius:var(--border-radius);
}

/*blog summary text - not wanted for this client */
#pm .blog:not(.art) .artp{
	display:none;
}

/* Blog Posts
------------------------------------------------------- */
.art.blog{
	
}

.art.blog h2{
	text-align:center;
	color:var(--text-heading-color);
}
.art.blog .imgcont{
	margin:2em 0;
}

.art.blog .imgcont img{
	border-radius:var(--border-radius);
}

/* Blog navigation buttons
------------------------------------------------------- */
.blogBtns{
	grid-column:1/-1;

	display:grid;
	grid-template-areas:"prev next";

}

.blogBtns a.prev{
	grid-area:prev;
	background-color:var(--button-color);
	color:var(--button-text-color);
	text-align:center;
	border-radius:var(--border-radius);
	margin-right:auto;
	padding:.5rem 2rem;
}

.blogBtns a.next{
	grid-area:next;
	background-color:var(--button-color);
	color:var(--button-text-color);
	text-align:center;
	border-radius:var(--border-radius);
	margin-left:auto;
	padding:.5rem 2rem;
}

/* blog widget
------------------------------------------------------- */
.blogs{
	grid-column:1/-1;
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-gap:2em;
	padding:2em;
}

#pm .blogs .blog:not(.art) a.title{
	grid-area:title;
}


/* Blog  widget previews
------------------------------------------------------- */
#pm .blogs .blog{
	border-radius:var(--border-radius);
}

#pm .blogs .blog img{
	border-top-left-radius:var(--border-radius);
	border-top-right-radius:var(--border-radius);
}

#pm .blog:not(.art) a.title{
	grid-area:title;
}

#pm .blogs .blog:not(.art) p.date{
	grid-area:date;
	display:none;
}

#pm .blogs .blog:not(.art) a.more{
	grid-area:readmore;

}
/* -------------------------------------------------------------------------------------
=SearchHeader / SearchFooter 
------------------------------------------------------------------------------------- */
.deptwrap {}

.searchheader {
	padding: .5em;
	/* height:36px; */
	z-index: 99;
	background-color: var(--main-panel-color);
}

.searchheader .search {
	/* for unknown reasons we re-write out the searchbox in the search header*/
	display: none !important;
}

.searchheader label {
	font-family: var(--text-font);
	font-weight: normal;
	font-size: .825rem;
	margin: 0;
	margin-right: .5rem;
	display:none;
}

.searchheader .paging {
	/*important needed as something shoves an inline style there!*/
	display: none !important;
}

.searchheader {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-areas:
		"items filter sort-by itemsperpage";
	/* grid-gap: 1em; */
	align-items: center;
}

/* results found */
.searchheader h5#rescou {
	grid-area: items;
	font-family: var(--text-font);
	font-weight: normal;
	font-size: .825rem;
	margin: 0;
}

/* sort by */
.searchheader #sorpan, .searchheader form[name="dispord"] {
	grid-area: sort-by;
	margin: 0;
}

/* results per page */
.searchheader #rpppan, .searchheader .rpp {
	margin: 0;
	grid-area:itemsperpage;
}



/*paging */
.paging {
	grid-area: paging;
	text-align: center;
}

/*writing out "page" is a little daft */
.paging label {
	display: none;
}

.paging span, .paging a {
	font-size: 1em;
	display: inline-block;
	margin-right: .5em;
	border: var(--border-width) solid var(--border-color);
	border-radius: .25rem;
	padding: var(--half-spacing);
}

.paging span:last-child, .paging a:last-child {
	margin-right: 0;
}

/*this should be the current page */
.currpg {
	font-weight: var(--heading-font-weight);
}

.searchfooter {
	padding: .5em;
	text-align: center;
	margin: 1em 0;
}

#sr {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-column-gap: var(--grid-spacing-horizontal);
	grid-row-gap: var(--grid-spacing-vertical);
	position: relative;
	margin: 1em 0;
}

.pmwide #sr {
	grid-template-columns: repeat(5, 1fr);
}

/* -------------------------------------------------------------------------------------
=FilterSearch 
------------------------------------------------------------------------------------- */
.filter {
	padding: .5em;
	position: sticky;
	top: 0;
	height: auto;
	z-index: 99;
	background-color: var(--off-white);
	color:var(--blue);
}

/* close filter button */
.fsclsdiv {
	text-align: right;
}

.fsclsdiv .fsclsspn {
	display: inline-block;
	border: 1px solid var(--blue);
	color: var(--black);
	background-color: var(--blue);
	border-radius: 50%;
	font-family: monospace;
	padding: 0rem;
	margin: 0rem;
	width: 1rem;
	height: 1rem;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	display: none;
}

.filter .bt {
	/* margin-bottom: 1rem; */
}

.filter .bt h3 {
	font-weight: var(--heading-font-weight);
	color:var(--blue);
	font-size: 1.25rem;
}

.longattrsection .items {
	overflow-x: hidden;
	-ms-overflow-x: scroll;
	margin-bottom: 1rem;
}

.HeaderContent h5 {
	font-size: 1rem;
}

.collapsed h5 {}
.collapsed h5:hover {}
.items {}

.citem {
	padding: var(--spacing) 0;
	font-family: var(--sub-heading-font);
	font-size:.825em;
	margin: 0;
	cursor: pointer;
	text-align: left;
}

.citem::before, .citemselected::before {
	font-family: var(--font-awesome);
	margin-right: .5rem;
	font-size: 1.25rem;
	display: inline-block;
	vertical-align: middle;
}

.citem::before {
	content: '\f0c8';
}

.citemselected::before {
	content: '\f14a';
	color: var(--blue);
	font-weight: 700;
}

.citem:empty {
	display: none;
}

.citem:hover {}
.citemselected:hover {}

/* price slider 
------------------------------------------------------- */
/* should be a toggle in coms to turn this on or off - also could do with a class on it for better targeting purposes */
div[sectiontype="priceslider"] {
}

.longattrsection .items {
	overflow-x: hidden;
	-ms-overflow-x: scroll;
	margin-bottom: 1rem;
}

.attrsection {}

.filter .HeaderContent {
	padding: var(--spacing) 0;
	position: relative;
	cursor: pointer;
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 1rem;
	border-bottom: 1px solid var(--border-color)
}

.HeaderContent:after {
	content: '\f107';
	font-family: var(--font-awesome);
	font-size: 1rem;
}

.HeaderContent.collapsed:after {
	content: '\f106';
}

.HeaderContent h5 {
	font-weight:700;
	margin: 0;
	font-size: 1rem;
	padding: 0;
	position: relative;
	cursor: pointer;
}

.items {}

#divPriceRangeDisplay {
	text-align: center;
	padding: var(--spacing);
}

#sldiv {
	margin: 1em;
}

/* filter buttons
------------------------------------------------------- */
.fltrattrbtn, .resetfs {
	display: inline-block;
	vertical-align: middle;
	margin-right: .5rem;
	margin-bottom: .5rem;
	text-align: center;
	padding: var(--half-spacing) var(--spacing);
	border: 1px solid var(--border-color);
	border-radius: var(--border-radius);
	cursor: pointer;
}

#fstrigbtn {
	display: none;
}

.fstrigspn {
	display: block;
	vertical-align: middle;
	text-align: center;
	padding: var(--half-spacing) var(--spacing);
	border: 1px solid var(--border-color);
	border-radius: var(--border-radius);
	cursor: pointer;
	font-size: .825rem;
	font-family: var(--text-font);
	font-weight: var(--text-font-weight);
}

.fstrigspn:before {
	content: "\f1de";
	font-family: var(--font-awesome);
	display: inline-block;
	font-size: 1em;
	margin-right: .5rem;
}

/*as we currently write out TWO clear filter buttons*/

.resetfs+.resetfs, .fltrattrbtn+.resetfs {
	display: none;
}

.fltrattrtxt, .resetfs h5 {
	font-size: .825rem;
	font-family: var(--text-font);
	font-weight: var(--text-font-weight);
	margin: 0;
}

.fltrattrbtn {
	background-color: var(--light-grey);
	border-color: var(--light-grey);
}

.fltrattrtxt:after {
	content: "\0058";
	font-family: var(--font-awesome);
	display: inline-block;
	font-size: .725em;
	margin-left: .5rem;
}

/* -------------------------------------------------------------------------------------
=Deptsingle  
------------------------------------------------------------------------------------- */
.deptsingle {
	position: relative;
	border-radius: var(--border-radius);
	border: var(--border-width) solid var(--border-color);
}

/* -------------------------------------------------------------------------------------
=Subdepartment tree  
------------------------------------------------------------------------------------- */
.depttree {
	grid-column: 1/-1;
}

.depttree>.bt h3 {
	text-align:center;
	border-bottom:var(--border-width) solid var(--border-color);
	padding-bottom:.5em;
	margin-bottom:1em;
}

.depttree {
	display: block;
	margin:2em 0;
}

.depttree h4.tagline {
	font-size:1.5em;
	color:var(--pink);
	margin-bottom: 1rem;
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
}

.depttree ul {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-gap: 1rem;
}

.depttree li {
	display:block;
	position:relative;
	text-align:center;
}


.depttree li a.img img {
	width:100%;
	margin:0 !important;
	object-fit: cover;
}

.depttree li a.txt {
	font-family:var(--heading-font);
	text-align:center;
}


/***********************************************************************/
/* Side Department Nav                                                 */
/***********************************************************************/
.expdeptsshowbtn{
	border:1px solid var(--border-color);
	padding:1em;
	display:inline-block;
	display:none;
	cursor:pointer;
}

.expdeptshidebtn{
	display:none;
}

/***********************************************************************/
/* Side Department Nav                                             */
/***********************************************************************/
.expdepts{
	position:sticky;
	top:0;
	height: auto;
	z-index:99;
	max-height:100vh;
	overflow-y:auto;
}

#pl .expdepts::-webkit-scrollbar {
  width: 10px;
}

#pl .expdepts::-webkit-scrollbar-track {
  background: var(--off-white); 
}
 
/* Handle */
#pl .expdepts::-webkit-scrollbar-thumb {
  background: var(--grey); 
}

/* Handle on hover */
#pl .expdepts::-webkit-scrollbar-thumb:hover {
  background: var(--dark-grey); 
}


.deptlist2{
	border:1px solid var(--border-color);
	padding:1em;
	position:sticky;
	top:1px;
}

#pl.sticky .deptlist2{
    position: sticky;
}
.deptentryheader{
	position:relative;
}
.deptentryheader.exp a{}

.deptentry .deptentryheader a {
	padding:.25em 0;
	font-size:.875em;
	text-transform:capitalize;
}
 
 /* This should be the top level depts */ 
.deptlist2 li{
	list-style:none;
}

/* this should be the 2nd level expansions */ 
.deptlist2 .deptentry{}

.deptlist2 .deptentry .deptentryheader{
    /* margin-left:.5em; */
    display:grid;
    grid-template-columns: 1fr 18px;
    align-items:center;
}

.deptlist2 .deptentry .deptentryheader img{
	width:100% !important;
	height:auto !important;
	cursor: pointer;
}

/* this should be the 3rd level expansions */ 
.deptlist2 .deptentry .deptentry{
	/* background-color:#efefef; */
}
.deptlist2 .deptentry .deptentry .deptentryheader{
    margin-left:1em;
}

/* this should be the 4th level expansions */ 
.deptlist2 .deptentry .deptentry .deptentry{
	background-color:#fff;
}
.deptlist2 .deptentry .deptentry .deptentry .deptentryheader{
    margin-left:1.5em;
}

/* this should be the 5th? level expansions */ 
.deptlist2 .deptentry .deptentry .deptentry .deptentry{
}

.deptlist2 .deptentry .deptentry .deptentry .deptentry .deptentryheader{
    margin-left:2em;
}

.deptlist2 .deptentryheader.active{
	color:#0397d6;
}


/* -------------------------------------------------------------------------------------
=Brands  
------------------------------------------------------------------------------------- */
#pm .brands{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
}

#pm .brands .brnd{
	grid-column:unset;
	display:grid;
	grid-template-areas:"image"
	"title"
	"description";
	margin-bottom:1em;
}

#pm .brands .brnd img{
	grid-area:image;
}

#pm .brands .brnd h3{
	grid-area:title;
	text-align:center;
}

#pm .brands .brnd p{
		grid-area:description;
	text-align:center;
	
}

/* -------------------------------------------------------------------------------------
=FeaturedProducts 
------------------------------------------------------------------------------------- */
/* Base settings
------------------------------------------------------- */
#deptlist .fprdcont, #searchlist .fprdcont {}

.fprd {
	position: relative;
}



.fprd:hover {}

.fprd {
	display: grid;
	/* padding:.5em; */
	/* grid-row-gap: var(--half-spacing); */
	grid-template-columns:1fr auto 1fr;
	grid-template-rows: auto auto 3.5em auto 1fr auto;
	/*use grid template areas */
	grid-template-areas:
		"image image image"
		"client-ref client-ref client-ref"
		"title title title"
		"unit-price carton selling-price"
		"buy-pane buy-pane buy-pane"
		". . .";
	align-items:start;
}

.h3nostock{
	grid-column:1/-1;
}


/* Overrides for if in a carousel element
------------------------------------------------------- */
.slider-container .fprd {

}

.slider-container .fprd .prevprice,
.slider-container .fprd .saving {
	display:none;
}


/* image 
------------------------------------------------------- */
.fprd .fprdimg {
	grid-area: image;
	position: relative;
	display:grid;
	align-items: start;
	border:2px solid var(--light-grey)
}
.fprd .fprdimg img {
	margin: 0;
	object-fit:cover;
	width:100%;
}

.fprd .fprdimg a {}

/* image flags
------------------------------------------------------- */
.fprdimg .flag{
	position:absolute;
	pointer-events:none;
}

.fprdimg .flag.newin{
	right:0;
	top:0;
	max-width:6em;
}

.fprd .flag.eol{
	top:unset;
	bottom:0em;
	max-width:75%;
}

/* title
------------------------------------------------------- */
.fprd .fprdtitle, .fprd a.title {
	grid-area: title;
	text-align: left;
	color: var(--fprd-title-color);
	/* padding:.5em 0; */
	margin-bottom:1em;
}

.fprd .fprdtitle span,
.fprd a.title span{
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-family:var(--text-font);
	font-family:var(--heading-font);
}

#sr.listview .fprd .fprdtitle {
	height: auto;
	text-align: left;
}

.fprd .fprdtitle a.lnk, .fprd a.title {
	
	
}


/* strapline
------------------------------------------------------- */
.fprd .strap {
	grid-area:strap;
	display:none;
}

/* description - used for seo
------------------------------------------------------- */
.fprd .fprddescr {
	grid-area: description;
	display: none;
}

/* pricing structure
------------------------------------------------------- */
.fprd h6 {
	font-family:var(--text-font);
	margin: 0;
	padding: 0;
}

.fprd h6 span {
	font-size:small;
	display:block;
	color:var(--text-sub-heading-color);
}

.fprd label {
	margin: 0;
	padding: 0;
	font-size: small;
}

.fprd .rrp {
	grid-area:prev-price;;
}
.fprd .rrp label {}
.fprd .rrp h6 {}


.fprd .price {
	grid-area: selling-price;
	text-align:right;
}
.fprd .price label {
	display:block;
}

.fprd .price h6 {
	font-weight:600;
	font-size:1.5em;
}
.fprd .price h6 span {}

.fprd .trade {
	grid-area: selling-price;
	text-align:right;
}

.fprd .trade label {
		color: var(--text-sub-heading-color);
}

.fprd .trade h6 {
	font-weight:600;
	font-size:.825em;
}

.fprd .trade h6 span {
	display:none;
}

/*offer price */
.fprd .offer:not(.flag) {
	grid-area: selling-price;
}

.fprd .offer label {}

.fprd .offer h6 {}

.fprd .offer h6 span {}

/*prev price */
/* if rrp is showing then don't show prev-price as its redundant here */
.fprd .rrp + .prevprice{
	display:none;
}

.fprd .prevprice {
	grid-area: none;
	text-align:right;
}

.fprd .prevprice label {}
.fprd .prevprice h6 {
	text-decoration: line-through;
	text-decoration-color:var(--pink);
}

.fprd .prevprice h6 span{
	display:none;
}

/* saving ribbon */
.fprd .saving {

	--highlight-color:var(--pink);
	/*funky ribbon effect courtesy of freecodecamp */
	--f: .5em; /* control the folded part*/
	--r: .5em; /* control the ribbon shape */
	--t: .5em; /* the top offset */
	
	position: absolute;
	inset: var(--t) calc(-1*var(--f)) auto auto;
	padding: 0 10px var(--f) calc(10px + var(--r));
	clip-path: 
	polygon(0 0,100% 0,100% calc(100% - var(--f)),calc(100% - var(--f)) 100%,
	  calc(100% - var(--f)) calc(100% - var(--f)),0 calc(100% - var(--f)),
	  var(--r) calc(50% - var(--f)/2));
	background: var(--highlight-color);
	box-shadow: 0 calc(-1*var(--f)) 0 inset #0005;
}

.fprd .saving label {
	color:var(--white);
}
.fprd .saving h6 {
	color:var(--white);
}

/* pricebreaks 
------------------------------------------------------- */
.pricebreak {}

/* Unit specifics 
------------------------------------------------------- */
.fprd .unit {
	grid-area: unit-price;
	text-align:left;
}

.fprd .packsize {
	grid-area: packsize;
	text-align: left;
}

.fprd .packsize p {
	font-size: .725em;
}

.fprd .unit label {
	color: var(--text-sub-heading-color);
}

.fprd .unit h6 {
	font-family:var(--text-font);
	font-weight:normal;
	font-size:.825em;
}
.fprd .unit h6 span {
	display:none;
}

.fprd .qty {
	grid-area: carton;
	text-align:center;
}

.fprd .qty label {
	color: var(--text-sub-heading-color);
}

.fprd .qty h6 {
		font-family:var(--text-font);
	font-weight:normal;
	font-size:.825em;
}

/* clientref/model code
------------------------------------------------------- */
.fprd .clientref {
	grid-area: client-ref;
	/* padding:0 .5em; */
	text-align: left;
	font-family: var(--heading-font);
	text-transform: capitalize;
	/* align-self:start; */
}

.fprd .clientref span {}

.fprd .model,
.fprd .clientref {
	margin: 0;
	font-family:var(--text-font);
	color:var(--grey);
	font-size: small
}

.fprd .model span, .fprd .clientref span {
display:none;
}

.fprd .model {
	grid-area: model-number;
	text-align:right;
}

/* brand
------------------------------------------------------- */
.fprd .brand{
	grid-area:brand;
	font-size:.725em;
	color:var(--grey);
}
.fprd .brand span{
	display:none;
}

/* Product flags
------------------------------------------------------- */
/* piflags are product specific flags, like made in uk, our top pick etc */

.piflags {}

/*flags may exist either within the image or as a separate element, position accordingly */
.fprdimg .piflags {
	position: absolute;
	top: 0rem;
	right:0;
}

.fprd .piflags ul {
	margin: 0;
	padding: 0;
}

.piflags ul li {
	list-style: none;
	margin: 0;
	display:inline-block;
}

.piflags ul li img{
	max-width:40px;
}


/* quantity in basket - CAUTION not shown everywhere... 
------------------------------------------------------- */
.fprd .qtyInBskt {
	display: none;
}

/* more info and quickview button 
------------------------------------------------------ */
.fprdinfo {
	grid-area: fprdinfo;
	margin: 1rem;
}

/* quick view */
.fprd a.btn.qkvw {}
.fprd:hover a.qkvw {}
.fprdinfo a.qkvw:hover {}

/* Buy form 
------------------------------------------------------- */
.fprd form {
	grid-area: buy-pane;
	text-align: center;
	max-width:100%;
	/* this won't work with dropdown skus */
	display:grid;
	align-items:center;
	grid-template-areas:
		"label qty buy";
	/* grid-gap:1em; */
		margin-top:.5em;
	align-self:end;
}


.fprd form .stock{}

.fprd form .stock h6{
	font-size:.825em;
	color:var(--grey);
}

.fprd form select {}

.fprd form label {
	text-align:left;
	color:var(--text-sub-heading-color);
	font-size: 10px;
	grid-area:label;
}

.fprd button {}
.fprd button:hover,
.fprd button:active{
}

.fprd button.fpskuqtysub {}
.fprd button.fpskuqtyadd {}

.fprd input.fpskuqty {
	display:inline-block;
	vertical-align:middle;
	text-align: center;font-size:.725em;
	width:3em;
	grid-area:qty;
}

.fprd .submit {
	display:inline-block;
	vertical-align:middle;
	font-size:.725em;
	grid-area:buy;
}
/* sample request
------------------------------------------------------- */
.fprd form.smplreqform{
	grid-area:image;
	z-index:100;
	align-self:end;
	text-align:right;
}

.fprd form.smplreqform .submit{
	background-color:var(--pink);
	border:none;
}

/* Email when in stock
------------------------------------------------------- */
.fprd .ewis {
	grid-area: buy-pane;
	align-self:end;
	margin: 0;
	margin-top:.5em;

}

/* fprd adverts
------------------------------------------------------- */
.fprd.add {
	display: block;
	position: relative;
	padding:0;
}

.fprd.add .bnr {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fprd.add .bnr picture, .fprd.add .bnr img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fprd.add .toi {
	position: absolute;
	bottom: 0;
	color: var(--white);
	padding: var(--spacing);
}

.fprd.add p {
	color: var(--white);
}

/* -------------------------------------------------------------------------------------
=ProductPage 
------------------------------------------------------------------------------------- */
#pmid.page_buy {}

/*change of layout here */
#pmid.page_buy #pm.pmfull {
	width: 100%;
}

/* Product Panels 
------------------------------------------------------- */
#pi {
	margin: 0;
	padding: 0;
	padding-top:1em;
}

#pi .main {
	/*padding should be put in media queries */
	margin: 0 auto;
	position: relative;
	width: var(--site-max-width);
	display: grid;
	/* width set to assume 600px - use fr to scale
	calc by doing image size / (width - gap)*/
	
	grid-template-columns:58.651026392961876832844574780059fr 41.348973607038123167155425219941fr;
	grid-template-areas:
		"top top"
		"left right"
		"left ."
		"bottom bottom";
	grid-column-gap: 1rem;
}

#pi .main .top {
	position:relative;
	grid-area: top;


}

#pi .main .left {
	grid-area: left;
	display:grid;
}

.nonmem #pi .main .left {
}
.nonmem #pi .pibuy + .pibuy{
	grid-area:membersignin;
	border-bottom:0;
}

#pi .main .right {
	grid-area: right;
	display:grid;
	grid-template-areas:
		"product-title product-title"
		"client-ref barcode"
		"barcode-inner barcode-outer"
		"brand ."
		"product-description product-description"
		"product-buy-pane product-buy-pane"
		"product-links product-links"
		"product-tabbed-description product-tabbed-description";
	grid-template-columns:1fr 1fr;
}

#pi .main .bottom {
	grid-area: bottom;
	margin-top:4em;
}

/*same class used for a div outside of the main section */
#pi .main+.bottom {
	margin-top: 1rem;
	padding-top:1rem;

}

#pi .brandmanu h5,
#pi .brandmanu h6,
#pi .brandmanu p{
	font-family:var(--text-font);
	color:var(--text-color);
	font-size:small;
	font-weight:normal;
	margin:0;
	padding:0;
	display:inline-block;
	margin-right:var(--half-spacing)
}

#pi .brandmanu h5{
	font-weight:bold;
}

/* Model
------------------------------------------------------- */
#pi .brandmanu.model {
	grid-row:1;
	grid-column:1/-1;
	align-self:end;
	text-align:right;

	/*added to ensure the model number doesn't get crowded by a long title yet stays on the same
	line as the last line of the product title */
	margin-top:3em;
}

/* Brand
------------------------------------------------------- */
#pi .brandmanu.brand {
	grid-area:brand;
}

#pi .brandmanu.clientref h5,
#pi .brandmanu.clientref h6{
	font-family:var(--text-font);
	color:var(--text-color);
	font-size:small;
	font-weight:normal;
	margin:0;
	padding:0;
	display:inline-block;
	margin-right:var(--half-spacing)
}

#pi .brandmanu.clientref h5{
	font-weight:bold;
}


/* Clientref
------------------------------------------------------- */
#pi .brandmanu.clientref {
	grid-area: client-ref;
}

/* Clientref
------------------------------------------------------- */
#pi .brandmanu.manu {
	grid-area: manufacturer;
}



/* Barcode
------------------------------------------------------- */
#pi .brandmanu.gtin {
	grid-area: barcode;
	text-align: left;
}

/* Barcode Inner
------------------------------------------------------- */
#pi .brandmanu.inner {
	display:none;
}

/* Barcode Outer
------------------------------------------------------- */
#pi .brandmanu.outer {
	display:none;
}

/* Product Title
------------------------------------------------------- */
#pi .pititle {
	grid-area: product-title;
	border-top:0;
	border-bottom:0;
	color:var(--fprd-title-color);

}

#pi .pititle h2{
	font-size:2.5em;
	margin-bottom:0;
}

/* Strapline
------------------------------------------------------- */
h4.strap {
	grid-area: product-strapline;
	font-family:var(--text-font);
	font-weight:normal;
	font-size: 1.2em;
}

/* Gallery - now Swiffy
------------------------------------------------------- */
#pi .sticky {
	position:sticky;
	top:0;

}

#pi .gallery {

}
#pi .gallery #mainimages{
	cursor:pointer;
	/* border: var(--border-width) solid var(--border-color); */
}

#pi .gallery .slider-main {
	margin-bottom: 1rem;
}

#pi .gallery .slider-thumb {
	--swiffy-slider-item-count: 1;
	--swiffy-slider-item-ratio: 3/4;
	margin-bottom: 1rem;
}

#pi #mainimages .slider-nav {
	/* pointer-events: none; */
}

#pi .gallery .slider-main .slider-indicators {
	display: none;
}

#pi .gallery #galleryimages {
	/* display:none; */
	grid-area:thumbs;
	--swiffy-slider-item-count: 5;
	margin-top:2em;
}



#pi .gallery #galleryimages li img{
	/* aspect-ratio: 1/1; */
	cursor:pointer;
}

#pi .gallery #galleryimages .slider-indicators{
	display:none;
}

/*undo swiffy for this client */
#pi .gallery #galleryimages ul{/* display:block; */}

/*main gallery videos */
.youtubeplayercontainer>* {
	min-height: 20rem
}

.youtubeplayercontainer>* {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.youtubeplayercontainer>* {
	-o-object-fit: contain;
	object-fit: contain
}

#pi .gallery img {
	width: 100%;
	object-fit: cover;
	margin: auto 0 !important;
}

#pi .gallery h4 {
	display: none;
}

/*we don't want product flags showing here - should be controlled by a field in coms, we want the normal product flags like free shipping */
#pi .gallery .piflags {
	display: none;
}



/* Price Panel
------------------------------------------------------- */
.pricecomp{
	grid-area:product-price;
	color:var(--color4);

}
.pricecomp .price h6{
		font-size:1.5em;
}
.pricecomp .price label{
	display:none;
}

/* Buy Panel
------------------------------------------------------- */
#pi .pibuy {
	grid-area:product-buy-pane;
	/* margin-top:2em; */
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	/* grid-gap:1rem; */
	grid-template-areas:
		"unit-price carton trade-price"
		"stock stock stock"
		"buy-pane buy-pane buy-pane";
	align-items: start;
}

.pibuy label {
	display: block;
}

/* for some reasone we always show "price in..." */
.pibuy .title {
	display: none
}

#pi .pibuy h6 {
	font-family:var(--heading-font);
	font-size:1.5em;
	display: inline-block;
	padding: 0;
	margin-bottom: 0;
}

#pi .pibuy h6 span{
	font-family:var(--text-font);
	display:block;
	font-size:x-small
}

#pi .pibuy  label{}

/*rrp price */
/*for this client rrp is a lease price hack! */
#pi .pibuy .rrp {
	grid-area:lease;
}
#pi .pibuy .rrp h6{
	text-decoration:line-through;
	text-decoration-color:var(--blue);
}
#pi .pibuy .rrp label{}
#pi .pibuy .rrp span{} 



/*normal price */
#pi .pibuy .price {
	grid-area: selling-price;
}

/*offer price */
#pi .pibuy .offer {
	grid-area: offer-price;
}
#pi .pibuy .offer  h6{
	font-weight:600;
	font-size:2em;
}

#pi .pibuy .offer h6 span{
	font-weight:normal;
}

/*previous price (goes with offer) */
#pi .pibuy .prevprice {
	grid-area: prev-price;
}

#pi .pibuy .prevprice h6 {
	text-decoration: line-through;
	text-decoration-color:var(--pink);
}

#pi .pibuy .prevprice h6 span{
	display:none;
}

/*saving  info */
#pi .pibuy .saving {
	grid-area:saving;
	margin-left:.5rem;
}
#pi .pibuy .saving h6{}
#pi .pibuy .saving label{}
#pi .pibuy .saving span{} 


/*unit price */
#pi .pibuy .unit{
	grid-area:unit-price;
	text-align:center;
}

#pi .pibuy .unit h6{
	color:var(--grey);
}

#pi .pibuy .qty {
	grid-area:carton;
	text-align:center;
}
#pi .pibuy .qty h6{
	color:var(--grey);
}

/*trade price */
#pi .pibuy .trade {
	grid-area:trade-price;
	text-align:center;
}

#pi .pibuy .trade h6{
	font-size:2em;
}

#pi .pibuy .trade label{}

/* Messages */

/*basket cutoff message? should have a class!*/
#pi .pibuy p {
	grid-area:cutoff;
	font-size:.825em;
}

#pi .pibuy p#bspresponse {
	grid-area: bspresponse;
	padding:0;
}

#pi .pibuy h4 {}
#pi .pibuy h5 {}

#pi .pibuy p.p_stock {}


/* stock */
#pi .pibuy .stock {
	grid-area:stock;
	/*being written out when not actually in use!
	so don't add margin here*/
	list-style:none;
	text-align:center;
}

#pi .pibuy .stock li.in{
	font-size:.825em;
}

#pi .pibuy .stock li.in:before{
	content:'\f00c';
	font-family: "Font Awesome 5 Pro";
	margin-right: .5em;
	font-size: 1em;
	color:var(--info-color);

}


/*order cutoff timer? */
#pi .pibuy p.cutoff {
	color: var(--info-color);
}

#pi .pibuy p.cutoff::before {}

/* quantity in basket info */
#pi .pibuy .qtyInBskt {
	grid-area:quantity-in-basket;
	font-size:.825em;
	padding:1em 0;
}

/*dynamic price */
#pi .pibuy .dynprice {
	display:inline-block;
	vertical-align:middle;
	/* margin:0 .5em; */
}

#pi .pibuy p#dynpricejaq{
	display:inline-block;
	vertical-align:middle;
	font-family:var(--heading-font);
	font-size:2em;
	margin-bottom:0;
	margin-right:1em;
}

#pi .pibuy .ewis{
	grid-column:1/-1;
	text-align:right;
	
}

.jaqshadow{
	display:none!important;
}


#bspsubmit{
	grid-area:save-for-later;
	display:inline-block;
		margin:1rem 0;
	margin-right:auto;
	padding:var(--half-spacing);
	background-color:var(--alt-button-color);
	border-color:var(--alt-button-border-color);
	color:var(--alt-button-text-color);
}

#bspsubmit:hover{
	background-color:var(--alt-button-hover-color);
	border-color:var(--alt-button-border-color);
	color:var(--alt-button-hover-text-color);
}



/* Wishlisth
-------------------------------------------------------*/
#wishlist {
	grid-area: wishlist;
	margin: 0;
	align-self:start;
}

#wishlist label{
	display:inline;
	font-size:.825em;
}

#wishlist .chkbox{
	margin-right:.5em;
}

#wishlist .submit{
	background-color:var(--pink);
	border-color:var(--pink);
	grid-area:buy;
	font-size: .825em;
	font-weight: var(--button-font-weight);
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	outline: none;
	border:none;

	
}
/* Buy Form
-------------------------------------------------------*/
#buy_form {
	grid-area: buy-pane;
	margin: 1rem 0;
}

/* attributes/sku select */
#buy_form .attr{}
#buy_form .attr .attrlabel{
    display:none;
}
.attritem select{
	width:100%
}

#buy_form select,
#buy_form textarea{}
#buy_form select{
	max-width:100%;
	margin-bottom:1em;
}

#pi .pibuy .attrqty{
	text-align:center;
}

/* quantity input 
---------------------------*/
#pi .pibuy .attrqty .qtyinput{
	grid-area:qty;
	display:inline-block;
	margin-bottom:0;
}

/*increase/decrease buttons */
#pi .pibuy .attrqty .qtyinput  button{
	/*doesn't currently seem to be a way of turning these on or of in v5 or v6 */
	border: var(--border-width) solid var(--light-grey);
	display:inline-block;
	vertical-align:middle;
	font-weight:800;
	font-size: 1em;
	cursor:pointer;
	padding:1em;
	font-family:monospace;
}

#pi .pibuy .attrqty .qtyinput  button:hover{
	background-color:var(--light-grey);
}

/*hide quantity label*/
#pi .pibuy .attrqty .qtyinput label{
	max-width:100px;
	display:inline-block;
	vertical-align:middle;
	text-align:left;
	font-size:.825em;
	font-weight:600;
}
.attrqty .qtyinput #skuqty{
	display:inline-block;
	vertical-align:	middle;
}

.attrqty .qtyinput #skuqty{
	text-align:	center;
	padding:1em;
	width:auto;
	display:inline-block;
	vertical-align:	middle;
	text-align:center;
	border: var(--border-width) solid var(--light-grey);
	border-left:0;
	border-right:0;
}

#pi .pibuy .attrqty .submit#buy{
	grid-area:buy;
	padding:1em;
	text-align:center;

}







/* Sample request 
-------------------------------------------------------*/
#pi .pibuy #smplreq {
	grid-area: sample;
	display: inline-block;
	background-color:var(--pink);
	border:1px solid var(--pink);
	margin-left:1em;
	
}

/* message if no option selected*/
#pi .pibuy label#selectResponse {
	color: var(--error-color);
	grid-column: 1/-1;
	display: none;
}

/* Descriptions
-------------------------------------------------------*/
#pi .pidesc {
	grid-area: product-description;
	margin:1em 0;
}

/*duplicated product title auto written out in the description */

#pi .pidesc h2[itemprop="name"] {
	display:none
}


/* Extra Descriptions
-------------------------------------------------------*/
.pidescx{
	grid-area: product-extra-description;
	padding: 1.5em 0;
}


.pidescx ul{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	text-align:center;
}


.pidescx li{
	list-style:none;
	font-family:var(--heading-font);
	font-size:1.5em
}

.pidescx li:last-child{
	border:none;
}

.pidescx li span{
	margin-right:.5em;
	font-family:var(--text-font);
}


.pidescx  br{
	display:none;
}


/* Product leadtime
-------------------------------------------------------*/
#pi .pidesc.desp {
	grid-area: product-leadtime;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-areas: "icon text";
	grid-gap: var(--spacing);
	padding: 1rem;
	border: var(--border-width) solid var(--border-color);
	border-radius: var(--border-radius);
	margin-bottom: 1rem;
}

#pi .pidesc.desp span {
	display: none;
}

#pi .pidesc.desp h5 {
	grid-area: icon;
	display: none;
}

#pi .pidesc.desp p {
	grid-area: text;
	margin: 0;
	font-size: .825rem;
}

/* Product specific delivery info
-------------------------------------------------------*/
#pi .delivery {
	grid-area: product-delivery;
}

/* Bullets
-------------------------------------------------------*/
#pi .bullets {
	grid-area: product-bullets;
	font-size:1.2em;
	/* list-style-position:inside; */
	padding:0 1em;
	margin-bottom:1em;
}

/* Links
-------------------------------------------------------*/
#pi .pilinks {
	grid-area: product-links;
	padding:1em 0;
	/* font-size:.825em; */
}

#pi .pilinks li {
	display: block;
	margin: 0;
	padding: 0;
}

#pi .pilinks ul li.query a.lnk {
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
}

#pi .pilinks ul li.query a.lnk:before {
	font-family: var(--font-awesome);
	font-weight: var(--heading-font-weight);
	margin-right: .5em;
	font-size: 1em;
	display: inline-block;
	content: '\f059';
}

#pi .pilinks ul li.files a.lnk:before {
	font-family: var(--font-awesome);
	font-weight: var(--heading-font-weight);
	margin-right: .5em;
	font-size: 1em;
	display: inline-block;
	content: '\f1c1';
}

/* reviews widget 
------------------------------------------------------- */
.reviewsiosmallsummarypanel {
	text-align: left;
}

.reviewsiosmallsummarypanel .title {
	display: none;
}

.reviewsiosmallsummarypanel .stars {
	display: inline-block;
	margin-right: .5rem;
}

.reviewsiosmallsummarypanel .stars img {
	display: inline-block
}

.reviewsiosmallsummarypanel .ratingNumber {
	display: inline-block;
	margin-right: .5rem;
	color: var(--grey)
}

.reviewsiosmallsummarypanel .ratingNumber div {
	display: inline-block;
}

.reviewsiosmallsummarypanel .reviewCount {
	display: inline-block;
	margin-right: .5rem;
	font-size: .725rem;
}

/* reviews.io tab content 
-------------------------------------------------------*/
.reviewsio {}

.reviewsio div[itemprop="review"] {
	border-bottom: 1px solid var(--border-color);
	padding: 1rem 0;
}

.reviewsio .comment {
	margin-bottom: .5rem;
}

.reviewsio .customer {
	font-size: .825rem;
}

.reviewsio .date {
	color: var(--grey);
	font-size: .725rem;
}

.reviewsio div[itemprop="review"]:last-child {
	border-bottom: 0;
}

/* video - use new product gallery insteada!
-------------------------------------------------------*/
#pi .youtube {
	grid-area: product-video;
}

/* Flags (site flags like offer) - would be better if these were inside the gallery - they won't be sticky either unless moved
-------------------------------------------------------*/
#pi .flags {
	grid-area:flags;
}

#pi .flags .newin{
	position:absolute;
	right:0;
	top:0;
	max-width:150px;
}

#pi .flags .packsize img {
	display: inline-block;
	padding-right: .5rem;
	vertical-align: middle;
}

#pi .flags .packsize p {
	display: inline-block;
	padding: 0;
	margin: 0;
	vertical-align: middle;
	color: var(--text-heading-color);
}

/* Product flags
-------------------------------------------------------*/
#pi  .piflags {
	/* grid-area: product-piflags; */
}


/* Next Day Delivery Countdown
-------------------------------------------------------*/
#pi #ordercutofftime {
	grid-area:ordercutoff;
}

#pi #ordercutofftime img {
	grid-area: icon;
}

#pi #ordercutofftime .countdown {
	grid-area: text;
	font-size: .825rem;
}

#pi #ordercutofftime .countdown span {}

/* Product Files
-------------------------------------------------------*/
#pi .pifile {
	grid-area: product-files;
	text-align:center;
	padding-bottom:1.5em;
	
}

#pi .pifile li{
	list-style:none;
	display:inline-block;
	margin:.5em;
}

/* Product Departments
-------------------------------------------------------*/
#pi .alldepts:before{
	grid-column:1/-1;
	content:'View the whole department';
	display:block;
	margin:1em;
	text-align:center;
	font-family:var(--heading-font);
		color:var(--text-heading-color);
	font-size:1.25em;

}

#pi .alldepts {
	grid-area: product-departments;
}

#pi .alldepts a {
	display: inline-block;
	margin: var(--half-spacing);
	text-decoration-color:var(--text-decoration-color);
}

/* Product PDL Article - could do with a class otherwise it will break other article used in places like the tabbed description
-------------------------------------------------------*/
#pi .art {
	grid-area: product-article;
}

/* Tabbed Descriptions
-------------------------------------------------------*/
#pi .pi_tab, #pi #pi_wrapper {
	grid-area: product-tabbed-description;
	margin:1em 0;
}

#pi ul.pi_tabs {
	cursor: pointer;
	margin: 0;
	padding: 0;
}

#pi ul.pi_tabs li {
	list-style: none;
	display: inline-block;
	vertical-align:bottom;
	margin: 0;
	padding: 1em;
	/* margin-right: .5em; */
	border: var(--border-width) solid var(--border-color);
	border-radius: var(--border-radius);
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	border-bottom: 0;
	text-align: center;
}


#pi ul.pi_tabs li.selected {
	font-family:var(--heading-font);
	/* border: var(--border-width) solid var(--border-color); */
	border-bottom: 0px;
	background-color:var(--light-grey);
}

#pi ul.pi_tabs li:last-child {
		/* border-bottom: 0px; */
}

#pi .pi_tab_content {
	margin: auto;
	padding: 1rem;

	border: var(--border-width) solid var(--border-color);
	max-height:300px;
	overflow-y:scroll;
}

#pi .pi_tab_content ul{
	list-style-position:inside
}

/* accordion description (uses tabbed element)
------------------------------------------------------*/
#pi .pi_accordion{
	grid-area:product-tabbed-description;
}

#pi .pi_accordion .piflags ul{
	/* outline:1px red solid; */
	display:block;
	margin-left:0;
}

/* Associated Products
------------------------------------------------------*/
#pi .pass{
	width:var(--site-max-width);
	margin:auto;
	grid-area: product-recommended;
	margin-top: 1rem;
}

#pi .pass h3.header{
	font-size:1.5em;
	margin: 2rem 0;
	margin-bottom:2rem;
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
}


#pi .pass .fprd{
	/* border:0; */
	margin-bottom: 2rem;
	/* grid-template-rows:auto; */
	/* border: 2px var(--border-color) solid; */
}

#pi .pass .fprd form,
#pi .pass .fprd .brand,
#pi .pass .fprd label,
#pi .pass .fprd h6 span{
	display:none;
}
/* Recommended Products #pi .prec + .carousel{}
------------------------------------------------------*/
#pi .prec {
	width:var(--site-max-width);
	margin:auto;
	grid-area: product-recommended;
}


#pi .prec  h3{
	/* color:var(--white); */
	align-self:center;
	text-align:center;
	/* font-size:3em; */
	padding:0 1em;
	margin:0;
	color:var(--blue);
}

#pi .prec .carousel{
	grid-area:products;
}


/* Recent Products
------------------------------------------------------*/
 #pi .ritm{
	width:var(--site-max-width);
	margin:auto;
	grid-area: product-recommended;
}


 #pi .ritm  h3{
	/* color:var(--white); */
	align-self:center;
	text-align:center;
	/* font-size:3em; */
	padding:0 1em;
	margin:0;
	color:var(--blue);
	 text-transform:capitalize;
}

#pi .ritm .carousel{
	grid-area:products;
}




/* buytogether Products 
------------------------------------------------------*/
.buytogether{
	grid-area:buytogether;
}

.buytogether ul,
.buytogether li{
	list-style:none;
}

.buytogether li.header{
	text-align:center;
	padding:1rem 0;
	font-size:1.5em;
	font-family:var(--heading-font);
	color:var(--text-heading-color);
	border-top:1px var(--off-white) solid;
	border-bottom:1px var(--off-white) solid;
}


.boughtto{
	padding:1em;
	display:grid;
	grid-template-columns:80% 20% ;

}







/*this section holds the images of the products that will be bought together */
.boughtto li.imgs{
	text-align:center;
	grid-column:1/-1;
}

.boughtto li.imgs span{
	display:inline-block;
	vertical-align:middle;
}

.boughtto li.imgs span img{
	max-width:20vw;
}

.boughtto li.imgs span.plus1{
	font-size:2em;
	width:2em;
	/* margin:1em; */
}


.boughtto li.prods  {
	display:grid;
	grid-column:1;
	grid-template-columns: 1fr auto 5em;
	grid-template-areas:" title price checkbox";
	grid-gap:1em;
	margin-top:1em;
}

.boughtto li.prods:last-of-type{
	margin-bottom:0;
}

.boughtto li.prods .chkbox{
	grid-area:checkbox;
	text-align:right;
}

.boughtto li.prods .descr{
	grid-area:title;
	text-align:right;
}

.boughtto li.prods .price{
	grid-area:price;
}



.boughtto li.total  {
	margin-top:1em;
	grid-column:2;
	grid-row:2;
}

.boughtto li.btn  {
	grid-column:2;
	grid-row:3/5;
	align-self:end;
}



/* Related
------------------------------------------------------*/
#pi .prel {
	width:var(--site-max-width);
	margin:auto;
	grid-area: product-recommended;
	margin-top: 1rem;
}

#pi .prel h3.header{
	font-size:1.5em;
	color:var(--pink);
	margin: 2rem 0;
	margin-bottom:2rem;
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
}

#pi .prel h3.header:before,
#pi .prel h3.header:after{
    position: absolute;
    top: 51%;
    overflow: hidden;
    width: calc(50% - .5em);
    margin-left:.5em;
    height: 4px;
    content: '\a0';
    background-color:var(--pink);
}
#pi .prel h3.header:before,
#pi .prel h3.header:before{
	margin-left: -50%;
	text-align: right;
}

#pi .prel .fprd{
	margin-bottom:2rem;
}


/* -------------------------------------------------------------------------------------
=Super Attributes 
------------------------------------------------------------------------------------- */


.cls_superattrribute.hideAttr:not(.attributeTypeDimensions){
	visibility:hidden;
	display:block;
	height:0;
	opacity:0;
	padding:0 !important;
	transform: translateY(0);
	transition: all .1s ease;
}

.sacontainerpanel{}

.sacontainerpanel ul,
.sacontainerpanel li{
	list-style:none;

}


.sacontainerpanel .sa_ddl_content{
	padding:0 1em;
	margin-bottom:1em;
}



/* Defaults
------------------------------------------------------- */
/*validator messages */
.sa_validator {
	color:var(--error-color);
}

/*this needs a code review - be dealt with in a standard message way like add to basket popups etc */
/*currently displays if you can't make that blind - and is a different message to if you put in measurements outside of the limits, try using max width and drop of blind to demo*/
.cls_superattrribute #sa_pnl_product_not_found {
	display: none;
	z-index: 2000;
}

/*help icon */
.cls_superattrribute img[id^="help"] {
	cursor:pointer;
	/* width: 1em; */
}


/* attributeTypePrice_Matrix_Calculator 
------------------------------------------------------- */
.attributeTypePrice_Matrix_Calculator {
	/*required for the help icon position*/
	position:relative;
}

.attributeTypePrice_Matrix_Calculator #saten_pnl_show {}


.attributeTypePrice_Matrix_Calculator .att_container{
	margin-bottom:1rem;

	display:grid;
	align-items:center;
	grid-template-areas:"header header header"
		"attX attY calcprice";
	grid-gap:1em;
	align-items:center;

	grid-template-columns: auto auto auto;

}


.attributeTypePrice_Matrix_Calculator .att_header{
	grid-area:header;
	line-height:1;
	text-align:left;
	background-color:var(--pink);
	color:var(--white);
	padding:1em;
	/* margin-bottom:1em; */
}

.attributeTypePrice_Matrix_Calculator label{
	display:inline-block;
	font-size:1em;
}

/*should be the measure in cm/inch/mm control - currently not displaying as there are no choices yet we still may be writing it out*/
.attributeTypePrice_Matrix_Calculator .att_measure{
	grid-area:attmeasure;
	display:none;
}

.att_X{
	grid-area:attX;
	text-align:center;
	margin-left:1em;
}


.att_Y{
	grid-area:attY;
	text-align:center;
}



.att_X label,
.att_Y label{
	margin-right:.5em
}

.att_X input::-webkit-outer-spin-button,
.att_X input::-webkit-inner-spin-button,
.att_Y input::-webkit-outer-spin-button,
.att_Y input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

.att_X input[type=number],
.att_Y input[type=number]{
    -moz-appearance:textfield; /* Firefox */
}

.sa_error{
	color:var(--error-color);
	display:inline-block !important;
	vertical-align:top;
}




.attributeTypePrice_Matrix_Calculator .calc_price{
	grid-area:calcprice;
}

.attributeTypePrice_Matrix_Calculator .calc_price:before{
	font-family: var(--font-awesome);
	content: "\f1ec";
	font-weight:100;
	display: inline-block;
	vertical-align:middle;
	font-size: 2em;
	margin-right: .5rem;
}

.attributeTypePrice_Matrix_Calculator .calc_price .submit{
	display:inline-block;
	padding:.5em 1em;
	margin:0 1em;
	border-radius: var(--border-radius);
	text-align: center;
}
/*the widths on these are not nice - need making better !*/
.attributeTypePrice_Matrix_Calculator input.inputtext_short{
	max-width:10em;
	text-align:center;
	border: var(--border-width) solid var(--border-color);
}
.attributeTypePrice_Matrix_Calculator .calc_price .submit {}

/* attributeTypeDimensions 
***************************************************************/
.attributeTypeDimensions {
	position:relative;
}
.attributeTypeDimensions .attrContainer{
	display:grid;
	grid-template-columns:1fr 1fr;
	text-align:center;
}
.attributeTypeDimensions .sa_name{
	grid-column:1/-1;
	text-align:left;
	margin-bottom:1rem;
	font-weight:600;
}

.attributeTypeDimensions .width,
.attributeTypeDimensions .drop{
	display:grid;
	grid-column:1/-1;
	grid-template-columns:1fr 1fr 1fr;
	grid-gap:1rem;
}

.attributeTypeDimensions .width .sa_name,
.attributeTypeDimensions .drop .sa_name{
	display:block;
	margin:0;
	font-weight:normal;
}

.attributeTypeDimensions .width input,
.attributeTypeDimensions .drop input{
	width:100%;
}

.attributeTypeDimensions .width span,
.attributeTypeDimensions .drop span{
	display:none;
}

.cls_superattrribute.attributeTypeDimensions img[id^="help"] {}
.attributeTypeDimensions  .submit{
	grid-column:1/-1;
	display:inline-block;
	width:100%;
	padding: 1em;
	margin-bottom:1em;

	border-radius: var(--border-radius);
	text-align: center;
}


/* attributeTypeRadio_button
***************************************************************/
.attributeTypeRadio_button {}
.attributeTypeRadio_button .radioholder{}
.attributeTypeRadio_button .radioholder label{}

/* attributeTypeText_Box_Free_Text_Entry 
***************************************************************/
.attributeTypeText_Box_Free_Text_Entry {}

.attributeTypeText_Box_Free_Text_Entry .inputtext{
	max-width:100%;
		width:calc(100% - 3rem);
}

.attributeTypeText_Box_Free_Text_Entry .attrContainer > div:first-of-type{
	position:relative;
	display:grid;
	align-items:start;
	grid-template-columns:50% 50%;
	padding:.5rem 0;
}

/*attributeTypeDrop_down_list
***************************************************************/
.attributeTypeDrop_down_list {
	position:relative;
	display:grid;
	align-items:start;
	grid-template-columns:100%;
	text-align:left;
}
/*hack to do with validator text placeholder */
.attributeTypeDrop_down_list div{
	line-height:0;
}

.attributeTypeDrop_down_list div label{
	line-height:1;
}
/* end hack*/

.attributeTypeDrop_down_list .info.sa_name{
	line-height:1;
	text-align:left;
	background-color:var(--pink);
	color:var(--white);
	padding:1em;
	margin-bottom:1em;
}

.attributeTypeDrop_down_list select{
	width:50%;
}

/* whatever this is we don't want it! */
.sa_pnl_product_popup_image_show {}

/*attributeTypeSingle_Image_Upload 
***************************************************************/
.attributeTypeSingle_Image_Upload {
	position:relative;
}

.attributeTypeSingle_Image_Upload .attrContainer{
	position:relative;
	display:grid;
	align-items:start;
	grid-template-columns:50% 50%;
	grid-template-areas:"label image"
		"fileupload fileupload";
	padding:.5rem 0;
}
.attributeTypeSingle_Image_Upload .attrContainer label{
	grid-area:label;
}

/*delete image */
.attributeTypeSingle_Image_Upload .siup_triggerdel{
	position:absolute;
	bottom:1rem;
	right:1rem;
}
/*should be the file uploader*/
.attributeTypeSingle_Image_Upload input{
	grid-area:fileupload;
	padding:1rem;
}
.attributeTypeSingle_Image_Upload .progress {}
/*should be the uploaded image */
.cls_superattrribute.attributeTypeSingle_Image_Upload div[id^="siup"]{
	grid-area:image;
}

/* -------------------------------------------------------------------------------------
=Basket
------------------------------------------------------------------------------------- */
/*needs #pm as .bskt is used in the header */
#pm .bskt {
	display: grid;
	grid-template-columns: 6fr 3fr;
	grid-gap: 0;
	grid-column-gap: 2em;
	grid-template-areas: "breadcrumb breadcrumb"
		"header header"
		"lines totals"
		"lines voucher"
		"lines shipping"
		"lines buttons"
		"lines ."
		"suggestedprods suggestedprods"
		"deliveryterms deliveryterms"
		"art art"
		"faqs faqs"
		"prompane prompane";
	align-items: start;
	margin-bottom: 4rem;
}

#pm .bskt .spc{
	display:none;
}

/*this is a bit of a hack, all the prom contents should be in their own container ! */
#pm .bskt #a130678789{
	grid-area:deliveryterms;
}

#pm .bskt .carousel {
	grid-area:suggestedprods;
	max-width:90vw;
}

#pm .bskt #a130678790{
	grid-area:prompane;
}

#pm .bskt .accordion{
	grid-area:faqs;
}

/* if basket is empty and user is in it */
.bskt .empty {
	grid-area:header;
	text-align:center;
	margin:2em;
}
.bskt .empty .header {}
.bskt .empty .total {}

/* Checkout Breadcrumb
------------------------------------------------------- */
.chkcrumb {
	grid-area: breadcrumb;
}

/* Basket header
------------------------------------------------------- */
#pm .bskt .header {
	grid-area: header;
}

/*we don't want the image here, but it may be used for something else */
#pm .bskt .header .icon{
	display:none;
}

#pm .bskt .header .title {
	display: block;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	font-size: 1.5rem;
	margin-bottom: .5rem;
}

#pm .bskt .header .title span {
	font-size: 1rem;
	font-weight: normal;
	color: var(--grey);
}

/* Basket Lines
------------------------------------------------------- */
#pm .bskt .alllines {
	grid-area: lines;
}

#pm .bskt .line {
	padding-bottom: var(--spacing);
	margin-bottom: var(--spacing);
	align-items: start;
	display: grid;
	--image-width: 4rem;
	--description-width: 1fr;
	--qty-width: auto;
	--netprice-width: auto;
	--rem-width: auto;
	--total-width: 100px;
	grid-template-columns: var(--image-width) var(--description-width) var(--qty-width)  var(--total-width) var(--rem-width);
	grid-template-areas:
		"icon desc qty price  rem"
		"icon desc qty netprice  rem"
		"icon desc qty .  rem"
		"icon . . . .";
	/* border-bottom: 1px solid var(--border-color); */
	grid-column-gap: 1rem;
}

/* Image */
#pm .bskt .line .prodimg {
	grid-area: icon;
	align-self:start;
}

#pm .bskt .line .prodimg img {
	margin: 0 !important;;
}

/* Product Info - in list form */
#pm .bskt .line .prodinfo {
	grid-area: desc;
	margin: 0;
	padding: 0;
}

#pm .bskt .line .prodinfo .surcharge {
}

#pm .bskt .line .prodinfo li {
	list-style: none;
	font-size: .725rem;
	margin-left:.5em
}

#pm .bskt .line .prodinfo li img {
	margin: 0;
	max-width: 250px
}

#pm .bskt .line .prodinfo li.descr {
	margin-left: 0;
	font-size: initial;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	/* margin-bottom: var(--half-spacing); */
}

#pm .bskt .line .prodinfo li.lead {
	color: var(--info-color);
	font-weight: bolder;
}

#pm .bskt .line .prodinfo li.lead {
	color: var(--text-color);
	font-style: italic;
	font-weight: normal;
	margin: .5rem 0;
}

#pm .bskt .line .prodinfo li.lead span {
	display: inline-block;
	font-style: normal;
	padding: .25rem;
	margin-right: .5rem;
}

#pm .bskt .line .prodinfo li.lead span:before {
	font-family: var(--font-awesome);
	content: "\f00c";
	display: inline-block;
	font-size: 1em;
	margin-right: 1em;
}

/*product quantity */
#pm .bskt .lines .line .qty {
	grid-area: qty;
	/* align-self: center; */
}
#pm .bskt .lines .line .netprice {
	grid-area: netprice;
	font-size:.725em;
	text-align:right;
	/* margin-left:.5em; */
}



#pm .bskt .lines .line .qty form {
	line-height: 1;
}

#pm .bskt .lines .line .qty label{
	display:none;
}

#pm .bskt .lines .line .qty button {
	-webkit-appearance: none;
	/*need a way to disable these in COMS */
	display:none;
}

#pm .bskt .lines .line .qty button {
	-webkit-appearance: none;
	background-color:var(--off-white);
	color:var(--dark-grey);

	font-size: 16px;
	padding: var(--half-spacing) var(--half-spacing);
	width: 2em;
	border:1px var(--off-white) solid;
	cursor:pointer;
	display:inline-block;
	vertical-align:middle;
}


#pm .bskt .lines .line .qty button:hover,
#pm .bskt .lines .line .qty button:active{
	background-color:var(--pink);
	color:var(--white);
}

#pm .bskt .lines .line .qty button.skuqtybsktsub {
}

#pm .bskt .lines .line .qty button.skuqtybsktadd {
}

#pm .bskt .lines .line .qty input.inputtext {
	display:inline-block;
	vertical-align:middle;
	text-align: center;
	border-radius:var(--border-radius);
	text-align:center;
	font-size:1em;
	margin:0 .5em;
}

/* remove item */
#pm .bskt .line .rem {
	grid-area: rem;
	text-align: center;
	/* align-self: center; */
}

#pm .bskt .line .rem input,
#pm .bskt .line #update{
	font-family: var(--font-awesome);
	color: var(--grey);
	background-color: transparent;
	border: none;
	font-weight: 400;
}

/* if product is multi sku then show this in the same area as the quantity update */
#pm .bskt .lines .line .skuselect {
	grid-area: skuselect;
	align-self: end;
}

#pm .bskt .lines .line .skuselect select {
	margin: 0;
	font-size: small;
	width: auto;
}

/* remove item */
#pm .bskt .line .price {
	grid-area: price;
	text-align:right;
}

/* out of stock messages */
.oos {
	color: var(--error-color);
}



#pm .bskt  .gifttext{
	grid-area:gifttext;
	font-size:.725em;
	margin-left:.5em
}

#pm .bskt  .gifttext a{
	text-decoration:underline;
	padding:0 .5em
}

#pm .bskt  .giftwrap{
	grid-area:giftwrap;
	font-size:.725em;
		margin-left:.5em
}

#pm .bskt  .giftwrap a{
	text-decoration:underline;
	padding:0 .5em
}

.gtentry{
	grid-area:gtentry;
}

.gtentry li{
	display:block;
}

.gtentry .chars{
	font-size:.725em;
}

/* Basket Sample Lines
------------------------------------------------------- */
#pm .bskt .lines.sample {
	grid-area: samples;
}

/* Basket Subtotal
------------------------------------------------------- */
.prodsubtotal {
	/*why display this... we have this info in the totals area... */
	display: none;
	grid-area: basket-sub-total;
	text-align: right;
	font-size: 1.25em;
	margin-bottom: var(--spacing);
}

.prodsubtotal label {}

.prodsubtotal span {}

/* Delivery info
------------------------------------------------------- */
/* for free delivery messages */
#pm .bskt .header.freedel {
	grid-area: freedelivery;
	text-transform: none;
	font-size: 1em;
	padding: 0;
	display:none;
}

.header.delivery {
	/*doesn't exist but should be on the actual delivery header */
}

/* Shipping 
------------------------------------------------------- */
#bsktid .shipping {
	grid-area: shipping;
	background-color: var(--off-white);
	padding: 1rem;
	text-align: left;
}

#bsktid .shipping .header{
	display:none;
}

#bsktid .shipping .title{
	text-align:center;
}

#bsktid .shipping ul {
	margin: 0;
	padding: 0;
}

#bsktid .shipping li{
	list-style:none;
	margin-bottom:.5em;
}

#bsktid .shipping li.delivery p{
	text-align:center;
}

/*think these should be a header */
#bsktid .shipping li.delivery .store{
}

#bsktid .shipping li.delivery .store h4{
	display:inline;
	margin-left:1em;
}

#bsktid .shipping li.delivery .address{
}

#bsktid .shipping li.delivery .address h4{
	display:inline;
	margin-left:1em;
}

#bsktid .shipping ul li.ship {
	margin: 0;
	padding: 0;
	list-style: none;
	margin-bottom: var(--half-spacing);
	display: grid;
	grid-template-columns: 4em 1fr;
}

#bsktid .shipping ul li.ship input {
	margin: 0;
	padding: 0;
	margin-right: auto;
	font-size: 2em;
	-ms-transform: scale(1.5);
	/* IE 9 */
	-webkit-transform: scale(1.5);
	/* Chrome, Safari, Opera */
	transform: scale(1.5);
}

#bsktid .shipping ul li.ship label {
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 100px;
	font-weight: normal;
}

#bsktid .shipping ul li.ship input[type="radio"]:checked+label {
}

#bsktid .shipping ul li.ship label span {
	margin-left: var(--half-spacing);
	text-align: right;
}

#bsktid .shipping ul li.delivery.deliveryto form{
	display: grid;
	grid-template-columns: 1fr 100px;
	grid-template-areas: "title title"
		"postcode locate"
		"country country"
		"address options";
	margin-bottom:1em;
}


#bsktid .shipping ul li.delivery.deliveryto form span{
	grid-area:title;
	text-align:center;
		text-align:left;
	display:none;
}

#bsktid .shipping ul li.delivery.deliveryto form input.postcode{
	grid-area:postcode;
}
#bsktid .shipping ul li.delivery.deliveryto form input.submit{
	grid-area:locate;
}

#bsktid #countryid{
	grid-area:country;
}


#bsktid .shipping ul li.delivery.deliveryto form .ship_edit{
	grid-area:country;
	text-align:center;
}

/*if only one country we show the country as a span - a bit redundant so hidden */
#bsktid .shipping .delivery.deliveryto form span {}

#bsktid .shipping ul li.delivery.collectstore {
	display: grid;
	color:var(--text-color);
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "title title" "location location" "address options";
}

#bsktid .shipping ul li.delivery.collectstore label {
	grid-area: title;
}

#bsktid .shipping ul li.delivery.collectstore form {
	grid-area: location
}

#bsktid .shipping ul li.delivery.collectstore.info:before {
	display: none;
}

#bsktid .shipping ul li.delivery.collectstore p {
	padding: 0;
	margin: 0;
}

#bsktid .shipping ul li.delivery.collectstore .address {
	grid-area:address;
	margin-left: var(--spacing);
	text-align:left;
}

/*better code structure needed - is just a p if only one option is available*/
#bsktid .shipping ul li.delivery.collectstore #serviceid, 
#bsktid .shipping ul li.delivery.collectstore .address+p {
	grid-area: options;
	align-self:end;
}

/* Basket Totals
------------------------------------------------------- */
.bskttotals {

	/*if we could move the basket actions (payment buttons, vouchers, surcharge) into the same div as the basket totals 
	we could go sticky */
	background-color:var(--off-white);
	grid-area: totals;
	text-align: center;
	padding: var(--spacing);
	padding-bottom:0;
	display: grid;
	grid-template-columns:1fr;
}

.bskttotals .total {
	margin: 0 2rem;
	margin-top:1rem;
	font-size:1.5em;
	text-align:left;
	display: grid;
	grid-template-areas: "label total";
	font-family:var(--heading-font);
}

.bskttotals .total label {
	grid-area:label;
}

.bskttotals .total span {
	grid-area:total;
	margin-bottom: var(--half-spacing);
	text-align: right;
}

.bskttotals .subtotal {
	margin: 0 2rem;
	display: grid;
	grid-template-areas: "label total"
}

.bskttotals .subtotal label {
	display: block;
	grid-area: label;
	text-align: left;
}

.bskttotals .subtotal span {
	display: block;
	grid-area: total;
	text-align: right;
}

/* Vouchers
------------------------------------------------------- */
.vouchentryaccord {
	grid-area: voucher;
	background-color: var(--off-white);
	padding: 0 1rem;
	text-align: center;
}

.vouchentryaccord ul, .vouchentry ul {
	list-style: none;
}

.vouchentryaccord li, .vouchentry li {
	list-style: none;
}

.vouchentryaccord li.pane {
	display: none;
}

#pm .bskt .vouchentryaccord .header {
	grid-template-columns: 1fr;
	font-size: 1rem;
	border: none;
	border: 0;
	padding: 0;
	font-size: .825rem;
	text-decoration: underline;
	align-items:center;
	padding:1em;
}


#pm .bskt .vouchentryaccord .header  img{
	display:none;
}

#pm .bskt  .accordion .header.current {
	margin-bottom: 0;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	border-bottom:0;
}

.vouchentryaccord .header img {}

#pm .ul.accordion .vouchentryaccord .pane, #pm .bskt ul.accordion .pane {
	padding: 1em;
	padding-top:0;
	display: none;
	border-bottom-left-radius:var(--border-radius);
	border-bottom-right-radius:var(--border-radius);
	border-top:0;
}

#pm .bskt ul.accordion li.pane ul {
	margin: 0;
}

.vouchentry ul.vouch {
	margin: 0;
	padding: 0;
	display: grid;
	grid-row-gap: .5em;
	grid-gap:1em;
	grid-template-columns: 1fr 100px;
	grid-template-areas: "code submit"
}

.vouchentry .appliedpromovoucher {
	/* margin-top:1em; */
	padding: var(--half-spacing) var(--half-spacing);
	font-size: .725rem;;
}

.vouchentry .remove a {
	display: block;
	font-size: .725rem;
}

.remove input {
	width: 100%;
	display: block;
}

.vouchentry ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}

.vouchentry ul li.info {
	grid-area: title;
	/*due to duplicate title when voucher applied */
	display: none;
}

.vouchentry ul li.vouchentry {
	grid-area: code;
}

.vouchentry ul li.vouchentry input {
	width: 100%;
	font-size:.725em;
}

.vouchentry .submit {
	grid-area: submit;
	font-size:.725em;
}

/* Basket Payment Buttons
------------------------------------------------------- */
.bsktbuttons {
	grid-area: buttons;
	text-align: center;
	padding: var(--spacing);
	margin-bottom: 1rem;
}

.bsktbuttons a.btn,
.bsktbuttons a.btn:hover{
	border:none;
	display:block;
	margin-bottom:1em;
	background-color:var(--checkout-button);
}

#pm .sp_button{}

/*font awesome icons */
#pm .sp_button a.btn::before{
	font-family: var(--font-awesome);
	margin-right:var(--half-spacing)
}
/*Sagepay*/ 
#pm .sp_button.sagepay a.btn::before{
	content: '\f09d';
}

/*braintree*/ 
#pm .sp_button.braintree a.btn::before{
	content: '\f09d';
}

/*iwoca*/
#pm .sp_button.iwoca a.btn::before{
	content: '\f53a';
}

/*bacs*/
#pm .sp_button.invoice a.btn::before,
#pm .sp_button.bacs a.btn::before{
	content: '\f570';
	left: 0.825em;
}

/*lease */
#pm .sp_button a.btn.lease::before{
	content: '\f2b5';
}

/* continue shopping */
.bsktbuttons .cont a.btn {
	display: block;
	font-size: .825rem;
	border: var(--border-width) solid var(--border-color);
	background-color: transparent;
	color: var(--button-color);
}

.bsktbuttons .startcheckout {
	grid-area: pay;
	margin-bottom: .5em;
}

.bsktbuttons .startcheckout a{
	color:var(--white);
	background-color:var(--checkout-button);
	border:1px solid var(--checkout-button);
}

.bsktbuttons .startcheckout a:before {
	content: "\f023";
	font-family: var(--font-awesome);
	margin-right: 1rem;
}

.bsktbuttons .startcheckoutcollect {
	grid-area: collect;
	margin-bottom: .5em;
}

.bsktbuttons .startcheckout a.btn {
	display: block;
}

.bsktbuttons .clear {
	grid-area: empty;
}

.bsktbuttons .clear a.btn {
	display: block;
	margin-top: 1em;
}

.bsktbuttons .cont {
	grid-area: continue;
}


/*promo content on basket - awful layout - why is this a ul?*/
#pm ul.prompane {
	grid-area: prompane;
	list-style: none;
	grid-gap: 0;
	grid-column-gap: 4em;
	margin: 0;
}

#pm ul.prompane li i {
	grid-area: icon;
}

#pm ul.prompane li span {
	grid-area: text;
	font-size: .825rem
}

/* delivery messages*/
.stddelinfo {
	grid-area: standarddelivery;
}

.priordelinfo {
	grid-area: prioritydelivery;
}

.priordelinfo, .stddelinfo {
	display: grid;
	border-radius: var(--border-radius);
	background-color: var(--off-white);
	padding: var(--spacing);
	margin-bottom: 1rem;
	grid-template-areas: "icon message price" "icon details .";
	grid-template-columns: 4rem 1fr 5rem;
	grid-column-gap: 2rem;
}

.priordelinfo img, .stddelinfo img {
	grid-area: icon;
}

.priordelinfo h4, .stddelinfo h4 {
	grid-area: message;
	margin: 0;
}

.priordelinfo h5, .stddelinfo h5 {
	grid-area: details;
	margin: 0;
}

.priordelinfo p, .stddelinfo p {
	grid-area: price;
	margin: 0;
}

.ordertimer {
	font-size: .825rem;
}

#pm ul.prompane .returns {
	display: grid;
	grid-template-areas: "icon message ." "icon details . ";
	grid-template-columns: 4rem 1fr auto;
	grid-column-gap: 2rem;
	align-items: center;
}

#pm ul.prompane .returns img {
	grid-area: icon;
}

#pm ul.prompane .returns h4 {
	grid-area: message;
	margin: 0;
}

#pm ul.prompane .returns h5 {
	grid-area: details;
	margin: 0;
	font-family: var(--text-font);
	font-size: .825rem
}

/* =Lease Calculator
-------------------------------------------------------------------------------------*/
/* bit of a mess here - we have divs with the same id nested within each other */
.leasecalc{
	padding:1em;
	grid-column:1/-1;
} 

.leasecalc > .leasecalc{
	display:grid;
	grid-template-areas:"form table";
	grid-template-columns:auto 1fr;
}

/* the form */
.leasecalc > .leasecalc #lease_calc_form{
	grid-area:form;
	background-color:var(--light-grey);
	border: var(--border-width) solid var(--border-color);
	padding:1em;
}

/* why the amount field is in a div ? */
.leasecalc > .leasecalc #lease_calc_form > div{
	display:inline-block;
	vertical-align:middle;
}

.leasecalc > .leasecalc #lease_calc_form > div img{
	display:inline;
	vertical-align:top;
}

/* the table */
.leasecalc > .leasecalc table{
	grid-area:table;
}

.leasecalc > .leasecalc table .header{
	font-family:var(--heading-font);
	font-weight:var(--heading-font-weight);
	font-size:1.25em;
}


/* -------------------------------------------------------------------------------------
=Checkout Process
------------------------------------------------------------------------------------- */
#pt.checkouttop .ext {
	--breadcrumb-width: 1fr;
	--spacerwidth: calc((100% - var(--site-max-width)) / 2);
	grid-template-columns: var(--spacerwidth) 1fr var(--breadcrumb-width) var(--spacerwidth);
	grid-template-areas: ". logo breadcrumb .";
}

#pt.checkouttop .ext .pane {
	grid-area: breadcrumb;
	text-align: center;

}

#pt.checkouttop .ext .pane li {
	display: inline-block;
	margin: 0;
	margin-right: 1em;
	/* color:var(--white); */
}

#pt.checkouttop .ext .pane li:last-child {
	margin-right: 0em;
}

#pt.checkouttop .ext .pane li:before {
	font-family: var(--font-awesome);
	content: "\f054";
	display: inline-block;
	font-size: 1em;
	margin-right: 1em;
	color:var(--white);
}

#pt.checkouttop .ext .pane li:first-child:before {
	content: "";
	margin: 0;
	display: none;
}

.chksteps_prev, .chksteps_curr, .chksteps_next {
	text-transform: capitalize;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight)
}

.chksteps_prev {
	color: var(--grey)
}

.chksteps_curr {
	color: var(--text-color)
}

.chksteps_next {
	color: var(--grey)
}

/* Signin/guest pane
------------------------------------------------------- */
#pmid.page_checkoutsignin {
	/* margin-top:4em; */
}

.checkoutsignin .signin {
	margin: 5em auto;
	display: grid;
	align-items: start;
	grid-template-columns: 1fr;
	grid-gap: 4em;
	grid-template-areas: "signin" "guest ";
}

.page_checkoutsignin .form#psign {
	grid-area: signin;
	width: auto;
}

.page_checkoutsignin .form#pguest {
	grid-area: guest;
	width: auto;
}

.page_checkoutsignin .form label {
	display: block;
}

.page_checkoutsignin form input,
.page_checkoutsignin form select {
	width: calc(100% - 2em);
}

.page_checkoutsignin form img{
	display:inline-block;
	vertical-align:top;
}

.page_checkoutsignin .form#psign .submit,
.page_checkoutsignin .form#pguest .submit {
	grid-column:1/-1;
	width:auto;
	padding: var(--half-spacing) var(--spacing);
	margin: auto;
}

.exstregfield {
	display: none;
}

.page_delivery, .page_checkout, .page_checkoutsignin, .page_delivery, .page_shipping, .page_payment {}

/* Address (delivery and invoice) 
------------------------------------------------------- */
/*this isn't needed */
.page_delivery form[name="back"] {
	display: none !important;
}


.page_delivery h3,
.page_checkout h3 {
	font-size: 2em;
	font-weight: var(--heading-font-weight);
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
	margin: 2rem;
}
.page_delivery form, .page_checkout form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: 
		"address summary"
		"address continue"
		"address .";
	grid-column-gap: 1rem;
	padding-bottom:2rem;
}

.page_delivery form input,
.page_checkout form input,
.page_delivery form select,
.page_checkout form select,
.page_delivery form textarea,
.page_checkout form textarea
{
	width: calc(100% - 2em);
}

.page_delivery form img, .page_checkout form img{
	display:inline-block;
	vertical-align:top;
}

.page_delivery form .terms, .page_checkout form .terms {}

.page_delivery form .terms h5, .page_checkout form .terms h5 {
	display: grid;
	grid-template-areas: "checkbox text";
	grid-template-columns: 2rem 1fr;
	align-items: center;
	font-family: var(--text-font);
	font-weight: normal;
	font-size: .825rem
}

.page_delivery form .terms input, .page_checkout form .terms input {
	grid-area: checkbox;
	margin: 0;
	width:auto;
}

.page_delivery form .termsart, .page_checkout form .termsart {
	text-align: left;
	font-size: .825rem;
}

/*class needed on this ul!*/
.page_delivery form>ul, .page_checkout form>ul {
	grid-area: address;
}

.page_delivery .form li.info, .page_checkout .form li.info {
	display: none;
}

.page_delivery .form li label, .page_checkout .form li label {
	display: none;
}

.page_delivery .form li.reqmsg, .page_checkout .form li.reqmsg {
	color: var(--error-color);
}

/*display corrections for same invoice as delivery address checkbox */
.page_delivery .form .deladd .chkbox {
	width: auto;
	margin-right: 1rem;
}

.page_delivery .form .deladd label {
	display: inline-block;
}

/*if member this shows */
.page_delivery li.chkbox {}

.page_delivery li.chkbox input {
	width: auto;
	margin: 0;
	margin-right: .5rem;
	display: inline-block;
	vertical-align: middle;
}

.page_delivery .chkbox .help {
	display: inline-block;
	vertical-align: middle;
}

.page_delivery form[name="delAddress"] {}

.page_delivery .remove {
	font-size: .825rem;
	color: var(--error-color)
}

/* Postcode Lookup
------------------------------------------------------- */
.page_delivery .pclup,
.page_checkout .pclup,
.page_delivery .pclupdel,
.page_checkout .pclupdel {
	display:grid;
	width: calc(100% - 2em);
	grid-template-columns: 1fr  1fr auto;
	grid-gap:1em;
	grid-template-areas: "title title title"
	"postcode locate manual"
	"address address address";
	align-items:center;
}

#txtPostCodeLookup{
	grid-area:postcode;
}

#btnPostCodeLookup{
	grid-area:locate;
}

#pclupManualAddress{
	grid-area:manual;
	text-align:center;
}

span.or{
	grid-area:change;
	text-align:right;
	display:none;
}

#pnlMultiAddressOption,
#pnlMultiAddressOptionDel{
		grid-area:address;
}

#ddlMultiAddress,
#ddlMultiAddressDel{

	background-image:none;
	padding:.5em;
	width:100%;
}


.page_delivery .pclup input,
.page_checkout .pclup input,
.page_delivery .pclupdel input,
.page_checkout .pclupdel input {
	width: auto;
	display: block;
	margin:0;
}

/* Special Instructions
------------------------------------------------------- */

.form li.specialinst textarea{
	margin-bottom:0;
}

/* Order Fulfilment/shipping
------------------------------------------------------- */
.page_shipping {}

.page_shipping .pmfull {
	margin: 0 auto;
	position: relative;
	width: calc(var(--site-max-width) / 2);
}

.page_shipping h3 {
	font-size: 2em;
	font-weight: var(--heading-font-weight);
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
	margin: 2rem;
}

.page_shipping select {
	width: 100%;
}

.page_shipping .service, .page_shipping .shippinginfo, .page_shipping .deliveryinfo {
	margin: 1rem 0;
}

.page_shipping .subtotal {
	margin: 1rem 0;
	display: grid;
	grid-template-areas: "label value";
	grid-template-columns: 1fr auto
}

.page_shipping .subtotal label {
	grid-area: label;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight)
}

.page_shipping .subtotal span {
	grid-area: value;
	text-align: right;
}

.page_shipping .cont a {
	display: block;
}

/* Payment
------------------------------------------------------- */
.page_payment {}

.page_payment #pm {
	margin: 0 auto;
	position: relative;
	width: calc(var(--site-max-width) / 2);
	max-width:600px;
	/* 
	using grid layout just isn't feasible here with the way the content blocks are
	it breaks/works depending on the size of the basket
	
	display: grid; 
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"header header"
		"payment payment"
		"cont cont"
		"details details"
		"summary summary";*/
}


.page_payment #pm .bdcb{
	display:none;
}

.page_payment #pm .bt {
	grid-area: header;
	text-align: center;
	margin-bottom: 1rem
}

.page_payment h3 {
	font-size: 2em;
	font-weight: var(--heading-font-weight);
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
	margin: 2rem;
}

.termsagreemsg {
	margin-bottom: 1em;
	text-align: center;
}

.termsart {
	margin-bottom: 1em;
	text-align: center;
}

.termsmsgcontainer {}

.page_payment #pm form.payoptsform {
	grid-area: payment;
	/* display: grid; */
	grid-template-areas:
		"options"
		"pay"
}

.page_payment #pm form.payoptsform .payopts {
	/* max-width:510px; */
	margin:auto;
}

/*only used in testing - cash payment */
.pt_cash {
	grid-area: cash;
}

/* custom radio buttons with images  REQUIRES SPECIFIC CLIENT IMAGES TO BE UPLOADED TO COMS*/
.page_payment #pm .sp_button{
	margin-bottom:1em;
	position: relative;
}

.page_payment #pm .sp_button label,
.page_payment #pm .sp_button input {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	cursor: pointer;
}

.page_payment #pm  .sp_button  input[type="radio"] {
	opacity: 0;
	z-index: 100;
}

.page_payment #pm .sp_button  label {
	z-index: 90;
	line-height: 1.8em;
	color:transparent;
}

.page_payment #pm  .sp_button input{
	grid-area:check;
	display:block;
}


.page_payment #pm .sp_button.pt_debitcreditcard{
	grid-area:debit;
	background:url('https://www.gemimports.co.uk/gemimportsltd/i/art/card.webp') #fff no-repeat center;
	aspect-ratio:1200/117;
	background-size:contain;
}

.page_payment #pm .sp_button.pt_debitcreditcard  input[type="radio"]:checked + label {
	background:url('https://www.gemimports.co.uk/gemimportsltd/i/art/card_checked.webp') #fff no-repeat center;
	aspect-ratio:1200/117;
	background-size:contain;
}

.page_payment #pm  .sp_button.pt_invoice{
	grid-area:invoice;
	cursor: pointer;
	background:url('https://www.gemimports.co.uk/gemimportsltd/i/art/invoice.webp') #fff no-repeat center;
	aspect-ratio:1200/117;
	background-size:contain;
	margin-bottom:1em;
}

.page_payment #pm .sp_button.pt_invoice input[type="radio"]:checked + label {
	background:url('https://www.gemimports.co.uk/gemimportsltd/i/art/invoice_checked.webp') #fff no-repeat center;
	aspect-ratio:1200/117;
	background-size:contain;
}

.page_payment #pm .sp_button.pt_paypal{
	grid-area:debit;
	background:url('https://www.gemimports.co.uk/gemimportsltd/i/art/paypal.webp') #fff no-repeat center;
	aspect-ratio:1200/117;
	background-size:contain;
}

.page_payment #pm .sp_button.pt_paypal  input[type="radio"]:checked + label {
	background:url('https://www.gemimports.co.uk/gemimportsltd/i/art/paypal_checked.webp') #fff no-repeat center;
	aspect-ratio:1200/117;
	background-size:contain;
}


.page_payment #pm .bc form[action="/payment.aspx"] input[type="submit"]{
	grid-area:pay;
	display:block;
	margin-top:1em;
	background-color:var(--checkout-button);
	border:1px solid var(--checkout-button);
	color:var(--White);
	width:100%;
	padding:.5em 1em;
	text-transform:	capitalize;
	font-family:var(--headingFontAlt);
	font-weight:600;
	font-size:1.5em;
	margin-bottom:1em;
}

.page_payment #pm .bc form[action="/payment.aspx"] input[type="submit"] {
	grid-area: pay;
	display: block;
	margin-top: 1em;
	background-color: var(--checkout-button);
	border: 1px solid var(--checkout-button);
	color: var(--White);
	width: 100%;
	padding: .5em 1em;
	text-transform: capitalize;
	font-family: var(--headingFontAlt);
	font-weight: 700;
	font-size: 1.5em;
	margin-bottom: 1em;
}

/*end custom input stuff */

/*payment article */
.page_payment #pm .art {
	grid-area: header;
}

.page_payment #pm .art ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.page_payment #pm .art li {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-areas: "icon text";
	grid-gap: var(--spacing);
	padding: 1rem;
	border: var(--border-width) solid var(--border-color);
	border-radius: var(--border-radius);
	margin-bottom: 1rem;
}

.page_payment #pm .art li:last-child {
	margin-bottom: 0;
}

.page_payment #pm .art li i {
	grid-area: icon;
	color: var(--navy)
}

.page_payment #pm .art li span {
	grid-area: text;
	font-size: .825rem
}

.payoptentry, #psagepay {
	grid-area: details;
}

.page_payment #pm form.payoptsform .submitcontainer {
	grid-area: pay;
	text-align: center;
}

.page_payment input[type="submit"] {
	display: block;
	padding: 1rem 0;
	width: 100%;
}

.confirmorder {
	grid-area: details;
}

/* Basket Summary
------------------------------------------------------- */
.bsktsum {
	grid-area: summary;
	display:grid;
	grid-template-columns:1fr;
	grid-template-areas:"title"
	"totals"
	"summary";
}

.bsktsum h4 {
	display:none;
}

/*we only want the header on the payment page*/
.page_payment .bsktsum h4 {
	grid-area:title;
	text-align:center;
	margin:.5em;
	display:block;
}

/*but we don't want the basket lines summary on the payment page*/
.page_payment .bsktsum .lines {
	display:none;
}

/*basket lines 
--------------------------*/
.bsktsum .lines {
	grid-area:summary;
	background-color:var(--off-white);
	padding:1em;
	border-radius:var(--border-radius);
	margin-bottom:1em;
}

.bsktsum .lines .line {
	align-items: start;
	display: grid;
	grid-template-columns: 32px 1fr 16px auto;
	grid-template-areas:
		"thumb desc qty price"
		"thumb . . .";
	grid-column-gap: 1rem;
	border-bottom:1px solid var(--border-color);
	padding-bottom:.5em;
	margin-bottom:1em;
}

.bsktsum .lines .line:last-child{
	border-bottom:none;
}

.bsktsum .lines .line .unitprice {
	display: none;
}

.bsktsum .lines .thumb {
	grid-area: thumb;
	list-style: none;
}

.bsktsum .lines .thumb img{
	margin:0 !important;
}

/* Product Info - in list form */
.bsktsum .lines .prodinfo {
	grid-area: desc;
	list-style: none;
}

.bsktsum .lines li {
	font-size: .725rem;
	margin-left: .5rem;
}

.bsktsum .lines li.descr {
	font-size: .825rem;
	font-family: var(--heading-font);
	font-weight:500;
	margin-left: 0;
}

.bsktsum .lines li.flags {}

.bsktsum .lines li.flags img {
	margin: 0;
	max-width: 100%;
}

.bsktsum .lines .qty {
	grid-area: qty;
	font-size:.825em;
}

.bsktsum .lines .qty label {
	display: none;
}

.bsktsum .lines .price {
	grid-area: price;
	font-size:.825em;
	text-align: right;
}

.bsktsum .totals {
	grid-area:totals;
	padding:0;
	border-radius:var(--border-radius);
	margin-bottom:1em;
}

.bsktsum .totals .subtotal {
	display: grid;
	grid-template-areas:"label value";
	grid-template-columns:1fr minmax(100px,1fr);
	grid-gap:.5em;
}

.bsktsum .totals label{
	grid-area:label;
}

.bsktsum .totals span{
	grid-area:value;
	text-align:right;
}

.bsktsum .totals .subtotal:last-child {
	font-family:var(--heading-font);
	text-align:left;
	font-size:2em;
}

.bsktsum .totals .subtotal:last-child label {
	display:inline-block;
	margin-right:.5em;
	font-family:var(--text-font);
}

.bsktsum .totals .subtotal:last-child span {
}

.ordertotal{}

/* Continue Checkout Process
------------------------------------------------------- */
.page_delivery .contbtn,
.page_checkout .contbtn {
	grid-area:continue;
}
.page_delivery .contbtn input,
.page_checkout .contbtn input{
	width:100%;
	background-color:var(--checkout-button);
	border-color:var(--checkout-button);
}

.forinvoice {}
.page_delivery .forinvoice .chkbox label {}


/* -------------------------------------------------------------------------------------
=MyAccount
------------------------------------------------------------------------------------- */
/* is this the sign in page form */
.form.myaccount#psign {}
.page_useraccount{}

.page_useraccount #pl,
.page_orderinfo #pl,
.page_register #pl{
	/*display:none;*/
}


/* account icons
------------------------------------------------------- */

.page_useraccount #pm li.icon{
	display:inline-block;
	margin-right:1em;
}

.page_useraccount #pm li.icon a.img{
    display:block;
    text-align:center;
    border:1px solid var(--border-color);
}

.page_useraccount #pm li.icon a.lnk{
	display:block;
    text-align:center;
    margin:.5em auto;
}


.page_useraccount #pm li.icon a.img img{
	display:block;
	margin:auto;
	   
}

.page_useraccount #pm h4 {
	font-size:1.5em;
	color:var(--text-color);
	font-family:var(--heading-font);
	margin: 2rem 0;
	margin-bottom:2rem;
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
}

.page_useraccount #pm ul.orders,
.page_useraccount #pm ul.contact,
.page_useraccount #pm ul.details{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	text-align:left;
}

.page_useraccount #pm ul.orders img,
.page_useraccount #pm ul.contact img,
.page_useraccount #pm ul.details img{
	max-width:100%;
	height:auto;
}



/* Account messages
------------------------------------------------------- */
.acctmsg h3{
	text-align:center;
}

/* account menu panel
------------------------------------------------------- */
	
#pmam + .pmfull{
	width: calc(var(--site-max-width) - 2rem);
}

/* this shows on other account pages - is no longer needed with the menu button*/
a.myacct{
	/* display:none; */
}

/* show/hide menu button */
#mamtrigbtn {
	vertical-align: middle;
	text-align: center;
	padding: var(--half-spacing) var(--spacing);
	border: var(--border-width) solid var(--border-color);
	border-radius: var(--border-radius);
	cursor: pointer;
	font-size: .825rem;
	font-family: var(--text-font);
	font-weight: var(--text-font-weight);
	display:inline-block;
}

#mamtrigbtn span{
	display:block;
}

#mamtrigbtn span:before {
	content: "\f7f3";
	font-family: var(--font-awesome);
	display: inline-block;
	font-size: 1em;
	margin-right: .5rem;
}
	
#pmam .myacctmenu{
	height: 100%;
	width: 50%; /* 0 width - change this with JavaScript */
	max-width:300px;
	position: fixed;
	z-index: 10001; 
	top: 0; 
	left: 0;
	background-color: var(--popout-color);
	overflow-x: hidden; /* Disable horizontal scroll */
	transition: var(--transition);
	box-shadow: var(--box-shadow);
	padding:1rem;
	display:none;
}

#pmam .myacctmenu.showmyacctmenu{
	display:block;
}

#pmam li{
	list-style:none;
	margin-bottom:.5rem;
}

/*how many times am I going to add this back in... */
/*we don't want the icons here! */
#pmam li a.img{
	display:none;
}


.fsclsdiv .fsclsspn{
	display:inline-block;
}

/* close member panel button */
.mamclsdiv {
	text-align:right;
}

.mamclsdiv .mamclsspn{
	display:inline-block;
	border:1px solid var(--off-white);
	color:var(--grey);
	background-color:var(--off-white);
	border-radius:50%;
	font-family:monospace;
	padding:.125rem;
	margin:0rem;
	width:1rem;
	height:1rem;
	line-height:1;
	text-align:center;
	cursor:pointer;
	display:inline-block;
}

/* account recent items
------------------------------------------------------- */
.page_useraccount .ritm{
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-column-gap: var(--grid-spacing-horizontal);
	grid-row-gap: var(--grid-spacing-vertical);
	position: relative;
	margin: 1em 0;
}

.page_useraccount .ritm h3.header{
	grid-column:1/-1;
	text-align:center;
	font-size:2.5em;
}

/* account articles
------------------------------------------------------- */
.page_useraccount .arts{
	grid-area:memberarts;
}

/* account 
------------------------------------------------------- */
.page_useraccount .carousel.prod{
	grid-area:memberarts;
}

/* page_orderinfo
------------------------------------------------------- */
.page_orderinfo{}

.page_orderinfo ul.order,
.page_orderinfo ul.order span,
.page_orderinfo ul.order label{
	display:block;
}

.page_orderinfo ul.order li{
	list-style:none;
	margin-bottom:1em;
}


/* member orders view 
------------------------------------------------------- */
.member-orders{
	margin:1em 0
}

/* Wishlists 
------------------------------------------------------- */
.wishlist{}

/* -------------------------------------------------------------------------------------
=ConfirmationPage 
------------------------------------------------------------------------------------- */
.page_confirmation {}
.page_confirmation li {
	list-style: none;
}

.page_confirmation .header {
	font-size: 1.5em;
}

.page_confirmation .subhead {
	font-size: 1.25em;
	margin-bottom: 1rem;
}

.page_confirmation .header {
	display: block;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
	margin-bottom: 2rem;
}

.page_confirmation .subhead {
	display: block;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
	margin-bottom: 2rem;
}

.page_confirmation .info {
	text-align: center;
}

.page_confirmation .info li {
	margin-bottom: 1rem;
}

.page_confirmation .info li.subhead:before, .page_confirmation .info li.subhead:after {
	content: '';
	display: none;
}

/* Basket Line items
------------------------------------------------------- */
.page_confirmation .conf .order {}
.page_confirmation .conf .order .line {
	display: grid;
	grid-gap: .5em;
	grid-template-columns: 64px 1fr auto 100px;
	grid-template-areas: "icon desc qty price";
	padding: 1em;
	align-self: center;
	align-items: start;
}

/* Image */
.page_confirmation .conf .order .line img {
	margin:0 !important;
}

/* Product title*/
.page_confirmation .conf .order .line .descr {
	align-self: start;
	font-size: 1rem;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
}

.page_confirmation .conf .order .line .price {
	text-align: right;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	align-self: start;
}

/* Basket Subtotal
------------------------------------------------------- */
.page_confirmation .conf .order .subtotal {
	padding: 1em;
	border-top: 1px var(--border-color) solid;
	text-align: right;
}

.page_confirmation .conf .order .subtotal label {
	margin-right: 1em;
}

.page_confirmation .conf .order .subtotal span {
	font-size: 1.2em;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
}

.page_confirmation .conf .order .address {
	text-align: center;
	margin-bottom: 4rem;
}

/* Post order customer registration panel
------------------------------------------------------- */
.page_confirmation .conf .ordreg {
	padding: 1em;
	margin: 1em 0;
}

.page_confirmation .conf .ordreg input {
	margin: .5em 0;
}

.page_confirmation .conf .ordreg .info {
	margin: .5em 0;
}

.page_confirmation .conf .ordreg .help {
	font-size: .725em;
	padding: 1em 0
}

.success .form li {}

/* -------------------------------------------------------------------------------------
=Sitemap 
------------------------------------------------------------------------------------- */
#pm .smap ul {
	list-style-position: inside;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

#pm .smap ul li {}

/* First Level */
#pm .smap ul li {}
#pm .smap ul li a {
	font-weight: var(--heading-font-weight);
	font-size: 1.2em;
}

/* Second Level */
#pm .smap ul li ul {
	grid-template-columns: 1fr;
}

#pm .smap ul li ul li {
	width: 100%;
}

#pm .smap ul li ul li a {
	font-weight: normal;
	font-size: 1em;
}

/* Third Level */
#pm .smap ul li ul li ul li a {
	font-weight: normal;
}


/* -------------------------------------------------------------------------------------
=Client Specific Stylings 
------------------------------------------------------------------------------------- */



/* Custom CSS 
------------------------------------------------------- */
#site.home #pm .art.cta{
	grid-column:span 3;
	margin: 0;
	vertical-align:top;
	text-align:center;
	display:grid;
	grid-template-areas:
		"image"
		"text";
	grid-gap:1em;
}

#site.home #pm .art.cta h4{
	margin:1rem 0;
}

#site.home #pm .art.cta p{
	font-size:.825em;
	color:var(--text-sub-heading-color)
}

#site.home #pm .art.cta p a{
	color:var(--text-color);
}



.blockHeading{
	text-align:center;
}

.blockHeading h3
{
	text-transform:uppercase;
	margin: 2rem 0;
}

#site.home #pm .art#a123666432{
	margin-bottom:2em;
}

#site.home #pm .art#a123666432 .artp {
	grid-column:1/-1;
	display:grid;
	grid-template-columns:40% 60%;
	grid-template-areas:"video text";
	grid-gap:1em;
	align-items:center;
	text-align:center;
}

.customVideo{
	display:none;
}

.customVideo2{
	grid-area:video;
	display:block !important;
}

.customVideo2 {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
	padding-top:100%;
}

/* Then style the iframe to fit in the container div with full height and width */
.customVideo2 iframe {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height:100%;
}

.customContent{
	grid-area:text;
}

.customContent h2{
	color:var(--blue);
		margin:2em 0;
}

.customContent p{
	line-height:3;
}
/* ------------------------------------------------------------------------------------
	SCREEN - v6 nav 2024
	Filename : nav.css
	Last Updated : 28. 11. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */

:root{
	--menu-line-height:50px;
}

picture,
picture img{
	display:block;
}

/* menu toggle - hidden by default, shows on mobile/smaller viewport
------------------------------------------------------- */
.home-hamburger {
	grid-area: nav-start;
	display: none;
	z-index: 1000;
}

.home-hamburger .visible-xs {
	visibility: hidden;
}

/*wrapper 
------------------------------------------------------- */
.nav-wrapper *,
.nav-wrapper *:before,
.nav-wrapper *:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.nav-wrapper {
	grid-area:nav;
	position: relative;
	width: 100%;
	min-height: var(--navbar-height);
	margin: 0 auto;
	background-color:var(--navbar-color);
}

.nav-wrapper ul,
.nav-wrapper li{
	margin:0;
	padding:0;
	list-style: none;
}

/* -------------------------------------------------------------------------------------
=Top Nav
------------------------------------------------------------------------------------- */

.nav-wrapper .nav {
	margin: 0 auto;
	padding: 0;
	list-style: none;
	position: relative;
	/*used to stop the gaps with inline block stuff
	font-size:0;*/
	width: 100%;
	max-width: var(--menu-max-width);
	text-align:center;
	color:var(--navbar-dropdown-text-color);
}

ul.nav>li {
	display:inline-block;
}

/* top nav links
------------------------------------------------------- */
ul.nav .l0>a,
ul.nav .l1>a{
	display: block;
	line-height:var(--menu-line-height);
	padding: 0 calc(1em + 10px) 0 .5em;
	color: var(--navbar-heading-color);
	font-family:var(--navbar-heading-font);
	font-size:var(--navbar-heading-font-size);
	text-decoration: none;
	
	font-family:var(--text-font);
}

ul.nav>li>a:only-child {
	padding: 0 1em 0 1em;
}

@media(min-width:922px) {
	ul.nav>li>a:hover,
	ul.nav>li:hover>a {
		background: var(--navbar-active-color);
		color:var(--navbar-active-text-color);
	}
}
ul.nav>li.active-menu-item>a,
ul.nav>li.first-menu-item>a {
	/*background: var(--navbar-active-color);
	color:var(--navbar-active-text-color);*/
	font-weight:600;
}

ul.nav>li>a .fa {
	position: relative;
	width: 24px;
}

ul.nav>li>a>img {
	max-width: 16px;
	display: block;
}

/* Classic Dropdown
-------------------------------------------------------------------------------------------------------------- */

/* dropdown icons
------------------------------------------------------- */
.nav .deptlink{
	display:grid;
}


.nav .classic .deptlink{
	display:grid;
	grid-template-areas:
		"image link popout";
	grid-template-columns:3em 1fr 2em;
	align-items:center;
}

.nav .classic .deptlink a.img{
	grid-area:image;
	padding:.5em;
}

.nav .classic .deptlink a.txt{
	grid-area:link;
	display:block;
	padding:.5em;
	font-family:var(--heading-font);
	/* color:var(--navbar-dropdown-text-color); */
}

/* css arrows if has child item */
.deptlink:after{
	font-family: var(--font-awesome);
	text-decoration: none;
	font-size: 16px;
	padding: 0;
	content: '\f105';
	grid-area:popout;
	margin:auto;
	text-align:center;
	/* outline:1px red solid; */
}

.deptlink:only-child:after,
.l3 .deptlink:after{
	content: "";
}

ul.nav>li.classic {
	display:inline-block;
	position:relative;
}

/* 2nd Level
------------------------------------------------------- */
ul.nav>li>ul.l2,
ul.nav>li>.menu-drop-down{
	position: absolute;
	width: var(--navbar-dropdown-width);
	z-index:1001;
	text-align:left;
	background: var(--navbar-dropdown-color);
	-webkit-box-shadow: var(--box-shadow);
	-moz-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

ul.nav>li>ul.l2 li:hover {
	background: var(--navbar-active-color);
	color:var(--navbar-active-text-color);
}



/* 3rd Level
------------------------------------------------------- */

ul.nav>li>ul>li>ul.l3{
	position: absolute;
	width: var(--navbar-dropdown-width);
	z-index:1001;
	text-align:left;
	background: var(--navbar-dropdown-color);
	-webkit-box-shadow: var(--box-shadow);
	-moz-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
	color:var(--navbar-dropdown-text-color);
	left: var(--navbar-dropdown-width);
	top: 0;
}


/* 4th Level
------------------------------------------------------- */
ul.nav>li>ul>li>ul>li>ul.l4,
ul.nav>li>ul>li>ul>li>ul.l5{
	display:none;
}

/* this class should only be applied to top level menu items if their sub menu flows outside of the viewport,
used for dropdowns that are close to the right edge - this change should align the right edge of the dropdown to the right edge of the screen
removing horizontal scroll
*/

.over .l2{
	/* outline:1px red solid; */
	right:0;
}
ul.nav>li.over>ul>li>ul.l3,
ul.nav>li.popl>ul>li>ul.l3{
	left: auto;
	right: var(--navbar-dropdown-width);
		-webkit-box-shadow: var(--box-shadow-alt);
	-moz-box-shadow: var(--box-shadow-alt);
	box-shadow: var(--box-shadow-alt);
}


/* -------------------------------------------------------------------------------------
=Mega-menu / Mega-menu-classic 
------------------------------------------------------------------------------------- */

/* Mega Menus */

ul.nav>li.mega-menu-classic>div,
ul.nav>li.mega-menu>div {
	position: absolute;
	z-index:1001;
	width: var(--menu-max-width);
	height: auto;
	top: var(--navbar-height);
	left: 0;
	background: var(--navbar-dropdown-color);
	overflow: hidden;
	-webkit-box-shadow: var(--box-shadow);
	-moz-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

/* Mega Menu - Clasic */
.mega-menu-classic{}

.mega-menu-classic .menu-grid > .menu-row ul{
	display:grid;
	grid-template-columns:repeat(9,1fr);
	grid-gap:1rem;
	margin-bottom:1rem;
}

.nav .mega-menu-classic .deptlink{
	display:grid;
	grid-template-areas:
		"image"
		"link";
	grid-template-columns:1fr;
	position:relative;
}

.nav .mega-menu-classic .deptlink a.img{
	grid-area:image;
	position:relative;
}

.nav .mega-menu-classic .deptlink a.img img{
	width:100%;
		outline: 2px solid var(--white);
	outline-offset: -1em;
}

.nav .mega-menu-classic .deptlink a.txt{
	grid-area:image;
    text-align:right;
    font-family: var(--heading-font);
    font-size: 1em;
    background-color: var(--yellow);
    padding: .25rem .5rem;
    color: var(--white);
	align-self:end;
	z-index:1;
	display:inline-block;
margin-left:auto;
}

.mega-menu-classic .deptlink:after{
	content: "";
	display:none;
}

/* CONTENT GRID */
div.menu-grid,
div.menu-grid-lined {
	position: relative;
	width: 100%;
	padding: 0;
	margin: 0;
}

div.menu-grid>div.menu-row {
	position: relative;
	padding:var(--half-spacing);
	height:auto;
}

/*  Content Related */
ul.nav>li.mega-menu-classic>div ul{
	margin: 0;
	margin-top: 10px;
}

/* don't show l2;s */
.mega-menu-classic .l2 .menu-grid-lined{
	display:none;
}

/* Mega Menu */
.mega-menu .menu-grid > .menu-row ul{
	display:grid;
	grid-template-columns: repeat(5,1fr);
	grid-gap:1rem;
}


.nav .mega-menu .deptlink{
	display:grid;
	grid-template-areas:
		"image"
		"link";
	grid-template-columns:1fr;
	align-items:center;
	text-align:center;
}

.nav .mega-menu .deptlink a.img{
	grid-area:image;
}

.nav .mega-menu .deptlink a.img img{
	width:100%;
}

.nav .mega-menu .deptlink a.txt{
	grid-area:link;
	display:block;
	padding:.5em;
}



ul.nav>li.mega-menu>div>ul.mega-menu-nav {
	position: relative;
	width: var(--navbar-dropdown-width);
	height: 100%;
	margin:0;
	/* height: 500px;  if you don't want javascript to define height, use manual height */
	left: 0;
	top: 0;
	background: var(--navbar-sidebar-color);
	color:var(--navbar-sidebar-text-color);
}


/*side bar items */
ul.nav > li.mega-menu > div > ul.mega-menu-nav > li > .deptlink{
	display:grid;
	grid-template-areas:
		"image title popout";
	grid-template-columns:3em 1fr 1em;
	align-items:center;
	text-align:left;
	min-height:var(--navbar-dropdown-item-height);
	padding:.5em;
}

ul.nav > li.mega-menu > div > ul.mega-menu-nav > li:hover > .deptlink{
	background-color:var(--navbar-active-color);
	color:var(--white);
}


ul.nav > li.mega-menu > div > ul.mega-menu-nav > li > .deptlink a.img{
	display:block;
	grid-area:image;
	padding:.5em;
}

ul.nav > li.mega-menu > div > ul.mega-menu-nav > li > .deptlink a.txt{
	display:block;
	grid-area:title;
	font-family:var(--heading-font);
}

ul.nav > li.mega-menu > div > ul.mega-menu-nav > li:hover > .deptlink a.txt{
text-decoration:none;
}



/*sort out icons - none in side bar */
.mega-menu-nav .l2 .deptlink .img{
	display:none;
}

ul.nav > li.mega-menu > div > ul.mega-menu-nav > li.active-menu-item > .deptlink
ul.nav > li.mega-menu > div > ul.mega-menu-nav > li.first-menu-item > .deptlink {
  background: var(--navbar-sidebar-hover-color);
}

ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>a {
	display: block;
	line-height: 40px;
	padding: 0 15px;
	text-decoration: none;
}

ul.nav>li.mega-menu>div>ul.mega-menu-nav>li.active-menu-item>a,
ul.nav>li.mega-menu>div>ul.mega-menu-nav>li.first-menu-item>a {
	background: #e6e6e6;
}

ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div.menu-grid {
	position: absolute;
	width: calc(var(--menu-max-width) - var(--navbar-dropdown-width));
	height: auto;
	max-height:100%;
	min-height: 100%;
	left: var(--navbar-dropdown-width);
	top: 0;
	background: var(--navbar-popout-color);

}

.mega-menu-nav .l3 .deptlink .img{
	display:block;
}

ul.nav>li.mega-menu>div>ul.mega-menu-nav>li:hover>a {
	background: #ddd;
}



.mega-menu-nav .l4 {
	display:none;
}



.nav-wrapper .visible-xs {
	visibility: hidden;
	position: absolute;
}
/* DEVICES EXCEPT MOBILE/tablet */
@media(min-width:991px) {

	/*  CLASSIC 2ND, 3RD, 4TH LEVEL --> HIDE ON NON-MOBILE */
	ul.nav>li>ul,
	ul.nav>li>ul>li>ul,
	ul.nav>li>ul>li>ul>li>ul {
		/* hide */
		visibility: hidden;
		opacity: 0;
	}
	/*  CLASSIC 2ND, 3RD, 4TH LEVEL --> SHOW ON NON-MOBILE WHEN HOVERED TO PARENT */
	ul.nav>li:hover>ul,
	ul.nav>li>ul>li:hover>ul,
	ul.nav>li>ul>li>ul>li:hover>ul {
		/* show */
		visibility: visible;
		opacity: 1;
	}
	/*  MEGA, MEGA BLOG, MEGA SHOP --> HIDE ON NON-MOBILE */
	ul.nav>li.mega-menu-classic>div,
	ul.nav>li.mega-menu>div {
		/* hide */
		visibility: hidden;
		opacity: 0;
		z-index:-1001;
	}
	/*  MEGA, MEGA BLOG, MEGA SHOP --> SHOW ON NON-MOBILE */
	ul.nav>li.mega-menu-classic:hover>div,
	ul.nav>li.mega-menu:hover>div {
		visibility: visible;
		opacity: 1;
		z-index:1001;
		background: var(--navbar-popout-color);
	}
	/*  MEGA BLOG */
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div:not(.deptlink) {
		/* hide */
		visibility: hidden;
		opacity: 0;
	}
	ul.nav>li.mega-menu:hover>div>ul.mega-menu-nav>li.active-menu-item>div,
	ul.nav>li.mega-menu:hover>div>ul.mega-menu-nav>li.first-menu-item>div	{
		visibility: visible;
		opacity: 1;
	}
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li:hover>div {
		visibility: visible;
		opacity: 1;
		z-index: 101;
	}

	ul.nav>li.l1>a:not(:only-child):after {
		/* css down-arrows if has child item */
		font-family: var(--font-awesome);
		text-decoration: none;
		content: '\f107';
		font-size:1rem;
		position: absolute;
		margin-left: 5px;
	}
	ul.nav>li:hover>a:after {
		-webkit-transform: rotate(-180deg);
		-moz-transform: rotate(-180deg);
		-o-transform: rotate(-180deg);
		-ms-transform: rotate(-180deg);
		transform: rotate(-180deg);
	}
	

	

	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li.active-menu-item>a:after,
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li.first-menu-item>a:after,
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li:hover>a:after {
		content: "";
		position: absolute;
		right: 0;
		margin-top: 13px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 6px 8px 6px 0;
		border-color: transparent #fff transparent transparent;
	}
	
}

/* ################## RESPONSIVE STYLES ###################### */

@media(max-width:992px) {

	/*start showing the menu toggle icon */
	.home-hamburger{
		display:block;
		z-index: 1000;
	}

	.home-hamburger .visible-xs {
		visibility: visible;
	}

	div.nav-wrapper .hidden-xs {
		visibility: hidden;
		display: none;
	}
	div.nav-wrapper {
		z-index:1001;
		background:var(--navbar-color);
	}
	.nav-wrapper .visible-xs {
		visibility: visible;
		position: absolute;
		left: 0;
		top: 0;
	}


	/* MENU DROPDOWN TOGGLE - MOBILE */
	span.dropdown-toggle {
		grid-area:toggle;
		align-self:center;
		margin:auto;
		z-index: 1000000;
		cursor: pointer;
	}

	span.dropdown-toggle:after {
		/* css down-arrows if has child item */
		font-family: var(--font-awesome);
		text-decoration: none;
		content: '\f107';
		color: var(--navbar-icon-color);
		font-size: 25px;
		right: 0;
	}
	span.dropdown-toggle.dropdown-toggle-rotate {
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		transform: rotate(180deg);
	}

	.mega-menu-nav > li > .deptlink{
		grid-template-areas:
			"image link";
		grid-template-columns:3em 1fr;
	}

	/* no need for css arrows if has child item  as we are now doing a vertical menu*/
	.mega-menu-nav .deptlink:after{
		content: '';
	}

	.nav .deptlink{
		display:grid;
		grid-template-areas:
			"image link";
		grid-template-columns:3em 1fr;
		align-items:center;
		min-height:var(--menu-line-height);
	}

	.nav .deptlink a.img{
		grid-area:image;
		padding:.5em;
	}

	.nav .deptlink a.txt{
		grid-area:link;
		padding:.5em;
		color:var(--navbar-link-color)
	}

	/* -------------------------------------------------------------------------------------
	=Top Nav
	------------------------------------------------------------------------------------- */

	div.nav-wrapper>ul.nav {
		position: absolute;
		top: 50px;
		width: 100%;
		background-color:var(--navbar-dropdown-color);
		text-align:left;
	}

	ul.nav>li,
	ul.nav>li.classic
	{
		float: none;
		display:grid;
		grid-template-areas:"toggle title"
		"dropdown dropdown";
		grid-template-columns:50px 1fr;
	}

	ul.nav>li>ul.l2,
	ul.nav>li>.menu-drop-down{
		-webkit-box-shadow: none;
		-moz-box-shadow:  none;
		box-shadow: none;
	}

		ul.nav>li>ul>li>ul.l3{
		-webkit-box-shadow: none;
		-moz-box-shadow:  none;
		box-shadow: none;
	
	}


	/* home icon added on mobile */
	ul.nav>li.l0>a:before{
		content: '\e3af';
		text-align:center;
		font-family:var(--font-awesome);
		font-weight:600;
		font-size:25px;
		width: 50px;
		height: 50px;
		color:var(--navbar-heading-color);
		position: absolute;
		left: 0;
		top: 0;
	}

	/*side bar items */
	.l1 .deptlink,
	.l2 .deptlink,
	.l3 .deptlink{
		grid-area:title;
	}

	/* classic */

	.classic{}

	.classic li.l2{
		float: none;
		display:grid;
		grid-template-areas:"toggle title"
		". dropdown";
		grid-template-columns:50px 1fr;
	}


	ul.nav>li>ul.l2 li:hover {
		background: var(--off-white);
		color:var(--navbar-active-text-color);	
	}

	.nav .classic .deptlink:after{
		display:none;
		content: "";
	}

/* mega menu / mega menu classic */
	.mega-menu li.l0,
	.mega-menu li.l1,
	.mega-menu li.l2,
	.mega-menu-classic li.l2{
		float: none;
		display:block;
		display:grid;
		grid-template-areas:"toggle title"
							"dropdown dropdown";
		grid-template-columns:50px 1fr;
		margin-left:1em;
		
	}

	.mega-menu-classic li.l2{
		float: none;
		display:block;
		display:grid;
		grid-template-areas:" title"
							"dropdown dropdown";
		grid-template-columns:50px 1fr;
	}


	ul.nav>li.active-menu-item>a,
	ul.nav>li.first-menu-item>a {
		background: initial;
		color:initial;
	}

	ul.nav>li>a,
	ul.nav .l1>a{
		grid-area:title;
		font-family:var(--heading-font);
		color:var(--navbar-link-color)
		
	}
	ul.nav>li>a:only-child {
		padding: 0 .5em;
	}


	/* MENU MEGA */
	ul.nav>li.mega-menu-classic,
	ul.nav>li.mega-menu {
		position: relative;
	}
	ul.nav>li.mega-menu-classic>div,
	ul.nav>li.mega-menu>div {
		position: relative;
		top: auto;
		left: auto;
		border-top: none;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}
	ul.nav > li.mega-menu > div > ul.mega-menu-nav > li:hover > .deptlink{
		background-color:unset;
	}
	
	/* MENU MEGA */
	ul.nav>li.mega-menu>div>ul.mega-menu-nav {
		width: 100%;
		height: auto;
		left: auto;
		top: auto;
	}
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li {
		position: relative;
	}
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>a,
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>.deptlink{
		/*no... you can't remove the !important */
		grid-area:title !important;
		line-height: 50px;
		padding: 0;
	}
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div {
		position: relative;
		width: 100%;
		min-height: auto;
		left: auto;
		top: auto;
		z-index: auto;
	}

	


	/* MENU HIDE/SHOW SUBMENUS - MOBILE */
	ul.nav>li>ul>li>ul>li>ul,
	ul.nav>li>ul>li>ul,
	ul.nav>li>ul,
	ul.nav,
	ul.nav>li.mega-menu-classic>div,
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div:not(.deptlink),
	ul.nav>li.mega-menu>div:not(.deptlink){
		max-height: 0;
		min-height:0;
		transform: scaleY(0);
		overflow: hidden;
	}
	ul.nav>li>ul.mobile-sublevel-show,
	ul.nav>li>ul>li>ul.mobile-sublevel-show,
	ul.nav>li>ul>li>ul>li>ul.mobile-sublevel-show,
	ul.nav.mobile-sublevel-show,
	ul.nav>li.mega-menu-classic>div.mobile-sublevel-show,
	ul.nav>li.mega-menu>div.mobile-sublevel-show,
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div.mobile-sublevel-show
	{
		max-height: 20000px;
		transform: scaleY(1);
		position:initial;
		width:100%;
		height:auto !important; /* added possible due to chris playing with images, mobile dropdown stopped working */
		grid-area:dropdown;
	}

	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div.menu-grid{
		position:initial;
		width:100%;
	}

	div.menu-grid>div.menu-row {
		position: relative;
		padding:0;
		height:auto;
	}
	div.menu-grid > div.menu-row ul.l3{
		display:block;
		background: var(--navbar-popout-color);
		margin-bottom:0;
	}

	div.menu-grid > div.menu-row ul.l3 li.l3 .deptlink a.img{
		max-width: 50px;
			background-color:transparent;
	}


	
	/* Hamburger icon - mobile */
	.c-hamburger {
		display: block;
		position: relative;
		overflow: hidden;
		margin: 0;
		padding: 0;
		width: 50px;
		height: 50px;
		font-size: 0;
		text-indent: -9999px;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		box-shadow: none;
		border-radius: 0;
		border: none;
		cursor: pointer;
		-webkit-transition: background 0.3s;
		transition: background 0.3s;
	}
	.c-hamburger:focus {
		outline: none;
	}
	/*middle bit of the x */
	.c-hamburger span {
		display: block;
		position: absolute;
		top: 50%;
		
		left: var(--half-spacing);
		right: var(--half-spacing);
		height: 3px;
		background:var(--navbar-icon-color);
	}
	/* top and bottom bits of the x */
	.c-hamburger span::before,
	.c-hamburger span::after {
		position: absolute;
		display: block;
		left: 0;
		width: 100%;
		height: 3px;
		background-color: var(--navbar-icon-color);
		content: "";
	}
	.c-hamburger span::before {
		top: -10px;
	}
	.c-hamburger span::after {
		bottom: -10px;
	}
	/**
   * Hamburger to "x" (htx). Takes on a hamburger shape, bars slide
   * down to center and transform into an "x".
   */
	.c-hamburger--htx {
		background-color:transparent;
	}
	.c-hamburger--htx span {
		-webkit-transition: background 0s 0.3s;
		transition: background 0s 0.3s;
	}
	.c-hamburger--htx span::before,
	.c-hamburger--htx span::after {
		-webkit-transition-duration: 0.3s, 0.3s;
		transition-duration: 0.3s, 0.3s;
		-webkit-transition-delay: 0.3s, 0s;
		transition-delay: 0.3s, 0s;
	}
	.c-hamburger--htx span::before {
		-webkit-transition-property: top, -webkit-transform;
		transition-property: top, transform;
	}
	.c-hamburger--htx span::after {
		-webkit-transition-property: bottom, -webkit-transform;
		transition-property: bottom, transform;
	}
	/* active state, i.e. menu open */
	.c-hamburger--htx.is-active {
		background-color: transparent;
	}
	.c-hamburger--htx.is-active span {
		background: none;
	}
	.c-hamburger--htx.is-active span::before {
		top: 0;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.c-hamburger--htx.is-active span::after {
		bottom: 0;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.c-hamburger--htx.is-active span::before,
	.c-hamburger--htx.is-active span::after {
		-webkit-transition-delay: 0s, 0.3s;
		transition-delay: 0s, 0.3s;
	}
}

/* MEDIA QUERY --> SMALL DEVICES */

@media(min-width:768px) and (max-width:991px) {
	.nav-wrapper .hidden-md {
		visibility: hidden;
		display: none;
	}
	div.nav-wrapper {}
	ul.nav>li.mega-menu>div>ul.mega-menu-nav {}
	ul.nav>li.mega-menu>div>ul.mega-menu-nav>li>div {}
	
	div.menu-grid.menu-grid-lined>div.menu-row:after {
		background: none;
	}
}


/* TRANSITION EFFECTS */
@media(min-width:767px) {
	/* Arrows */
	ul.nav>li>a:after {
		transition: all 0.3s ease;
	}
	ul.nav>li>ul>li>a:after,
	ul.nav>li>ul>li>ul>li>a:after,
	ul.nav>li>ul>li>ul>li>ul>li>a:after {
		transition: all 0.3s ease;
	}
	/* 1st level move-up effect */
	ul.nav>li>ul,
	ul.nav>li>div {
		/*transform: translateY(25px);*/
		transition: all 0.3s ease;
	}
	ul.nav>li:hover>ul,
	ul.nav>li:hover>div {
		transform: translateY(0);
	}
	/* 2nd 3rd 4th level move-left/right effect */
	ul.nav>li>ul>li>ul,
	ul.nav>li>ul>li>ul>li>ul,
	ul.nav>li>ul>li>ul>li>ul>li>ul {
		/*transform: translateX(25px);*/
		transition: all 0.3s ease;
	}
	ul.nav>li>ul>li:hover>ul,
	ul.nav>li>ul>li>ul>li:hover>ul,
	ul.nav>li>ul>li>ul>li>ul>li:hover>ul {
		transform: translateX(0);
	}
}
/* ------------------------------------------------------------------------------------
	SCREEN - Extra extra large devices (large laptops and desktops, 1400px and up)
	Last Updated : 31. 08. 2023
	Copyright :(c) 2023 Etail Systems Ltd
	Author : Etail Systems Ltd 
------------------------------------------------------------------------------------- */

@media only screen and (min-width: 1400px) {

	/* defaults */
	:root{
		--site-max-width:1400px;
		--menu-max-width:1400px;
	}

/*accordion dropdown for info panels*/
#pb .accordion{
	background-color:transparent;
}

#pb .accordion .header {
	background-color:transparent;
	font-size: 1.25em;
	text-transform:uppercase;
	margin-bottom: 1rem;
	color: var(--bottom-panel-heading-color);
	padding:0;
	border-radius: 0;
	display: none;
}

#pb .accordion .header img{
	display:none;
}


#pb ul.accordion li.pane {
	display: block !important;
	padding: 0;
	color:var(--black);
	background-color:transparent;
}

#pb ul.accordion li.pane  h3.header{
	display:none;
}

#pb ul.accordion li.pane ul {
	list-style-type: none;
	margin-left: 0em;
}

}
/* ------------------------------------------------------------------------------------
	SCREEN - Extra large devices (large laptops and desktops, 1200px and up) 
	Last Updated : 10. 09. 2024
	Copyright :(c) 2024 Etail Systems Ltd 
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */
@media only screen and (min-width: 1200px) and (max-width:1399px) {
	:root{
		--site-max-width:calc(100% - 2em);
	 }

	/*accordion dropdown for info panels*/
	#pb .accordion{
		background-color:transparent;
	}
	
	#pb .accordion .header {
		background-color:transparent;
		font-size: 1.25em;
		text-transform:uppercase;
		margin-bottom: 1rem;
		color: var(--bottom-panel-heading-color);
		padding:0;
		border-radius: 0;
		display: none;
	}
	
	#pb .accordion .header img{
		display:none;
	}
	
	
	#pb ul.accordion li.pane {
		display: block !important;
		padding: 0;
		color:var(--black);
		background-color:transparent;
	}
	
	#pb ul.accordion li.pane  h3.header{
		display:none;
	}
	
	#pb ul.accordion li.pane ul {
		list-style-type: none;
		margin-left: 0em;
	}

	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	
	/* product listings
	------------------------------------------------------- */
	
	.fprd label {
		margin: 0;
		padding: 0;
		font-size: 10px;
	}


	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:
			"label qty"
			"buy buy";
		grid-gap: .5em;
		margin-top:.5em;
	}

	.fprd input.fpskuqty {
		margin-left:auto;
	}
	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter 
	------------------------------------------------------------------------------------- */
	.pmwide #sr {
		grid-template-columns: repeat(4, 1fr);
	}


}
/* ------------------------------------------------------------------------------------
	SCREEN - Large devices (laptops/desktops, 992px and up)
	Last Updated : 10. 09. 2024
	Copyright :(c) 2024 Etail Systems Ltd 
	Author : Etail Systems Ltd
	
	start to introduce padding on main content at this point
------------------------------------------------------------------------------------- */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	/* defaults */
	:root{
		--site-max-width:calc(100% - 2rem);
		--left-panel-width: 250px;
	}

	/* -------------------------------------------------------------------------------------
	=SiteContainers
	------------------------------------------------------------------------------------- */
	#cont {
		margin: auto;
	}
	
	#site {
		background-color: var(--background-color);
	}


	
	/* -------------------------------------------------------------------------------------
	=Grid Layout
	------------------------------------------------------------------------------------- */
	
	/* layout base classes
	------------------------------------------------------- */
	.fullWidth {
		grid-column: 1/-1;
	}
	
	.titleArticle{
		grid-column:1/-1;
		text-align:center;
	}
	
	.halfWidth{
		/* grid-column: 1/-1; */
	}
	
	.halfWidthDbl {
		grid-column: auto / span 6;
		grid-row: span 1;
		grid-column: 1/-1
	}
	
	.quarterWidth {
		grid-column: auto / span 6;
	}
	
	.thirdWidth {
		/* grid-column: 1/-1; */
	}
	
	.twoThirdWidth {
		/* grid-column: 1/-1; */
	}

	/* -------------------------------------------------------------------------------------
	=Swiffy Slider
	------------------------------------------------------------------------------------- */
	.swiffy-slider {}

	
	.carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 3;
	}

	.carousel.dept .swiffy-slider {
	--swiffy-slider-item-count: 3;
}
	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf{}

	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */
	#pt{}

	

	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{}

	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	.pmfull {
		margin:0 1rem;
	}

	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		padding:0 1em;
		width:calc(100% - 2em);
	}


	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{

	}

	#pb .ext {
		padding:1em;
		grid-gap:1em;
	}

	/*accordion dropdown for info panels*/
	#pb .accordion{
		background-color:transparent;
	}
	
	#pb .accordion .header {
		background-color:transparent;
		font-size: 1.25em;
		text-transform:uppercase;
		margin-bottom: 1rem;
		color: var(--bottom-panel-heading-color);
		padding:0;
		border-radius: 0;
		display: block;
	}
	
	#pb .accordion .header img{
		display:none;
	}
	
	
	#pb ul.accordion li.pane {
		display: block !important;
		padding: 0;
		color:var(--black);
		background-color:transparent;
	}
	
	#pb ul.accordion li.pane  h3.header{
		display:none;
	}
	
	#pb ul.accordion li.pane ul {
		list-style-type: none;
		margin-left: 0em;
	}

	/*accordion dropdown for info panels*/
	#pb .accordion{
		background-color:transparent;
	}
	
	#pb .accordion .header {
		background-color:transparent;
		font-size: 1.25em;
		text-transform:uppercase;
		margin-bottom: 1rem;
		color: var(--bottom-panel-heading-color);
		padding:0;
		border-radius: 0;
		display: none;
	}
	
	#pb .accordion .header img{
		display:none;
	}
	
	
	#pb ul.accordion li.pane {
		display: block !important;
		padding: 0;
		color:var(--black);
		background-color:transparent;
	}
	
	#pb ul.accordion li.pane  h3.header{
		display:none;
	}
	
	#pb ul.accordion li.pane ul {
		list-style-type: none;
		margin-left: 0em;
	}


	

	/* -------------------------------------------------------------------------------------
	=FIXEDBottom Panel #pbf
	------------------------------------------------------------------------------------- */
	#pbf{}


	/* left panel
	------------------------------------------------------- */
	#pl {}

	
	/* -------------------------------------------------------------------------------------
	=Blog
	------------------------------------------------------------------------------------- */
	#site.blog {}
	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=FilterSearch
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=Department
	------------------------------------------------------------------------------------- */

	/* dept listings
	------------------------------------------------------- */
	
	#sr {
		grid-template-columns: repeat(4, 1fr);
	}
	.pmwide #sr {
		grid-template-columns: repeat(3, 1fr);
	}
	
/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	
	/* product listings
	------------------------------------------------------- */
	
	.fprd label {
		margin: 0;
		padding: 0;
		font-size: 10px;
	}


	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:
			"label qty"
			"buy buy";
		grid-gap: .5em;
		margin-top:.5em;
	}

	.fprd input.fpskuqty {
		margin-left:auto;
	}


	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi .main {

	}


	
	/* -------------------------------------------------------------------------------------
	=Basket
	------------------------------------------------------------------------------------- */

	#pm .bskt {
		
	}

	
	/* -------------------------------------------------------------------------------------
	=Checkout Process
	------------------------------------------------------------------------------------- */
	#pt.checkouttop .ext {
	}



	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */
	/*account menu panel*/
	#pmam {
		
	}

	/* -------------------------------------------------------------------------------------
	=ConfirmationPage
	------------------------------------------------------------------------------------- */



	/* -------------------------------------------------------------------------------------
	=Client Specific Stylings 
	------------------------------------------------------------------------------------- */
	
	/* home page
	------------------------------------------------------- */
	
		
}
/* ------------------------------------------------------------------------------------
	SCREEN - Medium devices (landscape tablets, 768px and up)
	Last Updated : 18. 12. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 992px)  {

	/* -------------------------------------------------------------------------------------	
	=Definitions
	------------------------------------------------------------------------------------- */
	:root{
		--site-max-width:100%;
	}


	h2{
		font-size:1.8em;
	}

	/* -------------------------------------------------------------------------------------
	=SiteContainers
	------------------------------------------------------------------------------------- */
	#cont {
		margin: auto;
	}
	
	#site {
		background-color: var(--background-color);
	}


	
	/* -------------------------------------------------------------------------------------
	=Grid Layout
	------------------------------------------------------------------------------------- */
	
	/* layout base classes
	------------------------------------------------------- */
	.fullWidth {
		grid-column: 1/-1;
	}
	
	.titleArticle{
		grid-column:1/-1;
		text-align:center;
	}
	
	.halfWidth{
		grid-column: 1/-1;
	}
	
	.halfWidthDbl {
		grid-column: auto / span 6;
		grid-row: span 1;
		grid-column: 1/-1
	}
	
	.quarterWidth {
		grid-column: auto / span 6;
	}
	


	/* -------------------------------------------------------------------------------------
	=Swiffy Slider
	------------------------------------------------------------------------------------- */
	.swiffy-slider {}
	.swiffy-slider ul, .swiffy-slider li {}
	
	.swiffy-slider .slidecont p {
		padding: 0;
		margin: 0;
	}
	
	.slider-product {
		--swiffy-slider-item-count: 2;
	}

	.slider-cta {
		--swiffy-slider-item-count: 3;
	}
	
	/* product sliders - code needs some tweaking */
	.carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 3;
	}
	
	/* department sliders - code needs some tweaking */
	.carousel.dept .swiffy-slider {
		--swiffy-slider-item-count: 3;
	}
	
	.carousel.dept .deptlink a.txt {}

	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf{}

	#ptf .ext {
		grid-template-areas:"actions account"
		"message message";
		grid-template-columns: auto auto;
		align-items:center;
	}


	#a123109379 {
		display:none;
	}

	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */

	#pt .ext {

	/* spacer width is used on wider view ports to keep top panel central */
	--spacer-width: calc((100% - var(--site-max-width)) / 2);

	--menu-width:auto;
		
	/*logo width is fixed*/
	--logo-width:1fr;
	
	/*search sits central, scales as required*/
	--search-width:4em;
	
	/*these two elements sit at the end - but we need to balance out the fixed logo width*/
	--contact-width:auto;
	--basket-width:4em;
	
	align-items:center;
	grid-template-columns: var(--menu-width) var(--search-width) var(--logo-width) var(--search-width)  var(--basket-width);
	grid-template-areas:
		"menulink  searchtoggle logo quickorder basket  "
		"search search search search search "
		"subnav subnav subnav subnav subnav"
		"nav nav nav nav nav "
		"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage";	
	}


		

	/* logo

	grid-template-areas:
		". logo  quickorder basket  ."
		". subnav subnav subnav subnav ."
		"nav nav nav nav nav nav"
		"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage ";
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding:1em 1em;
	}

	/*this still needs dev work - see below for hack version which requires an article */
	#pt .icon.srch{
		grid-area:searchtoggle;
	}

	
	/* QuickOrder
	------------------------------------------------------- */
	#pt #qobtnview{
		grid-area:quickorder;
		text-align: left;
		margin:auto;
		position:relative;
		cursor:pointer;
	}
	
	#pt #qobtnview img{
		display:inline-block;
		max-width:2em;
		vertical-align:middle;
		margin-right:.5em;
	}
	
	#pt #qobtnview span{
		display:inline-block;
		vertical-align:middle;
		display:none;
	}
	.qord.hidequickord{
		display:none;
	}
	
	
	.qord {
		width: calc(var(--site-max-width) - 4em);
		
	}


	/* Search
	------------------------------------------------------- */

	/* mikes hack of a search toggle */
	#a134447126{
		display:block;

		grid-area:searchtoggle;
		text-align:center;
	}

	#a134447126 button{
		cursor: pointer;
		background-color:transparent;
		border:0;
		outline:0;
		color:var(--text-color);
		font-size:1.6em;
	}
	
	#pt .search {
		grid-area: search;
		visibility:hidden;
		height:0;
	}

	#pt .search.toggleSearch {
		grid-area: search;
		visibility:visible;
		height:auto;
		margin:1em;
		padding:0;
	}

	
	/* nav display 
	------------------------------------------------------- */
	.home-hamburger{
		grid-area:menulink;
		display:block;
		z-index: 1000;
	}

	.home-hamburger .visible-xs {
		visibility: visible;
	}

	div.nav-wrapper {
		z-index:1001;
		min-height:0;
		background:var(--navbar-color);
	}
	
	div.nav-wrapper>ul.nav {
		top: 0;
	}

	/*remove deptlink stylings on mega-menu - they are retained for mega-menu-classic */
	.mega-menu div.menu-grid > div.menu-row ul li .deptlink{
		background-color:var(--navbar-dropdown-color);
		display:grid;
		grid-template-areas:"image title popout";
		grid-template-columns:3em 1fr 1em;
		align-items:center;
		text-align:left;
		min-height:var(--navbar-dropdown-item-height);
		padding:.5em;
		padding-left:2em;
	}


	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img{
	display:block;
	grid-area:image;
	padding:.5em;
}
	

	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img{
		grid-column:1;
		grid-row:1;
	}

	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img img{
		width: 100%;
		object-fit: cover;
		margin:auto;
	}
	
	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.txt{
		color:var(--text-color);
		font-family: var(--text-font);
		font-weight: normal;
		margin:0;

		display:block;
		grid-area:title;
		font-family:var(--heading-font);
	}

	/* for classic menu - change grid layout */
	.mega-menu-classic div.menu-grid > div.menu-row ul,
	.mega-menu-classic div.menu-grid > div.menu-row ul.l2{
		grid-template-columns:repeat(1,1fr);
		grid-gap:1em;
		margin:0 2em;
	}

	.mega-menu-classic div.menu-grid > div.menu-row ul.l3{
		display:none;
	}
	
	div.menu-grid > div.menu-row ul li .deptlink{
		grid-template-columns: 3em 1fr;
		grid-template-areas:
			"image text";
		align-items:center;
		grid-gap:1em;
		grid-template-rows:auto;
	}

	div.menu-grid > div.menu-row ul li .deptlink a.img{
		grid-area:image;
		align-self:start;
	}

	div.menu-grid > div.menu-row ul li .deptlink a.txt{
		align-self:center;
		text-align:left;
		/* font-size:1.25em; */
	}
	
	/* Basket - change layout
	------------------------------------------------------- */

	#pt .bskt #mybskt{
		display:block;

	}

	#pt .bskt {
		position: relative;
		border:none;
	}



	/*items in basket */
	#bsktitems,
	a.bsktitems{
		display:block;
	}

		
	#pt .bskt #mybskt a.btn,
	#pt .bskt #mybskt img.btn{
		margin:0;
	}
	
	
	/*items in basket */
	#pt .bskt #bsktitems,
	#pt .bskt a.mybsktlnk{
	    position: absolute;
	    top: 0rem;
	    right: .0rem;
	    background-color: var(--off-white);
	    color: var(--dark-grey);
	    border-radius: 50%;
	    text-align: center;
	    width: 1.5rem;
	    height: 1.5rem;
	    line-height: 1.5rem;
	    font-size: .825em;
	    font-weight:600;
	}
	
	#pt .bskt #bsktitems span{
		display:none;
	}

	#pt .bskt #mybskt p{
		font-family:var(--text-font);
		line-height:1.5rem;
	}

	
	#pt .bskt #bsktvalue,
	#pt .bskt a.bsktvalue{
		display:none;
	}

	#pt .bskt #mybskt a.btn{
		background:none;
		padding:.5em;
		margin:0;
		border:none;
	}

	/* no hover basket on mobile */
	.hoverbskt {
		display:none !important;
	}

	/*no space for free shipping header on mobile */
	#pt .bskt h4{
		display:none;
	}
			

	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{}

	.bdcb {
		display: none;
	}

	/* client specific 
	------------------------------------------------------- */

	/*change to banner content area sizing */
	.mainBanner .toi{
		/*max width of 80% of site width */
		width:90%;
		max-width:90%;
		top: 50%;
		left: 50%;
		padding:1rem;
		transform: translate(-50%,-50%);
		text-align:center;
	}

	/*main banner image proportions have changed - will need a class if used elswhere */
	#pc .bnr a.img img{
		max-height:375px;
		aspect-ratio: 1/1;
	}
	
	
	.sidebyside .imgcont{
		display:grid;
		grid-template-columns:1fr;
		grid-template-areas:"text";
	}
	
	
	.sidebyside  .imgcont picture{
		grid-area:image;
		display:none;
	}

	.sidebyside  .centerbox{
		align-content:center;
		display:grid;
		height:100%;
		text-align:center;
	}
	
	.sidebyside  .centerbox h3{
		font-size:1em;
		font-family:var(--text-font);
	}
	
	.sidebyside  .centerbox h3 em{
		font-weight:600;
	}
	
	.sidebyside  .centerbox h2{
		font-size:2em;
	}


	/* -------------------------------------------------------------------------------------
	=Left Panel #pl
	------------------------------------------------------------------------------------- */
	#pl {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
		display:none;
	}

	/* -------------------------------------------------------------------------------------
	=Right Panel #pr
	------------------------------------------------------------------------------------- */
	#pr {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}


	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	#pmid{
		display:block;
	}
	
	.pmfull,
	.pmstd{
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}

	.pmwide{
		background-color: var(--main-panel-color);
		width: calc(var(--site-max-width) - 2rem);
		display: block;
		vertical-align: top;
		margin:0 1rem;
	}


	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}		
	
	#pmid.page_buy #pm.pmfull{
		width:calc(100% - 2rem)
	}



	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		/* padding:0 1em; */
		width:calc(100% - 2em);
	}

	#pf #carouselArtImgs {
		--swiffy-slider-item-count:2
	}


	/* Newsletter 
	------------------------------------------------------- */
	#pf .ext .news {
		grid-area:subscribe;
		text-align:center;
		width:75%;
		margin:auto;
	}

	.news_input_container{
		display:grid;
		grid-template-areas:"email"
			"subscribe";
		grid-template-columns:1fr;
		border:none;
		background-color:transparent;
	}

#pb .ext .news label {
	display:block;
	text-align:center;
	font-family:var(--heading-font);
	font-size:1.5rem;
}

	#pb .ext .news input#email {
		border:1px var(--border-color) solid;
		border-radius:var(--border-radius);
		margin-bottom:1em;
	}
	
	#pb .ext .news input#subscribe {
		border:2px var(--blue) solid;
		border-radius:var(--border-radius);
	}

	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{}

	#pb .ext {
		grid-gap:1em;
		padding:0 1em;
		padding-top: 3em;
		padding-bottom: 3em;
		grid-template-columns: 1fr;

		grid-template-areas:
		"contact"
			"about"
		"help"
		"legal" 
		"newsletter"
		"social"
		"payment"
		"company";
	}

	#pb .art h2 {
		margin-bottom:1em;
	}

	#a81756163{
		text-align:center;
	}

	#a81756163  img{
	margin:auto;
	}


	#a82018305{
		text-align:center;
	}

	#a82018305  img{
		margin:1em auto;
	}

	#a82018305 ul{
	text-align:center;
	}

	/* 	
	accordion
	------------------------------------------------------- */
	#pb .ext h3.header{
		display:none;
	}

	#pb .accordion{
		width:100%;
	}

	
	#pb .accordion .header {
		font-family: var(--heading-font);
		font-weight: var(--heading-font-weight);
		font-size: 1.25em;
		cursor: pointer;
		border-radius: 0;
		margin: 0;
		background-color:transparent;
		text-transform:capitalize;
		margin-bottom:0em;
		border:none;
	}

	#pb .accordion .header img{
	}

	#pb .accordion h3{
		display:none;
	}

	#pb .accordion .pane{
		display: none;
		padding:0em;
		color:var(--black);
		background-color:transparent;
	}

	#pb .accordion .pane ul{
		margin:0;
		margin-left:2em;
		display:block;
		padding:0;
	}

	

	/* -------------------------------------------------------------------------------------
	=FIXEDBottom Panel #pbf
	------------------------------------------------------------------------------------- */
	#pbf{}

	#pbf .ext {
		background-position:top left;
	}


	/* left panel filter with toggle - only works if it is ONLY filter on the left panel
	------------------------------------------------------- */
	.filter {
		width:0;
	}

	.filter{
		height: 100%;
		width: 0%; /* 0 width - change this with JavaScript */
		position: fixed;
		z-index: 10001; 
		top: 0; 
		left: 0;
		background-color: var(--popout-color);
		overflow-x: hidden; /* Disable horizontal scroll */
		transition: var(--transition);
		box-shadow: var(--box-shadow);
		padding:1rem;
		display:none;
	}

	 .filter.showfilter{
		display:block;
		width:50%;
	}


	#fstrigbtn{
		display:block;
	}

	.fsclsdiv .fsclsspn{
		display:inline-block;
	}

	.filter .mnu_filter_search{
		display:grid;
		grid-template-columns:1fr;
		grid-gap:1em;
	}
	
	
	/* -------------------------------------------------------------------------------------
	=Blog
	------------------------------------------------------------------------------------- */
	#site.blog {}

	#site.blog #pm{
		display: grid;
		grid-template-columns: repeat(2, calc(50% - 1em));
		grid-gap: var(--spacing);
		grid-auto-flow: dense;
		grid-auto-rows: min-content;
	}

	#pm .blog:not(.art) a.title{
		grid-area:title;
		font-family:var(--heading-font);
		color:var(--dark-blue);
		text-align:center;
		padding:1em;
		font-size:1em
	}

	#pm .blog:not(.art) a.more{
		grid-area:readmore;
		margin:auto;
		padding:0;
		background-color:transparent;
		color:var(--blue);
		font-family:var(--text-font);
		text-align:center;
		font-size:1em;
		border-radius:var(--border-radius);
	}

	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=FilterSearch
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=Department
	------------------------------------------------------------------------------------- */

	/* dept listings
	------------------------------------------------------- */
	.depttree ul{
		grid-template-columns:repeat(3, 1fr);
	}
		
	#sr {
		grid-template-columns: repeat(3, 1fr);
	}

	.pmwide #sr {
		grid-template-columns: repeat(3, 1fr);
	}
	
	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	
	/* product listings
	------------------------------------------------------- */
	
	.fprd label {
		margin: 0;
		padding: 0;
		font-size: 10px;
	}


	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:
			"label qty"
			"buy buy";
		grid-gap: .5em;
		margin-top:.5em;
	}

	.fprd input.fpskuqty {
		margin-left:auto;
	}


	
	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi .main {
		grid-template-columns: 1fr;
		grid-template-areas: "top"
			"left"
			"right"
			"bottom";
	}

	#pi .gallery #mainimages{
		position:unset;
		top:0;
	}

	#galleryimages{
		display:none;
	}

	#pi .pititle h2{
		font-size:2em;
	}

	.pidescx li span{
		margin-right:0em;
	}

	.pidescx  br{
		display:block;
	}

	.pifile img{
		max-width:150px;
	}

	/* attributeTypePrice_Matrix_Calculator 
	------------------------------------------------------- */
	.attributeTypePrice_Matrix_Calculator .att_container{
		grid-template-areas:"header header "
			"attX attY "
			"calcprice calcprice";
		grid-template-columns: auto auto ;
	}

	.attributeTypePrice_Matrix_Calculator .calc_price{
		text-align:center;
	}


	
	/*attributeTypeDrop_down_list
	------------------------------------------------------- */
	.attributeTypeDrop_down_list select{
		width:100%;
	}


	/* Buy Form
	-------------------------------------------------------*/
	#pi .pibuy {
		margin:0;
	}


	/* Recommended Products 
	------------------------------------------------------*/
	#pi .prec {
		grid-template-columns:1fr;
		grid-template-areas:"title"
			"products";
	
		margin-bottom:2em;
		position:relative;
	}
	
	#pi .prec  h3{

		padding:1em;

	}
	
	
	#pi .prec .carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 3;
	}


	/* buytogether Products 
	------------------------------------------------------*/
	
	.boughtto{
		padding:1em;
		display:grid;
		grid-template-columns:1fr;
	}

	.boughtto li.prods  {
		grid-template-columns: 1fr auto 1em;
	}

	.boughtto li.total  {
		margin:1em 0;
		grid-column:unset;
		grid-row:unset;
		text-align:center;
		font-size:1.5em;
	}
	
	.boughtto li.btn  {
		grid-column:unset;
		grid-row:unset;
		align-self:end;
		text-align:center;
	}

	
	/* -------------------------------------------------------------------------------------
	=Basket
	------------------------------------------------------------------------------------- */

	#pm .bskt {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap:0;
		grid-column-gap: 4em;
		grid-template-areas:
			"breadcrumb "
			"header "
			"freedelivery "
			"lines"
			"totals"
			"voucher"
			"shipping"
			"buttons"
			"suggestedprods"
			"deliveryterms"
			"art"
			"faqs"
			"prompane";
		align-items:start;
		margin-bottom:4rem;
	}



	#pm .bskt  .line{

		grid-template-columns: var(--image-width) 1fr auto auto;
		grid-template-areas:
			"icon desc desc desc"
			"icon giftwrap giftwrap giftwrap"
			"icon gifttext gifttext gifttext"
			"icon gtentry gtentry gtentry "
			". skuselect skuselect skuselect"
			"qty qty price rem"
			". . netprice  . ";
		border-bottom:1px solid	var(--border-color);
		grid-column-gap:1rem;
	}

	#pm .bskt  .line .qty label{
		display:none;
	}
	
	/* -------------------------------------------------------------------------------------
	=Checkout Process
	------------------------------------------------------------------------------------- */
	#pt.checkouttop .ext {
		--breadcrumb-width:1fr;
		grid-template-columns:100%;
		grid-template-areas:"logo"
							"breadcrumb";
	}

	#pt.checkouttop .ext .pane{
		text-align:center;
	}


	/* invoice/delivery address
	------------------------------------------------------- */
	.page_delivery form,
	.page_checkout form{
		padding:1rem;
		grid-template-columns:1fr;
		grid-template-areas: "address"
							"continue"
							"summary";
	}

	/* Order Fulfilment/shipping
	------------------------------------------------------- */
	#pmid.page_shipping{
		padding:1rem;
		width:calc(var(--site-max-width) - 2rem);
	}
	
	.page_shipping .pmfull {
		margin: 0 auto;
		position: relative;
		width: 75%;
	}

	/* Payment
	------------------------------------------------------- */
	#pmid.page_payment{
		padding:1rem;
		width:calc(var(--site-max-width) - 2rem);
	}

	.page_payment #pm {
		margin: 0 auto;
		position: relative;
		width: var(--site-max-width);
	}

	/* member pages */
	.page_useraccount .pmfull,
	.page_orderinfo .pmfull{
		background-color: var(--main-panel-color);
		width: var(--site-max-width);
		padding:0;
		display: inline-block;
		vertical-align: top;
		margin: 0;
		margin-right: 0;
	}


	#pmam + .pmfull{
		width: calc(var(--site-max-width) - 2rem);
		padding:1rem;
	}
	
	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */

	/* account icons
	------------------------------------------------------- */
	.page_useraccount #pm ul.orders,
	.page_useraccount #pm ul.contact,
	.page_useraccount #pm ul.details{
		display:grid;
		grid-template-columns:repeat(3, 1fr);
		text-align:left;
	}
	
	/*account menu panel*/
	#pmam {
		width: 0;
		margin:0;
	}

	/* show/hide menu button */
	#mamtrigbtn {
		display:block;
	}


		
	#pmam .myacctmenu{
		height: 100%;
		width: 50%; /* 0 width - change this with JavaScript */
		position: fixed;
		z-index: 10001; 
		top: 0; 
		left: 0;
		background-color: var(--popout-color);
		overflow-x: hidden; /* Disable horizontal scroll */
		transition: var(--transition);
		box-shadow: var(--box-shadow);
		padding:1rem;
		display:none;
	}

	#pmam .myacctmenu.showmyacctmenu{
		display:block;
	}


	.mamclsdiv .mamclsspn{
	display:inline-block;
	}

	#fstrigbtn{
		display:block;
	}

	.fsclsdiv .fsclsspn{
		display:inline-block;
	}

	/* -------------------------------------------------------------------------------------
	=ConfirmationPage
	------------------------------------------------------------------------------------- */


	/* -------------------------------------------------------------------------------------
	=Sitemap 
	------------------------------------------------------------------------------------- */
	#pm .smap ul {
		list-style-position: inside;
		list-style: none;
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}


/* -------------------------------------------------------------------------------------
=Client Specific Stylings 
------------------------------------------------------------------------------------- */



/* Custom CSS 
------------------------------------------------------- */
#site.home #pm .art.cta{

grid-column: auto / span 6;
}


#site.home #pm .art.cta p{
	font-size:1em;
	color:var(--text-sub-heading-color)
}


#site.home #pm .art.imgTxt#a123666432 .artp {
	grid-column:1/-1;
	display:grid;
	grid-template-columns:auto ;
	grid-template-areas:"text"
		"video";
	grid-gap:1em;
	align-items:center;
	text-align:center;
}

.customContent p{
	line-height:revert;
}

	

	
}
/* ------------------------------------------------------------------------------------
	SCREEN - Small devices (portrait tablets and large phones, 600px and up)  
	Last Updated : 18. 12. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd

	Table of Contents
		=Definitions
		=SiteContainers		
		=FIXEDTop Panel #ptf		
		=Top Panel #pt	
		=Center Panel #pc
		=Main Panel #pmid
		=Footer Panel #pf
		=Bottom Panel #pb
		=FIXEDBottom Panel #pbf
		=Swiffy Slider
		=Blog
		=SearchHeader / SearchFooter 	
		=FilterSearch 		
		=Department
		=FeaturedProducts 
		=ProductPage 
		=Basket
		=Checkout Process
		=MyAccount
		=ConfirmationPage

------------------------------------------------------------------------------------- */


@media only screen and (min-width: 600px) and (max-width:768px) {

	/* -------------------------------------------------------------------------------------	
	=Definitions
	------------------------------------------------------------------------------------- */
	:root{
		--site-max-width:100%;
	}

	h2{
		font-size:1.8em;
	}

	/* -------------------------------------------------------------------------------------
	=SiteContainers
	------------------------------------------------------------------------------------- */
	#cont {
		margin: auto;
	}
	
	#site {
		background-color: var(--background-color);
	}


	
	/* -------------------------------------------------------------------------------------
	=Grid Layout
	------------------------------------------------------------------------------------- */
	
	/* layout base classes
	------------------------------------------------------- */
	.fullWidth {
		grid-column: 1/-1;
	}
	
	.titleArticle{
		grid-column:1/-1;
		text-align:center;
	}
	
	.halfWidth{
		grid-column: 1/-1;
	}
	
	.halfWidthDbl {
		grid-column: auto / span 6;
		grid-row: span 1;
		grid-column: 1/-1
	}
	
	.quarterWidth {
		grid-column: auto / span 6;
	}
	
	.third {
		grid-column: 1/-1
	}


	.carousel:has(.twoThirds),
	.twoThirds {
		grid-column: 1/-1;
	}



	/* -------------------------------------------------------------------------------------
	=Swiffy Slider
	------------------------------------------------------------------------------------- */
	.swiffy-slider {}
	.swiffy-slider ul, .swiffy-slider li {}
	
	.swiffy-slider .slidecont p {
		padding: 0;
		margin: 0;
	}
	
	.slider-product {
		--swiffy-slider-item-count: 2;
	}

	.slider-cta {
		--swiffy-slider-item-count: 2;
	}
	
	/* product sliders - code needs some tweaking */
	.carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 2;
	}
	
	/* department sliders - code needs some tweaking */
	.carousel.dept .swiffy-slider {
		--swiffy-slider-item-count: 2;
	}
	
	.carousel.dept .deptlink a.txt {}

	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf{}

	#ptf .ext {
	grid-template-areas:"actions account"
		"message message";
		grid-template-columns: auto auto;
		align-items:center;
	}


	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */

	#pt .ext {

	/* spacer width is used on wider view ports to keep top panel central */
	--spacer-width: calc((100% - var(--site-max-width)) / 2);

	--menu-width:auto;
		
	/*logo width is fixed*/
	--logo-width:1fr;
	
	/*search sits central, scales as required*/
	--search-width:4em;
	
	/*these two elements sit at the end - but we need to balance out the fixed logo width*/
	--contact-width:auto;
	--basket-width:4em;
	
	align-items:center;
	grid-template-columns: var(--menu-width) var(--search-width) var(--logo-width) var(--search-width)  var(--basket-width);
	grid-template-areas:
		"menulink  searchtoggle logo quickorder basket  "
		"search search search search search "
		"subnav subnav subnav subnav subnav"
		"nav nav nav nav nav "
		"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage";	
	}


		

	/* logo

	grid-template-areas:
		". logo  quickorder basket  ."
		". subnav subnav subnav subnav ."
		"nav nav nav nav nav nav"
		"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage ";
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding:1em 1em;
	}

	/*this still needs dev work - see below for hack version which requires an article */
	#pt .icon.srch{
		grid-area:searchtoggle;
	}


	
	/* QuickOrder
	------------------------------------------------------- */
	#pt #qobtnview{
		grid-area:quickorder;
		text-align: left;
		margin:auto;
		position:relative;
		cursor:pointer;
	}
	
	#pt #qobtnview img{
		display:inline-block;
		max-width:2em;
		vertical-align:middle;
		margin-right:.5em;
	}
	
	#pt #qobtnview span{
		display:inline-block;
		vertical-align:middle;
		display:none;
	}
	.qord.hidequickord{
		display:none;
	}
	
	
	.qord {
		width: calc(var(--site-max-width) - 4em);
		
	}


	/* Search
	------------------------------------------------------- */

	/* mikes hack of a search toggle */
	#a134447126{
		display:block;

		grid-area:searchtoggle;
		text-align:center;
	}

	#a134447126 button{
		cursor: pointer;
		background-color:transparent;
		border:0;
		outline:0;
		color:var(--text-color);
		font-size:1.6em;
	}
	
	#pt .search {
		grid-area: search;
		visibility:hidden;
		height:0;
	}

	#pt .search.toggleSearch {
		grid-area: search;
		visibility:visible;
		height:auto;
		margin:1em;
		padding:0;
	}

	
	/* nav display 
	------------------------------------------------------- */
	.home-hamburger{
		grid-area:menulink;
		display:block;
		z-index: 1000;
	}

	.home-hamburger .visible-xs {
		visibility: visible;
	}

	div.nav-wrapper {
		z-index:1001;
		min-height:0;
		background:var(--navbar-color);
	}
	
	div.nav-wrapper>ul.nav {
		top: 0;
	}

	/*remove deptlink stylings on mega-menu - they are retained for mega-menu-classic */
	.mega-menu div.menu-grid > div.menu-row ul li .deptlink{
		background-color:var(--navbar-dropdown-color);
		display:grid;
		grid-template-areas:"image title popout";
		grid-template-columns:3em 1fr 1em;
		align-items:center;
		text-align:left;
		min-height:var(--navbar-dropdown-item-height);
		padding:.5em;
		padding-left:2em;
	}


	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img{
	display:block;
	grid-area:image;
	padding:.5em;
}
	

	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img{
		grid-column:1;
		grid-row:1;
	}

	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img img{
		width: 100%;
		object-fit: cover;
		margin:auto;
	}
	
	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.txt{
		color:var(--text-color);
		font-family: var(--text-font);
		font-weight: normal;
		margin:0;

		display:block;
		grid-area:title;
		font-family:var(--heading-font);
	}

	/* for classic menu - change grid layout */
	.mega-menu-classic div.menu-grid > div.menu-row ul,
	.mega-menu-classic div.menu-grid > div.menu-row ul.l2{
		grid-template-columns:repeat(1,1fr);
		grid-gap:1em;
		margin:0 2em;
	}

	.mega-menu-classic div.menu-grid > div.menu-row ul.l3{
		display:none;
	}
	
	div.menu-grid > div.menu-row ul li .deptlink{
		grid-template-columns: 3em 1fr;
		grid-template-areas:
			"image text";
		align-items:center;
		grid-gap:1em;
		grid-template-rows:auto;
	}

	div.menu-grid > div.menu-row ul li .deptlink a.img{
		grid-area:image;
		align-self:start;
	}

	div.menu-grid > div.menu-row ul li .deptlink a.txt{
		align-self:center;
		text-align:left;
		/* font-size:1.25em; */
	}
	
	/* Basket - change layout
	------------------------------------------------------- */

	#pt .bskt #mybskt{
		display:block;

	}

	#pt .bskt {
		position: relative;
		border:none;
	}



	/*items in basket */
	#bsktitems,
	a.bsktitems{
		display:block;
	}

		
	#pt .bskt #mybskt a.btn,
	#pt .bskt #mybskt img.btn{
		margin:0;
	}
	
	
	/*items in basket */
	#pt .bskt #bsktitems,
	#pt .bskt a.mybsktlnk{
	    position: absolute;
	    top: 0rem;
	    right: .0rem;
	    background-color: var(--off-white);
	    color: var(--dark-grey);
	    border-radius: 50%;
	    text-align: center;
	    width: 1.5rem;
	    height: 1.5rem;
	    line-height: 1.5rem;
	    font-size: .825em;
	    font-weight:600;
	}
	
	#pt .bskt #bsktitems span{
		display:none;
	}

	#pt .bskt #mybskt p{
		font-family:var(--text-font);
		line-height:1.5rem;
	}

	
	#pt .bskt #bsktvalue,
	#pt .bskt a.bsktvalue{
		display:none;
	}

	#pt .bskt #mybskt a.btn{
		background:none;
		padding:.5em;
		margin:0;
		border:none;
	}

	/* no hover basket on mobile */
	.hoverbskt {
		display:none !important;
	}

	/*no space for free shipping header on mobile */
	#pt .bskt h4{
		display:none;
	}
			

	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{}

	.bdcb {
		display: none;
	}

	/* client specific 
	------------------------------------------------------- */

	/*change to banner content area sizing */
	.mainBanner .toi{
		/*max width of 80% of site width */
		width:90%;
		max-width:90%;
		top: 50%;
		left: 50%;
		padding:1rem;
		transform: translate(-50%,-50%);
		text-align:center;
	}

	/*main banner image proportions have changed - will need a class if used elswhere */
	#pc .bnr a.img img{
		max-height:375px;
		aspect-ratio: 1/1;
	}
	
	
	.sidebyside .imgcont{
		display:grid;
		grid-template-columns:1fr;
		grid-template-areas:"text";
	}
	
	
	.sidebyside  .imgcont picture{
		grid-area:image;
		display:none;
	}

	.sidebyside  .centerbox{
		align-content:center;
		display:grid;
		height:100%;
		text-align:center;
	}
	
	.sidebyside  .centerbox h3{
		font-size:1em;
		font-family:var(--text-font);
	}
	
	.sidebyside  .centerbox h3 em{
		font-weight:600;
	}
	
	.sidebyside  .centerbox h2{
		font-size:2em;
	}


	/* -------------------------------------------------------------------------------------
	=Left Panel #pl
	------------------------------------------------------------------------------------- */
	#pl {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
		display:none;
	}

	/* -------------------------------------------------------------------------------------
	=Right Panel #pr
	------------------------------------------------------------------------------------- */
	#pr {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}


	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	#pmid{
		display:block;
	}
	
	.pmfull,
	.pmstd{
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}

	.pmwide{
		background-color: var(--main-panel-color);
		width: calc(var(--site-max-width) - 2rem);
		display: block;
		vertical-align: top;
		margin:0 1rem;
	}


	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}		
	
	#pmid.page_buy #pm.pmfull{
		width:calc(100% - 2rem)
	}



	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		/* padding:0 1em; */
		width:calc(100% - 2em);
	}

	#pf #carouselArtImgs {
		--swiffy-slider-item-count:2
	}


	/* Newsletter 
	------------------------------------------------------- */
	#pf .ext .news {
		grid-area:subscribe;
		text-align:center;
		width:75%;
		margin:auto;
	}

	.news_input_container{
		display:grid;
		grid-template-areas:"email"
			"subscribe";
		grid-template-columns:1fr;
		border:none;
		background-color:transparent;
	}

#pb .ext .news label {
	display:block;
	text-align:center;
	font-family:var(--heading-font);
	font-size:1.5rem;
}

	#pb .ext .news input#email {
		border:1px var(--border-color) solid;
		border-radius:var(--border-radius);
		margin-bottom:1em;
	}
	
	#pb .ext .news input#subscribe {
		border:2px var(--blue) solid;
		border-radius:var(--border-radius);
	}

	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{}

	#pb .ext {
		grid-gap:1em;
		padding:0 1em;
		padding-top: 3em;
		padding-bottom: 3em;
		grid-template-columns: 1fr;

		grid-template-areas:
		"contact"
			"about"
		"help"
		"legal" 
		"newsletter"
		"social"
		"payment"
		"company";
	}

	#pb .art h2 {
		margin-bottom:1em;
	}

	#a81756163{
		text-align:center;
	}

	#a81756163  img{
	margin:auto;
	}


	#a82018305{
		text-align:center;
	}

	#a82018305  img{
		margin:1em auto;
	}

	#a82018305 ul{
	text-align:center;
	}

	/* 	
	accordion
	------------------------------------------------------- */
	#pb .ext h3.header{
		display:none;
	}

	#pb .accordion{
		width:100%;
	}

	
	#pb .accordion .header {
		font-family: var(--heading-font);
		font-weight: var(--heading-font-weight);
		font-size: 1.25em;
		cursor: pointer;
		border-radius: 0;
		margin: 0;
		background-color:transparent;
		text-transform:capitalize;
		margin-bottom:0em;
		border:none;
	}

	#pb .accordion .header img{
	}

	#pb .accordion h3{
		display:none;
	}

	#pb .accordion .pane{
		display: none;
		padding:0em;
		color:var(--black);
		background-color:transparent;
	}

	#pb .accordion .pane ul{
		margin:0;
		margin-left:2em;
		display:block;
		padding:0;
	}

	

	/* -------------------------------------------------------------------------------------
	=FIXEDBottom Panel #pbf
	------------------------------------------------------------------------------------- */
	#pbf{}

	#pbf .ext {
		background-position:top left;
	}


	/* left panel filter with toggle - only works if it is ONLY filter on the left panel
	------------------------------------------------------- */
	.filter {
		width:0;
	}

	.filter{
		height: 100%;
		width: 0%; /* 0 width - change this with JavaScript */
		position: fixed;
		z-index: 10001; 
		top: 0; 
		left: 0;
		background-color: var(--popout-color);
		overflow-x: hidden; /* Disable horizontal scroll */
		transition: var(--transition);
		box-shadow: var(--box-shadow);
		padding:1rem;
		display:none;
	}

	 .filter.showfilter{
		display:block;
		width:50%;
	}


	#fstrigbtn{
		display:block;
	}

	.fsclsdiv .fsclsspn{
		display:inline-block;
	}

	.filter .mnu_filter_search{
		display:grid;
		grid-template-columns:1fr;
		grid-gap:1em;
	}
	
	
	/* -------------------------------------------------------------------------------------
	=Blog
	------------------------------------------------------------------------------------- */
	#site.blog {}

	#site.blog #pm{
		display: grid;
		grid-template-columns: repeat(2, calc(50% - 1em));
		grid-gap: var(--spacing);
		grid-auto-flow: dense;
		grid-auto-rows: min-content;
	}

	#pm .blog:not(.art) a.title{
		grid-area:title;
		font-family:var(--heading-font);
		color:var(--dark-blue);
		text-align:center;
		padding:1em;
		font-size:1em
	}

	#pm .blog:not(.art) a.more{
		grid-area:readmore;
		margin:auto;
		padding:0;
		background-color:transparent;
		color:var(--blue);
		font-family:var(--text-font);
		text-align:center;
		font-size:1em;
		border-radius:var(--border-radius);
	}

	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=FilterSearch
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=Department
	------------------------------------------------------------------------------------- */

	/* dept listings
	------------------------------------------------------- */
	.depttree ul{
		grid-template-columns: repeat(3, 1fr);
	}
		
	#sr {
		grid-template-columns: repeat(3, 1fr);
	}

	.pmwide #sr {
		grid-template-columns: repeat(3, 1fr);
	}
	
	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	
	/* product listings
	------------------------------------------------------- */
	
	.fprd label {
		margin: 0;
		padding: 0;
		font-size: 10px;
	}


	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:
			"label qty"
			"buy buy";
		grid-gap: .5em;
		margin-top:.5em;
	}

	.fprd input.fpskuqty {
		margin-left:auto;
	}


	
	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi .main {
		grid-template-columns: 1fr;
		grid-template-areas: "top"
			"left"
			"right"
			"bottom";
	}

	#pi .gallery #mainimages{
		position:unset;
		top:0;
	}

	#galleryimages{
		display:none;
	}

	#pi .pititle h2{
		font-size:2em;
	}

	.pidescx li span{
		margin-right:0em;
	}

	.pidescx  br{
		display:block;
	}

	.pifile img{
		max-width:150px;
	}

	/* attributeTypePrice_Matrix_Calculator 
	------------------------------------------------------- */
	.attributeTypePrice_Matrix_Calculator .att_container{
		grid-template-areas:"header header "
			"attX attY "
			"calcprice calcprice";
		grid-template-columns: auto auto ;
	}

	.attributeTypePrice_Matrix_Calculator .calc_price{
		text-align:center;
	}


	
	/*attributeTypeDrop_down_list
	------------------------------------------------------- */
	.attributeTypeDrop_down_list select{
		width:100%;
	}


	/* Buy Form
	-------------------------------------------------------*/
	#pi .pibuy {
		margin:0;
	}


	/* Recommended Products 
	------------------------------------------------------*/
	#pi .prec {
		grid-template-columns:1fr;
		grid-template-areas:"title"
			"products";
	
		margin-bottom:2em;
		position:relative;
	}
	
	#pi .prec  h3{

		padding:1em;

	}
	
	
	#pi .prec .carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 2;
	}


	/* buytogether Products 
	------------------------------------------------------*/
	
	.boughtto{
		padding:1em;
		display:grid;
		grid-template-columns:1fr;
	}

	.boughtto li.prods  {
		grid-template-columns: 1fr auto 1em;
	}

	.boughtto li.total  {
		margin:1em 0;
		grid-column:unset;
		grid-row:unset;
		text-align:center;
		font-size:1.5em;
	}
	
	.boughtto li.btn  {
		grid-column:unset;
		grid-row:unset;
		align-self:end;
		text-align:center;
	}

	
	/* -------------------------------------------------------------------------------------
	=Basket
	------------------------------------------------------------------------------------- */

	#pm .bskt {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap:0;
		grid-column-gap: 4em;
		grid-template-areas:
			"breadcrumb "
			"header "
			"freedelivery "
			"lines"
			"totals"
			"voucher"
			"shipping"
			"buttons"
			"suggestedprods"
			"deliveryterms"
			"art"
			"faqs"
			"prompane";
		align-items:start;
		margin-bottom:4rem;
	}


	#pm .bskt  .line{

		grid-template-columns: var(--image-width) 1fr auto auto;
		grid-template-areas:
			"icon desc desc desc"
			"icon giftwrap giftwrap giftwrap"
			"icon gifttext gifttext gifttext"
			"icon gtentry gtentry gtentry "
			". skuselect skuselect skuselect"
			"qty qty price rem"
			". . netprice  . ";
		border-bottom:1px solid	var(--border-color);
		grid-column-gap:1rem;
	}

	#pm .bskt  .line .qty label{
		display:none;
	}
	
	/* -------------------------------------------------------------------------------------
	=Checkout Process
	------------------------------------------------------------------------------------- */
	#pt.checkouttop .ext {
		--breadcrumb-width:1fr;
		grid-template-columns:100%;
		grid-template-areas:"logo"
							"breadcrumb";
	}

	#pt.checkouttop .ext .pane{
		text-align:center;
	}


	/* invoice/delivery address
	------------------------------------------------------- */
	.page_delivery form,
	.page_checkout form{
		padding:1rem;
		grid-template-columns:1fr;
		grid-template-areas: "address"
							"continue"
							"summary";
	}

	/* Order Fulfilment/shipping
	------------------------------------------------------- */
	#pmid.page_shipping{
		padding:1rem;
		width:calc(var(--site-max-width) - 2rem);
	}
	
	.page_shipping .pmfull {
		margin: 0 auto;
		position: relative;
		width: 75%;
	}

	/* Payment
	------------------------------------------------------- */
	#pmid.page_payment{
		padding:1rem;
		width:calc(var(--site-max-width) - 2rem);
	}

	.page_payment #pm {
		margin: 0 auto;
		position: relative;
		width: var(--site-max-width);
	}

	/* member pages */
	.page_useraccount .pmfull,
	.page_orderinfo .pmfull{
		background-color: var(--main-panel-color);
		width: var(--site-max-width);
		padding:0;
		display: inline-block;
		vertical-align: top;
		margin: 0;
		margin-right: 0;
	}
	
	#pmam + .pmfull{
		width: calc(var(--site-max-width) - 2rem);
		padding:1rem;
	}
	
	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */

	/* account icons
	------------------------------------------------------- */
	.page_useraccount #pm ul.orders,
	.page_useraccount #pm ul.contact,
	.page_useraccount #pm ul.details{
		display:grid;
		grid-template-columns:repeat(3, 1fr);
		text-align:left;
	}

	/*account menu panel*/
	#pmam {
		width: 0;
		margin:0;
	}


	/* show/hide menu button */
	#mamtrigbtn {
		display:block;
	}


		
	#pmam .myacctmenu{
		height: 100%;
		width: 50%; /* 0 width - change this with JavaScript */
		position: fixed;
		z-index: 10001; 
		top: 0; 
		left: 0;
		background-color: var(--popout-color);
		overflow-x: hidden; /* Disable horizontal scroll */
		transition: var(--transition);
		box-shadow: var(--box-shadow);
		padding:1rem;
		display:none;
	}

	#pmam .myacctmenu.showmyacctmenu{
		display:block;
	}


	.mamclsdiv .mamclsspn{
	display:inline-block;
	}

	#fstrigbtn{
		display:block;
	}

	.fsclsdiv .fsclsspn{
		display:inline-block;
	}

	/* -------------------------------------------------------------------------------------
	=ConfirmationPage
	------------------------------------------------------------------------------------- */


	/* -------------------------------------------------------------------------------------
	=Sitemap 
	------------------------------------------------------------------------------------- */
	#pm .smap ul {
		list-style-position: inside;
		list-style: none;
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}


/* -------------------------------------------------------------------------------------
=Client Specific Stylings 
------------------------------------------------------------------------------------- */


/* Custom CSS 
------------------------------------------------------- */
#site.home #pm .art.cta{
	grid-column:auto / span 6;
	align-items:start;
}


#site.home #pm .art.cta p{
	font-size:1em;
	color:var(--text-sub-heading-color)
}

#site.home #pm .art.imgTxt#a123666432 .artp {
	grid-column:1/-1;
	display:grid;
	grid-template-columns:auto ;
	grid-template-areas:"text"
		"video";
	grid-gap:1em;
	align-items:center;
	text-align:center;
}
.customContent p{
	line-height:revert;
}
	

	

	
}
/* ------------------------------------------------------------------------------------
	SCREEN - Extra small devices (phones, 600px and down)
	Last Updated : 18. 12. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd 
------------------------------------------------------------------------------------- */
@media only screen and (max-width: 600px) {

	/* -------------------------------------------------------------------------------------	
	=Definitions
	------------------------------------------------------------------------------------- */
	:root{
		--site-max-width:100%;
	}

	h2{
		font-size:1.8em;
	}

	/* -------------------------------------------------------------------------------------
	=SiteContainers
	------------------------------------------------------------------------------------- */
	#cont {
		margin: auto;
	}
	
	#site {
		background-color: var(--background-color);
	}


	
	/* -------------------------------------------------------------------------------------
	=Grid Layout
	------------------------------------------------------------------------------------- */
	
	/* layout base classes
	------------------------------------------------------- */
	.fullWidth {
		grid-column: 1/-1;
	}
	
	.titleArticle{
		grid-column:1/-1;
		text-align:center;
	}
	
	.halfWidth{
		grid-column: 1/-1;
	}
	
	.halfWidthDbl {
		grid-column: auto / span 6;
		grid-row: span 1;
		grid-column: 1/-1
	}
	
	.quarterWidth {
		grid-column: auto / span 6;
	}
	
	.third {
		grid-column: 1/-1
	}


	.carousel:has(.twoThirds),
	.twoThirds {
		grid-column: 1/-1;
	}



	/* -------------------------------------------------------------------------------------
	=Swiffy Slider
	------------------------------------------------------------------------------------- */
	.swiffy-slider {}
	.swiffy-slider ul, .swiffy-slider li {}
	
	.swiffy-slider .slidecont p {
		padding: 0;
		margin: 0;
	}
	
	.slider-product {
		--swiffy-slider-item-count: 2;
	}

	.slider-cta {
		--swiffy-slider-item-count: 1;
	}
	
	/* product sliders - code needs some tweaking */
	.carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 2;
	}
	
	/* department sliders - code needs some tweaking */
	.carousel.dept .swiffy-slider {
		--swiffy-slider-item-count: 2;
	}
	
	.carousel.dept .deptlink a.txt {}

	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf{}

	#ptf .ext {
		grid-template-areas:"actions account"
		"message message";
		grid-template-columns: auto auto;
		align-items:center;
		font-size:.725em;
	}

	#p50266112 {
		/* display:none; */
	}

	#p50266114 {
		/* display:none; */
	}

	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */

	#pt .ext {

	/* spacer width is used on wider view ports to keep top panel central */
	--spacer-width: calc((100% - var(--site-max-width)) / 2);

	--menu-width:3em;
		
	/*logo width is fixed*/
	--logo-width:1fr;
	
	/*search sits central, scales as required*/
	--search-width:3em;
	
	/*these two elements sit at the end - but we need to balance out the fixed logo width*/
	--quick-order-width:3em;
	--basket-width:3em;
		grid-gap:0;
	
	align-items:center;
	grid-template-columns: var(--menu-width) var(--search-width) var(--logo-width) var(--quick-order-width)  var(--basket-width);
	grid-template-areas:
		"menulink  searchtoggle logo quickorder basket  "
		"search search search search search "
		"subnav subnav subnav subnav subnav"
		"nav nav nav nav nav "
		"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage";	
	}


		

	/* logo

	grid-template-areas:
		". logo  quickorder basket  ."
		". subnav subnav subnav subnav ."
		"nav nav nav nav nav nav"
		"sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage sitewidemessage ";
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding:0;
	}

	/*this still needs dev work - see below for hack version which requires an article */
	#pt .icon.srch{
		grid-area:searchtoggle;
	}

	/* QuickOrder
	------------------------------------------------------- */
	#pt .qord{
		display:none;
	}


	/* Search
	------------------------------------------------------- */

	/* mikes hack of a search toggle */
	#a134447126{
		display:block;

		grid-area:searchtoggle;
		text-align:center;
	}

	#a134447126 button{
		cursor: pointer;
		background-color:transparent;
		border:0;
		outline:0;
		color:var(--text-color);
		font-size:1.6em;
	}
	
	#pt .search {
		grid-area: search;
		visibility:hidden;
		height:0;
	}

	#pt .search.toggleSearch {
		grid-area: search;
		visibility:visible;
		height:auto;
		margin:1em;
		padding:0;
	}

	
	/* nav display 
	------------------------------------------------------- */
	.home-hamburger{
		grid-area:menulink;
		display:block;
		z-index: 1000;
	}

	.home-hamburger .visible-xs {
		visibility: visible;
	}

	div.nav-wrapper {
		z-index:1001;
		min-height:0;
		background:var(--navbar-color);
	}
	
	div.nav-wrapper>ul.nav {
		top: 0;
	}

	/*remove deptlink stylings on mega-menu - they are retained for mega-menu-classic */
	.mega-menu div.menu-grid > div.menu-row ul li .deptlink{
		background-color:var(--navbar-dropdown-color);
		display:grid;
		grid-template-areas:"image title popout";
		grid-template-columns:3em 1fr 1em;
		align-items:center;
		text-align:left;
		min-height:var(--navbar-dropdown-item-height);
		padding:.5em;
		padding-left:2em;
	}


	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img{
	display:block;
	grid-area:image;
	padding:.5em;
}
	

	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img{
		grid-column:1;
		grid-row:1;
	}

	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.img img{
		width: 100%;
		object-fit: cover;
		margin:auto;
	}
	
	.mega-menu div.menu-grid > div.menu-row ul li .deptlink a.txt{
		color:var(--text-color);
		font-family: var(--text-font);
		font-weight: normal;
		margin:0;

		display:block;
		grid-area:title;
		font-family:var(--heading-font);
	}

	/* for classic menu - change grid layout */
	.mega-menu-classic div.menu-grid > div.menu-row ul,
	.mega-menu-classic div.menu-grid > div.menu-row ul.l2{
		grid-template-columns:repeat(1,1fr);
		grid-gap:1em;
		margin:0 2em;
	}

	.mega-menu-classic div.menu-grid > div.menu-row ul.l3{
		display:none;
	}
	
	div.menu-grid > div.menu-row ul li .deptlink{
		grid-template-columns: 3em 1fr;
		grid-template-areas:
			"image text";
		align-items:center;
		grid-gap:1em;
		grid-template-rows:auto;
	}

	div.menu-grid > div.menu-row ul li .deptlink a.img{
		grid-area:image;
		align-self:start;
	}

	div.menu-grid > div.menu-row ul li .deptlink a.txt{
		align-self:center;
		text-align:left;
		/* font-size:1.25em; */
	}
	
	/* Basket - change layout
	------------------------------------------------------- */

	#pt .bskt #mybskt{
		display:block;

	}

	#pt .bskt {
		position: relative;
		border:none;
	}



	/*items in basket */
	#bsktitems,
	a.bsktitems{
		display:block;
	}

		
	#pt .bskt #mybskt a.btn,
	#pt .bskt #mybskt img.btn{
		margin:0;
	}
	
	
	/*items in basket */
	#pt .bskt #bsktitems,
	#pt .bskt a.mybsktlnk{
	    position: absolute;
	    top: 0rem;
	    right: .0rem;
	    background-color: var(--off-white);
	    color: var(--dark-grey);
	    border-radius: 50%;
	    text-align: center;
	    width: 1.5rem;
	    height: 1.5rem;
	    line-height: 1.5rem;
	    font-size: .825em;
	    font-weight:600;
	}
	
	#pt .bskt #bsktitems span{
		display:none;
	}

	#pt .bskt #mybskt p{
		font-family:var(--text-font);
		line-height:1.5rem;
	}

	
	#pt .bskt #bsktvalue,
	#pt .bskt a.bsktvalue{
		display:none;
	}

	#pt .bskt #mybskt a.btn{
		background:none;
		padding:0;
		margin:0;
		border:none;
	}

	/* no hover basket on mobile */
	.hoverbskt {
		display:none !important;
	}

	/*no space for free shipping header on mobile */
	#pt .bskt h4{
		display:none;
	}


	
	/* QuickOrder
	------------------------------------------------------- */
	#pt #qobtnview{
		grid-area:quickorder;
		text-align: left;
		margin:auto;
		position:relative;
		cursor:pointer;
		grid-gap:0;
	}
	
	#pt #qobtnview img{
		display:inline-block;
		max-width:2em;
		vertical-align:middle;
		margin-right:.5em;
	}
	
	#pt #qobtnview span{
		display:inline-block;
		vertical-align:middle;
		display:none;
	}
	.qord.hidequickord{
		display:none;
	}
	
	
	.qord {
		width: calc(var(--site-max-width) - 4em);
		
	}

			

	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{}

	.bdcb {
		/* display: none; */
	}

	/* client specific 
	------------------------------------------------------- */

	/*change to banner content area sizing */
	.mainBanner .toi{
		/*max width of 80% of site width */
		width:90%;
		max-width:90%;
		top: 50%;
		left: 50%;
		padding:1rem;
		transform: translate(-50%,-50%);
		text-align:center;
	}

	/*main banner image proportions have changed - will need a class if used elswhere */
	#pc .bnr a.img img{
		max-height:375px;
		aspect-ratio: 1/1;
	}
	
	
	.sidebyside .imgcont{
		display:grid;
		grid-template-columns:1fr;
		grid-template-areas:"text";
	}
	
	
	.sidebyside  .imgcont picture{
		grid-area:image;
		display:none;
	}

	.sidebyside  .centerbox{
		align-content:center;
		display:grid;
		height:100%;
		text-align:center;
	}
	
	.sidebyside  .centerbox h3{
		font-size:1em;
		font-family:var(--text-font);
	}
	
	.sidebyside  .centerbox h3 em{
		font-weight:600;
	}
	
	.sidebyside  .centerbox h2{
		font-size:2em;
	}


	/* -------------------------------------------------------------------------------------
	=Left Panel #pl
	------------------------------------------------------------------------------------- */
	#pl {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
		display:none;
	}

	/* -------------------------------------------------------------------------------------
	=Right Panel #pr
	------------------------------------------------------------------------------------- */
	#pr {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}


	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	#pmid{
		display:block;
	}
	
	.pmfull,
	.pmstd{
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}

	.pmwide{
		background-color: var(--main-panel-color);
		width: calc(var(--site-max-width) - 2rem);
		display: block;
		vertical-align: top;
		margin:0 1rem;
	}


	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}		
	
	#pmid.page_buy #pm.pmfull{
		width:calc(100% - 2rem)
	}
	



	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		/* padding:0 1em; */
		width:calc(100% - 2em);
	}

	#pf #carouselArtImgs {
		--swiffy-slider-item-count:2
	}


	/* Newsletter 
	------------------------------------------------------- */
	#pf .ext .news {
		grid-area:subscribe;
		text-align:center;
		width:75%;
		margin:auto;
	}

	.news_input_container{
		display:grid;
		grid-template-areas:"email"
			"subscribe";
		grid-template-columns:1fr;
		border:none;
		background-color:transparent;
	}

#pb .ext .news label {
	display:block;
	text-align:center;
	font-family:var(--heading-font);
	font-size:1.5rem;
}

	#pb .ext .news input#email {
		border:1px var(--border-color) solid;
		border-radius:var(--border-radius);
		margin-bottom:1em;
	}
	
	#pb .ext .news input#subscribe {
		border:2px var(--blue) solid;
		border-radius:var(--border-radius);
	}

	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{}

	#pb .ext {
		grid-gap:1em;
		padding:0 1em;
		padding-top: 3em;
		padding-bottom: 3em;
		grid-template-columns: 1fr;

		grid-template-areas:
		"contact"
			"about"
		"help"
		"legal" 
		"newsletter"
		"social"
		"payment"
		"company";
	}

	#pb .art h2 {
		margin-bottom:1em;
	}

	#a81756163{
		text-align:center;
	}

	#a81756163  img{
	margin:auto;
	}


	#a82018305{
		text-align:center;
	}

	#a82018305  img{
		margin:1em auto;
	}

	#a82018305 ul{
	text-align:center;
	}

	/* 	
	accordion
	------------------------------------------------------- */
	#pb .ext h3.header{
		display:none;
	}

	#pb .accordion{
		width:100%;
	}

	
	#pb .accordion .header {
		font-family: var(--heading-font);
		font-weight: var(--heading-font-weight);
		font-size: 1.25em;
		cursor: pointer;
		border-radius: 0;
		margin: 0;
		background-color:transparent;
		text-transform:capitalize;
		margin-bottom:0em;
		border:none;
	}

	#pb .accordion .header img{
	}

	#pb .accordion h3{
		display:none;
	}

	#pb .accordion .pane{
		display: none;
		padding:0em;
		color:var(--black);
		background-color:transparent;
	}

	#pb .accordion .pane ul{
		margin:0;
		margin-left:2em;
		display:block;
		padding:0;
	}

	

	/* -------------------------------------------------------------------------------------
	=FIXEDBottom Panel #pbf
	------------------------------------------------------------------------------------- */
	#pbf{}

	#pbf .ext {
		background-position:top left;
	}


	/* left panel filter with toggle - only works if it is ONLY filter on the left panel
	------------------------------------------------------- */
	.filter {
		width:0;
	}

	.filter{
		height: 100%;
		width: 0%; /* 0 width - change this with JavaScript */
		position: fixed;
		z-index: 10001; 
		top: 0; 
		left: 0;
		background-color: var(--popout-color);
		overflow-x: hidden; /* Disable horizontal scroll */
		transition: var(--transition);
		box-shadow: var(--box-shadow);
		padding:1rem;
		display:none;
	}

	 .filter.showfilter{
		display:block;
		width:50%;
	}


	#fstrigbtn{
		display:block;
	}

	.fsclsdiv .fsclsspn{
		display:inline-block;
	}

	.filter .mnu_filter_search{
		display:grid;
		grid-template-columns:1fr;
		grid-gap:1em;
	}
	
	
	/* -------------------------------------------------------------------------------------
	=Blog
	------------------------------------------------------------------------------------- */
	#site.blog {}

	#site.blog #pm{
		display: grid;
		grid-template-columns: repeat(2, calc(50% - 1em));
		grid-gap: var(--spacing);
		grid-auto-flow: dense;
		grid-auto-rows: min-content;
	}

	#pm .blog:not(.art) a.title{
		grid-area:title;
		font-family:var(--heading-font);
		color:var(--dark-blue);
		text-align:center;
		padding:1em;
		font-size:1em
	}

	#pm .blog:not(.art) a.more{
		grid-area:readmore;
		margin:auto;
		padding:0;
		background-color:transparent;
		color:var(--blue);
		font-family:var(--text-font);
		text-align:center;
		font-size:1em;
		border-radius:var(--border-radius);
	}

	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=FilterSearch
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=Department
	------------------------------------------------------------------------------------- */

	/* dept listings
	------------------------------------------------------- */
	.depttree ul{
		grid-template-columns:repeat(3, 1fr);
	}
		
	#sr {
		grid-template-columns: repeat(2, 1fr);
	}

	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}

	
/* -------------------------------------------------------------------------------------
=Brands  
------------------------------------------------------------------------------------- */
#pm .brands{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	grid-gap:1em;
}

#pm .brands .brnd{
	grid-column:unset;
	display:grid;
	grid-template-areas:"image"
	"title"
	"description";
	margin-bottom:1em;
}

#pm .brands .brnd img{
	grid-area:image;
}

#pm .brands .brnd h3{
	grid-area:title;
	text-align:center;
}

#pm .brands .brnd p{
		grid-area:description;
	text-align:center;
	
}


	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	
	/* product listings
	------------------------------------------------------- */
	
	.fprd label {
		margin: 0;
		padding: 0;
		font-size: 10px;
	}


	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:
			"label qty"
			"buy buy";
		grid-gap: .5em;
		margin-top:.5em;
	}

	.fprd input.fpskuqty {
		margin-left:auto;
	}



	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi .main {
		grid-template-columns: 1fr;
		grid-template-areas: "top"
			"left"
			"right"
			"bottom";
	}

	#pi .gallery #mainimages{
		position:unset;
		top:0;
	}

	#galleryimages{
		display:none;
	}

	#pi .pititle h2{
		font-size:2em;
	}

	.pidescx li span{
		margin-right:0em;
	}

	.pidescx  br{
		display:block;
	}

	.pifile img{
		max-width:150px;
	}

	/* attributeTypePrice_Matrix_Calculator 
	------------------------------------------------------- */
	.attributeTypePrice_Matrix_Calculator .att_container{
		grid-template-areas:"header header "
			"attX attY "
			"calcprice calcprice";
		grid-template-columns: auto auto ;
	}

	.attributeTypePrice_Matrix_Calculator .calc_price{
		text-align:center;
	}


	
	/*attributeTypeDrop_down_list
	------------------------------------------------------- */
	.attributeTypeDrop_down_list select{
		width:100%;
	}


	/* Buy Form
	-------------------------------------------------------*/
	#pi .pibuy {
		margin:0;
	}

	#pi .pibuy .attrqty .qtyinput label{
	max-width:100%;
	display:block;
	vertical-align:middle;
	text-align:center;
	font-size:.825em;
	font-weight:600;
	margin-bottom:.5em;
}


	#pi .pibuy .attrqty .submit#buy{
		margin:auto;
		margin-top:1em;
		display:block;
	}


	/* Recommended Products 
	------------------------------------------------------*/
	#pi .prec {
		grid-template-columns:1fr;
		grid-template-areas:"title"
			"products";
	
		margin-bottom:2em;
		position:relative;
	}
	
	#pi .prec  h3{

		padding:1em;

	}
	
	
	#pi .prec .carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 2;
	}


	/* buytogether Products 
	------------------------------------------------------*/
	
	.boughtto{
		padding:1em;
		display:grid;
		grid-template-columns:1fr;
	}

	.boughtto li.prods  {
		grid-template-columns: 1fr auto 1em;
	}

	.boughtto li.total  {
		margin:1em 0;
		grid-column:unset;
		grid-row:unset;
		text-align:center;
		font-size:1.5em;
	}
	
	.boughtto li.btn  {
		grid-column:unset;
		grid-row:unset;
		align-self:end;
		text-align:center;
	}

	
	/* -------------------------------------------------------------------------------------
	=Basket
	------------------------------------------------------------------------------------- */

	#pm .bskt {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap:0;
		grid-column-gap: 4em;
		grid-template-areas:
			"breadcrumb "
			"header "
			"freedelivery "
			"lines"
			"totals"
			"voucher"
			"shipping"
			"buttons"
			"suggestedprods"
			"deliveryterms"
			"art"
			"faqs"
			"prompane";
		align-items:start;
		margin-bottom:4rem;
	}


	#pm .bskt  .line{

		grid-template-columns: var(--image-width) 1fr auto auto;
		grid-template-areas:
			"icon desc desc desc"
			"icon giftwrap giftwrap giftwrap"
			"icon gifttext gifttext gifttext"
			"icon gtentry gtentry gtentry "
			". skuselect skuselect skuselect"
			"qty qty price rem"
			". . netprice  . ";
		border-bottom:1px solid	var(--border-color);
		grid-column-gap:1rem;
	}

	#pm .bskt  .line .qty label{
		display:none;
	}
	
	/* -------------------------------------------------------------------------------------
	=Checkout Process
	------------------------------------------------------------------------------------- */
	#pt.checkouttop .ext {
		--breadcrumb-width:1fr;
		grid-template-columns:100%;
		grid-template-areas:"logo"
							"breadcrumb";
	}

	#pt.checkouttop .ext .pane{
		text-align:center;
	}


	/* invoice/delivery address
	------------------------------------------------------- */
	.page_delivery form,
	.page_checkout form{
		padding:1rem;
		grid-template-columns:1fr;
		grid-template-areas: "address"
							"continue"
							"summary";
	}

	/* Order Fulfilment/shipping
	------------------------------------------------------- */
	#pmid.page_shipping{
		padding:1rem;
		width:calc(var(--site-max-width) - 2rem);
	}
	
	.page_shipping .pmfull {
		margin: 0 auto;
		position: relative;
		width: 75%;
	}

	/* Payment
	------------------------------------------------------- */
	#pmid.page_payment{
		padding:1rem;
		width:calc(var(--site-max-width) - 2rem);
	}

	.page_payment #pm {
		margin: 0 auto;
		position: relative;
		width: var(--site-max-width);
	}

	/* member pages */
	.page_useraccount .pmfull,
	.page_orderinfo .pmfull{
		background-color: var(--main-panel-color);
		width: var(--site-max-width);
		padding:0;
		display: inline-block;
		vertical-align: top;
		margin: 0;
		margin-right: 0;
	}

	#pmam + .pmfull{
		width: calc(var(--site-max-width) - 2rem);
	}
	
	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */

	/* account icons
	------------------------------------------------------- */
	.page_useraccount #pm ul.orders,
	.page_useraccount #pm ul.contact,
	.page_useraccount #pm ul.details{
		display:grid;
		grid-template-columns:repeat(2, 1fr);
		text-align:left;
	}

	/*account menu panel*/
	#pmam {
		width: 0;
		margin:0;
	}



	/* show/hide menu button */
	#mamtrigbtn {
		display:block;
	}


		
	#pmam .myacctmenu{
		height: 100%;
		width: 50%; /* 0 width - change this with JavaScript */
		position: fixed;
		z-index: 10001; 
		top: 0; 
		left: 0;
		background-color: var(--popout-color);
		overflow-x: hidden; /* Disable horizontal scroll */
		transition: var(--transition);
		box-shadow: var(--box-shadow);
		padding:1rem;
		display:none;
	}

	#pmam .myacctmenu.showmyacctmenu{
		display:block;
	}


	.mamclsdiv .mamclsspn{
	display:inline-block;
	}

	#fstrigbtn{
		display:block;
	}

	.fsclsdiv .fsclsspn{
		display:inline-block;
	}

	/* -------------------------------------------------------------------------------------
	=ConfirmationPage
	------------------------------------------------------------------------------------- */


	/* -------------------------------------------------------------------------------------
	=Sitemap 
	------------------------------------------------------------------------------------- */
	#pm .smap ul {
		list-style-position: inside;
		list-style: none;
		display: grid;
		grid-template-columns: repeat(1, 1fr);
	}


/* -------------------------------------------------------------------------------------
=Client Specific Stylings 
------------------------------------------------------------------------------------- */



/* Custom CSS 
------------------------------------------------------- */
#site.home #pm .art.cta{
	grid-column:auto / span 6;
	align-items:start;
}


#site.home #pm .art.cta p{
	font-size:1em;
	color:var(--text-sub-heading-color)
}

#site.home #pm .art.imgTxt#a123666432 .artp {
	grid-column:1/-1;
	display:grid;
	grid-template-columns:auto ;
	grid-template-areas:"text"
		"video";
	grid-gap:1em;
	align-items:center;
	text-align:center;
}
.customContent p{
	line-height:revert;
}
	
}
/* ------------------------------------------------------------------------------------
	SCREEN - v6 basecomponents 2024
	Last Updated : 27. 11. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------------------
=Autocomplete 
------------------------------------------------------------------------------------- */
.ui-helper-hidden-accessible {
	display: none;
}

.ui-widget.ui-widget-content.ui-autocomplete {
	margin: auto;
	padding: 0;
	border-radius: 0;
	max-height: 332px;
	overflow-x: hidden;
	overflow-y: scroll;
	border: 1px solid var(--border-color);
	z-index: 2000;
	background-color: var(--white)
}

.ui-autocomplete li.ui-menu-item {
	cursor: pointer;
	margin: 0;
	display: block;
}

.ui-menu-item a {
	display: grid;
	grid-template-columns: 3em 1fr;
	padding: var(--half-spacing);
	grid-template-areas: "image title";
	grid-gap: var(--spacing);
	align-items:center;
}

.foundProduct {
	grid-area: image;
}

.foundProduct img {}

.foundProductTitle {
	grid-area: title;
	font-family:var(--text-font);
}

.foundProductRef {
	display: none;
}

.foundProductDesc {
	display: none;
}

.ui-autocomplete li {
	list-style: none;
}

.ui-autocomplete li:hover {}

.ui-menu .ui-menu-item a.ui-state-focus, .ui-menu .ui-menu-item a.ui-state-active {
	margin: 0;
	border-radius: 0;
	border: none;
	outline: none;
}

.ui-menu-item a.ui-state-active {}
.ui-autocomplete mark {}

/* -------------------------------------------------------------------------------------
=Email when back in stock EWIS 
------------------------------------------------------------------------------------- */
/* take care as the html markup that writes this thing out is a bit borked! */
#ewis h3 {
	font-weight: var(--heading-font-weight);
}

#ewis label {
	color: var(--text-heading-color);
}

a.lnk.ewisopen, a.lnk.ewis {
	display: block;
	height: auto;
	font-family:sans-serif;
	text-transform: capitalize;
	font-size: .725em;
	text-align:center;
	background-color:var(--light-grey);
	padding:9px .5rem;
}

.lnk.ewisopen:hover {
	text-decoration: underline;
	text-decoration-color:var(--orange);
}

/* -------------------------------------------------------------------------------------
=PopupDialog 
------------------------------------------------------------------------------------- */
#popupdialog {
	position: fixed;
	top: 50%;
	left: 50%;
	width: calc(var(--site-max-width) / 3);
	transform: translate(-50%, -50%);
	padding: var(--spacing);
	z-index: 2000;
	z-index: 2000;
	border: 1px solid var(--border-color);
	background-color: var(--popout-color);
	display: none;
	text-align: center;
	-webkit-box-shadow: var(--box-shadow);
	-moz-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

#popupdialog .item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-gap: .5em;
	margin-bottom: var(--spacing)
}

#popupdialog .item img {
	grid-column: 1/-1;
	grid-row: 1;
	align-self: center;
	margin: auto;
}

#popupdialog h3 {
	font-size: 1em;
	margin-bottom: 1em;
}

#popupdialog a {
	--border-color: var(--button-border-color);
	display: inline-block;
	vertical-align: middle;
	font-size: 1em;
	font-weight: var(--button-font-weight);
	text-align: center;
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	background-color: var(--button-color);
	color: var(--button-text-color);
	border: 1px solid var(--button-border-color);
	border-radius: var(--border-radius);
	outline: none;
	padding: var(--half-spacing) var(--spacing)
}

#popupdialog .item .title {
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	color: var(--text-heading-color);
	background-color:transparent;
	border:none;
	font-size: 1.2em;
	grid-column: 1/-1;
	grid-row: 2;
	text-align: center;
}

#popupdialog .item p.qty {
	grid-column: 1;
	grid-row: 3;
	text-align: right;
}

#popupdialog .item p.price {
	grid-column: 2;
	grid-row: 3;
	text-align: left;
}

/* this element needs a class 
.hoverbsktadd a[title="Checkout"], .hoverbsktadd .item+a {
	font-size: 1em;
	padding: var(--spacing);
	text-align: center;
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	background-color: var(--checkout-button);
	color: var(--button-text-color);
	border: 1px var(--button-border-color) solid;
	outline: none;
	display: inline-block;
	vertical-align: middle;
	transition: var(--transition);
	border-radius: var(--border-radius);
}

.hoverbsktadd a[title="Checkout"]:hover {}*/
#popupdialog .useraccount {}
#popupdialog .useraccount input {}
#popupdialog .useraccount a {}






/* -------------------------------------------------------------------------------------
=HoverBsket 
------------------------------------------------------------------------------------- */
.hoverbskt {
	background-color: var(--off-white);
	border:none;
	width: calc(var(--basket-width) - 1em);
	border-top:none;
	padding:.5em;
	z-index:999999;
	text-align:center;
	/* margin-top:2em; */

}

.hoverbskt h3 {
	/*pointless title - hide it */
	display:none;
}

.hoverbskt .lines .item:last-child {}
.hoverbskt .formupdate {}
.hoverbskt .formupdate input {}
.hoverbskt .formupdate input.submitQtyChange {}
.hoverbskt a,
.hoverbsktadd a,
.hoverbskt p,
.hoverbsktadd p {
	font-size: 0.825em;
}


.hoverbsktadd p.descr{
	display:none;
}

.hoverbskt .lines {
	max-height:260px;
	overflow-y:scroll;
}
.hoverbskt .lines .item {
    display:grid;
    grid-template-columns:64px 1fr;
    grid-column-gap:.5em;
    padding-right:.5em;
	align-items:center;

	grid-template-areas:"image title"
	"image price"
	"image qty";
}

.hoverbskt .lines .item img {
	aspect-ratio: 1 / 1;
	width: 100%;
	object-fit: contain;
	grid-area:image
}


.hoverbskt .lines .item a.title,
.hoverbskt .lines .item p.sample {
	color:var(--textSubHeadingColor);
	font-weight:bolder;
	grid-area:title;
	text-align:right;
}

.hoverbskt .lines .item p.descr {
	display:none;
}
.hoverbskt .lines .item p.qty {
	grid-area:qty;
	text-align:right;
}

.hoverbskt .lines .item p.price {
	grid-area:price;
	text-align:right;
	margin:0;
}
.hoverbskt h4.count {
	padding:.5em 0;
	margin-top:.5em;
	text-align: right;
	font-size: 0.825em;
	border-top: 1px var(--border-color) solid;
}

.hoverbskt h4.total {
	text-align: right;
	font-size: 0.825em;
	font-weight:bolder;
	padding-bottom:.5em;
	margin-bottom:1em;
	border-bottom: 1px var(--border-color) solid;
}

.hoverbskt a.btn {
	display:block;
	background-color:var(--blue);
	border:1px var(--blue) solid;
	font-size:1.2em;
}

/* -------------------------------------------------------------------------------------
=Out of Stock, Direct Despatch
------------------------------------------------------------------------------------- */

.ui-dialog.outofstockdialog, .ui-dialog.directdespatchdialog {
	width: 500px !important;
	max-width: 80vw;
	text-align: center;
}

.ui-dialog.outofstockdialog .outofstockpopup, .ui-dialog.directdespatchdialog .directdespatchpopup-pane {
	border: none;
}

.ui-dialog.outofstockdialog .outofstockpopup .oosheader, .ui-dialog.directdespatchdialog .ui-widget-header {
	padding: 0 0 1em 0;
}

.ui-dialog.directdespatchdialog .ui-widget-header {
	display: none;
}

.ui-dialog.directdespatchdialog .ui-widget-header .ui-dialog-titlebar-close {
	display: none;
}

.ui-dialog.outofstockdialog .outofstockpopup .oosmessage .oosdate {}

.ui-dialog.outofstockdialog .ui-dialog-titlebar {
	display: none;
}

.ui-dialog.outofstockdialog .ui-widget-content, .ui-dialog.directdespatchdialog .ui-dialog-buttonpane {
	background: transparent;
	border: none;
	margin-top: 0;
	text-align: center;
	padding: 0;
}

.ui-dialog.outofstockdialog .ui-widget-content .ui-dialog-buttonset, .ui-dialog.directdespatchdialog .ui-dialog-buttonpane .ui-dialog-buttonset {
	float: none;
}

.ui-dialog.outofstockdialog .ui-widget-content .ui-dialog-buttonset button, .ui-dialog.directdespatchdialog .ui-dialog-buttonpane .ui-dialog-buttonset button {
	--border-color: var(--button-border-color);
	display: inline-block;
	vertical-align: middle;
	font-size: 1em;
	font-weight: var(--button-font-weight);
	text-align: center;
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	border: 1px solid var(--button-border-color);
	border-radius: var(--border-radius);
	outline: none;
	padding: var(--half-spacing) var(--spacing);
	background-color: var(--white);
	color: var(--orange);
	border: 1px solid var(--button-border-color);
	border-radius: var(--border-radius);
	outline: none;
}

/*better use of classes would be nice! ;) */
.ui-dialog.directdespatchdialog .ui-dialog-buttonpane .ui-dialog-buttonset button:first-child {
	--border-color: var(--button-border-color);
	background-color: var(--button-color);
	color: var(--button-text-color);
	border: 1px solid var(--button-border-color);
}

.directdespatchdialog .ui-dialog-buttonpane .ui-dialog-buttonset button {}

#directdespatchpopup-pane span.ddproduct {
	font-size: 1.5em;
	display: block;
	margin-bottom: 1em;
}

.ddmessage {}
.ddmessage span.dddatemessage {}

.ddmessage span.dddate {
	display: block;
	margin-top: 1em;
	font-size: 1.2em;
}

/* -------------------------------------------------------------------------------------
=Tooltips
------------------------------------------------------------------------------------- */
.helpicon {
	display: inline-block;
	position: absolute;
	top: .5rem;
	right: .5rem;
	text-align: left;
}

.helpicon h3 {
	margin: var(--half-spacing) 0;
}

.helpicon .lefttooltip {
	min-width: 100px;
	max-width: 200px;
	top: 50%;
	right: 100%;
	margin-right: 1rem;
	transform: translate(0, -50%);
	padding: var(--half-spacing);
	color: var(--text-color);
	background-color: var(--white);
	font-weight: normal;
	font-size: .825em;
	position: absolute;
	z-index: 1000;
	box-sizing: border-box;
	display: none;
	border-radius: var(--border-radius);
	border: 1px solid var(--border-color);
}

.helpicon:hover .lefttooltip {
	display: block;
	line-height: 1;
}

.helpicon .lefttooltip i {
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -12px;
	width: 12px;
	height: 24px;
	overflow: hidden;
}

.helpicon .lefttooltip i::after {
	content: '';
	position: absolute;
	width: 12px;
	height: 12px;
	left: 0;
	top: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	background-color: #FFFFE0;
	border: 1px solid #DCA;
}



/* -------------------------------------------------------------------------------------
=Accordion 
------------------------------------------------------------------------------------- */
ul.accordion {
	grid-column: 1/-1;
	list-style: none;
}

/* Header including hide/show icons 
------------------------------------------------------- */
.accordion .header {
	display: grid;
	grid-template-areas:" question expand";
	grid-gap: 1rem;
	grid-template-columns: 1fr 2rem ;
	font-family:var(--text-font);
	font-size: 1em;
	cursor: pointer;
	padding: .5rem 1rem;
	transition: var(--transition);
	text-transform:capitalize;
	background-color:var(--light-grey);
	align-items:center;
}

.accordion .header img {
	grid-area: expand;
	cursor: pointer;
}

.accordion .header .showplus {
	
}

.accordion .header .showminus {
	display: none;
}

.accordion .header.current .showplus {
	display: none;
}

.accordion .header.current .showminus {
	display: block;
}

li.subhead {}

/* Panes
------------------------------------------------------- */
ul.accordion li.pane.first {}

ul.accordion li.pane {
	display: none;
	padding:1rem;
}
 ul.accordion li.pane br{}

ul.accordion li.pane p {
	font-size:1em;
}

ul.accordion li.pane ul {
	list-style-type: disc;
	margin-left: 1em;
	font-size:1em;
}

ul.accordion li.pane li {}

ul li.title {}


/* -------------------------------------------------------------------------------------
=Copyright and Managed by 
------------------------------------------------------------------------------------- */
.etailcopy {
	display: grid;
	grid-template-columns:1fr 1fr;
	grid-gap:1rem;
	padding:.5em;
}

p.etail {
	text-align:left;
	margin:0;
}

p.etail a {
}

p.copy {
	text-align:right;
	margin:0;
}

p.copy span {}


/* vat switch
------------------------------------------------------- */
.vatsw{
	grid-area:vat;
	text-align: left;
	font-size:.875em;
	padding:0 1rem;
}

[type=checkbox][role=switch] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 1.25em;
	height: 1.25em;
	margin-top: -0.125em;
	margin-right: 0.375em;
	margin-left: 0;
	-webkit-margin-start: 0;
	margin-inline-start: 0;
	-webkit-margin-end: 0.375em;
	margin-inline-end: 0.375em;
	border-width: 1px;
	font-size: inherit;
	vertical-align: middle;
	cursor: pointer;	
	width: 2.25em;
	height: 1.25em;
	border-radius: 1.25em;
	line-height: 1.25em;
}

[type=checkbox][role=switch] {
	--background-color: var(--red);
	--border-color: var(--red);
	--border-width:2px;
	width: 2.25em;
	height: 1.25em;
	border: var(--border-width) solid var(--border-color);
	border-radius: 1.25em;
	background-color: var(--background-color);
	line-height: 1.25em;
	margin:0 .5em;
}

[type=checkbox][role=switch]:focus {}

[type=checkbox][role=switch]:checked {
	--background-color: var(--red);
	--border-color: var(--red);
}

[type=checkbox][role=switch]:before {
	display: block;
	width: calc(1.25em - (var(--border-width) * 2));
	height: 100%;
	border-radius: 50%;
	background-color: var(--white);
	content: "";
	transition: margin 0.1s ease-in-out;
}

[type=checkbox][role=switch]:checked:before {
	background-color: var(--white);
}

[type=checkbox][role=switch]:checked {
	background-image: none;
}

[type=checkbox][role=switch]:checked::before {
	margin-left: calc(1.125em - var(--border-width));
	-webkit-margin-start: calc(1.125em - var(--border-width));
	margin-inline-start: calc(1.125em - var(--border-width));
}



/*readmore stuff 
------------------------------------------------------- */
.more{
	margin:1em 0;
}

.more.noexpand{
	display:none;
	transition: var(--transition);
	
}

.showmorecss,
.showlesscss,
.showmore,
.showless{
	display:inline-block;
	vertical-align:middle;
	font-family:var(--heading-font);
	font-size:.825em;
	border: none;
	text-align: center;
	border-color:inherit;
	cursor:pointer;
	color:var(--white);
	background-color:var(--blue);
	text-transform:capitalize;
	transition: var(--transition);
	padding:.5em 1em
	
}


/* Messages 
------------------------------------------------------- */
#mess {
	padding: 1em;
	margin: 1em 0;
}

li.info:not(.sa_name) {
	color: var(--info-color);
	list-style: none;
	margin-bottom:1rem;
}

li.info.req{
	color:var(--error-color)
}

li.info.acct{
	color:var(--error-color);
	font-size:2em;
}

li.info.acct a{
	margin-left:.5em;
	text-decoration:underline;
}

li.info img{
	display:inline-block;
}

li.info:not(.sa_name)::before {
	font-family: var(--font-awesome);
	content: '\f05a';
	margin-right: var(--half-spacing)
}

.warn {
	color: var(--error-color);
}

.reqmsg {
	color: var(--error-color);
	font-size: smaller;
}

.oos {
	color: var(--error-color);
}


/* -------------------------------------------------------------------------------------
=Forms
------------------------------------------------------------------------------------- */
/* Defaults
------------------------------------------------------- */
.form {
	grid-column: 1/-1;
}

/*bit of a hack - really don't want to be using an img as a way of identifying a required field */
.form img {
	display:inline;
	vertical-align:top;
	width: auto !important;
	height: auto
}

.form ul {
	margin: 0;
	padding: 0;
}

.form ul li {
	list-style: none;
	display: block;
}

.form form {
	margin: auto;
}

.form .help {
	color: var(--help-color);
	font-size: small;
}

.form label {
	display: block
}

.form li select, .form li textarea, .form li input {
	margin-bottom: var(--spacing);
	max-width:100%;
}

input:required:invalid {
	border-color: var(--error-color);
	border-width:2px;
}

.form li.reqmsg {
	color: var(--error-color);
}

.form li.header {
	text-align:left;
}

.form li.header h3{
	font-family:var(--text-font);
	font-size:1em;
	text-align:left;
}

.form label img {
	display: inline-block;
}

.form li.help, .form li.info {
	font-size: .825em;
}

.form form {}

.form form .submit {
	display: block;
}

.form .g-recaptcha {
	text-align: right;
	display: block;
	margin-left: auto;
	margin-bottom:1rem;
}

/* fix for checklists*/
.form li ul.check {
	/* font-weight:bold; */
}
.form li ul.check input {
	margin-right: var(--half-spacing);
	width:auto;
}

/* fix for radio buttons */
/*headers for checkbox/radiobutton lists in forms */
.rbnlst > label,
.chklst > label{
	font-weight:bold;
	margin-bottom:1em;
	font-family:var(--heading-font);
}
.form ul.radio {}

.form ul.radio li{
	margin-bottom:1em;
}
.form li ul.radio input {
	margin-right: var(--half-spacing);
	width:auto;
	margin:0;
	margin-right:.5em;
	vertical-align:middle;
}

.form li ul.radio label {
	display:inline-block;
	vertical-align:middle;
	
}

/* fix for subscribe checkbox */
.form li.subscribe input {
	margin-right: var(--half-spacing);
	width:auto;
}

.form li.subscribe label {
	display: inline;
	font-weight: normal;
}

.exstreglnk, .exstfgtpwd {}

.exstreglnk h5, .exstfgtpwd h5 {
	font-family: var(--text-font);
	font-weight: normal;
	font-size: .825em;
}

/*image uploader */
.imgupl{
}

.imgupl img{
	margin:0;
	margin-right:auto;
}



/* Sign In - these conflict with new checkout forms, need to revisit
------------------------------------------------------- */
.page_signin .form {
	margin: auto;
}

.page_signin .art{
	margin: auto;
}

.page_signin .form label {
	display: block;
}

.page_signin .form input {
	width: calc(100% - 2em);
}

.page_signin .form input + img{
	display:inline-block;
	vertical-align:top;
}

/* Register/update details - need to add classes to all the input fields
------------------------------------------------------- */
.page_register .form {
	margin: auto;
}

.page_register .form label {
	display: block;
}

.page_register form input,
.page_register form select {
	width: calc(100% - 2em);
}

.page_register form img{
	display:inline-block;
	vertical-align:top;
}


/* Forgotten Password
------------------------------------------------------- */
.page_passwordrequest .form#pwrem {
	width: 50%;
	margin: auto;
}

.page_passwordrequest form input,
.page_register form select {
	width: calc(100% - 2em);
}

.page_passwordrequest form img{
	display:inline-block;
	vertical-align:top;
}

.page_passwordrequest form h5 {
	font-family: var(--text-font);
	font-weight: normal;
	font-size: .825em;
}



/* -------------------------------------------------------------------------------------
=Jquery Base Overrides 
------------------------------------------------------------------------------------- */
.ui-dialog, .ui-widget.ui-widget-content {
	z-index: 1002;
	border: 1px solid var(--border-color);
}



.ui-dialog input {
	display:block;
}





/* the ask for email address popup? */
.ui-dialog.ewisdialog {
	width: 400px !important;
	text-align: center;
}

/* ask a question popup on product pages */
.ui-dialog.techquesdialog {}
.techquesdialog label {}

/* saartdialog*/
.ui-dialog.saartdialog {
	width: 80vw !important;
	max-width: 640px;
	display: none;
}



/* -------------------------------------------------------------------------------------
=PopupDialog / Popup Add to Basket / Direct Despatch
------------------------------------------------------------------------------------- */
.hoverbsktadd, #popupdialog {
	position: fixed;
	top: 50%;
	left: 50%;
	width: calc(var(--site-max-width) / 3);
	transform: translate(-50%, -50%);
	padding: var(--spacing);
	z-index: 2000;
	z-index: 2000;
	border: 1px solid var(--border-color);
	background-color: var(--popout-color);
	/* display: none; */
	text-align: center;
	-webkit-box-shadow: var(--box-shadow);
	-moz-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}

@media only screen and (max-width: 768px) {
	.hoverbsktadd, #popupdialog {
		width: calc(var(--site-max-width) - 4em);
	}
}

.hoverbsktadd .item,
#popupdialog .item {
	display: grid;
	grid-template-areas:"image"
	"title"
	"qty"
	"price";
;
	grid-gap: .5em;
	margin-bottom: var(--spacing)
}

.hoverbsktadd .item img, #popupdialog .item img {
	grid-area:image;
	align-self: center;
	margin: 0 auto !important;
}

.hoverbsktadd h3, #popupdialog h3 {
	font-size: 1em;
	/* margin-bottom: 1em; */
}

.hoverbsktadd a, #popupdialog a {
	--border-color: var(--button-border-color);
	display: inline-block;
	vertical-align: middle;
	font-size: 1em;
	font-weight: var(--button-font-weight);
	text-align: center;
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	background-color: var(--button-color);
	color: var(--button-text-color);
	border: 1px solid var(--button-border-color);
	border-radius: var(--border-radius);
	outline: none;
	padding: var(--half-spacing) var(--spacing)
}

.hoverbsktadd .item a.title,
#popupdialog .item .title {
	grid-area:title;
	font-family: var(--heading-font);
	font-weight: var(--heading-font-weight);
	color: var(--dark-blue);
	background-color:transparent;
	border:none;
	font-size: 1.2em;
	text-align: center;
}

.hoverbsktadd .item p.qty,
#popupdialog .item p.qty {
	grid-area:qty;
	display:none;
}

.hoverbsktadd .item p.price, #popupdialog .item p.price {
	grid-area:price;
	color:var(--text-heading-color);
	font-size:1.5em;
}

/* this element needs a class */
.hoverbsktadd a[title="Checkout"], .hoverbsktadd .item+a {
	font-size: 1.25em;
	padding: .5rem 2rem;
	text-align: center;
	cursor: pointer;
	font-family: var(--button-font);
	text-transform: capitalize;
	background-color: var(--blue);
	color: var(--white);
	border: 1px var(--blue) solid;
	outline: none;
	display: inline-block;
	vertical-align: middle;
	transition: var(--transition);
	border-radius: var(--border-radius);
}

.hoverbsktadd a[title="Checkout"]:hover {}
#popupdialog .useraccount {}
#popupdialog .useraccount input {}
#popupdialog .useraccount a {}


/* cookie popup
------------------------------------------------------- */
#pbf .cookie {
    position: fixed;
    bottom: 0%;
    left: 0%;
    width: 100%;
    z-index: 1000;
    background: #0d0d0d;
    text-align: center
}

#pbf .cookie p {
    /* width: 1200px; */
    margin: 0 auto;
    float: none;
    color: #fff;
    /* font-size: .75em; */
    padding: .5em 0;
}

#pbf .cookie p a {
    float: none;
    color: #fff;
    text-decoration: underline;
    padding: 0 .25em;
}

#pbf .cookie img {
    float: none;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px
}

#pbf .cookie img:hover {
    cursor: pointer
}

/* failed search */
/* client doesnt want this showing - no way to turn it off in coms */
.searchlist{
	display:grid;
	grid-template-columns: repeat(4,1fr);
	align-items:center;
	text-align:center;
	grid-gap:2em;
	display:none;
}

.searchlist li{
	background-color:var(--featured-color);
	color:var(--white);
	list-style:none;
	font-family:var(--heading-font);
	padding:1em;
	
}
/**
 * Owl Carousel v2.2.1 
 * THIS IS A BASE FILE - overrides should be in sitepanes.css in the relevant place!
 * 
 * Copyright 2013-2017 David Deutsch
 * Licensed under  ()
 */

/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 99.5%;
    }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
      transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }
