/*
Theme Name: Fusion : The Mayflower Hotel
Theme URI: http://agencydominion.com
Description: A Fusion Child theme
Author: Agency Dominion
Template: fusion-base
Version: 1.1.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, custom-background, editor-style, featured-images, threaded-comments, translation-ready
Text Domain: fusion-themayflowerhotel
*/

@font-face {
  font-family: "LeituraDisplayRoman";
  src: url("webfonts/LeituraDisplayRoman/font.woff2") format("woff2"),
    url("webfonts/LeituraDisplayRoman/font.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "LeituraRoman1";
  src: url("webfonts/LeituraRoman1/font.woff2") format("woff2"),
    url("webfonts/LeituraRoman1/font.woff") format("woff");
  font-display: swap;
}

body {
  font-family: "LeituraRoman1", serif;
  font-weight: normal;
  font-style: normal;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.02em;
  background: #faf9f7;
  color: #29202a;
}

.color-scheme-2 {
  background: #372c38;
  color: #faf9f7;
}

h1,
.h1,
h3,
.h3 {
  font-family: "LeituraDisplayRoman", serif;
  font-weight: normal;
  font-style: normal;
}

h2,
.h2,
h4,
.h4 {
  font-family: "LeituraRoman1", serif;
  font-weight: normal;
  font-style: normal;
}

h5,
.h5,
h6,
.h6 {
  font-weight: normal;
}

h1,
.h1 {
  font-size: 32px;
}

h2,
.h2 {
  font-size: 26px;
  line-height: 1.3;
}

@media (min-width: 768px) {
  h1,
  .h1 {
    font-size: 42px;
  }

  h2,
  .h2 {
    font-size: 32px;
  }

  h3,
  .h3 {
    font-size: 38px;
  }

  h4,
  .h4 {
    font-size: 24px;
  }
}

.color-scheme-2 h1,
.color-scheme-2 .h1,
.color-scheme-2 h2,
.color-scheme-2 .h2,
.color-scheme-2 h3,
.color-scheme-2 .h3,
.color-scheme-2 h4,
.color-scheme-2 .h4,
.color-scheme-2 h5,
.color-scheme-2 .h5,
.color-scheme-2 h6,
.color-scheme-2 .h6 {
  color: #faf9f7;
}

blockquote {
  font-family: "LeituraRoman1", serif;
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1.2083;
  border: 0;
  margin: 20px 0;
  padding: 0;
}

@media (min-width: 768px) {
  blockquote {
    font-size: 48px;
  }
}

@media (min-width: 1400px) {
  .blockquote-card {
    margin-top: 34%;
  }
}

a {
  color: #534b53;
}

a:focus,
a:hover {
  color: #29202a;
  text-decoration: none;
}

:focus,
a:focus,
button:focus,
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline-color: #eecc95;
}

.color-scheme-2 a {
  color: #d3d0d1;
}

.color-scheme-2 a:focus,
.color-scheme-2 a:hover {
  color: #faf9f7;
}

/**
 * Buttons
 */

.btn {
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.075em;
  padding: 19px 38px;
  border-width: 0;
  border-radius: 0;
  white-space: normal;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.btn.btn-lg {
  font-size: 14px;
  line-height: 1.428571429;
  padding: 23px 26px;
}

.btn-primary {
  border-width: 2px;
  padding: 17px 36px;
  position: relative;
}

.btn.btn-lg.btn-default {
  padding: 23px 47px 23px 26px;
}

.btn.btn-lg.btn-primary {
  padding: 21px 24px;
}

.btn-link {
  padding: 19px 0;
  position: relative;
}

.btn.btn-lg.btn-link {
  padding: 23px 0;
}

.btn-default,
.btn-primary,
.btn-success {
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.btn-default::before {
  content: "";
  position: absolute;
  top: -2px;
  right: -150%;
  bottom: -2px;
  left: -25%;
  background: linear-gradient(to right, #eecc95 50%, #fdd99e 50%);
  transform: translateX(-50%) skewX(30deg);
  z-index: -1;
  -webkit-transition: all 0.8s;
  -moz-transition: all 0.8s;
  -o-transition: all 0.8s;
  transition: all 0.8s;
}

.btn-primary::before {
  content: "";
  position: absolute;
  top: -2px;
  right: -25%;
  bottom: -2px;
  left: -25%;
  background: #fdd99e;
  transform: translateX(-100%) skewX(30deg);
  z-index: -1;
  -webkit-transition: all 0.8s;
  -moz-transition: all 0.8s;
  -o-transition: all 0.8s;
  transition: all 0.8s;
}

.btn-success::before {
  content: "";
  position: absolute;
  top: -2px;
  right: -150%;
  bottom: -2px;
  left: -25%;
  background: linear-gradient(to right, #253c23 50%, #294726 50%);
  transform: translateX(-50%) skewX(30deg);
  z-index: -1;
  -webkit-transition: all 0.8s;
  -moz-transition: all 0.8s;
  -o-transition: all 0.8s;
  transition: all 0.8s;
}

.btn-default:hover::before,
.btn-primary:hover::before,
.btn-success:hover::before {
  transform: translateX(0) skewX(30deg);
}

.btn-link::before {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 12px;
  left: 0;
  background: #fdd99e;
}

.btn.btn-lg.btn-link::before {
  bottom: 30px;
}

.btn-link:focus::before,
.btn-link:hover::before {
  animation-name: buttonDraw;
  animation-duration: 0.6s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
  animation-timing-function: ease;
}

.btn-default.btn-lg:after {
  content: "";
  display: block;
  width: 11px;
  height: 12px;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -6px;
  background: url("images/graphic-arrow-right.png") no-repeat center top;
  background-size: 11px 12px;
  transform: translate3d(0, 0, 0);
  transition: transform 0.3s;
}

.btn-default.btn-lg:hover::after {
  transform: translate3d(6px, 0, 0);
}

@media (min-width: 768px) {
  .btn.btn-lg {
    font-size: 18px;
    line-height: 1.1111111111;
    padding: 43px 48px;
  }

  .btn.btn-lg.btn-default {
    padding: 43px 69px 43px 48px;
  }

  .btn-default.btn-lg:after {
    right: 36px;
  }

  .btn.btn-lg.btn-primary,
  .btn.btn-lg.btn-success {
    padding: 41px 46px;
  }

  .btn.btn-lg.btn-link {
    padding: 43px 0;
  }
}

@keyframes buttonDraw {
  from {
    width: 0;
  }

  to {
    width: 100%;
  }
}

.btn-default {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.btn-default:focus,
.btn-default.focus {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.btn-default:hover {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
  color: #29202a;
  background-color: #fdd99e;
  border-color: transparent;
}

.btn-default .badge {
  color: #29202a;
  background-color: #eecc95;
}

.btn-primary {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.btn-primary:focus,
.btn-primary.focus {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.btn-primary:hover {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.btn-primary .badge {
  color: #29202a;
  background-color: #fdd99e;
}

.btn-success {
  color: #ffffff;
  background-color: #294726;
  border-color: #294726;
}

.btn-success:focus,
.btn-success.focus {
  color: #ffffff;
  background-color: #294726;
  border-color: #253c23;
}

.btn-success:hover {
  color: #ffffff;
  background-color: #294726;
  border-color: #253c23;
}

.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #ffffff;
  background-color: #294726;
  border-color: #253c23;
}

.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
  color: #ffffff;
  background-color: #294726;
  border-color: #253c23;
}

.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
  color: #ffffff;
  background-color: #294726;
  border-color: #294726;
}

.btn-success .badge {
  color: #ffffff;
  background-color: #294726;
}

.btn-link {
  color: #29202a;
}

.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  color: #29202a;
  text-decoration: none;
}

.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #29202a;
}

.color-scheme-2 .btn-default {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.color-scheme-2 .btn-default:focus,
.color-scheme-2 .btn-default.focus {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.color-scheme-2 .btn-default:hover {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.color-scheme-2 .btn-default:active,
.color-scheme-2 .btn-default.active,
.color-scheme-2 .open > .dropdown-toggle.btn-default {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.color-scheme-2 .btn-default:active:hover,
.color-scheme-2 .btn-default.active:hover,
.color-scheme-2 .open > .dropdown-toggle.btn-default:hover,
.color-scheme-2 .btn-default:active:focus,
.color-scheme-2 .btn-default.active:focus,
.color-scheme-2 .open > .dropdown-toggle.btn-default:focus,
.color-scheme-2 .btn-default:active.focus,
.color-scheme-2 .btn-default.active.focus,
.color-scheme-2 .open > .dropdown-toggle.btn-default.focus {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.color-scheme-2 .btn-default.disabled:hover,
.color-scheme-2 .btn-default[disabled]:hover,
.color-scheme-2 fieldset[disabled] .btn-default:hover,
.color-scheme-2 .btn-default.disabled:focus,
.color-scheme-2 .btn-default[disabled]:focus,
.color-scheme-2 fieldset[disabled] .btn-default:focus,
.color-scheme-2 .btn-default.disabled.focus,
.color-scheme-2 .btn-default[disabled].focus,
.color-scheme-2 fieldset[disabled] .btn-default.focus {
  color: #29202a;
  background-color: transparent;
  border-color: transparent;
}

.color-scheme-2 .btn-default .badge {
  color: #29202a;
  background-color: #eecc95;
}

.color-scheme-2 .btn-primary {
  color: #faf9f7;
  background-color: transparent;
  border-color: #fdd99e;
}

.color-scheme-2 .btn-primary:focus,
.color-scheme-2 .btn-primary.focus {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.color-scheme-2 .btn-primary:hover {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.color-scheme-2 .btn-primary:active,
.color-scheme-2 .btn-primary.active,
.color-scheme-2 .open > .dropdown-toggle.btn-primary {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.color-scheme-2 .btn-primary:active:hover,
.color-scheme-2 .btn-primary.active:hover,
.color-scheme-2 .open > .dropdown-toggle.btn-primary:hover,
.color-scheme-2 .btn-primary:active:focus,
.color-scheme-2 .btn-primary.active:focus,
.color-scheme-2 .open > .dropdown-toggle.btn-primary:focus,
.color-scheme-2 .btn-primary:active.focus,
.color-scheme-2 .btn-primary.active.focus,
.color-scheme-2 .open > .dropdown-toggle.btn-primary.focus {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.color-scheme-2 .btn-primary.disabled:hover,
.color-scheme-2 .btn-primary[disabled]:hover,
.color-scheme-2 fieldset[disabled] .btn-primary:hover,
.color-scheme-2 .btn-primary.disabled:focus,
.color-scheme-2 .btn-primary[disabled]:focus,
.color-scheme-2 fieldset[disabled] .btn-primary:focus,
.color-scheme-2 .btn-primary.disabled.focus,
.color-scheme-2 .btn-primary[disabled].focus,
.color-scheme-2 fieldset[disabled] .btn-primary.focus {
  color: #29202a;
  background-color: transparent;
  border-color: #fdd99e;
}

.color-scheme-2 .btn-primary .badge {
  color: #faf9f7;
  background-color: #fdd99e;
}

.color-scheme-2 .btn-link {
  color: #faf9f7;
}

.color-scheme-2 .btn-link:hover,
.color-scheme-2 .btn-link:focus,
.color-scheme-2 .btn-link:active {
  color: #faf9f7;
}

.color-scheme-2 .btn-link[disabled]:hover,
.color-scheme-2 fieldset[disabled] .btn-link:hover,
.color-scheme-2 .btn-link[disabled]:focus,
.color-scheme-2 fieldset[disabled] .btn-link:focus {
  color: #faf9f7;
}

/**
 * Forms
 */

label {
  font-weight: 400;
}

.form-control {
  font-size: 16px;
  line-height: 1.25;
  box-shadow: none;
  height: 58px;
  padding-top: 18px;
  padding-bottom: 18px;
  background: transparent;
  border-color: rgba(41, 32, 42, 0.1);
  border-radius: 0;
  color: #29202a;
}

.form-control:focus {
  box-shadow: inset 0 0 0 1px #fdd99e;
  border-color: #fdd99e;
}

.color-scheme-2 .form-control {
  color: #faf9f7;
  border-color: rgba(255, 255, 255, 0.1);
}

.input-sm {
  font-size: 14px;
  line-height: 1.428571429;
  height: 34px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.input-lg {
  font-size: 18px;
  line-height: 1.1111111111;
  height: 112px;
  padding-top: 45px;
  padding-bottom: 45px;
}

.input-group-addon {
  background: transparent;
  border-radius: 0;
  padding-left: 24px;
  padding-right: 0;
}

.input-group .input-group-addon + .form-control {
  border-left: 0;
}

select.form-control::-ms-expand,
.form-control::-ms-clear {
  display: none;
}

.form-control-feedback {
  height: 58px;
  line-height: 58px;
}

.form-control-feedback.glyphicon {
  font-size: 10px;
  color: #a9a6aa;
}

.has-feedback label ~ .form-control-feedback {
  top: 29px;
}

.color-scheme-2 .form-control::-moz-placeholder {
  color: #faf9f7;
  opacity: 1;
}

.color-scheme-2 .form-control:-ms-input-placeholder {
  color: #faf9f7;
}

.color-scheme-2 .form-control::-webkit-input-placeholder {
  color: #faf9f7;
}

.color-scheme-2 select.form-control option {
  color: #333333;
}

.color-scheme-2 select.form-control option:checked {
  color: #ffffff;
}

.color-scheme-2 .form-control-feedback {
  color: #333333;
}

div.wpcf7-mail-sent-ok {
  border: 2px solid #372c38;
}

.fieldset-container {
  background: #fff;
  margin-top: 30px;
  margin-bottom: 30px;
  padding: 40px 30px 0;
}

@media (min-width: 768px) {
  .fieldset-container {
    padding: 40px 0 0;
  }
}

/**
 * Dividers
 */

.fsn-divider hr,
.fsn-site-map hr {
  border-top-color: rgba(41, 32, 42, 0.1);
}

.fsn-divider-vertical {
  background: rgba(41, 32, 42, 0.1);
}

.color-scheme-2 .fsn-divider hr {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.color-scheme-2 .fsn-divider-vertical {
  background: rgba(255, 255, 255, 0.1);
}

/**
 * Text
 */

.fsn-text a {
  text-decoration: underline;
}

.fsn-text h1 a,
.fsn-text h2 a,
.fsn-text h3 a,
.fsn-text h4 a,
.fsn-text h5 a,
.fsn-text h6 a {
  text-decoration: none;
}

.fsn-text ul li,
.fsn-site-map ul li {
  list-style-type: none;
  position: relative;
  padding: 0 0 15px;
}

.fsn-text ul li:before,
.fsn-site-map ul li:before {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  position: absolute;
  top: 8px;
  left: -24px;
  background: url("images/graphic-list-marker.png") no-repeat;
  background-size: 7px 7px;
}

/**
 * Images
 */

.fsn-image img {
  max-width: 100%;
  height: auto;
}

/**
 * Header
 */

body > header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}

#header {
  background: transparent;
}

#split-masthead {
  position: relative;
  background: transparent;
}

#split-masthead::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #372c38;
  z-index: 0;
}

@media (max-width: 767px) {
  #split-masthead .col-sm-6:first-child > .fsn-column-inner > .fsn-row {
    padding-top: 110px;
    padding-bottom: 110px;
  }

  #split-masthead .svg-m {
    display: block;
    width: 250px;
    height: auto;
    position: absolute;
    top: -123px;
    left: 50%;
    margin-left: -125px;
    z-index: 3;
    pointer-events: none;
  }

  #split-masthead .svg-m svg {
    width: 100%;
    height: auto;
  }

  #split-masthead .fsn-card.tile .tile-container {
    height: 420px !important;
  }
}

@media (min-width: 768px) {
  #split-masthead .col-sm-6:first-child > .fsn-column-inner > .fsn-row {
    padding-bottom: 80px;
  }

  #split-masthead .col-sm-6:first-child > .fsn-column-inner {
    height: 100vh;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: flex-end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
  }

  .no-flexbox
    #split-masthead
    .col-sm-6:first-child
    > .fsn-column-inner
    > .fsn-row {
    position: absolute;
    bottom: 0;
    left: 0;
  }

  #split-masthead {
    position: relative;
  }

  #split-masthead .svg-m {
    display: block;
    width: 400px;
    height: 347px;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -240px;
    margin-left: -200px;
    z-index: 3;
    pointer-events: none;
  }

  #split-masthead .svg-m svg {
    width: 100%;
    height: auto;
  }

  #split-masthead .fsn-card.tile .tile-container {
    height: 100vh !important;
  }

  #split-masthead .fsn-card.tile .tile-overlay {
    opacity: 1 !important;
    width: 600px;
    height: 600px;
    top: -250px;
    left: -300px;
    background: radial-gradient(
      ellipse at center,
      rgba(0, 0, 0, 0.5) 0%,
      rgba(0, 0, 0, 0) 50%,
      rgba(0, 0, 0, 0) 100%
    ) !important;
  }
}

/**
 * Menu : Modal
 */

#menu-modal .modal-dialog {
  background: #29202a;
}

.fsn-menu.menu_modal .menu-modal-trigger .icon-bar,
.menu-modal-controls .close .icon-bar {
  background: #fff;
  position: relative;
}

.fsn-menu.menu_modal .menu-modal-trigger {
  width: 48px;
  height: 48px;
  padding: 16px 0px 16px 13px;
}

.fsn-menu.menu_modal .menu-modal-trigger:focus {
  outline: none;
}

.fsn-menu.menu_modal .menu-modal-trigger:focus-visible {
  outline: 2px solid #eecc95;
}

.fsn-menu.menu_modal .menu-modal-trigger::before {
  content: "";
  display: block;
  width: 48px;
  height: 48px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.15);
  -moz-transition: background-color 0.3s;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.fsn-menu.menu_modal .menu-modal-trigger:focus::before,
.fsn-menu.menu_modal .menu-modal-trigger:hover::before {
  background-color: rgba(0, 0, 0, 0.3);
}

.menu-modal-controls .close {
  top: 15px;
  width: 48px;
  height: 48px;
  padding: 16px 0px 16px 13px;
}

.menu-modal-controls .close:focus {
  outline: none;
}

.menu-modal-controls .close .icon-bar {
  display: none;
}

.menu-modal-controls .close::before {
  content: "";
  display: block;
  width: 48px;
  height: 48px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.15) url("images/graphic-close.png") no-repeat
    center center;
  background-size: 17px 17px;
  -moz-transition: background-color 0.3s;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.menu-modal-controls .close:focus::before,
.menu-modal-controls .close:hover::before {
  background-color: rgba(0, 0, 0, 0.3);
}

#menu-modal .multi-col-nav-column a,
#menu-modal .multi-col-nav-column .menu-item-parent-label {
  display: inline-block;
  font-size: 30px;
  color: #faf9f7;
  margin-bottom: 10px;
  transition: opacity 0.3s;
  opacity: 1;
}

#menu-modal .multi-col-nav-column:hover a {
  opacity: 0.7;
}

#menu-modal .multi-col-nav-column:hover a:hover {
  opacity: 1;
}

#menu-modal
  .multi-col-nav-column
  a
  #menu-modal
  .multi-col-nav-column
  .nested-menu-items
  a {
  font-size: 18px;
  margin-bottom: 5px;
}

#menu-modal .current-menu-item > a,
#menu-modal .current-cat > a,
#menu-modal .current-filter > a {
  border-bottom: 2px solid #fdd99e;
}

@media (max-width: 767px) {
  .fsn-menu.menu_modal .menu-container {
    padding: 16px 0;
  }

  .fsn-menu.menu_modal .menu-trigger {
    top: 15px;
  }
}

@media (min-width: 768px) {
  #menu-modal .multi-col-nav-container {
    position: relative;
    z-index: 1;
  }

  #menu-modal .multi-col-nav-column:last-of-type {
    padding-left: 25%;
  }

  .fsn-menu.menu_modal .menu-modal-trigger {
    width: 116px;
    height: 56px;
    padding: 20px 0px 20px 17px;
  }

  .fsn-menu.menu_modal .menu-modal-trigger::before {
    width: 56px;
    height: 56px;
  }

  .fsn-menu.menu_modal .menu-modal-trigger::after {
    content: "Menu";
    font-family: "Raleway", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    color: #fff;
    position: absolute;
    top: 19px;
    right: 0;
  }

  .menu-modal-controls .close {
    width: 121px;
    height: 56px;
    padding: 20px 0px 20px 17px;
    top: 30px;
  }

  .menu-modal-controls .close::before {
    width: 56px;
    height: 56px;
  }

  .menu-modal-controls .close::after {
    content: "Close";
    font-family: "Raleway", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    text-shadow: none;
    letter-spacing: 0.075em;
    color: #fff;
    position: absolute;
    top: 22px;
    right: 0;
  }

  #menu-modal .multi-col-nav-column a,
  #menu-modal .multi-col-nav-column .menu-item-parent-label {
    font-size: 32px;
    margin-bottom: 25px;
  }

  #menu-modal .multi-col-nav-column .nested-menu-items a {
    font-size: 24px;
    margin-bottom: 10px;
  }
}

/**
 * Menu : Inline
 */

@media (max-width: 767px) {
  .fsn-menu.inline .list-inline {
    margin-left: 0;
  }

  .fsn-menu.inline .btn.btn-link {
    display: inline-block;
    width: auto;
    margin-bottom: 0;
  }
}

@media (min-width: 768px) {
  .fsn-menu.inline .list-inline > li {
    padding-left: 18px;
    padding-right: 18px;
  }
}

/**
 * Flexslider
 */

.flex-direction-nav a {
  width: 48px;
  height: 48px;
  margin-top: -24px;
  text-shadow: none;
  border-radius: 50%;
}

.flex-direction-nav a.flex-prev:before,
.flex-direction-nav a.flex-next:before {
  content: "";
  display: block;
  width: 46px;
  height: 46px;
}

.flex-direction-nav a:after {
  text-shadow: none;
  width: 11px;
  height: 12px;
  background-repeat: no-repeat;
  background-size: 11px 12px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -6px;
  margin-left: -6px;
}

.flex-direction-nav .flex-prev {
  left: 15px;
  opacity: 1;
  border: 1px solid rgba(41, 32, 42, 0.2);
}

.flex-direction-nav .flex-prev:hover {
  border-color: #29202a;
}

.flexslider:hover .flex-direction-nav .flex-prev {
  left: 15px;
  opacity: 1;
}

.flex-direction-nav .flex-next {
  right: 15px;
  opacity: 1;
  border: 1px solid rgba(41, 32, 42, 0.2);
}

.flex-direction-nav .flex-next:hover {
  border-color: #29202a;
}

.flexslider:hover .flex-direction-nav .flex-next {
  right: 15px;
  opacity: 1;
}

.flex-direction-nav a.flex-prev:after {
  content: "";
  background-image: url("images/graphic-arrow-left.png");
}

.flex-direction-nav a.flex-next:after {
  content: "";
  background-image: url("images/graphic-arrow-right.png");
}

/**
 * Photoswipe
 */

.pswp__bg {
  background: rgba(41, 32, 42, 0.98);
}

.pswp__button--arrow--left,
.pswp__button--arrow--right {
  width: 48px;
  height: 48px;
  margin-top: -24px;
  text-shadow: none;
  border-radius: 50%;
  opacity: 1;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.15);
  will-change: auto !important;
  -moz-transition: background-color 0.3s !important;
  -webkit-transition: background-color 0.3s !important;
  transition: background-color 0.3s !important;
}

.pswp__button--arrow--left {
  left: 12px;
}

.pswp__button--arrow--right {
  right: 12px;
}

.pswp__button--arrow--left:focus,
.pswp__button--arrow--right:focus,
.pswp__button--arrow--left:hover,
.pswp__button--arrow--right:hover {
  background: rgba(0, 0, 0, 0.3);
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  width: 46px;
  height: 46px;
  top: 0;
  background: none;
}

.pswp__button--arrow--left:before {
  left: 0;
}

.pswp__button--arrow--right:before {
  right: 0;
}

.pswp__button--arrow--left:after,
.pswp__button--arrow--right:after {
  content: "";
  display: block;
  width: 11px;
  height: 12px;
  background-repeat: no-repeat;
  background-size: 11px 12px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -6px;
  margin-left: -6px;
}

.pswp--svg .pswp__button--arrow--left:after {
  background-image: url("images/graphic-arrow-left-light.png");
}

.pswp--svg .pswp__button--arrow--right:after {
  background-image: url("images/graphic-arrow-right-light.png");
}

/**
 * Masthead
 */

.fsn-masthead .flex-control-nav {
  display: none;
}

.fsn-masthead .masthead-item {
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

.no-flexbox .fsn-masthead .masthead-item-content {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.fsn-masthead .masthead-item-content {
  width: 100%;
  background: #ffffff;
  color: #29202a;
  padding-top: 38px;
  padding-bottom: 38px;
}

.fsn-masthead .flex-direction-nav {
  position: absolute;
  bottom: 27px;
  right: 8.33333333%;
  width: 132px;
  height: 48px;
}

.fsn-masthead .flex-direction-nav .flex-prev,
.fsn-masthead .masthead-slider:hover .flex-direction-nav .flex-prev {
  left: 0;
  opacity: 1;
}

.fsn-masthead .flex-direction-nav .flex-next,
.fsn-masthead .masthead-slider:hover .flex-direction-nav .flex-next {
  right: 0;
  opacity: 1;
}

.fsn-masthead .flex-direction-nav a.flex-prev:before,
.fsn-masthead .flex-direction-nav a.flex-next:before {
  background: none;
}

.fsn-masthead.split-logo::after {
  content: "";
  display: block;
  width: 133px;
  height: 112px;
  position: absolute;
  left: 50%;
  margin-left: -66px;
  top: -56px;
  background: url("images/graphic-logo-m-secondary-mobile.png") no-repeat;
  background-size: 133px 112px;
  z-index: 5;
}

.fsn-masthead .masthead-item-video-pause,
.fsn-masthead .masthead-slider-pause {
  border-radius: 50%;
  background-image: url("images/thin-pause.svg");
  background-color: #2f2530;
  background-size: 24px 24px;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  bottom: 30px;
}

.fsn-masthead .masthead-item-video-pause:focus,
.fsn-masthead .masthead-item-video-pause:hover,
.fsn-masthead .masthead-slider-pause:focus,
.fsn-masthead .masthead-slider-pause:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
}

.fsn-masthead .masthead-item-video-pause:active,
.fsn-masthead .masthead-slider-pause:active {
  outline: none;
}

@media (max-width: 767px) {
  .fsn-masthead .masthead-container {
    min-height: 0 !important;
  }

  .fsn-masthead .masthead-item-media {
    height: calc(100% - 155px);
  }

  .fsn-masthead .masthead-item-content {
    text-align: center;
    padding: 30px 15px 100px;
  }

  .fsn-masthead .flex-direction-nav {
    width: auto;
    height: auto;
    line-height: 0;
    margin: 0 15px;
    padding-top: 25px;
    padding-bottom: 25px;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
  }

  .fsn-masthead .flex-direction-nav li {
    display: inline-block;
    padding: 0 28px;
  }

  .fsn-masthead .flex-direction-nav .flex-prev {
    position: relative;
    left: 0;
    margin-top: 0;
    opacity: 1 !important;
  }

  .fsn-masthead .flexslider:hover .flex-direction-nav .flex-prev {
    left: 50px;
  }

  .fsn-masthead .flex-direction-nav .flex-next {
    position: relative;
    right: 0;
    margin-top: 0;
    opacity: 1 !important;
  }

  .fsn-masthead .flex-direction-nav .flex-disabled {
    opacity: 1 !important;
  }

  .fsn-masthead .flexslider:hover .flex-direction-nav .flex-next {
    right: 50px;
  }
}

@media (min-width: 768px) {
  .fsn-masthead .masthead-item-media {
    height: calc(100% - 100px);
  }

  .fsn-masthead.split-logo::after {
    width: 236px;
    height: 199px;
    margin-left: -118px;
    top: -100px;
    background-image: url("images/graphic-logo-m-secondary-desktop.png");
    background-size: 236px 199px;
  }

  .fsn-masthead .masthead-item-video-pause,
  .fsn-masthead .masthead-slider-pause {
    left: 50px;
    bottom: 30px;
  }
}

/**
 * Card : Basic
 */

.fsn-card.basic .card-image a {
  display: block;
}

.fsn-card.basic .card-image a {
  display: block;
  position: relative;
  overflow: hidden;
}

.fsn-card.basic .card-image a img {
  -moz-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -moz-transition: -moz-transform 200ms ease-out;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: transform 200ms ease-out;
}

.fsn-card.basic .card-image a:hover img,
.fsn-card.basic .card-image a:focus img {
  -moz-transform: scale3d(1.2, 1.2, 1);
  -webkit-transform: scale3d(1.2, 1.2, 1);
  transform: scale3d(1.2, 1.2, 1);
  transform-origin: (50%, 50%);
  -moz-transition: -moz-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  -webkit-transition: -webkit-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  transition: transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
}

.fsn-card.basic .card-image a:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  opacity: 0;
  -moz-transition: opacity 0.3s;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.fsn-card.basic .card-image a:hover:after,
.fsn-card.basic .card-image a:focus:after {
  opacity: 1;
}

.fsn-card.basic .card-content {
  padding: 20px 0 30px;
  text-align: center;
}

.fsn-card.basic .card-content > .card-button:not(.btn) {
  display: block;
  font-size: 18px;
}

.col-sm-5 .fsn-card.basic .card-content {
  padding: 20px 15px 30px;
}

@media (min-width: 768px) {
  .col-sm-5 .fsn-card.basic .card-content {
    padding: 40px 50px 60px;
  }

  .fsn-card.basic .card-content > .card-button:not(.btn) {
    font-size: 24px;
  }
}

/**
 * Card : Horizontal
 */

.fsn-card.horizontal .card-horizontal-video-pause {
  border-radius: 50%;
  background-image: url("images/thin-pause.svg");
  background-color: #2f2530;
  background-size: 24px 24px;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.fsn-card.horizontal .card-horizontal-video-pause:focus,
.fsn-card.horizontal .card-horizontal-video-pause:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
}

.fsn-card.horizontal .card-horizontal-video-pause:active {
  outline: none;
}

@media (max-width: 767px) {
  .fsn-card.horizontal .card-content {
    padding: 20px 30px 30px;
  }
}

/**
 * Card : Tile
 */

.fsn-card.tile .tile-container {
  height: 0 !important;
  padding-bottom: 83.62720403%;
}

.fsn-card.tile .tile-overlay {
  opacity: 0 !important;
}

.fsn-card.tile .card-tile-video-pause {
  border-radius: 50%;
  background-image: url("images/thin-pause.svg");
  background-color: #2f2530;
  background-size: 24px 24px;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.fsn-card.tile .card-tile-video-pause:focus,
.fsn-card.tile .card-tile-video-pause:hover {
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
}

.fsn-card.tile .card-tile-video-pause:active {
  outline: none;
}

.fsn-card.tile.square .tile-container {
  height: 0 !important;
  padding-bottom: 100%;
}

/* .fsn-card.tile.filter-contrast video  {
  -webkit-filter:contrast(2);
  filter:contrast(2);
} */

/**
 * Description List
 */

.fsn-description-list {
  text-align: center;
}

.fsn-description-list dt {
  font-weight: normal;
}

.fsn-description-list dd {
  font-size: 30px;
}

@media (max-width: 767px) {
  .fsn-description-list .description-list-group {
    padding-bottom: 15px;
    margin-bottom: 25px;
    position: relative;
  }

  .fsn-description-list .description-list-group::after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -30px;
    background: rgba(41, 32, 42, 0.1);
  }

  .fsn-description-list .description-list-group:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .fsn-description-list .description-list-group:last-child::after {
    display: none;
  }
}

@media (min-width: 768px) {
  .fsn-description-list dd {
    font-size: 32px;
    margin-top: 10px;
  }

  .fsn-description-list .description-list-group {
    padding: 12px 24px;
    border-left: 1px solid rgba(75, 77, 83, 0.1);
  }

  .fsn-description-list .description-list-group:first-child {
    border-left: 0;
  }

  .flexbox .fsn-description-list dl {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }

  .flexbox .fsn-description-list .description-list-group {
    flex-basis: 0;
    flex-shrink: 1;
    flex-grow: 1;
  }

  .no-flexbox .fsn-description-list .description-list-group {
    display: inline-block;
    padding-left: 36px;
    padding-right: 36px;
  }
}

/**
 * Gallery : Grid
 */

.grid-item .grid-item-image {
  display: block;
  position: relative;
  overflow: hidden;
}

.grid-item .grid-item-image img {
  -moz-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -moz-transition: -moz-transform 200ms ease-out;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: transform 200ms ease-out;
}

.grid-item:hover .grid-item-image img {
  -moz-transform: scale3d(1.2, 1.2, 1);
  -webkit-transform: scale3d(1.2, 1.2, 1);
  transform: scale3d(1.2, 1.2, 1);
  transform-origin: (50%, 50%);
  -moz-transition: -moz-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  -webkit-transition: -webkit-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  transition: transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
}

.grid-item .grid-item-image:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  opacity: 0;
  -moz-transition: opacity 0.3s;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.grid-item:hover .grid-item-image:after {
  opacity: 1;
}

@media (min-width: 768px) {
  .fsn-gallery .grid-item {
    width: 50%;
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 60px;
  }
}

/**
 * Gallery : Carousel
 */

.fsn-gallery .carousel .carousel-item-image {
  display: block;
  position: relative;
  overflow: hidden;
}

.fsn-gallery .carousel .carousel-item-image img {
  -moz-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -moz-transition: -moz-transform 200ms ease-out;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: transform 200ms ease-out;
}

.fsn-gallery .carousel .carousel-item-image:hover img {
  -moz-transform: scale3d(1.2, 1.2, 1);
  -webkit-transform: scale3d(1.2, 1.2, 1);
  transform: scale3d(1.2, 1.2, 1);
  transform-origin: (50%, 50%);
  -moz-transition: -moz-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  -webkit-transition: -webkit-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  transition: transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
}

.fsn-gallery .carousel .carousel-item-image:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  opacity: 0;
  -moz-transition: opacity 0.3s;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.fsn-gallery .carousel .carousel-item-image:hover:after {
  opacity: 1;
}

.carousel-item-detail {
  padding-top: 20px;
  text-align: center;
}

.carousel-item-detail > span {
  display: block;
}

@media (max-width: 767px) {
  .fsn-gallery .carousel-mobile[data-controls="direction"] {
    margin-bottom: 0;
  }

  .fsn-gallery .carousel-mobile[data-controls="direction"] .flex-direction-nav {
    height: auto;
    line-height: 0;
    margin: 20px 15px 0;
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .fsn-gallery
    .carousel-mobile[data-controls="direction"]
    .flex-direction-nav
    li {
    display: inline-block;
    padding: 0 28px;
  }

  .fsn-gallery
    .carousel-mobile[data-controls="direction"]
    .flex-direction-nav
    .flex-prev {
    position: relative;
    left: 0;
    margin-top: 0;
    opacity: 1 !important;
  }

  .fsn-gallery
    .carousel-mobile[data-controls="direction"]
    .flexslider:hover
    .flex-direction-nav
    .flex-prev {
    left: 50px;
  }

  .fsn-gallery
    .carousel-mobile[data-controls="direction"]
    .flex-direction-nav
    .flex-next {
    position: relative;
    right: 0;
    margin-top: 0;
    opacity: 1 !important;
  }

  .fsn-gallery
    .carousel-mobile[data-controls="direction"]
    .flex-direction-nav
    .flex-disabled {
    opacity: 1 !important;
    z-index: 10;
  }

  .fsn-gallery
    .carousel-mobile[data-controls="direction"]
    .flexslider:hover
    .flex-direction-nav
    .flex-next {
    right: 50px;
  }
}

/**
 * Content Roll
 */

.content-roll-item-image-wrap {
  display: block;
  position: relative;
  overflow: hidden;
}

.content-roll-item-image-wrap img {
  width: 100%;
  height: auto;
  -moz-transform: scale3d(1, 1, 1);
  -webkit-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -moz-transition: -moz-transform 200ms ease-out;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: transform 200ms ease-out;
}

.content-roll-item:hover .content-roll-item-image-wrap img {
  -moz-transform: scale3d(1.2, 1.2, 1);
  -webkit-transform: scale3d(1.2, 1.2, 1);
  transform: scale3d(1.2, 1.2, 1);
  transform-origin: (50%, 50%);
  -moz-transition: -moz-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  -webkit-transition: -webkit-transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
  transition: transform 10000ms cubic-bezier(0, 0, 0.8, 0.9);
}

.content-roll-item-image-wrap:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  opacity: 0;
  -moz-transition: opacity 0.3s;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.content-roll-item:hover .content-roll-item-image-wrap:after {
  opacity: 1;
}

.fsn-content-roll .content-roll-item-content-title {
  display: block;
  font-family: "LeituraDisplayRoman", serif;
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1.1;
  margin-top: 20px;
  margin-bottom: 10px;
}

.content-roll-item .content-roll-item-content {
  padding: 20px 15px 30px;
}

.fsn-content-roll .container {
  width: auto;
  padding: 0;
}

@media (min-width: 768px) {
  .content-roll-item .content-roll-item-content {
    padding: 40px 50px 60px;
  }

  .fsn-content-roll .content-roll-item-content-title {
    font-size: 38px;
  }
}

/**
 * Google Map
 */

@media (max-width: 767px) {
  .fsn-map.google_map_custom > div:first-child {
    height: 350px !important;
  }
}

/**
 * Newsletter Signup
 */

#newsletter-signup-section {
  background: #2f2530;
}

.fsn-button.newsletter-trigger button {
  display: block;
  width: 100%;
  padding: 50px 30px;
  font-family: "LeituraRoman1", serif;
  font-weight: normal;
  font-style: normal;
  font-size: 18px;
  line-height: 1.1;
  letter-spacing: 0.02em;
  background: none;
  border: 0;
  box-shadow: 0;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.fsn-button.newsletter-trigger button:before {
  content: "";
  position: absolute;
  top: 0;
  right: -25%;
  bottom: 0;
  left: -25%;
  border-right: 48px solid transparent;
  background: #261e26;
  transform: translateX(-100%) skewX(30deg);
  z-index: -1;
  -webkit-transition: all 1.2s;
  -moz-transition: all 1.2s;
  -o-transition: all 1.2s;
  transition: all 1.2s;
}

.fsn-button.newsletter-trigger button:focus {
  outline: none;
}

.fsn-button.newsletter-trigger button:focus::before,
.fsn-button.newsletter-trigger button:hover::before {
  transform: translateX(0) skewX(30deg);
}

.fsn-button.newsletter-trigger button::after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 11px;
  margin-left: 20px;
  vertical-align: middle;
  background: url("images/graphic-arrow-down.png") no-repeat;
  background-size: 12px 11px;
}

.fsn-button.newsletter-trigger button[aria-expanded="true"]::after {
  background-image: url("images/graphic-arrow-up.png");
}

.collapsing {
  -webkit-transition-timing-function: ease-in-out;
  -o-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}

#newsletter-collapse .newsletter-form {
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 0.2s cubic-bezier(0.65, 0.025, 0.67, 0.36),
    transform 0s cubic-bezier(0.65, 0.025, 0.67, 0.36) 0.35s;
}

#newsletter-collapse.in .newsletter-form {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.6s cubic-bezier(0.34, 0.615, 0.4, 0.985),
    transform 0.6s cubic-bezier(0.34, 0.615, 0.4, 0.985);
}

.newsletter-form {
  padding: 15px 0;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

@media (max-width: 767px) {
  .newsletter-form .form-control {
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: transparent;
  }
}

@media (min-width: 768px) {
  .fsn-button.newsletter-trigger button {
    font-size: 24px;
  }

  .newsletter-form {
    padding: 15px;
  }

  .newsletter-form .form-group {
    margin-bottom: 0;
  }

  .newsletter-form .form-control {
    border-color: transparent;
  }

  .newsletter-form .form-control:focus {
    box-shadow: none;
    background-color: rgba(0, 0, 0, 0.1);
  }
}

/**
 * Menu : Icon
 */

.color-scheme-2 .fsn-menu.icon a {
  color: #faf9f7;
}

.color-scheme-2 .fsn-menu.icon a:focus,
.color-scheme-2 .fsn-menu.icon a:hover {
  color: #d3d0d1;
}

@media (max-width: 767px) {
  footer .fsn-menu.icon {
    text-align: center;
  }

  footer .fsn-menu.icon .nav {
    margin-left: 0;
    border-top: 1px solid rgba(75, 77, 83, 0.1);
    border-bottom: 1px solid rgba(75, 77, 83, 0.1);
  }

  footer .color-scheme-2 .fsn-menu.icon .nav {
    border-color: rgba(255, 255, 255, 0.1);
  }

  footer .fsn-menu.icon .nav > li {
    display: block;
    float: left;
    width: 33.33333333%;
    padding: 0;
    margin: 0;
  }

  footer .fsn-menu.icon .nav > li > a {
    display: block;
    padding: 0 10px;
    margin: 16px 0;
    border-left: 1px solid rgba(75, 77, 83, 0.1);
  }

  footer .fsn-menu.icon .nav > li:first-child > a {
    border-left: 0;
  }

  footer .fsn-menu.icon .nav > li:first-child,
  footer .fsn-menu.icon .nav > li:nth-child(2),
  footer .fsn-menu.icon .nav > li:nth-child(3) {
    border-bottom: 1px solid rgba(75, 77, 83, 0.1);
  }

  footer .fsn-menu.icon .nav > li:nth-child(4) {
    clear: left;
  }

  footer .fsn-menu.icon .nav > li:nth-child(4) > a {
    border-left: 0;
  }

  footer .fsn-menu.icon .fa {
    font-size: 20px;
  }

  footer .fsn-menu.icon .menu-item-label {
    display: block;
    margin: 5px auto 0;
    font-family: "Raleway", sans-serif;
    font-style: normal;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    font-size: 10px;
  }

  footer .color-scheme-2 .fsn-menu.icon .nav > li > a {
    border-left-color: rgba(255, 255, 255, 0.1);
  }

  footer .color-scheme-2 .fsn-menu.icon .nav > li:first-child,
  footer .color-scheme-2 .fsn-menu.icon .nav > li:nth-child(2),
  footer .color-scheme-2 .fsn-menu.icon .nav > li:nth-child(3) {
    border-bottom-color: rgba(255, 255, 255, 0.1);
  }

  .fsn-menu.icon.simple .fa {
    font-size: 18px;
  }

  .fsn-menu.icon.simple .menu-item-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }

  .fsn-menu.icon.simple .list-inline {
    margin-left: -7px;
  }

  .fsn-menu.icon.simple .nav > li {
    padding-left: 7px;
    padding-right: 7px;
  }
}

@media (min-width: 768px) {
  .fsn-menu.icon .fa {
    font-size: 18px;
  }

  .fsn-menu.icon .menu-item-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }

  .fsn-menu.icon .list-inline {
    margin-left: -7px;
  }

  .fsn-menu.icon .nav > li {
    padding-left: 7px;
    padding-right: 7px;
  }
}

/**
 * Menu : WP Custom
 */

@media (max-width: 767px) {
  .fsn-menu.wp_custom {
    margin-top: 40px;
    margin-bottom: 15px;
    text-align: left;
  }

  .fsn-menu.wp_custom > ul > li > a {
    display: block;
    position: relative;
    font-size: 14px;
    line-height: 1.4285714286;
    padding-top: 12px;
    padding-bottom: 12px;
    border-top: 1px solid rgba(75, 77, 83, 0.1);
    color: #29202a;
  }

  .fsn-menu.wp_custom > ul > li > a:after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    right: 5px;
    background: url("images/graphic-list-marker-light.png") no-repeat;
    background-size: 7px 7px;
  }

  .fsn-menu.wp_custom > ul > li:first-child > a {
    border-top: 0;
  }

  .fsn-menu.wp_custom > ul > li > a:focus,
  .fsn-menu.wp_custom > ul > li > a:hover,
  .fsn-menu.wp_custom > ul > li.current-menu-item > a {
    color: #534b53;
    text-decoration: none;
  }

  .fsn-menu.wp_custom > ul > li > a.collapsed:after,
  .fsn-menu.wp_custom > ul > li > a.expanded:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    margin-top: -8px;
    margin-left: 15px;
    border-style: solid;
    border-color: #29202a;
    -ms-transform: rotate(45deg) translateZ(0);
    -moz-transform: rotate(45deg) translateZ(0);
    -webkit-transform: rotate(45deg) translateZ(0);
    transform: rotate(45deg) translateZ(0);
  }

  .fsn-menu.wp_custom > ul > li > a.collapsed:after {
    margin-top: -8px;
    border-width: 0 2px 2px 0;
  }

  .fsn-menu.wp_custom > ul > li > a.expanded:after {
    margin-top: 0;
    border-width: 2px 0 0 2px;
  }

  .fsn-menu.wp_custom > ul > li > a.collapsed:focus:after,
  .fsn-menu.wp_custom > ul > li > a.expanded:focus:after,
  .fsn-menu.wp_custom > ul > li > a.collapsed:hover:after,
  .fsn-menu.wp_custom > ul > li > a.expanded:hover:after {
    border-color: #29202a;
  }

  .fsn-menu.wp_custom ul.sub-menu {
    padding-left: 30px;
    padding-right: 30px;
    list-style: none;
  }

  .fsn-menu.wp_custom ul.sub-menu > li > a {
    display: block;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.6666666667;
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(75, 77, 83, 0.1);
    text-transform: uppercase;
    color: #29202a;
  }

  .fsn-menu.wp_custom ul.sub-menu > li > a:focus,
  .fsn-menu.wp_custom ul.sub-menu > li > a:hover,
  .fsn-menu.wp_custom ul.sub-menu > li.current-menu-item > a {
    color: #534b53;
    text-decoration: none;
  }

  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a {
    border-top-color: rgba(255, 255, 255, 0.1);
    color: #faf9f7;
  }

  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a:focus,
  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a:hover,
  .color-scheme-2 .fsn-menu.wp_custom > ul > li.current-menu-item > a {
    color: #d3d0d1;
  }

  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a.collapsed:after,
  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a.expanded:after {
    border-color: #faf9f7;
  }

  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a.collapsed:focus:after,
  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a.expanded:focus:after,
  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a.collapsed:hover:after,
  .color-scheme-2 .fsn-menu.wp_custom > ul > li > a.expanded:hover:after {
    border-color: #faf9f7;
  }

  .color-scheme-2 .fsn-menu.wp_custom ul.sub-menu > li > a {
    border-bottom-color: rgba(255, 255, 255, 0.1);
    color: #faf9f7;
  }

  .color-scheme-2 .fsn-menu.wp_custom ul.sub-menu > li > a:focus,
  .color-scheme-2 .fsn-menu.wp_custom ul.sub-menu > li > a:hover,
  .color-scheme-2 .fsn-menu.wp_custom ul.sub-menu > li.current-menu-item > a {
    color: #d3d0d1;
  }
}

@media (min-width: 768px) {
  footer .fsn-menu.wp_custom ul {
    -moz-column-count: 2;
    -moz-column-gap: 12px;
    -webkit-column-count: 2;
    -webkit-column-gap: 12px;
    column-count: 2;
    column-gap: 12px;
  }

  footer .fsn-menu.wp_custom a {
    display: block;
    padding: 0 0 6px;
  }
}

/**
 * Footer
 */

@media (max-width: 767px) {
  .logo-grid .col-sm-3,
  .logo-grid .col-sm-4 {
    float: left;
    width: 50%;
    padding-bottom: 15px;
  }
}

/**
 * Backgrounds
 */

.bg-city {
  background-image: url("images/bg-washington-cityscape-mobile.jpg") !important;
  background-repeat: no-repeat !important;
  background-position: center bottom !important;
  background-size: 100% auto !important;
}

.bg-city-tall {
  background-image: url("images/bg-washington-cityscape-tall-mobile.jpg") !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}

@media (min-width: 768px) {
  .bg-city {
    background-image: url("images/bg-washington-cityscape-desktop.jpg") !important;
    background-size: 1920px auto !important;
  }

  .bg-city-tall {
    background-image: url("images/bg-washington-cityscape-tall-desktop.jpg") !important;
  }

  .bg-weddings {
    background-image: url("images/bg-weddings-desktop.jpg") !important;
    background-repeat: no-repeat !important;
    background-position: right bottom !important;
    background-size: auto !important;
  }

  .bg-events {
    background-image: url("images/bg-events-desktop.jpg") !important;
    background-repeat: no-repeat !important;
    background-position: right bottom !important;
    background-size: auto !important;
  }
}

@media (min-width: 1920px) {
  .bg-city {
    background-image: url("images/bg-washington-cityscape-desktop.jpg") !important;
    background-size: 100% auto !important;
  }
}

/**
 * Our History
 */

#history-timeline {
  position: relative;
}

#history-timeline::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #29202a;
  pointer-events: none;
}

#history-timeline .fsn-card.horizontal {
  position: relative;
}

#history-timeline .fsn-card.horizontal::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  position: absolute;
  top: 92vw;
  left: 0;
  margin-top: 44px;
  margin-left: -10px;
  background: #fdd99e;
  z-index: 2;
  pointer-events: none;
  -webkit-animation-name: pulse;
  animation-name: pulse;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

@media (min-width: 768px) {
  #history-timeline::before {
    left: 50%;
  }

  #history-timeline .fsn-card.horizontal::before {
    width: 28px;
    height: 28px;
    border-radius: 14px;
    top: 50%;
    left: 50%;
    margin-top: -14px;
    margin-left: -14px;
  }
}

/**
 * Menu : Mobile Footer
 */

@media (max-width: 767px) {
  .fsn-menu.mobile_footer {
    background: #fdd99e;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.05);
    width: auto;
    bottom: 25px;
    left: 15px;
    right: 15px;
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    transition: all 0.3s;
  }

  .fsn-menu.mobile_footer.in {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    transition: all 0.3s;
  }

  .fsn-menu.mobile_footer ul {
    margin-left: 0;
  }

  .fsn-menu.mobile_footer li {
    display: block;
    width: 33.33333333%;
    float: left;
  }

  .mobile-footer a,
  .mobile-footer button {
    display: block;
    width: 100%;
    font-family: "Raleway", sans-serif;
    font-style: normal;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    font-size: 14px;
    color: #29202a;
    border-left-color: rgba(41, 32, 42, 0.1);
  }

  .mobile-footer a:focus,
  .mobile-footer a:hover,
  .mobile-footer button:focus,
  .mobile-footer button:hover {
    color: #29202a;
  }

  #mobile-back-to-top {
    width: 48px;
    height: 48px;
    background-color: #fdd99e;
    background-image: none;
    box-shadow: none;
  }

  #mobile-back-to-top:after {
    content: "";
    display: block;
    width: 9px;
    height: 9px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -4px;
    margin-left: -4px;
    background: url("images/graphic-arrow-up-dark.png") no-repeat;
    background-size: 9px 9px;
  }

  #mobile-back-to-top.in {
    opacity: 1;
  }
}

/**
 * Reservations
 */

.fsn-marriott-accessible-reservations .rooms-guests-collapse-button,
.fsn-marriott-accessible-reservations .dates-collapse-button {
  border-radius: 0;
  padding-top: 19px;
  padding-bottom: 19px;
  background: transparent;
  border-color: rgba(41, 32, 42, 0.1);
}

.fsn-marriott-accessible-reservations .rooms-guests-collapse-button:focus,
.fsn-marriott-accessible-reservations .dates-collapse-button:focus {
  box-shadow: inset 0 0 0 1px #fdd99e;
  border-color: #fdd99e;
  outline: none;
}

.color-scheme-2
  .fsn-marriott-accessible-reservations
  .rooms-guests-collapse-button,
.color-scheme-2 .fsn-marriott-accessible-reservations .dates-collapse-button {
  border-color: rgba(255, 255, 255, 0.1);
}

.fsn-marriott-accessible-reservations .rooms-guests-collapse-button::before,
.fsn-marriott-accessible-reservations .dates-collapse-button::before {
  display: none;
}

.fsn-marriott-accessible-reservations .rooms-guests-collapse-button::after,
.fsn-marriott-accessible-reservations .dates-collapse-button::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 26px;
  right: 22px;
  border: 5px solid #a9a6aa;
  border-left-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
}

div.datepicker-calendar.default table.datepicker-grid td.date-range-active {
  background: #fef4e2;
}

div.datepicker-calendar.default table.datepicker-grid td.selectable:hover,
div.datepicker-calendar.default table.datepicker-grid td.selectable.focus {
  background: #372c38;
  color: #faf9f7;
}

div.datepicker-calendar.default table.datepicker-grid td.curDay {
  background: #372c38;
  color: #faf9f7;
}

.fsn-marriott-accessible-reservations .dates-collapse,
.fsn-marriott-accessible-reservations .rooms-guests-collapse {
  color: #29202a;
}

.fsn-marriott-accessible-reservations .dates-collapse .form-control,
.fsn-marriott-accessible-reservations .rooms-guests-collapse .form-control {
  background: transparent;
  border-color: rgba(41, 32, 42, 0.1);
  color: #29202a;
}

.fsn-marriott-accessible-reservations .dates-collapse .form-control:focus,
.fsn-marriott-accessible-reservations
  .rooms-guests-collapse
  .form-control:focus {
  box-shadow: inset 0 0 0 1px #fdd99e;
  border-color: #fdd99e;
}

.fsn-marriott-accessible-reservations
  .dates-collapse
  .form-control::-moz-placeholder,
.fsn-marriott-accessible-reservations
  .rooms-guests-collapse
  .form-control::-moz-placeholder {
  color: #29202a;
}

.fsn-marriott-accessible-reservations
  .dates-collapse
  .form-control:-ms-input-placeholder,
.fsn-marriott-accessible-reservations
  .rooms-guests-collapse
  .form-control:-ms-input-placeholder {
  color: #29202a;
}

.fsn-marriott-accessible-reservations
  .dates-collapse
  .form-control::-webkit-input-placeholder,
.fsn-marriott-accessible-reservations
  .rooms-guests-collapse
  .form-control::-webkit-input-placeholder {
  color: #29202a;
}

@media (min-width: 768px) {
  #reservations-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 50;
    background: #ffffff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    transition: all 0.3s;
  }

  #reservations-bar.in {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    transition: all 0.3s;
  }
}

/**
 * Open Table
 */

.fsn-open-table-accessible-wrapper a.datepicker-button.default {
  border: 1px solid rgba(41, 32, 42, 0.1);
  border-left: 0;
  color: #a9a6aa;
}

.fsn-open-table-accessible-wrapper a.datepicker-button.default:focus,
.fsn-open-table-accessible-wrapper a.datepicker-button.default:hover,
.fsn-open-table-accessible-wrapper a.datepicker-button.default:active {
  color: #29202a;
  background: #fdd99e;
  border-color: transparent;
}

.fsn-open-table-accessible-wrapper div.datepicker-calendar.default {
  border-radius: 0;
}

.fsn-open-table-accessible-wrapper
  div.datepicker-calendar.default
  table.datepicker-grid
  td.selectable:hover,
.fsn-open-table-accessible-wrapper
  div.datepicker-calendar.default
  table.datepicker-grid
  td.selectable.focus,
.fsn-open-table-accessible-wrapper
  div.datepicker-calendar.default
  table.datepicker-grid
  td.curDay,
.fsn-open-table-accessible-wrapper
  div.datepicker-calendar.default
  table.datepicker-grid
  td.curMonth,
.fsn-open-table-accessible-wrapper
  div.datepicker-calendar.default
  table.datepicker-grid
  td.curYear {
  background: #372c38;
}

@media (min-width: 768px) {
  .fsn-open-table-accessible-wrapper.horizontal .btn-block {
    margin-top: 29px;
  }
}

/**
 * Gallery : Instagram
 */

.modal.instagram-modal {
  background: rgba(55, 44, 56, 0.9);
}

button.close.instagram-modal-close {
  width: 56px;
  height: 56px;
  background: transparent;
}

button.close.instagram-modal-close:focus,
button.close.instagram-modal-close:hover {
  background: transparent;
}

button.close.instagram-modal-close:focus {
  outline: none;
}

button.close.instagram-modal-close::before {
  content: "";
  display: block;
  width: 56px;
  height: 56px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.15) url("images/graphic-close.png") no-repeat
    center center;
  background-size: 17px 17px;
  -moz-transition: background-color 0.3s;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

button.close.instagram-modal-close:focus::before,
button.close.instagram-modal-close:hover::before {
  background-color: rgba(0, 0, 0, 0.3);
}

button.close.instagram-modal-close .material-icons {
  display: none;
}

.modal.instagram-modal .modal-dialog {
  margin: 0 auto;
}

@media (max-width: 767px) {
  .instagram-modal-content {
    margin-top: 80px;
  }

  button.close.instagram-modal-close {
    width: 48px;
    height: 48px;
    top: -73px;
    left: 50%;
    right: auto;
    margin-left: -23px;
  }

  button.close.instagram-modal-close::before {
    width: 48px;
    height: 48px;
  }
}

/**
 * Notifications : Bar Inline
 */

.fsn-notifications.bar_inline {
  background: #29202a;
}

.fsn-notifications.bar_inline h5 {
  border-right-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.bar_inline
  .notifications-bar-inline-controls
  .flex-direction-nav
  .flex-nav-prev {
  border-left-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.bar_inline
  .notifications-bar-inline-controls
  .flex-direction-nav
  .flex-nav-next {
  border-left-color: rgba(255, 255, 255, 0.1);
  border-right-color: rgba(255, 255, 255, 0.1);
}

/**
 * Notifications : Bar
 */

.fsn-notifications.bar {
  background: #29202a;
}

.fsn-notifications.bar h5 {
  border-right-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.bar
  .notifications-bar-controls
  .flex-direction-nav
  .flex-nav-prev {
  border-left-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.bar
  .notifications-bar-controls
  .flex-direction-nav
  .flex-nav-next {
  border-left-color: rgba(255, 255, 255, 0.1);
  border-right-color: rgba(255, 255, 255, 0.1);
}

/**
 * Notifications : Floating Footer
 */

.fsn-notifications.floating_footer {
  background: #29202a;
  bottom: 95px;
}

.fsn-notifications.floating_footer h5 {
  border-right-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.floating_footer
  .notifications-floating-footer-controls
  .flex-direction-nav
  .flex-nav-prev {
  border-left-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.floating_footer
  .notifications-floating-footer-controls
  .flex-direction-nav
  .flex-nav-next {
  border-left-color: rgba(255, 255, 255, 0.1);
  border-right-color: rgba(255, 255, 255, 0.1);
}

/**
 * Notifications : Modal
 */

.fsn-notifications.modal_window .notifications-modal-controls {
  background: #29202a;
}

.fsn-notifications.modal_window .notification-modal-title {
  display: block;
  margin-top: 20px;
  margin-bottom: 10px;
}

.fsn-notifications.modal_window
  .notifications-modal-controls
  .flex-direction-nav
  .flex-nav-prev {
  border-right-color: rgba(255, 255, 255, 0.1);
}

.fsn-notifications.modal_window
  .notifications-modal-controls
  .flex-direction-nav
  .flex-nav-next {
  border-left-color: rgba(255, 255, 255, 0.1);
}

/**
 * Notification : Popover/Cookie
 */

.fsn-notifications.notifications-popover {
  border-radius: 0;
}

.notifications-popover .notification-content {
  text-align: center;
  padding: 15px;
}

.fsn-notifications.notifications-popover .cookie-notice-accept {
  margin-top: 15px;
}

@media (min-width: 768px) {
  .fsn-notifications.notifications-popover {
    width: 600px;
  }

  .notifications-popover .notification-content {
    padding: 40px 30px;
  }

  .notifications-popover [data-cookie-notice="true"] .notification-content {
    font-size: 18px;
  }

  .fsn-notifications.notifications-popover .cookie-notice-accept {
    margin-top: 20px;
  }
}

/**
 * Modals
 */

.modal-backdrop {
  display: none !important;
}

.component.modal:before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background-color: #29202a;
  opacity: 0.98;
  transform: scaleY(0);
  transform-origin: center top;
  transition: transform 0.5s cubic-bezier(0.65, 0.025, 0.67, 0.36);
}

.component.modal.in:before {
  opacity: 0.98;
  transform: scaleY(1);
  transition: transform 0.5s cubic-bezier(0.34, 0.615, 0.4, 0.985);
}

.component.modal > .modal-component-inner {
  margin-top: 150px;
  background: #372c38;
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 0.3s cubic-bezier(0.65, 0.025, 0.67, 0.36),
    transform 0.3s cubic-bezier(0.65, 0.025, 0.67, 0.36);
}

.component.modal.in > .modal-component-inner {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.5s,
    transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.5s;
}

.component.modal .close {
  text-shadow: none;
  position: absolute;
  top: -110px;
  left: 50%;
  margin-left: -56px;
  width: 112px;
  height: 48px;
  color: #ffffff;
  overflow: hidden;
  opacity: 0;
  font-weight: normal;
  -moz-transition: opacity 0.3s;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.component.modal.in .close {
  opacity: 1;
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 1.3s;
}

.component.modal .close:focus,
.component.modal .close:hover {
  opacity: 1;
  outline: none;
}

.component.modal .close::before {
  content: "";
  display: block;
  width: 48px;
  height: 48px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.15) url("images/graphic-close.png") no-repeat
    center center;
  background-size: 17px 17px;
  -moz-transition: background-color 0.3s;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.component.modal .close::after {
  content: "Close";
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.075em;
  color: #fff;
  float: right;
}

.component.modal .close:focus::before,
.component.modal .close:hover::before {
  background-color: rgba(0, 0, 0, 0.3);
}

.component.modal .close .material-icons {
  display: none;
}

@media (max-width: 767px) {
  .component.modal .close {
    top: -64px;
  }

  .component.modal > .modal-component-inner {
    margin-top: 80px;
  }
}

@media (min-width: 768px) {
  .component.modal:before {
    transition: transform 0.3s cubic-bezier(0.34, 0.615, 0.4, 0.985);
  }

  .component.modal.in:before {
    transition: transform 0.5s cubic-bezier(0.65, 0.025, 0.67, 0.36);
  }

  .component.modal > .modal-component-inner {
    box-shadow: 0 0 70px rgba(0, 0, 0, 0.2);
  }

  .component.modal > .modal-component-inner::before {
    content: "";
    display: block;
    width: 208px;
    height: 176px;
    position: absolute;
    top: -60px;
    left: -76px;
    z-index: -1;
    background: url("images/graphic-logo-m-modal-accent.png") no-repeat;
    background-size: 208px 176px;
    pointer-events: none;
    opacity: 0;
    transform: translateY(-2rem);
    transition: opacity 0.3s cubic-bezier(0.65, 0.025, 0.67, 0.36),
      transform 0.3s cubic-bezier(0.65, 0.025, 0.67, 0.36);
  }

  .component.modal.in > .modal-component-inner::before {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.8s,
      transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.8s;
  }

  .component.modal .close {
    margin-left: -60px;
    width: 120px;
    height: 56px;
  }

  .component.modal .close::before {
    width: 56px;
    height: 56px;
  }
}

/**
 * SVG Drawing
 */

.fsn-svg-drawing svg {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.fsn-svg-drawing svg .signature-path-1 {
  stroke-dasharray: 99px, 99px;
  stroke-dashoffset: 100px;
  animation-duration: 0.3s;
}

.fsn-svg-drawing svg .signature-path-2 {
  stroke-dasharray: 138px, 138px;
  stroke-dashoffset: 139px;
  animation-duration: 0.3s;
  animation-delay: 0.3s;
}

.fsn-svg-drawing svg .signature-path-3 {
  stroke-dasharray: 121px, 121px;
  stroke-dashoffset: 122px;
  animation-duration: 0.3s;
  animation-delay: 0.7s;
}

.fsn-svg-drawing svg .signature-path-4 {
  stroke-dasharray: 42px, 42px;
  stroke-dashoffset: 43px;
  animation-duration: 0.3s;
  animation-delay: 1s;
}

.fsn-svg-drawing svg .signature-path-5 {
  stroke-dasharray: 552px, 552px;
  stroke-dashoffset: 553px;
  animation-duration: 0.6s;
  animation-delay: 1.6s;
}

.fsn-svg-drawing svg .signature-path-6 {
  stroke-dasharray: 36px, 36px;
  stroke-dashoffset: 37px;
  animation-duration: 0.15s;
  animation-delay: 2.2s;
}

.fsn-svg-drawing svg .signature-path-7 {
  stroke-dasharray: 19px, 19px;
  stroke-dashoffset: 20px;
  animation-duration: 0.15s;
  animation-delay: 2.35s;
}

.fsn-svg-drawing svg .signature-path-8 {
  stroke-dasharray: 106px, 106px;
  stroke-dashoffset: 107px;
  animation-duration: 0.2s;
  animation-delay: 2.5s;
}

.fsn-svg-drawing svg .signature-path-9 {
  stroke-dasharray: 126px, 126px;
  stroke-dashoffset: 127px;
  animation-duration: 0.2s;
  animation-delay: 2.7s;
}

.fsn-svg-drawing svg .signature-path-10 {
  stroke-dasharray: 103px, 103px;
  stroke-dashoffset: 104px;
  animation-duration: 0.2s;
  animation-delay: 2.9s;
}

.fsn-svg-drawing svg .signature-path-11 {
  stroke-dasharray: 59px, 59px;
  stroke-dashoffset: 60px;
  animation-duration: 0.2s;
  animation-delay: 3.1s;
}

.fsn-svg-drawing svg .signature-path-12 {
  stroke-dasharray: 55px, 55px;
  stroke-dashoffset: 56px;
  animation-duration: 0.2s;
  animation-delay: 3.3s;
}

.fsn-svg-drawing svg .signature-path-13 {
  stroke-dasharray: 39px, 39px;
  stroke-dashoffset: 40px;
  animation-duration: 0.2s;
  animation-delay: 3.5s;
}

.fsn-svg-drawing svg .signature-path-14 {
  stroke-dasharray: 35px, 35px;
  stroke-dashoffset: 36px;
  animation-duration: 0.2s;
  animation-delay: 3.7s;
}

.fsn-svg-drawing[data-adv-anim="true"] svg path {
  animation-name: letter-animation;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

.no-supports .fsn-svg-drawing svg path {
  stroke-dashoffset: 0px !important;
}

@keyframes letter-animation {
  100% {
    stroke-dashoffset: 0px;
  }
}

/**
 * Advanced Animation : Card : Basic
 */

.fsn-card.basic .card-image {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.fsn-card.basic .card-image a {
  display: block;
}

.fsn-card.basic .media-animation-wrapper {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

.fsn-card.basic[data-adv-anim="true"] .media-animation-wrapper {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-card.basic .media-animation-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #372c38;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: opacity;
}

.color-scheme-2 .fsn-card.basic .media-animation-wrapper:after {
  background: #29202a;
}

.fsn-card.basic[data-adv-anim="true"] .media-animation-wrapper:after {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.6s;
}

.fsn-card.basic .media-animation-inner {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.2);
  transition: transform 0s 0.6s, opacity 0.2s 0.6s;
}

.fsn-card.basic[data-adv-anim="true"] .media-animation-inner {
  opacity: 1;
  transform: scale(1);
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s,
    opacity 0.2s 0.6s;
}

.fsn-card.basic .media-animation-inner .media-animation-item {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
  will-change: opacity;
}

.fsn-card.basic[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

/**
 * Advanced Animation : Card : Horizontal
 */

.fsn-card.horizontal .card-image,
.fsn-card.horizontal .card-video {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

@media (max-width: 767px) {
  .fsn-card.horizontal .card-image,
  .fsn-card.horizontal .card-video {
    padding-left: 0;
    padding-right: 0;
    margin-left: 15px;
    margin-right: 15px;
  }
}

.fsn-card.horizontal .card-image a,
.fsn-card.horizontal .card-video a {
  display: block;
}

.fsn-card.horizontal .media-animation-wrapper {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

.fsn-card.horizontal[data-adv-anim="true"] .media-animation-wrapper {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-card.horizontal .media-animation-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #372c38;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: opacity;
}

.color-scheme-2 .fsn-card.horizontal .media-animation-wrapper:after {
  background: #29202a;
}

.fsn-card.horizontal[data-adv-anim="true"] .media-animation-wrapper:after {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.6s;
}

.fsn-card.horizontal .media-animation-inner {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.2);
  transition: transform 0s 0.6s, opacity 0.2s 0.6s;
}

.fsn-card.horizontal[data-adv-anim="true"] .media-animation-inner {
  opacity: 1;
  transform: scale(1);
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s,
    opacity 0.2s 0.6s;
}

.fsn-card.horizontal .media-animation-inner .media-animation-item {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
  will-change: opacity;
}

.fsn-card.horizontal[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

/**
 * Advanced Animation : Card : Tile
 */

.fsn-card.tile {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.fsn-card.tile .media-animation-wrapper {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

.fsn-card.tile[data-adv-anim="true"] .media-animation-wrapper {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-card.tile .media-animation-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #372c38;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: opacity;
}

.color-scheme-2 .fsn-card.tile .media-animation-wrapper:after {
  background: #29202a;
}

.fsn-card.tile[data-adv-anim="true"] .media-animation-wrapper:after {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.6s;
}

.fsn-card.tile .media-animation-inner {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.2);
  transition: transform 0s 0.6s, opacity 0.2s 0.6s;
}

.fsn-card.tile[data-adv-anim="true"] .media-animation-inner {
  opacity: 1;
  transform: scale(1);
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s,
    opacity 0.2s 0.6s;
}

.fsn-card.tile .media-animation-inner .media-animation-item {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
  will-change: opacity;
}

.fsn-card.tile[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

/**
 * Advanced Animation : Gallery : Sidesplit
 */

.fsn-gallery .sidesplit .side-split-image {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.fsn-gallery .sidesplit .media-animation-wrapper {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

.fsn-gallery .sidesplit[data-adv-anim="true"] .media-animation-wrapper {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-gallery .sidesplit .media-animation-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #372c38;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: opacity;
}

.color-scheme-2 .fsn-gallery .sidesplit .media-animation-wrapper:after {
  background: #29202a;
}

.fsn-gallery .sidesplit[data-adv-anim="true"] .media-animation-wrapper:after {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.6s;
}

.fsn-gallery .sidesplit .media-animation-inner {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.2);
  transition: transform 0s 0.6s, opacity 0.2s 0.6s;
}

.fsn-gallery .sidesplit[data-adv-anim="true"] .media-animation-inner {
  opacity: 1;
  transform: scale(1);
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s,
    opacity 0.2s 0.6s;
}

.fsn-gallery .sidesplit .media-animation-inner .media-animation-item {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
  will-change: opacity;
}

.fsn-gallery
  .sidesplit[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

/**
 * Advanced Animation : Masthead
 */

.fsn-masthead .media-animation-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

.fsn-masthead[data-adv-anim="true"] .media-animation-wrapper {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-masthead .media-animation-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #372c38;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: opacity;
}

.fsn-masthead.fsn-masthead.split-logo .media-animation-wrapper:after {
  background: #29202a;
}

.fsn-masthead[data-adv-anim="true"] .media-animation-wrapper:after {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.6s;
}

.fsn-masthead .media-animation-inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.2);
  transition: transform 0s 0.6s, opacity 0.2s 0.6s;
}

.fsn-masthead[data-adv-anim="true"] .media-animation-inner {
  opacity: 1;
  transform: scale(1);
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s,
    opacity 0.2s 0.6s;
}

.fsn-masthead .media-animation-inner .media-animation-item {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
  will-change: opacity;
}

.fsn-masthead[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-masthead.split-logo::after {
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36),
    transform 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36);
  transition-duration: 0.3s;
}

.fsn-masthead.fsn-masthead.split-logo[data-adv-anim="true"]::after {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 1s,
    transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 1s;
}

/**
 * Advanced Animation : Split Masthead
 */

#split-masthead::before {
  transform: scaleY(0);
  transform-origin: center top;
  transition: transform 0.8s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: transform;
}

#split-masthead[data-adv-anim="true"]::before {
  transform: scaleY(1);
  transition: transform 0.8s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

body > header {
  transform: translateY(-100%);
  transition: transform 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

body[data-adv-anim="true"] > header {
  transform: translateY(0);
  transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.3s;
}

#split-masthead .fsn-card.tile .media-animation-wrapper {
  opacity: 1;
  transform: translateY(100%);
  transition: transform 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.5s;
}

#split-masthead .fsn-card.tile[data-adv-anim="true"] .media-animation-wrapper {
  transform: translateY(0);
  transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.5;
}

#split-masthead .fsn-card.tile .media-animation-wrapper:after {
  opacity: 1;
  transform: scaleY(1);
  transform-origin: center top;
  transition: transform 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: transform;
}

#split-masthead
  .fsn-card.tile[data-adv-anim="true"]
  .media-animation-wrapper:after {
  transform: scaleY(0);
  transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 1.1s;
}

#split-masthead .fsn-card.tile[data-adv-anim="true"] .media-animation-inner {
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.8s,
    opacity 0.2s 1.1s;
}

#split-masthead .fsn-card.tile .media-animation-inner .media-animation-item {
  opacity: 1;
  transform: translateY(-100%);
  transition: transform 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.15s;
  will-change: transform;
}

#split-masthead
  .fsn-card.tile[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  transform: translateY(0);
  transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.5s;
}

#split-masthead[data-adv-anim="true"] .svg-m g path {
  stroke-dasharray: 2600px;
  stroke-dashoffset: 2601px;
  stroke-linecap: round;
  stroke-linejoin: round;
  animation-name: letter-animation;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

#split-masthead[data-adv-anim="true"] .svg-m g .mayflower-m-1 {
  stroke-width: 40;
  animation-duration: 2s;
  animation-delay: 1.7s;
}

#split-masthead[data-adv-anim="true"] .svg-m g .mayflower-m-2 {
  stroke-width: 40;
  animation-duration: 2s;
  animation-delay: 2.5s;
}

#split-masthead .col-sm-6:first-child > .fsn-column-inner > .fsn-row {
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 0.3s cubic-bezier(0.65, 0.025, 0.67, 0.36),
    transform 0.3s cubic-bezier(0.65, 0.025, 0.67, 0.36);
}

#split-masthead[data-adv-anim="true"]
  .col-sm-6:first-child
  > .fsn-column-inner
  > .fsn-row {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985),
    transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985);
  transition-delay: 1.2s;
}

@media (min-width: 768px) {
  #split-masthead .fsn-card.tile .media-animation-wrapper {
    transform: translateX(100%);
  }

  #split-masthead
    .fsn-card.tile[data-adv-anim="true"]
    .media-animation-wrapper {
    transform: translateX(0);
    transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.8s;
  }

  #split-masthead .fsn-card.tile .media-animation-wrapper:after {
    transform: scaleX(1);
    transform-origin: left center;
  }

  #split-masthead
    .fsn-card.tile[data-adv-anim="true"]
    .media-animation-wrapper:after {
    transform: scaleX(0);
    transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 1.4s;
  }

  #split-masthead .fsn-card.tile .media-animation-inner {
    transform: scale(1.2);
  }

  #split-masthead .fsn-card.tile[data-adv-anim="true"] .media-animation-inner {
    transform: scale(1);
    transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 1.1s,
      opacity 0.2s 1.4s;
  }

  #split-masthead .fsn-card.tile .media-animation-inner .media-animation-item {
    transform: translateX(-100%);
    will-change: transform;
  }

  #split-masthead
    .fsn-card.tile[data-adv-anim="true"]
    .media-animation-inner
    .media-animation-item {
    transform: translateX(0);
    transition: transform 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.8s;
  }

  #split-masthead[data-adv-anim="true"] .svg-m g .mayflower-m-1 {
    animation-delay: 1.8s;
  }

  #split-masthead[data-adv-anim="true"] .svg-m g .mayflower-m-2 {
    animation-delay: 2.6s;
  }

  #split-masthead[data-adv-anim="true"]
    .col-sm-6:first-child
    > .fsn-column-inner
    > .fsn-row {
    transition-delay: 2.6s;
  }
}

.no-supports #split-masthead .svg-m g path {
  stroke-dashoffset: 0px !important;
}

/**
 * Advanced Animation : Images
 */

.fsn-image .media-animation {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.fsn-image .image-button {
  display: block;
}

.fsn-image .media-animation .media-animation-wrapper {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
}

.fsn-image .media-animation[data-adv-anim="true"] .media-animation-wrapper {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

.fsn-image .media-animation .media-animation-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #372c38;
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415);
  will-change: opacity;
}

.color-scheme-2 .fsn-image .media-animation .media-animation-wrapper:after {
  background: #29202a;
}

.fsn-image
  .media-animation[data-adv-anim="true"]
  .media-animation-wrapper:after {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92) 0.6s;
}

.fsn-image .media-animation .media-animation-inner {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: scale(1.2);
  transition: transform 0s 0.6s, opacity 0.2s 0.6s;
}

.fsn-image .media-animation[data-adv-anim="true"] .media-animation-inner {
  opacity: 1;
  transform: scale(1);
  transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s,
    opacity 0.2s 0.6s;
}

.fsn-image .media-animation .media-animation-inner .media-animation-item {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.7, 0.085, 0.79, 0.415) 0.35s;
  will-change: opacity;
}

.fsn-image
  .media-animation[data-adv-anim="true"]
  .media-animation-inner
  .media-animation-item {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.565, 0.43, 0.24, 0.92);
}

/**
 * Advanced Animation : Mobile History Image
 */

.fsn-image.mobile-history-image {
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36),
    transform 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36);
  transition-duration: 0.3s;
}

.fsn-image.mobile-history-image[data-adv-anim="true"] {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985),
    transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985);
}

/**
 * Advanced Animation : Modal Menu
 */

.menu-modal-open .modal-backdrop:not(.fade) {
  display: none !important;
}

#menu-modal {
  display: block !important;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  transition: opacity 0s, z-index 0s;
  transition-delay: 0.9s;
}

.menu-modal-open #menu-modal {
  opacity: 1;
  pointer-events: all;
  z-index: 1050;
  transition-delay: 0s;
}

#menu-modal .modal-dialog {
  background: transparent;
}

#menu-modal .modal-dialog,
#menu-modal .menu-modal-controls,
#menu-modal .multi-col-nav-container,
#menu-modal .modal-dialog:after {
  z-index: 1;
}

#menu-modal .menu-modal-controls .close {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36) 0.5s;
  transition-duration: 0.3s;
}

.menu-modal-open #menu-modal .menu-modal-controls .close {
  opacity: 1;
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s;
}

#menu-modal .menu-modal-bg-solid {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 0;
  background: #29202a;
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform 0.5s cubic-bezier(0.65, 0.025, 0.67, 0.36) 0.3s,
    opacity 0s 0.8s;
}

.menu-modal-open #menu-modal .menu-modal-bg-solid {
  transform: scaleX(1);
  transition: transform 0.5s cubic-bezier(0.34, 0.615, 0.4, 0.985);
}

@media (min-width: 768px) {
  #menu-modal .menu-modal-bg-solid {
    width: 50%;
    transform-origin: left center;
    transition: transform 0.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.6s,
      opacity 0s 0.9s;
  }

  .menu-modal-open #menu-modal .menu-modal-bg-solid {
    transition: transform 0.5s cubic-bezier(0.65, 0.025, 0.67, 0.36), opacity 0s;
  }

  #menu-modal .menu-modal-bg-image {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    overflow: hidden;
    z-index: 0;
    will-change: transform;
    transform: translateX(-100%) translateY(0);
    transition: transform 0.55s cubic-bezier(0.65, 0.025, 0.67, 0.36) 0.05s,
      opacity 0s 0.6s;
  }

  .menu-modal-open #menu-modal .menu-modal-bg-image {
    opacity: 1;
    transform: translateX(0) translateY(0);
    transition: transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.5s,
      opacity 0s 0.5s;
  }

  #menu-modal .menu-modal-bg-image-inner {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
    transform: translateX(100%) translateY(0);
    transition: transform 0.55s cubic-bezier(0.65, 0.025, 0.67, 0.36) 0.05s;
  }

  .menu-modal-open #menu-modal .menu-modal-bg-image-inner {
    transform: translateX(0) translateY(0);
    transition: transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.5s;
  }

  #menu-modal .menu-modal-bg-image-inner:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("images/bg-modal-desktop.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transform: scale(1.2);
    transform-origin: center center;
    transition: transform 0s 0.6s;
  }

  .menu-modal-open #menu-modal .menu-modal-bg-image-inner:before {
    transform: scale(1);
    transition: transform 1.3s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.3s;
  }

  #menu-modal .modal-dialog:after {
    content: "";
    display: block;
    width: 208px;
    height: 176px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -88px;
    margin-left: -104px;
    background: url("images/graphic-logo-m-modal-accent.png") no-repeat;
    background-size: 208px 176px;
    pointer-events: none;
    opacity: 0;
    transform: translateY(3rem);
    transition: opacity 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36),
      transform 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36);
    transition-duration: 0.3s;
  }

  .menu-modal-open #menu-modal .modal-dialog:after {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.625s,
      transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985) 0.625s;
  }
}

#menu-modal .multi-col-nav-column .menu-item {
  opacity: 0;
  transform: translateY(3rem);
  transition: opacity 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36),
    transform 0.6s cubic-bezier(0.65, 0.025, 0.67, 0.36);
  transition-duration: 0.3s;
}

.menu-modal-open #menu-modal .multi-col-nav-column .menu-item {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985),
    transform 0.8s cubic-bezier(0.34, 0.615, 0.4, 0.985);
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:first-child
  .menu-item:first-child {
  transition-delay: 0.175s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:first-child
  .menu-item:nth-child(2) {
  transition-delay: 0.25s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:first-child
  .menu-item:nth-child(3) {
  transition-delay: 0.325s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:first-child
  .menu-item:nth-child(4) {
  transition-delay: 0.4s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:first-child
  .menu-item:nth-child(5) {
  transition-delay: 0.475s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .menu-item:first-child {
  transition-delay: 0.55s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:first-child {
  transition-delay: 0.625s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(2) {
  transition-delay: 0.7s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(3) {
  transition-delay: 0.7s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(4) {
  transition-delay: 0.775s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(5) {
  transition-delay: 0.85s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(6) {
  transition-delay: 0.925s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(7) {
  transition-delay: 1s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(8) {
  transition-delay: 1.075s;
}

.menu-modal-open
  #menu-modal
  .multi-col-nav-column:nth-child(2)
  .nested-menu-items
  .menu-item:nth-child(9) {
  transition-delay: 1.15s;
}

/**
 * Graphics
 */

@media (min-width: 768px) {
  span.graphic-parallax {
    display: block;
    position: absolute;
    pointer-events: none;
  }

  .fsn-row.has-graphics {
    position: relative;
  }

  span.graphic-dc {
    width: 41.04166667%;
    height: auto;
    top: 25%;
    left: 26.479166665%;
    z-index: 1;
  }

  span.graphic-dc-inner {
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 284.01015228%;
    background: url("images/graphic-dc.png") no-repeat;
    background-size: cover;
  }
}

/**
 * Hotspot image
 */

.fsn-hotspot-image {
  position: relative;
  display: block;
  width: 100%;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

@media (max-width: 767px) {
  .fsn-hotspot-image:before {
    content: "";
    display: block;
    height: 60px;
  }

  .fsn-hotspot-image .hotspot-image-popover {
    display: block;
    width: 100%;
    font-family: "Raleway", sans-serif;
    font-style: normal;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.075em;
    font-size: 14px;
    line-height: 20px;
    text-align: left;
    background: #fff;
    color: #29202a;
    cursor: pointer;
    margin: 5px 0 0;
    border: 0;
    padding: 15px 20px;
    position: relative;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
  }

  .fsn-hotspot-image .hotspot-image-popover.active {
    background: #fdd99d;
  }

  .fsn-hotspot-image .hotspot-image-popover::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    margin-top: -9px;
    right: 18px;
    width: 20px;
    height: 20px;
    background-color: transparent;
    background-position: center;
    background-image: url("images/graphic-add-grey.svg");
    background-size: 20px 20px;
    -ms-transform: rotate(0deg) translateZ(0);
    -moz-transform: rotate(0deg) translateZ(0);
    -webkit-transform: rotate(0deg) translateZ(0);
    transform: rotate(0deg) translateZ(0);
    transition: transform 0.3s;
  }

  .fsn-hotspot-image .hotspot-image-popover.active::before {
    -ms-transform: rotate(45deg) translateZ(0);
    -moz-transform: rotate(45deg) translateZ(0);
    -webkit-transform: rotate(45deg) translateZ(0);
    transform: rotate(45deg) translateZ(0);
  }
}

@media (min-width: 768px) {
  .fsn-hotspot-image {
    background-position: center;
    background-size: cover;
  }

  .fsn-hotspot-image .hotspot-image-popover {
    position: absolute;
    display: block;
    width: 42px;
    height: 42px;
    border-radius: 21px;
    border: none;
    padding: 0;
    margin: 0;
    text-decoration: none;
    background: #fdd99e;
    cursor: pointer;
    box-shadow: rgb(160, 144, 118, 0.25) 0 0 10px;
    transition: background-color 0.3s;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-animation-name: hotspotPulse;
    animation-name: hotspotPulse;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
  }

  .fsn-hotspot-image .hotspot-image-popover-headline {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }

  .fsn-hotspot-image .hotspot-image-popover::before {
    content: "";
    display: block;
    position: absolute;
    top: 9px;
    left: 9px;
    width: 24px;
    height: 24px;
    background-color: transparent;
    background-position: center;
    background-image: url("images/graphic-add-grey.svg");
    background-size: 24px 24px;
    -ms-transform: rotate(0deg) translateZ(0);
    -moz-transform: rotate(0deg) translateZ(0);
    -webkit-transform: rotate(0deg) translateZ(0);
    transform: rotate(0deg) translateZ(0);
    transition: transform 0.3s;
  }

  .fsn-hotspot-image .hotspot-image-popover.active::before {
    -ms-transform: rotate(45deg) translateZ(0);
    -moz-transform: rotate(45deg) translateZ(0);
    -webkit-transform: rotate(45deg) translateZ(0);
    transform: rotate(45deg) translateZ(0);
  }

  .fsn-hotspot-image .hotspot-image-popover:focus,
  .fsn-hotspot-image .hotspot-image-popover:active:focus,
  .fsn-hotspot-image .hotspot-image-popover.focus,
  .fsn-hotspot-image .hotspot-image-popover:active.focus,
  .fsn-hotspot-image .hotspot-image-popover.active.focus {
    outline: none;
    box-shadow: rgb(160, 144, 118) 0 0 10px;
    animation: none;
  }

  .fsn-hotspot-image .hotspot-image-popover:hover {
    background: #eecc95;
  }
}

@keyframes hotspotPulse {
  0% {
    box-shadow: rgb(160, 144, 118, 0.25) 0 0 10px;
  }

  50% {
    box-shadow: rgb(160, 144, 118, 0.5) 0 0 10px;
  }

  100% {
    box-shadow: rgb(160, 144, 118, 0.25) 0 0 10px;
  }
}

.hotspot-image-popover-container {
  font-family: inherit;
  border: none;
  border-radius: 0px;
  padding: 0;
  text-align: center;
  max-width: 388px;
  min-height: 500px;
}

.hotspot-image-popover-container .arrow {
  display: none;
}

.hotspot-image-popover-container .popover-content {
  padding: 0;
}

.hotspot-image-group .hotspot-image-group-headline {
  padding: 30px 15px 10px 15px;
  font-size: 18px;
}

.hotspot-image-group .hotspot-image-group-description {
  padding: 10px 15px 30px 15px;
}

@media (max-width: 767px) {
  .hotspot-image-popover-container {
    display: none !important;
  }

  /* .hotspot-image-popover-content-src .hotspot-image-group {
    opacity:0;
  }
  .hotspot-image-popover-content-src.active .hotspot-image-group {
    opacity:1;
    transition:opacity 0.3s ease 0.2s;
  } */
  .hotspot-image-group {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .hotspot-image-popover-container .hotspot-image-group-headline {
    padding: 40px 40px 10px 40px;
    font-size: 24px;
  }

  .hotspot-image-popover-container .hotspot-image-group-description {
    padding: 10px 40px 40px 40px;
  }
}

/*Black styles*/

body {
  color: #111111;
}
.color-scheme-2 {
  background: #000000;
}
div.wpcf7-mail-sent-ok {
  border: 2px solid #000000;
}
#split-masthead::before {
  background: #000000;
}
div.datepicker-calendar.default table.datepicker-grid td.selectable:hover,
div.datepicker-calendar.default table.datepicker-grid td.selectable.focus {
  background: #000000;
}

div.datepicker-calendar.default table.datepicker-grid td.curDay {
  background: #000000;
}
.fsn-open-table-accessible-wrapper
  div.datepicker-calendar.default
  table.datepicker-grid
  td.curYear {
  background: #000000;
}
.component.modal > .modal-component-inner {
  background: #000000;
}
.fsn-card.basic .media-animation-wrapper:after {
  background: #000000;
}
.fsn-card.horizontal .media-animation-wrapper:after {
  background: #000000;
}
.fsn-card.tile .media-animation-wrapper:after {
  background: #000000;
}
.fsn-gallery .sidesplit .media-animation-wrapper:after {
  background: #000000;
}
.fsn-masthead .media-animation-wrapper:after {
  background: #000000;
}
.fsn-image .media-animation .media-animation-wrapper:after {
  background: #000000;
}
#menu-modal .modal-dialog {
  background: #111111;
}
.fsn-notifications.bar_inline {
  background: #111111;
}
.fsn-notifications.bar {
  background: #111111;
}
.fsn-notifications.floating_footer {
  background: #111111;
}
.fsn-notifications.modal_window .notifications-modal-controls {
  background: #111111;
}
.component.modal:before {
  background-color: #111111;
}
.color-scheme-2 .fsn-card.basic .media-animation-wrapper:after {
  background: #111111;
}
.color-scheme-2 .fsn-card.horizontal .media-animation-wrapper:after {
  background: #111111;
}
.color-scheme-2 .fsn-card.tile .media-animation-wrapper:after {
  background: #111111;
}
.color-scheme-2 .fsn-gallery .sidesplit .media-animation-wrapper:after {
  background: #111111;
}
.fsn-masthead.fsn-masthead.split-logo .media-animation-wrapper:after {
  background: #111111;
}
.color-scheme-2 .fsn-image .media-animation .media-animation-wrapper:after {
  background: #111111;
}
#menu-modal .menu-modal-bg-solid {
  background: #111111;
}
