/*! jQuery UI - v1.12.1 - 2016-09-14 - etail path updated
* http://jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* Copyright jQuery Foundation and other contributors; Licensed MIT */

/* 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;
	filter:Alpha(Opacity=0); /* support: IE8 */
}

.ui-front {
	z-index: 100;
}


/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
	cursor: default !important;
}


/* 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-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;
	/* support: IE10, see #8844 */
	list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}
.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;

	/* Support: IE <= 11 */
	overflow: visible;
}

.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 - 40 */
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 {

	/* Support: IE8 only, Android < 4.4 only */
	width: 75%;
	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 {
}
.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-draggable-handle {
}
.ui-resizable {
	position: relative;
}
.ui-resizable-handle {
	position: absolute;
	font-size: 0.1px;
	display: block;
}
.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-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%;
	filter: alpha(opacity=25); /* support: IE8 */
	opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
	background-image: none;
}
.ui-selectable {
}
.ui-selectable-helper {
	position: absolute;
	z-index: 100;
	border: 1px dotted black;
}
.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: default;
}
.ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	font-size: .7em;
	display: block;
	border: 0;
	background-position: 0 0;
}

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
	filter: inherit;
}

.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-sortable-handle {
}
.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: inherit;
	font-size: 1em;
}
.ui-widget .ui-widget {
	font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
	font-family: inherit;
	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;
	filter:Alpha(Opacity=70); /* support: IE8 */
	font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
	opacity: .35;
	filter:Alpha(Opacity=35); /* support: IE8 */
	background-image: none;
}
.ui-state-disabled .ui-icon {
	filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */
}

/* 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 */
.ui-icon-blank { background-position: 16px 16px; }
.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: #000;
	opacity: .5;
	filter: Alpha(Opacity=.3); /* support: IE8 */
}
.ui-widget-shadow {
	-webkit-box-shadow: 0px 0px 5px #666666;
	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 Present Finder 2024
	Filename : sitepanes.css
	Last Updated : 3. 12. 2025
	Copyright :(c) 2024 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
------------------------------------------------------------------------------------- */
:root{
	--basket-width:300px;

	/*standard colors */
	--error-color: #B51E1E;
	--warn-color: rgb(230 167 27);
	--info-color: #5eb20a;
	--help-color: #2879ff;
	
	/* client color scheme */
	--black: #000000;
	--white: #fff;
	--off-white: #f6f6f6;
	--grey:rgb(191 191 191);
	--dark-grey: #555555;
	--light-grey:#dcdcdc;
	--green:#009c5f;
	--highlight-color:var(--grey);
	--highlight-text-color:var(--white);
	--featured-color:var(--grey);
	--site-max-width: 100%;
	--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: "proxima-nova", sans-serif;
	--text-font-weight: 400;
	--heading-font:  "proxima-nova", sans-serif;
	--heading-font-weight: 400;
	--sub-heading-font: "proxima-nova", sans-serif;
	--sub-heading-font-weight: 700;
	--button-font: "proxima-nova", 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(--grey);
	--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(--grey);
	--footer-panel-alt-color: var(--grey);
	--bottom-panel-color: var(--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:1.2rem;
	--navbar-color: var(--white);
	--navbar-heading-color: var(--black);
	--navbar-heading-weight: 400;
	--navbar-link-color: var(--black);
	--navbar-icon-color: #4e4e4e;
	--navbar-active-color: var(--black);
	--navbar-active-text-color: var(--white);
	--navbar-hover-color: var(--grey);
	--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(--black);
	--navbar-dropdown-text-size: .875rem;
	--navbar-sidebar-color: var(--off-white);
	--navbar-sidebar-text-color: var(--black);
	--navbar-sidebar-hover-color: var(--grey);
	--navbar-popout-color: var(--white);
	
	/*Buttons */
	--button-color: var(--grey);
	--button-text-color: var(--white);
	--button-border-color: var(--grey);
	--button-hover-text-color: var(--white);
	--button-hover-color: var(--black);
	--button-hover-border-color: var(--black);
	--alt-button-color: var(--white);
	--alt-button-text-color: var(--grey);
	--alt-button-border-color: var(--grey);
	--alt-button-hover-text-color: var(--black);
	--alt-button-hover-color: var(--white);
	--alt-button-hover-border-color: var(--black);
	--checkout-button: var(--green);
	--checkout-button-text: var(--white);
	--info-button: var(--info-color);
	--info-button-text: var(--white);
	--icon-color: var(--error-color);
	
	/*Borders */
	--border-color: var(--grey);
	--border-alt-color: var(--grey);
	--border-color-light: var(--grey);
	--border-radius: 2em;
	--border-width: 1px;
	
	/*Text */
	--color: var(--black);
	--text-color: var(--black);
	--text-color-light: var(--grey);
	--text-heading-color: var(--black);
	--text-sub-heading-color: var(--grey);
	--text-link-color: var(--black);
	--text-link-color-hover: var(--grey);
	--text-link-color-focus: transparent;
	--text-decoration:none;
	--text-decoration-color: var(--grey);
	
	/* featured product element fprd*/
	--fprd-color: var(--grey);
	--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(--grey);
	--swiffy-slider-item-color:var(--grey);
	--swiffy-slider-active-item-color:var(--grey);
}

/* -------------------------------------------------------------------------------------
=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 {
	color: var(--grey);
	opacity: 1;
}

:-ms-input-placeholder {
	color: var(--grey);
}

::-ms-input-placeholder {
	color: var(--grey);
}



/* -------------------------------------------------------------------------------------
=Page 
------------------------------------------------------------------------------------- */
html {
	-webkit-font-smoothing: antialiased
}

body {
	background-color: var(--background-color);
	font-family: var(--text-font);
	-webkit-font-smoothing: antialiased;
	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: 2.5em;
	--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(--black);
}
textarea
{
	border-radius: 1em;
}

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(--black);
	border-radius: var(--border-radius);
	color:var(--text-color);
	font-size:1rem;
	font-family:var(--text-font);
	cursor:pointer;
}

/* 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 liP{}

#pm .artp ol ol,
#pm .artp ol ol ol {
	margin-block-start: 0em;
	margin-block-end: 0em;
}

#pm .artp a {
	font-weight: 600;
}


/* 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;
}

.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: none;
	font-size: 16px;
	font-weight: 400;
	padding: var(--half-spacing);
	width: auto;
	border-width: var(--border-width);
	border-style: solid;
}

td a.btn {
	display: block;
}

input.inputtext,
input.inputtext_light {
	font-size:1rem;
	padding: var(--half-spacing);
	border: var(--border-width) solid var(--black);
	border-radius: var(--border-radius);
	color:var(--text-color);
}

/* Tables 
------------------------------------------------------- */


/* Headings 
------------------------------------------------------- */
.deptprods h3,
.carousel.prod h2,
.header h2,
.header h3{
	font-size:1.5em;
	z-index: 1;
	text-align:center;
	padding:.5rem 2rem;
	/* background-color:var(--grey); */
	/* color:var(--white); */
	border-radius:2em;
	display:inline-block;
	font-weight:normal;
}

/* -------------------------------------------------------------------------------------
=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,
.thirdWidth img,
.quarterWidth img,
.twoThirds img,
.fullWidth picture,
.halfWidth picture,
.halfWidthDbl picture,
.thirdWidth picture,
.quarterWidth picture,
.twoThirdspicture{
	display: block;
	width:100%;
	height: auto;
}

/* layout base classes
------------------------------------------------------- */
.fullWidth {
	grid-column: 1/-1;
}

.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;
}

.thirdWidth {
	grid-column: auto / span 4;
}

.carousel:has(.twoThirdWidth),
.twoThirds{
	grid-column: auto / span 8;
}

.fullWidth,
.halfWidth,
.quarterWidth,
.thirdWidth,
.twoThirds{
	position:relative;
}

.bnr .toi{
	position:absolute;
	bottom:1em;
	width:100%;
	text-align:center;
	pointer-events:none;
}

.bnr .toi a{
	background-color:var(--white);
	padding:.5em 2em;
	border-radius:2em;
}

.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;
}

/* -------------------------------------------------------------------------------------
=SiteContainers
------------------------------------------------------------------------------------- */
#cont {
	margin: auto;
}

#site {
	background-color: var(--background-color);
}

/* -------------------------------------------------------------------------------------
=FIXEDTop Panel #ptf
------------------------------------------------------------------------------------- */
#ptf {
	top: 0px;
	width: 100%;
	background-color:var(--top-bar-color);
	color:var(--white);
	text-align: center;
	font-size:16px;
}

/*hide on checkout process */
.chkflow #ptf{
	display:none;
}

#ptf .ext {
	--spacerwidth: calc((100% - var(--site-max-width)) / 2);
	
	display: grid;
	grid-template-areas:
		". deliverymessage message feefo .";
	grid-template-columns: var(--spacerwidth) 1fr auto 1fr var(--spacerwidth);
	align-items:center;
	padding:.5em 0;
}

#ptf p{
	margin:0;
}

#ptf #a134774786 {
	grid-area:deliverymessage;
	text-align:left;
}

#ptf #a134774787{
	grid-area:message;
	text-align:center;
}

#ptf #a134840322 {
	grid-area:feefo;
	text-align:right;
}

#ptf #a134840322 img{
	margin:0;
	max-height:1em;
	width:auto;
	margin-left:auto;
}

#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
------------------------------------------------------------------------------------- */
#pt {
	width: 100%;
	margin: auto;
	background-color: var(--top-panel-color);
}

/*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;
	--icons-width:8em;
	--search-toggle-width:3em;
	--basket-width:3em;

	--right-bit:calc(var(--icons-width) + var(--search-toggle-width));
	--left-bit:calc(var(--logo-width) - var(--right-bit));
	--empty:calc(var(--logo-width) - var(--right-bit));
	
	background-color: var(--top-panel-color);
	margin: 0 auto;
	position: relative;
	display: grid;
	grid-column-gap: 0rem;
	grid-template-columns: var(--spacer-width) var(--logo-width) var(--search-width) var(--empty) var(--search-toggle-width) var(--icons-width) var(--basket-width) var(--spacer-width);
	grid-template-areas:
		". logo nav nav searchtoggle icons basket  ."
		". search search search search search search .";
	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;
}

#p51838982,
#p51609606{
	grid-area:icons;
}

#p51838982 ul,
#p51609606 ul{
	display:grid;
	grid-template-areas:"contact account wishlist";
	align-items:center;
	text-align:center;
}

#p51838982 li.pipe,
#p51838982 a.lnk,
#p51609606 li.pipe,
#p51609606 a.lnk{
	display:none;
}

#p51838982 a.img,
#p51609606 a.img{
	display:inline-block;
}
#p51838982 li.contact,
#p51609606 li.contact{
	grid-area:contact;
}
#p51838982 li.sin,
#p51838982 li.account,
#p51609606 li.sin,
#p51609606 li.account{
	grid-area:account;
}

#p51838982 li.reg,
#p51838982 li.sout,
#p51609606 li.reg,
#p51609606 li.sout{
	display:none;
}
#p51838982 li.wish,
#p51609606 li.wish{
	grid-area:wishlist;
}
#p51838982 li.bskt,
#p51609606 li.bskt{
	grid-area:basket;
}
#p51838982 img,
#p51609606 img{
	max-width:2em;
	margin:0;
}

/* Search
------------------------------------------------------- */
/* mikes hack of a search toggle */
#a134840323{
	display:block;
	padding:.5em;
	grid-area:searchtoggle;
	text-align:center;
}

#a134840323 button{
    cursor: pointer;
    background-color: transparent;
    border: 0;
    outline: 0;
    color: var(--text-color);
    font-size: 1.6em;
    padding: 0;

}

#pt .search {
	grid-area: search;
	visibility:hidden;
	height:0;
}

#pt .search.toggleSearch {
	grid-area: search;
	visibility:visible;
	height:auto;
	margin:1em;
	padding:0;
}

/* 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: 3em 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(--grey);
}

#pt .search input {
	display: inline-block;
	vertical-align: top;
}

#pt .search input#searchbox {
	width: calc(100% - 3rem);
	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: 2.5em;
	margin: 0;
	padding: .5rem .75rem;
	background-color:transparent;
	color:var(--grey);
	font-family: var(--font-awesome);
	border: none;
}

/* QuickOrder
------------------------------------------------------- */

/* Basket
------------------------------------------------------- */
#pt .bskt{
	grid-area: basket;
	text-align: center;
	position: relative;
	margin: 0em auto;
	margin-bottom:.5em;
}

/*items in basket */
#pt .bskt p, #pt .bskt a.mybsktlnk{
	position: absolute;
	top: -.5rem;
	right: -.5rem;
	background-color: var(--grey);
	color: #fff;
	border-radius: 50%;
	text-align: center;
	width: 1.5rem;
	height: 1.5rem;
	line-height: 1.5rem;
	font-size: .825em;
	font-weight: 600;
}

#pt .bskt img{
	max-width:2em;
	margin:0;
}

#pt .bskt span{
	display: block;
	text-align: center;
	font-family: var(--headingFontAlt);
	text-transform: capitalize;
	font-size: 14px;
	width: 62px
}

/* client specific 
------------------------------------------------------- */

/* -------------------------------------------------------------------------------------
=Center Panel #pc
------------------------------------------------------------------------------------- */
#pc {
	margin: auto;
	display: flow-root;
	background-color:var(--grey);
	color:var(--white);
	text-align: center;
	margin-bottom:1em;
	margin-left:1em;
	margin-right:1em;
}

#pc .carousel .imgcont img
{
	/*set a max height to avoid it being too humongous on larger displays */
	/* max-height:600px; */
	/* aspect-ratio: 1921/736; */
	width: 100%;
	object-fit: cover;
	margin:auto;
}

#pc .carousel .imgcont div{
	position:absolute;
	bottom:4em;
	right:4em;
}

#pc .carousel .imgcont .link a{
	background-color:var(--white);
	color:var(--black);
	text-transform:uppercase;
	padding:1em 2em;
	border-radius:2em
}

#p51838988 .slider-indicators{
	display:none;
}

/* -------------------------------------------------------------------------------------
=Main Panel #pmid
------------------------------------------------------------------------------------- */
#pmid {
	width: 100%;
	margin: auto;
	background-color: var(--main-panel-color);
	display: flex;
	justify-content: flex-start;
	min-height: 85vh;
}

.page_register,
.page_signin{
	max-width:1200px;
	margin:auto;
}

/* 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);
}

.basket .pmfull{
	max-width:1400px;
}

/* left panel - when filter is in use
------------------------------------------------------- */
#pl {
	width: 0px;
	transition: var(--transition);
}

/* Right panel
------------------------------------------------------- */
#pr {
	width: var(--right-panel-width);
	margin: 0;
	margin-right: auto;
	margin-left: 1rem;
	vertical-align: top;
}

/* wide panel (used if left or right panels exist 
------------------------------------------------------- */
.pmwide {
	background-color: var(--main-panel-color);
	width:var(--site-max-width);
	/* display: inline-block; */
	/* vertical-align: top; */
	margin: 0 auto ;
	/* margin-left:auto; */
}

.pmstd{
	width:var(--site-max-width);
}

/* -------------------------------------------------------------------------------------
=Footer Panel #pf
------------------------------------------------------------------------------------- */
#pf {
	width: 100%;
	margin: auto;
	margin-top:1em;
	margin-bottom:4em;
}

#pf .ext{}


#pf .artp h1,
#pf .artp h2,
#pf .artp h3,
#pf .artp h4{
	color:var(--grey)
}

#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%;
	display:grid;
	grid-template-columns:  1fr 1fr minmax(max-content, auto) 1fr 1fr;
	grid-template-areas:
		"message message message message message"
		"shopping about newsletter social feefo";
	grid-gap:0em;
	align-items:start;
}

#pf #a134840320{
	grid-area:message;
	border-bottom: 1px solid var(--black);
	margin-bottom:2em;
	padding-bottom:2em;
}

#pf #a134840320 .imgcont{
	display:inline-block;
	max-width:300px;
	margin-bottom:1em;
}

#pf li{
	list-style:none;
}

#pf #p51838994,
#pf #p51806208{
	grid-area: shopping;
	align-self:start;
}

#pf #p51838994 strong,
#pf #p51806208 strong{
	font-family:var(--heading-font);
	font-weight:normal;
}

#pf #p51838995,
#pf #p51806209{
	grid-area: about;
	align-self:start;
}

#pf #p51838991,
#pf #p51609612{
	grid-area:newsletter;
}

#pf #a134840324{
	grid-area:social;
	text-align:center;
	font-size:1.5em;
}

#pf #a134840322{
	grid-area:feefo;
}

#pf .carousel{
	margin-bottom:2em;
}


/* Newsletter 
------------------------------------------------------- */
#pf .ext .news {
	grid-area: newsletter;
}

#pf .ext .news  h3 {
	display:none;
}

#pf .ext .news form {
	text-align: left;
	align-self: center;
	/* display:grid; */
	grid-template-columns:auto 1fr;
	grid-gap:1em;
	align-items:center;
}

.news_input_container{
	display:grid;
	grid-template-areas:"email subscribe";
	grid-template-columns:1fr auto;
	background-color:var(--white);
}

#pf .ext .news label {
	display:block;
	margin-bottom:1em;
	text-align:center;
	font-family:var(--heading-font);
	font-weight:var(--heading-font-weight);
	
}

#pf .ext .news input#email {
	grid-area:email;
	padding: .5em 1em ;
	border: var(--border-width) solid var(--black);
	border-radius:0;
	border-right:none;
	border-top-left-radius:2em;
	border-bottom-left-radius:2em;

}

#pf .ext .news input#subscribe {
	grid-area:subscribe;
	padding:.5em calc(2em - 6px);
	border:var(--border-width) solid var(--black);
	background-color:var(--white);
	color:var(--black);
	border-radius:0;
	border-top-right-radius:2em;
	border-bottom-right-radius:2em;
	
}

/* client specific 
------------------------------------------------------- */

/* -------------------------------------------------------------------------------------
=Bottom Panel #pb
------------------------------------------------------------------------------------- */
#pb {
	width: 100%;
	margin: auto;
	margin-top: 4em;
}

/* 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;
	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);
	margin: 0 auto;
	padding-bottom: 2em;
	position: relative;
	display: grid;
	align-items: start;
	grid-template-columns: var(--spacer-width) auto auto 1fr  var(--spacer-width);
	grid-template-areas:
		". shopping about .  .";
	color:var(--bottom-panel-text-color);
}

#pb li{
	list-style:none;
}

#pb h3{
	text-transform:uppercase;
	font-size:1.2em;
}


.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;
	text-align:center;
	color:var(--white);
	grid-template-areas:"company";
}

#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;
}

#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 {
	/* width: var(--site-max-width); */
	margin: auto;
	text-align:left;
}

.crumb {
	display: block;
	margin: 0 ;
}

.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: 1rem;
	padding: 0;
	margin: 0;
	display: inline-block;

}

/*active page */
.bdcb li h1,
.bdcb li h3{
	font-size: 1rem;
	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: .825rem;
	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 {}

/* -------------------------------------------------------------------------------------
=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 {
	margin:1em 0;
	text-align:center;
}
.carousel.prod h2{
	display:block;
	border-radius:0;
	text-align:center;
	margin-bottom:1rem;
	border-top:1px var(--grey) solid;
	border-bottom:1px var(--grey) solid;
}




.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
------------------------------------------------------------------------------------- */

/* -------------------------------------------------------------------------------------
=SearchHeader / SearchFooter 
------------------------------------------------------------------------------------- */
.deptwrap {}

.searchheader {
	padding: .5em;
	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";
	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;
}

#dord{
	font-size:.825rem;
	padding: 10px 16px;
}
#dord option{
	font-size:.825em;
}

/*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: 1.5em;
	grid-row-gap: 3em;
	position: relative;
	margin: 1em 0;
}

.pmwide #sr {
	grid-template-columns: repeat(5, 1fr);
}

/* -------------------------------------------------------------------------------------
=FilterSearch 
------------------------------------------------------------------------------------- */
#pl .filter {
	height: 100%;
	width: 0%;
	position: fixed;
	z-index: 10001;
	top: 0px;
	left: 0px;
	background-color: var(--popout-color);
	overflow-x: hidden;
	transition: var(--transition);
	box-shadow: var(--box-shadow);
	padding: .5em 1rem;
	display: none;
}

#pl .filter::-webkit-scrollbar {
  width: 10px;
}

#pl .filter::-webkit-scrollbar-track {
  background: var(--white); 
}
 
/* Handle */
#pl .filter::-webkit-scrollbar-thumb {
  background: var(--grey); 
}

/* Handle on hover */
#pl .filter::-webkit-scrollbar-thumb:hover {
	background: var(--grey);
	cursor:grab;
}

#fstrigbtn {
	display: block;
}

#pl .filter.showfilter{
	display:block;
	width:50%;
	max-width:300px;
}

.filter .bt {}

.filter .bt h3 {
	font-weight:var(--heading-font-weight);
	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(--half-spacing) 0;
	font-family: var(--sub-heading-font);
	margin: 0;
	cursor: pointer;
	text-align: left;
	
}

.citem::before,
.citemselected::before {
	font-family: var(--font-awesome);
	margin-right: .5rem;
	display: inline-block;
}

.citem::before {
	content: '\f0c8';
}

.citemselected::before {
	content: '\f14a';
	color:var(--black);
	font-weight:600
}

.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"] {
	display:none;
}
.mnu_filter_search{
	display:grid;
}

div[sectiontype="Refine by Colour"] {
	gridq-row:1;
}

.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 {
	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;
	text-align:center;
	padding:var(--half-spacing) var(--spacing);
	border: var(--border-width) solid var(--black);
	border-radius:var(--border-radius);
	cursor:pointer;
}

.attrsection + .resetfs{
	display:none;
}

#fstrigbtn{}

.fstrigspn{
	display:inline-block;
	vertical-align:middle;
	text-align:center;
	padding:var(--half-spacing) var(--spacing);
	border: var(--border-width) solid var(--black);
	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;
}

.fstrigspn:hover{
	color:var(--white);
	background-color:var(--grey)
}

/*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(--white);
	border-color:var(--black);
}

.fltrattrtxt:after{
	content:"\0058";
	font-family:var(--font-awesome);
	display:inline-block;
	font-size:.725em;
	margin-left:.5rem;
}

.resetfs:hover,
.fltrattrbtn:hover{
		background-color:var(--grey);
	border-color:var(--grey);
	color:white;
}

/* close filter button */
.fsclsdiv {
	text-align:right;
}

.fsclsdiv .fsclsspn{
	color:var(--black);
	font-family:monospace;
	padding:.5em;
	cursor:pointer;
}

/* -------------------------------------------------------------------------------------
=Deptsingle  
------------------------------------------------------------------------------------- */
.deptsingle {
	position: relative;
	border-radius: var(--border-radius);
	border: var(--border-width) solid var(--border-color);
}

/* -------------------------------------------------------------------------------------
=Subdepartment tree  
------------------------------------------------------------------------------------- */
.depttree {
	grid-column: 1/-1;
	margin:1em 0;
}
.depttree>.bt{
	margin-right: 2em;
}

.depttree>.bt,
.depttree>.bt + .bc{
	display:inline-block;
	vertical-align:middle;
}
.depttree>.bt h3 {
	text-align:left;
	font-size:1.75em;
	margin-bottom:0;
	/* display:none; */
}

.depttree {
	display: block;
	max-width:calc(100% - 10em);
	/* margin:2rem; */
}

.depttree h4.tagline {
	font-size:1em;
	margin-bottom: .5rem;
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: left;
	font-weight:normal;
}

.depttree .art{
	margin-bottom:2em;
}

.depttree ul {
	text-align:center;
	margin:auto;
}

.depttree li {
	list-style:none;
	display:inline-block;
	padding:0 .5em;
	margin-bottom:1em;
}
.depttree li a.img{
	grid-area:image;
	display:none;
}

.depttree li a.img img {
	width:100%;
	margin:0 !important;
	object-fit: cover;
}

.depttree li a.txt {
	grid-area:image;
	display:inline-block;
	border-radius:2em;
	padding:.5em 2em;
	margin:auto;
	/* margin-bottom:1em; */
	background-color:var(--white);
	border:1px var(--black) solid;
}

.depttree li:hover a.txt{
	color:var(--white);
	background-color:var(--grey);
	border:1px var(--grey) solid;
}

.depttree li p{
	grid-area:description;
	margin:0;
	align-self:center;
	padding:.5em;
	font-size:.825em;
	display:none;
}

/***********************************************************************/
/* Side Department Nav                                             */
/***********************************************************************/
.expdeptsshowbtn{
	border:1px solid var(--border-color);
	padding:1em;
	display:inline-block;
	cursor:pointer;
}

#pl .expdepts  {
	height: 100%;
	width: 0%;
	position: fixed;
	z-index: 10001;
	top: 0px;
	left: 0px;
	background-color: var(--popout-color);
	overflow-x: hidden;
	transition: var(--transition);
	box-shadow: var(--box-shadow);
	padding: .5em 1rem;
	display: none;
}

#pl .expdepts ::-webkit-scrollbar {
  width: 10px;
}

#pl .expdepts ::-webkit-scrollbar-track {
  background: var(--grey); 
}
 
/* Handle */
#pl .expdepts ::-webkit-scrollbar-thumb {
  background: var(--grey); 
}

/* Handle on hover */
#pl .expdepts ::-webkit-scrollbar-thumb:hover {
  background: var(--grey); 
}

#fstrigbtn {
	display: inline-block;
}

#pl .expdepts.showexpdepts{
	display:block;
	width:50%;
	max-width:300px;
	cursor:pointer;
}

 
.deptlist2{
	padding:1em;
}

.deptlist2 ul{
	list-style-type: none;
	position: relative;
}

.deptentryheader{
	position:relative;
}
.deptentryheader.exp a{}

.deptentry .deptentryheader a {}
 
 /* This should be the top level depts */ 
.deptlist2 li{}

/* this should be the 2nd level expansions */ 
.deptlist2 .deptentry{}

.deptlist2 .deptentry .deptentryheader{
    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{}

.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:var(--text-link-color);
}

/* -------------------------------------------------------------------------------------
=FeaturedProducts 
------------------------------------------------------------------------------------- */
/* Base settings
------------------------------------------------------- */
#deptlist .fprdcont, 
#searchlist .fprdcont {}

.fprd {
	position: relative;
}

.fprd:hover {}

.fprd {
	display: grid;
	grid-template-columns:1fr;
	grid-template-areas:
		"image image"
		"title title"
		"selling-price buy-pane"
		". buy-pane";
	align-items:start;
	position:relative;
}

.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;
	margin-bottom:.25em;
}

.fprd .fprdimg img {
	margin: 0 !important;
	object-fit:cover;
	width:100%;
}

.fprd .fprdimg a {}

/* image swapping
------------------------------------------------------- */

.fprd .fprdimg .swap{
	display:none;
	position:absolute;
	top:0;
	z-index:1;
	width:100%;
}

.fprd .fprdimg:hover .swap{
	display:block;
}

/* image flags
------------------------------------------------------- */
.fprdimg .flag{
	position:absolute;
	pointer-events:none;
	z-index:1;
}

.fprdimg .flag.newin{
	left:0;
	top:0;
	max-width:3em;
}

.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);
	font-size:1em;
}

.fprd .fprdtitle span,
.fprd a.title span{
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-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);
	font-weight:normal;
	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:left;
}

.fprd .price label {
	/* display:none; */
}

.fprd .price h6 {
	font-size:1em;
}

.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;
}

.fprd .trade h6 span {
	display:none;
}

/*offer price */
.fprd .offer:not(.flag) {
	grid-area: selling-price;
}

.fprd .offer label {
	display:inline-block;
}

.fprd .offer h6 {
	display:inline-block;
	margin-left:1em;
}

.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;
	display:none;
}

.fprd .prevprice label {}
.fprd .prevprice h6 {
	text-decoration: line-through;
	text-decoration-color:var(--grey);
}

.fprd .prevprice h6 span{
	display:none;
}

/* saving ribbon */
.fprd .saving {

	--highlight-color:var(--grey);
--f: .5em; /* control the folded part*/
	--r: .8em; /* control the ribbon shape */
	
	position: absolute;
	left: 20px;
	top: calc(-1*var(--f));
	padding: .2em;
	background: var(--highlight-color);
	border-left: var(--f) solid #0005;
	border-bottom: var(--r) solid #0000;
	clip-path: polygon(var(--f) 0,100% 0,100% 100%,calc(50% + var(--f)/2) calc(100% - var(--r)), var(--f) 100%,var(--f) var(--f),0 var(--f));
	z-index:100;
}



/* HTML: <div class="ribbon">Your text content</div> */
.ribbon {
  font-size: 28px;
  font-weight: bold;
  color: #fff;
}
.ribbon {
	--f: .5em; /* control the folded part*/
	--r: .8em; /* control the ribbon shape */
	
	position: absolute;
	left: 20px;
	top: calc(-1*var(--f));
	padding: .2em;
	background: var(--highlight-color);
	border-left: var(--f) solid #0005;
	border-bottom: var(--r) solid #0000;
	clip-path: polygon(var(--f) 0,100% 0,100% 100%,calc(50% + var(--f)/2) calc(100% - var(--r)), var(--f) 100%,var(--f) var(--f),0 var(--f));
}





.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;
	left:0;
	max-width:3.5em;
	z-index:100;
}

.fprdimg .piflags .f16875522 img{
	width:3em;
	max-width:unset
}

.fprd .piflags ul {
	margin: 0;
	padding: 0;
}

.piflags ul li {
	list-style: none;
	margin: 0;
	display:inline-block;
}

.piflags ul li img{
	max-width:3em
}


/* 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 {
	/*just a button for this client - no qty or dropdowns */
	grid-area: buy-pane;
	text-align: right;
	max-width:100%;
	display:block;
	align-self:center;
}


.fprd form .stock{}
.fprd form .stock h6{}

.fprd form select {}

.fprd form label {}

.fprd button {}

.fprd button:hover,
.fprd button:active{}

.fprd button.fpskuqtysub {}
.fprd button.fpskuqtyadd {}

.fprd input.fpskuqty {}

.fprd .submit {
	display:inline-block;
	vertical-align:middle;
	border-radius:2em;
	padding:.25em 1em;
}
/* sample request
------------------------------------------------------- */
.fprd form.smplreqform{
	grid-area:image;
	z-index:100;
	align-self:end;
	text-align:right;
}

.fprd form.smplreqform .submit{
	background-color:var(--grey);
	border:none;
}


/* Wishlist on fprd
------------------------------------------------------- */
.fprd .sfl{
	grid-area:unset !important;
	position:absolute;
	top:.5em;
	right:.5em;
	z-index:1;
}

.fprd .sfl .submit {
	background-color:white;
	border-radius:4rem;
	padding:.25rem;
	width:2.5em;
	line-height:1;
}

/* Email when in stock
------------------------------------------------------- */
.fprd .ewis {
	grid-area: buy-pane;
	align-self:end;
	margin: 0;
}

/* 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 {}

/* Product Panels 
------------------------------------------------------- */
#pi {
	margin: auto;
	padding: 0;
	padding-top:1em;
	max-width:calc(100% - 15em)
}

#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:41.348973607038123167155425219941fr 58.651026392961876832844574780059fr ;
	grid-template-columns:minmax(auto, 900px) minmax(50%, 1fr);
	grid-template-areas:
		"top top"
		"left right"
		"left ."
		"bottom bottom";
	grid-column-gap: 4rem;
}

#pi .main .top {
	position:relative;
	grid-area: top;


}

#pi .main .left {
	position:relative;
	grid-area: left;
	display:grid;
	grid-template-areas:"gallery"
	"brand"
	".";
	grid-template-rows:auto auto 1fr;
	
}

.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-price"
		"product-bullets"
		"product-extra-description"
		"product-description"
		"product-buy-pane"
			"client-ref"
		"product-tabbed-description";
	grid-template-columns: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;

}



/* 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;
	text-align:center;
	margin-top:2rem;
}

#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;
}

#pi .brandmanu p{
	display:none;
}

#pi .brandmanu a {
	font-size:.825em;
	display: inline-block;
	color:var(--white);
	background-color:var(--grey);
	padding:.5em 2em;
	border-radius:2em;
}

#pi .alldepts {
	grid-area: product-departments;
	text-align:center;
	margin:2em;
	
}

#pi .alldepts:before{
	grid-column:1/-1;
	content:'see all our';
}


#pi .brandmanu.clientref h5,
#pi .brandmanu.clientref h6{
}


/* Clientref
------------------------------------------------------- */
#pi .brandmanu.clientref {
	grid-area: client-ref;
	margin-bottom:2em;
}

/* 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);
	text-align:left;
}

#pi .pititle form{
	display:none;
}

#pi .pititle h2{
	font-size:2.5em;
	margin-bottom:0;
	text-align:left;
}

/* Strapline
------------------------------------------------------- */
h4.strap {
	grid-area: product-strapline;
	font-family:var(--text-font);
	font-weight:normal;
	font-size: 1.2em;
}




/* Gallery - now Swiffy
------------------------------------------------------- */
#pi .sticky {
	/* doesn't work if you have things other than the gallery there */
}

#pi .gallery {
	grid-area:gallery;
}

#pi .gallery #mainimages{
	cursor:pointer;
}

#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-indicators {
	display: none;
}

#pi .gallery #galleryimages {
	/* display:none; */
	grid-area:thumbs;
	--swiffy-slider-item-count: 4;
	margin-top:2em;
}



#pi .gallery #galleryimages li img{
	aspect-ratio: 1/1;
	cursor:pointer;
}

#pi .gallery #galleryimages .slider-indicators{
	display:none;
}

#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;
}




/* Video in gallery
------------------------------------------------------- */
.youtubeplayercontainer>*,
.vimeoplayercontainer > *{
	min-height: 20rem
}

.youtubeplayercontainer>*,
.vimeoplayercontainer > *{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.youtubeplayercontainer>*,
.vimeoplayercontainer > *{
	-o-object-fit: contain;
	object-fit: contain
}

.vimeoplayercontainer  iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* video thumbnail overlay */
#pi .gallery #galleryimages .video{
	display:grid;
	grid-template-areas:"image";
}

#pi .gallery #galleryimages .video img{
	grid-area:image;
}
#pi .gallery #galleryimages .video:after{
	grid-area:image;
	font-family:var(--font-awesome);
	color:var(--grey);
	content:"\f144";
	font-size: 3.5rem;
	pointer-events:none;
	align-self:center;
	text-align:center;
}


/* OLD GALLERY
------------------------------------------------------- */

#pi .piimg{
	grid-area:gallery;
}

#pi .piimg img{
	width:100% !important;
}
#pi  .piimg + .gallery {
	grid-area:unset;
}


#pi  .piimg + .gallery .piimg_large {
	display:inline-block;
	margin:.5em;	
}



/* save for later
------------------------------------------------------- */
#pi .sfl{
	position:absolute;
	top:.5rem;
	right:.5rem;
}

#pi .sfl input{
	background-color:var(--white);
	border-radius:50%;
	width:3em;
	padding:.5em;
}


/* Price Panel
------------------------------------------------------- */
.pricecomp{
	grid-area:product-price;
	padding:1em 0;
}
.pricecomp .price h6{
	font-size:1.5em;
	margin-bottom:0;
}
.pricecomp .price label{
	display:none;
}

.pricecomp .prevprice,
.pricecomp .offer,
.pricecomp .saving{
	display:inline-block;
	margin-right:1rem;
}

.pricecomp .offer,
.pricecomp .offer h6{
	font-weight:600;
}

/* Buy Panel
------------------------------------------------------- */
#pi .pibuy {
	grid-area:product-buy-pane;
	/* margin-top:2em; */
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	/* grid-gap:1rem; */
	grid-template-areas:
		"stock stock"
		"buy-pane buy-pane"
		". wishlist";
	align-items: start;
}

#pi .pibuy .wishlist{
	display:none;
}

.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{
	margin:.5rem 0;
}

/*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(--grey);
}
#pi .pibuy .rrp label{}
#pi .pibuy .rrp span{} 



/*normal price */
#pi .pibuy .price {
	grid-area: selling-price;
	display:none;
}

/*offer price */
#pi .pibuy .offer {
	grid-area: offer-price;
	display:none;
}
#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;
	display:none;
}

#pi .pibuy .prevprice h6 {
	text-decoration: line-through;
	text-decoration-color:var(--grey);
}

#pi .pibuy .prevprice h6 span{
	display:none;
}

/*saving  info */
#pi .pibuy .saving {
	grid-area:saving;
	margin-left:.5rem;
	display:none;
}
#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: left;
}

#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;
	text-align:right;
}
/* the options bit that isn't wanted right now */
#wishlist div{
	display:none;
}

#wishlist label{
	display:inline;
	font-size:.825em;
}

#wishlist .chkbox{
	margin-right:.5em;
}

#wishlist .submit{
	background-color:var(--alt-button-color);
	border-color:var(--alt-button-border-color);
	color:var(--alt-button-text-color);
	border-width:1px;
	border-radius:2em;
	padding:.5em;
	background-size:1em;
	width:3em;
}

#wishlist .submit:hover{
	background-color:var(--alt-button-hover-color);
	border-color:#e30613;
	color:var(--alt-button-hover-text-color);
}
/* Buy Form
-------------------------------------------------------*/
#buy_form {
	grid-area: buy-pane;
	margin: 1rem 0;
	display:grid;
	grid-template-areas:
		"sacontainerpanel sacontainerpanel"
		"pers pers"
		"buy-button options";
	grid-template-columns:1fr 1fr;
}

/* attributes/sku select */
#buy_form .options, 
#pi #buy_form .options.pers{
	display:inline-block;
	grid-area:options;
}

#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: left;
	grid-area:buy-button;
}

/* quantity input 
---------------------------*/
#pi .pibuy .attrqty .qtyinput{
	/*design has no qty input */
	display:none;
}

/*increase/decrease buttons */
#pi .pibuy .attrqty .qtyinput  button{}

#pi .pibuy .attrqty .qtyinput  button:hover{}

/*hide quantity label*/
#pi .pibuy .attrqty .qtyinput label{}
#pi .pibuy .attrqty .qtyinput #skuqty{
	display:inline-block;
	vertical-align:	middle;
}

#pi .pibuy .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(--grey);
	border-left:0;
	border-right:0;
}

#pi .pibuy .attrqty .submit#buy{
	grid-area:buy;
	padding:1em;
	text-align:center;
	border-radius:2em;
	padding:.5em 2em
}
/* personalisation
-------------------------------------------------------*/
#pi .pibuy .pers{
	grid-area:pers;
	margin-bottom:1rem;
}

#pi .pibuy .pers li{
	list-style:none;
	/* margin-bottom:1em; */
}
#pi .pibuy .pers label img,
#pi .pibuy .pers span img{
	display:inline;
}

#pi .pibuy .pers input{
	border:var(--border-width) solid var(--black);
	width:100%;
}

#pi .pibuy .pers textarea{
		width:50%;
}

#pi .pibuy .pers .chars{
	display:block;
	color:var(--grey);
	font-size:x-small
}





/* Sample request 
-------------------------------------------------------*/
#pi .pibuy #smplreq {
	grid-area: sample;
	display: inline-block;
	background-color:var(--grey);
	border:1px solid var(--grey);
	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:0;
	padding-bottom:0;
}

/*temp hack */
.pidescx p{
	display:none;
}

.pidescx ul{}
.pidescx li{}

#pi .pidescx ul {
	font-size:1em !important;
	list-style-type:none !important;
	margin-left:0 !important;
}

#pi .pidescx br{
	display:none;
}

#pi .pidescx ul li:before{
	font-family: "Font Awesome 5 Pro";
	font-size: 1em;
	display: inline-block;
	content: '\f00c';
	margin-right:.5em;
	color:var(--info-color);
}


/* 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;
	/* list-style-position:inside; */
	list-style:none;
}

#pi .bullets  li:before{
	font-family: "Font Awesome 5 Pro";
	font-size: 1em;
	display: inline-block;
	content: '\f00c';
	margin-right:.5em;
	color:var(--info-color);
}

/* Links
-------------------------------------------------------*/
#pi .pilinks {
	grid-area: product-links;
	padding:1em 0;
	/* font-size:.825em; */
}

#pi .pilinks li {
	display: inline-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';
}

/* 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 {
	position:absolute;
	top:.5em;
	left:.5em;
}


/* 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 {
	grid-area: product-departments;
	text-align:center;
	margin:2em;
	
}

#pi .alldepts:before{
	grid-column:1/-1;
	content:'see all our';
	display:inline-block;;
	text-align:center;
	font-family:var(--heading-font);
	color:var(--text-heading-color);
	margin-right:1em;

}
#pi .alldepts a {
	font-size:.825em;
	display: inline-block;
	color:var(--white);
	background-color:var(--grey);
	padding:.5em 2em;
	border-radius:2em;
}

/* 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;
	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;
}

#pi ul.pi_tabs li:last-child {}

#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;
}

/* hide the duplicated title */
div[itemprop="description"] > h2{
	display:none;
}

#pi .pi_accordion .header {
	border:none;
	border-bottom:1px solid var(--black);
	padding:.5em 0;
	font-size:1.25em;
}

#pi .pi_accordion .piflags ul{
	/* outline:1px red solid; */
	display:block;
	margin-left:0;
}

#pi .accordion .header img {
	grid-area: expand;
	cursor: pointer;
	/* max-width:1em; */
}


#pi  ul.pi_accordion li:nth-last-child(2){
border-bottom:none;
}

#pi .pi_accordion .pane{
	padding:1em 0;
}

#pi .pi_accordion .pane h2{
	font-size:1.5em;
}

#pi .pi_accordion .pane h3,
#pi .pi_accordion .pane h4,
#pi .pi_accordion .pane h5{
	font-size:1.25em;
}

/*cleanups for client poor content */

#pi .pi_accordion .pane span{
	font-size:1em !important;
}

/* Associated Products
------------------------------------------------------*/
#pi .pass{
	width:var(--site-max-width);
	margin:auto;
	grid-area: product-recommended;
	margin-top: 1rem;
}

#pi .pass h3{
	align-self:center;
	text-align:center;
	padding:0 1em;
	margin:0;
}


#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 {
	width:100%;
	margin:auto;
	grid-area: product-recommended;
}

#pi .prec  h3{
	align-self:center;
	text-align:center;
	padding:.5rem 0;
	font-size:1.75em;
	margin:0;
	border-top:1px var(--grey) solid;
	border-bottom:1px var(--grey) solid;
}

#pi .prec .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(--grey) solid;
	border-bottom:1px var(--grey) 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: 18vw;
}

.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{
	align-self:center;
	text-align:center;
	padding:0 1em;
	margin:0;
}

#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{
	grid-area:sacontainerpanel;
	margin-bottom:1rem;
}

.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(--grey);
	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(--grey);
	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 ."
		"prompane prompane";
	align-items: start;
	margin-bottom: 4rem;
	margin-top:1rem;
}

/*this is a bit of a hack, all the prom contents should be in their own container ! */
#pm .bskt .carousel 
{
	grid-area:prompane;
	
}

/* 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;
	margin-bottom:1rem;
}

/*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(--half-spacing);
	margin-bottom: var(--spacing);
	align-items: start;
	display: grid;
	--image-width: 32px;
	--description-width: 1fr;
	--qty-width: auto;
	--netprice-width: auto;
	--rem-width: auto;
	--total-width: 100px;
	grid-template-columns: var(--image-width) 1fr 2em auto auto;
	grid-template-areas:
	"icon desc qty qty qty"
	"icon giftwrap giftwrap giftwrap giftwrap"
	"icon gifttext gifttext gifttext gifttext"
	"icon gtentry gtentry gtentry  gtentry"
	". skuselect skuselect skuselect skuselect"
	". . price price price "
	"netprice netprice netprice netprice rem";
	border-bottom:1px solid	var(--border-color);
	grid-column-gap:0rem;

}

/* 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 .5em;
}

#pm .bskt .line .prodinfo .surcharge {
}

#pm .bskt .line .prodinfo li {
	list-style: none;
}

#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-size:1.2rem;
}

#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;
}
#pm .bskt .lines .line .netprice {
	grid-area: netprice;
	text-align:right;
	align-self:center;
}

#pm .bskt .lines .line .qty form {
	line-height: 1;
}

#pm .bskt .lines .line .qty label,
#pm .bskt .lines .line .qty #update{
	display:none;
}

#pm .bskt .lines .line .qty button {
	-webkit-appearance: none;
	background-color:var(--grey);
	color:var(--white);

	font-size: 16px;
	padding: var(--half-spacing) var(--half-spacing);
	width: 2em;
	border: var(--border-width) solid var(--grey);
	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(--black);
	color:var(--white);
	border-color:var(--black)
}

#pm .bskt .lines .line .qty button.skuqtybsktsub {
	border-top-left-radius:2em;
	border-bottom-left-radius:2em;
}

#pm .bskt .lines .line .qty button.skuqtybsktadd {
	border-top-right-radius:2em;
	border-bottom-right-radius:2em;
}

#pm .bskt .lines .line .qty input.inputtext {
	display:inline-block;
	vertical-align:middle;
	text-align: center;
	border-radius:0;
	text-align:center;
	font-size:1em;
	border-color:var(--border-color);
	/* margin:0 .5em; */
}

/* remove item */
#pm .bskt .line .rem {
	grid-area: rem;
	text-align: center;
	/* align-self: center; */
}

#pm .bskt .line .rem input {
	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;
	align-self:center;
}

/* 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;
	/* 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;
	margin-bottom:1rem;
	border-color:var(--black);
	margin-right:1rem;
}
#bsktid .shipping ul li.delivery.deliveryto form input.submit{
	grid-area:locate;
	margin-bottom:1rem;
}

#bsktid #countryid{
	grid-area:country;
	margin-bottom:1rem;
	max-width:calc(100% - 116px);
}
#bsktid #zoneid
{
	max-width: calc(100% - 16px);
}


#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 */

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(--grey); */
	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(--grey);
	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(--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;
	--logo-width:300px;
	--spacerwidth: calc((100% - var(--site-max-width)) / 2);
	grid-template-columns: var(--spacerwidth)  var(--logo-width) 2em var(--breadcrumb-width) var(--spacerwidth);
	grid-template-areas: ". logo . breadcrumb .";
}

#pt.checkouttop .ext .pane {
	grid-area: breadcrumb;
	/* text-align: left; */
	/* margin-left:2em; */
}

#pt.checkouttop .ext .pane li {
	display: inline-block;
	margin: 0;
	margin-right: .5em;
}

#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: .725em;
	margin-right: .5em;
	/* 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(--black)
}

/* 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"
		"newcust"
		"guest ";
}

.page_checkoutsignin .form#psign {
	grid-area: signin;
	width: auto;
}

.page_checkoutsignin .form#pguest {
	grid-area: guest;
	width: auto;
}

.page_checkoutsignin .form.newcust#pguest {
	grid-area: newcust;
	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_shipping,
.page_payment {

	max-width:1400px;
}

/* Address (delivery and invoice) 
------------------------------------------------------- */

.page_delivery .bdcb{
	/*duplicated somehow*/
	display:none;
}
/*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: 0 1rem;
	margin-bottom: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% - 10px);
	/* the 10px is because of the required image that writes out */
}

.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{
	margin-bottom:1em;
}
.page_delivery .form .deladd .chkbox {
	width: auto;
	/* margin-right: 1rem; */
}

.page_delivery .form .deladd label {
	display: inline;
}

/*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% - 10px);
	grid-template-columns: 1fr 1fr;
	grid-column-gap:.5em;
	grid-template-areas:
		"title title "
		"postcode locate"
		"manual manual"
		"address address ";
	align-items:center;
}

#pclupManualAddressDel,
#pclupManualAddress{
	grid-area:manual;
	text-decoration:underline;
	cursor:pointer;
	margin-bottom:1em;
}

#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.thepresentfinder.co.uk/thepresentfinder/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.thepresentfinder.co.uk/thepresentfinder/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.thepresentfinder.co.uk/thepresentfinder/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.thepresentfinder.co.uk/thepresentfinder/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.thepresentfinder.co.uk/thepresentfinder/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.thepresentfinder.co.uk/thepresentfinder/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-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;
	/* padding:1em; */
	margin-bottom:1em;
}

.bsktsum .lines .line {
	align-items: start;
	display: grid;
	grid-template-columns: 4em 1fr auto auto;
	grid-template-areas:
		"thumb desc qty price"
		"thumb . . .";
	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;
	margin-left:.5em;
}

.bsktsum .lines li {
}

.bsktsum .lines li.descr {
	font-family: var(--heading-font);
	font-weight:600;
	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; */
	padding:0 .5em
}

.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 100px;
	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;
	margin:1em 0;
}
.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 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(--grey);
	color:var(--grey);
	background-color:var(--grey);
	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;
}


/* orders view - requires some specific overrides depending on what is being written out
/* an attempt at being responsive using table to grid stuff 
------------------------------------------------------- */
table.orders,
table.order{
	display: grid;
	border-collapse: collapse;
	min-width: 100%;
	border: var(--border-width) solid var(--border-color);
	overflow-x:auto;
}

table.orders{
	/*number of columns must match what is being written out - this isn't flawless */
	grid-template-columns: 
		minmax(200px, 1fr)
		minmax(200px, auto)
		minmax(200px, auto)
		minmax(200px, auto)
		minmax(200px, auto);
}

table.order{
	/*number of columns must match what is being written out - this isn't flawless */
	grid-template-columns: 
		minmax(100px, 1fr)
		minmax(100px, auto)
		minmax(100px, auto);
}

table.order tr:nth-child(odd) td,
table.orders tr:nth-child(odd) td{}

table.order tr td[colspan="2"],
table.orders tr td[colspan="2"]{
	grid-column:auto / span 2;
}

table.order tr td[colspan="3"],
table.orders tr td[colspan="3"]{
	grid-column:auto / span 3;
}
table.order tr td[colspan="4"],
table.orders tr td[colspan="4"]{
	grid-column:auto / span 4;
}
table.order tr td[colspan="5"],
table.orders tr td[colspan="5"]{
	grid-column:auto / span 5;
}

table.order thead,
table.order tbody,
table.order tr,
table.orders thead,
table.orders tbody,
table.orders tr {
	display: contents;
}

/*set the color of the header*/
table.order tr.header th,
table.orders tr.header th{
	background-color:var(--grey);
	color:var(--black);
}

table.order th,
table.order td,
table.orders th,
table.orders td {
	padding: 1rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

table.order th,
table.orders th{
	position: sticky;
	top: 0;
	text-align: left;
	font-weight: normal;
	font-size: 1.1rem;
	width:auto;
}

table.order td a.btn,
table.orders td a.btn{
	display: block;
	background:none;
	color:var(--text-color);
	border:none;
	text-align:right;
	font-size:.825em;
}

/*in the "action" area we sometimes show the ability to buy the product again */
.action button {
	-webkit-appearance: none;
	background-color:var(--grey);
	color:var(--grey);
	font-size: 16px;
	padding: var(--half-spacing) var(--half-spacing);
	width: 2em;
	border:1px var(--grey) solid;
	cursor:pointer;
	display:inline-block;
	vertical-align:middle;
}

.action input.inputtext {
	font-size:1rem;
	border-color:var(--grey);
	text-align: center;
	width:2em;
	padding:.5em 0;
	display:inline-block;
	vertical-align:middle;
}

/* page_orderinfo
------------------------------------------------------- */
.page_orderinfo{}

/* member order detail view */
.member-order{
	display:grid;
	grid-template-areas:"order-info order-info"
	"delivery-address invoice-address"
	"order-details order-details"
	"account-actions account-actions";
	grid-template-columns:1fr 1fr;
	grid-gap:1em;
	margin:2em 0;
}
.order-info{
	grid-area:order-info;
}

.order-info h3{
	text-align:center;
}

.delivery-address{
	grid-area:delivery-address;
}

.delivery-address ul,
#pm .artp .delivery-address ul{
	padding:0;
	margin:0;
}
.delivery-address li{
	list-style:none;
}

.delivery-address .name{
	padding:0;
	font-weight:600;
}
.delivery-address .header{
	padding:0;
}

.invoice-address{
		grid-area:invoice-address;
}

.invoice-address ul,
#pm .artp .invoice-address ul{
	padding:0;
	margin:0;
}

.invoice-address li{
	list-style:none;
}

.invoice-address li{
	list-style:none;
}

.invoice-address .name{
	padding:0;
		font-weight:600;
}

.invoice-address .header{
	font-weight:500;
	padding:0;
}

.order-details{
	grid-area:order-details;
}


/* member orders view 
------------------------------------------------------- */
.member-orders{
	margin:1em 0
}

/* Wishlists 
------------------------------------------------------- */
.page_wishlists {}


.page_wishlists .link a{
	margin-right:1em;
}

.wishlist{}

.wishlist table{
	display: grid;
	align-items:center;
	border-collapse: collapse;
	min-width: 100%;
	border: var(--border-width) solid var(--border-color);
	overflow-x:auto;

	/*number of columns must match what is being written out - this isn't flawless */
	grid-template-columns: 
		minmax(100px, auto)
		minmax(100px, 1fr)
		minmax(100px, auto)
		minmax(100px, auto)
		minmax(100px, auto)
		minmax(100px, auto)
		minmax(100px, auto);
	margin-bottom:1em;
}

/*we need to add a class to each of the different wishlist tables
 this one is an actual wishlist, the above is a list of all wishlists
*/
.wishlist .socbook + .form table{
	display: grid;
	align-items:center;
	border-collapse: collapse;
	min-width: 100%;
	border: var(--border-width) solid var(--border-color);
	overflow-x:auto;

	/*number of columns must match what is being written out - this isn't flawless */
	grid-template-columns: 
		minmax(32px, 100px)
		minmax(100px, 1fr)
		minmax(100px, auto)
		minmax(100px, auto)
		minmax(100px, auto)
		minmax(100px, auto);
	margin-bottom:1em;
}

.wishlist .socbook + .form table input{
	margin-bottom:.5em;
}

.wishlist table tr:nth-child(odd) td,
table.orders tr:nth-child(odd) td{}

.wishlist table tr td[colspan="2"]{
	grid-column:auto / span 2;
}

.wishlist table td[colspan="3"]{
	grid-column:auto / span 3;
}
.wishlist table td[colspan="4"]{
	grid-column:auto / span 4;
}
.wishlist table td[colspan="5"]{
	grid-column:auto / span 5;
}


.wishlist table thead,
.wishlist table tbody,
.wishlist table tr {
	display: contents;
}

/*set the color of the header*/
.wishlist table tr.header th{
	background-color:var(--grey);
	color:var(--black);
	height:calc(100% - 2rem);
}

.wishlist table th,
.wishlist table td {
	padding: 1rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.wishlist table th{
	position: sticky;
	top: 0;
	text-align: left;
	font-weight: normal;
	font-size: 1.1rem;
	width:auto;
}

.wishlist table td a.btn{
	display: block;
	background:none;
	color:var(--text-color);
	border:none;
	text-align:right;
	font-size:.825em;
}

.page_wishlists .dob select{
	margin-right:1em;
}
/* -------------------------------------------------------------------------------------
=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 
------------------------------------------------------- */
#a19169289 table{
	width:100%;
}

#a19169289 table th{
	font-family:var(--heading-font);
	font-size:1.5em;
	background-color:var(--light-grey)
}

.deptstd h2{
	display:none;
}
/* ------------------------------------------------------------------------------------
	SCREEN - v6 nav 2024
	Filename : nav.css
	Last Updated : 24. 07. 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(.725em + 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 .725em 0 .725em;
}

@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;
		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: 34px;
		height: 46px;
		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);
		left:0;
		right:0;
		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);transition:none;
	}
	/* 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;
		transition:none;
	}
	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);transition:none;
	}
}
/* ------------------------------------------------------------------------------------
	SCREEN - Extra extra large devices (large laptops and desktops, 1400px and up)
	Last Updated : 11. 10. 2024
	Copyright :(c) 2023 Etail Systems Ltd
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */
@media only screen and (min-width: 1400px) {

	/* defaults */
	:root{
		--site-max-width:calc(100% - 2em);
		--menu-max-width:1400px;
	}

	/* -------------------------------------------------------------------------------------
	=Subdepartment tree  
	------------------------------------------------------------------------------------- */
	.depttree {
		max-width:100%;
	}
	
	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */

	/*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;
	}
}


@media only screen and (max-width: 1920px) {
	/* defaults */
	:root{
		--site-max-width:calc(100% - 2em);
		--menu-max-width:1200px;
	}
}

@media only screen and (max-width: 1790px) {
	/* defaults */
	:root{
		--site-max-width:calc(100% - 2em);
		--menu-max-width:1200px;
	}

	#pt .ext {
		--logo-width:200px;
	}
}

@media only screen and (max-width: 1690px) {
	/* defaults */
	:root{
		--site-max-width:calc(100% - 2em);
		--menu-max-width:1200px;
		--navbar-heading-font-size: 1.1rem;
	}
}

@media only screen and (max-width: 1600px) {
	/* defaults */
	:root{
		/* --site-max-width:1200px; */
		--menu-max-width:1200px;
		--navbar-heading-font-size: 1.1rem;
		--spacing:1em;
	}

	#pt .ext {
		--logo-width:300px;
		grid-template-columns: var(--spacer-width) var(--logo-width) var(--search-width) var(--search-toggle-width) var(--icons-width) var(--basket-width) var(--spacer-width);
		grid-template-areas:
			". logo .  searchtoggle icons basket  ."
			". nav nav nav nav nav ."
			". search  search search search search .";
		align-items: center;
	
	}

	/* logo
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding: 2em 0;
		padding-bottom:1em;
	}
}
/* ------------------------------------------------------------------------------------
	SCREEN - Extra large devices (large laptops and desktops, 1200px and up) 
	Last Updated : 21. 10. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */
@media only screen and (min-width: 1200px) and (max-width:1399px) {
	/* defaults */
	:root{
		/* --site-max-width:1200px; */
		--menu-max-width: 100%;
		--menu-max-width: calc(100vw - 3em);
		--navbar-heading-font-size: 1.1rem;
		--spacing:1em;
	}

	#ptf .ext{
		padding:.5em 1em;
	}

	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */

	#pt .ext {
		--logo-width:300px;
		grid-template-columns: var(--spacer-width) var(--logo-width) var(--search-width) var(--search-toggle-width) var(--icons-width) var(--basket-width) var(--spacer-width);
		grid-template-areas:
			". logo .  searchtoggle icons basket  ."
			". nav nav nav nav nav ."
			". search  search search search search .";
		align-items: center;
		margin:0 1rem;
	}
	

	/* logo
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding: 2em 0;
		padding-bottom:1em;
	}

	/* Search
	------------------------------------------------------- */
	/* mikes hack of a search toggle */
	#a134840323{
	}

	/* info icons
	------------------------------------------------------- */
	#p51609606{
		margin-top:1em;
	}

	/* Basket
	------------------------------------------------------- */
	#pt .bskt{

	}


	#pc {
		margin:0 1rem;
		margin-bottom:1rem;
	}

	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	#pmid {
		margin:0 1rem;
		width:calc(100% - 2rem);
	}

	.depttree {
		display: block;
		max-width:100%;
		margin:2rem 0;
	}

	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf {
		width: calc(100% - 2rem);
		margin:0 1rem;
		margin-bottom:4em;
	}

	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb {
		width: calc(100% - 4rem);
		margin:0 2rem;
		margin-top: 4em;
	}

	/* -------------------------------------------------------------------------------------
	=ProductPage 
	------------------------------------------------------------------------------------- */
	#pi {
		max-width:100%;
	}
}
/* ------------------------------------------------------------------------------------
	SCREEN - large devices (laptops/desktops, 992px and up)
	Last Updated : 05. 11. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd
------------------------------------------------------------------------------------- */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	/* defaults */
	:root{
		--site-max-width:100%;
		--menu-max-width: 100%;
				--menu-max-width: calc(100vw - 3em);
		--navbar-heading-font-size: 1rem;
		--spacing:1rem;
	}

	/* -------------------------------------------------------------------------------------
	=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{}
	
	.halfWidthDbl {
		grid-column: auto / span 6;
		grid-row: span 1;
		grid-column: 1/-1
	}
	
	.quarterWidth {
		grid-column: auto / span 6;
	}
	
	.thirdWidth {}
	
	.twoThirdWidth {}

	/* -------------------------------------------------------------------------------------
	=Swiffy Slider
	------------------------------------------------------------------------------------- */
	.swiffy-slider {}
	
	.carousel.prod .swiffy-slider {
		--swiffy-slider-item-count: 4;
	}

	.carousel.dept .swiffy-slider {
		--swiffy-slider-item-count: 4;
	}
	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf .ext{
		padding:.5em 1em;
	}

	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */
	#pt .ext {
		--logo-width:300px;
		grid-template-columns: var(--spacer-width) var(--logo-width) var(--search-width) var(--search-toggle-width) var(--icons-width) var(--basket-width) var(--spacer-width);
		grid-template-areas:
			". logo . searchtoggle icons basket  ."
			". nav nav nav nav nav ."
			". search search search search search .";
		align-items: center;
		margin:0 1rem;
	}
	
	/* logo
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding: 1em 0;
		padding-bottom:1em;
	}

	/* Search
	------------------------------------------------------- */
	/* mikes hack of a search toggle */
	#a134840323{
		/* margin-top:1em; */
	}

	/* info icons
	------------------------------------------------------- */
	#p51609606{
		margin-top:1em;
	}

	/* Basket
	------------------------------------------------------- */
	#pt .bskt{
		/* margin-top:1em; */
	}

	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{
		margin:0 1rem;
		margin-bottom:1em;
	}

	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	#pmid {
		margin:0 1rem;
		width:calc(100% - 2rem);
	}
	
	/* -------------------------------------------------------------------------------------
	=Subdepartment tree  
	------------------------------------------------------------------------------------- */
	.depttree {
		max-width:100%;
	}
	
	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf {
		width: calc(100% - 2rem);
		margin:0 1rem;
	}

	#pf .ext {
		position: relative;
		padding:0;
		margin-bottom:4em;
		grid-template-columns:  1fr 1fr;
		grid-template-areas: "message message"
							"newsletter newsletter"
							"shopping about"
							"social feefo";
	}

	#pf .ext .news {
		margin:auto;
		margin-bottom:2rem;
	}

	#pf #p51838994,
	#pf #p51806208{
		margin-bottom:2rem;
		text-align:right;
		margin-right:1em;
	}

	#p51838995,
	#p51806209{
		margin-bottom:2rem;
		margin-left:1em;
	}
	
	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb {
		width: calc(100% - 4rem);
		margin:0 2rem;
		margin-top: 4em;
	}
	/*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
	------------------------------------------------------------------------------------- */
	#sr {
		grid-template-columns: repeat(4, 1fr);
	}
	.pmwide #sr {
		grid-template-columns: repeat(4, 1fr);
	}
	
	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=ProductPage 
	------------------------------------------------------------------------------------- */
	#pi{
			max-width:100%;
	}
	/* -------------------------------------------------------------------------------------
	=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 : 05. 11. 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: 768px) and (max-width: 992px)  {

	/* -------------------------------------------------------------------------------------	
	=Definitions
	------------------------------------------------------------------------------------- */
	:root{
		--site-max-width:100%;
	}


	/* -------------------------------------------------------------------------------------
	=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 {}

	/* -------------------------------------------------------------------------------------
	=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;
		position:relative;
		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: 5em;
	}

	.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;
		text-align:left;
		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;
	}

	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf .ext{
		padding:.5em 1em;
	}

	#ptf .ext {
		grid-template-areas:
		"deliverymessage feefo";
		grid-template-columns:1fr 1fr;
		align-items:center;
	}

	#a134774787 {
		display:none;
	}

	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */
	#pt .ext {
		--menu-width:55px;
		--logo-width: 330px;
		grid-template-columns: var(--menu-width) var(--logo-width) auto var(--search-toggle-width) var(--icons-width) var(--basket-width);
		grid-template-areas:
			"menulink logo . searchtoggle icons basket"
			"search search search search search search"
			"nav nav nav nav nav nav";
		align-items: center;
		margin:0 1rem;
	}
	/* logo
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding:1em 1em;
		text-algn:left;
	}

	/*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;
	}

	/* Basket - change layout
	------------------------------------------------------- */
	/*no space for free shipping header on mobile */
	#pt .bskt h4{
		display:none;
	}	
			

	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{
		margin:0 1rem;
		margin-bottom:1rem;
	}

	#pc .carousel .imgcont img
	{
		/*set a max height to avoid it being too humongous on larger displays */
		/* aspect-ratio: 1/1; */
		width: 100%;
		object-fit: cover;
		margin:auto;
	}

	/* -------------------------------------------------------------------------------------
	=Left Panel #pl
	------------------------------------------------------------------------------------- */
	#pl {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}

	/* -------------------------------------------------------------------------------------
	=Right Panel #pr
	------------------------------------------------------------------------------------- */
	#pr {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}


	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
	#pmid{
		display:block;
		margin:0 1rem;
		width:calc(100% - 2rem);
	}

	/* -------------------------------------------------------------------------------------
	=Subdepartment tree  
	------------------------------------------------------------------------------------- */
	.depttree {
		max-width:100%;
		margin:2rem 0;
	}

	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		padding:0 1em;
		width:calc(100% - 2em);

		grid-template-columns:  1fr 1fr;
		grid-template-areas: "message message"
							"newsletter newsletter"
							
							"shopping about"
		"social feefo";
	}

	#pf .ext .news {
		margin:auto;
		margin-bottom:2rem;
	}

	#pf #p51838994,
	#pf #p51806208{
		margin-bottom:2rem;
		text-align:right;
		margin-right:1em;
	}

	#p51838995,
	#p51806209{
		margin-bottom:2rem;
		margin-left:1em;
	}

	#pf #carouselArtImgs {
		--swiffy-slider-item-count:2
	}


	/* Newsletter 
	------------------------------------------------------- */
	#pf .ext .news {
		grid-area:subscribe;
		text-align:center;
		width:75%;
	}

	#pf .ext .news form {
		text-align: left;
		align-self: center;
		display:grid;
		grid-template-columns:1fr;
		grid-gap:1em;
		align-items:center;
		text-align:center;
	}

	
	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{}

	#pb .ext {
		grid-gap:3em;
		padding:0 1em;
		padding-bottom: 3em;
		grid-template-columns:1fr auto auto 1fr;
		grid-template-areas:". shopping about .";
	}

	#p51609610{
		margin-right: 0em;
	}

	/* -------------------------------------------------------------------------------------
	=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
	------------------------------------------------------------------------------------- */

	
	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi{
			max-width:100%;
	}
	
	#pi .main {
		grid-template-columns: 1fr;
		grid-template-areas: "top"
			"left"
			"right"
			"bottom";
		grid-template-columns:100%;
	}

	/* Product Title
	------------------------------------------------------- */
	#pi .pititle h2{
		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"	
			"prompane";
		align-items:start;
		margin-bottom:4rem;
	}



		grid-template-columns: var(--image-width) 1fr auto auto;
		grid-template-areas:
			"icon desc qty qty"
			"icon giftwrap giftwrap giftwrap"
			"icon gifttext gifttext gifttext"
			"icon gtentry gtentry gtentry "
			". skuselect skuselect skuselect"
			". . price rem"
			". . netprice  . ";
		border-bottom:1px solid	var(--border-color);
		grid-column-gap:.5rem;
	}

	#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;
	}
	
	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */
	/*account menu panel*/
	#pmam {
		width: 0;
		margin:0;
	}

	#pmam + .pmfull{
		width: calc(var(--site-max-width) - 2rem);
	}


	/* 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 : 05. 11. 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
	------------------------------------------------------------------------------------- */
	#pm .pmind {
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 1em;
	}
	/* 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
	}


	.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 {}

	/* -------------------------------------------------------------------------------------
	=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;
		position:relative;
		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: 5em;
	}

	.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;
		text-align:left;
		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; */
	}


	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */


	#ptf .ext{
		padding:.5em 1em;
	}

	#ptf .ext {
		grid-template-areas:
		"deliverymessage feefo";
		grid-template-columns:1fr minmax(max-content,auto);
		align-items:center;
	}

	#a134774787 {
		display:none;
	}


	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */

	#pt .ext {
		--menu-width:50px;
		grid-template-columns: var(--menu-width) 1fr var(--search-toggle-width) var(--icons-width) var(--basket-width);
		grid-template-areas:
			"menulink logo searchtoggle icons basket"
			"search search search search search"
			"nav nav nav nav nav";
		align-items: center;
		margin:0 1rem;
	}
		
	/* logo
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding:1em 1em;
	}

	/* QuickOrder
	------------------------------------------------------- */
	#pt .qord{
		display:none;
	}

	/* Search
	------------------------------------------------------- */
	/*this still needs dev work - see below for hack version which requires an article */
	#pt .icon.srch{
		grid-area:searchtoggle;
	}	

	/* 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;
	}

	/*no space for free shipping header on mobile */
	#pt .bskt h4{
		display:none;
	}
			
	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{
		margin:0 1rem;
		margin-bottom:1rem;
	}

	#pc .carousel .imgcont img
	{
		/*set a max height to avoid it being too humongous on larger displays */
		aspect-ratio: 1/1;
		width: 100%;
		object-fit: cover;
		margin:auto;
	}

	/* -------------------------------------------------------------------------------------
	=Left Panel #pl
	------------------------------------------------------------------------------------- */
	#pl {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}

	/* -------------------------------------------------------------------------------------
	=Right Panel #pr
	------------------------------------------------------------------------------------- */
	#pr {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}
	
	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
		#pmid{
		display:block;
		margin:0 1rem;
		width:calc(100% - 2rem);
	}

	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}		

	/* -------------------------------------------------------------------------------------
	=Subdepartment tree  
	------------------------------------------------------------------------------------- */
	.depttree {
		max-width:100%;
		margin:2rem 0;
	}

	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		/* padding:0 1em; */
		width:calc(100% - 2em);
		grid-template-columns: 1fr 1fr ;
		grid-template-areas: "message message "
							"newsletter newsletter"
							"shopping about"
	
							"social feefo";
		align-items:center;
	}

	#pf #p51838994,
	#pf #p51806208{
		grid-area: shopping;
		/* margin-top:2rem; */
		text-align:right;
		margin-right:1em;
		margin-bottom:4em;
	}

	#pf #p51838995,
	#pf #p51806209{
		grid-area: about;
		align-self:start;
		text-align:left;
		margin-left:1em;
		margin-bottom:4em;
	}

	#pf #carouselArtImgs {
		--swiffy-slider-item-count:2
	}


	/* Newsletter 
	------------------------------------------------------- */
	#pf .ext .news {
		grid-area:subscribe;
		text-align:center;
		width:100%;
		margin:auto;
		margin-bottom:2rem;
	}

	#pf .ext .news form {
		text-align: left;
		align-self: center;
		display:grid;
		grid-template-columns:1fr;
		grid-gap:1em;
		align-items:center;
		text-align:center;
	}




	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{}

	#pb .ext {
		grid-gap:3em;
		padding:0 1em;
		padding-bottom: 3em;
		grid-template-columns:1fr auto auto 1fr;
		grid-template-areas:". shopping about .";
	}

	#p51609610{
		margin-right: 0em;
	}


	/* -------------------------------------------------------------------------------------
	=FIXEDBottom Panel #pbf
	------------------------------------------------------------------------------------- */
	#pbf{}

	#pbf .ext {}
	/* 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
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=FilterSearch
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=Department
	------------------------------------------------------------------------------------- */

	/* dept listings
	------------------------------------------------------- */
	.depttree ul{
		grid-template-columns:repeat(2,1fr);
	}
		
	#sr {
		grid-template-columns: repeat(2, 1fr);
	}

	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}


	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:" qty buy";
		grid-gap:1em;
		
	}
	.fprd form label{
		display:none;
	}
	
	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi{
			max-width:100%;
	}
	
	#pi .main {
		grid-template-columns: 1fr;
		grid-template-areas: "top"
			"left"
			"right"
			"bottom";
		grid-template-columns:100%;
	}

	/* Product Title
	------------------------------------------------------- */
	#pi .pititle h2{
		text-align:left;
	}
	
	#pi .gallery #mainimages{
		/* position:unset; */
		top:0;
	}

	#pi .pititle h2{
		font-size:2em;
		margin-top:1rem;
	}

	.pidescx li span{
		margin-right:0em;
	}

	.pidescx  br{
		display:block;
	}

	.pifile img{
		max-width:150px;
	}
	
	
	/* Product Departments
	-------------------------------------------------------*/
	#pi .alldepts {
		grid-area: product-departments;
		text-align:center;
		margin:2em;
		
	}
	
	#pi .alldepts:before{
		grid-column:1/-1;
		content:'see all our';
		display:block;
		text-align:center;
		font-family:var(--heading-font);
		color:var(--text-heading-color);
		margin-right:1em;
	
	}
	#pi .alldepts a {
		font-size:.825em;
		display: inline-block;
		color:var(--white);
		background-color:var(--grey);
		padding:.5em 2em;
		border-radius:2em;
	}

	

	/* 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: right;
		font-size:1.5em;
	}
	
	.boughtto li.btn  {
		grid-column:unset;
		grid-row:unset;
		align-self:end;
		text-align: right;
	}

	
	/* -------------------------------------------------------------------------------------
	=Basket
	------------------------------------------------------------------------------------- */

	#pm .bskt {
		display: grid;
		/* because 1fr doesn't really work here, carousels cause overflow... */
		grid-template-columns: 100%;
		grid-gap:0;
		grid-column-gap: 4em;
		grid-template-areas:
			"breadcrumb "
			"header "
			"freedelivery "
			"lines"
			"totals"
			"voucher"
			"shipping"
			"buttons"	
			"prompane";
		align-items:start;
		margin-bottom:4rem;
	}

	#pm .bskt  .line{

		grid-template-columns: var(--image-width) 1fr 2em auto auto;
		grid-template-areas:
			"icon desc qty qty qty"
			"icon giftwrap giftwrap giftwrap giftwrap"
			"icon gifttext gifttext gifttext gifttext"
			"icon gtentry gtentry gtentry  gtentry"
			". skuselect skuselect skuselect skuselect"
			". . price price price "
			"netprice netprice netprice netprice rem";
		border-bottom:1px solid	var(--border-color);
		grid-column-gap:0rem;
	}

	#pm .bskt  .line .qty label{
		display:none;
	}

	#bsktid .shipping li.delivery p{
		text-align:right;
	}

	#pm .bskt .line .rem {
		text-align:right;
	}
	
	/* -------------------------------------------------------------------------------------
	=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;
	}
	
	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */
	/*account menu panel*/
	#pmam {
		width: 0;
		margin:0;
	}

	#pmam + .pmfull{
		width: calc(var(--site-max-width) - 2rem);
	}

	/* 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 
	------------------------------------------------------- */


	
}
/* ------------------------------------------------------------------------------------
	SCREEN - Extra small devices (phones, 600px and down) 
	Last Updated : 26. 11. 2024
	Copyright :(c) 2024 Etail Systems Ltd
	Author : Etail Systems Ltd

	Table of Contents
		=Definitions
		=SiteContainers
		=Grid Layout
		=Swiffy Slider
		=FIXEDTop Panel #ptf		
		=Top Panel #pt	
		=Center Panel #pc
		=Main Panel #pmid
		=Footer Panel #pf
		=Bottom Panel #pb
		=FIXEDBottom Panel #pbf
		
		=Blog
		=SearchHeader / SearchFooter 	
		=FilterSearch 		
		=Department
		=FeaturedProducts 
		=ProductPage 
		=Basket
		=Checkout Process
		=MyAccount
		=ConfirmationPage

------------------------------------------------------------------------------------- */
@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
	------------------------------------------------------------------------------------- */
	#pm .pmind {
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 1em;
	}
	/* 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
	}


	.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 {}

	/* -------------------------------------------------------------------------------------
	=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;
		position:relative;
		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: 5em;
	}

	.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;
		text-align:left;
		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; */
	}


	
	/* -------------------------------------------------------------------------------------
	=FIXEDTop Panel #ptf
	------------------------------------------------------------------------------------- */
	#ptf{}

	#ptf .ext{
		padding:.5em 1em;
	}

	#ptf .ext {
		grid-template-areas:
		"deliverymessage feefo";
		grid-template-columns:1fr minmax(max-content,auto);
		align-items:center;
	}

	#a134774787 {
		display:none;
	}


	/* -------------------------------------------------------------------------------------
	=Top Panel #pt
	------------------------------------------------------------------------------------- */

	#pt .ext {
		--menu-width:50px;
		grid-template-columns: var(--menu-width) 1fr var(--search-toggle-width) var(--icons-width) var(--basket-width);
		grid-template-areas:
			"logo logo logo logo logo"
			"menulink . searchtoggle icons basket"
			"search search search search search"
			"nav nav nav nav nav";
		align-items: center;
		margin:0 1rem;
	}
		
	/* logo
	------------------------------------------------------- */
	#pt .pbnr {
		grid-area: logo;
		padding:1em 0em;
	}

	/* QuickOrder
	------------------------------------------------------- */
	#pt .qord{
		display:none;
	}

	/* Search
	------------------------------------------------------- */
	/*this still needs dev work - see below for hack version which requires an article */
	#pt .icon.srch{
		grid-area:searchtoggle;
	}	

	/* 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;
	}

	/*no space for free shipping header on mobile */
	#pt .bskt h4{
		display:none;
	}
			
	/* -------------------------------------------------------------------------------------
	=Center Panel #pc
	------------------------------------------------------------------------------------- */
	#pc{
		margin:0 1rem;
		margin-bottom:1rem;
	}

	#pc .carousel .imgcont img
	{
		/*set a max height to avoid it being too humongous on larger displays */
		aspect-ratio: 1/1;
		width: 100%;
		object-fit: cover;
		margin:auto;
	}


	#pc .carousel .imgcont div{
		position:absolute;
		bottom:2em;
		right:1em;
	}

#pc .carousel .imgcont .link a{
	background-color:var(--white);
	color:var(--black);
	text-transform:uppercase;
	padding:1em 2em;
	border-radius:2em
}

	/* -------------------------------------------------------------------------------------
	=Left Panel #pl
	------------------------------------------------------------------------------------- */
	#pl {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}

	/* -------------------------------------------------------------------------------------
	=Right Panel #pr
	------------------------------------------------------------------------------------- */
	#pr {
		width: calc(var(--site-max-width) - 2rem);
		margin:0 1rem;
	}
	
	/* -------------------------------------------------------------------------------------
	=Main Panel #pmid
	------------------------------------------------------------------------------------- */
		#pmid{
		display:block;
		margin:0 1rem;
		width:calc(100% - 2rem);
	}

	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}		

	/* -------------------------------------------------------------------------------------
	=Subdepartment tree  
	------------------------------------------------------------------------------------- */
	.depttree {
		max-width:100%;
		margin:1rem 0;
		margin-bottom:2rem;
	}

	/* -------------------------------------------------------------------------------------
	=Footer Panel #pf
	------------------------------------------------------------------------------------- */
	#pf{}

	#pf .ext {
		position: relative;
		/* padding:0 1em; */
		width:calc(100% - 2em);
		grid-template-columns: minmax(max-content, auto) 1fr ;
		grid-template-areas: "message message "
							"newsletter newsletter"
							"shopping shopping"
							"about about"
							"social feefo";
		align-items:center;
	}


	#pf #p51838994,
	#pf #p51806208{
		grid-area: shopping;
		/* margin-top:2rem; */
		text-align:center;
	}
	
	#pf #p51838995,
	#pf #p51806209{
		grid-area: about;
		align-self:start;
		margin: 2rem 0;
		text-align:center;
	}

	#pf #carouselArtImgs {
		--swiffy-slider-item-count:2
	}


	/* Newsletter 
	------------------------------------------------------- */
	#pf .ext .news {
		grid-area:subscribe;
		text-align:center;
		width:100%;
		margin:auto;
		margin-bottom:2rem;
	}

	#pf .ext .news form {
		text-align: left;
		align-self: center;
		display:grid;
		grid-template-columns:1fr;
		grid-gap:1em;
		align-items:center;
		text-align:center;
	}




	/* -------------------------------------------------------------------------------------
	=Bottom Panel #pb
	------------------------------------------------------------------------------------- */
	#pb{}

	#pb .ext {
		grid-gap:3em;
		padding:0 1em;
		padding-bottom: 3em;
		grid-template-columns:1fr auto auto 1fr;
		grid-template-areas:". shopping about .";
	}

	#p51609610{
		margin-right: 0em;
	}


	/* -------------------------------------------------------------------------------------
	=FIXEDBottom Panel #pbf
	------------------------------------------------------------------------------------- */
	#pbf{}

	#pbf .ext {}
	/* 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
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=SearchHeader / SearchFooter
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=FilterSearch
	------------------------------------------------------------------------------------- */
	
	/* -------------------------------------------------------------------------------------
	=Department
	------------------------------------------------------------------------------------- */

	/* dept listings
	------------------------------------------------------- */
	.depttree ul{
		grid-template-columns:repeat(2,1fr);
	}
		
	#sr {
		grid-template-columns: repeat(2, 1fr);
	}

	.pmwide #sr {
		grid-template-columns: repeat(2, 1fr);
	}

	.fprd form.wishlist .submit {
	font-size: 0.6em;
}



	/* Buy form 
	------------------------------------------------------- */
	.fprd form {
		grid-template-areas:" qty buy";
		grid-gap:1em;
		
	}
	.fprd form label{
		display:none;
	}
	
	/* -------------------------------------------------------------------------------------
	=FeaturedProducts
	------------------------------------------------------------------------------------- */

	/* -------------------------------------------------------------------------------------
	=ProductPage
	------------------------------------------------------------------------------------- */
	#pi{
			max-width:100%;
	}
	
	#pi .main {
		grid-template-columns: 1fr;
		grid-template-areas: "top"
			"left"
			"right"
			"bottom";
		grid-template-columns:100%;
	}

	/* Product Title
	------------------------------------------------------- */
	#pi .pititle h2{
		text-align:center;
	}
	
	#pi .gallery #mainimages{
		/* position:unset; */
		top:0;
	}

	#pi .pititle h2{
		font-size:2em;
		margin-top:1rem;
	}

	.pidescx li span{
		margin-right:0em;
	}

	.pidescx  br{
		display:block;
	}

	.pifile img{
		max-width:150px;
	}
	
	
	/* Product Departments
	-------------------------------------------------------*/
	#pi .alldepts {
		grid-area: product-departments;
		text-align:center;
		margin:2em;
		
	}
	
	#pi .alldepts:before{
		grid-column:1/-1;
		content:'see all our';
		display:block;
		text-align:center;
		font-family:var(--heading-font);
		color:var(--text-heading-color);
		margin-right:1em;
	
	}
	#pi .alldepts a {
		font-size:.825em;
		display: inline-block;
		color:var(--white);
		background-color:var(--grey);
		padding:.5em 2em;
		border-radius:2em;
	}

	

	/* 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:right;
		font-size:1.5em;
	}
	
	.boughtto li.btn  {
		grid-column:unset;
		grid-row:unset;
		align-self:end;
		text-align:right;
	}

	#pi .gallery #galleryimages .video:after{
		grid-area:image;
		font-family:var(--font-awesome);
		color:var(--grey);
		content:"\f144";
		font-size: 2rem;
		pointer-events:none;
		align-self:center;
		text-align:center;
	}


	
	/* -------------------------------------------------------------------------------------
	=Basket
	------------------------------------------------------------------------------------- */

	#pm .bskt {
		display: grid;
		/* because 1fr doesn't really work here, carousels cause overflow... */
		grid-template-columns: 100%;
		grid-gap:0;
		grid-column-gap: 4em;
		grid-template-areas:
			"breadcrumb "
			"header "
			"freedelivery "
			"lines"
			"totals"
			"voucher"
			"shipping"
			"buttons"	
			"prompane";
		align-items:start;
		margin-bottom:4rem;
	}

	#pm .bskt  .line{

		grid-template-columns: var(--image-width) 1fr 2em auto auto;
		grid-template-areas:
			"icon desc qty qty qty"
			"icon giftwrap giftwrap giftwrap giftwrap"
			"icon gifttext gifttext gifttext gifttext"
			"icon gtentry gtentry gtentry  gtentry"
			". skuselect skuselect skuselect skuselect"
			". . price price price "
			"netprice netprice netprice netprice rem"
	;
		border-bottom:1px solid	var(--border-color);
		grid-column-gap:0rem;
	}

	#pm .bskt  .line .qty label{
		display:none;
	}

	#bsktid .shipping li.delivery p{
		text-align:right;
	}

	#pm .bskt .line .rem{
		text-align:right;
	}
	
	/* -------------------------------------------------------------------------------------
	=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;
	}
	
	/* -------------------------------------------------------------------------------------
	=MyAccount
	------------------------------------------------------------------------------------- */
	/*account menu panel*/
	#pmam {
		width: 0;
		margin:0;
	}

	#pmam + .pmfull{
		width: calc(var(--site-max-width) - 2rem);
	}

	/* 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 
	------------------------------------------------------------------------------------- */

	.depttree>.bt + .bc{
		display:inline-block;
		vertical-align:middle;
		margin-top:1em;
	}
	
	/* Custom CSS 
	------------------------------------------------------- */


	
}
/* ------------------------------------------------------------------------------------
	SCREEN - v6 basecomponents 2024
	Last Updated : 29. 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;
}

.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;
	text-transform: capitalize;
	font-size:.625em;
}

.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-family:var(--heading-font);
	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 1rem ;
	font-family:var(--text-font);
	font-size: 1em;
	cursor: pointer;
	padding: 1rem 0;
	transition: var(--transition);
	text-transform:capitalize;
	/* margin:.5em 0; */
	border-top:1px solid var(--grey)
}

.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 {
	display:block;
}

ul.accordion li.pane {
	display: none;
}
 ul.accordion li.pane br{}

ul.accordion li.pane p {
	font-size:1em;
}

ul.accordion li.pane ul {
	list-style-type: disc;
	list-style-position:inside;
	font-size:1em;
	margin: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: right;
	margin:0;
}

p.etail a {
}

p.copy {
	text-align: left;
	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(--button-font);
	font-weight:bold;
	border: none;
	text-align: center;
	font-size:.9em;
	border-color:inherit;
	cursor:pointer;
	text-transform:capitalize;
	transition: var(--transition);
	
}

.showmore:after{
	content:"\f0d7";
	font-weight:600;
	margin-left:.25em;
	display:inline-block;
	font-family:var(--font-awesome);
}

.showless:after{
	content:"\f0d8";
	font-weight:600;
	margin-left:.25em;
	display:inline-block;
	font-family:var(--font-awesome);
}


/* 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 {
}

.form li.header h3{
	font-family:var(--text-font);
	font-size:1em;
}

.form label img {
	display: inline-block;
}

.form li.help, .form li.info {
	font-size: .825em;
	margin-bottom:1em;
}

.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 */
.form ul.radio {}
.form li ul.radio input {
	margin-right: var(--half-spacing);
	width:auto;
}

/* 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-widget {
	font-size: 1em;
	font-family: var(--text-font)
}

.ui-widget-header {
	background: none;
	border: none;
	font-family:var(--heading-font);
	font-weight:var(--heading-font-weight);
	color: var(--text-heading-color);
	font-size: 1em;
}

.ui-dialog input {
	width: 100%;
}

.ui-dialog input#subscribe {
	width: auto;
}

.ui-dialog input.submit {
	margin: var(--spacing) 0;
	text-align: center;
}

.ui-widget input[type="text"] .ui-widget input[type="email"],
.ui-widget select, .ui-widget textarea, .ui-widget button {
	padding: 0 var(--spacing);
	padding: .25em 0.5em;
	padding: var(--spacing);
	border: none;
	outline: 1px var(--border-color) solid;
}

.validateTips {
	font-size: .688em;
}

/* Interaction states
----------------------------------*/
.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 var(--border-color);
	font-weight: normal;
}

.ui-icon-background,
.ui-state-active .ui-icon-background {
	border: var(--border-color);
}

/* 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(--featured-color);
	color: var(--white);
	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 */

.searchlist{
	display:grid;
	grid-template-columns: repeat(4,1fr);
	align-items:center;
	text-align:center;
	grid-gap:2em;
}

.searchlist li{
	background-color:var(--featured-color);
	color:var(--white);
	list-style:none;
	font-family:var(--heading-font);
	padding:1em;
}


/* scroll to top */
.scrolltotopicon {
	position:fixed;
	top:25%;
	right:4em;
	background-color:var(--grey);
	padding:1em 1em;
	border-radius:50%;
	cursor:pointer;
	width:2em;
	z-index:10001;
}

.scrolltotopicon.hidden{
	display:none;
}
