@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}
/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}
/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}
/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}
/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}
/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}
/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}
/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
@font-face {
  font-family: "PT Serif";
  src: url("../fonts/PT_Serif-Web-Regular.ttf");
  font-weight: normal;
}
@font-face {
  font-family: "PT Serif Bold";
  src: url("../fonts/PT_Serif-Web-Bold.ttf");
  font-weight: bold;
}
@font-face {
  font-family: "PT Serif Italic";
  src: url("../fonts/PT_Serif-Web-Italic.ttf");
  font-style: italic;
}
@font-face {
  font-family: "PT Serif Bold Italic";
  src: url("../fonts/PT_Serif-Web-BoldItalic.ttf");
  font-weight: bold;
  font-style: italic;
}
body {
  background-color: rgba(96, 104, 120, 0.1);
}
body header,
body main,
body footer {
  transition: 2s;
  opacity: 0;
}
body .profile-main-loader {
  opacity: 1;
}
body.loaded .profile-main-loader {
  opacity: 0;
  z-index: -1;
}
body.loaded header,
body.loaded main,
body.loaded footer {
  opacity: 1;
}
img {
  display: block;
}
.base-font {
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
}
p,
form fieldset label,
form .fieldset label {
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
  color: black;
  font-size: 1.325rem;
  margin-top: 16px;
  margin-bottom: 0;
}
input {
  outline: 0;
}
section {
  margin: 0 auto;
  background-color: white;
}
section.jump-to {
  padding: 60px 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
section article {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 30px;
  text-align: center;
}
section article h1 {
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
  font-size: 2.5rem;
  color: #606878;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  margin: 0;
}
section article h1 span {
  display: block;
}
section article h2 {
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
  margin: 0;
}
section article ul {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 740px;
  margin: 32px auto 0;
  padding: 0;
}
section article ul li {
  flex-basis: calc(50% - 32px);
  margin: 8px;
}
section article ul.full-width {
  flex-wrap: nowrap;
  flex-direction: column;
}
section article p span {
  display: block;
}
section article p span.delimiter {
  display: inline;
}
section.rev article h1,
section.rev article p,
section.rev article p a {
  color: white;
  text-decoration: none;
  text-decoration-color: white;
}
section.rev article h1.underline,
section.rev article p.underline,
section.rev article p a.underline {
  text-decoration: underline;
}
section.rev article p.larger {
  font-size: 1.625rem;
}
section.rev article ul li h2,
section.rev article ul li p {
  color: white;
}
section.rev article ul li h2 {
  font-family: "PT Serif Bold", serif;
  font-size: 1.625rem;
}
section.rev article ul li p {
  margin: 0;
  font-size: 1.32rem;
}
section.rev article h2 {
  color: white;
  font-size: 1.875rem;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
}
.button {
  padding: 30px 8px;
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
  font-size: 1.875rem;
  line-height: 1;
  color: #606878;
  text-transform: uppercase;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 10px;
  cursor: pointer;
  transition: 0.3s;
}
.button:hover {
  background-color: rgba(96, 104, 120, 0.7);
  color: white;
}
.button:hover a {
  color: white;
}
.button a {
  color: #606878;
  text-decoration: none;
}
.button a:hover {
  text-decoration: none;
}
.overlay {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  z-index: -1;
}
.overlay.active {
  opacity: 1;
  z-index: 1;
}
.align-left {
  text-align: left;
}
.boilerplate {
  font-size: 0.8rem;
  text-align: left;
}
.boilerplate span {
  display: inline-block;
}
.justify {
  text-align: justify;
}
.nowrap {
  white-space: nowrap;
}
@media screen and (max-width: 600px) {
  section.jump-to {
    padding: 30px 0;
  }
  section article h1 {
    font-size: 2rem;
  }
  section article p {
    font-size: 1.25rem;
  }
  section article ul {
    display: block;
  }
  section article ul li {
    margin: 8px 8px 16px;
    padding-bottom: 16px;
  }
  .button {
    padding: 21px 8px;
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 400px) {
  section.jump-to {
    padding: 20px 0;
  }
  section article {
    padding: 0 20px;
  }
  section article h1 {
    font-size: 1.75rem;
  }
}
header {
  background-color: #606878;
  position: relative;
  z-index: 2;
}
header .wrapper {
  z-index: 2;
}
header .wrapper .logo img {
  margin: 0 auto;
  padding: 33px 0 11px 0;
}
header nav {
  z-index: 1;
  position: relative;
}
header nav ul {
  display: inline-flex;
  padding: 0;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
header nav ul li {
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
  color: white;
  font-size: 1.25rem;
  text-transform: uppercase;
  cursor: pointer;
  list-style-type: none;
  margin-right: 45px;
  transition: 0.3s;
}
header nav ul li:last-child {
  margin-right: 0;
}
header nav ul li:hover {
  opacity: 0.7;
}
@media screen and (max-width: 1023px) {
  header .wrapper .logo img {
    margin: 0;
    padding: 20px 0 11px 0;
    transform: scale(0.7);
  }
  header nav ul {
    position: absolute;
    display: block;
    padding: 0;
    margin: 0;
    width: 100%;
    left: 0;
    transform: translateX(-100%);
    background-color: #606878;
    border-top: 1px solid rgba(255, 255, 255, 0.7);
    opacity: 0;
  }
  header nav ul li {
    padding: 8px 20px;
    margin: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
    text-align: center;
  }
  header nav ul li:hover {
    background-color: #747f8d;
    opacity: 1;
  }
}
.hamburger {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 60px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  padding: 0 33px;
  border: 0;
  box-sizing: content-box;
  cursor: pointer;
  overflow: hidden;
  outline: none;
  text-indent: -9999px;
  transition: 0.3s;
  opacity: 0;
  z-index: -1;
}
.hamburger span {
  background: white;
  display: block;
  height: 3px;
  width: 30px;
  position: absolute;
  margin: auto;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  transition: all 0.3s;
}
.hamburger span:before,
.hamburger span:after {
  background: white;
  display: block;
  height: 3px;
  width: 100%;
  content: "";
  position: absolute;
  left: 0;
  transition-duration: 0.3s, 0.3s;
  transition-delay: 0.3s, 0s;
}
.hamburger span:before {
  top: -8px;
  transition-property: top, transform;
}
.hamburger span:after {
  bottom: -8px;
  transition-property: bottom, transform;
}
.hamburger.active span {
  background: none;
}
.hamburger.active span:before,
.hamburger.active span:after {
  transition-delay: 0s, 0.3s;
}
.hamburger.active span:before {
  top: 0;
  transform: rotate(45deg);
}
.hamburger.active span:after {
  bottom: 0;
  transform: rotate(-45deg);
}
@media screen and (max-width: 1023px) {
  .hamburger {
    opacity: 1;
    z-index: 2;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  overflow-x: hidden;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
/* Slider */
.slick-track {
  display: flex;
  margin-bottom: -4px;
  top: -1px;
}
.slick-slide img {
  width: 100%;
  margin-bottom: -1px;
}
.slick-loading .slick-list {
  background: #fff url('./ajax-loader.gif') center center no-repeat;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: none;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover,
.slick-next:hover,
.slick-prev:focus,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before,
.slick-next:hover:before,
.slick-prev:focus:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-prev {
  left: -25px;
}
[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir="rtl"] .slick-prev:before {
  content: "→";
}
.slick-next {
  right: -25px;
}
[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir="rtl"] .slick-next:before {
  content: "←";
}
/* Dots */
.slick-dotted .slick-slider {
  margin-bottom: 30px;
}
.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}
@media screen and (max-width: 600px) {
  .slick-slide {
    height: 250px;
  }
  .slick-slide div {
    width: auto !important;
  }
  .slick-slide div div {
    width: auto !important;
  }
  .slick-slide div div img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: 100%;
    width: auto;
  }
}
section#menu {
  background-image: url(../images/bg-menu.jpg);
}
section#menu .button {
  font-size: 1.4rem;
}
@media screen and (max-width: 1023px) {
  section#menu article ul {
    display: block;
  }
}
section#opening-times {
  background-image: url(../images/bg-opening-times.jpg);
}
@media screen and (max-width: 600px) {
  section#opening-times article ul li {
    border-bottom: 2px solid rgba(255, 255, 255, 0.25);
  }
}
section#book-a-table {
  background-image: url(../images/bg-book-a-table.jpg);
}
section#book-a-table ul li.iframe-wrapper {
  position: relative;
  background-color: #eeeeef;
  margin: 0;
  height: 0;
  font-size: 0;
  border-radius: 10px;
  transition: 1s;
}
section#book-a-table ul li.iframe-wrapper iframe {
  height: 0;
  border: 0;
  transition: 1s;
}
section#book-a-table ul li.iframe-wrapper.active {
  height: 600px;
  max-height: 1000px;
  margin: 8px;
}
section#book-a-table ul li.iframe-wrapper.active iframe {
  width: calc(100% - 20px);
  border: 0;
  height: 600px;
}
section#book-a-table ul li.iframe-wrapper.active button.close {
  opacity: 1;
  z-index: 1;
}
section#book-a-table ul li.iframe-wrapper button.close {
  position: absolute;
  opacity: 0;
  right: 16px;
  top: 16px;
  text-indent: -9000px;
  padding: 0;
  border: none;
  outline: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #75929e;
  cursor: pointer;
  transition: 0.5s 0.3s;
  z-index: -1;
}
section#book-a-table ul li.iframe-wrapper button.close span {
  position: absolute;
  top: calc(50% - 2px);
  left: 50%;
  width: 75%;
  height: 4px;
  background-color: white;
}
section#book-a-table ul li.iframe-wrapper button.close span.down {
  transform: translateX(-50%) rotate(45deg);
}
section#book-a-table ul li.iframe-wrapper button.close span.up {
  transform: translateX(-50%) rotate(-45deg);
}
section#book-a-table ul li.button {
  height: 30px;
  transition: 1s;
}
section#book-a-table ul li.button.hide {
  height: 0;
  border: 0;
  padding: 0;
  margin: 0;
  opacity: 0;
}
section#book-a-table ul li.button:hover {
  background-color: rgba(255, 255, 255, 0.25);
}
@media screen and (max-width: 600px) {
  section#book-a-table ul li.iframe-wrapper {
    padding-bottom: 0;
  }
}
section#location {
  padding: 0;
  margin-bottom: -4px;
}
section#location #map {
  height: 600px;
}
section#stay {
  background-image: url(../images/bg-stay.jpg);
  padding-bottom: 0;
}
section#stay .collage {
  display: flex;
  margin-top: 48px;
}
section#stay .collage img {
  width: 100%;
}
section#stay .collage .vertical {
  flex-basis: 25%;
}
section#stay .collage .main {
  flex-basis: 50%;
}
section#stay .collage .main img {
  height: 100%;
}
@media screen and (max-width: 1023px) {
  section#stay .collage {
    display: block;
  }
  section#stay .collage .vertical {
    display: none;
  }
}
section#contact-us {
  background-image: url(../images/bg-contact-us.jpg);
}
section#contact-us article ul {
  flex-wrap: nowrap;
  margin: 30px auto;
}
section#contact-us article ul li {
  flex-basis: 33%;
}
section#contact-us article ul li svg path {
  transition: 0.3s;
}
section#contact-us article ul li svg:hover path {
  fill: rgba(255, 255, 255, 0.7);
}
section#contact-us article ul.social {
  max-width: 260px;
}
section#contact-us article address p {
  font-style: normal;
}
section#contact-us article address p a {
  color: white;
  text-decoration: none;
}
@media screen and (max-width: 1023px) {
  section#contact-us article ul {
    display: flex;
  }
}
form fieldset,
form .fieldset {
  padding: 0;
  border-width: 0;
  margin: 0 auto;
  max-width: 500px;
}
form fieldset.inline input,
form .fieldset.inline input {
  width: auto;
}
form fieldset.inline label,
form .fieldset.inline label {
  display: flex;
  align-items: center;
}
form fieldset.inline label input[type="checkbox"],
form .fieldset.inline label input[type="checkbox"] {
  margin-right: 20px;
}
form fieldset input,
form .fieldset input {
  width: 100%;
  margin-top: 8px;
  margin-bottom: 8px;
  padding: 16px;
  box-sizing: border-box;
  font-size: 1.5rem;
  color: #606878;
  border-width: 3px;
  border-style: solid;
  border-color: transparent;
}
form fieldset input::-webkit-input-placeholder,
form .fieldset input::-webkit-input-placeholder,
form fieldset input::-moz-placeholder,
form .fieldset input::-moz-placeholder,
form fieldset input:-ms-input-placeholder,
form .fieldset input:-ms-input-placeholder,
form fieldset input:-moz-placeholder,
form .fieldset input:-moz-placeholder {
  color: #606878;
}
form fieldset input.error,
form .fieldset input.error {
  border-color: #f1ed0a;
}
form fieldset input[type="submit"],
form .fieldset input[type="submit"] {
  background: #75929e;
  color: white;
  text-transform: uppercase;
  margin: 16px auto;
  cursor: pointer;
  transition: 0.3s;
}
form fieldset input[type="submit"]:hover,
form .fieldset input[type="submit"]:hover {
  background: rgba(117, 146, 158, 0.7);
}
form fieldset label,
form .fieldset label {
  text-align: left;
  color: white;
  display: block;
}
form fieldset .datefield,
form .fieldset .datefield {
  display: flex;
  justify-content: space-between;
}
form fieldset .datefield span,
form .fieldset .datefield span {
  flex-basis: 49%;
}
form fieldset p,
form .fieldset p {
  line-height: 1.1rem;
}
form fieldset p.error-message,
form .fieldset p.error-message {
  color: #f1ed0a;
  text-align: left;
  font-size: 1rem;
}
footer {
  background-color: #606878;
}
footer ul {
  list-style-type: none;
  display: flex;
  max-width: 870px;
  padding: 30px;
  margin: 0 auto;
  justify-content: space-around;
}
footer ul li {
  flex-basis: auto;
}
footer ul li a {
  font-family: "PT Serif", serif;
  font-size: 1em;
  font-weight: 100;
  color: white;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.25rem;
}
footer ul li a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 1023px) {
  footer ul {
    display: block;
  }
  footer ul li {
    text-align: center;
    padding-bottom: 16px;
  }
}
.top-link {
  position: absolute;
  right: 20px;
  display: block;
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 10px 0 0 10px;
  border-width: 0;
  right: 0;
  padding: 60px 20px 10px 20px;
}
.top-link a {
  display: block;
  width: 44px;
  text-align: center;
  color: #606878;
  text-decoration: none;
  font-family: "PT Serif", serif;
  font-size: 20px;
  font-weight: 100;
  text-transform: uppercase;
  cursor: pointer;
  line-height: 1;
}
.top-link a:before {
  display: block;
  top: 10px;
  border-radius: 50%;
  border: 2px solid #606878;
  transition: all 0.3s linear;
  content: "";
  background-image: url(../images/arrow-up-base.svg);
  background-position: center center;
  background-size: 60%;
  background-repeat: no-repeat;
  position: absolute;
  padding: 20px;
  transform: rotate(0deg);
}
.top-link a:hover:before {
  color: white;
  background-color: #606878;
  background-image: url(../images/arrow-up-white.svg);
}
.top-link.fixed {
  position: fixed;
  top: 20px !important;
}
@media screen and (max-width: 1023px) {
  .top-link {
    display: none;
  }
}
.profile-main-loader {
  left: calc(50% - 40px);
  position: fixed;
  top: calc(50% - 40px);
  width: 80px;
  z-index: 2;
  transition: 0.5s;
}
.profile-main-loader .loader {
  position: relative;
  margin: 0px auto;
  width: 80px;
  height: 80px;
}
.profile-main-loader .loader:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.profile-main-loader .loader .circular-loader {
  -webkit-animation: rotate 2s linear infinite;
  animation: rotate 2s linear infinite;
  height: 100%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  margin: auto;
}
.loader-path {
  stroke-dasharray: 150,200;
  stroke-dashoffset: -10;
  -webkit-animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
  animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
  stroke-linecap: round;
}
@-webkit-keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes dash {
  0% {
    stroke-dasharray: 1,200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -124;
  }
}
@keyframes dash {
  0% {
    stroke-dasharray: 1,200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 89,200;
    stroke-dashoffset: -124;
  }
}
