@charset "UTF-8";
*, *::before, *::after {
  box-sizing: border-box;
}
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}
body {
  margin: 0;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #1A2029;
  text-align: left;
  background-color: #fff;
}
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
p {
  margin-top: 0;
  margin-bottom: 1rem;
}
abbr[title], abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}
address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}
ol, ul, dl {
  margin-top: 0;
  margin-bottom: 1rem;
}
ol ol, ul ul, ol ul, ul ol {
  margin-bottom: 0;
}
dt {
  font-weight: 700;
}
dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}
blockquote {
  margin: 0 0 1rem;
}
b, strong {
  font-weight: bolder;
}
small {
  font-size: 80%;
}
sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
a {
  color: #227BBC;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #1364A1;
  text-decoration: underline;
}
a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}
pre, code, kbd, samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}
pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}
figure {
  margin: 0 0 1rem;
}
img {
  vertical-align: middle;
  border-style: none;
}
svg {
  overflow: hidden;
  vertical-align: middle;
}
table {
  border-collapse: collapse;
}
caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}
th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}
label {
  display: inline-block;
  margin-bottom: 0.5rem;
}
button {
  border-radius: 0;
}
button:focus:not(:focus-visible) {
  outline: 0;
}
input, button, select, optgroup, textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
button, input {
  overflow: visible;
}
button, select {
  text-transform: none;
}
[role="button"] {
  cursor: pointer;
}
select {
  word-wrap: normal;
}
button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}
button:not(:disabled), [type="button"]:not(:disabled), [type="reset"]:not(:disabled), [type="submit"]:not(:disabled) {
  cursor: pointer;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type="radio"], input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}
textarea {
  overflow: auto;
  resize: vertical;
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}
output {
  display: inline-block;
}
summary {
  display: list-item;
  cursor: pointer;
}
template {
  display: none;
}
[hidden] {
  display: none !important;
}
.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}
.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}
.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
  color: #6B7280;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.nav-pills .nav-link {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #227BBC;
}
.nav-fill > .nav-link, .nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}
.nav-justified > .nav-link, .nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container, .navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl, .navbar > .container-sm, .navbar > .container-md, .navbar > .container-lg, .navbar > .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}
.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}
.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}
.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}
.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50% / 100% 100% no-repeat;
}
.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}
@media (max-width: 575.98px) {
  .navbar-expand-sm > .container, .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container, .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container, .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container, .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container, .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container, .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1219.98px) {
  .navbar-expand-xl > .container, .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1220px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container, .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container, .navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container, .navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link, .navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}
.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link, .navbar-dark .navbar-nav .active > .nav-link, .navbar-dark .navbar-nav .nav-link.show, .navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-text a {
  color: #fff;
}
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}
.align-baseline {
  vertical-align: baseline !important;
}
.align-top {
  vertical-align: top !important;
}
.align-middle {
  vertical-align: middle !important;
}
.align-bottom {
  vertical-align: bottom !important;
}
.align-text-bottom {
  vertical-align: text-bottom !important;
}
.align-text-top {
  vertical-align: text-top !important;
}
.bg-primary {
  background-color: #227BBC !important;
}
a.bg-primary:hover, a.bg-primary:focus, button.bg-primary:hover, button.bg-primary:focus {
  background-color: #1a5f91 !important;
}
.bg-secondary {
  background-color: #6c757d !important;
}
a.bg-secondary:hover, a.bg-secondary:focus, button.bg-secondary:hover, button.bg-secondary:focus {
  background-color: #545b62 !important;
}
.bg-success {
  background-color: #28a745 !important;
}
a.bg-success:hover, a.bg-success:focus, button.bg-success:hover, button.bg-success:focus {
  background-color: #1e7e34 !important;
}
.bg-info {
  background-color: #17a2b8 !important;
}
a.bg-info:hover, a.bg-info:focus, button.bg-info:hover, button.bg-info:focus {
  background-color: #117a8b !important;
}
.bg-warning {
  background-color: #ffc107 !important;
}
a.bg-warning:hover, a.bg-warning:focus, button.bg-warning:hover, button.bg-warning:focus {
  background-color: #d39e00 !important;
}
.bg-danger {
  background-color: #dc3545 !important;
}
a.bg-danger:hover, a.bg-danger:focus, button.bg-danger:hover, button.bg-danger:focus {
  background-color: #bd2130 !important;
}
.bg-light {
  background-color: #F6F8F8 !important;
}
a.bg-light:hover, a.bg-light:focus, button.bg-light:hover, button.bg-light:focus {
  background-color: #d9e2e2 !important;
}
.bg-dark {
  background-color: #4A525E !important;
}
a.bg-dark:hover, a.bg-dark:focus, button.bg-dark:hover, button.bg-dark:focus {
  background-color: #343941 !important;
}
.bg-white {
  background-color: #fff !important;
}
.bg-transparent {
  background-color: transparent !important;
}
.border {
  border: 1px solid #E1E7EC !important;
}
.border-top {
  border-top: 1px solid #E1E7EC !important;
}
.border-right {
  border-right: 1px solid #E1E7EC !important;
}
.border-bottom {
  border-bottom: 1px solid #E1E7EC !important;
}
.border-left {
  border-left: 1px solid #E1E7EC !important;
}
.border-0 {
  border: 0 !important;
}
.border-top-0 {
  border-top: 0 !important;
}
.border-right-0 {
  border-right: 0 !important;
}
.border-bottom-0 {
  border-bottom: 0 !important;
}
.border-left-0 {
  border-left: 0 !important;
}
.border-primary {
  border-color: #227BBC !important;
}
.border-secondary {
  border-color: #6c757d !important;
}
.border-success {
  border-color: #28a745 !important;
}
.border-info {
  border-color: #17a2b8 !important;
}
.border-warning {
  border-color: #ffc107 !important;
}
.border-danger {
  border-color: #dc3545 !important;
}
.border-light {
  border-color: #F6F8F8 !important;
}
.border-dark {
  border-color: #4A525E !important;
}
.border-white {
  border-color: #fff !important;
}
.rounded-sm {
  border-radius: 0.2rem !important;
}
.rounded {
  border-radius: 0.25rem !important;
}
.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}
.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}
.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}
.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}
.rounded-lg {
  border-radius: 0.3rem !important;
}
.rounded-circle {
  border-radius: 50% !important;
}
.rounded-pill {
  border-radius: 50rem !important;
}
.rounded-0 {
  border-radius: 0 !important;
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}
.d-none {
  display: none !important;
}
.d-inline {
  display: inline !important;
}
.d-inline-block {
  display: inline-block !important;
}
.d-block {
  display: block !important;
}
.d-table {
  display: table !important;
}
.d-table-row {
  display: table-row !important;
}
.d-table-cell {
  display: table-cell !important;
}
.d-flex {
  display: flex !important;
}
.d-inline-flex {
  display: inline-flex !important;
}
@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1220px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}
@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
}
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive::before {
  display: block;
  content: "";
}
.embed-responsive .embed-responsive-item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.embed-responsive-21by9::before {
  padding-top: 42.8571428571%;
}
.embed-responsive-16by9::before {
  padding-top: 56.25%;
}
.embed-responsive-4by3::before {
  padding-top: 75%;
}
.embed-responsive-1by1::before {
  padding-top: 100%;
}
.flex-row {
  flex-direction: row !important;
}
.flex-column {
  flex-direction: column !important;
}
.flex-row-reverse {
  flex-direction: row-reverse !important;
}
.flex-column-reverse {
  flex-direction: column-reverse !important;
}
.flex-wrap {
  flex-wrap: wrap !important;
}
.flex-nowrap {
  flex-wrap: nowrap !important;
}
.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
.flex-fill {
  flex: 1 1 auto !important;
}
.flex-grow-0 {
  flex-grow: 0 !important;
}
.flex-grow-1 {
  flex-grow: 1 !important;
}
.flex-shrink-0 {
  flex-shrink: 0 !important;
}
.flex-shrink-1 {
  flex-shrink: 1 !important;
}
.justify-content-start {
  justify-content: flex-start !important;
}
.justify-content-end {
  justify-content: flex-end !important;
}
.justify-content-center {
  justify-content: center !important;
}
.justify-content-between {
  justify-content: space-between !important;
}
.justify-content-around {
  justify-content: space-around !important;
}
.align-items-start {
  align-items: flex-start !important;
}
.align-items-end {
  align-items: flex-end !important;
}
.align-items-center {
  align-items: center !important;
}
.align-items-baseline {
  align-items: baseline !important;
}
.align-items-stretch {
  align-items: stretch !important;
}
.align-content-start {
  align-content: flex-start !important;
}
.align-content-end {
  align-content: flex-end !important;
}
.align-content-center {
  align-content: center !important;
}
.align-content-between {
  align-content: space-between !important;
}
.align-content-around {
  align-content: space-around !important;
}
.align-content-stretch {
  align-content: stretch !important;
}
.align-self-auto {
  align-self: auto !important;
}
.align-self-start {
  align-self: flex-start !important;
}
.align-self-end {
  align-self: flex-end !important;
}
.align-self-center {
  align-self: center !important;
}
.align-self-baseline {
  align-self: baseline !important;
}
.align-self-stretch {
  align-self: stretch !important;
}
@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1220px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
.float-left {
  float: left !important;
}
.float-right {
  float: right !important;
}
.float-none {
  float: none !important;
}
@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}
@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}
@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}
@media (min-width: 1220px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}
.user-select-all {
  user-select: all !important;
}
.user-select-auto {
  user-select: auto !important;
}
.user-select-none {
  user-select: none !important;
}
.overflow-auto {
  overflow: auto !important;
}
.overflow-hidden {
  overflow: hidden !important;
}
.position-static {
  position: static !important;
}
.position-relative {
  position: relative !important;
}
.position-absolute {
  position: absolute !important;
}
.position-fixed {
  position: fixed !important;
}
.position-sticky {
  position: sticky !important;
}
.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}
.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}
@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}
.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}
.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}
.shadow-none {
  box-shadow: none !important;
}
.w-25 {
  width: 25% !important;
}
.w-50 {
  width: 50% !important;
}
.w-75 {
  width: 75% !important;
}
.w-100 {
  width: 100% !important;
}
.w-auto {
  width: auto !important;
}
.h-25 {
  height: 25% !important;
}
.h-50 {
  height: 50% !important;
}
.h-75 {
  height: 75% !important;
}
.h-100 {
  height: 100% !important;
}
.h-auto {
  height: auto !important;
}
.mw-100 {
  max-width: 100% !important;
}
.mh-100 {
  max-height: 100% !important;
}
.min-vw-100 {
  min-width: 100vw !important;
}
.min-vh-100 {
  min-height: 100vh !important;
}
.vw-100 {
  width: 100vw !important;
}
.vh-100 {
  height: 100vh !important;
}
.m-0 {
  margin: 0 !important;
}
.mt-0, .my-0 {
  margin-top: 0 !important;
}
.mr-0, .mx-0 {
  margin-right: 0 !important;
}
.mb-0, .my-0 {
  margin-bottom: 0 !important;
}
.ml-0, .mx-0 {
  margin-left: 0 !important;
}
.m-1 {
  margin: 0.25rem !important;
}
.mt-1, .my-1 {
  margin-top: 0.25rem !important;
}
.mr-1, .mx-1 {
  margin-right: 0.25rem !important;
}
.mb-1, .my-1 {
  margin-bottom: 0.25rem !important;
}
.ml-1, .mx-1 {
  margin-left: 0.25rem !important;
}
.m-2 {
  margin: 0.5rem !important;
}
.mt-2, .my-2 {
  margin-top: 0.5rem !important;
}
.mr-2, .mx-2 {
  margin-right: 0.5rem !important;
}
.mb-2, .my-2 {
  margin-bottom: 0.5rem !important;
}
.ml-2, .mx-2 {
  margin-left: 0.5rem !important;
}
.m-3 {
  margin: 1rem !important;
}
.mt-3, .my-3 {
  margin-top: 1rem !important;
}
.mr-3, .mx-3 {
  margin-right: 1rem !important;
}
.mb-3, .my-3 {
  margin-bottom: 1rem !important;
}
.ml-3, .mx-3 {
  margin-left: 1rem !important;
}
.m-4 {
  margin: 1.5rem !important;
}
.mt-4, .my-4 {
  margin-top: 1.5rem !important;
}
.mr-4, .mx-4 {
  margin-right: 1.5rem !important;
}
.mb-4, .my-4 {
  margin-bottom: 1.5rem !important;
}
.ml-4, .mx-4 {
  margin-left: 1.5rem !important;
}
.m-5 {
  margin: 3rem !important;
}
.mt-5, .my-5 {
  margin-top: 3rem !important;
}
.mr-5, .mx-5 {
  margin-right: 3rem !important;
}
.mb-5, .my-5 {
  margin-bottom: 3rem !important;
}
.ml-5, .mx-5 {
  margin-left: 3rem !important;
}
.p-0 {
  padding: 0 !important;
}
.pt-0, .py-0 {
  padding-top: 0 !important;
}
.pr-0, .px-0 {
  padding-right: 0 !important;
}
.pb-0, .py-0 {
  padding-bottom: 0 !important;
}
.pl-0, .px-0 {
  padding-left: 0 !important;
}
.p-1 {
  padding: 0.25rem !important;
}
.pt-1, .py-1 {
  padding-top: 0.25rem !important;
}
.pr-1, .px-1 {
  padding-right: 0.25rem !important;
}
.pb-1, .py-1 {
  padding-bottom: 0.25rem !important;
}
.pl-1, .px-1 {
  padding-left: 0.25rem !important;
}
.p-2 {
  padding: 0.5rem !important;
}
.pt-2, .py-2 {
  padding-top: 0.5rem !important;
}
.pr-2, .px-2 {
  padding-right: 0.5rem !important;
}
.pb-2, .py-2 {
  padding-bottom: 0.5rem !important;
}
.pl-2, .px-2 {
  padding-left: 0.5rem !important;
}
.p-3 {
  padding: 1rem !important;
}
.pt-3, .py-3 {
  padding-top: 1rem !important;
}
.pr-3, .px-3 {
  padding-right: 1rem !important;
}
.pb-3, .py-3 {
  padding-bottom: 1rem !important;
}
.pl-3, .px-3 {
  padding-left: 1rem !important;
}
.p-4 {
  padding: 1.5rem !important;
}
.pt-4, .py-4 {
  padding-top: 1.5rem !important;
}
.pr-4, .px-4 {
  padding-right: 1.5rem !important;
}
.pb-4, .py-4 {
  padding-bottom: 1.5rem !important;
}
.pl-4, .px-4 {
  padding-left: 1.5rem !important;
}
.p-5 {
  padding: 3rem !important;
}
.pt-5, .py-5 {
  padding-top: 3rem !important;
}
.pr-5, .px-5 {
  padding-right: 3rem !important;
}
.pb-5, .py-5 {
  padding-bottom: 3rem !important;
}
.pl-5, .px-5 {
  padding-left: 3rem !important;
}
.m-n1 {
  margin: -0.25rem !important;
}
.mt-n1, .my-n1 {
  margin-top: -0.25rem !important;
}
.mr-n1, .mx-n1 {
  margin-right: -0.25rem !important;
}
.mb-n1, .my-n1 {
  margin-bottom: -0.25rem !important;
}
.ml-n1, .mx-n1 {
  margin-left: -0.25rem !important;
}
.m-n2 {
  margin: -0.5rem !important;
}
.mt-n2, .my-n2 {
  margin-top: -0.5rem !important;
}
.mr-n2, .mx-n2 {
  margin-right: -0.5rem !important;
}
.mb-n2, .my-n2 {
  margin-bottom: -0.5rem !important;
}
.ml-n2, .mx-n2 {
  margin-left: -0.5rem !important;
}
.m-n3 {
  margin: -1rem !important;
}
.mt-n3, .my-n3 {
  margin-top: -1rem !important;
}
.mr-n3, .mx-n3 {
  margin-right: -1rem !important;
}
.mb-n3, .my-n3 {
  margin-bottom: -1rem !important;
}
.ml-n3, .mx-n3 {
  margin-left: -1rem !important;
}
.m-n4 {
  margin: -1.5rem !important;
}
.mt-n4, .my-n4 {
  margin-top: -1.5rem !important;
}
.mr-n4, .mx-n4 {
  margin-right: -1.5rem !important;
}
.mb-n4, .my-n4 {
  margin-bottom: -1.5rem !important;
}
.ml-n4, .mx-n4 {
  margin-left: -1.5rem !important;
}
.m-n5 {
  margin: -3rem !important;
}
.mt-n5, .my-n5 {
  margin-top: -3rem !important;
}
.mr-n5, .mx-n5 {
  margin-right: -3rem !important;
}
.mb-n5, .my-n5 {
  margin-bottom: -3rem !important;
}
.ml-n5, .mx-n5 {
  margin-left: -3rem !important;
}
.m-auto {
  margin: auto !important;
}
.mt-auto, .my-auto {
  margin-top: auto !important;
}
.mr-auto, .mx-auto {
  margin-right: auto !important;
}
.mb-auto, .my-auto {
  margin-bottom: auto !important;
}
.ml-auto, .mx-auto {
  margin-left: auto !important;
}
@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0, .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0, .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0, .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0, .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1, .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1, .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1, .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1, .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2, .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2, .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2, .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2, .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3, .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3, .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3, .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3, .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4, .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4, .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4, .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4, .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5, .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5, .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5, .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5, .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0, .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0, .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0, .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0, .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1, .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1, .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1, .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1, .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2, .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2, .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2, .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2, .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3, .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3, .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3, .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3, .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4, .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4, .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4, .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4, .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5, .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5, .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5, .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5, .px-sm-5 {
    padding-left: 3rem !important;
  }
  .m-sm-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1, .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1, .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1, .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1, .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2, .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2, .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2, .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2, .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3, .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3, .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3, .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3, .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4, .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4, .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4, .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4, .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5, .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5, .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5, .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5, .mx-sm-n5 {
    margin-left: -3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto, .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto, .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto, .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto, .mx-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0, .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0, .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0, .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0, .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .mt-md-1, .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1, .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1, .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1, .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2, .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2, .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2, .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2, .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3, .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3, .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3, .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3, .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4, .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4, .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4, .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4, .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5, .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5, .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5, .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5, .mx-md-5 {
    margin-left: 3rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0, .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0, .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0, .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0, .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .pt-md-1, .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1, .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1, .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1, .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2, .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2, .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2, .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2, .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3, .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3, .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3, .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3, .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4, .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4, .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4, .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4, .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5, .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5, .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5, .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5, .px-md-5 {
    padding-left: 3rem !important;
  }
  .m-md-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1, .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1, .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1, .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1, .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2, .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2, .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2, .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2, .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3, .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3, .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3, .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3, .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4, .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4, .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4, .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4, .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5, .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5, .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5, .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5, .mx-md-n5 {
    margin-left: -3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto, .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto, .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto, .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto, .mx-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0, .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0, .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0, .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0, .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .mt-lg-1, .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1, .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1, .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1, .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2, .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2, .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2, .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2, .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3, .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3, .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3, .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3, .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4, .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4, .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4, .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4, .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5, .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5, .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5, .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5, .mx-lg-5 {
    margin-left: 3rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0, .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0, .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0, .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0, .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .pt-lg-1, .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1, .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1, .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1, .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2, .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2, .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2, .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2, .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3, .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3, .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3, .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3, .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4, .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4, .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4, .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4, .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5, .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5, .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5, .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5, .px-lg-5 {
    padding-left: 3rem !important;
  }
  .m-lg-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1, .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1, .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1, .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1, .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2, .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2, .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2, .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2, .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3, .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3, .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3, .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3, .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4, .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4, .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4, .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4, .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5, .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5, .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5, .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5, .mx-lg-n5 {
    margin-left: -3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto, .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto, .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto, .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto, .mx-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1220px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0, .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0, .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0, .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0, .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .mt-xl-1, .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1, .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1, .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1, .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2, .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2, .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2, .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2, .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3, .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3, .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3, .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3, .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4, .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4, .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4, .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4, .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5, .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5, .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5, .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5, .mx-xl-5 {
    margin-left: 3rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0, .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0, .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0, .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0, .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .pt-xl-1, .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1, .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1, .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1, .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2, .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2, .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2, .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2, .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3, .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3, .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3, .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3, .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4, .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4, .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4, .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4, .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5, .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5, .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5, .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5, .px-xl-5 {
    padding-left: 3rem !important;
  }
  .m-xl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1, .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1, .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1, .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1, .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2, .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2, .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2, .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2, .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3, .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3, .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3, .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3, .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4, .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4, .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4, .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4, .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5, .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5, .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5, .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5, .mx-xl-n5 {
    margin-left: -3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto, .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto, .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto, .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto, .mx-xl-auto {
    margin-left: auto !important;
  }
}
.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}
.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}
.text-justify {
  text-align: justify !important;
}
.text-wrap {
  white-space: normal !important;
}
.text-nowrap {
  white-space: nowrap !important;
}
.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.text-left {
  text-align: left !important;
}
.text-right {
  text-align: right !important;
}
.text-center {
  text-align: center !important;
}
@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1220px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}
.text-uppercase {
  text-transform: uppercase !important;
}
.text-capitalize {
  text-transform: capitalize !important;
}
.font-weight-light {
  font-weight: 300 !important;
}
.font-weight-lighter {
  font-weight: lighter !important;
}
.font-weight-normal {
  font-weight: 400 !important;
}
.font-weight-bold {
  font-weight: 700 !important;
}
.font-weight-bolder {
  font-weight: bolder !important;
}
.font-italic {
  font-style: italic !important;
}
.text-white {
  color: #fff !important;
}
.text-primary {
  color: #227BBC !important;
}
a.text-primary:hover, a.text-primary:focus {
  color: #16517b !important;
}
.text-secondary {
  color: #6c757d !important;
}
a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}
.text-success {
  color: #28a745 !important;
}
a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}
.text-info {
  color: #17a2b8 !important;
}
a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}
.text-warning {
  color: #ffc107 !important;
}
a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}
.text-danger {
  color: #dc3545 !important;
}
a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}
.text-light {
  color: #F6F8F8 !important;
}
a.text-light:hover, a.text-light:focus {
  color: #cbd7d7 !important;
}
.text-dark {
  color: #4A525E !important;
}
a.text-dark:hover, a.text-dark:focus {
  color: #282d33 !important;
}
.text-body {
  color: #1A2029 !important;
}
.text-muted {
  color: #6c757d !important;
}
.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}
.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.text-decoration-none {
  text-decoration: none !important;
}
.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}
.text-reset {
  color: inherit !important;
}
.visible {
  visibility: visible !important;
}
.invisible {
  visibility: hidden !important;
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}
.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}
.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}
.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}
.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}
.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}
.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}
.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}
.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}
.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}
.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}
.img-fluid {
  max-width: 100%;
  height: auto;
}
.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}
.figure {
  display: inline-block;
}
.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}
.figure-caption {
  font-size: 90%;
  color: #6c757d;
}
.container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl {
  width: 100%;
  padding-right: 14px;
  padding-left: 14px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}
@media (min-width: 1220px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1180px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -14px;
  margin-left: -14px;
}
.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col, .no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 14px;
  padding-left: 14px;
}
.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}
.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}
.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}
.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}
.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}
.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}
.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}
.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}
.col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}
.col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}
.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}
.col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}
.col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}
.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}
.col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}
.col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}
.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}
.col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}
.col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}
.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}
.order-first {
  order: -1;
}
.order-last {
  order: 13;
}
.order-0 {
  order: 0;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.order-3 {
  order: 3;
}
.order-4 {
  order: 4;
}
.order-5 {
  order: 5;
}
.order-6 {
  order: 6;
}
.order-7 {
  order: 7;
}
.order-8 {
  order: 8;
}
.order-9 {
  order: 9;
}
.order-10 {
  order: 10;
}
.order-11 {
  order: 11;
}
.order-12 {
  order: 12;
}
.offset-1 {
  margin-left: 8.3333333333%;
}
.offset-2 {
  margin-left: 16.6666666667%;
}
.offset-3 {
  margin-left: 25%;
}
.offset-4 {
  margin-left: 33.3333333333%;
}
.offset-5 {
  margin-left: 41.6666666667%;
}
.offset-6 {
  margin-left: 50%;
}
.offset-7 {
  margin-left: 58.3333333333%;
}
.offset-8 {
  margin-left: 66.6666666667%;
}
.offset-9 {
  margin-left: 75%;
}
.offset-10 {
  margin-left: 83.3333333333%;
}
.offset-11 {
  margin-left: 91.6666666667%;
}
@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }
  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }
  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }
  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }
  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.3333333333%;
  }
  .offset-md-2 {
    margin-left: 16.6666666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.3333333333%;
  }
  .offset-md-5 {
    margin-left: 41.6666666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.3333333333%;
  }
  .offset-md-8 {
    margin-left: 66.6666666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.3333333333%;
  }
  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }
  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }
  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }
  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }
  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1220px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
.modal-open {
  overflow: hidden;
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}
.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header, .modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}
.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}
.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}
.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}
.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #E1E7EC;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}
.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}
.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}
.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #E1E7EC;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg, .modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1220px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}
.collapse:not(.show) {
  display: none;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.dropup, .dropright, .dropdown, .dropleft {
  position: relative;
}
.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #1A2029;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}
.dropdown-menu-left {
  right: auto;
  left: 0;
}
.dropdown-menu-right {
  right: 0;
  left: auto;
}
@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1220px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}
.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropleft .dropdown-toggle::after {
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}
.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}
.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}
.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #1A2029;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus {
  color: #101419;
  text-decoration: none;
  background-color: #e9ecef;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #227BBC;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}
.dropdown-menu.show {
  display: block;
}
.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}
.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #1A2029;
}
.carousel {
  position: relative;
}
.carousel.pointer-event {
  touch-action: pan-y;
}
.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}
.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}
.carousel-item.active, .carousel-item-next, .carousel-item-prev {
  display: block;
}
.carousel-item-next:not(.carousel-item-left), .active.carousel-item-right {
  transform: translateX(100%);
}
.carousel-item-prev:not(.carousel-item-right), .active.carousel-item-left {
  transform: translateX(-100%);
}
.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active, .carousel-fade .carousel-item-next.carousel-item-left, .carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}
.carousel-control-prev, .carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev, .carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus, .carousel-control-next:hover, .carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}
.carousel-control-prev {
  left: 0;
}
.carousel-control-next {
  right: 0;
}
.carousel-control-prev-icon, .carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50% / 100% 100% no-repeat;
}
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}
.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}
.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}
.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}
.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control, .input-group > .form-control-plaintext, .input-group > .custom-select, .input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}
.input-group > .form-control + .form-control, .input-group > .form-control + .custom-select, .input-group > .form-control + .custom-file, .input-group > .form-control-plaintext + .form-control, .input-group > .form-control-plaintext + .custom-select, .input-group > .form-control-plaintext + .custom-file, .input-group > .custom-select + .form-control, .input-group > .custom-select + .custom-select, .input-group > .custom-select + .custom-file, .input-group > .custom-file + .form-control, .input-group > .custom-file + .custom-select, .input-group > .custom-file + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control:focus, .input-group > .custom-select:focus, .input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}
.input-group > .form-control:not(:first-child), .input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-file {
  display: flex;
  align-items: center;
}
.input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group:not(.has-validation) > .form-control:not(:last-child), .input-group:not(.has-validation) > .custom-select:not(:last-child), .input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > .form-control:nth-last-child(n + 3), .input-group.has-validation > .custom-select:nth-last-child(n + 3), .input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group-prepend, .input-group-append {
  display: flex;
}
.input-group-prepend .btn, .input-group-append .btn {
  position: relative;
  z-index: 2;
}
.input-group-prepend .btn:focus, .input-group-append .btn:focus {
  z-index: 3;
}
.input-group-prepend .btn + .btn, .input-group-prepend .btn + .input-group-text, .input-group-prepend .input-group-text + .input-group-text, .input-group-prepend .input-group-text + .btn, .input-group-append .btn + .btn, .input-group-append .btn + .input-group-text, .input-group-append .input-group-text + .input-group-text, .input-group-append .input-group-text + .btn {
  margin-left: -1px;
}
.input-group-prepend {
  margin-right: -1px;
}
.input-group-append {
  margin-left: -1px;
}
.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #6B7280;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #E1E7EC;
  border-radius: 0.25rem;
}
.input-group-text input[type="radio"], .input-group-text input[type="checkbox"] {
  margin-top: 0;
}
.input-group-lg > .form-control:not(textarea), .input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}
.input-group-lg > .form-control, .input-group-lg > .custom-select, .input-group-lg > .input-group-prepend > .input-group-text, .input-group-lg > .input-group-append > .input-group-text, .input-group-lg > .input-group-prepend > .btn, .input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}
.input-group-sm > .form-control:not(textarea), .input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}
.input-group-sm > .form-control, .input-group-sm > .custom-select, .input-group-sm > .input-group-prepend > .input-group-text, .input-group-sm > .input-group-append > .input-group-text, .input-group-sm > .input-group-prepend > .btn, .input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}
.input-group-lg > .custom-select, .input-group-sm > .custom-select {
  padding-right: 1.75rem;
}
.input-group > .input-group-prepend > .btn, .input-group > .input-group-prepend > .input-group-text, .input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn, .input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text, .input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn, .input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text, .input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle), .input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .input-group-append > .btn, .input-group > .input-group-append > .input-group-text, .input-group > .input-group-prepend:not(:first-child) > .btn, .input-group > .input-group-prepend:not(:first-child) > .input-group-text, .input-group > .input-group-prepend:first-child > .btn:not(:first-child), .input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}
.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc(-0.5rem - 1px);
}
.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}
.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}
.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}
.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}
.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc(-0.5rem - 1px);
}
.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}
.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}
.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}
.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}
.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.popover-header:empty {
  display: none;
}
.popover-body {
  padding: 0.5rem 0.75rem;
  color: #1A2029;
}
.select {
  padding: 0.5rem 2rem 0.5rem 0.75rem;
  border-radius: 0px;
  border: 1px solid #dee2e6;
  margin-bottom: 1.25rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  background-color: #fff;
  font-size: 1.125rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 95% center;
  background-size: 10px;
}
@media screen and (max-width: 360px) {
  .select {
    padding: 0.75rem 1.25rem 0.75rem 0.75rem;
  }
}
.select::-ms-expand {
  display: none;
  /* Hide the default arrow in Internet Explorer 10 and Internet Explorer 11 */
}
.select:hover {
  cursor: pointer;
}
.select__label {
  font-weight: 700;
  margin-right: 0.5rem;
}
.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #6B7280;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #E1E7EC;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #6B7280;
}
.form-control:focus {
  color: #6B7280;
  background-color: #fff;
  border-color: #77b7e6;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(34, 123, 188, 0.25);
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}
input[type="date"].form-control, input[type="time"].form-control, input[type="datetime-local"].form-control, input[type="month"].form-control {
  appearance: none;
}
select.form-control:focus::-ms-value {
  color: #6B7280;
  background-color: #fff;
}
.form-control-file, .form-control-range {
  display: block;
  width: 100%;
}
.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}
.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}
.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}
.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #1A2029;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}
.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}
.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}
select.form-control[size], select.form-control[multiple] {
  height: auto;
}
textarea.form-control {
  height: auto;
}
.form-group {
  margin-bottom: 1rem;
}
.form-text {
  display: block;
  margin-top: 0.25rem;
}
.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > .col, .form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}
.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}
.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}
.form-check-label {
  margin-bottom: 0;
}
.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}
.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}
.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745;
}
.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .valid-tooltip, .form-row > [class*="col-"] > .valid-tooltip {
  left: 5px;
}
.was-validated :valid ~ .valid-feedback, .was-validated :valid ~ .valid-tooltip, .is-valid ~ .valid-feedback, .is-valid ~ .valid-tooltip {
  display: block;
}
.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}
.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%234A525E' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center / 8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem / calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}
.was-validated .form-check-input:valid ~ .valid-feedback, .was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback, .form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}
.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}
.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}
.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}
.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545;
}
.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}
.form-row > .col > .invalid-tooltip, .form-row > [class*="col-"] > .invalid-tooltip {
  left: 5px;
}
.was-validated :invalid ~ .invalid-feedback, .was-validated :invalid ~ .invalid-tooltip, .is-invalid ~ .invalid-feedback, .is-invalid ~ .invalid-tooltip {
  display: block;
}
.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}
.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%234A525E' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center / 8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 1.75rem / calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}
.was-validated .form-check-input:invalid ~ .invalid-feedback, .was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback, .form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}
.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}
.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group, .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #1A2029;
}
.table th, .table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #E1E7EC;
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #E1E7EC;
}
.table tbody + tbody {
  border-top: 2px solid #E1E7EC;
}
.table-sm th, .table-sm td {
  padding: 0.3rem;
}
.table-bordered {
  border: 1px solid #E1E7EC;
}
.table-bordered th, .table-bordered td {
  border: 1px solid #E1E7EC;
}
.table-bordered thead th, .table-bordered thead td {
  border-bottom-width: 2px;
}
.table-borderless th, .table-borderless td, .table-borderless thead th, .table-borderless tbody + tbody {
  border: 0;
}
.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}
.table-hover tbody tr:hover {
  color: #1A2029;
  background-color: rgba(0, 0, 0, 0.075);
}
.table-primary, .table-primary > th, .table-primary > td {
  background-color: #c1daec;
}
.table-primary th, .table-primary td, .table-primary thead th, .table-primary tbody + tbody {
  border-color: #8cbadc;
}
.table-hover .table-primary:hover {
  background-color: #adcee6;
}
.table-hover .table-primary:hover > td, .table-hover .table-primary:hover > th {
  background-color: #adcee6;
}
.table-secondary, .table-secondary > th, .table-secondary > td {
  background-color: #d6d8db;
}
.table-secondary th, .table-secondary td, .table-secondary thead th, .table-secondary tbody + tbody {
  border-color: #b3b7bb;
}
.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}
.table-hover .table-secondary:hover > td, .table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}
.table-success, .table-success > th, .table-success > td {
  background-color: #c3e6cb;
}
.table-success th, .table-success td, .table-success thead th, .table-success tbody + tbody {
  border-color: #8fd19e;
}
.table-hover .table-success:hover {
  background-color: #b1dfbb;
}
.table-hover .table-success:hover > td, .table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}
.table-info, .table-info > th, .table-info > td {
  background-color: #bee5eb;
}
.table-info th, .table-info td, .table-info thead th, .table-info tbody + tbody {
  border-color: #86cfda;
}
.table-hover .table-info:hover {
  background-color: #abdde5;
}
.table-hover .table-info:hover > td, .table-hover .table-info:hover > th {
  background-color: #abdde5;
}
.table-warning, .table-warning > th, .table-warning > td {
  background-color: #ffeeba;
}
.table-warning th, .table-warning td, .table-warning thead th, .table-warning tbody + tbody {
  border-color: #ffdf7e;
}
.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}
.table-hover .table-warning:hover > td, .table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}
.table-danger, .table-danger > th, .table-danger > td {
  background-color: #f5c6cb;
}
.table-danger th, .table-danger td, .table-danger thead th, .table-danger tbody + tbody {
  border-color: #ed969e;
}
.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}
.table-hover .table-danger:hover > td, .table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}
.table-light, .table-light > th, .table-light > td {
  background-color: #fcfdfd;
}
.table-light th, .table-light td, .table-light thead th, .table-light tbody + tbody {
  border-color: #fafbfb;
}
.table-hover .table-light:hover {
  background-color: #edf3f3;
}
.table-hover .table-light:hover > td, .table-hover .table-light:hover > th {
  background-color: #edf3f3;
}
.table-dark, .table-dark > th, .table-dark > td {
  background-color: #cccfd2;
}
.table-dark th, .table-dark td, .table-dark thead th, .table-dark tbody + tbody {
  border-color: #a1a5ab;
}
.table-hover .table-dark:hover {
  background-color: #bec2c6;
}
.table-hover .table-dark:hover > td, .table-hover .table-dark:hover > th {
  background-color: #bec2c6;
}
.table-active, .table-active > th, .table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td, .table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}
.table .thead-dark th {
  color: #fff;
  background-color: #4A525E;
  border-color: #5b6573;
}
.table .thead-light th {
  color: #6B7280;
  background-color: #e9ecef;
  border-color: #E1E7EC;
}
.table-dark {
  color: #fff;
  background-color: #4A525E;
}
.table-dark th, .table-dark td, .table-dark thead th {
  border-color: #5b6573;
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}
@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1219.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}
/**
 * Recommended styles for all Snapi projects, e.g. for Snapi-generated HTML.
 */
.sn-sh-yt {
  left: 0;
  width: 100%;
  height: 0;
  position: relative;
  padding-bottom: 56.25%;
  margin-bottom: 2em;
}
.sn-sh-yt iframe {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  border: 0;
}
/* // TODO: snapi-admin.scss, or to the admin scaffold, or sth, once we make progress in that direction - meanwhile, please put in project's admin.css
.mcmb { // .model-changelogs-modal-body
  &-changelog {
    border-left: 3px solid #999;
    margin-left: 5px;
    padding-left: 5px;
    margin-bottom: 5px;

    &-header, &-header:hover {
      text-align: left;
      background-color: #ccc;
    }
    &-body {}
  }
}
.mcl { // .model-changelog
  &-load-more[disabled] {
    color: #888;
  }
}
*/
.tiny-gutter {
  margin-left: -4px;
  margin-right: -4px;
}
.tiny-gutter > .col, .tiny-gutter > [class*="col-"] {
  padding-right: 4px;
  padding-left: 4px;
}
.small-gutter {
  margin-left: -8px;
  margin-right: -8px;
}
.small-gutter > .col, .small-gutter > [class*="col-"] {
  padding-right: 8px;
  padding-left: 8px;
}
.med-gutter {
  margin-left: -10px;
  margin-right: -10px;
}
.med-gutter > .col, .med-gutter > [class*="col-"] {
  padding-right: 10px;
  padding-left: 10px;
}
.section-mt-12 {
  margin-top: 0.75rem;
}
.section-mt-2 {
  margin-top: 1.25rem;
}
.section-mt-32 {
  margin-top: 2rem;
}
.section-mt-4 {
  margin-top: 2.5rem;
}
.section-mt-48 {
  margin-top: 3rem;
}
.section-mt-56 {
  margin-top: 3.5rem;
}
.section-mt-6 {
  margin-top: 3.75rem;
}
.section-mt-8 {
  margin-top: 5rem;
}
.section-mb-2 {
  margin-bottom: 1.25rem;
}
.section-mb-4 {
  margin-bottom: 4rem;
}
.section-mb-8 {
  margin-bottom: 5rem;
}
.mb-0 {
  margin-bottom: 0;
}
.h-100 {
  height: 100%;
}
.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}
@supports (display: grid) {
  @media (min-width: 992px) {
    .row--grid {
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      grid-auto-rows: auto;
      column-gap: 28px;
      margin-right: 0;
      margin-left: 0;
    }
    .row--grid .col-lg-8 {
      grid-column: 1 / span 8;
      grid-row-start: 1;
      width: 100%;
      flex: 0 0 100%;
      max-width: 100%;
      padding: 0;
    }
    .row--grid .col-lg-4.offset-xl-1.order-2.order-lg-3 {
      grid-column: 9 / span 4;
      grid-row-start: 1;
      grid-row-end: 5;
      margin-left: 0;
      width: 100%;
      flex: 0 0 100%;
      max-width: 100%;
      padding: 0;
    }
    .row--grid .col-lg-8.order-lg-2 {
      grid-column: 1 / span 8;
      grid-row-start: 2;
      width: 100%;
      flex: 0 0 100%;
      max-width: 100%;
      padding: 0;
    }
    .row--grid .col-lg-8.order-lg-3 {
      grid-column: 1 / span 8;
      grid-row-start: 4;
    }
  }
  @media (min-width: 1220px) {
    .row--grid .col-lg-8 {
      grid-column: 1 / span 7;
    }
    .row--grid .col-lg-8.order-lg-2 {
      grid-column: 1 / span 7;
    }
  }
}
@media (min-width: 992px) {
  .col-lg-5th {
    flex: 0 0 20%;
    max-width: 20%;
  }
}
.category-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 576px) {
  .category-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 992px) {
  .category-grid {
    grid-template-columns: repeat(7, 1fr);
  }
}
.grid-12-8-4 {
  display: flex;
  gap: 20px;
}
@media (max-width: 767.98px) {
  .grid-12-8-4 {
    flex-wrap: nowrap;
  }
  .grid-12-8-4 > * {
    flex: 0 0 100%;
    width: 100vw;
    max-width: 100vw;
  }
}
@media (min-width: 768px) {
  .grid-12-8-4 {
    flex-wrap: wrap;
  }
  .grid-12-8-4 > * {
    margin: 0 !important;
  }
  .grid-12-8-4 > *:nth-child(3n + 1) {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .grid-12-8-4 > *:nth-child(3n + 2) {
    flex: 0 0 calc(((100% - 40px) * 2 / 3) + 20px);
    max-width: calc(((100% - 40px) * 2 / 3) + 20px);
  }
  .grid-12-8-4 > *:nth-child(3n + 3) {
    flex: 0 0 calc((100% - 40px) / 3);
    max-width: calc((100% - 40px) / 3);
  }
}
@media (min-width: 768px) {
  .grid-v-5-7 {
    display: grid;
    gap: 20px;
    /*grid-template: // does not repeat: next rows displayed on top of first row
            "a b c" 370px
            "d b f" 130px
            "d e f" 370px;
        > *:nth-child(6n+1) { grid-area: a; }*/
    /* grid-template-rows: repeat(auto-fit, 370px 130px 370px); // does not repeat: next rows get min size
        > * { grid-row: auto / span 2; }
        > *:nth-child(6n+2), > *:nth-child(6n+4), > *:nth-child(6n+5) { grid-row: auto / span 3; }*/
    grid-template: "a b c" "d b f" "d e f";
    grid-auto-flow: row dense;
  }
  .grid-v-5-7 > *:nth-child(6n+1) {
    grid-area: auto/a;
    height: 370px;
  }
  .grid-v-5-7 > *:nth-child(6n+2) {
    grid-area: auto/b/span 2;
    height: 520px;
  }
  .grid-v-5-7 > *:nth-child(6n+3) {
    grid-area: auto/c;
    height: 370px;
  }
  .grid-v-5-7 > *:nth-child(6n+4) {
    grid-area: auto/d/span 2;
    height: 520px;
  }
  .grid-v-5-7 > *:nth-child(6n+5) {
    grid-area: auto/e;
    height: 370px;
  }
  .grid-v-5-7 > *:nth-child(6n+6) {
    grid-area: auto/f/span 2;
    height: 520px;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .grid-v-5-7 > *:nth-child(6n+1), .grid-v-5-7 > *:nth-child(6n+3), .grid-v-5-7 > *:nth-child(6n+5) {
    height: 220px;
  }
  .grid-v-5-7 > *:nth-child(6n+2), .grid-v-5-7 > *:nth-child(6n+4), .grid-v-5-7 > *:nth-child(6n+6) {
    height: 370px;
  }
}
@media (max-width: 767.98px) {
  .grid-v-5-7 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
  .grid-v-5-7 > * {
    height: 260px;
    width: calc(50% - 10px);
    min-width: 150px;
  }
}
@media (max-width: 575.98px) {
  .grid-v-5-7 {
    gap: 10px;
  }
  .grid-v-5-7 > * {
    width: calc(50% - 5px);
  }
}
.grid-v-5-7 .card {
  margin: 0;
  border-radius: 4px;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
}
.ui-display {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #1A2029;
  margin-bottom: 1.75rem;
}
@media (min-width: 768px) {
  .ui-display {
    font-size: 3rem;
  }
}
.ui-head {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #1A2029;
  margin-bottom: 1.75rem;
}
.ui-head--nm {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ui-head {
    font-size: 2.25rem;
  }
}
.ui-subhead {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #1A2029;
  margin-bottom: 1.5rem;
}
.ui-subhead--nm {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ui-subhead {
    font-size: 1.75rem;
  }
}
.ui-tinyhead {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  margin-bottom: 1.25rem;
}
.ui-tinyhead--nm {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ui-tinyhead {
    font-size: 1.375rem;
  }
}
.ui-copy {
  font-size: 1.125rem;
  line-height: 1.7777778;
  color: #1A2029;
}
.weight-700 {
  font-weight: 700;
}
.content-body {
  font-size: 1.125rem;
  line-height: 1.7777778;
}
.content-body > *:first-child {
  margin-top: 0;
}
.content-body > *:last-child {
  margin-bottom: 0;
}
.content-body h2, .content-body h3, .content-body h4, .content-body h5 {
  font-weight: 700;
  margin-bottom: 0.75rem;
  line-height: 1.25;
}
.content-body h2 {
  margin-top: 1.5em;
  letter-spacing: -0.01em;
  font-size: 1.625rem;
}
@media (min-width: 768px) {
  .content-body h2 {
    font-size: 1.75rem;
  }
}
.content-body h3 {
  margin-top: 1.2727em;
  font-size: 1.25rem;
  letter-spacing: -0.01em;
}
@media (min-width: 768px) {
  .content-body h3 {
    font-size: 1.375rem;
  }
}
.content-body p {
  margin-bottom: 1.5em;
}
.content-body ol, .content-body ul, .content-body dl {
  margin-bottom: 1em;
}
.content-body a {
  text-decoration: underline;
}
.content-body a[target="_blank"] {
  word-break: break-all;
}
.content-body a[target="_blank"]:after, .content-body a[href$=".pdf"]:after {
  font-family: "Font Awesome 5 Pro";
  display: inline-block;
  margin-left: 0.25rem;
  font-size: 0.75em;
  top: 0;
  position: relative;
  text-decoration: none;
}
.content-body a[target="_blank"]:after {
  content: " ";
}
.content-body a[href$=".pdf"]:after {
  font-size: 0.75em;
  content: " ";
}
.content-body figure {
  position: relative;
  margin: 0 0 1.5rem 0;
}
.content-body figcaption {
  font-size: 1rem;
  color: #6B7280;
  display: block;
  padding: 0.5rem 0 0;
  line-height: 1.25;
}
.content-body .video {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%;
  background: #ECEFF0;
  margin-bottom: 1.5555em;
}
.content-body .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.content-body table {
  width: 100%;
  margin-bottom: 1.125rem;
}
.content-body table th, .content-body table td {
  vertical-align: top;
  border: 1px solid #dee2e6;
  padding: 0.75rem;
}
.content-body table th {
  font-weight: 700;
  line-height: 1.25;
}
.content-body table p {
  margin-bottom: 0;
}
.content-body table p + p {
  margin-top: 1em;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
body, html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }
  html {
    scroll-behavior: smooth;
  }
}
@media (max-width: 575.98px) {
  .sr-only-xs {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
}
.screenreader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  top: auto;
  padding: 0.375rem 0.75rem;
  border-radius: 32px;
  transform: translateY(-400%);
  transition: transform 0.3s ease-out;
  top: 1.5rem;
  left: 2rem;
  opacity: 0.01;
}
.screenreader-text:focus {
  color: #fff;
  background-color: #227BBC;
  display: inline-block;
  height: auto;
  width: auto;
  position: fixed;
  margin: auto;
  opacity: 1;
  transform: translateY(0);
  z-index: 9999;
}
.icon {
  font-size: 0.875em;
}
.icon--left {
  margin-right: 0.5rem;
}
.icon--right {
  margin-left: 0.5rem;
}
/*!
 * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 */
@font-face {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/webfonts/fa-brands-400.eot);
  src: url(/webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"), url(/webfonts/fa-brands-400.woff2) format("woff2"), url(/webfonts/fa-brands-400.woff) format("woff"), url(/webfonts/fa-brands-400.ttf) format("truetype"), url(/webfonts/fa-brands-400.svg#fontawesome) format("svg");
}
.fab {
  font-family: "Font Awesome 5 Brands";
  font-weight: 400;
}
/*!
 * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 */
@font-face {
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 300;
  font-display: block;
  src: url(/webfonts/fa-light-300.eot);
  src: url(/webfonts/fa-light-300.eot?#iefix) format("embedded-opentype"), url(/webfonts/fa-light-300.woff2) format("woff2"), url(/webfonts/fa-light-300.woff) format("woff"), url(/webfonts/fa-light-300.ttf) format("truetype"), url(/webfonts/fa-light-300.svg#fontawesome) format("svg");
}
.fal {
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
}
/*!
* Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license (Commercial License)
*/
@font-face {
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(/webfonts/fa-regular-400.eot);
  src: url(/webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"), url(/webfonts/fa-regular-400.woff2) format("woff2"), url(/webfonts/fa-regular-400.woff) format("woff"), url(/webfonts/fa-regular-400.ttf) format("truetype"), url(/webfonts/fa-regular-400.svg#fontawesome) format("svg");
}
.far {
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
}
@font-face {
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("./webfonts/fa-solid-900.eot");
  src: url("./webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("./webfonts/fa-solid-900.woff2") format("woff2"), url("./webfonts/fa-solid-900.woff") format("woff"), url("./webfonts/fa-solid-900.ttf") format("truetype"), url("./webfonts/fa-solid-900.svg#fontawesome") format("svg");
}
.fa, .fas {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
}
/*!
 * Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 */
.fa, .fab, .fad, .fal, .far, .fas {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}
.fa-fw {
  text-align: center;
  width: 1.25em;
}
.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit;
}
.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}
.fa-facebook-f:before {
  content: "";
}
.fa-twitter:before {
  content: "";
}
.fa-instagram:before {
  content: "";
}
.fa-youtube:before {
  content: "";
}
.fa-facebook-messenger:before {
  content: "";
}
.fa-whatsapp:before {
  content: "";
}
.fa-tripadvisor:before {
  content: "";
}
.fa-cloud-drizzle:before {
  content: "";
}
.fa-cloud-moon-rain:before {
  content: "";
}
.fa-cloud-moon:before {
  content: "";
}
.fa-cloud-rain:before {
  content: "";
}
.fa-cloud-sun:before {
  content: "";
}
.fa-cloud:before {
  content: "";
}
.fa-clouds:before {
  content: "";
}
.fa-clouds-moon:before {
  content: "";
}
.fa-fog:before {
  content: "";
}
.fa-moon:before {
  content: "";
}
.fa-moon-cloud:before {
  content: "";
}
.fa-snowflake:before {
  content: "";
}
.fa-sun:before {
  content: "";
}
.fa-thunderstorm:before {
  content: "";
}
.fa-thunderstorm-moon:before {
  content: "";
}
.fa-leaf-maple:before {
  content: "";
}
.fa-snowflakes:before {
  content: "";
}
.fa-leaf:before {
  content: "";
}
.fa-bus:before {
  content: "";
}
.fa-train:before {
  content: "";
}
.fa-taxi:before {
  content: "";
}
.fa-car:before {
  content: "";
}
.fa-walking:before {
  content: "";
}
.fa-torii-gate:before {
  content: "";
}
.fa-trees:before {
  content: "";
}
.fa-utensils-alt:before {
  content: "";
}
.fa-bicycle:before {
  content: "";
}
.fa-candle-holder:before {
  content: "";
}
.fa-hot-tub:before {
  content: "";
}
.fa-browser:before {
  content: "";
}
.fa-phone:before {
  content: "";
}
.fa-envelope:before {
  content: "";
}
.fa-calendar:before {
  content: "";
}
.fa-info-circle:before {
  content: "";
}
.fa-atlas:before {
  content: "";
}
.fa-sun-cloud:before {
  content: "";
}
.fa-map-marked:before {
  content: "";
}
.fa-pdf-file:before {
  content: "";
}
.fa-external-link-square:before {
  content: "";
}
.fa-external-link:before {
  content: "";
}
.fa-chevron-right:before {
  content: "";
}
.fa-chevron-left:before {
  content: "";
}
.fa-chevron-up:before {
  content: "";
}
.fa-times:before {
  content: "";
}
.fa-globe:before {
  content: "";
}
.fa-share-alt:before {
  content: "";
}
.fa-print:before {
  content: "";
}
.fa-copy:before {
  content: "";
}
.fa-pause:before {
  content: "";
}
.fa-play:before {
  content: "";
}
.fa-arrow-right:before {
  content: "";
}
.fa-arrow-left:before {
  content: "";
}
.fa-comment:before {
  content: "";
}
.alert-banner {
  position: relative;
  background-color: #227BBC;
  background-color: #09304E;
  background-color: #122635;
  color: #fff;
  padding: 0.75rem;
  font-weight: 500;
  text-align: center;
  z-index: 10;
}
.alert-banner__copy {
  margin: 0;
}
@media (max-width: 767.98px) {
  .alert-banner__copy {
    margin-right: 1rem;
  }
}
.alert-banner__link {
  color: #fff;
  text-decoration: underline;
}
.alert-banner__link:hover, .alert-banner__link:focus {
  color: #fff;
}
.alert-banner__close {
  position: absolute;
  right: 0.25rem;
  top: 0.25rem;
  background-color: transparent;
  color: inherit;
  border: none;
  width: 2rem;
  height: 2rem;
  font-size: 1.5rem;
  line-height: 1;
}
@media (min-width: 768px) {
  .alert-banner__close {
    right: 2.5rem;
    top: 0.5rem;
  }
}
@media (min-width: 768px) {
  .banner-carousel-grid {
    height: calc(100vh - 24rem);
    min-height: 30.5rem;
  }
}
.banner-carousel-grid:after {
  display: none;
}
.banner-carousel-grid .carousel-item {
  overflow: hidden;
  background-color: #ECEFF0;
}
@media (min-width: 576px) {
  .banner-carousel-grid .carousel-item {
    border-radius: 4px;
  }
}
.banner-carousel-grid__mask {
  position: relative;
  padding-top: 66.6%;
}
.banner-carousel-grid__mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 768px) {
  .banner-carousel-grid {
    display: grid;
    grid-column-gap: 8px;
  }
  .banner-carousel-grid .carousel-item {
    opacity: 1;
    display: block;
  }
  .banner-carousel-grid__mask {
    padding-top: 0;
    height: 100%;
  }
  .banner-carousel-grid--2, .banner-carousel-grid--4 {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }
  .banner-carousel-grid--2 .carousel-item:first-child, .banner-carousel-grid--4 .carousel-item:first-child {
    grid-column-start: 1;
    grid-column-end: 2;
    border-radius: 4px 0 0 4px;
  }
  .banner-carousel-grid--2 .carousel-item:last-child, .banner-carousel-grid--4 .carousel-item:last-child {
    grid-column-start: 2;
    border-radius: 0 4px 4px 0;
  }
  .banner-carousel-grid--4 {
    grid-template-columns: 2fr 1fr;
    grid-template-rows: 2fr 1fr;
    grid-row-gap: 8px;
  }
  .banner-carousel-grid--3, .banner-carousel-grid--5 {
    grid-template-columns: 2fr 1fr;
    grid-row-gap: 8px;
    grid-template-rows: auto auto;
  }
  .banner-carousel-grid--3 .carousel-item:first-child, .banner-carousel-grid--5 .carousel-item:first-child {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 1;
    grid-row-end: 3;
    border-radius: 4px 0 0 4px;
  }
  .banner-carousel-grid--3 .carousel-item:nth-child(2), .banner-carousel-grid--5 .carousel-item:nth-child(2) {
    border-radius: 0 4px 0 0;
  }
  .banner-carousel-grid--3 .carousel-item:last-child, .banner-carousel-grid--5 .carousel-item:last-child {
    grid-column-start: 2;
    grid-row-start: 2;
    border-radius: 0 0 4px 0;
  }
  .banner-carousel-grid--5 {
    grid-template-columns: 2fr 1fr 1fr;
  }
}
.cookies {
  display: none;
  z-index: 99999;
  position: fixed;
  bottom: 0rem;
  right: 0rem;
  width: 100%;
  padding: 1.25rem;
  background-color: #202833;
  background-color: #122635;
  color: #fff;
}
@supports (backdrop-filter: blur(20px)) {
  .cookies {
    background-color: rgba(18, 38, 53, 0.85);
    backdrop-filter: blur(20px);
  }
}
@media (min-width: 576px) {
  .cookies {
    max-width: 23.75rem;
    left: 1rem;
    bottom: 1rem;
    right: auto;
    padding: 2rem;
    border-radius: 4px;
  }
}
.cookies__desc {
  display: block;
  margin-bottom: 1rem;
}
.cookies__desc a {
  color: #fff;
  text-decoration: underline;
}
.cookies__button {
  border: none;
  box-shadow: none;
  color: #fff;
  background-color: #227BBC;
  padding: 0.5rem 3rem;
  display: block;
  width: 100%;
  transition: background-color 0.3s ease;
  border-radius: 4px;
}
.cookies__button:hover, .cookies__button:focus {
  background-color: #1364A1;
}
.cookies__show {
  display: block;
}
.breadcrumb {
  font-size: 0.875rem;
  line-height: 1.25;
  color: #1A2029;
  padding-left: 0;
}
.breadcrumb li {
  display: inline;
  list-style-type: none;
}
.breadcrumb li:not(:last-child):after {
  content: "/";
  color: #1A2029;
  display: inline-block;
  margin-right: 0.25rem;
  margin-left: 0.25rem;
}
.breadcrumb li a {
  color: #1A2029;
}
.kngw-breadcrumb {
  font-size: 0.75rem;
  line-height: 1.6;
  color: #1A2029;
  margin: 24px;
  padding-left: 0;
  margin-left: 0;
}
.kngw-breadcrumb li {
  display: inline;
  list-style-type: none;
  margin-left: 0;
}
.kngw-breadcrumb li.current {
  color: #1A2029;
}
.kngw-breadcrumb li:before {
  content: "";
  font-family: "font awesome 5 pro";
  padding-right: 4px;
  font-weight: normal;
  font-size: 0.4375rem;
  line-height: 0.75rem;
  color: #222;
  margin: 0px;
}
.kngw-breadcrumb li:first-child:before {
  content: " ";
  padding-right: 0;
}
.kngw-breadcrumb li a {
  color: #1A2029;
}
.navbar {
  box-shadow: 0 8px 14px 0 rgba(0, 0, 0, 0.03);
  background-color: #fff;
  transition: color 0.3s ease, background-color 0.3s ease;
  z-index: 1020;
}
@media (max-width: 991.98px) {
  .navbar {
    overflow-y: auto;
  }
  .navbar .navbar-brand {
    max-width: calc(100vw - 180px);
  }
}
@media (min-width: 768px) {
  .navbar {
    padding: 0.5rem 2rem;
  }
}
@media (min-width: 992px) {
  .navbar {
    padding: 0rem 2rem;
  }
}
@media (max-width: 575.98px) {
  .navbar .navbar-brand {
    margin-right: 0;
  }
}
@media (max-width: 991.98px) {
  .navbar .navbar-brand {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
  }
}
.navbar .navbar-brand svg {
  max-width: 100%;
}
@media screen and (max-width: 360px) {
  .navbar .navbar-brand svg {
    max-width: min(200px, 100%);
  }
}
@media (min-width: 992px) {
  .navbar .nav-item {
    position: relative;
  }
  .navbar .nav-item:hover:after, .navbar .nav-item:focus:after {
    border-bottom: 4px solid #227BBC;
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 4px;
  }
  .navbar .nav-item:hover .nav-link, .navbar .nav-item:focus .nav-link {
    background-color: #fff;
    color: #227BBC;
  }
  .navbar .nav-item:hover .nav-link__counter, .navbar .nav-item:focus .nav-link__counter {
    color: #1A2029;
  }
}
.navbar .nav-item .nav-link {
  font-weight: 600;
  color: #227BBC;
  font-size: 1rem;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
}
@media (min-width: 992px) {
  .navbar .nav-item .nav-link {
    color: #1A2029;
    height: 5rem;
    padding: 2rem 0.875rem !important;
    line-height: 1;
    font-size: 1.125rem;
  }
}
.navbar .nav-item .nav-link:hover {
  background-color: #fff;
  color: #227BBC;
}
.navbar .nav-item .nav-link__counter {
  font-weight: 400;
}
.navbar .nav-item .nav-link.collapsed {
  color: #1A2029;
}
@media (min-width: 992px) {
  .navbar .nav-item:last-child .nav-link {
    margin-right: -0.5rem;
  }
}
.navbar .nav-item button.nav-link {
  border: none;
  background: none;
}
.navbar .nav-item--lang .dropdown-item {
  color: black !important;
}
@media (min-width: 992px) {
  .navbar .navbar-utility .nav-link {
    padding: 2rem 0.5rem;
  }
}
.navbar .kngw-header__icon:hover:after, .navbar .kngw-header__icon:focus:after {
  display: none;
}
.navbar .kngw-header__icon .nav-link__trip:hover .fa-heart, .navbar .kngw-header__icon .nav-link__trip:focus .fa-heart {
  font-weight: 900;
  color: #c1282f;
}
.navbar .kngw-header__icon .fa-heart {
  color: #c1282f;
}
.navbar .dropdown .dropdown-menu {
  margin-top: 0;
  border: 0;
  border-radius: 0;
  padding: 0.5rem 0 0 0;
}
@media (min-width: 992px) {
  .navbar .dropdown .dropdown-menu {
    border-radius: 0 0 20px 20px;
  }
}
@media (min-width: 992px) {
  .navbar .dropdown .dropdown-menu--wide {
    left: 50%;
    transform: translateX(-50%);
    padding: 1.25rem 0 0 0;
  }
}
@media (min-width: 992px) {
  .navbar .dropdown .dropdown-menu__inner {
    padding: 0 1rem;
  }
  .navbar .dropdown .dropdown-menu__inner--right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
  .navbar .dropdown .dropdown-menu__inner--right .dropdown-item--cta {
    width: auto;
  }
}
.navbar .dropdown .dropdown-menu__inner section {
  margin-right: 1rem;
}
.navbar .dropdown .dropdown-menu .area-tab-item {
  padding: 0;
}
@media (min-width: 576px) {
  .navbar .dropdown .dropdown-menu .area-tab-item section {
    width: 50%;
  }
}
.navbar .dropdown .dropdown-menu .area-tab-item section:last-child {
  margin-right: 0;
}
.navbar .dropdown .dropdown-menu__head {
  text-transform: uppercase;
  font-size: 0.875rem;
  font-weight: 700;
  display: block;
  padding: 0.5rem 1.5rem;
  white-space: nowrap;
}
@media (max-width: 991.98px) {
  .navbar .dropdown .dropdown-menu__head {
    margin-top: 1rem;
    padding: 0.5rem 1rem;
  }
}
.navbar .dropdown .dropdown-menu.collapsing {
  display: block;
}
@media (min-width: 992px) {
  .navbar .dropdown .dropdown-menu.collapsing {
    height: auto !important;
  }
}
@media (min-width: 992px) {
  .navbar .dropdown .dropdown-menu {
    box-shadow: 0px 8px 20px 0px rgba(0, 0, 0, 0.06);
  }
  .navbar .dropdown:hover .dropdown-menu {
    display: block;
    opacity: 1;
  }
}
.navbar .dropdown-item {
  padding: 0.5rem 1.5rem;
  font-weight: 400;
}
.navbar .dropdown-item--cta {
  text-align: center;
  margin-left: auto;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  background-color: #fff;
  padding: 15.5px 55px;
  border-radius: 40px;
  border: 1px solid #DDE2E5;
  font-size: 1rem;
  font-weight: 600;
  color: #227BBC;
}
@media (min-width: 992px) {
  .navbar .dropdown-item--cta {
    font-size: 1.125rem;
  }
}
@media (min-width: 992px) {
  .navbar .dropdown-item--wide {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.navbar .dropdown-item:hover, .navbar .dropdown-item:focus, .navbar .dropdown-item:last-child:hover, .navbar .dropdown-item:last-child:focus {
  color: #227BBC;
  background-color: #fff;
}
@media (min-width: 768px) {
  .navbar .dropdown-item:hover, .navbar .dropdown-item:focus, .navbar .dropdown-item:last-child:hover, .navbar .dropdown-item:last-child:focus {
    color: #227BBC;
    background-color: #F8FAFC;
  }
}
@media (max-width: 991.98px) {
  .navbar-collapse__inner {
    margin-top: 1rem;
    height: calc(100vh - 80px);
  }
}
@media (min-width: 992px) {
  .navbar-collapse__inner {
    margin-left: auto;
    margin-right: auto;
    width: auto;
  }
}
@media (max-width: 991.98px) {
  .navbar-collapse .nav-link {
    padding: 1rem 0rem;
  }
}
@media (max-width: 991.98px) {
  .navbar-collapse .nav-item:not(:last-child) {
    border-bottom: 1px solid #E1E7EC;
  }
}
.navbar-collapse .dropdown-toggle:after {
  display: none;
}
@media (max-width: 991.98px) {
  .navbar-collapse .dropdown-item {
    padding: 0.75rem 0;
    margin-left: 1rem;
    width: calc(100% - 2rem);
  }
  .navbar-collapse .dropdown-item--cta {
    margin-left: 0.25rem;
    padding: 0.75rem 0.75rem;
  }
}
.navbar-collapse .sns a {
  color: #6B7280;
  font-size: 2rem;
}
.navbar-collapse .sns .footer-sns__list a path {
  fill: #6B7280;
}
@media (max-width: 575.98px) {
  .navbar-collapse .sns .footer-sns__list {
    display: flex;
    justify-content: space-between;
  }
}
.navbar-toggler {
  position: relative;
  padding: 0.25rem 0.25rem;
}
.navbar-toggler:not(.collapsed) .navbar-toggler-icon__inner {
  transform: rotate(45deg);
  transition-delay: 0.15s;
}
.navbar-toggler:not(.collapsed) .navbar-toggler-icon__inner:before {
  top: 0;
  transform: rotate(-90deg);
  transition-delay: 0.15s;
  transition: top 0.08s, transform 0.3s ease 0.15s;
}
.navbar-toggler:not(.collapsed) .navbar-toggler-icon__inner:after {
  top: 0;
}
.navbar-toggler-icon__inner {
  display: block;
  position: absolute;
  width: 1.5rem;
  height: 2px;
  background-color: #1A2029;
  top: 18px;
  left: 7px;
  transition: transform 0.3s ease, background-color 0.3s ease;
}
.navbar-toggler-icon__inner:before {
  content: "";
  display: block;
  position: absolute;
  width: inherit;
  height: 2px;
  top: -8px;
  background-color: #1A2029;
  opacity: 1;
  transition: transform 0.3s ease, background-color 0.3s ease, top 0.3s ease;
}
.navbar-toggler-icon__inner:after {
  content: "";
  display: block;
  position: absolute;
  width: inherit;
  height: 2px;
  top: 8px;
  right: 0;
  background-color: #1A2029;
  transition: top 0.08s ease, background-color 0.3s ease;
}
.navbar-utility {
  margin-left: auto;
  margin-right: 0.5rem;
}
@media (min-width: 992px) {
  .navbar-utility {
    margin-right: 0;
  }
}
.navbar-utility .navbar-nav {
  flex-direction: row;
}
.navbar-utility .dropdown-menu {
  position: absolute;
}
.navbar-utility .nav-link {
  padding: 0.5rem;
}
.nav-item__icon--left {
  margin-right: 0.25rem;
}
.nav-item__icon--right {
  margin-left: 0.25rem;
}
@media (max-width: 991.98px) {
  .nav-item--lang {
    display: none;
  }
}
.nav-item--lang .dropdown-item:last-child {
  color: #1A2029;
}
@media (max-width: 991.98px) {
  .nav-link:not(.collapsed) .nav-link__toggle:before {
    transform: rotate(90deg);
    background-color: #227BBC;
  }
  .nav-link__toggle {
    display: block;
    position: absolute;
    width: 28px;
    height: 28px;
    right: 0.5rem;
    top: 1rem;
  }
  .nav-link__toggle:before, .nav-link__toggle:after {
    content: "";
    position: absolute;
    background-color: #1A2029;
  }
  .nav-link__toggle:after {
    width: 16px;
    height: 2px;
    left: 7px;
    top: 13px;
    opacity: 1;
  }
  .nav-link__toggle:before {
    width: 2px;
    height: 16px;
    left: 14px;
    top: 6px;
    transition: transform 0.2s ease;
  }
}
.navbar--transparent:not(.navbar--open) {
  background-color: transparent;
  border-color: transparent;
  box-shadow: none;
}
.navbar--transparent:not(.navbar--open) .navbar-toggler-icon__inner {
  background-color: #fff;
}
.navbar--transparent:not(.navbar--open) .navbar-toggler-icon__inner:after, .navbar--transparent:not(.navbar--open) .navbar-toggler-icon__inner:before {
  background-color: #fff;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-item:hover:after, .navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-item:focus:after, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-item:hover:after, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-item:focus:after {
  display: none;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-item:hover .nav-link, .navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-item:focus .nav-link, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-item:hover .nav-link, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-item:focus .nav-link {
  background-color: #fff;
  color: #1A2029;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-link, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-link {
  color: #fff;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-link:hover, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-link:hover {
  color: #1A2029;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .kngw-header__icon a, .navbar--transparent:not(.navbar--open) .navbar-utility .kngw-header__icon a {
  color: #ffffff;
  text-decoration: none;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-link__trip:hover .fa-heart, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-link__trip:hover .fa-heart {
  color: #c1282f;
}
.navbar--transparent:not(.navbar--open) .navbar-collapse:not(.show) .nav-link__trip .fa-heart, .navbar--transparent:not(.navbar--open) .navbar-utility .nav-link__trip .fa-heart {
  color: #fff;
}
.toolbar {
  background-color: #f8fafc;
  z-index: 1020;
  position: relative;
  height: 4rem;
}
@media (min-width: 992px) {
  .toolbar ~ main .hero-carousel, .toolbar ~ main .hero--transparent {
    margin-top: -9rem;
  }
}
@media (max-width: 991.98px) {
  .toolbar {
    display: none;
  }
}
.toolbar__content {
  display: flex;
  gap: 1.2rem;
  height: 100%;
  align-items: center;
  font-size: 0.875rem;
  margin: 0 2rem;
}
.toolbar__content .spacer {
  flex-grow: 1;
}
.toolbar__link {
  color: #1A2029;
}
.toolbar__link path {
  fill: #1A2029;
}
.toolbar__link--sns {
  font-size: 1rem;
}
.toolbar__link--sns img, .toolbar__link--sns svg {
  height: 1rem;
}
.toolbar__link:hover {
  color: inherit;
}
.toolbar--transparent {
  background-color: transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.toolbar--transparent .toolbar__link {
  color: #fff;
}
.toolbar--transparent .toolbar__link path {
  fill: #fff;
}
.toolbar--dark {
  background-color: #122635;
}
.toolbar--dark .toolbar__link {
  color: #fff;
}
.toolbar--dark .toolbar__link path {
  fill: #fff;
}
.inpage-navtabs, .famous-cat-nav {
  position: -webkit-sticky;
  position: sticky;
  top: 3.5rem;
  border: 1px solid #DDE2E5;
  border-left: none;
  border-right: none;
  background: #fff;
  z-index: 100;
}
@media (min-width: 992px) {
  .inpage-navtabs, .famous-cat-nav {
    top: 5rem;
  }
}
.inpage-navtabs ul.nav, .famous-cat-nav ul.nav {
  gap: 2.25rem;
}
.inpage-navtabs ul.nav .nav-link, .famous-cat-nav ul.nav .nav-link {
  padding: 1.406rem 10px;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 125%;
}
.inpage-navtabs ul.nav .nav-link.active, .famous-cat-nav ul.nav .nav-link.active {
  border-bottom: 3px solid #227BBC;
}
@media (min-width: 768px) and (max-width: 1219.98px) {
  .inpage-navtabs ul.nav, .famous-cat-nav ul.nav {
    flex-wrap: wrap;
    gap: 0;
  }
}
@media (min-width: 1220px) {
  .inpage-navtabs ul.nav, .famous-cat-nav ul.nav {
    justify-content: center;
  }
}
.inpage-navtabs li.nav-item .active, .famous-cat-nav li.nav-item .active {
  color: #227BBC;
}
.inpage-navtabs li.nav-item a, .famous-cat-nav li.nav-item a {
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.25;
  color: #5B5B5B;
  white-space: nowrap;
  overflow: hidden;
}
.inpage-navtabs--top, .famous-cat-nav--top {
  color: #757575;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.25;
  margin-top: 1.25rem;
  margin-bottom: -0.5rem;
}
@media (max-width: 1219.98px) {
  .inpage-navtabs--top, .famous-cat-nav--top {
    margin-bottom: 0;
  }
}
html {
  scroll-padding-top: 4rem;
}
@media (min-width: 576px) {
  .area-navs, .trp-navs, .category-navs, .feature-navs, .pr-navs {
    padding: 2.5rem !important;
  }
}
@media (min-width: 992px) {
  .area-navs, .trp-navs, .category-navs, .feature-navs, .pr-navs {
    min-width: 55rem;
  }
}
@media (min-width: 1220px) {
  .area-navs, .trp-navs, .category-navs, .feature-navs, .pr-navs {
    width: 72rem;
  }
}
.area-navs a:hover, .area-navs a:focus, .trp-navs a:hover, .trp-navs a:focus, .category-navs a:hover, .category-navs a:focus, .feature-navs a:hover, .feature-navs a:focus, .pr-navs a:hover, .pr-navs a:focus {
  text-decoration: none;
}
.area-navs-tabs, .trp-navs-tabs, .category-navs-tabs, .feature-navs-tabs, .pr-navs-tabs {
  border: none;
  flex-wrap: nowrap;
  flex-direction: column;
}
.area-navs-item, .trp-navs-item, .category-navs-item, .feature-navs-item, .pr-navs-item {
  padding: 0.9rem 0;
}
.area-navs-item i, .trp-navs-item i, .category-navs-item i, .feature-navs-item i, .pr-navs-item i {
  padding-right: 5px;
  color: #227BBC;
}
.area-navs-item:hover:after, .area-navs-item:focus:after, .trp-navs-item:hover:after, .trp-navs-item:focus:after, .category-navs-item:hover:after, .category-navs-item:focus:after, .feature-navs-item:hover:after, .feature-navs-item:focus:after, .pr-navs-item:hover:after, .pr-navs-item:focus:after {
  border-bottom: none !important;
}
@media (min-width: 992px) {
  .area-navs-item, .trp-navs-item, .category-navs-item, .feature-navs-item, .pr-navs-item {
    margin: 0;
    padding: 0.9rem 0;
  }
  .area-navs-item:first-child, .trp-navs-item:first-child, .category-navs-item:first-child, .feature-navs-item:first-child, .pr-navs-item:first-child {
    padding-top: 0;
  }
}
.area-navs-link, .trp-navs-link, .category-navs-link, .feature-navs-link, .pr-navs-link {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-weight: 400;
  color: #1A2029;
  font-size: 1.125rem;
  border: none !important;
}
@media (max-width: 575.98px) {
  .area-navs-link, .trp-navs-link, .category-navs-link, .feature-navs-link, .pr-navs-link {
    font-size: 1rem;
  }
}
@media (min-width: 992px) {
  .area-navs-link, .trp-navs-link, .category-navs-link, .feature-navs-link, .pr-navs-link {
    padding: 0 !important;
    line-height: 1.5;
  }
}
.area-navs-link.active, .area-navs-link:hover, .area-navs-link:focus, .trp-navs-link.active, .trp-navs-link:hover, .trp-navs-link:focus, .category-navs-link.active, .category-navs-link:hover, .category-navs-link:focus, .feature-navs-link.active, .feature-navs-link:hover, .feature-navs-link:focus, .pr-navs-link.active, .pr-navs-link:hover, .pr-navs-link:focus {
  color: #227BBC;
  font-weight: 600;
}
@media (min-width: 992px) {
  .area-navs-link.active, .area-navs-link:hover, .area-navs-link:focus, .trp-navs-link.active, .trp-navs-link:hover, .trp-navs-link:focus, .category-navs-link.active, .category-navs-link:hover, .category-navs-link:focus, .feature-navs-link.active, .feature-navs-link:hover, .feature-navs-link:focus, .pr-navs-link.active, .pr-navs-link:hover, .pr-navs-link:focus {
    border-bottom: 0.125rem solid #227BBC !important;
    background-color: #fff;
  }
}
.area-navs--sm-link, .trp-navs--sm-link, .category-navs--sm-link, .feature-navs--sm-link, .pr-navs--sm-link {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-weight: 400;
  color: #1A2029;
  font-size: 1.125rem;
  border: none !important;
}
.area-navs--sm-link:hover, .area-navs--sm-link:focus, .trp-navs--sm-link:hover, .trp-navs--sm-link:focus, .category-navs--sm-link:hover, .category-navs--sm-link:focus, .feature-navs--sm-link:hover, .feature-navs--sm-link:focus, .pr-navs--sm-link:hover, .pr-navs--sm-link:focus {
  color: #1A2029;
}
.area-navs--sm-link.active, .trp-navs--sm-link.active, .category-navs--sm-link.active, .feature-navs--sm-link.active, .pr-navs--sm-link.active {
  color: #227BBC;
  font-weight: 600;
}
@media (min-width: 992px) {
  .area-navs--sm-link.active, .trp-navs--sm-link.active, .category-navs--sm-link.active, .feature-navs--sm-link.active, .pr-navs--sm-link.active {
    border-bottom: 0.125rem solid #227BBC !important;
    background-color: #fff;
  }
}
@media (max-width: 991.98px) {
  .area-navs--sm-link, .trp-navs--sm-link, .category-navs--sm-link, .feature-navs--sm-link, .pr-navs--sm-link {
    font-size: 1rem;
    display: block;
    width: 100%;
  }
  .area-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .trp-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .category-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .feature-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .pr-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before {
    transform: rotate(90deg);
  }
  .area-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .area-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:after, .trp-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .trp-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:after, .category-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .category-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:after, .feature-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .feature-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:after, .pr-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:before, .pr-navs--sm-link:not(.collapsed) .area-navs--sm-link__toggle:after {
    background-color: #227BBC;
  }
  .area-navs--sm-link__toggle, .trp-navs--sm-link__toggle, .category-navs--sm-link__toggle, .feature-navs--sm-link__toggle, .pr-navs--sm-link__toggle {
    display: block;
    position: absolute;
    width: 13px;
    height: 13px;
    right: 0.5rem;
    top: 1rem;
  }
  .area-navs--sm-link__toggle:before, .area-navs--sm-link__toggle:after, .trp-navs--sm-link__toggle:before, .trp-navs--sm-link__toggle:after, .category-navs--sm-link__toggle:before, .category-navs--sm-link__toggle:after, .feature-navs--sm-link__toggle:before, .feature-navs--sm-link__toggle:after, .pr-navs--sm-link__toggle:before, .pr-navs--sm-link__toggle:after {
    content: "";
    position: absolute;
    background-color: #1A2029;
  }
  .area-navs--sm-link__toggle:after, .trp-navs--sm-link__toggle:after, .category-navs--sm-link__toggle:after, .feature-navs--sm-link__toggle:after, .pr-navs--sm-link__toggle:after {
    width: 9px;
    height: 1px;
    left: 8.5px;
    top: 9.6px;
    opacity: 1;
  }
  .area-navs--sm-link__toggle:before, .trp-navs--sm-link__toggle:before, .category-navs--sm-link__toggle:before, .feature-navs--sm-link__toggle:before, .pr-navs--sm-link__toggle:before {
    width: 1px;
    height: 8.5px;
    left: 12.3px;
    top: 6px;
    transition: transform 0.2s ease;
  }
}
@media (min-width: 992px) {
  .area-navs .dropdown-menu__inner, .trp-navs .dropdown-menu__inner, .category-navs .dropdown-menu__inner, .feature-navs .dropdown-menu__inner, .pr-navs .dropdown-menu__inner {
    padding: 0 !important;
  }
}
@media (min-width: 992px) {
  .area-navs__left, .trp-navs__left, .category-navs__left, .feature-navs__left, .pr-navs__left {
    margin-left: 0;
    margin-right: 2.25rem;
  }
}
@media (min-width: 992px) {
  .area-navs__right, .trp-navs__right, .category-navs__right, .feature-navs__right, .pr-navs__right {
    margin-left: 2.25rem;
    margin-right: 2rem;
  }
}
.nav-left-section, .nav-right-section {
  margin-top: 1.88rem;
}
.nav-left-section .dropdown-item, .nav-right-section .dropdown-item {
  margin-bottom: 1rem;
  padding-left: 0.4rem;
  color: #000;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
  white-space: inherit;
}
@media (min-width: 576px) {
  .dm-items--large {
    padding: 2.5rem !important;
  }
}
@media (min-width: 992px) {
  .dm-items--large {
    min-width: 33.9rem;
  }
}
.nav-tab-content {
  margin-top: 1.25rem;
}
@media (min-width: 992px) {
  .nav-tab-content {
    margin-top: 0;
  }
}
.dm-items .row {
  margin-right: -5px;
  margin-left: -5px;
}
@media (min-width: 992px) {
  .dm-items .row {
    margin-right: -8px;
    margin-left: -8px;
  }
}
.dm-items--col {
  padding-right: 0.312rem;
  padding-left: 0.312rem;
}
@media (min-width: 992px) {
  .dm-items--col {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
}
.dm-items--col .dropdown-img {
  margin: 0 0 0.625rem 0;
}
@media (min-width: 992px) {
  .dm-items--col .dropdown-img {
    margin: 0 0 1.25rem 0;
  }
}
.dm-items .dropdown-item {
  width: 100%;
}
.dm-items .dropdown-item--cta {
  text-align: center;
}
@media (min-width: 992px) {
  #desNav {
    left: -13rem;
  }
}
@media (min-width: 1220px) {
  #desNav {
    left: -20rem;
  }
}
@media (min-width: 992px) {
  #rsrcNav {
    left: -22rem;
  }
}
@media (min-width: 1220px) {
  #rsrcNav {
    left: -29rem;
  }
}
@media (min-width: 992px) {
  #trpNav {
    left: -30.5rem;
  }
}
@media (min-width: 1220px) {
  #trpNav {
    left: -38rem;
  }
}
@media (min-width: 992px) {
  #plNav {
    left: -40rem;
  }
}
@media (min-width: 1220px) {
  #plNav {
    left: -47.5rem;
  }
}
.dropdown-img {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
}
.dropdown-img img {
  border-radius: 10px;
}
.dropdown-img .card-overlay__overlay {
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 49.8%, rgba(0, 0, 0, 0.5) 100%);
}
.dropdown-img .card-overlay__title {
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 0.844;
  left: 0;
  right: 0;
  text-align: center;
  bottom: 0.625rem;
  margin-right: 0;
}
@media (min-width: 768px) {
  .dropdown-img .card-overlay__title {
    font-size: 1.125rem;
    line-height: 1.266;
    bottom: 1.25rem;
  }
}
.accordion {
  padding: 0 10px;
}
.accordion-item {
  position: relative;
  border-bottom: 1px solid #E1E7EC;
  padding: 10px 0;
}
.area-tab-content {
  height: 100%;
}
.area-nav__inner {
  position: absolute;
  bottom: 10px;
  right: 10px;
}
@media (max-width: 991.98px) {
  .area-nav--cta {
    margin: 1.25rem 0;
  }
}
header .footer-sns__list {
  border-bottom: 1px solid #E1E7EC;
}
header .language-switcher .dropdown {
  margin-top: 1rem;
}
header .language-switcher .dropdown .dropdown-menu {
  position: absolute;
  top: 50%;
  left: 50px;
  transform: translateY(-100%);
  border: 1px solid #1A2029;
}
header .language-switcher .dropdown .dropdown-toggle::after {
  display: inline-block;
}
.footer {
  background-color: #F8FAFC;
  padding: 4rem 0 1.25rem;
  border-image: linear-gradient(90deg, #297CBA 0%, #042C48 100%) 1;
  border-top-width: 5px;
  border-top-style: solid;
}
@media (min-width: 992px) {
  .footer {
    padding: 5rem 0 2.75rem;
  }
}
.footer a {
  transition: color 0.2s ease;
}
@media (max-width: 399px) {
  .footer .col-6.col-md-3, .footer .col-6.col-md-4 {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.footer__head {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.25;
  color: #042c48;
}
.footer__list {
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}
.footer__list li {
  padding: 0.375rem 0;
  line-height: 1.25;
}
.footer__list a {
  font-size: 1rem;
  color: #1A2029;
}
.footer__list a:hover, .footer__list a:focus {
  text-decoration: underline;
}
.footer__copy {
  font-size: 0.875rem;
  margin-top: 1rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .footer__copy {
    margin-bottom: 0;
  }
}
.footer-lang {
  margin-top: 2rem;
}
.footer-lang__button {
  color: inherit;
  border: 1px solid #E1E7EC;
  border-radius: 50rem;
  padding: 0.5rem;
  display: inline-block;
  background-color: transparent;
  transition: color 0.3s ease, background-color 0.3s ease;
}
.footer-lang__button:hover, .footer-lang__button:focus {
  background-color: #fff;
  color: #042c48;
}
.footer-lang__icon {
  margin-right: 0.5rem;
}
.footer-sns {
  margin-top: 0.5rem;
}
@media (min-width: 992px) {
  .footer-sns {
    margin-top: 2.5rem;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .footer-sns {
    margin-top: 0;
  }
}
.footer-sns__list {
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}
.footer-sns__list img {
  max-height: 1em;
}
.footer-sns__list li {
  display: inline-block;
}
.footer-sns__list li:not(:first-child) a {
  margin-left: 0.5rem;
}
.footer-sns__list a {
  font-size: 1.125rem;
  padding: 0.5rem;
  display: block;
  color: #042c48;
}
.footer-sns__list a svg {
  height: 1em;
}
.footer-sns__list a path {
  fill: #042c48;
}
.footer-sns__list a:hover, .footer-sns__list a:focus {
  color: #227BBC;
}
.footer-sns__list a:hover path, .footer-sns__list a:focus path {
  fill: #227BBC;
}
.footer-disclaimer {
  margin-top: 2.5rem;
}
@media (max-width: 767.98px) {
  .footer-disclaimer {
    margin-top: 1.75rem;
  }
}
.footer-disclaimer__link {
  border: none;
  background-color: transparent;
  color: #1A2029;
  margin-right: 0.75rem;
  display: inline-block;
  padding: 0;
}
@media (max-width: 767.98px) {
  .footer-disclaimer__link {
    margin-top: 0.75rem;
  }
}
.footer-disclaimer__link:last-child {
  margin-right: 0;
}
@media (min-width: 992px) {
  .footer-disclaimer__link:after {
    content: "|";
    display: inline-block;
    margin-left: 0.75rem;
  }
  .footer-disclaimer__link:last-child:after {
    display: none;
  }
}
.footer-disclaimer__link:hover, .footer-disclaimer__link:focus {
  color: inherit;
  text-decoration: underline;
}
.footer-last {
  display: flex;
}
@media (max-width: 767.98px) {
  .footer-last {
    align-items: center;
    margin-top: 0.75rem;
  }
}
.footer-last picture {
  max-width: 25%;
}
@media (min-width: 768px) {
  .footer-last picture {
    max-width: 15%;
  }
}
@media (min-width: 992px) {
  .footer-last picture {
    max-width: 9%;
  }
}
.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
  align-items: center;
  justify-content: center;
}
.pagination--search {
  margin-top: 2.25rem;
}
@media (max-width: 767.98px) {
  .search__pagination {
    display: none;
  }
}
.search__pagination .pagination {
  margin: 0.75rem 0;
}
.search__pagination .pagination li.active > span {
  background-color: #E6F4FF !important;
  color: #1364A1;
}
.search__pagination .pagination li > a, .search__pagination .pagination li > span {
  border: none;
  border-radius: 50%;
  padding: 0.625rem;
  width: 2.5rem;
  height: 2.5rem;
  color: #1A2029;
  display: block;
  text-align: center;
}
.search__pagination .pagination li:not(.disabled) > a:hover, .search__pagination .pagination li:not(.disabled) > a:focus {
  background-color: #F6F8F8;
  text-decoration: none;
}
.search__pagination .pagination li {
  display: inline;
  font-size: 0.875rem;
  margin: 0.1rem;
}
.search__pagination .disabled > a {
  pointer-events: none;
  color: #6B7280 !important;
}
.search__pagination-mobile {
  margin-top: 2rem;
}
@media (min-width: 768px) {
  .search__pagination-mobile {
    display: none;
  }
}
.search__pagination-mobile .pagination {
  border: none;
  justify-content: space-evenly;
}
.search__pagination-mobile .pagination .disabled span {
  pointer-events: none;
  color: #D7D9DB;
  background-color: unset !important;
}
.search__pagination-mobile .pagination li > span {
  border: none;
  padding: 0 0.75rem;
  font-weight: 600;
  font-size: 0.875rem;
  color: #D7D9DB;
}
.search__pagination-mobile .pagination .page__info {
  font-weight: normal;
  display: flex;
  align-items: center;
  color: #1A2029;
  padding: 0.188px 1.88px;
}
.search__pagination-mobile .pagination li > a {
  border: none;
  padding: 0 0.75rem;
  color: #1A2029;
  font-weight: 600;
  font-size: 0.875rem;
}
.search__pagination-mobile .pagination li > a:hover {
  text-decoration: none;
  color: #227BBC;
}
.pagination__results {
  font-weight: normal;
  font-size: 0.875rem;
  line-height: 2.5;
  align-items: center;
  color: rgba(0, 0, 0, 0.54);
}
.tabs {
  margin-top: 0.75rem;
}
@media (max-width: 575.98px) {
  .tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
}
@media (max-width: 575.98px) {
  .tabs .nav-item {
    white-space: nowrap;
  }
}
.tabs .nav-item:not(:first-child) {
  margin-left: 1.25rem;
}
.tabs .nav-link {
  font-weight: 600;
  color: #6B7280;
  padding: 0;
  background-color: #fff;
  border: none;
}
.tabs .nav-link.active {
  color: #1A2029;
}
.tabs .nav-link.active:hover, .tabs .nav-link.active:active, .tabs .nav-link.active:focus {
  color: #1A2029;
  cursor: unset;
}
.tabs .nav-link:hover, .tabs .nav-link:focus {
  color: #227BBC;
}
.tl {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
  overflow-x: auto;
}
.tl > input[type=radio] {
  display: none;
}
.tl-header {
  cursor: pointer;
  text-align: center;
  color: #444444;
  border-bottom: 1px solid #D9D9D9;
  min-width: 90px;
  height: 40px;
  padding: 6px 10px;
  display: inline-block;
}
.tl-header.active, .tl > input[type=radio]:checked + label {
  font-weight: 700;
  color: #227BBC;
  border-bottom: 2px solid #227BBC;
}
.listing-vis {
  flex: 0 0 6.25rem;
}
@media (min-width: 768px) {
  .listing-vis {
    flex: 0 0 13.5rem;
  }
}
@media (min-width: 992px) {
  .listing-vis {
    flex: 0 0 15rem;
  }
}
.listing-gourmet, .listing-map {
  flex: 0 0 5rem;
}
@media (min-width: 768px) {
  .listing-gourmet, .listing-map {
    flex: 0 0 8rem;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .listing-gourmet .listing-img__mask, .listing-map .listing-img__mask {
    padding-top: 100%;
  }
}
.listing-gourmet-content, .listing-map-content {
  align-self: center;
  padding-left: 4%;
}
.listing-gourmet-content h3, .listing-map-content h3 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 112.5%;
  color: #000000;
}
@media (min-width: 768px) {
  .listing-gourmet-content h3, .listing-map-content h3 {
    font-size: 20px;
  }
}
.listing-gourmet-content p, .listing-map-content p {
  font-weight: 400;
  line-height: 150%;
  margin-bottom: 0;
  font-size: 0.875rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (min-width: 768px) {
  .listing-gourmet-content p, .listing-map-content p {
    line-height: 112.5%;
    font-size: 1rem;
  }
}
.listing-img__mask {
  position: relative;
  padding-top: 100%;
  overflow: hidden;
  background-color: #dee2e6;
  margin-bottom: 0;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .listing-img__mask {
    padding-top: 66.6%;
  }
}
.listing-img__mask img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  object-fit: cover;
}
.listing-content {
  margin-right: 0.75rem;
  flex-grow: 1;
}
@media (min-width: 576px) {
  .listing-content {
    margin-right: 1.25rem;
  }
}
@media (min-width: 768px) {
  .listing-content {
    margin-right: 1.5rem;
  }
}
.listing-meta {
  margin-top: 0.5rem;
}
.listing__cat {
  color: #227BBC;
  font-weight: 600;
  margin: 0;
}
.listing__title {
  font-size: 1.25rem;
  line-height: 1.25;
  font-weight: 600;
  margin-top: 0.5rem;
  margin-bottom: 0;
}
.listing__title a {
  color: #1A2029;
  text-decoration: inherit;
  transition: color 0.3s ease;
}
.listing__title a:hover, .listing__title a:focus {
  color: #227BBC;
}
.listing__copy {
  color: #4A525E;
  margin-bottom: 0;
  margin-top: 1.25rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: 1rem;
  line-height: 1.5;
}
.listing__author {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  color: #227BBC;
  margin-bottom: 0.75rem;
  margin-top: 0.75rem;
}
.listing__author--name {
  font-weight: 500;
}
.map-item-list {
  cursor: pointer;
  display: flex;
  padding: 0.625rem;
  gap: 0.625rem;
  color: #000;
}
@media (min-width: 992px) {
  .map-item-list {
    padding: 1rem 0;
  }
  .map-item-list:last-of-type {
    border-bottom: 1px solid #E1E7EC;
  }
}
@media (max-width: 991.98px) {
  .map-item-list {
    border: 1px solid #DDE2E5;
    box-sizing: border-box;
    border-radius: 4px;
  }
}
.map-item-list:active, .map-item-list-active {
  color: #1364A1;
}
.components > .component-list:last-child {
  border-bottom: 1px solid #E1E7EC;
  margin-bottom: 1.75rem;
}
.component-list {
  border-top: 1px solid #E1E7EC;
  padding: 1.25rem 0;
  border-bottom: 1px solid #E1E7EC;
  margin-top: 1em;
  margin-bottom: 1em;
  display: flex;
}
.component-list + .component-list {
  margin-top: -1em !important;
  border-top: none;
  margin-top: 0;
}
.component-list a {
  color: #1A2029;
  text-decoration: none;
}
.component-list a:hover {
  text-decoration: none;
}
.component-list a:hover .component-list__title {
  text-decoration: underline;
}
.component-list__mask {
  position: relative;
  padding-top: 66.6%;
  background-color: #F6F8F8;
  overflow: hidden;
  width: 6.25rem;
  flex: 0 0 6.25rem;
  border-radius: 4px;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}
@media (min-width: 768px) {
  .component-list__mask {
    width: 12.5rem;
  }
}
.component-list__mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.component-list__content {
  margin-left: 0.75rem;
}
@media (min-width: 768px) {
  .component-list__content {
    display: inline-block;
    margin-left: 1.25rem;
    vertical-align: top;
  }
}
.component-list__title {
  margin: 0 !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
}
.component-list__title a {
  color: inherit;
}
.component-list__meta {
  margin-top: 0.5rem !important;
  margin-bottom: 0 !important;
  font-size: 1rem;
}
.component-list__copy {
  margin-top: 0.5rem !important;
  margin-bottom: 0 !important;
  font-size: 1rem;
  display: none;
}
@media (min-width: 768px) {
  .component-list__copy {
    display: block;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }
}
.component-list-simple {
  margin-bottom: 1.555em;
  border: 1px solid #E1E7EC;
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  min-height: 170px;
}
.component-list-simple a {
  text-decoration: none;
}
.component-list-simple a:hover {
  text-decoration: none;
}
.component-list-simple a:hover .component-list-simple__title, .component-list-simple a:focus .component-list-simple__title {
  color: #1364A1;
}
figure.component-list-simple__img {
  margin: 0;
  overflow: hidden;
  aspect-ratio: 0.75;
  flex-shrink: 0;
  max-width: 130px;
}
figure.component-list-simple__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.component-list-simple > .row {
  padding: 20px;
}
.component-list-simple__title {
  margin: 0 !important;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (min-width: 768px) {
  .component-list-simple__title {
    font-size: 1.25rem !important;
  }
}
.component-list-simple__meta {
  font-size: 1rem;
  margin: 0 !important;
  display: flex;
  align-items: baseline;
}
a.component-list-simple__meta:not(:hover) {
  color: #1A2029;
}
.component-list-simple__meta--contain {
  overflow: hidden;
  max-height: 60px;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}
.component-list-simple__cta {
  font-weight: 600;
  font-size: 1rem;
}
.trip-itinerary {
  padding-left: 0;
  list-style: none;
}
.trip-itinerary li:last-of-type .listing-trip {
  border-bottom: 1px solid #E1E7EC;
}
.itinerary {
  padding-left: 0;
  list-style: none;
}
.card {
  position: relative;
  margin-bottom: 2rem;
}
.card:focus .card__title, .card:hover .card__title {
  color: #1364A1;
}
.card__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  letter-spacing: -1ex;
  text-indent: -9999px;
  color: transparent;
  text-decoration: none;
  line-height: 1;
  z-index: 5;
}
.card__action {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  font-size: 1rem;
  color: #1A2029;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 5rem;
  z-index: 6;
  cursor: pointer;
  border: none;
  transition: color 0.2s ease;
}
.card__action:hover {
  color: #1364A1;
}
.card__external {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  font-size: 0.938rem;
  background-color: transparent;
  color: #fff;
  border: none;
  transition: color 0.2s ease;
}
.card__save {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  font-size: 1.25rem;
  color: #fff;
  text-shadow: 0px 3px 7px rgba(0, 0, 0, 0.35);
  z-index: 6;
  transition: opacity 0.3s;
  background: transparent;
  cursor: pointer;
  border: none;
  transition: transform 0.5s ease;
}
.card__save:active {
  transition: transform 0.3s ease;
  transform: scale(0.9);
}
.card__save .fas {
  animation: 0.5s ease 0s forwards 1 like;
}
.card__img-mask {
  position: relative;
  padding-top: 66.7%;
  background-color: #ECEFF0;
  margin: 0;
  overflow: hidden;
  border-radius: 4px;
}
.card__img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.card__title {
  margin-top: 0.5rem;
  margin-bottom: 0.25rem;
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 600;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  transition: color 0.2s ease;
}
.card__meta {
  font-size: 0.875rem;
}
.card__counter i {
  color: #CDD5E0;
  font-size: 0.75rem;
  margin: 0 0.25rem 0 0;
}
.card__counter .like_counts {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #1A2029;
}
.card__counter:after {
  content: "";
  width: 2px;
  height: 2px;
  border-radius: 50%;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  display: inline-block;
  background-color: #1A2029;
  vertical-align: middle;
}
.card__event i {
  color: #CDD5E0;
  font-size: 0.75rem;
  margin: 0 0.25rem 0 0;
}
.card__duration {
  font-size: 0.875rem;
  line-height: 1.187;
  color: #1A2029;
  position: relative;
  display: inline-block;
}
.card__location {
  font-size: 0.875rem;
  line-height: 1.187;
  display: inline-block;
  color: #1A2029;
}
.card__amenity {
  font-size: 0.875rem;
  line-height: 1.187;
  display: block;
  color: #1A2029;
}
.card__banner--coupon, .card__banner--event {
  background-color: #d53333;
  background-color: #fff;
  color: #fff;
  color: #1A2029;
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  border-radius: 4px;
}
.card--news .card__img-mask {
  padding-top: 54%;
}
.card--news h3.card__title {
  font-size: 20px;
  font-weight: 700;
}
.card--news p.card__date {
  color: #757575;
  text-transform: uppercase;
  margin: 12px 0;
}
.card--news p.card__excerpt {
  margin: 12px 0;
  color: #4A525E;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
}
.card-simple {
  display: block;
  margin-bottom: 2.5rem;
}
.card-simple:hover, .card-simple:focus {
  text-decoration: none;
}
.card-simple:hover .card-simple__title, .card-simple:focus .card-simple__title {
  color: #227BBC;
  text-decoration: none;
}
@media (min-width: 992px) {
  .card-simple--tall .card-simple__visual {
    padding-top: 133%;
  }
}
.card-simple--square .card-simple__visual {
  padding-top: 100%;
}
.card-simple--small .card-simple__title {
  font-size: 1.125rem;
  margin-top: 0.5rem;
}
.card-simple--wide.card-simple__visual {
  padding-top: 54%;
}
.card-simple__icon {
  position: absolute;
  color: #fff;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 2.5rem;
  transform: translateY(-50%);
  z-index: 2;
}
.card-simple__visual {
  margin: 0;
  border-radius: 4px;
  position: relative;
  padding-top: 66.6%;
  background-color: #ECEFF0;
}
.card-simple__img {
  border-radius: 4px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.card-simple__title {
  font-size: 1.125rem;
  font-weight: 600;
  color: #1A2029;
  margin-top: 0.75rem;
  line-height: 1.25;
  margin-bottom: 0;
  transition: color 0.3s ease;
}
@media (min-width: 768px) {
  .card-simple__title {
    font-size: 1.25rem;
  }
}
.card-video {
  display: block;
  margin-bottom: 2.5rem;
  color: #1A2029;
}
.card-video:hover, .card-video:focus {
  text-decoration: none;
}
.card-video:hover .card-video__title, .card-video:focus .card-video__title {
  color: #227BBC;
  text-decoration: none;
}
.card-video:hover .card-video__carousel, .card-video:focus .card-video__carousel {
  display: block !important;
  animation: fadeIn 0.5s forwards;
}
.card-video--large:hover .card-video__icon, .card-video--large:focus .card-video__icon {
  opacity: 1;
  transform: translateY(-50%);
}
.card-video--vertical {
  margin-bottom: 28px;
  position: relative;
  border-radius: 4px;
  overflow: hidden;
}
.card-video--vertical .card-video__visual--overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 58%, rgba(42, 42, 42, 0.4) 80.73%, #2F2F2F 102.78%, rgba(0, 0, 0, 0.48) 102.79%);
}
.card-video--vertical .card-video__content-top {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.688rem;
}
@media (min-width: 768px) {
  .card-video--vertical .card-video__content-top {
    padding: 1.875rem;
  }
}
.card-video--vertical .card-video__content-top .card-video__timestamp {
  position: initial;
}
@media (max-width: 767.98px) {
  .card-video--vertical .card-video__content-top .card-video__timestamp {
    padding: 4.43px 8.86px 4.43px 8.86px;
    border-radius: 4.43px;
    font-size: 10px;
  }
}
.card-video--vertical .card-video__content-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.688rem;
  align-items: center;
}
@media (min-width: 768px) {
  .card-video--vertical .card-video__content-bottom {
    padding: 1.875rem;
  }
}
.card-video--vertical .card-video__content-bottom h3.card-video__title {
  font-size: 14px;
  text-align: center;
  font-weight: 700;
  line-height: 112.5%;
  color: #fff;
  margin-bottom: 4px;
}
@media (min-width: 768px) {
  .card-video--vertical .card-video__content-bottom h3.card-video__title {
    font-size: 1.5rem;
    text-align: left;
    margin-bottom: 10px;
  }
}
.card-video--vertical .card-video__content-bottom p.card-video__classicon i {
  font-size: 20px;
  color: #fff;
}
.card-video--vertical .card-video__content-bottom .card-video__location {
  font-size: 10px;
  padding: 4px 16px;
  border-radius: 100px;
  background: #000000BF;
  font-weight: 400;
  line-height: 20px;
  color: #fff;
  text-align: center;
}
@media (max-width: 767.98px) {
  .card-video--vertical .card-video__content-bottom .card-video__location {
    display: block;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .card-video--vertical .card-video__content-bottom .card-video__location {
    font-size: 1rem;
  }
}
.card-video--vertical .card-video__content-bottom .card-video__location i.fa {
  line-height: 20px;
}
.card-video--vertical .card-video__visual {
  padding-top: 150%;
}
.card-video--tbc .card-video__img {
  filter: grayscale(100%) brightness(40%);
}
.card-video--tbc:hover, .card-video--tbc:focus {
  text-decoration: none;
}
.card-video--tbc:hover .card-video__title, .card-video--tbc:focus .card-video__title {
  color: #1A2029;
}
.card-video__date {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  color: #fff;
  text-align: center;
}
.card-video__date-title {
  font-size: 1.375rem;
  font-weight: 700;
  margin: 0;
}
.card-video__date-time {
  font-size: 600;
  font-size: 1.125rem;
  margin-top: 0.5rem;
  margin-bottom: 0;
}
.card-video__visual {
  margin: 0;
  border-radius: 4px;
  position: relative;
  padding-top: 56.25%;
  background-color: #ECEFF0;
}
.card-video__img {
  border-radius: 4px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.card-video__icon {
  position: absolute;
  top: 50%;
  transform: translateY(-40%);
  left: 0;
  right: 0;
  text-align: center;
  font-size: 2rem;
  color: #fff;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 5;
}
.card-video__timestamp {
  position: absolute;
  display: inline-block;
  bottom: 0.5rem;
  right: 0.5rem;
  margin: 0;
  font-weight: 400;
  border-radius: 4px;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  z-index: 5;
}
.card-video__title {
  font-size: 1.125rem;
  font-weight: 600;
  color: #1A2029;
  margin-top: 0.75rem;
  line-height: 1.25;
  margin-bottom: 0;
  transition: color 0.3s ease;
}
@media (min-width: 768px) {
  .card-video__title {
    font-size: 1.375rem;
  }
}
.card-video__carousel {
  border-radius: 4px;
  overflow: hidden;
}
.card-video__carousel .carousel-item--hero:after, .card-video__carousel .carousel-item--hero:before {
  display: none;
}
.card-video__copy {
  margin-top: 0.75rem;
  color: #1A2029;
}
.card-media {
  position: relative;
  display: block;
  margin-bottom: 1.25rem;
  padding-top: 66.6%;
  border-radius: 4px;
}
.card-media:focus .card-media__title, .card-media:hover .card-media__title {
  text-decoration: underline;
}
.card-media__img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
  border-radius: inherit;
}
.card-media__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(14, 49, 74, 0) 30.73%, #0E314A 100%);
  border-radius: 4px;
}
.card-media__icon {
  position: absolute;
  top: 1.25rem;
  left: 1.25rem;
  font-size: 1.5rem;
  color: #fff;
}
.card-media__content {
  position: absolute;
  bottom: 1.25rem;
  right: 1.25rem;
  left: 1.25rem;
  color: #fff;
}
.card-media__title {
  color: #fff;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.25;
  margin: 0;
}
.card-media p {
  margin-top: 0.5rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 600;
}
.spotlist-card {
  margin-bottom: 2rem;
}
.spotlist-card__mask {
  position: relative;
  overflow: hidden;
  padding-top: 150%;
  border-radius: 4px;
  background-color: #ECEFF0;
}
.spotlist-card__mask img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 4px;
  opacity: 0.9;
  -webkit-backface-visibility: hidden;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.spotlist-card__title {
  position: absolute;
  color: #fff;
  bottom: 1.5rem;
  margin-bottom: 0;
  text-shadow: 0px 1px 10px #000;
  font-weight: 700;
  text-align: center;
  font-size: 1.25rem;
  line-height: 1.25;
  width: 100%;
  padding: 0 1rem;
}
@media (min-width: 992px) {
  .spotlist-card__title {
    font-size: 1.375rem;
  }
}
.horizontal-card {
  margin-top: 3.125rem;
  margin-bottom: 3.125rem;
}
.horizontal-card:hover, .horizontal-card:focus {
  text-decoration: none;
}
.horizontal-card:hover span, .horizontal-card:focus span {
  text-decoration: underline;
}
.horizontal-card__wrap {
  height: 8.25rem;
  border-bottom: 1px solid #E1E7EC;
  padding: 1rem 0;
}
.horizontal-card__mask {
  background-color: #ECEFF0;
  display: inline-block;
  position: relative;
  height: 6.25rem;
  width: 9.375rem;
  border-radius: 4px;
  overflow: hidden;
  vertical-align: middle;
}
.horizontal-card__mask img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 4px;
}
.horizontal-card span {
  padding-left: 15px;
  color: black;
  display: inline-block;
  width: calc(100% - 160px);
  vertical-align: middle;
}
@media (min-width: 768px) {
  .horizontal-card span {
    font-size: 0.875rem;
  }
}
.card-overlay {
  position: relative;
  display: block;
  margin-top: 0.125rem;
  margin-bottom: 0.125rem;
}
.card-overlay:focus .card-overlay__title, .card-overlay:hover .card-overlay__title {
  text-decoration: underline;
}
.card-overlay__content {
  position: relative;
  padding-top: 133.33%;
  border-radius: 4px;
  display: block;
}
.card-overlay__img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
  border-radius: inherit;
}
.card-overlay__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(214deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  border-radius: 4px;
}
.card-overlay__right {
  display: flex;
  position: absolute;
  bottom: 1.25rem;
  right: 1rem;
  color: #fff;
}
.card-overlay__date {
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.5;
  padding-right: 0.5rem;
  border-right: 1px solid #fff;
}
.card-overlay__day {
  width: 2.5rem;
  padding-left: 0.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25;
}
.card-overlay__left {
  width: 50%;
  display: block;
  position: absolute;
  bottom: 1.25rem;
  left: 1rem;
  color: #fff;
  margin-right: 1rem;
}
@media (min-width: 768px) {
  .card-overlay__left {
    width: 67%;
  }
}
.card-overlay__name {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
}
.card-overlay__label {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.125;
}
.card-overlay__title {
  position: absolute;
  bottom: 0.75rem;
  left: 0.75rem;
  margin-right: 1rem;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.125;
}
@media (min-width: 576px) {
  .card-overlay__title {
    bottom: 1rem;
    left: 1rem;
  }
}
.card-overlay-c {
  position: relative;
  display: block;
  margin-bottom: 1.25rem;
}
.card-overlay-c:focus .card-overlay-c__title, .card-overlay-c:hover .card-overlay-c__title {
  text-decoration: underline;
}
.card-overlay-c--small .card-overlay-c__content {
  padding-top: 50%;
}
.card-overlay-c--small .card-overlay-c__title {
  bottom: auto;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.25rem;
  padding: 0 1rem;
}
.card-overlay-c--planning, .card-overlay-c--example_trip {
  border-radius: 4px;
}
.card-overlay-c--planning .card-overlay-c__content, .card-overlay-c--example_trip .card-overlay-c__content {
  padding-top: 50%;
}
.card-overlay-c--planning .card-overlay-c__title, .card-overlay-c--example_trip .card-overlay-c__title {
  text-align: left;
  font-weight: 600;
  font-size: 1.375rem;
  line-height: 1.25;
  padding: 0 1rem;
}
@media (min-width: 768px) {
  .card-overlay-c--example_trip .card-overlay-c__content {
    padding-top: 109%;
  }
}
@media (min-width: 992px) {
  .card-overlay-c--example_trip .card-overlay-c__content {
    padding-top: 107%;
  }
}
@media (min-width: 1220px) {
  .card-overlay-c--example_trip .card-overlay-c__content {
    padding-top: 105%;
  }
}
.card-overlay-c__content {
  position: relative;
  padding-top: 66.6%;
  border-radius: 4px;
  display: block;
}
.card-overlay-c__img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
  border-radius: inherit;
}
.card-overlay-c__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.6) 100%);
  border-radius: 4px;
}
.card-overlay-c__title {
  position: absolute;
  bottom: 1.25rem;
  margin-right: 1rem;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.125;
  text-align: center;
  margin-bottom: 0;
  width: 100%;
  text-align: center;
}
.coi {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  height: 0;
  padding-top: 66%;
  display: inline-block;
  width: 100%;
}
.coi::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.2);
}
.coi__img {
  position: absolute;
  top: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.coi__overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  color: white;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
  text-wrap: balance;
}
.coi__icon i {
  font-size: 30px;
}
.coi__icon svg {
  height: 30px;
}
@media (min-width: 768px) {
  .coi__icon i {
    font-size: 50px;
  }
  .coi__icon svg {
    height: 50px;
  }
}
.coi__label {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 18px;
  font-weight: 600;
}
@media (min-width: 768px) {
  .coi__label {
    font-size: 25px;
  }
}
.coi img {
  transition: all 0.3s;
}
.coi:hover img {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.luxury-card-overlay__overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 20px 50px;
  text-align: center;
  color: white;
  z-index: 1;
}
.luxury-card-overlay::after {
  content: none;
}
.cards-scroll, .cards-scroll-video {
  display: block;
  position: relative;
}
@media (min-width: 992px) {
  .cards-scroll-gourmet, .cards-scroll-map, .cards-scroll-video-gourmet, .cards-scroll-video-map {
    height: 34rem;
    overflow-y: scroll;
    border: 1px solid #E1E7EC;
    padding-left: 1rem;
    border-right: 0;
  }
}
@media (max-width: 575.98px) {
  .cards-scroll-gourmet ul, .cards-scroll-map ul, .cards-scroll-video-gourmet ul, .cards-scroll-video-map ul {
    overflow-x: scroll;
    margin-right: -10px;
  }
}
.cards-scroll__nav, .cards-scroll-video__nav {
  display: inline-block;
  position: absolute;
  color: #222;
  background-color: #fff;
  width: 3rem;
  height: 3rem;
  border: none;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  border-radius: 100%;
  border: 1px solid #E1E7EC;
  transition: color 0.3s ease, background-color 0.3s ease;
  display: none;
}
@media (min-width: 576px) {
  .cards-scroll__nav, .cards-scroll-video__nav {
    display: inline-block;
    pointer-events: all;
  }
}
.cards-scroll__nav:hover, .cards-scroll-video__nav:hover {
  background-color: #F2F7F7;
}
.cards-scroll__nav--left, .cards-scroll-video__nav--left {
  left: -1.5rem;
}
.cards-scroll__nav--right, .cards-scroll-video__nav--right {
  right: -1.5rem;
}
.cards-scroll ul, .cards-scroll-video ul {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 0;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.cards-scroll ul::-webkit-scrollbar, .cards-scroll-video ul::-webkit-scrollbar {
  display: none;
}
.cards-scroll__item, .cards-scroll-video__item {
  flex-shrink: 0;
  flex-grow: 0;
  scroll-snap-align: start;
  margin-right: 10px;
  width: calc((100% - (2 * 14px) + 1rem) / 2 - 10px);
}
.cards-scroll__item:last-child, .cards-scroll-video__item:last-child {
  margin-right: 0;
}
.cards-scroll__item > .card-simple, .cards-scroll__item > .card-overlay-c, .cards-scroll-video__item > .card-simple, .cards-scroll-video__item > .card-overlay-c {
  margin-bottom: 0;
}
.cards-scroll__item > .card-article, .cards-scroll-video__item > .card-article {
  border-top: 0;
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 576px) {
  .cards-scroll__item, .cards-scroll-video__item {
    width: calc((100% + 1rem) / 2 - 10px);
  }
}
@media (min-width: 768px) {
  .cards-scroll__item, .cards-scroll-video__item {
    width: calc((100% + 1rem) / 2 - 1.25rem);
    margin-right: 1.25rem;
  }
}
@media (min-width: 992px) {
  .cards-scroll__item, .cards-scroll-video__item {
    width: calc((100% + 1rem) / 4 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .cards-scroll__item, .cards-scroll-video__item {
    width: calc((100% + 1.25rem) / 4 - 1.25rem);
  }
}
.cards-scroll__item--gm, .cards-scroll-video__item--gm {
  width: calc(100% / 1.1);
}
@media (max-width: 575.98px) {
  .cards-scroll__item--gm, .cards-scroll-video__item--gm {
    margin-right: 1.25rem;
  }
  .cards-scroll__item--gm:last-child, .cards-scroll-video__item--gm:last-child {
    margin-right: 10px;
  }
}
@media (min-width: 768px) {
  .cards-scroll__item--gm, .cards-scroll-video__item--gm {
    width: 95%;
  }
}
.cards-scroll__item--ft, .cards-scroll-video__item--ft {
  width: calc((100% - (2 * 14px) + 1rem) / 1 - 1.25rem);
}
@media (min-width: 576px) {
  .cards-scroll__item--ft, .cards-scroll-video__item--ft {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .cards-scroll__item--ft, .cards-scroll-video__item--ft {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .cards-scroll__item--ft, .cards-scroll-video__item--ft {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .cards-scroll__item--ft, .cards-scroll-video__item--ft {
    width: calc((100% + 1.25rem) / 4 - 1.25rem);
  }
}
.cards-scroll__item--recommended, .cards-scroll-video__item--recommended {
  width: calc((100% - (2 * 14px) + 1rem) / 1 - 1.25rem);
}
@media (min-width: 768px) {
  .cards-scroll__item--recommended, .cards-scroll-video__item--recommended {
    width: 100%;
  }
}
.cards-scroll__item--text, .cards-scroll-video__item--text {
  width: 100%;
}
@media (min-width: 576px) {
  .cards-scroll__item--md, .cards-scroll-video__item--md {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .cards-scroll__item--md, .cards-scroll-video__item--md {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .cards-scroll__item--md, .cards-scroll-video__item--md {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .cards-scroll__item--md, .cards-scroll-video__item--md {
    width: calc((100% + 1.25rem) / 3 - 1.25rem);
  }
}
.cards-scroll__item--overlay, .cards-scroll-video__item--overlay {
  border-radius: 0.5rem;
  background: linear-gradient(90deg, #0B283C 0%, rgba(11, 40, 60, 0) 50.14%);
}
.cards-scroll__item--video, .cards-scroll-video__item--video {
  width: calc(100% - 3.25rem);
}
@media (min-width: 576px) {
  .cards-scroll__item--video, .cards-scroll-video__item--video {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
.cards-scroll__item--about, .cards-scroll-video__item--about {
  width: 100%;
}
.cards-scroll__item--about figure, .cards-scroll-video__item--about figure {
  padding-top: 80%;
}
@media (min-width: 576px) {
  .cards-scroll__item--about, .cards-scroll-video__item--about {
    width: calc((100% - (2 * 14px) + 1rem) / 2 - 1.25rem);
  }
  .cards-scroll__item--about figure, .cards-scroll-video__item--about figure {
    padding-top: 66.6%;
  }
}
@media (min-width: 768px) {
  .cards-scroll__item--about, .cards-scroll-video__item--about {
    width: calc((100% + 1rem) / 4 - 1.25rem);
  }
}
.cards-scroll__item--feature, .cards-scroll-video__item--feature {
  width: 100%;
}
@media (min-width: 768px) {
  .cards-scroll__item--feature, .cards-scroll-video__item--feature {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
@media (min-width: 576px) {
  .cards-scroll__item--small, .cards-scroll-video__item--small {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .cards-scroll__item--small, .cards-scroll-video__item--small {
    width: calc((100% + 1rem) / 4 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .cards-scroll__item--small, .cards-scroll-video__item--small {
    width: calc((100% + 1rem) / 5 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .cards-scroll__item--small, .cards-scroll-video__item--small {
    width: calc((100% + 1.25rem) / 6 - 1.25rem);
  }
}
.cards-scroll__item--sdg, .cards-scroll-video__item--sdg {
  flex-shrink: 0;
  flex-grow: 0;
  scroll-snap-align: start;
  margin-right: 1.25rem;
  width: calc((100% + 1rem) - 1.25rem);
}
@media (min-width: 576px) {
  .cards-scroll__item--sdg, .cards-scroll-video__item--sdg {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .cards-scroll__item--sdg, .cards-scroll-video__item--sdg {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
.cards-scroll__dots, .cards-scroll-video__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.5rem;
}
@media (min-width: 576px) {
  .cards-scroll__dots, .cards-scroll-video__dots {
    display: none;
  }
}
.cards-scroll__dots--items, .cards-scroll-video__dots--items {
  width: 8px;
  height: 8px;
  padding: 0;
  border-radius: 50%;
  background: #BFCCD8;
  border: 1px solid #227BBC;
  margin-right: 3px;
}
.cards-scroll__dots .active, .cards-scroll-video__dots .active {
  background: #227BBC;
}
.cards-scroll-nav {
  position: absolute;
  top: 0;
  pointer-events: none;
}
.cards-scroll-nav--left {
  left: 0;
}
.cards-scroll-nav--right {
  right: 0;
}
@media (min-width: 576px) {
  .cards-scroll-nav {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .cards-scroll-nav {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .cards-scroll-nav {
    width: calc((100% + 1rem) / 4 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .cards-scroll-nav {
    width: calc((100% + 1.25rem) / 4 - 1.25rem);
  }
}
@media (min-width: 576px) {
  .cards-scroll-nav--md {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .cards-scroll-nav--md {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .cards-scroll-nav--md {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .cards-scroll-nav--md {
    width: calc((100% + 1.25rem) / 3 - 1.25rem);
  }
}
.cards-scroll-nav__wrap {
  padding-top: 66.6%;
  pointer-events: none;
}
.cards-scroll-nav__sdg {
  padding-top: 65%;
  pointer-events: none;
}
@media (min-width: 768px) {
  .cards-scroll-nav__sdg {
    padding-top: 45%;
  }
}
@media (min-width: 992px) {
  .cards-scroll-nav__sdg {
    padding-top: 85%;
  }
}
.sdg-nav {
  width: calc((100% + 1rem) / 2 - 1.25rem);
}
@media (min-width: 576px) {
  .sdg-nav {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .sdg-nav {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .sdg-nav {
    width: calc((100% + 1rem) / 4 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .sdg-nav {
    width: calc((100% + 1.25rem) / 4 - 1.25rem);
  }
}
@media (max-width: 400px) {
  .cards-scroll__item--small .card-overlay__title {
    font-size: clamp(1rem, 5vw, 1.25rem);
  }
}
.card-article {
  position: relative;
}
.card-article:focus-within {
  outline-offset: 1px;
  outline: 1px #227BBC;
  outline: 1px auto -webkit-focus-ring-color;
}
.card-article__link {
  color: #1A2029;
}
.card-article__link:hover, .card-article__link:focus {
  color: #1A2029;
  outline: 0;
}
.card-article__mask {
  width: 100%;
  position: relative;
  padding-top: 66.6%;
  margin: 0;
  border-radius: 4px;
}
.card-article__mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
}
.card-article__cat {
  margin-top: 0.75rem;
  font-size: 0.875rem;
  margin-bottom: 0;
  color: #227BBC;
  font-weight: 600;
  display: inline-block;
}
.card-article__title {
  font-size: 1.125rem;
  line-height: 1.375;
  color: #1A2029;
  font-weight: 600;
  margin-top: 0.5rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media (max-width: 767.98px) {
  .card-article {
    border-top: 1px solid #E1E7EC;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .card-article--small {
    display: flex;
    flex-direction: row-reverse;
  }
  .card-article--small .card-article__content {
    flex: 1 1 auto;
  }
  .card-article--small .card-article__visual {
    width: 7.5rem;
    margin-left: 0.5rem;
    flex: 0 0 7.5rem;
  }
  .card-article--small .card-article__cat {
    margin-top: 0;
  }
}
@media (max-width: 359.98px) {
  .card-article--small .card-article__visual {
    flex: 0 0 5rem;
  }
  .card-article--small .card-article__title {
    font-size: 1rem;
  }
}
@media (max-width: 767.98px) {
  .newsfeed__item:first-child .card-article {
    border-top: 0;
    padding-top: 0;
  }
}
@media (max-width: 767.98px) {
  .newsfeed__item:last-child .card-article {
    border-bottom: 1px solid #E1E7EC;
  }
}
.card-reference {
  box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.08);
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  margin-bottom: 2.5rem;
  width: 100%;
  position: relative;
}
.card-reference__icon {
  display: inline-block;
  background-color: #156FB1;
  width: 3rem;
  height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px 0 4px 0;
}
.card-reference__icon i {
  color: #fff;
}
.card-reference__content {
  padding: 0.75rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  flex: 1 0 auto;
  width: 100%;
}
.card-reference__title {
  margin: 0;
  margin-bottom: 0.5rem;
}
.card-reference p {
  margin-bottom: 1.25rem;
}
.card-reference__link {
  margin-top: auto;
  font-weight: 600;
  display: inline-block;
}
.events-seasons .card-overlay__blurb {
  position: absolute;
  bottom: 16px;
  left: 16px;
  right: 16px;
}
.events-seasons .card-overlay__blurb .icon, .events-seasons .card-overlay__blurb .title {
  color: white;
  font-weight: 700;
  font-size: 24px;
  line-height: 33px;
  margin: 0;
}
.events-seasons .card-overlay__blurb .icon i {
  font-weight: 400;
  font-size: 22px;
  line-height: 20px;
}
.events-seasons .card-overlay__blurb .title {
  font-weight: 700;
  font-size: 24px;
  line-height: 33px;
}
@media (max-width: 575.98px) {
  .events-seasons {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
  }
  .events-seasons .events-season-card {
    min-width: 267px;
    scroll-snap-align: start;
  }
}
@media (max-width: 575.98px) and (hover: none) {
  .events-seasons {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .events-seasons::-webkit-scrollbar {
    display: none;
  }
}
.events-seasons .card-overlay:focus .title, .events-seasons .card-overlay:hover .title {
  text-decoration: underline;
}
.card--course-portrait {
  width: 100%;
  padding-top: 150%;
}
.card--course-portrait a {
  background: linear-gradient(180deg, rgba(14, 49, 74, 0) 30.73%, #0E314A 100%);
}
.card--course-portrait figure {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.card--course-portrait .card__title {
  position: absolute;
  bottom: 12px;
  left: 12px;
  right: 12px;
  color: white;
  z-index: 6;
  font-size: 1.2rem;
}
.card--course-portrait:hover .card__title {
  color: white;
}
.card--course-portrait .card__duration {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 6px 12px;
  background-color: #F8FAFC;
  border-radius: 4px;
  font-weight: 600;
}
.card--course-portrait .card__duration i:before {
  font-weight: 300;
}
.card.card--transit-pass-detailed {
  margin: 0;
  align-items: center;
}
.card.card--transit-pass-detailed:hover .card__title {
  color: black;
}
.card.card--transit-pass-detailed figure {
  aspect-ratio: 1.5;
}
.card.card--transit-pass-detailed .card__content {
  padding-left: 0;
}
@media (min-width: 768px) {
  .card.card--transit-pass-detailed .card__content {
    padding-left: 32px;
  }
}
.card.card--transit-pass-detailed h3 {
  font-size: 2rem;
}
.card.card--transit-pass-detailed .button {
  width: 12rem;
}
@media (min-width: 768px) {
  .card.card--transit-pass-detailed.card--first figure {
    position: relative;
    aspect-ratio: 3;
    margin: 0 0 1.5rem;
  }
  .card.card--transit-pass-detailed.card--first .card__content {
    padding-left: 0;
  }
}
a.ctp--banner {
  display: flex;
  gap: 16px;
  align-items: center;
}
a.ctp--banner figure {
  margin: 0;
}
a.ctp--banner img {
  width: 250px;
  height: 100px;
  object-fit: cover;
}
a.ctp--banner h3 {
  font-family: "Open Sans", Palatino, Palladio, "URW Palladio L", "Book Antiqua", Baskerville, "Bookman Old Style", "Bitstream Charter", "Nimbus Roman No9 L", Garamond, "Apple Garamond", "ITC Garamond Narrow", "New Century Schoolbook", "Century Schoolbook", "Century Schoolbook L", Georgia, serif;
}
.card--itinerary {
  .margin-bottom: 2.5rem;
}
.card--itinerary img {
  width: 100%;
}
.card--itinerary .card__image-placeholder {
  width: 100%;
  border-radius: 4px;
  overflow: hidden;
}
.card--itinerary__link, .card--itinerary__link:hover {
  color: black;
  text-decoration: none;
}
.card--itinerary .card__content-area {
  border: 1px solid black;
  border-radius: 50px;
  padding: 4px 16px;
  display: inline-block;
}
@media (max-width: 575.98px) {
  .card--itinerary .card__content-area {
    padding: 0 15px;
  }
  .card--itinerary h2 {
    font-size: 20px;
  }
}
.card--itinerary .card__image-placeholder {
  margin-bottom: 25px;
}
.card--itinerary .card__content > * {
  margin-bottom: 15px;
}
.card--itinerary .cib {
  position: absolute;
  top: 20px;
  left: 20px;
  background-color: rgba(255, 255, 255, 0.85);
  border-radius: 5px;
  padding: 6px 10px;
  font-weight: 600;
}
.card--itinerary .cib--sustainable {
  color: #00B589;
}
.card--itinerary .cib--new {
  padding: 6px 10px;
  background: #FFE500;
}
@media (max-width: 767.98px) {
  .card--itinerary--mini {
    display: flex;
    gap: 10px;
    align-items: center;
  }
  .card--itinerary--mini img {
    height: 100%;
    object-fit: cover;
  }
  .card--itinerary--mini .card__image-placeholder {
    width: 40vw;
    height: 40vw;
    flex-shrink: 0;
    position: relative;
  }
  .card--itinerary--mini .card__content-title {
    font-size: 1rem;
  }
  .card--itinerary--mini .card__content-text {
    display: none;
  }
  .card--itinerary--mini .cib {
    left: 50%;
    transform: translateX(-50%);
    top: 10px;
    text-wrap: nowrap;
  }
}
.card--itinerary img {
  transition: all 0.3s;
}
.card--itinerary:hover img {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
@keyframes like {
  0% {
    transform: scale(0.9);
    color: white;
  }
  33% {
    transform: scale(1.25);
  }
  66% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.nav-card--3 {
  height: 21.875rem;
}
.nav-card--6 {
  height: 10.313rem;
  padding-top: 62.3%;
}
.nav-card--4 {
  height: 10.313rem;
  padding-top: 40.9%;
}
.nav-card--2 {
  padding-top: 86.9%;
}
@media (min-width: 992px) {
  .nav-card--2 {
    height: 21.875rem;
  }
}
.nav-card--7 {
  height: 10.313rem;
  padding-top: 85.8%;
}
.nav-card--xs-3 {
  height: 10.313rem;
  padding-top: 97.33%;
}
.nav-card--xs-4 {
  height: 10.313rem;
  padding-top: 62%;
}
.nav-card--lg-6 {
  height: 10.313rem;
  padding-top: 48.3%;
}
.ch {
  display: flex;
}
.ch figure {
  padding: 0;
  width: 8rem;
  height: 8rem;
  flex-shrink: 0;
  position: relative;
  margin: 0;
}
.ch figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ch-content {
  align-self: center;
  padding-left: 4%;
}
.ch-content p {
  line-height: 1.125rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 991.98px) {
  .ch {
    border: 1px solid #DDE2E5;
    border-radius: 4px;
    padding: 0.625rem;
  }
  .ch figure {
    width: 5rem;
    height: 5rem;
  }
  .ch h3 {
    font-size: 16px;
    line-height: 112.5%;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .ch p {
    font-size: 0.875rem;
    -webkit-line-clamp: 2;
  }
}
.ceo {
  position: relative;
  min-width: 150px;
  min-height: 200px;
  overflow: hidden;
  border-radius: 0 4px 4px 4px;
  container-type: inline-size;
}
.ceo a:focus {
  opacity: 0.8;
}
.ceo figure {
  margin: 0;
}
.ceo figure img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.ceo__when {
  position: absolute;
  top: 0;
  left: 0;
  width: 120px;
  padding: 15px;
  background-color: white;
  border-bottom-right-radius: 10px;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  font-size: 0.75rem;
  color: black;
}
.ceo__when:before {
  content: "";
  position: absolute;
  background-color: transparent;
  bottom: -20px;
  left: 0;
  height: 20px;
  width: 20px;
  border-top-left-radius: 10px;
  box-shadow: 0 -10px 0 0 white;
}
.ceo__when:after {
  content: "";
  position: absolute;
  background-color: transparent;
  right: -20px;
  top: 0;
  height: 20px;
  width: 20px;
  border-top-left-radius: 10px;
  box-shadow: 0 -10px 0 0 white;
}
html[lang=ja] .ceo__when--from, html[lang=ko] .ceo__when--from {
  flex-flow: row-reverse;
}
.ceo__when--from-to {
  align-items: center;
}
.ceo__when--unconfirmed, .ceo__when--single {
  justify-content: center;
}
.ceo__vdate {
  display: flex;
  flex-direction: column;
  align-items: center;
}
html[lang=ja] .ceo__vdate, html[lang=ko] .ceo__vdate {
  align-items: end;
}
.ceo__vdate .big {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.5rem;
}
.ceo__vdate .small {
  font-size: 1rem;
}
.ceo__content {
  color: white;
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  z-index: 15;
}
.ceo__content h3.ceo__title {
  font-size: 1.2rem;
  line-height: 1.4rem;
  margin-top: 10px;
  text-wrap: balance;
}
.ceo__content p.ceo__blurb {
  display: none;
}
@media (min-width: 992px) {
  .ceo__content p.ceo__blurb {
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  @supports (-webkit-line-clamp: 2) {
    .ceo__content p.ceo__blurb {
      white-space: initial;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }
    @media (min-width: 1220px) {
      .ceo__content p.ceo__blurb {
        -webkit-line-clamp: 3;
      }
    }
  }
}
.ceo__location {
  padding: 4px 15px;
  background: rgba(0, 0, 0, 0.75);
  border-radius: 100px;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  max-width: 100%;
  text-overflow: ellipsis;
}
.ceo__counter {
  margin-top: 10px;
}
.ceo__save {
  position: absolute;
  top: 10px;
  right: 10px;
  height: 40px;
  width: 40px;
  text-align: center;
  line-height: 40px;
  background: rgba(0, 0, 0, 0.25);
  border-radius: 99px;
  color: white;
  z-index: 15;
}
.ceo figure:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(180deg, #FFF 50%, rgba(0, 0, 0, 0.7) 80%);
  mix-blend-mode: multiply;
  z-index: 10;
}
.ceo__title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
@supports (-webkit-line-clamp: 3) {
  .ceo__title {
    white-space: initial;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  @media (min-width: 1220px) {
    .ceo__title {
      -webkit-line-clamp: 3;
    }
  }
}
.ceo--simple .ceo__blurb {
  display: none !important;
}
.ceo--bare {
  background-color: #F8F7F4;
}
.ceo--bare figure {
  display: none;
}
.ceo--bare .ceo__blurb {
  display: block;
}
.ceo--bare .ceo__content {
  color: initial;
}
.ceo--bare .ceo__content .ceo__location {
  background-color: initial;
  border: 1px solid black;
}
.ceo--bare-black {
  background-color: #071B2A;
}
.ceo--bare-black figure {
  display: none;
}
.ceo--bare-black .ceo__blurb {
  display: block;
}
.ceo--bare-black .ceo__content {
  color: #FFFFFF;
}
.ceo--bare-black .ceo__location {
  border: 1px solid #FFFFFF;
}
.ceo img {
  transition: all 0.3s;
}
.ceo:hover img {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
@container (width < 250px) {
  .ceo__location {
    padding: 4px 8px;
    font-size: 0.9rem;
  }
  .ceo__title {
    font-size: 1.1rem;
  }
  .ceo__content {
    bottom: 10px;
    left: 10px;
    right: 10px;
  }
}
.pgc {
  width: 100%;
  height: 100%;
  display: grid;
  grid-gap: 10px;
}
.pgc-photo-1 {
  grid-area: photo1;
}
.pgc-photo-2 {
  grid-area: photo2;
}
.pgc-photo-3 {
  grid-area: photo3;
}
.pgc-title {
  grid-area: title;
}
.pgc-photo {
  position: relative;
}
.pgc-photo img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pgc-title {
  font-size: 1rem;
  font-weight: 600;
  height: 1.5rem;
  line-height: 1.5rem;
  overflow: hidden;
  text-overflow: ellipsis;
}
@container (aspect-ratio < 1) {
  .pgc {
    grid-template-columns: auto auto;
    grid-template-rows: 5fr 2fr 1.5rem;
    grid-template-areas: "photo1 photo1" "photo2 photo3" "title title";
  }
  .pgc-photo-1 img {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
  }
  .pgc-photo-2 img {
    border-bottom-left-radius: 4px;
  }
  .pgc-photo-3 img {
    border-bottom-right-radius: 4px;
  }
}
@container (aspect-ratio >= 1) {
  .pgc {
    grid-template-columns: 2fr 1fr;
    grid-template-rows: 1fr 1fr 1.5rem;
    grid-template-areas: "photo1 photo2" "photo1 photo3" "title title";
  }
  .pgc-photo-1 img {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
  }
  .pgc-photo-2 img {
    border-top-right-radius: 4px;
  }
  .pgc-photo-3 img {
    border-bottom-right-radius: 4px;
  }
}
.card--gallery-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 4px;
}
.card--gallery-photo figure {
  width: 100%;
  height: 100%;
  margin: 0;
}
.csl {
  color: white;
  /* mobile */
  /* large: */
}
.csl__img--side, .csl__img--inside, .csl__main, a.csl__cta, a.csl__cta-secondary {
  border-radius: 40px;
  overflow: hidden;
  margin: 0;
}
.csl__img--side img, .csl__img--inside img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.csl__main {
  background-color: #071B2A;
  position: relative;
}
.csl__content {
  position: relative;
  z-index: 2;
}
.csl__content p {
  margin-bottom: 24px;
}
.csl__content h4 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 24px;
}
.csl__cta-list {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  align-items: center;
}
a.csl__cta {
  background-color: white;
  color: #071B2A;
}
.csl__cta-secondary.button {
  background-color: transparent;
}
.csl__stamp {
  height: 140%;
  max-height: 500px;
  position: absolute;
  z-index: 1;
  -webkit-mask-image: linear-gradient(to bottom, white 0%, transparent 70%);
  mask-image: linear-gradient(to bottom, white 0%, transparent 70%);
}
.csl__stamp svg {
  height: 100%;
}
.csl__stamp svg text {
  display: none;
}
.csl__stamp svg path {
  fill: #227BBC;
  fill-rule: evenodd;
}
@media (max-width: 767px) {
  .csl__img--side {
    display: none;
  }
  .csl__main {
    width: 100%;
    padding: 60px 20px;
  }
  .csl__img--inside {
    margin-bottom: 24px;
    aspect-ratio: 1.2;
  }
  .csl__cta, .csl__cta-secondary {
    display: block;
    width: 100%;
  }
  .csl__stamp {
    right: -67%;
    bottom: 5%;
  }
}
@media (min-width: 768px) {
  .csl {
    display: flex;
  }
  .csl__img--inside {
    display: none;
  }
  .csl__img--side {
    width: 27%;
    border-bottom-right-radius: 0;
    aspect-ratio: 0.8333333333;
  }
  .csl__main {
    width: 73%;
    border-bottom-left-radius: 0;
    padding: 40px 100px 40px 40px;
  }
  .csl__stamp {
    right: -30%;
    top: -10%;
  }
}
@media (min-width: 1220px) {
  .csl__main {
    padding: 80px 25% 80px 80px;
  }
}
.csl.booking .csl__stamp {
  display: none;
}
.csl.booking::after {
  content: url("/img/pages/bookingcom-logo-white.png");
  position: absolute;
  bottom: 0;
  right: 0;
}
.trip-card, .generate-card {
  border-radius: 4px;
  position: relative;
  display: block;
  margin-bottom: 1.25rem;
  padding: 2.5rem 0;
}
@media (min-width: 576px) {
  .trip-card, .generate-card {
    padding: 4.5rem 0;
  }
}
.trip-card:after, .generate-card:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(14, 49, 74, 0) 30.73%, #E6F4FF 100%);
  border-radius: inherit;
}
.trip-card img, .generate-card img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.trip-card__content, .generate-card__content {
  position: relative;
  z-index: 2;
  color: #042c48;
  margin: auto;
}
@media (min-width: 768px) {
  .trip-card__content, .generate-card__content {
    max-width: 25rem;
  }
}
.trip-card__title, .generate-card__title {
  text-align: center;
  font-size: 1.375rem;
  margin: 0;
  line-height: 1.25;
}
.trip-card__copy, .generate-card__copy {
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top: 1.25rem;
  font-size: 1.125rem;
  line-height: 1.25;
}
.trip-card__cta, .generate-card__cta {
  margin-top: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
@media (min-width: 576px) {
  .trip-card__cta, .generate-card__cta {
    flex-direction: row;
  }
}
.trip-card__button, .generate-card__button {
  text-align: center;
  font-weight: 600;
  transition: color 0.3s ease, background-color 0.3s ease;
  width: 100%;
  background-color: transparent;
  color: #1364A1;
  font-size: 1.125rem;
}
.trip-card__button:hover, .trip-card__button:focus, .generate-card__button:hover, .generate-card__button:focus {
  text-decoration: none;
  color: #227BBC;
}
.trip-card__top, .generate-card__top {
  display: block;
  position: relative;
  height: 5.625rem;
  width: 100%;
  margin-bottom: 2.75rem;
  z-index: 1;
}
@media (min-width: 768px) {
  .trip-card__top, .generate-card__top {
    height: 6.625rem;
  }
}
.trip-card__top img, .generate-card__top img {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}
.generate-card:after {
  background: linear-gradient(360deg, #0E314A 13.28%, rgba(14, 49, 74, 0) 56.83%), linear-gradient(0deg, rgba(14, 49, 74, 0.8), rgba(14, 49, 74, 0.8));
}
.generate-card__content {
  color: #fff;
}
.generate-card__top {
  display: block;
  position: relative;
  height: 5.625rem;
  width: 100%;
  margin-bottom: 2.75rem;
}
@media (min-width: 768px) {
  .generate-card__top {
    height: 6.625rem;
  }
}
.generate-card__top img {
  position: absolute;
  top: 30%;
  left: 50%;
  object-fit: cover;
  width: 100%;
  height: auto;
}
.generate-card__button {
  color: #fff;
}
.generate-card__button:hover, .generate-card__button:focus {
  color: #F6F8F8;
}
.card-weather {
  position: relative;
  min-width: 362px;
  overflow: hidden;
  border-radius: 4px;
}
@media (max-width: 575.98px) {
  .card-weather {
    padding-left: 14px;
    padding-right: 14px;
  }
}
@media (min-width: 992px) {
  .card-weather {
    min-height: 313px;
  }
}
@media (min-width: 1220px) {
  .card-weather {
    min-height: 520px;
  }
}
@media (max-width: 767.98px) {
  .card-weather__img {
    height: 100%;
    width: 100%;
    position: relative;
  }
}
.card-weather figure {
  margin: 0;
}
.card-weather figure img {
  height: 262px;
  width: 100%;
  object-fit: cover;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .card-weather figure img {
    position: absolute;
    min-height: 262px;
    height: 100%;
  }
}
.card-weather__content {
  background-color: white;
  font-size: 0.75rem;
  display: block;
  color: black;
  padding: 20px 0;
  width: 100%;
}
@media (min-width: 576px) {
  .card-weather__content {
    width: 400px;
  }
}
.card-weather__content h3 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 1.25rem;
  margin: 0;
}
@media (min-width: 768px) {
  .card-weather__content h3 {
    font-size: 1.5rem;
  }
}
.card-weather__content p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.125;
  margin-bottom: 1.25rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
.card-weather__content--link {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.125;
  color: #227BBC;
}
@media (min-width: 768px) {
  .card-weather__content {
    padding: 50px 30px;
    position: absolute;
    bottom: 0;
    right: 0;
    border-top-left-radius: 10px;
    z-index: 10;
    /* Inverted border radius - bottom left */
    /* Inverted border radius - top right */
  }
  .card-weather__content:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: -20px;
    height: 20px;
    width: 20px;
    border-bottom-right-radius: 10px;
    box-shadow: 10px 1px 0 0 white;
    z-index: 9;
  }
  .card-weather__content:after {
    content: "";
    position: absolute;
    top: -20px;
    right: 0px;
    height: 20px;
    width: 20px;
    border-bottom-left-radius: 10px;
    box-shadow: -7px 10px 0 0 white;
    z-index: 9;
    rotate: -90deg;
  }
}
.card-weather figure:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.6) 100%);
  z-index: 10;
  border-radius: 4px;
}
/**
 * For various small components, too small to be worth having their separate files
 */
.lm-filters > button {
  border: none;
  color: white;
  background-color: #227BBC;
}
.lm-filters .dropdown-menu {
  padding: 15px;
  border-radius: 20px;
  background-color: white;
  border: 1px solid #DDE2E5;
}
.lm-filters .dropdown-menu a {
  display: inline-block;
  width: 100%;
  padding: 5px;
  color: #757575;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
.lm-filters .dropdown-menu a:hover {
  background-color: #eee;
}
.lm-list {
  margin-left: -1rem;
}
.lm-list > li.lm-item > * {
  padding: 1rem 0 1rem 1rem;
  border-bottom: 1px solid #E1E7EC;
  display: block;
  color: black;
  text-decoration: none;
}
@media (min-width: 992px) {
  .lm-list > li.lm-item.active {
    background-color: #DDE2E5;
  }
}
@media (max-width: 991.98px) {
  .lm .cards-scroll-map {
    overflow-x: auto;
    margin-top: 0.75rem;
  }
  .lm-list {
    width: fit-content;
    gap: 25px;
  }
  .lm-item {
    width: 80vw;
    max-width: 400px;
  }
  .lm-map {
    height: 80vw;
  }
  .lm-list > li.lm-item.active .ch {
    background-color: #DDE2E5;
  }
}
.hcl .hcl-title, .hcl .hcl-blurb {
  margin-bottom: 20px;
}
.hcl-grid > * {
  aspect-ratio: 1;
  padding: 10px;
}
.hcl-grid > *:not(:first-child) > * {
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: 4px;
}
.hcl-grid > *:not(:nth-child(2)) .ceo__blurb {
  display: none;
}
.hcl-grid > *:nth-child(2) {
  aspect-ratio: initial;
}
.hcl-grid > *:nth-child(2) .ceo__content {
  text-align: right;
  left: 50%;
}
.hcl-grid > *:nth-child(2) figure:after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 37.41%, rgba(56, 56, 56, 0.407214) 68.61%, #2F2F2F 102.82%, rgba(0, 0, 0, 0.48) 102.83%);
}
@media (max-width: 767.98px) {
  .hcl-grid {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .hcl-grid > * {
    min-width: min(320px, 80vw);
    min-height: 260px;
  }
}
.sff {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  width: 100%;
}
.sff-keywords {
  flex-grow: 1;
  min-width: 400px;
}
.sff button.dropdown-button {
  height: 40px;
}
.sff-keywords {
  display: flex;
}
.sff-keywords input {
  flex-grow: 1;
  height: 40px;
  border: 1px solid #D9D9D9;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  padding-left: 10px;
}
.sff-keywords button {
  flex-grow: 0;
  height: 40px;
  width: 40px;
  border: 1px solid #D9D9D9;
  background-color: transparent;
  margin-left: -1px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.sff-filter-groups {
  display: flex;
  gap: 16px;
}
@media (max-width: 991.98px) {
  .sff button.dropdown-button {
    width: 100%;
  }
  .sff .dropdown-menu.dropdown-disabled-md-up-menu.show {
    position: fixed !important;
    inset: 0;
    display: flex;
    flex-direction: column;
    z-index: 1100;
    transform: initial !important;
    padding: 0;
  }
  .sff .dropdown-menu.dropdown-disabled-md-up-menu.show .dropdown-filter__content {
    width: 100%;
  }
  .sff .dropdown-menu.dropdown-disabled-md-up-menu.show .sff-filter-header {
    flex-shrink: 0;
    padding: 0.75rem 0.875rem;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.08);
    display: flex;
    justify-content: space-between;
  }
  .sff .dropdown-menu.dropdown-disabled-md-up-menu.show .sff-filter-header .filter-clear {
    color: #1364A1;
  }
  .sff .dropdown-menu.dropdown-disabled-md-up-menu.show .sff-filter-footer {
    flex-shrink: 0;
    padding: 0.5rem;
    border-top: 1px solid #E1E7EC;
  }
  .sff .dropdown-menu.dropdown-disabled-md-up-menu.show .sff-filter-groups {
    display: block;
    padding: 15px;
    flex-grow: 1;
    overflow: auto;
  }
  body:has(.sff > .dropdown-menu.show) {
    overflow: hidden;
  }
}
.hero-carousel {
  position: relative;
  min-height: 500px;
  height: calc(100vh - 5.5rem);
  color: #fff;
  margin-top: -71px;
  background-color: #dee2e6;
}
@media (min-width: 576px) {
  .hero-carousel {
    height: 100vh;
  }
}
@media (min-width: 992px) {
  .hero-carousel {
    margin-top: -5rem;
  }
}
.hero-carousel__background {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  margin-top: 0 !important;
}
.hero-carousel__content {
  position: relative;
  z-index: 5;
  text-align: center;
}
.hero-carousel__title {
  font-weight: 700;
  margin-top: 0.75rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-shadow: 0px 1px 12px rgba(0, 0, 0, 0.85);
  font-size: 2rem;
  font-size: clamp(2rem, 10vw, 2.75rem);
  font-size: clamp(2rem, calc(-.4rem + 12vw), 2.75rem);
}
@media (min-width: 576px) {
  .hero-carousel__title {
    font-size: 2.75rem;
  }
}
@media (min-width: 992px) {
  .hero-carousel__title {
    font-size: 3.25rem;
  }
}
.hero-carousel__tagline {
  font-weight: 700;
  position: relative;
  font-size: 0.875rem;
  margin-bottom: 0;
  text-shadow: 0px 1px 12px rgba(0, 0, 0, 0.85);
  text-transform: uppercase;
  letter-spacing: 0.3em;
  /*
    &:before {
      content: " ";
        display: block;
        background-color: white;
        width: 72px;
        height: 2px;
        position: absolute;
        top: 8px;
        left: 0;
    }
    */
}
.hero-carousel__link {
  display: inline-block;
  background-color: #fff;
  padding: 0.75rem 2rem;
  line-height: 1.25;
  font-weight: 600;
  border-radius: 40px;
  color: #1A2029;
  margin-top: 2rem;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.hero-carousel__link:hover, .hero-carousel__link:focus {
  text-decoration: none;
  color: #227BBC;
}
.hero-carousel__scroll {
  color: #fff;
  margin-left: auto;
  position: absolute;
  left: 2.8rem;
  bottom: 5rem;
  z-index: 5;
  transform: rotate(90deg);
  transform-origin: top;
  display: none;
}
@media (min-width: 768px) {
  .hero-carousel__scroll {
    left: 1.8rem;
    bottom: calc((100vw / 24) + 4.5rem);
    display: inline-block;
  }
}
.hero-carousel__scroll:hover, .hero-carousel__scroll:focus {
  color: #fff;
  text-decoration: none;
}
.hero-carousel__scroll:after {
  content: "";
  width: 40px;
  height: 1px;
  background-color: white;
  display: block;
  position: absolute;
  top: 50%;
  left: 80%;
  margin-left: 12px;
  transform: scaleX(0);
  animation: 3s ease 1.5s normal infinite scroll;
  pointer-events: none;
}
@media (min-width: 576px) {
  .hero-carousel__scroll:after {
    width: 35px;
  }
}
.hero-carousel__pause {
  position: absolute;
  border: 0;
  background-color: rgba(0, 0, 0, 0);
  color: #fff;
  opacity: 0.8;
  left: 0.5rem;
  bottom: 1.5rem;
  z-index: 15;
}
@media (min-width: 768px) {
  .hero-carousel__pause {
    left: 1.4375rem;
    bottom: calc((100vw / 24));
  }
}
.hero-carousel__pause:hover, .hero-carousel__pause:focus {
  opacity: 1;
}
.hero-carousel__pause.paused {
  opacity: 1;
}
.hero-carousel__pause.paused .fa-pause:before {
  content: "";
}
.carousel-inner--hero {
  height: 100%;
}
.carousel-item--hero {
  width: 100%;
  height: 100%;
}
.carousel-item--hero:before, .carousel-item--hero:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
}
.carousel-item--hero:after {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 18%);
}
.carousel-item--hero:before {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 63%);
  z-index: 4;
}
.carousel-item--hero.anim-zoom-in.active .carousel-item__img, .carousel-item--hero.anim-zoom-in.carousel-item-next .carousel-item__img {
  animation: 10s linear 1 normal forwards carouselZoom;
}
.carousel-item--hero.anim-zoom-out.active .carousel-item__img, .carousel-item--hero.anim-zoom-out.carousel-item-next .carousel-item__img {
  animation: 10s linear 1 reverse forwards carouselZoom;
}
.carousel-item--hero.anim-slide-up.active .carousel-item__img, .carousel-item--hero.anim-slide-up.carousel-item-next .carousel-item__img {
  animation: 10s linear 1 normal forwards carouselScroll;
}
.carousel-item--hero.anim-slide-down.active .carousel-item__img, .carousel-item--hero.anim-slide-down.carousel-item-next .carousel-item__img {
  animation: 10s linear 1 reverse forwards carouselScroll;
}
.carousel-item--hero.anim-slide-left.active .carousel-item__img, .carousel-item--hero.anim-slide-left.carousel-item-next .carousel-item__img {
  animation: 10s linear 1 normal forwards carouselScrollSide;
}
.carousel-item--hero.anim-slide-right.active .carousel-item__img, .carousel-item--hero.anim-slide-right.carousel-item-next .carousel-item__img {
  animation: 10s linear 1 reverse forwards carouselScrollSide;
}
.carousel-item__img-mask {
  width: 100%;
  height: 100%;
}
.carousel-item__img {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  object-fit: cover;
  font-family: "object-fit: cover;";
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}
.carousel-item__link {
  position: absolute;
  bottom: 1.5rem;
  right: 0.875rem;
  color: #fff;
  z-index: 5;
  font-size: 1rem;
  font-weight: 400;
  text-align: right;
  line-height: 1.25;
  max-width: 13.5rem;
  text-decoration: none;
  text-shadow: 0px 1px 20px rgba(0, 0, 0, 0.85);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-align: right;
  text-overflow: ellipsis;
}
@media (min-width: 768px) {
  .carousel-item__link {
    bottom: 1.75rem;
    right: 1.5rem;
  }
}
.carousel-item__link:hover, .carousel-item__link:focus {
  color: #fff;
}
.carousel-item__link-icon {
  margin-right: 0.25rem;
  display: none !important;
}
@media (min-width: 768px) {
  .hero-article {
    margin-bottom: 2.5rem;
  }
}
.hero-article__mask {
  position: relative;
  padding-top: 56.25%;
  background-color: #ECEFF0;
  border-radius: 8px;
}
.hero-article img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 8px;
}
.hero-article iframe, .hero-article video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 0;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  border: none;
  border-radius: 8px;
}
.hero-article figcaption {
  font-size: 1rem;
  color: #6B7280;
  display: block;
  padding: 0.5rem 0;
  line-height: 1.25;
}
.hero-modal {
  background-color: #1A2029;
  position: relative;
  min-height: 21.5rem;
}
.hero-overlay {
  background-color: #1A2029;
  height: calc(100vh - 13rem);
  position: relative;
  min-height: 22.5rem;
}
@media (min-width: 768px) {
  .hero-overlay {
    height: calc(100vh - 10rem);
  }
}
.hero-overlay:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(31.77deg, rgba(0, 0, 0, 0.3) 24.33%, rgba(0, 0, 0, 0) 36.08%);
}
.hero-overlay--sustainable {
  height: 320px;
}
@media (min-width: 768px) {
  .hero-overlay--sustainable {
    height: 320px;
  }
}
.hero-overlay--sustainable:after {
  position: absolute;
  left: 0%;
  right: 0%;
  top: 0%;
  bottom: 0%;
  content: "";
  background: linear-gradient(180deg, #C4C4C4 0%, rgba(255, 255, 255, 0) 0.01%, rgba(221, 221, 221, 0.445103) 44.52%, #000000 100%);
  mix-blend-mode: multiply;
}
.hero-overlay--category, .hero-overlay--experience {
  height: calc(100vh - 22rem);
  min-height: 18.75rem;
}
@media (min-width: 768px) {
  .hero-overlay--category, .hero-overlay--experience {
    height: calc(100vh - 24rem);
    min-height: 30.5rem;
  }
}
.hero-overlay--category:after, .hero-overlay--experience:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #C4C4C4 0%, rgba(255, 255, 255, 0) 0.01%, rgba(221, 221, 221, 0) 44.52%, #000000 100%);
}
.hero-overlay--category .hero-overlay__title, .hero-overlay--experience .hero-overlay__title {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-weight: 700;
  letter-spacing: -0.02em;
  text-align: left;
}
.hero-overlay--category .carousel-item__img-mask, .hero-overlay--experience .carousel-item__img-mask {
  background: #000;
}
.hero-overlay__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  object-position: 50% 50%;
}
.hero-overlay__content {
  position: absolute;
  bottom: 1rem;
  color: #fff;
  z-index: 2;
  margin-left: 0.875rem;
}
.hero-overlay__content--center {
  text-align: center;
  left: 0;
  right: 0;
  margin-left: 0 !important;
}
@media (min-width: 576px) {
  .hero-overlay__content {
    margin-left: calc(50% - (540px - 28px)/2);
  }
}
@media (min-width: 768px) {
  .hero-overlay__content {
    margin-left: calc(50% - (720px - 28px)/2);
    bottom: 2.25rem;
  }
}
@media (min-width: 992px) {
  .hero-overlay__content {
    margin-left: calc(50% - (960px - 28px)/2);
  }
}
@media (min-width: 1220px) {
  .hero-overlay__content {
    margin-left: calc(50% - (1180px - 28px)/2);
  }
}
.hero-overlay__title {
  font-size: 3rem;
  letter-spacing: -0.02em;
  margin-top: 0.5rem;
  margin-bottom: 0;
  line-height: 1.25;
}
@media (max-width: 575.98px) {
  .hero-overlay__title {
    font-size: clamp(2rem, 10.5vw, 2.625rem);
  }
}
.hero-overlay__event-content {
  bottom: 2.25rem;
}
.hero-overlay__event-location {
  position: absolute;
  bottom: 12px;
  margin-left: 0.875rem;
  z-index: 1;
}
.hero-overlay__event-location a {
  color: #fff;
}
@media (min-width: 576px) {
  .hero-overlay__event-location {
    margin-left: calc(50% - (540px - 28px)/2);
  }
}
@media (min-width: 768px) {
  .hero-overlay__event-location {
    right: 20px;
  }
}
.hero-overlay__tagline {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.012em;
  font-size: 0.875rem;
  font-weight: 700;
}
.hero-overlay__tagline a {
  color: white;
}
.hero {
  width: 100%;
  padding-top: 66.6%;
  position: relative;
  overflow: hidden;
  background-color: #061F32;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .hero {
    min-height: 30rem;
    padding-top: 0;
    height: calc(100vh - 16.375rem);
  }
}
@media (min-width: 992px) {
  .hero--article {
    height: calc(100vh - 17.5rem);
  }
}
.hero--video {
  padding-top: 56.25%;
  background-color: #000;
}
.hero--video-carousel {
  padding-top: 66.6%;
}
@media (min-width: 768px) {
  .hero--video {
    padding-top: 56.25%;
  }
}
@media (min-width: 992px) {
  .hero--video {
    padding-top: 0;
    height: calc(100vh - 5rem);
  }
}
.hero--video iframe, .hero--video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 0;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  border: none;
}
.hero--video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero--video iframe {
  width: 100vw;
  height: calc((100vw/16)*9);
}
.hero--video-image {
  position: absolute;
  top: 0;
}
.hero--video-theater iframe {
  height: auto;
}
.hero--transparent {
  margin-top: -71px;
}
@media (min-width: 992px) {
  .hero--transparent {
    margin-top: -5rem;
  }
}
.hero--transparent:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 18%);
}
.hero__overlay {
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.hero__pause {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  border: none;
  background-color: transparent;
  color: #fff;
  z-index: 15;
}
.hero img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover; object-position: 50% 50%;";
  object-position: 50% 50%;
}
.hero__copyright {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  font-size: 0.875rem;
  padding: 0.5rem;
  border-radius: 4px;
  color: #1A2029;
  background-color: #fff;
  width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.3);
  color: #fff;
  border: none;
  box-shadow: none;
}
.hero__button {
  position: absolute;
  bottom: 0.75rem;
  left: 0.75rem;
  background: #fff;
  color: #1A2029;
  font-weight: 400;
  font-size: 1rem;
  transition: background-color 0.3s ease, color 0.3s ease;
  border: none;
  padding: 0.6875rem 1rem;
  border-radius: 4px;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  line-height: 1;
}
.hero__button:hover, .hero__button:focus {
  background-color: #F8FAFC;
  text-decoration: none;
}
@media (min-width: 576px) {
  .hero__button {
    bottom: 1.25rem;
    left: calc(50% - (540px - 28px)/2);
  }
}
@media (min-width: 768px) {
  .hero__button {
    left: calc(50% - (720px - 28px)/2);
  }
}
@media (min-width: 992px) {
  .hero__button {
    left: calc(50% - (960px - 28px)/2);
  }
}
@media (min-width: 1220px) {
  .hero__button {
    left: calc(50% - (1180px - 28px)/2);
  }
}
.hero--topic {
  margin-top: 7.5rem;
  height: calc(66vh - 5rem);
  padding-top: 0;
  min-height: 20rem;
}
@media (min-width: 992px) {
  .hero--topic {
    height: calc(80vh - 5rem);
  }
}
.spot-hero-image {
  background-color: #000;
  color: #fff;
  background-size: cover;
  background-position: center;
  height: calc(100vh - 150px);
  position: relative;
}
.spot-hero-image.feature {
  height: auto;
  padding-top: 150%;
}
@media (min-width: 768px) {
  .spot-hero-image.feature {
    padding-top: 0;
    height: 350px;
  }
}
@media (min-width: 992px) {
  .spot-hero-image.feature {
    height: 500px;
  }
}
.spot-hero-image__content {
  position: absolute;
  bottom: 2.25rem;
  z-index: 3;
  text-align: center;
  width: 100%;
}
@media (min-width: 768px) {
  .spot-hero-image__content {
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
  }
}
.spot-hero-image__title {
  font-size: 2rem;
}
@media (min-width: 768px) {
  .spot-hero-image__title {
    font-size: 3rem;
  }
}
.hero-image {
  width: 100%;
  padding-top: 66.6%;
  position: relative;
  overflow: hidden;
  background-color: #ECEFF0;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .hero-image {
    min-height: 27.5rem;
    padding-top: 0;
    height: calc(100vh - 19rem);
  }
}
.hero-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.hero-image--overlay {
  position: relative;
  height: 100%;
  width: 100%;
}
@media (min-width: 992px) {
  .hero-image--overlay {
    min-height: 27.5rem;
  }
}
.hero-image .weather-info {
  padding: 2.5rem;
  position: absolute;
  right: 0;
  top: 0;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  color: #FFFFFF;
}
.hero-image .weather-info .weather__content {
  max-width: 100%;
  text-align: center;
}
.hero-image .weather-info .weather__icon {
  font-size: 18px;
}
.hero-image .weather-info .weather__temperature {
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
}
.hero-image .weather-info .weather__label {
  font-size: 18px;
}
.hero-image .location-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1.5rem;
}
@media (min-width: 768px) {
  .hero-image .location-info {
    bottom: 3.125rem;
  }
}
.hero-image .location-info .location-icon {
  padding: 0 14px;
}
.hero-image .location-info .location-icon img {
  position: relative;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: 50% 100%;
}
.hero-image .location-info--content {
  text-align: center;
}
.hero-image .location-info--content h1 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 2rem;
  line-height: 112.5%;
  letter-spacing: -0.02em;
  color: #fff;
}
@media (min-width: 768px) {
  .hero-image .location-info--content h1 {
    font-size: 2.938rem;
  }
}
.hero-image .location-info--content p {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  color: #fff;
}
.area-hero-image {
  background-color: #000;
  color: #fff;
  background-size: cover;
  background-position: center;
  height: calc(100vh - 50px);
  position: relative;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.2) 100%), url("http://a1.cdn.japantravel.com/photo/292-137672/1200x600!/photo.jpg");
}
.area-hero-image__content {
  position: absolute;
  bottom: 5.5em;
  z-index: 3;
  text-align: center;
  width: 100%;
}
.area-hero-image__subtitle {
  font-size: 1.5rem;
  font-style: italic;
}
.area-hero-image__button {
  border-radius: 4px;
}
.area-hero-image__button, .area-hero-image .button--inverted, .area-hero-image .button--wide {
  padding: 12px 40px;
  line-height: 1.2;
  display: inline-block;
  text-align: center;
  color: #fff;
  font-size: 1.125rem;
  transition: background-color 0.3s, color 0.3s;
  background-color: #227BBC;
}
@media screen and (min-width: 768px) {
  .area-hero-image {
    height: 500px;
    position: inherit;
  }
  .area-hero-image .area-hero-image__content {
    position: relative;
    max-width: 100%;
    top: 50%;
    transform: translatey(-50%);
  }
  .area-hero-image .area-hero-image__content .area-hero-image__title {
    font-size: 3rem;
  }
}
@media screen and (min-width: 992px) {
  .area-hero-image {
    height: 500px;
  }
}
@media screen and (min-width: 1200px) {
  .area-hero-image {
    height: 500px;
  }
}
@keyframes carouselZoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.07);
  }
}
@keyframes carouselScroll {
  0% {
    transform: scale(1.07) translateY(0);
    transform-origin: bottom;
  }
  100% {
    transform: scale(1.07) translateY(6.5%);
    transform-origin: bottom;
  }
}
@keyframes carouselScrollSide {
  0% {
    transform: scale(1.05) translateX(4.5%);
    transform-origin: right;
  }
  100% {
    transform: scale(1.05) translateX(0%);
    transform-origin: right;
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
  }
  30% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left;
  }
  31% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    transform-origin: right;
  }
  60% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right;
  }
  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
  }
}
@media (max-width: 575.98px) {
  .municipality-hero-image {
    height: calc(100vh - 19rem);
    padding-top: 0;
  }
}
.municipality-hero-image .hero-image--gradient {
  background: linear-gradient(180deg, #C4C4C4 0%, rgba(255, 255, 255, 0) 0.01%, rgba(47, 47, 47, 0.45) 44.08%, #000 100%);
  mix-blend-mode: multiply;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.municipality-hero-image .hero-image--overlay {
  z-index: 1;
}
@media (max-width: 575.98px) {
  .modal {
    padding-top: 0;
    padding-right: 0 !important;
  }
}
.modal-dialog {
  max-width: 40.625rem;
}
@media (max-width: 575.98px) {
  .modal-dialog {
    margin: 0;
  }
}
.modal-content {
  border: 0;
}
@media (max-width: 575.98px) {
  .modal-content {
    border-radius: 0;
  }
}
.modal-title {
  font-size: 2rem;
  line-height: 1.125;
  padding-right: 2rem;
}
.modal-header {
  padding: 1.5rem 1rem 0 1rem;
  border-bottom: 0;
}
@media (min-width: 576px) {
  .modal-header {
    padding: 1.5rem 2rem 1rem 2rem;
  }
}
.modal-header button.close {
  border: 0;
  background-color: transparent;
  top: 1.5rem;
  font-size: 1.5rem;
}
.modal-close {
  z-index: 500;
}
.modal-close button.close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  color: #042c48;
  background-color: transparent;
  border-radius: 50%;
  border: 0;
  width: 40px;
  height: 40px;
  font-size: 1.5rem;
}
.modal-close button.close i.fa::before {
  font-weight: 300;
}
@media (min-width: 576px) {
  .modal-body {
    padding: 2rem 2rem;
  }
}
.modal .modal-footer {
  border-top: 0;
}
@media (min-width: 576px) {
  .modal .modal-footer {
    padding: 0 2rem 2rem 2rem;
  }
}
.modal .btn {
  border: none;
  background-color: #227BBC;
  color: #fff;
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
}
.modal .btn-secondary {
  background-color: #fff;
  color: #227BBC;
}
.modal--coupon .modal-dialog {
  transition: none;
  max-width: 15.9375rem;
}
@media (min-width: 992px) {
  .modal--coupon .modal-dialog {
    max-width: 19rem;
  }
}
@media (max-width: 575.98px) {
  .modal--coupon .modal-dialog {
    margin: auto;
  }
}
.modal--coupon .modal-content {
  border-radius: 1rem;
  background: #F8FAFC;
}
.modal--coupon .modal-body {
  padding: 2rem;
  height: 29rem;
}
.modal--coupon .coupon-body {
  display: flex;
  height: 90%;
  flex-direction: column;
  justify-content: space-between;
}
.modal--coupon-header {
  text-align: center;
}
.modal--coupon-close {
  border-radius: 2.0625rem;
  background: rgba(35, 35, 35, 0.2) !important;
  height: 2.1875rem;
  padding: 0.625rem !important;
  color: #fff !important;
  position: absolute;
  right: 0;
  top: -3rem;
  font-size: 1.5rem;
  font-weight: 300 !important;
  line-height: 1rem;
}
.modal--coupon-detail {
  color: #002743;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 0.625rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: -0.00625rem;
}
.modal--coupon-top {
  position: relative;
  min-height: 5.25rem;
  background-color: rgba(34, 123, 188, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0.9rem -2rem;
  flex-direction: column;
}
.modal--coupon-top h3 {
  color: #0062AA;
  text-align: center;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.015rem;
  padding: 1.94rem 2rem;
  margin: 0;
}
.modal--coupon .button {
  padding: 0.62rem;
  width: 100%;
  background-color: #227BBC;
  border-radius: 0.25rem;
  color: #F8FAFC;
  text-align: center;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 600;
  line-height: 0.875;
  letter-spacing: 0.0075rem;
}
.modal--coupon .button:hover, .modal--coupon .button:focus {
  color: #fff;
}
.modal--coupon .button--light {
  background-color: #F8FAFC;
  color: #227BBC;
}
.modal--coupon .button--light:hover, .modal--coupon .button--light:focus {
  color: #053B61;
  background-color: #F8FAFC;
}
.modal--coupon-back {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: #fff;
}
.modal--coupon-back h3 {
  text-align: center;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.375rem;
  font-weight: 700;
  letter-spacing: 0.01375rem;
}
.modal--coupon-back p {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.25rem;
}
.modal--coupon-back .coupon-back--contact {
  margin-top: 2.5rem;
  opacity: 0.8;
  font-family: Roboto, "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-size: 0.625rem;
  font-style: normal;
  font-weight: 500;
  line-height: 0.875rem;
}
.modal--coupon-back .button {
  border-radius: 0.25rem;
  background: #F8FAFC;
  color: #227BBC;
  margin-top: 1rem;
}
.modal--coupon-back .button:hover, .modal--coupon-back .button:focus {
  background: #fff;
  color: #227BBC;
}
.modal--coupon-back .button--light {
  color: #F8FAFC;
  background: transparent;
}
.modal--coupon-back .button--light:hover, .modal--coupon-back .button--light:focus {
  background: #227BBC;
  color: #fff;
}
.modal--coupon .ellipse {
  width: 2rem;
  height: 1rem;
  flex-shrink: 0;
  border-radius: 1rem 1rem 0 0;
  background-color: #7f7f7f;
  top: 50%;
  position: absolute;
}
.modal--coupon .ellipse--left {
  transform: rotate(90deg);
  left: -8px;
}
.modal--coupon .ellipse--right {
  right: -8px;
  transform: rotate(-90deg);
}
.modal--coupon #used svg {
  fill: #0062AA;
}
.modal--coupon #used .button {
  color: #fff;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 600;
  line-height: 0.77006rem;
}
.modal--coupon #used .modal--coupon-top {
  margin-top: 1.2rem;
  margin-bottom: 1.2rem;
}
.modal--coupon #used .ellipse {
  top: 65%;
}
.modal--coupon #used .modal--coupon-used {
  text-align: center;
  margin-top: 1.2rem;
  background-color: transparent;
}
.modal--coupon #used .modal--coupon-used h4 {
  color: #0062AA;
  text-align: center;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.15625rem;
  letter-spacing: 0.01rem;
}
.modal--coupon #used .modal--coupon-used #used-coupon {
  margin-top: 2rem;
  margin-bottom: 3rem;
}
.modal--coupon #used .modal--coupon-bottom {
  text-align: center;
}
.modal--coupon #used .modal--coupon-bottom p {
  color: #002743;
  text-align: center;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 0.76169rem;
  font-weight: 600;
  line-height: 1.19688rem;
  letter-spacing: -0.00763rem;
}
.modal--coupon #used .modal--coupon-bottom .back-text {
  margin: 1rem 0 0.5rem 0;
  color: #002743;
  text-align: center;
  font-family: Roboto, "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 0.875rem;
}
.modal--coupon-text {
  margin-bottom: 0.8rem;
  text-align: center;
}
.modal--coupon-text strong {
  color: #002743;
  font-family: Roboto, "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 0.875;
  font-weight: 600;
}
.modal--coupon-redeem {
  margin-top: 0.75rem;
  display: flex;
  justify-content: center;
  gap: 0.625rem;
  flex-direction: column;
}
.modal--coupon-disclaimer {
  margin: 0.9rem 0;
  color: #002743;
  text-align: center;
  font-family: Roboto, "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-size: 0.5rem;
  font-style: normal;
  font-weight: 400;
  line-height: 0.75rem;
}
.modal--coupon .coupon-bg {
  background-color: #e5f4ff;
  border-radius: 1rem;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.modal--coupon .coupon-bg:after {
  content: "";
  background-image: url("../../img/coupon-shape.svg");
  position: absolute;
  pointer-events: none;
  height: 100%;
  width: 100%;
}
.modal--coupon .coupon-back-bg {
  background: #e5f4ff;
  border-radius: 1rem;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.modal--coupon .coupon-back-bg:after {
  content: "";
  background-image: url("../../img/coupon-back.svg");
  position: absolute;
  pointer-events: none;
  height: 100%;
  width: 100%;
}
.modal--coupon #back h3 {
  margin: 2.5rem 0;
}
@media (max-width: 991.98px) {
  .modal--mice .modal-header {
    position: fixed;
    top: 0;
    width: 100%;
    height: 5rem;
  }
}
.modal--video {
  background-color: black;
}
.modal--video .modal-dialog {
  height: 100%;
  width: 100%;
  max-width: 1024px;
}
@media (min-width: 1220px) {
  .modal--video .modal-dialog {
    max-width: 70vw;
  }
}
.modal--video .modal-content {
  background-color: transparent;
  color: #fff;
}
.modal--video button {
  background-color: transparent;
  font-size: 2rem;
  color: #fff;
  position: absolute;
  left: 2rem;
  top: -1.75rem;
  font-size: 1.125rem;
  border: 1px solid white;
  border-radius: 4px;
  padding: 0.5rem 1.5rem;
  font-weight: 600;
}
@media (max-width: 991.98px) {
  .modal--booking {
    padding-right: 0 !important;
  }
}
.modal--booking .modal-dialog {
  max-width: 50rem;
}
@media (max-width: 767.98px) {
  .modal--booking .modal-dialog {
    margin-top: 0;
    height: 100%;
  }
}
@media (max-width: 767.98px) {
  .modal--booking .modal-content {
    height: 100%;
  }
}
@media (min-width: 768px) {
  .modal--booking .modal-content {
    border-radius: 8px;
  }
}
@media (max-width: 767.98px) {
  .modal--booking .modal-header {
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.08);
  }
}
.modal--booking .modal-header__inner {
  flex-grow: 1;
}
@media (min-width: 768px) {
  .modal--booking .modal-header .ui-tinyhead {
    margin-bottom: 0;
  }
}
.modal--booking .modal-header__copy {
  margin-top: 1rem;
  font-size: 1.125rem;
}
.modal--booking .modal-header__copy h6 {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 0rem;
  letter-spacing: -0.25px;
}
.modal--booking .modal-header__copy p {
  margin-bottom: 0;
}
.modal--booking .modal-body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
@media (min-width: 768px) {
  .modal--booking .modal-body {
    padding: 0 2rem 2rem;
  }
}
@media (max-width: 767.98px) {
  .modal--booking .modal-body {
    overflow-y: auto;
  }
}
.modal--booking .modal-title {
  letter-spacing: -0.25px;
}
@media (max-width: 575.98px) {
  .modal--booking .modal-title {
    font-size: clamp(1.6rem, 8.5vw, 2rem);
  }
}
.modal--booking .close {
  position: absolute;
  top: 0;
  right: 0;
  border: 0;
  background-color: transparent;
  top: 1rem;
  right: 1rem;
  font-size: 1.5rem;
}
.booking-list {
  padding: 0;
  list-style: none;
  margin-bottom: 1.75rem;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .booking-list {
    overflow-y: auto;
    min-height: 15rem;
    max-height: 15.3125rem;
  }
}
.booking-list__item {
  border-top: 1px solid #E1E7EC;
}
.booking-list__item:last-of-type {
  border-bottom: 1px solid #E1E7EC;
}
.booking-list__link {
  color: #1A2029;
  display: block;
  padding: 1rem 2rem 1rem 0rem;
  position: relative;
}
.booking-list__link--official {
  display: flex;
  align-items: baseline;
}
.booking-list__link:after {
  position: absolute;
  font-family: "Font Awesome 5 Pro";
  content: "";
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 300;
  font-size: 0.875rem;
}
@media (min-width: 576px) {
  .booking-list__link {
    padding: 1rem 0 1rem 0.5rem;
  }
}
@media (min-width: 768px) {
  .booking-list__link {
    font-size: 1.125rem;
  }
}
.booking-list__link:hover, .booking-list__link:focus {
  background-color: #F8FAFC;
  text-decoration: none;
}
.booking-list__link i, .booking-list__link img {
  display: inline-block;
  width: 1rem;
  margin-right: 0.75rem;
  vertical-align: center;
}
.booking-list__tag {
  display: inline-block;
  font-size: 0.875rem;
  margin-left: 0.5rem;
  padding: 0.125rem 0.25rem;
  border-radius: 4px;
  background-color: #F8FAFC;
  color: #1A2029 !important;
  font-weight: 600;
  border: 1px solid #E1E7EC;
}
.booking-list__tag i {
  margin-right: 0.25rem;
  color: #1364A1;
}
@media (max-width: 575.98px) {
  .carousel-grid {
    margin-left: -1rem;
    width: calc(100% + 2rem);
    margin-top: -1rem;
  }
}
.carousel-grid:after {
  display: none;
}
.carousel-grid .carousel-item {
  overflow: hidden;
  background-color: #ECEFF0;
}
@media (min-width: 576px) {
  .carousel-grid .carousel-item {
    border-radius: 4px;
  }
}
.carousel-grid__mask {
  position: relative;
  padding-top: 66.6%;
}
.carousel-grid__mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 768px) {
  .carousel-grid {
    display: grid;
    grid-column-gap: 8px;
    height: 18rem;
  }
  .carousel-grid .carousel-item {
    opacity: 1;
    display: block;
  }
  .carousel-grid__mask {
    padding-top: 0;
    height: 100%;
  }
  .carousel-grid--2 {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }
  .carousel-grid--2 .carousel-item:first-child {
    grid-column-start: 1;
    grid-column-end: 2;
    border-radius: 4px 0 0 4px;
  }
  .carousel-grid--2 .carousel-item:last-child {
    grid-column-start: 2;
    border-radius: 0 4px 4px 0;
  }
  .carousel-grid--3 {
    grid-template-columns: 2fr 1fr;
    grid-row-gap: 8px;
    grid-template-rows: auto auto;
  }
  .carousel-grid--3 .carousel-item:first-child {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 1;
    grid-row-end: 3;
    border-radius: 4px 0 0 4px;
  }
  .carousel-grid--3 .carousel-item:nth-child(2) {
    border-radius: 0 4px 0 0;
  }
  .carousel-grid--3 .carousel-item:last-child {
    grid-column-start: 2;
    grid-row-start: 2;
    border-radius: 0 0 4px 0;
  }
}
#transit-pass-modal .modal-dialog {
  max-width: 1000px;
}
#transit-pass-modal .modal-header {
  position: absolute;
  right: 0;
  z-index: 500;
}
.search .hero {
  min-height: 300px;
  max-height: 300px;
  height: 300px;
}
@media (max-width: 767.98px) {
  .search .tab-light {
    justify-content: space-between;
  }
}
.search__input {
  border-radius: 2px;
  background-color: #f7fafb;
  border: none;
  padding: 1rem 0.75rem;
  height: 3rem;
}
@media (min-width: 768px) {
  .search__input {
    flex: 3 !important;
  }
}
.search__input::placeholder {
  align-items: center;
  font-weight: normal;
  font-size: 1rem;
  color: #4A525E;
}
.search__submit {
  border-radius: 0.125rem;
  flex: 1;
  background-color: #227BBC;
  color: #fff;
  font-weight: 600;
  border: none;
  transition: background-color 0.3s;
  font-size: 1rem;
  line-height: 3;
  padding: 0;
}
.search__submit:hover, .search__submit:focus {
  color: #fff;
  background-color: #1364A1;
}
@media (min-width: 768px) {
  .search__submit {
    height: 3rem;
  }
}
.search-sort__select {
  font-size: 16px;
}
.search p.ceo__blurb {
  display: none;
}
.search .tlp-itineraries {
  display: none;
}
body:has(.search input#type-course:checked) .tlp-itineraries {
  display: block;
}
body:has(.search input#type-course:checked) .tlp-itineraries + .breadcrumbs {
  margin: 0;
  height: 0;
  position: relative;
}
body:has(.search input#type-course:checked) .tlp-itineraries + .breadcrumbs > .container {
  transform: translateY(-100%);
}
.filter {
  display: block;
}
@media (min-width: 768px) {
  .filter {
    display: block !important;
  }
}
@media (max-width: 767.98px) {
  .filter {
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    z-index: 99999;
    padding-left: 0;
    padding-right: 0;
    transform: translateX(0vw);
    display: none;
  }
}
.filter__header {
  display: flex;
  overflow: hidden;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem;
  margin-top: 2rem;
}
@media (max-width: 767.98px) {
  .filter__header {
    padding: 0.75rem 0.875rem;
    margin-bottom: 0;
    margin-top: 0;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
    background: #fff;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.08);
  }
}
.filter__title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
  color: #1A2029;
  margin: 0;
}
@media (max-width: 767.98px) {
  .filter__title {
    padding: 0.625rem 0;
  }
}
.filter__clear {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
  color: #1364A1;
  background: transparent;
  border: none;
}
@media (max-width: 767.98px) {
  .filter__clear {
    padding: 0.625rem 0;
  }
}
.filter__content li.checkbox.municipality {
  list-style: none;
}
@media (max-width: 767.98px) {
  .filter__content {
    padding-left: 0.875rem;
    padding-right: 0.875rem;
    padding-bottom: 1.25rem;
    width: 100%;
    overflow-y: auto;
    position: absolute;
    top: 0;
    bottom: 4rem;
    margin-top: 4rem;
    padding-top: 0.5rem;
  }
}
.filter__content label:hover, .filter__content input:hover {
  cursor: pointer;
}
.filter__container {
  border-top: 1px solid #e9e9e9;
  padding-top: 1.063rem;
  padding-bottom: 1.063rem;
}
@media (min-width: 768px) {
  .filter__container--border-sm {
    padding-top: 0;
    border-top: 0;
  }
}
.filter__container--noborder {
  border-top: 0;
}
.filter__footer {
  position: fixed;
  bottom: 0;
  height: 4rem;
  padding: 0 0.875rem;
  border-top: 1px solid #E1E7EC;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: #fff;
}
@media (min-width: 768px) {
  .filter__footer {
    display: none;
  }
}
.filter__btn {
  padding: 0.75rem 0;
  font-weight: 600;
  border: none;
  text-align: center;
  width: 100%;
  background-color: #227BBC;
  color: #fff;
  transition: background-color 0.3s, color 0.3s;
  border-radius: 4px;
}
.filter__btn:hover, .filter__btn:focus {
  background-color: #1364A1;
}
.filter-header {
  margin: 0;
  position: relative;
  background-color: transparent;
  width: 100%;
  border: none;
  text-align: left;
  padding: 0;
}
.filter-header__name {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0;
}
.filter-header:not(.collapsed) .filter-header__toggle:before {
  transform: rotate(90deg);
}
.filter-header__toggle {
  display: block;
  position: absolute;
  width: 28px;
  height: 28px;
  right: 0;
  top: 0;
}
.filter-header__toggle:before, .filter-header__toggle:after {
  content: "";
  position: absolute;
  background-color: #1A2029;
}
.filter-header__toggle:after {
  width: 16px;
  height: 2px;
  left: 7px;
  top: 13px;
  opacity: 1;
}
@media (min-width: 992px) {
  .filter-header__toggle:after {
    width: 12px;
    left: 9px;
  }
}
.filter-header__toggle:before {
  width: 2px;
  height: 16px;
  left: 14px;
  top: 6px;
  transition: transform 0.2s ease;
}
@media (min-width: 992px) {
  .filter-header__toggle:before {
    height: 12px;
    top: 8px;
  }
}
.filter-group__wrap {
  padding-top: 0.75rem;
}
@media (max-width: 767.98px) {
  .filter-section:first-child .filter__container {
    border-top: 0;
  }
}
.filter-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 0.5rem;
  margin-bottom: 3rem;
  background-color: #fff;
  border: 1px solid #E1E7EC;
  padding: 0.625rem 2rem;
  border-radius: 4px;
  font-weight: 600;
}
@media (min-width: 768px) {
  .filter-button {
    display: none;
  }
}
.filter-button:hover, .filter-button:focus {
  background-color: #F8FAFC;
}
.filter-button--fixed {
  position: fixed;
  bottom: 2rem;
  z-index: 10;
  width: auto;
  border-radius: 5rem;
  box-shadow: 0px 8px 48px -20px #14242f;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.custom-select {
  display: inline-flex;
  width: auto;
  font-size: 0.875rem !important;
  border: transparent;
}
.search-results__title {
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.5;
}
.search-sort__label {
  margin-right: 10px;
}
@media (min-width: 768px) {
  .filter-section--sticky {
    position: sticky;
    top: 3.75rem;
    z-index: 10;
    background-color: #fff;
    padding: 1rem 0;
  }
  .filter-section.is-pinned {
    border-top: 1px solid #E1E7EC;
    box-shadow: 0 8px 14px 0 rgba(0, 0, 0, 0.03);
  }
}
@media (min-width: 992px) {
  .filter-section--sticky {
    top: 5rem;
  }
}
.btn-group.show .dropdown-button {
  background-color: #E6F4FF;
  color: #1364A1;
}
.filter__content .dropdown-button {
  margin-right: 0.75rem;
}
.dropdown-button {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-weight: 600;
  color: #1A2029;
  padding: 0.375rem 1.5rem;
}
.dropdown-button--active {
  background-color: #F8FAFC;
  border-color: #227BBC;
  color: #1364A1;
}
.dropdown-button:hover, .dropdown-button:focus {
  background-color: #E6F4FF;
  border-color: #1364A1;
}
.dropdown-button:after {
  display: none;
}
.dropdown-filter {
  padding: 0;
  min-width: 16.25rem;
}
@media (max-width: 767.98px) {
  .dropdown-filter {
    display: block !important;
    position: relative !important;
    border: none;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .dropdown-filter {
    border: none;
    box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.09);
  }
  .dropdown-filter .filter-header {
    pointer-events: none;
  }
  .dropdown-filter .filter-header__toggle {
    display: none;
  }
}
@media (min-width: 768px) {
  .dropdown-filter__content {
    padding: 1.25rem 1rem 0;
    min-height: 6.75rem;
    max-height: calc(100vh - 24rem);
    overflow-y: auto;
  }
}
.dropdown-filter__footer {
  padding: 0.75rem 1rem;
  display: flex;
  justify-content: space-between;
}
.dropdown-filter .dropdown-divider {
  margin: 0;
}
.dropdown-filter__save, .dropdown-filter__clear {
  background-color: transparent;
  border: none;
  font-weight: 600;
}
.dropdown-filter__clear:hover, .dropdown-filter__clear:focus {
  text-decoration: underline;
}
.dropdown-filter__save {
  color: #227BBC;
}
.dropdown-filter__save:hover, .dropdown-filter__save:focus {
  color: #1364A1;
}
.dropdown-filter ul {
  list-style: none;
  padding-left: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
.dropdown-filter ul ul {
  padding-left: 1.5rem;
}
.dropdown-group {
  padding-top: 0.75rem;
}
.dropdown-group--sm {
  padding-top: 0.5rem;
}
@media (min-width: 768px) {
  .dropdown-group--nopadding {
    padding-top: 0;
  }
}
.checkbox input[type="checkbox"] ~ ul {
  display: none;
  margin-bottom: 0;
}
.checkbox input[type="checkbox"]:checked ~ ul, .checkbox input[type="checkbox"]:indeterminate ~ ul {
  display: block;
}
.checkbox input[type="checkbox"]:checked + label, .checkbox input[type="checkbox"]:indeterminate + label {
  font-weight: 600;
}
input[type="checkbox"]:indeterminate {
  background-color: blue;
}
.checkbutton {
  border: 1px solid #1A2029;
  padding: 0.25rem 0.5rem;
  color: #1A2029;
  border-radius: 5rem;
}
.checkbutton:hover {
  cursor: pointer;
}
.checkbutton input {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}
.button {
  display: inline-block;
  padding: 0.75rem 2rem;
  text-align: center;
  background-color: #227BBC;
  color: #fff;
  font-weight: 600;
  transition: color 0.3s ease, background-color 0.3s ease;
  border-radius: 4px;
  cursor: pointer;
  border: 0;
}
.button:hover, .button:focus {
  background-color: #1364A1;
  color: #fff;
  text-decoration: none;
}
.button--minor {
  color: #227BBC;
  background-color: #fff;
}
.button--minor:hover, .button--minor:focus {
  color: #1364A1;
  background-color: #fff;
  text-decoration: none;
}
.button--cancel {
  color: #555;
  border: 2px solid #eee;
  background-color: #fff;
}
.button--cancel:hover, .button--cancel:focus {
  color: #1364A1;
  background-color: #fff;
}
.button.disabled {
  color: #555;
  background-color: #ddd;
}
.button.disabled:hover, .button.disabled:focus {
  color: #555;
  background-color: #ddd;
}
.action-sort, .action-get-route {
  width: 100%;
  border: 0;
  border-radius: 2px;
}
.action-sort:hover, .action-sort:focus, .action-get-route:hover, .action-get-route:focus {
  background-color: #0C4875;
  color: #fff;
  text-decoration: none;
}
@media (max-width: 767.98px) {
  .action-get-route {
    margin-top: 1.25rem;
  }
}
.restaurant-link {
  margin-bottom: 1.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: none;
  height: 8rem;
  box-shadow: 0px 8px 48px -20px rgba(20, 36, 47, 0.2);
  border-radius: 8px;
}
.restaurant-link img {
  padding-top: 0;
}
.restaurant-link--underline {
  position: relative;
  border-bottom: 0px solid #fff;
  transition: border 0.3s ease;
  background-color: #fff !important;
}
.restaurant-link--underline div {
  transform: translateY(0px);
  transition: transform 0.3s ease;
}
.restaurant-link--underline:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  border-radius: 0 0 8px 8px;
  width: 100%;
  height: 8px;
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform 0.3s ease;
  background-color: #227BBC;
}
.restaurant-link--underline:hover div {
  transform: translateY(-4px);
}
.restaurant-link--underline:hover:after {
  transform: scaleY(1);
}
.restaurant-link--japanican:after {
  background-color: #CA2720;
}
.restaurant-link--booking:after {
  background-color: #273B7D;
}
.button--filter {
  font-weight: 400;
  padding: 4px 20px;
  border-radius: 100px;
  margin-right: 10px;
}
.button--filter:not(.active) {
  color: #227BBC;
  background-color: white;
  border: 1px solid #DDE2E5;
}
.button--small {
  padding: 4px 10px;
  font-weight: normal;
}
.button--large {
  padding: 12px 44px;
  font-size: 1.125rem;
}
.button--rounded {
  border-radius: 100px;
}
.button--blue {
  color: white;
  background-color: #227BBC;
}
.map {
  position: relative;
  overflow: hidden;
  width: 100%;
  border-radius: 4px;
  background-color: #ECEFF0;
}
.map--sticky {
  position: sticky !important;
  top: 6rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .map--sticky {
    margin-top: 2rem;
  }
}
.map--area {
  height: 20rem;
}
@media (min-width: 992px) {
  .map--area {
    height: 32.5rem;
  }
}
.map--trip {
  height: 20rem;
}
@media (min-width: 768px) {
  .map--trip {
    height: 22rem;
  }
}
.map--planner {
  margin-top: 2rem;
}
.map--75 {
  padding-top: 75%;
}
.map iframe, .map > img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 992px) {
  .trip-map {
    position: sticky;
    top: 8rem;
    margin-bottom: 0;
  }
}
.map-pin-controls {
  margin-top: 0.75rem;
}
.action-map-pin-switch {
  background-color: #F7FAFB;
  width: 100%;
  border: none;
  padding: 0.5rem 0 0.5rem 0;
  font-size: 0.875rem;
  margin-bottom: 0.75rem;
  display: block;
  color: #666;
  transition: 0.2s;
  text-align: center;
  border-radius: 4px;
  font-size: 1rem;
  cursor: pointer;
}
.action-map-pin-switch:hover {
  background-color: #227BBC;
  color: #fff;
  text-decoration: none;
}
.action-map-pin-switch.selected {
  background-color: #227BBC;
  color: #fff;
}
.action-map-pin-switch.selected:hover, .action-map-pin-switch.selected:focus {
  background-color: #1364A1;
}
#kngw-map .fill {
  fill: #BFCCD8;
  stroke: #fff;
}
#kngw-map .fill:hover, #kngw-map a:hover .fill {
  fill: #95AABD;
  cursor: pointer;
}
#kngw-map .border {
  stroke: #5A7690;
  fill: none;
}
#kngw-map .fill.mp--active {
  fill: #95AABD;
}
#kngw-map a:hover .fill, #kngw-map .active .fill {
  fill: #6886a1;
}
#kngw-map .fill.mp-carousel--active {
  fill: #6886a1;
  transition: 0.3s ease;
}
#kngw-map .lk {
  fill: #C0DCF7;
  pointer-events: none;
}
#kngw-map .kngw-map__region .mp-link {
  display: none;
}
#kngw-map .kngw-map__region--active .mp-link {
  display: block;
}
#kngw-map .border {
  pointer-events: none;
}
#kngw-map .kngw-map__region--active:hover .rg--active, #kngw-map .kngw-map__region--active:hover .rg {
  stroke-width: 2px;
}
.kngw-map a:hover {
  text-decoration: none;
}
.kngw-map .kngw__area path, .kngw-map .kngw__area polygon {
  fill: #BFCCD8;
  stroke: #EFF4F8;
  stroke-width: 0.5;
  stroke-linejoin: round;
}
.kngw-map .kngw__area:hover path, .kngw-map .kngw__area:hover polygon {
  fill: #95AABD;
  transition: fill 0.3s;
}
.kngw-map .kngw__labels .city {
  fill: #000222;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.3rem;
}
.kngw-map .kngw__labels .area {
  fill: #073650;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 600;
  font-size: 1.5rem;
}
.kngw-map .kngw__labels .prefecture {
  fill: #073650;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 600;
  font-size: 2.5rem;
  pointer-events: none;
  text-transform: uppercase;
}
.kngw-map .kngw__labels .prefecture--tokyo {
  fill: #697B8C;
}
.kngw-map .kngw__lakes {
  fill: #C0DCF7;
  stroke: #000000;
  stroke-width: 0.5;
  stroke-linejoin: round;
}
.kngw-map .pin {
  fill: #227BBC;
}
.kngw-map .tokyo polygon {
  fill: none;
  stroke: #BFCCD8;
  stroke-linejoin: round;
  stroke-width: 1.5;
}
.kngw-map .haneda-plane {
  transform: translate(26px, -1px);
  fill: #073650;
}
.area__map .area-image {
  display: block;
  background-color: #ECEFF0;
  border-radius: 6px;
}
.area__map .area-image .image {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-backface-visibility: hidden;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.area__map .area-image .image-placeholder {
  position: relative;
  overflow: hidden;
  padding-top: 100%;
}
.area__map .area-image .title {
  position: absolute;
  color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 0px 1px 10px #000;
}
.area__map .area-image:hover {
  text-decoration: none;
}
.area__map .area-image:hover .image {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.area__map .area-map__map {
  position: relative;
}
.area__map .area-map__label {
  position: absolute;
  background: #fff;
  border-radius: 2px;
  padding: 5px;
  color: #000;
  font-weight: normal;
  font-size: 0.875rem;
  line-height: 100%;
}
.area__map .area-map__label:after {
  content: " ";
  position: absolute;
  top: 100%;
  /* at the bottom of the tooltip */
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}
.area__map .area-map__label--yokohama-kawasaki {
  top: 25%;
  left: 60%;
}
.area__map .area-map__label--miura {
  top: 70%;
  left: 75%;
}
.area__map .area-map__label--sagami {
  top: 13%;
  left: 30%;
}
.area__map .area-map__label--shonan {
  top: 50%;
  left: 44%;
}
.area__map .area-map__label--hakone {
  top: 75%;
  left: 10%;
}
.area__map .area-map__label--tanzawa-oyama {
  top: 35%;
  left: 30%;
}
.area__map .area-map__label--ashigara {
  top: 40%;
  left: 10%;
}
.area__map .area-map__title {
  position: absolute;
  color: #fff;
  left: 1.75rem;
  bottom: 1rem;
  margin-bottom: 0;
  font-weight: bold;
  font-size: 1.5rem;
}
.area__map .area-map__carousel .carousel-inner {
  border-radius: 4px;
  margin-bottom: 0;
  overflow: hidden;
}
@media (max-width: 991.98px) {
  .area__map .area-map__carousel .carousel-inner {
    margin-top: 2rem;
  }
}
.area__map .area-map__carousel .card__image-gradient {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, rgba(51, 51, 51, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  background: -webkit-linear-gradient(top, rgba(51, 51, 51, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  background: -o-linear-gradient(top, rgba(51, 51, 51, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  background: -ms-linear-gradient(top, rgba(51, 51, 51, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  background: linear-gradient(to bottom, rgba(51, 51, 51, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
}
.area__map .area-map__carousel-wrap {
  position: relative;
}
.area__map .area-map__carousel .image {
  width: 100%;
}
.area__map .area-map__carousel .left {
  left: -9px;
}
.area__map .area-map__carousel .right {
  right: -9px;
}
.area__map .area-map__carousel .carousel-control {
  background: none;
  font-size: 1.25rem;
}
.area__map .area-map__carousel .carousel-control .item {
  -webkit-transition: 0.3s ease-in-out left;
  -moz-transition: 0.3s ease-in-out left;
  -o-transition: 0.3s ease-in-out left;
  transition: 0.3s ease-in-out left;
}
.area__map .area-map__carousel .carousel-control:hover, .area__map .area-map__carousel .carousel-control:focus {
  background-color: #0C4875;
  text-decoration: none;
}
.area__map .area-map__carousel .arrow--carousel {
  position: absolute;
  top: 38%;
  text-align: center;
  height: 48px;
  width: 48px;
  opacity: 1;
  display: flex;
  background-color: #227BBC;
  justify-content: center;
  align-items: center;
  text-shadow: none;
  color: #fff;
  transition: background-color 0.3s ease;
}
.area__map .area-map__carousel .card {
  margin-bottom: 0;
}
.area__map .area-map__carousel .card__content {
  background: #fff;
  height: 11.5rem;
  padding: 1.75rem;
}
.area__map .area-map__carousel .card__content-texts {
  font-size: 1rem;
  line-height: 1.6;
  color: #333333;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.area__map .area-map__carousel .card__content-discover {
  font-style: normal;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.6;
  color: #227BBC;
  margin-top: 1.6rem;
}
.area__map .area-map__carousel .image-placeholder {
  padding-top: 66%;
}
section.container.map {
  margin-top: 0;
}
section.container.map .map {
  margin-top: 0;
}
.regions-map path.area.selected, .regions-map g.area.selected path {
  fill: #227BBC;
}
.interactive-access-map, .iam {
  /*
  position: relative;
  box-shadow: 0px 13.4875px 26.9751px -5.39502px rgba(30, 63, 94, 0.08); border-radius: 12.1388px; overflow: hidden;
  */
}
.interactive-access-map .tab-content, .iam .tab-content {
  border: 2px solid #eee;
  border-radius: 6px;
}
.interactive-access-map figure.access-map__figure, .iam figure.access-map__figure {
  margin: 0;
  position: relative;
}
.interactive-access-map .tab-pane figure > svg, .iam .tab-pane figure > svg {
  width: 100%;
  height: 100%;
}
.interactive-access-map .toolbar, .iam .toolbar {
  height: 1.5rem;
  padding: 0;
  margin-top: 10px;
  display: flex;
  gap: 12px;
  justify-content: right;
  /*
    .action {
      cursor: pointer; width: 70px; height: 70px;
      background: #FFFFFF; box-shadow: 0px 0px 9px rgb(0 72 72 / 13%); border-radius: 819px; color: #227BBC; font-size: 12px; font-weight: bold;
      display: flex; flex-direction: column; justify-content: center; align-items: center;

      svg { width: 1.5em; height: 1.5em; fill: #227BBC; }
    }
    */
}
.interactive-access-map .toolbar .nav-link, .iam .toolbar .nav-link {
  color: #788D9F;
  cursor: pointer;
  padding: 0;
}
.interactive-access-map .toolbar .nav-link.active, .iam .toolbar .nav-link.active {
  color: #297CBA;
  border-bottom: 2px solid #297CBA;
}
.kanagawa-iam-svg a.kngw__area:hover {
  opacity: 0.7;
}
.kanagawa-iam-svg .highlight-pin .highlight-pin__label {
  font-weight: 500;
  text-transform: uppercase;
  pointer-events: none;
}
.kanagawa-iam-svg .highlight-pin a:hover + .highlight-pin__label {
  font-weight: 700;
}
.kanagawa-iam-svg .highlight-pin a:hover {
  text-decoration: none;
}
.kanagawa-iam-svg .highlight-pin__icon .highlight-pin__icon-border, .kanagawa-iam-svg .highlight-pin__icon .highlight-pin__icon-bg {
  fill: #227BBC;
}
.kanagawa-iam-svg .highlight-pin__icon foreignObject div {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.kanagawa-iam-svg .highlight-pin__icon foreignObject div path {
  stroke: white;
}
.kanagawa-iam-svg .highlight-pin__icon foreignObject div i:before {
  color: white;
  font-size: 21px;
  font-weight: 700;
}
.kanagawa-iam-svg .highlight-pin__icon:hover .highlight-pin__icon-bg {
  fill: white;
}
.kanagawa-iam-svg .highlight-pin__icon:hover foreignObject div path {
  stroke: #227BBC;
}
.kanagawa-iam-svg .highlight-pin__icon:hover foreignObject div i:before {
  color: #227BBC;
}
.kanagawa-iam-svg .prefecture.label {
  font-weight: bold;
  font-size: 1.3em;
  letter-spacing: 5px;
  text-transform: uppercase;
  pointer-events: none;
}
.kanagawa-iam-svg .transit.label {
  font-size: 0.7em;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 600;
  pointer-events: none;
}
.kanagawa-iam-svg .station.label {
  font-size: 0.7em;
  font-weight: 600;
  pointer-events: none;
}
.kanagawa-iam-svg .minor.label {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 600;
  pointer-events: none;
}
.kanagawa-iam-svg .major.label {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 600;
  font-size: 0.9em;
  pointer-events: none;
}
.kanagawa-iam-svg .title.label {
  text-transform: uppercase;
  letter-spacing: 5px;
  font-weight: 600;
  pointer-events: none;
}
.kanagawa-iam-svg .focus.label {
  text-transform: uppercase;
  font-weight: bolder;
  pointer-events: none;
}
.kanagawa-iam-svg .tokaido-line__to-Tokyo {
  pointer-events: none;
}
.mcb-pin-controls {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.mcb-pin-button {
  width: 100%;
  flex-shrink: 0;
  margin-bottom: 0.75rem;
  padding: 1.5rem 0.5rem;
  border-radius: 4px;
  background-color: #F7FAFB;
  color: black;
  font-weight: 600;
  transition: 0.2s;
  cursor: pointer;
}
.mcb-pin-button, .mcb-pin-button:hover {
  text-decoration: none;
}
.mcb-pin-button i.fa {
  margin: 0 0.5rem;
}
.mcb-pin-button.selected {
  background-color: #042C48;
  color: white;
}
@media (max-width: 991.98px) {
  .mcb-pin-controls {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .mcb-pin-button {
    width: calc(50% - 6px);
  }
  .mcb h2 {
    margin-top: 1.5rem;
  }
}
.vs {
  position: relative;
  padding: 50px 0;
  overflow: hidden;
  /*
  &-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000000;
    overflow: hidden;
    margin-bottom: 0;
    z-index: 0;

    img {
      object-fit: cover;
    }

    iframe {
      position: absolute;
      width: 100vw;
      height: calc((100vw/16)*9);
      top: 50%;
      left: 50%;
      z-index: 0;
      -ms-transform: translateX(-50%) translateY(-50%);
      -moz-transform: translateX(-50%) translateY(-50%);
      -webkit-transform: translateX(-50%) translateY(-50%);
      transform: translateX(-50%) translateY(-50%);
      border: none;
    }

    @include media-breakpoint-up(md) {
      min-height: 30rem;
      padding-top: 0;
    }
  }
  */
  /*
  &-cta {
    display: inline-block;
    font-weight: 600;
    border: 1px solid transparent;
    text-align: center;
    user-select: none;
    border-radius: 2px;
    line-height: 1.5;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    color: #fff;
    padding: 9px 22px;
    font-size: 1rem;
    // margin-top: 8.375em;
    background-color: $black !important;

    &:hover, &:focus {
      text-decoration: none;
      color: $white;
      background: #17639a;
    }
  }
  */
}
.vs:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #101010 0%, rgba(26, 26, 26, 0.67) 29.95%, rgba(255, 255, 255, 0.46) 100%);
  z-index: -1;
}
.vs-background, .vs-background iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  border: 0;
}
@media (min-width: 1260px) {
  .vs-frame-wrapper {
    padding-bottom: 56.25%;
    position: relative;
  }
  .vs-frame-wrapper .hero__overlay {
    background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.2) 65%, #000000 100%);
  }
}
.vs-content {
  min-height: 37.5rem;
  height: calc(80vh - 4rem);
  color: #fff;
}
.vs-content-texts {
  max-width: 56rem;
  padding: 30px 14px;
}
@media (min-width: 768px) {
  .vs-content-texts {
    padding-right: 30px;
  }
}
.vs-content-tagline {
  font-weight: 700;
  position: relative;
  font-size: 0.875rem;
  margin-bottom: 0;
  text-shadow: 0px 1px 12px rgba(0, 0, 0, 0.44);
  text-transform: uppercase;
  letter-spacing: 1.2px;
  padding-left: 4.5rem;
}
.vs-content-tagline:before {
  content: " ";
  display: block;
  background-color: white;
  width: 4rem;
  height: 2px;
  position: absolute;
  top: 0.5rem;
  left: 0;
}
@media (min-width: 768px) {
  .vs-content-tagline:before {
    width: 4rem;
  }
}
.vs-content-title {
  font-weight: 700;
  margin-top: 0.75rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-shadow: 0px 1px 12px rgba(0, 0, 0, 0.85);
  font-size: 2rem;
}
.vs-content-cards {
  flex-wrap: nowrap;
}
@media (max-width: 991.98px) {
  .vs-content-cards {
    width: calc(100% + 10vw);
    padding: 0 14px;
  }
}
@media (max-width: 767.98px) {
  .vs-content-cards {
    overflow-x: scroll;
  }
}
.vs-links > *:not(:first-child) {
  padding-left: 2rem;
}
.vs-content > .vs-links {
  padding: 30px 14px;
  width: 100%;
  text-align: center;
  z-index: 5;
}
.vs-button {
  display: inline-block;
  background-color: #fff;
  padding: 0.75rem 1.25rem;
  line-height: 1.25;
  font-weight: 600;
  border-radius: 40px;
  color: #227BBC;
  transition: background-color 0.3s ease, color 0.3s ease;
  margin-top: 0.75rem;
  font-size: 1rem;
}
.vs-button:hover, .vs-button:focus {
  text-decoration: none;
  color: #227BBC;
}
@media (max-width: 575.98px) {
  .vs-button {
    width: 100%;
  }
}
.vs-link {
  background-color: transparent;
  color: #fff;
}
.vs-link:hover {
  color: #fff;
}
.vs-card {
  background-size: cover;
  aspect-ratio: 1.5;
  color: white;
  position: relative;
  border-radius: 4px;
  background-color: lightgray;
  background-repeat: no-repeat;
  box-shadow: 0px 8px 18px 0px rgba(26, 32, 41, 0.7);
}
@media (max-width: 767.98px) {
  .vs-card {
    aspect-ratio: 0.7142857143;
  }
}
.vs-card-nb {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  max-width: calc(100% - 1rem);
  padding: 6px;
  border-radius: 2px;
  background: rgba(4, 44, 72, 0.2);
  backdrop-filter: blur(16px);
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.9rem;
}
.vs-card-title {
  position: absolute;
  bottom: 0;
  left: 1.5rem;
  right: 1.5rem;
  text-align: center;
  font-size: 1.5rem;
}
@media (max-width: 575.98px) {
  .vs-card-title {
    font-size: 1.2rem;
  }
}
.vs-scroll--left, .vs-scroll--right {
  position: absolute;
  top: 50%;
  right: 20px;
  display: inline-block;
}
.vs-scroll--left {
  left: 20px;
}
@media (min-width: 992px) {
  .vs-scroll {
    position: absolute;
    top: 100px;
    right: 15px;
  }
  .vs-scroll > * {
    position: initial;
    margin: 5px;
  }
}
@media (max-width: 1200px) {
  .vs-scroll {
    top: 140px;
  }
}
section.video-center {
  margin-top: 80px;
  margin-bottom: 40px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  section.video-center {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 992px) {
  section.video-center {
    margin-bottom: 140px;
  }
}
.video-player, .video-player--black-borders, .humans-modal__player, .experience-modal__player {
  position: relative;
  border-radius: 4px;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
  background-color: #F7FAFB;
  box-shadow: 0px 11px 15.04px 0.96px rgba(0, 0, 0, 0.25);
}
.video-player iframe, .video-player--black-borders iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 4px;
}
.video-player--black-borders {
  padding-bottom: 56.25%;
}
@media screen and (min-width: 768px) {
  .video-player--black-borders {
    padding-bottom: 52.8%;
  }
}
@media screen and (min-width: 992px) {
  .video-player--black-borders {
    padding-bottom: 53%;
  }
}
@media screen and (min-width: 1200px) {
  .video-player--black-borders {
    padding-bottom: 53.65%;
  }
}
.video-cta {
  cursor: pointer;
}
.video-cta-play-icon {
  width: 60px;
  height: 60px;
  border: 1px dashed #FFFFFF;
  flex-grow: 0;
  position: relative;
  border-radius: 30px;
  overflow: hidden;
  background: none;
}
.video-cta-play-icon img {
  top: 5px;
  left: 5px;
  border-radius: 25px;
  width: 48px;
  height: 48px;
}
.video-cta-play-icon i.fa {
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  color: white;
}
.vcs {
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
}
.vcs > .container {
  display: flex;
  gap: 10px;
  align-items: center;
}
.vcs-label {
  color: white;
  font-weight: 600;
  flex-grow: 1;
}
.vcs .video-cta-play-icon.noimg img {
  display: none;
}
.vcs .video-cta-play-icon.noimg i.fa {
  color: #1364A1;
  background-color: white;
  width: 48px;
  height: 48px;
  border-radius: 50%;
}
.vcs .video-cta-play-icon.noimg i.fa:before {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.vcb {
  position: relative;
}
.vcb > img {
  width: 100%;
  aspect-ratio: 2;
  border-radius: 6px;
  object-fit: cover;
}
.vcb .video-cta-play-icon i.fa {
  color: #1364A1;
  background-color: white;
  width: 48px;
  height: 48px;
  border-radius: 50%;
}
.vcb .video-cta-play-icon i.fa:before {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.vcb-content {
  position: absolute;
  bottom: 16px;
  left: 16px;
  margin-left: 14px;
}
.vcb-label {
  font-size: 2rem;
  font-weight: 700;
  color: white;
  margin: 0;
}
.vjs-startup-card {
  text-align: center;
}
.vjs-startup-card .vsc-surtitle {
  font-size: 2em;
}
.vjs-startup-card .vsc-title {
  font-size: 4em;
}
.vjs-spot-playtimecard {
  border-radius: 5px;
  background: white;
  margin: 16px;
  float: right;
  height: 50px;
  overflow: hidden;
  position: relative;
  display: flex;
}
.vjs-spot-playtimecard > * {
  align-self: center;
}
.vjs-spot-playtimecard .vsp-image {
  max-height: 100%;
}
.vjs-spot-playtimecard .vsp-label {
  color: black;
  text-decoration: none;
  padding: 10px;
  font-size: 16px;
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.vjs-spot-playtimecard .vsp-bookmark:before {
  content: "";
  border-left: 1px solid #ccc;
  height: 30px;
  display: inline-block;
  position: absolute;
  top: calc(-50% + 15px);
  left: 0px;
}
.vjs-spot-playtimecard .vsp-bookmark {
  color: red;
  position: relative;
  padding: 10px;
  text-decoration: none;
  cursor: pointer;
}
.vjs-spot-playtimecard .vsp-bookmark.saved i {
  font-weight: 900;
}
.vjs-earphones-recommended {
  pointer-events: none;
  transition: 0.5s;
}
.vjs-earphones-recommended.closing {
  opacity: 0;
}
.vjs-earphones-recommended .ver-veil {
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.1);
}
.vjs-earphones-recommended .ver-visuals {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 60px;
  font-size: 2em;
}
.vjs-earphones-recommended .ver-visuals > * {
  display: inline-block;
}
.vjs-earphones-recommended .ver-visuals .ver-ripples {
  position: relative;
  width: 1em;
  height: 1em;
}
.vjs-earphones-recommended .ver-visuals .ver-ripples:before, .vjs-earphones-recommended .ver-visuals .ver-ripples:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid white;
  border-radius: 50%;
}
.vjs-earphones-recommended .ver-visuals .ver-ripples:before {
  animation: ripple 2s linear infinite;
}
.vjs-earphones-recommended .ver-visuals .ver-ripples:after {
  animation: ripple 2s linear 1s infinite;
}
@keyframes ripple {
  0% {
    transform: scale(1.5);
  }
  50% {
    transform: scale(2.5);
    opacity: 1;
  }
  100% {
    transform: scale(3.5);
    opacity: 0;
  }
}
.vjs-earphones-recommended .ver-visuals .ver-message {
  padding-left: 15px;
}
.vpa-veil {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.3);
}
.vpa-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  position: absolute;
  left: 50%;
  top: 40%;
  translate: -50% -50%;
  width: min(50%, 500px);
  text-align: center;
}
.vpa-title {
  font-size: 3em;
}
.vpa-thumbnail-wrapper {
  position: relative;
  max-width: 100%;
  min-width: 300px;
  aspect-ratio: 1.7777777778;
  cursor: pointer;
  overflow: hidden;
}
.vpa-thumbnail-wrapper .vpa-play-again-cta {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background-color: white;
  color: black;
  border-radius: 4px;
  padding: 15px;
  font-size: 1.5em;
  font-weight: 600;
}
.vpa-discover-cta {
  display: inline-block;
  padding: 20px;
  border: 1px solid white;
  border-radius: 4px;
  font-size: 1.5em;
  font-weight: 600;
}
.vpa-discover-cta, .vpa-discover-cta:hover {
  color: white;
}
.vpn {
  display: flex;
  gap: 10px;
  align-items: flex-end;
  position: absolute;
  bottom: 60px;
  right: 30px;
  max-width: min(25%, 300px);
  font-size: 1.5em;
}
.vpn-title {
  margin-bottom: 0.5em;
}
.vpn-thumbnail {
  position: relative;
  max-width: 100%;
  aspect-ratio: 1.7777777778;
  cursor: pointer;
}
.vcd {
  width: 100px;
  min-width: 100px;
  height: 100px;
  position: relative;
}
.vcd-digits {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  font-size: 1.2em;
  font-weight: 700;
}
.vcd-dial:before, .vcd-dial:after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 50%;
}
.vcd-dial:before {
  background: conic-gradient(from 0deg at 50% 50%, #333 0deg, #333 360deg);
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.vcd-dial:after {
  background-color: #082030;
  height: 95%;
  width: 95%;
  top: 2.5%;
  left: 2.5%;
  margin: 0;
}
.vhr {
  pointer-events: none;
  transition: 0.5s;
}
.vhr__visuals {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 3.75rem;
  font-size: 1rem;
  color: #E1E7EC;
}
.vhr__ripples {
  display: inline-block;
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
}
.vhr__ripples:before, .vhr__ripples:after, .vhr__ripples--extra {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 1px solid #E1E7EC;
  border-radius: 50%;
}
.vhr__ripples:before {
  animation: ripple 4s linear infinite;
}
.vhr__ripples:after {
  animation: ripple 4s linear 2s infinite;
}
.vhr__ripples--extra {
  animation: ripple 4s linear 3s infinite;
}
.vhr__message {
  display: inline-block;
  padding-left: 1rem;
}
@media (max-width: 767.98px) {
  .vhr {
    display: none;
  }
}
.vs-content {
  height: 100%;
  align-items: end;
  padding-bottom: 2rem;
}
@media (min-width: 768px) {
  .vs-content {
    align-items: center;
    padding: 0;
  }
}
.spotlight {
  position: relative;
  padding: 10rem 1rem 1.75rem;
  border-radius: 12px;
}
@media (min-width: 576px) {
  .spotlight {
    padding: 10rem 1.75rem 1.75rem;
  }
}
@media (min-width: 768px) {
  .spotlight {
    padding: 4.5rem;
  }
}
.spotlight:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, #073650 19.08%, rgba(7, 54, 80, 0) 98.69%);
  border-radius: inherit;
}
@media (min-width: 768px) {
  .spotlight:after {
    background: linear-gradient(90deg, #073650 19.08%, rgba(7, 54, 80, 0) 98.69%);
  }
}
.spotlight img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  width: 100%;
  height: 85%;
  border-radius: 12px;
}
@media (min-width: 768px) {
  .spotlight img {
    height: 100%;
  }
}
.spotlight__content {
  position: relative;
  z-index: 2;
  color: #fff;
}
@media (min-width: 768px) {
  .spotlight__content {
    max-width: 25rem;
    width: 50%;
  }
}
.spotlight__title {
  font-size: 1.75rem;
  margin: 0;
  line-height: 1.25;
}
.spotlight__copy {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-top: 1.25rem;
  font-size: 1.125rem;
  line-height: 1.7777778;
}
.spotlight__cta {
  margin-top: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
@media (min-width: 576px) {
  .spotlight__cta {
    flex-direction: row;
  }
}
.spotlight__button {
  padding: 0.5rem 1.375rem;
  background-color: #fff;
  color: #1A2029;
  border-radius: 2px;
  text-align: center;
  font-weight: 600;
  transition: color 0.3s ease, background-color 0.3s ease;
}
@media (max-width: 767.98px) {
  .spotlight__button {
    width: 100%;
  }
}
.spotlight__button:hover, .spotlight__button:focus {
  text-decoration: none;
  color: #227BBC;
}
.spotlight__button--secondary, .spotlight__button--pdf {
  background-color: transparent;
  color: #fff;
  align-self: center;
  margin-top: 1rem;
}
@media (min-width: 576px) {
  .spotlight__button--secondary, .spotlight__button--pdf {
    margin-top: 0;
    margin-left: 1.75rem;
  }
}
.spotlight__button--secondary:hover, .spotlight__button--secondary:focus, .spotlight__button--pdf:hover, .spotlight__button--pdf:focus {
  background-color: transparent;
  color: #fff;
  text-decoration: underline;
}
.spotlight__button--secondary {
  padding: 0;
}
.spotlight__button--pdf {
  border: 1px solid #fff;
}
.spotlight__button--pdf:hover, .spotlight__button--pdf:focus {
  text-decoration: none;
  color: #E0EBEA;
}
.spotlight__component {
  z-index: 2;
}
@media (min-width: 768px) {
  .spotlight__component {
    position: absolute;
    right: 0;
  }
}
.spotlight-book {
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%);
  width: auto !important;
  height: 81% !important;
}
@media (max-width: 767.98px) {
  .spotlight--image {
    padding: 5rem 1rem 1.75rem;
  }
}
.spotlight__visual {
  z-index: 1;
  text-align: center;
  margin-bottom: 3rem;
}
@media (min-width: 768px) {
  .spotlight__visual {
    text-align: right;
    margin-bottom: 0;
  }
}
.spotlight__visual div {
  position: relative;
  border-radius: 50%;
  display: inline-block;
  width: 50%;
  padding-bottom: 50%;
  background: #fff;
}
@media (min-width: 768px) {
  .spotlight__visual div {
    width: 80%;
    padding-bottom: 80%;
  }
}
@media (min-width: 992px) {
  .spotlight__visual div {
    width: 50%;
    padding-bottom: 50%;
  }
}
.hpw__title {
  margin-top: 5rem;
  line-height: 1.125;
  font-weight: 700;
  font-size: 2rem;
}
@media (min-width: 768px) {
  .hpw__title {
    font-size: 2.25rem;
  }
}
.hpw__subtitle {
  font-size: 1.125rem;
  margin-top: 1rem;
  margin-bottom: 0;
}
.hpw__subtitle strong, .hpw__subtitle__highlight {
  color: #227BBC;
}
.hpw {
  box-shadow: 0px 8px 48px -20px #14242f54;
  border-radius: 4px;
  padding: 0;
  margin: 2.5rem 0 0 0;
  display: flex;
  flex-wrap: wrap;
}
.hpw__field {
  border-bottom: 1px solid #F8FAFC;
  padding: 0;
  position: relative;
}
.hpw__field:nth-child(3) {
  border-bottom: 0;
}
@media (min-width: 768px) {
  .hpw__field {
    border-bottom: 0;
    border-right: 1px solid #E1E7EC;
  }
}
.hpw__field:nth-child(3) {
  border-right: 0;
}
.hpw__field:nth-child(1) .hpw__select {
  border-radius: 4px 4px 0 0;
}
@media (min-width: 768px) {
  .hpw__field:nth-child(1) .hpw__select {
    border-radius: 4px 0 0 0px;
  }
}
@media (min-width: 992px) {
  .hpw__field:nth-child(1) .hpw__select {
    border-radius: 4px 0 0 4px;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .hpw__field:nth-child(3) .hpw__select {
    border-radius: 0 4px 0 0;
  }
}
.hpw .btn-group {
  height: 100%;
}
.hpw button.dropdown-button {
  text-align: left;
  position: relative;
  width: 100%;
  height: 100%;
  border: none;
}
.hpw button.dropdown-button:hover, .hpw button.dropdown-button:focus {
  background-color: #F8FAFC;
}
.hpw button.dropdown-button > span.selected {
  font-weight: initial;
  display: block;
}
.hpw button.dropdown-button > span.carret {
  position: absolute;
  right: 5px;
  bottom: 5px;
}
.hpw button.dropdown-button + .dropdown-menu {
  width: 100%;
  padding: 0;
  border: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.09);
  margin-top: 0;
}
.hpw button.dropdown-button + .dropdown-menu fieldset.filter__container {
  border-top: 1px solid #e9e9e9;
  padding: 1.25rem 1.5rem 1rem;
}
.hpw button.dropdown-button + .dropdown-menu label.option {
  display: block;
  cursor: pointer;
  display: block;
  cursor: pointer;
  padding: 0.25rem 0;
  margin-bottom: 0.25rem;
}
.hpw button.dropdown-button + .dropdown-menu label.option input[type=radio] {
  visibility: hidden;
  position: absolute;
}
.hpw button.dropdown-button + .dropdown-menu label.option input[type=radio]:checked + span.checkbox__label {
  color: #227BBC;
}
.hpw button.dropdown-button + .dropdown-menu label.option:hover span.checkbox__label {
  color: #227BBC;
}
.hpw button.dropdown-button + .dropdown-menu .dropdown-divider {
  margin: 1em;
}
.hpw .btn-group.show button.dropdown-button {
  background-color: #F8FAFC;
}
.hpw__action {
  padding: 0;
}
.hpw__submit {
  font-size: 1rem;
  font-weight: 600;
  margin-top: 0;
  color: #fff;
  background-color: #227BBC;
  width: 100%;
  padding: 0.75rem;
  border: none;
  border-radius: 0px 0px 4px 4px;
}
.hpw__submit:hover, .hpw__submit:focus {
  background-color: #1364A1;
}
@media (min-width: 992px) {
  .hpw__submit {
    border-radius: 0px 4px 4px 0px;
  }
}
@media (min-width: 992px) {
  .hpw__submit {
    height: 4rem;
  }
}
.spw {
  background-color: #fff;
  box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .spw {
    margin-top: 1.5rem;
  }
}
.spw__header {
  padding: 0.5rem 0.75rem 0.5rem 0.75rem;
  display: flex;
  height: 3rem;
  align-items: center;
  justify-content: space-evenly;
}
.spw__save, .spw__share {
  background-color: #fff;
  color: #227BBC;
  border: none;
  flex: 0 0 50%;
  color: #1A2029;
  font-weight: 600;
  padding: 0.5rem;
}
.spw__save:active .spw-save-icon {
  transition: transform 0.3s ease;
  transform: scale(0.9);
}
.spw__save:hover .spw-save-icon, .spw__save:focus .spw-save-icon {
  color: #CE222D;
}
.spw__save.saved .spw-save-icon {
  font-weight: 900;
  animation: 0.5s ease 0s forwards 1 like;
  color: #CE222D;
}
.spw__share:hover, .spw__share:focus {
  color: #1364A1;
}
.spw__location {
  border-top: 1px solid #E1E7EC;
  display: flex;
  padding: 0 0 0 0.75rem;
  color: #1A2029;
  transition: color 0.3s ease;
}
.spw__location:hover {
  text-decoration: none;
  color: #1364A1;
}
.spw__location:hover .location-icon {
  color: #1A2029;
}
.spw__location:hover .spw__location-address:after {
  opacity: 1;
}
.spw__location-icon {
  margin-right: 0.75rem;
}
.spw__location-content {
  display: flex;
  margin-top: 1.125rem;
  margin-bottom: 1.125rem;
  flex: 1 1 auto;
  align-items: baseline;
}
.spw__location-address {
  flex: 1 1 auto;
  margin-right: 1rem;
  font-size: 0.9375rem;
}
.spw__location-address:after {
  font-family: "Font Awesome 5 Pro";
  content: "";
  font-weight: 400;
  font-size: 0.75em;
  margin-left: 0.25rem;
  display: inline;
  opacity: 0;
  transition: opacity 0.1s ease;
}
.spw__location-mask {
  flex: 0 0 4rem;
  min-height: 4rem;
  background-color: #F6F8F8;
  position: relative;
}
@media (min-width: 576px) {
  .spw__location-mask {
    flex: 0 0 5.25rem;
    min-height: 5.25rem;
  }
}
@media (min-width: 992px) {
  .spw__location-mask {
    flex: 0 0 4rem;
    min-height: 4rem;
  }
}
@media (min-width: 1220px) {
  .spw__location-mask {
    flex: 0 0 5.25rem;
    min-height: 5.25rem;
  }
}
.spw__location-mask > img, .spw__location-mask iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.spw__event {
  border-top: 1px solid #E1E7EC;
  padding: 1rem 0.75rem 0.25rem 0.75rem;
  margin-bottom: 1rem;
  display: flex;
  align-items: baseline;
}
.spw__event-icon {
  margin-right: 0.75rem;
  flex: 0 0 1.25em;
}
.spw__event-time {
  margin-bottom: 0;
}
.spw__transit-passes-labels {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  word-break: break-all;
  max-width: 400px;
}
.spw__transit-passes-etc {
  border: 1px solid #B1C3D2;
  border-radius: 40px;
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  color: #227BBC;
  font-weight: 600;
  flex-shrink: 0;
}
.contact {
  border-top: 1px solid #E1E7EC;
  padding: 1rem 0.75rem 0.25rem 0.75rem;
}
.contact__title {
  font-size: 1rem;
  margin-bottom: 0;
  font-weight: 600;
}
.contact__list {
  padding-left: 0;
  list-style: none;
  margin-top: 0.75rem;
}
.contact__item {
  display: flex;
  align-items: center;
}
.contact__item .note {
  margin-left: 5px;
}
.contact__icon {
  margin-right: 0.75rem;
  flex: 0 0 1.25em;
}
.contact__link {
  color: #1A2029;
  display: inline-block;
  padding: 0.25rem 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  word-break: break-all;
}
.contact__book {
  background-color: #227BBC;
  color: #fff;
  font-weight: 600;
  text-align: center;
  display: block;
  margin-bottom: 0.5rem;
  padding: 1rem 0;
  transition: color 0.3s ease, background-color 0.3s ease;
  border: none;
  width: 100%;
  border-radius: 4px;
  line-height: 1;
}
.contact__book:hover, .contact__book:focus {
  background-color: #1364A1;
  color: white;
  text-decoration: none;
}
.weather {
  padding: 0.375rem 1rem;
  display: flex;
  gap: 10px;
  align-items: center;
  line-height: 1.5;
}
.weather, .weather:hover, .weather:focus {
  text-decoration: none;
}
@media (min-width: 576px) {
  .weather {
    height: 5.5rem;
    padding: 1.5rem 0 1.5rem 1.75rem;
  }
}
.weather > * {
  overflow: hidden;
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: fit-content;
}
.weather__content {
  max-width: 100px;
}
.weather__link {
  flex-grow: 2;
  flex-shrink: 1;
}
.weather__icon {
  font-size: 2.75rem;
}
.weather__content {
  line-height: 1.25;
}
.weather__link {
  border: 1px solid #dcdcdc;
  border-radius: 50px;
  padding: 15px;
  text-align: center;
  color: black;
  font-weight: 600;
  text-decoration: none;
}
.weather__link:hover {
  text-decoration: none;
}
.weather__link i:before {
  font-weight: initial;
}
.weather__temperature {
  font-family: proxima-nova, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 700;
  font-size: 1.25rem;
  margin: 0;
  transition: color 0.3s ease;
}
.weather__label {
  font-size: 1rem;
  margin: 0;
  transition: color 0.3s ease;
}
.weather__disclaimer {
  background-color: #F8FAFC;
  border-radius: 4px;
  padding: 20px;
}
@media (min-width: 768px) {
  .weather__disclaimer {
    padding: 1.25rem 2.5rem 1.25rem 2.5rem;
    gap: 1.25rem;
  }
}
.weather__disclaimer .info-circle {
  color: #227BBC;
}
.weather__disclaimer .disclaimer-top {
  display: flex;
}
.weather__disclaimer .alert-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.75;
  text-align: left;
  display: inline-block;
  padding-left: 1rem;
}
.weather__disclaimer .disclaimer-content {
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .weather__disclaimer .disclaimer-content {
    display: flex;
    margin-left: 2.25rem;
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .weather__disclaimer .disclaimer-text, .weather__disclaimer .disclaimer-button {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .weather__disclaimer .disclaimer-button {
    text-align: right;
  }
}
@media (max-width: 767.98px) {
  .weather__disclaimer .disclaimer-button {
    margin: 1.5rem 0 1rem 0;
    display: flex;
  }
}
.weather__disclaimer .disclaimer-button a {
  padding: 8px 22px 8px 22px;
  gap: 10px;
  border-radius: 40px;
  background: #227BBC;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  border: none;
  text-decoration: none;
}
@media (min-width: 768px) {
  .weather__disclaimer .disclaimer-button a {
    padding: 1.125rem 1.375rem;
    border-radius: 5rem;
  }
}
@media (max-width: 575.98px) {
  .weather__disclaimer .disclaimer-button a {
    width: 100%;
    text-align: center;
    padding: 8px 0;
  }
}
.weather__disclaimer .disclaimer-button a:hover, .weather__disclaimer .disclaimer-button a:focus {
  background: #1364A1;
}
.weather__disclaimer .disclaimer-button a span {
  padding-left: 9px;
}
.weather__disclaimer .disclaimer-button a i {
  font-size: 1.25rem;
  font-weight: 400;
  width: 18px;
  height: 20px;
  transform: rotate(-45deg);
}
.weather__overview h2, .weather__monthly h2, .weather__safety h2, .weather__links h2 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: -0.02em;
}
.weather__overview h2 i, .weather__monthly h2 i, .weather__safety h2 i, .weather__links h2 i {
  padding-right: 10px;
}
.weather__overview p, .weather__monthly p, .weather__safety p, .weather__links p {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.6;
}
.weather__monthly {
  display: flex;
  flex-direction: column-reverse;
}
@media (min-width: 768px) {
  .weather__monthly {
    flex-direction: row;
    gap: 1.25rem;
  }
}
.weather__monthly--1 {
  flex: 1 1 auto;
}
@media (min-width: 768px) {
  .weather__monthly--1 {
    flex: 1 1 32rem;
  }
}
@media (min-width: 768px) {
  .weather__monthly--blurb {
    margin: auto;
    line-height: 2.5 !important;
  }
}
.weather__monthly--dropdown {
  display: inline-block;
}
.weather__monthly--dropdown .dropdown-toggle {
  padding: 6.5px 20px;
  gap: 10px;
  border-radius: 60px;
  font-size: 18px;
  font-weight: 600;
  line-height: 27px;
  text-align: left;
  background: #227BBC;
  color: #fff;
  border: none;
}
.weather__monthly--dropdown .dropdown-toggle:hover, .weather__monthly--dropdown .dropdown-toggle:focus {
  background: #1364A1;
}
.weather__monthly--forecast {
  margin: 1.25rem 0;
}
.weather__monthly--forecast span {
  display: block;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.688;
}
.weather__monthly--forecast span i {
  padding-right: 1.25rem;
}
.weather__monthly--title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.02em;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
@media (min-width: 768px) {
  .weather__monthly--title {
    margin-top: 2.5rem;
  }
}
.weather__monthly--average, .weather__monthly--temp {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
}
.weather__monthly--info {
  margin-top: 1.25rem;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
}
.weather__monthly--temp {
  color: #227BBC;
}
.weather__monthly--image {
  margin-bottom: 1.25rem;
}
@media (min-width: 768px) {
  .weather__monthly--image {
    margin-top: -2.5rem;
  }
}
.weather__safety {
  background-color: #F8F7F4;
  padding: 3.75rem 0;
}
.weather__links--content {
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .weather__links--content {
    margin-top: 2.5rem;
  }
}
.weather__links--content ul {
  padding-left: 0;
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  grid-column-gap: 1.25rem;
  grid-row-gap: 1.25rem;
  font-size: min(3.4vw, 1.25rem);
  font-weight: 600;
  line-height: 1.875;
  color: #227BBC;
}
@media (min-width: 992px) {
  .weather__links--content ul {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
  }
}
.weather__links--content ul li {
  border-radius: 4px;
  box-shadow: 0 2px 8.3px 0 #0000001F;
}
.weather__links--content ul li a {
  padding: 0;
  display: block;
}
.weather__links--content ul li a img {
  padding: 0;
  height: 5rem;
  width: 5rem;
}
@media (max-width: 400px) {
  .weather__links--content ul li a img {
    height: 3.5rem;
    width: 3.5rem;
  }
}
.weather__links--content ul li a span {
  padding-left: 12px;
}
.section-carousel {
  background-color: #F8FAFC;
  padding: 5rem 0 6.25rem 0;
}
.content-carousel {
  position: relative;
}
.content-carousel__nav {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin-top: -3rem;
}
@media (min-width: 992px) {
  .content-carousel__nav {
    margin-top: 0;
  }
}
.content-carousel__nav a {
  padding: 0.5rem;
  font-size: 1.125rem;
}
.content-carousel__nav a:hover, .content-carousel__nav a:focus {
  color: #1364A1;
}
.content-carousel__nav--right {
  position: relative;
  margin-left: 0.5rem;
  z-index: 15;
}
@media (min-width: 992px) {
  .content-carousel__nav--right {
    margin-left: 0;
  }
  .content-carousel__nav--right .far {
    transform: rotate(90deg);
  }
}
.content-carousel__nav--left {
  position: relative;
  z-index: 15;
}
@media (min-width: 992px) {
  .content-carousel__nav--left {
    margin-bottom: 1rem;
    display: block;
  }
  .content-carousel__nav--left .far {
    transform: rotate(90deg);
  }
}
@media (min-width: 992px) {
  .content-carousel__nav {
    position: absolute;
    top: 0;
    right: 0;
    right: 2rem;
    top: 50%;
    transform: translateY(-50%);
    flex-direction: column;
    justify-content: center;
    z-index: 20;
  }
}
.content-carousel__img-wrap {
  display: block;
}
@media (min-width: 992px) {
  .content-carousel__img-wrap {
    max-width: 49.375rem;
  }
}
.content-carousel__img-wrap:hover ~ .content-carousel__content .content-carousel__link {
  text-decoration: underline;
}
.content-carousel__img-mask {
  position: relative;
  margin-bottom: 0;
  padding-top: 56.25%;
  background-color: #dee2e6;
  z-index: 2;
  overflow: hidden;
  border-radius: 4px 4px 0 0;
}
@media (min-width: 992px) {
  .content-carousel__img-mask {
    border-radius: 4px;
  }
}
.content-carousel__img-mask img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.content-carousel__content {
  font-size: 1.125rem;
  line-height: 1.5556;
  margin-top: 0;
  bottom: auto;
  max-width: none;
  z-index: 2;
  padding: 1.25rem;
  background-color: #fff;
  display: block;
  width: 100%;
}
.content-carousel__content:hover, .content-carousel__content:focus {
  text-decoration: none;
}
.content-carousel__content:hover .content-carousel__link, .content-carousel__content:focus .content-carousel__link {
  text-decoration: underline;
}
@media (min-width: 992px) {
  .content-carousel__content {
    position: absolute;
    padding: 2.25rem 3rem;
    top: 4.125rem;
    right: 0;
    max-width: 25rem;
  }
}
@media (min-width: 1220px) {
  .content-carousel__content {
    padding: 3.25rem 4rem;
    max-width: 29rem;
  }
}
.content-carousel__tagline {
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  color: #227BBC;
}
.content-carousel__title {
  margin-top: 0.5rem;
  font-size: 1.25rem;
  line-height: 1.25;
  letter-spacing: -0.02em;
  margin-bottom: 0;
  font-weight: 600;
  color: #1A2029;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  height: 4.6875rem;
}
@media (min-width: 768px) {
  .content-carousel__title {
    height: 3.125rem;
  }
}
@media (min-width: 992px) {
  .content-carousel__title {
    font-size: 1.375rem;
    -webkit-line-clamp: 4;
    height: auto;
  }
}
.content-carousel__link {
  display: inline-block;
  margin-top: 2rem;
  font-weight: 600;
}
.content-carousel .carousel-item {
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.content-carousel .carousel-inner {
  overflow: visible;
}
@media (min-width: 992px) {
  .content-carousel .active .content-carousel__content {
    transform: translateY(0);
    transition: transform 0.3s ease-in-out, opacity 0.15s ease-in-out;
    opacity: 1;
  }
}
@media (min-width: 992px) {
  .content-carousel .active .content-carousel__content {
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }
}
.content-carousel .carousel-fade .carousel-item-left, .content-carousel .carousel-fade .carousel-item-right {
  transition: opacity 0.3s 0s;
}
@media (min-width: 992px) {
  .content-carousel .carousel-item:not(.active) .content-carousel__content {
    opacity: 0;
    transition-delay: opacity 0.15s;
  }
}
.content-carousel .carousel-item.active .content-carousel__content {
  opacity: 1;
}
@media (min-width: 992px) {
  .content-carousel .carousel-item.carousel-item-left:not(.active) .content-carousel__content, .content-carousel .carousel-item.carousel-item-right.active .content-carousel__content {
    transform: translateY(4rem);
  }
  .content-carousel .carousel-item.carousel-item-right:not(.active) .content-carousel__content, .content-carousel .carousel-item.carousel-item-left.active .content-carousel__content {
    transform: translateY(-4rem);
  }
}
.nav-pills .nav-item {
  margin: 0 0.75rem 0.75rem 0;
}
.nav-pills .nav-link {
  color: #000;
  background-color: #EFF4F8;
  border-color: transparent;
  border-radius: 5rem;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.5rem 1.5rem;
  transition: background-color 0.3s ease;
  font-weight: 600;
}
.nav-pills .nav-link:hover, .nav-pills .nav-link:focus {
  background-color: #E3EBF3;
}
.amenities {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-bottom: -0.5rem !important;
}
.amenity {
  background-color: #F1F1F1;
  display: inline-block;
  position: relative;
  padding: 0.5rem 0.75rem;
  line-height: 1;
  margin: 0 0.5rem 0.5rem 0;
  border-radius: 5rem;
  font-size: 1rem;
}
.amenity:before {
  content: "";
  font-family: "Font Awesome 5 Pro";
  color: #227BBC;
  margin-right: 0.5rem;
}
.tags {
  margin-top: 1.75rem;
  padding-left: 0;
  margin-bottom: -0.5rem;
  display: flex;
  white-space: nowrap;
  flex-wrap: wrap;
  gap: 0.5em;
}
.tags li {
  display: inline-block;
}
.pill {
  display: flex;
  background-color: #EFF4F8;
  padding: 0.75rem 0.75rem;
  line-height: 1;
  border-radius: 4px;
  font-weight: 600;
  color: #1A2029;
  height: 100%;
}
.pill:hover, .pill:focus {
  background-color: #E3EBF3;
  text-decoration: none;
  color: #1A2029;
  transition: background-color 0.3s ease;
}
.pill__surtitle {
  display: inline-block;
  color: #227BBC;
  margin-right: 0.5rem;
  padding-right: 0.5rem;
  font-size: 0.625rem;
  text-transform: uppercase;
  font-weight: 600;
  position: relative;
  align-self: center;
  text-align: center;
}
.pill__surtitle:after {
  content: " ";
  width: 1px;
  display: block;
  height: 18px;
  background-color: #CDD4DF;
  position: absolute;
  right: 0;
  top: calc(50% - 9px);
}
.rounded-pill {
  padding: 9px 27px;
  background: #F0F0F0;
  border-radius: 44px;
}
.pill--transit-pass {
  padding: 0.75rem;
  color: black;
  display: inline-block;
  text-wrap: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  overflow: hidden;
  margin-bottom: 1rem;
}
.pill--transit-pass i.fa {
  color: #227BBC;
  font-weight: 400;
  padding-right: 5px;
}
.pill--trip-lp {
  color: black;
  font-weight: 600;
  padding: 0.75rem;
  display: inline-block;
  margin-top: 20px;
  margin-right: 7px;
}
.pill--feature {
  color: black;
  font-weight: 600;
  display: inline-block;
  margin-top: 20px;
  margin-right: 7px;
}
.pill--feature-light {
  font-weight: 600;
  display: inline-block;
  background-color: white;
  border: 1px solid #F0F0F0;
  margin-top: 20px;
  margin-right: 7px;
}
.destinations__content {
  margin-top: 1rem;
}
.destinations__content .tab-pane, .destinations__content .show {
  min-height: 22rem;
}
@media (min-width: 576px) {
  .destinations__content .tab-pane, .destinations__content .show {
    min-height: 31.125rem;
  }
}
@media (min-width: 768px) {
  .destinations__content .tab-pane, .destinations__content .show {
    min-height: 38.75rem;
  }
}
@media (min-width: 992px) {
  .destinations__content .tab-pane, .destinations__content .show {
    min-height: 14.5rem;
  }
}
@media (min-width: 1220px) {
  .destinations__content .tab-pane, .destinations__content .show {
    min-height: 16.75rem;
  }
}
.img-icon {
  height: 1.75rem;
  width: 1.75rem;
  border-radius: 2px;
  margin-right: 0.25rem;
}
.img-placeholder {
  position: relative;
  overflow: hidden;
  padding-top: 66.7%;
  background-color: #f7fafb;
}
.img-placeholder img {
  display: block;
  max-width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.area-photos {
  display: none;
}
.travel-news {
  margin-bottom: 60px;
}
.travel-news__card {
  position: relative;
  border-bottom: 1px solid #ECEFF0;
}
.travel-news__card .row {
  margin-bottom: 1.25rem;
  margin-top: 1.25rem;
}
@media (max-width: 575.98px) {
  .travel-news__card .row {
    margin-left: 0;
    margin-right: 0;
  }
}
.travel-news__title {
  font-size: 1.25rem;
}
.travel-news__title a {
  color: #1A2029;
}
.travel-news__snippet {
  font-size: 1rem;
}
.travel-news__card-link {
  position: absolute;
  top: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.travel-news__link {
  display: inline-block;
  margin-top: 1.5rem;
  font-weight: 600;
}
.travel-news__content {
  margin-top: 20px;
}
@media (max-width: 991.98px) {
  .travel-news__content {
    margin-top: 0;
  }
}
section.travel-news article.listing {
  display: flex;
  border-top: 1px solid #E1E7EC;
  padding: 1.25rem 0;
}
section.travel-news article.listing:last-of-type {
  border-bottom: 1px solid #E1E7EC;
}
.kngw-destinations {
  padding-bottom: 80px;
}
.kngw-destinations .top-area-images--title {
  padding-left: 4px;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.375rem;
  letter-spacing: -0.02em;
  color: #333333;
}
.kngw-destinations .area-image {
  display: block;
  margin-top: 4px;
  margin-bottom: 4px;
  background-color: #000;
  border-radius: 6px;
}
.kngw-destinations .area-image:hover .image, .kngw-destinations .area-image:focus .image {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.kngw-destinations .area-image .image {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 4px;
  opacity: 0.8;
  -webkit-backface-visibility: hidden;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.kngw-destinations .area-image .image-placeholder {
  position: relative;
  overflow: hidden;
  padding-top: 65%;
  border-radius: 4px;
}
.kngw-destinations .area-image .title {
  font-size: 1.375rem;
  position: absolute;
  color: #fff;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 0 1px 10px #000;
}
.kngw-destinations__content {
  margin-top: 1rem;
}
.kngw-destinations__link {
  padding-right: 4px;
  padding-left: 4px;
}
.discover-interest {
  padding-top: 5rem;
}
.discover-interest .card-overlay__content {
  border-radius: 14px;
  overflow: hidden;
}
.discover-interest .card-overlay__content .card-overlay__title {
  margin: 0;
  text-align: center;
  right: 0.75rem;
}
@media (min-width: 576px) {
  .discover-interest .card-overlay__content .card-overlay__title {
    right: 1rem;
  }
}
.essential {
  display: flex;
  margin-bottom: 1rem;
  aspect-ratio: 1;
  padding: 10px;
}
.essential__link {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  width: 100%;
  font-weight: 600;
  font-size: 1rem;
  overflow: hidden;
  background: #F6F9FB;
  text-align: center;
  transition: background-color 0.3s, color 0.3s;
  color: #297CBA;
  padding: 8px;
  gap: 16px;
  border-bottom: 2px solid #297CBA;
  border-radius: 10px;
}
.essential__link:hover, .essential__link:focus {
  text-decoration: none;
  background-color: #DEEBFF;
}
.essential__icon {
  margin-top: 14px;
  font-size: 2.5rem;
}
@media (min-width: 992px) {
  .essential__text {
    font-size: 14px;
  }
}
.explore-b2b {
  margin-top: 5rem;
}
.b2b-about p {
  margin-top: 2.5rem;
  margin-bottom: 3rem;
  color: #222;
}
.arrange-trip {
  position: relative;
  margin-top: 12rem;
  margin-bottom: 10rem;
  padding: 8rem 0 15rem;
  background-color: #EFF4F8;
}
.arrange-trip .top-wave {
  position: absolute;
  top: 1px;
  bottom: auto;
  transform: translateY(-100%);
}
.arrange-trip .bottom-wave {
  bottom: -6rem;
  height: 6rem;
  z-index: 0;
}
.arrange-trip .wave svg path {
  fill: #EFF4F8;
}
.arrange-trip h2 {
  margin-bottom: 0.5rem;
}
.arrange-trip__button {
  font-size: 1rem;
  font-weight: 600;
  padding: 0.5625rem 2.5rem;
  border-radius: 56.25px;
  background: #227BBC;
  color: #fff;
  height: 2.5625rem;
}
.arrange-trip__button:hover, .arrange-trip__button:focus {
  color: #fff;
}
@media (max-width: 767.98px) {
  .arrange-trip__button {
    margin: auto;
  }
}
.arrange-trip__text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  padding-left: 1.25rem;
  height: 2.5625rem;
  margin-bottom: 0;
}
@media (max-width: 767.98px) {
  .arrange-trip__text {
    margin: auto;
  }
}
.arrange-trip__buttons {
  text-align: center;
}
.arrange-trip__buttons .arrange-trip__text {
  margin: 0.5rem 0;
  padding: 0;
}
.arrange-trip .mice-unique {
  margin: 1.5rem 0;
  position: relative;
  text-align: center;
  cursor: pointer;
}
@media (min-width: 992px) {
  .arrange-trip .mice-unique {
    margin: 0;
  }
}
.arrange-trip .mice-unique__bg {
  position: relative;
  height: 100%;
}
.arrange-trip .mice-unique__bg svg {
  right: 0;
}
.arrange-trip .mice-unique picture {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 80%;
  width: 80%;
  border-radius: 0.75rem;
}
.arrange-trip .mice-unique picture img {
  border-radius: 0.75rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.arrange-trip .mice-unique .video-cta {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 5;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.25);
  width: 60px;
  height: 60px;
  border-radius: 30px;
  color: white;
  border: none;
}
.arrange-trip__features {
  margin-top: -20rem;
}
.experiences .mice-unique {
  margin: 1.5rem 0;
  position: relative;
  text-align: center;
  cursor: pointer;
}
@media (min-width: 992px) {
  .experiences .mice-unique {
    margin: 0;
  }
}
.experiences .mice-unique__bg {
  position: relative;
  height: 100%;
}
.experiences .mice-unique__bg svg {
  right: 0;
}
.experiences .mice-unique picture {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 80%;
  width: 80%;
  border-radius: 0.75rem;
}
.experiences .mice-unique picture img {
  border-radius: 0.75rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.experiences__cta-list {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  text-align: center;
}
.experiences__button {
  display: inline-block;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.5625rem 2.5rem;
  border-radius: 56.25px;
  background: #227BBC;
  color: #fff;
  height: 2.5625rem;
}
.experiences__button:hover, .experiences__button:focus {
  color: #fff;
}
.experiences__button.secondary {
  color: #227BBC;
  background-color: white;
  border: 1px solid #227BBC;
}
@media (max-width: 767.98px) {
  .experiences__button {
    margin: auto;
    min-width: 60%;
  }
}
@media (min-width: 992px) {
  .itinerary-landing .content-body {
    max-width: 66%;
    text-align: center;
    margin: auto;
    text-wrap: balance;
  }
}
.itinerary-landing .search-filters {
  display: flex;
  gap: 10px;
}
@media (max-width: 767.98px) {
  .itinerary-landing .search-filters {
    flex-wrap: wrap;
  }
  .itinerary-landing .search-filters .search-label {
    width: 100%;
  }
}
.itinerary-landing .search-filters .search-reset {
  margin-left: auto;
}
.itinerary-landing .search-filters .filter-header {
  padding: 4px 39px;
  border: 1px solid #DDE2E5;
  border-radius: 20px;
}
.itinerary-landing .search-filters .filter-header legend {
  color: #227BBC;
  font-weight: 400;
}
.itinerary-landing .search-filters .filter-header legend i {
  margin-left: 5px;
}
.itinerary-landing .search-filters .list-group {
  position: absolute;
  z-index: 10;
  background-color: white;
  padding: 20px;
  border: 1px solid #DDE2E5;
  border-radius: 20px;
  color: #757575;
}
.itinerary-landing .search-filters .list-group .checkbox {
  display: flex;
  align-items: center;
}
.itinerary-landing .search-filters .list-group .checkbox label {
  padding-left: 1.25rem;
  margin: 0 0.5rem;
}
.itinerary-landing .search-filters .list-group .checkbox input {
  left: 0;
}
.itinerary-landing .search-filters .checkbox__label i.fa-leaf {
  color: #00B589;
}
.itinerary-landing .search-filters .checkbox__label i.fa-hiking {
  color: #90BDDD;
}
.itinerary-landing .search-filters .search-reset:not(.active) button {
  opacity: 0.5;
}
@media (min-width: 576px) {
  .tpl-blurb {
    max-width: 50%;
  }
}
.tpl-nav-tabs-header {
  color: #757575;
}
.tpl-area {
  scroll-margin-top: 10rem;
}
.tps-breadcrumbs a {
  font-weight: 600;
}
.tps-title {
  font-size: 3rem;
}
.tps h2 {
  font-size: 1.5rem;
}
.tps-photo img {
  border-radius: 2px;
}
.tps-seller-link {
  text-align: center;
  margin: 1.5rem;
}
.tps-seller-link a {
  padding: 0.5rem;
  color: #227BBC;
  font-weight: 600;
}
.tps-seller-link i:before {
  font-size: 1.5rem;
  font-weight: 300;
  vertical-align: middle;
}
.tps-passport-notice {
  background-color: #FDF5F2;
  padding: 1.5rem;
  color: #CB5353;
}
.tps-including li {
  padding: 0.5rem 0;
  display: flex;
  gap: 0.5rem;
  align-items: baseline;
}
.tps-validity i:before, .tps-including i:before {
  color: #227BBC;
  font-weight: 300;
}
.tps-price {
  margin: 0.5rem 0;
}
.tps-price-t1 {
  font-weight: 700;
}
.tps-price-t2 {
  color: #227BBC;
  font-weight: 700;
  background-color: #E5F4FF;
  padding: 10px;
  text-transform: uppercase;
  display: inline-block;
}
.tps-price-note {
  color: #757575;
  font-size: 0.8rem;
  font-style: italic;
}
.table-details {
  width: 100%;
  font-size: 1rem;
  line-height: 1.5625;
  /*
  ul {
    @include list-unstyled;
    margin-bottom: 0;


    & + * {
      margin-top: 1em;
    }
  }
  */
}
@media (max-width: 767.98px) {
  .table-details thead, .table-details tbody, .table-details tr, .table-details th, .table-details td {
    display: block;
  }
}
.table-details tr {
  border-top: 1px solid #E1E7EC;
}
.table-details tr:last-child {
  border-bottom: 1px solid #E1E7EC;
}
.table-details th, .table-details td {
  vertical-align: top;
}
.table-details th {
  font-weight: 600;
  padding: 1.25rem 0 0;
}
@media (min-width: 768px) {
  .table-details th {
    padding: 1.25rem 0;
    width: 9.375rem;
  }
}
.table-details td {
  padding: 0 0 1.25rem;
}
@media (min-width: 768px) {
  .table-details td {
    padding: 1.25rem 0;
  }
}
.table-details p {
  margin-bottom: 0;
}
.table-details p + * {
  margin-top: 1em;
}
.table-details button {
  color: #227BBC;
  font-weight: 600;
  border: none;
  background-color: transparent;
  padding: 0;
}
.table-details button:hover, .table-details button:focus {
  color: #1364A1;
}
.table-details .button--coupon {
  background-color: #227BBC;
  color: #fff;
  padding: 0.75rem 2rem;
  border-radius: 4px;
  line-height: 1.8;
  font-weight: 600;
}
.table-details .button--coupon i {
  margin-right: 0.25rem;
}
.table-details .button--coupon:hover, .table-details .button--coupon:focus {
  background-color: #1364A1;
  color: #fff;
}
.content-body table.table-details th {
  padding: 1.25rem 0 0;
}
.content-body table.table-details td {
  padding: 0 0 1.25rem;
}
.content-body table.table-details th, .content-body table.table-details td {
  border: none;
}
@media (min-width: 768px) {
  .content-body table.table-details th, .content-body table.table-details td {
    padding: 1.25rem 0;
  }
}
.select {
  padding: 0.75rem 2rem 0.75rem 0.75rem;
  border-radius: 0px;
  border: 1px solid #dee2e6;
  margin-bottom: 1.25rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  background-color: #fff;
  font-size: 1.125rem;
  border-radius: 4px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 95% center;
  background-size: 10px;
  line-height: 1;
}
.select--search {
  font-size: 1rem;
  width: 100%;
  margin-bottom: 0.5rem;
}
.select--sort {
  margin-bottom: 0;
  line-height: 1.2;
}
@media screen and (max-width: 360px) {
  .select {
    padding: 0.75rem 1.25rem 0.75rem 0.75rem;
  }
}
.select::-ms-expand {
  display: none;
  /* Hide the default arrow in Internet Explorer 10 and Internet Explorer 11 */
}
.select:hover {
  cursor: pointer;
}
.select__label {
  font-weight: 700;
  margin-right: 0.5rem;
}
.checkbox {
  padding: 0.5rem 0;
  position: relative;
}
.checkbox label {
  display: block;
  font-size: 1rem;
  min-height: 1.25rem;
  margin-bottom: 0;
  font-weight: 400;
}
@media (min-width: 768px) {
  .checkbox label {
    padding-left: 1.25rem;
    margin: 0 0.5rem;
    display: inline-block;
  }
}
.checkbox input {
  position: absolute;
  right: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
}
@media (min-width: 768px) {
  .checkbox input {
    position: absolute;
    margin-top: 0;
    left: 0;
  }
}
.notice {
  position: relative;
  padding: 1.25rem 1.25rem 1.25rem 3.75rem;
  border-radius: 4px;
  position: relative;
  font-size: 1rem;
  background-color: #F6F8F8;
}
.notice:before {
  content: "";
  position: absolute;
  left: 1.25rem;
  top: 1.25rem;
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
  color: #cb5353;
  font-size: 1.25rem;
  text-align: center;
  width: 1.25em;
}
.notice--warning {
  background-color: #FDF5F2;
  color: #cb5353;
}
.notice--warning:before {
  color: #cb5353;
}
.notice--info:before {
  content: "";
  background-color: #f8fafc;
  color: #227BBC;
}
.notice--permanent {
  background-color: initial;
  font-size: 0.8em;
  padding: 0;
  margin-top: 2rem;
}
.notice--permanent:before {
  content: "";
}
.notice--permanent a {
  color: inherit;
  text-decoration: underline;
}
.sps > article {
  display: grid;
  gap: 56px;
}
@media (min-width: 992px) {
  .sps > article {
    grid-template-areas: "photos photos header" "body body header";
  }
  .sps > article:not(:has(.sps-photos)) {
    grid-template-areas: "body body header";
  }
  .sps > article:not(:has(.sps-photos)) .spot-main {
    margin-top: 0;
  }
}
@media (max-width: 991.98px) {
  .sps > article {
    grid-template-areas: "photos" "header" "body";
  }
}
.sps-photos, .sps-header, .sps-body {
  min-width: 0;
}
.sps-photos {
  grid-area: photos;
}
.sps-header {
  grid-area: header;
}
.sps-body {
  grid-area: body;
}
@media (min-width: 992px) {
  .sps-header > * {
    position: sticky;
    top: 8rem;
  }
}
.sps .table-details th {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
}
.sps .hero {
  height: initial;
  aspect-ratio: 1.6;
  border-radius: 4px;
  position: relative;
}
.sps .hero .hero__button {
  right: 1.25rem;
  left: initial;
}
.news-head, .itinerary-head {
  margin-top: 2.5rem;
}
.news-head h1, .itinerary-head h1 {
  font-size: 2.25rem;
  font-weight: 700;
  margin-top: 0;
  line-height: 1.25;
}
.itinerary-backlink, .news-backlink {
  font-size: 1rem;
  font-weight: 600;
}
.news-date {
  color: #757575;
}
.itinerary-category {
  color: #999;
}
.itinerary-body .container.itinerary-information, .itinerary-body .top-itinerary {
  max-width: 700px;
  margin-left: 0;
}
.itinerary-body .itinerary-hcard {
  position: relative;
  margin-bottom: 1.25rem;
}
.itinerary-body .itinerary-hcard__link {
  position: absolute;
  top: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.itinerary-body .itinerary-hcard__category, .itinerary-body .itinerary-hcard__snippet {
  color: #999;
}
.itinerary-body .itinerary-hcard__title a {
  font-weight: 600;
  color: #000;
}
.itinerary-body .itinerary-hcard__snippet {
  -webkit-line-clamp: 1;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 3.1em;
}
.itinerary-photo img, .news-photo img {
  width: 100%;
  margin-bottom: 1.25rem;
}
.itinerary-share, .news-share {
  text-align: left;
  margin-bottom: 2.5rem;
}
.itinerary-share h2, .news-share h2 {
  font-size: 1.25rem;
  margin-top: 1.25rem;
  font-weight: 700;
}
.itinerary-share .centered-buttons, .news-share .centered-buttons {
  justify-content: left;
}
.destination-preview h4 {
  font-size: 1.125rem;
}
.destination-preview__title, .destination-preview__image, .destination-preview__description, .destination-preview__details {
  max-width: 80%;
  margin: auto;
}
@media (max-width: 767px) {
  .destination-preview__title, .destination-preview__image, .destination-preview__description, .destination-preview__details {
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .destination-preview__title, .destination-preview__image, .destination-preview__description, .destination-preview__details {
    max-width: 95%;
  }
}
@media (min-width: 992px) {
  .destination-preview__title, .destination-preview__image, .destination-preview__description, .destination-preview__details {
    max-width: 630px;
  }
}
.destination-preview__image {
  margin-bottom: 1.25rem;
}
.destination-preview__details > h4, .destination-preview__title {
  font-weight: 700;
}
.destination-preview__title h3 {
  font-size: 1.75rem;
  line-height: 1.25;
}
.destination-preview__link a {
  text-decoration: none;
}
.destination-preview__label {
  font-size: 1rem;
  margin-bottom: 0;
}
.destination-preview__description {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.destination-preview__information {
  border-top: 1px solid #eee;
  padding-top: 1.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #eee;
}
.destination-preview__infodescription {
  color: #757575;
}
.destination-preview__infotitle {
  font-size: 1rem;
  line-height: 1.25;
  margin-bottom: 0.25rem;
}
@media (min-width: 768px) {
  .destination-preview__map {
    text-align: right;
  }
}
.destination-preview__map figure {
  position: relative;
  padding-top: 66.6%;
  background-color: #eee;
}
.destination-preview__map img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
}
.destination-preview__link {
  font-weight: 400;
  margin-bottom: 5rem;
  text-align: center;
}
.destination-preview__details {
  margin-bottom: 2.5rem;
}
.area-details__section-title {
  margin: 0;
}
.area-details__section h5 {
  font-weight: 700;
}
article.destination-preview:last-child {
  margin-bottom: 5rem;
}
.article-head {
  margin-top: 1.75rem;
  margin-bottom: 1.75rem;
}
@media (min-width: 768px) {
  .article-head {
    margin-bottom: 2rem;
    margin-top: 3.75rem;
  }
}
.article-head__tag {
  font-weight: 600;
  margin: 0;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .article-head__tag {
    font-size: 1.125rem;
  }
}
.article-head__title {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 0.5rem;
  line-height: 1.25;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .article-head__title {
    font-size: 2.5rem;
  }
}
.article-head__date {
  margin-top: 1.5rem;
  margin-bottom: 0;
  color: #6B7280;
}
@media (min-width: 768px) {
  .article-head__date {
    margin-top: 2rem;
  }
}
.figure-fw {
  margin-left: calc(-50vw + 50% + 10px) !important;
  margin-right: calc(-50vw + 50% + 10px) !important;
  height: calc(100vh - 10rem);
  position: relative;
}
.figure-fw img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.spotlist-title {
  margin-top: 3.75rem;
}
.spotlist-title .title {
  font-size: 2.25rem;
  margin-bottom: 0;
  line-height: 1.25;
}
.spotlist-title .subtitle {
  margin-top: 0.25rem;
  font-size: 1.5rem;
  color: #757575;
  font-weight: 600;
}
.spotlist-title .a2a_kit.a2a_kit_size_32.a2a_default_style {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.sidebar {
  margin-top: 2rem;
}
.sidebar .side-section {
  margin-bottom: 4rem;
}
.sidebar .side-section__title {
  font-size: 1.25rem;
  font-weight: bold;
}
@media (min-width: 576px) {
  .sidebar .side-section__title {
    font-size: 1.5rem;
  }
}
.sidebar .side-section .search-wrapper {
  position: relative;
  height: 1.25rem;
}
.sidebar .side-section .search-wrapper input {
  border: none;
  border-bottom: 1px solid #F8FAFC;
  border-radius: 0;
  margin-bottom: 2rem;
}
.sidebar .side-section .search-wrapper input:focus, .sidebar .side-section .search-wrapper input:hover {
  box-shadow: none;
}
.sidebar .side-section .search-wrapper .search-icon {
  position: absolute;
  top: 0;
  right: 4px;
  font-size: 1rem;
  vertical-align: middle;
  line-height: 2.25rem;
  color: rgba(0, 0, 0, 0.4);
}
.sidebar .side-section .tab-pane__empty-text {
  margin-top: 1rem;
}
.sidebar .side-section__link {
  font-size: 1rem;
  font-weight: 400;
}
.sidebar .side-section__link button {
  background-color: transparent;
  color: #227BBC;
  border: none;
}
.sidebar .side-section__link button:hover, .sidebar .side-section__link button:focus {
  color: #1364A1;
}
.sidebar .side-section__tabs li {
  width: 50%;
  text-align: center;
  border: none;
  cursor: pointer;
}
.sidebar .side-section__tabs li a {
  border: none;
  border-radius: 0;
  margin-right: 0;
  position: relative;
  display: block;
  padding: 0.625rem 0.938rem;
  font-weight: 600;
  color: #6B7280;
}
.sidebar .side-section__tabs li a:hover, .sidebar .side-section__tabs li a:focus {
  text-decoration: none;
  background-color: #EEEEEE;
}
.sidebar .side-section__tabs li a.active {
  background-color: #F7FAFB;
  color: #1A2029;
}
.sidebar .side-section__list {
  padding-left: 0;
  position: relative;
  font-size: 1rem;
  line-height: 1.5rem;
  display: -webkit-box;
  display: -webkit-box;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sidebar .side-section__list .plan-name {
  list-style: none;
}
.sidebar .side-section__list .plan-name:hover {
  background-color: #F7FAFB;
}
.sidebar .side-section__list .plan-name span {
  color: #1A2029;
  padding-right: 4px;
}
.sidebar .side-section__list .plan-name__edit {
  position: absolute;
  right: 4px;
  color: #1A2029;
}
.sidebar .side-section__list .plan-name__edit:hover {
  color: #227BBC;
}
.sidebar .side-section__list .saved-plan {
  list-style: none;
  border-bottom: 1px solid #ddd;
}
.sidebar .side-section__list .saved-plan a:hover, .sidebar .side-section__list .saved-plan a:focus {
  cursor: pointer;
}
.sidebar .side-section__list .saved-plan a span {
  width: 100%;
  height: 100%;
  display: inline-block;
  padding: 0.625rem 0;
}
.sidebar .side-section__list .saved-plan .toolbar {
  position: absolute;
  right: 4px;
  padding: 0.625rem 0;
}
.sidebar .side-section__list .saved-plan .toolbar .trigger {
  color: #333;
  padding: 2px;
}
.sidebar .side-section__list .saved-plan .toolbar .trigger:hover, .sidebar .side-section__list .saved-plan .toolbar .trigger:focus {
  color: #227BBC;
}
.sidebar .side-section__destination {
  margin-bottom: 1.25rem;
  border-bottom: 1px solid #F8FAFC;
  padding-bottom: 1.25rem;
}
.sidebar .side-section__destination .img-placeholder img[src^=data] {
  max-width: 26px;
  fill: #65A6D9;
}
.sidebar .side-section__destination-title {
  font-size: 1rem;
  font-weight: bold;
  margin-top: 0;
}
.sidebar .side-section__destination-title a {
  color: #1A2029;
}
.sidebar .side-section__destination-title a:hover {
  color: #227BBC;
}
.sidebar .side-section__destination-link {
  font-size: 0.875rem;
}
@media (min-width: 992px) {
  .sidebar .side-section__destination-link {
    font-size: 1rem;
  }
}
.horizontal-destination-card .select {
  padding-bottom: 0;
  padding-top: 0;
}
@media (min-width: 576px) {
  .horizontal-destination-card {
    padding: 1.5rem 0;
  }
}
.horizontal-destination-card--gray {
  position: relative;
  border-bottom: 1px solid #F8FAFC;
  background-color: #F7FAFB;
  border-bottom: none;
  padding: 0.625rem 2.5rem 0.625rem 0.625rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
  min-height: 6.25rem;
}
@media (min-width: 576px) {
  .horizontal-destination-card--gray {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }
}
@media (min-width: 576px) {
  .horizontal-destination-card--trip {
    margin: 0;
    border-bottom: 1px solid #e6e6e6;
  }
}
.horizontal-destination-card__banner {
  background-color: #227BBC;
  color: #fff;
  width: 2rem;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
  font-size: 0.875rem;
  font-weight: normal;
  position: absolute;
  top: 0;
  left: 0;
}
.horizontal-destination-card .img-placeholder {
  position: relative;
  overflow: hidden;
  padding-top: 66.7%;
  background-color: #F7FAFB;
}
.horizontal-destination-card .img-placeholder img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
}
.horizontal-destination-card__title {
  position: relative;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
  overflow: hidden;
  margin: 0 0 0.5em;
}
.horizontal-destination-card .horizontal-destination-card__delete, .horizontal-destination-card--gray .horizontal-destination-card__delete {
  position: absolute;
  top: 0;
  right: 0;
  padding: 16px;
  font-size: 1.125rem;
  color: rgba(0, 0, 0, 0.2);
  transition: color 0.3s, transform 0.3s;
}
.horizontal-destination-card .horizontal-destination-card__delete:hover, .horizontal-destination-card--gray .horizontal-destination-card__delete:hover {
  cursor: pointer;
  color: #CE222D;
  transform: rotateZ(90deg);
}
.horizontal-destination-card .horizontal-destination-card__drag, .horizontal-destination-card--gray .horizontal-destination-card__drag {
  position: absolute;
  top: 50%;
  right: 0;
  padding: 16px;
  transform: translateY(-51%);
  font-size: 1.125rem;
}
.horizontal-destination-card .horizontal-destination-card__drag:hover, .horizontal-destination-card--gray .horizontal-destination-card__drag:hover {
  cursor: move;
  /* fallback if grab cursor is unsupported */
  cursor: -moz-grab;
  cursor: -webkit-grab;
  cursor: grab;
}
.horizontal-destination-card .horizontal-destination-card__drag img, .horizontal-destination-card--gray .horizontal-destination-card__drag img {
  width: 18px;
}
.directions {
  margin-left: 1.25rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.directions button {
  background: none;
  border: 0;
}
.directions .dir_label {
  float: left;
  margin-bottom: 0;
  color: #1A2029;
}
.directions__detail {
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}
.directions__detail li {
  margin-bottom: 0;
  list-style-type: none;
  padding-bottom: 0.625rem;
  padding-left: 0.625em;
  max-width: 90%;
}
.directions__detail li:last-child {
  border: 0;
}
.share {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
  background: #F7FAFB;
}
.share__trip {
  padding: 0 1.75rem 0 1.75rem;
}
.share__top {
  margin-top: 2.5rem;
}
.share__top a:hover, .share__top afocus {
  text-decoration: none;
}
.share__title {
  font-size: 1.125rem;
  font-weight: bold;
}
@media (min-width: 576px) {
  .share__title {
    font-size: 1.5rem;
  }
}
.share__form-group {
  margin-top: 1.25rem;
  display: flex;
  flex-direction: column;
  min-height: 5rem;
  margin-bottom: 0.938rem;
}
@media (min-width: 576px) {
  .share__form-group {
    flex-direction: row;
  }
}
.share__input {
  border-radius: 0.125rem;
  margin-bottom: 0.25rem;
  border: none;
  height: 3rem;
  padding: 1rem 0.75rem;
}
@media (min-width: 576px) {
  .share__input {
    flex: 3;
    height: 3rem;
  }
}
.share__submit {
  border-radius: 0.125rem;
  flex: 1;
  margin-bottom: 0.25rem;
  background-color: #227BBC;
  color: #fff;
  border: none;
  transition: background-color 0.3s;
  height: 2.5rem;
  min-width: 38% !important;
}
@media (min-width: 576px) {
  .share__submit {
    height: 3rem;
  }
}
.share__share-trip {
  text-align: center;
  padding-bottom: 2.5rem;
}
.share__share-trip h2 {
  margin-top: 1.25rem;
  font-weight: bold;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .share__share-trip h2 {
    font-size: 1.5rem;
  }
}
.centered-buttons {
  display: flex;
  justify-content: center;
}
span.a2a_svg.a2a_s__default.a2a_s_a2a {
  background-color: #227BBC;
}
.a2a_menu a {
  color: #227BBC;
}
.trip-title {
  margin-top: 0.5rem;
  margin-bottom: 3.125rem;
}
.trip-title .title {
  font-size: 1.25rem;
  margin-top: 1.25rem;
  font-weight: 700;
}
@media (min-width: 576px) {
  .trip-title .title {
    font-size: 1.75rem;
  }
}
@media (min-width: 768px) {
  .trip-title .title {
    font-size: 2.25rem;
  }
}
.trip-title .subtitle {
  font-size: 1rem;
  margin-bottom: 1.5rem;
  color: #222;
}
.trip-title .subtitle i {
  margin-right: 0.25rem;
  margin-left: 1rem;
}
.trip-title .subtitle i:first-of-type {
  margin-left: 0 !important;
}
.trip-title .subtitle i:last-of-type {
  padding-left: 0;
  color: #c1282f;
}
.spot-selector .form-group {
  display: block;
}
.spot-selector .form-group .search__select {
  margin-left: 0;
  margin-right: 0;
}
.spot-selector .form-group .search__select {
  flex: 1;
  margin-bottom: 0.4rem;
  background-color: #F7FAFB;
  color: #333;
  border: none;
  border-radius: 0.125rem;
}
.spot-selector .form-group label + select {
  width: 100%;
}
.spot-selector .chosen-container {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 0.875rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border-radius: 0.125rem;
  width: 100% !important;
}
.spot-selector .chosen-container-multi .chosen-choices {
  min-height: 3rem;
  border-radius: 0.25rem;
  line-height: 3rem;
  background-image: none !important;
  background-color: #F7FAFB;
  border: none;
  background-size: auto;
  color: #227BBC;
}
.spot-selector .chosen-container-multi .chosen-choices .search-choice {
  border: none;
  background-image: none;
  background-size: auto;
  line-height: 34px;
  color: #3291db;
  background-color: #fff;
}
.spot-selector .chosen-container-multi .chosen-choices .search-choice .search-choice-close {
  top: 0.938rem;
}
.spot-selector .search__submit {
  width: 100%;
  font-weight: 600;
  margin-top: 2rem;
}
@media (min-width: 576px) {
  .spot-selector .search__select {
    margin-right: 0.25rem;
    margin-left: 0.25rem;
    height: 3rem;
  }
  .spot-selector .form-group {
    flex-direction: row;
  }
  .spot-selector label {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 0.25rem;
    font-weight: 700;
    width: 100%;
  }
  .spot-selector .search-box {
    margin-bottom: 2.5rem;
  }
  .trip-result {
    margin-bottom: 2.5rem;
  }
}
.caution {
  margin: 0;
  display: inline-block;
  background-color: #FDF5F2;
  color: #cb5353;
  border-radius: 4px;
  padding: 0.6em;
}
section.itinerary--planner {
  margin-bottom: 4rem;
  counter-reset: trip-spots;
}
.horizontal-destination-card__banner.counter::before {
  counter-increment: trip-spots;
  content: counter(trip-spots);
}
.trip-intro {
  margin-top: 3.75rem;
}
.trip-intro__tagline {
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0.5rem;
  border-radius: 4px;
  align-items: center;
  text-align: center;
  background: #E6F4FF;
  color: #1364A1;
  order: 0;
  display: inline-block;
  margin-bottom: 0.75rem;
}
.trip-intro__title {
  font-size: 1.75rem;
  line-height: 1.25;
  margin-top: 0;
}
@media (min-width: 768px) {
  .trip-intro__title {
    font-size: 1.75rem;
  }
}
@media (min-width: 992px) {
  .trip-intro__title {
    font-size: 2rem;
  }
}
.trip-intro__meta {
  margin-top: 1.25rem;
  font-size: 1rem;
  margin-bottom: 1.25rem;
  color: #1A2029;
  font-weight: 400;
}
@media (min-width: 576px) {
  .trip-intro__meta {
    font-size: 1.125rem;
  }
}
.trip-intro__meta i {
  margin-right: 0.25rem;
  color: #1A2029;
}
.trip-intro__meta i.like {
  color: #CE222D;
}
.trip-intro__meta-item {
  display: inline-block;
  margin-left: 1rem;
}
.trip-intro__meta-item:first-child {
  margin-left: 0;
}
.trip-intro__area {
  color: #1A2029;
}
.trip-intro__area:hover, .trip-intro__area:focus {
  text-decoration: none;
}
.trip-save {
  background-color: transparent;
  border: none;
  font-weight: 600;
  color: #1A2029;
}
.trip-save:active i {
  transition: transform 0.3s ease;
  transform: scale(0.9);
}
.trip-save.saved i {
  font-weight: 900;
  animation: 0.5s ease 0s forwards 1 like;
  color: #CE222D;
}
.trip-start {
  font-size: 1.125rem;
}
.trip-share {
  text-align: center;
  margin-top: 1.25rem;
}
.trip-share__title {
  font-weight: 700;
  font-size: 1.25rem;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
.trip-cta {
  padding: 24px 0;
  background: #E6F4FF;
  border-radius: 4px;
  margin-top: 24px;
  text-align: center;
}
.trip-cta h3 {
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #0D4772;
  margin-bottom: 1.5rem;
}
.trip-cta .transit-times {
  font-weight: 600;
  line-height: 2.2rem;
  margin-left: 2.4rem;
  color: #1364A1;
}
.trip-cta .button {
  padding: 12px 40px;
  line-height: 1.2;
  display: inline-block;
  text-align: center;
  font-size: 1rem;
  transition: background-color 0.3s, color 0.3s;
  background-color: #227BBC;
  color: #fff;
  border-radius: 4px;
}
.trip-cta .button:hover, .trip-cta .button:focus {
  background-color: #1364A1;
}
@media (max-width: 991.98px) {
  .trip-cta div {
    display: flex;
    gap: 1rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .trip-cta .transit-times {
    margin-left: 0;
  }
}
.trip_content--details {
  counter-reset: trip-spots;
}
.trip_content--details .listing-trip__counter:before {
  counter-increment: trip-spots;
  content: counter(trip-spots);
}
.listing-trip {
  position: relative;
}
.listing-trip.horizontal-destination-card--trip {
  border: none;
  margin: 2.5rem 0;
}
@media (min-width: 576px) {
  .listing-trip {
    display: flex;
  }
}
.listing-trip__vis {
  flex: 0 0 8rem;
}
@media (min-width: 768px) {
  .listing-trip__vis {
    flex: 0 0 13.5rem;
  }
}
@media (min-width: 992px) {
  .listing-trip__vis {
    flex: 0 0 15rem;
  }
}
.listing-trip__mask {
  position: relative;
  padding-top: 66.6%;
  overflow: hidden;
  background-color: #dee2e6;
  margin-bottom: 0;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .listing-trip__mask {
    padding-top: 66.6%;
  }
}
.listing-trip__mask img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.listing-trip__counter {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #227BBC;
  color: #fff;
  width: 2rem;
  height: 2rem;
  line-height: 2rem;
  text-align: center;
  font-size: 0.875rem;
  font-weight: normal;
}
.listing-trip__content {
  flex-grow: 1;
  margin-top: 1rem;
}
@media (min-width: 576px) {
  .listing-trip__content {
    margin-top: 0;
    margin-left: 1rem;
  }
}
.listing-trip__title {
  color: #1A2029;
  line-height: 1.25;
  font-size: 1.25rem;
}
.listing-trip__title a {
  color: #1A2029;
}
.listing-trip__title a:hover, .listing-trip__title a:focus {
  text-decoration: none;
  color: #1364A1;
}
@media (min-width: 768px) {
  .listing-trip__title {
    font-size: 1.375rem;
    padding-right: 2.5rem;
  }
}
.listing-trip__meta {
  margin-top: 0.5rem;
}
.listing-trip__meta > * {
  margin-right: 1rem;
}
.listing-trip__meta > *:last-child {
  margin-right: 0;
}
.listing-trip__meta .icon--left {
  margin-right: 0.25rem;
}
.listing-trip__copy {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 0.5rem;
  margin-bottom: 0;
  line-height: 1.75;
}
.listing-trip__coupon {
  background-color: transparent;
  color: #227BBC;
  font-weight: 600;
  border: none;
  padding: 0;
  margin-top: 0.5rem;
}
.listing-trip__coupon:hover, .listing-trip__coupon:focus {
  color: #1364A1;
}
.listing-trip__save {
  position: absolute;
  top: 2rem;
  right: 0.5rem;
  font-size: 1.25rem;
  background-color: transparent;
  border: none;
}
.listing-trip__save:active i {
  transition: transform 0.3s ease;
  transform: scale(0.9);
}
.listing-trip__save.saved i {
  font-weight: 900;
  animation: 0.5s ease 0s forwards 1 like;
  color: #CE222D;
}
.listing-trip__save i {
  color: #fff;
  text-shadow: 0px 3px 7px rgba(0, 0, 0, 0.35);
}
@media (min-width: 576px) {
  .listing-trip__save i {
    color: #CE222D;
    color: #6B7280;
    text-shadow: none;
  }
  .listing-trip__save i.fas {
    color: #CE222D;
  }
}
@media (min-width: 768px) {
  .listing-trip__save {
    top: 1.25rem;
    right: 0;
  }
}
#coursemap {
  max-height: 100%;
}
@media (min-width: 768px) {
  .trip-listing-wrapper {
    position: relative;
  }
  .trip-listing-wrapper:after {
    content: "";
    position: absolute;
    left: 7px;
    top: 50px;
    bottom: 50px;
    border-left: 1px dashed #227BBC;
    z-index: -1;
  }
}
.trip-stay {
  background-color: #F8FCFF;
  border-left: 8px solid #227BBC;
  border-radius: 6px;
  padding: 1.5em;
  display: flex;
  justify-content: space-between;
  margin: 2.5em 0;
  position: relative;
}
.trip-stay i {
  font-weight: 400;
}
.trip-stay a {
  font-weight: 600;
}
@media print {
  *, *::before, *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre, blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr, img {
    page-break-inside: avoid;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2, h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td, .table th {
    background-color: #fff !important;
  }
  .table-bordered th, .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th, .table-dark td, .table-dark thead th, .table-dark tbody + tbody {
    border-color: #E1E7EC;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #E1E7EC;
  }
}
@media print {
  [class*="offset-"] {
    margin-left: 0;
  }
  html footer, html .dropdown, html .dropdown-item, html .contact__book, html .video, html .spot-contact__address a, html .spot-share, html .share-button, html .blog, html .pdf-list, html .itinerary-next, html .side-nav, html .carousel, html .breadcrumb, html .hero--bar:after, html .cta-box, html .breadcrumb-copy, html .article-share, html .guide-nav, html .spot-nearby, html .heading-cards, html .select {
    display: none !important;
  }
  .contact__address:after, .contact__link:after {
    display: none !important;
  }
  .route-overview__title {
    color: #1A2029 !important;
    background-color: #fff !important;
  }
  .route-overview__list {
    display: block !important;
    column-count: 3;
    column-gap: 0;
  }
  .route-overview__item {
    max-width: 100% !important;
    width: 100%;
    flex-grow: 1;
    display: block !important;
  }
  .listing-accordion__list li [href^="#"], .listing-accordion__list li [href^="https://goo.gl/maps/"] {
    display: none;
  }
  .accordion-list {
    clear: both;
  }
  .accordion__title:after {
    display: none;
  }
  .directions {
    clear: both;
    border-top: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
  }
  .directions__copy a {
    display: none;
  }
  .directions--none {
    border-color: transparent !important;
  }
  .destination__fig {
    padding-top: 0 !important;
    float: right;
    max-width: 8cm;
    margin-left: 1rem;
  }
  .destination__fig img {
    position: relative !important;
  }
  .hero__button, .hero:before {
    display: none;
  }
  .hero--article {
    display: none;
  }
  article {
    min-width: 992px !important;
    margin: 0 auto;
  }
  .hero {
    width: 12cm;
    height: 8cm;
    padding: 0;
    min-height: auto;
    margin-right: 14px;
    margin-left: 14px;
    float: right;
    z-index: 99999;
  }
  .contact {
    padding: 0 !important;
  }
  .contact:before, .contact:after {
    display: none;
  }
  .sticky-top {
    position: relative;
  }
  .navbar {
    display: block;
    border: none;
  }
  .navbar-brand:after {
    display: none;
  }
  .navbar-toggler, .navbar-collapse, .navbar-nav, .navbar .navbar-collapse__inner {
    display: none !important;
  }
  a {
    text-decoration: underline;
  }
  [href]:not([href^="#"]):after {
    content: " (" attr(href) ") ";
    position: relative;
  }
  h1, h2, h3, h4, h5, .spot-faq__title {
    display: block;
    position: relative;
    page-break-after: avoid;
    break-after: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .map {
    overflow: visible;
    padding: 0;
    position: relative;
    display: block;
    width: 400px;
    width: 100%;
    height: 300px;
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .map iframe {
    width: 400px;
    width: 100%;
    height: 300px;
    position: relative;
    display: block;
    page-break-before: auto;
    page-break-after: auto;
    page-break-inside: avoid;
  }
  .article__title, .article__timestamp {
    text-align: left !important;
  }
  #shortcut, .spot-related, .faq__question.collapsed:after, .nav--tabs, .spot-nearby__title, .spot-breadcrumb {
    display: none;
  }
  .faq__item, .faq__item:first-child {
    border: none !important;
  }
  .faq {
    margin: 0 !important;
  }
  .faq__item {
    padding: 0 !important;
  }
  .sidebar {
    top: 0 !important;
    position: relative !important;
    padding-left: 0 !important;
    border: none !important;
    break-inside: avoid;
  }
  .spot-contact__phone:after, .spot-contact__mail:after {
    display: none;
  }
  address {
    display: block;
    position: relative;
  }
  .spot-contact__button {
    display: block;
    position: relative;
    border: none;
    padding: 0;
    color: black;
    break-inside: avoid;
  }
  .spot-contact__button:hover {
    color: inherit;
    background-color: transparent;
    top: 0;
    left: 0;
  }
  .spot-contact__button:before {
    display: none;
  }
  .card {
    margin: 0;
  }
  .card__copy {
    display: none;
  }
  .card__link {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    height: auto;
    letter-spacing: initial;
    text-indent: initial;
    color: #000;
  }
  .article-related {
    display: none;
  }
  .article-related .d-lg-none {
    display: none !important;
  }
  .map--sticky {
    top: 0;
  }
  .alert-banner {
    display: none;
  }
  .spot-faq {
    background-color: transparent !important;
    margin-top: 2rem !important;
    padding: 0 !important;
  }
  .collapse {
    display: block !important;
  }
  .tab-pane:before {
    content: " (" attr(aria-label) ")";
    font-size: 1.125rem;
    font-weight: bold;
  }
  .row, .col, [class*="col-"] {
    width: 100% !important;
    display: block !important;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .sticky-navbar {
    display: none !important;
  }
  .listing--event {
    display: block;
    page-break-inside: avoid;
  }
  .feature {
    display: none;
  }
  .article {
    position: relative;
  }
  .article .component-list {
    display: block;
    position: relative;
    page-break-inside: avoid;
  }
  .directions {
    margin-top: 2.75rem !important;
    margin-bottom: 2.75rem !important;
    text-align: left !important;
  }
  .directions__title, .directions__copy {
    text-align: left;
  }
  .directions:before, .directions:after {
    display: none !important;
  }
  table {
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .spot__details, .spot__area {
    width: 48%;
    display: inline-block;
    float: left;
  }
  .spot__area {
    margin-left: 4%;
  }
  .spot-table {
    position: relative;
  }
  .spot-table td, .spot-table th {
    position: relative;
    padding: 0.75rem 0;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .spot-table tr {
    position: relative;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .article__intro, .page-intro {
    margin-top: unset !important;
  }
}
@media print and (min-width: 576px) {
  article {
    max-width: 540px;
  }
}
@media print and (min-width: 768px) {
  article {
    max-width: 720px;
  }
}
@media print and (min-width: 992px) {
  article {
    max-width: 960px;
  }
}
@media print and (min-width: 1220px) {
  article {
    max-width: 1180px;
  }
}
.notice {
  position: relative;
  padding: 1.25rem 1.25rem 1.25rem 3.75rem;
  border-radius: 4px;
  position: relative;
  font-size: 1rem;
  background-color: #F6F8F8;
}
.notice:before {
  content: "";
  position: absolute;
  left: 1.25rem;
  top: 1.25rem;
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
  color: #cb5353;
  font-size: 1.25rem;
  text-align: center;
  width: 1.25em;
}
.notice--warning {
  background-color: #FDF5F2;
  color: #cb5353;
}
.notice--warning:before {
  color: #cb5353;
}
.notice--info:before {
  content: "";
  background-color: #f8fafc;
  color: #227BBC;
}
.notice--permanent {
  background-color: initial;
  font-size: 0.8em;
  padding: 0;
  margin-top: 2rem;
}
.notice--permanent:before {
  content: "";
}
.notice--permanent a {
  color: inherit;
  text-decoration: underline;
}
.destinations__content .row > .row {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  z-index: 10;
  pointer-events: none;
}
.wave svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: auto;
  fill: #fff;
}
.kanagawa-maps {
  padding-top: 10rem;
  padding-bottom: 3.125rem;
  position: relative;
}
.kanagawa-maps .wave {
  position: absolute;
  top: 1px;
  bottom: auto;
  transform: translateY(-100%);
}
.kanagawa-maps .wave svg path {
  fill: #F8FAFC;
}
.kanagawa-maps__link {
  color: #1364A1;
  display: inline-block;
  margin-top: 2rem;
}
.kanagawa-maps__link.main-cta {
  display: inline-block;
  background-color: #227BBC;
  padding: 0.5rem 1.375rem;
  line-height: 1.5;
  font-weight: 600;
  border-radius: 40px;
  color: white;
  margin-top: 2rem;
  margin-right: 30px;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.kanagawa-maps__link.main-cta:hover {
  background-color: #1364A1;
}
.kanagawa-maps .svg-map {
  margin-top: 2.5rem;
}
@media (min-width: 992px) {
  .kanagawa-maps .svg-map {
    margin-top: 0;
  }
}
.kanagawa-maps p {
  color: #1A2029;
  font-size: 1.125rem;
  line-height: 1.777778;
  margin-bottom: 1.75rem;
}
.aov > ul > li {
  flex-basis: 0;
  flex-grow: 1;
  transition: all 0.3s ease-in-out;
}
.aov a {
  color: white;
  text-decoration: none;
}
.aov .card-overlay-c {
  width: 100%;
  height: 100%;
  margin-bottom: 0;
}
.aov .card-overlay-c__content {
  width: 100%;
  height: 100%;
  padding: 0;
  border-radius: 0;
}
.aov .card-overlay-c__img:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 80%, #000 102%);
}
.aov .card-overlay-c__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 767.98px) {
  .aov > ul {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }
  .aov > ul > li {
    aspect-ratio: 1;
    flex-basis: calc(50% - 5px);
    flex-grow: 0;
  }
  .aov > ul > li:first-child {
    flex-basis: 100%;
  }
  .aov > ul > li .aov__veil, .aov > ul > li .aov__icon, .aov > ul > li .aov__blurb {
    display: none;
  }
  .aov > ul > li .aov__title {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
  }
}
@media (min-width: 768px) {
  .aov > ul {
    display: flex;
    gap: 3px;
    height: 350px;
  }
  .aov > ul .aov__veil {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 0;
    background-color: #071B2A;
    transition: all 0.3s ease-in-out;
  }
  .aov > ul .aov__icon {
    position: absolute;
    left: 25%;
    transform: translate(-50%, -50%);
    top: 150%;
    transition: all 0.3s ease-in-out;
    max-width: 45%;
  }
  .aov > ul .aov__title {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -100%);
    top: calc(100% - 1.25rem);
    transition: all 0.3s ease-in-out;
  }
  .aov > ul .aov__blurb {
    position: absolute;
    left: 50px;
    top: 150%;
    transition: all 0.3s ease-in-out;
    max-width: 45%;
  }
  .aov > ul > li.active {
    flex-grow: 2.5;
  }
  .aov > ul > li.active .aov__veil {
    width: 100%;
  }
  .aov > ul > li.active .aov__icon {
    top: 50%;
  }
  .aov > ul > li.active .aov__title {
    top: 25%;
    left: 50%;
    transform: translateX(0);
  }
  .aov > ul > li.active .aov__blurb {
    top: calc(25% + 30px);
    left: 50%;
  }
}
section.discover-interest .cards-scroll__item {
  width: calc(100% / 2 - 1rem);
}
@media (min-width: 768px) {
  section.discover-interest .cards-scroll__item {
    width: calc((100% + 1rem) / 3 - 1.25rem);
  }
}
section.top-collections {
  margin: 130px auto;
}
section.top-collections .spotlight::after {
  display: none;
}
section.top-collections .spotlight > picture {
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 12px;
}
section.top-collections .spotlight > picture img {
  filter: blur(50px);
}
section.top-collections .spotlight__copy {
  -webkit-line-clamp: initial;
}
section.top-collections .spotlight__button {
  border-radius: 40px;
  width: initial;
}
section.top-collections .spotlight__cta {
  align-items: baseline;
}
@media (min-width: 992px) {
  section.top-collections .spotlight__card {
    position: absolute;
    left: 60%;
    top: 50%;
    width: 330px;
    height: 440px;
    transform: translate(0, -50%) rotate(4deg);
  }
}
@media (max-width: 991.98px) {
  section.top-collections .spotlight__card {
    position: relative;
    max-width: 90%;
    width: 300px;
    height: 400px;
    margin: 40px auto 1rem auto;
  }
  section.top-collections .spotlight {
    padding-top: 1rem;
  }
  section.top-collections .spotlight img {
    height: 100%;
  }
}
.te {
  overflow: hidden;
}
.te-seasons {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
}
.te-season {
  font-weight: 400;
  padding: 4px 20px;
  width: initial !important;
  text-wrap: nowrap;
}
.te-season:not(.active) {
  color: #227BBC;
  background-color: white;
  border: 1px solid #DDE2E5;
}
.te .tab-content {
  position: relative;
}
.te-events article.ceo {
  width: 100%;
  height: 100%;
}
.te-events.ps-paginated.active {
  display: flex;
  gap: 20px;
}
@media (max-width: 767.98px) {
  .te-events {
    overflow-x: scroll;
    margin: 0 -14px;
  }
  .te-events ul.page {
    display: flex;
    gap: 20px;
  }
  .te-events ul.page:first-child {
    margin-left: 14px;
  }
  .te-events ul.page:last-child {
    margin-right: 14px;
  }
  .te-events article.ceo {
    min-width: min(320px, 80vw);
    min-height: 260px;
  }
}
@media (min-width: 768px) {
  .te-events.ps-paginated.active {
    overflow: hidden;
  }
  .te-events ul.page {
    width: 100%;
    height: 100%;
    flex-shrink: 0;
    display: grid !important;
    grid-template-columns: auto auto auto;
    gap: 20px;
  }
  .te-events ul.page li:nth-child(5n-4) {
    grid-row-end: span 2;
  }
}
.top-areas .button, .discover-interest .button, .top-events .button, .top-essentials .button {
  border-radius: 100px;
  width: 100%;
}
.ui-title__sustainable {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  color: #333333;
}
.modal-image {
  border-radius: 4px 4px 0 0;
}
@media (min-width: 768px) {
  .sdg-modal__body {
    padding: 2rem 5rem;
  }
}
.sdg-modal__close {
  position: absolute;
  border: 0;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  top: 1.5rem;
  right: 1.5rem;
  font-size: 1.5rem;
  margin: -1rem -1rem -1rem auto;
  width: 40px;
  height: 40px;
  color: #fff;
  font-weight: 300;
}
.sdg-modal__content {
  border-radius: 8px;
}
.sdg-modal__description {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.78;
}
@media (min-width: 1220px) {
  .sdg-modal__dialog {
    max-width: 55vw;
  }
}
.sdg-modal__data article.listing {
  display: flex;
  padding: 1.75rem 0;
  border-top: 1px solid #E1E7EC;
}
.sdg-modal__listing {
  flex: 0 0 5.25rem;
}
@media (min-width: 992px) {
  .sdg-modal__listing {
    flex: 0 0 6.5rem;
  }
}
@media (min-width: 1220px) {
  .sdg-modal__listing {
    flex: 0 0 7.5rem;
  }
}
.sdg-modal__listing-content {
  margin-left: 1.5rem;
}
.sdg-modal__mask {
  position: relative;
  padding-top: 100%;
  overflow: hidden;
  background-color: #dee2e6;
  margin-bottom: 0;
  border-radius: 4px;
}
.sdg-modal__mask img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  object-fit: cover;
}
.sdg-modal__list-title {
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.25;
  color: #222;
  margin-top: 0;
  margin-bottom: 0;
}
.sdg-modal__list-title a {
  color: #222;
}
.sdg-modal__copy {
  margin-top: 0.5rem;
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.56;
  color: #222;
}
.section-listing {
  margin-top: 1.75rem;
}
.section-mt-120 {
  margin-top: 7.5rem;
}
.sdg-attractions {
  padding: 4.68rem 0;
}
@media (min-width: 768px) {
  .sdg-attractions__summary {
    padding: 0 1rem 0 0;
  }
}
.sdg-attractions__summary span {
  font-size: 1.75rem;
  line-height: 0.75;
  color: #1A2029;
}
.sdg-attractions__summary h2 {
  font-weight: 700;
  font-size: 1.75rem;
  line-height: 1.25;
  align-items: center;
  color: #1A2029;
}
.sdg-attractions__summary p {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.75;
  color: #000;
}
.sdg-attraction {
  border-radius: 4px;
  height: 100%;
  background-color: #F8FAFC;
}
@media (min-width: 768px) {
  .sdg-attraction {
    background-image: linear-gradient(90deg, #F8FAFC 0%, #F8FAFC 42%, #fff 42%, #fff 100%);
  }
}
.travel-destination, .travel-itineraries, .travel-initiative, .travel-spotlight {
  margin-top: 6.25rem;
}
.travel-destination__header h2, .travel-itineraries__header h2, .travel-initiative__header h2, .travel-spotlight__header h2 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.25;
}
.travel-destination__header p, .travel-itineraries__header p, .travel-initiative__header p, .travel-spotlight__header p {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.78;
}
.travel-destination__content, .travel-itineraries__content, .travel-initiative__content, .travel-spotlight__content {
  margin-top: 3rem;
}
.travel-destination__content h3, .travel-itineraries__content h3, .travel-initiative__content h3, .travel-spotlight__content h3 {
  margin-top: 1.5rem;
  font-weight: 700;
  font-size: 1.375rem;
  line-height: 1.125;
  letter-spacing: -0.02em;
  color: #222;
}
.travel-destination__content p, .travel-itineraries__content p, .travel-initiative__content p, .travel-spotlight__content p {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.78;
  margin-top: 0.75rem;
  color: #000;
}
.travel-destination__content p a, .travel-itineraries__content p a, .travel-initiative__content p a, .travel-spotlight__content p a {
  color: #000;
  text-decoration: underline;
}
.travel-itineraries__header, .travel-destination__header, .travel-initiative__header {
  display: flex;
  align-items: flex-start;
  padding: 0px;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .travel-itineraries__header, .travel-destination__header, .travel-initiative__header {
    flex-direction: row;
    justify-content: space-between;
    gap: 56px;
  }
}
.travel-itineraries__header h2, .travel-destination__header h2, .travel-initiative__header h2 {
  flex: 1 0 371px;
}
.travel-destination {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 80px 0;
  gap: 40px;
  background: #F8FAFC;
}
.travel-destination__scroll {
  display: none;
}
@media (min-width: 768px) {
  .travel-destination__scroll {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 12px;
    height: 50px;
    margin-bottom: 20px;
  }
  .travel-destination__scroll .cards-scroll__nav {
    display: inline-block;
    position: relative;
    right: 0;
    margin-top: 1.25rem;
  }
  .travel-destination__scroll .cards-scroll__nav i {
    color: #227BBC;
    font-size: 1.5rem;
  }
}
@media (max-width: 575.98px) {
  .travel-destination--cs {
    width: calc((100% - 3rem) - 10px);
    margin-right: 20px;
    scroll-snap-align: none;
  }
  .travel-destination--cs:first-child {
    margin-left: 14px;
  }
  .travel-destination--cs:last-child {
    margin-right: 14px;
  }
}
.sustainable-attraction__header {
  margin: auto 0;
}
.card-sustainable {
  position: absolute;
  top: 20px;
  left: 20px;
  background-color: rgba(255, 255, 255, 0.85);
  border-radius: 5px;
  padding: 6px 10px;
  font-weight: 600;
}
.card-sustainable__badge {
  color: #00B589;
}
@media (max-width: 767.98px) {
  .sustainable-attraction-grid.row > * > article.card-event-overlay {
    height: 81%;
  }
}
.travel-destination__content {
  text-align: center;
}
.travel-destination__icon i {
  font-size: 2.5rem;
  line-height: 0.8;
  color: #227BBC;
  background-color: #F5F5F5;
  border-radius: 50px;
  padding: 20px;
}
.travel-destination__content a.section-link i {
  margin-left: 0.5rem;
}
.travel-initiative__content {
  margin-top: 1.5rem;
}
.travel-initiative__content p {
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
.carousel-wrapper.kfh-lp {
  position: relative;
}
@media (max-width: 575.98px) {
  .carousel-wrapper.kfh-lp figure.hero--video-carousel {
    padding-top: 150%;
  }
}
@media (max-width: 575.98px) {
  article.kfh figure.hero--video {
    padding-top: 80%;
  }
}
.kfh-hero {
  background-size: cover;
}
.kfh-hero-titles, .kht {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  color: white;
  z-index: 10;
  transform: translateY(-50%);
}
.kfh-hero-titles-surtitle, .kht-surtitle {
  font-size: 1em;
}
.kfh-hero-titles h3, .kht h3 {
  font-size: 2.5em;
}
.kfh-hero-titles-start, .kht-start {
  display: inline-block;
  background: rgba(0, 0, 0, 0.4);
  width: 100px;
  height: 100px;
  border: 3px solid rgba(217, 217, 217, 0.4);
  border-radius: 50%;
  cursor: pointer;
}
.kfh-hero-titles-start, .kht-start {
  color: white;
  transition: background 0.3s;
}
.kfh-hero-titles-start i, .kht-start i {
  margin-left: 0.25rem;
  transition: transform 0.3s;
}
.kfh-hero-titles-start:hover, .kht-start:hover {
  background: rgba(0, 0, 0, 0.6);
}
.kfh-hero-titles-start:hover i, .kht-start:hover i {
  transform: translateX(4px);
}
.kfh-hero-read {
  text-align: center;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  color: white;
  z-index: 10;
  cursor: pointer;
}
.ivm {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  z-index: 2000;
  transition: 0.6s;
  background-color: #042C48;
  overflow: hidden;
}
.ivm--closed {
  height: 0;
}
.ivm-curtain {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-color: #042C48;
}
.ivm:not(.ivm--closed) .ivm-curtain {
  animation: curtain-delay 1200ms linear;
}
.ivm:not(.ivm--closed) .ivm-menu-titles > * {
  animation: text-delay 1800ms linear;
}
.ivm:not(.ivm--closed) .ivm-menu-header h3 {
  animation: text-delay 1800ms linear;
}
.ivm-menu {
  width: 100vw;
  height: 100vh;
}
.ivm-menu-header {
  position: absolute;
  top: 20px;
  left: 20px;
  right: 20px;
  overflow: hidden;
}
@media (min-width: 992px) {
  .ivm-menu-header {
    text-align: center;
  }
}
.ivm-menu-header h3 {
  color: white;
  font-size: 40px;
}
@media (max-width: 540px) {
  .ivm-menu-header h3 {
    margin-top: 35px;
  }
}
@media (max-width: 480px) {
  .ivm-menu-header h3 {
    font-size: 35px;
  }
}
@media (max-width: 430px) {
  .ivm-menu-header h3 {
    font-size: 30px;
  }
}
@media (max-width: 380px) {
  .ivm-menu-header h3 {
    font-size: 25px;
  }
}
.ivm-menu-thumbnails {
  width: 100%;
  height: 100%;
  display: flex;
  gap: 20px;
  padding: 20px;
  padding-top: 90px;
  position: relative;
}
@media (max-width: 540px) {
  .ivm-menu-thumbnails {
    padding-top: 142px;
  }
}
@media (max-width: 991.98px) {
  .ivm-menu-thumbnails {
    flex-direction: column;
  }
}
.ivm-menu-thumbnail {
  display: block;
  cursor: pointer;
  /*width: 100%; height: 100%;*/
  position: relative;
  background-size: cover;
  background-position: center;
  /*height: calc(100vh - 40px);*/
  flex-grow: 2;
}
.ivm-menu-thumbnail:not(.placeholder):hover {
  filter: brightness(1.1);
}
.ivm-menu-thumbnail.placeholder {
  filter: brightness(0.5);
  cursor: initial;
  flex-grow: 1;
}
@media (max-width: 991.98px) {
  .ivm-menu-thumbnail.placeholder .ivm-menu-titles {
    top: 50%;
    transform: translateY(-50%);
  }
}
.ivm-menu-titles {
  color: white;
  text-align: center;
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
  overflow: hidden;
}
.ivm-menu-titles p {
  margin: 0;
  font-weight: 600;
}
.ivm-menu-titles h4 {
  font-size: 40px;
}
@media (max-width: 991.98px) {
  .ivm-menu-titles h4 {
    font-size: 24px;
    margin: 0;
    line-height: 1.125;
  }
}
.ivm-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: black;
  transition: 0.6s;
}
.ivm-video--closed {
  opacity: 0;
  display: none;
}
.ivm-actions {
  position: absolute;
  right: 30px;
  top: 30px;
  color: white;
  display: flex;
}
@media (max-width: 991.98px) {
  .ivm-actions {
    right: 20px;
    top: 20px;
  }
}
.ivm-actions > * {
  border: none;
  color: white;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.3);
  padding: 7px;
  border-radius: 20px;
}
@media (max-width: 767.98px) {
  .ivm-actions > * {
    width: 38px;
    text-align: center;
  }
}
.ivm-actions i {
  font-size: 1.5em;
  font-weight: 100;
  vertical-align: bottom;
}
.ivm-actions .ivm-restart i {
  font-size: 1.1em;
  margin-left: 12px;
}
.ivm-video--closed ~ .ivm-actions .ivm-restart {
  display: none;
}
.ivm-close {
  margin-right: 1rem;
}
@keyframes curtain-delay {
  0% {
    height: 100%;
  }
  50% {
    height: 100%;
  }
  100% {
    height: 0;
  }
}
@keyframes text-delay {
  0% {
    transform: translateY(150px);
  }
  66% {
    transform: translateY(150px);
  }
  100% {
    transform: translateY(0);
  }
}
.kfh-video-modal, .kvm {
  height: 100vh;
  width: 100vw;
  position: fixed;
  top: 0;
  z-index: 2000;
  background-color: black;
  overflow: hidden;
}
.kfh-video-modal--closed, .kvm--closed {
  display: none;
}
.kfh-video-modal-close, .kvm-close {
  position: absolute;
  top: 20px;
  left: 20px;
  color: white;
  cursor: pointer;
  z-index: 2222;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 7px;
  border-radius: 20px;
}
body.page-sitemap .title-link__title {
  font-size: 1.7rem;
  font-weight: bold;
}
body.page-sitemap .section-introduction .title {
  margin-top: 4rem;
  font-size: 2.25rem;
}
body.page-sitemap .section-introduction .description {
  font-size: 1rem;
  line-height: 25px;
}
body.page-sitemap .section-introduction, body.page-sitemap .section-links {
  margin-bottom: 50px;
}
@media (min-width: 576px) {
  body.page-sitemap .section-links > ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
  }
  body.page-sitemap .section-links.custom-links > ul, body.page-sitemap .section-links.categories > ul {
    row-gap: 0;
  }
}
@media (min-width: 768px) {
  body.page-sitemap .section-links > ul {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
  }
  body.page-sitemap .section-links.custom-links > ul, body.page-sitemap .section-links.categories > ul {
    width: 66%;
    grid-template-columns: 1fr 1fr;
    row-gap: 0;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(1) {
    grid-row: 1;
    grid-column: 1;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(2) {
    grid-row: 1;
    grid-column: 1;
    margin-top: 5em;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(3) {
    grid-row: 1;
    grid-column: 2;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(4) {
    grid-row: 2;
    grid-column: 1;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(5) {
    grid-row: 2;
    grid-column: 2;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(6) {
    grid-row: 1;
    grid-column: 3;
    grid-row-end: span 2;
  }
  body.page-sitemap .section-links.areas > ul > li:nth-child(7) {
    grid-row: 1;
    grid-column: 3;
    grid-row-end: span 2;
    margin-top: 26em;
  }
}
body.page-sitemap .section-links ul {
  padding-left: 0;
}
body.page-sitemap .section-links ul li {
  list-style: none;
  position: relative;
  padding-left: 20px;
  margin-bottom: 12px;
  font-weight: 600;
}
body.page-sitemap .section-links ul li ul {
  margin-top: 12px;
}
body.page-sitemap .section-links ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.7em;
  width: 12px;
  display: block;
  border-top: 1px solid #082B44;
}
.humans-modal__body, .experience-modal__body {
  margin-top: 2.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .humans-modal__body, .experience-modal__body {
    margin-top: 1.25rem;
  }
}
.humans-modal__body iframe, .experience-modal__body iframe {
  border: none;
  border-radius: 4px;
}
.humans-modal__close, .experience-modal__close {
  background: transparent;
  position: fixed;
  border: 0;
  top: 1.5rem;
  left: 2rem;
  margin: -1rem;
  color: #fff;
  font-weight: 300;
  z-index: 2;
}
.humans-modal .close-modal__icon, .experience-modal .close-modal__icon {
  font-size: 2rem;
  line-height: 1.75;
  width: 1.25rem;
  height: 1.75rem;
}
.humans-modal .close-modal__text, .experience-modal .close-modal__text {
  font-size: 1.25rem;
  line-height: 1.75;
  position: absolute;
  margin: auto;
  top: 0.7rem;
  left: 1.75rem;
}
.humans-modal__content, .experience-modal__content {
  background-color: #042c48;
  color: #fff;
}
.humans-modal__ttl, .experience-modal__ttl {
  margin-top: 2.18rem;
}
@media (min-width: 992px) {
  .humans-modal__description, .experience-modal__description {
    grid-row-start: 2 !important;
  }
}
.humans-modal__img, .experience-modal__img {
  grid-column: 9 / span 4;
  grid-row-start: -1;
  grid-row-end: 3;
  margin-top: 2.18rem;
}
@media (max-width: 991.98px) {
  .humans-modal__img, .experience-modal__img {
    margin-bottom: 2.18rem;
  }
}
.humans-modal__mask, .experience-modal__mask {
  position: relative;
  height: 10rem;
  width: 10rem;
  background-color: #ECEFF0;
  overflow: hidden;
  border-radius: 50%;
  margin: auto;
}
.humans-modal__mask:has(img[src=""]), .experience-modal__mask:has(img[src=""]) {
  display: none;
}
.humans-modal__dialog, .experience-modal__dialog {
  width: 100vw;
  height: 100vh;
  max-width: 100vw;
  margin: 0;
  background-color: #042c48;
}
.humans-modal__player, .experience-modal__player {
  box-shadow: none;
  background-color: #1364A1;
}
.humans-component-list {
  margin-bottom: 1.555em;
  border: none;
  border-radius: 4px;
  background-color: #053B61;
}
.humans-component-list a {
  display: flex;
  color: #fff;
  text-decoration: none;
}
.humans-component-list a:hover {
  text-decoration: none;
}
.humans-component-list a:hover .component-list-simple__title, .humans-component-list a:focus .component-list-simple__title {
  color: #F6F8F8;
}
.humans-component-list__mask {
  position: relative;
  padding-top: 66.6%;
  background-color: #1364A1;
  overflow: hidden;
  border-radius: 4px 0 0 4px;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  flex: 0 0 6.25rem;
  width: 6.25rem;
  min-height: 6.25rem;
}
@media (min-width: 768px) {
  .humans-component-list__mask {
    width: 8rem;
  }
}
@media (min-width: 1220px) {
  .humans-component-list__mask {
    width: 12.5rem;
  }
}
.humans-component-list__mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.humans-component-list__content {
  margin-left: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 0.75rem 0 0;
}
@media (min-width: 768px) {
  .humans-component-list__content {
    margin-left: 1.25rem;
    padding: 0 1.25rem 0 0;
  }
}
.humans-component-list__title {
  font-size: 1.125rem;
  font-weight: 600;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-height: 135.94%;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (min-width: 768px) {
  .humans-component-list__title {
    font-size: 1.25rem;
  }
}
.humans-component-list__meta {
  margin-bottom: 0;
  font-size: 1rem;
}
.humans__img, .humans__hovervid {
  border-radius: 8px;
  transition: opacity 1s;
}
.humans__hovervid {
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}
.card-overlay.humans-of-kanagawa.loaded:hover .humans__hovervid {
  opacity: 1;
}
.card-overlay.humans-of-kanagawa.loaded:hover .humans__img {
  opacity: 0;
}
.humans__overlay {
  background: linear-gradient(0deg, #0B283C 0%, rgba(11, 40, 60, 0) 26.93%);
}
.humans-of-kanagawa {
  margin-top: 2.5rem;
}
.humans-of-kanagawa:hover, .humans-of-kanagawa:focus {
  cursor: url(../../img/custom-cursor-vid.svg), pointer;
}
.mun {
  border-bottom: 1px solid #DDE2E5;
}
.mun-nav {
  position: -webkit-sticky;
  position: sticky;
  top: 3.5rem;
  background: #fff;
  z-index: 10;
  border-bottom: 1px solid #DDE2E5;
}
@media (min-width: 768px) {
  .mun-nav {
    top: 3rem;
  }
}
@media (min-width: 992px) {
  .mun-nav {
    top: 5rem;
  }
}
.mun-nav ul.nav {
  column-gap: 30px;
}
@media (min-width: 992px) {
  .mun-nav ul.nav {
    overflow-x: visible;
  }
  .mun-nav .cards-scroll {
    overflow-x: auto;
  }
}
.mun-nav .nav-link {
  font-weight: 600;
  white-space: nowrap;
  line-height: 60px;
  padding: 0;
  color: black;
}
.mun-nav .nav-link:last-child {
  flex-grow: 1;
}
.mun-destinations .search-links {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.mun-destinations .search-links a {
  flex-shrink: 0;
  color: black;
  font-weight: 600;
}
.mun-destinations .search-links a i.fa {
  font-weight: 400;
}
.mun-interests .thead i {
  font-weight: 300;
  font-size: 1.8rem;
}
.mun-trips > img {
  margin-bottom: -200px;
  width: 100%;
  max-height: 500px;
  object-fit: cover;
}
@media (max-width: 767.98px) {
  .mun-trips > img {
    margin-bottom: -100px;
  }
}
@media (max-width: 575.98px) {
  .mun-trips > img {
    margin-bottom: -40px;
  }
}
.mun-trips h2 {
  color: white;
  margin-bottom: 1rem;
}
.mun-trips .card-list {
  background-color: white;
  border-radius: 8px;
  padding-top: 15px;
}
@media (min-width: 768px) {
  .mun-trips .section-link {
    color: white;
    margin-bottom: 1rem;
  }
}
.mun-infobox {
  box-shadow: 0px 13.4875px 26.9751px -5.39502px rgba(30, 63, 94, 0.08);
  border-radius: 8px;
  padding: 20px;
}
.mun-infobox .transit-passes .button {
  width: 100%;
}
.mun-banner {
  display: block;
  position: relative;
}
.mun-banner > picture {
  display: block;
  width: 100%;
}
.mun-banner-icon {
  max-width: 128px;
  max-height: 128px;
}
.mun-banner-label {
  font-weight: bold;
}
#mun-player-modal {
  z-index: 1112;
}
#mun-player-modal .modal-dialog {
  width: 100vw;
  height: 100vh;
  max-width: 100vw;
  margin: 0;
  background-color: #042c48;
}
#mun-player-modal .modal__close {
  background: transparent;
  position: fixed;
  border: 0;
  top: 1.5rem;
  left: 2rem;
  margin: -1rem;
  color: #fff;
  font-weight: 300;
  z-index: 2;
}
#mun-player-modal .close-modal__icon {
  font-size: 2rem;
  line-height: 1.75;
  width: 1.25rem;
  height: 1.75rem;
}
#mun-player-modal .close-modal__text {
  font-size: 1.25rem;
  line-height: 1.75;
  position: absolute;
  margin: auto;
  top: 0.7rem;
  left: 1.75rem;
}
#mun-player-modal .modal-content {
  height: 100%;
  background-color: transparent;
  color: #fff;
}
#mun-player-modal .modal__body {
  flex-grow: 1;
}
#mun-player-modal .video-player {
  border: 0;
  padding: 0;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  margin-left: auto;
  margin-right: auto;
  height: calc(100% - 3rem);
  width: 100%;
}
#mun-player-modal .video-player iframe.modal__video {
  border: 0;
  width: 100%;
  height: 100%;
}
main.tour-guides section {
  padding-top: 60px;
  padding-bottom: 60px;
}
main.tour-guides .tg-section--intro .kanagawa-tour-guide-logo {
  text-align: right;
}
@media (max-width: 991.98px) {
  main.tour-guides .tg-section--intro .kanagawa-tour-guide-logo {
    text-align: center;
  }
  main.tour-guides .tg-section--intro .button {
    width: 100%;
  }
}
main.tour-guides .tg-section--highlight {
  background-color: #C0DCF7;
  background-image: url(/img/bg-terrain-alpha.png);
}
main.tour-guides .tg-recommended-list {
  display: flex;
  justify-content: space-between;
  flex-grow: 0;
  flex-wrap: wrap;
  width: 100%;
}
main.tour-guides .tg-recommended-list > * {
  width: 20%;
  padding: 0 14px;
  text-align: center;
}
@media (max-width: 575.98px) {
  main.tour-guides .tg-recommended-list > * {
    width: 50%;
  }
  main.tour-guides .tg-recommended-list > *:nth-child(5) {
    display: none;
  }
}
main.tour-guides .ctgv {
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
}
main.tour-guides .ctgv-photo {
  border-radius: 50%;
}
main.tour-guides .ctgv-name {
  font-weight: 600;
  margin-top: 1em;
  margin-bottom: 0;
}
main.tour-guides .ctgv-area {
  font-size: 0.9rem;
}
main.tour-guides .tg-map > svg {
  max-width: 100%;
}
main.tour-guides .tg-map > svg a.kngw__area:hover {
  opacity: 0.7;
}
main.tour-guides .tg-map > svg a:hover .icon .inner {
  fill: white;
}
main.tour-guides .tg-map > svg a:hover .icon .sprite {
  fill: #227BBC;
}
main.tour-guides .tg-map-guide-select {
  display: flex;
  flex-direction: column;
}
main.tour-guides .tg-map-guide-select > * {
  flex-grow: 0;
}
main.tour-guides .tg-map-guide-select > .tg-map-guide-list {
  display: flex;
  flex-direction: column;
  margin: 12px 0;
}
@media (min-width: 768px) {
  main.tour-guides .tg-map-guide-select > .tg-map-guide-list {
    height: 456px;
    overflow-y: auto;
  }
}
main.tour-guides .tg-map-guide-select > .tg-map-guide-list .card {
  margin: 0;
}
main.tour-guides .tg-map-guide-select > .tg-map-guide-list > * {
  margin: 0;
  padding: 12px 0;
}
main.tour-guides .tg-map-guide-select > .tg-map-guide-list > * + * {
  border-top: solid 1px #DDE2E5;
}
main.tour-guides .tg-map-guide-select > .tg-map-guide-dropdown > select {
  width: 100%;
  padding: 5px;
}
main.tour-guides .ctgh {
  height: 90px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  cursor: pointer;
}
main.tour-guides .ctgh-photo {
  height: 100%;
  border-radius: 4px;
}
main.tour-guides .ctgh-name {
  font-weight: 600;
  font-size: 1.1rem;
  margin: 0;
}
main.tour-guides .ctgh-area {
  margin: 0;
  color: #565656;
  font-size: 0.9em;
}
main.tour-guides #tg__guide-modal .tg-modal-photo {
  border-radius: 6px;
  margin-bottom: 25px;
}
main.tour-guides #tg__guide-modal .tg-name-jp {
  font-size: 17px;
  color: #929292;
  margin: 0;
}
main.tour-guides #tg__guide-modal .tg-name {
  font-size: 1.5rem;
}
main.tour-guides #tg__guide-modal .tg-area-header {
  margin-bottom: 0;
  font-size: 1.1rem;
  font-weight: 600;
}
main.tour-guides #tg__guide-modal .tg-tour-header {
  font-size: 1.1rem;
  font-weight: 600;
}
main.tour-guides #tg__guide-modal .tg-tour-name a {
  color: black;
  text-decoration: none;
}
main.tour-guides #tg__guide-modal .tg-tour-name i {
  padding-left: 0.2em;
  font-weight: 200;
}
main.tour-guides #tg__guide-modal .tg-tour-booking {
  padding: 0.5rem 0.75rem;
}
main.tour-guides #tg__guide-modal .tg-tour-vendor {
  text-transform: uppercase;
  color: #757575;
  padding-left: 1rem;
  font-size: 0.7rem;
  padding-top: 0.5rem;
}
main.tour-guides #tg__guide-modal .tg-tour-vendor > img {
  max-height: 20px;
}
@media (max-width: 575.98px) {
  main.tour-guides #tg__guide-modal .modal-body > .row > div:first-child {
    padding: 5vw 10vw;
  }
  main.tour-guides #tg__guide-modal .button {
    width: 100%;
  }
}
.pg-photo-container {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
}
.pg-item {
  flex: 0 0 100%;
  aspect-ratio: 0.8;
  container-type: size;
  cursor: pointer;
}
@media (min-width: 576px) {
  .pg-item {
    flex: 0 0 calc((100% - 28px) / 2);
  }
}
@media (min-width: 768px) {
  .pg-item {
    flex: 0 0 calc((100% - 56px) / 3);
  }
  .pg-item--double {
    aspect-ratio: 1.6666666667;
    flex: 0 0 calc((100% - 56px) * 2 / 3 + 28px);
  }
}
.pgft-controls {
  text-align: right;
}
.pgft-controls .control.button--minor {
  color: #757575;
}
.pgft-controls .control--apply {
  background-color: #DDE2E5;
}
.pg-filter-spot-type button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 40px;
  width: 100%;
  border: 1px solid #D9D9D9;
  background-color: transparent;
  border-radius: 4px;
}
.pg-filter-spot-type button span {
  font-weight: 600;
}
.pg-filter-spot-type button:not(.collapsed) {
  color: white;
  background-color: #227BBC;
}
.pg-filter-text {
  display: flex;
}
.pg-filter-text input {
  flex-grow: 1;
  height: 40px;
  border: 1px solid #D9D9D9;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  padding-left: 10px;
}
.pg-filter-text button {
  flex-grow: 0;
  height: 40px;
  width: 40px;
  border: 1px solid #D9D9D9;
  background-color: transparent;
  margin-left: -1px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.pg-filter-type {
  display: flex;
  gap: 28px;
  justify-content: space-between;
}
.pg-filter-type input[type=radio][name=type] {
  display: none;
}
.pg-load-more .button {
  border-radius: 40px;
}
.pgm .modal-body {
  padding: 0;
}
@media (min-width: 992px) {
  .pgm .modal-dialog {
    max-width: 850px;
  }
}
@media (min-width: 1220px) {
  .pgm .modal-dialog {
    max-width: 1000px;
  }
}
.pgm .modal-content {
  overflow: hidden;
}
.pgm .control {
  color: white;
  font-size: 1.5rem;
  width: 40px;
  height: 40px;
  background-color: rgba(4, 44, 72, 0.2);
  border-radius: 50%;
  border: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
.pgm .control--left {
  left: 5px;
}
.pgm .control--right {
  right: 5px;
}
.pgm-title {
  display: none;
  padding: 1rem;
  text-align: center;
}
.pgm.pgm--collection .control, .pgm--collection .pgm-title {
  display: block;
}
.pgm-photo-views {
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden;
  /* // not compatible with $().automate({scrollLeft}) apparently...
    scroll-snap-type: x mandatory;
    .pg-card-modal { scroll-snap-align: start; }
    */
}
.pgm-photo-views .pg-card-modal {
  width: calc(100% + 28px);
  flex-shrink: 0;
}
.pgcm-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pgcm-info {
  padding: 3rem;
}
.pgcm-editorial h3 {
  font-size: 1.5rem;
}
.pgcm-sizes {
  padding: 12px;
  background-color: #F8F9FA;
  display: flex;
}
.pgcm-sizes > * {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.pgcm-sizes > *:nth-child(1) {
  border-right: 2px solid #E1E7EC;
  padding-right: 2rem;
}
.pgcm-sizes > *:nth-child(2) {
  padding-left: 2rem;
}
.pgcm-sizes-label {
  color: #6E7A8A;
}
.pgcm-terms {
  margin: 1rem 0;
}
.pgcm-terms.highlight {
  color: #721C24;
  background-color: #F8D7DA;
  border-color: #F5C6CB;
  padding: 5px;
  margin: calc(1rem - 5px) -5px;
  border-radius: 5px;
}
.pgcm-terms input[type=checkbox] {
  height: 1.25rem;
  width: 1.5rem;
  vertical-align: text-bottom;
}
.pgcm-download {
  width: 100%;
}
@media (max-width: 1219.98px) {
  .pgcm-location {
    margin-bottom: 0.5rem;
  }
  .pgcm .tags {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .pgcm-info {
    padding-left: 0;
  }
}
.modal-lv .modal-footer .modal-terms-buttons {
  display: flex;
  width: 100%;
  justify-content: space-between;
}
@media (min-width: 1220px) {
  .acp-left-col {
    padding-right: 100px;
  }
}
.acp-from-to {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  align-items: center;
}
.acp-from-to-label {
  flex-basis: 40px;
  text-transform: uppercase;
  font-weight: bold;
  color: #757575;
  font-size: 12px;
}
.acp-from-to-select {
  flex-basis: calc(100% - 60px);
}
.acp-from-to-select button, .acp-from-to-select .dropdown-menu {
  width: 100%;
  border: 0;
}
.acp-from-to-select button.unselected {
  border: 1px solid #DDE2E5;
}
.acp-from-to-select ul.dropdown-menu {
  padding: 20px;
  border-radius: 20px;
  background-color: white;
  border: 1px solid #DDE2E5;
}
.acp-from-to-select ul.dropdown-menu a {
  display: inline-block;
  width: 100%;
  padding: 5px 0;
  color: #757575;
  text-align: center;
  text-decoration: none;
}
.acp-from-to-select ul.dropdown-menu a:hover {
  background-color: #eee;
}
.acp-from-to-select ul.dropdown-menu a .acp-station-icon {
  display: none;
}
.acp-from-to-select ul.dropdown-menu li.acp-station--unselected {
  display: none;
}
.acp-station {
  text-decoration: none;
  cursor: pointer;
}
.acp-directions {
  border-radius: 10px;
  background: #F8FAFC;
  padding: 30px;
  color: #042C48;
}
.acp-directions-from-to {
  color: white;
  background-color: #227BBC;
  font-weight: bold;
  display: flex;
  align-items: center;
}
.acp-directions-from-to .acp-station-label {
  flex-grow: 1;
}
.acp-directions-from-to.unselected {
  color: #757575;
  background-color: white;
}
.acp-directions-info {
  text-align: center;
  text-transform: uppercase;
  color: #6A6A6A;
}
.acp-directions-label {
  text-transform: uppercase;
  margin-top: 20px;
  color: #6A6A6A;
}
.acp-directions-line-info {
  display: flex;
  gap: 10px;
  align-items: center;
}
.acp-directions-line-info i {
  color: #6A6A6A;
}
.acp-directions-duration {
  flex-grow: 1;
  text-align: end;
  color: #6A6A6A;
}
.acp-directions-gmaps {
  display: flex;
  align-content: center;
}
.acp-directions-gmaps i {
  flex-grow: 0;
}
.acp-directions-gmaps a {
  color: #042C48;
  text-decoration: underline;
}
.acp-directions-transfer-notice, .acp-directions-gmaps {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.acp-directions-from-to.unselected .acp-station-action > * {
  display: none;
}
.acp-directions-from-to:not(.unselected):after {
  display: none;
}
.acp-directions-from-to:not(.unselected) .acp-station-action {
  cursor: pointer;
}
.acp-directions-from-to:not(.unselected) .acp-station-action:hover i.fa {
  text-shadow: 0 0 10px black;
}
.acp .pill--transit-line {
  color: white;
  font-weight: bold;
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 5px;
}
.acp .pill--transit-line i {
  color: white;
}
body.feature-show .feature-information .content-title {
  text-wrap: balance;
}
body.feature-show .spot-hero-image.feature picture:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.2) 65%, #000000 100%);
}
body.feature-show .discover-interest {
  padding-bottom: 60px;
}
body.feature-show .tips-container {
  background-color: #F8F7F4;
  padding: 60px 0;
}
body.feature-show .event-grid.row > * {
  aspect-ratio: 1;
}
body.feature-show .event-grid.row > *:nth-child(1) {
  width: 100%;
  aspect-ratio: initial;
}
body.feature-show .event-grid.row > * > article {
  width: 100%;
  height: 100%;
  margin: 0;
}
@media (max-width: 575.98px) {
  body.feature-show .event-grid.row {
    flex-wrap: nowrap;
    overflow-x: scroll;
    margin: 0 -28px;
    padding-left: 10px;
  }
  body.feature-show .event-grid.row > * {
    flex: 0 0 calc(90vw - 20px);
  }
}
body.feature-show .event-grid.row > * {
  padding: 10px;
  width: 50%;
}
@media (min-width: 1220px) {
  body.feature-show .event-grid.row > * > div {
    display: flex;
    flex-direction: column;
    flex-gap: 20px;
    align-self: center;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 1) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 2) {
    flex: 0 0 66.6%;
    max-width: 66.6%;
    aspect-ratio: 2;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 2) .ceo__content {
    text-align: right;
    left: 50%;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 3) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 4) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 5) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 6) {
    flex: 0 0 25%;
    max-width: 25%;
    aspect-ratio: 0.75;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 7) {
    flex: 0 0 41.6%;
    max-width: 41.6%;
    aspect-ratio: 1.25;
  }
  body.feature-show .event-grid.row > *:nth-child(7n + 8) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
}
body.feature-show #feature-events .nav button.button {
  font-weight: 400;
  padding: 4px 20px;
  width: initial !important;
  border-radius: 100px;
  margin-right: 10px;
}
body.feature-show #feature-events .nav button.button:not(.active) {
  color: #227BBC;
  background-color: white;
  border: 1px solid #DDE2E5;
}
@media (min-width: 576px) {
  body.feature-show #feature-events #fe-spots, body.feature-show #feature-events #fe-spots > .container {
    padding: 0;
  }
}
@media (min-width: 576px) {
  body.feature-show #feature-events #fe-events, body.feature-show #feature-events #fe-events > .container {
    padding: 0;
  }
}
.tips-container .feature-tips-scroll-controls {
  margin-left: auto;
  gap: 20px;
  justify-content: right;
}
.tips-container .feature-tips-scroll-controls button {
  position: relative;
  color: #227BBC;
}
.tips-container .feature-tips-scroll-controls button.disabled {
  background-color: #eee;
  color: #aaa;
}
.tips-container .tips-list.ps-paginated {
  display: flex;
  flex-wrap: nowrap;
  position: relative;
}
.tips-container .tips-list .icon > .ball {
  background: #DBEAF4;
  color: #227BBC;
  font-size: 2.5rem;
  padding: 36px;
  border-radius: 100%;
  position: relative;
  aspect-ratio: 1;
  display: inline-block;
}
.tips-container .tips-list .icon > .ball > * {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.tips-container .tips-list .cta {
  font-weight: 600;
}
.tips-container .tips-list .cta i {
  font-size: 16px;
  color: #227BBC;
  font-weight: 400;
  margin-left: 5px;
}
@media (max-width: 991.98px) {
  .tips-container .tips-list.ps-paginated {
    overflow-x: scroll;
    gap: 20px;
  }
  .tips-container .tips-list .ps-page {
    display: flex;
    flex-wrap: nowrap;
    gap: 20px;
  }
  .tips-container .tips-list .feature-tip {
    display: flex;
    flex-direction: column;
    gap: 20px;
    text-align: center;
    width: 80vw;
    max-width: 500px;
  }
  .tips-container .tips-list .icon > .ball {
    width: 100px;
  }
}
@media (min-width: 992px) {
  .tips-container .tips-list.ps-paginated {
    overflow-x: hidden;
  }
  .tips-container .tips-list .ps-page {
    flex: 0 0 100%;
    display: flex;
    justify-content: space-between;
  }
  .tips-container .tips-list .feature-tip {
    flex: 0 0 calc(50% - 20px);
    display: grid;
    grid-template-columns: 100px calc(100% - 120px);
    gap: 10px 20px;
  }
  .tips-container .tips-list .feature-tip > * {
    margin: 0;
  }
  .tips-container .tips-list .feature-tip > .icon {
    grid-row: span 3;
  }
}
html {
  scroll-behavior: smooth;
}
[id] {
  scroll-margin-top: 10rem;
}
[data-toggle], [data-dismiss] {
  cursor: pointer;
}
.section-link {
  font-weight: 600;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .section-link--margin {
    margin-bottom: 1.5rem;
  }
}
.section-link--margin-sm {
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .subsection-link--margin {
    margin-bottom: 0.5rem;
  }
}
.section-background {
  position: relative;
  height: calc(66vh - 5rem);
  min-height: 20rem;
  background-color: #dee2e6;
}
@media (min-width: 992px) {
  .section-background {
    height: calc(85vh - 5rem);
  }
}
@media (min-width: 576px) {
  .section-background--margin {
    width: calc(100% - 2rem);
    margin-left: 1rem;
    border-radius: 8px;
    overflow: hidden;
  }
}
@media (min-width: 992px) {
  .section-background--margin {
    width: calc(100% - 5rem);
    margin-left: 2.5rem;
  }
}
.section-background:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(353.13deg, rgba(0, 0, 0, 0.5) 12.06%, rgba(0, 0, 0, 0) 70.57%);
}
.section-background__figure {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  margin-bottom: 0;
}
.section-background__figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover; object-position: 50% 50%;";
  object-position: 50% 50%;
}
.section--grey {
  background-color: #F8FAFC;
  padding: 5rem 0;
}
.section--blue {
  background-color: #042C48;
  padding: 5rem 0;
}
.section--blue h2, .section--blue h3, .section--blue .section-text {
  color: white;
}
.section-bg {
  overflow: hidden;
}
.section-bg__container {
  margin-top: -6rem;
}
@media (min-width: 768px) {
  .section-bg__container {
    margin-top: -8rem;
  }
}
@media (min-width: 768px) {
  .section-bg__container {
    margin-top: -11rem;
  }
}
.section-bg__title {
  color: #fff;
  font-size: 2rem;
  margin-bottom: 1.5rem;
  line-height: 1.125;
}
@media (min-width: 768px) {
  .section-bg__title {
    font-size: 2.25rem;
  }
}
.section-bg__card-content {
  position: relative;
  margin-top: 2.5rem;
}
.section-bg__card-content:before {
  position: absolute;
  content: "";
  top: -2.5rem;
  left: -1.625rem;
  width: calc(100% + 3.25rem);
  height: 100%;
  background-color: #fff;
  border-radius: 6px;
}
.section-bg__card-content > div {
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .section-bg__link {
    color: #fff;
  }
  .section-bg__link:hover, .section-bg__link:focus {
    color: #fff;
  }
}
.trips__title {
  padding-left: 4px;
}
.trips__tab-handles {
  padding-left: 4px;
}
.trips__link {
  padding-right: 4px;
}
.trips__content {
  margin-top: 1rem;
}
.woi-hp, .video-exp {
  overflow: hidden;
}
.woi-hp__filters, .video-exp__filters {
  margin-top: 3rem;
}
@media (min-width: 768px) {
  .woi-hp__filters, .video-exp__filters {
    margin-top: 0.5rem;
  }
}
.video-exp {
  margin-top: 9rem;
}
@media (min-width: 768px) {
  .video-exp {
    margin-top: 5rem;
  }
}
.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1030;
}
.error__title {
  color: #227BBC;
  font-size: 3rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.25;
}
.error__subtitle {
  font-weight: 700;
  font-size: 2rem;
  color: #1A2029;
  margin: 0;
  line-height: 1.25;
}
.error__copy {
  margin-top: 1.25rem;
  font-size: 1.125rem;
}
.error__cta {
  margin-top: 2.5rem;
}
.typewriter .Typewriter__cursor {
  font-weight: 400;
}
.card-section, .around-section {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}
.card-section .title-link .title-link__title, .around-section .title-link .title-link__title {
  margin-top: 0;
  font-size: 1.125rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .card-section .title-link .title-link__title, .around-section .title-link .title-link__title {
    font-size: 1.5rem;
  }
}
.card-section .title-link .title-link__link, .card-section .title-link .title-link__link--no-arrow, .around-section .title-link .title-link__link, .around-section .title-link .title-link__link--no-arrow {
  float: right;
  padding-top: 2px;
  padding-right: 16px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .card-section .title-link .title-link__link, .card-section .title-link .title-link__link--no-arrow, .around-section .title-link .title-link__link, .around-section .title-link .title-link__link--no-arrow {
    padding-top: 15px;
  }
}
.card-section .title-link .title-link__link:before, .card-section .title-link .title-link__link--no-arrow:before, .around-section .title-link .title-link__link:before, .around-section .title-link .title-link__link--no-arrow:before {
  content: "";
  position: absolute;
  right: 1em;
  padding: 1px 1px;
  font-family: "font awesome 5 pro";
  -webkit-transform: translatez(0);
  transform: translatez(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.card-section .title-link .title-link__link:focus:before, .card-section .title-link .title-link__link--no-arrow:focus:before, .around-section .title-link .title-link__link:focus:before, .around-section .title-link .title-link__link--no-arrow:focus:before {
  -webkit-transform: translatex(4px);
  transform: translatex(4px);
}
.card-section .title-link .title-link__link:active:before, .card-section .title-link .title-link__link--no-arrow:active:before, .around-section .title-link .title-link__link:active:before, .around-section .title-link .title-link__link--no-arrow:active:before {
  -webkit-transform: translatex(4px);
  transform: translatex(4px);
}
.card-section .title-link .title-link__link:hover:before, .card-section .title-link .title-link__link--no-arrow:hover:before, .around-section .title-link .title-link__link:hover:before, .around-section .title-link .title-link__link--no-arrow:hover:before {
  -webkit-transform: translatex(4px);
  transform: translatex(4px);
}
.card-section .title-link .title-link__link--no-arrow, .around-section .title-link .title-link__link--no-arrow {
  padding-right: 0;
}
.card-section .title-link .title-link__link--no-arrow:before, .around-section .title-link .title-link__link--no-arrow:before {
  content: none;
}
.area-nav {
  list-style: none;
  padding: 0;
  margin-top: 0.5rem;
}
.area-nav li {
  margin-bottom: 1.25rem;
}
.area-nav a {
  display: block;
  box-shadow: 0 5px 16px rgba(20, 36, 47, 0.14);
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  color: #222;
  font-size: 1rem;
  transition: color 0.3s ease;
}
.area-nav a:hover, .area-nav a:focus {
  color: #227BBC;
  text-decoration: none;
}
.area-nav__img-wrap {
  position: relative;
  background-color: #EFEFEF;
  width: 72px;
  height: 72px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 1.6rem;
}
.area-nav__img-wrap img {
  position: absolute;
  top: 0;
  left: 0;
}
.area-nav span {
  display: inline-block;
  vertical-align: middle;
}
.section__title {
  font-size: 2rem;
  line-height: 38px;
  align-items: center;
  text-align: center;
  font-weight: 700;
  margin-top: 0;
}
.section__intro {
  font-weight: normal;
  font-size: 2rem;
  line-height: 1.2;
  align-items: center;
  text-align: center;
  color: #fff;
}
.itinerary {
  margin-top: 2.5rem;
}
.itinerary-transit-passes a {
  display: inline-block;
}
.itinerary-transit-passes button {
  background-color: initial;
  border: 1px solid #B1C3D2;
  border-radius: 40px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin: 4px;
  text-align: center;
  color: #227BBC;
  font-weight: 600;
  vertical-align: top;
}
.spot-content {
  margin-top: 4rem;
}
@media (min-width: 768px) {
  .spot-content {
    margin-top: 6rem;
  }
}
.spot-main {
  margin-top: 1.5rem;
}
.spot-details {
  margin-top: 3.75rem;
}
.spot-review {
  color: #1A2029;
}
.spot-review:after {
  font-family: "Font Awesome 5 Pro";
  content: "";
  font-weight: 400;
  font-size: 0.625rem;
  vertical-align: super;
  margin-left: 0.25rem;
  display: inline;
  transition: opacity 0.3s ease;
}
.spot__title {
  font-size: 2rem;
  color: #1A2029;
  line-height: 1.25;
  letter-spacing: -0.02em;
  margin-top: 0;
}
.spot-meta {
  font-weight: 600;
  font-size: 1.125rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .spot-meta {
    margin-top: 1.5rem;
  }
}
.spot-meta__counter:after {
  content: "·";
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.spot-meta__counter i {
  color: #CE222D;
  margin-right: 0.5rem;
}
.spot-meta__location {
  color: #1A2029;
}
.spot-meta__location:hover, .spot-meta__location:focus {
  text-decoration: none;
  color: #1364A1;
}
.spot-content p.notice {
  margin-top: 1rem;
}
.spot-content p.notice:before {
  top: 1rem;
}
.spot-content p.disclaimer {
  font-size: 0.875rem;
  font-weight: 400;
}
.area-insider-tip {
  background-color: #F8FAFC;
  border-left: 8px solid #227BBC;
  padding: 1.5rem 1.75rem;
  border-radius: 4px;
  margin-bottom: 1.5555em;
}
.area-insider-tip > *:first-child {
  margin-top: 0;
  font-size: 1.125rem;
}
.area-insider-tip > *:last-child {
  margin-bottom: 0;
}
.abp button.video-cta {
  width: 60px;
  height: 60px;
  background: rgba(255, 255, 255, 0.25);
  border-radius: 30px;
  color: white;
  border: none;
}
.abp ~ .kvm > .video-wrapper {
  padding-top: 35px;
}
.abp .filters {
  flex-wrap: nowrap;
  overflow-x: auto;
}
.abp .about-spots .button.view-all {
  width: 100%;
  border-radius: 50px;
}
.abp .grid-12-8-4 .card {
  border-radius: 4px;
  overflow: hidden;
  height: 260px;
}
@media (min-width: 768px) {
  .abp .grid-12-8-4 .card {
    height: 520px;
  }
}
.abp .grid-12-8-4 .card > * {
  height: 100%;
}
@media (min-width: 768px) {
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__content, .abp .grid-12-8-4 .card:nth-of-type(3n+2) .ceo__content {
    background-color: #F8F7F4;
    color: black;
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__counter, .abp .grid-12-8-4 .card:nth-of-type(3n+2) .ceo__counter {
    margin: 0;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__blurb, .abp .grid-12-8-4 .card:nth-of-type(3n+2) .ceo__blurb {
    margin: 0;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__location, .abp .grid-12-8-4 .card:nth-of-type(3n+2) .ceo__location {
    background: initial;
    border: 1px solid black;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: initial;
    width: 400px;
    max-width: 100%;
    border-top-left-radius: 10px;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__content:before {
    content: "";
    position: absolute;
    background-color: transparent;
    height: 20px;
    width: 20px;
    bottom: 0;
    left: -20px;
    border-bottom-right-radius: 10px;
    box-shadow: 10px 1px 0 0 #F8F7F4;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+1) .ceo__content:after {
    content: "";
    position: absolute;
    background-color: transparent;
    height: 20px;
    width: 20px;
    top: -20px;
    right: 0px;
    border-bottom-right-radius: 10px;
    box-shadow: 7px 10px 0 0 #F8F7F4;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+2) figure.ceo__img {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 37.5%;
    overflow: hidden;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+2) .ceo__content {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    left: 62.5%;
    align-items: flex-end;
    justify-content: center;
    text-align: right;
  }
  .abp .grid-12-8-4 .card:nth-of-type(3n+2) span.ceo__save.spot {
    right: calc(37.5% + 10px);
  }
}
.abp .area__map button.cards-scroll__nav {
  color: #227BBC;
  background-color: white;
  top: 38%;
}
.abp .area__map button.cards-scroll__nav:hover, .abp .area__map button.cards-scroll__nav:focus {
  background-color: #F2F7F7;
}
.abp__useful-links .row > * {
  padding: 10px;
}
.abp .ail {
  border-radius: 5px;
  background: white;
  height: 50px;
  overflow: hidden;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  gap: 12px;
}
.abp .ail > * {
  align-self: center;
}
.abp .ail img {
  height: 100%;
}
@media (min-width: 768px) {
  .abp .ail {
    height: 80px;
  }
}
.acl .accommodation-preview-list .card {
  height: 260px;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .acl .accommodation-preview-list :nth-child(6n+2) > .card {
    height: 370px;
  }
}
.acl .accommodation-preview-list > .row > * {
  padding: 14px;
}
.acl .accommodation-preview-list .card {
  margin: 0;
  border-radius: 4px;
}
.acl .button--filter {
  text-align: left;
}
.acl__more {
  background-color: #F8F7F4;
  padding: 30px;
  border-radius: 4px;
  color: black;
}
.acl__more.content {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  justify-content: end;
}
.acl__more .cta {
  font-weight: 600;
}
.acl__more:hover, .acl__more:focus {
  color: black;
  text-decoration: none;
}
.acl__more:hover .cta, .acl__more:focus .cta {
  text-decoration: underline;
}
.acl .area__map button.cards-scroll__nav {
  color: #227BBC;
  background-color: white;
  top: 38%;
}
.acl .area__map button.cards-scroll__nav:hover, .acl .area__map button.cards-scroll__nav:focus {
  background-color: #F2F7F7;
}
@media (max-width: 767.98px) {
  .acl .area__map .sd-scroll-controls {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-bottom: -12px;
    margin-top: 40px;
  }
  .acl .area__map button.cards-scroll__nav {
    display: inline-block;
    position: initial;
    transform: initial;
  }
}
.acb .hero-overlay__content a {
  color: white;
  text-decoration: none;
}
.acb .button--filter {
  text-align: left;
}
@media (max-width: 767.98px) {
  .acb__controls {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    overflow-x: auto;
  }
  .acb button.reset {
    white-space: nowrap;
  }
}
@media (min-width: 768px) {
  .acb .filters {
    display: flex;
    gap: 20px;
  }
  .acb__controls {
    display: flex;
    margin-bottom: 20px;
    flex-grow: 1;
  }
  .acb button.reset {
    margin-left: auto;
    margin-right: 0;
  }
}
.a2a_full_footer {
  display: none;
}
.tlp .hero {
  min-height: 300px;
  max-height: 300px;
  height: 300px;
}
.tlp-card-shortcuts .card {
  height: 0;
  padding-top: 66%;
  display: block;
  width: 100%;
}
.tlp-card-shortcuts .card__img-mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (max-width: 575.98px) {
  .tlp-itineraries .cards-scroll__item {
    width: calc((100% - 2* 14px) / 1.12 - 10px);
  }
}
body.modal--open {
  overflow: hidden;
}
section.tour-operators {
  font-size: 0.875rem;
}
@media (max-width: 767.98px) {
  section.tour-operators .tab-content {
    overflow-x: scroll;
  }
}
section.tour-operators ul > li[role=presentation] {
  cursor: pointer;
}
section.tour-operators .section-introduction .title {
  margin-top: 2.5rem;
  font-size: 2rem;
  font-weight: 700;
}
section.tour-operators .section-introduction p {
  font-size: 1rem;
  line-height: 25px;
  margin-bottom: 1.3em;
}
section.tour-operators .modal-footer {
  display: none;
}
section.tour-operators .tour-table td {
  word-wrap: break-word;
}
section.tour-operators .tour-table td.company {
  background-color: #F7FAFB;
  vertical-align: top;
  position: sticky;
  top: 100px;
}
section.tour-operators .tour-table .section-introduction .title {
  margin-top: 2.5rem;
}
section.tour-operators .tour-table ul {
  padding-left: 1.25rem;
}
section.tour-operators .tour-table td.course {
  font-weight: 600;
  font-size: 0.875rem;
}
section.tour-operators .tour-operators .modal-body > h3 {
  margin-top: 0;
}
.banner {
  display: block;
}
.banner div {
  position: relative;
  overflow: hidden;
}
.banner img {
  width: 100%;
  border-radius: 4px;
  background-color: #fff;
  border: 1px solid #ececec;
}
@media (max-width: 767.98px) {
  .tic .tab-pane {
    overflow-x: scroll;
  }
}
section.feature-information .feature-description__title, section.feature-information .feature-subcategories__title, section.feature-gurunavi .feature-description__title, section.feature-gurunavi .feature-subcategories__title {
  text-align: center;
  font-size: 2.25rem;
  font-weight: bold;
  margin-bottom: 24px;
}
section.feature-information .feature-description__text, section.feature-gurunavi .feature-description__text {
  font-size: 1rem;
  line-height: 1.55;
}
section.feature-information a:hover, section.feature-gurunavi a:hover {
  text-decoration: none;
}
section.feature-information .col-centered, section.feature-gurunavi .col-centered {
  margin: auto;
  float: none;
}
.feature-parent a {
  color: #fff;
}
.sdg-info {
  background-color: #F8F7F4;
  padding: 3.75rem 0;
}
.sdg-info .ui-subhead {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 40px;
}
.sdg-info .ui-subhead i {
  padding-top: 5px;
}
@media (min-width: 768px) {
  .sdg-info .ui-subhead {
    width: 21.875rem;
    flex-direction: row;
    gap: 10px;
  }
}
.no-image-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: #D0E4F9;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.no-image-placeholder svg {
  fill: #65A6D9;
  max-width: 26px;
}
.no-image-placeholder span {
  font-size: 14px;
  line-height: 16px;
  color: #65A6D9;
}
.powered-by {
  text-align: center;
  width: 300px;
  margin: auto;
  margin-top: 2rem;
}
.powered-by__title {
  margin-bottom: 0.5rem;
}
.powered-by p {
  margin: 0;
}
.itinerary-cta {
  margin-top: 1rem;
}
section.photos .section-introduction h1.title {
  font-size: 2.25rem;
}
section.photos .section-introduction p {
  font-size: 1rem;
  line-height: 25px;
  margin-bottom: 1.3em;
}
section.photos .popup-gallery img {
  width: 200px;
  max-width: 100%;
  padding: 5px;
}
section.photos .popup-gallery.big-image img {
  width: 400px;
}
section.halal-information.container {
  padding-top: 2.5rem;
  padding-bottom: 1.875rem;
}
#result-container .listing {
  display: flex;
  position: relative;
  padding: 1.125rem 0rem;
  border-top: 1px solid #e4e4e4;
}
#result-container .listing:last-child {
  border-bottom: 1px solid #e4e4e4;
}
#result-container .listing__cat {
  font-size: 0.875rem;
  color: #333;
}
#result-container .listing__title {
  font-size: 1.25rem;
  font-weight: 700;
  margin-top: 0.25rem;
}
#result-container .listing__price {
  display: inline-block;
}
#result-container .listing__price + #result-container .listing__spec {
  margin-left: 0.8rem;
}
#result-container .listing__spec {
  display: inline-block;
}
#result-container .listing__list {
  margin-top: 0.5rem;
  padding-left: 0;
  list-style: none;
}
#result-container .listing__list-item {
  display: inline-block;
  margin-right: 0.4rem;
  margin-bottom: 0.25rem;
}
#result-container .listing__img-container {
  flex: 0 0 90px;
  margin-right: 0.625rem;
}
#result-container .listing__img-mask {
  position: relative;
  overflow: hidden;
  padding-top: 66.7%;
  background-color: #ccc;
}
#result-container .listing__img-mask img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#result-container .listing__link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
#result-container .listing:hover .listing__title, #result-container .listing:focus .listing__title {
  color: #227BBC;
}
@media (min-width: 768px) {
  #result-container .listing__img-container {
    flex: 0 0 225px;
  }
}
.search-form.container .checkbox img {
  margin-right: 0.4rem;
}
.search-form.container .list-group-item > .checkbox {
  padding-top: 0;
  padding-bottom: 0;
}
.search-form.container .filter-button {
  padding: 12px 40px;
  line-height: 1.2;
  color: #fff;
  margin-bottom: 1.2rem;
  width: 100%;
  border: none;
  border-radius: 4px;
  background-color: #227BBC;
  transition: background-color 0.3s, color 0.3s;
  text-align: center;
  display: inherit;
}
.search-form.container .filter-button:focus, .search-form.container .filter-button:hover {
  color: #fff;
  background-color: #0c4875;
}
.search-form.container .filter-button__icon {
  margin-right: 0.4rem;
}
.search-form.container .filter__header {
  display: flex;
  align-items: center;
}
.search-form.container .filter__close {
  margin-left: auto;
}
.search-form.container .filter__category {
  border-top: 1px solid #e4e4e4;
  padding-top: 1.25rem;
  margin-bottom: 0.75rem;
  font-size: 1rem;
  font-weight: 600;
  margin-top: 1.25rem;
}
.search-form.container .filter__category:first-of-type {
  margin-top: 0;
}
.search-form.container .filter__btn {
  position: absolute;
  bottom: 0;
  padding: 12px 40px;
  margin-top: 0.8rem;
  text-align: center;
  width: 100%;
  background-color: #227BBC;
  color: #fff;
  transition: background-color 0.3s, color 0.3s;
}
@media (max-width: 768px) {
  .search-form.container .filter--search {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .search-form.container .filter-content {
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
    position: absolute;
    width: 100%;
    overflow-y: auto;
    bottom: 40px;
    top: 0;
  }
}
@media (max-width: 768px) {
  .search-form.container .filter.in, .search-form.container .filter--visible {
    display: block;
    transform: translateX(0vw);
  }
}
@media (min-width: 767.98px) {
  .search-form.container .filter {
    display: block !important;
  }
  .search-form.container .filter__header, .search-form.container .filter__close, .search-form.container .filter__btn {
    display: none !important;
  }
}
.feature-box {
  background-color: #F8FAFC;
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  padding: 1.25rem;
  font-size: 1.125rem;
  line-height: 1.777778;
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  .feature-box {
    flex-direction: row;
  }
}
.feature-box__content {
  justify-content: center;
  align-self: center;
  max-width: 40.625rem;
}
@media (min-width: 992px) {
  .feature-box__content {
    margin-left: 2.5rem;
  }
}
.feature-box__title {
  font-weight: 700;
  color: #1A2029;
  font-size: 1.75rem;
  line-height: 1.25;
  letter-spacing: -0.015em;
}
@media (min-width: 992px) {
  .feature-box__title {
    margin-top: 0;
  }
}
.feature-box__copy {
  margin-top: 1.5rem;
  margin-bottom: 0;
}
.feature-box__cta {
  margin-top: 4rem;
  display: inline-block;
  padding: 0.5rem 1rem;
  background-color: #227BBC;
  color: #fff;
  border-radius: 4px;
  font-weight: 600;
  transition: 0.3s background-color ease;
  text-align: center;
}
@media (min-width: 992px) {
  .feature-box__cta {
    padding: 0.5rem 3.75rem;
  }
}
.feature-box__cta:hover, .feature-box__cta:focus {
  background-color: #0c4875;
  color: white;
}
.feature-box__visual {
  max-width: 18.75rem;
  border: 20px solid #fff;
  align-self: center;
}
@media (min-width: 992px) {
  .feature-box__visual {
    margin-left: auto;
  }
}
.section-bg {
  background-color: #F8FAFC;
  padding-top: 5rem;
  padding-bottom: 2.5rem;
}
/* Hacking map infowindow style. Need to check for other solution before google change the class names. */
.gm-style-iw-chr {
  display: none;
}
.gm-style-iw-d {
  max-width: 280px !important;
  overflow: auto !important;
  max-height: none !important;
}
.gm-style .gm-style-iw-c {
  padding: 0;
}
.gm-style-iw-d .card {
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  margin-bottom: 0;
  width: 260px;
}
.gm-style-iw-d .card__img-mask {
  border-radius: 4px 4px 0 0;
  padding-top: 56.25%;
}
.gm-style-iw-d .card__content {
  padding: 0.5rem 1rem 0.75rem 1rem;
}
.gm-ui-hover-effect {
  display: none !important;
}
.pg__photo {
  position: relative;
  padding-top: 100%;
  display: block;
  margin-bottom: 1.75rem;
}
.pg__photo:hover {
  cursor: url("../../img/custom-cursor.svg"), pointer;
}
.pg__photo:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #1A2029;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.pg__photo:hover:after {
  opacity: 0.25;
}
.pg__photo figure {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F6F8F8;
}
.pg__photo figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.headphones-2 {
  display: inline-block;
  background-color: #fff;
  color: #1A2029;
  border-radius: 10rem;
  padding: 0.5rem 1rem;
  font-size: 1rem;
  border: 1px solid #E1E7EC;
  margin-top: 2rem;
}
.headphones-2 i {
  color: #227BBC;
}
.headphones-2 span {
  font-weight: 600;
}
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
  }
  70% {
    box-shadow: 0 0 0 0.75rem rgba(255, 255, 255, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}
@keyframes cssAnimation {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  99% {
    opacity: 0;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}
.hero--video-theater {
  overflow: visible;
}
.hero--video-theater iframe {
  width: 100%;
}
@media screen and (min-width: 768px) {
  #filter-type .dropdown-filter__content {
    width: 361px;
  }
}
#filter-type .type-filter-separator {
  border-top: 1px solid #E1E7EC;
}
#filter-type .type-filter-description {
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  line-height: 19px;
  color: #6B7280;
  margin-left: 18px;
}
#filter-type li.checkbox.tree {
  margin: 10px 0;
  cursor: pointer;
}
#filter-type li.checkbox.tree .type-checkbox {
  width: 18px;
  height: 18px;
  display: inline-block;
}
#filter-type li.checkbox.tree .type-checkbox i {
  visibility: hidden;
}
#filter-type li.checkbox.tree .type-checkbox.checked i {
  visibility: visible;
}
#filter-type li.checkbox.tree .checkbox__label {
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 22px;
  color: #202833;
}
.powered-by-jt {
  font-style: normal;
  font-weight: bold;
  font-size: 16px;
  line-height: 112.5%;
  margin: 1em;
}
.jt-restaurants p {
  font-size: 1.125rem;
  line-height: 1.555;
  color: #1A2029;
  margin-bottom: 1.5rem;
}
.jt-restaurants .powered-by {
  width: 100%;
  display: flex;
  align-items: end;
  flex-direction: column;
  margin: 0;
}
.jt-restaurants .powered-by-jt {
  margin: 0;
}
.jt-restaurants .powered-by__title {
  margin-bottom: 1rem;
}
.jt-restaurants .ui-subhead {
  margin-bottom: 0.5rem;
}
.jt-card span.card__action {
  top: 0;
  right: 0;
  color: #fff;
  background-color: transparent;
  border-radius: 0;
  cursor: pointer;
  z-index: inherit;
}
.table-details .event-time-cancelled {
  text-decoration: line-through;
}
.table-details .event-time-cancelled + span {
  display: inline-block;
  margin-left: 0.4rem;
  background: #fdf5f2;
  color: #cb5353;
  padding: 0.25rem;
  border-radius: 4px;
}
.popover .arrow {
  display: none;
}
.feedback-icon {
  font-size: 0.875em;
  margin-bottom: 1rem;
  color: #227BBC;
}
.feedback-icon a {
  cursor: pointer;
  display: flex;
  margin-bottom: 0;
  gap: 0.25rem;
}
.feedback-icon .feedback__label {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  line-height: 0.875rem;
  font-weight: 600;
}
.feedback-form-container {
  display: none;
  z-index: 7;
  position: absolute;
  background: #fff;
  margin: auto;
  max-width: 550px;
  width: 100%;
  padding: 20px;
  box-shadow: 0px 6px 14px rgba(0, 0, 0, 0.06);
  border-radius: 4px;
}
.feedback-form-container h3 {
  font-size: 1.25rem;
}
.feedback-form-container button.form-control {
  width: 50%;
  background: #227BBC;
  color: #fff;
  margin: auto;
}
.feedback-form-container button.form-control:hover, .feedback-form-container button.form-control:focus {
  background-color: #1364A1;
  color: #fff;
  text-decoration: none;
}
.feedback-form-container .feedback-form-header a {
  color: #000;
}
.feedback-form-container .feedback-form-header h3 {
  float: left;
}
.feedback-form-container .feedback-form-header .btn-close {
  float: right;
}
.feedback-form-container .feedback-form-header .divider {
  clear: both;
}
.feedback-form-container .feedback-form-body .feedback-error {
  color: #dc3545;
  font-style: italic;
  font-size: 0.75rem;
  margin-bottom: 1rem;
  display: none;
}
.feature-item-map {
  background: #F8FAFC;
  overflow: hidden;
}
@media (min-width: 992px) {
  .feature-item-map {
    height: 34rem;
  }
}
.feature-item-map-wrap {
  position: relative;
  width: 100%;
  height: 100%;
}
.feature-item-map-wrap .map__map {
  width: 100%;
  height: 100%;
}
.feature-item-map-wrap .map__map svg {
  width: 100%;
  height: 100%;
}
@media (min-width: 992px) {
  .feature-item-map__section {
    padding-left: 0;
  }
}
@media (max-width: 991.98px) {
  .gourmet-area {
    padding-top: 0.75rem;
  }
}
@media (min-width: 992px) {
  .gourmet-area {
    padding-right: 0;
  }
}
.map__map {
  display: block;
  width: inherit;
}
.feature--map {
  display: block;
  position: absolute;
  font-size: 0.875rem;
  color: #227BBC;
  transform: translate(-50%, -100%);
  height: 3rem;
  width: 3rem;
}
.feature--map--right {
  transform: translate(-100%, -100%);
}
.feature--map--left {
  transform: translate(0, -100%);
}
@media (max-width: 767.98px) {
  .feature--map {
    transform: translate(-50%, -100%) scale(0.8);
    transform-origin: bottom center;
  }
}
.feature--map-active .highlight-pin__icon .highlight-pin__icon-border, .feature--map-active .highlight-pin__icon .highlight-pin__icon-bg {
  fill: #042C48;
}
.feature--map-active .highlight-pin__icon .category-map__icon {
  background: #042C48;
}
.feature--map-active .highlight-pin__icon .highlight-pin__icon:hover .category-map__icon {
  color: #fff;
}
.map__key {
  margin-top: -139%;
  margin-left: 34%;
  color: #fff;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1;
  display: flex;
  align-items: center;
  text-align: center;
}
.map__spot__marker {
  display: inline-block;
  height: inherit;
  width: inherit;
  fill: currentColor;
}
.section-destination .hero-overlay__content-location {
  right: 1rem;
  bottom: 1rem;
}
.section-destination .hero-overlay__content-location i {
  margin-right: 4px;
}
.section-destination .card-overlay-c__icon {
  color: #fff;
  display: flex;
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  height: 2.5rem;
  width: 2.5rem;
  border: 1px solid #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
}
.section-destination .card-overlay-c__icon i {
  font-size: 1.125rem;
}
.section-destination .card-overlay-c__title {
  font-weight: 700;
  left: 12px;
  bottom: 12px;
}
@media screen and (max-width: 767px) {
  .section-destination .hero-square {
    padding-top: 100%;
  }
}
.section-destination .section-geography svg {
  max-width: 100%;
}
.section-destination .section-geography h2.ui-head {
  padding-bottom: 3rem;
}
.section-destination .section-geography .geography-data {
  padding-left: 20px;
}
.section-destination .section-geography .geography-data h4.ui-tinyhead {
  font-size: 1.25rem;
}
.section-destination .section-geography .geography-data .nav-geography .nav-item {
  margin: 0;
}
.section-destination .section-geography .geography-data .nav-geography a {
  padding: 1.25rem 0;
  border-bottom: 1px solid #D9D9D9;
  display: block;
  color: #1A2029;
}
.section-destination .section-geography .icon_eclipse_9 {
  color: #1A2029;
  display: flex;
  top: 0.5rem;
  left: 0.5rem;
  height: 2.5rem;
  width: 2.5rem;
  border: 1px solid #E1E7EC;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  margin-bottom: 1rem;
}
.section-destination .section-geography .icon_eclipse_9 i {
  font-size: 1.125rem;
}
.section-destination .section-geography .geography-block {
  margin-bottom: 5rem;
}
@media (max-width: 991.98px) {
  .section-destination .section-geography .geography-data {
    margin-top: -4.25rem;
  }
  .section-destination .section-geography .geography-map {
    text-align: right;
  }
}
.section-destination a.feature-location {
  color: #fff;
}
.section-destination .nav-pills .nav-link {
  color: #1A2029;
}
.section-destination .csl__content {
  max-width: 365px;
}
.img-pano {
  cursor: pointer;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  margin: 1.5rem 0;
}
.img-pano figure {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
}
.img-pano figure img.thumbnail {
  transform: scale(1.12);
  transition: transform 0.8s ease-in-out;
}
.img-pano figure img.thumbnail:hover {
  transform: scale(1);
}
.img-pano figure .svg {
  pointer-events: none;
  position: absolute;
  top: calc(50% - 71px / 2);
  left: calc(50% - 140px / 2);
}
.img-pano canvas {
  display: block;
  width: 100%;
  height: 100%;
}
.img-pano .infospot {
  position: absolute;
  top: 0;
  width: 18rem;
  height: 22rem;
  background: #fff;
  color: #000;
  border-radius: 0.56rem;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
}
.img-pano .infospot__title, .img-pano .infospot__text, .img-pano .infospot__img {
  padding-left: 1rem;
  padding-right: 1rem;
}
.img-pano .infospot::-webkit-scrollbar-thumb {
  background-color: #adb5bd;
  border: 0.36rem solid #fff;
  border-radius: 0.56rem;
  background-clip: padding-box;
}
.img-pano .infospot::-webkit-scrollbar-thumb:hover {
  background-color: #6c757d;
}
.img-pano .infospot::-webkit-scrollbar {
  width: 1rem;
}
.media-pdf-list {
  padding-left: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin-right: -14px !important;
  margin-left: -14px !important;
  margin-bottom: 0 !important;
}
.media-pdf-list a {
  color: #181C1E;
}
.media-pdf-list li {
  flex: 0 0 50%;
  max-width: 50%;
  padding-right: 14px;
  padding-left: 14px;
  margin-bottom: 2rem;
}
@media (min-width: 576px) {
  .media-pdf-list li {
    flex: 0 0 25%;
    max-width: 33.33%;
  }
}
.media-pdf-list li .pdf-file__title {
  font-weight: 600;
  line-height: 1.25;
  margin-top: 1rem !important;
  margin-bottom: 0 !important;
}
.media-pdf-list li .pdf-file__mask {
  position: relative;
  padding-top: 128.57%;
  overflow: hidden;
  background-color: #F6F8F8;
  border: 1px solid #ECEFF0;
  margin-bottom: 0 !important;
}
.media-pdf-list li .pdf-file__mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 575.98px) {
  .media-pdf-list--small li {
    flex: 0 0 100%;
    max-width: 100%;
    margin-bottom: 0;
  }
  .media-pdf-list--small li:last-of-type .pdf-file {
    border-bottom: 1px solid #dee2e6;
  }
  .media-pdf-list--small .pdf-file {
    display: flex;
    padding: 1.25rem 0;
    border-top: 1px solid #dee2e6;
    margin-bottom: 0;
  }
  .media-pdf-list--small .pdf-file__visual {
    flex: 0 0 80px;
  }
  .media-pdf-list--small .pdf-file__content {
    margin-left: 1rem;
  }
  .media-pdf-list--small .pdf-file__title {
    margin-top: 0 !important;
  }
}
.section-experience .experience-feature {
  height: auto;
}
.section-experience .feature-information {
  margin-bottom: 60px;
}
.section-experience .experience-videos__more {
  font-weight: 700;
  color: #156FB1;
}
.section-experience .experience-videos__bgtext {
  position: absolute;
  right: -50px;
  bottom: -25px;
  font-size: 128px;
  line-height: 112.5%;
  color: rgba(0, 0, 0, 0);
  -webkit-text-stroke-color: rgba(19, 100, 161, 0.24);
  -webkit-text-fill-color: rgba(0, 0, 0, 0);
  -webkit-text-stroke-width: 1px;
}
@media (max-width: 767.98px) {
  .section-experience .experience-videos__bgtext {
    right: -20px;
  }
}
.section-experience .experience-videos__other {
  padding-bottom: 160px;
}
.section-experience .experience-videos__other > .row {
  align-items: center;
}
.section-experience .experience-videos__other .card-video__title {
  font-size: 20px;
}
.section-experience .filter-tabs ul.list-unstyled {
  padding: 1rem 0;
}
.section-experience .filter-tabs .horizontal-card__tab .horizontal-card__wrap {
  height: 3.75rem;
  padding: 0 0;
  border: 1px solid #DDE2E5;
  box-sizing: border-box;
  border-radius: 4px;
}
.section-experience .filter-tabs .horizontal-card__tab .horizontal-card__wrap .horizontal-card__mask {
  height: 3.75rem;
  width: 5.625rem;
}
.section-experience .filter-tabs .horizontal-card__tab .horizontal-card__wrap span {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.25;
  width: calc(100% - 110px);
}
@media (max-width: 767px) {
  .section-experience .filter-tabs .horizontal-card__tab .horizontal-card__wrap span {
    font-size: 1rem;
    padding-left: 5px;
    width: auto;
  }
}
.section-experience .filter-tabs .horizontal-card__tab .horizontal-card__wrap.active {
  background: #E5F4FF;
}
.section-experience .filter-tabs .horizontal-card__tab .horizontal-card__wrap.active span {
  color: #1364A1;
}
.section-experience .filter-description {
  padding-bottom: 1rem;
}
.section-experience .filter-results {
  padding: 1rem 0;
}
.section-experience .cards-scroll-nav {
  height: 100%;
}
.section-experience .cards-scroll-nav__wrap {
  position: relative;
}
.section-experience .cards-scroll__nav--right {
  right: -0.5rem;
}
.section-experience .cards-scroll__nav--left {
  left: -0.5rem;
}
.section-experience .linebreak {
  padding: 1.5rem 0.875rem;
}
.section-experience .linebreak hr {
  border: none;
  border-bottom: 1px solid #DDE2E5;
}
.experience-videos, .experience-videos__area, .other-exp {
  position: relative;
}
.experience-videos .ui-subhead, .experience-videos__area .ui-subhead, .other-exp .ui-subhead {
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.02em;
  margin-bottom: 1.25rem;
}
.experience-videos p, .experience-videos__area p, .other-exp p {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  margin-bottom: 1.25rem;
}
.experience-videos__nav, .experience-videos__area__nav, .other-exp__nav {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
}
.experience-videos__nav .nav-link, .experience-videos__area__nav .nav-link, .other-exp__nav .nav-link {
  color: #227BBC;
  display: inline-block;
  font-weight: 400;
  padding: 4px 20px;
  gap: 10px;
  border-radius: 100px;
  background-color: white;
  border: 1px solid #DDE2E5;
  width: initial !important;
  text-wrap: nowrap;
  transition: color 0.3s ease, background-color 0.3s ease;
  font-size: 1rem;
  line-height: 1.5;
}
.experience-videos__nav .nav-link.active, .experience-videos__area__nav .nav-link.active, .other-exp__nav .nav-link.active {
  background-color: #227BBC;
  color: #fff;
}
.experience-videos__nav .nav-link.active:hover, .experience-videos__nav .nav-link.active:focus, .experience-videos__area__nav .nav-link.active:hover, .experience-videos__area__nav .nav-link.active:focus, .other-exp__nav .nav-link.active:hover, .other-exp__nav .nav-link.active:focus {
  background-color: #227BBC;
  color: #fff;
}
@media (max-width: 575.98px) {
  .experience-videos__nav, .experience-videos__area__nav, .other-exp__nav {
    margin-left: -10px;
    margin-right: -10px;
    gap: 0;
  }
  .experience-videos__nav .nav-link, .experience-videos__area__nav .nav-link, .other-exp__nav .nav-link {
    margin-left: 5px;
    margin-right: 5px;
  }
}
.experience-videos--itinerary__cta, .experience-videos__area--itinerary__cta, .other-exp--itinerary__cta {
  display: block;
  text-decoration: none;
  width: 100%;
  padding: 8px 22px;
  border-radius: 40px;
  background: #227BBC;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  text-align: center;
}
.experience-videos--itinerary__cta i, .experience-videos__area--itinerary__cta i, .other-exp--itinerary__cta i {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  margin-left: 4px;
}
.experience-videos--itinerary__cta:hover, .experience-videos--itinerary__cta:focus, .experience-videos__area--itinerary__cta:hover, .experience-videos__area--itinerary__cta:focus, .other-exp--itinerary__cta:hover, .other-exp--itinerary__cta:focus {
  background: #1364A1;
  transition: background-color 0.3s ease;
}
.select--search {
  padding: 0 2rem 0 0.75rem;
}
.show__results {
  margin-top: 1rem;
}
.famous-products {
  width: 13.813rem;
  height: 13.813rem;
  position: fixed;
}
.parent-feature-label {
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.125;
  text-align: center;
  color: #227BBC;
  margin-bottom: 0.8rem;
}
@media (max-width: 575.98px) {
  .famous-pill {
    white-space: break-spaces;
  }
}
@media (max-width: 991.98px) {
  .famous-tag {
    margin-bottom: 1rem;
  }
}
.pull-quote {
  font-style: italic;
  position: relative;
  margin-bottom: 1.555rem;
}
.pull-quote::before {
  font-family: "Font Awesome 5 Pro";
  content: "";
  left: -1.5rem;
  top: 0;
  position: absolute;
  font-weight: 700;
}
.experience-modal__image {
  height: 100%;
}
.planning-trip__title {
  font-weight: 700;
  font-size: 1.75rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .planning-trip--card {
    display: flex;
    flex-direction: column;
  }
}
.planning-trip--card__item {
  display: flex;
  flex-grow: 1;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
  border-top: 1px solid #ddd;
}
.planning-trip--card__image_mask {
  position: relative;
  padding-bottom: 132%;
  background-color: #ddd;
  overflow: hidden;
  min-width: 6.25rem;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .planning-trip--card__image_mask {
    min-width: 10.625rem;
  }
}
.planning-trip--card__image_mask img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.planning-trip--card__content {
  flex: 1 1 auto;
  margin-left: 1.6rem;
}
.planning-trip--card__title {
  font-size: 1.375rem;
  font-weight: 700;
  margin-top: 0;
}
.planning-trip--card__title-link {
  font-size: 1.375rem;
  font-weight: 700;
  margin-top: 0;
  color: #000;
}
.planning-trip--card__title-link:hover, .planning-trip--card__title-link:focus {
  color: #227BBC;
  text-decoration: none;
}
.planning-trip--card__title-link i {
  font-size: 1.125rem;
}
.planning-trip--card__desc {
  font-size: 1rem;
  line-height: 1.5625;
}
.planning-trip--card__link {
  font-size: 1rem;
  font-weight: 600;
  line-height: 2;
  color: #227BBC;
}
.planning-trip--card__link:hover, .planning-trip--card__link:focus {
  color: #73bff9;
}
@media (min-width: 768px) {
  .planning-trip__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
  }
}
.trip-item--1 {
  border-top: none;
}
@media (min-width: 992px) {
  .trip-item--1, .trip-item--2 {
    border-top: none;
  }
}
.ui-title__planning {
  font-size: 2.938rem;
  font-weight: 700;
  line-height: 112.5%;
  color: #222222;
}
.bold-text {
  font-weight: bold;
}
.event-description {
  font-size: 1.125rem;
  line-height: 2;
}
.season-event-overlay {
  margin-top: 1.75rem;
}
@media (min-width: 768px) {
  .season-event-overlay__content {
    padding-top: 40.33%;
  }
}
.adventure-videos {
  margin-top: 1.5rem;
}
.adventure-videos__container {
  margin-top: -20rem;
}
@media (min-width: 992px) {
  .adventure-videos__container {
    margin-top: -16rem;
  }
}
@media (max-width: 575.98px) {
  .adventure-videos__container {
    width: 80%;
    margin-bottom: 1rem;
  }
}
@media (max-width: 575.98px) {
  .adventure-videos__link {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.video-top--hero {
  padding-top: 0;
  height: 80vh;
}
@media (min-width: 992px) {
  .video-top--hero {
    height: calc(100vh - 13rem);
  }
}
.video-top--image {
  text-align: center;
  position: absolute;
  color: white;
  z-index: 10;
  transform: translateY(-50%);
  top: 50%;
  left: 3rem;
}
@media (min-width: 768px) {
  .video-top--image {
    left: 5rem;
  }
}
@media (min-width: 992px) {
  .video-top--image {
    top: 55%;
    left: 9rem;
  }
}
.video-top--image svg {
  width: 12rem;
}
@media (min-width: 768px) {
  .video-top--image svg {
    width: 15rem;
  }
}
@media (min-width: 992px) {
  .video-top--image svg {
    width: 415px;
    height: 400px;
  }
}
.video-top--text {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 112.5%;
  letter-spacing: 0.068rem;
}
.video-top--title {
  font-size: 2.9375rem;
  font-style: normal;
  font-weight: 100;
  line-height: 112.5%;
  letter-spacing: 0.03469rem;
  text-transform: uppercase;
}
@media (min-width: 1500px) {
  .video-top--hero {
    height: calc(100vh - 15rem);
  }
  .video-top--image {
    top: 50%;
  }
}
.video-introduction {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.video-introduction p {
  color: #222;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2rem;
}
.cards-scroll-video .cards-scroll-nav__wrap {
  padding-top: 120%;
}
.cards-scroll-video__interactive {
  padding-top: 145%;
  border-radius: 0.5rem;
}
.cards-scroll-video__interactive .ivm-menu-titles {
  top: 1.5rem;
  left: 1.5rem;
  right: unset;
  text-align: left;
}
.cards-scroll-video__interactive .ivm-menu-titles p {
  font-size: 0.88919rem;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .cards-scroll-video__interactive .ivm-menu-titles p {
    font-size: 1rem;
  }
}
.cards-scroll-video__interactive .ivm-menu-titles h4 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.33381rem;
}
@media (min-width: 768px) {
  .cards-scroll-video__interactive .ivm-menu-titles h4 {
    font-size: 1.5rem;
  }
}
.cards-scroll-video__interactive .ivm-types {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  border-radius: 0.25rem;
  background: rgba(0, 0, 0, 0.8);
  display: inline-flex;
  padding: 0.25rem 0.5rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
}
.cards-scroll-video__interactive .ivm-types p {
  color: #fff;
  font-size: 0.875rem;
  font-weight: 400;
  margin: 0;
}
.cards-scroll-video .card-video__timestamp {
  right: 1rem;
  bottom: 1rem;
}
.video-humans {
  width: 75%;
}
@media (min-width: 576px) {
  .video-humans {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 768px) {
  .video-humans {
    width: calc((100% + 1rem) / 2 - 1.25rem);
  }
}
@media (min-width: 992px) {
  .video-humans {
    width: calc((100% + 1rem) / 4 - 1.25rem);
  }
}
@media (min-width: 1220px) {
  .video-humans {
    width: calc((100% + 1.25rem) / 4 - 1.25rem);
  }
}
.video-humans a {
  margin-top: 0;
}
.video-humans .card-overlay__left {
  width: 88%;
  bottom: 0.75rem;
}
.video-humans .humans__overlay {
  border-radius: 0.5rem;
}
.video-humans .card-overlay__name {
  font-size: 1rem;
}
@media (max-width: 575.98px) {
  .video-humans .card-overlay__name {
    font-size: 0.75rem;
  }
}
.video-humans .card-overlay__label {
  font-size: 1.125rem;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
}
@media (max-width: 575.98px) {
  .video-humans .card-overlay__label {
    font-size: 1rem;
  }
}
.video-interactive, .video-kfh {
  margin-top: 5rem;
}
@media (min-width: 768px) {
  .video-interactive, .video-kfh {
    margin-top: 9rem;
  }
}
.video-interactive--head, .video-kfh--head {
  color: #227BBC;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.0675rem;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.video-interactive--title, .video-kfh--title {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 128.571%;
  margin-bottom: 0.5rem;
}
.video-interactive--text, .video-kfh--text {
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2;
}
.video-interactive .cards-scroll-nav__wrap, .video-kfh .cards-scroll-nav__wrap {
  padding-top: 120%;
}
@media (min-width: 992px) {
  .video-interactive .cards-scroll-nav__wrap, .video-kfh .cards-scroll-nav__wrap {
    padding-top: 280%;
  }
}
.video-interactive {
  scroll-margin-top: 60px;
}
@media (max-width: 767.98px) {
  .video-interactive--cards {
    margin-top: 4rem;
  }
}
.video-interactive--link.main-cta {
  display: inline-block;
  background-color: #227BBC;
  padding: 0.5rem 1.375rem;
  line-height: 1.5;
  font-weight: 600;
  border-radius: 60px;
  color: white;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.video-interactive--link.main-cta:hover {
  background-color: #1364A1;
}
.vi__circles {
  display: inline-block;
  position: absolute;
  width: 2rem;
  height: 2rem;
}
.vi__circles--item {
  border: 3px solid rgba(34, 123, 188, 0.8);
  border-radius: 50%;
  height: 8.375rem;
  width: 8.375rem;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  animation: zoom 2s linear 0.75s infinite;
}
.vi__circles--item-2 {
  animation-delay: 1.25s;
}
.vi__circles--item-3 {
  animation-delay: 1.75s;
}
@keyframes zoom {
  0% {
    transform: translate(-50%, -50%) scale(0.2);
    opacity: 0;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.2;
  }
}
@media (max-width: 575.98px) {
  .video-exp .section-bg__link {
    border-radius: 2.375rem;
    border: 1px solid #297CBA;
    background: #297CBA;
    color: #FFF;
    text-align: center;
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    padding: 0.75rem 1rem;
  }
}
.video-exp .section-bg__link i {
  padding-left: 0.5rem;
}
@media (min-width: 768px) {
  .video-exp .section-bg__link i {
    margin-right: -1rem;
  }
}
@media (max-width: 575.98px) {
  .video-exp .section-bg__link i {
    display: none;
  }
}
.vid-card .ivm-menu-titles {
  max-width: 14.8125rem;
}
.vid-card .ivm-menu-titles h4 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 600;
  line-height: 112.5%;
  font-size: 1.33381rem;
}
@media (min-width: 768px) {
  .vid-card .ivm-menu-titles h4 {
    font-size: 1.5rem;
  }
}
.interactive-modal__dialog {
  width: 100vw;
  height: 100vh;
  max-width: 100vw;
  margin: 0;
}
.interactive-modal__dialog .modal-content {
  height: 100%;
}
.collection-navs {
  border: 1px solid #DDE2E5;
  background: #FFF;
}
.collection-navs ul.nav {
  justify-content: center;
  margin: 0;
}
.collection-navs ul.nav .nav-item:last-child {
  flex-grow: 0;
}
@media (max-width: 575.98px) {
  .collection-navs ul.nav {
    flex-wrap: unset;
  }
}
.collection-navs .nav-link {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 125%;
}
.collection-navs .nav-link i {
  display: block;
  text-align: center;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 125%;
}
.recommended-collection__title {
  margin-bottom: 1.25rem;
}
.recommended-collection__title i {
  display: block;
  margin-bottom: 1rem;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 125%;
}
.recommended-collection p {
  margin-bottom: 1.25rem;
}
.recommended-collection__scroll--left, .recommended-collection__scroll--right {
  position: absolute;
  top: 100%;
  right: 20px;
  display: inline-block;
}
.recommended-collection__scroll--left {
  left: 20px;
}
.recommended-collection__scroll .cards-scroll__nav {
  margin-top: 1.25rem;
}
.recommended-collection__scroll .cards-scroll__nav i {
  color: #227BBC;
  font-size: 1.5rem;
}
.recommended-collection__scroll * {
  position: initial;
  padding: 5px;
}
@media (min-width: 768px) {
  .recommended-collection__left {
    margin: 0;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -119%;
    width: 225%;
    padding-left: 127%;
    padding-top: 3rem;
    padding-bottom: 3rem;
    border-radius: 0 0.25rem 0.25rem 0;
    background: linear-gradient(0deg, #F8FAFC 0%, #F8FAFC 100%), lightgray 50% / cover no-repeat;
  }
}
.collection-card .card-overlay__content {
  padding-top: 100%;
  border-radius: 0.625rem;
}
@media (min-width: 992px) {
  .collection-card .card-overlay__content {
    padding-top: 60%;
  }
}
.collection-card picture {
  border-radius: inherit;
}
.collection-card .card-overlay__overlay {
  border-radius: 0.625rem;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.4) -0.08%, rgba(0, 0, 0, 0) 38.59%);
}
.feature-header i {
  display: block;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 125%;
  padding-bottom: 0.75rem;
}
.section-collections {
  margin-top: 9rem;
  margin-bottom: 9rem;
}
.luxury-section {
  margin: 10rem auto;
}
.luxury-section picture {
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 0.5rem;
  background: linear-gradient(180deg, rgba(175, 150, 107, 0.65) 0%, rgba(58, 44, 20, 0.74) 100%);
}
.luxury-section picture img {
  filter: blur(29px);
}
.luxury-section .spotlight::after {
  display: none;
}
.luxury-section .spotlight__copy {
  -webkit-line-clamp: initial;
}
.luxury-section .spotlight__button {
  border-radius: 0.25rem;
  padding: 0.5625rem 1.375rem;
  width: initial;
}
.luxury-section .spotlight__cta {
  align-items: baseline;
}
.luxury-section .spotlight__card {
  z-index: 1;
  border-radius: 0.625rem;
  background: lightgray 50% / cover no-repeat;
}
@media (min-width: 768px) {
  .luxury-section .spotlight__card {
    position: absolute;
    left: 54%;
    top: 50%;
    width: 19.5rem;
    height: 27.5rem;
    transform: translate(0, -50%) rotate(4deg);
  }
}
@media (min-width: 992px) {
  .luxury-section .spotlight__card {
    left: 60%;
  }
}
@media (max-width: 767.98px) {
  .luxury-section .spotlight__card {
    position: relative;
    width: 100%;
    aspect-ratio: 0.75;
    margin: auto;
  }
  .luxury-section .spotlight {
    padding-top: 1rem;
  }
  .luxury-section .spotlight img {
    height: 100%;
  }
  .luxury-section .spotlight__content {
    margin-top: 2.5rem;
    max-width: none;
  }
}
.luxury-section__cta {
  position: relative;
  z-index: 1;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.luxury-section__cta .spotlight__button {
  margin: auto;
}
.ui-text {
  color: #333;
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
}
.famous-cat-nav {
  margin: 1.75rem 0;
}
.famous-cat-nav ul.nav {
  justify-content: flex-start;
}
.famous-cat-nav li {
  padding: 0.5rem 0;
}
.mb-head {
  color: #227BBC;
  font-size: 1rem;
  font-weight: 400;
  line-height: 125%;
  letter-spacing: 0.02rem;
  text-transform: uppercase;
}
.media-bank ul {
  z-index: 1;
}
.media-bank .card-media {
  padding-top: 130%;
  border-radius: 0.5rem;
  background: linear-gradient(0deg, #0B283C 0%, rgba(11, 40, 60, 0) 26.93%), lightgray -221.75px 0px / 220.637% 100% no-repeat;
}
.media-bank .vi__circles {
  display: none;
}
@media (min-width: 992px) {
  .media-bank .vi__circles {
    display: block;
  }
}
.media-bank__bottom-circle {
  bottom: 0;
  left: 0;
  z-index: 0;
}
.media-bank__top-circle {
  top: 0;
  right: 0;
}
.b2b-news {
  color: #227BBC;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.0175rem;
  margin-top: 0.63rem;
}
.b2b-news--card .card__img-mask {
  padding-top: 80%;
}
@media (min-width: 768px) {
  .b2b-news--card .card__img-mask {
    padding-top: 66.6%;
  }
}
@media (max-width: 767.98px) {
  .news-link {
    padding: 0.5625rem 2.5rem;
    border-radius: 56.25px;
    background: #227BBC;
    color: #fff;
  }
}
@media (min-width: 768px) {
  .recommended-cards-text {
    padding-right: 3rem;
  }
}
.category-wrapper .inpage-navtabs {
  top: 7.8rem;
}
.category-wrapper .left-nav {
  position: sticky;
  top: 7.5rem;
}
@media (max-width: 767.98px) {
  .category-wrapper .left-nav {
    background: #fff;
    z-index: 10;
  }
  .category-wrapper .left-nav ul li.active a {
    border-bottom: 3px solid #227BBC;
  }
}
@media (min-width: 768px) {
  .category-wrapper .left-nav {
    padding-top: 5rem;
    margin-bottom: 7.5rem;
    top: 5rem;
  }
  .category-wrapper .left-nav ul {
    list-style: none;
    padding-left: 1.5rem;
  }
  .category-wrapper .left-nav ul li {
    line-height: 2.125rem;
    margin-bottom: 1rem;
    font-size: 1rem;
    font-weight: 400;
  }
  .category-wrapper .left-nav ul li a {
    color: #757575;
    font-size: 16px;
    line-height: 20px;
    text-align: left;
  }
  .category-wrapper .left-nav ul li.active {
    font-style: normal;
    font-weight: 700;
    list-style-type: disc;
  }
  .category-wrapper .left-nav ul li.active::marker {
    color: #227BBC;
  }
  .category-wrapper .left-nav ul li.active a {
    color: #227BBC;
  }
}
@media (min-width: 768px) {
  .category-wrapper .content {
    padding: 20px;
  }
}
.category-wrapper .see-do-category {
  position: relative;
}
.category-wrapper .see-do-category__content {
  font-size: 1.125rem;
  margin-top: 1.25rem;
  z-index: 4;
  position: relative;
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category__content {
    margin-top: 0;
    position: absolute;
    width: 30rem;
    background-color: #fff;
    padding: 1.875rem;
  }
}
.category-wrapper .see-do-category__content--icon {
  color: #B1C3D2;
  font-size: 20px;
  font-weight: 900;
  line-height: 22.5px;
  text-align: left;
}
@media (max-width: 767.98px) {
  .category-wrapper .see-do-category__content--icon {
    font-size: 18px;
    line-height: 20.25px;
  }
}
.category-wrapper .see-do-category__content--title {
  margin: 10px 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 27px;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 767.98px) {
  .category-wrapper .see-do-category__content--title {
    flex-direction: row;
    font-size: 20px;
    line-height: 22.5px;
  }
}
.category-wrapper .see-do-category__content--copy {
  font-size: 18px;
  font-weight: 400;
  line-height: 27px;
  text-align: left;
}
@media (max-width: 767.98px) {
  .category-wrapper .see-do-category__content--copy {
    font-size: 16px;
    line-height: 24px;
  }
}
.category-wrapper .see-do-category__content--url {
  font-size: 16px;
  font-weight: 600;
  line-height: 18px;
  text-align: left;
}
.category-wrapper .see-do-category__content--url i {
  font-weight: 400;
}
.category-wrapper .see-do-category__img {
  position: absolute;
  top: 0;
  left: 0;
  height: inherit;
  width: 100%;
  object-fit: cover;
  border-radius: 4px;
}
.category-wrapper .see-do-category__figure {
  display: block;
  position: relative;
  padding-top: 56.25%;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category__figure {
    padding: 0;
    height: 29rem;
    max-width: 51.625rem;
  }
}
.category-wrapper .see-do-category__figure picture, .category-wrapper .see-do-category__figure .see-do-category__pic {
  height: 100%;
  width: 100%;
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category--1 .see-do-category__figure, .category-wrapper .see-do-category--3 .see-do-category__figure {
    margin-left: auto;
  }
  .category-wrapper .see-do-category--1 .see-do-category__content, .category-wrapper .see-do-category--3 .see-do-category__content {
    bottom: 0;
  }
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category--1 .see-do-category__figure {
    max-width: 22.75rem;
  }
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category--3 .see-do-category__figure {
    max-width: 35rem;
  }
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category--2 .see-do-category__content, .category-wrapper .see-do-category--4 .see-do-category__content {
    right: 0;
    padding: 3.25rem 0rem 3.25rem 4rem;
  }
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category--2 .see-do-category__figure {
    max-width: 29rem;
  }
  .category-wrapper .see-do-category--2 .see-do-category__content {
    top: 0;
  }
}
@media (min-width: 768px) {
  .category-wrapper .see-do-category--4 .see-do-category__figure {
    max-width: 90%;
  }
  .category-wrapper .see-do-category--4 .see-do-category__content {
    top: 50%;
    transform: translateY(-50%);
  }
}
.category-wrapper .see-do-category-navs {
  display: none;
}
@media (max-width: 767.98px) {
  .category-wrapper .see-do-category-navs {
    display: block;
    margin: 0 0 2.5rem 0;
    border-left: none;
    border-right: none;
  }
  .category-wrapper .see-do-category-navs ul.nav {
    justify-content: left;
    flex-wrap: nowrap;
  }
}
@media (max-width: 575.98px) {
  .category-wrapper .see-do-category-navs {
    margin: 0 -14px 2.5rem -14px;
  }
}
.see-do__tips {
  padding: 2.5rem 0;
  background-color: #F4F8F7;
}
.see-do__tips--top {
  margin-bottom: 2.5rem;
}
.see-do__tips--blurb {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.688;
}
.see-do__tips--content {
  position: relative;
}
@media (max-width: 575.98px) {
  .see-do__tips--content .cards-scroll {
    margin-right: -14px;
  }
}
.see-do__tips--content .vs-scroll {
  position: unset;
  justify-content: end;
}
.category-tags {
  padding: 5rem 0;
  background-color: #F8FAFC;
}
.category-tags__scroll {
  display: none;
}
@media (min-width: 768px) {
  .category-tags__scroll {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
  }
  .category-tags__scroll .cards-scroll__nav {
    display: inline-block;
    position: relative;
    right: 0;
    margin-top: 1.25rem;
    color: #227BBC;
  }
}
.category-trips {
  padding: 5rem 0;
  background: #071B2A;
}
.category-trips .cards-scroll__item .card__content-area, .category-trips .cards-scroll__item .card__content-title, .category-trips .cards-scroll__item .card__content-text {
  color: #fff;
}
.category-trips .cards-scroll__item .card__content-area {
  border: 1px solid #fff;
}
.category-trips .cards-scroll__item .card__counter:after {
  background-color: #fff;
}
.category-trips .ui-subhead, .category-trips .experience-trip--blurb {
  color: #fff;
}
.category-trips--top {
  margin-bottom: 2.5rem;
}
@media (min-width: 992px) {
  .category-trips--top {
    margin-bottom: 3.75rem;
  }
}
.category-trips--blurb {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.688;
}
.category-trips--content {
  position: relative;
}
@media (max-width: 575.98px) {
  .category-trips--content .cards-scroll {
    margin-right: -14px;
  }
}
.category-trips--content .vs-scroll {
  position: unset;
  justify-content: end;
}
@media (max-width: 575.98px) {
  .category-trips--content__cards {
    margin-right: -14px;
    margin-left: -14px;
  }
}
.category-trips__scroll {
  display: none;
}
@media (min-width: 768px) {
  .category-trips__scroll {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 12px;
    height: 24px;
    margin-bottom: 20px;
  }
  .category-trips__scroll .cards-scroll__nav {
    display: inline-block;
    background: #00000040;
    color: #fff;
    position: relative;
    right: 0;
    margin-top: 1.25rem;
    border: none;
  }
}
@media (max-width: 575.98px) {
  .category-trips--cs {
    width: calc((100% - 3rem) - 10px);
    margin-right: 20px;
    scroll-snap-align: none;
  }
  .category-trips--cs:first-child {
    margin-left: 14px;
  }
  .category-trips--cs:last-child {
    margin-right: 14px;
  }
}
.travel-itineraries {
  background: #fff;
}
.travel-itineraries__scroll {
  display: none;
}
@media (min-width: 768px) {
  .travel-itineraries__scroll {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 12px;
    height: 50px;
    margin-bottom: 20px;
  }
  .travel-itineraries__scroll .cards-scroll__nav {
    display: inline-block;
    position: relative;
    right: 0;
    margin-top: 1.25rem;
  }
  .travel-itineraries__scroll .cards-scroll__nav i {
    color: #227BBC;
    font-size: 1.5rem;
  }
}
@media (max-width: 575.98px) {
  .travel-itineraries--cs {
    width: calc((100% - 3rem) - 10px);
    margin-right: 20px;
    scroll-snap-align: none;
  }
  .travel-itineraries--cs:first-child {
    margin-left: 14px;
  }
  .travel-itineraries--cs:last-child {
    margin-right: 14px;
  }
}
@media (max-width: 575.98px) {
  .collection-navs ul.nav {
    justify-content: left;
  }
}
@media (min-width: 576px) {
  .collection-navs .nav-item {
    margin-right: 2rem;
  }
}
@media (min-width: 768px) {
  .collection-navs .nav-item {
    margin-right: 4.38rem;
  }
}
.collection-navs .nav-item:last-child {
  margin-right: 0;
}
.welcome-intro {
  margin-top: 2.5rem;
}
.welcome-intro h1 {
  color: var(--ota-dark, #181C1E);
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 2.25rem;
}
@media (min-width: 992px) {
  .welcome-intro h1 {
    color: #222;
    font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
    font-size: 2.9375rem;
    line-height: 112.5%;
  }
}
.welcome-intro p {
  margin-top: 1.25rem;
  color: #222;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 2rem;
  max-width: 41.25rem;
}
@media (min-width: 992px) {
  .welcome-intro {
    margin-top: 7.79rem;
  }
}
.welcome-collections {
  margin-top: 5rem;
}
@media (min-width: 992px) {
  .welcome-collections {
    margin-top: 6.25rem;
  }
}
@media (max-width: 575.98px) {
  .welcome-collections--card {
    margin-top: 3rem;
  }
}
@media (max-width: 767.98px) {
  .welcome-collections .card {
    margin-bottom: 0.62rem;
  }
}
.welcome-collections .card-overlay__title {
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
}
.welcome-collections .card-overlay__overlay {
  display: block;
}
@media (min-width: 768px) {
  .welcome-collections .card-overlay__overlay {
    display: none;
  }
}
.welcome-collections .card__img-mask {
  padding-top: 66%;
}
@media (min-width: 992px) {
  .welcome-collections .card__img-mask {
    padding-top: 53.38%;
  }
}
.welcome-collections .card__content {
  display: none;
}
@media (min-width: 768px) {
  .welcome-collections .card__content {
    display: block;
  }
}
.welcome-collections .card__title {
  margin-top: 1rem;
  color: var(--neutral-900-text, #1A2029);
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0;
}
.welcome-collections .card__excerpt {
  margin-top: 1rem;
  overflow: hidden;
  color: #4A525E;
  text-overflow: ellipsis;
  whitespace: nowrap;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}
.welcome-collections .card__excerpt--mobile {
  margin-top: 0.62rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}
@media (min-width: 768px) {
  .welcome-collections .card__excerpt--mobile {
    display: none;
  }
}
.welcome-map {
  margin-top: 5rem;
}
@media (min-width: 992px) {
  .welcome-map {
    margin-top: 16.25rem;
  }
}
.welcome-map .bottom-wave {
  bottom: -16rem;
  height: 8rem;
  z-index: 0;
  top: auto;
}
.welcome-map__links {
  text-align: center;
}
.welcome-map__content .toolbar.nav {
  display: none;
}
@media (min-width: 992px) {
  .welcome-map__content .toolbar.nav {
    display: flex;
  }
}
.welcome-map__select {
  display: block;
  margin-bottom: 0.62rem;
  background-color: #f8fafc;
  z-index: 1020;
  position: relative;
  height: 2.5rem;
}
@media (min-width: 992px) {
  .welcome-map__select {
    display: none;
  }
}
.welcome-map__select .nav-select {
  position: absolute;
  right: 0;
  border-radius: 0.13638rem;
  background: #FFF;
  box-shadow: 0 0 9.27273px 0 rgba(217, 217, 217, 0.14);
  padding: 0.375rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: none;
}
.welcome-spots {
  margin-top: 5rem;
}
@media (min-width: 992px) {
  .welcome-spots {
    margin-top: 11.25rem;
  }
}
.welcome-spots__scroll {
  position: relative;
  display: flex;
}
.welcome-spots__scroll .cards-scroll__nav {
  transform: translateY(-25%);
}
.welcome-spots__scroll .cards-scroll__nav--left {
  right: 4rem;
  left: unset;
}
.welcome-spots__scroll .cards-scroll__nav--right {
  right: 0;
}
.welcome-spots__item {
  margin-top: 1.25rem;
}
@media (min-width: 992px) {
  .welcome-spots__item {
    margin-top: 2rem;
  }
}
.welcome-spots .show-more {
  color: #fff;
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.375;
  border-radius: 2.375rem;
  border: 1px solid #297CBA;
  background: #297CBA;
  padding: 0.75rem 2rem;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}
.welcome-spots .show-more:hover, .welcome-spots .show-more:focus {
  background-color: #1364A1;
}
.welcome-spots .hide-card {
  display: none;
}
.welcome-spots__dots {
  display: none;
}
@media (min-width: 992px) {
  .welcome-spots__dots {
    display: flex;
  }
}
.noise {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.noise:after {
  content: "";
  background-image: url("../../img/noise.png");
  position: absolute;
  pointer-events: none;
  height: 100%;
  width: 100%;
  opacity: 0.6;
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.famous-product-modal__close {
  position: absolute;
  border: 0;
  top: 1.25rem;
  right: 1.25rem;
  color: #fff;
  z-index: 2;
  border-radius: 2.0625rem;
  background: rgba(35, 35, 35, 0.2);
  height: 2.05rem;
  padding: 0.625rem;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 0.79688rem;
}
@media (max-width: 575.98px) {
  .famous-product-modal__close {
    position: fixed;
  }
}
.famous-product-modal .modal-dialog {
  max-width: 51.625rem;
}
.famous-product-modal .modal-header {
  padding: 0;
}
.famous-product-modal .modal-hero {
  width: 100%;
  margin-bottom: 0;
}
.famous-product-modal__image {
  max-height: 20rem;
  width: 100%;
  object-fit: cover;
}
.famous-product-modal__body {
  padding: 2.5rem 0.875rem 4rem 0.875rem;
}
@media (min-width: 992px) {
  .famous-product-modal__body {
    padding: 2.5rem 5.94rem 6rem 5.94rem;
  }
}
.famous-product-modal__title {
  color: #222;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.03rem;
  margin-bottom: 1.88rem;
}
.famous-product-modal__text {
  color: #222;
  font-size: 1.125rem;
  font-weight: 400;
  padding-bottom: 1.88rem;
  border-bottom: 1px solid #DDE2E5;
}
.famous-product-modal__area {
  margin-top: 1.88rem;
}
.famous-product-modal__area p {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.75rem;
  padding-bottom: 0.5rem;
}
.famous-product-modal__area a {
  color: #fff;
  padding: 0.75rem 1.25rem;
  border-radius: 3.125rem;
  background: #227BBC;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.125rem;
  margin-top: 0.5rem;
}
.carousel-item__img-text {
  text-shadow: none;
  bottom: 0;
}
@media (min-width: 768px) {
  .carousel-item__img-text {
    right: 4.5rem;
  }
}
.ui-title__famous-product {
  color: var(--neutral-900-text, #1A2029);
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-size: 2.9375rem;
  font-weight: 700;
  line-height: 112.5%;
  letter-spacing: -0.05875rem;
}
.famous-product__description {
  color: var(--neutral-900-text, #1A2029);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 2rem;
}
.season-cards-scroll {
  overflow: hidden;
}
.season-cards:after, .safety-tips-cards:after {
  content: " ";
  border-right: 16px solid transparent;
  width: calc(50vw - (1196px / 2));
  flex: 0 0 calc(50vw - (1196px / 2));
}
@media (min-width: 576px) {
  .season-cards:after, .safety-tips-cards:after {
    border-right: 0;
    width: calc(50vw - (526px / 2));
    flex: 0 0 calc(50vw - (526px / 2));
  }
}
@media (min-width: 768px) {
  .season-cards:after, .safety-tips-cards:after {
    width: calc(50vw - (706px / 2));
    flex: 0 0 calc(50vw - (706px / 2));
  }
}
@media (min-width: 992px) {
  .season-cards:after, .safety-tips-cards:after {
    width: calc(50vw - (946px / 2));
    flex: 0 0 calc(50vw - (946px / 2));
  }
}
@media (min-width: 1220px) {
  .season-cards:after, .safety-tips-cards:after {
    width: calc(50vw - (1140px / 2));
    flex: 0 0 calc(50vw - (1140px / 2));
  }
}
@media (min-width: 576px) {
  .season-cards, .safety-tips-cards {
    padding-left: calc(50% - (512px/2));
    scroll-padding-left: calc(50% - (512px / 2));
  }
}
@media (min-width: 768px) {
  .season-cards, .safety-tips-cards {
    padding-left: calc(50% - (692px / 2));
    scroll-padding-left: calc(50% - (692px / 2));
  }
}
@media (min-width: 992px) {
  .season-cards, .safety-tips-cards {
    padding-left: calc(50% - (932px / 2));
    scroll-padding-left: calc(50% - (932px / 2));
  }
}
@media (min-width: 1220px) {
  .season-cards, .safety-tips-cards {
    padding-left: calc(50% - (1150px / 2));
    scroll-padding-left: calc(50% - (1150px / 2));
  }
}
.season-cards__item, .safety-tips-cards__item {
  display: inline-block;
  width: 100%;
  margin: 0 10px;
  transition: opacity 0.5s ease-in-out;
  opacity: 0.5;
  z-index: -1;
}
@media (min-width: 576px) {
  .season-cards__item, .safety-tips-cards__item {
    max-width: 513px;
  }
}
@media (min-width: 768px) {
  .season-cards__item, .safety-tips-cards__item {
    max-width: 693px;
  }
}
@media (min-width: 992px) {
  .season-cards__item, .safety-tips-cards__item {
    max-width: 933px;
  }
}
@media (min-width: 1220px) {
  .season-cards__item, .safety-tips-cards__item {
    max-width: 1153px;
  }
}
.season-cards__item.active, .safety-tips-cards__item.active {
  opacity: 1;
  z-index: 1;
}
.seasons__scroll, .safety-tips__scroll {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 12px;
  height: 50px;
  margin-bottom: 20px;
}
.seasons__scroll .cards-scroll__nav, .safety-tips__scroll .cards-scroll__nav {
  display: inline-block;
  position: relative;
  right: 0;
  margin-top: 1.25rem;
}
.seasons__scroll .cards-scroll__nav i, .safety-tips__scroll .cards-scroll__nav i {
  color: #227BBC;
  font-size: 1.5rem;
}
.safety-tips-cards__item {
  width: 320px;
  transition: opacity 0.5s ease-in-out;
  z-index: 1;
  cursor: pointer;
}
.safety-tips-cards__item a {
  pointer-events: none;
}
.safety-tips-cards__item .card-simple__title {
  color: #1A2029 !important;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.688;
  margin-top: 1.875rem;
}
.safety-tips-cards__item .card-simple__blurb {
  margin-top: 10px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
}
@media (max-width: 767.98px) {
  .safety-tips-cards__item .card-simple__blurb {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
  }
}
.safety-tips-cards__item .card-simple__url {
  margin-top: 10px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.125;
  text-decoration: none !important;
}
.safety-tips-cards__item .card-simple__url span {
  padding-right: 10px;
}
.safety-tips-cards__item .card-simple__url i {
  transition: transform 0.3s ease;
}
.safety-tips-cards__item .card-simple__url:hover i, .safety-tips-cards__item .card-simple__url:focus i {
  transform: rotate(-45deg);
}
@media (max-width: 575.98px) {
  .safety-tips-cards__item {
    padding: 0 0 0 14px;
    margin: 0;
  }
}
@media (min-width: 576px) {
  .safety-tips-cards__item {
    width: 371px;
  }
}
.safety-tips-cards__item.active {
  cursor: default;
}
.safety-tips-cards__item.active {
  opacity: 1;
}
.safety-tips-cards__item.active a {
  pointer-events: all;
}
.experience-description, .category-description {
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.688;
  text-align: left;
}
@media (min-width: 992px) {
  .category-description {
    max-width: 20rem;
  }
}
@media (min-width: 768px) {
  .top-card-desc {
    position: absolute;
    left: 14px;
    right: 2rem;
    top: 50%;
    bottom: 0;
    transform: translateY(-50%);
    flex-direction: column;
    justify-content: center;
    margin: 0;
    display: flex;
  }
}
.experience-trip {
  padding: 3.75rem 0;
  background-color: #F8FAFC;
}
.experience-trip--top {
  margin-bottom: 2.5rem;
}
.experience-trip--blurb {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.688;
}
.experience-trip--content {
  position: relative;
}
@media (max-width: 575.98px) {
  .experience-trip--content .cards-scroll {
    margin-right: -14px;
  }
}
.experience-trip--content .vs-scroll {
  position: unset;
  justify-content: end;
}
.experience-trip--content .vs-scroll .cards-scroll__nav {
  width: 50px;
  height: 50px;
  font-size: 24px;
  color: #227BBC;
  border: 1px solid #DDE2E5;
}
.experience-trip--content .vs-scroll .cards-scroll__nav.disabled {
  opacity: 0.45;
  cursor: default;
}
.experience-trip--content__cards .cards-scroll__item {
  margin-right: 1.25rem;
}
@media (max-width: 575.98px) {
  .experience-trip--content__cards .cards-scroll__item {
    width: calc((100% - 2* 14px) / 1.12 - 10px);
  }
  .experience-trip--content__cards .cards-scroll__item:last-child {
    margin-right: 14px;
  }
}
@media (min-width: 992px) {
  .other-exp .vs-scroll {
    top: 13.438rem;
  }
}
.other-exp .vs-scroll .cards-scroll__nav {
  width: 50px;
  height: 50px;
  font-size: 24px;
  color: #227BBC;
  border: 1px solid #DDE2E5;
}
.other-exp .vs-scroll .cards-scroll__nav.disabled {
  opacity: 0.45;
  cursor: default;
}
@media (max-width: 575.98px) {
  .other-exp--content .cards-scroll {
    margin-right: -14px;
  }
}
.other-exp--content__cards .ceo {
  border-radius: 4px;
}
.other-exp--content__cards .cards-scroll__item {
  margin-right: 1.25rem;
}
@media (max-width: 575.98px) {
  .other-exp--content__cards .cards-scroll__item {
    width: calc((100% - 2* 14px) / 1.12 - 10px);
  }
  .other-exp--content__cards .cards-scroll__item:last-child {
    margin-right: 14px;
  }
}
.other-exp--content__cards .ceo__img {
  min-width: 20rem;
  min-height: 16.25rem;
}
@media (min-width: 992px) {
  .other-exp--content__cards .ceo__img {
    min-height: 23.188rem;
    min-width: 23.188rem;
  }
}
@media (max-width: 575.98px) {
  .experience-videos__area .cards-scroll {
    margin-right: -14px;
  }
}
@media (max-width: 575.98px) {
  .experience-videos__area .cards-scroll__item {
    width: calc((100% - 2* 14px) / 1.5 - 14px);
  }
  .experience-videos__area .cards-scroll__item:last-child {
    margin-right: 14px;
  }
}
.exp-dropdown {
  margin-bottom: 1.25rem;
}
.exp-dropdown--btn {
  padding: 10px 20px 10px 20px;
  gap: 10px;
  border-radius: 90px;
  background: #fff;
  border: 1px solid #DDE2E5;
  color: #227BBC;
}
.exp-dropdown--btn:after {
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #227BBC;
  border-right: 1px solid #227BBC;
  transform: rotate(45deg);
  border-top: 0;
  border-left: 0;
}
main.sd .spot-hero-image.feature picture::after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.2) 65%, #000000 100%);
}
main.sd .sd-destination-section .sd-municipality-icon {
  font-size: 1.9rem;
  color: #227BBC;
}
main.sd .sd-destination-section h2.ui-head {
  font-size: 1.8rem;
}
main.sd .sd-destination-section .sd-destination-card-list {
  overflow-x: auto;
}
@media (min-width: 768px) {
  main.sd .sd-destination-section {
    /* Hide scrollbar for IE, Edge and Firefox */
  }
  main.sd .sd-destination-section .sd-destination-card-list::-webkit-scrollbar {
    display: none;
  }
  main.sd .sd-destination-section .sd-destination-card-list {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
  }
}
main.sd .sd-destination-section .sd-scroll-controls {
  gap: 10px;
  margin-bottom: 20px;
}
main.sd .sd-destination-section .sd-scroll-controls button.cards-scroll__nav {
  position: initial;
  transform: initial;
  color: #227BBC;
}
main.sd .sd-destination-section .sd-scroll-controls button.cards-scroll__nav.disabled {
  background-color: #eee;
  color: #aaa;
}
main.sd .sd-destination-card-list .card-simple {
  position: relative;
  padding-top: 80%;
}
@media (min-width: 768px) {
  main.sd .sd-destination-card-list .card-simple {
    padding-top: 100%;
  }
}
main.sd .sd-destination-card-list .card-simple h3.card-overlay__title {
  width: 100%;
}
main.sd .area__map button.cards-scroll__nav {
  color: #227BBC;
  background-color: white;
  top: 38%;
}
main.sd .area__map button.cards-scroll__nav:hover, main.sd .area__map button.cards-scroll__nav:focus {
  background-color: #F2F7F7;
}
@media (max-width: 767.98px) {
  main.sd .area__map .sd-scroll-controls {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-bottom: -12px;
    margin-top: 40px;
  }
  main.sd .area__map button.cards-scroll__nav {
    display: inline-block;
    position: initial;
    transform: initial;
  }
}
.fade-in-on-scroll {
  transition: opacity 1s ease-in-out;
}
.fade-in-on-scroll::before {
  content: " ";
  display: block;
  height: 0;
  transition: height 1s ease-out;
}
.fade-in-on-scroll.faded {
  opacity: 0;
}
.fade-in-on-scroll.faded::before {
  height: 30px;
}
@media (max-width: 575.98px) {
  .card-button {
    display: none;
  }
}
/**
 * This works well, to have a one-side-only overflow, but if the overflow is visible, then it will not scroll.
 * The scroller could be updated to use e.g. position:relative and animate({left: '-=' + width}), but boundaries will need to be calculated.
 * This is likely to be less stable than letting the browser handle it.
 * Maybe we can re(-re-re-re)-think it next time this comes up.
.overflow-right-only {
  clip-path: inset(-100vh -100vw -100vh 0);
}
.overflow-left-only {
  clip-path: inset(-100vh 0 -100vh -100vw);
}

@include media-breakpoint-up(md) {
  .overflow-md-right-only {
    clip-path: inset(-100vh -100vw -100vh 0);
  }
  .overflow-md-left-only {
    clip-path: inset(-100vh 0 -100vh -100vw);
  }
}
main.sd { // .section-destination
  .sd-destination-section {
    @include media-breakpoint-up(md) {
      .overflow-md-right-only::after { content: ' '; position: absolute; left: 100%; height: 100%; width: 100vw; background-color: white; opacity: .6 }
      .overflow-md-left-only::after { content: ' '; position: absolute; right: 100%; height: 100%; width: 100vw; background-color: white; opacity: .6 }
    }
  }
}
*/
.category-spot-grid.row .ceo {
  border-radius: 4px;
}
@media (max-width: 575.98px) {
  .category-spot-grid.row .ceo--bare figure {
    display: block;
  }
}
.category-spot-grid.row > * {
  aspect-ratio: 1;
}
.category-spot-grid.row > *:nth-child(1) {
  width: 100%;
  aspect-ratio: initial;
}
.category-spot-grid.row > * > article {
  width: 100%;
  height: 100%;
  margin: 0;
}
@media (max-width: 575.98px) {
  .category-spot-grid.row {
    flex-wrap: nowrap;
    overflow-x: scroll;
  }
  .category-spot-grid.row > * {
    flex: 0 0 calc(90vw - 20px);
  }
}
.category-spot-grid.row > * {
  padding: 10px;
  width: 50%;
}
@media (min-width: 1220px) {
  .category-spot-grid.row > * > div {
    display: flex;
    flex-direction: column;
    flex-gap: 20px;
    align-self: center;
  }
  .category-spot-grid.row > *:nth-child(7n + 1) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  .category-spot-grid.row > *:nth-child(7n + 2) {
    flex: 0 0 66.6%;
    max-width: 66.6%;
    aspect-ratio: 2;
  }
  .category-spot-grid.row > *:nth-child(7n + 2) .ceo__content {
    text-align: right;
    left: 50%;
  }
  .category-spot-grid.row > *:nth-child(7n + 2) figure:after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 37.41%, rgba(56, 56, 56, 0.407214) 68.61%, #2F2F2F 102.82%, rgba(0, 0, 0, 0.48) 102.83%);
  }
  .category-spot-grid.row > *:nth-child(7n + 3) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  .category-spot-grid.row > *:nth-child(7n + 4) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  .category-spot-grid.row > *:nth-child(7n + 5) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
  .category-spot-grid.row > *:nth-child(7n + 6) {
    flex: 0 0 25%;
    max-width: 25%;
    aspect-ratio: 0.75;
  }
  .category-spot-grid.row > *:nth-child(7n + 7) {
    flex: 0 0 41.6%;
    max-width: 41.6%;
    aspect-ratio: 1.25;
  }
  .category-spot-grid.row > *:nth-child(7n + 8) {
    flex: 0 0 33.3%;
    max-width: 33.3%;
  }
}
.ps-paginated {
  display: flex;
  flex-wrap: nowrap;
  gap: 14px;
  padding: 0;
  overflow-x: hidden;
}
@media (max-width: 767.98px) {
  .ps-paginated {
    overflow-x: auto;
  }
}
.ps-page {
  flex: 0 0 100%;
}
.ps-scroll-controls {
  margin-left: auto;
  gap: 20px;
}
.ps-scroll-controls button {
  position: relative;
  transform: initial;
  color: #227BBC;
  top: initial;
}
.ps-scroll-controls button.disabled {
  background-color: #eee;
  color: #aaa;
}
@media (min-width: 992px) {
  #transit-pass-modal .close {
    position: absolute;
    top: -1.5rem;
    right: -1.5rem;
    border-radius: 50%;
    width: 31px;
    height: 31px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 7px 8px;
    gap: 10px;
    background: #D0D5DA;
    font-style: normal;
    font-weight: 900;
    font-size: 19.2126px;
    line-height: 143.23%;
    color: #FFFFFF;
  }
}
@media (min-width: 992px) {
  #transit-pass-modal .modal-dialog {
    margin: 4.5rem auto;
  }
}
@media (max-width: 575.98px) {
  .category-tag-scroll__item .coi__overlay {
    padding: 14.2278px;
    gap: 4.74px;
  }
  .category-tag-scroll__item .coi__overlay .coi__icon i {
    font-size: 1.5rem;
  }
  .category-tag-scroll__item .coi__overlay .coi__icon svg {
    height: 1.5rem;
  }
  .category-tag-scroll__item .coi__overlay .coi__label {
    line-height: 112.5%;
    text-align: center;
  }
}
@media (max-width: 575.98px) {
  .category-tag--scroll {
    margin: 0 -10px;
  }
  .category-tag--scroll .category-tag-scroll__item {
    padding-left: 10px;
    margin-right: 0;
  }
}
.mun-video {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 620px;
  /* You may need to adjust the styles for your existing map component */
}
@media (min-width: 768px) {
  .mun-video {
    height: 600px;
  }
}
.mun-video img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mun-video .mun-video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.3), transparent);
  z-index: 1;
}
.mun-video .mun-video-overlay--inner {
  display: flex;
  padding: 2rem 14px;
  flex-direction: column-reverse;
  gap: 40px;
}
@media (min-width: 768px) {
  .mun-video .mun-video-overlay--inner {
    flex-direction: row;
    position: relative;
    align-items: flex-end;
  }
}
.mun-video .mun-video-content {
  flex: 1;
}
@media (min-width: 768px) {
  .mun-video .mun-video-content {
    transform: translateY(50%);
  }
}
.mun-video .video-play-button {
  margin-bottom: 1rem;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px;
  gap: 10px;
  width: 60px;
  height: 60px;
  background: rgba(255, 255, 255, 0.25);
  border-radius: 50%;
  font-weight: 900;
  font-size: 18px;
  color: #fff;
  border: none;
}
.mun-video .mun-video-title {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 112.5%;
  letter-spacing: -0.02em;
  color: #fff;
}
@media (min-width: 768px) {
  .mun-video .mun-video-title {
    font-size: 1.75rem;
  }
}
.mun-video .mun-video-subtitle {
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  color: #fff;
}
.mun-video .map-overlay .mun-infobox {
  height: 100%;
  width: 100%;
}
.category-luxury .mun-video .mun-video-overlay, .feature-show .mun-video .mun-video-overlay, .featured-video .mun-video .mun-video-overlay {
  z-index: 1;
}
.category-luxury .mun-video > .carousel, .category-luxury .mun-video .mun-video-overlay > .container, .category-luxury .mun-video .mun-video-overlay > .container > .mun-video-overlay--inner, .feature-show .mun-video > .carousel, .feature-show .mun-video .mun-video-overlay > .container, .feature-show .mun-video .mun-video-overlay > .container > .mun-video-overlay--inner, .featured-video .mun-video > .carousel, .featured-video .mun-video .mun-video-overlay > .container, .featured-video .mun-video .mun-video-overlay > .container > .mun-video-overlay--inner {
  height: 100%;
}
.category-luxury .mun-video .mun-video-content, .feature-show .mun-video .mun-video-content, .featured-video .mun-video .mun-video-content {
  position: absolute;
  bottom: 8%;
  transform: initial;
}
.category-luxury .kfh-video-modal .video-wrapper, .feature-show .kfh-video-modal .video-wrapper, .featured-video .kfh-video-modal .video-wrapper {
  height: 100%;
  display: flex;
  align-items: center;
}
.featured-video .mun-video .featured-video-content {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 767px) {
  .featured-video .mun-video .featured-video-content {
    flex-direction: column;
    align-items: flex-start;
  }
  .featured-video .mun-video .featured-video-content .mun-video-content {
    position: relative;
  }
}
.featured-video .mun-video .featured-video-content .mun-video-link {
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  color: #227BBC;
  padding: 8px 32px;
  background: #FFFFFF;
  border-radius: 40px;
}
@media (min-width: 768px) {
  .featured-video .mun-video .featured-video-content .mun-video-link {
    position: absolute;
    right: 14px;
    bottom: 8%;
  }
}
.feature-show .feature-sh-yt {
  left: 0;
  width: 100%;
  height: 0;
  position: relative;
  padding-bottom: 100vh;
  margin-bottom: 2em;
}
.map-overlay {
  flex: 1;
}
.map-overlay #kngw-map .mp-link {
  display: block;
}
.map-overlay .kngw-map__region--active .fill {
  fill: rgba(255, 255, 255, 0.75);
}
.map-overlay #kngw-map .fill.mp--active {
  fill: #042C48;
}
.map-overlay #kngw-map .fill.mp--inactive {
  stroke: rgba(221, 226, 229, 0.1);
  fill: #7F93A2;
}
.map-overlay .municipality-map__label {
  position: absolute;
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.606rem;
  line-height: 112.5%;
  letter-spacing: -0.02em;
  color: #000000;
  padding: 5px 10px;
  background: #FFFFFF;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .map-overlay .municipality-map__label {
    font-size: 1rem;
  }
}
.map-overlay .municipality-map__label:after {
  content: " ";
  position: absolute;
  top: 100%;
  /* at the bottom of the tooltip */
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}
.map-overlay .municipality-map__label--yokohama {
  top: 15%;
  left: 60%;
}
@media (min-width: 768px) {
  .map-overlay .municipality-map__label--yokohama {
    top: 32%;
    left: 66%;
  }
}
.map-overlay .municipality-map__label--kawasaki {
  top: 7%;
  left: 66%;
}
.map-overlay .municipality-map__label--sagamihara {
  top: 14%;
  left: 27%;
}
.map-overlay .municipality-map__label--zama {
  top: 27%;
  left: 51%;
}
.map-overlay .municipality-map__label--yamato {
  top: 28%;
  left: 53%;
}
.map-overlay .municipality-map__label--ayase {
  top: 32%;
  left: 53%;
}
.map-overlay .municipality-map__label--ebina {
  top: 34%;
  left: 49%;
}
.map-overlay .municipality-map__label--atsugi {
  top: 36%;
  left: 44%;
}
.map-overlay .municipality-map__label--aikawa {
  top: 17%;
  left: 36%;
}
.map-overlay .municipality-map__label--kiyokawa {
  top: 26%;
  left: 26%;
}
.map-overlay .municipality-map__label--hadano {
  top: 42%;
  left: 25%;
}
.map-overlay .municipality-map__label--isehara {
  top: 42%;
  left: 37%;
}
.map-overlay .municipality-map__label--ninomiya {
  top: 59%;
  left: 31%;
}
.map-overlay .municipality-map__label--oiso {
  top: 59%;
  left: 39%;
}
.map-overlay .municipality-map__label--hiratsuka {
  top: 52%;
  left: 37%;
}
.map-overlay .municipality-map__label--chigasaki {
  top: 54%;
  left: 48%;
}
.map-overlay .municipality-map__label--fujisawa {
  top: 52%;
  left: 56%;
}
.map-overlay .municipality-map__label--samukawa {
  top: 47%;
  left: 44%;
}
.map-overlay .municipality-map__label--kamakura {
  top: 27%;
  left: 60%;
}
@media (min-width: 768px) {
  .map-overlay .municipality-map__label--kamakura {
    top: 55%;
  }
}
.map-overlay .municipality-map__label--zushi {
  top: 61%;
  left: 70%;
}
.map-overlay .municipality-map__label--hayama {
  top: 66%;
  left: 70%;
}
.map-overlay .municipality-map__label--yokosuka {
  top: 70%;
  left: 75%;
}
.map-overlay .municipality-map__label--miura {
  top: 85%;
  left: 76%;
}
.map-overlay .municipality-map__label--yugawara {
  top: 85%;
  left: 10%;
}
.map-overlay .municipality-map__label--manazuru {
  top: 85%;
  left: 20%;
}
.map-overlay .municipality-map__label--odawara {
  top: 68%;
  left: 18%;
}
.map-overlay .municipality-map__label--hakone {
  top: 38%;
  left: 12%;
}
@media (min-width: 768px) {
  .map-overlay .municipality-map__label--hakone {
    top: 75%;
    left: 5%;
  }
}
.map-overlay .municipality-map__label--kaisei {
  top: 55%;
  left: 20.5%;
}
@media (min-width: 768px) {
  .map-overlay .municipality-map__label--kaisei {
    top: 54%;
    left: 18.5%;
  }
}
.map-overlay .municipality-map__label--nakai {
  top: 55%;
  left: 29%;
}
.map-overlay .municipality-map__label--oi {
  top: 54%;
  left: 25%;
}
.map-overlay .municipality-map__label--matsuda {
  top: 43%;
  left: 19%;
}
@media (min-width: 768px) {
  .map-overlay .municipality-map__label--matsuda {
    left: 17%;
  }
}
.map-overlay .municipality-map__label--yamakita {
  top: 41%;
  left: 6%;
}
.map-overlay .municipality-map__label--minamiashigara {
  top: 59%;
  left: 4%;
}
.map-overlay--transparent #kngw-map .fill {
  fill: transparent;
}
.map-overlay--transparent #kngw-map .fill.mp--active {
  fill: #fff;
}
.map-overlay--transparent #kngw-map .fill.mp--hidden {
  stroke: rgba(221, 226, 229, 0.1);
}
.map-overlay--transparent #kngw-map .fill.mp--inactive {
  stroke: rgba(221, 226, 229, 0.1);
  fill: rgba(255, 255, 255, 0.75);
}
@media (min-width: 768px) {
  .map-overlay {
    width: 100%;
    transform: translateY(15%);
  }
}
.mun-map {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 60px 0;
  gap: 20px;
  background: #F4F8F7;
}
.mun-map--description {
  font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.688;
  text-align: left;
}
@media (min-width: 768px) {
  .mun-map--description {
    max-width: 760px;
  }
}
.mun-map .header-section {
  display: flex;
  margin-bottom: 10px;
  flex-direction: column;
}
@media (min-width: 768px) {
  .mun-map .header-section {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
.mun-map .header-section h2 {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 28px;
  line-height: 112.5%;
  /* identical to box height, or 32px */
  letter-spacing: -0.02em;
  color: #000000;
  margin: 0;
}
.mun-map .button--transit-pass {
  text-align: left;
  padding: 0.75rem 0;
  background: transparent;
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 150%;
  color: #227BBC;
}
@media (max-width: 767.98px) {
  .mun-map .button--transit-pass {
    margin-top: 2.5rem;
    text-align: center;
    padding: 8px 22px;
    width: 100%;
    background: #227BBC;
    border-radius: 40px;
    font-size: 1rem;
    color: #FFFFFF;
  }
}
.mun-map .map--area {
  height: 29.5rem;
}
@media (min-width: 768px) {
  .mun-map .map--area {
    height: 32.5rem;
  }
}
.explore-banner {
  color: white;
  padding: 80px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  overflow: hidden;
  position: relative;
  min-height: 358px;
}
@media (max-width: 767.98px) {
  .explore-banner {
    flex-direction: column;
    text-align: center;
    padding: 100px 0;
  }
}
@media (max-width: 767.98px) {
  .explore-banner--content {
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    padding: 0 14px;
    gap: 24px;
    position: relative;
  }
}
.explore-banner--content .content {
  position: relative;
  z-index: 2;
}
.explore-banner--content h2 {
  font-size: 28px;
  margin: 0 0 10px 0;
}
.explore-banner--content p {
  font-size: 16px;
  margin: 0 0 20px 0;
  opacity: 0.8;
}
.explore-banner--content .cta-button {
  display: inline-block;
  background-color: white;
  padding: 9px 22px;
  border-radius: 25px;
  text-decoration: none;
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 22px;
  color: #227BBC;
}
@media (max-width: 575.98px) {
  .explore-banner--content .cta-button {
    width: 100%;
  }
}
.explore-banner--content .cta-button .fa-arrow-right {
  margin-left: 5px;
  font-family: "Font Awesome 5 Pro";
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  color: #227BBC;
  transform: rotate(-45deg);
}
.explore-banner--content .skyline-illustration {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (max-width: 767.98px) {
  .explore-banner--content .skyline-illustration {
    position: relative;
    width: 100%;
    height: auto;
  }
  .explore-banner--content .skyline-illustration img {
    width: 100%;
    max-height: 250px;
    max-width: 250px;
  }
}
.explore-banner .background-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.explore-banner .blur-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(26, 32, 41, 0.6);
  backdrop-filter: blur(12.5px);
  -webkit-backdrop-filter: blur(12.5px);
  /* For Safari */
  z-index: 1;
}
.category-map--subhead {
  margin-bottom: 1.25rem;
}
.category-map--blurb {
  max-width: 761px;
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  color: #000000;
  margin-bottom: 2.5rem;
}
.category-map__icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #227BBC;
  border: 1px solid #fff;
  border-radius: 24px 24px 24px 0;
}
.category-map__icon:hover, .category-map__icon:focus {
  background: #fff;
  border: 3px solid #227BBC;
}
.category-map__icon i {
  width: 24px;
  height: 26px;
  font-weight: 900;
  font-size: 23.1111px;
  line-height: 112.5%;
  color: #fff;
}
.category-map__icon--reverse {
  border-radius: 24px 24px 0 24px;
}
.kanagawa-iam-svg .feature--map-active .highlight-pin__icon:hover foreignObject div .category-map__icon {
  background: #fff;
}
.mun-intro .ui-head {
  font-family: "Be Vietnam Pro", "Poppins", "Open Sans", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 28px;
  line-height: 112.5%;
  letter-spacing: -0.02em;
  color: #000000;
  max-width: 300px;
}
#navigationNoticeKanagawaNow .modal-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 64px 64px 0 64px;
  padding-bottom: 0;
}
#navigationNoticeKanagawaNow .modal-body h3 {
  width: 50%;
  min-width: 200px;
  text-align: center;
  word-break: auto-phrase;
  margin-bottom: 32px;
}
#navigationNoticeKanagawaNow .modal-body .subtext {
  color: #757575;
  font-size: 12px;
}
#navigationNoticeKanagawaNow .modal-body .logo {
  width: 100%;
  margin: 0;
}
#navigationNoticeKanagawaNow .modal-body .url.subtext {
  margin-bottom: 32px;
}
#navigationNoticeKanagawaNow .modal-body .cta {
  margin-bottom: 32px;
}
#navigationNoticeKanagawaNow .modal-body .cta > * {
  padding: 12px 26px;
  display: inline-block;
  font-weight: 600;
  font-size: 1rem;
  border: 1px solid #227BBC;
  border-radius: 50px;
}
#navigationNoticeKanagawaNow .modal-body .cta > *.nav-confirm {
  color: white;
  background-color: #227BBC;
}
#navigationNoticeKanagawaNow .modal-body .cta > *.nav-cancel {
  color: #227BBC;
  background-color: #fff;
}
#navigationNoticeKanagawaNow .modal-body .cta > *:not(:last-child) {
  margin-right: 8px;
}
@media (max-width: 767.98px) {
  #navigationNoticeKanagawaNow .modal-body .cta > * {
    width: 100%;
    text-align: center;
    margin-bottom: 8px;
  }
}
#navigationNoticeKanagawaNow .modal-body .kn-timer {
  color: #227BBC;
}
.enquiry-contact {
  display: flex;
  align-items: center;
  padding: 0px;
  flex-direction: column;
  gap: 40px;
}
.enquiry-contact .enquiry-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 32px;
  max-width: 490px;
  margin: auto 0;
}
.enquiry-contact .enquiry-text .header .enquiry-subtitle {
  color: #6C757D;
  font-family: "Open Sans";
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
}
.enquiry-contact .contact-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 16px;
}
.enquiry-contact .contact-text--item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 16px;
}
.enquiry-contact .contact-text--item i {
  font-weight: 900;
  font-size: 16px;
  line-height: 150%;
  color: #156FB1;
}
.enquiry-contact--form label {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 150%;
  /* identical to box height, or 24px */
  color: #333333;
}
.enquiry-contact--form__submit {
  border: none;
  padding: 9px 16px;
  background: #227BBC;
  border-radius: 900px;
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 22px;
  /* identical to box height */
  width: 186px;
  color: #FFFFFF;
}
.enquiry-contact--text {
  color: #1A2029;
}
.enquiry-contact--text:focus {
  color: #1A2029;
}
@media (min-width: 768px) {
  .enquiry-contact {
    flex-direction: row;
    gap: 80px;
    justify-content: space-between;
  }
}
.enquiry-notification {
  position: fixed;
  bottom: 40px;
  right: 40px;
  max-width: 436px;
  background: #FFFFFF;
  box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  transform: translateX(450px);
  transition: transform 0.3s ease-in-out;
  z-index: 9999;
}
.enquiry-notification--show {
  transform: translateX(0);
}
.enquiry-notification__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 32px;
  gap: 15px;
}
.enquiry-notification__icon {
  font-weight: 900;
  font-size: 24px;
  line-height: 150%;
}
.enquiry-notification__message {
  flex: 1;
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  /* or 24px */
  color: #333333;
}
.enquiry-notification__header {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 0px;
  gap: 40px;
}
.enquiry-notification__title {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 16px;
}
.enquiry-notification__title .title {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 700;
  font-size: 20px;
  line-height: 112.5%;
  /* identical to box height, or 22px */
  display: flex;
  align-items: center;
  color: #333333;
}
.enquiry-notification__close {
  margin-top: 2px;
}
.enquiry-notification__close i {
  font-weight: 300;
  font-size: 20px;
  line-height: 150%;
  color: #000000;
}
.enquiry-notification__close:hover i {
  color: #666;
}
.enquiry-notification--success .enquiry-notification__icon {
  color: #00B589;
}
.enquiry-notification--error .enquiry-notification__icon {
  color: #dc3545;
}
@media (max-width: 768px) {
  .enquiry-notification {
    bottom: 20px;
    right: 20px;
    left: 20px;
    transform: translateY(100px);
  }
  .enquiry-notification--show {
    transform: translateY(0);
  }
}
.travel-destination__scroll.feature-tips-scroll-controls button.disabled {
  background: #FFFFFF;
  border: 1px solid #DDE2E5;
  backdrop-filter: blur(16px);
  opacity: 0.5;
}
.my-saves-modal {
  /* Empty State */
}
.my-saves-modal .modal-dialog {
  margin: 0;
  height: 100vh;
  background: #fff;
  max-width: none;
}
@media (max-width: 767.98px) {
  .my-saves-modal .modal-dialog {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .my-saves-modal .modal-dialog {
    isolation: isolate;
    position: absolute;
    right: -0.43px;
    top: 0px;
    margin: 0;
  }
}
.my-saves-modal .modal-dialog .modal-content {
  height: 100%;
  border: none;
  border-radius: 0;
  padding: 40px 15px 20px;
  isolation: isolate;
  background: #FFFFFF;
  box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.11);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.my-saves-modal .modal-dialog .modal-content .modal-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0px;
  gap: 4px;
}
.my-saves-modal .modal-dialog .modal-content .modal-header .modal-title {
  font-weight: 700;
  font-size: 24px;
  line-height: 112.5%;
  /* identical to box height, or 27px */
  text-align: center;
  letter-spacing: -0.02em;
  color: #000000;
  padding: 0;
}
.my-saves-modal .modal-dialog .modal-content .modal-header .modal-subtitle {
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
  gap: 4px;
  /* identical to box height, or 162% */
  display: flex;
  align-items: center;
  text-align: center;
  color: #1A2029;
  opacity: 0.75;
}
.my-saves-modal .modal-dialog .modal-content .close {
  position: absolute;
  width: 40px;
  height: 40px;
  right: 0px;
  top: 0px;
  border: none;
  background: #FFFFFF;
  padding: 0;
}
.my-saves-modal .modal-dialog .modal-content .close:hover {
  opacity: 0.75;
}
.my-saves-modal .modal-dialog .modal-content .close span {
  font-weight: 300;
  font-size: 20px;
  line-height: 28.8px;
  letter-spacing: -2%;
  color: #757575;
}
@media (min-width: 768px) {
  .my-saves-modal .modal-dialog .modal-content {
    width: 600px;
    height: 100vh;
    display: flex;
    flex-direction: column;
    padding: 40px;
    gap: 32px;
    background: #FFFFFF;
  }
  .my-saves-modal .modal-dialog .modal-content .modal-body {
    padding: 0;
  }
  .my-saves-modal .modal-dialog .modal-content .close {
    position: absolute;
    width: 80px;
    height: 80px;
    left: 0px;
    top: 0px;
  }
}
.my-saves-modal .modal-dialog .modal-content .saved-spots-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px;
  gap: 16px;
}
.my-saves-modal .modal-dialog .modal-content .saved-spots-list .undo-delete-item {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  padding: 15px;
  gap: 20px;
  background: #FFFFFF;
  border: 1px solid #E1E7EC;
  border-radius: 4px;
  width: 100%;
}
@media (min-width: 768px) {
  .my-saves-modal .modal-dialog .modal-content .saved-spots-list .undo-delete-item {
    padding: 20px;
  }
}
.my-saves-modal .modal-dialog .modal-content .saved-spots-list .undo-delete-item .undo-delete-title {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  font-size: 18px;
  line-height: 125%;
  display: flex;
  align-items: center;
  letter-spacing: -0.2px;
  color: #1A2029;
  margin: auto 0;
}
@media (min-width: 768px) {
  .my-saves-modal .modal-dialog .modal-content .saved-spots-list .undo-delete-item .undo-delete-title {
    font-size: 20px;
  }
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-delete, .my-saves-modal .modal-dialog .modal-content .undo-delete-restore {
  width: 40px;
  height: 40px;
  border-radius: 70px;
  opacity: 1;
  padding: 10px;
  gap: 10px;
  border: none;
  font-weight: 900;
  font-size: 20px;
  line-height: 20px;
  color: #CE222D;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.05);
  border-radius: 70px;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-delete:hover, .my-saves-modal .modal-dialog .modal-content .undo-delete-restore:hover {
  color: #c82333;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-location {
  font-size: 0.875rem;
  color: #6c757d;
  margin: 0;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-location i {
  margin-right: 0.25rem;
  color: #999;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0px;
  gap: 15px;
  border: 1px solid #E1E7EC;
  border-radius: 4px;
  width: 100%;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-image {
  width: 100%;
  height: 162px;
  background: #F6F8F8;
  border-radius: 4px 4px 0px 0px;
  /* Inside auto layout */
  flex: none;
  order: 0;
  align-self: stretch;
  flex-grow: 0;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 0px 15px 15px;
  gap: 20px;
  width: 100%;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-content .saved-spot-title {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0px;
  gap: 20px;
  padding: 0px;
  width: 100%;
}
.my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-content .saved-spot-title a {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 600;
  font-size: 18px;
  line-height: 125%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  align-items: center;
  letter-spacing: -0.2px;
  color: #1A2029;
  width: auto;
}
@media (min-width: 768px) {
  .my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-content .saved-spot-title a {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .my-saves-modal .modal-dialog .modal-content .saved-spot-item {
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    padding: 0px 20px 0px 0px;
    gap: 20px;
    width: 520px;
  }
  .my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-image {
    width: 162px;
  }
  .my-saves-modal .modal-dialog .modal-content .saved-spot-item .saved-spot-content {
    padding: 20px 0px;
  }
}
.my-saves-modal .pagination-info {
  color: #6c757d;
}
.my-saves-modal .saved-spots-pagination {
  margin-top: 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0px;
  gap: 8px;
}
.my-saves-modal .saved-spots-pagination .pagination {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 0px;
  gap: 16px;
}
.my-saves-modal .saved-spots-pagination .pagination .page-item {
  width: 32px;
  height: 32px;
  background: #FFFFFF;
  border-radius: 50%;
}
.my-saves-modal .saved-spots-pagination .pagination .page-item a {
  font-weight: 600;
  font-size: 14px;
  line-height: 25px;
  display: flex;
  align-items: center;
  text-decoration: none;
  margin: auto;
  height: 100%;
  justify-content: center;
  color: #000000;
}
.my-saves-modal .saved-spots-pagination .pagination .page-item.arrow-item a {
  text-decoration: none;
  color: rgba(0, 0, 0, 0.54);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  height: 100%;
}
.my-saves-modal .saved-spots-pagination .pagination .page-item.arrow-item a i {
  font-weight: 300;
  font-size: 16px;
  line-height: 25px;
}
.my-saves-modal .saved-spots-pagination .pagination .page-item.active {
  background: #E6F4FF;
}
.my-saves-modal .saved-spots-pagination .pagination .page-item.active a {
  color: #1364A1;
}
.my-saves-modal .saved-spots-empty {
  text-align: center;
  padding: 3rem 1.5rem;
  color: #6c757d;
  margin: auto;
}
.my-saves-modal .saved-spots-empty i {
  font-size: 3rem;
  margin-bottom: 1rem;
  color: #dee2e6;
}
.my-saves-modal .saved-spots-empty h5 {
  margin-bottom: 0.5rem;
  color: #495057;
}
.my-saves-modal .saved-spots-empty p {
  margin: 0;
  font-size: 0.875rem;
}
.my-saves-link {
  box-sizing: border-box;
  /* Auto layout */
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0px;
  gap: 32px;
  border: none;
  background: transparent;
  width: 100%;
}
.my-saves-link span {
  font-weight: 600;
  font-size: 16px;
  line-height: 112.5%;
  /* identical to box height, or 18px */
  color: #000000;
}
.my-saves-link i {
  font-weight: 400;
  font-size: 16px;
  line-height: 112.5%;
  /* identical to box height, or 18px */
  width: 36px;
  color: #000000;
}
.navbar .kngw-header__icon.nav-item--saves {
  display: none;
}
@media (min-width: 768px) {
  .navbar .kngw-header__icon.nav-item--saves {
    display: block;
  }
  .navbar .kngw-header__icon.nav-item--saves i {
    color: #000;
  }
}
/**
 * Our search filters have dropdowns that behave differently on mobile and
 * desktop. This style group offers a convenience class that allows components
 * to behave as dropdown on some breakpoints, and not others.
 *
 * For simplicity, this only supports the current use case, i.e. sm/md
 * breakpoint and display:flex base state.
 */
@media (max-width: 767.98px) {
  .dropdown-disabled-sm-down-menu {
    display: flex !important;
    position: relative !important;
    border: none;
    padding: 0;
    margin: 0;
  }
  .dropdown-disabled-sm-down-button {
    display: none;
  }
}
@media (min-width: 768px) {
  .dropdown-disabled-md-up-menu {
    display: flex !important;
    position: relative !important;
    border: none;
    padding: 0;
    margin: 0;
  }
  .dropdown-disabled-md-up-button {
    display: none;
  }
}
