/*  
++++++++++++
+++ CORE +++ 
++++++++++++
*/
/*
++++++++++++++++++
+++ CORE: BASE +++
++++++++++++++++++
*/
/*
++++++++++++
+++ BASE +++
++++++++++++
*/
/*
++++++++++++++++++++++
+++ BASE: SETTINGS +++
++++++++++++++++++++++
*/
/*
 * These Drupal and Wordpress variables are fundamental to compiling CSS files.
 * ---
 * If it's a Drupal or Wordpress project set $use_FRAMEWORK to true and ensure
 * the right version of Drupal is set so only output styles
 * appropriate to this version of the CMS.
 */
/*
 * True: Octicons
 * False: Pika
 */
/*
++++++++++++++++++++++++++++++
+++ SETTINGS: BREAK POINTS +++
++++++++++++++++++++++++++++++
*/
/*
+++++++++++++++++++++++++
+++ SETTINGS: PALETTE +++
+++++++++++++++++++++++++
*/
/*
 * Feel free to customize these but green, red and yellow are needed for modules.
 * Green and red for warnings and yellow for status messages
 */
/*
+++++++++++++++++++++++++++++++++
+++ VARIABLES: SOCIAL PALETTE +++
+++++++++++++++++++++++++++++++++
*/
/*  
+++++++++++++++++++++++++ 
+++ SETTINGS: SPRITES +++ 
+++++++++++++++++++++++++ 
*/
/*  
+++++++++++++++++++++++++
+++ SETTINGS: TOOLKIT +++ 
+++++++++++++++++++++++++
*/
/*
 * Code modified from https://github.com/Team-Sass/toolkit
 */
/*
++++++++++++++++++++++++++++
+++ SETTINGS: TYPOGRAPHY +++
++++++++++++++++++++++++++++
*/
/*
+++++++++++++++++++++++++++++
+++ HELPERS: CONDITIONALS +++
+++++++++++++++++++++++++++++
*/
/*  
+++++++++++++++++++++++++++++
+++ HELPERS: PLACEHOLDERS +++ 
+++++++++++++++++++++++++++++
*/
/*
 * Code modified from https://github.com/Team-Sass/toolkit
 */
/*  
+++++++++++++++++++++++++
+++ HELPERS: SETTINGS +++ 
+++++++++++++++++++++++++
*/
/*
+++++++++++++++++++++++
+++ HELPERS: LAYOUT +++
+++++++++++++++++++++++
*/
.surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
  padding-left: 4%;
  padding-right: 4%; }
  @media only screen and (min-width: 30em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 12%;
      padding-right: 12%; } }
  @media only screen and (min-width: 43.75em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 8%;
      padding-right: 8%; } }
  @media only screen and (min-width: 63.75em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 2%;
      padding-right: 2%; } }
  @media only screen and (min-width: 78.75em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 8%;
      padding-right: 8%; } }
  @media only screen and (min-width: 87.5em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 12%;
      padding-right: 12%; } }
  @media only screen and (min-width: 98.75em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 16%;
      padding-right: 16%; } }
  @media only screen and (min-width: 112.5em) {
    .surcore, .core, .subcore, .toolbar_upper, .toolbar_lower_align, .footer, .surheader, .subnav_landing_align, .section, .footnote_align, .overview, .focus, .picks, .breakout, .quicklinks {
      padding-left: 20%;
      padding-right: 20%; } }
  @media only screen and (min-width: 63.75em) {
    .core, .core_align, .section_header {
      margin-left: auto;
      margin-right: auto;
      padding-left: 0;
      padding-right: 0;
      width: 616px; } }

/*
+++++++++++++++++++++++++++
+++ HELPERS: TYPOGRAPHY +++
+++++++++++++++++++++++++++
*/
.footnote_title, .focus_caption_title, .events_feed_date i, .breakout_caption_title, .breakout_caption_surtitle {
  font-family: "Gotham SSm A", "Gotham SSm B", sans-serif;
  font-weight: 800; }

.nav_sidebar_section_title {
  font-family: "Gotham Narrow SSm A", "Gotham Narrow SSm B", "clear-sans", sans-serif; }

h1, h2, h3, h4, h5, h6, .subnav_landing_feed_divider, .subnav_landing_feed_element, .section_header_surtitle, .footnote_cta, .picks_special, .quicklinks_more, .quicklinks_feed_element, .booking_header_summary, .booking_feed_btn, .booking_options_feed_element, .booking_complete_final_cost, .booking_complete_final_cost_title, .booking_complete_final_cost_message i, .promo_button, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .subnav_landing_feed_divider a, .subnav_landing_feed_element a, .section_header_surtitle a, .footnote_cta a, .picks_special a, .quicklinks_more a, .quicklinks_feed_element a, .booking_header_summary a, .booking_feed_btn a, .booking_options_feed_element a, .booking_complete_final_cost a, .booking_complete_final_cost_title a, .booking_complete_final_cost_message i a, .promo_button a {
  color: #8E258D; }

h1, h2, h3, h4, h5, h6, .subnav_landing_feed_divider, .subnav_landing_feed_element, .section_header_surtitle, .footnote_cta, .picks_special, .quicklinks_more, .quicklinks_feed_element, .booking_header_summary, .booking_feed_btn, .booking_options_feed_element, .booking_complete_final_cost, .booking_complete_final_cost_title, .booking_complete_final_cost_message i, .promo_button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "Gotham Narrow SSm A", "Gotham Narrow SSm B", sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2;
  -moz-font-feature-settings: "kern=1";
  -webkit-font-feature-settings: "kern" 1;
  text-rendering: optimizeLegibility; }

.picto, #sitesearch_submit {
  display: inline-block;
  font-family: "octicons", sans-serif;
  font-size: 16px;
  font-style: normal;
  line-height: 1;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.promo_close {
  font-family: "pika", sans-serif;
  font-style: normal; }

.picto_social, .topnav_element.with_social {
  font-family: "SSSocialRegular", sans-serif;
  font-style: normal; }

.picks_feed_summary i, .events_feed_summary i, .section_more, .overview_secondary_feat_cta, .form_item_label, .form_item_preinput, strong, b, th, .topics, .nav_sidebar .subnav_level1 .subnav_element, .nav_sidebar .subnav_level1 .subnav_element.on, .nav_sidebar .subnav_element.level0, .focus_caption_surtitle, .events_feed_surtitle, .events_feed_surtitle_wl, .events_feed_date, .events_feed_location, .events_feed_more, .breakout_caption_more, .btn_sidebar_title, .nav_sidebar_primary_element, .nav_sidebar_section_element {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 700; }

h1 {
  font-family: "Gotham SSm A", "Gotham SSm B", sans-serif;
  font-size: 1.84615em;
  font-weight: 800; }
  @media only screen and (min-width: 20em) {
    h1 {
      font-size: 2.30769em; } }
  @media only screen and (min-width: 38.75em) {
    h1 {
      font-size: 2.76923em; } }
  @media only screen and (min-width: 63.75em) {
    h1 {
      font-size: 3.69231em; } }

h2 {
  font-size: 1.38462em; }
  @media only screen and (min-width: 43.75em) {
    h2 {
      font-size: 1.61538em; } }

h3 {
  font-size: 1.23077em; }

h4 {
  font-size: 1.15385em; }

h5 {
  font-size: 1.07692em; }

h6 {
  font-size: 1em; }

p, .textsize {
  font-size: 1.23077em;
  line-height: 1.3; }

.overview_surtitle a:hover, .picks_feed_surtitle a:hover, .subnav_landing_feed_element:hover, .overview_title_wl:hover, .focus_caption_title_wl:hover, .picks_feed_title_wl:hover, .events_feed_title_wl:hover, .quicklinks_feed_element:hover, .booking_options_header_summary a:hover, .booking_complete_final_cost_message a:hover, .booking_complete_message a:hover {
  color: #FF5800;
  text-decoration: underline; }

.overview_secondary_feed_title, .picks_feed_title, .overview_secondary_feed_title a, .picks_feed_title a {
  color: #2E2E2E; }

.overview_surtitle, .picks_feed_surtitle, .overview_surtitle a, .picks_feed_surtitle a {
  color: #8E258D; }

.overview_surtitle, .picks_feed_surtitle {
  font-size: 0.84615em;
  margin-bottom: .5em; }
  .overview_surtitle i, .picks_feed_surtitle i {
    color: #5E5E5E; }
  @media only screen and (min-width: 87.5em) {
    .overview_surtitle, .picks_feed_surtitle {
      font-size: 0.92308em; } }

.picks_feed_summary, .events_feed_summary {
  color: #5E5E5E;
  font-size: 1.15385em;
  line-height: 1.3;
  margin-top: .3em; }
  @media only screen and (min-width: 43.75em) {
    .picks_feed_summary, .events_feed_summary {
      font-size: 1.07692em; } }
  .picks_feed_summary i, .events_feed_summary i {
    color: #FF5800;
    font-size: .88em;
    font-style: normal;
    text-transform: uppercase; }

.section_more, .overview_secondary_feat_cta {
  border-top: 1px solid #DEDEDE;
  color: #5E5E5E;
  display: block;
  font-size: 1.07692em;
  margin-top: 36px;
  padding-top: .7em;
  text-align: center; }
  @media only screen and (min-width: 63.75em) {
    .section_more, .overview_secondary_feat_cta {
      font-size: 1.23077em; } }
  .section_more:hover, .overview_secondary_feat_cta:hover {
    color: #2E2E2E;
    text-decoration: underline; }

/*
++++++++++++++++++++++++++
+++ HELPERS: ANIMATION +++
++++++++++++++++++++++++++
*/
@-webkit-keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0); }
  20%, 80% {
    transform: translate3d(2px, 0, 0); }
  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0); }
  40%, 60% {
    transform: translate3d(4px, 0, 0); } }

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0); }
  20%, 80% {
    transform: translate3d(2px, 0, 0); }
  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0); }
  40%, 60% {
    transform: translate3d(4px, 0, 0); } }

@-webkit-keyframes bounce {
  0% {
    transform: translateY(-100%); }
  40% {
    transform: translateY(-50%); }
  80% {
    transform: translateY(-25%); }
  20%, 60%, 100% {
    transform: translateY(0); } }

@keyframes bounce {
  0% {
    transform: translateY(-100%); }
  40% {
    transform: translateY(-50%); }
  80% {
    transform: translateY(-25%); }
  20%, 60%, 100% {
    transform: translateY(0); } }

.picto, #sitesearch_submit, .overview_surtitle a, .picks_feed_surtitle a, .subnav_landing_feed_element, .overview_title_wl, .focus_caption_title_wl, .picks_feed_title_wl, .events_feed_title_wl, .quicklinks_feed_element, .booking_options_header_summary a, .booking_complete_final_cost_message a, .booking_complete_message a, .section_more, .overview_secondary_feat_cta, .form_item_input, td a, .topnav_element, .fnav_feed_element, .fnav_credits a, .surnav_element, .surnav_element.cta, .topics_element, .nav_sidebar .subnav_element, .section_header_surtitle, .section_header_summary a, .section_media_caption a, .footnote_cta, .events_feed_more, .breakout_caption_more, .quicklinks_more, .booking_feed_btn, .promo_button, .btn_sidebar, .btn_sidebar_title, .nav_sidebar_primary_element, .nav_sidebar_section_element, .sidebar_input, .sidebar_submit {
  -webkit-transition-property: background-color, box-shadow, border-color, color, opacity, text-shadow, padding;
  -webkit-transition-duration: 0.2s;
  -webkit-transition-timing-function: ease;
  transition-property: background-color, box-shadow, border-color, color, opacity, text-shadow, padding;
  transition-duration: 0.2s;
  transition-timing-function: ease; }

/*
+++++++++++++++++++++++++++
+++ HELPERS: BACKGROUND +++
+++++++++++++++++++++++++++
*/
/*
++++++++++++++++++++++++
+++ HELPERS: BUTTONS +++
++++++++++++++++++++++++
*/
/*  
+++++++++++++++++++++++
+++ HELPERS: CENTER +++ 
+++++++++++++++++++++++
*/
/*
 * Code modified from https://github.com/Team-Sass/toolkit
 */
/*  
+++++++++++++++++++++++++ 
+++ HELPERS: CLEARFIX +++ 
+++++++++++++++++++++++++
*/
.form_item:after, .section:after, .overview:after, .focus:after, .picks:after, .breakout:after, #content:after, .core:after, #header:after, .toolbar:after, .toolbar_align:after, .topnav_base:after, .secnav:after, .footer:after, .fnav:after, .fnav_block:after, .surheader:after, .topics:after, .subnav_base:after, .nav_sidebar .subnav:after, .subnav_landing:after, .overview_secondary_feat:after, .overview_secondary_feed:after, .overview_secondary_feed_block:after, .picks_feed:after, .events_feed:after, .events_feed_details:after, .breakout_align:after, .quicklinks:after, .quicklinks_feed:after, .booking_options_feed:after,
.form_item:before,
.section:before,
.overview:before,
.focus:before,
.picks:before,
.breakout:before,
#content:before,
.core:before,
#header:before,
.toolbar:before,
.toolbar_align:before,
.topnav_base:before,
.secnav:before,
.footer:before,
.fnav:before,
.fnav_block:before,
.surheader:before,
.topics:before,
.subnav_base:before,
.nav_sidebar .subnav:before,
.subnav_landing:before,
.overview_secondary_feat:before,
.overview_secondary_feed:before,
.overview_secondary_feed_block:before,
.picks_feed:before,
.events_feed:before,
.events_feed_details:before,
.breakout_align:before,
.quicklinks:before,
.quicklinks_feed:before,
.booking_options_feed:before {
  content: "";
  display: table; }

.form_item:after, .section:after, .overview:after, .focus:after, .picks:after, .breakout:after, #content:after, .core:after, #header:after, .toolbar:after, .toolbar_align:after, .topnav_base:after, .secnav:after, .footer:after, .fnav:after, .fnav_block:after, .surheader:after, .topics:after, .subnav_base:after, .nav_sidebar .subnav:after, .subnav_landing:after, .overview_secondary_feat:after, .overview_secondary_feed:after, .overview_secondary_feed_block:after, .picks_feed:after, .events_feed:after, .events_feed_details:after, .breakout_align:after, .quicklinks:after, .quicklinks_feed:after, .booking_options_feed:after {
  clear: both; }

/*
++++++++++++++++++++++
+++ HELPERS: COLOR +++
++++++++++++++++++++++
*/
/*
 * Code modified from https://github.com/Team-Sass/toolkit
 */
/*
 * $colours should be a comma separated list
 * $direction_old is from the origin e.g. `left top`
 * $direction_new is to the end e.g. `to right bottom`
 */
/*
++++++++++++++++++++++
+++ HELPERS: FORMS +++
++++++++++++++++++++++
*/
.form_alert_message, .form_description {
  color: #4E4E4E;
  font-size: 1em;
  line-height: 1.2;
  margin-top: .3em; }
  @media only screen and (min-width: 43.75em) {
    .form_alert_message, .form_description {
      padding-right: 40%; } }

.form_alert_message {
  color: #E34424; }

.form_item {
  margin-top: 1em; }
  .first.form_item {
    margin-top: 0; }
  .form_actions.form_item {
    margin-top: 2em; }

.form_item_input {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #EEEEEE;
  border: 2px solid #e1e1e1;
  border-radius: 4px;
  box-shadow: inset 0 2px 2px #e5e5e5;
  font-size: 1.15385em;
  padding: 6px 8px;
  width: 100%; }
  .form_item_input:focus {
    background-color: gainsboro;
    border-color: #8E258D;
    box-shadow: inset 0 2px 2px #d4d4d4;
    outline: none; }
  .with_error.form_item_input, .with_error.form_item_input:focus {
    background-color: #f7c7bd;
    box-shadow: inset 0 2px 2px #eec0b6; }
  .with_error.form_item_input {
    border-color: #e9bcb3; }
    .with_error.form_item_input:focus {
      border-color: #E34424; }
  .with_disabled.form_item_input, .with_disabled.form_item_input:focus {
    background-color: #F2F2F2;
    background-position: right bottom;
    background-repeat: no-repeat;
    border-color: #e4e4e4;
    box-shadow: none;
    color: #8E8E8E; }
  @media only screen and (min-width: 63.75em) {
    .form_item_input {
      -moz-box-sizing: content-box;
      -webkit-box-sizing: content-box;
      box-sizing: content-box;
      width: auto; } }

.form_item_label {
  display: block;
  font-size: 1.07692em;
  margin-bottom: .2em; }
  .inline.form_item_label {
    display: inline;
    font-size: 1.15385em;
    margin-left: .5em; }

.form_item_preinput {
  font-size: 1.15385em;
  padding-right: .5em; }

.form_item_selection {
  margin-top: .3em; }

.form_item_label + .form_item_option {
  margin-left: 1.2em; }

.form_item_submit, .booking_complete_btn {
  text-shadow: 0 1px 1px #7a2179;
  background-color: #8E258D;
  border-color: #862485;
  color: #FFFFFF;
  box-shadow: none; }
  .form_item_submit, .booking_complete_btn, .btn, .btn_secondary, .btn_buy, .sidebar_submit {
    -webkit-transition-property: background-color, box-shadow, border-color, color, opacity, text-shadow;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: ease;
    transition-property: background-color, box-shadow, border-color, color, opacity, text-shadow;
    transition-duration: 0.2s;
    transition-timing-function: ease;
    border-style: solid;
    border-width: 1px;
    border-bottom-width: 2px;
    border-radius: 4px;
    display: block;
    font-size: 1.23077em;
    font-weight: 600;
    line-height: 1.2;
    padding: 16px;
    position: relative;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    width: 100%; }
    .form_item_submit:focus, .booking_complete_btn:focus, .form_item_submit:hover, .booking_complete_btn:hover, .btn:hover, .btn_secondary:hover, .btn_buy:hover, .sidebar_submit:hover {
      text-decoration: underline; }
    @media only screen and (min-width: 38.75em) {
      .form_item_submit, .booking_complete_btn, .btn, .btn_secondary, .btn_buy, .sidebar_submit {
        display: inline-block;
        text-align: left;
        width: auto; } }
    @media only screen and (min-width: 43.75em) {
      .form_item_submit, .booking_complete_btn, .btn, .btn_secondary, .btn_buy, .sidebar_submit {
        font-size: 1.15385em;
        padding: 6px 10px; } }
  .form_item_submit:focus, .booking_complete_btn:focus, .form_item_submit:hover, .booking_complete_btn:hover {
    border-color: #7f237e;
    background-color: #862485;
    color: #FFFFFF; }
  .form_item_submit:focus, .booking_complete_btn:focus {
    outline: none; }
  @media only screen and (max-width: 43.75em) {
    .form_item_submit, .booking_complete_btn {
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding-bottom: 12px;
      padding-top: 12px; } }
  @media only screen and (min-width: 63.75em) {
    .form_item_submit, .booking_complete_btn {
      -moz-box-sizing: content-box;
      -webkit-box-sizing: content-box;
      box-sizing: content-box; } }

.form_item_error_message {
  margin-top: .2em; }

.required {
  color: #E34424; }

.required_message {
  font-size: 1.15385em;
  font-style: inherit;
  margin-top: 1em; }

/*
++++++++++++++++++++++++
+++ HELPERS: SEGMENT +++
++++++++++++++++++++++++
*/
.section, .overview, .focus, .picks, .breakout {
  margin-top: 48px;
  position: relative; }
  .first.section, .first.overview, .first.focus, .first.picks, .first.breakout {
    margin-top: 0; }
  @media only screen and (min-width: 87.5em) {
    .section, .overview, .focus, .picks, .breakout {
      margin-top: 72px; } }
  .picks_header {
    border-bottom: 4px solid #8E258D;
    margin-bottom: 36px;
    padding-bottom: 8px; }
    .picks_header_title {
      font-family: "Gotham SSm A", "Gotham SSm B", sans-serif;
      font-weight: 800; }
      @media only screen and (min-width: 38.75em) {
        .picks_header_title {
          font-size: 2.30769em; } }

/*
Tipr 2.0.1
Copyright (c) 2015 Tipue
Tipr is released under the MIT License
http://www.tipue.com/tipr
*/
.tip {
  margin-top: 5px; }

.tipr_content {
  font: 13px/1.7 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #333;
  background-color: #fff;
  padding: 9px 17px; }

.tipr_container_bottom {
  display: none;
  position: absolute;
  margin-top: 13px;
  box-shadow: 2px 2px 5px #f9f9f9;
  z-index: 1000; }

.tipr_container_top {
  display: none;
  position: absolute;
  margin-top: -77px;
  box-shadow: 2px 2px 5px #f9f9f9;
  z-index: 1000; }

.tipr_point_top, .tipr_point_bottom {
  position: relative;
  background: #fff;
  border: 1px solid #dcdcdc; }

.tipr_point_top:after, .tipr_point_top:before {
  position: absolute;
  pointer-events: none;
  border: solid transparent;
  top: 100%;
  content: "";
  height: 0;
  width: 0; }

.tipr_point_top:after {
  border-top-color: #fff;
  border-width: 8px;
  left: 10%;
  margin-left: -8px; }

.tipr_point_top:before {
  border-top-color: #dcdcdc;
  border-width: 9px;
  left: 10%;
  margin-left: -9px; }

.tipr_point_bottom:after, .tipr_point_bottom:before {
  position: absolute;
  pointer-events: none;
  border: solid transparent;
  bottom: 100%;
  content: "";
  height: 0;
  width: 0; }

.tipr_point_bottom:after {
  border-bottom-color: #fff;
  border-width: 8px;
  left: 10%;
  margin-left: -8px; }

.tipr_point_bottom:before {
  border-bottom-color: #dcdcdc;
  border-width: 9px;
  left: 10%;
  margin-left: -9px; }

/*!
 * Strip - An Unobtrusive Responsive Lightbox - v1.6.5
 * (c) 2014-2018 Nick Stakenburg
 *
 * http://www.stripjs.com
 *
 * Licensing:
 * - Commercial: http://www.stripjs.com/license
 * - Non-commercial: http://creativecommons.org/licenses/by-nc-nd/3.0
 */
.strp-window {
  position: fixed;
  width: 0;
  height: 100%;
  overflow: hidden;
  background: #292929;
  font: 13px/20px "Lucida Sans", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif; }

.strp-window.strp-vertical {
  height: 0;
  width: 100%; }

/* margin is added around the window to keep a visual reference
 * to the underlying page at all times.
 */
.strp-window {
  margin-left: 40px; }

.strp-window.strp-vertical {
  margin-left: 0;
  margin-bottom: 40px; }

/* fullscreen on smaller screens (iPhone 6+ and smaller)
 * since min-width is used to make this work it won't show on IE8, but
 * we're not expecting that browser to have a mobile sized screen anyway
 */
@media all and (max-width: 414px) and (orientation: portrait), all and (max-width: 736px) and (max-height: 414px) {
  .strp-window.strp-horizontal {
    min-width: 100%; } }

@media all and (max-height: 414px) and (orientation: landscape), all and (max-height: 736px) and (max-width: 414px) {
  .strp-window.strp-vertical {
    min-height: 100%; } }

/* z-index */
.strp-window,
.strp-spinner-move {
  z-index: 99999; }

/* reset box-sizing */
.strp-window,
.strp-window [class^='strp-'],
.strp-spinner-move,
.strp-spinner-move [class^='strp-'] {
  box-sizing: border-box; }

/* Chrome hack, this fixes a visual glitch when quickly toggling a video */
.strp-window {
  transform: translateZ(0px); }

/* some properties on the window are used to toggle things
 * like margin and the fullscreen mode,
 * we reset those properties after measuring them
 */
.strp-measured {
  margin: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important; }

.strp-pages {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden; }

/* sides */
.strp-side-right {
  top: 0;
  right: 0; }

.strp-side-right .strp-pages {
  top: 0;
  right: 0; }

.strp-side-right .strp-page {
  top: 0;
  right: 0; }

.strp-side-right .strp-close {
  top: 0;
  right: 0; }

.strp-side-left {
  top: 0;
  left: 0; }

.strp-side-left .strp-pages {
  top: 0;
  left: 0; }

.strp-side-left .strp-page {
  top: 0;
  left: 0; }

.strp-side-left .strp-close {
  top: 0;
  right: 0; }

.strp-side-top {
  top: 0;
  left: 0; }

.strp-side-top .strp-pages {
  top: 0;
  left: 0; }

.strp-side-top .strp-page {
  top: 0;
  left: 0; }

.strp-side-top .strp-close {
  top: 0;
  right: 0; }

.strp-side-bottom {
  bottom: 0;
  left: 0; }

.strp-side-bottom .strp-pages {
  bottom: 0;
  left: 0; }

.strp-side-bottom .strp-page {
  bottom: 0;
  left: 0; }

.strp-side-bottom .strp-close {
  top: 0;
  right: 0; }

.strp-page {
  position: absolute;
  width: 100%;
  height: 100%; }

.strp-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  padding: 0;
  text-align: center;
  background: #292929;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

/* youtube & vimeo use overlap:false, this adds padding
   to make sure buttons don't overlap the content.
   navbutton = 72 = 54 + (2 * 9 margin)
   closebutton = 48
*/
.strp-no-overlap .strp-container {
  padding: 48px 72px; }

.strp-no-overlap.strp-no-sides .strp-container {
  padding: 48px 0; }

.strp-vertical .strp-no-overlap .strp-container {
  padding: 0 72px; }

.strp-vertical .strp-no-overlap.strp-no-sides .strp-container {
  padding: 0 48px; }

.strp-hovering-clickable .strp-container {
  cursor: pointer; }

.strp-content-element {
  position: absolute;
  top: 50%;
  left: 50%; }

.strp-content-element iframe {
  float: left;
  width: 100%;
  height: 100%; }

.strp-container img {
  display: inline-block;
  vertical-align: middle; }

.strp-info {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: #efefef;
  font-size: 13px;
  line-height: 20px;
  background: #000;
  -webkit-text-size-adjust: none;
  text-size-adjust: none; }

.strp-info-padder {
  display: block;
  overflow: hidden;
  padding: 12px;
  position: relative;
  width: auto; }

.strp-caption {
  width: auto;
  display: inline;
  white-space: wrap; }

.strp-position {
  color: #b3b3b3;
  float: right;
  line-height: 21px;
  opacity: 0.99;
  position: relative;
  text-align: right;
  margin-left: 15px;
  white-space: nowrap; }

/* links */
.strp-info a,
.strp-info a:hover {
  color: #ccc;
  border: 0;
  background: none;
  text-decoration: underline; }

.strp-info a:hover {
  color: #eee; }

/* < > */
.strp-nav {
  position: absolute;
  top: 50%;
  width: 54px;
  height: 72px;
  margin: 0 9px;
  margin-top: -36px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.strp-nav-previous {
  left: 0; }

.strp-nav-next {
  right: 0;
  left: auto; }

.strp-nav-disabled {
  cursor: default; }

.strp-nav-button {
  float: left;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0; }

.strp-nav-button-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #101010; }

.strp-nav-button-icon {
  float: left;
  position: relative;
  height: 100%;
  width: 100%;
  zoom: 1;
  background-position: 50% 50%;
  background-repeat: no-repeat; }

/* X */
.strp-close {
  position: absolute;
  width: 48px;
  height: 48px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.strp-close-background,
.strp-close-icon {
  position: absolute;
  top: 12px;
  left: 12px;
  height: 26px;
  width: 26px;
  background-position: 50% 50%;
  background-repeat: no-repeat; }

.strp-close-background {
  filter: alpha(opacity=80);
  opacity: .8;
  background-color: #101010; }

.strp-close:hover .strp-close-background {
  background-color: #161616; }

.strp-has-error .strp-container {
  background-color: #ca3434; }

.strp-error {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 240px;
  height: 240px;
  margin-left: -120px;
  margin-top: -120px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url("strip-skins/strip/error.svg"); }

.strp-no-svg .strp-error {
  background-image: url("strip-skins/strip/error.png"); }

/* Spinner - loading icon, wrapped by a div that moves it */
.strp-spinner-move {
  position: fixed;
  top: 0px;
  right: 0px;
  height: 48px;
  width: 0;
  /* ensure overflow during a jQuery animation */
  overflow: visible !important; }

.strp-spinner-move.strp-vertical {
  width: 48px;
  height: 0; }

.strp-spinner {
  width: 48px;
  height: 48px;
  float: left;
  position: relative; }

/* different sides */
.strp-spinner-move.strp-side-top {
  top: 0;
  right: 0;
  bottom: auto;
  left: auto; }

.strp-spinner-move.strp-side-bottom {
  top: auto;
  right: 0;
  bottom: 0;
  left: auto; }

.strp-spinner-move.strp-side-right .strp-spinner {
  margin-left: -48px; }

.strp-spinner-move.strp-side-left .strp-spinner {
  margin-right: -48px;
  float: right; }

.strp-spinner-move.strp-side-bottom .strp-spinner {
  margin-top: -48px; }

.strp-spinner-move.strp-side-top .strp-spinner {
  position: absolute;
  bottom: 0;
  right: 0;
  margin-bottom: -48px; }

@-moz-keyframes strp-spinner-spin {
  100% {
    -moz-transform: rotate(360deg); } }

@-webkit-keyframes strp-spinner-spin {
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes strp-spinner-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.strp-spinner-rotate,
.strp-spinner-frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.strp-spinner-line {
  position: absolute;
  left: 50%;
  top: 15px;
  width: 2px;
  margin-left: -1px;
  height: 3px;
  border-radius: 1px;
  z-index: 80;
  /* amount of lines, removed later on */
  color: inherit;
  /* color of the dots, inherited from text on the page */ }

/*
 * ===== Skin: strip =====
 */
/* < > */
.strp-window-skin-strip .strp-nav-button-background {
  background-color: transparent; }

.strp-window-skin-strip .strp-nav-previous .strp-nav-button-icon {
  background-image: url("strip-skins/strip/previous.svg"); }

.strp-window-skin-strip .strp-nav-next .strp-nav-button-icon {
  background-image: url("strip-skins/strip/next.svg"); }

/* IE7-8/no-svg (using a faded png) */
.strp-window-skin-strip.strp-no-svg .strp-nav-previous .strp-nav-button-icon {
  background-image: url("strip-skins/strip/previous-faded.png");
  opacity: 1; }

.strp-window-skin-strip.strp-no-svg .strp-nav-next .strp-nav-button-icon {
  background-image: url("strip-skins/strip/next-faded.png");
  opacity: 1; }

.strp-window-skin-strip .strp-nav .strp-nav-button-icon {
  opacity: .6; }

/* normal state */
.strp-window-skin-strip.strp-mobile-touch .strp-nav .strp-nav-button-icon {
  opacity: 1; }

/* mobile-touch always has normal states at full opacity */
/* < > : hover */
.strp-window-skin-strip .strp-nav:hover .strp-nav-button-icon,
.strp-window-skin-strip .strp-nav-hover .strp-nav-button-icon {
  opacity: 1; }

/* IE7-8/no-svg (unfaded png) */
.strp-window-skin-strip.strp-no-svg .strp-nav.strp-nav-previous:hover .strp-nav-button-icon,
.strp-window-skin-strip.strp-no-svg .strp-nav-hover.strp-nav-previous .strp-nav-button-icon {
  background-image: url("strip-skins/strip/previous.png"); }

.strp-window-skin-strip.strp-no-svg .strp-nav.strp-nav-next:hover .strp-nav-button-icon,
.strp-window-skin-strip.strp-no-svg .strp-nav-hover.strp-nav-next .strp-nav-button-icon {
  background-image: url("strip-skins/strip/next.png"); }

/* Reduce < > button size on narrow screens (iPhone 6 and smaller) */
@media all and (max-width: 375px) and (orientation: portrait), all and (max-height: 375px) and (max-width: 667px) {
  .strp-window-skin-strip .strp-nav {
    width: 48px;
    height: 60px;
    margin: 0 5px;
    margin-top: -30px; }
  /* < > */
  .strp-window-skin-strip .strp-nav-previous .strp-nav-button-icon {
    background-image: url("strip-skins/strip/previous-small.svg"); }
  .strp-window-skin-strip .strp-nav-next .strp-nav-button-icon {
    background-image: url("strip-skins/strip/next-small.svg"); }
  /* IE7-8/no-svg (using a faded png) */
  .strp-window-skin-strip.strp-no-svg .strp-nav-previous .strp-nav-button-icon {
    background-image: url("strip-skins/strip/previous-small-faded.png"); }
  .strp-window-skin-strip.strp-no-svg .strp-nav-next .strp-nav-button-icon {
    background-image: url("strip-skins/strip/next-small-faded.png"); }
  /* IE7-8/no-svg (unfaded png) */
  .strp-window-skin-strip.strp-no-svg .strp-nav.strp-nav-previous:hover .strp-nav-button-icon,
  .strp-window-skin-strip.strp-no-svg .strp-nav-hover.strp-nav-previous .strp-nav-button-icon {
    background-image: url("strip-skins/strip/previous-small.png"); }
  .strp-window-skin-strip.strp-no-svg .strp-nav.strp-nav-next:hover .strp-nav-button-icon,
  .strp-window-skin-strip.strp-no-svg .strp-nav-hover.strp-nav-next .strp-nav-button-icon {
    background-image: url("strip-skins/strip/next-small.png"); }
  /* also reduce padding
     navbutton = 58 = 48 + (2 * 5 margin)
     closebutton = 48
   */
  .strp-no-overlap .strp-container {
    padding: 48px 58px; }
  .strp-no-overlap.strp-no-sides .strp-container {
    padding: 48px 0; }
  .strp-vertical .strp-no-overlap .strp-container {
    padding: 0 58px; }
  .strp-vertical .strp-no-overlap.strp-no-sides .strp-container {
    padding: 0 48px; } }

/* X */
.strp-window-skin-strip .strp-close .strp-close-icon {
  background-image: url("strip-skins/strip/close.svg");
  opacity: .8; }

.strp-window-skin-strip .strp-close:hover .strp-close-icon {
  opacity: 1; }

/* iOS 8.4.1 bug: when opacity changes it'll require 2 taps
   force a single opacity to fix this
*/
.strp-window-skin-strip.strp-mobile-touch .strp-close .strp-close-icon,
.strp-window-skin-strip.strp-mobile-touch .strp-close:hover .strp-close-icon {
  opacity: 1; }

/* IE7-8/no-svg */
.strp-window-skin-strip.strp-no-svg .strp-close .strp-close-icon {
  background-image: url("strip-skins/strip/close.png");
  opacity: 1; }

/* here's how to have content slide in with the window when opening and closing  */
/*
.strp-window-skin-strip.strp-side-left.strp-opening  .strp-page,
.strp-window-skin-strip.strp-side-left.strp-closing  .strp-page { left: auto; right: 0; }
.strp-window-skin-strip.strp-side-right.strp-opening  .strp-page,
.strp-window-skin-strip.strp-side-right.strp-closing  .strp-page { left: 0; right: auto; }
.strp-window-skin-strip.strp-side-top.strp-opening  .strp-page,
.strp-window-skin-strip.strp-side-top.strp-closing  .strp-page { bottom: 0; top: auto; }
.strp-window-skin-strip.strp-side-bottom.strp-opening  .strp-page,
.strp-window-skin-strip.strp-side-bottom.strp-closing  .strp-page { bottom: auto; top: 0; }
*/
/* =============================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Corrects block display not defined in IE6/7/8/9 & FF3
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block; }

/*
 * Corrects inline-block display not defined in IE6/7/8/9 & FF3
 */
audio,
canvas,
video {
  display: inline-block;
  display: inline;
  zoom: 1; }

/*
 * Prevents modern browsers from displaying 'audio' without controls
 */
audio:not([controls]) {
  display: none; }

/*
 * Addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4
 * Known issue: no IE6 support
 */
[hidden] {
  display: none; }

/* =============================================================================
   Base
   ========================================================================== */
/*
 * 1. Corrects text resizing oddly in IE6/7 when body font-size is set using em units
 *    http://clagnut.com/blog/348/#c790
 * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
 *    www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
 */
html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

/*
 * Addresses font-family inconsistency between 'textarea' and other form elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif; }

/*
 * Addresses margins handled incorrectly in IE6/7
 */
body {
  margin: 0; }

/* =============================================================================
   Links
   ========================================================================== */
/*
 * Addresses outline displayed oddly in Chrome
 */
a:focus {
  outline: thin dotted; }

/*
 * Improves readability when focused and also mouse hovered in all browsers
 * people.opera.com/patrickl/experiments/keyboard/test
 */
a:hover,
a:active {
  outline: 0; }

/* =============================================================================
   Typography
   ========================================================================== */
/*
 * Addresses font sizes and margins set differently in IE6/7
 * Addresses font sizes within 'section' and 'article' in FF4+, Chrome, S5
 */
/*
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.75em;
    margin: 2.33em 0;
}
*/
/*
 * Addresses styling not present in IE7/8/9, S5, Chrome
 */
abbr[title] {
  border-bottom: 1px dotted; }

/*
 * Addresses style set to 'bolder' in FF3+, S4/5, Chrome
*/
/*
b,
strong {
    font-weight: bold;
}
*/
blockquote {
  margin: 1em 40px; }

/*
 * Addresses styling not present in S5, Chrome
 */
dfn,
i {
  font-style: italic; }

/*
 * Addresses styling not present in IE6/7/8/9
 */
mark {
  background: #ff0;
  color: #000; }

/*
 * Addresses margins set differently in IE6/7
 */
/*
p,
pre {
    margin: 1em 0;
}
*/
/*
 * Corrects font family set oddly in IE6, S4/5, Chrome
 * en.wikipedia.org/wiki/User:Davidgothberg/Test59
 */
pre,
code,
kbd,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

/*
 * Improves readability of pre-formatted text in all browsers
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

/*
 * 1. Addresses CSS quotes not supported in IE6/7
 * 2. Addresses quote property not supported in S4
 */
/* 1 */
q {
  quotes: none; }

/* 2 */
q:before,
q:after {
  content: '';
  content: none; }

small {
  font-size: 75%; }

/*
 * Prevents sub and sup affecting line-height in all browsers
 * gist.github.com/413930
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* =============================================================================
   Lists
   ========================================================================== */
/*
 * Addresses margins set differently in IE6/7
 */
dl,
menu,
ol,
ul {
  margin: 1em 0; }

dd {
  margin: 0 0 0 40px; }

/*
 * Addresses paddings set differently in IE6/7
 */
menu,
ol,
ul {
  padding: 0 0 0 40px; }

/*
 * Corrects list images handled incorrectly in IE7
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

/* =============================================================================
   Embedded content
   ========================================================================== */
/*
 * 1. Removes border when inside 'a' element in IE6/7/8/9, FF3
 * 2. Improves image quality when scaled in IE7
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */ }

/*
 * Corrects overflow displayed oddly in IE9
 */
svg:not(:root) {
  overflow: hidden; }

/* =============================================================================
   Figures
   ========================================================================== */
/*
 * Addresses margin not present in IE6/7/8/9, S5, O11
 */
figure {
  margin: 0; }

/* =============================================================================
   Forms
   ========================================================================== */
/*
 * Corrects margin displayed oddly in IE6/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. Corrects color not being inherited in IE6/7/8/9
 * 2. Corrects text not wrapping in FF3
 * 3. Corrects alignment displayed oddly in IE6/7
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

/*
 * 1. Corrects font size not being inherited in all browsers
 * 2. Addresses margins set differently in IE6/7, FF3+, S5, Chrome
 * 3. Improves 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 */ }

/*
 * Addresses FF3/4 setting line-height on 'input' using !important in the UA stylesheet
 */
button,
input {
  line-height: normal;
  /* 1 */ }

/*
 * 1. Improves usability and consistency of cursor style between image-type 'input' and others
 * 2. Corrects inability to style clickable 'input' types in iOS
 * 3. Removes inner spacing in IE7 without affecting normal text inputs
 *    Known issue: inner spacing remains in IE6
 */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  /* 1 */
  -webkit-appearance: button;
  /* 2 */
  *overflow: visible;
  /* 3 */ }

/*
 * Re-set default cursor for disabled elements
 */
button[disabled],
input[disabled] {
  cursor: default; }

/*
 * 1. Addresses box sizing set to content-box in IE8/9
 * 2. Removes excess padding in IE8/9
 * 3. Removes excess padding in IE7
      Known issue: excess padding remains in IE6
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

/*
 * 1. Addresses appearance set to searchfield in S5, Chrome
 * 2. Addresses box-sizing set to border-box in S5, 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; }

/*
 * Removes inner padding and search cancel button in S5, Chrome on OS X
 */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none; }

/*
 * Removes inner padding and border in FF3+
 * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Removes default vertical scrollbar in IE6/7/8/9
 * 2. Improves 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; }

/* =============================================================================
   Chrome Frame Prompt
   ========================================================================== */
.chromeframe {
  margin: 0.2em 0;
  background: #ccc;
  color: black;
  padding: 0.2em 0; }

/*  
+++++++++++++++++++++++ 
+++ HELPERS: RESETS +++ 
+++++++++++++++++++++++
*/
menu, dl, ol, ul {
  padding: 0; }

fieldset, table, pre {
  margin-bottom: 0; }

ul, ol, dl {
  margin: 0; }

ul li {
  list-style: none; }

.touch.no-webgl * {
  -webkit-animation: none !important; }

body {
  text-align: left; }

h1, h2, h3, h4, h5, h6, p {
  margin: 0; }

blockquote {
  margin: 0;
  position: relative; }

/*
++++++++++++++++++++
+++ LAYOUT: CORE +++
++++++++++++++++++++
*/
::-moz-selection {
  background: #FF5800;
  color: #2E2E2E; }

::selection {
  background: #FF5800;
  color: #2E2E2E; }

html, body {
  height: 100%; }

body, #wrapper {
  margin: 0;
  padding: 0;
  width: 100%; }

#wrapper {
  background-color: #FFFFFF;
  min-height: 100%;
  position: relative; }

#accesskey {
  overflow: hidden;
  position: absolute;
  text-indent: -9999px; }

body, a {
  color: #2E2E2E; }

body, button, input, select, textarea {
  font-family: "Gotham Narrow SSm A", "Gotham Narrow SSm B", "clear-sans", sans-serif; }

body {
  font-size: 0.8125em;
  line-height: 1.3; }

a {
  text-decoration: none; }

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

.ccc-notify-button {
  background-color: #8E258D !important;
  border-color: #FFF !important; }

#ccc-intro > a {
  text-decoration: underline !important; }

/*
.picto_social_circle {
    @extend %font_socialcircle;
}
*/
/*  
++++++++++++++++++++++++ 
+++ HELPERS: BUTTONS +++ 
++++++++++++++++++++++++
*/
.btn {
  text-shadow: 0 1px 1px #7a2179;
  background-color: #8E258D;
  border-color: #862485;
  color: #FFFFFF; }
  .btn:hover {
    border-color: #7f237e;
    background-color: #862485;
    color: #FFFFFF; }

.btn_secondary {
  text-shadow: 0 1px 1px #d84c02;
  background-color: #FF5800;
  border-color: #f15401;
  color: #FFFFFF; }
  .btn_secondary:hover {
    border-color: #e35002;
    background-color: #f15401;
    color: #FFFFFF; }

/*  
++++++++++++++++++++++ 
+++ HELPERS: FORMS +++ 
++++++++++++++++++++++
*/
.form_item_input.with_disabled {
  background-image: url("../images/picto-input-disabled.svg"); }

.no-svg .form_item_input.with_disabled {
  background-image: url("../images/picto-input-disabled.png"); }

/*  
++++++++++++++++++++++++++++++++
+++ HELPERS: STATUS MESSAGES +++ 
++++++++++++++++++++++++++++++++
*/
.status_message {
  background-color: #F5E081;
  border-bottom: 1px solid #f4db6e;
  border-radius: 4px;
  font-size: 1.15385em;
  margin-bottom: 24px;
  margin-top: 24px;
  padding: 16px;
  position: relative; }

/*  
++++++++++++++++++++++++++++++++
+++ HELPERS: STATUS MESSAGES +++ 
++++++++++++++++++++++++++++++++
*/
.status_message_element {
  color: #8E258D;
  text-decoration: none; }
  .status_message_element:hover {
    text-decoration: underline; }

/*  
+++++++++++++++++++++++ 
+++ HELPERS: TABLES +++ 
+++++++++++++++++++++++
*/
table {
  border-radius: 4px; }

th, td {
  padding: .7em 1em;
  text-align: left; }

th {
  background-color: #8E258D;
  color: #FFFFFF;
  font-size: 1.23077em;
  padding-right: 2em;
  vertical-align: top; }

td {
  background-color: #EEEEEE;
  font-size: 1.15385em; }
  td a:hover {
    color: #8E258D;
    text-decoration: underline; }

tr:last-of-type td:first-child, tr:last-of-type th:first-child {
  border-radius: 0 0 0 4px; }

tr:last-of-type td:last-child {
  border-radius: 0 0 4px; }

tr:first-of-type th:last-child, tr:first-of-type td:last-child {
  border-radius: 0 4px 0 0; }

tr:first-of-type th:first-child {
  border-radius: 4px 0 0 0; }

tr:nth-child(even) th {
  background-color: #862485; }

tr:nth-child(even) td {
  background-color: #e1e1e1; }

/*
+++++++++++++++++++++++++++++++++++
+++ LAYOUT: CORE CONTENT LAYOUT +++
+++++++++++++++++++++++++++++++++++
*/
#content {
  padding-bottom: 1960px;
  padding-top: 36px;
  position: relative;
  z-index: 800; }
  @media only screen and (min-width: 30em) {
    #content {
      padding-bottom: 1260px; } }
  @media only screen and (min-width: 43.75em) {
    #content {
      padding-bottom: 600px;
      padding-top: 48px; } }
  @media only screen and (min-width: 63.75em) {
    #content {
      padding-bottom: 580px; } }

.content_align {
  -webkit-transition-property: padding;
  -webkit-transition-duration: 1s;
  -webkit-transition-timing-function: ease;
  transition-property: padding;
  transition-duration: 1s;
  transition-timing-function: ease;
  background-color: #8E258D;
  height: 100%; }

.surcore, .subcore {
  position: relative; }

.subcore {
  padding-left: 0;
  padding-right: 0; }

@media only screen and (min-width: 63.75em) {
  .surcore {
    padding-left: 0;
    padding-right: 0; } }

.surcore .section {
  padding-left: 0;
  padding-right: 0; }

.surcore_hero {
  position: relative; }

.surcore_caption {
  height: 80px;
  left: 0;
  margin-top: -40px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 100%; }
  @media only screen and (min-width: 43.75em) {
    .surcore_caption_title {
      font-size: 10vw;
      line-height: 80px; } }
  @media only screen and (min-width: 98.75em) {
    .surcore_caption_title {
      font-size: 7vw; } }

.surcore_bg {
  display: block; }

/*
 * Styling above for .surcore + .core for when
 * .core is directly below .surcore
 * Added FLex Box styling so have control to change order
 * of elements such as Asidecol
 */
.core {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  padding-top: 36px;
  position: relative; }
  @media only screen and (min-width: 63.75em) {
    .core {
      width: 936px; } }

.subcore {
  margin-top: 48px; }
  @media only screen and (min-width: 43.75em) {
    .subcore {
      margin-top: 96px; } }

/*
+++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION HEADER +++
+++++++++++++++++++++++++++++++++
*/
/*
----------------
--- CONTENTS ---
----------------

    1.0 Common
    2.0 Navigation
    3.0 Secondary nav

----------------
----------------
*/
#header {
  background-color: #FFFFFF;
  position: relative;
  z-index: 9999;
  -webkit-transform-style: preserve-3d; }

.header_align {
  position: relative; }

/*a*/
.logo_base, .logo {
  display: block; }

/*a*/
@media only screen and (min-width: 63.75em) {
  .logo_base {
    height: 96px;
    width: 492px; } }

@media only screen and (min-width: 63.75em) {
  .toolbar_align {
    padding-top: 24px; } }

.toolbar_upper_align, .toolbar_lower_align {
  position: relative; }

.toolbar_lower {
  background-color: #8E258D;
  display: none;
  margin-top: 24px; }
  @media only screen and (min-width: 63.75em) {
    .toolbar_lower {
      display: block; } }

.topnav {
  float: left; }
  .topnav.with_social {
    float: right; }
  .topnav_base {
    float: right; }
  .topnav_block {
    float: left;
    margin-left: 12px;
    position: relative; }
    .topnav_block.first {
      margin-left: 0; }
    .topnav_block.with_secnav.first {
      display: none; }
      @media only screen and (min-width: 38.75em) {
        .topnav_block.with_secnav.first {
          display: list-item; } }
  .topnav_element {
    color: #8E258D;
    display: block;
    font-size: 0.61538em;
    line-height: 16px; }
    @media only screen and (min-width: 20em) {
      .topnav_element {
        font-size: 0.84615em; } }
    @media only screen and (min-width: 78.75em) {
      .topnav_element {
        font-size: 0.92308em; } }
    .topnav_element:hover {
      color: #FF5800;
      text-decoration: underline; }
    .topnav_element.on {
      color: #8E258D;
      text-decoration: none; }
    .topnav_element.all:hover {
      color: #8E258D; }
    .topnav_element.with_social {
      color: #FFFFFF;
      font-size: 0.92308em;
      line-height: 24px; }
      .topnav_element.with_social:hover {
        color: #8E258D;
        text-decoration: none; }
    .topnav_element.with_basket {
      -webkit-background-size: 15px 12px;
      background-size: 15px 12px;
      background-image: url("../images/picto-basket.png");
      background-position: left 0;
      background-repeat: no-repeat;
      padding-left: 18px; }

.secnav {
  border-bottom: 4px solid #8E258D;
  margin-bottom: 16px; }
  @media only screen and (min-width: 63.75em) {
    .secnav {
      border-bottom: none;
      height: 16px;
      margin-bottom: 0;
      margin-top: -8px;
      position: absolute;
      right: 0;
      top: 50%; } }
  .secnav_align {
    padding-top: 16px; }
    @media only screen and (min-width: 63.75em) {
      .secnav_align {
        padding-top: 0; } }

/*
+++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION FOOTER +++
+++++++++++++++++++++++++++++++++
*/
/*
----------------
--- CONTENTS ---
----------------

    1.0 Common
    2.0 Navigation

----------------
----------------
*/
.footer_base {
  background-color: #FFFFFF;
  clear: both;
  height: 1960px;
  margin-top: -1960px;
  overflow: hidden;
  position: absolute;
  width: 100%;
  z-index: 1000; }
  @media only screen and (min-width: 30em) {
    .footer_base {
      height: 1260px;
      margin-top: -1260px; } }
  @media only screen and (min-width: 43.75em) {
    .footer_base {
      height: 600px;
      margin-top: -600px; } }
  @media only screen and (min-width: 63.75em) {
    .footer_base {
      height: 580px;
      margin-top: -580px; } }

.fnav {
  margin-top: 48px;
  /*a*/
  /*a*/
  /*img*/ }
  .fnav_block {
    margin-top: 24px; }
    .fnav_block.first {
      margin-top: 0; }
      @media only screen and (min-width: 43.75em) {
        .fnav_block.first {
          margin-left: 0; } }
    @media only screen and (min-width: 43.75em) {
      .fnav_block {
        float: left;
        margin-left: 2%;
        margin-top: 0;
        width: 23%; } }
    @media only screen and (min-width: 63.75em) {
      .fnav_block {
        margin-left: 4%;
        width: 22%; } }
  .fnav_title {
    border-bottom: 2px solid #8E258D;
    color: #8E258D;
    font-size: 1.15385em;
    margin-bottom: 1em;
    padding-bottom: .3em; }
    @media only screen and (min-width: 43.75em) {
      .fnav_title {
        border-bottom-color: #e2e2e2;
        border-bottom-width: 1px;
        color: #5E5E5E;
        font-size: 1em;
        padding-bottom: .2em; } }
    @media only screen and (min-width: 63.75em) {
      .fnav_title {
        font-size: 1.07692em; } }
  @media only screen and (min-width: 30em) {
    .fnav_feed_block {
      float: left;
      margin-left: 4%;
      width: 48%; } }
  @media only screen and (min-width: 43.75em) {
    .fnav_feed_block {
      float: none;
      margin-left: 0;
      margin-top: 1em;
      width: auto; } }
  @media only screen and (min-width: 63.75em) {
    .fnav_feed_block {
      margin-top: .5em; } }
  .fnav_feed_block.first {
    margin-top: 0; }
  .fnav_feed_block.startrow {
    margin-left: 0; }
  .fnav_feed_element {
    border-top: 1px solid #DEDEDE;
    color: #5E5E5E;
    display: block;
    font-size: 0.92308em;
    padding-bottom: 16px;
    padding-top: 16px; }
    .fnav_feed_element.block1 {
      border-top: none; }
    @media only screen and (min-width: 30em) {
      .fnav_feed_element.block2 {
        border-top: none; } }
    @media only screen and (min-width: 38.75em) {
      .fnav_feed_element {
        font-size: 1em; } }
    @media only screen and (min-width: 43.75em) {
      .fnav_feed_element {
        border-top: none;
        display: inline-block;
        padding-bottom: 0;
        padding-top: 0;
        font-size: 0.84615em; } }
    @media only screen and (min-width: 63.75em) {
      .fnav_feed_element {
        font-size: 1.07692em; } }
    .fnav_feed_element:hover {
      color: #8E258D;
      text-decoration: underline; }
  .fnav_sub {
    text-align: center;
    margin-top: 48px; }
    @media only screen and (min-width: 63.75em) {
      .fnav_sub {
        margin-top: 72px; } }
  .fnav_logo_base, .fnav_logo {
    display: inline-block; }
  .fnav_logo_base {
    height: 72px;
    width: 170px; }
  .fnav_logo {
    height: auto;
    width: 100%; }
  .fnav_credits, .fnav_credits a {
    color: #5E5E5E; }
  .fnav_credits {
    font-size: 0.92308em;
    line-height: 1.2;
    margin-top: 24px; }
    @media only screen and (min-width: 43.75em) {
      .fnav_credits {
        font-size: 0.84615em; } }
    @media only screen and (min-width: 63.75em) {
      .fnav_credits {
        font-size: 1em; } }
    .fnav_credits a:hover {
      color: #8E258D;
      text-decoration: underline; }

/*
++++++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION SURHEADER +++
++++++++++++++++++++++++++++++++++++
*/
/*
----------------
--- CONTENTS ---
----------------

    1.0 Common
    2.0 Site search

----------------
----------------
*/
.surheader {
  background-color: #7AB800;
  display: none;
  padding-bottom: 4px;
  padding-top: 4px; }
  @media only screen and (min-width: 63.75em) {
    .surheader {
      display: block; } }

.surnav {
  float: left; }

.surnav_block {
  float: left;
  margin-left: 12px; }
  .surnav_block.first {
    margin-left: 0; }
  @media only screen and (min-width: 78.75em) {
    .surnav_block {
      margin-left: 16px; } }

.surnav_element {
  color: #FFFFFF;
  display: block;
  font-size: 0.76923em;
  line-height: 24px;
  padding-bottom: 8px;
  padding-top: 8px; }
  .surnav_element:hover {
    text-decoration: underline; }
  .surnav_element.on {
    color: #8E258D;
    text-decoration: none; }
  @media only screen and (min-width: 63.75em) {
    .surnav_element {
      padding-bottom: 0;
      padding-top: 0; } }
  @media only screen and (min-width: 78.75em) {
    .surnav_element {
      font-size: 0.92308em; } }
  .surnav_element.cta {
    background-color: #2E2E2E;
    border-bottom: 2px solid #292929;
    border-radius: 4px;
    padding-left: 12px;
    padding-right: 12px; }
    .surnav_element.cta:hover {
      background-color: #292929;
      border-bottom-color: #252525; }
    @media only screen and (min-width: 63.75em) {
      .surnav_element.cta {
        padding-left: 8px;
        padding-right: 8px; } }

/*body*/
#home .surnav_block:first-of-type .surnav_element:hover {
  text-decoration: none; }

.sitesearch {
  float: right;
  height: 24px;
  margin-left: 16px; }

#sitesearch_query, #sitesearch_query {
  float: left; }

#sitesearch_query {
  -webkit-transition-property: width;
  -webkit-transition-duration: 0.4s;
  -webkit-transition-timing-function: ease;
  transition-property: width;
  transition-duration: 0.4s;
  transition-timing-function: ease;
  background-color: white;
  border: none;
  border-radius: 4px;
  box-shadow: inset 1px 2px 2px #ececec;
  color: #2E2E2E;
  font-size: 0.92308em;
  height: 24px;
  line-height: 24px;
  padding-bottom: 0;
  padding-left: 8px;
  padding-right: 8px;
  padding-top: 0;
  width: 64px; }
  #sitesearch_query:focus {
    box-shadow: inset 1px 2px 2px #d8d8d8;
    background-color: white;
    outline: none; }
    @media only screen and (min-width: 78.75em) {
      #sitesearch_query:focus {
        width: 96px; } }
    @media only screen and (min-width: 87.5em) {
      #sitesearch_query:focus {
        width: 144px; } }

#sitesearch_submit {
  -webkit-background-size: 12px 12px;
  background-size: 12px 12px;
  background-color: #608f03;
  background-image: url("../images/picto-search@2x.png");
  background-position: center center;
  background-repeat: no-repeat;
  border: none;
  border-radius: 4px;
  color: #AEAEAE;
  cursor: pointer;
  height: 24px;
  font-size: 0.76923em;
  margin-left: 4px;
  overflow: hidden;
  text-indent: -9999em;
  width: 30px; }

.no-backgroundsize #sitesearch_submit {
  background-image: url("../images/picto-search.png"); }

/*
+++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION TOPICS +++
+++++++++++++++++++++++++++++++++
*/
.topics_block {
  float: left;
  margin-left: 1.2em; }
  .topics_block.first {
    margin-left: 0; }
  @media only screen and (min-width: 78.75em) {
    .topics_block {
      margin-left: 1.5em; } }

.topics_element {
  color: #FFFFFF;
  display: block;
  font-size: 1em;
  line-height: 32px;
  padding-bottom: 8px;
  padding-top: 8px; }
  .topics_element:hover {
    color: #FF5800;
    text-decoration: underline; }
  .topics_element.on {
    color: #FF5800;
    text-decoration: none; }
    @media only screen and (min-width: 78.75em) {
      .topics_element.on {
        background-color: #FF5800;
        color: #FFFFFF;
        padding-left: 1.5em;
        padding-right: 1.5em; } }

/*
+++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION SUBNAV +++
+++++++++++++++++++++++++++++++++
*/
/*nav*/
.nav_sidebar .subnav_level1 {
  border-bottom: 1px solid #DEDEDE;
  padding-bottom: 4px;
  padding-top: 4px; }
  .nav_sidebar .subnav_level1 ul {
    border-left: 2px solid #DEDEDE;
    margin-bottom: 12px;
    margin-top: 12px;
    padding-left: 12px;
    padding-right: 12px; }
  .nav_sidebar .subnav_level1 .subnav_element {
    color: #4E4E4E;
    font-size: 1.07692em;
    padding-bottom: 12px;
    padding-top: 12px; }
    .nav_sidebar .subnav_level1 .subnav_element:hover {
      color: #2E2E2E; }
    .nav_sidebar .subnav_level1 .subnav_element.on {
      color: #8E258D;
      text-decoration: underline; }
    @media only screen and (min-width: 43.75em) {
      .nav_sidebar .subnav_level1 .subnav_element {
        padding-bottom: 0;
        padding-top: 0; } }

.nav_sidebar .subnav_level2 {
  margin-left: 28px;
  margin-right: 28px; }
  @media only screen and (min-width: 43.75em) {
    .nav_sidebar .subnav_level2 li {
      padding-bottom: .2em;
      padding-top: .2em; } }

.nav_sidebar .subnav_element {
  display: block;
  line-height: 1.2; }
  .nav_sidebar .subnav_element:hover {
    text-decoration: underline; }
  .nav_sidebar .subnav_element.on {
    text-decoration: none; }
  .nav_sidebar .subnav_element.level0:hover, .nav_sidebar .subnav_element.level1:hover {
    background-color: #F2F2F2; }
  .nav_sidebar .subnav_element.level0 {
    border-bottom: 1px solid #DEDEDE;
    font-size: 1.15385em;
    padding-bottom: 12px;
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 12px; }
    .nav_sidebar .subnav_element.level0.on {
      background-color: #8E258D;
      border-bottom-color: #892488;
      border-bottom-width: 2px; }
      .nav_sidebar .subnav_element.level0.on:hover {
        color: #FFFFFF; }
    .nav_sidebar .subnav_element.level0.first {
      border-top: 1px solid #DEDEDE; }
    @media only screen and (min-width: 43.75em) {
      .nav_sidebar .subnav_element.level0 {
        padding-bottom: 8px;
        padding-top: 8px; } }
  .nav_sidebar .subnav_element.level1 {
    padding-bottom: 12px;
    padding-left: 28px;
    padding-right: 28px;
    padding-top: 12px; }
    .nav_sidebar .subnav_element.level1.on {
      background: none;
      padding-bottom: 0; }
    @media only screen and (min-width: 43.75em) {
      .nav_sidebar .subnav_element.level1 {
        padding-bottom: 6px;
        padding-top: 6px; } }

/*
+++++++++++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION SUBNAV LANDING +++
+++++++++++++++++++++++++++++++++++++++++
*/
.subnav_landing {
  margin-bottom: 36px; }
  @media only screen and (min-width: 63.75em) {
    .subnav_landing {
      margin-bottom: 48px; } }
  .subnav_landing_title {
    margin-bottom: .3em; }
  @media only screen and (min-width: 43.75em) {
    .subnav_landing_feed_block {
      display: block;
      float: left; } }
  .subnav_landing_feed_divider {
    color: #c48ec4;
    display: none; }
    @media only screen and (min-width: 43.75em) {
      .subnav_landing_feed_divider {
        display: inline; } }
    .subnav_landing_feed_divider.first {
      display: none; }
  .subnav_landing_feed_element {
    background-color: #DEDEDE;
    border-top: 2px solid #d2d2d2;
    color: #2E2E2E;
    display: block;
    font-size: 1.07692em;
    padding-bottom: .5em;
    padding-left: 12px;
    padding-right: 12px;
    padding-top: .5em; }
    .subnav_landing_feed_element.first {
      border-top: none; }
    @media only screen and (min-width: 43.75em) {
      .subnav_landing_feed_element {
        background: none;
        border-top: none;
        color: #8E258D;
        display: inline;
        font-size: 1.23077em;
        padding: 0; } }

/*
++++++++++++++++++++++++
+++ LAYOUT: SECTION +++
++++++++++++++++++++++++
*/
.section {
  /*&_search {
        &_title {
            color: $primary;
            margin-bottom: .5em;
            margin-top: $gutter;

            @include mq($min: $break_tablet) {
                margin-top: $gutter * 1.5;
            }

            @include mq($min: $break_medium) {
                font-size: fontSize(24);
            }
        }

        &_lookup {
            @extend %clearfix_modern;

            @include ie(7) {
                overflow: hidden;
            }

            &_input, &_submit {
                float: left;
            }

            &_input {
                @extend %form_item_input;
                line-height: 20px;
                padding: $gutter / 2;
                width: 80%;

                @include mq($min: $break_medium) {
                    width: 40%;
                }
            }

            &_submit {
                @extend %font_picto;
                background-color: $primary;
                border: 2px solid shade($primary, 12%);
                border-radius: $border_radius;
                color: $white;
                font-size: 24px;
                height: 48px;
                line-height: 1;
                margin-left: 1%;
                width: 19%;

                @include mq($min: $break_medium) {
                    height: 48px;
                    margin-left: $gutter / 6;
                    padding-left: $gutter;
                    padding-right: $gutter;
                    width: auto;
                }

                @include ie(8) {
                    height: 42px;
                }

                @include ie(7) {
                    height: 48px;
                }
            }
        }
    }*/ }
  .section_header {
    border-bottom: 1px solid #DEDEDE;
    padding-bottom: 16px; }
    @media only screen and (min-width: 63.75em) {
      .section_header {
        padding-right: 160px;
        width: 776px; } }
    .section_header_surtitle {
      color: #B26AB1;
      display: block;
      font-size: 1.07692em;
      margin-bottom: .5em; }
      .section_header_surtitle_wl:hover {
        color: #8E258D;
        text-decoration: underline; }
      @media only screen and (min-width: 38.75em) {
        .section_header_surtitle {
          font-size: 1.23077em; } }
    .section_header_summary {
      color: #5E5E5E;
      font-weight: 400;
      margin-top: 1em; }
      @media only screen and (min-width: 43.75em) {
        .section_header_summary {
          font-size: 1.38462em;
          line-height: 1.3; } }
      @media only screen and (min-width: 63.75em) {
        .section_header_summary {
          font-size: 1.61538em;
          line-height: 1.4; } }
      .section_header_summary a:hover {
        text-decoration: underline; }
  .section_media {
    margin-bottom: 24px; }
    .section_media_thumb {
      border-radius: 4px;
      display: block; }
    .section_media_caption, .section_media_caption a {
      color: #5E5E5E; }
    .section_media_caption {
      font-size: 1em;
      font-style: italic;
      line-height: 1.3;
      margin-top: .5em; }
      @media only screen and (min-width: 43.75em) {
        .section_media_caption {
          padding-left: 2em;
          padding-right: 2em;
          text-align: center; } }
      .section_media_caption a {
        text-decoration: none;
        background-repeat: repeat-x;
        background-image: -webkit-linear-gradient(to top, #8E258D 75%);
        background-image: -webkit-linear-gradient(#FFFFFF 75%, #8E258D 75%);
        background-image: linear-gradient(#FFFFFF 75%, #8E258D 75%);
        background-size: 0.125em 0.1875em;
        background-position: 0 0.975em;
        text-shadow: 0.0625em 0.0625em 0 #FFFFFF, -0.0625em 0 0 #FFFFFF; }
        .section_media_caption a:hover {
          text-decoration: none;
          background-repeat: repeat-x;
          background-image: -webkit-linear-gradient(to top, #8E258D 75%);
          background-image: -webkit-linear-gradient(#FFFFFF 75%, #8E258D 75%);
          background-image: linear-gradient(#FFFFFF 75%, #8E258D 75%);
          background-size: 0.125em 0.1875em;
          background-position: 0 0.975em;
          text-shadow: 0.0625em 0.0625em 0 #FFFFFF, -0.0625em 0 0 #FFFFFF;
          color: #8E258D; }

/*
++++++++++++++++++++++++
+++ LAYOUT: PRODUCTS +++
++++++++++++++++++++++++
*/
.products_feed_block {
  float: left;
  margin-left: 5%;
  margin-top: 5%;
  width: 16%; }
  .products_feed_block.block1, .products_feed_block.block2, .products_feed_block.block3, .products_feed_block.block4, .products_feed_block.block5 {
    margin-top: 0; }
  .products_feed_block.startrow {
    clear: left;
    margin-left: 0; }

.products_feed_thumb {
  display: block; }

#submit_shopform {
  margin-bottom: 24px; }
  @media only screen and (min-width: 38.75em) {
    #submit_shopform {
      margin-bottom: 0;
      margin-right: 24px; } }

#submit_shopform.disabled,
#submit_invoice.disabled {
  text-shadow: 0 1px 1px #EEE;
  background-color: #EEE;
  border-color: #EEE;
  color: #AAA; }

.form_actions .btn_secondary {
  margin-top: 24px;
  padding: 16px 0; }
  @media only screen and (min-width: 38.75em) {
    .form_actions .btn_secondary {
      margin-top: 0;
      margin-left: 24px;
      padding: 6px 16px; } }

/*
++++++++++++++++++++++++
+++ LAYOUT: FOOTNOTE +++
++++++++++++++++++++++++
*/
.footnote {
  background-color: #8E258D;
  border-bottom: 2px solid #7f227e;
  padding-bottom: 48px;
  padding-top: 48px;
  text-align: center; }
  @media only screen and (min-width: 43.75em) {
    .footnote {
      padding-bottom: 72px;
      padding-top: 72px; } }
  @media only screen and (min-width: 63.75em) {
    .footnote_align {
      margin-left: auto;
      margin-right: auto;
      padding-left: 0;
      padding-right: 0;
      width: 936px; } }
  @media only screen and (min-width: 98.75em) {
    .footnote_align {
      margin-left: 0;
      margin-right: 0;
      padding-left: 16%;
      padding-right: 16%;
      width: auto; } }
  @media only screen and (min-width: 112.5em) {
    .footnote_align {
      padding-left: 20%;
      padding-right: 20%; } }
  .footnote_title, .footnote_title_wl, .footnote_cta {
    color: #FFFFFF; }
  @media only screen and (min-width: 43.75em) {
    .footnote_title {
      font-size: 2.30769em; } }
  @media only screen and (min-width: 87.5em) {
    .footnote_title {
      font-size: 2vw; } }
  .footnote_cta {
    border: 2px solid #FFFFFF;
    border-radius: 4px;
    display: inline-block;
    font-size: 1.07692em;
    margin-top: 16px;
    padding-bottom: 8px;
    padding-left: 12px;
    padding-right: 12px;
    padding-top: 8px; }
    .footnote_cta:hover {
      background-color: #7a2179; }

/*
+++++++++++++++++++++++
+++ LAYOUT: LANDING +++
+++++++++++++++++++++++
*/
/*
----------------
--- CONTENTS ---
----------------

    1.0 Common
    2.0 Overview
    3.0 Focus
    4.0 Picks
    5.0 Events
    6.0 Breakout

----------------
----------------
*/
/*body*/
.fullscreen .surcore {
  margin-bottom: 36px; }
  @media only screen and (min-width: 43.75em) {
    .fullscreen .surcore {
      margin-bottom: 48px; } }
  @media only screen and (min-width: 63.75em) {
    .fullscreen .surcore .section {
      padding-left: 2%;
      padding-right: 2%; } }
  @media only screen and (min-width: 78.75em) {
    .fullscreen .surcore .section {
      padding-left: 8%;
      padding-right: 8%; } }
  @media only screen and (min-width: 87.5em) {
    .fullscreen .surcore .section {
      padding-left: 12%;
      padding-right: 12%; } }
  @media only screen and (min-width: 98.75em) {
    .fullscreen .surcore .section {
      padding-left: 16%;
      padding-right: 16%; } }
  @media only screen and (min-width: 112.5em) {
    .fullscreen .surcore .section {
      padding-left: 20%;
      padding-right: 20%; } }
  .fullscreen .surcore .section_header {
    border-bottom: none;
    padding-bottom: 0;
    width: auto; }
    @media only screen and (min-width: 63.75em) {
      .fullscreen .surcore .section_header_summary {
        max-width: 776px; } }

.overview_primary, .overview_secondary {
  float: left; }

.overview_thumb, .overview_thumb_base {
  display: block; }

.overview_thumb {
  border-radius: 4px; }
  .overview_thumb_base {
    margin-bottom: 12px; }

@media only screen and (min-width: 63.75em) {
  .overview_primary {
    width: 60%; } }

@media only screen and (min-width: 63.75em) {
  .overview_primary_title {
    font-size: 2.76923em;
    line-height: 1.1; } }

@media only screen and (min-width: 87.5em) {
  .overview_primary_title {
    font-size: 3.69231em; } }

.overview_secondary {
  margin-top: 24px; }
  @media only screen and (min-width: 63.75em) {
    .overview_secondary {
      margin-left: 3%;
      margin-top: 0;
      width: 37%; } }
  .overview_secondary_feat {
    background-color: #8E258D;
    border-radius: 4px;
    margin-bottom: 24px;
    padding: 24px 0; }
    .overview_secondary_feat_heading, .overview_secondary_feat_copy {
      color: #FFFFFF;
      padding: 0 24px; }
    .overview_secondary_feat_copy {
      font-size: 1.07692em;
      padding: 16px 24px; }
    .overview_secondary_feat_cta {
      color: #FFFFFF;
      text-align: left;
      margin: 0 24px; }
  .overview_secondary_feed_block {
    border-top: 1px dotted #B26AB1;
    margin-top: 12px;
    padding-top: 12px; }
    @media only screen and (min-width: 30em) {
      .overview_secondary_feed_block {
        padding-left: 112px; } }
    @media only screen and (min-width: 78.75em) {
      .overview_secondary_feed_block {
        padding-left: 136px; } }
    @media only screen and (min-width: 87.5em) {
      .overview_secondary_feed_block {
        padding-left: 160px; } }
    .overview_secondary_feed_block.first {
      border-top: none;
      margin-top: 0;
      padding-top: 0; }
  .overview_secondary_feed_thumb_base {
    margin-bottom: 8px; }
    @media only screen and (min-width: 30em) {
      .overview_secondary_feed_thumb_base {
        float: left;
        margin-bottom: 0;
        margin-left: -112px;
        width: 96px; } }
    @media only screen and (min-width: 78.75em) {
      .overview_secondary_feed_thumb_base {
        margin-left: -136px;
        width: 120px; } }
    @media only screen and (min-width: 87.5em) {
      .overview_secondary_feed_thumb_base {
        margin-left: -160px;
        width: 144px; } }
  .overview_secondary_feed_title {
    font-size: 1.15385em; }
    @media only screen and (min-width: 38.75em) {
      .overview_secondary_feed_title {
        font-size: 1.84615em; } }
    @media only screen and (min-width: 63.75em) {
      .overview_secondary_feed_title {
        font-size: 1.15385em; } }
    @media only screen and (min-width: 87.5em) {
      .overview_secondary_feed_title {
        font-size: 1.38462em; } }

.focus_align {
  position: relative; }

.focus_thumb_base, .focus_thumb {
  border-radius: 4px;
  display: block; }

.focus_caption {
  background-color: #FFFFFF;
  border-top: 4px solid #8E258D;
  border-radius: 4px 4px 0 0;
  padding-bottom: 24px;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: 24px;
  text-align: center; }
  @media only screen and (min-width: 38.75em) {
    .focus_caption {
      padding-bottom: 36px;
      padding-left: 48px;
      padding-right: 48px;
      padding-top: 36px; } }
  @media only screen and (min-width: 63.75em) {
    .focus_caption {
      bottom: 0;
      left: 50%;
      margin-left: -356px;
      position: absolute;
      width: 616px;
      z-index: 999; } }
  .focus_caption_align {
    margin-top: -10%;
    padding-left: 4%;
    padding-right: 4%;
    position: relative;
    z-index: 888; }
    @media only screen and (min-width: 63.75em) {
      .focus_caption_align {
        margin-top: 0;
        padding-left: 0;
        padding-right: 0; } }
  .focus_caption_title {
    font-weight: 800; }
    @media only screen and (min-width: 43.75em) {
      .focus_caption_title {
        font-size: 1.84615em; } }
    @media only screen and (min-width: 63.75em) {
      .focus_caption_title {
        font-size: 2.30769em; } }
  .focus_caption_surtitle {
    border-bottom: 1px solid #DEDEDE;
    margin-bottom: 1em;
    padding-bottom: .2em; }
    @media only screen and (min-width: 43.75em) {
      .focus_caption_surtitle {
        font-size: 1.38462em; } }

.picks_special {
  background-color: #FF5800;
  border-bottom: 2px solid #e24f02;
  border-radius: 4px;
  color: #FFFFFF;
  display: block;
  font-family: "Gotham SSm A", "Gotham SSm B", sans-serif;
  font-size: 1.84615em;
  font-weight: 800;
  margin-top: 48px;
  padding-bottom: 36px;
  padding-left: 4%;
  padding-right: 4%;
  padding-top: 36px; }
  .picks_special.first {
    margin-top: 0; }
  @media only screen and (min-width: 38.75em) {
    .picks_special {
      padding-left: 8%;
      padding-right: 8%; } }
  @media only screen and (min-width: 43.75em) {
    .picks_special {
      font-size: 2.30769em; } }
  @media only screen and (min-width: 63.75em) {
    .picks_special {
      padding-left: 20%;
      padding-right: 20%; } }
  @media only screen and (min-width: 78.75em) {
    .picks_special {
      font-size: 2.76923em; } }
  @media only screen and (min-width: 112.5em) {
    .picks_special {
      padding-right: 30%; } }
  .picks_special i {
    display: block;
    font-family: "Gotham Narrow SSm A", "Gotham Narrow SSm B", sans-serif;
    font-size: .7em;
    font-style: normal;
    font-weight: 400;
    margin-top: .6em; }
    @media only screen and (min-width: 43.75em) {
      .picks_special i {
        font-size: .5em; } }

.picks_feed_block {
  margin-top: 24px; }
  @media only screen and (min-width: 38.75em) {
    .picks_feed_block {
      float: left;
      margin-left: 5%;
      margin-top: 5%;
      width: 30%; } }
  @media only screen and (min-width: 63.75em) {
    .picks_feed_block {
      margin-left: 2%;
      margin-top: 36px;
      width: 15%; } }
  .picks_feed_block.first {
    margin-top: 0; }
  @media only screen and (min-width: 38.75em) {
    .picks_feed_block.block2, .picks_feed_block.block3 {
      margin-top: 0; } }
  @media only screen and (min-width: 63.75em) {
    .picks_feed_block.block4, .picks_feed_block.block5, .picks_feed_block.block6 {
      margin-top: 0; } }
  @media only screen and (min-width: 38.75em) {
    .picks_feed_block.startrow3 {
      clear: left;
      margin-left: 0; } }
  @media only screen and (min-width: 63.75em) {
    .picks_feed_block.startrow3 {
      clear: none;
      margin-left: 2%; } }
  @media only screen and (min-width: 63.75em) {
    .picks_feed_block.startrow6 {
      clear: left;
      margin-left: 0; } }

.picks_feed_thumb_base, .picks_feed_thumb, .picks_feed_surtitle {
  display: block; }

.picks_feed_thumb {
  height: auto;
  width: 100%; }
  .picks_feed_thumb_base {
    box-shadow: 1px 2px 3px rgba(46, 46, 46, 0.2);
    margin-bottom: 12px;
    width: 50%; }

@media only screen and (min-width: 43.75em) {
  .picks_feed_title {
    font-size: 1.07692em; } }

.picks_feed_summary {
  font-size: 1em;
  margin-top: .5em; }

.picks_base {
  margin-top: 36px; }
  @media only screen and (min-width: 43.75em) {
    .picks_base {
      margin-top: 48px; } }

.events_feed_block {
  margin-top: 24px; }
  .events_feed_block.first {
    margin-top: 0; }
  .events_feed_block.in-person .events_feed_header {
    background-color: #4A7707;
    border-color: #4A7707; }
  .events_feed_block.in-person .events_feed_details {
    border-bottom: 1px solid #becea6;
    border-left: 1px solid #becea6;
    border-right: 1px solid #becea6;
    box-shadow: inset 0 0 5px #e2e9d7; }
  .events_feed_block.in-person .events_feed_location {
    color: #3b5f06; }
  .events_feed_block.in-person .events_feed_type, .events_feed_block.in-person .events_feed_type_wl {
    color: #ccd9ba; }
  @media only screen and (min-width: 38.75em) {
    .events_feed_block {
      float: left;
      margin-left: 4%;
      width: 48%; }
      .events_feed_block.block2 {
        margin-top: 0; }
      .events_feed_block.startrow2 {
        clear: left;
        margin-left: 0; } }
  @media only screen and (min-width: 63.75em) {
    .events_feed_block {
      margin-left: 5%;
      margin-top: 36px;
      width: 30%; }
      .events_feed_block.block3 {
        margin-top: 0; }
      .events_feed_block.startrow2 {
        clear: none;
        margin-left: 5%; }
      .events_feed_block.startrow3 {
        clear: left;
        margin-left: 0; } }
  @media only screen and (min-width: 87.5em) {
    .events_feed_block {
      margin-left: 4%;
      width: 22%; }
      .events_feed_block.block4 {
        margin-top: 0; }
      .events_feed_block.startrow2 {
        margin-left: 4%; }
      .events_feed_block.startrow3 {
        clear: none;
        margin-left: 4%; }
      .events_feed_block.startrow4 {
        clear: left;
        margin-left: 0; } }

.events_feed_details {
  border-radius: 0 0 4px 4px;
  border-bottom: 1px solid #d6b1d6;
  border-left: 1px solid #d6b1d6;
  border-right: 1px solid #d6b1d6;
  box-shadow: inset 0 0 5px #eddced;
  padding-bottom: 16px;
  padding-left: 12px;
  padding-right: 12px;
  padding-top: 16px; }
  @media only screen and (min-width: 63.75em) {
    .events_feed_details {
      padding-left: 24px;
      padding-right: 24px; } }

.events_feed_header {
  background-color: #8E258D;
  border-bottom: 2px solid #7f227e;
  border-radius: 4px 4px 0 0; }
  @media only screen and (min-width: 63.75em) {
    .events_feed_header {
      min-height: 144px; } }
  .events_feed_header_align {
    padding-bottom: 24px;
    padding-left: 72px;
    padding-top: 16px; }
    @media only screen and (min-width: 63.75em) {
      .events_feed_header_align {
        padding-left: 84px; } }

.events_feed_header_align, .events_feed_surtitle {
  padding-right: 12px; }
  @media only screen and (min-width: 63.75em) {
    .events_feed_header_align, .events_feed_surtitle {
      padding-right: 24px; } }

.events_feed_surtitle, .events_feed_surtitle_wl, .events_feed_title, .events_feed_title_wl, .events_feed_date {
  color: #FFFFFF; }

.events_feed_surtitle {
  border-bottom: 1px solid #9c3f9b;
  display: none;
  font-size: 1em;
  padding-bottom: 12px;
  padding-left: 12px;
  padding-top: 16px; }
  @media only screen and (min-width: 63.75em) {
    .events_feed_surtitle {
      padding-left: 24px; } }

.events_feed_date {
  float: left;
  font-size: 0.92308em;
  margin-left: -60px;
  text-align: center;
  text-transform: uppercase;
  width: 48px; }
  @media only screen and (min-width: 63.75em) {
    .events_feed_date {
      font-size: 0.84615em; } }
  .events_feed_date i {
    display: block;
    font-size: 2em;
    font-style: normal;
    line-height: 1; }
    @media only screen and (min-width: 63.75em) {
      .events_feed_date i {
        font-size: 2.6em; } }

.events_feed_title, .events_feed_type {
  font-weight: 400; }
  @media only screen and (min-width: 38.75em) {
    .events_feed_title, .events_feed_type {
      font-size: 1.07692em; } }
  @media only screen and (min-width: 78.75em) {
    .events_feed_title, .events_feed_type {
      font-size: 1.15385em; } }
  @media only screen and (min-width: 87.5em) {
    .events_feed_title, .events_feed_type {
      font-size: 1.07692em; } }

.events_feed_type, .events_feed_type_wl {
  color: #dfc2df; }

.events_feed_type {
  margin-bottom: .2em; }

.events_feed_location {
  color: #8E258D;
  font-size: 0.92308em;
  margin-bottom: .3em;
  text-transform: uppercase; }

.events_feed_summary {
  line-height: 1.2;
  margin-top: 0; }

.events_feed_more {
  color: #5E5E5E;
  display: block;
  float: right;
  font-size: 0.92308em;
  margin-top: 1.5em; }
  .events_feed_more:hover {
    color: #2E2E2E;
    text-decoration: underline; }

.breakout_align {
  background-color: #2E2E2E;
  border-radius: 4px; }

.breakout_thumb_base, .breakout_thumb {
  border-radius: 4px 4px 0 0;
  display: block; }
  @media only screen and (min-width: 63.75em) {
    .breakout_thumb_base, .breakout_thumb {
      border-radius: 4px 0 0 4px; } }

@media only screen and (min-width: 63.75em) {
  .breakout_thumb_base {
    float: left;
    width: 50%; } }

.breakout_caption {
  padding: 24px; }
  @media only screen and (min-width: 30em) {
    .breakout_caption {
      padding: 48px; } }
  @media only screen and (min-width: 63.75em) {
    .breakout_caption {
      margin-left: 50%; } }
  @media only screen and (min-width: 87.5em) {
    .breakout_caption {
      padding: 72px; } }
  .breakout_caption_title, .breakout_caption_title_wl, .breakout_caption_more {
    color: #FFFFFF; }
  @media only screen and (min-width: 43.75em) {
    .breakout_caption_title {
      font-size: 2.30769em;
      line-height: 1.1; } }
  @media only screen and (min-width: 78.75em) {
    .breakout_caption_title {
      font-size: 2.5vw; } }
  .breakout_caption_surtitle {
    color: #7AB800;
    margin-bottom: .3em; }
    @media only screen and (min-width: 63.75em) {
      .breakout_caption_surtitle {
        font-size: 1.61538em; } }
    @media only screen and (min-width: 78.75em) {
      .breakout_caption_surtitle {
        font-size: 1.84615em; } }
  .breakout_caption_summary {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #EEEEEE;
    font-weight: 400;
    margin-top: 2em; }
    @media only screen and (min-width: 63.75em) {
      .breakout_caption_summary {
        line-height: 1.4; } }
    @media only screen and (min-width: 87.5em) {
      .breakout_caption_summary {
        font-size: 1.38462em;
        line-height: 1.3; } }
  .breakout_caption_more {
    display: block;
    font-weight: 1.07692em;
    margin-top: 2em; }
    .breakout_caption_more:hover {
      color: #7AB800;
      text-decoration: underline; }

.landing_video {
  margin-top: 2em; }

/*body*/
@media only screen and (min-width: 63.75em) {
  .widescreen .core_align {
    width: 936px; } }

@media only screen and (min-width: 63.75em) {
  .widescreen .core .asidecol {
    margin-left: 0;
    margin-right: 16px; } }

@media only screen and (min-width: 63.75em) {
  .widescreen #content {
    padding-bottom: 0; } }

@media only screen and (min-width: 63.75em) {
  .widescreen .primary {
    padding-bottom: 160px; } }

/*
+++++++++++++++++++
+++ LAYOUT: BUY +++
+++++++++++++++++++
*/
.btn_buy {
  text-shadow: 0 1px 1px #7a2179;
  background-color: #8E258D;
  border-color: #862485;
  color: #FFFFFF;
  margin-bottom: 12px; }
  .btn_buy:hover {
    border-color: #7f237e;
    background-color: #862485;
    color: #FFFFFF; }
  @media only screen and (min-width: 38.75em) {
    .btn_buy {
      display: block;
      text-align: center; } }
  @media only screen and (min-width: 43.75em) {
    .btn_buy {
      padding: 16px; } }
  @media only screen and (min-width: 63.75em) {
    .btn_buy {
      padding-bottom: 10px;
      padding-left: 6px;
      padding-right: 6px;
      padding-top: 10px; } }

/*
++++++++++++++++++++++++++
+++ LAYOUT: QUICKLINKS +++
++++++++++++++++++++++++++
*/
/*
 * This is used in basic subpage templates
 * as a section navigation for articles/pages
 * within the same level of navigation.
 */
.quicklinks {
  margin-bottom: 24px; }
  @media only screen and (min-width: 30em) {
    .quicklinks {
      margin-bottom: 36px; } }
  @media only screen and (min-width: 63.75em) {
    .quicklinks {
      margin-bottom: 48px; } }
  .quicklinks_title {
    color: #8E258D;
    margin-bottom: 12px; }
  .quicklinks_more {
    background-color: #B26AB1;
    border-bottom: 2px solid #9e5f9d;
    border-radius: 4px;
    color: #FFFFFF;
    display: block;
    font-size: 1.07692em;
    margin-top: 1em;
    padding-bottom: 12px;
    padding-left: 24px;
    padding-right: 24px;
    padding-top: 12px;
    text-align: center; }
    .quicklinks_more:hover {
      background-color: #8E258D;
      border-bottom-color: #7f227e;
      text-decoration: underline; }
    @media only screen and (min-width: 43.75em) {
      .quicklinks_more {
        display: none; } }
  .quicklinks_feed_block {
    -webkit-transition-property: all;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: ease;
    transition-property: all;
    transition-duration: 0.2s;
    transition-timing-function: ease;
    height: 0;
    overflow: hidden;
    padding-left: 1em;
    padding-right: 1em;
    /*
             * `.active` is added when user clicks on button to
             * view all of the section nav.
             */ }
    .quicklinks_feed_block:first-of-type, .quicklinks_feed_block:nth-of-type(2), .quicklinks_feed_block:nth-of-type(3), .quicklinks_feed_block.active {
      border-bottom: 2px solid #d9b5d8;
      height: auto;
      padding-bottom: .6em;
      padding-top: .6em; }
    @media only screen and (min-width: 43.75em) {
      .quicklinks_feed_block {
        border-bottom: 2px solid #d9b5d8;
        float: left;
        height: auto;
        margin-left: 2%;
        padding-bottom: .6em;
        padding-top: .6em;
        width: 40%; } }
    @media only screen and (min-width: 63.75em) {
      .quicklinks_feed_block {
        width: 33%; } }
    .quicklinks_feed_block.first {
      border-top: 2px solid #d9b5d8; }
    @media only screen and (min-width: 43.75em) {
      .quicklinks_feed_block.block2 {
        border-top: 2px solid #d9b5d8; } }
    @media only screen and (min-width: 43.75em) {
      .quicklinks_feed_block.startrow2 {
        clear: left;
        margin-left: 0; } }
  .quicklinks_feed_element {
    color: #5E5E5E;
    font-size: 1em;
    line-height: 1.2; }
    .quicklinks_feed_element.on {
      color: #8E258D;
      text-decoration: none; }

/*
+++++++++++++++++++++++
+++ LAYOUT: BOOKING +++
+++++++++++++++++++++++
*/
.booking {
  margin-top: 2em; }
  .booking_header {
    border-bottom: 2px solid #DEDEDE;
    margin-bottom: 2em;
    padding-bottom: 2em; }
    @media only screen and (min-width: 63.75em) {
      .booking_header_title {
        font-size: 2.30769em; } }
    .booking_header_summary {
      color: #2E2E2E;
      line-height: 1.4;
      margin-top: 1em; }
  .booking_block {
    margin-top: 3em; }
    .booking_block.first {
      margin-top: 0; }
    .booking_block_header {
      margin-bottom: 1.5em; }
      .booking_block_header_title, .booking_block_header_subtitle {
        color: #2E2E2E; }
      @media only screen and (min-width: 43.75em) {
        .booking_block_header_title {
          font-size: 1.38462em; } }
      @media only screen and (min-width: 63.75em) {
        .booking_block_header_title {
          font-size: 1.84615em; } }
      .booking_block_header_subtitle {
        -webkit-font-smoothing: subpixel-antialiased;
        -moz-osx-font-smoothing: auto;
        color: #5E5E5E;
        font-weight: 400;
        margin-top: .2em; }
        @media only screen and (min-width: 43.75em) {
          .booking_block_header_subtitle {
            font-size: 1.23077em; } }
  .booking_feed_block {
    border-top: 1px solid #DEDEDE;
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
    .booking_feed_block.last {
      border-bottom: 1px solid #DEDEDE; }
    @media only screen and (min-width: 20em) {
      .booking_feed_block {
        padding-left: 104px;
        padding-right: 12px; } }
    @media only screen and (min-width: 43.75em) {
      .booking_feed_block {
        padding-left: 136px;
        padding-right: 24px; } }
    .booking_feed_block.with_summary {
      border-top-color: #CECECE;
      padding-bottom: 1em;
      padding-top: 1em; }
      .booking_feed_block.with_summary.last {
        border-bottom-color: #CECECE; }
  .booking_feed_aside {
    margin-bottom: 1em; }
    @media only screen and (min-width: 20em) {
      .booking_feed_aside {
        float: left;
        margin-bottom: 0;
        margin-left: -92px;
        width: 76px; } }
    @media only screen and (min-width: 43.75em) {
      .booking_feed_aside {
        margin-left: -112px;
        width: 96px; } }
    .booking_feed_aside.with_summary {
      margin-bottom: .2em; }
      @media only screen and (min-width: 20em) {
        .booking_feed_aside.with_summary {
          margin-bottom: 1em; } }
  .booking_feed input {
    display: none;
    visibility: hidden; }
  .booking_feed_title {
    color: #2E2E2E;
    font-size: 1.23077em; }
    @media only screen and (min-width: 43.75em) {
      .booking_feed_title {
        font-size: 1.38462em; } }
    .booking_feed_title.with_summary {
      font-size: 1.07692em; }
  .booking_feed_price {
    font-size: 1em;
    color: #5E5E5E;
    margin-top: .2em; }
  .booking_feed_summary {
    color: #5E5E5E;
    font-size: 1.07692em;
    margin-top: 1em; }
  .booking_feed_time {
    font-size: 1.07692em;
    margin-top: .15em; }
    @media only screen and (min-width: 20em) {
      .booking_feed_time {
        font-size: 1em; } }
    .booking_feed_time.with_summary {
      font-size: 1.07692em;
      margin-top: 0; }
  .booking_feed_btn {
    background-color: #8E258D;
    border-bottom: 2px solid #862485;
    border-radius: 4px;
    color: #FFFFFF;
    display: block;
    margin-top: .5em;
    padding-top: .5em;
    padding-bottom: .5em;
    text-align: center;
    width: 50%; }
    .booking_feed_btn:hover {
      text-decoration: underline; }
    @media only screen and (min-width: 20em) {
      .booking_feed_btn {
        width: auto; } }
    @media only screen and (min-width: 38.75em) {
      .booking_feed_btn {
        background: none;
        border-bottom: none;
        color: #8E258D;
        margin-top: 0;
        padding-top: .3em;
        padding-bottom: .3em;
        text-align: left; } }
    .booking_feed_btn.active {
      background-color: #FF5800;
      border-bottom-color: #f15401;
      text-decoration: none; }
      @media only screen and (min-width: 38.75em) {
        .booking_feed_btn.active {
          background: none;
          color: #FF5800; } }
  .booking_options {
    margin-top: 2em; }
    .booking_options_header {
      margin-bottom: 1.5em; }
      .booking_options_header_title {
        color: #2E2E2E; }
      .booking_options_header_summary {
        color: #5E5E5E;
        font-size: 1.07692em;
        margin-top: .2em; }
        .booking_options_header_summary a {
          color: #8E258D;
          text-decoration: underline; }
    .booking_options_feed_block {
      float: left;
      margin-left: 2%;
      padding-bottom: 20px;
      position: relative;
      text-align: center;
      width: 32%; }
      .booking_options_feed_block.first {
        margin-left: 0; }
    .booking_options_feed_element, .booking_options_feed_selector {
      cursor: pointer; }
    .booking_options_feed_element {
      background-color: #DEDEDE;
      border-bottom: 2px solid #d2d2d2;
      border-radius: 4px;
      color: #2E2E2E;
      display: block;
      padding-bottom: 12px;
      padding-top: 12px; }
      .booking_options_feed_element:hover {
        background-color: #d2d2d2;
        border-bottom-color: #c6c6c6;
        text-decoration: underline; }
      .booking_options_feed_selector:checked ~ .booking_options_feed_element {
        background-color: #7AB800;
        border-bottom-color: #74ae01;
        color: #FFFFFF;
        text-decoration: none; }
        .booking_options_feed_selector:checked ~ .booking_options_feed_element:hover {
          background-color: #74ae01;
          border-bottom-color: #6ea402; }
    .booking_options_feed_selector {
      -ms-transform: translateX(-50%);
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
      bottom: 0;
      display: inline-block;
      left: 50%;
      position: absolute; }
  .booking_complete {
    background-color: #EEEEEE;
    border: 1px solid #e1e1e1;
    border-radius: 4px;
    margin-top: 3em;
    padding: 12px; }
    @media only screen and (min-width: 50em) {
      .booking_complete {
        padding: 24px; } }
    .booking_complete_schedule_header_title {
      color: #2E2E2E;
      margin-bottom: .5em; }
    .booking_complete_schedule_block {
      margin-top: 1em; }
      .booking_complete_schedule_block.first {
        margin-top: 0; }
      .booking_complete_schedule_block_title {
        color: #5E5E5E;
        margin-bottom: .5em; }
    .booking_complete_final {
      margin-top: 2em; }
      @media only screen and (min-width: 38.75em) {
        .booking_complete_final {
          padding-left: 30%; } }
      @media only screen and (min-width: 43.75em) {
        .booking_complete_final {
          padding-left: 50%; } }
      .booking_complete_final_cost {
        font-size: 2.30769em; }
        @media only screen and (min-width: 43.75em) {
          .booking_complete_final_cost {
            font-size: 2.76923em; } }
        .booking_complete_final_cost_block {
          margin-bottom: 1.5em; }
        .booking_complete_final_cost_title {
          color: #2E2E2E; }
          .booking_complete_final_cost_title span {
            color: #7AB800; }
        .booking_complete_final_cost_message {
          font-size: 1.07692em; }
          .booking_complete_final_cost_message i, .booking_complete_final_cost_message a {
            color: #8E258D; }
          .booking_complete_final_cost_message i {
            color: #8E258D;
            font-style: normal; }
          .booking_complete_final_cost_message a {
            text-decoration: underline; }
    .booking_complete_message {
      font-size: 1em;
      margin-top: 1em; }
      @media only screen and (min-width: 63.75em) {
        .booking_complete_message {
          padding-right: 20%; } }
      .booking_complete_message a {
        color: #8E258D;
        text-decoration: underline; }
    @media only screen and (min-width: 38.75em) {
      .booking_complete_btn {
        text-align: center;
        width: 100%; } }
    @media only screen and (min-width: 43.75em) {
      .booking_complete_btn {
        padding-bottom: 16px;
        padding-left: 48px;
        padding-right: 48px;
        padding-top: 16px; } }
    @media only screen and (min-width: 63.75em) {
      .booking_complete_btn {
        text-align: left;
        width: auto; } }

/*
+++++++++++++++++++++++++
+++ LAYOUT: PROMO BAR +++
+++++++++++++++++++++++++
*/
.promo_bar {
  -webkit-animation: bounce 1s ease forwards 2s;
  animation: bounce 1s ease forwards 2s;
  transform: translateY(-100%);
  background: #8E258D;
  color: #FFFFFF;
  left: 0;
  position: fixed;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 10000; }

.promo_content {
  display: block;
  padding: 6px 36px;
  margin: 0 auto; }

.promo_title, .promo_button {
  display: inline-block;
  margin: 6px 24px;
  vertical-align: middle; }

.promo_title {
  color: #FFFFFF;
  font-size: 1.2em; }

.promo_button {
  background-color: #FFFFFF;
  border-radius: 4px;
  box-shadow: 0 2px 6px #7f227e;
  color: #8E258D;
  display: inline-block;
  font-size: 1.23077em;
  padding: .4em 1em; }
  .promo_button:hover {
    background-color: #FF5800;
    color: #FFFFFF;
    text-decoration: underline; }

.promo_close {
  color: #FFFFFF;
  font-size: 1rem;
  padding: 1em;
  position: absolute;
  right: 0;
  top: 0; }

/*
++++++++++++++++++++++++++++++++++
+++ LAYOUT: NAVIGATION SIDEBAR +++
++++++++++++++++++++++++++++++++++
*/
/*
----------------
--- CONTENTS ---
----------------

    1.0 Common
    2.0 Navigation
    3.0 Primary
    4.0 Subnav
    5.0 Forms

----------------
----------------
*/
#header, #content, #footer {
  -webkit-transition-property: all;
  -webkit-transition-duration: 0.2s;
  -webkit-transition-timing-function: ease-in-out;
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out; }
  #header.sidebar_active, #content.sidebar_active, #footer.sidebar_active {
    -ms-transform: translateZ(0);
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -ms-transform: translateX(-80%);
    -webkit-transform: translateX(-80%);
    transform: translateX(-80%); }
    @media only screen and (min-width: 43.75em) {
      #header.sidebar_active, #content.sidebar_active, #footer.sidebar_active {
        -ms-transform: translateX(-312px);
        -webkit-transform: translateX(-312px);
        transform: translateX(-312px); } }

#content {
  background-color: #FFFFFF; }

#footer.sidebar_active {
  opacity: 0; }

.nav_sidebar {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -ms-transform: translateZ(0);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  background-color: #2E2E2E;
  color: #FFFFFF;
  height: 100%;
  opacity: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding-bottom: 96px;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: 96px;
  position: fixed;
  right: 0;
  top: 0;
  width: 80%; }
  @media only screen and (min-width: 43.75em) {
    .nav_sidebar {
      width: 312px; } }
  @media only screen and (min-width: 63.75em) {
    .nav_sidebar {
      display: none; } }
  .nav_sidebar.active {
    opacity: 1;
    visibility: visible; }

.btn_sidebar {
  color: #8E258D;
  display: block;
  height: 1em;
  line-height: 1em;
  padding-bottom: 16px;
  padding-top: 16px;
  text-align: center; }
  .btn_sidebar.close {
    color: #FFFFFF;
    font-size: 2.30769em;
    padding-left: 24px;
    padding-right: 24px;
    position: absolute;
    right: 0;
    top: 18px; }
    .btn_sidebar.close:hover {
      color: #FF5800; }
  .btn_sidebar.menu {
    -ms-transform: translateZ(0);
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    float: left; }
    .btn_sidebar.menu.sidebar_active .btn_sidebar_title {
      opacity: 0; }
    .btn_sidebar.menu.sidebar_active .btn_sidebar_bg {
      -ms-transform: translateZ(0) scale(1, 1) rotate(90deg);
      -webkit-transform: translateZ(0) scale(1, 1) rotate(90deg);
      transform: translateZ(0) scale(1, 1) rotate(90deg); }
  @media only screen and (min-width: 63.75em) {
    .btn_sidebar {
      display: none; } }

.btn_sidebar_title {
  font-size: 1.38462em;
  text-transform: uppercase;
  -moz-font-feature-settings: "kern=1";
  -webkit-font-feature-settings: "kern" 1; }
  @media only screen and (min-width: 20em) {
    .btn_sidebar_title {
      display: none; } }
  @media only screen and (min-width: 38.75em) {
    .btn_sidebar_title {
      display: inline; } }
  .btn_sidebar_title.with_picto {
    margin-right: 4px; }

.btn_sidebar_bg {
  -webkit-transition-property: all;
  -webkit-transition-duration: 0.3s;
  -webkit-transition-timing-function: ease;
  transition-property: all;
  transition-duration: 0.3s;
  transition-timing-function: ease;
  display: inline-block;
  height: 12px;
  width: 16px; }

.btn_sidebar_picto {
  -webkit-background-size: 16px 12px;
  background-size: 16px 12px;
  background-position: center center;
  background-repeat: no-repeat;
  display: inline-block;
  height: 12px;
  position: relative;
  right: 0;
  top: 0;
  width: 16px; }
  .btn_sidebar_picto.menu {
    background-image: url("../images/picto-burger@2x.png"); }

.no-backgroundsize .btn_sidebar_picto.menu {
  background-image: url("../images/picto-burger.png"); }

.nav_sidebar_primary_block {
  border-top: 1px solid #4f4f4f;
  margin-top: .5em;
  padding-top: .5em; }
  .nav_sidebar_primary_block.first {
    border-top: none;
    margin-top: 0;
    padding-top: 0; }

.nav_sidebar_section_block {
  margin-top: .5em; }
  .nav_sidebar_section_block.first {
    margin-top: 0; }

.nav_sidebar_primary_element, .nav_sidebar_section_element {
  color: #FFFFFF;
  line-height: 1.2; }
  .nav_sidebar_primary_element:hover, .nav_sidebar_primary_element.on, .nav_sidebar_section_element:hover, .nav_sidebar_section_element.on {
    color: #8E258D; }

.nav_sidebar_primary_element {
  display: block;
  font-size: 1.84615em;
  padding-bottom: .4em;
  padding-top: .4em; }

.nav_sidebar_section_title {
  font-weight: 600;
  font-size: 1.15385em;
  margin-bottom: 12px;
  margin-top: 48px;
  text-transform: uppercase; }

.nav_sidebar .subnav_level1 .subnav_element {
  color: #EEEEEE; }
  .nav_sidebar .subnav_level1 .subnav_element:hover {
    color: #8E258D; }

.nav_sidebar .subnav_element {
  color: #FFFFFF; }
  .nav_sidebar .subnav_element:hover {
    color: #8E258D; }
  .nav_sidebar .subnav_element.level0:hover, .nav_sidebar .subnav_element.level1:hover {
    background: none; }
  .nav_sidebar .subnav_element.level0 {
    border-bottom-color: #4f4f4f; }
    .nav_sidebar .subnav_element.level0.on {
      background-color: #3f3f3f;
      border-bottom-color: #8E258D; }
    .nav_sidebar .subnav_element.level0.first {
      border-top-color: #4f4f4f; }

.sidebar_search {
  margin-bottom: 36px; }

.sidebar_input, .sidebar_submit {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 12px;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 12px;
  width: 100%; }

.sidebar_input {
  background-color: #292929;
  border: 2px solid #262626;
  border-radius: 4px;
  box-shadow: inset 1px 2px 2px #272727; }
  .sidebar_input:focus, .sidebar_input:hover {
    border-color: #4f4f4f; }
  .sidebar_input:focus {
    background-color: #3f3f3f;
    border-color: #8E258D;
    box-shadow: inset 1px 2px 2px #393939;
    color: #FFFFFF;
    outline: none; }

.sidebar_submit {
  text-shadow: 0 1px 1px #7a2179;
  background-color: #8E258D;
  border-color: #862485;
  color: #FFFFFF;
  display: block;
  margin-top: 12px; }
  .sidebar_submit:hover {
    border-color: #7f237e;
    background-color: #862485;
    color: #FFFFFF; }
