@charset "UTF-8";
@font-face {
  font-family: 'Helvetica Neue';
  src: url("../fonts/HelveticaNeue-Regular.eot"), url("../fonts/HelveticaNeue-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/HelveticaNeue-Regular.woff") format("woff"), url("../fonts/HelveticaNeue-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Helvetica Neue';
  src: url("../fonts/HelveticaNeue-Bold.eot"), url("../fonts/HelveticaNeue-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/HelveticaNeue-Bold.woff") format("woff"), url("../fonts/HelveticaNeue-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal; }

@font-face {
  font-family: 'Helvetica Neue';
  src: url("../fonts/HelveticaNeue-Light.eot"), url("../fonts/HelveticaNeue-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/HelveticaNeue-Light.woff") format("woff"), url("../fonts/HelveticaNeue-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?lgxij3");
  src: url("../fonts/icomoon.eot?lgxij3#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?lgxij3") format("truetype"), url("../fonts/icomoon.woff?lgxij3") format("woff"), url("../fonts/icomoon.svg?lgxij3#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Colours */
/* Backgrounds */
/* Text */
/* Borders */
/* Breakpoints */
/* Containers */
/* Gutters */
/* Transitions */
/* Widths */
/* Containers */
/* Columns */
/* Resets */
/* Text */
/* Buttons */
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle; }

.select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none; }

.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.select2-container .select2-selection--single .select2-selection__clear {
  position: relative; }

.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px; }

.select2-container .select2-selection--multiple {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none; }

.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline-block;
  overflow: hidden;
  padding-left: 8px;
  text-overflow: ellipsis;
  white-space: nowrap; }

.select2-container .select2-search--inline {
  float: left; }

.select2-container .select2-search--inline .select2-search__field {
  box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  padding: 0; }

.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none; }

.select2-dropdown {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051; }

.select2-results {
  display: block; }

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0; }

.select2-results__option {
  padding: 6px;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none; }

.select2-results__option[aria-selected] {
  cursor: pointer; }

.select2-container--open .select2-dropdown {
  left: 0; }

.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-search--dropdown {
  display: block;
  padding: 4px; }

.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  box-sizing: border-box; }

.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none; }

.select2-search--dropdown.select2-search--hide {
  display: none; }

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
  filter: alpha(opacity=0); }

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important; }

.select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px; }

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px; }

.select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold; }

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px; }

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto; }

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default; }

.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none; }

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px; }

.select2-container--default .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text; }

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0 5px;
  width: 100%; }

.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
  list-style: none; }

.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
  color: #999;
  margin-top: 5px;
  float: left; }

.select2-container--default .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  margin-top: 5px;
  margin-right: 10px; }

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px; }

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: #999;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 2px; }

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #333; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
  float: right; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto; }

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0; }

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default; }

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none; }

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa; }

.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield; }

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--default .select2-results__option[role=group] {
  padding: 0; }

.select2-container--default .select2-results__option[aria-disabled=true] {
  color: #999; }

.select2-container--default .select2-results__option[aria-selected=true] {
  background-color: #ddd; }

.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em; }

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #5897fb;
  color: white; }

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

.select2-container--classic .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid #aaa;
  border-radius: 4px;
  outline: 0;
  background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }

.select2-container--classic .select2-selection--single:focus {
  border: 1px solid #5897fb; }

.select2-container--classic .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px; }

.select2-container--classic .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  margin-right: 10px; }

.select2-container--classic .select2-selection--single .select2-selection__placeholder {
  color: #999; }

.select2-container--classic .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid #aaa;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); }

.select2-container--classic .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0; }

.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  left: 1px;
  right: auto; }

.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb; }

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none; }

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px; }

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); }

.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  outline: 0; }

.select2-container--classic .select2-selection--multiple:focus {
  border: 1px solid #5897fb; }

.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
  list-style: none;
  margin: 0;
  padding: 0 5px; }

.select2-container--classic .select2-selection--multiple .select2-selection__clear {
  display: none; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
  color: #888;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 2px; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  float: right; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto; }

.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb; }

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0; }

.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none; }

.select2-container--classic .select2-dropdown {
  background-color: white;
  border: 1px solid transparent; }

.select2-container--classic .select2-dropdown--above {
  border-bottom: none; }

.select2-container--classic .select2-dropdown--below {
  border-top: none; }

.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--classic .select2-results__option[role=group] {
  padding: 0; }

.select2-container--classic .select2-results__option[aria-disabled=true] {
  color: grey; }

.select2-container--classic .select2-results__option--highlighted[aria-selected] {
  background-color: #3875d7;
  color: white; }

.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #5897fb; }

*, *:before, *:after {
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-family: 'Helvetica Neue', arial, serif;
  font-size: 17px;
  line-height: 1.58;
  color: #3b3b3b;
  background: #ffffff;
  overflow-x: hidden; }
  @media only screen and (max-width: 2000px) {
    html {
      font-size: 15px; } }
  @media only screen and (max-width: 1500px) {
    html {
      font-size: 13px; } }

body {
  overflow-x: hidden; }
  body > header,
  body > main,
  body > footer {
    transform: translateX(0);
    transition: all 0.2s;
    position: relative; }
    .mobile-menu-open body > header, .mobile-menu-open
    body > main, .mobile-menu-open
    body > footer {
      transform: translateX(-290px); }

/* Text */
h1 {
  font-size: 2.64706em;
  font-weight: 300;
  line-height: 1.2; }

h2 {
  font-size: 2.64706em;
  font-weight: 300;
  line-height: 1.2; }
  @media only screen and (max-width: 1200px) {
    h2 {
      font-size: 28px; } }

h3 {
  font-weight: 300;
  line-height: 1.2; }

/* Images */
img {
  max-width: 100%;
  height: auto; }

/* Forms */
input,
label,
select,
button,
textarea {
  outline: 0;
  font-size: 100%; }

input,
select,
textarea {
  margin: 0;
  background-color: white;
  border: none;
  border-radius: 5px;
  padding: 0 1em;
  width: 100%;
  max-width: 100%;
  display: block; }

textarea {
  padding-top: 1em;
  padding-bottom: 1em;
  max-width: 100%;
  resize: vertical; }

input,
select {
  height: 3.23529em;
  line-height: 3.23529em; }

input[type=radio],
input[type=checkbox],
input[type=submit] {
  -webkit-appearance: auto;
  -moz-appearance: auto;
  -o-appearance: auto;
  appearance: auto;
  height: auto;
  line-height: inherit;
  width: auto; }

.radio input[type="radio"] {
  position: absolute;
  visibility: hidden; }
  .radio input[type="radio"] + span {
    position: relative;
    display: inline-block;
    width: 1.76471rem;
    height: 1.76471rem;
    border: 1px solid #bebebe;
    border-radius: 50%;
    margin-right: 0.58824rem;
    top: 0.47059rem; }
  .radio input[type="radio"]:checked + span {
    border-color: #1b95f7;
    background: #1b95f7; }
    .radio input[type="radio"]:checked + span:before {
      position: absolute;
      display: inline-block;
      content: '';
      width: 0.70588rem;
      height: 0.70588rem;
      background: white;
      border-radius: 50%;
      top: 0.47059rem;
      left: 0.47059rem;
      box-shadow: 0 2px 5px rgba(136, 136, 136, 0.8); }

input[type=submit] {
  border: none;
  background: none;
  outline: 0;
  cursor: pointer;
  border-radius: 0;
  padding: 0;
  display: inline-block;
  font-size: 0.70588rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  border-width: 1px;
  border-style: solid;
  border-radius: 9999em;
  height: 2.35294rem;
  line-height: 2.35294rem;
  padding: 0 1.17647rem;
  white-space: nowrap;
  text-decoration: none;
  background-color: #ffffff;
  border-color: #d0ddf7;
  color: #2d5ee2;
  min-width: 7.11765rem;
  transition: all 0.2s; }
  input[type=submit]:hover {
    background-color: #2d5ee2;
    color: #ffffff; }

fieldset {
  border: none;
  margin: 0;
  padding: 0;
  margin-left: -15px;
  margin-right: -15px;
  margin-top: 2.35294rem;
  margin-bottom: 2.35294rem; }
  @media only screen and (max-width: 700px) {
    fieldset {
      margin-left: 0;
      margin-right: 0; } }

label {
  position: relative;
  display: block;
  border: 1px solid #d4d4d4;
  border-radius: 5px;
  margin: 0 15px 2rem 15px;
  float: left;
  clear: left;
  width: calc( 100% - 30px); }
  label.error {
    position: absolute;
    color: #ed6e58;
    font-size: .765em;
    font-weight: normal;
    margin: 0; }
  label textarea,
  label select,
  label input {
    width: 100%; }
    label textarea.error,
    label select.error,
    label input.error {
      box-shadow: inset 4px 0 0 #ed6e58; }
  label.width-half {
    width: calc( 50% - 30px);
    clear: none; }
  label.checkbox {
    border: none; }
    label.checkbox input {
      position: absolute;
      visibility: hidden; }
    label.checkbox span:before {
      content: ' ';
      display: inline-block;
      border: 1px solid #d4d4d4;
      width: 26px;
      height: 26px;
      border-radius: 6px;
      text-align: center;
      margin-right: 0.58824rem; }
    label.checkbox input:checked ~ span:before {
      content: '×'; }
  label.select {
    border: none; }
  label.slidey-placeholder input {
    padding-top: 0.82353rem; }
  label.slidey-placeholder textarea {
    min-height: 50px;
    padding-top: 20px; }
  label.slidey-placeholder :required + .label:after {
    content: ' *';
    color: red; }
  label.slidey-placeholder .label {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 0.41176rem 1rem;
    text-align: left;
    pointer-events: none;
    transition: all .15s;
    opacity: .6; }
    label.slidey-placeholder .label:before {
      content: '';
      display: inline-block;
      height: 100%;
      vertical-align: middle; }
  label.slidey-placeholder.textarea.retract-placeholder .label {
    padding-top: 0.41176rem; }
  label.slidey-placeholder.textarea .label {
    padding-top: 0.82353rem; }
    label.slidey-placeholder.textarea .label:before {
      content: none; }
  label.slidey-placeholder.retract-placeholder .label {
    font-size: 10px !important;
    bottom: 50%;
    opacity: 1; }
  @media only screen and (max-width: 700px) {
    label {
      margin: 0 0 20px 0;
      width: 100%; }
      label.width-half {
        width: 100%; } }

.select2-container--default .select2-selection {
  height: 3.23529rem;
  outline: 0;
  border: 1px solid #d4d4d4;
  border-radius: 5px;
  position: relative;
  overflow: hidden; }
  .select2-container--default .select2-selection:after {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 3.23529rem;
    line-height: 3.23529rem;
    background: #f1f1f1;
    pointer-events: none;
    text-align: center;
    cursor: pointer; }
  .select2-container--default .select2-selection .select2-selection__arrow {
    display: none; }
  .select2-container--default .select2-selection.select2-selection--multiple {
    border: 1px solid #d4d4d4; }
    .select2-container--default .select2-selection.select2-selection--multiple:after {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      line-height: 3.23529rem;
      color: #676767; }
    .select2-container--default .select2-selection.select2-selection--multiple > ul {
      height: 3.23529rem;
      padding-left: 1em;
      text-align: left; }
    .select2-container--default .select2-selection.select2-selection--multiple .select2-search--inline input.select2-search__field {
      height: 2.52941rem;
      line-height: 2.52941rem; }
    .select2-container--default .select2-selection.select2-selection--multiple .select2-selection__choice {
      position: relative;
      margin-top: 0.52941rem;
      color: #2d5ee2;
      border-color: #2d5ee2;
      background: white;
      border-radius: 20px;
      padding: 0.23529rem 1.47059rem 0.23529rem 0.76471rem; }
      .select2-container--default .select2-selection.select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
        position: absolute;
        right: 5px;
        color: #2d5ee2; }
  .select2-container--default .select2-selection.select2-selection--single .select2-selection__rendered {
    line-height: 3.23529rem;
    padding-left: 1em;
    text-align: left; }

.select2-dropdown .select2-results .select2-results__option {
  padding-left: 1em; }

.select2-container {
  z-index: 10; }

.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple,
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.wpcf7-form .wpcf7-form-control-wrap {
  position: static;
  display: block; }

.wpcf7-form textarea {
  width: 100% !important;
  resize: none; }

.wpcf7-form label {
  width: 100%;
  margin: 0 0 2rem 0; }

.wpcf7-form .wpcf7-response-output {
  margin: 2rem 0 0 0;
  padding: 1.17647rem 1.76471rem;
  border-radius: 1.17647rem;
  border: none !important;
  background-color: #1bd3b3;
  color: white;
  font-weight: bold;
  clear: both; }

.wpcf7-form span.wpcf7-not-valid-tip {
  display: none; }

.wpcf7-form .wpcf7-not-valid {
  background-color: #fde6e6; }

@media only screen and (max-width: 700px) {
  .wpcf7-form label {
    margin: 0 0 20px 0; }
  .wpcf7-form .wpcf7-response-output {
    margin: 20px 0 0 0; } }

body > footer .social-icons, .page--contact section.contact-details .social-icons {
  list-style: none;
  margin: 0;
  padding: 0; }
  body > footer .social-icons li, .page--contact section.contact-details .social-icons li {
    float: left;
    margin-left: 1em; }
    body > footer .social-icons li:first-child, .page--contact section.contact-details .social-icons li:first-child {
      margin-left: 0; }
    body > footer .social-icons li.facebook a:before, .page--contact section.contact-details .social-icons li.facebook a:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
    body > footer .social-icons li.instagram a:before, .page--contact section.contact-details .social-icons li.instagram a:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
  body > footer .social-icons a, .page--contact section.contact-details .social-icons a {
    display: block;
    line-height: 1;
    color: #ffffff;
    text-decoration: none; }
    body > footer .social-icons a:before, .page--contact section.contact-details .social-icons a:before {
      font-size: 1.76471rem; }
    body > footer .social-icons a:hover, .page--contact section.contact-details .social-icons a:hover {
      color: #2de2c3; }

.single-product main .notice {
  background-color: #1bd3b3;
  color: #ffffff;
  text-align: center;
  padding: 1.47059rem 2.35294rem;
  margin-bottom: 3.52941rem;
  font-size: 1.11765rem;
  font-weight: bold;
  border-radius: 999em;
  line-height: 1.2; }
  @media only screen and (max-width: 900px) {
    .single-product main .notice {
      font-size: 0.94118rem;
      margin-bottom: 2.35294rem;
      padding: 0.88235em 1.76471em; } }

@-webkit-keyframes throb {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(0.6); } }

@keyframes throb {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(0.6); } }

@-webkit-keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

body {
  padding-top: 13.76471rem; }
  body > header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: white;
    color: #1e3c8b;
    z-index: 15;
    -webkit-backface-visibility: hidden; }
    .sticky-header body > header {
      position: fixed;
      width: 100%; }
      @media only screen and (min-width: 950px) {
        .sticky-header body > header {
          -webkit-animation: slideDown 0.2s both;
          animation: slideDown 0.2s both; } }
      .sticky-header body > header .navigation > div {
        padding-top: 1.35294rem; }
      .sticky-header body > header .navigation nav > ul > li > a {
        padding-top: 1.17647rem;
        padding-bottom: 2.52941rem;
        height: 5.11765rem; }
      .sticky-header body > header .navigation .logo img {
        height: 3.52941rem; }
    @media only screen and (min-width: 950px) {
      .sticky-header-out body > header {
        -webkit-animation-name: slideUp;
        animation-name: slideUp; } }
    body > header .top-bar {
      margin: 0 auto;
      overflow: hidden;
      padding-left: 80px;
      padding-right: 80px;
      *zoom: 1;
      clear: both;
      font-size: 0.88235em;
      height: 3.52941rem;
      padding-top: 1.29412rem;
      padding-bottom: 1.35294rem;
      position: relative;
      max-width: 100%;
      color: #ffffff;
      background: #1e3c8b;
      z-index: 20; }
      @media only screen and (max-width: 1500px) {
        body > header .top-bar {
          padding-left: 60px;
          padding-right: 60px; } }
      @media only screen and (max-width: 1200px) {
        body > header .top-bar {
          padding-left: 40px;
          padding-right: 40px; } }
      @media only screen and (max-width: 700px) {
        body > header .top-bar {
          padding-left: 20px;
          padding-right: 20px; } }
      body > header .top-bar:before, body > header .top-bar:after {
        content: " ";
        display: table; }
      body > header .top-bar:after {
        clear: both; }
      body > header .top-bar .user-type {
        float: left; }
        body > header .top-bar .user-type span {
          display: inline-block;
          color: #2de2c3;
          font-weight: bold;
          margin-left: 0.3em; }
          body > header .top-bar .user-type span:after {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: "";
            font-size: 0.8em;
            margin-left: 0.5em; }
      body > header .top-bar .login-cart {
        float: right;
        font-size: 0.70588rem; }
        body > header .top-bar .login-cart > span,
        body > header .top-bar .login-cart a {
          text-transform: uppercase;
          font-weight: bold;
          margin-left: 2.11765rem;
          letter-spacing: 0.15em;
          color: white; }
          @media only screen and (max-width: 440px) {
            body > header .top-bar .login-cart > span,
            body > header .top-bar .login-cart a {
              margin-left: 0.88235rem; } }
          @media only screen and (max-width: 365px) {
            body > header .top-bar .login-cart > span,
            body > header .top-bar .login-cart a {
              font-size: 8px;
              margin-left: 7px; } }
          body > header .top-bar .login-cart > span:before,
          body > header .top-bar .login-cart a:before {
            font-size: 1.4em;
            margin-right: 0.7em; }
          body > header .top-bar .login-cart > span.login:before,
          body > header .top-bar .login-cart a.login:before {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: ""; }
          body > header .top-bar .login-cart > span.cart:before,
          body > header .top-bar .login-cart a.cart:before {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: ""; }
          body > header .top-bar .login-cart > span.digital-books:before,
          body > header .top-bar .login-cart a.digital-books:before {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: ""; }
        body > header .top-bar .login-cart a:hover {
          color: #2de2c3; }
      body > header .top-bar button {
        border: none;
        background: none;
        outline: 0;
        cursor: pointer;
        border-radius: 0;
        padding: 0;
        color: #ffffff; }
      body > header .top-bar i {
        font-style: normal; }
    body > header .navigation {
      margin: 0 auto;
      overflow: hidden;
      padding-left: 80px;
      padding-right: 80px;
      overflow: visible;
      max-width: 100%; }
      @media only screen and (max-width: 1500px) {
        body > header .navigation {
          padding-left: 60px;
          padding-right: 60px; } }
      @media only screen and (max-width: 1200px) {
        body > header .navigation {
          padding-left: 40px;
          padding-right: 40px; } }
      @media only screen and (max-width: 700px) {
        body > header .navigation {
          padding-left: 20px;
          padding-right: 20px; } }
      body > header .navigation > div {
        *zoom: 1;
        clear: both;
        padding-top: 2.52941rem;
        border-bottom: 1px solid #d0ddf7; }
        body > header .navigation > div:before, body > header .navigation > div:after {
          content: " ";
          display: table; }
        body > header .navigation > div:after {
          clear: both; }
      body > header .navigation .logo {
        float: left;
        display: block; }
        body > header .navigation .logo img {
          display: block;
          width: auto;
          height: 5.05882rem; }
      body > header .navigation nav {
        float: right;
        font-size: 1.29412rem;
        font-weight: bold;
        line-height: 1; }
        body > header .navigation nav > ul {
          *zoom: 1;
          clear: both;
          margin-right: -2.94118rem; }
          body > header .navigation nav > ul:before, body > header .navigation nav > ul:after {
            content: " ";
            display: table; }
          body > header .navigation nav > ul:after {
            clear: both; }
          body > header .navigation nav > ul > li {
            float: left;
            position: relative; }
            body > header .navigation nav > ul > li > a {
              display: block;
              padding: 1.88235rem 2.94118rem 4.47059rem 2.94118rem;
              position: relative;
              height: 7.70588rem; }
              body > header .navigation nav > ul > li > a:hover:before {
                content: ''; }
            body > header .navigation nav > ul > li.menu-item-has-children > a:before {
              /* use !important to prevent issues with browser extensions that change fonts */
              font-family: 'icomoon' !important;
              font-style: normal;
              font-weight: normal;
              font-feature-settings: normal;
              font-variant: normal;
              text-transform: none;
              line-height: 1;
              speak: none;
              /* Better Font Rendering =========== */
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale;
              /* include the requested glyph */
              content: "";
              margin-right: 0.5em; }
            body > header .navigation nav > ul > li:last-child > a {
              padding-right: 0; }
            body > header .navigation nav > ul > li:last-child:hover > a:after {
              right: 0; }
            body > header .navigation nav > ul > li:hover > a:after {
              content: '';
              background-color: #1bd3b3;
              display: block;
              height: 0.76471rem;
              position: absolute;
              bottom: 0;
              left: 2.94118rem;
              right: 2.94118rem; }
            body > header .navigation nav > ul > li:hover > ul {
              visibility: visible;
              opacity: 1; }
            body > header .navigation nav > ul > li > ul {
              visibility: hidden;
              opacity: 0;
              width: 54.11765rem;
              position: absolute;
              top: 100%;
              left: 50%;
              background-color: #2d5ee2;
              padding: 2.05882rem;
              font-size: 25px;
              font-weight: 300;
              transition: opacity 0.2s;
              transform: translateX(-50%); }
              body > header .navigation nav > ul > li > ul > li {
                padding-left: 10rem;
                padding-top: 2.05882rem;
                padding-bottom: 2.05882rem;
                border-top: 1px solid #d0ddf7;
                *zoom: 1;
                clear: both; }
                body > header .navigation nav > ul > li > ul > li:before, body > header .navigation nav > ul > li > ul > li:after {
                  content: " ";
                  display: table; }
                body > header .navigation nav > ul > li > ul > li:after {
                  clear: both; }
                body > header .navigation nav > ul > li > ul > li:first-child {
                  padding-top: 0;
                  border-top: none; }
                body > header .navigation nav > ul > li > ul > li:last-child {
                  padding-bottom: 0; }
                body > header .navigation nav > ul > li > ul > li > a {
                  float: left;
                  margin-left: -10rem; }
                body > header .navigation nav > ul > li > ul > li > ul {
                  float: right;
                  width: 100%;
                  font-size: 15px;
                  font-weight: bold; }
                  body > header .navigation nav > ul > li > ul > li > ul > li {
                    display: inline-block;
                    vertical-align: top;
                    width: 25%;
                    padding-right: 1.17647rem;
                    margin-bottom: 1.17647rem; }
                    body > header .navigation nav > ul > li > ul > li > ul > li:first-child {
                      display: none; }
                    .is-student body > header .navigation nav > ul > li > ul > li > ul > li.is-teacher {
                      display: none; }
              body > header .navigation nav > ul > li > ul a {
                color: #ffffff;
                transition: color 0.2s; }
                body > header .navigation nav > ul > li > ul a:hover {
                  color: #2de2c3; }
        body > header .navigation nav ul {
          list-style: none;
          margin: 0;
          padding: 0; }
      body > header .navigation .mobile-buttons {
        display: none;
        float: right;
        font-size: 18px;
        padding: 8px 0; }
        body > header .navigation .mobile-buttons button {
          border: none;
          background: none;
          outline: 0;
          cursor: pointer;
          border-radius: 0;
          padding: 0;
          font-weight: bold;
          color: #2d5ee2;
          margin-left: 20px; }
          body > header .navigation .mobile-buttons button:after {
            display: inline-block;
            vertical-align: middle;
            margin-left: 3px; }
          body > header .navigation .mobile-buttons button.search:after {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: "";
            font-size: 1.1em; }
          body > header .navigation .mobile-buttons button.menu:after {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: "";
            font-size: 1.3em; }
        body > header .navigation .mobile-buttons span {
          display: inline-block;
          vertical-align: middle; }
    body > header a {
      color: #1e3c8b;
      text-decoration: none; }
  @media only screen and (max-width: 1200px) {
    body {
      padding-top: 134px; }
      .sticky-header body > header .navigation {
        height: 76px; }
        .sticky-header body > header .navigation > div {
          padding-top: 0; }
        .sticky-header body > header .navigation nav > ul > li > a {
          padding-top: 30px;
          padding-bottom: 30px;
          height: auto; }
        .sticky-header body > header .navigation .logo {
          margin-top: 15px; }
          .sticky-header body > header .navigation .logo img {
            height: 45px; }
      body > header .top-bar {
        height: 38px;
        padding-top: 13px;
        padding-bottom: 13px; }
      body > header .navigation {
        height: 96px; }
        body > header .navigation > div {
          padding-top: 0; }
        body > header .navigation .logo {
          margin-top: 18px; }
          body > header .navigation .logo img {
            height: 57px; }
        body > header .navigation nav {
          font-size: 15px; }
          body > header .navigation nav > ul > li > a {
            padding: 40px 30px;
            height: auto; }
          body > header .navigation nav > ul > li:hover > a:after {
            left: 30px;
            right: 30px; }
          body > header .navigation nav > ul > li > ul {
            font-size: 20px; }
            body > header .navigation nav > ul > li > ul > li > ul {
              font-size: 12px; } }
  @media only screen and (max-width: 950px) {
    body {
      padding-top: 116px; }
      body > header {
        position: fixed; }
        .sticky-header body > header .navigation {
          height: 68px; }
          .sticky-header body > header .navigation > div {
            padding-top: 14px;
            padding-bottom: 16px; }
          .sticky-header body > header .navigation .logo {
            margin-top: 0; }
            .sticky-header body > header .navigation .logo img {
              height: 37px; }
          .sticky-header body > header .navigation .mobile-buttons {
            font-size: 15px;
            padding: 7px 0; }
        body > header .top-bar {
          height: 32px;
          padding-top: 10px;
          padding-bottom: 10px; }
        body > header .navigation {
          height: 84px; }
          body > header .navigation > div {
            padding-top: 18px;
            padding-bottom: 20px; }
          body > header .navigation .logo {
            margin-top: 0; }
            body > header .navigation .logo img {
              height: 45px; }
          body > header .navigation nav {
            display: none; }
          body > header .navigation .mobile-buttons {
            display: inline-block; } }
  @media only screen and (max-width: 730px) {
    body > header .top-bar i {
      display: none; } }
  @media only screen and (max-width: 700px) {
    body {
      padding-top: 100px; }
      body > header {
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); }
        body > header .top-bar .login-cart a:before {
          margin-right: 0.2em; }
        body > header .top-bar i {
          display: none; }
        body > header .navigation {
          height: 68px;
          padding-left: 10px;
          padding-right: 10px; }
          body > header .navigation > div {
            padding-top: 14px;
            padding-bottom: 16px;
            border-bottom: none; }
          body > header .navigation .logo img {
            height: 37px; }
          body > header .navigation .mobile-buttons {
            font-size: 15px;
            padding: 7px 0; } }

@-webkit-keyframes slideDown {
  0% {
    transform: translateY(-100%); }
  100% {
    transform: translateY(0); } }

@keyframes slideDown {
  0% {
    transform: translateY(-100%); }
  100% {
    transform: translateY(0); } }

@-webkit-keyframes slideUp {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(-100%); } }

@keyframes slideUp {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(-100%); } }

section.follow-us {
  margin: 0 auto;
  overflow: hidden;
  padding-left: 80px;
  padding-right: 80px;
  background-color: #EEF1F7;
  color: #1e3c8b;
  background-image: url("../images/girl-texting-on-phone.png");
  background-repeat: no-repeat;
  background-position: bottom -90px right calc( 50% + 200px); }
  @media only screen and (max-width: 1500px) {
    section.follow-us {
      padding-left: 60px;
      padding-right: 60px; } }
  @media only screen and (max-width: 1200px) {
    section.follow-us {
      padding-left: 40px;
      padding-right: 40px; } }
  @media only screen and (max-width: 700px) {
    section.follow-us {
      padding-left: 20px;
      padding-right: 20px; } }
  section.follow-us > div {
    padding-top: 80px;
    padding-bottom: 80px;
    padding-left: calc( 50% + 50px); }
  section.follow-us h3 {
    margin-top: 0;
    font-weight: normal;
    font-size: 1.765em; }
  section.follow-us a {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    background-color: #1e3c8b;
    border-color: #1e3c8b;
    color: white; }
    section.follow-us a:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    section.follow-us a:hover {
      border-color: #2d5ee2; }
  @media only screen and (max-width: 1200px) {
    section.follow-us {
      background-position: bottom -90px right calc( 50% + 150px);
      background-size: 250px auto; }
      section.follow-us > div {
        padding-left: 50%;
        padding-top: 50px;
        padding-bottom: 50px; } }

body > footer {
  color: #ffffff;
  background: #1e3c8b;
  font-size: 0.88235rem;
  z-index: 5; }
  body > footer .container {
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden;
    padding-left: 80px;
    padding-right: 80px;
    *zoom: 1;
    clear: both;
    padding-top: 4.94118rem;
    padding-bottom: 5.88235rem; }
    @media only screen and (max-width: 2000px) {
      body > footer .container {
        max-width: 1620px; } }
    @media only screen and (max-width: 1500px) {
      body > footer .container {
        padding-left: 60px;
        padding-right: 60px; } }
    @media only screen and (max-width: 1200px) {
      body > footer .container {
        padding-left: 40px;
        padding-right: 40px; } }
    @media only screen and (max-width: 700px) {
      body > footer .container {
        padding-left: 20px;
        padding-right: 20px; } }
    body > footer .container:before, body > footer .container:after {
      content: " ";
      display: table; }
    body > footer .container:after {
      clear: both; }
    body > footer .container > div {
      position: relative; }
      body > footer .container > div > div {
        float: right; }
        body > footer .container > div > div > * {
          float: left; }
  body > footer .footer-information > div {
    float: left;
    clear: left; }
  body > footer .logo {
    display: block;
    width: 11.76471rem;
    margin-bottom: 2.35294rem;
    position: absolute;
    top: 0;
    left: 0; }
  body > footer .notice {
    margin-top: 0;
    font-weight: bold; }
  body > footer .logo-notice,
  body > footer .contact-information,
  body > footer .footer-navigation,
  body > footer .social-icons {
    float: left;
    max-width: 14.11765rem; }
  body > footer .footer-navigation,
  body > footer .social-icons {
    margin-left: 5.29412rem; }
  body > footer .footer-navigation {
    margin-bottom: 1.17647rem; }
    body > footer .footer-navigation li {
      margin-bottom: 0.4em; }
  body > footer .contact-information {
    max-width: 15rem; }
    body > footer .contact-information > *:first-child {
      margin-top: 0; }
    body > footer .contact-information a {
      word-break: break-word; }
  body > footer .menu-social.mobile {
    display: none; }
  body > footer .social-icons {
    margin-top: 0.5em; }
  body > footer .subscribe {
    max-width: 20.70588rem;
    width: 20.70588rem;
    margin-right: 0;
    margin-left: 5.29412rem;
    float: left; }
    body > footer .subscribe > *:first-child {
      margin-top: 0; }
    body > footer .subscribe p {
      font-weight: bold;
      margin: 0 0 1.29412rem 0; }
    body > footer .subscribe label {
      display: block;
      margin: 0.88235rem 0;
      border-color: #1f51ad;
      float: none; }
      body > footer .subscribe label .label {
        color: #b7c3d9; }
    body > footer .subscribe input {
      height: 3.05882rem;
      line-height: 3.05882rem;
      color: #b7c3d9;
      background-color: #0e3780; }
    body > footer .subscribe button {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s;
      background-color: #1e3c8b;
      border-color: #ffffff;
      color: #ffffff;
      margin-top: 0.5em; }
      body > footer .subscribe button:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
      body > footer .subscribe button:hover {
        background-color: #ffffff;
        color: #1e3c8b; }
    body > footer .subscribe .grecaptcha-badge {
      z-index: 10; }
  body > footer ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  body > footer a {
    color: #2de2c3;
    text-decoration: none;
    transition: color 0.2s; }
    body > footer a[href^=tel] {
      color: #ffffff; }
    body > footer a:hover {
      color: #ffffff; }
  body > footer .site-credit {
    display: block;
    position: relative;
    background-color: #0e3780;
    padding: 1.05882rem;
    text-align: center; }
  @media only screen and (max-width: 1150px) {
    body > footer .social-icons {
      clear: left; } }
  @media only screen and (max-width: 1020px) {
    body > footer .container > div > div {
      display: flex;
      float: none;
      width: 100%;
      justify-content: space-between; }
    body > footer .logo {
      position: relative;
      width: 10rem; }
    body > footer .footer-navigation,
    body > footer .social-icons,
    body > footer .subscribe {
      margin-left: 0; } }
  @media only screen and (max-width: 760px) {
    body > footer .container > div > div {
      display: block; }
    body > footer .footer-information {
      width: 100%; }
      body > footer .footer-information .contact-information {
        width: 50%; }
      body > footer .footer-information .menu-social {
        float: right;
        clear: none; }
    body > footer .logo-notice,
    body > footer .contact-information,
    body > footer .footer-navigation,
    body > footer .social-icons {
      max-width: 100%; }
    body > footer .logo-notice {
      float: none;
      width: 100%;
      margin-bottom: 1.17647rem; }
    body > footer .logo {
      width: 110px; }
    body > footer .notice {
      width: 50%;
      max-width: 200px; }
    body > footer .contact-information {
      margin-bottom: 2.05882rem; }
    body > footer .menu-social {
      width: 50%;
      margin-bottom: 2.05882rem; }
      body > footer .menu-social.mobile {
        display: block; }
      body > footer .menu-social.desktop {
        display: none; }
    body > footer .subscribe {
      width: 100%; } }
  @media only screen and (max-width: 600px) {
    body > footer .menu-social {
      width: 40%; }
    body > footer .subscribe {
      max-width: 100%; } }

body > .mobile-navigation {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 0;
  width: 290px;
  background: #222222;
  color: white;
  overflow-y: auto;
  overflow-x: hidden;
  visibility: visible; }
  body > .mobile-navigation h4 {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    font-size: 15px;
    margin: 28px 23px 10px 23px;
    padding-bottom: 15px;
    border-bottom: 1px solid #444444; }
  body > .mobile-navigation.showing-submenu > ul {
    transform: translateX(-100%); }
  body > .mobile-navigation.hidden {
    visibility: hidden; }
  body > .mobile-navigation > ul {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    padding-bottom: 50px; }
    body > .mobile-navigation > ul > li.item--year-11, body > .mobile-navigation > ul > li.item--year-12,
    body > .mobile-navigation > ul > li.item--browse-subjects > a {
      display: none; }
    body > .mobile-navigation > ul > li > ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      body > .mobile-navigation > ul > li > ul > li.menu-item-has-children > a:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: "";
        position: absolute;
        right: 23px;
        top: 50%;
        transform: translateY(-50%); }
      body > .mobile-navigation > ul > li > ul > li.showing-submenu > ul {
        display: block; }
      body > .mobile-navigation > ul > li > ul > li.back {
        display: none; }
      body > .mobile-navigation > ul > li > ul > li > ul {
        list-style: none;
        margin: 0;
        padding: 0;
        position: absolute;
        top: 0;
        display: none;
        font-size: 14px;
        font-weight: normal;
        padding-bottom: 50px;
        transform: translateX(100%); }
        body > .mobile-navigation > ul > li > ul > li > ul > li:first-child a {
          font-size: 16px;
          font-weight: bold;
          padding-top: 10px;
          padding-bottom: 10px; }
        body > .mobile-navigation > ul > li > ul > li > ul a {
          padding-top: 3px;
          padding-bottom: 3px; }
    body > .mobile-navigation > ul button {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      margin-top: 5px;
      padding: 10px 23px 10px 50px;
      font-size: 16px;
      font-weight: bold;
      color: white;
      width: 100%;
      display: block;
      position: relative;
      text-align: left; }
      body > .mobile-navigation > ul button:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: "";
        position: absolute;
        left: 23px;
        top: 50%;
        transform: translateY(-50%); }
    body > .mobile-navigation > ul a {
      padding: 10px 23px;
      display: block;
      position: relative; }
  body > .mobile-navigation ul {
    width: 100%;
    transition: all 0.3s; }
  body > .mobile-navigation a {
    color: white;
    text-decoration: none; }

body > .overlay {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  z-index: 100;
  left: 0;
  top: 0;
  bottom: 0;
  width: 100%; }
  .mobile-menu-open body > .overlay {
    visibility: visible;
    opacity: 1;
    transition: all 0.5s;
    transform: translateX(-290px); }

body > .ee-sidebar-popout {
  background-color: #071741;
  color: white;
  width: 675px;
  position: fixed;
  top: 0;
  right: -675px;
  bottom: 0;
  padding: 3.52941rem;
  overflow: auto;
  z-index: 100;
  transition: right 0.2s ease, box-shadow 0.2s ease; }
  @media only screen and (max-width: 1400px) {
    body > .ee-sidebar-popout {
      width: 500px;
      right: -500px; } }
  @media only screen and (max-width: 900px) {
    body > .ee-sidebar-popout {
      width: 400px;
      right: -400px; } }
  @media only screen and (max-width: 600px) {
    body > .ee-sidebar-popout {
      padding: 25px; } }
  @media only screen and (max-width: 430px) {
    body > .ee-sidebar-popout {
      max-width: calc(100% - 30px); } }
  body > .ee-sidebar-popout.is-active {
    right: 0;
    box-shadow: 0 0 0 10000px rgba(255, 255, 255, 0.5); }
  body > .ee-sidebar-popout.loading:before {
    content: '';
    display: block;
    border: 20px solid rgba(255, 255, 255, 0.95);
    border-bottom-color: transparent;
    border-radius: 50%;
    width: 6em;
    height: 6em;
    -webkit-animation: spin 1s linear infinite;
            animation: spin 1s linear infinite;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto; }
  body > .ee-sidebar-popout.loading > div {
    opacity: 0; }
  body > .ee-sidebar-popout > div {
    opacity: 1;
    transition: opacity 0.3s ease;
    padding-bottom: 60px; }
    @media only screen and (max-width: 450px) {
      body > .ee-sidebar-popout > div ul {
        padding-left: 12px; } }
  body > .ee-sidebar-popout h4 {
    font-size: 0.8em; }
  body > .ee-sidebar-popout h1 {
    margin: 0.6em 0;
    font-size: 2.647em;
    font-weight: 300; }
  body > .ee-sidebar-popout h2 {
    font-size: 1rem;
    font-weight: bold;
    margin: 0 0 3em 0; }
  body > .ee-sidebar-popout .description {
    font-size: 0.933em;
    line-height: 1.6;
    max-width: 400px; }
    body > .ee-sidebar-popout .description > * {
      margin: 1em 0; }
  body > .ee-sidebar-popout .download-pdf {
    margin-top: 2em; }
  body > .ee-sidebar-popout .close {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    position: fixed;
    top: 35px;
    right: 35px;
    color: white;
    text-decoration: none;
    display: none; }
    @media only screen and (max-width: 600px) {
      body > .ee-sidebar-popout .close {
        top: 15px;
        right: 15px; } }
    body > .ee-sidebar-popout .close:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      position: relative;
      z-index: 1; }
  body > .ee-sidebar-popout.is-active .close {
    display: block; }

body > main {
  background-color: #ffffff;
  overflow: hidden;
  z-index: 10; }
  body > main .breadcrumbs {
    margin: 0 auto;
    overflow: hidden;
    padding-left: 80px;
    padding-right: 80px;
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    max-width: 100%;
    padding-top: 0.88235rem;
    padding-bottom: 0.88235rem;
    font-weight: normal;
    font-size: 0.64706rem;
    line-height: 1.57;
    color: #1e3c8b; }
    @media only screen and (max-width: 1500px) {
      body > main .breadcrumbs {
        padding-left: 60px;
        padding-right: 60px; } }
    @media only screen and (max-width: 1200px) {
      body > main .breadcrumbs {
        padding-left: 40px;
        padding-right: 40px; } }
    @media only screen and (max-width: 700px) {
      body > main .breadcrumbs {
        padding-left: 20px;
        padding-right: 20px; } }
    body > main .breadcrumbs > span > span > * {
      vertical-align: middle;
      line-height: 1; }
    body > main .breadcrumbs a {
      color: #1e3c8b;
      text-decoration: none; }
  body > main > article > hgroup {
    margin: 0 auto;
    overflow: hidden;
    padding-left: 80px;
    padding-right: 80px; }
    @media only screen and (max-width: 1500px) {
      body > main > article > hgroup {
        padding-left: 60px;
        padding-right: 60px; } }
    @media only screen and (max-width: 1200px) {
      body > main > article > hgroup {
        padding-left: 40px;
        padding-right: 40px; } }
    @media only screen and (max-width: 700px) {
      body > main > article > hgroup {
        padding-left: 20px;
        padding-right: 20px; } }
    body > main > article > hgroup h1 {
      border-bottom: 1px solid #eff2f7;
      padding: 0.5em 0;
      margin: 0; }

.main-content-wrapper,
.page-content-wrapper {
  max-width: 1920px;
  margin: 0 auto;
  overflow: hidden;
  padding-left: 80px;
  padding-right: 80px;
  padding-bottom: 5.88235rem;
  overflow: visible; }
  @media only screen and (max-width: 2000px) {
    .main-content-wrapper,
    .page-content-wrapper {
      max-width: 1620px; } }
  @media only screen and (max-width: 1500px) {
    .main-content-wrapper,
    .page-content-wrapper {
      padding-left: 60px;
      padding-right: 60px; } }
  @media only screen and (max-width: 1200px) {
    .main-content-wrapper,
    .page-content-wrapper {
      padding-left: 40px;
      padding-right: 40px; } }
  @media only screen and (max-width: 700px) {
    .main-content-wrapper,
    .page-content-wrapper {
      padding-left: 20px;
      padding-right: 20px; } }

.page-content-wrapper {
  padding-top: 2.94118rem; }

.page-content {
  overflow: hidden;
  padding: 2.35294rem 2.52941rem;
  max-width: 58.82353rem;
  overflow: visible; }
  @media only screen and (max-width: 1250px) {
    .page-content {
      padding: 15px 25px; } }
  @media only screen and (max-width: 900px) {
    .page-content {
      padding: 15px 0; } }
  .page-content a {
    color: #2d5ee2;
    text-decoration: none; }

@media only screen and (max-width: 1000px) {
  .page-content-wrapper {
    padding-top: 1.47059rem; } }

@media only screen and (max-width: 700px) {
  .page-content-wrapper {
    padding-top: 0; } }

.home > body > main {
  max-width: 100%;
  padding: 0; }

section.search {
  margin: 0 auto;
  overflow: hidden;
  padding-left: 80px;
  padding-right: 80px;
  max-width: 63.52941rem;
  text-align: center;
  padding-top: 7.64706rem;
  padding-bottom: 7.64706rem; }
  @media only screen and (max-width: 1500px) {
    section.search {
      padding-left: 60px;
      padding-right: 60px; } }
  @media only screen and (max-width: 1200px) {
    section.search {
      padding-left: 40px;
      padding-right: 40px; } }
  @media only screen and (max-width: 700px) {
    section.search {
      padding-left: 20px;
      padding-right: 20px; } }
  section.search h2 {
    margin: 0; }
  section.search form {
    *zoom: 1;
    clear: both;
    padding-left: 12.05882rem;
    padding-right: 11.76471rem;
    margin-top: 2.11765rem; }
    section.search form:before, section.search form:after {
      content: " ";
      display: table; }
    section.search form:after {
      clear: both; }
  section.search label {
    border: none;
    border-radius: 0;
    margin: 0; }
  section.search .select {
    float: left;
    width: 10.88235rem;
    margin-left: -12.05882rem; }
  section.search .search {
    width: 100%;
    float: left;
    clear: none; }
  section.search select[name="subjects"] {
    visibility: hidden; }
  section.search button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    font-size: 1.29412rem;
    float: right;
    margin-right: -11.76471rem;
    width: 10.47059rem;
    height: 3.23529rem;
    line-height: 3.23529rem;
    text-transform: none;
    background-color: #2d5ee2;
    color: #ffffff;
    letter-spacing: 0;
    border: none; }
    section.search button:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    section.search button:after {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      margin-left: 0.7em; }
    section.search button:hover {
      background-color: #1e3c8b; }
  @media only screen and (max-width: 1200px) {
    section.search {
      padding-top: 80px;
      padding-bottom: 70px; } }
  @media only screen and (max-width: 1000px) {
    section.search form {
      margin-left: -8px;
      margin-right: -8px;
      padding-left: 0;
      padding-right: 0; }
    section.search label {
      padding-left: 8px;
      padding-right: 8px;
      margin-bottom: 10px; }
    section.search .select {
      width: 30%;
      margin-left: 0; }
    section.search .search {
      width: 70%; }
    section.search button {
      float: none;
      margin: 20px auto 0 auto; } }
  @media only screen and (max-width: 600px) {
    section.search form {
      margin-left: 0;
      margin-right: 0; }
    section.search label {
      padding-left: 0;
      padding-right: 0; }
    section.search .select,
    section.search .search {
      width: 100%; } }

section.banner {
  *zoom: 1;
  clear: both;
  background: #f0911e;
  padding-left: 39.70588rem;
  color: white;
  position: relative;
  max-width: 2320px;
  margin: auto; }
  section.banner:before, section.banner:after {
    content: " ";
    display: table; }
  section.banner:after {
    clear: both; }
  section.banner .content {
    margin: 0 auto;
    overflow: hidden;
    padding-left: 80px;
    padding-right: 80px;
    max-width: 39.70588rem;
    min-height: 41.17647rem;
    margin: 0;
    float: left;
    margin-left: -39.70588rem;
    padding-top: 9.41176rem;
    padding-bottom: 9.41176rem; }
    @media only screen and (max-width: 1500px) {
      section.banner .content {
        padding-left: 60px;
        padding-right: 60px; } }
    @media only screen and (max-width: 1200px) {
      section.banner .content {
        padding-left: 40px;
        padding-right: 40px; } }
    @media only screen and (max-width: 700px) {
      section.banner .content {
        padding-left: 20px;
        padding-right: 20px; } }
  section.banner .image {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 39.70588rem;
    right: 0;
    background-color: #999999;
    background-size: cover;
    background-position: center center; }
  section.banner .subtitle {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase; }
  section.banner h2 {
    font-size: 2.94118rem;
    margin: 0.52941rem 0 1.05882rem 0; }
  section.banner p {
    margin: 2.11765rem 0;
    line-height: 1.6; }
  section.banner .more {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    background: #ffffff;
    border: none; }
    section.banner .more:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    section.banner .more:hover {
      background-color: #e6e6e6;
      color: #2d5ee2; }
  @media only screen and (max-width: 1800px) {
    section.banner .content {
      padding-top: 100px;
      padding-bottom: 100px;
      min-height: 35.29412rem; } }
  @media only screen and (max-width: 1400px) {
    section.banner .content {
      padding-top: 80px;
      padding-bottom: 80px;
      min-height: 29.41176rem; } }
  @media only screen and (max-width: 1200px) {
    section.banner {
      padding-left: 450px; }
      section.banner .content {
        max-width: 450px;
        margin-left: -450px;
        min-height: 26.47059rem; }
      section.banner .image {
        left: 450px; } }
  @media only screen and (max-width: 1100px) {
    section.banner {
      padding-left: 360px; }
      section.banner .content {
        max-width: 340px;
        min-height: 23.52941rem;
        margin-left: -360px;
        padding-top: 60px;
        padding-bottom: 60px; }
      section.banner .image {
        left: 360px; }
      section.banner .subtitle {
        font-size: 9px; }
      section.banner h2 {
        font-size: 28px; }
      section.banner p {
        font-size: 12px;
        margin: 1.5em 0; } }
  @media only screen and (max-width: 900px) {
    section.banner {
      padding-left: 0; }
      section.banner .content {
        max-width: 100%;
        min-height: 0px;
        margin-left: 0;
        padding-top: 40px;
        padding-bottom: 40px; }
      section.banner .image {
        position: relative;
        left: auto;
        padding-bottom: 50%; } }
  @media only screen and (max-width: 700px) {
    section.banner .content {
      padding-top: 30px;
      padding-bottom: 30px; }
    section.banner .image {
      padding-bottom: 85%; }
    section.banner h2 {
      font-size: 28px; }
    section.banner p {
      font-size: inherit; } }

section.feature-products {
  max-width: 1920px;
  margin: 0 auto;
  overflow: hidden;
  padding-left: 80px;
  padding-right: 80px;
  padding-top: 10.58824rem;
  padding-bottom: 10.58824rem; }
  @media only screen and (max-width: 2000px) {
    section.feature-products {
      max-width: 1620px; } }
  @media only screen and (max-width: 1500px) {
    section.feature-products {
      padding-left: 60px;
      padding-right: 60px; } }
  @media only screen and (max-width: 1200px) {
    section.feature-products {
      padding-left: 40px;
      padding-right: 40px; } }
  @media only screen and (max-width: 700px) {
    section.feature-products {
      padding-left: 20px;
      padding-right: 20px; } }
  section.feature-products.more-than-four-products {
    text-align: center; }
    section.feature-products.more-than-four-products > div {
      padding: 0; }
    section.feature-products.more-than-four-products .titles,
    section.feature-products.more-than-four-products .text,
    section.feature-products.more-than-four-products .books {
      float: none;
      width: 100%;
      margin: 0; }
    section.feature-products.more-than-four-products ul.products {
      margin-left: 0;
      margin-right: 0;
      position: static;
      position: initial; }
      section.feature-products.more-than-four-products ul.products li {
        padding: 0;
        width: 100%; }
    section.feature-products.more-than-four-products .books .woocommerce {
      padding: 2.94118rem 5.05882rem;
      border-top: 1px solid #eff2f7;
      border-bottom: 1px solid #eff2f7;
      margin-left: auto;
      margin-right: auto; }
    section.feature-products.more-than-four-products .description {
      margin: 3.52941rem auto 1.29412rem auto; }
    section.feature-products.more-than-four-products.product-count-5 .books .woocommerce {
      max-width: 88.23529rem; }
  section.feature-products > div {
    *zoom: 1;
    clear: both;
    padding-left: 35.29412rem; }
    section.feature-products > div:before, section.feature-products > div:after {
      content: " ";
      display: table; }
    section.feature-products > div:after {
      clear: both; }
  section.feature-products .subtitle {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase; }
  section.feature-products h2 {
    margin-top: 1.76471rem;
    margin-bottom: 3.52941rem; }
  section.feature-products .titles,
  section.feature-products .text {
    float: left;
    clear: left;
    width: 26.47059rem;
    margin-left: -35.29412rem; }
  section.feature-products .books {
    width: 100%;
    text-align: left;
    margin-bottom: 2.94118rem;
    float: right; }
    section.feature-products .books .woocommerce {
      text-align: left;
      position: relative; }
  section.feature-products ul.products {
    display: block;
    width: auto; }
    section.feature-products ul.products li {
      width: 25%;
      margin-bottom: 0; }
  section.feature-products .owl-prev,
  section.feature-products .owl-next {
    background-color: #2d5ee2;
    width: 2.64706rem;
    height: 2.64706rem;
    border-radius: 50%;
    color: #ffffff;
    text-align: center;
    position: absolute;
    top: 50%;
    margin-top: -1.35294rem;
    transition: all 0.2s; }
    section.feature-products .owl-prev:hover,
    section.feature-products .owl-next:hover {
      background-color: #071741; }
  section.feature-products .owl-prev {
    left: 0; }
    section.feature-products .owl-prev:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      line-height: 2.64706rem; }
  section.feature-products .owl-next {
    right: 0; }
    section.feature-products .owl-next:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      line-height: 2.64706rem; }
  section.feature-products .description {
    overflow: hidden;
    max-width: 52.94118rem; }
    section.feature-products .description p {
      margin: 0; }
  section.feature-products .more {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    margin-top: 2.35294rem; }
    section.feature-products .more:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
  @media only screen and (max-width: 2000px) {
    section.feature-products ul.products {
      margin-left: -30px;
      margin-right: -30px; }
      section.feature-products ul.products li {
        padding-left: 30px;
        padding-right: 30px; } }
  @media only screen and (max-width: 1400px) {
    section.feature-products ul.products {
      margin-left: -20px;
      margin-right: -20px; }
      section.feature-products ul.products li {
        padding-left: 20px;
        padding-right: 20px; } }
  @media only screen and (max-width: 1300px) {
    section.feature-products {
      padding-top: 100px;
      padding-bottom: 100px; }
      section.feature-products > div {
        padding-left: 400px; }
      section.feature-products .titles,
      section.feature-products .text {
        width: 350px;
        margin-left: -400px; } }
  @media only screen and (max-width: 1200px) {
    section.feature-products {
      padding-top: 80px;
      padding-bottom: 80px; }
      section.feature-products > div {
        padding-left: 360px; }
      section.feature-products .titles,
      section.feature-products .text {
        width: 290px;
        margin-left: -360px; }
      section.feature-products .subtitle {
        font-size: 9px; }
      section.feature-products h2 {
        font-size: 28px; }
      section.feature-products ul.products {
        margin-left: -10px;
        margin-right: -10px; }
        section.feature-products ul.products li {
          padding-left: 10px;
          padding-right: 10px; }
      section.feature-products .description {
        font-size: 12px; } }
  @media only screen and (max-width: 1000px) {
    section.feature-products {
      padding-top: 55px;
      padding-bottom: 55px; }
      section.feature-products.more-than-four-products .books .woocommerce {
        max-width: 650px !important; }
      section.feature-products.more-than-four-products h2 {
        margin-bottom: 30px; }
      section.feature-products > div {
        padding-left: 0; }
      section.feature-products h2 {
        margin-top: 15px;
        margin-bottom: 10px; }
      section.feature-products .titles,
      section.feature-products .text {
        width: 100%;
        margin-left: 0; }
      section.feature-products .books {
        margin-top: 20px;
        margin-bottom: 40px; }
      section.feature-products ul.products {
        margin-left: -15px;
        margin-right: -15px;
        max-width: 700px; }
        section.feature-products ul.products li {
          padding-left: 15px;
          padding-right: 15px; } }
  @media only screen and (max-width: 700px) {
    section.feature-products.more-than-four-products .books .woocommerce {
      max-width: 420px !important; }
    section.feature-products ul.products {
      margin-left: -10px;
      margin-right: -10px; }
      section.feature-products ul.products li {
        padding-left: 10px;
        padding-right: 10px; } }
  @media only screen and (max-width: 600px) {
    section.feature-products .books {
      margin-top: 0; }
    section.feature-products ul.products li {
      width: 50%;
      margin-top: 40px; } }
  @media only screen and (max-width: 500px) {
    section.feature-products.more-than-four-products .books .woocommerce {
      max-width: 270px !important; } }

section.selling-points {
  background-color: #2d5ee2;
  padding-top: 10.58824rem;
  padding-bottom: 9.41176rem;
  color: #ffffff;
  text-align: center; }
  section.selling-points .container {
    margin: 0 auto;
    overflow: hidden;
    padding-left: 80px;
    padding-right: 80px;
    max-width: 102.94118rem; }
    @media only screen and (max-width: 1500px) {
      section.selling-points .container {
        padding-left: 60px;
        padding-right: 60px; } }
    @media only screen and (max-width: 1200px) {
      section.selling-points .container {
        padding-left: 40px;
        padding-right: 40px; } }
    @media only screen and (max-width: 700px) {
      section.selling-points .container {
        padding-left: 20px;
        padding-right: 20px; } }
  section.selling-points .wrapper {
    margin-left: -60px;
    margin-right: -60px; }
  section.selling-points .feature {
    padding-left: 60px;
    padding-right: 60px;
    display: inline-block;
    vertical-align: top;
    width: 33.33%; }
    section.selling-points .feature img {
      display: inline-block;
      width: 10.29412rem; }
    section.selling-points .feature h3 {
      font-size: 1.76471rem;
      font-weight: bold;
      margin: 4.11765rem 0 2.64706rem 0; }
    section.selling-points .feature p {
      width: 90%;
      margin-left: auto;
      margin-right: auto;
      line-height: 1.6; }
  @media only screen and (max-width: 2000px) {
    section.selling-points {
      padding-top: 100px;
      padding-bottom: 80px; }
      section.selling-points .wrapper {
        margin-left: -50px;
        margin-right: -50px; }
      section.selling-points .feature {
        padding-left: 50px;
        padding-right: 50px; } }
  @media only screen and (max-width: 1500px) {
    section.selling-points .wrapper {
      margin-left: -40px;
      margin-right: -40px; }
    section.selling-points .feature {
      padding-left: 40px;
      padding-right: 40px; } }
  @media only screen and (max-width: 1300px) {
    section.selling-points {
      padding-top: 60px;
      padding-bottom: 40px; }
      section.selling-points .wrapper {
        margin-left: -30px;
        margin-right: -30px; }
      section.selling-points .feature {
        padding-left: 30px;
        padding-right: 30px; }
        section.selling-points .feature img {
          width: 120px; }
        section.selling-points .feature h3 {
          font-size: 22px;
          margin: 35px 0 25px 0; }
        section.selling-points .feature p {
          font-size: 12px; } }
  @media only screen and (max-width: 1200px) {
    section.selling-points .feature img {
      width: 100px; }
    section.selling-points .feature h3 {
      font-size: 18px;
      margin: 1.8em 0 1.4em 0; } }
  @media only screen and (max-width: 1000px) {
    section.selling-points .wrapper {
      margin-left: -20px;
      margin-right: -20px; }
    section.selling-points .feature {
      padding-left: 20px;
      padding-right: 20px;
      width: 100%;
      margin-top: 50px; } }
  @media only screen and (max-width: 700px) {
    section.selling-points .feature:first-child {
      margin-top: 0; }
    section.selling-points .feature img {
      width: 100px; }
    section.selling-points .feature h3 {
      font-size: 22px;
      margin: 20px auto;
      max-width: 350px; }
    section.selling-points .feature p {
      font-size: inherit;
      max-width: 350px; } }

section.recent-news {
  max-width: 1920px;
  margin: 0 auto;
  overflow: hidden;
  padding-left: 80px;
  padding-right: 80px;
  padding-top: 4.70588rem;
  padding-bottom: 4.70588rem;
  text-align: center; }
  @media only screen and (max-width: 2000px) {
    section.recent-news {
      max-width: 1620px; } }
  @media only screen and (max-width: 1500px) {
    section.recent-news {
      padding-left: 60px;
      padding-right: 60px; } }
  @media only screen and (max-width: 1200px) {
    section.recent-news {
      padding-left: 40px;
      padding-right: 40px; } }
  @media only screen and (max-width: 700px) {
    section.recent-news {
      padding-left: 20px;
      padding-right: 20px; } }
  section.recent-news h2 {
    margin: 0 0 2.35294rem 0; }
  section.recent-news .grid {
    margin-left: -17px;
    margin-right: -17px; }
  section.recent-news article {
    padding-left: 17px;
    padding-right: 17px;
    width: 25%;
    margin-bottom: 2rem;
    word-break: break-word; }
    section.recent-news article > a {
      display: block;
      background-color: #ffffff; }
      section.recent-news article > a:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: "";
        display: block;
        background-color: #2d5ee2;
        padding: 1.17647rem;
        font-size: 1.29412rem;
        color: #ffffff; }
    section.recent-news article.post-facebook > a:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      background-color: #2c5190; }
    section.recent-news article.post-instagram > a:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      background-color: #f8f8f8;
      color: #4c4c4c; }
    section.recent-news article.post-instagram .content {
      padding: 1rem 1rem 1.76471rem 1rem; }
    section.recent-news article img {
      display: block;
      height: auto;
      margin: auto;
      max-width: 100%; }
    section.recent-news article .content {
      border-color: #ededed;
      border-style: solid;
      border-width: 0px 1px 1px 1px;
      padding: 1.76471rem; }
      section.recent-news article .content > *:first-child {
        margin-top: 0; }
    section.recent-news article .more {
      font-size: 0.88235rem;
      font-weight: bold;
      letter-spacing: 0.14706rem;
      text-transform: uppercase;
      font-size: 0.70588rem;
      color: #2d5ee2; }
  section.recent-news a {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    background-color: #2d5ee2;
    border-color: #2d5ee2;
    color: white;
    font-size: 0.64706rem;
    padding: 0 0.88235rem;
    transition: all .5s;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: white;
    text-decoration: none; }
    section.recent-news a:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    section.recent-news a:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      margin-right: 0.5em;
      font-size: 1.7em; }
    section.recent-news a:hover {
      background-color: #071741;
      border-color: #071741; }
  @media only screen and (max-width: 1200px) {
    section.recent-news {
      padding-top: 4.70588rem;
      padding-bottom: 3.52941rem; }
      section.recent-news h2 {
        margin: 0 0 40px 0; }
      section.recent-news .grid {
        margin-left: -10px;
        margin-right: -10px; }
      section.recent-news article {
        padding-left: 10px;
        padding-right: 10px; }
        section.recent-news article .content {
          font-size: 12px;
          padding: 20px; }
        section.recent-news article .more {
          font-size: 9px; } }
  @media only screen and (max-width: 1000px) {
    section.recent-news article {
      width: 50%;
      display: none; }
      section.recent-news article:nth-of-type(-n+6) {
        display: inline-block; } }
  @media only screen and (max-width: 750px) {
    section.recent-news article:nth-of-type(-n+6) {
      display: none; }
    section.recent-news article:nth-of-type(-n+4) {
      display: inline-block; } }
  @media only screen and (max-width: 500px) {
    section.recent-news article {
      width: 100%; }
      section.recent-news article:nth-of-type(-n+4) {
        display: none; }
      section.recent-news article:nth-of-type(-n+2) {
        display: inline-block; }
      section.recent-news article .content {
        font-size: 13px; } }

.page--contact section.contact-details {
  *zoom: 1;
  clear: both;
  background: #1e3c8b;
  padding-left: 39.70588rem;
  color: white;
  position: relative;
  margin: 4.70588rem auto 0 auto; }
  .page--contact section.contact-details:before, .page--contact section.contact-details:after {
    content: " ";
    display: table; }
  .page--contact section.contact-details:after {
    clear: both; }
  .page--contact section.contact-details .content {
    margin: 0 auto;
    overflow: hidden;
    padding-left: 80px;
    padding-right: 80px;
    max-width: 39.70588rem;
    margin: 0;
    float: left;
    margin-left: -39.70588rem;
    padding-top: 9.41176rem;
    padding-bottom: 9.41176rem; }
    @media only screen and (max-width: 1500px) {
      .page--contact section.contact-details .content {
        padding-left: 60px;
        padding-right: 60px; } }
    @media only screen and (max-width: 1200px) {
      .page--contact section.contact-details .content {
        padding-left: 40px;
        padding-right: 40px; } }
    @media only screen and (max-width: 700px) {
      .page--contact section.contact-details .content {
        padding-left: 20px;
        padding-right: 20px; } }
  .page--contact section.contact-details .map {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 39.70588rem;
    right: 0;
    background-color: #999999;
    background-size: cover;
    background-position: center center; }
  .page--contact section.contact-details .map-canvas {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }
  .page--contact section.contact-details .subtitle {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase; }
  .page--contact section.contact-details h2 {
    margin: 1.47059rem 0; }
  .page--contact section.contact-details p {
    margin: 1.47059rem 0 2.35294rem 0;
    line-height: 1.6; }
  .page--contact section.contact-details a {
    color: white; }
  @media only screen and (max-width: 1800px) {
    .page--contact section.contact-details .content {
      padding-top: 100px;
      padding-bottom: 100px; } }
  @media only screen and (max-width: 1400px) {
    .page--contact section.contact-details .content {
      padding-top: 80px;
      padding-bottom: 80px; } }
  @media only screen and (max-width: 1200px) {
    .page--contact section.contact-details {
      padding-left: 450px; }
      .page--contact section.contact-details .content {
        max-width: 450px;
        margin-left: -450px; }
      .page--contact section.contact-details .map {
        left: 450px; } }
  @media only screen and (max-width: 1100px) {
    .page--contact section.contact-details {
      padding-left: 360px; }
      .page--contact section.contact-details .content {
        max-width: 340px;
        margin-left: -360px;
        padding-top: 60px;
        padding-bottom: 60px; }
      .page--contact section.contact-details .map {
        left: 360px; }
      .page--contact section.contact-details .subtitle {
        font-size: 9px; }
      .page--contact section.contact-details h2 {
        font-size: 28px; }
      .page--contact section.contact-details p {
        font-size: 12px;
        margin: 1.5em 0; } }
  @media only screen and (max-width: 900px) {
    .page--contact section.contact-details {
      margin: 0 auto;
      padding-left: 0; }
      .page--contact section.contact-details .content {
        max-width: 100%;
        margin-left: 0;
        padding-top: 40px;
        padding-bottom: 40px;
        float: none; }
      .page--contact section.contact-details .map {
        position: relative;
        left: auto;
        padding-bottom: 50%; } }
  @media only screen and (max-width: 700px) {
    .page--contact section.contact-details .content {
      padding-top: 30px;
      padding-bottom: 30px; }
    .page--contact section.contact-details .map {
      padding-bottom: 85%; }
    .page--contact section.contact-details h2 {
      font-size: 28px; }
    .page--contact section.contact-details p {
      font-size: inherit; } }

.page--contact .page-content {
  max-width: 100%;
  padding: 0; }

.page--contact .wpcf7-form .container {
  display: flex;
  margin: 0 -1.76471rem; }

.page--contact .wpcf7-form .column {
  width: 50%;
  padding: 0 1.76471rem; }

.page--contact .wpcf7-form textarea {
  min-height: 209px; }

.page--contact .wpcf7-form button {
  border: none;
  background: none;
  outline: 0;
  cursor: pointer;
  border-radius: 0;
  padding: 0;
  display: inline-block;
  font-size: 0.70588rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  border-width: 1px;
  border-style: solid;
  border-radius: 9999em;
  height: 2.35294rem;
  line-height: 2.35294rem;
  padding: 0 1.17647rem;
  white-space: nowrap;
  text-decoration: none;
  background-color: #ffffff;
  border-color: #d0ddf7;
  color: #2d5ee2;
  min-width: 7.11765rem;
  transition: all 0.2s;
  float: right;
  font-size: 1.29412rem;
  height: 3.23529rem;
  line-height: 3.23529rem;
  text-transform: none;
  background-color: #2d5ee2;
  color: #ffffff;
  letter-spacing: 0;
  border: none; }
  .page--contact .wpcf7-form button:hover {
    background-color: #2d5ee2;
    color: #ffffff; }
  .page--contact .wpcf7-form button:after {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    margin-left: 0.7em; }
  .page--contact .wpcf7-form button:hover {
    background-color: #1e3c8b; }

@media only screen and (max-width: 700px) {
  .page--contact .wpcf7-form .container {
    display: block;
    margin: 0; }
  .page--contact .wpcf7-form .column {
    *zoom: 1;
    clear: both;
    width: 100%;
    padding: 0; }
    .page--contact .wpcf7-form .column:before, .page--contact .wpcf7-form .column:after {
      content: " ";
      display: table; }
    .page--contact .wpcf7-form .column:after {
      clear: both; } }

.error404 .page-content-wrapper {
  text-align: center; }
  .error404 .page-content-wrapper h1 {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase; }
  .error404 .page-content-wrapper h2 {
    margin: 0; }

.error404 .page-content {
  padding-top: 8.82353rem;
  padding-bottom: 10.58824rem;
  margin: auto; }

.error404 section.search {
  padding: 0;
  margin-top: 4.70588rem; }
  .error404 section.search form {
    margin: 0; }
  .error404 section.search h2, .error404 section.search p {
    display: none; }

@media only screen and (max-width: 1200px) {
  .error404 .page-content {
    padding-top: 70px;
    padding-bottom: 100px; } }

@media only screen and (max-width: 1200px) {
  .error404 .page-content {
    padding-top: 40px;
    padding-bottom: 60px; } }

.archive .main-content-wrapper {
  max-width: 2780px; }
  @media only screen and (max-width: 2900px) {
    .archive .main-content-wrapper {
      max-width: 2430px; } }
  @media only screen and (max-width: 2500px) {
    .archive .main-content-wrapper {
      max-width: 1920px; } }

.archive .archive-wrapper {
  *zoom: 1;
  clear: both;
  padding-top: 3.23529rem;
  padding-left: 35.29412rem; }
  .archive .archive-wrapper:before, .archive .archive-wrapper:after {
    content: " ";
    display: table; }
  .archive .archive-wrapper:after {
    clear: both; }

.archive .archive-content {
  float: right;
  width: 100%;
  transition: opacity 0.2s; }

.archive.products-loading .archive-content {
  opacity: .4; }

.archive ul.products,
.archive ul.items {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -40px;
  margin-right: -40px; }
  .archive ul.products li,
  .archive ul.items li {
    padding-left: 40px;
    padding-right: 40px;
    display: inline-block;
    vertical-align: top;
    width: 25%;
    margin-bottom: 4.70588rem;
    transition: all .3s;
    max-width: 350px; }
    .archive ul.products li > a,
    .archive ul.items li > a {
      display: block; }
      .archive ul.products li > a.added_to_cart,
      .archive ul.items li > a.added_to_cart {
        display: inline-block;
        margin-left: 5px;
        font-size: .8em;
        font-weight: bold;
        color: #2d5ee2;
        text-decoration: underline; }
    .archive ul.products li.loaded-in,
    .archive ul.items li.loaded-in {
      opacity: 0;
      transform: scale(0.6); }
  .archive ul.products img,
  .archive ul.items img {
    width: 100%;
    display: block;
    height: auto;
    margin-bottom: 1.47059rem; }
  .archive ul.products .year-level,
  .archive ul.items .year-level {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    display: block;
    font-size: 0.70588rem;
    margin: 1rem 0; }
    .archive ul.products .year-level span:after,
    .archive ul.items .year-level span:after {
      content: ' \25CF'; }
  .archive ul.products h2,
  .archive ul.items h2 {
    font-size: 1.58824rem;
    font-weight: 300;
    margin: 0.52941rem 0 0 0;
    padding-bottom: 0.52941rem;
    border-bottom: 1px solid #eff2f7; }
  .archive ul.products .publication,
  .archive ul.items .publication {
    border-bottom: 1px solid #eff2f7;
    font-size: 0.88235rem;
    overflow: hidden;
    padding: 1rem 0;
    text-transform: capitalize; }
    .archive ul.products .publication .types,
    .archive ul.items .publication .types {
      display: block; }
  .archive ul.products .price,
  .archive ul.items .price {
    font-size: 1.35294rem;
    font-weight: bold;
    display: block;
    color: #2d5ee2;
    margin: 0.88235rem 0;
    line-height: 1; }
    .archive ul.products .price .per,
    .archive ul.items .price .per {
      font-size: 0.76471rem; }
  .archive ul.products .button,
  .archive ul.items .button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    background-color: #2d5ee2;
    border-color: #2d5ee2;
    color: white;
    margin-top: 0.7em; }
    .archive ul.products .button:hover,
    .archive ul.items .button:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    .archive ul.products .button:hover,
    .archive ul.items .button:hover {
      background-color: #071741;
      border-color: #071741; }
    .archive ul.products .button.ajax_add_to_cart,
    .archive ul.items .button.ajax_add_to_cart {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s;
      background-color: #2d5ee2;
      border-color: #2d5ee2;
      color: white;
      font-size: 0.64706rem;
      padding: 0 0.88235rem;
      transition: all .5s;
      display: inline-flex;
      justify-content: center;
      align-items: center; }
      .archive ul.products .button.ajax_add_to_cart:hover,
      .archive ul.items .button.ajax_add_to_cart:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
      .archive ul.products .button.ajax_add_to_cart:before,
      .archive ul.items .button.ajax_add_to_cart:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: "";
        margin-right: 0.5em;
        font-size: 1.4em; }
      .archive ul.products .button.ajax_add_to_cart:hover,
      .archive ul.items .button.ajax_add_to_cart:hover {
        background-color: #071741;
        border-color: #071741; }
      .archive ul.products .button.ajax_add_to_cart.loading,
      .archive ul.items .button.ajax_add_to_cart.loading {
        -webkit-animation: throb 1s .3s infinite;
                animation: throb 1s .3s infinite;
        padding-left: 0.52941rem;
        color: rgba(255, 255, 255, 0);
        min-width: 0;
        width: 2.35294rem; }
        .archive ul.products .button.ajax_add_to_cart.loading:before,
        .archive ul.items .button.ajax_add_to_cart.loading:before {
          color: rgba(255, 255, 255, 0); }
        .archive ul.products .button.ajax_add_to_cart.loading:hover,
        .archive ul.items .button.ajax_add_to_cart.loading:hover {
          background-color: #2d5ee2;
          border-color: #2d5ee2;
          color: rgba(255, 255, 255, 0); }
    .archive ul.products .button.read-more,
    .archive ul.items .button.read-more {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s;
      background-color: #2d5ee2;
      border-color: #2d5ee2;
      color: white;
      font-size: 0.64706rem;
      padding: 0 0.88235rem;
      transition: all .5s;
      display: inline-flex;
      justify-content: center;
      align-items: center; }
      .archive ul.products .button.read-more:hover,
      .archive ul.items .button.read-more:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
      .archive ul.products .button.read-more:before,
      .archive ul.items .button.read-more:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: "";
        margin-right: 0.5em;
        font-size: 1.7em; }
      .archive ul.products .button.read-more:hover,
      .archive ul.items .button.read-more:hover {
        background-color: #071741;
        border-color: #071741; }
  .archive ul.products .instock .read-more,
  .archive ul.items .instock .read-more {
    display: none; }
  .archive ul.products .outofstock .price,
  .archive ul.products .outofstock .ajax_add_to_cart,
  .archive ul.products .outofstock .product_type_simple,
  .archive ul.items .outofstock .price,
  .archive ul.items .outofstock .ajax_add_to_cart,
  .archive ul.items .outofstock .product_type_simple {
    display: none; }
  .archive ul.products a,
  .archive ul.items a {
    color: #3b3b3b;
    text-decoration: none; }
  .archive ul.products .status,
  .archive ul.items .status {
    font-size: .9em;
    margin: 1em 0 0.5em 0;
    display: block; }
    .archive ul.products .status.out-of-stock,
    .archive ul.items .status.out-of-stock {
      color: #ed6d57; }
    .archive ul.products .status.date-available,
    .archive ul.items .status.date-available {
      color: #ef8a0f; }

.archive .woocommerce-pagination ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center; }
  .archive .woocommerce-pagination ul .page-numbers {
    display: none; }
    .archive .woocommerce-pagination ul .page-numbers.next {
      display: inline-block;
      color: #2d5ee2;
      font-weight: bold;
      border: 1px solid rgba(45, 94, 226, 0.4);
      height: 3.17647rem;
      padding: 0.70588rem 2.35294rem;
      text-decoration: none;
      border-radius: 5.88235rem;
      transition: all .5s;
      overflow: hidden;
      white-space: nowrap;
      width: 17.64706rem; }
      .archive .woocommerce-pagination ul .page-numbers.next.loading {
        -webkit-animation: throb 1s .3s infinite;
                animation: throb 1s .3s infinite;
        padding-left: 0.35294rem;
        padding-right: 0.35294rem;
        width: 3.17647rem;
        color: rgba(255, 255, 255, 0); }
      .archive .woocommerce-pagination ul .page-numbers.next:before {
        content: '';
        position: relative;
        display: inline-block;
        top: 0.23529rem;
        background: url("../images/atc-logo-blue.png");
        background-size: 100%;
        background-repeat: no-repeat;
        width: 2.35294rem;
        height: 1.29412rem;
        margin-right: 1.17647rem; }

.archive .archive-sidebar {
  float: left;
  width: 28.82353rem;
  margin-left: -35.29412rem; }
  .archive .archive-sidebar .archive-sidebar-content {
    margin-bottom: 2.94118rem; }
    .archive .archive-sidebar .archive-sidebar-content > *:first-child {
      margin-top: 0; }
  .archive .archive-sidebar form {
    padding: 0 15px; }
  .archive .archive-sidebar legend {
    display: block;
    width: 100%;
    font-size: 1.29412rem;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
    padding-bottom: 1.17647rem;
    margin-bottom: 1.88235rem; }
  .archive .archive-sidebar fieldset {
    margin-top: 0;
    margin-bottom: 2.94118rem; }
  .archive .archive-sidebar label {
    border: 0; }
    .archive .archive-sidebar label .subtitle:before {
      content: '/ '; }

@media only screen and (max-width: 1700px) {
  .archive ul.products {
    margin-left: -20px;
    margin-right: -20px; }
    .archive ul.products li {
      padding-left: 20px;
      padding-right: 20px; } }

@media only screen and (max-width: 1300px) {
  .archive .archive-wrapper {
    padding-left: 300px; }
  .archive .archive-sidebar {
    width: 240px;
    margin-left: -300px; }
    .archive .archive-sidebar fieldset {
      margin-bottom: 30px; }
    .archive .archive-sidebar label {
      width: 100%;
      font-size: 12px;
      padding-left: 0; }
    .archive .archive-sidebar .radio input[type="radio"] + span {
      width: 20px;
      height: 20px;
      margin-right: 3px;
      top: 6px; }
    .archive .archive-sidebar .radio input[type="radio"]:checked + span:before {
      width: 8px;
      height: 8px;
      top: 5px;
      left: 5px; } }

@media only screen and (max-width: 1100px) {
  .archive ul.products,
  .archive ul.items {
    margin-left: -15px;
    margin-right: -15px; }
    .archive ul.products li,
    .archive ul.items li {
      padding-left: 15px;
      padding-right: 15px; } }

@media only screen and (max-width: 1000px) {
  .archive .archive-sidebar {
    margin-bottom: 40px; }
  .archive ul.products,
  .archive ul.items {
    margin-left: -20px;
    margin-right: -20px; }
    .archive ul.products li,
    .archive ul.items li {
      padding-left: 20px;
      padding-right: 20px;
      width: 33.33%; } }

@media only screen and (max-width: 950px) {
  .archive .archive-wrapper {
    padding-left: 0; }
  .archive .archive-sidebar {
    width: 100%;
    margin-left: 0; }
    .archive .archive-sidebar label {
      width: 50%; }
  .archive ul.products li,
  .archive ul.items li {
    width: 25%; } }

@media only screen and (max-width: 800px) {
  .archive ul.products li,
  .archive ul.items li {
    width: 33.33%; } }

@media only screen and (max-width: 700px) {
  .archive ul.products,
  .archive ul.items {
    margin-left: -10px;
    margin-right: -10px; }
    .archive ul.products li,
    .archive ul.items li {
      padding-left: 10px;
      padding-right: 10px; }
    .archive ul.products .year-level,
    .archive ul.items .year-level {
      font-size: 8px; }
    .archive ul.products h2,
    .archive ul.items h2 {
      font-size: 19px;
      padding-bottom: 15px; }
    .archive ul.products .publication,
    .archive ul.items .publication {
      font-size: 11px; } }

@media only screen and (max-width: 550px) {
  .archive ul.products li,
  .archive ul.items li {
    width: 50%; }
  .archive .woocommerce-pagination ul .page-numbers.next {
    width: 100%; } }

.post-type-archive-ee_online_resource ul.items .button {
  margin-top: 1.5em; }

.single-product main .main-content-wrapper {
  padding-top: 1.76471rem; }
  .single-product main .main-content-wrapper > .product {
    overflow: hidden;
    padding: 2.35294rem 2.52941rem;
    padding-top: 0 !important;
    padding-right: 0 !important; }
    @media only screen and (max-width: 1250px) {
      .single-product main .main-content-wrapper > .product {
        padding: 15px 25px; } }
    @media only screen and (max-width: 900px) {
      .single-product main .main-content-wrapper > .product {
        padding: 15px 0; } }

.single-product main .summary-wrapper {
  *zoom: 1;
  clear: both;
  padding-left: 31.17647rem; }
  .single-product main .summary-wrapper:before, .single-product main .summary-wrapper:after {
    content: " ";
    display: table; }
  .single-product main .summary-wrapper:after {
    clear: both; }

.single-product main .woocommerce-product-gallery {
  width: 25.29412rem;
  float: left;
  margin-left: -31.17647rem;
  position: relative;
  z-index: 1;
  text-align: center; }
  .single-product main .woocommerce-product-gallery figure {
    margin: 0; }
  .single-product main .woocommerce-product-gallery img {
    display: block;
    width: 100%; }
  .single-product main .woocommerce-product-gallery .mobile-product-info {
    display: none;
    float: left;
    text-align: left;
    width: 100%; }
    .single-product main .woocommerce-product-gallery .mobile-product-info .year-level {
      font-size: 10px; }
    .single-product main .woocommerce-product-gallery .mobile-product-info h1 {
      font-size: 25px;
      padding-bottom: 0.8em;
      border-bottom: 1px solid #ededed; }
    .single-product main .woocommerce-product-gallery .mobile-product-info .price {
      font-size: 20px;
      font-weight: bold;
      color: #2d5ee2; }
      .single-product main .woocommerce-product-gallery .mobile-product-info .price .per {
        font-size: 13px; }
  .single-product main .woocommerce-product-gallery .preview {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-transform: none;
    letter-spacing: 0;
    margin-top: 2.35294rem;
    height: 2.94118rem;
    font-size: 1rem; }
    .single-product main .woocommerce-product-gallery .preview:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    .single-product main .woocommerce-product-gallery .preview:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      font-size: 2rem;
      vertical-align: middle;
      margin-right: 0.58824rem; }

.single-product main .year-level {
  font-size: 0.88235rem;
  font-weight: bold;
  letter-spacing: 0.14706rem;
  text-transform: uppercase;
  font-size: 0.94118rem;
  margin-bottom: 0.47059rem;
  display: inline-block; }
  .single-product main .year-level span:after {
    content: ' \25CF'; }

.single-product main h1 {
  margin-top: 0;
  margin-bottom: 1rem;
  max-width: 35.29412rem; }

.single-product main .price-wrapper {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  padding: 1.41176rem 0;
  margin: 3rem 0; }
  .single-product main .price-wrapper:before, .single-product main .price-wrapper:after {
    content: '';
    display: block;
    width: 9999em;
    height: 1px;
    background-color: #eff2f7;
    position: absolute;
    right: 0; }
  .single-product main .price-wrapper:before {
    top: 0; }
  .single-product main .price-wrapper:after {
    bottom: 0; }
  .single-product main .price-wrapper > * {
    display: inline-block;
    vertical-align: middle; }
    .single-product main .price-wrapper > *.product_meta {
      display: none; }
    .single-product main .price-wrapper > *.status {
      margin: 0; }
      .single-product main .price-wrapper > *.status.out-of-stock {
        color: #ed6d57; }
      .single-product main .price-wrapper > *.status.date-available {
        color: #ef8a0f; }
      .single-product main .price-wrapper > *.status:before {
        content: '';
        font-size: 1.76471rem; }
  .single-product main .price-wrapper .price {
    order: 1;
    font-size: 1.76471rem;
    font-weight: bold;
    color: #2d5ee2;
    margin-right: 2.94118rem;
    margin-bottom: 0; }
    .single-product main .price-wrapper .price .per {
      font-size: 1.05882rem; }
  .single-product main .price-wrapper .cart {
    order: 2; }
    .single-product main .price-wrapper .cart > * {
      display: inline-block;
      vertical-align: middle; }
    @media only screen and (max-width: 400px) {
      .single-product main .price-wrapper .cart {
        width: 100%; } }
  .single-product main .price-wrapper .availability_date {
    display: block;
    order: 3;
    margin-top: .5rem;
    padding: .5em 0;
    border-top: 1px solid #eff2f7;
    border-bottom: 1px solid #eff2f7;
    width: 100%;
    font-weight: bold; }
  .single-product main .price-wrapper .quantity {
    margin-right: 2.94118rem; }
    .single-product main .price-wrapper .quantity > * {
      display: inline-block;
      vertical-align: middle; }
    .single-product main .price-wrapper .quantity label {
      border: none;
      border-radius: 0;
      font-size: 1.05882rem;
      font-weight: bold;
      margin: 0 0.58824rem 0 0;
      float: none;
      width: auto; }
    .single-product main .price-wrapper .quantity button {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      margin: 0 0.17647rem; }
      .single-product main .price-wrapper .quantity button:before {
        display: block;
        color: #2d5ee2;
        font-size: 1.47059rem;
        transition: color 0.2s; }
      .single-product main .price-wrapper .quantity button.less:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: ""; }
      .single-product main .price-wrapper .quantity button.more:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: ""; }
      .single-product main .price-wrapper .quantity button:hover:before {
        color: #1e3c8b; }
    .single-product main .price-wrapper .quantity input[type=number] {
      width: auto;
      border: 1px solid #d4d4d4;
      height: 2.94118rem;
      line-height: 2.94118rem;
      margin-left: 0.88235rem;
      max-width: 4.47059rem;
      -moz-appearance: textfield; }
      .single-product main .price-wrapper .quantity input[type=number]::-webkit-inner-spin-button, .single-product main .price-wrapper .quantity input[type=number]::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0; }
  .single-product main .price-wrapper .single_add_to_cart_button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    background-color: #2d5ee2;
    border-color: #2d5ee2;
    color: white;
    font-size: 0.64706rem;
    padding: 0 0.88235rem;
    transition: all .5s;
    display: inline-flex;
    justify-content: center;
    align-items: center; }
    .single-product main .price-wrapper .single_add_to_cart_button:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    .single-product main .price-wrapper .single_add_to_cart_button:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      margin-right: 0.5em;
      font-size: 1.4em; }
    .single-product main .price-wrapper .single_add_to_cart_button:hover {
      background-color: #071741;
      border-color: #071741; }
    .single-product main .price-wrapper .single_add_to_cart_button.loading {
      -webkit-animation: throb 1s .3s infinite;
              animation: throb 1s .3s infinite;
      padding-left: 0.52941rem;
      color: rgba(255, 255, 255, 0);
      min-width: 0;
      width: 2.35294rem; }
      .single-product main .price-wrapper .single_add_to_cart_button.loading:before {
        color: rgba(255, 255, 255, 0); }
      .single-product main .price-wrapper .single_add_to_cart_button.loading:hover {
        background-color: #2d5ee2;
        border-color: #2d5ee2;
        color: rgba(255, 255, 255, 0); }
  .single-product main .price-wrapper .added_to_cart {
    color: #2d5ee2;
    font-weight: bold;
    margin-left: 10px; }
  .single-product main .price-wrapper .product-notice {
    width: 100%;
    order: 4; }
    .single-product main .price-wrapper .product-notice p {
      background-color: #d3d3d3;
      text-align: center;
      padding: .5rem 1rem;
      border-radius: 999em;
      line-height: 1.2;
      display: inline-block; }

.single-product main .product-content {
  *zoom: 1;
  clear: both;
  clear: none;
  padding-left: 22.35294rem; }
  .single-product main .product-content:before, .single-product main .product-content:after {
    content: " ";
    display: table; }
  .single-product main .product-content:after {
    clear: both; }
  .single-product main .product-content > div {
    margin-bottom: 3rem; }
  .single-product main .product-content .details {
    float: left;
    width: 18.82353rem;
    margin-left: -22.35294rem; }
    .single-product main .product-content .details > *:first-child {
      margin-top: 0; }
    .single-product main .product-content .details > *:last-child {
      margin-bottom: 0; }
    .single-product main .product-content .details > * {
      margin: 1rem 0; }
    .single-product main .product-content .details .authors ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      .single-product main .product-content .details .authors ul li {
        display: inline-block; }
        .single-product main .product-content .details .authors ul li span:after {
          content: ','; }
        .single-product main .product-content .details .authors ul li:last-child span:after {
          content: none; }
  .single-product main .product-content .description {
    float: left;
    width: 100%;
    max-width: 41.17647rem; }
    .single-product main .product-content .description > *:first-child {
      margin-top: 0; }
    .single-product main .product-content .description > *:last-child {
      margin-bottom: 0; }

.single-product main .woocommerce-tabs {
  overflow: hidden;
  padding: 2.35294rem 2.52941rem;
  margin-top: 5.88235rem;
  margin-bottom: 5.88235rem;
  padding-left: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  clear: both; }
  @media only screen and (max-width: 1250px) {
    .single-product main .woocommerce-tabs {
      padding: 15px 25px; } }
  @media only screen and (max-width: 900px) {
    .single-product main .woocommerce-tabs {
      padding: 15px 0; } }

.single-product main .wc-tabs {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: 5rem;
  font-size: 1.29412rem;
  font-weight: bold;
  line-height: 1.2; }
  .single-product main .wc-tabs li {
    display: inline-block;
    width: 20%;
    max-width: 17.94118rem;
    padding-right: 0.88235rem; }
    .single-product main .wc-tabs li.active a {
      color: #3b3b3b;
      border-color: #2de2c3; }
  .single-product main .wc-tabs a {
    display: block;
    color: #aeaeae;
    text-decoration: none;
    border-bottom: 2px solid #d4d4d4;
    padding: 0.88235rem 0; }

.single-product main .woocommerce-Tabs-panel.current h2 {
  color: #3b3b3b;
  border-bottom: 2px solid #2de2c3; }
  .single-product main .woocommerce-Tabs-panel.current h2:after {
    color: #3b3b3b;
    transform: rotate(180deg); }

.single-product main .woocommerce-Tabs-panel > h2 {
  margin: 0;
  padding: 40px 0 20px 0;
  color: #aeaeae;
  font-weight: bold;
  font-size: 18px;
  border-bottom: 2px solid #aeaeae;
  cursor: pointer;
  position: relative;
  display: none; }
  .single-product main .woocommerce-Tabs-panel > h2:after {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    transition: transform 0.3s;
    position: absolute;
    right: 0;
    bottom: 20px;
    color: #a7a7a7; }

.single-product main .woocommerce-Tabs-panel > div {
  transition: height 0.3s; }

.single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul {
  list-style: none;
  margin: 0;
  padding: 0;
  *zoom: 1;
  clear: both;
  margin-left: -50px;
  margin-right: -50px; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul:before, .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul:after {
    content: " ";
    display: table; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul:after {
    clear: both; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li {
    padding-left: 50px;
    padding-right: 50px;
    width: 50%;
    float: right;
    clear: right;
    margin-bottom: 3.23529rem; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li:first-child {
      float: left; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li:first-child > div {
        padding-left: 0; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li:first-child img {
        border-radius: 0;
        max-width: 100%;
        margin-left: 0;
        float: none; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li:first-child .description {
        margin-top: 2.94118rem; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li > div {
      *zoom: 1;
      clear: both;
      padding-left: 13.52941rem; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li > div:before, .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li > div:after {
        content: " ";
        display: table; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li > div:after {
        clear: both; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li img {
      display: block;
      border-radius: 50%;
      max-width: 10.35294rem;
      float: left;
      margin-left: -13.52941rem; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li .description {
      margin-top: 1.47059rem; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li .description > *:first-child {
        margin-top: 0; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li .description > *:last-child {
        margin-bottom: 0; }

.single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper {
  margin-left: -60px;
  margin-right: -60px;
  font-size: 1.17647rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 0; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper li {
    padding: .2em 0; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper > ul > li {
    padding-left: 60px;
    padding-right: 60px;
    display: inline-block;
    vertical-align: top;
    width: 25%;
    margin-bottom: 2.35294rem; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper ul ul {
    font-size: 0.8em;
    line-height: 1.6;
    margin: 1rem 0;
    font-weight: normal; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper.has-three-levels ul ul {
    font-weight: bold; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper ul ul ul,
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper.has-three-levels ul ul ul {
    font-weight: normal; }

.single-product main .woocommerce-Tabs-panel--online_resources_tab ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -60px;
  margin-right: -60px; }

.single-product main .woocommerce-Tabs-panel--online_resources_tab li {
  padding-left: 60px;
  padding-right: 60px;
  display: inline-block;
  vertical-align: top;
  width: 25%; }

.single-product main .woocommerce-Tabs-panel--online_resources_tab a {
  color: #3b3b3b;
  text-decoration: none; }

.single-product main .related.products {
  display: block; }
  .single-product main .related.products ul.products {
    display: flex;
    justify-content: space-between;
    width: 100%;
    width: calc(100% + 60px);
    left: -30px;
    position: relative;
    list-style: none;
    padding: 0; }
    @media only screen and (max-width: 700px) {
      .single-product main .related.products ul.products {
        width: calc(100% + 30px);
        left: -15px; } }
    @media only screen and (max-width: 500px) {
      .single-product main .related.products ul.products {
        flex-wrap: wrap; } }
    .single-product main .related.products ul.products li {
      flex: 25% 1 1;
      margin: 0 30px; }
      .single-product main .related.products ul.products li img {
        width: 220px;
        display: block;
        margin-bottom: 13px; }
      .single-product main .related.products ul.products li a {
        color: black;
        text-decoration: none; }
      .single-product main .related.products ul.products li .year-level {
        display: block;
        font-weight: bold;
        letter-spacing: 0.14706rem;
        text-transform: uppercase;
        display: block;
        font-size: 0.70588rem;
        margin: 1rem 0; }
      .single-product main .related.products ul.products li h2 {
        font-size: 1.58824rem;
        font-weight: 300;
        margin: 0.52941rem 0 0 0;
        padding-bottom: 0.52941rem;
        border-bottom: 1px solid #eff2f7; }
      .single-product main .related.products ul.products li .publication {
        border-bottom: 1px solid #eff2f7;
        font-size: 0.88235rem;
        overflow: hidden;
        padding: 1rem 0;
        text-transform: capitalize; }
      .single-product main .related.products ul.products li .price {
        font-size: 1.35294rem;
        font-weight: bold;
        display: block;
        color: #2d5ee2;
        margin: 0.88235rem 0;
        line-height: 1; }
        .single-product main .related.products ul.products li .price .amount {
          font-size: 1.35294rem; }
        .single-product main .related.products ul.products li .price .per {
          font-size: 0.76471rem; }
      .single-product main .related.products ul.products li .add_to_cart_button {
        border: none;
        background: none;
        outline: 0;
        cursor: pointer;
        border-radius: 0;
        padding: 0;
        display: inline-block;
        font-size: 0.70588rem;
        font-weight: bold;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        border-width: 1px;
        border-style: solid;
        border-radius: 9999em;
        height: 2.35294rem;
        line-height: 2.35294rem;
        padding: 0 1.17647rem;
        white-space: nowrap;
        text-decoration: none;
        background-color: #ffffff;
        border-color: #d0ddf7;
        color: #2d5ee2;
        min-width: 7.11765rem;
        transition: all 0.2s;
        background-color: #2d5ee2;
        border-color: #2d5ee2;
        color: white;
        font-size: 0.64706rem;
        padding: 0 0.88235rem;
        transition: all .5s;
        display: inline-flex;
        justify-content: center;
        align-items: center; }
        .single-product main .related.products ul.products li .add_to_cart_button:hover {
          background-color: #2d5ee2;
          color: #ffffff; }
        .single-product main .related.products ul.products li .add_to_cart_button:before {
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-feature-settings: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          speak: none;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          /* include the requested glyph */
          content: "";
          margin-right: 0.5em;
          font-size: 1.4em; }
        .single-product main .related.products ul.products li .add_to_cart_button:hover {
          background-color: #071741;
          border-color: #071741; }
        .single-product main .related.products ul.products li .add_to_cart_button.loading {
          -webkit-animation: throb 1s .3s infinite;
                  animation: throb 1s .3s infinite;
          padding-left: 0.52941rem;
          color: rgba(255, 255, 255, 0);
          min-width: 0;
          width: 2.35294rem; }
          .single-product main .related.products ul.products li .add_to_cart_button.loading:before {
            color: rgba(255, 255, 255, 0); }
          .single-product main .related.products ul.products li .add_to_cart_button.loading:hover {
            background-color: #2d5ee2;
            border-color: #2d5ee2;
            color: rgba(255, 255, 255, 0); }
      .single-product main .related.products ul.products li .read-more {
        display: none; }
      .single-product main .related.products ul.products li .added_to_cart {
        display: inline-block;
        margin-left: 5px;
        font-size: .8em;
        font-weight: bold;
        color: #2d5ee2;
        text-decoration: underline; }
      .single-product main .related.products ul.products li.outofstock a.product_type_simple {
        display: none; }
      .single-product main .related.products ul.products li.outofstock .status.out-of-stock {
        display: block;
        font-size: .9em;
        margin: 0 0 1em 0;
        display: block;
        color: #ed6e58; }
      .single-product main .related.products ul.products li.outofstock .read-more {
        border: none;
        background: none;
        outline: 0;
        cursor: pointer;
        border-radius: 0;
        padding: 0;
        display: inline-block;
        font-size: 0.70588rem;
        font-weight: bold;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        border-width: 1px;
        border-style: solid;
        border-radius: 9999em;
        height: 2.35294rem;
        line-height: 2.35294rem;
        padding: 0 1.17647rem;
        white-space: nowrap;
        text-decoration: none;
        background-color: #ffffff;
        border-color: #d0ddf7;
        color: #2d5ee2;
        min-width: 7.11765rem;
        transition: all 0.2s;
        background-color: #2d5ee2;
        border-color: #2d5ee2;
        color: white;
        font-size: 0.64706rem;
        padding: 0 0.88235rem;
        transition: all .5s;
        display: inline-flex;
        justify-content: center;
        align-items: center; }
        .single-product main .related.products ul.products li.outofstock .read-more:hover {
          background-color: #2d5ee2;
          color: #ffffff; }
        .single-product main .related.products ul.products li.outofstock .read-more:before {
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-feature-settings: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          speak: none;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          /* include the requested glyph */
          content: "";
          margin-right: 0.5em;
          font-size: 1.7em; }
        .single-product main .related.products ul.products li.outofstock .read-more:hover {
          background-color: #071741;
          border-color: #071741; }
      @media only screen and (max-width: 900px) {
        .single-product main .related.products ul.products li:nth-child(n+4) {
          display: none; } }
      @media only screen and (max-width: 700px) {
        .single-product main .related.products ul.products li {
          margin: 0 15px; } }
      @media only screen and (max-width: 500px) {
        .single-product main .related.products ul.products li {
          margin-top: 40px;
          flex: 40% 1 1; }
          .single-product main .related.products ul.products li:nth-child(n+4) {
            display: block; } }
      @media only screen and (max-width: 380px) {
        .single-product main .related.products ul.products li {
          flex: 100% 1 1; }
          .single-product main .related.products ul.products li:nth-child(n+3) {
            display: none; } }

.single-product main .upsells {
  overflow: hidden;
  padding: 2.35294rem 2.52941rem;
  overflow: hidden;
  padding-left: 0 !important; }
  @media only screen and (max-width: 1250px) {
    .single-product main .upsells {
      padding: 15px 25px; } }
  @media only screen and (max-width: 900px) {
    .single-product main .upsells {
      padding: 15px 0; } }
  .single-product main .upsells > h2 {
    margin-top: 0; }
  .single-product main .upsells ul.products {
    margin-left: -30px;
    margin-right: -30px; }
    .single-product main .upsells ul.products li {
      padding-left: 30px;
      padding-right: 30px;
      width: 16.6666%;
      margin-bottom: 3.52941rem; }

@media only screen and (max-width: 1500px) {
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul {
    margin-left: -40px;
    margin-right: -40px; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li {
      padding-left: 40px;
      padding-right: 40px; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper {
    margin-left: -40px;
    margin-right: -40px; }
    .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper > ul > li {
      padding-left: 40px;
      padding-right: 40px; }
  .single-product main .upsells ul.products {
    margin-left: -20px;
    margin-right: -20px; }
    .single-product main .upsells ul.products li {
      padding-left: 20px;
      padding-right: 20px; } }

@media only screen and (max-width: 1400px) {
  .single-product main .product-content {
    padding-left: 220px; }
    .single-product main .product-content .details {
      width: 180px;
      margin-left: -220px; } }

@media only screen and (max-width: 1250px) {
  .single-product main .summary-wrapper {
    padding-left: 300px; }
  .single-product main .woocommerce-product-gallery {
    width: 250px;
    margin-left: -300px; } }

@media only screen and (max-width: 1200px) {
  .single-product main .wc-tabs li {
    width: 25%; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul {
    margin-left: -30px;
    margin-right: -30px; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li {
      padding-left: 30px;
      padding-right: 30px; }
      .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li:first-child .description {
        margin-top: 25px; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper {
    margin-left: -20px;
    margin-right: -20px;
    font-size: 13px; }
    .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper > ul > li {
      padding-left: 20px;
      padding-right: 20px; }
  .single-product main .woocommerce-Tabs-panel--online_resources_tab ul {
    margin-left: -20px;
    margin-right: -20px; }
  .single-product main .woocommerce-Tabs-panel--online_resources_tab li {
    padding-left: 20px;
    padding-right: 20px; }
  .single-product main .upsells ul.products {
    margin-left: -15px;
    margin-right: -15px; }
    .single-product main .upsells ul.products li {
      padding-left: 15px;
      padding-right: 15px; } }

@media only screen and (max-width: 1000px) {
  .single-product main .product-content {
    padding-left: 0; }
    .single-product main .product-content .details {
      width: 100%;
      margin-left: 0; }
  .single-product main .price-wrapper > * {
    display: block; }
  .single-product main .price-wrapper .price {
    margin-bottom: 15px; }
  .single-product main .price-wrapper .quantity {
    margin-right: 25px; }
    .single-product main .price-wrapper .quantity input[type=number] {
      text-align: center;
      max-width: 45px; }
  .single-product main .upsells ul.products li {
    width: 25%; }
    .single-product main .upsells ul.products li:nth-child(5), .single-product main .upsells ul.products li:nth-child(6) {
      display: none; } }

@media only screen and (min-width: 900px) {
  .single-product main #tab-table_of_contents_tab {
    text-align: center; }
    .single-product main #tab-table_of_contents_tab.expanded .toc-wrapper:after {
      content: none; }
    .single-product main #tab-table_of_contents_tab .toc-wrapper {
      position: relative;
      max-height: 350px;
      overflow: hidden;
      text-align: left;
      transition: max-height .5s; }
      .single-product main #tab-table_of_contents_tab .toc-wrapper:after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 70px;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%); }
    .single-product main #tab-table_of_contents_tab button {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s;
      margin-top: 30px; }
      .single-product main #tab-table_of_contents_tab button:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
      .single-product main #tab-table_of_contents_tab button:after {
        content: ' more'; }
    .single-product main #tab-table_of_contents_tab.no-expand .toc-wrapper {
      max-height: none; }
      .single-product main #tab-table_of_contents_tab.no-expand .toc-wrapper:after {
        content: none; }
    .single-product main #tab-table_of_contents_tab.no-expand button {
      display: none; }
    .single-product main #tab-table_of_contents_tab.expanded button:after {
      content: ' less'; } }

@media only screen and (max-width: 900px) {
  .single-product main .product-content .description {
    margin-bottom: 0; }
  .single-product main .woocommerce-tabs {
    margin-top: 0;
    margin-bottom: 40px; }
  .single-product main .wc-tabs {
    display: none; }
  .single-product main .woocommerce-Tabs-panel {
    display: block !important; }
    .single-product main .woocommerce-Tabs-panel > h2 {
      display: block; }
    .single-product main .woocommerce-Tabs-panel > div {
      overflow: hidden;
      height: 0; }
      .single-product main .woocommerce-Tabs-panel > div > div {
        padding: 30px 0; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li {
    width: 100%;
    margin-bottom: 0; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li:first-child > div {
      padding-top: 0;
      border-top: none; }
    .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li > div {
      padding-top: 25px;
      padding-bottom: 25px;
      border-top: 1px solid #eff2f7; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper > ul > li {
    width: 33.33%;
    margin-bottom: 20px; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab button {
    display: none; }
  .single-product main .woocommerce-Tabs-panel--online_resources_tab li {
    width: 33.33%;
    margin-bottom: 20px; } }

@media only screen and (max-width: 750px) {
  .single-product main .main-content-wrapper .product {
    padding-left: 0;
    padding-right: 0; }
  .single-product main .summary-wrapper {
    padding-left: 0; }
  .single-product main .woocommerce-product-gallery {
    *zoom: 1;
    clear: both;
    width: 100%;
    margin-left: 0;
    float: none;
    padding-left: 200px;
    padding-bottom: 4.11765rem; }
    .single-product main .woocommerce-product-gallery:before, .single-product main .woocommerce-product-gallery:after {
      content: " ";
      display: table; }
    .single-product main .woocommerce-product-gallery:after {
      clear: both; }
    .single-product main .woocommerce-product-gallery figure {
      width: 180px;
      margin-left: -200px;
      float: left; }
    .single-product main .woocommerce-product-gallery .preview {
      position: absolute;
      left: 0;
      bottom: 0; }
    .single-product main .woocommerce-product-gallery .mobile-product-info {
      display: block; }
  .single-product main .summary .year-level,
  .single-product main .summary h1,
  .single-product main .summary .price {
    display: none; }
  .single-product main .price-wrapper {
    margin: 20px 0 25px 0; } }

@media only screen and (max-width: 700px) {
  .single-product main .upsells ul.products {
    margin-left: -10px;
    margin-right: -10px; }
    .single-product main .upsells ul.products li {
      padding-left: 10px;
      padding-right: 10px; } }

@media only screen and (max-width: 650px) {
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper > ul > li {
    width: 50%;
    margin-bottom: 0; } }

@media only screen and (max-width: 600px) {
  .single-product main .upsells ul.products li {
    width: 50%; } }

@media only screen and (max-width: 500px) {
  .single-product main .woocommerce-product-gallery {
    padding-left: 150px; }
    .single-product main .woocommerce-product-gallery figure {
      width: 130px;
      margin-left: -150px; }
    .single-product main .woocommerce-product-gallery .mobile-product-info .year-level {
      font-size: 8px; }
    .single-product main .woocommerce-product-gallery .mobile-product-info h1 {
      font-size: 19px; }
    .single-product main .woocommerce-product-gallery .mobile-product-info .price {
      font-size: 17px; }
      .single-product main .woocommerce-product-gallery .mobile-product-info .price .per {
        font-size: 10px; }
  .single-product main .price-wrapper .quantity:before {
    content: 'Qty.';
    font-weight: bold; }
  .single-product main .price-wrapper .quantity span {
    display: none; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li > div {
    padding-left: 160px; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li img {
    max-width: 130px;
    margin-left: -160px; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > div > ul > li .description {
    margin-top: 0; } }

@media only screen and (max-width: 400px) {
  .single-product main .woocommerce-product-gallery .preview {
    right: 0; }
  .single-product main .price-wrapper .quantity {
    margin-right: 0; }
  .single-product main .price-wrapper .single_add_to_cart_button {
    float: right; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > ul > li > div {
    padding-left: 120px; }
  .single-product main .woocommerce-Tabs-panel--features_tab > div > ul > li img {
    max-width: 100px;
    margin-left: -120px; }
  .single-product main .woocommerce-Tabs-panel--table_of_contents_tab .toc-wrapper > ul > li {
    width: 100%; }
  .single-product main .woocommerce-Tabs-panel--online_resources_tab li {
    width: 50%; } }

.woocommerce-checkout .page-content-wrapper {
  overflow: visible;
  padding-top: 0; }

.woocommerce-checkout .page-content {
  max-width: 100%;
  overflow: visible; }
  .woocommerce-checkout .page-content h3 {
    font-size: 1.47059rem;
    font-weight: bold;
    margin: 1.5em 0; }

.woocommerce-checkout .woocommerce-notices-wrapper {
  color: #2d5ee2;
  font-weight: bold;
  margin-bottom: 1rem; }
  .woocommerce-checkout .woocommerce-notices-wrapper ul {
    list-style: none;
    padding: 0; }

.woocommerce-checkout form.checkout {
  *zoom: 1;
  clear: both; }
  .woocommerce-checkout form.checkout:before, .woocommerce-checkout form.checkout:after {
    content: " ";
    display: table; }
  .woocommerce-checkout form.checkout:after {
    clear: both; }
  .woocommerce-checkout form.checkout .woocommerce-NoticeGroup {
    width: 100%; }
  .woocommerce-checkout form.checkout #customer_details,
  .woocommerce-checkout form.checkout .order-review-wrapper {
    width: 50%; }
  .woocommerce-checkout form.checkout #customer_details {
    padding-right: 40px;
    float: left; }
  .woocommerce-checkout form.checkout .order-review-wrapper {
    padding-left: 40px;
    float: right; }
  @media only screen and (max-width: 1000px) {
    .woocommerce-checkout form.checkout {
      display: block; }
      .woocommerce-checkout form.checkout #customer_details,
      .woocommerce-checkout form.checkout .order-review-wrapper {
        width: 100%;
        padding: 0; } }

.woocommerce-checkout .cart-empty > h2 {
  text-align: center; }

.woocommerce-checkout .woocommere-checkout-wrapper {
  *zoom: 1;
  clear: both;
  padding-top: 3.52941rem; }
  .woocommerce-checkout .woocommere-checkout-wrapper:before, .woocommerce-checkout .woocommere-checkout-wrapper:after {
    content: " ";
    display: table; }
  .woocommerce-checkout .woocommere-checkout-wrapper:after {
    clear: both; }
  .woocommerce-checkout .woocommere-checkout-wrapper > div {
    width: 50%;
    padding-left: 2.35294rem;
    padding-right: 2.35294rem;
    margin-bottom: 3.82353rem; }

.woocommerce-checkout .woocommerce-info {
  margin-bottom: 10px; }

.woocommerce-checkout .checkout-login {
  margin-bottom: 1.17647rem;
  border-bottom: 0.23529rem solid #eff2f7;
  overflow: hidden;
  width: 50%; }
  @media only screen and (max-width: 1400px) {
    .woocommerce-checkout .checkout-login {
      width: 66.66%; } }
  @media only screen and (max-width: 1000px) {
    .woocommerce-checkout .checkout-login {
      width: 100%; } }
  .woocommerce-checkout .checkout-login > div {
    *zoom: 1;
    clear: both;
    position: relative; }
    .woocommerce-checkout .checkout-login > div:before, .woocommerce-checkout .checkout-login > div:after {
      content: " ";
      display: table; }
    .woocommerce-checkout .checkout-login > div:after {
      clear: both; }
  .woocommerce-checkout .checkout-login .woocommerce-form-login {
    text-align: center;
    padding: 1.76471rem;
    border-style: solid;
    border-color: #d4d4d4;
    border-left-width: 1px;
    border-top-width: 1px;
    border-bottom-width: 1px;
    border-right-width: 0px;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    float: left;
    width: 53%; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login h3 {
      font-size: 1rem;
      font-weight: bold;
      margin-top: 0; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login .message {
      margin-bottom: 1.76471rem; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login .form-row {
      position: relative;
      display: block;
      border: 1px solid #d4d4d4;
      border-radius: 0.29412rem;
      width: 100%;
      margin-bottom: 0.88235rem; }
      .woocommerce-checkout .checkout-login .woocommerce-form-login .form-row > label {
        position: absolute;
        left: 0;
        top: 0;
        height: 3.23529rem;
        line-height: 3.23529rem;
        padding: 0 1em;
        pointer-events: none; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login input {
      border: none; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login input[type=submit] {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s; }
      .woocommerce-checkout .checkout-login .woocommerce-form-login input[type=submit]:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login .checkbox {
      display: none; }
    .woocommerce-checkout .checkout-login .woocommerce-form-login .lost_password {
      margin: 0; }
      .woocommerce-checkout .checkout-login .woocommerce-form-login .lost_password a {
        color: #2d5ee2;
        font-size: 0.76471rem;
        text-decoration: none; }
  .woocommerce-checkout .checkout-login .sign-up {
    padding: 1.76471rem;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 47%;
    background-color: #2d5ee2;
    color: white;
    border-top-right-radius: 0.58824rem;
    border-bottom-right-radius: 0.58824rem;
    text-align: center; }
    .woocommerce-checkout .checkout-login .sign-up > div {
      display: table;
      height: 100%;
      width: 100%; }
      .woocommerce-checkout .checkout-login .sign-up > div > div {
        display: table-cell;
        vertical-align: middle; }
    .woocommerce-checkout .checkout-login .sign-up a {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s; }
      .woocommerce-checkout .checkout-login .sign-up a:hover {
        background-color: #2d5ee2;
        color: #ffffff; }

.woocommerce-checkout form.checkout abbr[title] {
  text-decoration: none;
  color: #f0911e; }

.woocommerce-checkout form.checkout #ship-to-different-address label {
  float: none; }

.woocommerce-checkout form.checkout .woocommerce-shipping-fields__field-wrapper > h3 {
  margin-top: 0; }

.woocommerce-checkout form.checkout #shipping_method {
  list-style: none; }
  .woocommerce-checkout form.checkout #shipping_method li:last-child label {
    margin-bottom: 0; }
  .woocommerce-checkout form.checkout #shipping_method label {
    border: 0;
    text-align: left;
    margin: 0 0 1rem 15px;
    width: calc( 100% - 15px);
    float: none; }
  .woocommerce-checkout form.checkout #shipping_method .radio input[type="radio"] + span {
    position: absolute;
    left: -40px; }
  .woocommerce-checkout form.checkout #shipping_method .text, .woocommerce-checkout form.checkout #shipping_method .shipping-extra {
    display: inline-block;
    font-size: 12px;
    width: calc(100% - 100px); }
  .woocommerce-checkout form.checkout #shipping_method .shipping-extra {
    display: none; }
  .woocommerce-checkout form.checkout #shipping_method input[type="radio"]:checked ~ .shipping-extra {
    display: block; }
  .woocommerce-checkout form.checkout #shipping_method .amount {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 23px; }

.woocommerce-checkout form.checkout .shipping > td {
  position: relative; }
  .woocommerce-checkout form.checkout .shipping > td .amount:first-of-type {
    display: none; }
  .woocommerce-checkout form.checkout .shipping > td .amount:first-of-type:last-of-type {
    display: block; }
  .woocommerce-checkout form.checkout .shipping > td > .text, .woocommerce-checkout form.checkout .shipping > td > .shipping-extra {
    display: inline-block;
    font-size: 12px;
    width: calc(100% - 100px);
    text-align: left;
    padding-right: 80px; }
  .woocommerce-checkout form.checkout .shipping > td > .shipping-extra {
    display: none; }
  .woocommerce-checkout form.checkout .shipping > td > .text .amount {
    position: absolute;
    top: 50%;
    right: 0;
    font-size: 23px;
    transform: translateY(-50%); }

.woocommerce-checkout .shipping_method_label {
  position: absolute;
  visibility: hidden; }

.woocommerce-checkout .order-review-wrapper .cart_totals {
  margin-top: 2.35294rem;
  width: 100%; }
  .woocommerce-checkout .order-review-wrapper .cart_totals th, .woocommerce-checkout .order-review-wrapper .cart_totals td {
    border-top: 1px solid #d4d4d4;
    padding: 0.88235rem 0; }
  .woocommerce-checkout .order-review-wrapper .cart_totals th {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    text-align: left; }
  .woocommerce-checkout .order-review-wrapper .cart_totals td {
    text-align: right;
    font-weight: bold;
    font-size: 1.52941rem; }
  .woocommerce-checkout .order-review-wrapper .cart_totals .cart_subtotal th, .woocommerce-checkout .order-review-wrapper .cart_totals .cart_subtotal td {
    border-top: none; }
  .woocommerce-checkout .order-review-wrapper .cart_totals .order-total > td > strong > .amount {
    color: #2d5ee2;
    font-size: 2rem; }
  .woocommerce-checkout .order-review-wrapper .cart_totals .order-total small {
    font-size: 60%;
    display: inline-block; }

@media only screen and (max-width: 600px) {
  .woocommerce-checkout .order-review-wrapper .cart_totals {
    max-width: 100%;
    padding: 0 20px;
    margin-top: 0;
    background-color: #f9f9f9; }
  .woocommerce-checkout .order-review-wrapper #payment {
    margin-left: -10px;
    margin-right: -10px; } }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment ul {
  list-style: none;
  margin: 0;
  padding: 0; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_methods {
  border-top: 1px solid #d4d4d4; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_method > label {
  *zoom: 1;
  clear: both;
  float: none;
  margin: 0;
  padding: 1.47059rem 0;
  border: 0;
  cursor: pointer;
  border-bottom: 1px solid #d4d4d4;
  line-height: 2.47059rem;
  border-radius: 0;
  width: 100%;
  font-weight: bold; }
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_method > label:before, .woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_method > label:after {
    content: " ";
    display: table; }
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_method > label:after {
    clear: both; }
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_method > label img {
    width: auto;
    height: 2.47059rem;
    float: right; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .payment_box {
  padding: 1.76471rem;
  background-color: #f9f9f9;
  border-bottom: 1px solid #d4d4d4; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .payment_method_stripe .payment_box fieldset {
  margin: 0; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .payment_method_stripe .payment_box label {
  display: none; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .payment_method_paypal .about_paypal {
  font-size: .8em;
  font-weight: normal;
  margin-left: 1em;
  text-decoration: underline; }

.woocommerce-checkout form.checkout .woocommerce-checkout-payment .place-order {
  text-align: center; }
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .place-order button {
    display: inline-block;
    width: 100%;
    max-width: 33.64706rem;
    text-transform: none;
    height: 5.17647rem;
    line-height: 5.17647rem;
    font-size: 1.47059rem;
    letter-spacing: inherit;
    background-color: #2d5ee2;
    color: #ffffff;
    border: none;
    border-radius: 9999em;
    font-weight: bold;
    transition: .15s;
    cursor: pointer; }
    .woocommerce-checkout form.checkout .woocommerce-checkout-payment .place-order button:hover {
      background-color: #1e3c8b; }
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .place-order label.subscribe {
    margin: 1.76471rem 0 5.58824rem 0;
    text-align: left;
    font-weight: bold; }
    .woocommerce-checkout form.checkout .woocommerce-checkout-payment .place-order label.subscribe span {
      font-weight: normal; }

@media only screen and (max-width: 600px) {
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .wc_payment_method > label {
    padding-left: 10px;
    padding-right: 10px; }
  .woocommerce-checkout form.checkout .woocommerce-checkout-payment .payment_box {
    padding: 30px 10px 10px 10px; } }

.woocommerce-customer-details th {
  padding-right: 5px; }

.woocommerce-address-fields label.billing_first_name, .woocommerce-address-fields label.billing_last_name, .woocommerce-address-fields label.billing_email, .woocommerce-address-fields label.billing_phone, .woocommerce-address-fields label.billing_postcode, .woocommerce-address-fields label.select,
.woocommerce-billing-fields label.billing_first_name,
.woocommerce-billing-fields label.billing_last_name,
.woocommerce-billing-fields label.billing_email,
.woocommerce-billing-fields label.billing_phone,
.woocommerce-billing-fields label.billing_postcode,
.woocommerce-billing-fields label.select {
  width: calc(50% - 30px);
  clear: none; }

@media only screen and (max-width: 700px) {
  .woocommerce-address-fields label,
  .woocommerce-billing-fields label {
    width: 100% !important; } }

.woocommerce-address-fields label.shipping_first_name, .woocommerce-address-fields label.shipping_last_name, .woocommerce-address-fields label.shipping_phone, .woocommerce-address-fields label.shipping_postcode, .woocommerce-address-fields label.select,
.woocommerce-shipping-fields label.shipping_first_name,
.woocommerce-shipping-fields label.shipping_last_name,
.woocommerce-shipping-fields label.shipping_phone,
.woocommerce-shipping-fields label.shipping_postcode,
.woocommerce-shipping-fields label.select {
  width: calc(50% - 30px);
  clear: none; }

@media only screen and (max-width: 700px) {
  .woocommerce-address-fields label,
  .woocommerce-shipping-fields label {
    width: 100% !important; } }

form.checkout_coupon {
  display: block !important;
  position: absolute !important;
  visibility: hidden; }

.woocommerce-cart-form {
  background-color: #f9f9f9;
  margin-bottom: 3.52941rem;
  *zoom: 1;
  clear: both;
  padding: 1.76471rem;
  transition: .15s; }
  .woocommerce-cart-form:before, .woocommerce-cart-form:after {
    content: " ";
    display: table; }
  .woocommerce-cart-form:after {
    clear: both; }
  .woocommerce-cart-form .cart-table {
    display: table;
    width: 100%; }
  .woocommerce-cart-form > h3 {
    margin-top: 0.3em; }
  .woocommerce-cart-form .shop_table_header {
    display: table-header-group;
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    line-height: 1; }
  .woocommerce-cart-form .shop_table_header_row {
    display: table-row; }
    .woocommerce-cart-form .shop_table_header_row > div {
      display: table-cell;
      padding-bottom: 1.17647rem;
      border-bottom: 1px solid #d4d4d4; }
    .woocommerce-cart-form .shop_table_header_row .product-quantity {
      text-align: center; }
    .woocommerce-cart-form .shop_table_header_row .product-subtotal {
      text-align: right; }
  .woocommerce-cart-form .shop_table_body {
    display: table-row-group; }
    .woocommerce-cart-form .shop_table_body .cart_item {
      display: table-row; }
      .woocommerce-cart-form .shop_table_body .cart_item .product-name {
        position: relative; }
      .woocommerce-cart-form .shop_table_body .cart_item > div {
        display: table-cell;
        vertical-align: middle;
        padding-top: 1.76471rem;
        padding-bottom: 1.76471rem;
        border-bottom: 1px solid #d4d4d4; }
      .woocommerce-cart-form .shop_table_body .cart_item .remove {
        position: absolute;
        top: 50%;
        left: -17px;
        margin-top: -20px;
        color: red; }
    .woocommerce-cart-form .shop_table_body .product-name {
      *zoom: 1;
      clear: both;
      padding: 0 2.35294rem 0 7.05882rem;
      max-width: 16.47059rem; }
      .woocommerce-cart-form .shop_table_body .product-name:before, .woocommerce-cart-form .shop_table_body .product-name:after {
        content: " ";
        display: table; }
      .woocommerce-cart-form .shop_table_body .product-name:after {
        clear: both; }
      .woocommerce-cart-form .shop_table_body .product-name .thumbnail {
        display: block;
        float: left;
        width: 5.35294rem;
        margin-left: -7.05882rem; }
        .woocommerce-cart-form .shop_table_body .product-name .thumbnail img {
          display: block;
          max-width: 5.35294rem;
          height: auto; }
      .woocommerce-cart-form .shop_table_body .product-name > div {
        float: right;
        width: 100%; }
    .woocommerce-cart-form .shop_table_body .product-information .year-level {
      font-size: 0.88235rem;
      font-weight: bold;
      letter-spacing: 0.14706rem;
      text-transform: uppercase;
      display: block;
      font-size: 0.76471rem; }
    .woocommerce-cart-form .shop_table_body .product-information .title {
      font-size: 1.64706rem;
      font-weight: 300;
      text-decoration: none;
      color: #3b3b3b;
      display: inline-block;
      margin: 0.17647rem 0 0.47059rem 0;
      line-height: 1.3; }
    .woocommerce-cart-form .shop_table_body .product-information .publication {
      display: block;
      font-size: 0.88235rem; }
    .woocommerce-cart-form .shop_table_body .product-information .variation {
      display: flex; }
      .woocommerce-cart-form .shop_table_body .product-information .variation dt {
        font-weight: bold; }
      .woocommerce-cart-form .shop_table_body .product-information .variation dd {
        margin: 0 0 0 .5em; }
      .woocommerce-cart-form .shop_table_body .product-information .variation p {
        margin: 0; }
    .woocommerce-cart-form .shop_table_body .product-quantity {
      text-align: center; }
      .woocommerce-cart-form .shop_table_body .product-quantity input[type=number] {
        width: auto;
        border: 1px solid #d4d4d4;
        height: 2.94118rem;
        line-height: 2.94118rem;
        max-width: 3.23529rem;
        display: inline-block;
        text-align: center;
        padding-left: 0.29412rem;
        padding-right: 0.29412rem;
        -moz-appearance: textfield; }
        .woocommerce-cart-form .shop_table_body .product-quantity input[type=number]::-webkit-inner-spin-button, .woocommerce-cart-form .shop_table_body .product-quantity input[type=number]::-webkit-outer-spin-button {
          -webkit-appearance: none;
          margin: 0; }
    .woocommerce-cart-form .shop_table_body .product-subtotal {
      text-align: right;
      font-weight: bold;
      font-size: 1.52941rem; }
  .woocommerce-cart-form .actions {
    display: flex;
    flex-flow: row-reverse;
    justify-content: space-between; }
    .woocommerce-cart-form .actions [name="update_cart"] {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s;
      border-radius: 5px;
      height: 3.4rem;
      margin-top: 1rem; }
      .woocommerce-cart-form .actions [name="update_cart"]:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
      .woocommerce-cart-form .actions [name="update_cart"]:disabled {
        opacity: .4; }
        .woocommerce-cart-form .actions [name="update_cart"]:disabled:hover {
          background-color: white;
          cursor: default; }
  @media only screen and (max-width: 600px) {
    .woocommerce-cart-form {
      padding: 0;
      background: transparent; }
      .woocommerce-cart-form > h3 {
        padding: 0 20px; }
      .woocommerce-cart-form .shop_table_wrapper,
      .woocommerce-cart-form .shop_table_body {
        display: block; }
      .woocommerce-cart-form .shop_table_header {
        display: none; }
      .woocommerce-cart-form .shop_table_body .cart_item {
        *zoom: 1;
        clear: both;
        display: block;
        padding: 0 20px;
        background-color: #f9f9f9;
        margin-bottom: 22px; }
        .woocommerce-cart-form .shop_table_body .cart_item:before, .woocommerce-cart-form .shop_table_body .cart_item:after {
          content: " ";
          display: table; }
        .woocommerce-cart-form .shop_table_body .cart_item:after {
          clear: both; }
        .woocommerce-cart-form .shop_table_body .cart_item > div {
          display: block;
          border-bottom: none; }
          .woocommerce-cart-form .shop_table_body .cart_item > div.product-name {
            border-bottom: 2px solid #eff2f7; }
      .woocommerce-cart-form .shop_table_body .product-name {
        padding: 0 0 0 7.05882rem;
        max-width: 100%; }
      .woocommerce-cart-form .shop_table_body .product-quantity {
        width: 45%;
        float: left;
        text-align: left; }
      .woocommerce-cart-form .shop_table_body .product-subtotal {
        width: 55%;
        float: right;
        text-align: left; }
      .woocommerce-cart-form .actions {
        display: block; }
        .woocommerce-cart-form .actions [name="update_cart"] {
          float: right; } }

.coupon-code {
  display: flex;
  float: left;
  width: 50%;
  margin-top: 1rem;
  text-align: left; }
  .woocommerce-cart-form.has-errors .coupon-code {
    display: none; }
  .coupon-code label {
    flex: 1;
    margin-left: 0;
    margin-bottom: 0; }
  .coupon-code button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    border-radius: 5px;
    height: 3.4rem; }
    .coupon-code button:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
  @media only screen and (max-width: 700px) {
    .coupon-code label {
      margin-right: 10px; } }
  @media only screen and (max-width: 600px) {
    .coupon-code {
      width: 100%;
      margin-left: 0;
      margin-right: 0; } }

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap; }
  .woocommerce-billing-fields__field-wrapper h3,
  .woocommerce-shipping-fields__field-wrapper h3 {
    width: 100%; }
  .woocommerce-billing-fields__field-wrapper .billing_first_name, .woocommerce-billing-fields__field-wrapper .shipping_first_name,
  .woocommerce-shipping-fields__field-wrapper .billing_first_name,
  .woocommerce-shipping-fields__field-wrapper .shipping_first_name {
    order: 10; }
  .woocommerce-billing-fields__field-wrapper .billing_last_name, .woocommerce-billing-fields__field-wrapper .shipping_last_name,
  .woocommerce-shipping-fields__field-wrapper .billing_last_name,
  .woocommerce-shipping-fields__field-wrapper .shipping_last_name {
    order: 20; }
  .woocommerce-billing-fields__field-wrapper .billing_company, .woocommerce-billing-fields__field-wrapper .shipping_company,
  .woocommerce-shipping-fields__field-wrapper .billing_company,
  .woocommerce-shipping-fields__field-wrapper .shipping_company {
    order: 30; }
  .woocommerce-billing-fields__field-wrapper .billing_email, .woocommerce-billing-fields__field-wrapper .shipping_email,
  .woocommerce-shipping-fields__field-wrapper .billing_email,
  .woocommerce-shipping-fields__field-wrapper .shipping_email {
    order: 40; }
  .woocommerce-billing-fields__field-wrapper .billing_phone, .woocommerce-billing-fields__field-wrapper .shipping_phone,
  .woocommerce-shipping-fields__field-wrapper .billing_phone,
  .woocommerce-shipping-fields__field-wrapper .shipping_phone {
    order: 50; }
  .woocommerce-billing-fields__field-wrapper .billing_address_1, .woocommerce-billing-fields__field-wrapper .shipping_address_1,
  .woocommerce-shipping-fields__field-wrapper .billing_address_1,
  .woocommerce-shipping-fields__field-wrapper .shipping_address_1 {
    order: 60; }
  .woocommerce-billing-fields__field-wrapper .billing_city, .woocommerce-billing-fields__field-wrapper .shipping_city,
  .woocommerce-shipping-fields__field-wrapper .billing_city,
  .woocommerce-shipping-fields__field-wrapper .shipping_city {
    order: 70; }
  .woocommerce-billing-fields__field-wrapper .select,
  .woocommerce-shipping-fields__field-wrapper .select {
    order: 80; }
  .woocommerce-billing-fields__field-wrapper .billing_postcode, .woocommerce-billing-fields__field-wrapper .shipping_postcode,
  .woocommerce-shipping-fields__field-wrapper .billing_postcode,
  .woocommerce-shipping-fields__field-wrapper .shipping_postcode {
    order: 90; }

.page--my-account main .page-content {
  max-width: 100%; }

.page--my-account main .ee-dashboard {
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex; }

.page--my-account main .ee-account-wrapper {
  flex: 1;
  padding-right: 2.35294rem; }

.page--my-account main .ee-account-nav,
.page--my-account main .ee-account-previous-purchases {
  width: 23.52941rem;
  padding-left: 2.35294rem; }

.page--my-account main .ee-account-previous-purchases {
  text-align: center; }
  .page--my-account main .ee-account-previous-purchases ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left; }
  .page--my-account main .ee-account-previous-purchases li {
    *zoom: 1;
    clear: both;
    padding: 1.76471rem 0 1.76471rem 5.29412rem;
    border-bottom: 1px #ededed solid; }
    .page--my-account main .ee-account-previous-purchases li:before, .page--my-account main .ee-account-previous-purchases li:after {
      content: " ";
      display: table; }
    .page--my-account main .ee-account-previous-purchases li:after {
      clear: both; }
  .page--my-account main .ee-account-previous-purchases img {
    width: 4.11765rem;
    float: left;
    margin-left: -5.29412rem; }
  .page--my-account main .ee-account-previous-purchases .year-level {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    display: block;
    font-size: 0.64706rem; }
    .page--my-account main .ee-account-previous-purchases .year-level span:after {
      content: ' \25CF'; }
  .page--my-account main .ee-account-previous-purchases h4 {
    font-size: 1.47059rem;
    font-weight: 300;
    line-height: 1.2;
    margin: 0.58824rem 0; }
  .page--my-account main .ee-account-previous-purchases .publication {
    font-size: 0.88235rem; }
    .page--my-account main .ee-account-previous-purchases .publication strong {
      display: block; }
  .page--my-account main .ee-account-previous-purchases .view-more {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-transform: none;
    letter-spacing: 0;
    margin-top: 2.35294rem;
    height: 2.94118rem;
    font-size: 1rem; }
    .page--my-account main .ee-account-previous-purchases .view-more:hover {
      background-color: #2d5ee2;
      color: #ffffff; }
    .page--my-account main .ee-account-previous-purchases .view-more:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: "";
      font-size: 2rem;
      vertical-align: middle;
      margin-right: 0.58824rem; }

.page--my-account main .ee-digital-books form .legal {
  margin: 10px 0;
  padding: 0 1px;
  width: 100%; }
  .page--my-account main .ee-digital-books form .legal small {
    display: block;
    font-size: 70%; }

.page--my-account main .login-register-forms {
  display: flex;
  justify-content: space-between;
  width: 100%; }
  .page--my-account main .login-register-forms .login-form {
    display: block;
    width: 45%;
    padding-right: 25px; }
  .page--my-account main .login-register-forms .register-form {
    display: block;
    width: 45%;
    padding-left: 25px; }
    .page--my-account main .login-register-forms .register-form button {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s;
      background-color: #2d5ee2;
      border-color: #2d5ee2;
      color: white; }
      .page--my-account main .login-register-forms .register-form button:hover {
        background-color: #2d5ee2;
        color: #ffffff; }
      .page--my-account main .login-register-forms .register-form button:hover {
        background-color: #071741;
        border-color: #071741; }
  @media only screen and (max-width: 700px) {
    .page--my-account main .login-register-forms {
      flex-direction: column; }
      .page--my-account main .login-register-forms .login-form {
        padding-right: 0;
        width: 100%; }
      .page--my-account main .login-register-forms .register-form {
        padding-left: 0;
        width: 100%;
        margin-top: 40px; } }
  .page--my-account main .login-register-forms + .ee-account-nav, .page--my-account main .login-register-forms ~ .ee-account-previous-purchases {
    display: none; }
  .page--my-account main .login-register-forms .account-type label {
    position: relative;
    cursor: pointer;
    border: none;
    margin-bottom: 0; }
  .page--my-account main .login-register-forms .account-type input[type="radio"] {
    position: absolute;
    visibility: hidden; }
    .page--my-account main .login-register-forms .account-type input[type="radio"] + span:before {
      font-size: 30px;
      margin-right: 16px; }
    .page--my-account main .login-register-forms .account-type input[type="radio"][value="student"] + span:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
    .page--my-account main .login-register-forms .account-type input[type="radio"][value="teacher"] + span:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
  .page--my-account main .login-register-forms .account-type input[type="radio"] + span {
    display: block;
    padding: 10px 0;
    color: #d8d8d8;
    border-bottom: 2px solid #d8d8d8;
    transition: all .15s; }
  .page--my-account main .login-register-forms .account-type input[type="radio"]:checked + span {
    color: #3b3b3b;
    border-bottom-color: #2de2c3; }

.page--my-account main h2 {
  font-size: 1.471em;
  font-weight: bold;
  text-align: left;
  border-bottom: 1px #ededed solid;
  margin: 0;
  padding-bottom: 2.35294rem; }

.page--my-account main h3 {
  font-size: 0.88235rem;
  font-weight: bold;
  letter-spacing: 0.14706rem;
  text-transform: uppercase; }

.page--my-account main .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 1.76471rem;
  font-size: 1rem; }

.page--my-account main .woocommerce-MyAccount-navigation li {
  margin-bottom: 0.70588rem; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard a:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: ""; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--digital-books a:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    left: 0.05882rem; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--digital-books a:after {
    color: #2de2c3;
    content: 'New';
    font-weight: bold;
    margin-left: .6em;
    text-transform: uppercase; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders a:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: ""; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads a:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: ""; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address a:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: ""; }
  .page--my-account main .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    left: 0.11765rem; }

.page--my-account main .woocommerce-MyAccount-navigation a {
  position: relative;
  padding-left: 2.05882rem; }
  .page--my-account main .woocommerce-MyAccount-navigation a:before {
    position: absolute;
    left: 0;
    top: -0.11765rem; }

.page--my-account main .ee-digital-books h2 {
  margin-bottom: 1.76471rem; }

.page--my-account main .ee-digital-books form {
  display: flex;
  flex-wrap: wrap;
  margin: 3.29412rem 0 3.05882rem; }
  .page--my-account main .ee-digital-books form output {
    border: thin solid;
    border-radius: 5px;
    display: block;
    margin-bottom: 0.94118rem;
    padding: 0.94118rem 0.94118rem 0.82353rem;
    width: 100%; }
    .page--my-account main .ee-digital-books form output.status--success {
      background: rgba(45, 226, 195, 0.1);
      border-color: #2de2c3;
      color: #1bc1a5; }
    .page--my-account main .ee-digital-books form output.status--error {
      background: rgba(237, 110, 88, 0.1);
      color: #ed6e58; }
  .page--my-account main .ee-digital-books form label {
    flex: 1 1;
    margin: 0 1.41176rem 0 0; }
  .page--my-account main .ee-digital-books form button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s;
    flex: 0 0;
    font: inherit;
    font-size: 1rem;
    font-weight: bold;
    height: 3.35294rem;
    letter-spacing: 0;
    line-height: 3.52941rem;
    padding: 0 2.47059rem;
    min-width: auto; }
    .page--my-account main .ee-digital-books form button:hover {
      background-color: #2d5ee2;
      color: #ffffff; }

.page--my-account main .ee-digital-books .no-books {
  border: thin dashed;
  margin: 5.41176rem 0 0;
  padding: 5.41176rem 1.88235rem;
  text-align: center; }
  .page--my-account main .ee-digital-books .no-books p {
    margin: 1em auto;
    max-width: 22em; }

.page--my-account main .ee-digital-books .books {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: -1.29412rem 0 -1.29412rem -1.52941rem;
  padding: 0; }
  .page--my-account main .ee-digital-books .books li {
    float: left;
    padding: 1.29412rem 1.52941rem;
    width: 33.33%; }
  .page--my-account main .ee-digital-books .books a {
    color: inherit;
    display: block; }
  .page--my-account main .ee-digital-books .books .code {
    color: #2d5ee2;
    font-family: "Helvetica Neue";
    font-size: 0.70588rem;
    font-weight: bold;
    height: 1.2em;
    text-transform: uppercase;
    letter-spacing: .1em;
    line-height: 1.2;
    margin-bottom: 0.47059rem; }
    .page--my-account main .ee-digital-books .books .code .expired {
      color: red; }
  .page--my-account main .ee-digital-books .books .thumbnail {
    background: #2d5ee2 no-repeat center/cover;
    margin-bottom: 1.41176rem;
    padding-top: 139.5%;
    position: relative; }
    .page--my-account main .ee-digital-books .books .thumbnail > div {
      background-color: rgba(30, 60, 139, 0.9);
      border: 4px solid #2de2c3;
      bottom: 0;
      color: #ffffff;
      display: flex;
      flex-direction: column;
      font-weight: bold;
      justify-content: center;
      left: 0;
      opacity: 0;
      position: absolute;
      right: 0;
      text-align: center;
      top: 0;
      transition: opacity .15s; }
      .page--my-account main .ee-digital-books .books .thumbnail > div:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: "";
        display: block;
        font-size: 2.2em;
        margin-bottom: .1em; }
  .page--my-account main .ee-digital-books .books .year-level {
    display: block;
    font-size: 0.82353rem;
    font-weight: 700;
    margin-bottom: 4px;
    text-transform: uppercase; }
    .page--my-account main .ee-digital-books .books .year-level span:after {
      content: ' \25CF ';
      display: inline-block;
      font-size: 0.58824rem;
      vertical-align: 0.12941rem;
      margin: 0 0.23529rem 0 0.52941rem; }
  .page--my-account main .ee-digital-books .books h3 {
    font-size: 1.64706rem;
    font-weight: 300;
    line-height: 1.1;
    margin: 0.47059rem 0 0;
    text-transform: none; }
  .page--my-account main .ee-digital-books .books a:hover .thumbnail > div {
    opacity: 1; }

@media (max-width: 1640px) {
  .page--my-account main .ee-digital-books .books li {
    width: 50%; } }

@media (max-width: 900px) {
  .page--my-account main .ee-digital-books .books li {
    width: 33.33%; } }

@media (max-width: 700px) {
  .page--my-account main .ee-digital-books .books {
    margin: -20px -10px; }
    .page--my-account main .ee-digital-books .books li {
      padding: 20px 10px; } }

@media (max-width: 540px) {
  .page--my-account main .ee-digital-books .books li {
    width: 50%; } }

@media (max-width: 380px) {
  .page--my-account main .ee-digital-books .books li {
    width: 100%; } }

.page--my-account main .ee-dashboard form.login .other-account-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px #ededed solid;
  margin-top: 20px; }

.page--my-account main .col2-set {
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex; }
  .page--my-account main .col2-set > div {
    width: 50%;
    padding-right: 2.35294rem; }

.page--my-account main .woocommerce-Address {
  margin-top: 1.76471rem; }
  .page--my-account main .woocommerce-Address h3 {
    margin: 0 0 0.3em 0; }
  .page--my-account main .woocommerce-Address address {
    padding-bottom: 1.17647rem;
    margin-bottom: 1.76471rem;
    font-size: 1.64706rem;
    font-weight: 300;
    font-style: normal;
    line-height: 1.3;
    border-bottom: 1px solid #ededed; }
  .page--my-account main .woocommerce-Address .edit {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s; }
    .page--my-account main .woocommerce-Address .edit:hover {
      background-color: #2d5ee2;
      color: #ffffff; }

.page--my-account main .woocommerce-Message {
  margin: 1.76471rem 0; }

@media only screen and (max-width: 1200px) {
  .page--my-account main .ee-account-previous-purchases {
    display: none; } }

@media only screen and (max-width: 900px) {
  .page--my-account main .ee-dashboard {
    display: block; }
  .page--my-account main .ee-account-wrapper,
  .page--my-account main .ee-account-nav {
    padding: 0; }
  .page--my-account main .ee-account-wrapper {
    margin-bottom: 50px; }
  .page--my-account main .ee-account-nav {
    width: 100%; } }

@media only screen and (max-width: 600px) {
  .page--my-account main .col2-set {
    display: block; }
    .page--my-account main .col2-set > div {
      width: 100%; } }

.woocommerce-order-received .woocommerce {
  *zoom: 1;
  clear: both; }
  .woocommerce-order-received .woocommerce:before, .woocommerce-order-received .woocommerce:after {
    content: " ";
    display: table; }
  .woocommerce-order-received .woocommerce:after {
    clear: both; }

.woocommerce-order-received .ee-order-thankyou,
.woocommerce-order-received .ee-order-details,
.woocommerce-order-received .ee-customer-details {
  width: 50%;
  margin-bottom: 2.35294rem; }

.woocommerce-order-received .ee-order-thankyou,
.woocommerce-order-received .ee-customer-details {
  float: left;
  padding-right: 40px; }

.woocommerce-order-received .ee-order-details {
  float: right;
  padding-left: 40px; }

@media only screen and (max-width: 1000px) {
  .woocommerce-order-received .ee-order-thankyou,
  .woocommerce-order-received .ee-order-details,
  .woocommerce-order-received .ee-customer-details {
    width: 100%;
    padding-left: 0;
    padding-right: 0; } }

.woocommerce-orders .woocommerce-orders-table {
  width: 100%; }
  .woocommerce-orders .woocommerce-orders-table thead {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase; }
  .woocommerce-orders .woocommerce-orders-table th {
    text-align: left;
    padding: 0.58824rem 0.88235rem 0.58824rem 0;
    border-bottom: 1px solid #ededed; }
  .woocommerce-orders .woocommerce-orders-table .woocommerce-orders-table__header-order-actions,
  .woocommerce-orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
    text-align: right;
    padding-right: 0; }
  .woocommerce-orders .woocommerce-orders-table tbody tr:first-of-type td {
    padding-top: 1.76471rem; }
  .woocommerce-orders .woocommerce-orders-table td {
    padding: 0.88235rem 0.88235rem 0.88235rem 0; }
  .woocommerce-orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-number {
    font-weight: bold; }
  .woocommerce-orders .woocommerce-orders-table .button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s; }
    .woocommerce-orders .woocommerce-orders-table .button:hover {
      background-color: #2d5ee2;
      color: #ffffff; }

@media only screen and (max-width: 1200px) {
  .woocommerce-orders .woocommerce-orders-table .woocommerce-orders-table__header-order-status,
  .woocommerce-orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-status {
    display: none; } }

.woocommerce-downloads .woocommerce-MyAccount-downloads {
  width: 100%; }
  .woocommerce-downloads .woocommerce-MyAccount-downloads thead {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase; }
  .woocommerce-downloads .woocommerce-MyAccount-downloads th {
    text-align: left;
    padding: 0.58824rem 0.88235rem 0.58824rem 0;
    border-bottom: 1px solid #ededed; }
  .woocommerce-downloads .woocommerce-MyAccount-downloads .download-file {
    text-align: right;
    padding-right: 0; }
  .woocommerce-downloads .woocommerce-MyAccount-downloads tbody tr:first-of-type td {
    padding-top: 1.76471rem; }
  .woocommerce-downloads .woocommerce-MyAccount-downloads td {
    padding: 0.88235rem 0.88235rem 0.88235rem 0; }
  .woocommerce-downloads .woocommerce-MyAccount-downloads .woocommerce-MyAccount-downloads-file {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    display: inline-block;
    font-size: 0.70588rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    border-width: 1px;
    border-style: solid;
    border-radius: 9999em;
    height: 2.35294rem;
    line-height: 2.35294rem;
    padding: 0 1.17647rem;
    white-space: nowrap;
    text-decoration: none;
    background-color: #ffffff;
    border-color: #d0ddf7;
    color: #2d5ee2;
    min-width: 7.11765rem;
    transition: all 0.2s; }
    .woocommerce-downloads .woocommerce-MyAccount-downloads .woocommerce-MyAccount-downloads-file:hover {
      background-color: #2d5ee2;
      color: #ffffff; }

.woocommerce-view-order .shop_table {
  background-color: #f9f9f9;
  padding: 1.76471rem;
  margin-bottom: 3.52941rem;
  *zoom: 1;
  clear: both; }
  .woocommerce-view-order .shop_table:before, .woocommerce-view-order .shop_table:after {
    content: " ";
    display: table; }
  .woocommerce-view-order .shop_table:after {
    clear: both; }
  .woocommerce-view-order .shop_table > h3 {
    display: none; }

.woocommerce-view-order .shop_table_wrapper {
  display: table;
  width: 100%; }

.woocommerce-view-order .shop_table_header {
  display: table-header-group;
  font-size: 0.88235rem;
  font-weight: bold;
  letter-spacing: 0.14706rem;
  text-transform: uppercase;
  line-height: 1; }

.woocommerce-view-order .shop_table_header_row {
  display: table-row; }
  .woocommerce-view-order .shop_table_header_row > div {
    display: table-cell;
    padding-bottom: 1.17647rem;
    border-bottom: 1px solid #d4d4d4; }
  .woocommerce-view-order .shop_table_header_row .product-quantity {
    text-align: center; }
  .woocommerce-view-order .shop_table_header_row .product-subtotal {
    text-align: right; }

.woocommerce-view-order .shop_table_body {
  display: table-row-group; }
  .woocommerce-view-order .shop_table_body .cart_item {
    display: table-row; }
    .woocommerce-view-order .shop_table_body .cart_item > div {
      display: table-cell;
      vertical-align: middle;
      padding-top: 1.76471rem;
      padding-bottom: 1.76471rem;
      border-bottom: 1px solid #d4d4d4; }
  .woocommerce-view-order .shop_table_body .product-name {
    *zoom: 1;
    clear: both;
    padding: 0 2.35294rem 0 7.05882rem;
    max-width: 16.47059rem; }
    .woocommerce-view-order .shop_table_body .product-name:before, .woocommerce-view-order .shop_table_body .product-name:after {
      content: " ";
      display: table; }
    .woocommerce-view-order .shop_table_body .product-name:after {
      clear: both; }
    .woocommerce-view-order .shop_table_body .product-name .thumbnail {
      display: block;
      float: left;
      width: 5.35294rem;
      margin-left: -7.05882rem; }
      .woocommerce-view-order .shop_table_body .product-name .thumbnail img {
        display: block;
        max-width: 5.35294rem;
        height: auto; }
    .woocommerce-view-order .shop_table_body .product-name > div {
      float: right;
      width: 100%; }
  .woocommerce-view-order .shop_table_body .product-information .year-level {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    display: block;
    font-size: 0.76471rem; }
  .woocommerce-view-order .shop_table_body .product-information .title {
    font-size: 1.64706rem;
    font-weight: 300;
    text-decoration: none;
    color: #3b3b3b;
    display: inline-block;
    margin: 0.17647rem 0 0.47059rem 0;
    line-height: 1.3; }
  .woocommerce-view-order .shop_table_body .product-information .publication {
    display: block;
    font-size: 0.88235rem; }
  .woocommerce-view-order .shop_table_body .product-quantity {
    text-align: center; }
    .woocommerce-view-order .shop_table_body .product-quantity input[type=number] {
      width: auto;
      border: 1px solid #d4d4d4;
      height: 2.94118rem;
      line-height: 2.94118rem;
      max-width: 3.23529rem;
      display: inline-block;
      text-align: center;
      padding-left: 0.29412rem;
      padding-right: 0.29412rem;
      -moz-appearance: textfield; }
      .woocommerce-view-order .shop_table_body .product-quantity input[type=number]::-webkit-inner-spin-button, .woocommerce-view-order .shop_table_body .product-quantity input[type=number]::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0; }
  .woocommerce-view-order .shop_table_body .product-subtotal {
    text-align: right;
    font-weight: bold;
    font-size: 1.52941rem; }

.woocommerce-view-order .cart_totals {
  float: right;
  margin-top: 2.35294rem;
  width: 100%;
  max-width: 29.41176rem; }
  .woocommerce-view-order .cart_totals th, .woocommerce-view-order .cart_totals td {
    border-top: 1px solid #d4d4d4;
    padding: 0.88235rem 0; }
  .woocommerce-view-order .cart_totals th {
    font-size: 0.88235rem;
    font-weight: bold;
    letter-spacing: 0.14706rem;
    text-transform: uppercase;
    text-align: left; }
  .woocommerce-view-order .cart_totals td {
    text-align: right;
    font-weight: bold;
    font-size: 1.52941rem; }
  .woocommerce-view-order .cart_totals .cart_subtotal th, .woocommerce-view-order .cart_totals .cart_subtotal td {
    border-top: none; }
  .woocommerce-view-order .cart_totals .order-total > td > strong > .amount {
    color: #2d5ee2;
    font-size: 2rem; }
  .woocommerce-view-order .cart_totals .order-total small {
    font-size: 60%;
    display: inline-block; }

@media only screen and (max-width: 600px) {
  .woocommerce-view-order .shop_table {
    margin-left: -20px;
    margin-right: -20px;
    padding: 0;
    background: transparent; }
    .woocommerce-view-order .shop_table > h3 {
      padding: 0 20px; }
  .woocommerce-view-order .shop_table_wrapper,
  .woocommerce-view-order .shop_table_body {
    display: block; }
  .woocommerce-view-order .shop_table_header {
    display: none; }
  .woocommerce-view-order .shop_table_body .cart_item {
    *zoom: 1;
    clear: both;
    display: block;
    padding: 0 20px;
    background-color: #f9f9f9;
    margin-bottom: 22px; }
    .woocommerce-view-order .shop_table_body .cart_item:before, .woocommerce-view-order .shop_table_body .cart_item:after {
      content: " ";
      display: table; }
    .woocommerce-view-order .shop_table_body .cart_item:after {
      clear: both; }
    .woocommerce-view-order .shop_table_body .cart_item > div {
      display: block;
      border-bottom: none; }
      .woocommerce-view-order .shop_table_body .cart_item > div.product-name {
        border-bottom: 2px solid #eff2f7; }
  .woocommerce-view-order .shop_table_body .product-name {
    padding: 0 0 0 7.05882rem;
    max-width: 100%; }
  .woocommerce-view-order .shop_table_body .product-quantity {
    width: 45%;
    float: left;
    text-align: left; }
  .woocommerce-view-order .shop_table_body .product-subtotal {
    width: 55%;
    float: right;
    text-align: left; }
  .woocommerce-view-order .cart_totals {
    max-width: 100%;
    padding: 0 20px;
    margin-top: 0;
    background-color: #f9f9f9; }
  .woocommerce-view-order #payment {
    margin-left: -10px;
    margin-right: -10px; } }

/*
 *  Owl Carousel - Core
 */
.owl-carousel,
.feature-products ul.products {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage,
  .feature-products ul.products .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after,
  .feature-products ul.products .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer,
  .feature-products ul.products .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item,
  .feature-products ul.products .owl-wrapper,
  .feature-products ul.products .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item,
  .feature-products ul.products .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img,
  .feature-products ul.products .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-dots.disabled,
  .feature-products ul.products .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot,
  .feature-products ul.products .owl-nav .owl-prev,
  .feature-products ul.products .owl-nav .owl-next,
  .feature-products ul.products .owl-dot {
    cursor: pointer;
    cursor: hand;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-loaded,
  .feature-products ul.products.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading,
  .feature-products ul.products.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden,
  .feature-products ul.products.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item,
  .feature-products ul.products.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item,
  .feature-products ul.products.owl-drag .owl-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab,
  .feature-products ul.products.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab; }
  .owl-carousel.owl-rtl,
  .feature-products ul.products.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item,
  .feature-products ul.products.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

body > header > .popup {
  position: fixed;
  z-index: 10;
  top: 0;
  right: 0;
  left: 0;
  height: 999em;
  background: rgba(31, 31, 31, 0.85);
  color: #3b3b3b;
  visibility: hidden;
  opacity: 0;
  transition: all .3s; }
  body > header > .popup.is-active {
    visibility: visible;
    opacity: 1; }
  body > header > .popup.browse-as > div {
    left: 30px; }
  body > header > .popup.login > div {
    right: 30px; }
  body > header > .popup form label {
    margin-bottom: 1rem; }
  body > header > .popup form.loading button {
    position: relative;
    background-color: #2d5ee2;
    color: #2d5ee2; }
    body > header > .popup form.loading button:hover {
      color: #2d5ee2; }
    body > header > .popup form.loading button:after {
      content: '';
      position: absolute;
      display: block;
      background: url("../images/loading.gif");
      width: 16px;
      height: 16px;
      top: 50%;
      left: 50%;
      margin: -8px 0 0 -8px; }
  body > header > .popup form .invalid {
    color: #ed6e58;
    font-weight: bold;
    font-size: 0.88235rem;
    margin: 0.58824rem 0 0 0;
    visibility: hidden;
    opacity: 0;
    transition: all .15s; }
  body > header > .popup form.invalid .invalid {
    opacity: 1;
    visibility: visible; }
  body > header > .popup form :last-child {
    margin-bottom: 0; }
  body > header > .popup > div {
    position: absolute;
    z-index: 1;
    width: calc( 100% - 60px);
    top: 100px;
    background: white;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.31);
    border-radius: 10px;
    text-align: center;
    max-width: 610px; }
    body > header > .popup > div:before, body > header > .popup > div:after {
      position: absolute;
      display: inline-block;
      content: '';
      z-index: -1;
      background: white;
      left: 50%; }
    body > header > .popup > div:before {
      width: 45px;
      height: 45px;
      top: -22px;
      margin-left: -22px;
      transform: rotate(45deg);
      box-shadow: 0 0 4px rgba(0, 0, 0, 0.31); }
    body > header > .popup > div:after {
      width: 90px;
      height: 45px;
      top: 0;
      margin-left: -45px; }
    body > header > .popup > div > button {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      position: absolute;
      top: 0;
      right: -40px;
      width: 20px;
      height: 20px;
      color: #404040;
      background-color: #aeaeae;
      border-radius: 50%; }
    body > header > .popup > div > div {
      padding: 18px; }
      .is-student body > header > .popup > div > div {
        display: inline-block;
        vertical-align: middle; }
        .is-student body > header > .popup > div > div:nth-child(1) {
          width: 60%; }
        .is-student body > header > .popup > div > div:nth-child(2) {
          width: 40%; }
        .is-student body > header > .popup > div > div:nth-child(2):before {
          content: '';
          position: absolute;
          top: 0;
          bottom: 0;
          left: 60%;
          right: 0;
          z-index: -1;
          border-top-right-radius: 9px;
          border-bottom-right-radius: 9px;
          background-color: #2d5ee2; }
      body > header > .popup > div > div .content {
        text-align: left; }
      body > header > .popup > div > div :first-child {
        margin-top: 0; }
      body > header > .popup > div > div a {
        color: #2d5ee2; }
        body > header > .popup > div > div a:not(.button) {
          font-size: 13px;
          text-decoration: none; }
      body > header > .popup > div > div button,
      body > header > .popup > div > div a.button {
        border: none;
        background: none;
        outline: 0;
        cursor: pointer;
        border-radius: 0;
        padding: 0;
        display: inline-block;
        font-size: 0.70588rem;
        font-weight: bold;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        border-width: 1px;
        border-style: solid;
        border-radius: 9999em;
        height: 2.35294rem;
        line-height: 2.35294rem;
        padding: 0 1.17647rem;
        white-space: nowrap;
        text-decoration: none;
        background-color: #ffffff;
        border-color: #d0ddf7;
        color: #2d5ee2;
        min-width: 7.11765rem;
        transition: all 0.2s; }
        body > header > .popup > div > div button:hover,
        body > header > .popup > div > div a.button:hover {
          background-color: #2d5ee2;
          color: #ffffff; }
      body > header > .popup > div > div:nth-child(2) {
        background-color: #2d5ee2;
        color: white; }
        body > header > .popup > div > div:nth-child(2) * {
          text-align: center; }
        body > header > .popup > div > div:nth-child(2) a:not(.button) {
          color: white; }
  @media only screen and (max-width: 720px) {
    body > header > .popup.browse-as > div {
      left: 20px; }
    body > header > .popup > div {
      width: auto;
      left: 20px;
      right: 20px;
      top: 52px;
      max-width: 100%; }
      body > header > .popup > div:before, body > header > .popup > div:after {
        display: none; }
      body > header > .popup > div button {
        display: none; } }
  @media only screen and (max-width: 600px) {
    body > header > .popup.login > div {
      right: 20px; }
    .is-student body > header > .popup > div > div {
      display: block; }
      .is-student body > header > .popup > div > div:nth-child(1), .is-student body > header > .popup > div > div:nth-child(2) {
        width: 100%; }
      .is-student body > header > .popup > div > div:nth-child(2) {
        border-radius: 0px 0px 10px 10px;
        position: relative;
        top: 2px; }
        .is-student body > header > .popup > div > div:nth-child(2):before {
          display: none; } }

.page--register main .account-type label {
  position: relative;
  cursor: pointer;
  border: none;
  margin-bottom: 0; }

.page--register main .account-type input[type="radio"] {
  position: absolute;
  visibility: hidden; }
  .page--register main .account-type input[type="radio"] + span:before {
    font-size: 30px;
    margin-right: 16px; }
  .page--register main .account-type input[type="radio"][value="student"] + span:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: ""; }
  .page--register main .account-type input[type="radio"][value="teacher"] + span:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: ""; }

.page--register main .account-type input[type="radio"] + span {
  display: block;
  padding: 10px 0;
  color: #d8d8d8;
  border-bottom: 2px solid #d8d8d8;
  transition: all .15s; }

.page--register main .account-type input[type="radio"]:checked + span {
  color: #3b3b3b;
  border-bottom-color: #2de2c3; }

.page--register main .account-type-blurb[data-account-type="teacher"] {
  display: none; }

.page--register main form {
  max-width: 45.05882rem; }
  .page--register main form .errors {
    border: 2px solid #ed6e58;
    border-radius: 5px;
    padding: 1em;
    color: #ed6e58;
    font-weight: bold;
    list-style: none; }
  .page--register main form label.woocommerce-form__label-for-checkbox {
    border: none;
    border-radius: 0; }
  .page--register main form label.error {
    border: 0; }
  .page--register main form label input {
    transition: .15s; }
  .page--register main form button {
    display: inline-block;
    width: 100%;
    max-width: 33.64706rem;
    text-transform: none;
    height: 5.17647rem;
    line-height: 5.17647rem;
    font-size: 1.47059rem;
    letter-spacing: inherit;
    background-color: #2d5ee2;
    color: #ffffff;
    border: none;
    border-radius: 9999em;
    font-weight: bold;
    transition: .15s;
    cursor: pointer;
    text-align: center;
    margin: 2em auto;
    display: block; }
    .page--register main form button:hover {
      background-color: #1e3c8b; }

@media only screen and (max-width: 800px) {
  .page--register main form {
    max-width: 100%; } }

@media only screen and (max-width: 700px) {
  .page--register main .account-type {
    margin-left: -10px;
    margin-right: -10px; }
    .page--register main .account-type label {
      width: calc( 50% - 20px);
      margin: 0 10px; }
    .page--register main .account-type input[type="radio"] + span:before {
      font-size: 20px;
      margin-right: 10px; } }

.book-preview {
  background-color: transparent; }
  .book-preview body {
    padding-top: 0;
    background-color: transparent;
    overflow: hidden; }
  .book-preview #mainContainer {
    opacity: 0;
    transition: all .3s;
    width: 65%;
    width: calc( 100% - 675px);
    padding: 0 50px;
    display: table;
    height: 100%; }
  .book-preview #viewerContextMenu {
    display: none; }
  .book-preview #magazineContainer {
    display: table-cell;
    vertical-align: middle; }
  .book-preview #magazine {
    max-width: 1000px;
    max-height: 700px; }
  .book-preview body.loaded #mainContainer {
    opacity: 1;
    background-color: #eef0ef; }
  .book-preview .next-button, .book-preview .previous-button {
    display: none !important; }
  .book-preview .ee-sidebar {
    background-color: #071741;
    color: white;
    width: 675px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 3.52941rem;
    overflow: auto; }
    .book-preview .ee-sidebar h4 {
      font-size: 0.8em; }
    .book-preview .ee-sidebar h1 {
      margin: 0.6em 0;
      font-size: 2.647em;
      font-weight: 300; }
    .book-preview .ee-sidebar h2 {
      font-size: 1rem;
      font-weight: bold;
      margin: 0 0 3em 0; }
    .book-preview .ee-sidebar .description {
      font-size: 0.933em;
      line-height: 1.6;
      max-width: 400px; }
      .book-preview .ee-sidebar .description > * {
        margin: 1em 0; }
    .book-preview .ee-sidebar .download-pdf {
      margin-top: 2em; }
  .book-preview .ee-buttons button {
    border: none;
    background: none;
    outline: 0;
    cursor: pointer;
    border-radius: 0;
    padding: 0;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #2d5ee2;
    color: white;
    position: absolute;
    top: 50%;
    margin-top: -22px;
    visibility: hidden;
    opacity: 0;
    transition: all .15s; }
    .book-preview .ee-buttons button.visible {
      visibility: visible;
      opacity: 1; }
  .book-preview .ee-buttons .previous {
    left: 35px; }
    .book-preview .ee-buttons .previous:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
  .book-preview .ee-buttons .next {
    right: 35px; }
    .book-preview .ee-buttons .next:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
  .book-preview .icon-holder {
    display: none; }
  .book-preview .close {
    display: none; }
  @media only screen and (max-width: 1800px) {
    .book-preview #mainContainer {
      width: 65%;
      width: calc(100% - 500px); }
    .book-preview .ee-sidebar {
      width: 500px;
      font-size: 14px; } }
  @media only screen and (max-width: 1400px) {
    .book-preview #mainContainer {
      width: 65%;
      width: calc(100% - 400px); }
    .book-preview .ee-sidebar {
      width: 400px;
      padding: 40px;
      font-size: 13px; } }
  @media only screen and (max-width: 1000px) {
    .book-preview #mainContainer {
      width: 100%; }
    .book-preview .ee-sidebar {
      display: none; }
    .book-preview .ee-buttons .previous {
      left: 20px; }
    .book-preview .ee-buttons .next {
      right: 20px; } }

.product-preview-container {
  position: fixed;
  z-index: 20;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: all .3s;
  background-color: #eef0ef; }
  .product-preview-container.visible {
    opacity: 1;
    visibility: visible; }
  .product-preview-container svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100px;
    height: 100px;
    margin: -50px 0 0 -50px; }
    .product-preview-container svg circle {
      -webkit-animation: spin 1s linear infinite;
              animation: spin 1s linear infinite;
      transform-origin: center;
      stroke: #2d5ee2; }
  .product-preview-container iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.product-preview-container .close,
.book-preview .close {
  border: none;
  background: none;
  outline: 0;
  cursor: pointer;
  border-radius: 0;
  padding: 0;
  position: absolute;
  top: 35px;
  right: 35px;
  color: white;
  text-decoration: none; }
  .product-preview-container .close:before,
  .book-preview .close:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    position: relative;
    z-index: 1; }

.product-preview-container .download-pdf,
.book-preview .download-pdf {
  border: none;
  background: none;
  outline: 0;
  cursor: pointer;
  border-radius: 0;
  padding: 0;
  display: inline-block;
  font-size: 0.70588rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  border-width: 1px;
  border-style: solid;
  border-radius: 9999em;
  height: 2.35294rem;
  line-height: 2.35294rem;
  padding: 0 1.17647rem;
  white-space: nowrap;
  text-decoration: none;
  background-color: #ffffff;
  border-color: #d0ddf7;
  color: #2d5ee2;
  min-width: 7.11765rem;
  transition: all 0.2s; }
  .product-preview-container .download-pdf:hover,
  .book-preview .download-pdf:hover {
    background-color: #2d5ee2;
    color: #ffffff; }

.template--digital-book {
  --sidebar-width: 22.35294rem;
  box-sizing: content-box; }
  .template--digital-book body {
    font: inherit;
    overflow: hidden;
    padding: 3.52941rem 0 0 0; }
  .template--digital-book header.digital-books {
    background: #2de2c3;
    color: #2d5ee2;
    display: flex;
    height: 3.52941rem;
    position: absolute;
    top: 0; }
    .template--digital-book header.digital-books .back {
      flex: 1; }
      .template--digital-book header.digital-books .back a {
        color: inherit;
        display: inline-block;
        font-size: 0.88235rem;
        line-height: 1.333;
        padding: 1.29412rem 0 1.05882rem 3.23529rem; }
        .template--digital-book header.digital-books .back a:before {
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-feature-settings: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          speak: none;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          /* include the requested glyph */
          content: "";
          background: #2d5ee2;
          border-radius: 0.88235rem;
          color: #ffffff;
          font-size: 0.94118rem;
          height: 1.76471rem;
          left: 1rem;
          padding: 0.41176rem 0.11765rem 0.41176rem 0;
          position: absolute;
          text-align: center;
          top: 0.88235rem;
          width: 1.76471rem; }
    .template--digital-book header.digital-books .title {
      flex: 1;
      text-align: center; }
      .template--digital-book header.digital-books .title h2 {
        display: inline-block;
        font-size: 0.64706rem;
        font-weight: 700;
        line-height: 1.18;
        letter-spacing: .1427em;
        max-width: 12em;
        padding: 1.11765rem 0 1.11765rem 3.05882rem;
        position: relative;
        text-align: left;
        text-transform: uppercase; }
        .template--digital-book header.digital-books .title h2:before {
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-feature-settings: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          speak: none;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          /* include the requested glyph */
          content: "";
          font-size: 2.35294rem;
          left: 0;
          position: absolute;
          top: 0.58824rem; }
    .template--digital-book header.digital-books .toolbar {
      align-items: center;
      display: flex;
      flex: 1;
      justify-content: flex-end;
      padding: 0 1rem 0 0; }
      .template--digital-book header.digital-books .toolbar button {
        background: none !important;
        box-shadow: none !important;
        border: none;
        color: #2d5ee2;
        height: 1.76471rem;
        margin: 0 0 0 0.47059rem;
        outline: none;
        padding: 0;
        position: relative;
        width: 1.76471rem; }
        .template--digital-book header.digital-books .toolbar button:before {
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: 'icomoon' !important;
          font-style: normal;
          font-weight: normal;
          font-feature-settings: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          speak: none;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          /* include the requested glyph */
          font-size: 1.76471rem;
          position: static; }
        .template--digital-book header.digital-books .toolbar button:after {
          background: #ffffff;
          bottom: 0.11765rem;
          border-radius: 0.82353rem;
          content: '';
          left: 0.11765rem;
          position: absolute;
          right: 0.11765rem;
          top: 0.11765rem;
          transition: opacity .2s;
          z-index: -10; }
        .template--digital-book header.digital-books .toolbar button:hover:after, .template--digital-book header.digital-books .toolbar button:focus:after {
          opacity: .5; }
        .template--digital-book header.digital-books .toolbar button.zoomOut:before {
          content: ""; }
        .template--digital-book header.digital-books .toolbar button.zoomIn:before {
          content: ""; }
        .template--digital-book header.digital-books .toolbar button#viewFind:before {
          content: ""; }
        .template--digital-book header.digital-books .toolbar button#viewFind.toggled:after {
          opacity: 0; }
      .template--digital-book header.digital-books .toolbar #scaleSelectContainer {
        background: none;
        border: none;
        box-shadow: none;
        display: inline-block;
        margin: 0 0.23529rem 0 0.70588rem;
        max-width: none !important;
        min-width: 0 !important;
        position: relative;
        width: auto; }
        .template--digital-book header.digital-books .toolbar #scaleSelectContainer:after {
          border: 4px solid rgba(45, 94, 226, 0);
          border-top-color: #2d5ee2;
          content: '';
          right: 0.58824rem;
          position: absolute;
          top: 0.76471rem; }
      .template--digital-book header.digital-books .toolbar select {
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        background: #ffffff;
        color: #2d5ee2;
        font: inherit;
        font-size: 0.88235rem;
        height: 1.76471rem;
        line-height: 1.4;
        margin: 0;
        padding: 0.47059rem 1.64706rem 0.41176rem 0.47059rem; }
      .template--digital-book header.digital-books .toolbar option {
        background: white; }
  .template--digital-book main {
    background: #f1f1f1;
    display: flex;
    height: 100%;
    overflow: visible;
    z-index: 30; }
  .template--digital-book .book-details {
    background: white;
    box-shadow: 0 0 32px rgba(0, 0, 0, 0.1);
    flex: 0 0 auto;
    overflow-y: auto;
    resize: horizontal;
    transition: .15s transform, .25s margin-right;
    width: var(--sidebar-width);
    z-index: 50; }
    .template--digital-book .book-details header {
      padding: 2.23529rem; }
      .template--digital-book .book-details header .year-level {
        display: block;
        font-size: 0.88235rem;
        font-weight: 700;
        margin-bottom: 4px;
        text-transform: uppercase; }
        .template--digital-book .book-details header .year-level span:after {
          content: ' \25CF ';
          display: inline-block;
          font-size: 0.58824rem;
          vertical-align: 0.11765rem;
          margin: 0 0.23529rem 0 0.52941rem; }
      .template--digital-book .book-details header h1 {
        font-size: 1.88235rem;
        margin: 0; }
    .template--digital-book .book-details nav {
      border-top: 4px solid #ededed;
      font-size: 0.88235rem;
      padding: 2.23529rem; }
      .template--digital-book .book-details nav h2 {
        font-size: 1.29412rem;
        font-weight: 700;
        margin: 0; }
      .template--digital-book .book-details nav ul {
        list-style: none; }
      .template--digital-book .book-details nav a {
        color: #2d5ee2;
        display: block;
        transition: color .15s; }
        .template--digital-book .book-details nav a[data-page] {
          cursor: pointer; }
          .template--digital-book .book-details nav a[data-page]:hover {
            color: #2de2c3; }
      .template--digital-book .book-details nav .section {
        border-top: thin solid #d4d4d4;
        padding: 2.11765rem 0 1.76471rem;
        position: relative; }
        .template--digital-book .book-details nav .section:first-child {
          border: none; }
        .template--digital-book .book-details nav .section > div {
          display: flex;
          align-items: center; }
          .template--digital-book .book-details nav .section > div > a {
            flex: 1 1 0; }
        .template--digital-book .book-details nav .section .section-label {
          font-size: 0.64706rem;
          text-transform: uppercase;
          font-weight: 700;
          letter-spacing: .1818em;
          line-height: 1.2;
          margin-bottom: .3em; }
        .template--digital-book .book-details nav .section .section-heading {
          font-size: 1rem;
          font-weight: 700;
          line-height: 1.3; }
        .template--digital-book .book-details nav .section button {
          background: none;
          border: none;
          cursor: pointer;
          margin: -1.88235rem 0;
          outline: none;
          padding: 1.88235rem 0 1.88235rem 1.29412rem;
          width: auto; }
          .template--digital-book .book-details nav .section button:before {
            /* use !important to prevent issues with browser extensions that change fonts */
            font-family: 'icomoon' !important;
            font-style: normal;
            font-weight: normal;
            font-feature-settings: normal;
            font-variant: normal;
            text-transform: none;
            line-height: 1;
            speak: none;
            /* Better Font Rendering =========== */
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            /* include the requested glyph */
            content: "";
            background: #2d5ee2;
            border-radius: 0.64706rem;
            color: #ffffff;
            display: block;
            font-size: 0.70588rem;
            height: 1.29412rem;
            padding: 0.35294rem 0.21176rem;
            transition: background .15s, transform .3s;
            vertical-align: top;
            width: 1.29412rem; }
          .template--digital-book .book-details nav .section button:hover:before {
            background: #2de2c3; }
        .template--digital-book .book-details nav .section.is--active button:before {
          transform: rotate(-0.5turn); }
      .template--digital-book .book-details nav .subsection {
        margin-top: 1.5em; }
        .template--digital-book .book-details nav .subsection > a {
          font-weight: 700;
          line-height: 1.2; }
      .template--digital-book .book-details nav .subheading {
        margin-top: .5em;
        line-height: 1.2; }
  .template--digital-book aside.notes {
    background: white;
    box-shadow: 0 0 32px rgba(0, 0, 0, 0.1);
    flex: 0 0 auto;
    font-size: 0.88235rem;
    order: 3;
    overflow-y: auto;
    padding: 2.23529rem;
    transition: .15s transform, .25s margin-left;
    width: var(--sidebar-width);
    z-index: 50; }
    .template--digital-book aside.notes h2 {
      font-size: 1.29412rem;
      font-weight: 700;
      margin: 0 0 1em; }
    .template--digital-book aside.notes ul {
      list-style: none;
      margin: 0;
      padding: 0 0 4rem; }
      .template--digital-book aside.notes ul:empty {
        padding-bottom: 0; }
    .template--digital-book aside.notes li {
      margin: 0 0 .5em;
      position: relative; }
    .template--digital-book aside.notes .delete {
      background: none;
      border: none;
      cursor: pointer;
      opacity: 0;
      position: absolute;
      right: 0;
      top: 10px;
      transition: color .15s, opacity .15s;
      z-index: 1; }
      .template--digital-book aside.notes .delete:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        content: ""; }
    .template--digital-book aside.notes li:hover .delete {
      opacity: .25; }
    .template--digital-book aside.notes li .delete:hover {
      opacity: .5; }
    .template--digital-book aside.notes li .delete:focus {
      color: #2d5ee2;
      opacity: 1;
      outline: none; }
    .template--digital-book aside.notes label {
      border: thin solid rgba(45, 94, 226, 0);
      border-radius: 3px;
      float: none;
      margin: 0 -10px;
      padding: 9px;
      transition: background .15s, border-color .3s;
      width: auto; }
    .template--digital-book aside.notes .is--hovered label {
      background: rgba(45, 94, 226, 0.1); }
    .template--digital-book aside.notes .is--focussed label {
      background: rgba(45, 94, 226, 0.1);
      border-color: rgba(45, 94, 226, 0.5); }
    .template--digital-book aside.notes h3 {
      color: #2d5ee2;
      font-size: 0.76471rem;
      font-weight: bold;
      margin: 0 0 .4em; }
    .template--digital-book aside.notes .date {
      text-transform: uppercase; }
    .template--digital-book aside.notes textarea {
      background: none;
      font: inherit;
      height: calc( 1.58em + 8px);
      margin: -4px;
      outline: none;
      padding: 4px;
      resize: none; }
    .template--digital-book aside.notes .instructions {
      display: none; }
    .template--digital-book aside.notes ul:empty + .instructions {
      display: block; }
    .template--digital-book aside.notes .saving,
    .template--digital-book aside.notes .saved {
      font-size: 0.88235rem;
      font-weight: bold;
      letter-spacing: 0.14706rem;
      text-transform: uppercase;
      background: #2d5ee2;
      bottom: 1.17647rem;
      border-radius: 999px;
      color: white;
      opacity: .5;
      padding: 0.52941rem 1.29412rem 0.35294rem;
      position: fixed;
      text-align: center;
      transform: translateY(3.76471rem);
      transition: opacity .15s, transform .15s; }
    .template--digital-book aside.notes .saving {
      padding-left: 2.70588rem;
      right: 6.70588rem;
      width: 8.70588rem; }
      .template--digital-book aside.notes .saving:before {
        content: url("../images/loading.gif");
        left: 0.82353rem;
        position: absolute;
        top: 0.52941rem; }
    .template--digital-book aside.notes .saved {
      padding-left: 2.47059rem;
      right: 5.17647rem;
      width: 12rem; }
      .template--digital-book aside.notes .saved:before {
        border: solid #2de2c3;
        border-width: 0 0.23529rem 0.23529rem 0;
        content: '';
        height: 0.94118rem;
        left: 1.11765rem;
        position: absolute;
        top: 0.52941rem;
        transform: rotate(38deg);
        width: 0.58824rem; }
    .template--digital-book aside.notes.is--saving .saving,
    .template--digital-book aside.notes.is--saved .saved {
      opacity: 1;
      transform: none; }
  .template--digital-book .toggle--book-details,
  .template--digital-book .toggle--notes {
    background: #2d5ee2;
    border: none;
    color: white;
    cursor: pointer;
    position: absolute;
    top: 48%;
    transition: .15s transform;
    height: 32px;
    width: 28px;
    z-index: 40; }
    .template--digital-book .toggle--book-details:before,
    .template--digital-book .toggle--notes:before {
      display: block;
      transition: .25s transform; }
  .template--digital-book .toggle--book-details {
    border-radius: 0 999em 999em 0;
    left: var(--sidebar-width);
    padding-right: 5px; }
    .template--digital-book .toggle--book-details:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
  .template--digital-book .toggle--notes {
    border-radius: 999em 0 0 999em;
    padding-left: 5px;
    right: var(--sidebar-width); }
    .template--digital-book .toggle--notes:before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      font-style: normal;
      font-weight: normal;
      font-feature-settings: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      speak: none;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      /* include the requested glyph */
      content: ""; }
  .template--digital-book.hide--book-details .book-details {
    transform: translateX(calc( -1 * var(--sidebar-width)));
    margin-right: calc( -1 * var(--sidebar-width)); }
  .template--digital-book.hide--book-details .toggle--book-details {
    transform: translateX(calc( -1 * var(--sidebar-width))); }
    .template--digital-book.hide--book-details .toggle--book-details:before {
      transform: rotate(-180deg); }
  .template--digital-book.hide--notes aside.notes {
    transform: translateX(var(--sidebar-width));
    margin-left: calc( -1 * var(--sidebar-width)); }
  .template--digital-book.hide--notes .toggle--notes {
    transform: translateX(var(--sidebar-width)); }
    .template--digital-book.hide--notes .toggle--notes:before {
      transform: rotate(180deg); }
  .template--digital-book #toolbarContainer {
    height: 0; }
  .template--digital-book #toolbarViewer {
    display: none; }
  .template--digital-book #loadingBar {
    background: #d4d4d4;
    border: none; }
    .template--digital-book #loadingBar .progress {
      background: #2d5ee2; }
      .template--digital-book #loadingBar .progress.indeterminate .glimmer {
        background: repeating-linear-gradient(135deg, #2d5ee2 0, #d4d4d4 2px, #d4d4d4 25px, #2d5ee2 27px, #2d5ee2 50px); }
    .template--digital-book #loadingBar .message {
      display: none;
      font-size: 1.05882rem;
      opacity: .7;
      padding: 25vh 1.17647rem 1.17647rem;
      text-align: center; }
    .template--digital-book #loadingBar .progress.indeterminate + .message {
      display: block; }
  .template--digital-book #findbar {
    background: #2d5ee2;
    border: none;
    color: white;
    left: auto;
    padding: 0.70588rem 0.82353rem 0.47059rem;
    right: -22rem;
    top: -0.58824rem; }
    .template--digital-book #findbar:before {
      border-bottom-color: #2d5ee2;
      border-top-width: 0;
      left: auto;
      right: 0.76471rem;
      top: -0.47059rem; }
    .template--digital-book #findbar:after {
      content: none; }
    .template--digital-book #findbar #findbarInputContainer {
      clear: none; }
    .template--digital-book #findbar #findInput {
      background: rgba(255, 255, 255, 0.1);
      border-color: rgba(255, 255, 255, 0.15);
      height: auto;
      margin: 0;
      padding: 0.35294rem 0.47059rem; }
      .template--digital-book #findbar #findInput::-moz-placeholder {
        color: inherit;
        opacity: .75; }
      .template--digital-book #findbar #findInput:-ms-input-placeholder {
        color: inherit;
        opacity: .75; }
      .template--digital-book #findbar #findInput::placeholder {
        color: inherit;
        opacity: .75; }
    .template--digital-book #findbar .splitToolbarButton {
      margin: 0 0.23529rem; }
    .template--digital-book #findbar #findbarOptionsContainer {
      clear: none; }
      .template--digital-book #findbar #findbarOptionsContainer input,
      .template--digital-book #findbar #findbarOptionsContainer label {
        display: none; }
    .template--digital-book #findbar #findResultsCount {
      background: rgba(255, 255, 255, 0.7);
      color: #2d5ee2;
      height: auto;
      line-height: 1;
      margin: 0.11765rem 0;
      padding: 0.41176rem 0.29412rem 0.11765rem; }
    .template--digital-book #findbar #findMsg {
      color: white;
      margin: 0;
      opacity: .9;
      padding-bottom: 0; }
  .template--digital-book #viewerContainer {
    top: 0; }
  .template--digital-book #viewer {
    overflow: hidden; }
  .template--digital-book #errorWrapper {
    padding: 16px; }
  .template--digital-book .loadingInProgress #errorWrapper {
    top: 0; }
  .template--digital-book .pdfViewer .page {
    border: none;
    margin-top: 32px; }
  .template--digital-book .textLayer {
    mix-blend-mode: multiply;
    opacity: .8; }
    .template--digital-book .textLayer .highlight.selected {
      background: #2de2c3;
      opacity: .5; }
    .template--digital-book .textLayer .note {
      background: #2de2c3;
      border-radius: 3px;
      margin: 0 -4px;
      opacity: .5;
      padding: 0 4px;
      transition: opacity .15s; }
      .template--digital-book .textLayer .note.is--hovered {
        opacity: .8; }
      .template--digital-book .textLayer .note.is--focussed {
        opacity: 1; }
    .template--digital-book .textLayer ::-moz-selection {
      background: rgba(45, 94, 226, 0.4);
      margin: 0 -4px;
      padding: 0 4px; }
    .template--digital-book .textLayer ::selection {
      background: rgba(45, 94, 226, 0.4);
      margin: 0 -4px;
      padding: 0 4px; }
  .template--digital-book #selectionMarker {
    display: inline-block;
    height: 0;
    vertical-align: bottom; }
  .template--digital-book #selectionTools {
    display: block;
    position: absolute;
    white-space: normal;
    width: 0;
    z-index: 100; }
    .template--digital-book #selectionTools > div {
      background: #2d5ee2;
      border-radius: 3px;
      color: white;
      display: flex;
      left: 0;
      padding: 0.23529rem 0.47059rem;
      position: absolute;
      top: 100%;
      transform: translate(-50%, 6px); }
    .template--digital-book #selectionTools button {
      background: none;
      border: none;
      color: inherit;
      cursor: pointer;
      outline: none;
      padding: 0.35294rem;
      transition: color .15s; }
      .template--digital-book #selectionTools button:before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        font-style: normal;
        font-weight: normal;
        font-feature-settings: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        speak: none;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        /* include the requested glyph */
        font-size: 1.29412rem; }
      .template--digital-book #selectionTools button.add-bookmark:before {
        content: ""; }
      .template--digital-book #selectionTools button.add-note:before {
        content: ""; }
      .template--digital-book #selectionTools button:hover {
        color: #2de2c3; }
  .template--digital-book .reload-overlay {
    background: rgba(241, 241, 241, 0.8);
    bottom: 0;
    display: flex;
    left: 0;
    padding: 1.17647rem;
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    z-index: 100; }
    .template--digital-book .reload-overlay > div {
      background: #2d5ee2;
      border-radius: 0.47059rem;
      color: white;
      margin: auto;
      max-width: 30.58824rem;
      padding: 2.94118rem 1.76471rem 2.35294rem;
      width: 100%; }
    .template--digital-book .reload-overlay output {
      display: block;
      font-size: 1.17647rem;
      margin-bottom: 2.35294rem; }
    .template--digital-book .reload-overlay a {
      border: none;
      background: none;
      outline: 0;
      cursor: pointer;
      border-radius: 0;
      padding: 0;
      display: inline-block;
      font-size: 0.70588rem;
      font-weight: bold;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      border-width: 1px;
      border-style: solid;
      border-radius: 9999em;
      height: 2.35294rem;
      line-height: 2.35294rem;
      padding: 0 1.17647rem;
      white-space: nowrap;
      text-decoration: none;
      background-color: #ffffff;
      border-color: #d0ddf7;
      color: #2d5ee2;
      min-width: 7.11765rem;
      transition: all 0.2s; }
      .template--digital-book .reload-overlay a:hover {
        background-color: #2d5ee2;
        color: #ffffff; }

button.stripe-checkout {
  border: none;
  background: none;
  outline: 0;
  cursor: pointer;
  border-radius: 0;
  padding: 0;
  display: inline-block;
  font-size: 0.70588rem;
  font-weight: bold;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  border-width: 1px;
  border-style: solid;
  border-radius: 9999em;
  height: 2.35294rem;
  line-height: 2.35294rem;
  padding: 0 1.17647rem;
  white-space: nowrap;
  text-decoration: none;
  background-color: #ffffff;
  border-color: #d0ddf7;
  color: #2d5ee2;
  min-width: 7.11765rem;
  transition: all 0.2s;
  background-color: #2d5ee2;
  border-color: #2d5ee2;
  color: white;
  font-size: 0.64706rem;
  padding: 0 0.88235rem;
  transition: all .5s;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 2px 0; }
  button.stripe-checkout:hover {
    background-color: #2d5ee2;
    color: #ffffff; }
  button.stripe-checkout:before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    speak: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* include the requested glyph */
    content: "";
    margin-right: 0.5em;
    font-size: 1.4em; }
  button.stripe-checkout:hover {
    background-color: #071741;
    border-color: #071741; }
  button.stripe-checkout.loading {
    -webkit-animation: throb 1s .3s infinite;
            animation: throb 1s .3s infinite;
    padding-left: 0.52941rem;
    color: rgba(255, 255, 255, 0);
    min-width: 0;
    width: 2.35294rem; }
    button.stripe-checkout.loading:before {
      color: rgba(255, 255, 255, 0); }
    button.stripe-checkout.loading:hover {
      background-color: #2d5ee2;
      border-color: #2d5ee2;
      color: rgba(255, 255, 255, 0); }

.ee_stripe_checkout_success {
  background: rgba(45, 226, 195, 0.1);
  border: thin solid #2de2c3;
  border-radius: 5px;
  color: #15947f;
  display: block;
  margin-bottom: 0.94118rem;
  padding: 0.94118rem 0.94118rem 0.82353rem;
  width: 100%; }

/*# sourceMappingURL=main.css.map */
