.paypal-overlay {
  opacity: 0;
  z-index: -1;
  background: rgba(0,0,0,0.7);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.2s;
}
.paypal-overlay.active {
  opacity: 1;
  z-index: 99999;
}

u@charset "UTF-8";
/* CSS Document */
/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}
/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}
/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}
/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
  margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
h2 {
  font-size: 1.5em;
  margin: 0.83em 0;
}
h3 {
  font-size: 1.17em;
  margin: 1em 0;
}
h4 {
  font-size: 1em;
  margin: 1.33em 0;
}
h5 {
  font-size: 0.83em;
  margin: 1.67em 0;
}
h6 {
  font-size: 0.67em;
  margin: 2.33em 0;
}
/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}
blockquote {
  margin: 1em 40px;
}
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}
/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
/**
 * Address styling not present in IE 6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000;
}
/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 1em 0;
}
/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em;
}
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}
/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none;
}
/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: '';
  content: none;
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}
dd {
  margin: 0 0 0 40px;
}
/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 40px;
}
/**
 * Correct list images handled incorrectly in IE 7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}
/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
}
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0;
}
/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0;
}
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */
}
/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */
}
/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}
/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}
/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}
/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
.clear {
  clear: both;
}
a,
a:hover,
a:active {
  text-decoration: none;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul {
  font-family: Arial, sans-serif;
}
p {
  font-size: 12px;
  line-height: 150%;
}
/* apply a natural box layout model to all elements */
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  *behavior: url(includes/plugins/boxsizing/boxsizing.htc);
}
/***********
    Basic Colours
************/
/**********/
/**************
    Primary Colours
*********************/
/********************
    Default Text Colours
********************/
/******************
    Nav Colours
*******************/
/*******************
    Form Styles
********************/
/*********************
    Borders/Shadows/Wrappers
***********************/
/*********************
    Breadcrumbs
***********************/
/*************
    Mixins
**************/
/*****************
    Layouts
******************/
/* Used for indenting text out of box ready for background image */
/* Sets box-sizing:content-box */
/***************
    Fixes/Resets
*****************/
/* Removes all default styling from list ready for unique layout */
/* Smooths fonts. Use warily as it is resource intensive, and only supported on webkit */
/* Fixes the flash on elements that occurs due to bxSlider turning on hardware rendering */
/****************
    CSS3 Misc
*****************/
/******************
    Shadows
********************/
/*******************
    Transforms
*********************/
/*****************
    Transitions
****************/
/********************
    Gradients/Backgrounds
*********************/
/*****************
    Forms/Btns
 *****************/
/****************
    Fonts
*****************/
/***********
    Forms
***********/
input,
select {
  font-size: 20px;
}
.styledInput {
  background: #ffffff;
  border: solid 1px #CCCCCC;
  height: 60px;
  padding: 0;
  position: relative;
}
.styledInput.select-sm {
  height: 40px;
  line-height: 40px;
  font-size: 16px;
}
.styledInput select,
.styledInput input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  padding: 0 15px;
  margin: 0;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
  height: 100%;
  color: #012b5d;
}
.styledInput select:focus,
.styledInput input:focus {
  outline: none;
  outline-width: 0;
}
.styledInput.dropdownStyle:before {
  content: "\e809";
  font-family: "hyphenio";
  color: #5a585d;
  position: absolute;
  top: 23px;
  right: 13px;
  font-size: 15px;
}
.styledInput.dropdownStyle.select-sm:before {
  top: 0px;
  right: 8px;
  font-size: 11px;
}
.styledInput.dropdownStyle .form-control {
  width: calc(100% - 30px);
}
label {
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
  display: inline-block;
  text-transform: none;
  margin: 0 10px 5px 0;
  font-size: 17px;
}
form {
  /*******************
        Control Groups
    ********************/
  /****************
        Form Submit
    ****************/
}
form.orderingForm .control-group select.qty {
  display: inline-block;
  width: auto;
  height: 60px;
  line-height: 60px;
  padding: 0 15px;
  text-align: center;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
form .control-group {
  width: 100%;
  margin: 0 0 25px;
  position: relative;
}
form .control-group.one-col {
  padding: 0 10px;
}
form .control-group.two-col {
  width: 50%;
  float: left;
  padding: 0 10px;
}
form .control-group.three-col {
  width: 33.33%;
  float: left;
  padding: 0 10px;
}
form .control-group label {
  color: #000000;
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
  display: block;
}
form .control-group input.text,
form .control-group textarea {
  color: #2D2D2D;
  background: #FFFFFF;
  -webkit-transition: all 0.3s;
  /* Safari */
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
  border: 1px solid #CCCCCC;
  width: 100%;
  height: 40px;
  line-height: 40px;
  padding: 0 15px;
}
form .control-group input.text::-webkit-input-placeholder,
form .control-group textarea::-webkit-input-placeholder {
  /* WebKit browsers */
  color: #D6D4CD;
}
form .control-group input.text:-moz-placeholder,
form .control-group textarea:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #D6D4CD;
}
form .control-group input.text::-moz-placeholder,
form .control-group textarea::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #D6D4CD;
}
form .control-group input.text:-ms-input-placeholder,
form .control-group textarea:-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color: #D6D4CD;
}
form .control-group input.text:focus,
form .control-group textarea:focus {
  outline: none;
  border-color: #00c0f2 !important;
}
form .control-group input.text:focus::-webkit-input-placeholder,
form .control-group textarea:focus::-webkit-input-placeholder {
  /* WebKit browsers */
  color: #D6D4CD;
}
form .control-group input.text:focus:-moz-placeholder,
form .control-group textarea:focus:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #D6D4CD;
}
form .control-group input.text:focus::-moz-placeholder,
form .control-group textarea:focus::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #D6D4CD;
}
form .control-group input.text:focus:-ms-input-placeholder,
form .control-group textarea:focus:-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color: #D6D4CD;
}
form .control-group input.text.error,
form .control-group textarea.error {
  border-color: #c40000 !important;
  background: rgba(196, 0, 0, 0.07);
  margin-bottom: 0;
}
form .control-group textarea {
  height: 120px;
  padding: 10px;
  line-height: 1.3em;
  clear: both;
}
form .control-group select {
  width: 100%;
}
form .form-submit {
  clear: both;
  line-height: 60px;
  height: 55px;
  padding: 0 20px;
  font-size: 26px;
  border: solid 1px #4a85a3;
  color: #0a2240;
  background: none;
  display: inline-block;
  cursor: pointer;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
  -webkit-transition: all 0.1s;
  /* Safari */
  -moz-transition: all 0.1s;
  -o-transition: all 0.1s;
  -ms-transition: all 0.1s;
  transition: all 0.1s;
}
form .form-submit.btn-large {
  font-size: 36px;
  height: 80px;
  line-height: 80px;
}
form .form-submit.btn-md {
  font-size: 23px;
  height: 50px;
  line-height: 50px;
}
form .form-submit.btn-sm {
  font-size: 20px;
  height: 45px;
  line-height: 45px;
}
form .form-submit.btn-xs {
  font-size: 15px;
  height: 25px;
  line-height: 25px;
}
form .form-submit.btn-reverse {
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}
form .form-submit.btn-blue {
  background: #4a85a3;
  color: #fff;
}
form .form-submit.btn-blue:hover {
  background: #48a8c0;
}
form .form-submit:hover {
  color: #fff;
  background: #4a85a3;
}
form .form-submit:active {
  color: #ffffff;
  background: #b3b3b3;
}
form .form-submit:disabled {
  color: #FFFFFF;
  background: #ffffff;
}
form .form-submit.btn-hover-reverse {
  color: #fff;
  background: #ae016d;
  border-color: #ae016d;
}
form .form-submit.btn-hover-reverse:hover {
  color: #ae016d;
  background: #fff;
  border-color: #fff;
}
form .form-submit.btn-highlight {
  display: block;
  margin: 0 0 15px;
  padding: 10px 0;
  height: auto;
  background: #0074d9;
  color: #fff;
  font-style: normal;
}
form .form-submit.btn-highlight:hover {
  background: #0d63a6;
  color: #fff;
}
.checkbox {
  padding-left: 10px;
}
.checkbox label {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-left: 5px;
  margin-bottom: 0;
  line-height: 1em !important;
}
.checkbox label::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 17px;
  height: 17px;
  left: -17px;
  top: 0px;
  margin: 0;
  border: 1px solid #cccccc;
  border-radius: 0;
  background-color: #fff;
  -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
}
.checkbox label::after {
  display: block;
  position: absolute;
  width: 17px;
  height: 17px;
  left: -17px;
  top: 0px;
  line-height: 17px;
  margin: 0;
  padding: 0;
  font-size: 11px;
  color: #555555;
  text-align: center;
}
.radio input[type="checkbox"],
.radio input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox input[type="radio"] {
  opacity: 0;
  z-index: 1;
}
.radio input[type="checkbox"]:focus + label::before,
.radio input[type="radio"]:focus + label::before,
.checkbox input[type="checkbox"]:focus + label::before,
.checkbox input[type="radio"]:focus + label::before {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.radio input[type="checkbox"]:checked + label::after,
.radio input[type="radio"]:checked + label::after,
.checkbox input[type="checkbox"]:checked + label::after,
.checkbox input[type="radio"]:checked + label::after {
  font-family: "FontAwesome";
  content: "\f00c";
}
.radio input[type="checkbox"]:disabled + label,
.radio input[type="radio"]:disabled + label,
.checkbox input[type="checkbox"]:disabled + label,
.checkbox input[type="radio"]:disabled + label {
  opacity: 0.65;
}
.radio input[type="checkbox"]:disabled + label::before,
.radio input[type="radio"]:disabled + label::before,
.checkbox input[type="checkbox"]:disabled + label::before,
.checkbox input[type="radio"]:disabled + label::before {
  background-color: #eeeeee;
  cursor: not-allowed;
}
.checkbox.checkbox-circle label::before {
  border-radius: 50%;
}
.checkbox.checkbox-inline {
  margin-top: 0;
}
.checkbox-primary input[type="checkbox"]:checked + label::before,
.checkbox-primary input[type="radio"]:checked + label::before {
  background-color: #337ab7;
  border-color: #337ab7;
}
.checkbox-primary input[type="checkbox"]:checked + label::after,
.checkbox-primary input[type="radio"]:checked + label::after {
  color: #fff;
}
.checkbox-danger input[type="checkbox"]:checked + label::before,
.checkbox-danger input[type="radio"]:checked + label::before {
  background-color: #d9534f;
  border-color: #d9534f;
}
.checkbox-danger input[type="checkbox"]:checked + label::after,
.checkbox-danger input[type="radio"]:checked + label::after {
  color: #fff;
}
.checkbox-info input[type="checkbox"]:checked + label::before,
.checkbox-info input[type="radio"]:checked + label::before {
  background-color: #5bc0de;
  border-color: #5bc0de;
}
.checkbox-info input[type="checkbox"]:checked + label::after,
.checkbox-info input[type="radio"]:checked + label::after {
  color: #fff;
}
.checkbox-warning input[type="checkbox"]:checked + label::before,
.checkbox-warning input[type="radio"]:checked + label::before {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}
.checkbox-warning input[type="checkbox"]:checked + label::after,
.checkbox-warning input[type="radio"]:checked + label::after {
  color: #fff;
}
.checkbox-success input[type="checkbox"]:checked + label::before,
.checkbox-success input[type="radio"]:checked + label::before {
  background-color: #5cb85c;
  border-color: #5cb85c;
}
.checkbox-success input[type="checkbox"]:checked + label::after,
.checkbox-success input[type="radio"]:checked + label::after {
  color: #fff;
}
.radio {
  padding-left: 20px;
}
.radio label {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-left: 5px;
}
.radio label::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 17px;
  height: 17px;
  left: -20px;
  top: -2px;
  margin-left: 0;
  border: 1px solid #cccccc;
  border-radius: 50%;
  background-color: #fff;
  -webkit-transition: border 0.15s ease-in-out;
  -o-transition: border 0.15s ease-in-out;
  transition: border 0.15s ease-in-out;
}
.radio label::after {
  display: block;
  position: absolute;
  content: "";
  width: 17px;
  height: 17px;
  left: -20px;
  top: -2px;
  margin-left: 0;
  border-radius: 50%;
  background-color: #555555;
  -webkit-transform: scale(0, 0);
  -ms-transform: scale(0, 0);
  -o-transform: scale(0, 0);
  transform: scale(0, 0);
  -webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
  -moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
  -o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
  transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
}
.radio input[type="radio"] {
  opacity: 0;
  z-index: 1;
}
.radio input[type="radio"]:focus + label::before {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.radio input[type="radio"]:checked + label::after {
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  transform: scale(1, 1);
}
.radio input[type="radio"]:disabled + label {
  opacity: 0.65;
}
.radio input[type="radio"]:disabled + label::before {
  cursor: not-allowed;
}
.radio.radio-inline {
  margin-top: 0;
}
.radio-primary input[type="radio"] + label::after {
  background-color: #337ab7;
}
.radio-primary input[type="radio"]:checked + label::before {
  border-color: #337ab7;
}
.radio-primary input[type="radio"]:checked + label::after {
  background-color: #337ab7;
}
.radio-danger input[type="radio"] + label::after {
  background-color: #d9534f;
}
.radio-danger input[type="radio"]:checked + label::before {
  border-color: #d9534f;
}
.radio-danger input[type="radio"]:checked + label::after {
  background-color: #d9534f;
}
.radio-info input[type="radio"] + label::after {
  background-color: #5bc0de;
}
.radio-info input[type="radio"]:checked + label::before {
  border-color: #5bc0de;
}
.radio-info input[type="radio"]:checked + label::after {
  background-color: #5bc0de;
}
.radio-warning input[type="radio"] + label::after {
  background-color: #f0ad4e;
}
.radio-warning input[type="radio"]:checked + label::before {
  border-color: #f0ad4e;
}
.radio-warning input[type="radio"]:checked + label::after {
  background-color: #f0ad4e;
}
.radio-success input[type="radio"] + label::after {
  background-color: #5cb85c;
}
.radio-success input[type="radio"]:checked + label::before {
  border-color: #5cb85c;
}
.radio-success input[type="radio"]:checked + label::after {
  background-color: #5cb85c;
}
input[type="checkbox"].styled:checked + label:after,
input[type="radio"].styled:checked + label:after {
  font-family: 'FontAwesome';
  content: "\f00c";
}
input[type="checkbox"] .styled:checked + label::before,
input[type="radio"] .styled:checked + label::before {
  color: #fff;
}
input[type="checkbox"] .styled:checked + label::after,
input[type="radio"] .styled:checked + label::after {
  color: #fff;
}
.checkbox,
.radio {
  position: relative;
  display: block;
}
.checkbox label,
.radio label {
  min-height: 20px;
  padding-left: 10px;
  margin-bottom: 0;
  font-weight: 400;
  cursor: pointer;
}
.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=radio],
.radio-inline input[type=radio] {
  position: absolute;
  margin-top: 4px \9;
  margin-left: -20px;
}
.checkbox + .checkbox,
.radio + .radio {
  margin-top: -5px;
}
.checkbox-inline,
.radio-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  vertical-align: middle;
  cursor: pointer;
}
.checkbox-inline + .checkbox-inline,
.radio-inline + .radio-inline {
  margin-top: 0;
  margin-left: 10px;
}
fieldset[disabled] input[type=checkbox],
fieldset[disabled] input[type=radio],
input[type=checkbox].disabled,
input[type=checkbox][disabled],
input[type=radio].disabled,
input[type=radio][disabled] {
  cursor: not-allowed;
}
.checkbox-inline.disabled,
.radio-inline.disabled,
fieldset[disabled] .checkbox-inline,
fieldset[disabled] .radio-inline {
  cursor: not-allowed;
}
.checkbox.disabled label,
.radio.disabled label,
fieldset[disabled] .checkbox label,
fieldset[disabled] .radio label {
  cursor: not-allowed;
}
/**********************
    Common Styles
***********************/
/*****************
    Common Styles
*****************/
.bordered {
  border: solid 1px #4a85a3;
  background: rgba(0, 0, 0, 0.6);
  padding: 15px 40px;
  line-height: 1em;
}
.hugeText {
  font-size: 60px !important;
}
.strikethrough {
  text-decoration: line-through !important;
}
.flip {
  -moz-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  filter: FlipH;
  -ms-filter: "FlipH";
}
.hide {
  display: none;
}
.noSelect {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently not supported by any browser */
}
/****************
    Wrappers/Layouts
*****************/
.wrapper {
  max-width: 980px;
  margin: 0 auto;
  position: relative;
}
/****************
    Fonts
*****************/
/****************
    Text Styles
*****************/
a {
  color: #0074d9;
}
.defaultUl {
  padding-left: 50px;
  list-style: disc;
  margin: 25px 0;
}
.defaultUl li {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 165%;
  margin: 0 0 25px 0;
  margin: 0;
}
.defaultUl li strong {
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
}
.defaultUl li em {
  font-family: 'Crimson Text', serif;
  font-weight: inherit;
  font-style: italic;
}
.defaultUl li.intro {
  font-size: 22px;
  line-height: 135%;
  color: #000;
}
.defaultUl li a {
  color: #000000;
  -webkit-transition: color 0.1s;
  /* Safari */
  -moz-transition: color 0.1s;
  -o-transition: color 0.1s;
  -ms-transition: color 0.1s;
  transition: color 0.1s;
}
.defaultUl li a:hover {
  color: #1a1a1a;
}
.defaultOl {
  list-style: decimal;
  padding-left: 50px;
  margin: 25px 0;
}
.defaultOl li {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 165%;
  margin: 0 0 25px 0;
  margin: 0;
}
.defaultOl li strong {
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
}
.defaultOl li em {
  font-family: 'Crimson Text', serif;
  font-weight: inherit;
  font-style: italic;
}
.defaultOl li.intro {
  font-size: 22px;
  line-height: 135%;
  color: #000;
}
.defaultOl li a {
  color: #000000;
  -webkit-transition: color 0.1s;
  /* Safari */
  -moz-transition: color 0.1s;
  -o-transition: color 0.1s;
  -ms-transition: color 0.1s;
  transition: color 0.1s;
}
.defaultOl li a:hover {
  color: #1a1a1a;
}
h1 {
  margin: 0 0 40px 0;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 60px;
  display: block;
}
h2 {
  margin: 20px 0;
  font-size: 40px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
h3 {
  font-size: 36px;
  margin: 30px 0 15px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
h4 {
  font-size: 26px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
h4.italic {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
}
h5 {
  font-size: 26px;
  margin: 0 0 10px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
h6 {
  font-size: 22px;
  margin: 0 0 10px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
p {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 165%;
  margin: 0 0 25px 0;
}
p strong {
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
}
p em {
  font-family: 'Crimson Text', serif;
  font-weight: inherit;
  font-style: italic;
}
p.intro {
  font-size: 22px;
  line-height: 135%;
  color: #000;
}
p a {
  color: #000000;
  -webkit-transition: color 0.1s;
  /* Safari */
  -moz-transition: color 0.1s;
  -o-transition: color 0.1s;
  -ms-transition: color 0.1s;
  transition: color 0.1s;
}
p a:hover {
  color: #1a1a1a;
}
i {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
}
ul {
  padding-left: 50px;
  list-style: disc;
  margin: 25px 0;
}
ul li {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 165%;
  margin: 0 0 25px 0;
  margin: 0;
}
ul li strong {
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
}
ul li em {
  font-family: 'Crimson Text', serif;
  font-weight: inherit;
  font-style: italic;
}
ul li.intro {
  font-size: 22px;
  line-height: 135%;
  color: #000;
}
ul li a {
  color: #000000;
  -webkit-transition: color 0.1s;
  /* Safari */
  -moz-transition: color 0.1s;
  -o-transition: color 0.1s;
  -ms-transition: color 0.1s;
  transition: color 0.1s;
}
ul li a:hover {
  color: #1a1a1a;
}
ol {
  list-style: decimal;
  padding-left: 50px;
  margin: 25px 0;
}
ol li {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 165%;
  margin: 0 0 25px 0;
  margin: 0;
}
ol li strong {
  font-family: 'Crimson Text', serif;
  font-weight: 700;
  font-style: normal;
}
ol li em {
  font-family: 'Crimson Text', serif;
  font-weight: inherit;
  font-style: italic;
}
ol li.intro {
  font-size: 22px;
  line-height: 135%;
  color: #000;
}
ol li a {
  color: #000000;
  -webkit-transition: color 0.1s;
  /* Safari */
  -moz-transition: color 0.1s;
  -o-transition: color 0.1s;
  -ms-transition: color 0.1s;
  transition: color 0.1s;
}
ol li a:hover {
  color: #1a1a1a;
}
table {
  width: 100%;
}
.table {
  margin: 0;
  padding: 0;
  vertical-align: middle;
}
.table.table-border {
  border: 1px solid #ddd;
}
.table.table-border > tbody > tr > td {
  border-bottom: 1px solid #ddd;
}
.table td {
  padding: 15px;
}
.grid-group {
  background: #fff;
  border: solid 1px #ddd;
  margin: 0 0 20px;
}
.grid-group h5 {
  background: #ae026e;
  color: #fff;
  font-size: 19px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
  padding: 15px 15px;
  margin: 0;
}
.grid-group .grid-content {
  padding: 20px 10px 0;
}
/**********************
    Btn stylings
***********************/
.btn {
  line-height: 60px;
  height: 55px;
  padding: 0 20px;
  font-size: 26px;
  border: solid 1px #4a85a3;
  color: #0a2240;
  background: none;
  display: inline-block;
  cursor: pointer;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
  -webkit-transition: all 0.1s;
  /* Safari */
  -moz-transition: all 0.1s;
  -o-transition: all 0.1s;
  -ms-transition: all 0.1s;
  transition: all 0.1s;
}
.btn.btn-large {
  font-size: 36px;
  height: 80px;
  line-height: 80px;
}
.btn.btn-md {
  font-size: 23px;
  height: 50px;
  line-height: 50px;
}
.btn.btn-sm {
  font-size: 20px;
  height: 45px;
  line-height: 45px;
}
.btn.btn-xs {
  font-size: 15px;
  height: 25px;
  line-height: 25px;
}
.btn.btn-reverse {
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}
.btn.btn-blue {
  background: #4a85a3;
  color: #fff;
}
.btn.btn-blue:hover {
  background: #48a8c0;
}
.btn:hover {
  color: #fff;
  background: #4a85a3;
}
.btn:active {
  color: #ffffff;
  background: #b3b3b3;
}
.btn:disabled {
  color: #FFFFFF;
  background: #ffffff;
}
.btn.btn-hover-reverse {
  color: #fff;
  background: #ae016d;
  border-color: #ae016d;
}
.btn.btn-hover-reverse:hover {
  color: #ae016d;
  background: #fff;
  border-color: #fff;
}
.btn.btn-highlight {
  display: block;
  margin: 0 0 15px;
  padding: 10px 0;
  height: auto;
  background: #0074d9;
  color: #fff;
  font-style: normal;
}
.btn.btn-highlight:hover {
  background: #0d63a6;
  color: #fff;
}
.message {
  font-size: 0.9em;
  line-height: 1.3em;
  padding: 15px;
}
.message.positive {
  color: #116c13;
  background-color: #d9fad9;
  border-color: #116c13;
}
.message.negative {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
/**********************
    General Styles
***********************/
/* CSS Document */
/*********************
    Body
**********************/
html,
body {
  width: 100%;
  height: 100%;
  background: #fafafa;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
}
body .stickyWrapper {
  min-height: calc(100% - 100px);
  height: auto;
  /* This line and the next line are not necessary unless you need IE6 support */
  width: 100%;
  margin: 0 auto;
  /* the bottom margin is the negative value of the footer's height */
}
body table.promo_product td {
  width: 33%;
}
body table.promo_product h6 {
  font-size: 20px;
  margin: 20px 0 15px;
}
body table.promo_product h6 img {
  display: inline-block;
  vertical-align: middle;
  margin: -10px 0 0 5px;
}
body table.promo_product p {
  font-size: 14px;
  padding: 0 10px;
}
body.slideshowMode {
  overflow: hidden;
}
body .homeSlide,
body .footerSlide {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
}
body .homeSlide .hsContainer,
body .footerSlide .hsContainer {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  opacity: 0;
}
body .homeSlide .hsContent,
body .footerSlide .hsContent {
  max-width: 450px;
  margin: -150px auto 0 auto;
  display: table-cell;
  vertical-align: middle;
  color: #ebebeb;
  padding: 0 8%;
  text-align: center;
}
body .bcg {
  position: absolute;
  background-position: center top;
  background-repeat: no-repeat;
  background-color: #000;
  height: 100%;
  width: 100%;
}
body .splashfooter {
  position: relative;
  z-index: 6;
}
body .splashfooter table,
body .splashfooter td {
  width: 100%;
  height: 100%;
  text-align: center;
  vertical-align: middle;
}
body .splashfooter table a,
body .splashfooter td a {
  margin: 0 12px;
  padding: 5px 50px;
  border-color: #fff;
  color: #fff;
  font-size: 45px;
  line-height: 1em;
}
body .splashfooter table a span,
body .splashfooter td a span {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
}
body .splashfooter table a .icon,
body .splashfooter td a .icon {
  font-size: 25px;
}
body.small #hamburger {
  top: 12px;
}
body #hamburger {
  width: 35px;
  height: 35px;
  position: fixed;
  z-index: 999;
  margin: 0 auto;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  top: 30px;
  right: 30px;
}
body #hamburger span {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  background: #fff;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  -moz-transition: 0.25s ease-in-out;
  -o-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
body #hamburger span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
body #hamburger span:nth-child(2) {
  top: 12px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
body #hamburger span:nth-child(3) {
  top: 24px;
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}
body #hamburger.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 1px;
  left: 8px;
}
body #hamburger.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
}
body #hamburger.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 26px;
  left: 8px;
}
body #nav {
  height: 100%;
  width: 220px;
  position: fixed;
  top: 0;
  right: -270px;
  z-index: 12;
  background: #0a2240;
  padding: 30px 30px;
  text-align: right;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}
body #nav.active {
  right: 0;
}
body #nav .icon {
  color: #4a85a3;
  font-size: 27px;
  margin: 0 0 30px;
  display: block;
  cursor: pointer;
}
body #nav ul {
  margin: 40px 0 0;
  padding: 0;
}
body #nav ul li {
  list-style: none;
  padding: 0;
  margin: 0;
}
body #nav ul li a {
  color: #fff;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 28px;
  padding: 15px 0;
  display: block;
}
/*********************
    Header
**********************/
header {
  position: fixed;
  z-index: 8;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 11;
}
header a.logo {
  top: 40px;
  left: 40px;
}
header .uniSection {
  position: absolute;
  top: 0;
  right: 100px;
}
header .uniSection .uniLogo {
  width: 149px;
  height: 149px;
  float: right;
  display: block;
}
header .uniSection .uniLogo table,
header .uniSection .uniLogo td {
  width: 100%;
  height: 100%;
  text-align: center;
  vertical-align: middle;
}
header .uniSection .uniLogo table img,
header .uniSection .uniLogo td img {
  width: 100%;
}
header .uniSection .uniText {
  float: right;
  display: block;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
  color: #fff;
  font-size: 22px;
  margin: 40px 15px 0;
}
header .uniSection .uniText .languageChange {
  color: #fff;
  font-size: 14px;
  display: block;
  margin: 0 0 10px;
  display: none;
}
header .uniSection .uniText .languageChange span {
  border-bottom: dotted 1px #fff;
}
header .uniSection .uniLogo,
header .uniSection .uniPartner {
  display: block;
}
.selectedUniversity header .uniSection .uniLogo,
.selectedUniversity header .uniSection .uniPartner {
  display: block;
}
header .nav-btn {
  position: absolute;
  top: 40px;
  right: 40px;
  cursor: pointer;
}
header .nav-btn .icon:before {
  color: #fff;
  font-size: 28px;
}
.small header a.logo {
  top: 10px;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.small header a.logo:after {
  width: 150px;
  height: 50px;
  background-size: 150px auto;
}
.small header .uniLogo {
  width: 100px;
  height: 100px;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.small header .uniSection .uniText {
  margin-top: 8px;
  font-size: 20px;
}
.small header .nav-btn {
  top: 17px;
  right: 20px;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
/*********************
    Footer
**********************/
.push {
  height: 0;
}
footer {
  background: url(../../images/bg-gradient.jpg) 0 0;
  background-size: 100% 100%;
  height: 100px;
  width: 100%;
  position: relative;
  z-index: 10;
  bottom: 0;
}
footer a.logo {
  top: 20px;
  left: 40px;
}
footer a {
  color: #fff;
}
footer .copyright {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
  line-height: 97px;
  width: 100%;
  text-align: center;
}
footer .copyright a {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
  color: #fff;
  margin: 0 0 0 20px;
}
.orderModule footer {
  display: none;
}
.orderingPage .mainfooter,
.orderingPage .push {
  display: none !important;
}
.slideshowMode .footer {
  position: fixed;
  bottom: 0;
}
/*********************
    Main
**********************/
.bodyGallery header {
  z-index: 10;
}
.checkoutBtn {
  position: fixed;
  top: -1px;
  right: 100px;
  padding: 22px 5px 8px 12px;
  background: #fff;
  z-index: 9;
  color: #4a85a3;
  font-size: 24px;
  transition: all 0.45s ease;
  -moz-transition: all 0.45s ease;
  -o-transition: all 0.45s ease;
  -webkit-transition: all 0.45s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  behavior: url(includes/plugins/pie/PIE.htc);
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: italic;
}
.checkoutBtn .icon {
  font-size: 35px;
  float: right;
  margin: -6px 0 0;
}
.checkoutBtn.active {
  top: 100px;
}
.small .checkoutBtn.active {
  top: 57px !important;
}
.cartBtn {
  position: fixed;
  top: 100px;
  right: 20px;
  padding: 20px 7px 8px;
  background: #fff;
  z-index: 9;
  transition: all 0.45s ease;
  -moz-transition: all 0.45s ease;
  -o-transition: all 0.45s ease;
  -webkit-transition: all 0.45s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  behavior: url(includes/plugins/pie/PIE.htc);
}
.small .cartBtn {
  top: 57px;
}
.cartBtn #cartCount {
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
  behavior: url(includes/plugins/pie/PIE.htc);
  background: #ae026e;
  line-height: 18px;
  height: 21px;
  width: 21px;
  text-align: center;
  display: block;
  position: absolute;
  padding: 3px 3px 0 0;
  top: 50%;
  left: 50%;
  margin: -19px 0 0 -9px;
  color: #fff;
  font-size: 15px;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: italic;
}
.cartBtn .icon {
  font-size: 30px;
  color: #4a85a3;
}
.cartBtn.hide {
  top: -50px !important;
}
.hideCartIcon .cartBtn {
  display: none !important;
}
.gfplogo {
  width: 272px;
  height: 71px;
  background-size: 272px 71px;
  display: block;
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
}
.gfplogo:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 272px;
  height: 71px;
  background: url('../../images/logo.svg') no-repeat 0 0;
  background-size: 272px 71px;
}
.sliceOfRainbow {
  position: fixed;
  top: 0;
  left: 0;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 60%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 60%, 0 100%);
  -moz-clip-path: url("#swipe__clip-path");
  height: 170px;
  width: 100%;
  background: url(../../images/bg-rainbow.jpg);
  background-size: cover;
  z-index: 10;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.small .sliceOfRainbow {
  height: 60px;
  top: 0 !important;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  -moz-clip-path: url("#swipe__unclip-path");
}
.transparentBackground,
.transparentBackground .content.main,
.galleryPage .content.main {
  background: none !important;
}
.content.main {
  position: relative;
  top: 164px;
  left: 0;
  height: calc(100% - 165px);
  z-index: 9;
  color: #FFFFFF;
  text-align: center;
  background: #fafafa;
}
.galleryModule .content.main {
  top: 170px;
}
.content.main .flushLeft {
  text-align: left;
}
.orderingPage .content.main {
  top: 43px;
  height: calc(100vh - 60px);
}
.universityList .unilogo-container {
  margin: 0 15px 30px;
  display: inline-block;
  vertical-align: top;
}
.universityList .topThree {
  border-bottom: solid 1px #4a85a3;
  max-width: 1020px;
  margin: 30px auto 50px;
  padding: 0 0 10px;
}
.universityList .fulllist {
  max-width: 1020px;
  margin: 0 auto;
}
.universityList .fulllist .unilogo-container {
  width: 12.5%;
}
.universityList .fulllist .unilogo-container a img {
  width: 100%;
  border: solid 1px rgba(0, 0, 0, 0.1);
}
.overlay {
  width: 100%;
  margin: 20px 0 0;
  position: relative;
  padding: 0;
  z-index: 7;
  color: #0a2240;
  background: #FFFFFF;
  min-height: calc(100vh - 520px);
}
.overlay.gradient-black {
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0), #000000 98%);
  /* For Safari 5.1 to 6.0 */
  background: -o-linear-gradient(rgba(0, 0, 0, 0), #000000 98%);
  /* For Opera 11.1 to 12.0 */
  background: -moz-linear-gradient(rgba(0, 0, 0, 0), #000000 98%);
  /* For Firefox 3.6 to 15 */
  background: linear-gradient(rgba(0, 0, 0, 0), #000000 98%);
  /* Standard syntax */
}
.overlay h3 {
  margin: -10px 0 20px;
}
.overlay.upperrift {
  margin: 150px 0 0;
}
.overlay.upperrift:before {
  background: #FFFFFF;
  top: -85px;
  content: '';
  display: block;
  height: 150px;
  left: 0;
  position: absolute;
  right: 0;
  transform: skewY(-2deg);
  transform-origin: 100%;
  z-index: -1;
}
.overlay.fixedHeight {
  height: 200px;
  margin-bottom: -150px;
  -webkit-clip-path: polygon(0 -100px, 100% -100px, 100% 100%, 0 50%);
  clip-path: polygon(0 -100px, 100% -100px, 100% 100%, 0 50%);
}
.introMessage {
  max-width: 1100px;
  margin: 0 auto;
}
.homepage .introMessage {
  padding: 65px 0 50px;
}
.introMessage .sellingPoint {
  text-align: left;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 15px;
  line-height: 1.3em;
  padding: 65px 0 30px;
}
.introMessage .sellingPoint .point {
  width: 33.3%;
  padding-right: 20px;
  float: left;
}
.introMessage .sellingPoint .point .icon {
  display: block;
  float: left;
}
.introMessage .sellingPoint .point .text {
  width: calc(100% - 65px);
  padding: 0 0 0 20px;
  float: left;
}
.introMessage .flushRight {
  width: 500px;
  float: right;
  margin: 0 50px 0 0;
  text-align: left;
}
.introMessage .flushRight h1 {
  margin: 0;
  padding: 0;
  font-weight: 400;
  font-size: 56px;
}
.introMessage .flushRight a.btn {
  width: 100%;
  text-align: center;
  margin: 20px 0 0;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
.introMessage.stageSelection form {
  transition: all 1.2s ease;
  -moz-transition: all 1.2s ease;
  -o-transition: all 1.2s ease;
  -webkit-transition: all 1.2s ease;
}
.introMessage.stageSelection form.hidden {
  margin-top: 500px;
}
.introMessage.stageSelection .stageText {
  opacity: 1;
  transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  -webkit-transition: all 0.8s ease;
}
.introMessage.stageSelection .stageText.hidden {
  opacity: 0;
}
.redirectionScreen {
  width: 100vw;
  height: 100vh;
  text-align: center;
  color: #fff;
  background: #001835;
  position: fixed;
  top: 0;
  left: 100vw;
  z-index: 9;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}
.redirectionScreen table,
.redirectionScreen td {
  width: 100%;
  height: 100%;
  text-align: center;
  vertical-align: middle;
}
.redirectionScreen table h3,
.redirectionScreen td h3 {
  margin: 15px 0 15px;
}
.redirectionScreen.active {
  left: 0;
}

.gridScroller {
  margin: 0 auto;
  overflow: hidden !important;
}
.gridMode .gridScroller {
  overflow: auto !important;
}
.grid {
  max-width: 1080px;
  background: #fff;
  margin: 0 auto;
  /* 2 columns */
}
.grid.productCategoryMasonry {
  padding: 1px !important;
}
.grid:after {
  content: '';
  display: block;
  clear: both;
}
.grid .grid-sizer,
.grid .grid-item {
  width: calc(50% - 2px);
}
.grid .grid-item {
  float: left;
  height: 408px;
  margin: 1px;
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently not supported by any browser */
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.grid .grid-item .grid-item-desc,
.grid .grid-item .grid-item-shot {
  float: left;
}
.grid .grid-item .grid-item-desc {
  display: block;
  padding: 0 20px !important;
  width: calc(100% - 215px);
}
.grid .grid-item .grid-item-shot {
  width: 215px;
  height: 100%;
}
.grid .grid-item .grid-item-shot img {
  float: none !important;
  max-width: 100%;
  margin: 20px auto !important;
  padding: 0 !important;
}
.grid .grid-item .grid-item-shot table,
.grid .grid-item .grid-item-shot td {
  vertical-align: middle;
  text-align: center;
}
.grid .grid-item--width2 {
  width: calc(100% - 2px);
}
.grid .grid-item--height2 {
  height: 816px;
}
.grid .grid-item--height05 {
  height: 204px;
  overflow: hidden;
}
.grid .item-plaque p .icon,
.grid .item-postplaque p .icon,
.grid .item-postframe p .icon,
.grid .item-video p .icon,
.grid .item-bear p .icon,
.grid .item-package p .icon,
.grid .item-frame p .icon,
.grid .item-stagephotography p .icon,
.grid .item-flower p .icon {
  cursor: pointer;
}
.grid .item-package {
  background: #fff url(../../images/bg-package.jpg) 50% 0 no-repeat;
  padding: 435px 30px 0;
  text-align: left;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
}
.grid .item-package h4 {
  color: #ae026e;
  margin: 0 0 15px;
  font-size: 36px;
}
.grid .item-package p {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 1.4em;
}
.grid .item-package table,
.grid .item-package td {
  vertical-align: middle;
}
.grid .item-package a.btn-large {
  color: #ae026e;
  border-color: #ae026e;
  margin-top: 20px;
  font-size: 30px;
  display: block;
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
}
.grid .item-package a.btn-large:hover {
  color: #fff;
  background: #ae026e;
}
.grid .item-frame {
  background: #dfe8f0;
  padding: 15px 0;
}
.grid .item-frame h4 {
  color: #ae026e;
  margin: 10px 0 15px;
  font-size: 36px;
}
.grid .item-frame p {
  margin: 0 0 10px;
  padding: 0;
  line-height: 1.3em;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
}
.grid .item-frame p span.price {
  font-weight: bold;
  font-size: 15px;
  padding: 0;
}
.grid .item-frame p .icon {
  float: right;
  margin: 2px 0 0;
  font-size: 30px;
  color: #ae026e;
}
.grid .item-frame .grid-item-desc,
.grid .item-frame .grid-item-shot {
  width: 100% !important;
  float: none !important;
  height: auto !important;
}
.grid .item-frame .grid-item-desc img,
.grid .item-frame .grid-item-shot img {
  margin-top: 0 !important;
}
.grid .item-plaque,
.grid .item-postplaque,
.grid .item-postframe,
.grid .item-video,
.grid .item-stagephotography,
.grid .item-bear {
  background: url(../../images/bg-plaque.jpg) 0 60% no-repeat;
  background-size: 200% auto;
  padding: 15px;
  color: #FFFFFF;
}
.grid .item-plaque h4,
.grid .item-postplaque h4,
.grid .item-postframe h4,
.grid .item-video h4,
.grid .item-stagephotography h4,
.grid .item-bear h4 {
  margin: 10px 0 15px;
  font-size: 36px;
}
.grid .item-plaque p,
.grid .item-postplaque p,
.grid .item-postframe p,
.grid .item-video p,
.grid .item-stagephotography p,
.grid .item-bear p {
  margin: 0 0 25px;
  padding: 0;
  font-size: 21px;
  line-height: 1.2em;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
}
.grid .item-plaque p span.price,
.grid .item-postplaque p span.price,
.grid .item-postframe p span.price,
.grid .item-video p span.price,
.grid .item-stagephotography p span.price,
.grid .item-bear p span.price {
  font-weight: bold;
}
.grid .item-plaque p .icon,
.grid .item-postplaque p .icon,
.grid .item-postframe p .icon,
.grid .item-video p .icon,
.grid .item-stagephotography p .icon,
.grid .item-bear p .icon {
  float: right;
  margin: 2px 0 0;
  font-size: 30px;
  color: #FFFFFF;
}
.grid .item-postplaque p .icon,
.grid .item-postframe p .icon,
.grid .item-video p .icon,
.grid .item-stagephotography p .icon,
.grid .item-bear p .icon {
  margin-top: -2px;
}
.grid .item-stagephotography p,
.grid .item-plaque p {
  margin: 0 0 10px;
  padding: 0;
  font-size: 19px;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
}
.grid .item-stagephotography p span.price,
.grid .item-plaque p span.price {
  font-weight: bold;
  padding-left: 0;
  font-size: 16px;
}
.grid .item-stagephotography p .icon,
.grid .item-plaque p .icon {
  float: right;
  margin: -2px 0 0;
  font-size: 30px;
}
.grid .item-postframe {
  background: url(../../images/bg-postframe.jpg) 0 0 no-repeat;
  background-size: cover;
}
.grid .item-video {
  background: url(../../images/bg-video.jpg) 0 0 no-repeat;
  background-size: cover;
}
.grid .item-bear {
  background: #e4e0e2;
}
.grid .item-bear h4,
.grid .item-bear p,
.grid .item-bear p > .icon {
  color: #012b5d;
}
.grid .item-flower {
  background: #2a2834;
  padding: 5px;
  color: #FFFFFF;
  width: calc(100% - 2px);
  height: 215px;
  overflow: hidden;
}
.grid .item-flower h4 {
  margin: 10px 0 15px;
  font-size: 36px;
}
.grid .item-flower p {
  margin: 0 0 25px;
  padding: 0;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
}
.grid .item-flower p span.price {
  font-weight: bold;
}
.grid .item-flower p .icon {
  float: right;
  margin: -2px 0 0;
  font-size: 30px;
  color: #FFFFFF;
}
.grid .item-flower .item-detail {
  float: left;
  text-align: left;
}
.grid .item-flower .item-detail p.half {
  float: left;
  width: calc(50% - 30px);
  margin: 0 30px 0 0;
}
.grid .item-flower .grid-item-shot,
.grid .item-flower .grid-item-desc {
  float: left;
  width: 50%;
}
.grid .item-studio {
  background: url(../../images/bg-studio.jpg) 0 0 no-repeat;
  background-size: cover;
}
.grid .item-studio .item-detail,
.grid .item-studio table,
.grid .item-studio td {
  width: 100%;
  height: 100%;
  color: #FFFFFF;
  vertical-align: middle;
  text-align: center;
}
.grid .item-studio .item-detail h4,
.grid .item-studio table h4,
.grid .item-studio td h4 {
  font-size: 45px;
}
.grid .item-stagephotography {
  background: #eadeef;
  color: #0a2240;
  width: calc(100% - 2px);
  height: auto;
}
.grid .item-stagephotography p {
  font-size: 16px;
}
.grid .item-stagephotography p .icon {
  color: #0a2240;
}
.grid .item-stagephotography h4 {
  color: #ae026e;
}
.grid.galleryGrid {
  height: auto !important;
  max-width: none !important;
  margin: 3.5em auto;
  overflow: hidden !important;
  background: transparent;
}
.grid.galleryGrid .masonry {
  width: 100%;
  position: relative;
  margin: 0 auto;
  padding: 0 1.5em 0;
  font-size: .85em;
}
.grid.galleryGrid .grid-item {
  position: absolute;
  background: rgba(0, 0, 0, 0.85);
  padding: 0;
  float: none;
  height: auto;
  overflow: hidden;
  cursor: pointer;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  *behavior: none;
  -webkit-box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  height: 346px;
  width: 254px;
}
.grid.galleryGrid .grid-item[data-ss-colspan="2"] {
  width: 520px;
  height: 346px;
}
.grid.galleryGrid .grid-item img {
  max-width: 100%;
  width: 100%;
  height: auto;
  display: block;
}
.grid.galleryGrid .grid-item a.gallery-link {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
}
.grid.galleryGrid .grid-item .favouriteBtn,
.grid.galleryGrid .grid-item .gridCartBtn {
  position: absolute;
  top: 14px;
  left: 10px;
  font-size: 20px;
  z-index: 3;
}
.grid.galleryGrid .grid-item .gridCartBtn {
  left: auto;
  right: 10px;
}
.grid.galleryGrid .grid-item .gridCartBtn:hover {
  color: #f676c6;
}
.grid.galleryGrid .grid-item:after {
  content: "\e814";
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 2;
  color: #fff;
  font-family: "hyphenio";
  font-size: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
}
.grid.galleryGrid .grid-item:hover:after {
  opacity: 1;
}
.grid.galleryGrid .grid-item .icon-heart,
.grid.galleryGrid .grid-item .icon-heart-empty {
  transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
}
.grid.galleryGrid .grid-item .icon-heart {
  display: none;
}
.grid.galleryGrid .grid-item .icon-heart-empty {
  display: block;
}
.grid.galleryGrid .grid-item.isFavourite .icon-heart {
  display: block;
  color: #f676c6;
}
.grid.galleryGrid .grid-item.isFavourite .icon-heart-empty {
  display: none;
}
.grid.grid-preceremony.grid-1 .grid-item {
  width: calc(100% - 2px) !important;
  height: auto !important;
}
.grid.grid-preceremony.grid-2 .grid-item {
  height: 815px;
  padding: 435px 0 0;
  position: relative;
}
.grid.grid-preceremony.grid-2 .grid-item .grid-item-desc {
  display: block;
  float: none;
  width: 100%;
  padding: 0 20px !important;
  position: relative;
  z-index: 2;
}
.grid.grid-preceremony.grid-2 .grid-item .grid-item-shot {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 1;
}
.grid.grid-preceremony.grid-2 .grid-item .grid-item-shot table,
.grid.grid-preceremony.grid-2 .grid-item .grid-item-shot td {
  width: 100%;
  height: 435px;
}
.grid.grid-preceremony.grid-2 .grid-item .grid-item-shot img {
  float: none !important;
  max-width: 450px;
  margin: 0 auto;
}
.grid.grid-preceremony.grid-2 .grid-item.item-flower,
.grid.grid-preceremony.grid-2 .grid-item.item-stagephotography {
  width: calc(50% - 2px);
  height: 815px;
}
.grid.grid-preceremony.grid-3 .grid-item {
  position: relative;
}
.grid.grid-preceremony.grid-3 .grid-item:first-child {
  height: 815px;
}
.grid.grid-preceremony.grid-3 .grid-item .grid-item-desc,
.grid.grid-preceremony.grid-3 .grid-item .grid-item-shot {
  float: left;
}
.grid.grid-preceremony.grid-3 .grid-item .grid-item-desc {
  display: block;
  padding: 0 20px !important;
  width: calc(100% - 215px);
}
.grid.grid-preceremony.grid-3 .grid-item .grid-item-shot {
  width: 215px;
  height: 100%;
}
.grid.grid-preceremony.grid-3 .grid-item .grid-item-shot img {
  float: none !important;
  max-width: 100%;
  margin: 20px auto;
  padding: 0 !important;
}
.grid.grid-preceremony.grid-3 .grid-item.item-flower,
.grid.grid-preceremony.grid-3 .grid-item.item-stagephotography {
  width: calc(50% - 2px);
  height: 408px;
}

.grid.grid-preceremony.grid-4 .grid-item {
  position: relative;
}
.grid.grid-preceremony.grid-4 .grid-item.item-stagephotography {
  width: calc(100% - 2px);
  height: auto;
}
.grid.grid-preceremony.grid-5 .grid-item {
  position: relative;
}
.grid.grid-preceremony.grid-5 .grid-item:first-child {
  height: 815px;
}
.grid.grid-preceremony.grid-5 .grid-item .grid-item-desc,
.grid.grid-preceremony.grid-5 .grid-item .grid-item-shot {
  float: left;
}
.grid.grid-preceremony.grid-5 .grid-item .grid-item-desc {
  display: block;
  padding: 0 20px !important;
  width: calc(100% - 215px);
}
.grid.grid-preceremony.grid-5 .grid-item .grid-item-shot {
  width: 215px;
  height: 100%;
}
.grid.grid-preceremony.grid-5 .grid-item .grid-item-shot img {
  float: none !important;
  max-width: 100%;
  margin: 20px auto;
  padding: 0 !important;
}
.grid.grid-preceremony.grid-5 .grid-item.item-flower,
.grid.grid-preceremony.grid-5 .grid-item.item-stagephotography {
  width: calc(50% - 2px);
  height: 408px;
}
.grid.grid-postceremony.grid-1 .grid-item:last-child,
.grid.grid-postceremony.grid-3 .grid-item:last-child,
.grid.grid-postceremony.grid-5 .grid-item:last-child {
  width: calc(100% - 2px) !important;
}
/*.grid.grid-postceremony .grid-item:nth-child(5) {
  width: calc(100% - 2px);
  height: auto;
}
.grid.grid-postceremony.grid-1 .grid-item:nth-child(3) {
  width: calc(100% - 2px);
}*/
.mode-option {
  width: 80px;
  height: 100%;
  background: #333;
  position: relative;
  text-align: center;
  font-size: 12px;
  vertical-align: top !important;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 300;
  font-style: normal;
}
.mode-option .mode {
  height: 60px;
  margin: 20px 0;
}
.mode-option span {
  display: block;
  line-height: 1.3em;
  padding: 5px 0 0;
}
.mode-option i.fa {
  cursor: pointer;
  font-size: 30px;
  opacity: 0.3;
  display: inline-block;
}
.mode-option i.fa:hover {
  opacity: 1;
}
.photo-wrap {
  position: relative;
  z-index: 11;
  padding: 0.4em;
  background: #000000;
  min-width: 350px;
  min-height: 258px;
}
.galleryPage .photo-wrap {
  background: #fff;
}
.buy-option-wrapper {
  background: #e2e8f0;
  padding: 0;
  position: relative;
  vertical-align: top;
  width: 350px;
  height: 100%;
  margin-left: -350px;
  z-index: 10;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.buy-option-wrapper table,
.buy-option-wrapper table td {
  height: 100%;
  vertical-align: top !important;
}
.buy-option-wrapper .buy-option-slider {
  height: 100vh;
  width: 700px;
  position: absolute;
  top: 0;
  left: 0;
  color: #04172e;
  transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
}
.buy-option-wrapper .buy-option-slider.slided {
  left: -350px;
}
.buy-option-wrapper .buy-option {
  position: absolute;
  width: 350px;
  top: 0;
  left: 0;
  padding: 0;
  overflow: auto;
  height: calc(100% - 50px);
  color: #04172e;
}
.buy-option-wrapper .option-item-desc {
  position: absolute;
  top: 0;
  left: 350px;
  text-align: left;
  padding: 10px;
  overflow: auto;
  height: calc(100% - 50px);
  width: 50%;
  color: #04172e;
}
.buy-option-wrapper .option-item-desc .icon-arrow-left {
  float: left;
  cursor: pointer;
  margin: 8px 10px 0 0;
}
.buy-option-wrapper .option-item-desc .icon-arrow-left:hover {
  color: #ae026e;
}
.buy-option-wrapper .option-item-desc h4 {
  margin: 0 0 15px;
  float: left;
  width: calc(100% - 35px);
}
.buy-option-wrapper .option-item-desc .productDesc {
  clear: both;
  font-family: Georgia;
  font-style: italic;
  font-size: 15px;
  line-height: 1.5em;
}
.buy-option-wrapper .addtocartbtn {
  position: absolute;
  bottom: 6px;
  left: 5px;
  margin: 0;
  display: block;
  width: calc(100% - 10px);
  line-height: 39px;
  font-size: 17px;
  padding: 0;
  font-family: "Source Sans Pro", sans-serif;
}
/* GALLERY MODULE */
.photoscount,
.event {
  font-size: 28px;
  font-weight: 400;
}
.photoscount {
  margin: 15px 0 0 15px;
  float: left;
  text-align: center;
  cursor: pointer;
  padding-bottom: 2px;
  font-size: 18px;
}
.photoscount .icon-heart {
  color: #ae026e;
}
.photoscount u {
  border-bottom: none;
  text-decoration: none;
  color: #ae026e;
}
.photoscount:hover u {
  color: #ae026e;
  border-bottom: dashed 1px #ae026e;
}
.gotoCart {
  margin: 15px 15px 0 0;
  display: block;
  float: right;
  color: #ae026e;
  font-size: 18px;
}
.gotoCart u {
  border-bottom: none;
  text-decoration: none;
  color: #ae026e;
}
.gotoCart:hover u {
  color: #ae026e;
  border-bottom: dashed 1px #ae026e;
}
.galleryPage .gotoCart {
  color: #ae026e;
}
.galleryPage .gotoCart u {
  color: #fff;
}
.galleryPage .gotoCart:hover u {
  color: #fff;
  border-color: #ae026e;
}
#photo-list-wrapper {
  width: 100%;
  margin: 0 0 25px;
  padding: 25px;
  position: relative;
  min-height: 140px;
}
#photo-list-wrapper .grid-item table,
#photo-list-wrapper .grid-item table td {
  width: 150px;
  height: 150px;
  vertical-align: middle;
}
#photo-list-wrapper #thumbnail_list {
  width: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  text-align: center;
}
#photo-list-wrapper #thumbnail_list .grid-item {
  position: relative;
  -moz-transition: .25s;
  -webkit-transition: .25s;
  -o-transition: .25s;
  transition: .25s;
  display: inline-block;
  margin: 3px;
  list-style: none;
  height: 150px;
  width: 150px;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
}
#photo-list-wrapper #thumbnail_list .grid-item img {
  max-height: 100%;
  max-width: 150px;
  border: solid 3px #fff;
}
#photo-list-wrapper #thumbnail_list .grid-item .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  padding: 9px 0 0;
  line-height: 30px;
  margin: -15px 0 0 -15px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  behavior: url(includes/plugins/pie/PIE.htc);
}
#photo-list-wrapper #thumbnail_list .grid-item .icon.icon-heart {
  display: none;
}
#photo-list-wrapper #thumbnail_list .grid-item.selected img {
  background: rgba(0, 0, 0, 0.7);
  opacity: 0.6;
}
#photo-list-wrapper #thumbnail_list .grid-item.selected img.portrait {
  height: 100%;
  width: auto;
}
#photo-list-wrapper #thumbnail_list .grid-item.selected img.landscape {
  width: 100%;
  height: auto;
  vertical-align: middle;
}
#photo-list-wrapper #thumbnail_list .grid-item.isFavourite .icon.icon-heart {
  display: block;
}
.service_desc {
  border-bottom: none;
  padding: 0 20px 0;
}
#load_more {
  width: 150px;
  margin: 0 auto 15px;
  display: block;
}
#serviceLogin {
  text-align: center;
}
#serviceLogin h3 {
  display: inline-block;
}
#serviceLogin input[type=text] {
  width: 150px;
  margin: 0 10px;
}
.selected-screen {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  background: rgba(0, 0, 0, 0.6);
  display: none;
}
.icon-unexpand {
  position: absolute;
  top: 15px;
  right: 10px;
  font-size: 25px;
  color: #fff;
  cursor: pointer;
}
.icon-unexpand:hover {
  color: #4a85a3;
}
.navarrow {
  position: absolute;
  margin: 0;
  top: 50%;
  z-index: 999;
}
.selectedicon,
.addselection,
.navarrow i {
  display: block;
  color: #fff;
  cursor: pointer;
  background: #ae026e;
  width: 38px;
  height: 38px;
  text-align: center;
  -webkit-box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  transition: all 0.2s cubic-bezier(0.67, 0.13, 0.1, 0.81), transform 0.15s cubic-bezier(0.67, 0.13, 0.1, 0.81);
  border-radius: 999px;
}
.nextarrow {
  right: 10px;
  margin: -38px 0 0;
}
.nextarrow i {
  padding: 13px 0 0 5px;
}
.prevarrow {
  left: 10px;
  margin: -38px 0 0;
}
.prevarrow i {
  padding: 13px 3px 0 0;
}
.selectedicon,
.addselection {
  font-size: 30px;
  width: 70px;
  height: 70px;
  padding: 23px 15px;
  position: absolute;
  bottom: 35px;
  left: 50%;
  margin: 0 0 0 -35px;
  color: #fff;
}
.selectedicon {
  padding: 20px 15px;
}
.addselection.selected {
  color: #fff;
}
.photo-list-pager {
  text-align: center;
}
.photo-list-pager .btn {
  background: none;
  border: none;
  color: #337ab7;
  height: 45px;
  line-height: 50px;
  font-size: 20px;
}
.photo-list-pager .btn.active {
  background: #ae016d;
  color: #fff;
  border-radius: 999px;
}
.selected-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-size: 11px;
  color: #fff;
  display: none;
  z-index: 99;
}
.selected .selected-container {
  display: block;
}
.selected-container .icon-heart {
  position: absolute;
  top: 50%;
  left: 50%;
  background: #ae026e;
  width: 20px;
  height: 20px;
  padding: 6px 3px;
  border-radius: 999px;
  margin: -10px 0 0 -10px;
}
/* SHOPPING CART MODULE */
.whitePage {
  color: #04172e;
}
.quicklinks {
  padding: 0px 0 20px;
}
.quicklinks a {
  color: #0074d9;
  line-height: 60px;
  font-style: italic;
}
.quicklinks .stageList {
  float: right;
  width: 60%;
}
.fullpageConstraint {
  height: calc(100vh - 270px);
  width: 100%;
}
.quick-jump {
  width: 240px;
  padding: 20px 15px 0 0;
  left: 0;
}
.quick-jump ul {
  padding: 0;
  margin: 0;
}
.quick-jump ul li {
  list-style: none;
  padding: 0;
  margin: 0;
}
.quick-jump ul li a {
  display: block;
  padding: 8px 15px;
  text-align: right;
}
.quick-jump ul li.active {
  background: #ad0970;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  behavior: url(includes/plugins/pie/PIE.htc);
}
.quick-jump ul li.active a {
  color: #fff;
}
.product-listing {
  width: 100%;
  padding: 25px;
  background: #122744;
}
.product-category-container {
  color: #fff;
  padding: 25px;
}
.product-category-wrapper {
  max-width: 1500px;
  margin: 0 auto;
  text-align: left;
  position: relative;
}
.product-category-wrapper:after {
  content: "";
  display: table;
  clear: both;
}
.product-category-wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  left: 400px;
  height: 100%;
  width: 20px;
  display: block;
  background: -webkit-radial-gradient(-3% 50%, ellipse cover, rgba(0, 0, 0, 0.25), rgba(97, 97, 97, 0) 80%);
  background: radial-gradient(ellipse at -3% 50%, rgba(0, 0, 0, 0.25), rgba(97, 97, 97, 0) 80%);
}
.popup-info {
  padding: 25px;
  line-height: 1.4em;
}
.popup-info iframe {
  margin: 0 0 35px;
}
.product-category {
  position: relative;
  margin: 0 30px 25px 0;
  padding: 0 40px 25px 40px;
  width: 400px;
  float: left;
  text-align: right;
  height: 100%;
}
.product-category .service-info {
  display: inline-block;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
  border-radius: 9999px;
  behavior: url(includes/plugins/pie/PIE.htc);
  margin: 20px 0 25px 10px;
  background: #48a8c0;
  color: #fff;
  font-size: 13px;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-style: normal;
  padding: 0 8px;
  width: 80%;
  height: 30px;
  line-height: 30px;
  text-align: center;
  cursor: pointer;
}
.product-category .service-info:hover {
  background: #21515d;
  transition: all 0.15s ease;
  -moz-transition: all 0.15s ease;
  -o-transition: all 0.15s ease;
  -webkit-transition: all 0.15s ease;
}
.product-category:after {
  content: "";
  display: table;
  clear: both;
  float: none;
}
.product-category span {
  display: block;
}
.product-category .service-heading {
  font-size: 60px;
  letter-spacing: -1px;
}
.product-category .service-detail {
  line-height: 1.5em;
  margin: 20px 0 0 0;
  font-weight: 400;
  font-family: 'Source Sans Pro', sans-serif;
}
.productContainer {
  width: 275px;
  margin: 0 10px 25px;
  display: block;
  border-bottom: solid 1px rgba(0, 0, 0, 0.9);
  border-right: solid 1px rgba(0, 0, 0, 0.9);
  background: #fff;
  padding: 0;
  vertical-align: top;
  position: relative;
  float: left;
  -webkit-box-shadow: 10px 10px 29px -8px rgba(0, 0, 0, 0.7);
  -moz-box-shadow: 10px 10px 29px -8px rgba(0, 0, 0, 0.7);
  box-shadow: 10px 10px 29px -8px rgba(0, 0, 0, 0.7);
}
.productContainer > .btn {
  display: block;
  height: auto;
  padding: 5px 20px 0;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  behavior: url(includes/plugins/pie/PIE.htc);
}
.productContainer .thumb {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 180px;
  background: #fff;
  text-align: center;
  vertical-align: middle;
  margin: 0;
  position: relative;
}
.productContainer .thumb img {
  max-width: 100%;
  max-height: 100%;
}
.productContainer .thumb-overlay {
  display: block;
  width: 100%;
  height: 50%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
}
.productContainer .productDescription {
  background: url(../../images/bg-panel.jpg) 0 0 no-repeat;
  background-size: cover;
  padding: 20px;
}
.productContainer .productDescription .title {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-style: normal;
  display: block;
  margin: 0;
  letter-spacing: -1px;
  font-size: 24px;
}
.productContainer .productDescription .title span {
  display: block;
  padding: 5px 0 0;
  font-size: 44px;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 600;
  font-style: normal;
}
.productContainer .productDescription .title span sup {
  font-size: 17px;
  padding: 0 3px 0 0;
}
.productContainer .productDescription span i {
  font-size: 15px;
  margin: -30px 0 0 8px;
  cursor: pointer;
  position: relative;
  float: right;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 30px;
}
.productContainer .productDescription .descriptionWrapper {
  position: relative;
  overflow: hidden;
  height: 1px;
  margin: 0;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.productContainer .productDescription .descriptionWrapper p.description {
  font-size: 14px;
  border-top: solid 1px #fff;
  background: rgba(0, 0, 0, 0.3);
  margin: 0;
  padding: 15px;
}
.productContainer .price {
  display: block;
  position: absolute;
  margin: 0;
  bottom: -25px;
  right: 5px;
  color: #fff;
  background: #ae026e;
  width: 50px;
  height: 50px;
  text-align: center;
  transition: all 0.2s cubic-bezier(0.67, 0.13, 0.1, 0.81), transform 0.15s cubic-bezier(0.67, 0.13, 0.1, 0.81);
  cursor: pointer;
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
  behavior: url(includes/plugins/pie/PIE.htc);
  -webkit-box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
}
.productContainer .price i {
  display: inline;
  line-height: 50px;
  font-size: 20px;
}
.productContainer .price:hover {
  background: #e70091;
}
.cart-items > tbody > tr > td {
  position: relative;
  padding-right: 0px;
}
.cart-items > tbody > tr > td:hover {
  background: rgba(0, 0, 0, 0.03);
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.cart-items > tbody > tr > td > div {
  float: left;
}
.cart-items .thumbnail {
  width: 130px;
  height: 130px;
  overflow: hidden;
  border: 1px solid #ddd;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}
.cart-items .thumbnail img {
  max-width: 100%;
  max-height: 100%;
}
.cart-items .cart-item-info {
  padding: 0 20px;
  width: calc(100% - 240px);
  position: relative;
  min-height: 130px;
}
.cart-items .cart-item-info span.order-item {
  display: block;
  margin: 3px 0 0;
}
.cart-items .cart-item-info > h6 > span {
  font-size: 0.65em;
  font-family: 'Georgia', serif;
  font-weight: 300;
  font-style: italic;
}
.cart-items .cart-item-info p {
  font-size: 13px;
}
.cart-items .cart-item-info .item-qty {
  display: inline-block;
  border: 1px solid #ddd;
  padding: 8px;
  font-size: 15px;
  position: absolute;
  bottom: 0;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  behavior: url(includes/plugins/pie/PIE.htc);
}
.cart-items .cart-item-remove,
.cart-items .cart-item-price {
  height: 130px;
}
.cart-items .cart-item-price {
  width: 70px;
  font-size: 22px;
  padding-right: 15px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: italic;
}
.cart-items .cart-item-price span {
  padding-bottom: 5px;
}
.cart-items .cart-item-remove {
  width: 40px;
}
.cart-items .cart-item-remove i {
  padding: 13px 10px;
  cursor: pointer;
  font-size: 14px;
}
.cart-items.small-cart-items > tbody > tr > td {
  padding-left: 10px;
}
.cart-items.small-cart-items .cart-item-info {
  width: calc(100% - 70px);
  min-height: 0;
  padding-left: 0;
}
.cart-items.small-cart-items .cart-item-info h6 {
  font-size: 18px;
  margin-bottom: 10px;
}
.cart-items.small-cart-items .cart-item-info span.item-qty {
  position: relative;
}
.cart-items.small-cart-items .cart-item-remove,
.cart-items.small-cart-items .cart-item-price {
  height: auto;
  font-size: 20px;
}
.cart-items.material-style {
  border: none;
}
.cart-items.material-style > tbody > tr > td {
  display: block;
  margin: 0 0 20px;
  background: #fefefe;
  -webkit-box-shadow: 0px 3px 5px -2px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0px 3px 5px -2px rgba(0, 0, 0, 0.15);
  box-shadow: 0px 3px 5px -2px rgba(0, 0, 0, 0.15);
  border: 1px solid #ddd;
  height: 160px;
}
.cart-items.material-style > tbody > tr > td:after {
  content: "";
  display: table;
  clear: both;
  float: none;
}
.cart-voucher > .control-group {
  padding: 10px 15px;
  border: 1px solid #ddd;
}
.cart-voucher > .control-group input.text {
  margin: 0 0 15px;
}
.cart-voucher h6 {
  background: #ae026e;
  color: #fff;
  padding: 15px 16px 10px;
  font-size: 19px;
  margin: 0;
}
.cart-total {
  padding: 20px 0;
}
.cart-total > span {
  display: inline-block;
  font-size: 18px;
  width: 73%;
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: normal;
}
.cart-total > span:last-child {
  width: 25%;
  font-size: 28px;
  text-align: right;
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: italic;
}
.cart-checkout {
  text-align: center;
}
.cart-checkout .btn {
  display: block;
  margin: 0 0 15px;
  padding: 10px 0;
  height: auto;
  background: #0074d9;
  color: #fff;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  behavior: url(includes/plugins/pie/PIE.htc);
  font-style: normal;
}
.cart-checkout .btn:hover {
  background: #0d63a6;
  color: #fff;
}
.cart-checkout a {
  color: #0074d9;
}
.cart-checkout a:hover {
  color: #0d63a6;
}
p.more_info {
  font-size: 13px;
  margin: 15px 0 0;
}
.orderModule .imageContainerWrap,
.orderModule .gridScroller {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9;
}
.orderModule .gridScroller {
  z-index: 10;
}
.orderModule,
.orderModule tbody tr td {
  vertical-align: middle;
  position: relative;
}
.orderModule#enlargeModule,
.orderModule tbody tr td#enlargeModule {
  width: 100%;
}
.orderModule .upper,
.orderModule tbody tr td .upper {
  position: relative;
  z-index: 1;
}
.orderModule .upper table.splitPane,
.orderModule tbody tr td .upper table.splitPane {
  max-width: 1150px;
  margin: 20px auto;
}
.orderModule .upper table.splitPane td,
.orderModule tbody tr td .upper table.splitPane td {
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}
.orderModule .lower,
.orderModule tbody tr td .lower {
  height: 255px;
  background: #dfe8f0;
  position: relative;
  z-index: 2;
  transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
}
.orderModule .lower table,
.orderModule tbody tr td .lower table {
  width: 100%;
}
.orderModule .lower table,
.orderModule tbody tr td .lower table,
.orderModule .lower td,
.orderModule tbody tr td .lower td {
  height: 100%;
}
.orderModule .lower .leftpane,
.orderModule tbody tr td .lower .leftpane,
.orderModule .lower .rightpane,
.orderModule tbody tr td .lower .rightpane {
  background: #04172e;
}
.orderModule .lower .leftpane,
.orderModule tbody tr td .lower .leftpane {
  width: 70px;
  text-align: center;
  padding: 30px 15px 10px;
  vertical-align: top;
}
.orderModule .lower .leftpane span.count,
.orderModule tbody tr td .lower .leftpane span.count {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
}
.orderModule .lower .leftpane span,
.orderModule tbody tr td .lower .leftpane span,
.orderModule .lower .leftpane a,
.orderModule tbody tr td .lower .leftpane a {
  color: #FFFFFF;
  display: block;
}
.orderModule .lower .leftpane span .icon,
.orderModule tbody tr td .lower .leftpane span .icon,
.orderModule .lower .leftpane a .icon,
.orderModule tbody tr td .lower .leftpane a .icon {
  font-size: 22px;
}
.orderModule .lower .leftpane a,
.orderModule tbody tr td .lower .leftpane a {
  padding: 15px 0 10px;
}
.orderModule .lower .productList,
.orderModule tbody tr td .lower .productList {
  position: relative;
}
.orderModule .lower .productList#CustomScrollbar,
.orderModule tbody tr td .lower .productList#CustomScrollbar {
  width: calc(100vw - 242px);
  height: 100%;
  overflow: hidden;
}
.orderModule .lower .productList#CustomScrollbar .viewport,
.orderModule tbody tr td .lower .productList#CustomScrollbar .viewport {
  width: calc(100vw - 242px);
  height: 255px;
}
.orderModule .lower .productList .productContainer,
.orderModule tbody tr td .lower .productList .productContainer {
  margin-right: -999em;
  white-space: nowrap;
  list-style: none;
  height: 255px;
  width: auto;
  margin: 0;
  padding: 0;
  display: inline;
}
.orderModule .lower .productList .productContainer .productGroup,
.orderModule tbody tr td .lower .productList .productContainer .productGroup {
  text-align: left;
  position: relative;
  padding: 15px 65px 0 20px;
  color: #04172e;
  height: 240px;
  white-space: normal;
  display: inline-block;
  vertical-align: top;
}
.orderModule .lower .productList .productContainer .productGroup h4,
.orderModule tbody tr td .lower .productList .productContainer .productGroup h4 {
  margin: 0 0 3px;
  font-size: 24px;
}
.orderModule .lower .productList .productContainer .productGroup h5,
.orderModule tbody tr td .lower .productList .productContainer .productGroup h5 {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 15px;
  margin: 0 0 13px;
  line-height: 1.2em;
}
.orderModule .lower .productList .productContainer .productGroup.productHighlight,
.orderModule tbody tr td .lower .productList .productContainer .productGroup.productHighlight {
  background: url(../../images/bg-productHighlight.jpg);
  background-size: cover;
  color: #FFFFFF;
  padding-right: 20px;
  width: 320px;
}
.orderModule .lower .productList .productContainer .productGroup.productHighlight .productDetail,
.orderModule tbody tr td .lower .productList .productContainer .productGroup.productHighlight .productDetail {
  width: 50%;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail {
  width: 110px;
  float: left;
  text-align: center;
  height: calc(100% - 80px);
  display: block;
  cursor: pointer;
  position: relative;
  padding: 0 8px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  behavior: url(includes/plugins/pie/PIE.htc);
}
.orderModule .lower .productList .productContainer .productGroup .productDetail .icon-container,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail .icon-container {
  height: 70px;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail .icon-container table,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail .icon-container table,
.orderModule .lower .productList .productContainer .productGroup .productDetail .icon-container td,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail .icon-container td {
  width: 100%;
  height: 100%;
  vertical-align: middle;
  text-align: center;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail span,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail span {
  display: block;
  font-size: 14px;
  line-height: 1em;
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: normal;
  margin: 0;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail span.strikethrough,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail span.strikethrough,
.orderModule .lower .productList .productContainer .productGroup .productDetail span.price,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail span.price {
  font-size: 13px;
  display: inline-block;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail span.icon-hover,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail span.icon-hover {
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -24px;
  display: none;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail span.icon-hover .icon,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail span.icon-hover .icon {
  font-size: 35px;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail:hover,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail:hover {
  background: #a3c0d1;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail:hover span.price,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail:hover span.price,
.orderModule .lower .productList .productContainer .productGroup .productDetail:hover span.strikethrough,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail:hover span.strikethrough {
  display: none;
}
.orderModule .lower .productList .productContainer .productGroup .productDetail:hover span.icon-hover,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .productDetail:hover span.icon-hover {
  display: block;
}
.orderModule .lower .productList .productContainer .productGroup .hiddenProduct,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .hiddenProduct {
  width: 0px;
  height: calc(100% - 80px);
  overflow: hidden;
  white-space: nowrap;
}
.orderModule .lower .productList .productContainer .productGroup .hiddenProduct .productDetail,
.orderModule tbody tr td .lower .productList .productContainer .productGroup .hiddenProduct .productDetail {
  height: 100%;
}
.orderModule .lower .productList .productContainer .productGroupLoadMore,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore {
  width: 50px;
  height: 210px;
  position: absolute;
  top: 15px;
  right: 0;
  color: #ae026e;
  font-size: 16px;
  cursor: pointer;
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: italic;
}
.orderModule .lower .productList .productContainer .productGroupLoadMore span,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore span {
  line-height: 1.1em;
  display: block;
}
.orderModule .lower .productList .productContainer .productGroupLoadMore:before,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore:before {
  content: "";
  background: #04172e;
  width: 1px;
  height: 75%;
  position: absolute;
  top: 40px;
  left: 50%;
  display: block;
}
.orderModule .lower .productList .productContainer .productGroupLoadMore .icon,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore .icon {
  display: block;
  font-size: 36px;
}
.orderModule .lower .productList .productContainer .productGroupLoadMore table,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore table,
.orderModule .lower .productList .productContainer .productGroupLoadMore td,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore td {
  width: 100%;
  height: 100px;
  vertical-align: middle;
  text-align: center;
  background: #dfe8f0;
}
.orderModule .lower .productList .productContainer .productGroupLoadMore table,
.orderModule tbody tr td .lower .productList .productContainer .productGroupLoadMore table {
  position: absolute;
  top: 70px;
  left: 0;
}
.orderModule .lower .rightpane,
.orderModule tbody tr td .lower .rightpane {
  width: 170px;
  text-align: left;
  padding: 20px;
  vertical-align: middle;
}
.orderModule .lower .rightpane h3,
.orderModule tbody tr td .lower .rightpane h3 {
  font-size: 24px;
  margin: 0 0 20px;
  padding: 0;
}
.orderModule .lower .rightpane table,
.orderModule tbody tr td .lower .rightpane table,
.orderModule .lower .rightpane td,
.orderModule tbody tr td .lower .rightpane td {
  height: auto;
}
.orderModule .lower .rightpane table .icon-cart,
.orderModule tbody tr td .lower .rightpane table .icon-cart,
.orderModule .lower .rightpane td .icon-cart,
.orderModule tbody tr td .lower .rightpane td .icon-cart {
  font-size: 25px;
}
.orderModule .lower .rightpane td:nth-child(even),
.orderModule tbody tr td .lower .rightpane td:nth-child(even) {
  text-align: right;
}
.orderModule .lower .rightpane .cartPrice td,
.orderModule tbody tr td .lower .rightpane .cartPrice td {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  padding: 25px 0;
}
.loading-container {
  background: #fff url(../../images/ajax-loader.gif) 50% 50% no-repeat;
  background-size: 200px auto;
  -webkit-border-radius: 20%;
  -moz-border-radius: 20%;
  border-radius: 20%;
  behavior: url(includes/plugins/pie/PIE.htc);
  width: 100px;
  min-height: 100px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -50px 0 0 -50px;
  z-index: 1;
}
#enlargedimgcontainer {
  position: relative;
  z-index: 2;
}
.forceImgHeight {
  min-height: 200px;
}
.orderModule {
  height: calc(100vh - 60px);
  overflow: hidden;
  /* SELECTED ITEM */
}
.orderModule.gridMode .gridScroller {
  z-index: 11;
  -webkit-filter: blur(0px);
  -moz-filter: blur(0px);
  -o-filter: blur(0px);
  -ms-filter: blur(0px);
  filter: blur(0px);
}
.orderModule.gridMode #gridModule {
  opacity: 1;
  position: relative;
}
.orderModule.gridMode .imageContainerWrap {
  transform: scale(1.1);
  opacity: 0;
  z-index: 10;
}
.orderModule.gridMode .service_desc {
  padding-right: 0px;
  padding-left: 0px;
}
.orderModule.buyMode .buy-option-wrapper {
  margin-left: 0px;
}
.orderModule.buyMode .loading-container {
  background: none;
}
.orderModule.buyMode .forceImgHeight {
  min-height: 0;
}
.orderModule .service_desc {
  padding-right: 17px;
  padding-left: 0;
}
.orderModule .gridScroller {
  z-index: 10;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -webkit-filter: blur(10px);
  -moz-filter: blur(10px);
  -o-filter: blur(10px);
  -ms-filter: blur(10px);
  filter: blur(10px);
}
.orderModule #gridModule {
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  z-index: 10;
  position: relative;
}
.orderModule .imageContainerWrap {
  transform: scale(1);
  opacity: 1;
  z-index: 11;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}
.orderModule .allPhotoBtn,
.orderModule .slideshowBtn {
  position: absolute;
  top: 20px;
  left: 20px;
  color: #012b5d;
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  cursor: pointer;
}
.orderModule .slideshowBtn {
  top: 8px;
  left: auto;
  right: 20px;
}
.orderModule table.splitPane td {
  width: 100%;
  height: 100%;
  vertical-align: top;
  color: #04172e;
}
.orderModule .toggleLowerPane {
  display: none;
  background: #04172e;
  color: #4a85a3;
  text-align: center;
  font-size: 22px;
  line-height: 40px;
  height: 50px;
}
.orderModule .toggleLowerPane span {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
}
.orderModule .toggleLowerPane .icon {
  font-size: 37px;
  line-height: 60px;
}
.orderModule .imageContainerWrap {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently not supported by any browser */
}
.orderModule .imageContainerWrap .arrowContainer,
.orderModule .imageContainerWrap .imageContainer {
  position: relative;
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.orderModule .imageContainerWrap .imageContainer {
  height: auto;
}
.orderModule .imageContainerWrap .arrowContainer {
  display: block;
  color: #fff;
  cursor: pointer;
  background: #ae026e;
  width: 80px;
  height: 80px;
  padding: 20px 0 0;
  text-align: center;
  -webkit-box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 3px -5px rgba(0, 0, 0, 0.3);
  transition: all 0.2s cubic-bezier(0.67, 0.13, 0.1, 0.81), transform 0.15s cubic-bezier(0.67, 0.13, 0.1, 0.81);
  position: absolute;
  top: 50%;
  margin-top: -40px;
  font-size: 45px;
  z-index: 99;
}
.orderModule .imageContainerWrap .arrowContainer.prev {
  left: 0;
  margin-left: 10px;
  padding-right: 2px;
}
.orderModule .imageContainerWrap .arrowContainer.next {
  right: 0;
  margin-right: 10px;
  padding-left: 2px;
}
.orderModule .imageContainerWrap .imageContainer {
  position: relative;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.orderModule .imageContainerWrap .imageContainer .icon-unexpand,
.orderModule .imageContainerWrap .imageContainer .icon-heart,
.orderModule .imageContainerWrap .imageContainer .icon-heart-empty {
  position: absolute;
  top: 15px;
  right: 10px;
  color: #fff;
  font-size: 20px;
  cursor: pointer;
  z-index: 3;
}
.orderModule .imageContainerWrap .imageContainer .icon-heart,
.orderModule .imageContainerWrap .imageContainer .icon-heart-empty {
  right: auto;
  left: 10px;
}
.orderModule .imageContainerWrap .imageContainer .icon-heart {
  color: #f676c6;
  display: none;
}
.orderModule .imageContainerWrap .imageContainer.isFavourite .icon-heart {
  display: block;
}
.orderModule .imageContainerWrap .imageContainer.isFavourite .icon-heart-empty {
  display: none;
}
.orderModule .imageContainerWrap .imageContainer > table {
  height: 100%;
}
.orderModule .productEnlargedDetail {
  opacity: 0;
  width: 450px;
  text-align: left;
  margin: 0 0 0 -225px;
  position: absolute;
  top: 50px;
  left: 50%;
  z-index: 2;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
}
.orderModule .productEnlargedDetail h4 {
  font-size: 26px;
  margin: 0 0 10px;
}
.orderModule .productEnlargedDetail h5 {
  font-family: 'Georgia', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 16px;
  line-height: 1.4em;
}
.orderModule .productEnlargedDetail h6 {
  font-family: 'Crimson Text', serif;
  font-weight: 600;
  font-style: normal;
  font-size: 20px;
}
.orderModule .productEnlargedDetail ul.selection {
  margin: 0 0 30px;
  padding: 0;
}
.orderModule .productEnlargedDetail ul.selection li {
  list-style: none;
  margin: 0 15px 0 0;
  line-height: 1em;
  padding: 4px;
  display: inline-block;
  border: solid 1px #CCCCCC;
  width: 73px;
}
.orderModule .productEnlargedDetail ul.selection li.active {
  border-color: #ae026e;
}
.orderModule .productEnlargedDetail ul.selection li img {
  width: 100%;
  height: 100%;
  display: block;
}
.orderModule.itemSelected .productEnlargedDetail {
  opacity: 1;
  margin-left: 0;
}
.orderModule.itemSelected .imageContainerWrap {
  width: 465px;
  height: 373px;
  margin: -187px 0 0 -555px;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer {
  width: 465px;
  height: 373px;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer table {
  width: 100%;
  height: 100%;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer table td {
  width: 100%;
  height: 100%;
  text-align: center !important;
  vertical-align: middle;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer img {
  width: 330px;
  height: auto;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer.portrait img {
  width: auto;
  height: 330px;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer .frameLayer {
  width: 100%;
  height: 100%;
  background: url(../../images/frame/frame01.png) 0 0 no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 99;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer .verticalFrameLayer {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  display: none;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer.portrait .frameLayer {
  display: none;
}
.orderModule.itemSelected .imageContainerWrap .imageContainer.portrait .verticalFrameLayer {
  display: block;
}
.orderModule.itemSelected table.splitPane td {
  width: 100%;
  text-align: center;
}
.orderModule.itemSelected .icon-expand,
.orderModule.itemSelected .arrowContainer {
  display: none;
}
.orderModule.itemSelected .lower {
  height: 50px;
}
.orderModule.itemSelected .toggleLowerPane {
  display: block;
  cursor: pointer;
}
.orderModule.itemSelected .productSelector {
  display: none;
}
/** STUDIO ORDERING **/
.cartupdated {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  font-size: 12px;
  color: #89b15f;
  border: solid 1px #89b15f;
  background: #dff2bf;
  height: 23px;
  line-height: 20px;
  width: 115px;
  display: none;
  position: absolute;
  top: 24px;
  right: 0px;
  text-align: center;
}
.download_img {
  list-style: none;
  position: relative;
  z-index: 99;
  display: block;
  height: 25px;
  margin: -50px 0 50px;
}
.download_img li {
  display: block;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
}
.download_img li a {
  width: 250px;
}
ul.purchase_option {
  margin: 0;
  padding: 0;
}
ul.purchase_option li {
  list-style: none;
}
.subcontainer,
.tab-content {
  position: relative;
  font-family: "Source Sans Pro", sans-serif !important;
}
.tab-content {
  font-weight: normal;
}
.option_content {
  padding: 0;
}
.option_content label {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently not supported by any browser */
  float: left;
  width: auto;
  text-transform: none;
  display: block;
  margin: 5px 6px 0 0;
  font-family: "Source Sans Pro", sans-serif;
  font-weight: 400;
}
.option_content table,
.option_content td {
  width: 100%;
  text-align: right;
  vertical-align: middle !important;
  padding: 12px 20px 8px;
  border-bottom: solid 1px #efefef;
}
.option_content table:hover,
.option_content td:hover {
  background: rgba(0, 0, 0, 0.05);
}
.option_content .price {
  text-align: right;
  float: right;
  margin: 0;
  font-style: normal;
  font-size: 16px;
  font-weight: 600;
  font-family: "Source Sans Pro", sans-serif;
  color: #ae026e;
}
.option_content .price .icon-wrap {
  margin: 0 -5px 0 10px;
  height: 24px;
  width: 24px;
  background: #ae026e;
  line-height: 24px;
  text-align: center;
  float: right;
  padding: 0;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
  border-radius: 9999px;
  behavior: url(includes/plugins/pie/PIE.htc);
  cursor: pointer;
  opacity: 0.7;
}
.option_content .price .icon-wrap:hover {
  opacity: 1;
}
.option_content .price i.icon {
  vertical-align: middle;
  font-size: 13px;
  color: #fff;
}
.option_content td:first-child {
  text-align: left;
}
.option_content td:first-child td {
  padding: 0;
}
.option_content .qty {
  width: auto;
  display: inline-block;
  position: relative;
  margin-top: -5px;
}
.option_content .qty i.fa {
  font-size: 10px;
}
.option_content .productName {
  font-size: 17px;
  font-weight: 400;
  margin: 0 0 5px;
  font-family: "Crimson Text", serif;
}
.option_content .productDesc {
  font-size: 13px;
  font-family: Georgia, serif;
  font-style: italic;
  display: block;
  opacity: 0.8;
  padding: 8px 0 0;
}
.option_content .option-item-desc .checkbox {
  padding: 5px 0 0 10px;
}
span.highlight {
  background: #6c3071;
  display: block;
  color: #fff;
  margin: 10px 0 5px;
  padding: 4px 15px 2px;
  font-size: 17px;
  -webkit-border-radius: 99px;
  -moz-border-radius: 99px;
  border-radius: 99px;
  font-style: italic;
}
span.highlight strong {
  color: #dfa736;
  font-weight: normal;
  font-style: italic;
}
.fixnote {
  display: none;
}
select.order_qty {
  width: 40px;
  height: 20px;
  line-height: 15px;
  font-size: 11px;
  text-align: center;
  margin: 0 0 0 3px;
  padding: 2px;
}
span.product_group_heading {
  display: block;
  padding: 7px 22px;
  margin: 0;
  border-bottom: solid 1px #e2e8f0;
  background: #0c172e !important;
  color: #fff;
  text-align: left;
  font-weight: 300;
  font-size: 20px;
  font-style: normal;
  font-family: "Crimson Text", sans-serif;
  letter-spacing: -1px;
  cursor: pointer;
}
.product_group {
  display: none;
}
.bundleActive .originalprice {
  text-decoration: line-through;
}
.bundleActive .nobundle {
  text-decoration: none !important;
}
.bundleprice {
  color: #cd0000;
  padding-left: 3px;
  display: none;
}
.bundleprice .price > span {
  text-decoration: line-through;
  display: block;
}
.bundleprice .price > span .nobundle,
.bundleprice .price > span .bundleprice {
  text-decoration: none;
}
.discountnotice {
  float: right;
  padding: 2px 5px;
  line-height: 1em;
  margin: 2px 0 0;
  display: block;
  text-transform: none;
}
.productListing h4 {
  margin: 0 0 30px;
}
.productListing h5 {
  cursor: pointer;
}
.productListing h5:hover {
  opacity: 0.8;
}
.productListing table {
  width: 50%;
  float: left;
}
.productListing table.fullwidth {
  width: 100%;
}
.productListing td {
  vertical-align: top;
  text-align: left;
  width: 200px;
  padding: 0 20px;
}
.productListing td.promo_productshot {
  text-align: center;
  vertical-align: middle;
}
.productListing td.promo_productshot img {
  max-width: 90%;
  margin: 0 auto;
}
.productListing td p {
  font-size: 14px;
}
.productListing td h5 {
  text-transform: uppercase;
  line-height: 1.2em;
  font-size: 18px;
  position: relative;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-style: normal;
  padding: 0 50px 0 0;
}
.productListing td h5 img {
  position: absolute;
  top: -5px;
  right: 0;
  display: none;
}
#productpop {
  padding: 15px;
  max-width: 700px;
}
#productpop .productcategory {
  text-transform: uppercase;
  font-size: 22px;
  margin: 0 0 20px;
}
#productpop td {
  padding: 8px;
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 400;
  font-style: normal;
  vertical-align: middle;
}
#productpop td .productname {
  display: block;
  font-size: 17px;
  font-weight: 600;
  margin: 0 0 5px;
}
#productpop .productlistingmiddlealign tr:nth-child(odd) td {
  background: #ae026e;
  color: #fff;
}
#productpop .productlistingmiddlealign td .productname {
  font-size: 0.9em;
  margin: 0;
}
#productpop .frametypename {
  display: block;
  text-align: left;
  margin: 15px 0 4px;
  padding-left: 6px;
}
#productpop .beartable {
  width: 50%;
  height: 120px;
  float: left;
}
#productpop .beartable td {
  width: 50%;
  padding: 0;
}
#productpop .beartable td img {
  max-width: 95px;
}
.afterpayments {
  margin: 0 0 15px;
}
#afterpay_insufficient {
  text-align: center;
  margin: 15px 0 0;
  padding: 15px 10px 10px;
}
#afterpay_insufficient a {
  color: #729d94;
}
#afterpay_insufficient a:hover {
  text-decoration: underline;
}
.afterpayments:after {
  display: table;
  content: '';
  clear: both;
  float: none;
}
.afterpayments .afterpayment {
  display: block;
  float: left;
  color: #012b5d;
  padding: 10px 15px 20px;
  margin: 0 10px;
  width: calc(25% - 20px);
  background: #c6d7ea;
  text-align: center;
  font-size: 15px;
  font-style: italic;
  font-weight: 600;
  line-height: 1.3em;
  position: relative;
}
.afterpayments .afterpayment:after {
  content: '\f054';
  font-family: 'FontAwesome';
  position: absolute;
  font-size: 18px;
  top: 33px;
  right: -17px;
  font-style: normal;
}
.afterpayments .afterpayment:first-child {
  margin-left: 0;
}
.afterpayments .afterpayment:last-child {
  margin-right: 0;
}
.afterpayments .afterpayment:last-child:after {
  content: "";
}
.afterpayments .afterpayment .value {
  display: block;
  font-size: 28px;
  letter-spacing: -1px;
  padding: 8px 0 0;
  font-style: normal;
}
.old-price {
  color: #ae026e !important;
  text-decoration: line-through !important;
  padding-right: 5px;
}

.checkoutWidget {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.6);
}
.checkoutWidget.active {
  display: block;
  z-index: 100;
}
.closeMobileCheckout {
  cursor: pointer;
}

.cartWidget {
  -webkit-border-radius: 999px;
  -moz-border-radius: 999px;
  border-radius: 999px;
  behavior: url(includes/plugins/pie/PIE.htc);
  transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -webkit-box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  position: fixed;
  margin: -80px 0 0 -90px;
  color: #fff;
  top: 50%;
  left: 50%;
  text-align: center;
  background: rgba(0, 0, 0, 0.9);
  width: 180px;
  height: 160px;
  padding: 15px 0;
  -webkit-border-radius: 9px;
  -moz-border-radius: 9px;
  border-radius: 9px;
  z-index: 99999;
  -webkit-perspective: 1000;
  -webkit-backface-visibility: hidden;
}
.cartWidget a {
  display: block;
  margin: 12px auto 8px;
}

/**********************
    Page Styles
***********************/
/*****************
    Pages
*****************/
/**********************
    Page Styles
***********************/
/* CSS Document */
@media screen and (max-width: 1500px) {
  .overlay.upperrift:before {
    top: -95px;
    transform: skewY(-3deg);
  }
  .productContainer {
    width: 275px;
  }
}
@media screen and (max-width: 1300px) {
  .overlay.upperrift:before {
    top: -100px;
    transform: skewY(-4deg);
  }
}
@media screen and (max-width: 1250px) {
  .productContainer {
    width: calc(33.3% - 20px);
  }
}
@media screen and (max-width: 1024px) {
  .sliceOfRainbow,
  header {
    height: 60px;
    -webkit-clip-path: none;
    clip-path: none;
    -moz-clip-path: none;
    position: absolute;
  }
  .bcg {
    background-size: 180% auto;
  }
  .stickyWrapper {
    margin: 0 auto 0px !important;
  }
  .stickyWrapper .push {
    display: none;
  }
  #hamburger {
    top: 15px !important;
    right: 15px !important;
    position: absolute !important;
  }
  .bodyGallery #hamburger {
    z-index: 13 !important;
  }
  header a.logo {
    top: 15px !important;
    left: 15px !important;
  }
  header .uniSection {
    display: none;
  }
  header .gfplogo {
    width: 150px;
    height: 50px;
  }
  header .gfplogo:after {
    width: 100%;
    height: 100%;
    background-size: 150px auto;
  }
  .content.main {
    top: 60px;
    height: auto;
    z-index: 9;
  }
  .content.main .overlay {
    min-height: calc(100vh - 377px);
  }
  .forceMinHeight .content.main .overlay {
    min-height: calc(100vh - 180px);
  }
  .universityList .unilogo-container {
    width: calc(25% - 40px);
  }
  .universityList .fulllist .unilogo-container {
    width: calc(12.5% - 20px);
  }
  .grid.grid-preceremony .grid-item {
    height: 500px;
  }
  .grid.grid-preceremony .grid-item .grid-item-shot {
    float: none;
    margin: 0 auto;
    height: auto;
  }
  .grid.grid-preceremony .grid-item .grid-item-shot img {
    max-width: 85% !important;
  }
  .grid.grid-preceremony .grid-item.item-package .btn.btn-large {
    font-size: 27px;
    height: 60px;
    line-height: 58px;
    max-width: 95%;
    margin: 15px auto 0;
  }
  .grid.grid-preceremony .grid-item .grid-item-desc {
    width: 100%;
  }
  .grid.grid-preceremony .grid-item:first-child {
    height: 1000px;
  }
  .grid.grid-preceremony.grid-2 .grid-item:first-child {
    height: auto;
  }
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(2),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(2),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(2),
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(3),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(3),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(3) {
    width: calc(50% - 2px);
    height: 500px;
  }
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(4),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(4),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(4),
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(5),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(5),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(5) {
    width: calc(100% - 2px);
    height: auto;
  }
  .grid.grid-preceremony.grid-3 .grid-item .grid-item-shot,
  .grid.grid-preceremony.grid-4 .grid-item .grid-item-shot,
  .grid.grid-preceremony.grid-5 .grid-item .grid-item-shot {
    float: none;
    margin: 0 auto;
    height: auto;
  }
  .grid.grid-preceremony.grid-3 .grid-item .grid-item-desc,
  .grid.grid-preceremony.grid-4 .grid-item .grid-item-desc,
  .grid.grid-preceremony.grid-5 .grid-item .grid-item-desc {
    width: 100%;
  }
  .orderModule {
    height: auto !important;
    overflow: visible;
  }
  .orderModule .imageContainerWrap {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
  }
  .orderModule .galleryGrid {
    text-align: center;
  }
  .orderModule .galleryGrid .masonry {
    padding: 0 1em;
    width: 100vw;
  }
  .orderModule .galleryGrid .grid-item {
    position: relative;
    display: inline-block;
    float: none;
    margin: 0 8px 8px;
  }
  .orderModule .gridScroller {
    height: auto;
    position: relative;
    overflow: visible !important;
  }
  footer {
    height: 60px;
  }
  footer .copyright {
    line-height: 60px;
  }
  footer a.logo {
    display: none !important;
  }
  .checkoutBtn {
    display: none !important;
  }
  .productContainer {
    width: calc(50% - 20px);
  }
  .cart-items.material-style > tbody > tr > td {
    height: auto;
  }
}
@media screen and (max-width: 950px) {
  .product-category-left {
    width: 50% !important;
  }
  .product-category-left .product-category {
    width: 100%;
  }
}
@media screen and (max-width: 900px) {
  .overlay.upperrift:before {
    top: -110px;
    transform: skewY(-5deg);
  }
  .productContainer {
    width: 100%;
  }
  .grid.grid-preceremony .grid-item {
    height: 500px;
  }
  .grid.grid-preceremony .grid-item.item-stagephotography,
  .grid.grid-preceremony .grid-item.item-flower {
    height: auto;
  }
  .grid.grid-preceremony .grid-item .grid-item-shot {
    float: none;
    margin: 0 auto;
    height: auto;
  }
  .grid.grid-preceremony .grid-item .grid-item-shot img {
    max-width: 70% !important;
  }
  .grid.grid-preceremony .grid-item .grid-item-desc {
    width: 100%;
  }
  .grid.grid-preceremony .grid-item.item-package .btn.btn-large {
    font-size: 20px;
  }
  .grid.grid-preceremony .grid-item.item-package .btn.btn-large .icon {
    display: none;
  }
  .grid.grid-preceremony .grid-item:first-child {
    height: 1000px;
  }
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(2),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(2),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(2),
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(3),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(3),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(3) {
    width: calc(50% - 2px);
    height: 500px;
  }
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(4),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(4),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(4),
  .grid.grid-preceremony.grid-3 .grid-item:nth-child(5),
  .grid.grid-preceremony.grid-4 .grid-item:nth-child(5),
  .grid.grid-preceremony.grid-5 .grid-item:nth-child(5) {
    width: calc(100% - 2px);
    height: auto;
  }
  .grid.grid-preceremony.grid-3 .grid-item .grid-item-shot,
  .grid.grid-preceremony.grid-4 .grid-item .grid-item-shot,
  .grid.grid-preceremony.grid-5 .grid-item .grid-item-shot {
    float: none;
    margin: 0 auto;
    height: auto;
  }
  .grid.grid-preceremony.grid-3 .grid-item .grid-item-desc,
  .grid.grid-preceremony.grid-4 .grid-item .grid-item-desc,
  .grid.grid-preceremony.grid-5 .grid-item .grid-item-desc {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  body #hamburger {
    position: fixed !important;
  }
  .react-order.orderingPage #hamburger {
    display: none !important;
  }
  .sliceOfRainbow, header {
    position: fixed;
    background: url(../../images/bg-rainbow.jpg);
    background-size: cover;
  }
  .react-order .sliceOfRainbow,
  .react-order header {
    display: none !important;
  }
  body.orderingPage.bodyGallery {
    overflow: hidden;
  }
  .btn {
    line-height: 55px;
  }
  .bcg {
    background-size: 350% auto;
    background-position: 60% 0 !important;
  }
  .cartBtn {
    z-index: 99;
    bottom: 10px;
    right: 10px;
    top: auto !important;
    -webkit-box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 0px 15px 1px rgba(0, 0, 0, 0.4);
  }
  .orderingPage .content.main {
    height: auto;
  }
  .react-order.orderingPage .content.main {
    top: 0;
  }
  h1 {
    font-size: 50px;
  }
  .universityList .unilogo-container {
    margin: 0 5px 30px;
    width: calc(50% - 40px);
  }
  .universityList .unilogo-container img {
    width: 100%;
    height: auto;
  }
  .universityList .fulllist .unilogo-container {
    width: calc(33.3% - 20px);
  }
  .introMessage {
    padding: 15px !important;
    margin: 0 auto !important;
  }
  .introMessage > h4 {
    padding: 15px !important;
    line-height: 1.4em;
  }
  .overlay {
    padding: 15px !important;
    margin-top: 0 !important;
  }
  .overlay > h3 {
    margin: 20px auto !important;
  }
  .overlay.upperrift:before {
    display: none;
  }
  .overlay > div {
    margin-top: 0 !important;
    padding: 0px !important;
  }
  .overlay > div > h4.bordered {
    margin: 0 auto !important;
    padding: 15px !important;
  }
  .universitypath td {
    text-align: center;
  }
  .universitypath a.btn.btn-large {
    display: block;
    width: 100%;
    height: 60px;
    line-height: 60px;
    font-size: 30px;
    margin: 15px auto;
  }
  .introMessage .flushRight {
    width: 100%;
    float: none;
    text-align: center;
  }
  .introMessage .flushRight .btn.btn-large {
    padding: 10px;
    height: auto;
    line-height: 1.4em;
    font-size: 28px;
  }
  .introMessage .sellingPoint {
    padding: 20px 0 0;
  }
  .introMessage .sellingPoint .point {
    float: none;
    width: 100%;
    padding: 10px 0;
  }
  .introMessage .sellingPoint .point .icon {
    width: 50px;
    text-align: center;
  }
  .introMessage .sellingPoint .point .icon img {
    max-width: 100%;
  }
  .introMessage .sellingPoint .point:after {
    display: table;
    clear: both;
    content: "";
  }
  .productCategoryMasonry .grid-item {
    display: block;
    height: auto;
    float: none;
    width: calc(100% - 2px) !important;
    padding: 10px !important;
    height: auto !important;
  }
  .productCategoryMasonry .grid-item .grid-item-shot {
    display: none !important;
  }
  .productCategoryMasonry .grid-item .grid-item-shot img {
    max-width: 50% !important;
  }
  .productCategoryMasonry .grid-item.control-group .styledInput,
  .productCategoryMasonry .grid-item.control-group .btn-large {
    float: none;
    width: 100%;
    display: block;
    margin: 5px auto !important;
  }
  .productCategoryMasonry .grid-item.control-group .styledInput > input.text,
  .productCategoryMasonry .grid-item.control-group .btn-large > input.text {
    text-align: center !important;
  }
  .productCategoryMasonry .grid-item > img,
  .productCategoryMasonry .grid-item > div {
    display: block !important;
    float: none !important;
    margin: 0 auto !important;
    width: auto !important;
    padding: 0 !important;
    max-width: 100%;
  }
  .productCategoryMasonry .grid-item.item-package {
    background: #fafafa;
  }
  .productCategoryMasonry .grid-item.item-package .btn.btn-large {
    padding: 10px;
    height: auto;
    line-height: 1.4em !important;
    font-size: 22px !important;
  }
  .productCategoryMasonry .grid-item span.price {
    padding: 0;
    display: block;
  }
  .productCategoryMasonry .grid-item p {
    line-height: 1.2em;
  }
  .productCategoryMasonry .grid-item p.half {
    display: block !important;
    width: 100% !important;
    float: none !important;
    margin: 0 0 10px;
  }
  .productCategoryMasonry .grid-item p .icon {
    margin: 5px 0 0;
  }
  .product-listing {
    padding: 0px;
  }
  .product-listing .product-category-container {
    padding: 0;
  }
  .product-listing .product-category-container .product-category-wrapper:before {
    display: none;
  }
  .product-listing .product-category-container table td {
    width: 100% !important;
    display: block;
  }
  .product-listing .product-category-container table td .product-category {
    width: calc(100% - 30px);
    float: none;
    text-align: left;
    display: block;
    padding: 15px;
    margin: 0;
  }
  .product-listing .product-category-container table td .product-category .service-heading {
    font-size: 55px;
  }
  .product-listing .product-category-container table td .product-category .service-info {
    display: block;
    margin: 20px auto 10px;
  }
  .product-listing .product-category-container table td .productContainer {
    width: calc(100% - 20px);
  }
  .orderModule .imageContainerWrap {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9000;
    height: 100% !important;
    overflow: auto;
    overflow-y: scroll;
    /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch;
  }
  .orderModule .imageContainerWrap > table {
    overflow: visible !important;
  }
  .orderModule .imageContainerWrap .imageContainer {
    transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
  }
  .orderModule .imageContainerWrap .imageContainer > table > tbody > tr > td {
    transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    vertical-align: top !important;
  }
  .orderModule .imageContainerWrap .imageContainer > table > tbody > tr > td.productPreview {
    height: 0 !important;
    position: absolute;
    top: 0;
    left: 0;
  }
  .orderModule.gridMode .imageContainerWrap {
    transform: scale(0.9);
  }
  .orderModule.buyMode {
    width: 100%;
    overflow: hidden;
    height: 1px !important;
  }
  .orderModule.buyMode .imageContainerWrap {
    height: 90%;
  }
  .orderModule.buyMode .imageContainerWrap > table > tbody > tr > td {
    vertical-align: top !important;
  }
  .orderModule.buyMode .imageContainer {
    width: 100vw;
  }
  .orderModule.buyMode .imageContainer > table > tbody > tr > td {
    width: 100%;
    display: block;
  }
  .orderModule.buyMode .imageContainer > table > tbody > tr > td.imgPreview {
    height: 258px;
    vertical-align: middle !important;
  }
  .orderModule.buyMode .imageContainer > table > tbody > tr > td.productPreview {
    height: calc(100vh - 258px) !important;
    top: 258px;
    left: 0;
  }
  .orderModule.buyMode .imageContainer #enlargedimgcontainer {
    height: 26vh;
    width: auto !important;
  }
  .orderModule.buyMode .buy-option-wrapper table,
  .orderModule.buyMode .buy-option-wrapper td {
    height: calc(100% - 122px);
  }
  .orderModule.buyMode .buy-option-wrapper>table {
    height: calc(100vh - 430px);
    overflow: auto !important;
  }
  .orderModule.buyMode .buy-option-wrapper .buy-option-slider .buy-option {
    width: 100vw;
  }
  .orderModule .buy-option-wrapper {
    width: 100%;
    margin: 0;
    background: #0c172e;
  }
  .orderModule .buy-option-wrapper .buy-option-slider {
    width: 200%;
    height: calc(100vh - 430px);
    overflow: auto;
    overflow-y: scroll;
    /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch;
  }
  .orderModule .buy-option-wrapper .buy-option-slider.slided {
    left: -100%;
  }
  .orderModule .buy-option-wrapper .buy-option-slider .buy-option {
    width: 50%;
    z-index: 10;
    height: auto;
    overflow: visible;
  }
  .orderModule .buy-option-wrapper .buy-option-slider .option-item-desc {
    left: 50%;
    width: 50%;
  }
  .orderModule .buy-option-wrapper .addtocartbtn {
    position: relative;
    left: auto;
    bottom: auto;
    width: 100%;
    padding: 10px 0;
  }
  .orderModule #enlargedimgcontainer {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 70vh;
  }
  .grid.galleryGrid .grid-item {
    width: 150px;
    height: 200px;
  }
  .grid.galleryGrid .grid-item[data-ss-colspan="2"] {
    width: 300px;
    height: 200px;
  }
  .photo-wrap {
    height: 100%;
  }
  .col #floatSide-sticky-wrapper,
  #orderconf_form #floatSide-sticky-wrapper,
  .col > div,
  #orderconf_form > div {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    height: auto !important;
    position: relative !important;
    margin: 0 0 15px !important;
  }
  .col #floatSide-sticky-wrapper div,
  #orderconf_form #floatSide-sticky-wrapper div {
    max-height: none !important;
  }
  .col #floatSide-sticky-wrapper #floatSide,
  #orderconf_form #floatSide-sticky-wrapper #floatSide {
    position: relative !important;
    top: auto !important;
  }
  .cart-items.material-style .cart-item-info {
    width: calc(100% - 140px);
  }
  .cart-items.material-style .cart-item-price {
    display: block;
    text-align: right;
    width: 100%;
    height: auto;
  }
  .cart-items.material-style .cart-item-remove {
    position: absolute;
    top: 10px;
    right: 0px;
    height: auto;
  }
  .cart-items.material-style .cart-item-remove i {
    padding: 15px;
  }
  .cart-items.material-style .item-qty {
    position: relative;
  }
  .cart-items.material-style > tbody > tr > td {
    height: auto;
    position: relative;
  }
  .styledInput#stage {
    margin: 15px 0;
  }
  #photo-list-wrapper {
    padding: 25px 0;
  }
  #photo-list-wrapper .grid-item {
    margin: 0 6px !important;
  }
  #photo-list-wrapper .grid-item,
  #photo-list-wrapper .grid-item table,
  #photo-list-wrapper .grid-item table td {
    width: 100px !important;
    height: 100px !important;
  }
  #photo-list-wrapper .grid-item img,
  #photo-list-wrapper .grid-item table img,
  #photo-list-wrapper .grid-item table td img {
    max-height: 100%;
    max-width: 100px !important;
  }
  form .control-group.three-col {
    float: none;
    width: 100%;
  }
  .orderModule .imageContainerWrap .arrowContainer {
    width: 50px;
    height: 50px;
    font-size: 25px;
    margin-top: -25px;
    padding-top: 14px;
  }
  .orderModule.buyMode .imageContainerWrap .arrowContainer {
    display: none;
  }
  .quicklinks .stageList {
    float: none;
    width: 100%;
    margin: 0 0 10px;
  }
  .paymentform .control-group.two-col {
    width: 100%;
    float: none;
  }
  .paymentform #payment_selection .checkbox {
    width: 100% !important;
    float: none !important;
    margin: 0 0 15px !important;
  }
  .paymentform #orderconf_continue,
  .paymentform #paypal_continue {
    margin: 0;
    width: 100%;
    text-align: center;
  }
  #order_confirmation > form > div {
    width: 100% !important;
    float: none !important;
  }
  #order_confirmation .control-group.two-col {
    width: 100%;
    float: none;
  }
  ul.purchase_option li {
    background: #e2e8f0;
  }
}
@media screen and (max-width: 649px) {
    .item-studio .styledInput {
        float: none !important;
    }
    .item-studio .styledInput input {
        text-align: center;
    }
    .item-studio .btn.btn-large {
    float: none !important;
    margin: 0 auto 10px !important;
    width: 100% !important;
    }
  #enlargedimgcontainer {
    width: 82%;
    height: auto;
  }
  h1 {
    font-size: 40px;
  }
  h4 {
    font-size: 21px;
  }
  .btn {
    font-size: 21px;
  }
  .universitypath a.btn.btn-large {
    font-size: 25px;
  }
  .universitypath a.btn.btn-large i.icon {
    font-size: 0.8em;
  }
  .introMessage .flushRight h1 {
    font-size: 40px;
  }
  .introMessage .flushRight h1 br {
    content: "";
    margin: 0 5px 0 0;
  }
  .product-listing .product-category-container .product-category-wrapper table td .product-category .service-heading {
    font-size: 47px;
  }
  footer {
    height: auto;
    padding: 8px 0;
  }
  footer .copyright {
    line-height: 1.5em;
  }
  footer .copyright span {
    display: block;
  }
}
/**********************
    Cross Browser
***********************/
/*****************
    Cross Browser
*****************/




