/*
  Colours
  Blue: 0076bf
  Orange: f37021
  Green: 72bf44
  
  Mods
  Lighter Blue: 008ee5
  Lighter Orange: f29d2f
  Even lighter orange: ffb866

*/

/*
@font-face {
    font-family: 'VegurRegular';
	src: url('/static/fonts/vegur-r_0.602-webfont.eot?#iefix') format('embedded-opentype'), 
	     url('/static/fonts/vegur-r_0.602-webfont.woff') format('woff'), 
	     url('/static/fonts/vegur-r_0.602-webfont.ttf')  format('truetype'),
	     url('/static/fonts/vegur-r_0.602-webfont.svg#VegurRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}
*/

body {
  font-family: VegurRegular, Arial, Helvetica, "Nimbus Sans L", sans-serif;
}

#body-inner {
  background: #0076bf;
  margin: 0;
  padding: 0;
}

input {
  color: #464646;
}

a {
  color: #e55f0b;
}

p {
  margin-bottom: 1em;
}

p.last {
  margin-bottom: 0;
}

p + p {
  /* padding-top: 0.5em; */
}

h1 {
  margin-top: 0.5em;
  margin-bottom: 0.2em;
  font-size: 1.95em;
  color: #0076bf;
}

h2 {
  margin-top: 0.7em;
  margin-bottom: 0.3em;
  font-size: 1.6em;
  color: #0076bf;
}

h3 {
  font-size: 1.35em;
  color: #0076bf;
}

strong {
  font-weight: bold;
}

.small {
  font-size: small;
}

em {
  font-style: italic;
}

/* -----------------------------------------------------------------------------
   Main Areas
--------------------------------------------------------------------------------*/
.area {
  position: relative;
  display: block;
  overflow: hidden;
  clear: both;
}

#header-admin {
  width: 100%;
}

#header1 {
  width: 100%;
}

#page {
  width: 99%;
  margin-left: auto;
  margin-right: auto;
}

#header2 {
  width: 100%;
  background: #ffffff;
}

#content {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background: #e9e9e9;
}

#footer {
  width: 100%;
  color: #ffffff;
  text-align: center;
}

#closure {
  width: 100%;
  background: #ffffff;
  text-align: center;
  padding: 5px 0;
}

/* ----------------------------------------------------------------------------
   Header Admin
--------------------------------------------------------------------------------*/
#header-admin {
  background: #f37021; 
}

#header-admin-menu {
  float: right;
  margin-right: 3%;
}

#header-admin-username {
  float: right;
  display: block;
  padding: 0.5em 0.7em;
  color: #ffffff;
}

#header-admin .menu-horiz a:hover,
#header-admin .menu-horiz a:focus {
  background: #f29d2f;
}

@media all and (max-width: 479px) {
  #header-admin-username {padding-top: 1em; padding-bottom: 1em;}
  #header-admin .menu-horiz a {border: 0;}
  #header-admin .menu-horiz ul {border: 0;}
}

/* ----------------------------------------------------------------------------
   Header 1
--------------------------------------------------------------------------------*/
#header1-menu1 {
  float: left;
  margin-left: 3%;
}

#header1-menu2 {
  float: right;
  margin-right: 3%;
}

#header1-menu-link.header1-start-wide-hidden {
  display: none;
}

@media all and (max-width: 830px) {
  #header1-menu1 {display: none; float: right; clear: both; margin-right: 3%;}
  #header1-menu1.menu-horiz li {}
  #header1-menu-link.header1-start-wide-hidden {display: inline-block;}
}

@media all and (max-width: 530px) {
  #header1-menu1 {float: none; clear: both;}
  #header1-menu1.menu-horiz li {display: block;}
}

@media all and (max-width: 479px) {
  #header1-menu2 {width: 100%; margin: 0; padding: 0;}
  #header1-menu2 li {width: 32%; text-align: center;}
  #header1-menu2 a {padding-left: 0; padding-right: 0;}
  #header1-menu2 a {border-bottom: none;}
  #header1-menu2 ul {border-top: none;}
}

/* -----------------------------------------------------------------------------
   Header 2
--------------------------------------------------------------------------------*/
#logo-box {
  width: 207px;
  position: absolute;
  margin: 5px 5px 0;
  text-align: right;
}

#logo-box a {
  display: block;
  width: 207px;
  height: 71px;
}

#logo-text {
  display: block;
  padding: 5px 0;
}

#logo {
  width: 207px;
  height: 71px;
  border: 0;
  margin: 0 0 5px 0;
  padding: 0;
}

#dividing-line {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 4px;
  background: #f37021;
  font-size: 0;
  line-height: 0;
  clear: both;
}

#noscript {
  background: #ffcbcb;
  padding: 20px;
}

#noscript h3 {
  color: #000;
  font-weight: bold;
  padding-bottom: 10px;
}

#cart {
  float: right;
  margin: 5px;
}

#cart-inner {
  position: relative;
  width: 207px;
  height: 71px;
  background: #72bf44;
  color: #ffffff;
}

#cart img {
  position: absolute;
  top: 17px;
  left: 17px;
}

#cart-text {
  position: absolute;
  left: 85px;
  top: 28px;
}

#cart a {
  text-decoration: none;
}

@media all and (max-width: 910px) {
  #cart-inner {width: 71px;}
  #cart img {width: 30px; top: 8px; left: 24px;}
  #cart-text {width: 71px; text-align: center; left: 0px; top: 40px;}
}

@media all and (max-width: 319px) {
  #logo-box {width: 96%; margin-left: 2%;}
  #logo-box a,
  #logo {width: 100%; height: auto;}
  #cart {width: 96%;}
  #cart-inner {width: 100%; height: 32px;}
  #cart {margin-right: 2%;}
  #cart img {width: 20px; top: 8px; left: 24px;}
  #cart-text {width: 71px; text-align: center; left: 50px; top: 7px;}
}

#header2-text2 {
  float: right;
  margin-right: 4px;
  margin-top: 8px;
  font-size: 1.5em;
  font-weight: bold;
}

@media all and (max-width: 499px) {
  #header2-text2 {clear: right;}
  #header2-text2 {margin-top: 4px; margin-bottom: 4px;}
}

@media all and (max-width: 319px) {
}

#header2-tabs {
  width: 100%;
  margin-top: 47px;
  text-align: center;
  line-height: 0;
}

#header2-tabs-inner {
  margin-left: 217px;
  margin-right: 217px;
}

#header2-tabs .header2-tab {
  display: inline-block;
  max-width: 225px;
  line-height: normal;
}

#header2-tab1 {
  position: relative;
  width: 35%;
}

#header2-tab2 {
  position: relative;
  width: 55%;
}

#header2-tabs a {
  display: block;
  width: 100%;
  height: 55px;
  text-decoration: none;
  color: #5b5b5b;
}

.header2-tab-left {
  width: 35px;
  height: 55px;
  position: absolute;
  left: 0;
  background-image: url('/static/images/site/tab-left-inactive.png');
  background-size: 35px 55px;
  background-repeat: no-repeat;
}

.header2-tab.active .header2-tab-left {
  background-image: url('/static/images/site/tab-left-active.png');
  background-size: 35px 55px;
  background-repeat: no-repeat;
}

.header2-tab-right {
  width: 35px;
  height: 55px;
  position: absolute;
  right: 0;
  background-image: url('/static/images/site/tab-right-inactive.png');
  background-size: 35px 55px;
  background-repeat: no-repeat;
}

.header2-tab.active .header2-tab-right {
  background-image: url('/static/images/site/tab-right-active.png');
  background-size: 35px 55px;
  background-repeat: no-repeat;
}

.header2-tab-middle {
  position: absolute;
  top: 0;
  height: 55px;
  width: 100%;
}

.header2-tab-text {
  position: absolute;
  top: 0;
  height: 55px;
  width: 100%;
}

.header2-tab-middle-inner {
  height: 55px;
  margin: 0 35px;
  background-image: url('/static/images/site/tab-middle-inactive.png');
  background-size: 1px 55px;
  background-repeat: repeat-x;
}

.header2-tab.active .header2-tab-middle-inner {
  background-image: url('/static/images/site/tab-middle-active.png');
  background-size: 1px 55px;
  background-repeat: repeat-x;
}

#header2-tabs .active {
  position: relative;
  z-index: 4;
}

#header2-tabs .active a {
  color: #ffffff;
}

#header2-tabs a {
  font-size: 22px;
  font-weight: bold;
}

#header2-tabs .a-inner {
  position: relative;
  top: 5px;
}

@media all and (max-width: 910px) {
  #header2-tabs-inner {margin-right: 81px;}
}

@media all and (max-width: 799px) {
  #header2-tabs .a-inner {top: 14px;}
  #header2-tabs a {font-size: 14px;}
}

@media all and (max-width: 600px) {
  #logo-box { float: left; position: static;}
  #header2-tabs {position: absolute; bottom: 0; right: 0;}
  
  #header2-tabs {clear: right; position: static;}
  #header2-tabs-inner {margin-right: 0;}
}

/* was 479 */
@media all and (max-width: 499px) {
  #header2-tabs {clear: both; position: static;}
  #header2-tabs-inner {margin-left: 0; margin-right: 0;}
  #header2-tab1 {width: 38%;}
  #header2-tab2 {width: 57%;}
}

@media all and (max-width: 240px) {
  #header2-tabs .a-inner {top: 20px;}
  #header2-tabs a {font-size: 12px;}
}

#header2-tab1 {
  position: relative;
  left: 6px;
  z-index: 3;
}

#header2-tab2 {
  position: relative;
  left: -6px;
  z-index: 2;
}

/* ----------------------------------------------------------------------------
   Content
--------------------------------------------------------------------------------*/
#content {
}

/* ----------------------------------------------------------------------------
   Footer
--------------------------------------------------------------------------------*/
#footer-menu {
  width: 100%;
  overflow: hidden;
}

#footer-menu ul {
  text-align: center;
}

#footer-message {
  padding: 0.5em 0;
}

@media all and (max-width: 479px) {
  #footer .menu-horiz li {
    display: block;
  }
}

/* -----------------------------------------------------------------------------
   Horizontal Menu
--------------------------------------------------------------------------------*/
.menu-horiz a {
  display: block;
  padding: 0.5em 0.7em;
  color: #ffffff;
  text-decoration: none;
}

.menu-horiz li {
  display: inline-block;
}

.menu-horiz a:link {
}

.menu-horiz a:visited {
}

.menu-horiz a:hover,
.menu-horiz a:focus {
  background: #008ee5;
}

@media all and (max-width: 479px) {
  .menu-horiz a {padding-top: 1em; padding-bottom: 1em;}
  .menu-horiz a {border-bottom: 1px solid #008ee5;}
  .menu-horiz ul {border-top: 1px solid #008ee5;}
}

/* -----------------------------------------------------------------------------
   Content Columns
--------------------------------------------------------------------------------*/
.col {
  float: left;
  display: block;
  margin: 1% 0 0 1%;
  overflow: hidden;
}

.base-cols-1 #col-1 {width: 98%;}

.base-cols-2 #col-1 {width: 25%;}
.base-cols-2 #col-2 {width: 72%;}

.base-cols-3 #col-1 {width: 25%;}
.base-cols-3 #col-2 {width: 46%;}
.base-cols-3 #col-3 {width: 25%;}

@media all and (max-width: 900px) {
  .base-cols-2 #col-1 {width: 35%;}
  .base-cols-2 #col-2 {width: 62%; margin-right: 1%; margin-left: 0; float: right;}

  .base-cols-3 #col-1 {width: 35%;}
  .base-cols-3 #col-2 {width: 62%; margin-right: 1%; margin-left: 0; float: right;}
  .base-cols-3 #col-3 {width: 62%; margin-right: 1%; margin-left: 0; float: right; margin-top: 0;}
  .block-title {padding: 0.3em; font-size: 1.35em;}
}

@media all and (max-width: 479px) {
  .base-cols-2 #col-1 {width: 98%;}
  .base-cols-2 #col-2 {width: 98%; margin: 1% 0 0 1%; float: left; margin-top: 0;}
  
  .base-cols-3 #col-1 {width: 98%; margin: 1% 0 0 1%; }
  .base-cols-3 #col-2 {width: 98%; margin: 1% 0 0 1%; float: left; margin-top: 0;}
  .base-cols-3 #col-3 {width: 98%; margin: 1% 0 0 1%; float: left;}
  .block-title {padding: 0.3em; font-size: 1.35em;}
}

@media all and (max-width: 319px) {
  .base-cols-3 #col-1 {width: 96%; margin: 2% 0 0 2%; }
  .base-cols-3 #col-2 {width: 96%; margin: 2% 0 0 2%; float: left;}
  .base-cols-3 #col-3 {width: 96%; margin: 2% 0 0 2%; float: left;}
  .block-title {padding: 0.2em; font-size: 1.2em;}
}

/* -----------------------------------------------------------------------------
   Blocks
--------------------------------------------------------------------------------*/
.block {
  margin-bottom: 2%;
  overflow: hidden;
}

.block-title {
  font-size: 1.35em;
  padding: 0.5em;
  background: #72bf44;
  color: #ffffff;
}

.block-content {
  background: #fff;
  overflow: hidden;
  position: relative;
}

.block-padded .block-content {
  padding: 0.5em;
}

.block-image img {
  width: 100%;
}

.block-news-entry .block-title a {
  color: #ffffff;
}

.block-news-entry .block-title a:link {
  color: #ffffff;
}

.block-news-entry .block-title a:visited {
  color: #ffffff;
}

.block-news-entry .block-title a:hover,
.block-news-entry .block-title a:focus {
  color: #ffffff;
}

.download-file-text {
  display: block;
  color: #6c6c6c;
  margin-top: 0.1em;
}

.download-file {
  margin-bottom: 0.5em;
}

.download-file-intro {
  margin-bottom: 0.3em;
}

@media all and (max-width: 479px) {
  .block-categories .block-menu {display: none;}
}

@media all and (min-width: 480px) {
  .block-categories #show-category-menu.start-wide-hidden {display: none;}
}

/* -----------------------------------------------------------------------------
   Search Box
--------------------------------------------------------------------------------*/
.search {
  display: block;
  position: relative;
  padding: 1px;
  background: #f37021;
  overflow: hidden;
}

.search .search-box-wrapper {
  display: block;
  overflow: hidden;
  margin-right: 35px;
}

.search input.search-box {
  display: block;
  height: 35px;
  width: 96%;
  margin: 0;
  padding: 0 2%;
  border: 0;
  font-size: 1em;
}

.search input.search-button {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  background: url('/static/images/site/search-buttonx2.png');
  background-size: cover;
  width: 35px;
  height: 35px;
  overflow: hidden;
  text-decoration: none;
  margin: 0;
  padding: 0;
  border: 0;
  cursor: pointer;
}

.ui-autocomplete {
  background: #e9e9e9;
  border-left: 1px solid #666;
  border-top: 1px solid #666;
  border-right: 1px solid #666;
}

.ui-autocomplete li a {
  cursor: pointer;
  color: #000000;
  top: 0;
  border-bottom: 1px solid #666;
}

.ui-autocomplete .ui-state-focus {
  background: #f29d2f;
  color: #ffffff;
  top: 0;
}

li.ui-autocomplete-category {
  font-weight: bold;
  padding: .2em .4em;
  margin: .8em 0 .2em;
  line-height: 1.5;
}

@media all and (max-width: 479px) {
  /*.ui-autocomplete a {padding-top:0.8em; padding-bottom: 0.8em;}*/
}

/* -----------------------------------------------------------------------------
   Expandable Menus
--------------------------------------------------------------------------------*/
.block-menu li,
.special-expandable {
  display: block;
  width: 100%;
}

.block-menu a.menu-a:hover,
.special-expandable a:hover {
  background-color: #ffb866;
  color: #000000;
}

.block-menu a.menu-a.active {
  background-color: #ffdbb2;
}

.block-menu a.menu-a,
.special-expandable a {
  display: block;
  width: 100%;
  padding: 2px 0 3px 1px;
  color: #464646;
  text-decoration: none;
  background: url('/static/images/site/expandable-menu-bg-divider.png') bottom repeat-x;
}

.block-menu .menu-a .a-inner,
.special-expandable a .a-inner {
  padding: 0.5em 6px 0.5em 18px;
  background: url('/static/images/site/expandable-menu-bg-orange.png') left repeat-y;
}

.block-menu .menu-a .a-inner2,
.special-expandable a .a-inner2 {
  padding: 0.5em 6px 0.5em 14px;
}
.block-menu li li a.menu-a {
  padding-left: 20px;
}

.block-menu li li li a.menu-a {
  padding-left: 40px;
}

.block-menu li li li li a.menu-a {
  padding-left: 60px;
}

.block-menu li li li li li a.menu-a {
  padding-left: 80px;
}

.expandable-menu li.start-collapsed .expandable 
{
  display:none;
}

.expandable-menu.panels .expandable {
  padding: 0.5em 0.5em 0.5em 12px;
  background: url('/static/images/site/expandable-menu-bg-divider.png') bottom repeat-x;
}

@media all and (max-width: 479px) {
  .block-menu .menu-a .a-inner, .special-expandable a .a-inner {padding-top:0.8em; padding-bottom: 0.8em;}
}

/* -----------------------------------------------------------------------------
   Forms and buttons
--------------------------------------------------------------------------------*/
form.inline {
  display: inline;
}

form.userform .errorlist {
  /*color: #ffffff;*/
  background: #ffcbcb;
  border: 1px solid #ff7a7a;
  padding: 5px;
  margin: 5px 0;
}

form.userform .helptext {
  display: block;
  font-size: 80%;
  color: #6c6c6c;
  padding-top: 2px;
}

form.userform .field-required {
  color: red;
  font-size:small;
  vertical-align:top;
}

form.userform input[type="submit"],
.span-button,
.a-button {
  font-size: 1em;
  border: 0;
  background: #f37021;
  color: #ffffff;
  padding: 5px;
  cursor: pointer;
  padding: 10px;
}

form.userform input[type="submit"]:hover,
.span-button:hover,
.a-button:hover {
  background: #f29d2f;
}

form.userform input[type="submit"].disabled {
  background: #ffb866;
}

.span-button,
.a-button {
  display: inline-block;
  margin: 0 5px 5px 0;
  text-decoration: none;
  text-align: center;
}

.span-button.span-button-small,
.a-button.a-button-small {
  padding: 2px;
  margin: 0;
}

.span-button.span-button-vsmall,
.a-button.a-button-vsmall {
  padding: 0;
  margin: 0;
}

.span-button.clicked,
.a-button.clicked {
  background: #888;
}

.span-button.span-button-inline,
.a-button.a-button-inline {
  display: inline;
}

p.form-field-p .form-field-label {
  display: inline-block;
  min-width: 180px;
}

p.form-field-p.widget-textarea .form-field-label,
p.form-field-p.widget-textarea .form-field-label label {
  vertical-align: top;
}

.field-required {
  color: red;
  font-size:small;
  vertical-align:top;
}

select {
  max-width: 100%;
}

@media all and (max-width: 479px) {
  .userform select,
  .userform input[type="text"],
  .userform input[type="email"],
  .userform input[type="url"],
  .userform input[type="number"],
  .userform input[type="password"] { width: 100%; height: 2em; }
  .userform input[type="submit"] { width: 100%; margin-top: 0.5em;}
  .span-button.wide-when-small { width: 100%;}
}

/* -----------------------------------------------------------------------------
   Tables
--------------------------------------------------------------------------------*/
table.data {
  padding: 0;
  margin: 0;
  overflow-x: auto;
  display: block;
}

table.data thead,
table.data .thead,
table.data tr.sub-thead2 {
  background: #b2c3ff;
  font-weight: bold;
}

table.data tr.sub-thead1 {
  background: #d7ff91;
  font-weight: bold;
}

table.data tr {
  padding: 0;
  margin: 0;
}

table.data tr.even {
  background: #d9e1ff;
}

table.data tr.odd {
  background: #f2f5ff;
}

table.data td.yes {
  color: #009900;
}

table.data td.no {
  color: #e52e2e;
}

table.data td,
table.data th {
  text-align: left;
  padding: 8px;
}

table.basket tfoot td {
  padding: 0.5em;
}

table.invoice {
  padding: 0;
  margin: 0;
}

table.invoice thead {
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
}

table.invoice tbody {
  border: 1px solid #000;
}

table.invoice tr {
  padding: 0;
  margin: 0;
}

table.invoice thead tr {
  font-weight: bold;
  border-bottom: 1px solid #000;
}

table.invoice tr.total {
  font-weight: bold;
  border-top: 1px solid #000;
}

table.invoice tr.voucher {
  border-top: 1px solid #000;
  background: #cdff78;
}

table.invoice tr.delivery {
  border-top: 1px solid #000;
  background: #78bbff;
}

table.invoice tr.even {
  background: #eee;
}

table.invoice tr.odd {
  background: #ddd;
}

table.invoice td,
table.invoice th {
  text-align: left;
  padding: 15px;
}

table.invoice {
  table-layout: fixed;
}

tr.subhead {
  background: #d7ff91;
  font-weight: bold;
}

tr.problem,
td.problem,
th.problem,
p.problem {
  background: #ffcbcb;
}

table.detail th,
table.detail td {
  padding: 5px;
}

table.detail th {
  text-align: right;
  font-weight: bold;
}

@media all and (max-width: 479px) {
  table.invoice td, table.invoice th {padding: 15px 5px; width: 100%;}
  
}

/* -----------------------------------------------------------------------------
   Maps
--------------------------------------------------------------------------------*/
.admin-section #map-canvas {
  width: 400px;
  height: 400px;
}

.our-shops #map-canvas,
.collection-network #map-canvas,
.checkout-delivery .map-canvas {
  width: 100%;
  height: 400px;
}

.infowin {
  overflow: hidden;
}

/* -----------------------------------------------------------------------------
   Booklists
--------------------------------------------------------------------------------*/
.booklist-items {
}

.booklist-item {
  padding: 10px;
  border: 1px solid #ccc;
  background: #eee;
  margin: 0 0 10px;
  overflow: hidden;
  clear: both;
}

.booklist-item .details {
  float: left;
  line-height: 1.2em;
}

.booklist-item .span-button {
  margin-left: 20px;
}

.booklist-notes {
  background: #e5f0ff;
  border: 1px solid #c4ddff;
  padding: 0.5em;
  margin-bottom: 0.5em;
}

.booklist:hover .hover-block {
  display: block;
  z-index: 100;
}

.booklist .hover-block {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
}

.booklist a.hover-edit {
  display: block;
  float: right;
  position: static;
}

/* -----------------------------------------------------------------------------
   Products
--------------------------------------------------------------------------------*/
.product-detail {
  position: relative;
  overflow: hidden;
}

.product-detail .description {
  line-height: 1.2em;
}

.product-detail .details {
  line-height: 1.5em;
  margin-left: 33%;
  overflow: hidden;
}

.product-detail.zoomed-in .details {
  margin-left: 0;
}

.product-detail .details .a-button,
.product-detail .details .span-button {
  line-height: 1em;
}

.product-detail .images {
  width: 33%;
  float: left;
  min-height: 100px;
  padding-bottom: 0.5em;
  padding-right: 0.5em;
}

.product-detail.zoomed-in .images {
  width: 100%;
}

.product-detail .images .inner {
}

.product-detail .images img {
  width: 100%;
}

.product-detail .images-outer {
  position: relative;
}

.product-detail.zoomed-in .images-outer {
  overflow: hidden;
}

.product-detail .images-outer .images-buttons {
  position: absolute;
  overflow: hidden;
  z-index: 20;
  top: 0;
  left: 0;
}

.product-detail .images-outer .images-buttons span.images-button {
  font-size: 1.2em;
  border: 0;
  background: #f37021;
  color: #ffffff;
  padding: 0 5px;
  overflow: hidden;
  cursor: pointer;
}

.product-detail .images-outer .images-buttons span.images-button:hover {
  background: #f29d2f;
}

.product-detail:hover .hover-block {
  display: block;
  z-index: 100;
}

.product-detail .hover-block {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
}

.product-detail a.hover-edit {
  display: block;
  float: right;
  position: static;
}

.product-list-item {
  overflow: hidden;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
  border-bottom: 1px solid #bbb;
}

.product-list-item .controls {
  float: right;
}

.product-list-item a.imga {
  overflow: hidden;
  line-height: 0;
}

.product-list-item .img {
  width: 100px;
  min-height: 50px;
  max-height: 150px;
  overflow: hidden;
  float: left;
}

.product-list-item img {
  float: left;
  width: 100px;
  max-height: 150px;
}

.product-list-item .details {
  margin-left: 115px;
  line-height: 1.5em;
}

.product-list-item .details .a-button,
.product-list-item .details .span-button {
  line-height: 1em;
  float: right;
}

/* -----------------------------------------------------------------------------
   Checkout
--------------------------------------------------------------------------------*/
.user-message {
  background: #ffcbcb;
  border: 1px solid #ff7a7a;
  padding: 5px;
  margin: 5px 0;
}

.block-booklists select {
  border: solid 2px #f37021; 
}

.checkout-button,
form.userform input[type="submit"].checkout-button,
.span-button.checkout-button,
.a-button.checkout-button {
  padding: 20px;
}

.checkout-basket-button {
  float: right;
}

/* -----------------------------------------------------------------------------
   Editable Areas
--------------------------------------------------------------------------------*/
.editable-area {
  position: relative;
  overflow: hidden;
}

.editable-area:hover a.hover-edit {
  display: block;
  z-index: 100;
}

a.hover-edit {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
}

.editable-area .main-images {
  overflow: hidden;
  width: 100%;
}

.editable-area .main-image {
  width: 100%;
}

.editable-area .main-image img {
  width: 100%;
}

.editable-area.editable {
  min-height: 1em;
}

.editable-area.with-images .text {
  padding-top: 0.5em;
}

.editable-area .main-images.inset {
  float: left;
  width: 40%;
  margin-right: 0.5em;
}

@media all and (max-width: 479px) {
  .static-page .editable-area .main-images { width: 100%; }
}

/* -----------------------------------------------------------------------------
   Featured Product Lists
--------------------------------------------------------------------------------*/
.featlist {
  position: relative;
}

.featlist:hover a.hover-edit {
  display: block;
}

.item-in-grid-div {
  display: block;
  float: left;
  text-align: center;
  overflow: hidden;
}

.item-in-grid-div.top .item-in-grid-div-inner {
  padding: 5px 5px 0;
}

.item-in-grid-div.middle .item-in-grid-div-inner {
  padding: 0 5px;
}

.item-in-grid-div.bottom .item-in-grid-div-inner {
  padding: 0 5px 5px;
}

.item-in-grid-div .details {
  line-height: 1.2em;
}


.featlist .grid-row {
  display: block;
  overflow: hidden;
}

.featlist.grid-3 .item-in-grid-div {
  width: 33%;
  max-width: 33%;
}

.featlist.grid-2 .item-in-grid-div {
  width: 49.9%;
}

.featlist.grid-1 .item-in-grid-div {
  width: 100%;
}

.item-in-grid-div a.imga {
  display: block;
  overflow: hidden;
  line-height: 0;
}

.item-in-grid-div .img {
  display: block;
  overflow: hidden;
  text-align: center;
  margin-bottom: 5px;
}

.item-in-grid-div img {
  max-width: 100%;
  max-height: 120px;
  width: auto;
  height: auto;
}

/* -----------------------------------------------------------------------------
   Image Lists
--------------------------------------------------------------------------------*/
table.images tr {
  width: 100%;
  display: block;
  margin-bottom: 10px;
}

table.images tr.sortable-box {
  background: #e5f0ff;
  border: 1px solid #c4ddff;
}

table.images td a {
  float: left;
  margin-right: 15px;
}

table.images img {
  height: 80px;
}

table.images td {
  width: 100%;
}

.image-fields {
  overflow: hidden;
  float: right;
}

.sortable-box {
  cursor: move;
}

/* -----------------------------------------------------------------------------
   Pagination
--------------------------------------------------------------------------------*/
.pagination .current {
  padding: 0 1em;
}

/* -----------------------------------------------------------------------------
   Admin Section
--------------------------------------------------------------------------------*/
body table.data tr.stats-today {
  background: #d7ff91;
}

/* -----------------------------------------------------------------------------
   Fix list styling of text input with TinyMCE
--------------------------------------------------------------------------------*/
.input-text ul {
  list-style: disc outside none;
  padding-left: 25px;
  padding-bottom: 1em;
  overflow: hidden;
}

.input-text ol {
  list-style-type: decimal;
  padding-left: 25px;
  padding-bottom: 1em;
  overflow: hidden;
}

.input-text li {
  display: list-item;
}

/* -----------------------------------------------------------------------------
   Misc
--------------------------------------------------------------------------------*/

.span-right {
  float: right;
}

/* -----------------------------------------------------------------------------
   Blog / News
--------------------------------------------------------------------------------*/
.blog-entry-info {
  font-size: 80%;
  margin-bottom: 5px;
  color: #6c6c6c;
}

.blog-entry:hover .hover-block {
  display: block;
  z-index: 100;
}

.blog-entry .hover-block {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
}

.blog-entry a.hover-edit {
  display: block;
  float: right;
  position: static;
}

.blog-entry .main-images {
  overflow: hidden;
  width: 100%;
}

.blog-entry .main-image {
  width: 100%;
}

.blog-entry .main-image img {
  width: 100%;
}

.blog-entry.editable {
  min-height: 1em;
}

.blog-entry .main-images.inset {
  float: right;
  width: 50%;
  margin-left: 0.5em;
  margin-bottom: 0.5em;
}

@media all and (max-width: 600px) {
  .blog-entry .main-images.inset { width: 100%; }
}

/* -----------------------------------------------------------------------------
   Filtering
--------------------------------------------------------------------------------*/
.filters {
  border-top: 1px solid #ccc;
}

.filter {
  border-bottom: 1px solid #ccc;
  padding: 5px 0;
}

.filter-title {
  font-weight: bold;
  padding: 5px 0;
  cursor: pointer;
  text-indent: 14px;
  background-image: url('/static/images/site/expandable-arrow.png');
  background-size: 5px 10px;
  background-repeat: no-repeat;
  background-position: 0 7px;
}

.filter.open .filter-title {
  background-image: url('/static/images/site/expandable-arrow-down.png');
  background-size: 10px 5px;
  background-repeat: no-repeat;
  background-position: 0 10px;
}

.filter-title:hover {
  text-decoration: underline;
}

.filter-options {
  padding: 0 0 0 15px;
}

.filter-options label {
  display: none;
  padding-left: 21px;
  text-indent: -21px;
  padding-top: 2px;
  padding-bottom: 1px;
  margin-bottom: 2px;
  cursor: pointer;
  border: 1px solid #ffffff;
}

.filter-options label:hover {
  text-decoration: underline;
}

.filter-options label.checked {
  background: #e9ffc4;
  border: 1px solid #a2d64f;
}

.filter.open .filter-options label.featured,
.filter.open .filter-options label.checked,
.filter.closed .filter-options label.checked,
.filter.open.more .filter-options label,
.filter.open .filter-options .more {
  display: block;
}

.filter-option-text {
  padding-left: 5px;
}

.filter-options input {
  width: 15px;
  height: 15px;
  padding: 0;
  margin: 0 0 0 3px;
  vertical-align: bottom;
  position: relative;
  top: -1px;
  overflow: hidden;
}

.filter-options .more {
  display: none;
  margin-left: 23px;
}

.form-filter {
  float: left;
}

.filter-back {
  width: 100%;
}

/* -----------------------------------------------------------------------------
   Media Queries
   Resolutions at http://spirelightmedia.com/resources/responsive-design-device-resolution-reference
   Common Widths:
    240px
    320px
    480px
    600px
    768px
    900px
    1200px
    
   iPhone 4 - 320 x 480
   iPhone 5 - 320 x 568
   Samsung Galaxy S3 - 360 x 640
   iPad - 1024 x 768
--------------------------------------------------------------------------------*/
