:root {
  --colour-maroon: #C30057;
  --colour-darkmaroon: #8F0E47;
  --colour-brown: #520024;
  --colour-mutedmaroon: #8B4D69;
  --colour-teal: #009384; 
  --colour-darkteal: #006367; 
  --colour-lightteal: #E1F5F3;
  --colour-mutedteal: #5D959E;
  --colour-salmon: #F49067; 
  --colour-midsalmon: #FFDACC;
  --colour-lightsalmon: #FFEBE2;
  --colour-yellow: #FFE6CC;
}

body {
  margin: 0;
  font-size: 17px;
  font-family: arboria, sans-serif;
  font-weight: 400;
  font-style: normal;
}

a.chirplink,
.mobileonly {
  display: none;
}

h2:first-of-type,
h3:first-of-type {
  margin-top: 0;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0.5rem;
  text-align: center;
  font-size: 4rem;
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-style: italic;
  color: var(--colour-maroon);
}
h2 {
  font-size: 2rem;
  color: var(--colour-maroon);
}
h3 {
  font-size: 1.66rem;
  color: var(--colour-maroon);
}
#layout > header p {
  position: absolute;
  z-index: 2;
  margin-top: 0;
  padding: 34px 0 0 28px;
  font-size: 22px;
  font-weight: 700;
  line-height: 22px;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.33em;
  text-shadow: 0 1px 21px rgba(79, 27, 0, 0.7);
}
.sectioncaps {
  margin-bottom: 0.5em;
  font-family: arboria, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.66rem;
  text-transform: uppercase;
  letter-spacing: 0.33em;
  color: var(--colour-brown);
}

a:link,
a:visited {
  color: var(--colour-darkteal);
}
a:hover,
a:focus {
  text-decoration: underline!important;
  color: #333;
}

.flex {
  display: flex;
  flex-flow: row wrap;
}

.tag_links a:link,
.tag_links a:visited {
  margin: 0 2px 4px;
  display: inline-block;
  padding: 1px 8px;
  border-radius: 3px;
  background: #b1b1b1;
  text-decoration: none !important;
  color: #fff;
}
.tag_links a:hover,
.tag_links a:focus {
  background: #787878;
  text-decoration: none !important;
}

.more:after {
  content: "\00a0»";
}

.resize img {
  width: 100%;
  height: auto;
}

.collapsible > * {
  display: none;
}
.collapsible > p:first-child {
  display: block;
  cursor: pointer;
}
.collapsible > p:first-child::after {
  margin-left: 0.5em;
  content: "Read More…";
  white-space: nowrap;
  font-weight: bold;
  color: #166d80;
}
.collapsible:hover > p:first-child::after {
  text-decoration: underline;
}

.expandable {
  overflow: hidden;
  position: relative;
  transition: 0.25s ease-in-out;
}
.expandable:hover {
  cursor: pointer;
}
.expandable::after {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding-top: 1.5em;
  background-image: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1.0) 75%);
  content: "Read More...";
  text-align: center;
  font-weight: bold;
  color: #333;
}
.expandable:hover::after {
  text-decoration: underline;
}
.expandable.open::after {
  content: "";
}

.video-container {
  overflow: hidden;
  position: relative;
  width:100%;
}
.video-container::after {
  display: block;
  content: '';
}
.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#vimeo_container {
  display: none;
  position: fixed;
  left: 0;
  top: 90px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8) url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RTE5QkY4QTlBMzg2MTFFNjk4NUY4NDVENzE0QjMzNzQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RTE5QkY4QUFBMzg2MTFFNjk4NUY4NDVENzE0QjMzNzQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpFMTlCRjhBN0EzODYxMUU2OTg1Rjg0NUQ3MTRCMzM3NCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpFMTlCRjhBOEEzODYxMUU2OTg1Rjg0NUQ3MTRCMzM3NCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pt9qXp4AAAFkSURBVHja7JxBEoIwEARZ//9nxYsHRSlrAjsTuj/AbCuQbBKWBQAAAAAAAAAAAAAA4ELcV6jtf+r9ArUyq7wjaqutX2cWiWfUVmddaEZ5L4GzSTyzluq68AzyPgSmS+zIXi5BEuV9FZgmsTNruQZLkLcr0F2iQ7ZKCeqaqdICu2WptOBud0MlFeD4KKmUQlxfZpVQkPNIoNwLcx+LlnOBCQN520JTppLleKslzcPtnldpnaDhwRQBiW00m2FHaiP3sID/CEnugrfPHtLXYQ4P+kvQDItYbU2AzTCBy6inBd6TmLoG3d7LS5b35LYAtzAvEV4iDGMYSDOVo5lAM0EVcfl2Fg3VZnmJEllU6hbIsqZ5gdMurLO1QxDI5iJBINvbBIFssBQEssVXEMgmc0EgxxwEgRy0EQRy1EsQyGFDQSDHXQWBHLgWBHLkXxDIRycEgXz2ZPA/kA/vDPy1ZpQ4mocAAwChC8Q7rKqGAQAAAABJRU5ErkJggg==') top right no-repeat;
  background-size: 40px;
  vertical-align: middle;
  text-align: center;
  z-index: 50;
  cursor: pointer;
}
#vimeo_player {
  position: relative;
  top: 100px;
}

#layout {
  display: grid;
  grid-template-columns: 180px auto;
  grid-template-rows: max-content auto;
}
#layout > nav {
  grid-row: 1 / span 3;
  background-color: #ffede3;
  z-index: 999;
}
#layout > nav > div {
  position: sticky;
  top: 0;
  padding: 24px 1em 1em;
}
#layout > nav > div > a:first-of-type > img { /* logo */
  width: 100%;
  height: auto;
}

#layout > nav h4 {
  margin-top: 2em;
  margin-bottom: -0.6em;
  text-transform: uppercase;
  font-size: 0.8em;
  color: var(--colour-maroon);
}
#layout > nav ul {
  margin: 1em 0;
  padding: 0;
  list-style-type: none;
  line-height: 1.4;
}
#layout > nav li {
  display: block;
  line-height: 1.1em;
  margin-bottom: 0.5em;
}
#layout > nav a:link,
#layout > nav a:visited {
  text-decoration: none;
  color: var(--colour-brown);
}
#layout > nav .nav-vip {
  padding: 10px 10px 5px;
  background: rgba(255,255,255,0.5);
  border-radius: 2px;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  text-align: center;
}
#layout > nav a.button {
  padding: 0.15em 0.5em 0.2em 30px;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 0.03em;
  color: var(--colour-brown)!important;
  border: 2px solid #F8B79C;
  background: #F8B79C url(/images/icn_creditcard.svg) 8px center no-repeat;
  background-size: 15px;
}
#layout > nav a.button:hover,
#layout > nav a.button:focus {
  border: 2px solid #FFF;
  background: #FFF url(/images/icn_creditcard.svg) 8px center no-repeat;
  background-size: 15px;
}

#layout > header {
  position: relative;
}
#layout > header > div {
  height: 540px;
  background-size: cover;
  background-position: center;
}
#layout > header > div:before {
  content: "";
  position: absolute;
  height: 130px;
  top: 0;
  width: 100%;
  background: linear-gradient(to top, rgba(255, 255, 255, 0), rgba(217, 150, 116, 1));
  mix-blend-mode: multiply;
}
#layout > main {
  padding: 2em;
  line-height: 1.4;
}
body.fullwidth #layout > main {
  padding: 2em 0 0;
}

.segment {
  width: calc(100% - 50px);
  padding: 50px 25px;
}

#breadcrumbs {
  margin-top: 0;
  margin-bottom: 27px;
}

div.intro {
  text-align: center;
  color: var(--colour-brown);
}
div.intro > div {
  font-size: 1.33rem;
  max-width: 1100px;
  margin: 30px auto 0;
}
div.intro > div p {
  margin-top: 0;
}

.longintro {
  max-width: 1100px;
  margin: 0 auto 50px!important;
}

.big {
  font-size: 1.2em;
}
.bigger {
  font-size: 1.4em;
}

/* catalogue */

#catdesc {
  max-width: 760px;
  margin: 0 auto 30px;
}

.catalogue-search {
  display: flex;
  width: fit-content;
  margin: 0 auto 50px;
}
.catalogue-search input[type=search] {
  padding: 0 20px;
  height: 58px;
  line-height: 58px;
  border-radius: 4px 0 0 4px;
  font-size: 20px;
}
.catalogue-search .button {
  height: 58px;
  font-size: 1rem;
  transition: 0.2s;
  margin-left: -3px;
  border-radius: 0 0.25em 0.25em 0;
}

.catalogue-search + p {
  margin-bottom: 50px;
  text-align: center;
}


/* footer */

.footer-ctas img {
  border-radius: 7px;
}

footer {
  padding: 60px 60px 40px;
  background-color: #5E3448;
  color: #CFA4A4;
}
footer a:hover,
footer a:focus {
  color: #fff;
}
footer > div.footer-branding {
  display: flex;
  justify-content: space-between;
}
footer > div.footer-branding > div a {
  margin-left: 20px;
}
footer .navigation {
  font-size: 1.2em;
}
footer .navigation a:link,
footer .navigation a:visited {
  padding: 0 10px;
  text-decoration: none!important;
  color: var(--colour-lightsalmon);
}
footer .navigation a:first-of-type:link,
footer .navigation a:first-of-type:visited {
  padding-left: 0;  
}
footer > div#copyright a:link,
footer > div#copyright a:visited {
  color: #CFA4A4;
}

@media only screen and (max-width: 960px) {

  .nomobile { display: none !important; }
  .mobileonly { display: block; }

  #layout > nav > div > a:first-of-type img { /* logo */
    width: 146px;
  }

}fieldset {
  margin: 1em 0;
  padding: 10px;
  border: 1px solid #ccc;
  background-color: #eee;
  background-image: linear-gradient(to bottom, white, white 80%, #eee);
}

form fieldset > fieldset {
  clear: left;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  font-size: 1em;
}

legend {
  padding: 2px 8px;
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 0 -1px 1px rgba(0,0,0,0.4);
  font-size: 0.9em;
  color: #333;
}
fieldset > label {
  float: left;
  clear: left;
  padding-top: 2px;
  width: 120px;
  text-align: right;
  font-size: 0.9em;
  color: #333;
}
fieldset > label::after {
  content: ":";
}
fieldset > label strong {
  color: #c00;
}
fieldset > span {
  display: block;
  margin: 0 0 0 120px;
  padding: 0 0 4px 4px;
}
fieldset > span label {
  cursor: pointer;
}
fieldset > span.validation-errors {
  font-style: italic;
  font-size: 0.9em;
  color: #f33;
}
fieldset input,
fieldset textarea,
fieldset select {
  padding: 2px 4px;
  border: 1px solid #ccc;
  border-radius: 2px;
  background-color: #fff;
  line-height: 1.1;
  font-family: inherit;
  font-size: 1.1em;
}
fieldset input:focus,
fieldset textarea:focus,
fieldset select:focus {
  border: 1px solid #aaa;
  box-shadow: 0 0 3px rgba(0,0,0,.2);
  color: #333;
}

fieldset input[type=image],
fieldset input[type=file] {
  border: none;
}
fieldset input[type=submit],
fieldset input[type=reset],
fieldset input[type=button] {
  padding: 2px 6px;
  border: #b5bbc4 1px solid;
  background-color: #f7fafc;
  background-image: linear-gradient(to bottom, #fff, #dae6f1);
  font-size: 100%;
  color: #333;
}
fieldset input[type=submit]:hover,
fieldset input[type=reset]:hover,
fieldset input[type=button]:hover {
  color: #e36627;
}
fieldset input[type=submit]:active {
  border-color: #666;
}

fieldset input:disabled,
fieldset input:disabled:hover,
fieldset input:disabled:focus {
  color: #999 !important;
}

input.cssform-undo:disabled {
  display: none;
}

button.check-speling {
  padding: 2px 6px;
  background: rgba(255,255,255,0.8);
  border: none;
  line-height: 1.4;
  font-weight: normal;
  color: #666;
  cursor: pointer;
}

a.delete:link {
  white-space: nowrap;
  color: #c00 !important;
}
a.delete:visited {
  color: #c00 !important;
}
a.delete:hover,
a.delete:focus {
  color: #000 !important;
  background-color: yellow !important;
}

.warning {
  margin: 0.5em 0;
  border: 1px solid #f00;
  background-color: #ff0;
  font-size: 0.8em;
  color: #333;
}
p.warning,
.warning p,
span.warning {
  padding: 0.5em;
}
.warning b {
  text-transform: uppercase;
  color: #f00;
}

input:required:invalid,
input:focus:invalid,
textarea:required:invalid,
textarea:focus:invalid {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAT1JREFUeNpi/P//PwMpgImBRMACY/x7/uDX39sXt/67cMoDyOVgMjBjYFbV/8kkqcCBrIER5KS/967s+rmkXxzI5wJiRSBm/v8P7NTfHHFFl5mVdIzhGv4+u///x+xmuAlcdXPB9KeqeLgYd3bDU2ZpRRmwH4DOeAI07QXIRKipYPD35184/nn17CO4p/+cOfjl76+/X4GYAYThGn7/g+Mfh/ZZwjUA/aABpJVhpv6+dQUjZP78Z0YEK7OezS2gwltg64GmfTu6i+HL+mUMP34wgvGvL78ZOEysf8M1sGgZvQIqfA1SDAL8iUUMPIFRQLf+AmMQ4DQ0vYYSrL9vXDz2sq9LFsiX4dLRA0t8OX0SHKzi5bXf2HUMBVA0gN356N7p7xdOS3w5fAgcfNxWtn+BJi9gVVBOQfYPQIABABvRq3BwGT3OAAAAAElFTkSuQmCC');
  background-position: right top;
  background-repeat: no-repeat;
  box-shadow: none;
}
input:required:valid,
textarea:required:valid {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAZZJREFUeNpi/P//PwMpgImBRMAy58QshrNPTzP8+vOLIUInisFQyYjhz98/DB9/fmT48/+35v7H+8KNhE2+WclZd+G0gZmJmYGThUNz1fUVMZtvbWT59eUXG9wGZIWMUPj993eJ5VeWxuy8veM/CzPL3yfvH/9H0QBSBDYZyOVm4mGYfn6q4cory5lYmFh+MrEwM/76/YsR7mk2ZjbWP///WP37/y8cqIDhx58fjvtu7XV6//ndT34G/v8FasUsDjKO/+A2PP3wpGLd+TVsfOz8XH6KAT+nHpokcu7h6d9q/BoMxToVbBYqlt9///+1GO4/WVdpXqY/zMqXn13/+vTjI9mj94/y//v9/3e9ZRObvYbDT0Y2xnm///x+wsfHB3GSGLf41jb3rv0O8nbcR66d+HPvxf2/+YZFTHaqjl8YWBnm/vv37yly5LL8+vuLgYuVa3uf/4T/Kd8SnSTZpb6FGUXwcvJxbAPKP2VkZESNOBDx8+9PBm4OwR1TwmYwcfzjsBUQFLjOxs52A2YyKysrXANAgAEA7buhysQuIREAAAAASUVORK5CYII=');
  background-position: right top;
  background-repeat: no-repeat;
}

input::-webkit-input-placeholder {
  color: #ababab;
}
input:-moz-placeholder {
  color: #ababab;
}

input[type="number"] {
  max-width: 4em;
}

#preview_desktop img {
  max-width: 100%;
  height: auto;
}

.cropper {
  display: inline-block;
  margin: 0 1em;
  padding-left: 18px;
  height: 16px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABRElEQVQ4jZXSsUsVUBzF8Y/yhgKRSOdwFpUgpxZX/4BElxwKcWhJqNbOIiEOBuIQiuioaUsSBRFCBIKjq0KERdoUhIRIOLyr2LNnvgN3+d37Pfzu+f1oQEmGk8yerVUagB/iGbrP1psvCT/BFJ4n2W7IIMkjTGAX47X3lSQV3EEHvmAlyWGB72GyvB1L8itJCzrRg/ZmLOI+ruIulgrcgZkCv8W1JDv4iU/ow6umJHvoTrKfpBU/0IZZDOEzRrGKA8xjJsku1Sms4XWSDfTiO27jJa7jKQZKd29OvneaAUbQjy58xQe8wBXcSvIbG/VCbqotJBkuuRzgQZKFevA5gySwhWmsYxNtSY7qGdRu4g20Yw6t+FNOXdUaHJXaTdXkl5NcaPDXJib5hvf4qDqBxxfB/+rgRINJ1v4Hn+ug6J1qDpfSMVLdY4b2kZcrAAAAAElFTkSuQmCC);
  background-position: left center;
  background-repeat: no-repeat;
}
.cropper:link {
  text-decoration: none !important;
  font-size: 0.75em;
  color: rgba(0,0,0,0) !important;
}
.cropper:visited {
  color: rgba(0,0,0,0) !important;
}
.cropper:hover,
.cropper:focus {
  color: rgba(0,0,0,0.5) !important;
}

#captcha {
  border: 1px outset #666;
}

/* file input drop box */

.attach-file {
  position: relative;
  display: block;
}
.attach-file input[type=file] {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  cursor: pointer;
}
.attach-file input[type=file] + div {
  margin: 0 0 0.2em 0;
  padding: 1em;
  background-color: rgba(255,255,255,0.5);
  border: 2px dashed rgba(0,0,0,0.2);
  text-align: center;
  font-size: 2em;
  color: rgba(0,0,0,0.3);
  transition: 0.2s;
}
.attach-file input[type=file]:invalid + div {
  border-color: rgba(255,0,0,0.4);
}
.attach-file:hover input[type=file] + div,
.attach-file input[type=file]:focus + div {
  border-color: rgba(0,0,0,0.4);
  color: rgba(0,0,0,0.4);
}
.attach-file input[type=file]:focus + div {
  box-shadow: 0 0 4px Highlight inset;
}
.attach-file input[type=file]:active + div {
  background: #ccc;
}
.attach-file input[type=file].file-attached + div {
  padding: 2em;
  background-color: rgba(0,255,0,0.2);
  border-color: rgba(0,128,0,0.5);
  font-size: 1em;
  color: rgba(0,128,0,0.75);
}
.attach-file input[type=file] + div strong {
  color: #666;
}

@media only screen and (max-width: 767px) {

  fieldset > label {
    display: block;
    float: none;
    width: auto;
    text-align: left;
  }
  fieldset > span {
    display: block;
    margin: 0 0 4px 0 !important;
    padding: 0;
  }
  #captcha {
    width: 320px;
    height: 90px;
  }

}
#show_password {
  display: inline-block;
  width: 22px;
  height: 12px;
  background-image: url(data:image/png;base64,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);
  background-size: 100% 100%;
}
#show_password.shown {
  background-image: url(data:image/png;base64,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);
}

.password-check.ok {
  box-shadow: 0 0 3px #090;
}
.password-check.weak {
  box-shadow: 0 0 3px orange;
}
.password-check.vulnerable {
  box-shadow: 0 0 3px #f00;
}

.password-strength {
  display: none;
  font-size: 0.9em;
}
.password-check.ok ~ .password-strength {
  display: block;
  color: #090;
}
.password-check.weak ~ .password-strength {
  display: block;
  color: orange;
}
.password-check.vulnerable ~ .password-strength {
  display: block;
  color: #f33;
}

.password-meter {
  display: none;
  margin: 2px;
  height: 0.5em;
  overflow: hidden;
  background: linear-gradient(to right, red, orange 25%, yellow 50%, green 75%);
  border-radius: 1em 0;
  text-align: right;
}
.password-meter div {
  display: inline-block;
  width: 0;
  height: 100%;
  background: rgba(255,255,255,0.8);
  border-left: 1px solid #999;
  border-radius: 0 0 1em 0;
  vertical-align: top;
}
.password-check.ok ~ .password-meter,
.password-check.weak ~ .password-meter {
  display: block;
}
.collapse {
  border-collapse: collapse;
}
.collapse tr {
  border: 1px solid #666;
}
.collapse th {
  background-color: #ccc;
  border: 1px dotted #999;
  text-align: left;
}
.collapse td {
  vertical-align: top;
  border: 1px dotted #999;
}

table.files {
  border-collapse: separate;
}
table.files th {
  background-color: #efefef;
  vertical-align: top;
  text-align: left;
  white-space: nowrap;
  font-weight: normal;
  font-size: 0.8em;
  color: #234;
}
table.files td,
table.files th {
  border: 1px solid #999;
  padding: 0.25em 0.5em;
}
table.files td p {
  margin: 0.5em 0;
}

.noborder {
  border: none !important;
}
body.blog.article {
  background-color: var(--colour-midsalmon);
}
body.tv.article {
  background-color: var(--colour-darkteal);
}
body.article #article-header {
  padding: 25px;
}

body.blog.article #article-header,
body.blog.article #article-header h1 {
  text-align: left;
  color: var(--colour-maroon);
}

body.blog.article p#breadcrumbs,
body.tv.article p#breadcrumbs {
  margin: 0;
  padding-left: 105px;
  padding-bottom: 10px;
  line-height: 28px;
  background: url(images/logo_blog.svg) 25px 0 no-repeat;
  background-size: 60px;
  color: var(--colour-maroon);
}
body.tv.article p#breadcrumbs {
  padding-left: 125px;
  padding-bottom: 0;
  background-size: 80px;
  background: url(images/logo_sstv-wo.svg) 25px 0 no-repeat;
  color: var(--colour-lightteal);
}
body.blog.article p#breadcrumbs a:link,
body.blog.article p#breadcrumbs a:visited {
  color: var(--colour-maroon);
}
body.tv.article p#breadcrumbs a:link,
body.tv.article p#breadcrumbs a:visited {
  color: var(--colour-lightteal);
}

body.tv.article #article-header,
body.tv.article #article-header h1 {
  text-align: left;
  color: #fff;
}
#article-header div p:first-of-type {
  text-transform: uppercase;
  letter-spacing: 0.25em;
}
#article-header div p:nth-of-type(2) {
  font-weight: 700;
}
#article-header p.article-intro {
  font-size: 1.33em;
  color: #333;
}
body.tv.article #article-header p.article-intro {
  color: #fff;
}

#article-content {
  padding: 25px;
  background: #fff;
}
#article-header > div,
#article-content > div {
  max-width: 760px;
  margin: 25px auto;
}

.video-container {
  position: relative;
  width: fit-content;
}
.video-container > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(/images/icn_video-play.png);
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
}
.video-player {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center; 
  background: rgba(0,0,0,0.75);
  z-index: 20;
}
.video-player > iframe {
  width: 50%;
  height: 50%;
  box-shadow: 0 0 1em rgba(0,0,0,0.5);
}.blog h1 {
  color: var(--colour-salmon);
}
.blog-logo,
.sstv-logo {
	margin: 0 0 0.5rem;
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-style: italic;
  font-size: 4rem;
  line-height: 1em;
  color: var(--colour-darkteal)!important;
}
.blog-logo {
  color: var(--colour-salmon)!important;
}
.sstv-logo span {
  font-family: arboria, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 0.66em;
  text-transform: uppercase;
}

.article-tile {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 15px;
  border-radius: 7px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.3);
  background: var(--colour-lightsalmon);
}
.article-tile.tv {
  background: var(--colour-lightteal);
}
.article-tile h3,
.article-tile h3 a:link,
.article-tile h3 a:visited {
  margin-bottom: 0.5em;
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.33em;
  line-height: 1em;
  color: #333;
  text-decoration: none!important;
}
.article-tile img {
  object-fit: cover;
}

/* Blog and TV frontpages */

body.main .sectioncaps {
  width: calc(100% - 50px);
  padding: 50px 25px;
}

body.blog #home-blog .sectioncaps {
  padding: 50px 0 0;
  text-align: center;
}

.article-block {
  padding: 50px 0;
}
.article-block:nth-of-type(odd) {
  background-color: var(--colour-midsalmon);
}
.article-preview {
  position: relative;
  max-width: 860px;
  margin: 0 auto;
}
.article-preview h2 {
  margin: 0;
  font-family: chaparral-pro, serif;
  font-weight: 300;
  font-style: normal;
  line-height: 1.1em;
}
.article-preview h2 a {
  text-decoration: none!important;
}
.article-preview h2 span {
  display: block;
  font-family: arboria, sans-serif;
  font-size: 0.5em;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 0.25em;
}

body.tv #home-blog {
  background-color: var(--colour-darkteal);
}
body.blog.tv #home-blog .sectioncaps {
  color: #fff!important;
}
body.tv #home-blog h3 {
  margin: 0;
  padding: 50px 0;
}
body.tv #home-blog h3 a {
  color: #fff!important;
}
body.tv .article-block:nth-of-type(odd) {
  background-color: var(--colour-darkteal);
}
body.tv .article-block:nth-of-type(even) {
  background-color: #367380;
}
body.tv .article-preview h2,
body.tv .article-preview h2 a,
body.tv .article-preview h2 span,
body.tv .article-preview p {
  color: #fff!important;
}
body.tv .article-preview img::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(/images/icn_video-play.png);
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
}
#field_email_w {
  display: none;
}
.bgimg {
  background-color: #ccc;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.flex-2 {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.flex-2 > div {
  flex: 1 0 0;
  margin: 2em 4em 2em 0;
  padding: 0 2em;
}
.flex-2 > div a:link,
.flex-2 > div a:visited {
/*
  color: inherit;
*/
}

.bold {
  color: var(--colour-fuchsia);
}
.bold > p {
  margin: 0.5em 0;
}

.boxed {
  border: 1px dashed;
  padding: 0 2em;
}

.white {
  background-color: #666;
  color: white;
}
.outline {
  padding: 0 1em;
  border: 1px solid;
}
body.events div.intro {
  color: var(--colour-darkteal);
}
body.events h1 {
  color: var(--colour-teal);
}

#events .flex-grid-thirds {
  padding: 20px 0;
  border-top: 1px dotted var(--colour-teal); 
}
#events h2 {
  color: var(--colour-teal);
}

#events .flex-grid-thirds .col.twothirds h2 {
	 margin-bottom: 0.5em;
	 line-height: 1.1em;
}
#events .flex-grid-thirds .col.twothirds strong {
  display: inline-block;
  width: 64px;
  color: var(--colour-teal);  
}
#events .flex-grid-thirds .col.twothirds a:last-of-type {
	display: block;
	width: fit-content;
  padding: 0.4em 1em 0.5em;
  background-color: var(--colour-darkteal);
  border-radius: 0.33em;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none!important;
  transition: 0.33s;
}
#events .flex-grid-thirds .col.twothirds a:last-of-type:hover {
  background-color: var(--colour-teal);
}fieldset > label {
  width: 10em;
  margin-top: 1em;
}
fieldset > span {
  margin: 1em 0 0 10em;
}

#field_unlock_code {
  background-color: #c8ffc7;
  text-transform: uppercase;
  font-weight: bold;
}

a.button,
input.button,
input[type=button],
fieldset input[type=submit] {
  margin: 0;
  padding: 0.25em 1em 0.45em;
  border: 2px solid var(--colour-salmon);
  background: var(--colour-salmon);
  border-radius: 0.25em;
  font-weight: 700;
  color: #fff!important;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  text-decoration: none;
  cursor: pointer;
  transition: 0.2s;
}
a.button {
  padding: 0.2em 1em 0.3em;
}

a.button:hover,
input.button:hover,
input[type=button]:hover,
fieldset input[type=submit]:hover {
  text-decoration: none!important;
  border: 2px solid var(--colour-maroon);
  background: var(--colour-maroon);
}

.option-menu {
  margin-top: 0;
}
form#filter {
  padding: 15px;
  background-color: var(--colour-midsalmon);
  box-shadow: 0 1px 2px rgba(244, 144, 103,0.7);
  line-height: 2.5em;
}
form#filter select,
.option-menu select {
  width: 200px;
  background: #fff;
  background-image: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0A%3Csvg%20version%3D%221.1%22%20id%3D%22Layer%5f1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%0A%09%20viewBox%3D%220%200%2014.1%2010%22%20style%3D%22enable-background%3Anew%200%200%2014.1%2010%3B%22%20xml%3Aspace%3D%22preserve%22%3E%0A%3Cstyle%20type%3D%22text%2Fcss%22%3E%0A%09.st0%7Bfill%3A%23109daa%3B%7D%0A%3C%2Fstyle%3E%0A%3Cg%20id%3D%22artboard-1%22%3E%0A%09%3Cpath%20class%3D%22st0%22%20d%3D%22M13.8%2C1.7l-6.1%2C8C7.5%2C9.9%2C7.3%2C10%2C7%2C10c-0.2%2C0-0.5-0.1-0.7-0.3l-6.1-8c-0.3-0.4-0.3-1%2C0-1.4%0A%09%09c0.3-0.4%2C0.9-0.4%2C1.3%2C0L7%2C6.5l5.5-6.3c0.3-0.3%2C0.9-0.4%2C1.3%2C0C14.2%2C0.7%2C14.2%2C1.3%2C13.8%2C1.7z%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E);
  background-position: right 15px center;
  background-repeat: no-repeat;
  background-size: .75rem;
  min-width: 70px;
  position: relative;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  margin: 20px 0 0;
  padding: 0 15px 0 1rem;
  height: 40px;
  border: 1px solid #ccc;
  border-radius: 2px;
  font-size: 16px;
  line-height: normal;
  color: #232323;
  cursor: pointer;
}
form#filter select {
  width: fit-content;
  max-width: 200px;
  margin: 0;
  padding: 0 20px 0 1rem;
  height: 30px;
  background-position: right 10px center;
}

form fieldset {
  background-color: #fff;
  background-image: none;
  border-radius: 5px;
}

form legend {
  box-shadow: none;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #808080;
}

@media only screen and (max-width: 768px) {

  form#filter {
    display: flex;
    flex-direction: column;
  }
  form#filter select {
    height: 40px;
    width: 100%;
    max-width: 100%;
    margin: 6px 0;
    background-position: right 15px center;
  }

}
.flex-grid,
.flex-grid-thirds,
.flex-grid-quarters { 
  margin: 0 auto;
  clear: both;
}
.col {
  margin: 20px;
}

.col.padded {
  padding: 15px;
  border: 1px solid #aaa;
}

/* clearfix */
.flex-grid::before,
.flex-grid::after,
.flex-grid-thirds::before,
.flex-grid-thirds::after,
.flex-grid-quarters::before,
.flex-grid-quarters::after {
  content: "";
}
.flex-grid::after,
.flex-grid-thirds::after,
.flex-grid-quarters::after {
  clear: both;
}

.flex-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.flex-grid .col {
  flex: 1;
}
.col.w45 {
  flex: 1 0 45%;
}
.flex-grid-thirds {
  display: flex;
  justify-content: space-between;
}
.flex-grid-thirds.col33 {
  width: 33%;
}
.flex-grid-thirds .col {
  width: 32%;
}
.flex-grid-thirds .col.twothirds {
  width: 66%;
}
.flex-grid-quarters {
  display: flex;
}
.flex-grid-quarters .col {
  width: 25%;
}
.flex-grid-half {
  box-sizing: border-box;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
}
.flex-grid-half .col {
  box-sizing: border-box;
  width: 49.5%;
  margin: 0 0.25% 0.25% 0;
}
.flex-grid-half.stats {
  width: 66%;
}

@media (max-width: 959px) {

  .flex-grid-thirds .col,
  .flex-grid-half .col,
  .flex-grid-half.stats,
  .flex-grid-half .col.stats {
    width: 100%;
  }

}

@media (max-width: 767px) {

  .flex-grid,
  .flex-grid-thirds,
  .flex-grid-half {
    display: block;
  }
  .flex-grid .col,
  .flex-grid-thirds .col,
  .flex-grid-thirds .col.twothirds,
  .flex-grid-half .col,
  .flex-grid-half.stats,
  .flex-grid-thirds.col33 {
    display: block;
    width: 100%;
    margin: 0 0 10px 0;
  }
  .flex-grid-quarters {
    flex-flow: wrap;
  }
  .flex-grid-quarters .col {
    width: 50%;
  }

}
.home #layout > header > div:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 120px;
  background: linear-gradient(0deg, rgba(255,224,206,0.9) 0%, rgba(255,224,206,0) 100%);
}

.home .feel-good {
  position: relative;
  margin-top: 20px;
  justify-content: center;
}

.home div.intro {
  max-width: 930px;
  margin: 35px auto 0;
  padding: 75px;
  background: #f6e7ee;
  color: var(--colour-mutedmaroon);
  border-radius: 5px;
}
.home div.intro h1 {
  font-size: 2em;
  font-weight: 400;
  font-style: normal;
  color: var(--colour-darkmaroon);
}
.home div.intro > div > div.col {
  font-size: 17px;
  text-align: left;
  padding: 0 20px;
}
.home div.intro > div > div.col img {
  width: 100%;
  height: auto;
  border-radius: 5px;
  box-shadow: 1px 3px 9px rgba(139,77,105,0.5);
}
.home div.intro a:link, 
.home div.intro a:visited {
  color: var(--colour-mutedmaroon);
}

.home .find-swimsuit,
.home .home-vip,
.home .flex-grid-thirds,
.home .theway,
.home .stylist .flex-grid {
  max-width: 1100px;
  margin: 75px auto 0;
}
.home .flex-grid-thirds { margin: 30px auto 0; }

.home .find-swimsuit,
.home .home-vip {
  padding: 0;
}
.home .find-swimsuit,
.home .find-swimsuit a:link,
.home .find-swimsuit a:visited { 
  color: var(--colour-teal); 
}
.home .find-swimsuit a:link,
.home .find-swimsuit a:visited { 
  font-weight: 700;
}
.home .find-swimsuit h2,
.home .home-vip h2 {
  font-family: Arboria, sans-serif;
  font-size: 28px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 10px;
}
.home .home-vip h2 {
  color: var(--colour-darkmaroon);
}
.home .find-swimsuit p.explainer,
.home .home-vip p.explainer {
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-size: 20px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}
.home .home-vip p.explainer {
  color: var(--colour-mutedmaroon);
}
.home .find-swimsuit h2 { color: var(--colour-darkteal); }
.home .home-vip h2 { color: var(--colour-darkmaroon); }

.home .find-swimsuit .col,
.home .home-vip .col {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.home .find-swimsuit .col > div,
.home .home-vip .col > div {
  display: flex;
  min-height: 75px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.home .find-swimsuit .col {
  color: var(--colour-darkteal);
}

.home .home-vip {
  margin-bottom: 75px;
}
.home .home-vip,
.home .home-vip a:link,
.home .home-vip a:visited { 
  color: var(--colour-mutedmaroon); 
}
.home .home-vip a:link,
.home .home-vip a:visited { 
  font-weight: 700;
}
.home .home-vip:before {
  content: "";
  display: block;
  height: 75px;
  width: 170px;
  margin: 0 auto;
  border-top: 1px dotted #888;
}
.home .home-vip .home-vip-cta {
  max-width: 760px;
  margin: 40px auto 0;
  background: var(--colour-lightsalmon);
  padding: 10px 40px;
  color: var(--colour-darkmaroon);
}
.home .home-vip .home-vip-cta > .col {
  display: block;
}
.home .home-vip .home-vip-cta > .col:first-of-type {
  padding-top: 5px;
  text-align: center;
}
.home .home-vip .home-vip-cta p {
  font-size: 21px;
  font-family: chaparral-pro, serif;
  font-weight: 700;
}
.home .home-vip a.button {
  background: var(--colour-maroon);
  border-color: var(--colour-maroon);
  font-family: Arboria, sans-serif;
}
.home .home-vip > a.button {
  margin: 0 auto;
  display: block;
  width: fit-content;
}
.home .home-vip h2:last-of-type {
  margin-top: 40px;
  font-weight: 400;
  color: var(--colour-darkmaroon); 
}
.home .home-vip .flex-grid .col {
  max-width: 350px;
}
.home .home-vip h3 {
  margin: 0;
  color: var(--colour-darkmaroon); 
}

.home .home-rethinking {
  padding: 75px 0;
  background: var(--colour-yellow);
}
.home .home-rethinking div {
  max-width: 1100px;
  margin: 0 auto;
  color: var(--colour-darkmaroon);
}
.home .home-rethinking h2 {
  font-size: 20px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--colour-darkmaroon);
}
.home .asseenin .sectioncaps {
  text-align: center;
}
.home .home-confidence-banner {
  line-height: 0;
}

.home .stylist {
  padding-bottom: 80px;
  background-color: var(--colour-lightteal);
}
.home .stylist h2 {
  margin-top: 1em;
  margin-bottom: 0.5em;
  font-size: 3rem;
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-style: italic;
  line-height: 1em;
  color: var(--colour-teal);
}
.home .stylist h3 {
  margin-bottom: 0;
  padding-bottom: 0;
  font-size: 2rem;
  color: var(--colour-darkteal);
}
.home .stylist > h3 {
  text-align: center;
}
.home .stylist .flex-grid:first-of-type .col {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.home .stylist .flex-grid:first-of-type p {
  margin-top: 0;
  text-transform: uppercase;
}
.home-testimonials {
  margin: 50px auto 0;
}
.home-testimonials p {
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.33em;
}

.home .segment.home-blog {
  max-width: 1060px;
  margin: 0 auto;
  background-color: #fff;
}
.home .home-blog > h2 {
  margin: 0.3em 0 0 20px;
  font-size: 6rem;
  font-family: chaparral-pro, serif;
  font-weight: 400;
  font-style: italic;
  line-height: 1em;
  text-align: left;
  color: var(--colour-salmon);
}
.home .home-blog .col {
  max-width:  460px;
}
.home .home-blog .col img {
  max-width: 460px;
  height: auto;
}
.home .home-cc {
  max-width: 660px;
  margin: 0 auto;
}
.home .home-blog .flex-grid:last-of-type .col:first-of-type h3,
.home .home-blog .flex-grid:last-of-type .col:first-of-type h3 a:link,
.home .home-blog .flex-grid:last-of-type .col:first-of-type h3 a:visited {
  color: var(--colour-salmon)!important;
}
.home .home-blog .flex-grid:last-of-type .col:last-of-type h3,
.home .home-blog .flex-grid:last-of-type .col:last-of-type h3 a:link,
.home .home-blog .flex-grid:last-of-type .col:last-of-type h3 a:visited {
  color: var(--colour-darkteal)!important;
}
.home .home-blog .article-tile:nth-of-type(2) {
  background-color: var(--colour-lightteal);
}
.home .home-blog .article-tile:nth-of-type(2) h3,
.home .home-blog .article-tile:nth-of-type(2) h3 a:link,
.home .home-blog .article-tile:nth-of-type(2) h3 a:visited {
  color: var(--colour-darkteal);
}

.home .home-cc h3 {
  text-align: center;
}

@media only screen and (max-width: 1024px) {

  .home div.intro {
    margin: 0 auto;
    padding: 40px;
    max-width: calc(100% - 80px);
  }

  .home .home-rethinking {
    padding: 75px 20px;
  }

}

@media only screen and (max-width: 767px) {

  .home .home-rethinking img {
    width: 100%;
    height: auto;
  }
  .home .home-blog > h2 span {
    display: block;
  }
  .home .home-blog .flex-grid .col {
    margin-bottom: 2em;
  }

}
#products_matrix {
  padding: 1.5em; 
  background-color: var(--colour-lightsalmon); 
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: repeat(auto-fill, auto);
  grid-gap: 32px;
  width: calc(100% - 3em);
  margin: 20px auto;
}
.category-productsdisplay #products_matrix {
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.item {
  padding: 12px 16px;
  background-color: #fff;
  border-top: 1px solid #fff;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #fff;
  border-radius: 5px;
  box-shadow: 0 1px 5px rgba(244, 144, 103,0.5);
}
.item a img {
  width: 100%;
  height: auto;
  border: 1px solid #eee;
}
#products_matrix h3 {
  margin: 10px auto 15px; 
  font-size: 18px;
  line-height: 18px;
  text-align: center;
}
#products_matrix h3 a {
  color: var(--colour-maroon);
  text-decoration: none;
}
#products_matrix p {
  margin: 0;
}
#products_matrix.tag-frontpage {
  margin: 20px 0 0;
}
#products_matrix.tag-frontpage div.item {
  margin: 0 20px 10px 0;
  width: 252px;
  min-height: 270px;
  overflow: visible;
}


#products_matrix a.overlay {
  position: relative;
  display: block;
}
#products_matrix a.overlay::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#products_matrix a.new::after {
  background: url(/images/sticker-new.png) right 5px top 5px no-repeat;
}
#products_matrix a.sale::after {
  background: url(/images/sticker-sale.png) right 5px top 5px no-repeat;
}
#products_matrix a.video::after {
  background: url(/images/sticker-video.png) 5px 5px no-repeat;
}
#products_matrix a.new.video::after {
  background: url(/images/sticker-new.png) right 5px top 5px no-repeat, url(/images/sticker-video.png) 5px 5px no-repeat;
}
#products_matrix a.sale.video::after {
  background: url(/images/sticker-sale.png) right 5px top 5px no-repeat, url(/images/sticker-video.png) 5px 5px no-repeat;
}

#products_display {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4,minmax(0,1fr));
  grid-template-rows: repeat(auto-fill,auto);
  grid-gap: 32px;
  width: 100%;
  margin: 20px auto;
}

@media only screen and (max-width: 960px) {

  #products_matrix,
  #products_display {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 15px;
  }

}
@media only screen and (max-width: 767px) {

  #products_matrix,
  #products_display {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 15px;
  }

}.notice {
  margin: 1em 0 !important;
  padding: 0.75em 0.75em 0.65em;
  background-color: #fff9e6;
  border: 1px solid #ffc605;
  font-size: 1em;
  border-radius: 3px;
}
.notice b {
  color: #ff3b05;
  margin-right: 0.5em;
}
.notice.success {
  border-color: #20d020;
  background-color: #ecfceb;
}
.notice.success b {
  color: #20d020;
}
.notice.warning {
  border-color: #ff3333;
  background-color: #ffefef;
}
.order {
  position: relative;
  margin: 10px 0;
  padding: 8px 24px;
  background: #f2f5f6;
  border: 1px solid #c8d7dc;
  border-radius: 3px / 6px;
}
.order.hidden { display: none; }
.order span { color: red; }
.approved span { color: green; }
.order table { border-collapse: collapse; }
.order th {
  padding: 2px 4px;
  white-space: nowrap;
  vertical-align: top;
  text-align: right;
}
.order td { padding: 2px 4px; }
.action {
  position: absolute;
  top: 12px;
  right: 6px;
}
.action span, .action a:link, .action a:visited {
  margin: 0 5px 0 0;
  padding: 3px 8px;
  background: #a5b8da;
  background-image: -webkit-linear-gradient(top, #a5b8da, #7089b3);
  background-image: -moz-linear-gradient(top, #a5b8da, #7089b3);
  background-image: -ms-linear-gradient(top, #a5b8da, #7089b3);
  background-image: -o-linear-gradient(top, #a5b8da, #7089b3);
  border: 1px solid #7d99ca;
  border-radius: 3px;
  text-shadow: -1px -1px 0 rgba(0,0,0,0.3);
  text-align: center;
  font-weight: bold;
  color: #fff;
}
.intl span, .intl a:link, .intl a:visited {
  background: #1ba7de;
}
.action span:hover, .action a:hover, .action a:focus {
  border: 1px solid #5d7fbc;
  background: #819bcb;
  background-image: -webkit-linear-gradient(top, #819bcb, #536f9d);
  background-image: -moz-linear-gradient(top, #819bcb, #536f9d);
  background-image: -ms-linear-gradient(top, #819bcb, #536f9d);
  background-image: -o-linear-gradient(top, #819bcb, #536f9d);
  text-decoration: none !important;
  color: #fff;
}
.orderarrow {
  position: absolute;
  top: 8px;
  left: 8px;
}
.orderarrow:hover, .orderarrow:focus { text-decoration: none !important; }
  #paywall {
    position: fixed;
    bottom: 0;
    left: 0;
    padding-top: 3em;
    padding-left: 180px;
    width: calc(100% - 180px);
    height: 70%;
    background-color: rgba(255,255,255,0.9);
    box-shadow: 0 -120px 100px rgba(126,70,45,0.5);
    border-top: 1px solid rgb(176,118,88);
    z-index: 998;
  }
  #paywall h3 {
    margin: 0;
    text-align: center;
  }
  #paywall .flex-grid-half {
    max-width: 760px;
    margin: 1em auto 3em;
  }
  #paywall .flex-grid-half col:first-of-type {
    border-right: 2px solid #ccc;
  }
  #paywall .flex-grid-half h4 {
    text-align: center;
  }
  #paywall .flex-grid-half p {
    text-align: center;    
  }
  #paywall .flex-grid-half a.button {
    display: inline-block;
    width: 180px;
  }
  #paywall .flex-grid-half ul {
    width: 75%;
    margin: 0 auto;
  }
  
  @media only screen and (max-width: 960px) {

    #paywall {
      padding-left: 0;
      width: 100%;
    }

  }

  @media only screen and (max-width: 767px) {

    #paywall .flex-grid-half col:first-of-type {
      border-right: none;
    }

  }
  .related {
  margin: 2em 0;
}
.related .tabs {
  height: 23px;
  clear: both;
  background: left bottom repeat-x;
  background-image: url(data:image/gif;base64,R0lGODlhFAABAIAAAMzMzAAAACH5BAAAAAAALAAAAAAUAAEAAAIEhI+ZBQA7);
}
.related .tabs a,
.related .tabs a:link,
.related .tabs a:visited {
  display: block;
  float: left;
  width: 104px;
  height: 23px;
  background: 4px 0 no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAXBAMAAAAPevcIAAAAGFBMVEXt7e7////LzM3r6+zj4+Ty8vL39/jq6usOS5XzAAAAUElEQVQ4jb3LoQ2AUAxAwVfR71mBFUiYgARdg+/+S8AKr4LzB8azfdSA8iV9oX0pX8KX5Uv6wqC0L+VL/FKWL+kLg9K+lC8xKYd1clk3u/YCMI8is1RKeJwAAAAASUVORK5CYII=);
  text-decoration: none;
  text-align: center;
  line-height: 23px;
  color: #333;
}
.related .tabs a.current,
.related .tabs a.current:visited {
  background: 4px 0 no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAYBAMAAAD+LEXdAAAAGFBMVEX////MzMzy8vLq6urc3NzU1NTj4+P4+Pg7gVJQAAAAaElEQVQ4jZXQsQmAMBgF4WcU0kYR0hpxgIzgCIGA1iIZwP0b/4xw13/NaSZV9ZYd9JROgkBuxURpw2Q6MXERE1VOGieJkyFj0pdBMgZMfMREFyeNk8SJXabELlPiCya6OXk5OTj5KLB+mBUQZgeBeQgAAAAASUVORK5CYII=);
  color: #333;
}
.related .tabs a:hover {
  border: none !important;
}
.related-content {
  clear: both;
  padding: 1em 0;
  overflow: hidden;
}

div.view-wishlist {
  position: absolute;
  width: fit-content;
  top: 30px;
  right: 25px;
}

#product a.button,
#product input.button {
  font-size: 1.1em;
}

#product, #product-extras {
  width: 100%;
}
#product-h1 {
  width: 56%;
  float: right;
}
#product-h1 h1 {
  font-family: arboria, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
  text-align: left;
}
.product-image, .product-extras-col1 {
  width: 41%;
  float: left;
}
.product-col2, .product-extras-col2 {
  width: 56%;
  margin-left: 3%;
  float: left;
}

.product-col2 .divider:first-of-type {
  margin: 0 0 1em;
}

.product-image td {
  padding: 0 10px 10px 0;
}
.product-image td:nth-child(4) {
  padding: 0 0 10px 0;
}

#product p.flex {
  margin-top: 2em!important;
  margin-bottom: 2em!important;
}
#product p.flex a.button {
  margin-left: 40px;
}
#product p.flex a.button:link,
#product p.flex a.button:visited {
  background: #fff;
  color: var(--colour-salmon)!important;
}
#product p.flex a.button:hover,
#product p.flex a.button:focus {
  background: #fff;
  color: var(--colour-maroon)!important;
}
#product p.flex a.button::after {
  content: " ↗";
}
#product p.flex input[type=button].fave.button {
  transition: 0.5s;
}
#product p.flex input[type=button].fave.button.on {
  background-color: var(--colour-teal);
  border: 2px solid var(--colour-teal);
}

#product .product-col2 h4 {
  font-family: chaparral-pro, serif;
  font-weight: 700;
  font-style: italic;
  color: var(--colour-maroon);
  font-size: 1.5rem;
  margin-bottom: 0.2em;
}
#product .product-col2 p {
  margin-top: 0;
  margin-bottom: 0.5em;
}

.vimeo {
  position: relative;
}
.vimeo .play {
  position: relative;
  display: block;
  background-size: cover;
}
.vimeo .play::after {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(/images/play.png) center center no-repeat;
  content: " ";
}

#vimeo_container {
  display: none;
  position: fixed;
  left: 0;
  top: 90px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8) url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RTE5QkY4QTlBMzg2MTFFNjk4NUY4NDVENzE0QjMzNzQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RTE5QkY4QUFBMzg2MTFFNjk4NUY4NDVENzE0QjMzNzQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpFMTlCRjhBN0EzODYxMUU2OTg1Rjg0NUQ3MTRCMzM3NCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpFMTlCRjhBOEEzODYxMUU2OTg1Rjg0NUQ3MTRCMzM3NCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pt9qXp4AAAFkSURBVHja7JxBEoIwEARZ//9nxYsHRSlrAjsTuj/AbCuQbBKWBQAAAAAAAAAAAAAA4ELcV6jtf+r9ArUyq7wjaqutX2cWiWfUVmddaEZ5L4GzSTyzluq68AzyPgSmS+zIXi5BEuV9FZgmsTNruQZLkLcr0F2iQ7ZKCeqaqdICu2WptOBud0MlFeD4KKmUQlxfZpVQkPNIoNwLcx+LlnOBCQN520JTppLleKslzcPtnldpnaDhwRQBiW00m2FHaiP3sID/CEnugrfPHtLXYQ4P+kvQDItYbU2AzTCBy6inBd6TmLoG3d7LS5b35LYAtzAvEV4iDGMYSDOVo5lAM0EVcfl2Fg3VZnmJEllU6hbIsqZ5gdMurLO1QxDI5iJBINvbBIFssBQEssVXEMgmc0EgxxwEgRy0EQRy1EsQyGFDQSDHXQWBHLgWBHLkXxDIRycEgXz2ZPA/kA/vDPy1ZpQ4mocAAwChC8Q7rKqGAQAAAABJRU5ErkJggg==') top right no-repeat;
  background-size: 40px;
  vertical-align: middle;
  text-align: center;
  z-index: 50;
  cursor: pointer;
}
#vimeo_player {
  position: relative;
  top: 100px;
}
p.afterpay-info {
  font-size: 0.9em;
  margin: 0;
}
p.afterpay-info img {
  height: 1.3em;
  margin-bottom: -4px;
  padding: 0 3px;
}

p.vip-price {
  margin: 1em 0 0;
  padding: 4px 8px;
  border: 1px solid;
  border-radius: 4px;
  color: #30b486;
  width: fit-content;
}
p.vip-price > small {
  padding-left: 2em;
  color: #333;
}
p.productprice {
  font-size: 1.2em;
  font-weight: 700;
} 
p.forsale {
  color: #d85529;
}
p.productprice span { /* oldprice */
  color: #8f8f8f;
}

@media only screen and (max-width: 960px) {

  #product-h1, .product-image, .product-extras-col1, .product-col2, .product-extras-col2 { 
    width: 100%;
    clear: both;
    float: none;
    margin: 5px 0; 
  } 
  div.view-wishlist {
    top: 95px;
    right: 15px;
  }

}
.submenu {
  display: flex;
  list-style-type: none;
  margin: 1em 0;
  padding: 0;
}
.submenu li {
  padding: 0.2em;
}
.collapse thead th {
  background: #52b1bc;
  color: #fff;
}
.collapse thead th a:link,
.collapse thead th a:visited {
  text-decoration: underline;
  color: #fff;
}
.collapse thead th a:hover,
.collapse thead th a:focus {
  color: #166d80;
}
.collapse th, .collapse td {
  padding: 4px 8px;
}
.wishlist-items > div {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  border-bottom: 2px solid #333;
}
.wishlist-items > div:first-child {
  border-top: 2px solid #333;
}
.wishlist-items > div > div:first-child {
  padding: 0.5em 1em;
}
.wishlist-items > div > div:nth-child(2) {
  flex-grow: 1;
  font-weight: bold;
}

.wishlist-items a.unwish:link,
.wishlist-items a.unwish:visited {
  text-decoration: none;
  font-size: 3em;
}
#menu_trigger {
  display: none;
  font-size: 2em;
}

@media only screen and (max-width: 960px) {

  #menu_trigger {
    display: block;
    position: absolute;
    top: 0.5em;
    right: 1em;
    cursor: pointer;
  }
  #menu_trigger:hover,
  #menu_trigger:focus {
    text-decoration: none !important;
  }

  body {
    padding-top: 88px;
  }
  #layout {
    grid-template-columns: auto;
    grid-template-rows: auto;
  }
  #layout > nav {
    grid-row: 1 / span 1;
    position: fixed;
    top: 0;
    width: 100%;
  }
  #layout > nav > div > div {
    display: none;
    view-transition-name: mobile-navigation;
  }
  #layout > nav > div > div.active {
    display: block;
  }

  .flex-2 {
    display: block;
    padding: 0.5em 0;
  }
  .flex-2 > div {
    margin: 2em 2em;
    padding: 0.5em 2em;
  }

}
