/* FUNCTIONS OF THIS STYLESHEET

1. Concatenate all stylesheets into one file



*/
/* reset CSS cancels out any browser-specific differences, so we can build a css system from a flat, universal base */
@import url('../../_CommonLibraries/slider/slick/slick.css');
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
sup,
tt,
var,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: inherit;
  font: inherit;
  font-weight: normal;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
q:before,
blockquote:after,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
/* FUNCTIONS OF THIS STYLESHEET

1. Contains all variables and mixins which could be used widely across all other style sheets (i.e. they're not specific to one class) 



*/
/***********************/
/*******COLORS**********/
/***********************/
/* Dark blue-gray for toast notifications */
/* Establish width of centered content and position it centrally */
/**********************/
/* Sizes / Dimensions */
/**********************/
/* iPhone 4/5, plus one extra pixel */
/**************************/
/** site-wide box styles **/
/**************************/
/****************************/
/* standard shadow effects  */
/****************************/
/******************/
/*** ICON STYLES **/
/******************/
/* An icon in a circle. Initial website build does not use this except with social media icons in contact bar at top of each page */
/* Vertically-centered content, e.g. foreground text super-imposed on a photo background. See hiddenContentStylesMixin below  */
/* center vertically, whatever the browser-type */
/* Make the background look like paper. Handy for email testimonials etc. */
.ribbon {
  clear: both;
  font-size: 0.7em;
  margin-top: 0.2em;
  opacity: 0.75;
  line-height: 1em;
  /* Should sit tight against the element above e.g the main heading */
  font-family: inherit;
  padding: 0.5em;
  background-color: #324c79;
  color: #ffffff;
  display: block;
  margin: 0.4em 0;
  max-width: 135px;
  font-family: 'Arial';
  border-radius: 3px;
}
.maxSixChildren > *:nth-child(n + 7),
.maxSixChildren.columns > *:nth-child(n + 7),
.maxSixChildren.websiteSectionSummaries > *:nth-child(n + 7) {
  display: none;
}
.maxEightChildren > *:nth-child(n + 9),
.maxEightChildren.columns > *:nth-child(n + 9),
.maxEightChildren.websiteSectionSummaries > *:nth-child(n + 9) {
  display: none;
}
.noteworthyDestinationBadges {
  position: absolute;
  top: 10px;
  left: 10px;
  max-width: 75px;
  display: flex;
  flex-direction: column;
}
.noteworthyDestinationBadges > div,
.noteworthyDestinationBadges > a {
  display: block;
  background: #84a750;
  border-radius: 7px;
  padding: 5px;
  overflow: hidden;
  border: 1px solid #84a750;
  width: 75px;
  height: 75px;
  margin-bottom: 6.81818182px;
  text-align: center;
  line-height: 1.2em;
  font-weight: bold;
  text-transform: uppercase;
  color: #ffffff;
  font-size: 9.375px;
}
.noteworthyDestinationBadges > div:nth-child(n+3):not(.tourAttraction),
.noteworthyDestinationBadges > a:nth-child(n+3):not(.tourAttraction) {
  display: none;
}
.noteworthyDestinationBadges > div:before,
.noteworthyDestinationBadges > a:before {
  display: block;
  background: #F9FAFB;
  color: #84a750;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-size: 25px;
  padding: 7.5px;
  margin: -5px -5px 5px -5px;
  line-height: 1em;
}
.noteworthyDestinationBadges > div.topAttraction:before,
.noteworthyDestinationBadges > a.topAttraction:before {
  content: "\f559";
}
.hiddenGemPage .noteworthyDestinationBadges > div.hiddenGem,
.hiddenGemPage .noteworthyDestinationBadges > a.hiddenGem {
  display: none;
}
.noteworthyDestinationBadges > div.hiddenGem:before,
.noteworthyDestinationBadges > a.hiddenGem:before {
  content: "\f2f9";
}
.breweryPage .noteworthyDestinationBadges > div.pub,
.breweryPage .noteworthyDestinationBadges > a.pub {
  display: none;
}
.noteworthyDestinationBadges > div.pub:before,
.noteworthyDestinationBadges > a.pub:before {
  content: "\f0fc";
}
.noteworthyDestinationBadges > div.shopping:before,
.noteworthyDestinationBadges > a.shopping:before {
  content: "\f290";
}
.religionPage .noteworthyDestinationBadges > div.religion,
.religionPage .noteworthyDestinationBadges > a.religion {
  display: none;
}
.noteworthyDestinationBadges > div.religion:before,
.noteworthyDestinationBadges > a.religion:before {
  content: "\f647";
}
.noteworthyDestinationBadges > div.historyCulture:before,
.noteworthyDestinationBadges > a.historyCulture:before {
  content: "\f66f";
}
.noteworthyDestinationBadges > div.outdoors:before,
.noteworthyDestinationBadges > a.outdoors:before {
  content: "\f6ec";
}
.noteworthyDestinationBadges > div.equestrian:before,
.noteworthyDestinationBadges > a.equestrian:before {
  content: "\f6f0";
}
.noteworthyDestinationBadges > div.photo:before,
.noteworthyDestinationBadges > a.photo:before {
  content: "\f332";
}
.noteworthyDestinationBadges > div.family:before,
.noteworthyDestinationBadges > a.family:before {
  content: "\f0c0";
}
.noteworthyDestinationBadges > div.music:before,
.noteworthyDestinationBadges > a.music:before {
  content: "\f001";
}
.noteworthyDestinationBadges > div.tourAttraction:before,
.noteworthyDestinationBadges > a.tourAttraction:before {
  content: "\f25a";
}
.buttonWrapper {
  display: flex;
  justify-content: space-between;
  margin: 36px 0;
  gap: 16px;
}
.layeredContent .buttonWrapper {
  max-width: 700px;
  margin-right: auto;
}
.buttonWrapper a {
  display: block;
  width: 48%;
  text-align: center;
  border-radius: 4px;
  height: 50px;
  line-height: 50px;
  margin: 0;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 16px;
  letter-spacing: 1.5px;
  border: 1px solid #fff;
}
.buttonWrapper a:first-of-type {
  background: #fff;
  color: #666666;
  text-shadow: none;
}
@media (max-width: 490px) {
  .buttonWrapper {
    flex-direction: column;
    margin: 24px auto;
    width: 100%;
    max-width: 400px;
  }
  .buttonWrapper > a {
    width: 100%;
  }
}
* {
  box-sizing: border-box;
}
/* Reduce the size of an inline element (e.g. span, a) which is within another inline element (e.g. h2, p)  */
body {
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
}
svg.svg-inline--fa,
i.fas,
i.far,
i.fab,
i.fal {
  display: inline-block;
  font-size: 1em;
  color: #769648;
}
a,
i,
s,
span,
em,
small {
  font-weight: inherit;
  font-family: inherit;
}
a,
i,
span,
em,
s {
  font-size: inherit;
}
a svg.svg-inline--fa,
a i.fas,
a i.fab,
a i.fal,
a i.far {
  color: inherit;
}
sup {
  vertical-align: super;
  font-size: smaller;
  font-weight: inherit;
}
.subHeading {
  display: block;
  text-align: inherit;
  font-weight: 600;
  font-size: clamp(1rem, 0.8em, 26px);
  line-height: 1em;
  opacity: 0.8;
  margin: 0;
  letter-spacing: 0.03em;
}
em {
  font-style: italic;
}
a {
  color: #84a750;
  /* symbol indicating external link */
}
a:hover {
  cursor: pointer;
}
a.flaggedExternalLink:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f08e";
  font-size: 0.5em;
  vertical-align: super;
}
h1 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(2.5rem, 5vw, 5rem);
  margin-bottom: 6px;
}
h1:first-child {
  margin-top: 0;
}
h1 a {
  color: inherit;
}
h2 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(2rem, 4vw, 3.5rem);
}
h2:first-child {
  margin-top: 0;
}
h2 a {
  color: inherit;
}
h3 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(1.75rem, 3vw, 2.1rem);
}
h3:first-child {
  margin-top: 0;
}
h3 a {
  color: inherit;
}
h4 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(1.4rem, 2.5vw, 1.65rem);
  font-weight: bold;
}
h4:first-child {
  margin-top: 0;
}
h4 a {
  color: inherit;
}
h5,
h6 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(15px, 2.5vw, 17px);
  font-weight: bold;
  text-transform: uppercase;
}
h5:first-child,
h6:first-child {
  margin-top: 0;
}
h5 a,
h6 a {
  color: inherit;
}
h6 {
  font-size: 1rem;
  font-weight: bold;
  text-align: left;
  text-transform: none;
}
p,
ul,
ol,
table {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: clamp(15px, 2.5vw, 17px);
  line-height: 1.7em;
}
p b,
ul b,
ol b,
table b,
p strong,
ul strong,
ol strong,
table strong {
  font-weight: 600;
}
h1 + p,
h1 + ul,
h1 + ol,
h1 + table,
h2 + p,
h2 + ul,
h2 + ol,
h2 + table,
h3 + p,
h3 + ul,
h3 + ol,
h3 + table,
h4 + p,
h4 + ul,
h4 + ol,
h4 + table,
h5 + p,
h5 + ul,
h5 + ol,
h5 + table,
h6 + p,
h6 + ul,
h6 + ol,
h6 + table {
  margin-top: 0;
}
p,
ul,
ol {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: clamp(15px, 2.5vw, 17px);
  line-height: 1.7em;
}
p b,
ul b,
ol b,
p strong,
ul strong,
ol strong {
  font-weight: 600;
}
h1 + p,
h1 + ul,
h1 + ol,
h2 + p,
h2 + ul,
h2 + ol,
h3 + p,
h3 + ul,
h3 + ol,
h4 + p,
h4 + ul,
h4 + ol,
h5 + p,
h5 + ul,
h5 + ol,
h6 + p,
h6 + ul,
h6 + ol {
  margin-top: 0;
}
p a,
ul a,
ol a,
p .dummyLink,
ul .dummyLink,
ol .dummyLink {
  color: #84a750;
}
p a[href^="tel:"],
ul a[href^="tel:"],
ol a[href^="tel:"],
p .dummyLink[href^="tel:"],
ul .dummyLink[href^="tel:"],
ol .dummyLink[href^="tel:"] {
  color: inherit;
}
p + p {
  margin-top: clamp(8px, 3vw, 18px);
}
p a,
p .dummyLink {
  text-decoration: underline;
  text-underline-position: under;
}
p.footNote,
.textBox p.footNote {
  font-size: 0.85em;
}
h2 + p.footNote,
h2 + .textBox p.footNote,
h3 + p.footNote,
h3 + .textBox p.footNote {
  text-align: center;
}
h1 + h1,
h1 + h2,
h1 + h3,
h1 + h4,
h1 + h5,
h2 + h1,
h2 + h2,
h2 + h3,
h2 + h4,
h2 + h5,
h3 + h1,
h3 + h2,
h3 + h3,
h3 + h4,
h3 + h5,
h4 + h1,
h4 + h2,
h4 + h3,
h4 + h4,
h4 + h5,
h5 + h1,
h5 + h2,
h5 + h3,
h5 + h4,
h5 + h5 {
  margin-top: 0;
}
p.nicheGroupCTA {
  font-size: 13px;
  margin-top: 0;
}
p.nicheGroupCTA a {
  text-decoration: underline;
  text-underline-position: under;
  text-decoration-skip: ink;
}
p.smallPrint {
  font-size: 0.89rem;
}
ul,
ol,
li {
  line-height: 1.6em;
}
ol {
  list-style-type: decimal;
  margin-left: 36px;
}
ol li {
  margin-bottom: 24px;
}
.h1Caption {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(1.3rem, 2.5vw, 2.5rem);
}
.h1Caption:first-child {
  margin-top: 0;
}
.h1Caption a {
  color: inherit;
}
.h1Caption .subHeading {
  font-size: inherit;
}
.h1Caption .subHeading:before {
  height: 0;
}
h1 + .h1Caption {
  margin-top: 0;
}
.subScriptNote {
  display: block;
  clear: both;
  font-size: 0.7em;
  margin-top: 0.2em;
  opacity: 0.75;
  line-height: 1em;
  /* Should sit tight against the element above e.g the main heading */
  font-family: inherit;
}
blockquote {
  text-transform: uppercase;
  color: #4d4d4d;
  font-weight: bold;
  font-size: clamp(22px, 4.2vw, 40px);
  border-left: 10px solid #cf2b04;
  padding: 1em 0 1em 1em;
  line-height: 1.85em;
  margin-bottom: 24px;
}
blockquote h5 {
  font-size: clamp(19px, 0.6em, 28px);
}
blockquote p,
blockquote ul,
blockquote ol,
blockquote li,
blockquote span,
blockquote h4,
blockquote h5,
blockquote h6 {
  text-transform: none;
  line-height: 1.3em;
}
blockquote h5 ~ h4 {
  margin-top: 24px;
}
@media (max-width: 650px) {
  blockquote {
    line-height: 1.85em;
  }
}
@media (min-width: 700px) {
  .layeredContent blockquote {
    max-width: 75%;
    min-width: 475px;
  }
}
blockquote .caption {
  font-size: 15px;
  display: block;
}
blockquote .caption:nth-child(n) {
  margin-top: 1.2em;
}
.article {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 320px;
  grid-gap: 72px;
  padding: 0 10px;
}
.article .relatedContent {
  padding-top: 2rem;
}
.article .relatedContent h5 {
  text-transform: none;
}
.article .relatedContent > div {
  max-width: 320px;
  position: sticky;
  top: 2rem;
  margin: 0 auto 1rem 1rem;
  display: grid;
  grid-template-columns: 1fr;
}
.article .relatedContent > div h3:first-child,
.article .relatedContent > div h4:first-child,
.article .relatedContent > div h5:first-child {
  order: -100;
}
.article .relatedContent > div > a {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0.5rem 0;
  border-bottom: 2px solid #dcdcdc;
}
.article .relatedContent > div > a:nth-of-type(n+6) {
  display: none;
}
.article .relatedContent > div > a > div:first-child {
  width: 40%;
}
.article .relatedContent > div > a > div:first-child img {
  width: 100%;
  min-height: 96px;
}
.article .relatedContent > div > a > div {
  width: 58%;
}
.article .relatedContent > div > a > div p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.2em;
  color: #666666;
}
@media (min-height: 700px), (min-width: 900px) {
  .article .relatedContent > div > a > div p {
    max-height: 4.8em;
  }
}
.article .relatedContent > div > a > div p:after {
  display: inline;
  color: #84a750;
  content: "Read more...";
}
.article .relatedContent > div > a > div h5 {
  color: #84a750;
  padding: 0;
  line-height: 1.1em;
  margin: 0;
}
@media (max-width: 672px) {
  .article .relatedContent > div > a {
    margin: auto;
    max-width: 100%;
    width: 400px;
  }
}
.article .articleContent {
  overflow: hidden;
}
.article .articleContent .fold {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.article .articleContent .fold > div,
.article .articleContent .fold .supplementaryContent {
  margin-right: 1rem;
}
@media (max-width: 1010px) {
  .article .articleContent .fold > div {
    padding: 0;
  }
}
.article .articleContent p {
  margin-bottom: 1.8em;
}
.article .extendedContentList {
  padding: 0 1rem;
}
@media (max-width: 900px) {
  .article {
    grid-template-columns: 1fr;
    grid-gap: 0;
  }
  .article .articleContent .fold > div,
  .article .articleContent .supplementaryContent {
    margin: auto;
  }
  .article .relatedContent {
    position: static;
    top: auto;
    left: auto;
    max-width: 990px;
    max-width: 970px;
    width: 100%;
    float: none;
    margin-left: auto;
    margin-right: auto;
    padding-left: 10px;
    padding-right: 10px;
    margin: 1rem auto;
  }
  .article .relatedContent > div {
    max-width: 100%;
    width: 100%;
    margin: 0 0 1rem 0;
  }
  .article .relatedContent > div > h3,
  .article .relatedContent > div > h4 {
    text-align: center;
  }
  .article .relatedContent > div > a > div {
    margin-bottom: 0.5em;
  }
  .article .relatedContent > div > a:nth-of-type(n+6):nth-of-type(-n+8) {
    display: flex;
  }
}
@media (max-width: 900px) and (max-width: 1010px) {
  .article .relatedContent {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 672px) and (max-width: 900px) {
  .article .relatedContent > div {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 24px;
  }
  .article .relatedContent > div > h2,
  .article .relatedContent > div > h3,
  .article .relatedContent > div > h4,
  .article .relatedContent > div > h5,
  .article .relatedContent > div > p {
    grid-column: 1 / span 2;
  }
}
.article figure {
  margin-bottom: 24px;
}
.article figure img {
  width: 100%;
}
.article figure figcaption {
  display: block;
  position: relative;
  top: 10px;
  left: auto;
  text-shadow: none;
  color: #666666;
  font-size: 0.89rem;
}
.contentsPage {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: auto;
}
.contentsPage > a {
  width: 47.5%;
  min-width: 300px;
  display: block;
  overflow: hidden;
  position: relative;
  margin: 24px auto 0;
  text-decoration: none;
  color: #666666;
}
.contentsPage > a > div:nth-child(2) {
  margin-top: -80px;
  background-color: #fff;
  padding: 24px 24px 0 24px;
  text-align: center;
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.contentsPage > a > div:nth-child(2) h5 {
  font-size: 2.253rem;
  color: #84a750;
  line-height: 1.3em;
}
.contentsPage > a > div:nth-child(2) p {
  font-size: clamp(17px, 1.7vw, 20px);
  line-height: 1.8em;
  font-family: 'Antic Slab', serif;
  margin-bottom: 1.8em;
}
.contentsPage > a > div:nth-child(2) p * {
  font-family: inherit;
}
.contentsPage > a > div:nth-child(2):after {
  flex-grow: 0;
  float: none;
  margin: 24px auto;
  padding: 24px;
  max-width: 250px;
  color: #ffffff;
  background-color: #84a750;
  font-weight: bold;
  text-transform: uppercase;
  display: block;
  content: "Read this Post";
  padding: 0.5rem;
  font-size: 0.8rem;
  max-width: 150px;
  text-align: center;
  margin: 1rem auto;
}
p + .contentsPage > a > div:nth-child(2):after {
  margin: 48px auto;
}
.contentsPage > a > div:nth-child(2):after.strongCallToAction,
.layeredContent .contentsPage > a > div:nth-child(2):after.strongCallToAction {
  background-color: #cf2b04;
  box-shadow: none;
}
@media (max-width: 600px) {
  .contentsPage > a > div:nth-child(2):after {
    max-width: 95%;
  }
}
@media (max-width: 780px) {
  .contentsPage {
    flex-direction: column;
  }
  .contentsPage > a {
    width: 100%;
  }
}
body.authored-content main article {
  max-width: 1500px;
  margin: 0 auto;
  padding: 24px 10px;
}
@media (max-width: 900px) {
  body.authored-content main article {
    padding-left: 0;
    padding-right: 0;
  }
}
body.authored-content main article .article-header {
  margin: 0 0 48px;
}
@media (min-width: 901px) {
  body.authored-content main article .article-header {
    margin-left: calc(-1 * 10px);
    margin-right: calc(-1 * 10px);
  }
}
@media (max-width: 900px) {
  body.authored-content main article .article-header {
    margin-bottom: 0;
  }
}
body.authored-content main article .article-header .hero-image {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #F9FAFB;
}
body.authored-content main article .article-header .hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
body.authored-content main article .article-header .hero-image::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 0.1) 60%, transparent 100%);
  pointer-events: none;
}
body.authored-content main article .article-header .hero-image .hero-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 48px 10px 24px;
  z-index: 1;
}
body.authored-content main article .article-header .hero-image .hero-content h1 {
  color: #ffffff;
  font-size: 3rem;
  line-height: 1.2;
  margin: 0;
  font-weight: 700;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  max-width: 1200px;
  margin: 0 auto;
}
@media (max-width: 1024px) {
  body.authored-content main article .article-header .hero-image .hero-content h1 {
    font-size: 2.5rem;
  }
}
@media (max-width: 768px) {
  body.authored-content main article .article-header .hero-image .hero-content h1 {
    font-size: 2rem;
  }
}
@media (max-width: 480px) {
  body.authored-content main article .article-header .hero-image .hero-content h1 {
    font-size: 1.5rem;
  }
}
body.authored-content main article .article-body {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 320px;
  grid-gap: 48px;
  align-items: start;
}
@media (min-width: 901px) {
  body.authored-content main article .article-body .article-main {
    max-width: 800px;
  }
}
body.authored-content main article .article-body .article-main .article-intro {
  font-size: 1.125rem;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 48px;
}
body.authored-content main article .article-body .article-main .contents-navigation {
  background-color: #f0f2f5;
  border-radius: 8px;
  padding: 36px;
  margin: 48px 0;
}
body.authored-content main article .article-body .article-main .contents-navigation h2 {
  text-align: center;
  margin-top: 0;
  margin-bottom: 36px;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 24px;
}
@media (max-width: 768px) {
  body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 18px;
  }
}
@media (max-width: 480px) {
  body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid {
    grid-template-columns: 1fr;
  }
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a {
  text-decoration: none;
  display: block;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card {
  background-color: #ffffff;
  border: 1px solid #dcdcdc;
  border-top: 3px solid #84a750;
  border-radius: 8px;
  padding: 36px 24px;
  transition: all 0.2s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card:hover {
  border-top-color: #69853f;
  box-shadow: 0 4px 12px rgba(132, 167, 80, 0.2);
  transform: translateY(-2px);
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card:hover .chapter-icon {
  background-color: #84a750;
  color: #ffffff;
  transform: scale(1.05);
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card:hover .chapter-icon i {
  color: #ffffff;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card .chapter-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: rgba(132, 167, 80, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 18px auto;
  transition: all 0.2s ease;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card .chapter-icon i {
  font-size: 1.5rem;
  color: #84a750;
  transition: color 0.2s ease;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card .chapter-number {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  color: rgba(132, 167, 80, 0.6);
  line-height: 1;
  margin-bottom: 6px;
  text-align: center;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card h3 {
  font-size: 1.125rem;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 12px 0;
  line-height: 1.3;
  text-align: center;
}
body.authored-content main article .article-body .article-main .contents-navigation .chapter-grid a .chapter-card p {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #666666;
  margin: 0;
  flex-grow: 1;
  text-align: center;
}
@media (min-width: 901px) {
  body.authored-content main article .article-body .article-content {
    max-width: 800px;
  }
}
body.authored-content main article .article-body .article-content .table-of-contents {
  background-color: #f0f2f5;
  border-left: 4px solid #84a750;
  padding: 24px;
  margin-top: 48px;
  margin-bottom: 48px;
}
body.authored-content main article .article-body .article-content .table-of-contents h3 {
  margin: 0 0 0.5rem 0;
  font-size: 1.25rem;
  color: #4d4d4d;
}
body.authored-content main article .article-body .article-content .table-of-contents > p {
  margin: 0 0 1rem 0;
  font-size: 0.95rem;
  color: #666666;
}
body.authored-content main article .article-body .article-content .table-of-contents ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
body.authored-content main article .article-body .article-content .table-of-contents ul li {
  margin-bottom: 0.75rem;
}
body.authored-content main article .article-body .article-content .table-of-contents ul li:last-child {
  margin-bottom: 0;
}
body.authored-content main article .article-body .article-content .table-of-contents ul li a {
  color: #84a750;
  text-decoration: none;
  font-size: 0.95rem;
  transition: color 0.2s ease;
}
body.authored-content main article .article-body .article-content .table-of-contents ul li a:hover {
  color: #69853f;
  text-decoration: underline;
  text-underline-position: under;
}
body.authored-content main article .article-body .article-content .article-section {
  padding-top: 72px;
  margin-top: 72px;
  border-top: 1px solid #dcdcdc;
}
body.authored-content main article .article-body .article-content .article-section:first-of-type {
  padding-top: 0;
  margin-top: 0;
  border-top: none;
}
body.authored-content main article .article-body .article-content h2 {
  color: #4d4d4d;
  font-size: 2rem;
  font-weight: 700;
  margin-top: 48px;
  margin-bottom: 24px;
  line-height: 1.3;
}
body.authored-content main article .article-body .article-content h2:first-of-type {
  margin-top: 0;
}
body.authored-content main article .article-body .article-content h2 .subHeading {
  font-size: 0.6em;
  opacity: 0.7;
}
body.authored-content main article .article-body .article-content .attraction-info {
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  padding: 24px 0;
  margin: 24px 0 36px;
}
body.authored-content main article .article-body .article-content .attraction-info .info-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0 24px;
  min-width: 0;
  border-left: none;
  border-top: none;
}
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item:nth-child(n+2) {
  border-left: 1px solid #dcdcdc;
}
@media (max-width: 960px) and (min-width: 901px), (max-width: 620px) {
  body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item {
    grid-column: span 1;
    padding: 0 24px;
  }
  body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item:nth-child(n) {
    border-left: none;
    border-top: none;
  }
  body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item:nth-child(2n) {
    border-left: 1px solid #dcdcdc;
  }
}
@media (max-width: 900px) and (min-width: 621px) {
  body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item {
    padding: 0 24px;
  }
}
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item i,
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item svg.svg-inline--fa,
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item i.fas,
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item i.fab,
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item i.fal,
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item i.far,
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item i.fad {
  flex-shrink: 0;
  font-size: 1.25rem;
  font-weight: 300;
  color: #769648;
  margin-top: 2px;
  width: 20px;
  text-align: center;
}
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item > div {
  flex: 1;
  padding-left: 6px;
}
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item > div .label {
  display: block;
  font-size: 0.65rem;
  font-weight: 500;
  color: #666666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 3px;
}
body.authored-content main article .article-body .article-content .attraction-info .info-row .info-item > div .value {
  display: block;
  font-size: 0.95rem;
  font-weight: 600;
  color: #4d4d4d;
  line-height: 1.3;
}
@media (max-width: 960px) {
  body.authored-content main article .article-body .article-content .attraction-info .info-row {
    grid-template-columns: repeat(2, 1fr);
    grid-row-gap: 24px;
  }
}
@media (max-width: 900px) {
  body.authored-content main article .article-body .article-content .attraction-info .info-row {
    grid-template-columns: repeat(4, 1fr);
    grid-row-gap: 0;
  }
}
@media (max-width: 620px) {
  body.authored-content main article .article-body .article-content .attraction-info .info-row {
    grid-template-columns: repeat(2, 1fr);
    grid-row-gap: 24px;
  }
}
body.authored-content main article .article-body .article-content h3 {
  color: #4d4d4d;
  font-size: 1.5rem;
  font-weight: 700;
  margin-top: 42px;
  margin-bottom: 18px;
  line-height: 1.3;
}
body.authored-content main article .article-body .article-content h3:first-of-type {
  margin-top: 0;
}
body.authored-content main article .article-body .article-content h4:not(.toggle_trigger) {
  color: #4d4d4d;
  font-size: 1.25rem;
  font-weight: 700;
  margin-top: 36px;
  margin-bottom: 12px;
  line-height: 1.3;
}
body.authored-content main article .article-body .article-content h4:not(.toggle_trigger):first-of-type {
  margin-top: 0;
}
body.authored-content main article .article-body .article-content h5:not(.toggle_trigger) {
  color: #4d4d4d;
  font-size: 1.125rem;
  font-weight: 700;
  margin-top: 30px;
  margin-bottom: 12px;
  line-height: 1.3;
}
body.authored-content main article .article-body .article-content h5:not(.toggle_trigger):first-of-type {
  margin-top: 0;
}
body.authored-content main article .article-body .article-content p,
body.authored-content main article .article-body .article-content ul,
body.authored-content main article .article-body .article-content ol {
  font-size: 1rem;
  line-height: 1.7;
  color: #666666;
  margin-bottom: 1.5rem;
}
body.authored-content main article .article-body .article-content .toggleFeaturesList {
  max-width: 90%;
  margin-left: 0;
  margin-right: auto;
  margin-top: 48px;
  margin-bottom: 48px;
}
body.authored-content main article .article-body .article-content .toggleFeaturesList > li {
  padding: 30px 24px;
}
body.authored-content main article .article-body .article-content figure {
  margin: 36px 0;
}
body.authored-content main article .article-body .article-content figure img {
  width: 100%;
  display: block;
}
body.authored-content main article .article-body .article-content figure figcaption {
  margin-top: 12px;
  font-size: 0.875rem;
  color: #666666;
  line-height: 1.5;
}
body.authored-content main article .article-body .article-content .photoGallery + p {
  margin-top: 24px;
}
body.authored-content main article .article-body .article-content .article-footnote {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 2px solid #dcdcdc;
  background-color: rgba(249, 250, 251, 0.5);
  padding: 24px 36px;
  border-radius: 4px;
}
body.authored-content main article .article-body .article-content .article-footnote p {
  margin-bottom: 0;
  font-size: 0.95rem;
  line-height: 1.6;
}
body.authored-content main article .article-body .article-content .article-footnote a {
  color: #84a750;
  text-decoration: none;
  transition: color 0.2s ease;
}
body.authored-content main article .article-body .article-content .article-footnote a:hover {
  color: #69853f;
  text-decoration: underline;
  text-underline-position: under;
}
body.authored-content main article .article-body .article-content .detailed-aside {
  background-color: #F9FAFB;
  border-left: 4px solid #b3b3b3;
  padding: 36px;
  margin: 48px 0;
  border-radius: 4px;
}
body.authored-content main article .article-body .article-content .detailed-aside h3 {
  margin-top: 0;
  margin-bottom: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  color: #4d4d4d;
  opacity: 0.9;
  text-transform: none;
}
body.authored-content main article .article-body .article-content .detailed-aside h4 {
  margin-top: 24px;
  margin-bottom: 12px;
  font-size: 1.0625rem;
  font-weight: 600;
  color: #4d4d4d;
  opacity: 0.9;
  text-transform: none;
}
body.authored-content main article .article-body .article-content .detailed-aside h5 {
  margin-top: 18px;
  margin-bottom: 6px;
  font-size: 0.9rem;
  font-weight: 600;
  color: #4d4d4d;
  opacity: 0.9;
  text-transform: none;
}
body.authored-content main article .article-body .article-content .detailed-aside p {
  font-size: 0.95rem;
  line-height: 1.6;
  opacity: 0.9;
}
body.authored-content main article .article-body .article-content .detailed-aside ul {
  opacity: 0.9;
}
body.authored-content main article .article-body .article-content .fold.timeLine > div > div > div {
  padding-left: 0;
  padding-right: 0;
}
@media (min-width: 900px) {
  body.authored-content main article .article-body .article-content .topPlaces {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 470px) {
  body.authored-content main article .article-body .article-content .topPlaces {
    grid-template-columns: 1fr;
  }
}
body.authored-content main article .article-body .article-content .topPlaces p {
  font-size: 0.9rem;
}
body.authored-content main article .article-body .article-metadata {
  position: sticky;
  top: 24px;
  background-color: #f0f2f5;
  border: 1px solid #dcdcdc;
  border-radius: 8px;
  padding: 24px;
}
body.authored-content main article .article-body .article-metadata .reading-time {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-bottom: 24px;
  border-bottom: 1px solid #dcdcdc;
  margin-bottom: 24px;
}
body.authored-content main article .article-body .article-metadata .reading-time svg {
  color: #666666;
  flex-shrink: 0;
}
body.authored-content main article .article-body .article-metadata .reading-time span {
  font-size: 0.95rem;
  font-weight: 600;
  color: #4d4d4d;
}
body.authored-content main article .article-body .article-metadata .last-updated {
  font-size: 0.875rem;
  color: #666666;
  margin: 0 0 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #dcdcdc;
}
body.authored-content main article .article-body .article-metadata .last-updated strong {
  color: #4d4d4d;
  font-weight: 600;
}
body.authored-content main article .article-body .article-metadata .contributor {
  display: flex;
  gap: 1rem;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #dcdcdc;
}
body.authored-content main article .article-body .article-metadata .contributor:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
body.authored-content main article .article-body .article-metadata .contributor img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
body.authored-content main article .article-body .article-metadata .contributor > div {
  flex: 1;
}
body.authored-content main article .article-body .article-metadata .contributor > div p {
  margin: 0;
  line-height: 1.4;
}
body.authored-content main article .article-body .article-metadata .contributor > div .label {
  font-size: 0.75rem;
  color: #666666;
  margin-bottom: 0.25rem;
}
body.authored-content main article .article-body .article-metadata .contributor > div .name {
  font-size: 0.95rem;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 0.25rem;
}
body.authored-content main article .article-body .article-metadata .contributor > div .name a {
  color: #84a750;
  text-decoration: none;
  transition: color 0.2s ease;
}
body.authored-content main article .article-body .article-metadata .contributor > div .name a:hover {
  color: #69853f;
  text-decoration: underline;
  text-underline-position: under;
}
body.authored-content main article .article-body .article-metadata .contributor > div .role {
  font-size: 0.8rem;
  color: #666666;
}
@media (min-width: 601px) and (max-width: 900px) {
  body.authored-content main article .article-body .article-metadata {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 24px;
    padding: 36px;
  }
  body.authored-content main article .article-body .article-metadata .reading-time {
    grid-column: 1;
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  body.authored-content main article .article-body .article-metadata .last-updated {
    grid-column: 2;
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  body.authored-content main article .article-body .article-metadata .contributor {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  body.authored-content main article .article-body .article-metadata .contributor:nth-of-type(1) {
    grid-column: 2;
  }
  body.authored-content main article .article-body .article-metadata .contributor:nth-of-type(2) {
    grid-column: 1;
  }
  body.authored-content main article .article-body .article-metadata .contributor:nth-of-type(3) {
    grid-column: 2;
  }
  body.authored-content main article .article-body .article-metadata .contributor:nth-of-type(4) {
    grid-column: 1;
  }
}
@media (max-width: 900px) {
  body.authored-content main article .article-body {
    grid-template-columns: 1fr;
    grid-gap: 24px;
  }
  body.authored-content main article .article-body .article-metadata {
    position: static;
    order: -1;
    margin-bottom: 24px;
    border: none;
    border-radius: 0;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}
body.authored-content main article .author-biographies {
  max-width: 1200px;
  margin: 72px auto 48px;
  padding: 48px 0;
  border-top: 1px solid #dcdcdc;
}
body.authored-content main article .author-biographies .author-bio {
  display: flex;
  gap: 36px;
  margin-bottom: 72px;
  max-width: 800px;
}
body.authored-content main article .author-biographies .author-bio:last-child {
  margin-bottom: 0;
}
body.authored-content main article .author-biographies .author-bio img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
@media (max-width: 600px) {
  body.authored-content main article .author-biographies .author-bio img {
    width: 60px;
    height: 60px;
  }
}
body.authored-content main article .author-biographies .author-bio .bio-content {
  flex: 1;
}
body.authored-content main article .author-biographies .author-bio .bio-content .label {
  font-size: 0.75rem;
  color: #666666;
  margin: 0 0 0.25rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
body.authored-content main article .author-biographies .author-bio .bio-content .name {
  font-size: 1.125rem;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 0.25rem;
  line-height: 1.3;
}
body.authored-content main article .author-biographies .author-bio .bio-content .name a {
  color: #84a750;
  text-decoration: none;
  transition: color 0.2s ease;
}
body.authored-content main article .author-biographies .author-bio .bio-content .name a:hover {
  color: #69853f;
  text-decoration: underline;
  text-underline-position: under;
}
body.authored-content main article .author-biographies .author-bio .bio-content .role {
  font-size: 0.875rem;
  color: #666666;
  margin: 0 0 24px;
  font-weight: 600;
}
body.authored-content main article .author-biographies .author-bio .bio-content .bio-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #666666;
  margin: 0 0 1rem;
}
body.authored-content main article .author-biographies .author-bio .bio-content .bio-text:last-child {
  margin-bottom: 0;
}
@media (max-width: 600px) {
  body.authored-content main article .author-biographies .author-bio {
    flex-direction: column;
    gap: 24px;
  }
}
@media (max-width: 900px) {
  body.authored-content main article .article-main,
  body.authored-content main article .author-biographies,
  body.authored-content main article .related-articles-footer {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.related-articles-footer {
  max-width: 1500px;
  margin: 72px auto 48px;
  padding: 48px 10px 0;
  border-top: 2px solid #dcdcdc;
}
.related-articles-footer + .related-articles-footer {
  border-top: none;
  margin-top: 0;
  padding-top: 24px;
}
.related-articles-footer > h3 {
  font-size: 1.75rem;
  color: #4d4d4d;
  margin-bottom: 48px;
  text-align: center;
}
.related-articles-footer .related-articles-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 36px;
}
.related-articles-footer .related-articles-grid .related-article-card {
  display: block;
  text-decoration: none;
  background-color: #ffffff;
  border: 1px solid #dcdcdc;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.2s ease;
}
.related-articles-footer .related-articles-grid .related-article-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
  border-color: #a9a9a9;
}
.related-articles-footer .related-articles-grid .related-article-card picture {
  display: block;
  width: 100%;
  overflow: hidden;
  background-color: #f5f5f5;
}
.related-articles-footer .related-articles-grid .related-article-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.related-articles-footer .related-articles-grid .related-article-card .card-content {
  padding: 24px;
}
.related-articles-footer .related-articles-grid .related-article-card .card-content h4 {
  font-size: 1rem;
  line-height: 1.4;
  color: #4d4d4d;
  margin: 0 0 0.5rem;
  font-weight: 700;
  transition: color 0.2s ease;
}
.related-articles-footer .related-articles-grid .related-article-card .card-content p {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #666666;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.related-articles-footer .related-articles-grid .related-article-card:hover .card-content h4 {
  color: #272727;
}
@media (max-width: 1300px) {
  .related-articles-footer .related-articles-grid {
    grid-gap: 24px;
  }
}
@media (max-width: 1200px) {
  .related-articles-footer .related-articles-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .related-articles-footer .related-articles-grid {
    grid-template-columns: 1fr;
    grid-gap: 16.008px;
  }
}
@media (max-width: 900px) {
  .related-articles-footer {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.player-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #4d4d4d;
  margin: 48px 0 12px;
  max-width: 800px;
}
p.player-meta {
  font-size: 0.75rem;
  color: #666666;
  margin: 0 0 24px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  max-width: 800px;
}
p.player-meta svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.audio-transcript-player {
  margin: 0 0 48px;
  background-color: #F9FAFB;
  border: 1px solid #dcdcdc;
  border-radius: 12px;
  overflow: hidden;
}
@media (min-width: 901px) {
  .audio-transcript-player {
    max-width: 800px;
  }
}
.audio-transcript-player .audio-controls-wrapper {
  background-color: #f0f2f5;
  padding: 24px;
  border-bottom: 1px solid #dcdcdc;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: center;
}
.audio-transcript-player .audio-controls-wrapper audio {
  display: none;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn {
  background-color: #ffffff;
  border: 1px solid #dcdcdc;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #4d4d4d;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn:hover {
  background-color: #f2f2f2;
  border-color: #b6b6b6;
  transform: scale(1.05);
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn:active {
  transform: scale(0.95);
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn:focus-visible {
  outline: 2px solid #84a750;
  outline-offset: 2px;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn svg {
  flex-shrink: 0;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.play-pause-btn {
  width: 56px;
  height: 56px;
  background-color: #84a750;
  border-color: #84a750;
  color: #ffffff;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.play-pause-btn:hover {
  background-color: #6e8b43;
  border-color: #6e8b43;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.speed-btn {
  border-radius: 22px;
  padding: 0 1rem;
  font-weight: 600;
  font-size: 0.875rem;
  color: #4d4d4d;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.share-btn {
  background-color: #e1e6eb;
  border-color: #dcdcdc;
}
.audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.share-btn:hover {
  background-color: #d4dbe3;
}
@media (max-width: 480px) {
  .audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn {
    width: 40px;
    height: 40px;
  }
  .audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.play-pause-btn {
    width: 48px;
    height: 48px;
  }
  .audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn svg {
    width: 18px;
    height: 18px;
  }
  .audio-transcript-player .audio-controls-wrapper .audio-controls .control-btn.speed-btn {
    padding: 0 0.75rem;
    font-size: 0.8125rem;
  }
}
.audio-transcript-player .audio-controls-wrapper .search-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  flex: 0 1 auto;
  min-width: 200px;
  max-width: 400px;
  margin-left: auto;
}
.audio-transcript-player .audio-controls-wrapper .search-wrapper .search-icon {
  position: absolute;
  left: 1rem;
  color: #666666;
  pointer-events: none;
}
.audio-transcript-player .audio-controls-wrapper .search-wrapper .transcript-search {
  width: 100%;
  padding: 0.625rem 1rem 0.625rem 2.75rem;
  border: 1px solid #dcdcdc;
  border-radius: 24px;
  font-size: 0.9375rem;
  background-color: #ffffff;
  color: #4d4d4d;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.audio-transcript-player .audio-controls-wrapper .search-wrapper .transcript-search::placeholder {
  color: #999999;
}
.audio-transcript-player .audio-controls-wrapper .search-wrapper .transcript-search:focus {
  outline: none;
  border-color: #84a750;
  box-shadow: 0 0 0 3px rgba(132, 167, 80, 0.15);
}
@media (max-width: 600px) {
  .audio-transcript-player .audio-controls-wrapper .search-wrapper {
    flex: 1 1 100%;
    max-width: none;
    order: 10;
  }
}
.audio-transcript-player .transcript-container {
  padding: 24px;
  max-height: 500px;
  overflow-y: auto;
  background-color: #ffffff;
}
.audio-transcript-player .transcript-container::-webkit-scrollbar {
  width: 8px;
}
.audio-transcript-player .transcript-container::-webkit-scrollbar-track {
  background-color: #F9FAFB;
}
.audio-transcript-player .transcript-container::-webkit-scrollbar-thumb {
  background-color: #dcdcdc;
  border-radius: 4px;
}
.audio-transcript-player .transcript-container::-webkit-scrollbar-thumb:hover {
  background-color: #b6b6b6;
}
.audio-transcript-player .transcript-container .transcript-entry {
  padding: 24px 0;
  border-bottom: 1px solid #dcdcdc;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.audio-transcript-player .transcript-container .transcript-entry:last-child {
  border-bottom: none;
}
.audio-transcript-player .transcript-container .transcript-entry:hover {
  background-color: #F9FAFB;
}
.audio-transcript-player .transcript-container .transcript-entry.active {
  background-color: #eff4e8;
  border-left: 3px solid #84a750;
  padding-left: 21px;
}
.audio-transcript-player .transcript-container .transcript-entry.hidden {
  display: none;
}
.audio-transcript-player .transcript-container .transcript-entry .timestamp {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 600;
  color: #666666;
  font-family: monospace;
  margin-right: 12px;
  min-width: 65px;
}
.audio-transcript-player .transcript-container .transcript-entry .speaker {
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 700;
  color: #84a750;
  margin-bottom: 0.25rem;
}
.audio-transcript-player .transcript-container .transcript-entry p {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #666666;
  margin: 0.5rem 0 0;
}
@media (max-width: 600px) {
  .audio-transcript-player .transcript-container .transcript-entry .timestamp {
    display: block;
    margin-bottom: 0.25rem;
  }
  .audio-transcript-player .transcript-container .transcript-entry .speaker {
    display: block;
  }
}
.etiquette-guide {
  margin: 48px 0;
  background-color: #f6f7f9;
  border: 1px solid #dcdcdc;
  border-radius: 12px;
  padding: 36px;
}
@media (min-width: 901px) {
  .etiquette-guide {
    max-width: 800px;
  }
}
.etiquette-guide h3 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 12px;
  line-height: 1.3;
}
.etiquette-guide p.intro {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #666666;
  margin: 0 0 36px;
  padding-bottom: 36px;
  border-bottom: 1px solid #dcdcdc;
}
.etiquette-guide h4 {
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin: 0 0 18px;
  padding-bottom: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #4d4d4d;
}
.etiquette-guide h4:nth-of-type(2) {
  margin-top: 36px;
  padding-top: 36px;
  border-top: 1px solid #dcdcdc;
}
.etiquette-guide h4::before {
  content: "";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  font-weight: 700;
  font-size: 0.75rem;
  flex-shrink: 0;
  line-height: 1;
}
.etiquette-guide h4:first-of-type {
  color: #769648;
}
.etiquette-guide h4:first-of-type::before {
  content: "✓";
  background-color: rgba(132, 167, 80, 0.2);
  color: #69853f;
}
.etiquette-guide h4:last-of-type {
  color: #df4242;
}
.etiquette-guide h4:last-of-type::before {
  content: "✕";
  background-color: rgba(227, 88, 88, 0.2);
  color: #dc2c2c;
}
.etiquette-guide ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.etiquette-guide ul li {
  position: relative;
  padding-left: 2rem;
  margin-bottom: 16.008px;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #666666;
}
.etiquette-guide ul li:last-child {
  margin-bottom: 0;
}
.etiquette-guide ul li::before {
  position: absolute;
  left: 0.25rem;
  top: 0.25em;
  font-size: 0.875rem;
  font-weight: 600;
}
.etiquette-guide ul:first-of-type li::before {
  content: "✓";
  color: rgba(132, 167, 80, 0.6);
}
.etiquette-guide ul:last-of-type li::before {
  content: "✕";
  color: rgba(227, 88, 88, 0.6);
}
@media (max-width: 600px) {
  .etiquette-guide {
    padding: 24px;
  }
  .etiquette-guide h4 {
    font-size: 0.75rem;
  }
  .etiquette-guide h4::before {
    width: 18px;
    height: 18px;
    font-size: 0.6875rem;
  }
  .etiquette-guide h4:nth-of-type(2) {
    margin-top: 24px;
    padding-top: 24px;
  }
  .etiquette-guide ul li {
    font-size: 0.875rem;
    padding-left: 1.75rem;
    margin-bottom: 12px;
  }
  .etiquette-guide ul li::before {
    font-size: 0.8125rem;
  }
}
/* Back-to-Top Floating Action Button
 * Material Design FAB implementation
 * Following Material Design 2.0 guidelines
 */
.back-to-top-fab {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: #4d4d4d;
  color: #ffffff;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);
  /* Hidden by default - shown via JS when scrolled */
  opacity: 0;
  visibility: hidden;
  transform: scale(0);
  /* Icon styling */
  /* Hover state - elevated shadow */
  /* Active/pressed state */
  /* Focus state for accessibility */
  /* Visible state - controlled by JS */
}
.back-to-top-fab svg.svg-inline--fa,
.back-to-top-fab i.fas,
.back-to-top-fab i.fab,
.back-to-top-fab i.fal,
.back-to-top-fab i.far,
.back-to-top-fab i.fad {
  font-size: 24px;
  line-height: 1;
  color: #ffffff;
}
.back-to-top-fab:hover {
  background-color: #393939;
  box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);
  transform: scale(1.05);
}
.back-to-top-fab:active {
  box-shadow: 0 7px 8px -4px rgba(0, 0, 0, 0.2), 0 12px 17px 2px rgba(0, 0, 0, 0.14), 0 5px 22px 4px rgba(0, 0, 0, 0.12);
}
.back-to-top-fab:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(77, 77, 77, 0.3);
}
.back-to-top-fab.visible {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}
/* Responsive adjustments */
@media (max-width: 640px) {
  .back-to-top-fab {
    bottom: 16px;
    right: 16px;
    width: 48px;
    height: 48px;
  }
  .back-to-top-fab svg.svg-inline--fa,
  .back-to-top-fab i.fas,
  .back-to-top-fab i.fab,
  .back-to-top-fab i.fal,
  .back-to-top-fab i.far,
  .back-to-top-fab i.fad {
    font-size: 20px;
  }
}
/* Ensure minimum touch target size on mobile (48x48dp) */
@media (pointer: coarse) {
  .back-to-top-fab {
    min-width: 48px;
    min-height: 48px;
  }
}
.booking-engine {
  /* Site background for the booking section */
  background: #F9FAFB;
  /* CSS custom props for quick theming without touching global tokens */
  --be-accent: #84a750;
  /* primary accent (calm green) */
  --be-border: #e5e7eb;
  /* light gray from tokens */
  --be-input-border: #c4c4c4;
  /* light gray from tokens */
  --be-muted: #666666;
  /* site text color for muted */
  --be-bg: #fff;
  /* pale header background */
  font-family: inherit;
  padding-bottom: 48px;
  /* ============ Header (wide bar) ============ */
  /* ============ Two-column Layout ============ */
  /* ============ Cards / Panels ============ */
  /* Panel heading (accordion-style) */
  /* Completed panel: green circle with white check icon */
  /* Completed and inactive panels reveal their Edit link and inline summary */
  /* Panel body spacing */
  /* removed stray brace here to keep following utilities inside .booking-engine */
  /* Generic utilities */
  /* removed stray brace */
  /* Utility: row of buttons with consistent spacing */
  /* Basic form group and input styles for booking fields */
  /* Two-up form row: side-by-side on wide screens, stacked on narrow */
  /* Phone row: select + input side by side with a small gap */
  /* Error messaging */
  /* Radio groups as button-style toggles (works with label-wrapped inputs) */
  /* Optional utility if you add it in markup */
  /* If a form group contains radio labels, lay them out as a row with gaps */
  /* Hide native radios but keep them accessible */
  /* Turn the radio label into a button */
  /* Hover state for unselected */
  /* Selected = tinted background with coloured border */
  /* Slightly stronger border on hover for the selected state */
  /* Keyboard focus support (on the hidden input) */
  /* Disabled radios */
  /* Checkbox list (Step 5) */
  /* Rooming (Panel 4) */
  /* Bed type picker - visual radio cards (step 2) */
  /* Buttons: primary (green) and secondary (bordered white) */
  /* Mobile-only sticky totals bar */
  /* Glyph inside the toggle */
  /* Content row: animate slide-in/out instead of toggling display */
  /* Collapsed state: visually hidden by sliding down, with zero height */
  /* Respect user motion preferences */
}
.booking-engine h4 {
  font-size: 1.2rem;
}
.booking-engine .be-header {
  background: #fff;
  /* explicit white header */
  border: 1px solid var(--be-border);
  border-radius: 0;
  /* flush with background blocks */
  padding: 36px 10px;
  margin-bottom: 16px;
  /* Constrain inner content while keeping header full width */
  /* Circular exit icon button in header */
}
.booking-engine .be-header .be-header-inner {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  /* exit icon followed by title */
  gap: 12px;
}
.booking-engine .be-header .be-header-inner a {
  color: inherit;
}
.booking-engine .be-header .be-header-inner > div {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #666666;
  font-size: 13px;
}
.booking-engine .be-header .be-header-inner > div img {
  margin: 0;
}
.booking-engine .be-header .be-header-inner > div > div {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.booking-engine .be-header .be-header-inner > div > div strong {
  color: #4d4d4d;
  font-size: 17px;
}
.booking-engine .be-header .be-header-inner > div > div span {
  line-height: 1.25em;
}
.booking-engine .be-header .be-exit-btn {
  width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 999px;
  border-color: var(--be-border);
  background: #fff;
  font-size: 18px;
  line-height: 1;
}
.booking-engine .be-header .be-exit-btn svg.svg-inline--fa,
.booking-engine .be-header .be-exit-btn i.fas,
.booking-engine .be-header .be-exit-btn i.fab,
.booking-engine .be-header .be-exit-btn i.fal,
.booking-engine .be-header .be-exit-btn i.far,
.booking-engine .be-header .be-exit-btn i.fad {
  color: #666666;
  font-weight: 300;
}
.booking-engine .be-header .be-exit-btn:hover {
  background: #ffffff;
}
.booking-engine .be-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  /* main + summary */
  gap: 24px;
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}
@media (max-width: 980px) {
  .booking-engine .be-layout {
    grid-template-columns: 1fr;
    /* stack */
  }
  .booking-engine .be-layout .be-main {
    order: 2;
  }
  .booking-engine .be-layout .be-summary {
    order: 1;
  }
}
.booking-engine .be-layout .be-main {
  min-width: 0;
  /* prevent overflow when grid shrinks */
}
.booking-engine .be-layout .be-summary {
  align-self: start;
  top: 16px;
  /* Summary: label above value rows with short dividers and a link-style action */
  /* Emphasize labels specifically for Tour and Dates rows */
}
@media (min-width: 980px) {
  .booking-engine .be-layout .be-summary {
    position: sticky;
    /* keep visible while scrolling on desktop */
  }
}
.booking-engine .be-layout .be-summary li {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  padding: 4px 0;
}
.booking-engine .be-layout .be-summary .be-summary-top {
  margin-bottom: 6px;
}
.booking-engine .be-layout .be-summary .be-summary-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  /* value grows, action stays compact */
  grid-template-rows: auto auto;
  /* row 1 = label, row 2 = value */
  column-gap: 8px;
  row-gap: 4px;
  align-items: center;
  padding: 12px 0;
}
.booking-engine .be-layout .be-summary .be-summary-label {
  grid-column: 1;
  /* left column */
  grid-row: 1;
  /* top row */
}
.booking-engine .be-layout .be-summary .be-summary-label,
.booking-engine .be-layout .be-summary .be-summary-details h5,
.booking-engine .be-layout .be-summary .be-summary-rates h5 {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #4d4d4d;
  font-weight: 600;
  margin-bottom: 0;
}
.booking-engine .be-layout .be-summary .be-summary-value {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  color: #4d4d4d;
  grid-column: 1;
  /* left column */
  grid-row: 2;
  /* second row */
  /* Handle very long tour names gracefully */
  overflow-wrap: anywhere;
  word-break: break-word;
  /* Neutralize inline tags so value appears as plain text */
}
.booking-engine .be-layout .be-summary .be-summary-value strong,
.booking-engine .be-layout .be-summary .be-summary-value b {
  font-weight: inherit;
}
.booking-engine .be-layout .be-summary .be-summary-value em,
.booking-engine .be-layout .be-summary .be-summary-value i {
  font-style: normal;
}
.booking-engine .be-layout .be-summary .be-summary-value .tag,
.booking-engine .be-layout .be-summary .be-summary-value .badge,
.booking-engine .be-layout .be-summary .be-summary-value .chip {
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  border-radius: 0;
  color: inherit;
  font-weight: inherit;
}
.booking-engine .be-layout .be-summary .be-summary-row--tour .be-summary-label,
.booking-engine .be-layout .be-summary .be-summary-row--dates .be-summary-label {
  color: #4d4d4d;
}
.booking-engine .be-layout .be-summary .be-summary-row--tour a.be-tour-itinerary-link {
  display: block;
  font-size: 12px;
  text-decoration: underline;
  text-underline-position: under;
  cursor: pointer;
  margin-top: 8px;
}
.booking-engine .be-layout .be-summary .be-summary-action {
  justify-self: end;
  /* right align in its column */
  align-self: center;
  /* vertically center across the two rows */
  grid-column: 2;
  /* right column */
  grid-row: 1 / span 2;
  /* span both label and value rows */
}
.booking-engine .be-layout .be-summary .be-link-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 6px;
  border: 1px solid var(--be-border);
  background: #fff;
  color: #4d4d4d;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
  white-space: nowrap;
  /* prevent awkward wraps for 'Change' */
}
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 500;
  color: #666666;
  font-size: 13px;
}
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn svg.svg-inline--fa,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn svg.svg-inline--fa,
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn i.fas,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn i.fas,
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn i.fab,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn i.fab,
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn i.fal,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn i.fal,
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn i.far,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn i.far,
.booking-engine .be-layout .be-summary .be-link-button.be-share-email-modal-btn i.fad,
.booking-engine .be-layout .be-summary .be-link-button.be-share-copy-btn i.fad {
  font-weight: 300;
}
.booking-engine .be-layout .be-summary .be-link-button:hover {
  background: #ffffff;
  border-color: #d0d0d0;
}
.booking-engine .be-layout .be-summary .be-link-button:focus-visible {
  outline: 2px solid rgba(132, 167, 80, 0.5);
  outline-offset: 2px;
}
.booking-engine .be-layout .be-summary .be-share-container {
  margin-top: 16px;
  padding-top: 16px;
  text-align: center;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
}
.booking-engine .be-layout .be-summary .be-summary-divider {
  border: none;
  border-top: 1px solid var(--be-border);
  width: 85%;
  margin: 10px auto;
}
.booking-engine .be-layout .be-summary .be-summary-details,
.booking-engine .be-layout .be-summary .be-summary-rates {
  margin-top: 6px;
}
.booking-engine .be-card {
  background: #fff;
  border: 1px solid var(--be-border);
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
  padding: 16px;
  /* Subtle, eye-catching info block (pale accent background)
				  Intended usage: <div class="be-muted"><h5>...</h5><p>...</p></div> */
}
.booking-engine .be-card h2,
.booking-engine .be-card h3 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
}
.booking-engine .be-card p {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  letter-spacing: 0.02em;
  color: #666666;
  margin-bottom: 6px;
  font-weight: 500;
}
@media (max-width: 640px) {
  .booking-engine .be-card p {
    font-size: 13px;
  }
}
.booking-engine .be-card .be-muted {
  display: block;
  margin-top: 24px;
  padding: 10px 12px;
  border-radius: 12px;
  background: #f4f7ef;
  border: 1px solid #d1dfbc;
  color: #69853f;
}
.booking-engine .be-card .be-muted h5 {
  font-family: 'Alegreya Sans', sans-serif;
  color: inherit;
  font-weight: 600;
  margin: 0 0 4px 0;
  font-size: 16px;
}
.booking-engine .be-card .be-muted p {
  font-family: 'Montserrat', sans-serif;
  margin: 0;
  font-size: 14px;
}
.booking-engine .be-panel {
  display: block;
  /* all panels are visible; inactive ones show only the heading */
  /* When not active, collapse body content */
  margin-bottom: 24px;
  /* gap between panels */
}
.booking-engine .be-panel:not(.is-active) .be-panel-body {
  display: none;
}
.booking-engine .be-panel:last-child {
  margin-bottom: 0;
}
.booking-engine .be-panel-heading {
  font-family: 'Alegreya Sans', sans-serif;
  font-weight: 600;
  color: #4d4d4d;
  padding: 16px 12px 12px 12px;
  font-size: 20px;
  /* bigger, closer to h3 */
  border-radius: 10px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  /* allow summary to wrap to its own line */
  /* Right-aligned Edit link inside heading (appears on completed, inactive steps) */
  /* Inline summary snippet (only shows when panel is complete and inactive) */
  /* Numeric step badge inside headings */
}
.booking-engine .be-panel-heading .be-panel-edit {
  margin-left: auto;
  /* push to the far right of the heading row */
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  /* paragraph-like */
  color: #666666;
  text-decoration: underline;
  text-underline-position: under;
  display: none;
  /* default hidden */
  font-weight: normal;
}
.booking-engine .be-panel-heading .be-step-summary {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  /* small */
  color: #808080;
  /* indent to align with heading text, not the numeric badge */
  margin-left: 38px;
  /* 30px badge + 8px gap */
  margin-top: 6px;
  /* separation from title row */
  font-weight: normal;
  flex-basis: 100%;
  /* occupy its own line under heading */
  display: none;
  /* hidden by default, shown via .is-complete:not(.is-active) */
}
.booking-engine .be-panel-heading .be-step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 30px;
  block-size: 30px;
  border-radius: 999px;
  border: 2px solid var(--be-border);
  /* faint gray border */
  background: #fff;
  color: #4d4d4d;
  font-size: 14px;
  line-height: 1;
  margin-right: 8px;
  position: relative;
  font-family: 'Montserrat', sans-serif;
  font-weight: bold;
}
.booking-engine .be-panel.is-complete .be-step-number {
  background: #84a750;
  border-color: #84a750;
  color: transparent;
  /* hide the numeric character */
  font-size: 0;
  /* collapse number so it doesn't affect centering */
}
.booking-engine .be-panel.is-complete:not(.is-active) .be-step-summary {
  display: inline;
}
.booking-engine .be-panel.is-complete:not(.is-active) .be-panel-edit {
  display: inline;
  /* show Edit only when completed and not the active panel */
}
.booking-engine .be-panel.is-complete .be-step-number::before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  content: "\f00c";
  /* Font Awesome check */
  font-weight: 900;
  /* solid */
  color: #fff;
  font-size: 14px;
  line-height: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.booking-engine .be-panel-body {
  margin-top: 12px;
}
.booking-engine .visually-hidden {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}
.booking-engine .be-actions-row {
  display: flex;
  gap: 8px;
  justify-content: flex-start;
  /* default: start */
  /* Always push the last control to the far right.
			   - With two buttons: Back (left) and Next (right).
			   - With a single button: it sits on the right. */
}
.booking-engine .be-actions-row > *:last-child {
  margin-left: auto;
}
.booking-engine .be-form-group {
  margin-bottom: 24px;
}
.booking-engine .be-form-group label {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  letter-spacing: 0.02em;
  color: #666666;
  margin-bottom: 6px;
  font-weight: 500;
}
@media (max-width: 640px) {
  .booking-engine .be-form-group label {
    font-size: 13px;
  }
}
.booking-engine .inputBlock label {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  letter-spacing: 0.02em;
  color: #666666;
  margin-bottom: 6px;
  font-weight: 500;
}
@media (max-width: 640px) {
  .booking-engine .inputBlock label {
    font-size: 13px;
  }
}
.booking-engine .be-form-row {
  display: grid;
  grid-template-columns: 1fr;
  /* single column by default */
  /* Separate row/column spacing for cleaner rhythm */
  column-gap: 12px;
  row-gap: 12px;
  /* Ensure children align consistently even with varying control heights */
  align-items: start;
  align-content: start;
  margin-bottom: 24px;
  /* Remove per-group margins inside rows so grid gaps control spacing */
  /* Full-width variant for button rows (panel 0 intent) */
}
.booking-engine .be-form-row > .be-form-group {
  margin: 0;
}
@media (min-width: 640px) {
  .booking-engine .be-form-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .booking-engine .be-form-row.group-makeup {
    display: flex;
    gap: 12px;
  }
  .booking-engine .be-form-row.group-makeup > div {
    flex: 1;
  }
}
.booking-engine .be-form-row input[type="radio"] {
  width: auto;
}
.booking-engine .be-form-row label {
  display: flex;
  align-items: center;
  gap: 6px;
}
.booking-engine .be-form-row.be-buttons {
  margin-right: auto;
}
@media (min-width: 640px) {
  .booking-engine .be-form-row.be-buttons {
    max-width: 250px;
  }
}
.booking-engine .be-form-row.be-buttons--full {
  max-width: 100% !important;
  /* make two options equal width on wide screens */
  /* ensure labels stretch to fill the grid cell */
}
@media (min-width: 640px) {
  .booking-engine .be-form-row.be-buttons--full {
    max-width: 100% !important;
  }
}
@media (min-width: 640px) {
  .booking-engine .be-form-row.be-buttons--full {
    grid-template-columns: 1fr 1fr;
  }
  .booking-engine .be-form-row.be-buttons--full > p {
    grid-column-start: 1;
    grid-column-end: 3;
  }
}
.booking-engine .be-form-row.be-buttons--full > .be-form-group {
  width: 100%;
}
.booking-engine .be-form-row.be-buttons--full > .be-form-group > label {
  width: 100%;
  justify-content: center;
}
.booking-engine .be-text-input {
  font-family: 'Montserrat', sans-serif;
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--be-input-border);
  border-radius: 4px;
  background: #fff;
  color: #666666;
  font-size: 15px;
  line-height: 1.4;
}
.booking-engine .be-text-input::placeholder {
  color: #a6a6a6;
}
.booking-engine .be-text-input:not(.be-validation-error):focus {
  outline: none;
  border-color: #84a750;
  box-shadow: 0 0 0 3px rgba(132, 167, 80, 0.18);
}
.booking-engine .be-phone-row {
  display: flex;
  align-items: stretch;
  margin: 0;
  column-gap: 8px;
  /* Country code select */
  /* Local number input */
  /* Error state: applied to the wrapper div by TS via be-validation-error */
}
.booking-engine .be-phone-row select {
  flex: 0 0 auto;
  width: auto;
  min-width: 90px;
  padding: 12px 8px 12px 12px;
  border-radius: 4px;
  background: transparent;
  color: #666666;
  font-size: 15px;
  line-height: 1.4;
  font-family: 'Montserrat', sans-serif;
  appearance: auto;
  cursor: pointer;
  outline: none;
}
.booking-engine .be-phone-row input {
  flex: 1 1 0;
  width: 100%;
  padding: 12px 14px;
  border-radius: 4px;
  background: transparent;
  color: #666666;
  font-size: 15px;
  line-height: 1.4;
  font-family: 'Montserrat', sans-serif;
  outline: none;
}
.booking-engine .be-phone-row input::placeholder {
  color: #a6a6a6;
}
.booking-engine .be-phone-row.be-validation-error select,
.booking-engine .be-phone-row.be-validation-error input {
  border: 2px solid #dc3545;
  background: #fffafb;
  animation: shake 0.3s ease-in-out;
}
.booking-engine .be-error {
  margin: 8px 0;
  padding: 10px 12px;
  border: 1px solid #f5c2c7;
  border-radius: 4px;
  background: #f8dfe1;
  /* pale red */
  color: #842029;
  /* dark red text */
  font-size: 14px;
}
.booking-engine .be-error a {
  color: inherit;
  text-decoration: underline;
  text-underline-position: under;
}
.booking-engine .be-radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.booking-engine .be-form-group:has(> label > input[type="radio"]) {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px;
}
.booking-engine .be-form-group label > input[type="radio"] {
  position: absolute;
  opacity: 0;
  inline-size: 0;
  block-size: 0;
  pointer-events: none;
}
.booking-engine .be-form-group label:has(> input[type="radio"]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  min-height: 36px;
  border: 1px solid var(--be-border);
  border-radius: 10px;
  background: #fff;
  color: #808080;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  user-select: none;
  transition: background-color 120ms ease, color 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
}
.booking-engine .be-form-group label:has( > input[type="radio"]:not(:checked)):hover {
  background: #f8faf6;
  border-color: rgba(132, 167, 80, 0.7);
}
.booking-engine .be-form-group label:has(> input[type="radio"]:checked) {
  background: #f3f8ef;
  border-color: #84a750;
  color: #2f3a1e;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.booking-engine .be-form-group label:has(> input[type="radio"]:checked):hover {
  border-color: #6e8b43;
}
.booking-engine .be-form-group label:has(> input[type="radio"]:focus-visible) {
  outline: 2px solid rgba(132, 167, 80, 0.5);
  outline-offset: 2px;
}
.booking-engine .be-form-group label:has(> input[type="radio"][disabled]) {
  opacity: 0.6;
  cursor: not-allowed;
}
.booking-engine .checkBoxArea {
  list-style: none;
  margin: 8px 0 12px;
  padding: 0;
  display: grid;
  gap: 10px;
}
.booking-engine .checkboxWrapper {
  display: flex;
  /* checkbox on the left, explainer to the right */
  align-items: flex-start;
  gap: 10px;
  color: #666666;
}
.booking-engine .checkboxWrapper input[type="checkbox"] {
  inline-size: 18px;
  block-size: 18px;
  margin: 0;
  accent-color: #84a750;
  /* theme the native checkbox */
}
.booking-engine .checkboxWrapper input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(132, 167, 80, 0.5);
  outline-offset: 2px;
}
.booking-engine .checkboxWrapper label {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
}
.booking-engine .checkboxWrapper .labelContent {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
}
.booking-engine .checkboxWrapper a {
  text-decoration: underline;
  text-underline-position: under;
  color: inherit;
}
.booking-engine .be-rooms {
  display: grid;
  gap: 16px;
  margin-bottom: 14px;
}
.booking-engine .be-room {
  /* Card style to match .be-card visuals */
  background: #fff;
  padding: 14px 16px;
}
.booking-engine .be-room:not(:last-of-type) {
  border-bottom: 1px solid var(--be-border);
}
@media (max-width: 640px) {
  .booking-engine .be-room {
    padding: 14px 0;
  }
}
.booking-engine .be-room .be-room-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}
.booking-engine .be-room .be-room-header .be-room-title {
  /* Compact pill-style title for clearer grouping */
  font-family: 'Montserrat', sans-serif;
  background: #e7e7e7;
  color: #5d5d5d;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
}
.booking-engine .be-room .be-guest-in-room {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  /* Cap at three columns on wider screens to avoid over-dense layouts */
}
.booking-engine .be-room .be-guest-in-room .be-form-group {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media (max-width: 640px) {
  .booking-engine .be-room .be-guest-in-room {
    grid-template-columns: 1fr;
    margin-bottom: 12px;
  }
  .booking-engine .be-room .be-guest-in-room .be-form-group {
    margin-bottom: 0;
  }
}
.booking-engine .be-bed-type-picker .be-bed-type-options {
  display: flex;
  gap: 12px;
}
.booking-engine .be-bed-type-picker .be-bed-type-option {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 16px 12px;
  border: 2px solid var(--be-border);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  user-select: none;
  text-align: center;
  transition: background-color 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
}
.booking-engine .be-bed-type-picker .be-bed-type-option .be-bed-type-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666666;
  width: 64px;
  height: 64px;
}
.booking-engine .be-bed-type-picker .be-bed-type-option .be-bed-type-icon svg {
  width: 100%;
  height: 100%;
}
.booking-engine .be-bed-type-picker .be-bed-type-option .be-bed-type-label {
  font-size: 15px;
  font-weight: 700;
  color: #4d4d4d;
}
.booking-engine .be-bed-type-picker .be-bed-type-option .be-bed-type-desc {
  font-size: 12px;
  font-weight: 400;
  color: #808080;
}
.booking-engine .be-bed-type-picker .be-bed-type-option:has(input[type="radio"]:checked) {
  background: #f3f8ef;
  border-color: #84a750;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
.booking-engine .be-bed-type-picker .be-bed-type-option:has(input[type="radio"]:checked) .be-bed-type-icon {
  color: #84a750;
}
.booking-engine .be-bed-type-picker .be-bed-type-option:has(input[type="radio"]:checked) .be-bed-type-label {
  color: #69853f;
}
.booking-engine .be-bed-type-picker .be-bed-type-option:has(input[type="radio"]:checked) .be-bed-type-desc {
  color: #84a750;
}
.booking-engine .be-bed-type-picker .be-bed-type-option:has(input[type="radio"]:focus-visible) {
  outline: 2px solid rgba(132, 167, 80, 0.5);
  outline-offset: 2px;
}
@media (max-width: 640px) {
  .booking-engine .be-bed-type-picker .be-bed-type-options {
    gap: 8px;
  }
  .booking-engine .be-bed-type-picker .be-bed-type-option {
    padding: 12px 8px;
  }
}
.booking-engine .be-select-inline {
  /* Alias for selects used inline */
  font-family: 'Montserrat', sans-serif;
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--be-input-border);
  border-radius: 4px;
  background: #fff;
  color: #666666;
  font-size: 15px;
  line-height: 1.4;
}
.booking-engine .be-select-inline::placeholder {
  color: #a6a6a6;
}
.booking-engine .be-select-inline:not(.be-validation-error):focus {
  outline: none;
  border-color: #84a750;
  box-shadow: 0 0 0 3px rgba(132, 167, 80, 0.18);
}
.booking-engine .be-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 12px;
  font-weight: 600;
  font-size: 15px;
  border: 1px solid var(--be-border);
  transition: background-color 120ms ease, color 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
}
.booking-engine .be-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.booking-engine .be-btn:focus-visible {
  outline: 2px solid rgba(132, 167, 80, 0.6);
  outline-offset: 2px;
}
.booking-engine .be-btn--primary {
  background: #84a750;
  color: #fff;
  border-color: #769648;
}
.booking-engine .be-btn--primary:hover {
  background: #769648;
  border-color: #6e8b43;
}
.booking-engine .be-btn--secondary {
  background: #fff;
  color: #4d4d4d;
  border-color: var(--be-border);
}
.booking-engine .be-btn--secondary:hover {
  background: #ffffff;
  border-color: #d0d0d0;
}
.booking-engine .be-mobile-sticky {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  transform: translateY(110%);
  transition: transform 220ms ease-in-out, box-shadow 220ms ease-in-out;
  background: #fff;
  border-top: 1px solid var(--be-border);
  box-shadow: 0 -4px 10px rgba(0, 0, 0, 0.1);
}
@media (min-width: 981px) {
  .booking-engine .be-mobile-sticky {
    display: none;
    /* desktop: hidden */
  }
}
.booking-engine .be-mobile-sticky.is-visible {
  transform: translateY(0%);
}
.booking-engine .be-mobile-sticky-inner {
  max-width: 990px;
  margin: 0 auto;
  padding: 16px;
}
.booking-engine .be-mobile-sticky-head {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 3px;
}
.booking-engine .be-mobile-sticky-title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 16px;
  color: #4d4d4d;
  font-weight: 600;
}
.booking-engine .be-mobile-sticky-link {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  color: #666666;
  text-decoration: underline;
  text-underline-position: under;
}
.booking-engine .be-mobile-sticky.is-collapsed .be-mobile-sticky-link {
  display: none;
}
.booking-engine .be-mobile-sticky-toprow {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: space-between;
  /* title left, toggle right */
}
.booking-engine .be-mobile-sticky-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-inline-size: 44px;
  /* touch target */
  min-block-size: 44px;
  /* touch target */
  padding: 0 8px;
  border: none;
  background: transparent;
  cursor: pointer;
  color: #666666;
  transition: color 120ms ease;
}
.booking-engine .be-mobile-sticky-toggle:hover {
  color: #4d4d4d;
}
.booking-engine .be-mobile-sticky-toggle:focus-visible {
  outline: 2px solid rgba(132, 167, 80, 0.5);
  outline-offset: 2px;
  border-radius: 8px;
}
.booking-engine .be-mobile-sticky-toggle-icon {
  font-size: 20px;
  line-height: 1;
  font-weight: 700;
  display: inline-block;
  min-inline-size: 16px;
  /* keep layout stable between + and — */
  text-align: center;
}
.booking-engine #be-mobile-sticky-content {
  /* Contain the motion */
  overflow: hidden;
  /* Use a generous max-height to support content growth; adjust if needed */
  max-height: 240px;
  /* Slide from slightly below when showing/hiding */
  transform: translateY(0);
  /* Re-declare margin so it animates with this rule set */
  margin-top: 6px;
  /* Smoother easing and duration */
  transition: max-height 300ms cubic-bezier(0.22, 0.61, 0.36, 1), transform 300ms cubic-bezier(0.22, 0.61, 0.36, 1), margin-top 300ms cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: transform, max-height, margin-top;
}
.booking-engine .be-mobile-sticky.is-collapsed #be-mobile-sticky-content {
  max-height: 0;
  /* Small translate reduces perceived jerk vs. 100% */
  transform: translateY(12px);
  /* tighten up spacing while collapsed */
  margin-top: 0;
  visibility: hidden;
  /* avoid focus while collapsed */
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  .booking-engine #be-mobile-sticky-content {
    transition: none;
    transform: none;
  }
  .booking-engine .be-mobile-sticky.is-collapsed #be-mobile-sticky-content {
    transform: none;
  }
}
.booking-engine .be-mobile-sticky-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  align-items: center;
  margin-top: 6px;
}
.booking-engine .be-mobile-sticky-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: #4d4d4d;
  margin-bottom: 2px;
}
.booking-engine .be-mobile-sticky-value {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 16px;
  color: #4d4d4d;
}
.booking-engine {
  /* For input, textarea, and select fields, adjust padding */
  /* For checkbox wrapper, keep the border but lighter background */
}
.booking-engine .be-validation-error {
  border: 2px solid #dc3545;
  background: #fffafb;
  padding: 12px;
  border-radius: 4px;
  animation: shake 0.3s ease-in-out;
}
.booking-engine input.be-validation-error,
.booking-engine textarea.be-validation-error,
.booking-engine select.be-validation-error {
  padding: 8px 12px;
}
.booking-engine .checkboxWrapper.be-validation-error {
  background: #fffafb;
  border: 2px solid #dc3545;
  padding: 12px;
  border-radius: 4px;
}
@keyframes shake {
  0%,
  100% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-5px);
  }
  75% {
    transform: translateX(5px);
  }
}
a.noButtonCTA:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  margin-left: 0.5em;
}
h5.noButtonCTA {
  text-transform: none;
}
a.CTA,
span.CTA {
  text-transform: uppercase;
  font-weight: bold;
}
a.CTA:after,
span.CTA:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  margin-left: 0.5em;
}
.button {
  display: block;
  flex-grow: 0;
  float: none;
  margin: 24px auto;
  padding: 24px;
  max-width: 250px;
  text-align: center;
  color: #ffffff;
  background-color: #84a750;
  font-weight: bold;
  text-transform: uppercase;
}
p + .button {
  margin: 48px auto;
}
.button.strongCallToAction,
.layeredContent .button.strongCallToAction {
  background-color: #cf2b04;
  box-shadow: none;
}
@media (max-width: 600px) {
  .button {
    max-width: 95%;
  }
}
/* PURPOSE: Styles for all content in columns - create 2-, 3- and 4-column layouts */
.columns {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
}
.fold > div .columns:last-child {
  margin-bottom: 0;
}
.fold > div .columns:only-child {
  margin: 0;
}
.columns > * {
  display: none;
}
.columns > div,
.columns > a {
  display: block;
}
.columns > div:nth-child(n),
.columns > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.columns > div:last-child:nth-child(2),
.columns > a:last-child:nth-child(2),
.columns > div:first-child:nth-last-child(2),
.columns > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 800px) and (min-width: 650px) {
  .columns {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .columns {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 650px) {
  .columns {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns > div,
.internetExplorer .columns > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns > div:nth-child(1),
.internetExplorer .columns > a:nth-child(1),
.internetExplorer .columns > div:nth-child(2),
.internetExplorer .columns > a:nth-child(2),
.internetExplorer .columns > div:nth-child(3),
.internetExplorer .columns > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns > div *,
.internetExplorer .columns > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .columns > div:nth-child(n),
  .internetExplorer .columns > a:nth-child(n) {
    width: 100%;
  }
}
.columns.fitWithThreeColumnGrid {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
  grid-template-columns: auto 33.33333333%;
}
.fold > div .columns.fitWithThreeColumnGrid:last-child {
  margin-bottom: 0;
}
.fold > div .columns.fitWithThreeColumnGrid:only-child {
  margin: 0;
}
.columns.fitWithThreeColumnGrid > * {
  display: none;
}
.columns.fitWithThreeColumnGrid > div,
.columns.fitWithThreeColumnGrid > a {
  display: block;
}
.columns.fitWithThreeColumnGrid > div:nth-child(n),
.columns.fitWithThreeColumnGrid > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .columns.fitWithThreeColumnGrid {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .columns.fitWithThreeColumnGrid {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 650px) {
  .columns.fitWithThreeColumnGrid {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns.fitWithThreeColumnGrid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.fitWithThreeColumnGrid > div,
.internetExplorer .columns.fitWithThreeColumnGrid > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.fitWithThreeColumnGrid > div:nth-child(1),
.internetExplorer .columns.fitWithThreeColumnGrid > a:nth-child(1),
.internetExplorer .columns.fitWithThreeColumnGrid > div:nth-child(2),
.internetExplorer .columns.fitWithThreeColumnGrid > a:nth-child(2),
.internetExplorer .columns.fitWithThreeColumnGrid > div:nth-child(3),
.internetExplorer .columns.fitWithThreeColumnGrid > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.fitWithThreeColumnGrid > div *,
.internetExplorer .columns.fitWithThreeColumnGrid > a * {
  max-width: 100%;
}
.internetExplorer .columns.fitWithThreeColumnGrid > div:nth-child(even),
.internetExplorer .columns.fitWithThreeColumnGrid > a:nth-child(even) {
  width: 33.33333333%;
}
.internetExplorer .columns.fitWithThreeColumnGrid > div:nth-child(odd),
.internetExplorer .columns.fitWithThreeColumnGrid > a:nth-child(odd) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.fitWithThreeColumnGrid > div:nth-child(n),
  .internetExplorer .columns.fitWithThreeColumnGrid > a:nth-child(n) {
    width: 100%;
  }
}
.columns.fitWithThreeColumnGrid.lowPriorityFirst {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
  grid-template-columns: auto 33.33333333%;
  grid-template-columns: 33.33333333% auto;
}
.fold > div .columns.fitWithThreeColumnGrid.lowPriorityFirst:last-child {
  margin-bottom: 0;
}
.fold > div .columns.fitWithThreeColumnGrid.lowPriorityFirst:only-child {
  margin: 0;
}
.columns.fitWithThreeColumnGrid.lowPriorityFirst > * {
  display: none;
}
.columns.fitWithThreeColumnGrid.lowPriorityFirst > div,
.columns.fitWithThreeColumnGrid.lowPriorityFirst > a {
  display: block;
}
.columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(n),
.columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .columns.fitWithThreeColumnGrid.lowPriorityFirst {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .columns.fitWithThreeColumnGrid.lowPriorityFirst {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 650px) {
  .columns.fitWithThreeColumnGrid.lowPriorityFirst {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div,
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(1),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(1),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(2),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(2),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(3),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div *,
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a * {
  max-width: 100%;
}
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(odd),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(odd) {
  width: 33.33333333%;
}
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(even),
.internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(even) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > div:nth-child(n),
  .internetExplorer .columns.fitWithThreeColumnGrid.lowPriorityFirst > a:nth-child(n) {
    width: 100%;
  }
}
.columns.condensedContent,
.columns.unbreakableSequence {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  max-width: 100%;
}
.fold > div .columns.condensedContent:last-child,
.fold > div .columns.unbreakableSequence:last-child {
  margin-bottom: 0;
}
.fold > div .columns.condensedContent:only-child,
.fold > div .columns.unbreakableSequence:only-child {
  margin: 0;
}
.columns.condensedContent > *,
.columns.unbreakableSequence > * {
  display: none;
}
.columns.condensedContent > div,
.columns.unbreakableSequence > div,
.columns.condensedContent > a,
.columns.unbreakableSequence > a {
  display: block;
}
.columns.condensedContent > div:nth-child(n),
.columns.unbreakableSequence > div:nth-child(n),
.columns.condensedContent > a:nth-child(n),
.columns.unbreakableSequence > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.columns.condensedContent > div:last-child:nth-child(2),
.columns.unbreakableSequence > div:last-child:nth-child(2),
.columns.condensedContent > a:last-child:nth-child(2),
.columns.unbreakableSequence > a:last-child:nth-child(2),
.columns.condensedContent > div:first-child:nth-last-child(2),
.columns.unbreakableSequence > div:first-child:nth-last-child(2),
.columns.condensedContent > a:first-child:nth-last-child(2),
.columns.unbreakableSequence > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
.columns.condensedContent > div,
.columns.unbreakableSequence > div,
.columns.condensedContent > a,
.columns.unbreakableSequence > a {
  flex: 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .columns.condensedContent,
  .columns.unbreakableSequence {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .columns.condensedContent,
  .columns.unbreakableSequence {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
.internetExplorer .columns.condensedContent,
.internetExplorer .columns.unbreakableSequence {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.condensedContent > div,
.internetExplorer .columns.unbreakableSequence > div,
.internetExplorer .columns.condensedContent > a,
.internetExplorer .columns.unbreakableSequence > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.condensedContent > div:nth-child(1),
.internetExplorer .columns.unbreakableSequence > div:nth-child(1),
.internetExplorer .columns.condensedContent > a:nth-child(1),
.internetExplorer .columns.unbreakableSequence > a:nth-child(1),
.internetExplorer .columns.condensedContent > div:nth-child(2),
.internetExplorer .columns.unbreakableSequence > div:nth-child(2),
.internetExplorer .columns.condensedContent > a:nth-child(2),
.internetExplorer .columns.unbreakableSequence > a:nth-child(2),
.internetExplorer .columns.condensedContent > div:nth-child(3),
.internetExplorer .columns.unbreakableSequence > div:nth-child(3),
.internetExplorer .columns.condensedContent > a:nth-child(3),
.internetExplorer .columns.unbreakableSequence > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.condensedContent > div *,
.internetExplorer .columns.unbreakableSequence > div *,
.internetExplorer .columns.condensedContent > a *,
.internetExplorer .columns.unbreakableSequence > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.condensedContent > div:nth-child(n),
  .internetExplorer .columns.unbreakableSequence > div:nth-child(n),
  .internetExplorer .columns.condensedContent > a:nth-child(n),
  .internetExplorer .columns.unbreakableSequence > a:nth-child(n) {
    width: 100%;
  }
}
.columns.multiplesOfThree {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .columns.multiplesOfThree:last-child {
  margin-bottom: 0;
}
.fold > div .columns.multiplesOfThree:only-child {
  margin: 0;
}
.columns.multiplesOfThree > * {
  display: none;
}
.columns.multiplesOfThree > div,
.columns.multiplesOfThree > a {
  display: block;
}
.columns.multiplesOfThree > div:nth-child(n),
.columns.multiplesOfThree > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .columns.multiplesOfThree {
    grid-gap: 12px;
  }
}
@media (max-width: 650px) {
  .columns.multiplesOfThree {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns.multiplesOfThree {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.multiplesOfThree > div,
.internetExplorer .columns.multiplesOfThree > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.multiplesOfThree > div:nth-child(1),
.internetExplorer .columns.multiplesOfThree > a:nth-child(1),
.internetExplorer .columns.multiplesOfThree > div:nth-child(2),
.internetExplorer .columns.multiplesOfThree > a:nth-child(2),
.internetExplorer .columns.multiplesOfThree > div:nth-child(3),
.internetExplorer .columns.multiplesOfThree > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.multiplesOfThree > div *,
.internetExplorer .columns.multiplesOfThree > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.multiplesOfThree > div:nth-child(n),
  .internetExplorer .columns.multiplesOfThree > a:nth-child(n) {
    width: 100%;
  }
}
.columns.multiplesOfTwo {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
}
.fold > div .columns.multiplesOfTwo:last-child {
  margin-bottom: 0;
}
.fold > div .columns.multiplesOfTwo:only-child {
  margin: 0;
}
.columns.multiplesOfTwo > * {
  display: none;
}
.columns.multiplesOfTwo > div,
.columns.multiplesOfTwo > a {
  display: block;
}
.columns.multiplesOfTwo > div:nth-child(n),
.columns.multiplesOfTwo > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .columns.multiplesOfTwo {
    grid-gap: 12px;
  }
}
@media (max-width: 650px) {
  .columns.multiplesOfTwo {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns.multiplesOfTwo {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.multiplesOfTwo > div,
.internetExplorer .columns.multiplesOfTwo > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.multiplesOfTwo > div:nth-child(1),
.internetExplorer .columns.multiplesOfTwo > a:nth-child(1),
.internetExplorer .columns.multiplesOfTwo > div:nth-child(2),
.internetExplorer .columns.multiplesOfTwo > a:nth-child(2),
.internetExplorer .columns.multiplesOfTwo > div:nth-child(3),
.internetExplorer .columns.multiplesOfTwo > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.multiplesOfTwo > div *,
.internetExplorer .columns.multiplesOfTwo > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.multiplesOfTwo > div:nth-child(n),
  .internetExplorer .columns.multiplesOfTwo > a:nth-child(n) {
    width: 100%;
  }
}
@media (max-width: 650px) {
  .columns.multiplesOfTwo.inverseOnMobiles {
    display: flex;
    flex-direction: column-reverse;
  }
}
.columns > .distinctiveContent,
.fold .columns > .distinctiveContent {
  margin: 0;
}
.columns.contactInfoBoxes > div {
  padding: 24px;
  background: #F9FAFB;
  margin: 0;
  border-top: 3px solid #84a750;
}
.columns.listOfSix {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .columns.listOfSix:last-child {
  margin-bottom: 0;
}
.fold > div .columns.listOfSix:only-child {
  margin: 0;
}
.columns.listOfSix > * {
  display: none;
}
.columns.listOfSix > div,
.columns.listOfSix > a {
  display: block;
}
.columns.listOfSix > div:nth-child(n),
.columns.listOfSix > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 500px) {
  .columns.listOfSix {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .columns.listOfSix {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 500px) {
  .columns.listOfSix {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns.listOfSix {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.listOfSix > div,
.internetExplorer .columns.listOfSix > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.listOfSix > div:nth-child(1),
.internetExplorer .columns.listOfSix > a:nth-child(1),
.internetExplorer .columns.listOfSix > div:nth-child(2),
.internetExplorer .columns.listOfSix > a:nth-child(2),
.internetExplorer .columns.listOfSix > div:nth-child(3),
.internetExplorer .columns.listOfSix > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.listOfSix > div *,
.internetExplorer .columns.listOfSix > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.listOfSix > div:nth-child(n),
  .internetExplorer .columns.listOfSix > a:nth-child(n) {
    width: 100%;
  }
}
.columns.imageStrips > div img {
  max-height: 100px;
  min-width: 100%;
}
body > .columns.layeredContentGrid {
  margin: 0;
}
body > .columns.layeredContentGrid > div {
  margin-bottom: 0;
}
body > .columns.layeredContentGrid > div .foregroundLayer * {
  text-align: center;
}
.columns.detailedComparisonOfSimilarContent > div:before {
  display: block;
  content: "";
  height: 0;
  max-width: 80%;
  margin: 0 0 0.85em;
  border-bottom: 1px solid #769648;
}
@media (max-width: 650px) {
  .columns.detailedComparisonOfSimilarContent > div:before {
    max-width: 75%;
    margin-left: auto;
    margin-right: auto;
  }
}
.columns .callToReadRightColumn:nth-child(n) {
  margin: 1em 0;
  padding: 0;
  overflow: visible;
}
.columns .callToReadRightColumn:nth-child(n) p {
  font-family: 'Shadows Into Light Two';
  text-align: right;
  display: inline-block;
  float: right;
  width: auto;
  font-size: 1.3em;
}
.columns .callToReadRightColumn:nth-child(n) p,
.columns .callToReadRightColumn:nth-child(n) p:before {
  padding: 0.2em 0;
  line-height: 1.2em;
}
.columns .callToReadRightColumn:nth-child(n):before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f356";
  float: right;
  font-weight: 400;
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5em;
}
@media (max-width: 1000px) {
  .columns .callToReadRightColumn:nth-child(n) {
    display: none;
  }
}
.columns .callToReadLeftColumn:nth-child(n) {
  margin: 1em 0;
  padding: 0;
  overflow: visible;
}
.columns .callToReadLeftColumn:nth-child(n) p {
  font-family: 'Shadows Into Light Two';
  text-align: right;
  display: inline-block;
  float: right;
  width: auto;
  font-size: 1.3em;
}
.columns .callToReadLeftColumn:nth-child(n) p,
.columns .callToReadLeftColumn:nth-child(n) p:before {
  padding: 0.2em 0;
  line-height: 1.2em;
}
.columns .callToReadLeftColumn:nth-child(n):before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f356";
  float: right;
  font-weight: 400;
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5em;
}
@media (max-width: 1000px) {
  .columns .callToReadLeftColumn:nth-child(n) {
    display: none;
  }
}
.columns .callToReadLeftColumn:nth-child(n) p {
  float: left;
}
.columns .callToReadLeftColumn:nth-child(n):after {
  -moz-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  filter: FlipH;
  -ms-filter: "FlipH";
  float: left;
  margin: 5px auto -60px;
}
.credibilityIndicators {
  padding-top: 24px;
  padding-bottom: 24px;
}
.credibilityIndicators > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .credibilityIndicators > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.credibilityIndicators > div:not(:last-child) {
  margin-bottom: 24px;
}
.credibilityIndicators > div > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 0;
  justify-content: space-around;
}
.fold > div .credibilityIndicators > div > div:last-child {
  margin-bottom: 0;
}
.fold > div .credibilityIndicators > div > div:only-child {
  margin: 0;
}
.credibilityIndicators > div > div > * {
  display: none;
}
.credibilityIndicators > div > div > div,
.credibilityIndicators > div > div > a {
  display: block;
}
.credibilityIndicators > div > div > div:nth-child(n),
.credibilityIndicators > div > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.credibilityIndicators > div > div > div:last-child:nth-child(2),
.credibilityIndicators > div > div > a:last-child:nth-child(2),
.credibilityIndicators > div > div > div:first-child:nth-last-child(2),
.credibilityIndicators > div > div > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 800px) and (min-width: 650px) {
  .credibilityIndicators > div > div {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .credibilityIndicators > div > div {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 650px) {
  .credibilityIndicators > div > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .credibilityIndicators > div > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .credibilityIndicators > div > div > div,
.internetExplorer .credibilityIndicators > div > div > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .credibilityIndicators > div > div > div:nth-child(1),
.internetExplorer .credibilityIndicators > div > div > a:nth-child(1),
.internetExplorer .credibilityIndicators > div > div > div:nth-child(2),
.internetExplorer .credibilityIndicators > div > div > a:nth-child(2),
.internetExplorer .credibilityIndicators > div > div > div:nth-child(3),
.internetExplorer .credibilityIndicators > div > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .credibilityIndicators > div > div > div *,
.internetExplorer .credibilityIndicators > div > div > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .credibilityIndicators > div > div > div:nth-child(n),
  .internetExplorer .credibilityIndicators > div > div > a:nth-child(n) {
    width: 100%;
  }
}
.credibilityIndicators > div > div > div,
.credibilityIndicators > div > div > a,
.credibilityIndicators > div > div > li {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  margin: 0 2vw;
}
.credibilityIndicators > div > div > div:first-of-type,
.credibilityIndicators > div > div > a:first-of-type,
.credibilityIndicators > div > div > li:first-of-type {
  margin-left: 0;
}
.credibilityIndicators > div > div > div:last-of-type,
.credibilityIndicators > div > div > a:last-of-type,
.credibilityIndicators > div > div > li:last-of-type {
  margin-right: 0;
}
.credibilityIndicators > div > div img {
  filter: grayscale(100%);
}
.expandedBenefitsList {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  margin-top: 72px;
}
.fold > div .expandedBenefitsList:last-child {
  margin-bottom: 0;
}
.fold > div .expandedBenefitsList:only-child {
  margin: 0;
}
.expandedBenefitsList > * {
  display: none;
}
.expandedBenefitsList > div,
.expandedBenefitsList > a {
  display: block;
}
.expandedBenefitsList > div:nth-child(n),
.expandedBenefitsList > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 550px) {
  .expandedBenefitsList {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .expandedBenefitsList {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 550px) {
  .expandedBenefitsList {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .expandedBenefitsList {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .expandedBenefitsList > div,
.internetExplorer .expandedBenefitsList > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .expandedBenefitsList > div:nth-child(1),
.internetExplorer .expandedBenefitsList > a:nth-child(1),
.internetExplorer .expandedBenefitsList > div:nth-child(2),
.internetExplorer .expandedBenefitsList > a:nth-child(2),
.internetExplorer .expandedBenefitsList > div:nth-child(3),
.internetExplorer .expandedBenefitsList > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .expandedBenefitsList > div *,
.internetExplorer .expandedBenefitsList > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .expandedBenefitsList > div:nth-child(n),
  .internetExplorer .expandedBenefitsList > a:nth-child(n) {
    width: 100%;
  }
}
.expandedBenefitsList > div {
  background: #fff;
  padding: 24px 12px;
  position: relative;
  margin: 12px;
}
.expandedBenefitsList > div svg.svg-inline--fa,
.expandedBenefitsList > div i.fas,
.expandedBenefitsList > div i.fab,
.expandedBenefitsList > div i.fal,
.expandedBenefitsList > div i.far,
.expandedBenefitsList > div .fa-fw,
.expandedBenefitsList > div i.fa-fw {
  font-size: 26px;
  width: 50px;
  height: 50px;
  line-height: 1em;
  display: block;
  position: absolute;
  background: #cf2b04;
  color: #fff;
  border-radius: 50%;
  padding: 12px;
  border: 0 solid #fff;
  top: -25px;
  left: calc((100% - 50px) / 2);
  vertical-align: middle;
  text-align: center;
}
.expandedBenefitsList > div p {
  font-size: 0.96rem;
}
.expandedBenefitsList > div h4,
.expandedBenefitsList > div h5,
.expandedBenefitsList > div p {
  text-align: center;
  text-transform: none;
}
.contrastingOptions {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  margin-top: 72px;
}
.fold > div .contrastingOptions:last-child {
  margin-bottom: 0;
}
.fold > div .contrastingOptions:only-child {
  margin: 0;
}
.contrastingOptions > * {
  display: none;
}
.contrastingOptions > div,
.contrastingOptions > a {
  display: block;
}
.contrastingOptions > div:nth-child(n),
.contrastingOptions > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 550px) {
  .contrastingOptions {
    grid-gap: 12px;
  }
}
@media (max-width: 550px) {
  .contrastingOptions {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .contrastingOptions {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .contrastingOptions > div,
.internetExplorer .contrastingOptions > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .contrastingOptions > div:nth-child(1),
.internetExplorer .contrastingOptions > a:nth-child(1),
.internetExplorer .contrastingOptions > div:nth-child(2),
.internetExplorer .contrastingOptions > a:nth-child(2),
.internetExplorer .contrastingOptions > div:nth-child(3),
.internetExplorer .contrastingOptions > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .contrastingOptions > div *,
.internetExplorer .contrastingOptions > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .contrastingOptions > div:nth-child(n),
  .internetExplorer .contrastingOptions > a:nth-child(n) {
    width: 100%;
  }
}
.distinctiveContent .contrastingOptions > div {
  background: #fff;
}
.contrastingOptions > div {
  border: 1px solid #dddddd;
  border-radius: 7px;
  background: #F9FAFB;
  padding: 24px 12px;
  position: relative;
  margin: 12px;
}
.contrastingOptions > div svg.svg-inline--fa,
.contrastingOptions > div i.fas,
.contrastingOptions > div i.fab,
.contrastingOptions > div i.fal,
.contrastingOptions > div i.far,
.contrastingOptions > div .fa-fw,
.contrastingOptions > div i.fa-fw {
  font-size: 40px;
  width: 68px;
  height: 68px;
  line-height: 1em;
  display: block;
  position: absolute;
  background: #cf2b04;
  color: #fff;
  border-radius: 50%;
  padding: 14px;
  border: 0 solid #fff;
  top: -34px;
  left: calc((100% - 68px) / 2);
  vertical-align: middle;
  text-align: center;
}
.contrastingOptions > div p {
  font-size: 0.96rem;
}
.contrastingOptions > div h4,
.contrastingOptions > div h5 {
  text-align: center;
  margin-top: 24px;
}
.contrastingOptions.positiveEmphasis > div svg.svg-inline--fa,
.contrastingOptions.positiveEmphasis > div i.fas,
.contrastingOptions.positiveEmphasis > div i.fab,
.contrastingOptions.positiveEmphasis > div i.fal,
.contrastingOptions.positiveEmphasis > div i.far {
  background: green;
}
.topPlaces,
.serviceOptions {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 30px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
}
.fold > div .topPlaces:last-child,
.fold > div .serviceOptions:last-child {
  margin-bottom: 0;
}
.fold > div .topPlaces:only-child,
.fold > div .serviceOptions:only-child {
  margin: 0;
}
.topPlaces > *,
.serviceOptions > * {
  display: none;
}
.topPlaces > div,
.serviceOptions > div,
.topPlaces > a,
.serviceOptions > a {
  display: block;
}
.topPlaces > div:nth-child(n),
.serviceOptions > div:nth-child(n),
.topPlaces > a:nth-child(n),
.serviceOptions > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.topPlaces > div:last-child:nth-child(2),
.serviceOptions > div:last-child:nth-child(2),
.topPlaces > a:last-child:nth-child(2),
.serviceOptions > a:last-child:nth-child(2),
.topPlaces > div:first-child:nth-last-child(2),
.serviceOptions > div:first-child:nth-last-child(2),
.topPlaces > a:first-child:nth-last-child(2),
.serviceOptions > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 900px) and (min-width: 450px) {
  .topPlaces,
  .serviceOptions {
    grid-gap: 15px;
  }
}
@media (max-width: 900px) {
  .topPlaces,
  .serviceOptions {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 450px) {
  .topPlaces,
  .serviceOptions {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .topPlaces,
.internetExplorer .serviceOptions {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topPlaces > div,
.internetExplorer .serviceOptions > div,
.internetExplorer .topPlaces > a,
.internetExplorer .serviceOptions > a {
  width: 25%;
  display: block;
  padding-left: 15px;
  padding-right: 15px;
}
.internetExplorer .topPlaces > div:nth-child(1),
.internetExplorer .serviceOptions > div:nth-child(1),
.internetExplorer .topPlaces > a:nth-child(1),
.internetExplorer .serviceOptions > a:nth-child(1),
.internetExplorer .topPlaces > div:nth-child(2),
.internetExplorer .serviceOptions > div:nth-child(2),
.internetExplorer .topPlaces > a:nth-child(2),
.internetExplorer .serviceOptions > a:nth-child(2),
.internetExplorer .topPlaces > div:nth-child(3),
.internetExplorer .serviceOptions > div:nth-child(3),
.internetExplorer .topPlaces > a:nth-child(3),
.internetExplorer .serviceOptions > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topPlaces > div *,
.internetExplorer .serviceOptions > div *,
.internetExplorer .topPlaces > a *,
.internetExplorer .serviceOptions > a * {
  max-width: 100%;
}
@media (max-width: 900px) {
  .internetExplorer .topPlaces > div:nth-child(n),
  .internetExplorer .serviceOptions > div:nth-child(n),
  .internetExplorer .topPlaces > a:nth-child(n),
  .internetExplorer .serviceOptions > a:nth-child(n) {
    width: 100%;
  }
}
@media (max-width: 900px) {
  .topPlaces,
  .serviceOptions {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 750px) {
  .topPlaces,
  .serviceOptions {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 450px) {
  .topPlaces,
  .serviceOptions {
    grid-template-columns: 1fr;
  }
}
.topPlaces > div p,
.serviceOptions > div p {
  font-size: 0.96rem;
  line-height: 1.45em;
  margin-top: 0;
}
.topPlaces > div h1,
.serviceOptions > div h1,
.topPlaces > div h2,
.serviceOptions > div h2,
.topPlaces > div h3,
.serviceOptions > div h3 {
  visibility: hidden;
}
.topPlaces > div h4,
.serviceOptions > div h4,
.topPlaces > div h5,
.serviceOptions > div h5 {
  margin: 0;
}
.topPlaces > div img,
.serviceOptions > div img {
  max-height: 80px;
  width: 100%;
  margin-bottom: 5px;
}
.topPlaces > div h4,
.serviceOptions > div h4 {
  font-size: clamp(15px, 2.5vw, 17px);
}
.topPlaces > div *:last-child,
.serviceOptions > div *:last-child {
  margin-bottom: 12px;
}
.topPlaces > div p,
.serviceOptions > div p {
  font-size: 0.89rem;
}
.travelguide .destinationProfile,
.destinationProfile {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
}
.travelguide .destinationProfile > div,
.destinationProfile > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .travelguide .destinationProfile > div,
  .destinationProfile > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile > div:not(:last-child),
.destinationProfile > div:not(:last-child) {
  margin-bottom: 24px;
}
.travelguide .destinationProfile.wide > div,
.destinationProfile.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .travelguide .destinationProfile.wide > div,
  .destinationProfile.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile.narrow > div,
.destinationProfile.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .travelguide .destinationProfile.narrow > div,
  .destinationProfile.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile.tour-tinerary,
.destinationProfile.tour-tinerary,
.travelguide .destinationProfile.tour-accommodation,
.destinationProfile.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.travelguide .destinationProfile.tour-tinerary + .travelguide .destinationProfile.tour-tinerary,
.travelguide .destinationProfile.tour-tinerary + .destinationProfile.tour-tinerary,
.travelguide .destinationProfile.tour-tinerary + .travelguide .destinationProfile.tour-accommodation,
.travelguide .destinationProfile.tour-tinerary + .destinationProfile.tour-accommodation,
.destinationProfile.tour-tinerary + .travelguide .destinationProfile.tour-tinerary,
.destinationProfile.tour-tinerary + .destinationProfile.tour-tinerary,
.destinationProfile.tour-tinerary + .travelguide .destinationProfile.tour-accommodation,
.destinationProfile.tour-tinerary + .destinationProfile.tour-accommodation,
.travelguide .destinationProfile.tour-accommodation + .travelguide .destinationProfile.tour-tinerary,
.travelguide .destinationProfile.tour-accommodation + .destinationProfile.tour-tinerary,
.travelguide .destinationProfile.tour-accommodation + .travelguide .destinationProfile.tour-accommodation,
.travelguide .destinationProfile.tour-accommodation + .destinationProfile.tour-accommodation,
.destinationProfile.tour-accommodation + .travelguide .destinationProfile.tour-tinerary,
.destinationProfile.tour-accommodation + .destinationProfile.tour-tinerary,
.destinationProfile.tour-accommodation + .travelguide .destinationProfile.tour-accommodation,
.destinationProfile.tour-accommodation + .destinationProfile.tour-accommodation {
  border-top: none;
}
.travelguide .destinationProfile h1 svg.svg-inline--fa,
.destinationProfile h1 svg.svg-inline--fa,
.travelguide .destinationProfile h2 svg.svg-inline--fa,
.destinationProfile h2 svg.svg-inline--fa,
.travelguide .destinationProfile h3 svg.svg-inline--fa,
.destinationProfile h3 svg.svg-inline--fa,
.travelguide .destinationProfile h4 svg.svg-inline--fa,
.destinationProfile h4 svg.svg-inline--fa,
.travelguide .destinationProfile h5 svg.svg-inline--fa,
.destinationProfile h5 svg.svg-inline--fa,
.travelguide .destinationProfile p svg.svg-inline--fa,
.destinationProfile p svg.svg-inline--fa,
.travelguide .destinationProfile h1 i.fas,
.destinationProfile h1 i.fas,
.travelguide .destinationProfile h2 i.fas,
.destinationProfile h2 i.fas,
.travelguide .destinationProfile h3 i.fas,
.destinationProfile h3 i.fas,
.travelguide .destinationProfile h4 i.fas,
.destinationProfile h4 i.fas,
.travelguide .destinationProfile h5 i.fas,
.destinationProfile h5 i.fas,
.travelguide .destinationProfile p i.fas,
.destinationProfile p i.fas,
.travelguide .destinationProfile h1 i.fab,
.destinationProfile h1 i.fab,
.travelguide .destinationProfile h2 i.fab,
.destinationProfile h2 i.fab,
.travelguide .destinationProfile h3 i.fab,
.destinationProfile h3 i.fab,
.travelguide .destinationProfile h4 i.fab,
.destinationProfile h4 i.fab,
.travelguide .destinationProfile h5 i.fab,
.destinationProfile h5 i.fab,
.travelguide .destinationProfile p i.fab,
.destinationProfile p i.fab,
.travelguide .destinationProfile h1 i.fal,
.destinationProfile h1 i.fal,
.travelguide .destinationProfile h2 i.fal,
.destinationProfile h2 i.fal,
.travelguide .destinationProfile h3 i.fal,
.destinationProfile h3 i.fal,
.travelguide .destinationProfile h4 i.fal,
.destinationProfile h4 i.fal,
.travelguide .destinationProfile h5 i.fal,
.destinationProfile h5 i.fal,
.travelguide .destinationProfile p i.fal,
.destinationProfile p i.fal,
.travelguide .destinationProfile h1 i.far,
.destinationProfile h1 i.far,
.travelguide .destinationProfile h2 i.far,
.destinationProfile h2 i.far,
.travelguide .destinationProfile h3 i.far,
.destinationProfile h3 i.far,
.travelguide .destinationProfile h4 i.far,
.destinationProfile h4 i.far,
.travelguide .destinationProfile h5 i.far,
.destinationProfile h5 i.far,
.travelguide .destinationProfile p i.far,
.destinationProfile p i.far {
  font-size: inherit;
}
.travelguide .destinationProfile.startsDefinedNewSection > div:first-of-type:before,
.destinationProfile.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .travelguide .destinationProfile.startsDefinedNewSection > div:first-of-type:before,
  .destinationProfile.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.travelguide .destinationProfile.timeLine > div h2,
.destinationProfile.timeLine > div h2 {
  text-align: center;
}
.travelguide .destinationProfile.timeLine > div > div,
.destinationProfile.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.travelguide .destinationProfile.timeLine > div > div > div,
.destinationProfile.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .travelguide .destinationProfile.timeLine > div > div,
  .destinationProfile.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(6n+3),
  .destinationProfile.timeLine > div > div > div:nth-child(6n+3),
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(6n+4),
  .destinationProfile.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(1),
  .destinationProfile.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(2),
  .destinationProfile.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(3),
  .destinationProfile.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(4),
  .destinationProfile.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(5),
  .destinationProfile.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(6),
  .destinationProfile.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(7),
  .destinationProfile.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(8),
  .destinationProfile.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(9),
  .destinationProfile.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(10),
  .destinationProfile.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(11),
  .destinationProfile.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(12),
  .destinationProfile.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(13),
  .destinationProfile.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(14),
  .destinationProfile.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(15),
  .destinationProfile.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(16),
  .destinationProfile.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(17),
  .destinationProfile.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(18),
  .destinationProfile.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(19),
  .destinationProfile.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(20),
  .destinationProfile.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(21),
  .destinationProfile.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(22),
  .destinationProfile.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(23),
  .destinationProfile.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(24),
  .destinationProfile.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(25),
  .destinationProfile.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(26),
  .destinationProfile.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(27),
  .destinationProfile.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(28),
  .destinationProfile.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(29),
  .destinationProfile.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(30),
  .destinationProfile.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(31),
  .destinationProfile.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(32),
  .destinationProfile.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(33),
  .destinationProfile.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(34),
  .destinationProfile.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(35),
  .destinationProfile.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(36),
  .destinationProfile.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(37),
  .destinationProfile.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(38),
  .destinationProfile.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(39),
  .destinationProfile.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(40),
  .destinationProfile.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(41),
  .destinationProfile.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(42),
  .destinationProfile.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(43),
  .destinationProfile.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(44),
  .destinationProfile.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(45),
  .destinationProfile.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(46),
  .destinationProfile.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(47),
  .destinationProfile.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(48),
  .destinationProfile.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(49),
  .destinationProfile.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(50),
  .destinationProfile.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(51),
  .destinationProfile.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(52),
  .destinationProfile.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(53),
  .destinationProfile.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .travelguide .destinationProfile.timeLine > div > div > div:nth-child(54),
  .destinationProfile.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .travelguide .destinationProfile.timeLine > div > div > div,
  .destinationProfile.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(3n+2),
.destinationProfile.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(3n+2):before,
.destinationProfile.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(3n+2):after,
.destinationProfile.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(5):after,
.destinationProfile.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(8):after,
.destinationProfile.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(11):after,
.destinationProfile.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(14):after,
.destinationProfile.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(17):after,
.destinationProfile.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(20):after,
.destinationProfile.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(23):after,
.destinationProfile.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(26):after,
.destinationProfile.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(29):after,
.destinationProfile.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(32):after,
.destinationProfile.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(35):after,
.destinationProfile.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(38):after,
.destinationProfile.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(41):after,
.destinationProfile.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(44):after,
.destinationProfile.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(47):after,
.destinationProfile.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(50):after,
.destinationProfile.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.travelguide .destinationProfile.timeLine > div > div > div:nth-child(53):after,
.destinationProfile.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.travelguide .destinationProfile.timeLine > div > div div:nth-last-child(2):before,
.destinationProfile.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.travelguide .destinationProfile.timeLine > div > div p,
.destinationProfile.timeLine > div > div p {
  font-size: 0.9rem;
}
.travelguide .destinationProfile .svg-map,
.destinationProfile .svg-map {
  max-width: 600px;
  margin: auto;
}
.travelguide .destinationProfile > div,
.destinationProfile > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .travelguide .destinationProfile > div,
  .destinationProfile > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile > div:not(:last-child),
.destinationProfile > div:not(:last-child) {
  margin-bottom: 24px;
}
.travelguide .destinationProfile > div > a[rel^="lightbox"],
.destinationProfile > div > a[rel^="lightbox"],
.travelguide .destinationProfile > div > img,
.destinationProfile > div > img,
.travelguide .destinationProfile > div > .photoGallery,
.destinationProfile > div > .photoGallery,
.travelguide .destinationProfile > div:not(.photoGallery) > div[about^="/"],
.destinationProfile > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.travelguide .destinationProfile h2,
.destinationProfile h2,
.travelguide .destinationProfile h3,
.destinationProfile h3 {
  color: #676767;
}
.travelguide .destinationProfile > div,
.destinationProfile > div {
  position: relative;
}
.travelguide .destinationProfile h2,
.destinationProfile h2 {
  font-size: 32px;
  line-height: 35.2px;
  vertical-align: middle;
  display: inline-block;
}
.travelguide .destinationProfile h2 .destinationLabel,
.destinationProfile h2 .destinationLabel {
  margin-right: -47px;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel,
  .destinationProfile h2 .destinationLabel {
    margin-right: -57px;
  }
}
.travelguide .destinationProfile h2 .destinationLabel:before,
.destinationProfile h2 .destinationLabel:before,
.travelguide .destinationProfile h2 .destinationLabel:after,
.destinationProfile h2 .destinationLabel:after,
.travelguide .destinationProfile h2 .destinationLabel span,
.destinationProfile h2 .destinationLabel span {
  top: -4px;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel:before,
  .destinationProfile h2 .destinationLabel:before,
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after,
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span {
    top: -2px;
  }
}
.travelguide .destinationProfile h2 .destinationLabel:before,
.destinationProfile h2 .destinationLabel:before,
.travelguide .destinationProfile h2 .destinationLabel:after,
.destinationProfile h2 .destinationLabel:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid #F9FAFB;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  position: relative;
}
.travelguide .destinationProfile h2 .destinationLabel:before,
.destinationProfile h2 .destinationLabel:before {
  z-index: 1;
  background: #69853f;
  left: 0;
}
.travelguide .destinationProfile h2 .destinationLabel:after,
.destinationProfile h2 .destinationLabel:after {
  z-index: 2;
  background: #84a750;
  left: -90px;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after {
    left: -80px;
  }
}
.travelguide .destinationProfile h2 .destinationLabel span,
.destinationProfile h2 .destinationLabel span {
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid #F9FAFB;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  background: #9cba70;
  left: 10px;
  position: relative;
  z-index: 3;
}
.travelguide .destinationProfile h2 .destinationLabel span,
.destinationProfile h2 .destinationLabel span,
.travelguide .destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
.destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
.travelguide .destinationProfile h2 .destinationLabel span i.fas,
.destinationProfile h2 .destinationLabel span i.fas,
.travelguide .destinationProfile h2 .destinationLabel span i.fab,
.destinationProfile h2 .destinationLabel span i.fab,
.travelguide .destinationProfile h2 .destinationLabel span i.fal,
.destinationProfile h2 .destinationLabel span i.fal,
.travelguide .destinationProfile h2 .destinationLabel span i.far,
.destinationProfile h2 .destinationLabel span i.far {
  color: #F9FAFB;
  margin: 0;
}
.travelguide .destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
.destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
.travelguide .destinationProfile h2 .destinationLabel span i.fas,
.destinationProfile h2 .destinationLabel span i.fas,
.travelguide .destinationProfile h2 .destinationLabel span i.fab,
.destinationProfile h2 .destinationLabel span i.fab,
.travelguide .destinationProfile h2 .destinationLabel span i.fal,
.destinationProfile h2 .destinationLabel span i.fal,
.travelguide .destinationProfile h2 .destinationLabel span i.far,
.destinationProfile h2 .destinationLabel span i.far {
  display: block;
  justify-self: center;
  align-self: center;
  text-align: center;
  height: 60%;
  width: 60%;
  font-size: 25px;
  line-height: 60%;
  line-height: 25px;
  margin: 20%;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span {
    left: 4px;
  }
}
.intro .travelguide .destinationProfile h2,
.intro .destinationProfile h2 {
  text-align: center;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile h2,
  .destinationProfile h2 {
    font-size: 26px;
    line-height: 28.6px;
    vertical-align: middle;
    display: inline-block;
  }
  .travelguide .destinationProfile h2 .destinationLabel,
  .destinationProfile h2 .destinationLabel {
    margin-right: -27px;
  }
  .travelguide .destinationProfile h2 .destinationLabel:before,
  .destinationProfile h2 .destinationLabel:before,
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after,
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span {
    top: -4px;
  }
  .travelguide .destinationProfile h2 .destinationLabel:before,
  .destinationProfile h2 .destinationLabel:before,
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    line-height: 31px;
    text-align: center;
    border: 3px solid #F9FAFB;
    border-radius: 50%;
    width: 37px;
    height: 37px;
    font-size: 20px;
    position: relative;
  }
  .travelguide .destinationProfile h2 .destinationLabel:before,
  .destinationProfile h2 .destinationLabel:before {
    z-index: 1;
    background: #69853f;
    left: 0;
  }
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after {
    z-index: 2;
    background: #84a750;
    left: -66px;
  }
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span {
    display: inline-block;
    vertical-align: middle;
    line-height: 31px;
    text-align: center;
    border: 3px solid #F9FAFB;
    border-radius: 50%;
    width: 37px;
    height: 37px;
    font-size: 20px;
    background: #9cba70;
    left: 6px;
    position: relative;
    z-index: 3;
  }
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span,
  .travelguide .destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
  .destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
  .travelguide .destinationProfile h2 .destinationLabel span i.fas,
  .destinationProfile h2 .destinationLabel span i.fas,
  .travelguide .destinationProfile h2 .destinationLabel span i.fab,
  .destinationProfile h2 .destinationLabel span i.fab,
  .travelguide .destinationProfile h2 .destinationLabel span i.fal,
  .destinationProfile h2 .destinationLabel span i.fal,
  .travelguide .destinationProfile h2 .destinationLabel span i.far,
  .destinationProfile h2 .destinationLabel span i.far {
    color: #F9FAFB;
    margin: 0;
  }
  .travelguide .destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
  .destinationProfile h2 .destinationLabel span svg.svg-inline--fa,
  .travelguide .destinationProfile h2 .destinationLabel span i.fas,
  .destinationProfile h2 .destinationLabel span i.fas,
  .travelguide .destinationProfile h2 .destinationLabel span i.fab,
  .destinationProfile h2 .destinationLabel span i.fab,
  .travelguide .destinationProfile h2 .destinationLabel span i.fal,
  .destinationProfile h2 .destinationLabel span i.fal,
  .travelguide .destinationProfile h2 .destinationLabel span i.far,
  .destinationProfile h2 .destinationLabel span i.far {
    display: block;
    justify-self: center;
    align-self: center;
    text-align: center;
    height: 60%;
    width: 60%;
    font-size: 25px;
    line-height: 60%;
    line-height: 25px;
    margin: 20%;
  }
  .intro .travelguide .destinationProfile h2,
  .intro .destinationProfile h2 {
    text-align: center;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel,
  .destinationProfile h2 .destinationLabel {
    margin-right: -37px;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel:before,
  .destinationProfile h2 .destinationLabel:before,
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after,
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span {
    top: -2px;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel:after,
  .destinationProfile h2 .destinationLabel:after {
    left: -60px;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile h2 .destinationLabel span,
  .destinationProfile h2 .destinationLabel span {
    left: 0px;
  }
}
.travelguide .destinationProfile div.noteworthyDestinationBadges,
.destinationProfile div.noteworthyDestinationBadges {
  position: static;
  float: right;
  display: flex;
  flex-direction: row;
  max-width: 300px;
  justify-content: flex-end;
  margin: 0 0 12px 12px;
}
@media (min-width: 800px) {
  .travelguide .destinationProfile div.noteworthyDestinationBadges,
  .destinationProfile div.noteworthyDestinationBadges {
    position: absolute;
    top: 0;
    left: auto;
    right: 10px;
  }
}
.travelguide .destinationProfile div.noteworthyDestinationBadges > div,
.destinationProfile div.noteworthyDestinationBadges > div {
  width: 75px;
  margin-right: 5px;
}
.travelguide .destinationProfile div.noteworthyDestinationBadges > div:before,
.destinationProfile div.noteworthyDestinationBadges > div:before {
  background: white;
}
.travelguide .destinationProfile > div > div,
.destinationProfile > div > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 350px;
}
.fold > div .travelguide .destinationProfile > div > div:last-child,
.fold > div .destinationProfile > div > div:last-child {
  margin-bottom: 0;
}
.fold > div .travelguide .destinationProfile > div > div:only-child,
.fold > div .destinationProfile > div > div:only-child {
  margin: 0;
}
.travelguide .destinationProfile > div > div > *,
.destinationProfile > div > div > * {
  display: none;
}
.travelguide .destinationProfile > div > div > div,
.destinationProfile > div > div > div,
.travelguide .destinationProfile > div > div > a,
.destinationProfile > div > div > a {
  display: block;
}
.travelguide .destinationProfile > div > div > div:nth-child(n),
.destinationProfile > div > div > div:nth-child(n),
.travelguide .destinationProfile > div > div > a:nth-child(n),
.destinationProfile > div > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 800px) {
  .travelguide .destinationProfile > div > div,
  .destinationProfile > div > div {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .travelguide .destinationProfile > div > div,
  .destinationProfile > div > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .travelguide .destinationProfile > div > div,
.internetExplorer .destinationProfile > div > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .travelguide .destinationProfile > div > div > div,
.internetExplorer .destinationProfile > div > div > div,
.internetExplorer .travelguide .destinationProfile > div > div > a,
.internetExplorer .destinationProfile > div > div > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .travelguide .destinationProfile > div > div > div:nth-child(1),
.internetExplorer .destinationProfile > div > div > div:nth-child(1),
.internetExplorer .travelguide .destinationProfile > div > div > a:nth-child(1),
.internetExplorer .destinationProfile > div > div > a:nth-child(1),
.internetExplorer .travelguide .destinationProfile > div > div > div:nth-child(2),
.internetExplorer .destinationProfile > div > div > div:nth-child(2),
.internetExplorer .travelguide .destinationProfile > div > div > a:nth-child(2),
.internetExplorer .destinationProfile > div > div > a:nth-child(2),
.internetExplorer .travelguide .destinationProfile > div > div > div:nth-child(3),
.internetExplorer .destinationProfile > div > div > div:nth-child(3),
.internetExplorer .travelguide .destinationProfile > div > div > a:nth-child(3),
.internetExplorer .destinationProfile > div > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .travelguide .destinationProfile > div > div > div *,
.internetExplorer .destinationProfile > div > div > div *,
.internetExplorer .travelguide .destinationProfile > div > div > a *,
.internetExplorer .destinationProfile > div > div > a * {
  max-width: 100%;
}
.internetExplorer .travelguide .destinationProfile > div > div > div:nth-child(even),
.internetExplorer .destinationProfile > div > div > div:nth-child(even),
.internetExplorer .travelguide .destinationProfile > div > div > a:nth-child(even),
.internetExplorer .destinationProfile > div > div > a:nth-child(even) {
  width: 33.33333333%;
}
.internetExplorer .travelguide .destinationProfile > div > div > div:nth-child(odd),
.internetExplorer .destinationProfile > div > div > div:nth-child(odd),
.internetExplorer .travelguide .destinationProfile > div > div > a:nth-child(odd),
.internetExplorer .destinationProfile > div > div > a:nth-child(odd) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .travelguide .destinationProfile > div > div > div:nth-child(n),
  .internetExplorer .destinationProfile > div > div > div:nth-child(n),
  .internetExplorer .travelguide .destinationProfile > div > div > a:nth-child(n),
  .internetExplorer .destinationProfile > div > div > a:nth-child(n) {
    width: 100%;
  }
}
.travelguide .destinationProfile > div > div > div:first-of-type table,
.destinationProfile > div > div > div:first-of-type table {
  width: calc(100% - (2 * (90px / 4)));
  margin-left: auto;
  margin-right: auto;
}
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage,
.destinationProfile > div > div > div:first-of-type div.labelledImage {
  margin: 48px auto 24px auto;
  position: relative;
  width: calc(100% - (2 * 22.5px));
}
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel,
.destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel {
  text-align: center;
  line-height: 72px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  border: 9px solid #F9FAFB;
  background: #9cba70;
  color: #F9FAFB;
  font-size: 36px;
  font-weight: bold;
  position: absolute;
  top: -22.5px;
  left: -22.5px;
}
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
.destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
.destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
.destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
.destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
.travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.far,
.destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.far {
  display: block;
  justify-self: center;
  align-self: center;
  text-align: center;
  height: 50%;
  width: 50%;
  margin: 25%;
  color: #F9FAFB;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage,
  .destinationProfile > div > div > div:first-of-type div.labelledImage {
    margin: 48px auto 24px auto;
    position: relative;
    width: calc(100% - (2 * 18.75px));
  }
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel,
  .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel {
    text-align: center;
    line-height: 61px;
    width: 75px;
    height: 75px;
    border-radius: 50%;
    border: 7px solid #F9FAFB;
    background: #9cba70;
    color: #F9FAFB;
    font-size: 30px;
    font-weight: bold;
    position: absolute;
    top: -18.75px;
    left: -18.75px;
  }
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
  .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
  .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
  .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
  .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
  .travelguide .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.far,
  .destinationProfile > div > div > div:first-of-type div.labelledImage .destinationLabel i.far {
    display: block;
    justify-self: center;
    align-self: center;
    text-align: center;
    height: 50%;
    width: 50%;
    margin: 25%;
    color: #F9FAFB;
  }
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div,
.destinationProfile > div > div > div:nth-of-type(2) > div,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature {
  background: #fff;
  padding: 18px;
  border-radius: 7px;
  border: 1px solid #dddddd;
  background: white;
  margin-bottom: 24px;
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div > ul,
.destinationProfile > div > div > div:nth-of-type(2) > div > ul,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature > ul,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature > ul {
  margin: 0;
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div > ul > li > a,
.destinationProfile > div > div > div:nth-of-type(2) > div > ul > li > a,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a {
  font-size: 0.8rem;
  font-weight: bold;
  text-transform: uppercase;
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div > ul > li > a:before,
.destinationProfile > div > div > div:nth-of-type(2) > div > ul > li > a:before,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a:before,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a:before,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a:before,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f138";
  margin-right: 5px;
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div p,
.destinationProfile > div > div > div:nth-of-type(2) > div p,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours p,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours p,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature p,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature p {
  font-size: 0.9rem;
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div ul li a,
.destinationProfile > div > div > div:nth-of-type(2) > div ul li a,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature ul li a,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature ul li a {
  font-size: 1em;
  font-weight: normal;
  text-transform: none;
}
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > div ul li a:before,
.destinationProfile > div > div > div:nth-of-type(2) > div ul li a:before,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a:before,
.destinationProfile > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a:before,
.travelguide .destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature ul li a:before,
.destinationProfile > div > div > div:nth-of-type(2) > a.tourFeature ul li a:before {
  display: none;
}
.travelguide .destinationProfile.walking > div > div:first-of-type p:first-child:before,
.destinationProfile.walking > div > div:first-of-type p:first-child:before {
  display: block;
  content: "Recommended Walking Area";
  margin: 0;
  text-transform: uppercase;
  color: #4d4d4d;
  font-size: 15px;
}
.travelguide .destinationProfile.cycling > div > div:first-of-type p:first-child:before,
.destinationProfile.cycling > div > div:first-of-type p:first-child:before {
  display: block;
  content: "Recommended Family Cycling Route";
  margin: 0;
  text-transform: uppercase;
  color: #4d4d4d;
  font-size: 15px;
}
.travelguide .destinationProfile:nth-child(even) .peopleAsk,
.destinationProfile:nth-child(even) .peopleAsk {
  background: #fff;
}
.travelguide .destinationProfile:nth-child(odd),
.destinationProfile:nth-child(odd) {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: white;
}
.travelguide .destinationProfile:nth-child(odd) > div,
.destinationProfile:nth-child(odd) > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .travelguide .destinationProfile:nth-child(odd) > div,
  .destinationProfile:nth-child(odd) > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile:nth-child(odd) > div:not(:last-child),
.destinationProfile:nth-child(odd) > div:not(:last-child) {
  margin-bottom: 24px;
}
.travelguide .destinationProfile:nth-child(odd).wide > div,
.destinationProfile:nth-child(odd).wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .travelguide .destinationProfile:nth-child(odd).wide > div,
  .destinationProfile:nth-child(odd).wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile:nth-child(odd).narrow > div,
.destinationProfile:nth-child(odd).narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .travelguide .destinationProfile:nth-child(odd).narrow > div,
  .destinationProfile:nth-child(odd).narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile:nth-child(odd).tour-tinerary,
.destinationProfile:nth-child(odd).tour-tinerary,
.travelguide .destinationProfile:nth-child(odd).tour-accommodation,
.destinationProfile:nth-child(odd).tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.travelguide .destinationProfile:nth-child(odd).tour-tinerary + .travelguide .destinationProfile:nth-child(odd).tour-tinerary,
.travelguide .destinationProfile:nth-child(odd).tour-tinerary + .destinationProfile:nth-child(odd).tour-tinerary,
.travelguide .destinationProfile:nth-child(odd).tour-tinerary + .travelguide .destinationProfile:nth-child(odd).tour-accommodation,
.travelguide .destinationProfile:nth-child(odd).tour-tinerary + .destinationProfile:nth-child(odd).tour-accommodation,
.destinationProfile:nth-child(odd).tour-tinerary + .travelguide .destinationProfile:nth-child(odd).tour-tinerary,
.destinationProfile:nth-child(odd).tour-tinerary + .destinationProfile:nth-child(odd).tour-tinerary,
.destinationProfile:nth-child(odd).tour-tinerary + .travelguide .destinationProfile:nth-child(odd).tour-accommodation,
.destinationProfile:nth-child(odd).tour-tinerary + .destinationProfile:nth-child(odd).tour-accommodation,
.travelguide .destinationProfile:nth-child(odd).tour-accommodation + .travelguide .destinationProfile:nth-child(odd).tour-tinerary,
.travelguide .destinationProfile:nth-child(odd).tour-accommodation + .destinationProfile:nth-child(odd).tour-tinerary,
.travelguide .destinationProfile:nth-child(odd).tour-accommodation + .travelguide .destinationProfile:nth-child(odd).tour-accommodation,
.travelguide .destinationProfile:nth-child(odd).tour-accommodation + .destinationProfile:nth-child(odd).tour-accommodation,
.destinationProfile:nth-child(odd).tour-accommodation + .travelguide .destinationProfile:nth-child(odd).tour-tinerary,
.destinationProfile:nth-child(odd).tour-accommodation + .destinationProfile:nth-child(odd).tour-tinerary,
.destinationProfile:nth-child(odd).tour-accommodation + .travelguide .destinationProfile:nth-child(odd).tour-accommodation,
.destinationProfile:nth-child(odd).tour-accommodation + .destinationProfile:nth-child(odd).tour-accommodation {
  border-top: none;
}
.travelguide .destinationProfile:nth-child(odd) h1 svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h1 svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h2 svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h2 svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h3 svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h3 svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h4 svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h4 svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h5 svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h5 svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) p svg.svg-inline--fa,
.destinationProfile:nth-child(odd) p svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h1 i.fas,
.destinationProfile:nth-child(odd) h1 i.fas,
.travelguide .destinationProfile:nth-child(odd) h2 i.fas,
.destinationProfile:nth-child(odd) h2 i.fas,
.travelguide .destinationProfile:nth-child(odd) h3 i.fas,
.destinationProfile:nth-child(odd) h3 i.fas,
.travelguide .destinationProfile:nth-child(odd) h4 i.fas,
.destinationProfile:nth-child(odd) h4 i.fas,
.travelguide .destinationProfile:nth-child(odd) h5 i.fas,
.destinationProfile:nth-child(odd) h5 i.fas,
.travelguide .destinationProfile:nth-child(odd) p i.fas,
.destinationProfile:nth-child(odd) p i.fas,
.travelguide .destinationProfile:nth-child(odd) h1 i.fab,
.destinationProfile:nth-child(odd) h1 i.fab,
.travelguide .destinationProfile:nth-child(odd) h2 i.fab,
.destinationProfile:nth-child(odd) h2 i.fab,
.travelguide .destinationProfile:nth-child(odd) h3 i.fab,
.destinationProfile:nth-child(odd) h3 i.fab,
.travelguide .destinationProfile:nth-child(odd) h4 i.fab,
.destinationProfile:nth-child(odd) h4 i.fab,
.travelguide .destinationProfile:nth-child(odd) h5 i.fab,
.destinationProfile:nth-child(odd) h5 i.fab,
.travelguide .destinationProfile:nth-child(odd) p i.fab,
.destinationProfile:nth-child(odd) p i.fab,
.travelguide .destinationProfile:nth-child(odd) h1 i.fal,
.destinationProfile:nth-child(odd) h1 i.fal,
.travelguide .destinationProfile:nth-child(odd) h2 i.fal,
.destinationProfile:nth-child(odd) h2 i.fal,
.travelguide .destinationProfile:nth-child(odd) h3 i.fal,
.destinationProfile:nth-child(odd) h3 i.fal,
.travelguide .destinationProfile:nth-child(odd) h4 i.fal,
.destinationProfile:nth-child(odd) h4 i.fal,
.travelguide .destinationProfile:nth-child(odd) h5 i.fal,
.destinationProfile:nth-child(odd) h5 i.fal,
.travelguide .destinationProfile:nth-child(odd) p i.fal,
.destinationProfile:nth-child(odd) p i.fal,
.travelguide .destinationProfile:nth-child(odd) h1 i.far,
.destinationProfile:nth-child(odd) h1 i.far,
.travelguide .destinationProfile:nth-child(odd) h2 i.far,
.destinationProfile:nth-child(odd) h2 i.far,
.travelguide .destinationProfile:nth-child(odd) h3 i.far,
.destinationProfile:nth-child(odd) h3 i.far,
.travelguide .destinationProfile:nth-child(odd) h4 i.far,
.destinationProfile:nth-child(odd) h4 i.far,
.travelguide .destinationProfile:nth-child(odd) h5 i.far,
.destinationProfile:nth-child(odd) h5 i.far,
.travelguide .destinationProfile:nth-child(odd) p i.far,
.destinationProfile:nth-child(odd) p i.far {
  font-size: inherit;
}
.travelguide .destinationProfile:nth-child(odd).startsDefinedNewSection > div:first-of-type:before,
.destinationProfile:nth-child(odd).startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .travelguide .destinationProfile:nth-child(odd).startsDefinedNewSection > div:first-of-type:before,
  .destinationProfile:nth-child(odd).startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div h2,
.destinationProfile:nth-child(odd).timeLine > div h2 {
  text-align: center;
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div,
.destinationProfile:nth-child(odd).timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div,
.destinationProfile:nth-child(odd).timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div,
  .destinationProfile:nth-child(odd).timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(6n+3),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(6n+3),
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(6n+4),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(1),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(2),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(4),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(5),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(6),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(7),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(8),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(9),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(10),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(11),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(12),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(13),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(14),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(15),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(16),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(17),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(18),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(19),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(20),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(21),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(22),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(23),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(24),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(25),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(26),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(27),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(28),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(29),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(30),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(31),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(32),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(33),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(34),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(35),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(36),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(37),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(38),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(39),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(40),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(41),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(42),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(43),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(44),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(45),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(46),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(47),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(48),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(49),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(50),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(51),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(52),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(53),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(54),
  .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div,
  .destinationProfile:nth-child(odd).timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3n+2),
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3n+2):before,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3n+2):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(5):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(8):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(11):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(14):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(17):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(20):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(23):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(26):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(29):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(32):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(35):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(38):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(41):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(44):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(47):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(50):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(53):after,
.destinationProfile:nth-child(odd).timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div div:nth-last-child(2):before,
.destinationProfile:nth-child(odd).timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.travelguide .destinationProfile:nth-child(odd).timeLine > div > div p,
.destinationProfile:nth-child(odd).timeLine > div > div p {
  font-size: 0.9rem;
}
.travelguide .destinationProfile:nth-child(odd) .svg-map,
.destinationProfile:nth-child(odd) .svg-map {
  max-width: 600px;
  margin: auto;
}
.travelguide .destinationProfile:nth-child(odd) > div,
.destinationProfile:nth-child(odd) > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .travelguide .destinationProfile:nth-child(odd) > div,
  .destinationProfile:nth-child(odd) > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.travelguide .destinationProfile:nth-child(odd) > div:not(:last-child),
.destinationProfile:nth-child(odd) > div:not(:last-child) {
  margin-bottom: 24px;
}
.travelguide .destinationProfile:nth-child(odd) > div > a[rel^="lightbox"],
.destinationProfile:nth-child(odd) > div > a[rel^="lightbox"],
.travelguide .destinationProfile:nth-child(odd) > div > img,
.destinationProfile:nth-child(odd) > div > img,
.travelguide .destinationProfile:nth-child(odd) > div > .photoGallery,
.destinationProfile:nth-child(odd) > div > .photoGallery,
.travelguide .destinationProfile:nth-child(odd) > div:not(.photoGallery) > div[about^="/"],
.destinationProfile:nth-child(odd) > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.travelguide .destinationProfile:nth-child(odd) h2,
.destinationProfile:nth-child(odd) h2,
.travelguide .destinationProfile:nth-child(odd) h3,
.destinationProfile:nth-child(odd) h3 {
  color: #676767;
}
.travelguide .destinationProfile:nth-child(odd) > div,
.destinationProfile:nth-child(odd) > div {
  position: relative;
}
.travelguide .destinationProfile:nth-child(odd) h2,
.destinationProfile:nth-child(odd) h2 {
  font-size: 32px;
  line-height: 35.2px;
  vertical-align: middle;
  display: inline-block;
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel,
.destinationProfile:nth-child(odd) h2 .destinationLabel {
  margin-right: -47px;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel,
  .destinationProfile:nth-child(odd) h2 .destinationLabel {
    margin-right: -57px;
  }
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
.destinationProfile:nth-child(odd) h2 .destinationLabel:before,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
.destinationProfile:nth-child(odd) h2 .destinationLabel:after,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
.destinationProfile:nth-child(odd) h2 .destinationLabel span {
  top: -4px;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span {
    top: -2px;
  }
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
.destinationProfile:nth-child(odd) h2 .destinationLabel:before,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
.destinationProfile:nth-child(odd) h2 .destinationLabel:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid white;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  position: relative;
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
.destinationProfile:nth-child(odd) h2 .destinationLabel:before {
  z-index: 1;
  background: #69853f;
  left: 0;
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
.destinationProfile:nth-child(odd) h2 .destinationLabel:after {
  z-index: 2;
  background: #84a750;
  left: -90px;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after {
    left: -80px;
  }
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
.destinationProfile:nth-child(odd) h2 .destinationLabel span {
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid white;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  background: #9cba70;
  left: 10px;
  position: relative;
  z-index: 3;
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
.destinationProfile:nth-child(odd) h2 .destinationLabel span,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.far,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.far {
  color: white;
  margin: 0;
}
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
.destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
.travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.far,
.destinationProfile:nth-child(odd) h2 .destinationLabel span i.far {
  display: block;
  justify-self: center;
  align-self: center;
  text-align: center;
  height: 60%;
  width: 60%;
  font-size: 25px;
  line-height: 60%;
  line-height: 25px;
  margin: 20%;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span {
    left: 4px;
  }
}
.intro .travelguide .destinationProfile:nth-child(odd) h2,
.intro .destinationProfile:nth-child(odd) h2 {
  text-align: center;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2,
  .destinationProfile:nth-child(odd) h2 {
    font-size: 26px;
    line-height: 28.6px;
    vertical-align: middle;
    display: inline-block;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel,
  .destinationProfile:nth-child(odd) h2 .destinationLabel {
    margin-right: -27px;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span {
    top: -4px;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    line-height: 31px;
    text-align: center;
    border: 3px solid white;
    border-radius: 50%;
    width: 37px;
    height: 37px;
    font-size: 20px;
    position: relative;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:before {
    z-index: 1;
    background: #69853f;
    left: 0;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after {
    z-index: 2;
    background: #84a750;
    left: -66px;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span {
    display: inline-block;
    vertical-align: middle;
    line-height: 31px;
    text-align: center;
    border: 3px solid white;
    border-radius: 50%;
    width: 37px;
    height: 37px;
    font-size: 20px;
    background: #9cba70;
    left: 6px;
    position: relative;
    z-index: 3;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.far,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.far {
    color: white;
    margin: 0;
  }
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span svg.svg-inline--fa,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fas,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fab,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.fal,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span i.far,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span i.far {
    display: block;
    justify-self: center;
    align-self: center;
    text-align: center;
    height: 60%;
    width: 60%;
    font-size: 25px;
    line-height: 60%;
    line-height: 25px;
    margin: 20%;
  }
  .intro .travelguide .destinationProfile:nth-child(odd) h2,
  .intro .destinationProfile:nth-child(odd) h2 {
    text-align: center;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel,
  .destinationProfile:nth-child(odd) h2 .destinationLabel {
    margin-right: -37px;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:before,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span {
    top: -2px;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel:after,
  .destinationProfile:nth-child(odd) h2 .destinationLabel:after {
    left: -60px;
  }
}
@media (max-width: 550px) and (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) h2 .destinationLabel span,
  .destinationProfile:nth-child(odd) h2 .destinationLabel span {
    left: 0px;
  }
}
.travelguide .destinationProfile:nth-child(odd) div.noteworthyDestinationBadges,
.destinationProfile:nth-child(odd) div.noteworthyDestinationBadges {
  position: static;
  float: right;
  display: flex;
  flex-direction: row;
  max-width: 300px;
  justify-content: flex-end;
  margin: 0 0 12px 12px;
}
@media (min-width: 800px) {
  .travelguide .destinationProfile:nth-child(odd) div.noteworthyDestinationBadges,
  .destinationProfile:nth-child(odd) div.noteworthyDestinationBadges {
    position: absolute;
    top: 0;
    left: auto;
    right: 10px;
  }
}
.travelguide .destinationProfile:nth-child(odd) div.noteworthyDestinationBadges > div,
.destinationProfile:nth-child(odd) div.noteworthyDestinationBadges > div {
  width: 75px;
  margin-right: 5px;
}
.travelguide .destinationProfile:nth-child(odd) div.noteworthyDestinationBadges > div:before,
.destinationProfile:nth-child(odd) div.noteworthyDestinationBadges > div:before {
  background: #F9FAFB;
}
.travelguide .destinationProfile:nth-child(odd) > div > div,
.destinationProfile:nth-child(odd) > div > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 350px;
}
.fold > div .travelguide .destinationProfile:nth-child(odd) > div > div:last-child,
.fold > div .destinationProfile:nth-child(odd) > div > div:last-child {
  margin-bottom: 0;
}
.fold > div .travelguide .destinationProfile:nth-child(odd) > div > div:only-child,
.fold > div .destinationProfile:nth-child(odd) > div > div:only-child {
  margin: 0;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > *,
.destinationProfile:nth-child(odd) > div > div > * {
  display: none;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div,
.destinationProfile:nth-child(odd) > div > div > div,
.travelguide .destinationProfile:nth-child(odd) > div > div > a,
.destinationProfile:nth-child(odd) > div > div > a {
  display: block;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(n),
.destinationProfile:nth-child(odd) > div > div > div:nth-child(n),
.travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(n),
.destinationProfile:nth-child(odd) > div > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 800px) {
  .travelguide .destinationProfile:nth-child(odd) > div > div,
  .destinationProfile:nth-child(odd) > div > div {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .travelguide .destinationProfile:nth-child(odd) > div > div,
  .destinationProfile:nth-child(odd) > div > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div,
.internetExplorer .destinationProfile:nth-child(odd) > div > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div,
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div,
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a,
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(1),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div:nth-child(1),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(1),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a:nth-child(1),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(2),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div:nth-child(2),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(2),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a:nth-child(2),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(3),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div:nth-child(3),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(3),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div *,
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div *,
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a *,
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a * {
  max-width: 100%;
}
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(even),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div:nth-child(even),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(even),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a:nth-child(even) {
  width: 33.33333333%;
}
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(odd),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > div:nth-child(odd),
.internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(odd),
.internetExplorer .destinationProfile:nth-child(odd) > div > div > a:nth-child(odd) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-child(n),
  .internetExplorer .destinationProfile:nth-child(odd) > div > div > div:nth-child(n),
  .internetExplorer .travelguide .destinationProfile:nth-child(odd) > div > div > a:nth-child(n),
  .internetExplorer .destinationProfile:nth-child(odd) > div > div > a:nth-child(n) {
    width: 100%;
  }
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type table,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type table {
  width: calc(100% - (2 * (90px / 4)));
  margin-left: auto;
  margin-right: auto;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage {
  margin: 48px auto 24px auto;
  position: relative;
  width: calc(100% - (2 * 22.5px));
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel {
  text-align: center;
  line-height: 72px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  border: 9px solid white;
  background: #9cba70;
  color: white;
  font-size: 36px;
  font-weight: bold;
  position: absolute;
  top: -22.5px;
  left: -22.5px;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.far,
.destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.far {
  display: block;
  justify-self: center;
  align-self: center;
  text-align: center;
  height: 50%;
  width: 50%;
  margin: 25%;
  color: white;
}
@media (max-width: 550px) {
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage {
    margin: 48px auto 24px auto;
    position: relative;
    width: calc(100% - (2 * 18.75px));
  }
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel {
    text-align: center;
    line-height: 61px;
    width: 75px;
    height: 75px;
    border-radius: 50%;
    border: 7px solid white;
    background: #9cba70;
    color: white;
    font-size: 30px;
    font-weight: bold;
    position: absolute;
    top: -18.75px;
    left: -18.75px;
  }
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel svg.svg-inline--fa,
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fas,
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fab,
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.fal,
  .travelguide .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.far,
  .destinationProfile:nth-child(odd) > div > div > div:first-of-type div.labelledImage .destinationLabel i.far {
    display: block;
    justify-self: center;
    align-self: center;
    text-align: center;
    height: 50%;
    width: 50%;
    margin: 25%;
    color: white;
  }
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature {
  background: #fff;
  padding: 18px;
  border-radius: 7px;
  border: 1px solid #dddddd;
  background: #F9FAFB;
  margin-bottom: 24px;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div > ul,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div > ul,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature > ul,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature > ul {
  margin: 0;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div > ul > li > a,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div > ul > li > a,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a {
  font-size: 0.8rem;
  font-weight: bold;
  text-transform: uppercase;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div > ul > li > a:before,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div > ul > li > a:before,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a:before,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours > ul > li > a:before,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a:before,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature > ul > li > a:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f138";
  margin-right: 5px;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div p,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div p,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours p,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours p,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature p,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature p {
  font-size: 0.9rem;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div ul li a,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div ul li a,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature ul li a,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature ul li a {
  font-size: 1em;
  font-weight: normal;
  text-transform: none;
}
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div ul li a:before,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > div ul li a:before,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a:before,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.featuredOnOurTours ul li a:before,
.travelguide .destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature ul li a:before,
.destinationProfile:nth-child(odd) > div > div > div:nth-of-type(2) > a.tourFeature ul li a:before {
  display: none;
}
.travelguide .destinationProfile:nth-child(odd).walking > div > div:first-of-type p:first-child:before,
.destinationProfile:nth-child(odd).walking > div > div:first-of-type p:first-child:before {
  display: block;
  content: "Recommended Walking Area";
  margin: 0;
  text-transform: uppercase;
  color: #4d4d4d;
  font-size: 15px;
}
.travelguide .destinationProfile:nth-child(odd).cycling > div > div:first-of-type p:first-child:before,
.destinationProfile:nth-child(odd).cycling > div > div:first-of-type p:first-child:before {
  display: block;
  content: "Recommended Family Cycling Route";
  margin: 0;
  text-transform: uppercase;
  color: #4d4d4d;
  font-size: 15px;
}
.directoryListings {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
}
.directoryListings > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .directoryListings > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.directoryListings > div:not(:last-child) {
  margin-bottom: 24px;
}
.directoryListings.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .directoryListings.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.directoryListings.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .directoryListings.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.directoryListings.tour-tinerary,
.directoryListings.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.directoryListings.tour-tinerary + .directoryListings.tour-tinerary,
.directoryListings.tour-tinerary + .directoryListings.tour-accommodation,
.directoryListings.tour-accommodation + .directoryListings.tour-tinerary,
.directoryListings.tour-accommodation + .directoryListings.tour-accommodation {
  border-top: none;
}
.directoryListings h1 svg.svg-inline--fa,
.directoryListings h2 svg.svg-inline--fa,
.directoryListings h3 svg.svg-inline--fa,
.directoryListings h4 svg.svg-inline--fa,
.directoryListings h5 svg.svg-inline--fa,
.directoryListings p svg.svg-inline--fa,
.directoryListings h1 i.fas,
.directoryListings h2 i.fas,
.directoryListings h3 i.fas,
.directoryListings h4 i.fas,
.directoryListings h5 i.fas,
.directoryListings p i.fas,
.directoryListings h1 i.fab,
.directoryListings h2 i.fab,
.directoryListings h3 i.fab,
.directoryListings h4 i.fab,
.directoryListings h5 i.fab,
.directoryListings p i.fab,
.directoryListings h1 i.fal,
.directoryListings h2 i.fal,
.directoryListings h3 i.fal,
.directoryListings h4 i.fal,
.directoryListings h5 i.fal,
.directoryListings p i.fal,
.directoryListings h1 i.far,
.directoryListings h2 i.far,
.directoryListings h3 i.far,
.directoryListings h4 i.far,
.directoryListings h5 i.far,
.directoryListings p i.far {
  font-size: inherit;
}
.directoryListings.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .directoryListings.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.directoryListings.timeLine > div h2 {
  text-align: center;
}
.directoryListings.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.directoryListings.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .directoryListings.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .directoryListings.timeLine > div > div > div:nth-child(6n+3),
  .directoryListings.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .directoryListings.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .directoryListings.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .directoryListings.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .directoryListings.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .directoryListings.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .directoryListings.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .directoryListings.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .directoryListings.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .directoryListings.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .directoryListings.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .directoryListings.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .directoryListings.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .directoryListings.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .directoryListings.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .directoryListings.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .directoryListings.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .directoryListings.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .directoryListings.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .directoryListings.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .directoryListings.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .directoryListings.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .directoryListings.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .directoryListings.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .directoryListings.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .directoryListings.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .directoryListings.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .directoryListings.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .directoryListings.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .directoryListings.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .directoryListings.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .directoryListings.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .directoryListings.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .directoryListings.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .directoryListings.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .directoryListings.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .directoryListings.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .directoryListings.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .directoryListings.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .directoryListings.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .directoryListings.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .directoryListings.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .directoryListings.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .directoryListings.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .directoryListings.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .directoryListings.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .directoryListings.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .directoryListings.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .directoryListings.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .directoryListings.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .directoryListings.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .directoryListings.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .directoryListings.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .directoryListings.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .directoryListings.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .directoryListings.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.directoryListings.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.directoryListings.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.directoryListings.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.directoryListings.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.directoryListings.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.directoryListings.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.directoryListings.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.directoryListings.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.directoryListings.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.directoryListings.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.directoryListings.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.directoryListings.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.directoryListings.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.directoryListings.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.directoryListings.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.directoryListings.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.directoryListings.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.directoryListings.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.directoryListings.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.directoryListings.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.directoryListings.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.directoryListings.timeLine > div > div p {
  font-size: 0.9rem;
}
.directoryListings .svg-map {
  max-width: 600px;
  margin: auto;
}
.directoryListings > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .directoryListings > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.directoryListings > div:not(:last-child) {
  margin-bottom: 24px;
}
.directoryListings > div > a[rel^="lightbox"],
.directoryListings > div > img,
.directoryListings > div > .photoGallery,
.directoryListings > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.directoryListings h2,
.directoryListings h3 {
  color: #676767;
}
.directoryListings > div > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 6px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
}
.fold > div .directoryListings > div > div:last-child {
  margin-bottom: 0;
}
.fold > div .directoryListings > div > div:only-child {
  margin: 0;
}
.directoryListings > div > div > * {
  display: none;
}
.directoryListings > div > div > div,
.directoryListings > div > div > a {
  display: block;
}
.directoryListings > div > div > div:nth-child(n),
.directoryListings > div > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 700px) {
  .directoryListings > div > div {
    grid-gap: 3px;
  }
}
@media (max-width: 700px) {
  .directoryListings > div > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .directoryListings > div > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .directoryListings > div > div > div,
.internetExplorer .directoryListings > div > div > a {
  width: 50%;
  display: block;
  padding-left: 3px;
  padding-right: 3px;
}
.internetExplorer .directoryListings > div > div > div:nth-child(1),
.internetExplorer .directoryListings > div > div > a:nth-child(1),
.internetExplorer .directoryListings > div > div > div:nth-child(2),
.internetExplorer .directoryListings > div > div > a:nth-child(2),
.internetExplorer .directoryListings > div > div > div:nth-child(3),
.internetExplorer .directoryListings > div > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .directoryListings > div > div > div *,
.internetExplorer .directoryListings > div > div > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .directoryListings > div > div > div:nth-child(n),
  .internetExplorer .directoryListings > div > div > a:nth-child(n) {
    width: 100%;
  }
}
.directoryListings > div > div > div {
  padding: 14.25px;
}
.directoryListings > div > div > div > div {
  position: relative;
  border-radius: 7px;
  background: #fff;
  padding: 24px;
  box-shadow: none;
  border: 1px solid #dddddd;
  border: none;
  background: white;
  padding: 12px;
}
.directoryListings > div > div > div > div:before {
  content: "\f236";
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  position: absolute;
  top: -14.25px;
  left: -14.25px;
  background: #84a750;
  color: white;
  display: inline-block;
  vertical-align: middle;
  line-height: 43px;
  text-align: center;
  border: 7px solid #F9FAFB;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 18px;
}
.directoryListings > div > div > div > div h1,
.directoryListings > div > div > div > div h2 {
  display: none;
}
.directoryListings > div > div > div > div h3:first-child,
.directoryListings > div > div > div > div h4:first-child,
.directoryListings > div > div > div > div h5:first-child {
  margin: 0 auto 0 42.75px;
}
.directoryListings > div > div > div > div h3:first-child .subHeading,
.directoryListings > div > div > div > div h4:first-child .subHeading,
.directoryListings > div > div > div > div h5:first-child .subHeading {
  text-transform: uppercase;
  margin-left: -13px;
  font-size: 0.65em;
  opacity: 0.6;
}
.directoryListings > div > div > div > div h3:first-child .subHeading:after,
.directoryListings > div > div > div > div h4:first-child .subHeading:after,
.directoryListings > div > div > div > div h5:first-child .subHeading:after {
  display: inline;
  content: "\2002 \25AA\2002 Hotel";
  opacity: 0.6;
}
.directoryListings > div > div > div > div p {
  font-size: 0.96rem;
}
.directoryListings > div > div > div > div ul li {
  font-size: 0.89rem;
  margin: 5px 0;
}
.directoryListings > div > div > div > div ul li svg.svg-inline--fa,
.directoryListings > div > div > div > div ul li i.fas,
.directoryListings > div > div > div > div ul li i.fab,
.directoryListings > div > div > div > div ul li i.fal,
.directoryListings > div > div > div > div ul li i.far {
  color: #4d4d4d;
  margin-right: 3px;
}
.directoryListings > div > div > div > div ul li a {
  color: #737373;
}
.directoryListings > div > div > div > div p:first-of-type,
.directoryListings > div > div > div > div ul:first-of-type,
.directoryListings > div > div > div > div ul li:first-of-type {
  margin-top: 3px;
}
.directoryListings > div > div > div.recommended ul > li h4 .subHeading:before,
.directoryListings > div > div > div.recommended ul > li h5 .subHeading:before {
  display: inline;
  content: "\2605\0020\0020 Featured Hotel \0020\0020\2605";
  color: white;
  background: rgba(77, 77, 77, 0.6);
  padding: 3px 5px;
  margin-right: 5px;
  line-height: 1em;
  letter-spacing: 0.5px;
}
.directoryListings > div > div > div.recommended ul > li h4 .subHeading:after,
.directoryListings > div > div > div.recommended ul > li h5 .subHeading:after {
  display: none;
}
.directoryListings.hotel > div > div > div > div:before {
  content: "\f236";
}
.directoryListings.hotel h3:first-child .subHeading:after,
.directoryListings.hotel h4:first-child .subHeading:after,
.directoryListings.hotel h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Hotel";
}
.directoryListings.bb > div > div > div > div:before {
  content: "\f236";
}
.directoryListings.bb h3:first-child .subHeading:after,
.directoryListings.bb h4:first-child .subHeading:after,
.directoryListings.bb h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Bed and Breakfast";
}
.directoryListings.hostel > div > div > div > div:before {
  content: "\f236";
}
.directoryListings.hostel h3:first-child .subHeading:after,
.directoryListings.hostel h4:first-child .subHeading:after,
.directoryListings.hostel h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Hostel";
}
.directoryListings.restaurant > div > div > div > div:before {
  content: "\f2e7";
}
.directoryListings.restaurant h3:first-child .subHeading:after,
.directoryListings.restaurant h4:first-child .subHeading:after,
.directoryListings.restaurant h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Restaurant";
}
.directoryListings.chipper > div > div > div > div:before {
  content: "\f578";
}
.directoryListings.chipper h3:first-child .subHeading:after,
.directoryListings.chipper h4:first-child .subHeading:after,
.directoryListings.chipper h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Fish and Chips";
}
.directoryListings.pub > div > div > div > div:before {
  content: "\f6ec";
}
.directoryListings.pub h3:first-child .subHeading:after,
.directoryListings.pub h4:first-child .subHeading:after,
.directoryListings.pub h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Pub";
}
.directoryListings.walking > div > div > div > div:before {
  content: "\f6ec";
}
.directoryListings.walking h3:first-child .subHeading:after,
.directoryListings.walking h4:first-child .subHeading:after,
.directoryListings.walking h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Walking";
}
.directoryListings.bikeHire > div > div > div > div:before {
  content: "\f84a";
}
.directoryListings.bikeHire h3:first-child .subHeading:after,
.directoryListings.bikeHire h4:first-child .subHeading:after,
.directoryListings.bikeHire h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Bike Hire";
}
.directoryListings.biking > div > div > div > div:before {
  content: "\f84a";
}
.directoryListings.biking h3:first-child .subHeading:after,
.directoryListings.biking h4:first-child .subHeading:after,
.directoryListings.biking h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Biking";
}
.directoryListings.horseRiding > div > div > div > div:before {
  content: "\f6f0";
}
.directoryListings.horseRiding h3:first-child .subHeading:after,
.directoryListings.horseRiding h4:first-child .subHeading:after,
.directoryListings.horseRiding h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Horse Riding";
}
.directoryListings.sailing > div > div > div > div:before {
  content: "\f13d";
}
.directoryListings.sailing h3:first-child .subHeading:after,
.directoryListings.sailing h4:first-child .subHeading:after,
.directoryListings.sailing h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Sailing";
}
.directoryListings.golf > div > div > div > div:before {
  content: "\f450";
}
.directoryListings.golf h3:first-child .subHeading:after,
.directoryListings.golf h4:first-child .subHeading:after,
.directoryListings.golf h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Golf";
}
.directoryListings.literature > div > div > div > div:before {
  content: "\f518";
}
.directoryListings.literature h3:first-child .subHeading:after,
.directoryListings.literature h4:first-child .subHeading:after,
.directoryListings.literature h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Literature";
}
.directoryListings.art > div > div > div > div:before {
  content: "\f1fc";
}
.directoryListings.art h3:first-child .subHeading:after,
.directoryListings.art h4:first-child .subHeading:after,
.directoryListings.art h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Art";
}
.directoryListings.music > div > div > div > div:before {
  content: "\f001";
}
.directoryListings.music h3:first-child .subHeading:after,
.directoryListings.music h4:first-child .subHeading:after,
.directoryListings.music h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Music";
}
.directoryListings.foodFestival > div > div > div > div:before {
  content: "\f818";
}
.directoryListings.foodFestival h3:first-child .subHeading:after,
.directoryListings.foodFestival h4:first-child .subHeading:after,
.directoryListings.foodFestival h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Food Festival";
}
.directoryListings.market > div > div > div > div:before {
  content: "\f54e";
}
.directoryListings.market h3:first-child .subHeading:after,
.directoryListings.market h4:first-child .subHeading:after,
.directoryListings.market h5:first-child .subHeading:after {
  content: "\2002 \25AA\2002 Market";
}
.detailedTransportOption {
  padding: 17px;
}
.detailedTransportOption > div {
  position: relative;
  border-radius: 7px;
  background: #fff;
  padding: 24px;
  box-shadow: none;
  border: 1px solid #dddddd;
  border: none;
  background: #F9FAFB;
  padding: 12px;
}
.detailedTransportOption > div:before {
  content: "\f0c0";
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  position: absolute;
  top: -17px;
  left: -17px;
  background: #84a750;
  color: white;
  display: inline-block;
  vertical-align: middle;
  line-height: 54px;
  text-align: center;
  border: 7px solid #fff;
  border-radius: 50%;
  width: 68px;
  height: 68px;
  font-size: 24px;
}
.detailedTransportOption > div h1,
.detailedTransportOption > div h2 {
  display: none;
}
.detailedTransportOption > div h3:first-child,
.detailedTransportOption > div h4:first-child,
.detailedTransportOption > div h5:first-child {
  margin: 0 auto 0 51px;
}
.detailedTransportOption > div h3:first-child .subHeading,
.detailedTransportOption > div h4:first-child .subHeading,
.detailedTransportOption > div h5:first-child .subHeading {
  text-transform: uppercase;
  margin-left: -13px;
  font-size: 0.65em;
  opacity: 0.6;
}
.detailedTransportOption > div h3:first-child .subHeading:after,
.detailedTransportOption > div h4:first-child .subHeading:after,
.detailedTransportOption > div h5:first-child .subHeading:after {
  display: inline;
  content: "\2002 \25AA\2002 none";
  opacity: 1;
}
.detailedTransportOption > div p {
  font-size: 0.96rem;
}
.detailedTransportOption > div ul li {
  font-size: 0.89rem;
  margin: 5px 0;
}
.detailedTransportOption > div ul li svg.svg-inline--fa,
.detailedTransportOption > div ul li i.fas,
.detailedTransportOption > div ul li i.fab,
.detailedTransportOption > div ul li i.fal,
.detailedTransportOption > div ul li i.far {
  color: #4d4d4d;
  margin-right: 3px;
}
.detailedTransportOption > div ul li a {
  color: #737373;
}
.detailedTransportOption > div p:first-of-type,
.detailedTransportOption > div ul:first-of-type,
.detailedTransportOption > div ul li:first-of-type {
  margin-top: 3px;
}
.detailedTransportOption > div > p:first-of-type {
  margin-top: 12px;
}
.detailedTransportOption.plane > div:before {
  content: "\f5b0";
}
.detailedTransportOption.ferry > div:before {
  content: "\f21a";
}
.detailedTransportOption.train > div:before {
  content: "\f238";
}
.detailedTransportOption.bus > div:before {
  content: "\f207";
}
.detailedTransportOption.car > div:before {
  content: "\f1b9";
}
.detailedTransportOption.bicycle > div:before {
  content: "\f206";
}
/* all contact forms / booking forms / sign up forms etc */
/* sometimes we have inputs that are not in a form */
.validationError,
.validation-error {
  border: 2px solid red;
}
.g-recaptcha.validation-error {
  border: 2px solid red;
  border-radius: 4px;
}
.validationErrorMessage {
  font-size: 0.8em;
  color: red;
  display: none;
  clear: left;
  /* to make sure it goes beneath the item in error */
}
.field-error-message {
  font-size: 0.85em;
  color: red;
  display: none;
  margin-top: 0.3em;
  line-height: 1.3;
}
.field-error-message.visible {
  display: block;
  animation: slideDown 0.2s ease-out;
}
@keyframes slideDown {
  from {
    opacity: 0;
    max-height: 0;
    margin-top: 0;
  }
  to {
    opacity: 1;
    max-height: 3em;
    margin-top: 0.3em;
  }
}
/* we sometimes put inputs outside of a form */
label,
input,
textarea,
select {
  font-family: inherit;
  /* browsers have defaults for these */
  font-size: inherit;
  /* browsers have defaults for these */
  line-height: inherit;
  /* browsers have defaults for these */
}
button {
  cursor: pointer;
}
/* ============================================
   ANTI-SPAM: Honeypot field hiding (global)
   These fields are invisible to users but visible to bots.
   If any are filled/changed, submission is rejected as spam.
   ============================================ */
.form-assist-field {
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;
}
.contactFormArea {
  clear: both;
  text-align: left;
  /* pulls inputs together into one section (normally horizontal) */
}
.contactFormArea form {
  overflow: hidden;
}
.contactFormArea label,
.contactFormArea input,
.contactFormArea textarea,
.contactFormArea select {
  max-width: 100%;
  display: block;
}
.contactFormArea input {
  width: 24em;
}
.contactFormArea input.validation-error,
.contactFormArea textarea.validation-error,
.contactFormArea select.validation-error,
.contactFormArea input[aria-invalid="true"],
.contactFormArea textarea[aria-invalid="true"],
.contactFormArea select[aria-invalid="true"] {
  border: 2px solid red;
}
.contactFormArea input,
.contactFormArea textarea,
.contactFormArea select {
  margin-top: 0.2em;
}
.contactFormArea textarea {
  width: 100%;
}
.contactFormArea textarea.smallTextArea {
  height: 4em;
}
.contactFormArea input,
.contactFormArea select,
.contactFormArea textarea,
.contactFormArea option {
  font-family: inherit;
  font-size: inherit;
  line-height: 1.4em;
}
.contactFormArea .groupedInputs {
  overflow: hidden;
}
.contactFormArea .groupedInputs > * {
  float: left;
  margin-right: 2em;
}
.contactFormArea input[type="number"] {
  width: 3em;
  display: inline-block;
}
.contactFormArea ul.checkBoxArea {
  /* applied to a ul so this removes the default whitespace on the left */
  padding-left: 0;
  margin-left: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.contactFormArea ul.checkBoxArea li {
  list-style: none;
  margin-top: 0.3em;
  margin-bottom: 0;
}
.contactFormArea ul.checkBoxArea li label {
  margin-top: 0;
}
.contactFormArea .checkboxWrapper {
  display: flex;
  position: relative;
  flex-wrap: wrap;
}
.contactFormArea .checkboxWrapper input[type="checkbox"] {
  position: absolute;
  opacity: 0;
}
.contactFormArea .checkboxWrapper input[type="checkbox"] ~ label {
  position: relative;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: flex-start;
}
.contactFormArea .checkboxWrapper input[type="checkbox"] ~ label .labelContent {
  flex-grow: 1;
}
.contactFormArea .checkboxWrapper input[type="checkbox"] ~ label:before {
  content: "\f0c8";
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
  color: #777;
  background-color: #fff;
  font-size: 1.5em;
  margin-right: 0.2em;
}
.contactFormArea .checkboxWrapper input[type="checkbox"]:hover ~ label:before {
  color: rgba(0, 128, 0, 0.7);
}
.contactFormArea .checkboxWrapper input[type="checkbox"]:checked ~ label:before {
  content: "\f14a";
  font-weight: 900;
  color: rgba(0, 128, 0, 0.7);
}
.contactFormArea .checkboxWrapper input[type="checkbox"].validationError ~ label:before {
  color: red;
}
.contactFormArea .datePicker {
  width: 200px;
  max-width: 100%;
}
.contactFormArea .recaptchaDiv {
  max-width: 100%;
}
.contactFormArea .successMessage {
  clear: both;
  background-color: #eeeeee;
  display: none;
}
.contactFormArea .inputBlock,
.booking-engine .inputBlock {
  margin-top: 1.5em;
}
/* JS will add plus and minus buttons in to input type=number fields automatically */
.increaseDecreaseButtonArea {
  display: flex;
  justify-content: center;
}
.increaseDecreaseButtonArea input {
  padding: 0.3em;
  text-align: center;
  width: 5em;
}
.increaseButton {
  color: #fff;
  padding: 0 0.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  /* padding-left:0.25em;*/
  /* padding-right:0.1em;*/
  background-color: rgba(19, 109, 19, 0.8);
}
.increaseButton:hover {
  cursor: pointer;
}
.increaseButton * {
  color: #fff;
}
.decreaseButton {
  color: #fff;
  padding: 0 0.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(217, 38, 38, 0.8);
}
.decreaseButton:hover {
  cursor: pointer;
}
.decreaseButton * {
  color: #fff;
}
/* Hide HTML5 Up and Down arrows. */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type="number"] {
  -moz-appearance: textfield;
}
/* Validation error states with shake animation */
.contactFormArea input.validation-error,
.contactFormArea textarea.validation-error,
.contactFormArea select.validation-error,
#be-share-email-modal input.validation-error,
#be-share-email-modal textarea.validation-error,
#be-share-email-modal select.validation-error {
  border: 2px solid red;
  background: #fffafb;
  border-radius: 4px;
  box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.12);
  animation: shake 0.3s ease-in-out;
}
.contactFormArea input.validation-error,
.contactFormArea textarea.validation-error,
#be-share-email-modal input.validation-error,
#be-share-email-modal textarea.validation-error {
  padding: 10px 14px;
}
.g-recaptcha.validation-error {
  border: 2px solid red;
  border-radius: 4px;
  background: #fffafb;
  display: inline-block;
  animation: shake 0.3s ease-in-out;
}
#be-share-recaptcha-container.validation-error {
  border: 2px solid red;
  border-radius: 4px;
  padding: 8px;
  background: #fffafb;
  animation: shake 0.3s ease-in-out;
}
/* Phone row: country code select + local number input as two columns */
.contactFormArea .be-phone-row {
  display: flex;
  align-items: center;
  column-gap: 8px;
  /* Error state */
}
.contactFormArea .be-phone-row select,
.contactFormArea .be-phone-row input {
  display: inline-block;
  /* override contactFormArea's display:block */
  width: auto;
  margin-top: 0;
}
.contactFormArea .be-phone-row select {
  flex: 0 0 auto;
}
.contactFormArea .be-phone-row input {
  flex: 1 1 0;
  min-width: 0;
}
.contactFormArea .be-phone-row.pt-validation-error select,
.contactFormArea .be-phone-row.pt-validation-error input {
  border: 2px solid red;
  background: #fffafb;
}
@keyframes shake {
  0%,
  100% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-10px);
  }
  75% {
    transform: translateX(10px);
  }
}
.cookie-consent {
  z-index: 10001;
  position: fixed;
  bottom: 12px;
  right: 12px;
  display: none;
  flex-direction: column;
  gap: 6px;
  width: 300px;
  padding: 24px;
  background: #e5e5e5;
  border-radius: 4px;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}
.cookie-consent.displayed {
  display: flex;
}
.cookie-consent p {
  margin: 0 0 12px 0;
  font-size: 14px;
  line-height: 1.4;
}
.cookie-consent p a {
  color: #4d4d4d;
  font-weight: bold;
}
.cookie-consent button {
  border-radius: 4px;
  border: 1px solid #666666;
  padding: 6px 0;
}
.cookie-consent button:first-of-type {
  border: none;
  background: #84a750;
  color: #fff;
  font-weight: 600;
}
/* Deal of the Week Component
 * Used on homepage to showcase limited-time tour offers
 * Material Design 3 inspired with brand colors
 */
.dealOfTheWeek {
  background: #f9fafb;
  /* Responsive breakpoints */
}
.dealOfTheWeek > div {
  max-width: 1200px;
  margin: 0 auto;
}
.dealOfTheWeek .dealHeader {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
  gap: 24px;
}
.dealOfTheWeek .dealHeader > div:first-child {
  flex: 1;
}
.dealOfTheWeek .dealHeader .limitedTimeLabel {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #dc2626;
  margin-bottom: 8px;
}
.dealOfTheWeek .dealHeader h2 {
  margin: 0;
  font-size: 32px;
  font-weight: 700;
  color: #4d4d4d;
}
.dealOfTheWeek .dealHeader .urgencyMessage {
  margin: 0;
  font-size: 14px;
  color: #666666;
  text-align: right;
  padding-top: 8px;
}
.dealOfTheWeek .dealCard {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 0;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: box-shadow 0.2s ease;
}
.dealOfTheWeek .dealCard:hover {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 8px 20px rgba(0, 0, 0, 0.08);
}
.dealOfTheWeek .dealImageSection {
  position: relative;
  background: #e5e7eb;
  overflow: hidden;
}
.dealOfTheWeek .dealImageSection .savingsBadge {
  position: absolute;
  top: 20px;
  left: 20px;
  background: #dc2626;
  color: #ffffff;
  padding: 12px 16px;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(220, 38, 38, 0.3);
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}
.dealOfTheWeek .dealImageSection .savingsBadge .saveLabel {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.dealOfTheWeek .dealImageSection .savingsBadge .saveAmount {
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
}
.dealOfTheWeek .dealImageSection img {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  display: block;
  max-width: none;
}
.dealOfTheWeek .dealImageSection .tourStartEnd {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 16px 20px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.4));
  z-index: 1;
}
.dealOfTheWeek .dealImageSection .tourStartEnd > div {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #ffffff;
}
.dealOfTheWeek .dealImageSection .tourStartEnd > div:not(:last-child) {
  margin-bottom: 6px;
}
.dealOfTheWeek .dealImageSection .tourStartEnd > div i {
  color: #e5e7eb;
  font-size: 14px;
  width: 16px;
  text-align: center;
}
.dealOfTheWeek .dealDetailsSection {
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.dealOfTheWeek .dealDetailsSection .dealMeta {
  display: flex;
  column-gap: 24px;
  row-gap: 12px;
  flex-wrap: wrap;
}
.dealOfTheWeek .dealDetailsSection .dealMeta > div {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #666666;
  background: #f3f4f6;
  padding: 8px 16px;
  border-radius: 6px;
}
.dealOfTheWeek .dealDetailsSection .dealMeta > div i {
  color: #6b7280;
  font-size: 16px;
}
.dealOfTheWeek .dealDetailsSection h3 {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  color: #4d4d4d;
  line-height: 1.3;
}
.dealOfTheWeek .dealDetailsSection .dealDescription {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
  color: #666666;
}
.dealOfTheWeek .dealDetailsSection .dealHighlights {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.dealOfTheWeek .dealDetailsSection .dealHighlights .highlight {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #666666;
}
.dealOfTheWeek .dealDetailsSection .dealHighlights .highlight i {
  color: #84a750;
  font-size: 18px;
  width: 20px;
  text-align: center;
  flex-shrink: 0;
}
.dealOfTheWeek .dealDetailsSection .dealPricing {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding-top: 8px;
  margin-top: auto;
}
.dealOfTheWeek .dealDetailsSection .dealPricing .priceInfo {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.dealOfTheWeek .dealDetailsSection .dealPricing .priceInfo .wasPrice {
  font-size: 14px;
  color: #9ca3af;
  text-decoration: line-through;
  text-decoration-thickness: 1.5px;
}
.dealOfTheWeek .dealDetailsSection .dealPricing .priceInfo .nowPrice {
  font-size: 36px;
  font-weight: 700;
  color: #dc2626;
  line-height: 1;
}
.dealOfTheWeek .dealDetailsSection .dealPricing .priceInfo .nowPrice .perPerson {
  font-size: 16px;
  font-weight: 500;
  color: #666666;
  margin-left: 4px;
}
.dealOfTheWeek .dealDetailsSection .dealPricing .reserveButton {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  background: #84a750;
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 8px;
  transition: all 0.2s ease;
  white-space: nowrap;
  box-shadow: 0 2px 4px rgba(132, 167, 80, 0.2);
}
.dealOfTheWeek .dealDetailsSection .dealPricing .reserveButton i {
  font-size: 14px;
  transition: transform 0.2s ease;
}
.dealOfTheWeek .dealDetailsSection .dealPricing .reserveButton:hover {
  background: #6e8b43;
  box-shadow: 0 4px 8px rgba(132, 167, 80, 0.3);
  transform: translateY(-1px);
}
.dealOfTheWeek .dealDetailsSection .dealPricing .reserveButton:hover i {
  transform: translateX(3px);
}
.dealOfTheWeek .dealDetailsSection .dealPricing .reserveButton:active {
  transform: translateY(0);
}
.dealOfTheWeek .dealDetailsSection .dealFooter {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  border-top: 1px solid #e5e7eb;
}
.dealOfTheWeek .dealDetailsSection .dealFooter .guestLimit {
  font-size: 13px;
  color: #6b7280;
}
.dealOfTheWeek .dealDetailsSection .dealFooter .dealActions {
  display: flex;
  gap: 8px;
  margin-left: auto;
}
.dealOfTheWeek .dealDetailsSection .dealFooter .dealActions .iconButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #f3f4f6;
  border: none;
  border-radius: 50%;
  color: #6b7280;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 16px;
  padding: 0;
}
.dealOfTheWeek .dealDetailsSection .dealFooter .dealActions .iconButton:hover {
  background: #e5e7eb;
  color: #84a750;
}
.dealOfTheWeek .dealDetailsSection .dealFooter .dealActions .iconButton:active {
  background: #d1d5db;
}
.dealOfTheWeek .dealChipLinks {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 32px;
}
.dealOfTheWeek .dealChipLinks a {
  display: inline-block;
  padding: 10px 24px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 500;
  color: #666666;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.dealOfTheWeek .dealChipLinks a:hover {
  background: #f9fafb;
  border-color: #84a750;
  color: #84a750;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}
@media (max-width: 1024px) {
  .dealOfTheWeek .dealCard {
    grid-template-columns: 1fr;
  }
  .dealOfTheWeek .dealImageSection {
    height: 300px;
  }
  .dealOfTheWeek .dealHeader {
    flex-direction: column;
    gap: 12px;
  }
  .dealOfTheWeek .dealHeader .urgencyMessage {
    text-align: left;
    padding-top: 0;
  }
}
@media (max-width: 640px) {
  .dealOfTheWeek .dealHeader h2 {
    font-size: 24px;
  }
  .dealOfTheWeek .dealDetailsSection {
    padding: 24px 20px;
    gap: 16px;
  }
  .dealOfTheWeek .dealDetailsSection h3 {
    font-size: 20px;
  }
  .dealOfTheWeek .dealDetailsSection .dealHighlights {
    grid-template-columns: 1fr;
  }
  .dealOfTheWeek .dealDetailsSection .dealPricing {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }
  .dealOfTheWeek .dealDetailsSection .dealPricing .priceInfo .nowPrice {
    font-size: 28px;
  }
  .dealOfTheWeek .dealDetailsSection .dealPricing .reserveButton {
    width: 100%;
    justify-content: center;
  }
  .dealOfTheWeek .dealDetailsSection .dealFooter {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  .dealOfTheWeek .dealDetailsSection .dealFooter .dealActions {
    margin-left: auto;
  }
  .dealOfTheWeek .dealChipLinks {
    gap: 8px;
  }
  .dealOfTheWeek .dealChipLinks a {
    font-size: 13px;
    padding: 6px 12px;
  }
  .dealOfTheWeek .dealImageSection {
    height: 240px;
  }
  .dealOfTheWeek .dealImageSection .savingsBadge {
    top: 16px;
    left: 16px;
    padding: 10px 14px;
  }
  .dealOfTheWeek .dealImageSection .savingsBadge .saveAmount {
    font-size: 20px;
  }
}
/* without this text is more jagged when sized down to .9 */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
[id] {
  scroll-margin-top: clamp(30px, 7.5vh, 110px);
}
sup,
i.external-link-square-alt,
i.fa-external-link-square,
sup:before,
i.external-link-square-alt:before,
i.fa-external-link-square:before {
  vertical-align: super;
  font-size: 0.65em;
}
@media (max-width: 550px) {
  .hide-mob {
    display: none;
  }
}
@media (min-width: 800px) {
  .navArea > div ul.mainNav .mobileNavOnly:nth-child(n) {
    display: none;
  }
}
video {
  max-width: 100%;
  height: auto;
  margin: auto;
  display: block;
}
p a,
li a,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-weight: inherit;
}
.bookNowCTA.wildAtlanticWay > div,
.singleFullWidthCTA.wildAtlanticWay > div {
  background: #007388;
}
.singleStandoutInfo {
  background: #84a750;
  padding: 24px;
  border-radius: 7px;
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 48px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 150px;
  grid-template-columns: 150px auto;
}
.fold > div .singleStandoutInfo:last-child {
  margin-bottom: 0;
}
.fold > div .singleStandoutInfo:only-child {
  margin: 0;
}
.singleStandoutInfo > * {
  display: none;
}
.singleStandoutInfo > div,
.singleStandoutInfo > a {
  display: block;
}
.singleStandoutInfo > div:nth-child(n),
.singleStandoutInfo > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 0) and (min-width: 0) {
  .singleStandoutInfo {
    grid-gap: 24px;
  }
}
@media (max-width: 0) {
  .singleStandoutInfo {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .singleStandoutInfo {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .singleStandoutInfo > div,
.internetExplorer .singleStandoutInfo > a {
  width: 50%;
  display: block;
  padding-left: 24px;
  padding-right: 24px;
}
.internetExplorer .singleStandoutInfo > div:nth-child(1),
.internetExplorer .singleStandoutInfo > a:nth-child(1),
.internetExplorer .singleStandoutInfo > div:nth-child(2),
.internetExplorer .singleStandoutInfo > a:nth-child(2),
.internetExplorer .singleStandoutInfo > div:nth-child(3),
.internetExplorer .singleStandoutInfo > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .singleStandoutInfo > div *,
.internetExplorer .singleStandoutInfo > a * {
  max-width: 100%;
}
.internetExplorer .singleStandoutInfo > div:nth-child(odd),
.internetExplorer .singleStandoutInfo > a:nth-child(odd) {
  width: 33.33333333%;
}
.internetExplorer .singleStandoutInfo > div:nth-child(even),
.internetExplorer .singleStandoutInfo > a:nth-child(even) {
  width: 66.66666667%;
}
@media (max-width: 0) {
  .internetExplorer .singleStandoutInfo > div:nth-child(n),
  .internetExplorer .singleStandoutInfo > a:nth-child(n) {
    width: 100%;
  }
}
@media (max-width: 650px) {
  .singleStandoutInfo {
    grid-gap: 24px;
    grid-template-columns: 25% auto;
  }
}
@media (max-width: 390px) {
  .singleStandoutInfo {
    grid-template-columns: 1fr;
  }
}
.singleStandoutInfo > div {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.singleStandoutInfo > div *,
.singleStandoutInfo > div svg.svg-inline--fa,
.singleStandoutInfo > div i.fas,
.singleStandoutInfo > div i.fab,
.singleStandoutInfo > div i.fal,
.singleStandoutInfo > div i.far {
  color: #fff;
}
.singleStandoutInfo > div * {
  margin: 0;
}
.singleStandoutInfo > div img[src$=".png"],
.singleStandoutInfo > div img.logo {
  filter: saturate(0) brightness(100);
  margin: 12px auto;
  object-fit: contain;
}
@media (max-width: 390px) {
  .singleStandoutInfo > div:first-child {
    flex-direction: row;
  }
  .singleStandoutInfo > div:first-child > div {
    margin: 0 12px;
  }
}
.singleStandoutInfo > div:first-child svg.svg-inline--fa,
.singleStandoutInfo > div:first-child i.fas,
.singleStandoutInfo > div:first-child i.fab,
.singleStandoutInfo > div:first-child i.fal,
.singleStandoutInfo > div:first-child i.far {
  display: block;
  margin-left: auto;
  margin-right: auto;
  font-size: 79.2px;
}
@media (max-width: 450px) {
  .singleStandoutInfo > div:first-child svg.svg-inline--fa,
  .singleStandoutInfo > div:first-child i.fas,
  .singleStandoutInfo > div:first-child i.fab,
  .singleStandoutInfo > div:first-child i.fal,
  .singleStandoutInfo > div:first-child i.far {
    font-size: 20vw;
  }
}
.singleStandoutInfo > div:nth-of-type(2) a,
.singleStandoutInfo > div:nth-of-type(2) .dummyLink {
  text-decoration: underline;
  text-underline-position: under;
  display: inline;
}
.singleStandoutInfo > div:nth-of-type(2) p.mainCaption {
  font-size: 22px;
  font-weight: bold;
  text-align: left;
}
.singleStandoutInfo > div:nth-of-type(2) p.mainCaption > * {
  color: inherit;
  font-weight: inherit;
}
@media (max-width: 390px) {
  .singleStandoutInfo > div:nth-of-type(2) * {
    text-align: center;
  }
}
.singleStandoutInfo.wildAtlanticWay > div > div,
.singleStandoutInfo.irelandsAncientEast > div > div {
  flex-basis: 50%;
}
.singleStandoutInfo.wildAtlanticWay > div > div img,
.singleStandoutInfo.irelandsAncientEast > div > div img,
.singleStandoutInfo.wildAtlanticWay > div > div picture,
.singleStandoutInfo.irelandsAncientEast > div > div picture {
  width: 100%;
}
.singleStandoutInfo.wildAtlanticWay {
  background: linear-gradient(to right, #007388, #00849c);
}
.singleStandoutInfo.irelandsAncientEast {
  background: linear-gradient(to right, #d9591d, #e15d1f);
}
.singleStandoutInfo.salePromo {
  background: linear-gradient(to right, #ca2a04, #d42c04);
  position: relative;
  padding-right: 40px;
}
.singleStandoutInfo.salePromo:after {
  position: absolute;
  right: 10px;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  color: white;
  top: calc((100% - 35px) / 2);
  font-size: 35px;
}
.topMSPs {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
  margin: 48px auto;
}
.fold > div .topMSPs:last-child {
  margin-bottom: 0;
}
.fold > div .topMSPs:only-child {
  margin: 0;
}
.topMSPs > * {
  display: none;
}
.topMSPs > div,
.topMSPs > a {
  display: block;
}
.topMSPs > div:nth-child(n),
.topMSPs > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.topMSPs > div:last-child:nth-child(2),
.topMSPs > a:last-child:nth-child(2),
.topMSPs > div:first-child:nth-last-child(2),
.topMSPs > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 800px) and (min-width: 1px) {
  .topMSPs {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .topMSPs {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .topMSPs {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .topMSPs {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topMSPs > div,
.internetExplorer .topMSPs > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .topMSPs > div:nth-child(1),
.internetExplorer .topMSPs > a:nth-child(1),
.internetExplorer .topMSPs > div:nth-child(2),
.internetExplorer .topMSPs > a:nth-child(2),
.internetExplorer .topMSPs > div:nth-child(3),
.internetExplorer .topMSPs > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topMSPs > div *,
.internetExplorer .topMSPs > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .topMSPs > div:nth-child(n),
  .internetExplorer .topMSPs > a:nth-child(n) {
    width: 100%;
  }
}
.topMSPs > div,
.topMSPs > a {
  margin-bottom: 24px;
  display: block;
}
.topMSPs > div:last-child:nth-child(2),
.topMSPs > a:last-child:nth-child(2),
.topMSPs > div:last-child:nth-child(3),
.topMSPs > a:last-child:nth-child(3),
.topMSPs > div:last-child:nth-child(4),
.topMSPs > a:last-child:nth-child(4),
.topMSPs > div:nth-last-child(2):first-child,
.topMSPs > a:nth-last-child(2):first-child,
.topMSPs > div:nth-last-child(2):nth-child(2),
.topMSPs > a:nth-last-child(2):nth-child(2),
.topMSPs > div:nth-last-child(2):nth-child(3),
.topMSPs > a:nth-last-child(2):nth-child(3),
.topMSPs > div:nth-last-child(3):first-child,
.topMSPs > a:nth-last-child(3):first-child,
.topMSPs > div:nth-last-child(3):nth-child(2),
.topMSPs > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.topMSPs > div > svg.svg-inline--fa,
.topMSPs > a > svg.svg-inline--fa,
.topMSPs > div > i.fas,
.topMSPs > a > i.fas,
.topMSPs > div > i.fab,
.topMSPs > a > i.fab,
.topMSPs > div > i.fal,
.topMSPs > a > i.fal,
.topMSPs > div > i.far,
.topMSPs > a > i.far {
  font-size: 26px;
  color: #84a750;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .topMSPs > div > svg.svg-inline--fa,
  .topMSPs > a > svg.svg-inline--fa,
  .topMSPs > div > i.fas,
  .topMSPs > a > i.fas,
  .topMSPs > div > i.fab,
  .topMSPs > a > i.fab,
  .topMSPs > div > i.fal,
  .topMSPs > a > i.fal,
  .topMSPs > div > i.far,
  .topMSPs > a > i.far {
    font-size: 20.8px;
  }
}
.topMSPs > div > p,
.topMSPs > a > p {
  text-align: center;
  margin: 0;
}
.topMSPs > div h4,
.topMSPs > a h4 {
  margin: 6px 0 0 0;
  color: #84a750;
  text-align: center;
}
.topMSPs.gridOfTwo {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  margin: 48px auto;
}
.fold > div .topMSPs.gridOfTwo:last-child {
  margin-bottom: 0;
}
.fold > div .topMSPs.gridOfTwo:only-child {
  margin: 0;
}
.topMSPs.gridOfTwo > * {
  display: none;
}
.topMSPs.gridOfTwo > div,
.topMSPs.gridOfTwo > a {
  display: block;
}
.topMSPs.gridOfTwo > div:nth-child(n),
.topMSPs.gridOfTwo > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 1px) {
  .topMSPs.gridOfTwo {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .topMSPs.gridOfTwo {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .topMSPs.gridOfTwo {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .topMSPs.gridOfTwo {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topMSPs.gridOfTwo > div,
.internetExplorer .topMSPs.gridOfTwo > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .topMSPs.gridOfTwo > div:nth-child(1),
.internetExplorer .topMSPs.gridOfTwo > a:nth-child(1),
.internetExplorer .topMSPs.gridOfTwo > div:nth-child(2),
.internetExplorer .topMSPs.gridOfTwo > a:nth-child(2),
.internetExplorer .topMSPs.gridOfTwo > div:nth-child(3),
.internetExplorer .topMSPs.gridOfTwo > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topMSPs.gridOfTwo > div *,
.internetExplorer .topMSPs.gridOfTwo > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .topMSPs.gridOfTwo > div:nth-child(n),
  .internetExplorer .topMSPs.gridOfTwo > a:nth-child(n) {
    width: 100%;
  }
}
.topMSPs.gridOfTwo > div,
.topMSPs.gridOfTwo > a {
  margin-bottom: 24px;
  display: block;
}
.topMSPs.gridOfTwo > div:last-child:nth-child(2),
.topMSPs.gridOfTwo > a:last-child:nth-child(2),
.topMSPs.gridOfTwo > div:last-child:nth-child(3),
.topMSPs.gridOfTwo > a:last-child:nth-child(3),
.topMSPs.gridOfTwo > div:last-child:nth-child(4),
.topMSPs.gridOfTwo > a:last-child:nth-child(4),
.topMSPs.gridOfTwo > div:nth-last-child(2):first-child,
.topMSPs.gridOfTwo > a:nth-last-child(2):first-child,
.topMSPs.gridOfTwo > div:nth-last-child(2):nth-child(2),
.topMSPs.gridOfTwo > a:nth-last-child(2):nth-child(2),
.topMSPs.gridOfTwo > div:nth-last-child(2):nth-child(3),
.topMSPs.gridOfTwo > a:nth-last-child(2):nth-child(3),
.topMSPs.gridOfTwo > div:nth-last-child(3):first-child,
.topMSPs.gridOfTwo > a:nth-last-child(3):first-child,
.topMSPs.gridOfTwo > div:nth-last-child(3):nth-child(2),
.topMSPs.gridOfTwo > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.topMSPs.gridOfTwo > div > svg.svg-inline--fa,
.topMSPs.gridOfTwo > a > svg.svg-inline--fa,
.topMSPs.gridOfTwo > div > i.fas,
.topMSPs.gridOfTwo > a > i.fas,
.topMSPs.gridOfTwo > div > i.fab,
.topMSPs.gridOfTwo > a > i.fab,
.topMSPs.gridOfTwo > div > i.fal,
.topMSPs.gridOfTwo > a > i.fal,
.topMSPs.gridOfTwo > div > i.far,
.topMSPs.gridOfTwo > a > i.far {
  font-size: 26px;
  color: #84a750;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .topMSPs.gridOfTwo > div > svg.svg-inline--fa,
  .topMSPs.gridOfTwo > a > svg.svg-inline--fa,
  .topMSPs.gridOfTwo > div > i.fas,
  .topMSPs.gridOfTwo > a > i.fas,
  .topMSPs.gridOfTwo > div > i.fab,
  .topMSPs.gridOfTwo > a > i.fab,
  .topMSPs.gridOfTwo > div > i.fal,
  .topMSPs.gridOfTwo > a > i.fal,
  .topMSPs.gridOfTwo > div > i.far,
  .topMSPs.gridOfTwo > a > i.far {
    font-size: 20.8px;
  }
}
.topMSPs.gridOfTwo > div > p,
.topMSPs.gridOfTwo > a > p {
  text-align: center;
  margin: 0;
}
.topMSPs.gridOfTwo > div h4,
.topMSPs.gridOfTwo > a h4 {
  margin: 6px 0 0 0;
  color: #84a750;
  text-align: center;
}
.topMSPs.gridOfThree {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  margin: 48px auto;
}
.fold > div .topMSPs.gridOfThree:last-child {
  margin-bottom: 0;
}
.fold > div .topMSPs.gridOfThree:only-child {
  margin: 0;
}
.topMSPs.gridOfThree > * {
  display: none;
}
.topMSPs.gridOfThree > div,
.topMSPs.gridOfThree > a {
  display: block;
}
.topMSPs.gridOfThree > div:nth-child(n),
.topMSPs.gridOfThree > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 1px) {
  .topMSPs.gridOfThree {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .topMSPs.gridOfThree {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .topMSPs.gridOfThree {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .topMSPs.gridOfThree {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topMSPs.gridOfThree > div,
.internetExplorer .topMSPs.gridOfThree > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .topMSPs.gridOfThree > div:nth-child(1),
.internetExplorer .topMSPs.gridOfThree > a:nth-child(1),
.internetExplorer .topMSPs.gridOfThree > div:nth-child(2),
.internetExplorer .topMSPs.gridOfThree > a:nth-child(2),
.internetExplorer .topMSPs.gridOfThree > div:nth-child(3),
.internetExplorer .topMSPs.gridOfThree > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topMSPs.gridOfThree > div *,
.internetExplorer .topMSPs.gridOfThree > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .topMSPs.gridOfThree > div:nth-child(n),
  .internetExplorer .topMSPs.gridOfThree > a:nth-child(n) {
    width: 100%;
  }
}
.topMSPs.gridOfThree > div,
.topMSPs.gridOfThree > a {
  margin-bottom: 24px;
  display: block;
}
.topMSPs.gridOfThree > div:last-child:nth-child(2),
.topMSPs.gridOfThree > a:last-child:nth-child(2),
.topMSPs.gridOfThree > div:last-child:nth-child(3),
.topMSPs.gridOfThree > a:last-child:nth-child(3),
.topMSPs.gridOfThree > div:last-child:nth-child(4),
.topMSPs.gridOfThree > a:last-child:nth-child(4),
.topMSPs.gridOfThree > div:nth-last-child(2):first-child,
.topMSPs.gridOfThree > a:nth-last-child(2):first-child,
.topMSPs.gridOfThree > div:nth-last-child(2):nth-child(2),
.topMSPs.gridOfThree > a:nth-last-child(2):nth-child(2),
.topMSPs.gridOfThree > div:nth-last-child(2):nth-child(3),
.topMSPs.gridOfThree > a:nth-last-child(2):nth-child(3),
.topMSPs.gridOfThree > div:nth-last-child(3):first-child,
.topMSPs.gridOfThree > a:nth-last-child(3):first-child,
.topMSPs.gridOfThree > div:nth-last-child(3):nth-child(2),
.topMSPs.gridOfThree > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.topMSPs.gridOfThree > div > svg.svg-inline--fa,
.topMSPs.gridOfThree > a > svg.svg-inline--fa,
.topMSPs.gridOfThree > div > i.fas,
.topMSPs.gridOfThree > a > i.fas,
.topMSPs.gridOfThree > div > i.fab,
.topMSPs.gridOfThree > a > i.fab,
.topMSPs.gridOfThree > div > i.fal,
.topMSPs.gridOfThree > a > i.fal,
.topMSPs.gridOfThree > div > i.far,
.topMSPs.gridOfThree > a > i.far {
  font-size: 26px;
  color: #84a750;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .topMSPs.gridOfThree > div > svg.svg-inline--fa,
  .topMSPs.gridOfThree > a > svg.svg-inline--fa,
  .topMSPs.gridOfThree > div > i.fas,
  .topMSPs.gridOfThree > a > i.fas,
  .topMSPs.gridOfThree > div > i.fab,
  .topMSPs.gridOfThree > a > i.fab,
  .topMSPs.gridOfThree > div > i.fal,
  .topMSPs.gridOfThree > a > i.fal,
  .topMSPs.gridOfThree > div > i.far,
  .topMSPs.gridOfThree > a > i.far {
    font-size: 20.8px;
  }
}
.topMSPs.gridOfThree > div > p,
.topMSPs.gridOfThree > a > p {
  text-align: center;
  margin: 0;
}
.topMSPs.gridOfThree > div h4,
.topMSPs.gridOfThree > a h4 {
  margin: 6px 0 0 0;
  color: #84a750;
  text-align: center;
}
.topMSPs.smallGroupPromise {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  margin: 48px auto;
}
.fold > div .topMSPs.smallGroupPromise:last-child {
  margin-bottom: 0;
}
.fold > div .topMSPs.smallGroupPromise:only-child {
  margin: 0;
}
.topMSPs.smallGroupPromise > * {
  display: none;
}
.topMSPs.smallGroupPromise > div,
.topMSPs.smallGroupPromise > a {
  display: block;
}
.topMSPs.smallGroupPromise > div:nth-child(n),
.topMSPs.smallGroupPromise > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 1px) {
  .topMSPs.smallGroupPromise {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .topMSPs.smallGroupPromise {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .topMSPs.smallGroupPromise {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .topMSPs.smallGroupPromise {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topMSPs.smallGroupPromise > div,
.internetExplorer .topMSPs.smallGroupPromise > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .topMSPs.smallGroupPromise > div:nth-child(1),
.internetExplorer .topMSPs.smallGroupPromise > a:nth-child(1),
.internetExplorer .topMSPs.smallGroupPromise > div:nth-child(2),
.internetExplorer .topMSPs.smallGroupPromise > a:nth-child(2),
.internetExplorer .topMSPs.smallGroupPromise > div:nth-child(3),
.internetExplorer .topMSPs.smallGroupPromise > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topMSPs.smallGroupPromise > div *,
.internetExplorer .topMSPs.smallGroupPromise > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .topMSPs.smallGroupPromise > div:nth-child(n),
  .internetExplorer .topMSPs.smallGroupPromise > a:nth-child(n) {
    width: 100%;
  }
}
.topMSPs.smallGroupPromise > div,
.topMSPs.smallGroupPromise > a {
  margin-bottom: 24px;
  display: block;
}
.topMSPs.smallGroupPromise > div:last-child:nth-child(2),
.topMSPs.smallGroupPromise > a:last-child:nth-child(2),
.topMSPs.smallGroupPromise > div:last-child:nth-child(3),
.topMSPs.smallGroupPromise > a:last-child:nth-child(3),
.topMSPs.smallGroupPromise > div:last-child:nth-child(4),
.topMSPs.smallGroupPromise > a:last-child:nth-child(4),
.topMSPs.smallGroupPromise > div:nth-last-child(2):first-child,
.topMSPs.smallGroupPromise > a:nth-last-child(2):first-child,
.topMSPs.smallGroupPromise > div:nth-last-child(2):nth-child(2),
.topMSPs.smallGroupPromise > a:nth-last-child(2):nth-child(2),
.topMSPs.smallGroupPromise > div:nth-last-child(2):nth-child(3),
.topMSPs.smallGroupPromise > a:nth-last-child(2):nth-child(3),
.topMSPs.smallGroupPromise > div:nth-last-child(3):first-child,
.topMSPs.smallGroupPromise > a:nth-last-child(3):first-child,
.topMSPs.smallGroupPromise > div:nth-last-child(3):nth-child(2),
.topMSPs.smallGroupPromise > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.topMSPs.smallGroupPromise > div > svg.svg-inline--fa,
.topMSPs.smallGroupPromise > a > svg.svg-inline--fa,
.topMSPs.smallGroupPromise > div > i.fas,
.topMSPs.smallGroupPromise > a > i.fas,
.topMSPs.smallGroupPromise > div > i.fab,
.topMSPs.smallGroupPromise > a > i.fab,
.topMSPs.smallGroupPromise > div > i.fal,
.topMSPs.smallGroupPromise > a > i.fal,
.topMSPs.smallGroupPromise > div > i.far,
.topMSPs.smallGroupPromise > a > i.far {
  font-size: 26px;
  color: #84a750;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .topMSPs.smallGroupPromise > div > svg.svg-inline--fa,
  .topMSPs.smallGroupPromise > a > svg.svg-inline--fa,
  .topMSPs.smallGroupPromise > div > i.fas,
  .topMSPs.smallGroupPromise > a > i.fas,
  .topMSPs.smallGroupPromise > div > i.fab,
  .topMSPs.smallGroupPromise > a > i.fab,
  .topMSPs.smallGroupPromise > div > i.fal,
  .topMSPs.smallGroupPromise > a > i.fal,
  .topMSPs.smallGroupPromise > div > i.far,
  .topMSPs.smallGroupPromise > a > i.far {
    font-size: 20.8px;
  }
}
.topMSPs.smallGroupPromise > div > p,
.topMSPs.smallGroupPromise > a > p {
  text-align: center;
  margin: 0;
}
.topMSPs.smallGroupPromise > div h4,
.topMSPs.smallGroupPromise > a h4 {
  margin: 6px 0 0 0;
  color: #84a750;
  text-align: center;
}
.threeMajorUSPs {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  margin: 48px auto;
  margin: 48px 0;
  grid-gap: 48px;
}
.fold > div .threeMajorUSPs:last-child {
  margin-bottom: 0;
}
.fold > div .threeMajorUSPs:only-child {
  margin: 0;
}
.threeMajorUSPs > * {
  display: none;
}
.threeMajorUSPs > div,
.threeMajorUSPs > a {
  display: block;
}
.threeMajorUSPs > div:nth-child(n),
.threeMajorUSPs > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 1px) {
  .threeMajorUSPs {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .threeMajorUSPs {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .threeMajorUSPs {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .threeMajorUSPs {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .threeMajorUSPs > div,
.internetExplorer .threeMajorUSPs > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .threeMajorUSPs > div:nth-child(1),
.internetExplorer .threeMajorUSPs > a:nth-child(1),
.internetExplorer .threeMajorUSPs > div:nth-child(2),
.internetExplorer .threeMajorUSPs > a:nth-child(2),
.internetExplorer .threeMajorUSPs > div:nth-child(3),
.internetExplorer .threeMajorUSPs > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .threeMajorUSPs > div *,
.internetExplorer .threeMajorUSPs > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .threeMajorUSPs > div:nth-child(n),
  .internetExplorer .threeMajorUSPs > a:nth-child(n) {
    width: 100%;
  }
}
.threeMajorUSPs > div,
.threeMajorUSPs > a {
  margin-bottom: 24px;
  display: block;
}
.threeMajorUSPs > div:last-child:nth-child(2),
.threeMajorUSPs > a:last-child:nth-child(2),
.threeMajorUSPs > div:last-child:nth-child(3),
.threeMajorUSPs > a:last-child:nth-child(3),
.threeMajorUSPs > div:last-child:nth-child(4),
.threeMajorUSPs > a:last-child:nth-child(4),
.threeMajorUSPs > div:nth-last-child(2):first-child,
.threeMajorUSPs > a:nth-last-child(2):first-child,
.threeMajorUSPs > div:nth-last-child(2):nth-child(2),
.threeMajorUSPs > a:nth-last-child(2):nth-child(2),
.threeMajorUSPs > div:nth-last-child(2):nth-child(3),
.threeMajorUSPs > a:nth-last-child(2):nth-child(3),
.threeMajorUSPs > div:nth-last-child(3):first-child,
.threeMajorUSPs > a:nth-last-child(3):first-child,
.threeMajorUSPs > div:nth-last-child(3):nth-child(2),
.threeMajorUSPs > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.threeMajorUSPs > div > svg.svg-inline--fa,
.threeMajorUSPs > a > svg.svg-inline--fa,
.threeMajorUSPs > div > i.fas,
.threeMajorUSPs > a > i.fas,
.threeMajorUSPs > div > i.fab,
.threeMajorUSPs > a > i.fab,
.threeMajorUSPs > div > i.fal,
.threeMajorUSPs > a > i.fal,
.threeMajorUSPs > div > i.far,
.threeMajorUSPs > a > i.far {
  font-size: 26px;
  color: #4d4d4d;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .threeMajorUSPs > div > svg.svg-inline--fa,
  .threeMajorUSPs > a > svg.svg-inline--fa,
  .threeMajorUSPs > div > i.fas,
  .threeMajorUSPs > a > i.fas,
  .threeMajorUSPs > div > i.fab,
  .threeMajorUSPs > a > i.fab,
  .threeMajorUSPs > div > i.fal,
  .threeMajorUSPs > a > i.fal,
  .threeMajorUSPs > div > i.far,
  .threeMajorUSPs > a > i.far {
    font-size: 20.8px;
  }
}
.threeMajorUSPs > div > p,
.threeMajorUSPs > a > p {
  text-align: center;
  margin: 0;
}
.threeMajorUSPs > div h4,
.threeMajorUSPs > a h4 {
  margin: 6px 0 0 0;
  color: #4d4d4d;
  text-align: center;
}
@media (max-width: 700px) {
  .threeMajorUSPs {
    grid-gap: 48px;
  }
}
.threeMajorUSPs > div {
  position: relative;
  padding: 0;
  margin: 0;
}
.threeMajorUSPs > div svg.svg-inline--fa,
.threeMajorUSPs > div i.fas,
.threeMajorUSPs > div i.fab,
.threeMajorUSPs > div i.fal,
.threeMajorUSPs > div i.far,
.threeMajorUSPs > div .fa-fw,
.threeMajorUSPs > div i.fa-fw {
  font-size: 26px;
  width: 50px;
  height: 50px;
  line-height: 1em;
  display: block;
  position: absolute;
  background: #cf2b04;
  color: #fff;
  border-radius: 50%;
  padding: 12px;
  border: 0 solid #fff;
  top: -25px;
  left: calc((100% - 50px) / 2);
  vertical-align: middle;
  text-align: center;
}
.threeMajorUSPs > div h4 {
  text-transform: none;
}
.threeMajorUSPs > div p {
  margin-top: 12px;
  font-size: 1rem;
}
@media (max-width: 700px) {
  .threeMajorUSPs > div {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 700px) {
  .threeMajorUSPs > div:nth-of-type(1) {
    margin-top: 0px;
  }
  .threeMajorUSPs > div:nth-of-type(2) {
    margin-top: 60px;
  }
  .threeMajorUSPs > div:nth-of-type(3) {
    margin-top: 120px;
  }
}
@media (max-width: 800px) {
  .threeMajorUSPs {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 700px) {
  .threeMajorUSPs {
    grid-template-columns: 1fr;
    margin: 24px 0;
  }
  .threeMajorUSPs > div:not(:last-of-type) {
    margin-bottom: 24px;
  }
}
.whyBookWithUs {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
  margin: 48px auto;
}
.fold > div .whyBookWithUs:last-child {
  margin-bottom: 0;
}
.fold > div .whyBookWithUs:only-child {
  margin: 0;
}
.whyBookWithUs > * {
  display: none;
}
.whyBookWithUs > div,
.whyBookWithUs > a {
  display: block;
}
.whyBookWithUs > div:nth-child(n),
.whyBookWithUs > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.whyBookWithUs > div:last-child:nth-child(2),
.whyBookWithUs > a:last-child:nth-child(2),
.whyBookWithUs > div:first-child:nth-last-child(2),
.whyBookWithUs > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 800px) and (min-width: 1px) {
  .whyBookWithUs {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .whyBookWithUs {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .whyBookWithUs {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .whyBookWithUs {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .whyBookWithUs > div,
.internetExplorer .whyBookWithUs > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .whyBookWithUs > div:nth-child(1),
.internetExplorer .whyBookWithUs > a:nth-child(1),
.internetExplorer .whyBookWithUs > div:nth-child(2),
.internetExplorer .whyBookWithUs > a:nth-child(2),
.internetExplorer .whyBookWithUs > div:nth-child(3),
.internetExplorer .whyBookWithUs > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .whyBookWithUs > div *,
.internetExplorer .whyBookWithUs > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .whyBookWithUs > div:nth-child(n),
  .internetExplorer .whyBookWithUs > a:nth-child(n) {
    width: 100%;
  }
}
.whyBookWithUs > div,
.whyBookWithUs > a {
  margin-bottom: 24px;
  display: block;
}
.whyBookWithUs > div:last-child:nth-child(2),
.whyBookWithUs > a:last-child:nth-child(2),
.whyBookWithUs > div:last-child:nth-child(3),
.whyBookWithUs > a:last-child:nth-child(3),
.whyBookWithUs > div:last-child:nth-child(4),
.whyBookWithUs > a:last-child:nth-child(4),
.whyBookWithUs > div:nth-last-child(2):first-child,
.whyBookWithUs > a:nth-last-child(2):first-child,
.whyBookWithUs > div:nth-last-child(2):nth-child(2),
.whyBookWithUs > a:nth-last-child(2):nth-child(2),
.whyBookWithUs > div:nth-last-child(2):nth-child(3),
.whyBookWithUs > a:nth-last-child(2):nth-child(3),
.whyBookWithUs > div:nth-last-child(3):first-child,
.whyBookWithUs > a:nth-last-child(3):first-child,
.whyBookWithUs > div:nth-last-child(3):nth-child(2),
.whyBookWithUs > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.whyBookWithUs > div > svg.svg-inline--fa,
.whyBookWithUs > a > svg.svg-inline--fa,
.whyBookWithUs > div > i.fas,
.whyBookWithUs > a > i.fas,
.whyBookWithUs > div > i.fab,
.whyBookWithUs > a > i.fab,
.whyBookWithUs > div > i.fal,
.whyBookWithUs > a > i.fal,
.whyBookWithUs > div > i.far,
.whyBookWithUs > a > i.far {
  font-size: 35px;
  color: #999999;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .whyBookWithUs > div > svg.svg-inline--fa,
  .whyBookWithUs > a > svg.svg-inline--fa,
  .whyBookWithUs > div > i.fas,
  .whyBookWithUs > a > i.fas,
  .whyBookWithUs > div > i.fab,
  .whyBookWithUs > a > i.fab,
  .whyBookWithUs > div > i.fal,
  .whyBookWithUs > a > i.fal,
  .whyBookWithUs > div > i.far,
  .whyBookWithUs > a > i.far {
    font-size: 28px;
  }
}
.whyBookWithUs > div > p,
.whyBookWithUs > a > p {
  text-align: center;
  margin: 0;
}
.whyBookWithUs > div h4,
.whyBookWithUs > a h4 {
  margin: 6px 0 0 0;
  color: #999999;
  text-align: center;
}
.whyBookWithUs > div {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  padding: 24px 12px;
  display: flex;
  flex-direction: column;
  margin: 0;
}
.whyBookWithUs > div h5 {
  text-transform: uppercase;
  text-align: center;
  font-weight: bold;
  color: #999999;
  margin-top: 5px;
}
.whyBookWithUs > div p {
  margin-top: auto;
}
.onPageContents {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  margin: 48px auto;
}
.fold > div .onPageContents:last-child {
  margin-bottom: 0;
}
.fold > div .onPageContents:only-child {
  margin: 0;
}
.onPageContents > * {
  display: none;
}
.onPageContents > div,
.onPageContents > a {
  display: block;
}
.onPageContents > div:nth-child(n),
.onPageContents > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 1px) {
  .onPageContents {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .onPageContents {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .onPageContents {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .onPageContents {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .onPageContents > div,
.internetExplorer .onPageContents > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .onPageContents > div:nth-child(1),
.internetExplorer .onPageContents > a:nth-child(1),
.internetExplorer .onPageContents > div:nth-child(2),
.internetExplorer .onPageContents > a:nth-child(2),
.internetExplorer .onPageContents > div:nth-child(3),
.internetExplorer .onPageContents > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .onPageContents > div *,
.internetExplorer .onPageContents > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .onPageContents > div:nth-child(n),
  .internetExplorer .onPageContents > a:nth-child(n) {
    width: 100%;
  }
}
.onPageContents > div,
.onPageContents > a {
  margin-bottom: 24px;
  display: block;
}
.onPageContents > div:last-child:nth-child(2),
.onPageContents > a:last-child:nth-child(2),
.onPageContents > div:last-child:nth-child(3),
.onPageContents > a:last-child:nth-child(3),
.onPageContents > div:last-child:nth-child(4),
.onPageContents > a:last-child:nth-child(4),
.onPageContents > div:nth-last-child(2):first-child,
.onPageContents > a:nth-last-child(2):first-child,
.onPageContents > div:nth-last-child(2):nth-child(2),
.onPageContents > a:nth-last-child(2):nth-child(2),
.onPageContents > div:nth-last-child(2):nth-child(3),
.onPageContents > a:nth-last-child(2):nth-child(3),
.onPageContents > div:nth-last-child(3):first-child,
.onPageContents > a:nth-last-child(3):first-child,
.onPageContents > div:nth-last-child(3):nth-child(2),
.onPageContents > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.onPageContents > div > svg.svg-inline--fa,
.onPageContents > a > svg.svg-inline--fa,
.onPageContents > div > i.fas,
.onPageContents > a > i.fas,
.onPageContents > div > i.fab,
.onPageContents > a > i.fab,
.onPageContents > div > i.fal,
.onPageContents > a > i.fal,
.onPageContents > div > i.far,
.onPageContents > a > i.far {
  font-size: 35px;
  color: #84a750;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .onPageContents > div > svg.svg-inline--fa,
  .onPageContents > a > svg.svg-inline--fa,
  .onPageContents > div > i.fas,
  .onPageContents > a > i.fas,
  .onPageContents > div > i.fab,
  .onPageContents > a > i.fab,
  .onPageContents > div > i.fal,
  .onPageContents > a > i.fal,
  .onPageContents > div > i.far,
  .onPageContents > a > i.far {
    font-size: 28px;
  }
}
.onPageContents > div > p,
.onPageContents > a > p {
  text-align: center;
  margin: 0;
}
.onPageContents > div h4,
.onPageContents > a h4 {
  margin: 6px 0 0 0;
  color: #84a750;
  text-align: center;
}
.onPageContents h4 a,
.onPageContents h5 a {
  color: #4d4d4d;
}
.topSellingPoints {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
}
.topSellingPoints > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .topSellingPoints > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.topSellingPoints > div:not(:last-child) {
  margin-bottom: 24px;
}
.topSellingPoints.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .topSellingPoints.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.topSellingPoints.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .topSellingPoints.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.topSellingPoints.tour-tinerary,
.topSellingPoints.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.topSellingPoints.tour-tinerary + .topSellingPoints.tour-tinerary,
.topSellingPoints.tour-tinerary + .topSellingPoints.tour-accommodation,
.topSellingPoints.tour-accommodation + .topSellingPoints.tour-tinerary,
.topSellingPoints.tour-accommodation + .topSellingPoints.tour-accommodation {
  border-top: none;
}
.topSellingPoints h1 svg.svg-inline--fa,
.topSellingPoints h2 svg.svg-inline--fa,
.topSellingPoints h3 svg.svg-inline--fa,
.topSellingPoints h4 svg.svg-inline--fa,
.topSellingPoints h5 svg.svg-inline--fa,
.topSellingPoints p svg.svg-inline--fa,
.topSellingPoints h1 i.fas,
.topSellingPoints h2 i.fas,
.topSellingPoints h3 i.fas,
.topSellingPoints h4 i.fas,
.topSellingPoints h5 i.fas,
.topSellingPoints p i.fas,
.topSellingPoints h1 i.fab,
.topSellingPoints h2 i.fab,
.topSellingPoints h3 i.fab,
.topSellingPoints h4 i.fab,
.topSellingPoints h5 i.fab,
.topSellingPoints p i.fab,
.topSellingPoints h1 i.fal,
.topSellingPoints h2 i.fal,
.topSellingPoints h3 i.fal,
.topSellingPoints h4 i.fal,
.topSellingPoints h5 i.fal,
.topSellingPoints p i.fal,
.topSellingPoints h1 i.far,
.topSellingPoints h2 i.far,
.topSellingPoints h3 i.far,
.topSellingPoints h4 i.far,
.topSellingPoints h5 i.far,
.topSellingPoints p i.far {
  font-size: inherit;
}
.topSellingPoints.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .topSellingPoints.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.topSellingPoints.timeLine > div h2 {
  text-align: center;
}
.topSellingPoints.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.topSellingPoints.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .topSellingPoints.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(6n+3),
  .topSellingPoints.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .topSellingPoints.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .topSellingPoints.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.topSellingPoints.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.topSellingPoints.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.topSellingPoints.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.topSellingPoints.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.topSellingPoints.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.topSellingPoints.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.topSellingPoints.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.topSellingPoints.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.topSellingPoints.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.topSellingPoints.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.topSellingPoints.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.topSellingPoints.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.topSellingPoints.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.topSellingPoints.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.topSellingPoints.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.topSellingPoints.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.topSellingPoints.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.topSellingPoints.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.topSellingPoints.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.topSellingPoints.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.topSellingPoints.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.topSellingPoints.timeLine > div > div p {
  font-size: 0.9rem;
}
.topSellingPoints .svg-map {
  max-width: 600px;
  margin: auto;
}
.topSellingPoints > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .topSellingPoints > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.topSellingPoints > div:not(:last-child) {
  margin-bottom: 24px;
}
.topSellingPoints > div > a[rel^="lightbox"],
.topSellingPoints > div > img,
.topSellingPoints > div > .photoGallery,
.topSellingPoints > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.topSellingPoints:before,
.topSellingPoints:after {
  display: block;
  content: "";
  margin: 0 auto;
  height: 1px;
  background: #dcdcdc;
  opacity: 0.8;
  width: 80%;
  max-width: 650px;
}
.topSellingPoints:before {
  margin-bottom: clamp(36px, 10vw, 72px);
}
.topSellingPoints > div h2,
.topSellingPoints > div h3 {
  text-align: center;
}
.topSellingPoints > div h3 {
  font-size: clamp(1.85rem, 3.75vw, 3.2rem);
}
.topSellingPoints > div > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
  margin: 48px auto;
  margin-bottom: clamp(36px, 10vw, 72px);
}
.fold > div .topSellingPoints > div > div:last-child {
  margin-bottom: 0;
}
.fold > div .topSellingPoints > div > div:only-child {
  margin: 0;
}
.topSellingPoints > div > div > * {
  display: none;
}
.topSellingPoints > div > div > div,
.topSellingPoints > div > div > a {
  display: block;
}
.topSellingPoints > div > div > div:nth-child(n),
.topSellingPoints > div > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.topSellingPoints > div > div > div:last-child:nth-child(2),
.topSellingPoints > div > div > a:last-child:nth-child(2),
.topSellingPoints > div > div > div:first-child:nth-last-child(2),
.topSellingPoints > div > div > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 800px) and (min-width: 380px) {
  .topSellingPoints > div > div {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .topSellingPoints > div > div {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 380px) {
  .topSellingPoints > div > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .topSellingPoints > div > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topSellingPoints > div > div > div,
.internetExplorer .topSellingPoints > div > div > a {
  width: 25%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .topSellingPoints > div > div > div:nth-child(1),
.internetExplorer .topSellingPoints > div > div > a:nth-child(1),
.internetExplorer .topSellingPoints > div > div > div:nth-child(2),
.internetExplorer .topSellingPoints > div > div > a:nth-child(2),
.internetExplorer .topSellingPoints > div > div > div:nth-child(3),
.internetExplorer .topSellingPoints > div > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topSellingPoints > div > div > div *,
.internetExplorer .topSellingPoints > div > div > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .topSellingPoints > div > div > div:nth-child(n),
  .internetExplorer .topSellingPoints > div > div > a:nth-child(n) {
    width: 100%;
  }
}
.topSellingPoints > div > div > div,
.topSellingPoints > div > div > a {
  margin-bottom: 24px;
  display: block;
}
.topSellingPoints > div > div > div:last-child:nth-child(2),
.topSellingPoints > div > div > a:last-child:nth-child(2),
.topSellingPoints > div > div > div:last-child:nth-child(3),
.topSellingPoints > div > div > a:last-child:nth-child(3),
.topSellingPoints > div > div > div:last-child:nth-child(4),
.topSellingPoints > div > div > a:last-child:nth-child(4),
.topSellingPoints > div > div > div:nth-last-child(2):first-child,
.topSellingPoints > div > div > a:nth-last-child(2):first-child,
.topSellingPoints > div > div > div:nth-last-child(2):nth-child(2),
.topSellingPoints > div > div > a:nth-last-child(2):nth-child(2),
.topSellingPoints > div > div > div:nth-last-child(2):nth-child(3),
.topSellingPoints > div > div > a:nth-last-child(2):nth-child(3),
.topSellingPoints > div > div > div:nth-last-child(3):first-child,
.topSellingPoints > div > div > a:nth-last-child(3):first-child,
.topSellingPoints > div > div > div:nth-last-child(3):nth-child(2),
.topSellingPoints > div > div > a:nth-last-child(3):nth-child(2) {
  margin-bottom: 0;
}
.topSellingPoints > div > div > div > svg.svg-inline--fa,
.topSellingPoints > div > div > a > svg.svg-inline--fa,
.topSellingPoints > div > div > div > i.fas,
.topSellingPoints > div > div > a > i.fas,
.topSellingPoints > div > div > div > i.fab,
.topSellingPoints > div > div > a > i.fab,
.topSellingPoints > div > div > div > i.fal,
.topSellingPoints > div > div > a > i.fal,
.topSellingPoints > div > div > div > i.far,
.topSellingPoints > div > div > a > i.far {
  font-size: 45px;
  color: #84a750;
  display: block;
  margin: 0 auto;
}
@media (max-width: 650px) {
  .topSellingPoints > div > div > div > svg.svg-inline--fa,
  .topSellingPoints > div > div > a > svg.svg-inline--fa,
  .topSellingPoints > div > div > div > i.fas,
  .topSellingPoints > div > div > a > i.fas,
  .topSellingPoints > div > div > div > i.fab,
  .topSellingPoints > div > div > a > i.fab,
  .topSellingPoints > div > div > div > i.fal,
  .topSellingPoints > div > div > a > i.fal,
  .topSellingPoints > div > div > div > i.far,
  .topSellingPoints > div > div > a > i.far {
    font-size: 36px;
  }
}
.topSellingPoints > div > div > div > p,
.topSellingPoints > div > div > a > p {
  text-align: center;
  margin: 0;
}
.topSellingPoints > div > div > div h4,
.topSellingPoints > div > div > a h4 {
  margin: 6px 0 0 0;
  color: #84a750;
  text-align: center;
}
.topSellingPoints > div > div h4 {
  font-size: clamp(15px, 2.5vw, 17px);
}
.topSellingPoints > div > div p {
  font-size: 0.9rem;
}
.topMSPsStrip > div {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .topMSPsStrip > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tourAttractionModalTriggersWrapper {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 12px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .tourAttractionModalTriggersWrapper:last-child {
  margin-bottom: 0;
}
.fold > div .tourAttractionModalTriggersWrapper:only-child {
  margin: 0;
}
.tourAttractionModalTriggersWrapper > * {
  display: none;
}
.tourAttractionModalTriggersWrapper > div,
.tourAttractionModalTriggersWrapper > a {
  display: block;
}
.tourAttractionModalTriggersWrapper > div:nth-child(n),
.tourAttractionModalTriggersWrapper > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 850px) and (min-width: 1px) {
  .tourAttractionModalTriggersWrapper {
    grid-gap: 6px;
  }
}
@media (max-width: 850px) {
  .tourAttractionModalTriggersWrapper {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1px) {
  .tourAttractionModalTriggersWrapper {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourAttractionModalTriggersWrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourAttractionModalTriggersWrapper > div,
.internetExplorer .tourAttractionModalTriggersWrapper > a {
  width: 33.33333333%;
  display: block;
  padding-left: 6px;
  padding-right: 6px;
}
.internetExplorer .tourAttractionModalTriggersWrapper > div:nth-child(1),
.internetExplorer .tourAttractionModalTriggersWrapper > a:nth-child(1),
.internetExplorer .tourAttractionModalTriggersWrapper > div:nth-child(2),
.internetExplorer .tourAttractionModalTriggersWrapper > a:nth-child(2),
.internetExplorer .tourAttractionModalTriggersWrapper > div:nth-child(3),
.internetExplorer .tourAttractionModalTriggersWrapper > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourAttractionModalTriggersWrapper > div *,
.internetExplorer .tourAttractionModalTriggersWrapper > a * {
  max-width: 100%;
}
@media (max-width: 850px) {
  .internetExplorer .tourAttractionModalTriggersWrapper > div:nth-child(n),
  .internetExplorer .tourAttractionModalTriggersWrapper > a:nth-child(n) {
    width: 100%;
  }
}
.tourAttractionModalTrigger {
  display: block;
  background-color: #fff;
  width: 100%;
  background: #fff;
  box-shadow: none;
  border: 1px solid #dddddd;
  overflow: hidden;
  border-radius: 7px;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.slider .tourAttractionModalTrigger {
  width: 96%;
  margin: 5px auto;
}
.tourAttractionModalTrigger > img,
.tourAttractionModalTrigger > picture,
.tourAttractionModalTrigger > picture img {
  min-width: 100%;
  height: 100px;
}
.tourAttractionModalTrigger h1,
.tourAttractionModalTrigger h2 {
  display: none;
}
.tourAttractionModalTrigger h4 {
  display: block;
  color: white;
  background: #5770df;
  padding: 7px 5px 5px 5px;
  margin: 0;
  font-size: 14px;
}
.tourAttractionModalTrigger h4:before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  vertical-align: middle;
  margin-right: 5px;
  content: "\f05a";
}
.tourAttractionModalTrigger > div {
  padding: 12px 6px;
}
.tourAttractionModalTrigger > div p {
  font-size: 14px;
}
.tourAttractionModalTrigger > div .CTA {
  display: block;
  text-align: right;
  color: #5770df;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
}
.tourAttractionModalTrigger > div .CTA:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  margin-left: 5px;
  content: "\f054";
}
.tourAttractionModalTrigger > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.tourAttractionModalTrigger .CTA {
  margin-top: 6px;
  font-size: 14px;
}
.tourAttractionModalTrigger p span {
  color: #5770df;
}
.tourAttractionModalTrigger.history h4 {
  background: #a38bc3;
}
.tourAttractionModalTrigger.history h4:before {
  content: "\f19c";
}
.tourAttractionModalTrigger.history p span {
  color: #a38bc3;
  text-decoration: underline;
  text-underline-position: under;
}
.tourAttractionModalTrigger.sightseeing h4 {
  background: #6db4a9;
}
.tourAttractionModalTrigger.sightseeing h4:before {
  content: "\f1e5";
}
.tourAttractionModalTrigger.sightseeing p span {
  color: #6db4a9;
  text-decoration: underline;
  text-underline-position: under;
}
.tourAttractionModalTrigger.pub h4 {
  background: #bcb08c;
}
.tourAttractionModalTrigger.pub h4:before {
  content: "\f0fc";
}
.tourAttractionModalTrigger.pub p span {
  color: #bcb08c;
  text-decoration: underline;
  text-underline-position: under;
}
.tourAttractionModalTrigger.religion h4 {
  background: #e0b465;
}
.tourAttractionModalTrigger.religion h4:before {
  content: "\f654";
}
.tourAttractionModalTrigger.religion p span {
  color: #e0b465;
  text-decoration: underline;
  text-underline-position: under;
}
.tourAttractionModalTrigger.town h4 {
  background: #e487bf;
}
.tourAttractionModalTrigger.town h4:before {
  content: "\f124";
}
.tourAttractionModalTrigger.town p span {
  color: #e487bf;
  text-decoration: underline;
  text-underline-position: under;
}
.tourAttractionModalTrigger.rural h4 {
  background: #cf6051;
}
.tourAttractionModalTrigger.rural h4:before {
  content: "\f722";
}
.tourAttractionModalTrigger.rural p span {
  color: #cf6051;
  text-decoration: underline;
  text-underline-position: under;
}
.tourAttractionModalTrigger.artisan h4 {
  background: #8caacc;
}
.tourAttractionModalTrigger.artisan h4:before {
  content: "\f79c";
}
.tourAttractionModalTrigger.artisan p span {
  color: #8caacc;
  text-decoration: underline;
  text-underline-position: under;
}
.accommodationProfilesWrapper {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 12px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .accommodationProfilesWrapper:last-child {
  margin-bottom: 0;
}
.fold > div .accommodationProfilesWrapper:only-child {
  margin: 0;
}
.accommodationProfilesWrapper > * {
  display: none;
}
.accommodationProfilesWrapper > div,
.accommodationProfilesWrapper > a {
  display: block;
}
.accommodationProfilesWrapper > div:nth-child(n),
.accommodationProfilesWrapper > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 850px) and (min-width: 450px) {
  .accommodationProfilesWrapper {
    grid-gap: 6px;
  }
}
@media (max-width: 850px) {
  .accommodationProfilesWrapper {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 450px) {
  .accommodationProfilesWrapper {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .accommodationProfilesWrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .accommodationProfilesWrapper > div,
.internetExplorer .accommodationProfilesWrapper > a {
  width: 33.33333333%;
  display: block;
  padding-left: 6px;
  padding-right: 6px;
}
.internetExplorer .accommodationProfilesWrapper > div:nth-child(1),
.internetExplorer .accommodationProfilesWrapper > a:nth-child(1),
.internetExplorer .accommodationProfilesWrapper > div:nth-child(2),
.internetExplorer .accommodationProfilesWrapper > a:nth-child(2),
.internetExplorer .accommodationProfilesWrapper > div:nth-child(3),
.internetExplorer .accommodationProfilesWrapper > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .accommodationProfilesWrapper > div *,
.internetExplorer .accommodationProfilesWrapper > a * {
  max-width: 100%;
}
@media (max-width: 850px) {
  .internetExplorer .accommodationProfilesWrapper > div:nth-child(n),
  .internetExplorer .accommodationProfilesWrapper > a:nth-child(n) {
    width: 100%;
  }
}
.accommodationProfile {
  width: 100%;
  background: #fff;
  box-shadow: none;
  border: 1px solid #dddddd;
  overflow: hidden;
  border-radius: 7px;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.slider .accommodationProfile {
  width: 96%;
  margin: 5px auto;
}
.accommodationProfile > img,
.accommodationProfile > picture,
.accommodationProfile > picture img {
  min-width: 100%;
  height: 100px;
}
.accommodationProfile h1,
.accommodationProfile h2 {
  display: none;
}
.accommodationProfile h4 {
  display: block;
  color: white;
  background: #cf2b04;
  padding: 7px 5px 5px 5px;
  margin: 0;
  font-size: 14px;
}
.accommodationProfile h4:before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  vertical-align: middle;
  margin-right: 5px;
  content: "\f236";
}
.accommodationProfile > div {
  padding: 12px 6px;
}
.accommodationProfile > div p {
  font-size: 14px;
}
.accommodationProfile > div .CTA {
  display: block;
  text-align: right;
  color: #cf2b04;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
}
.accommodationProfile > div .CTA:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  margin-left: 5px;
  content: "\f054";
}
.accommodationProfile > div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.accommodationProfile .CTA {
  margin-top: 6px;
  font-size: 14px;
}
.accommodationProfile p span {
  color: #cf2b04;
}
.accommodationProfile > div p,
.accommodationProfile > div ul,
.accommodationProfile > div > a:not(.CTA) {
  font-size: 13px;
}
.accommodationProfile > div a {
  color: #cf2b04;
}
.accommodationProfile > div > a {
  text-align: right;
  font-weight: 600;
  display: block;
  margin-top: 1em;
}
.tourInclusions {
  width: 100%;
  position: relative;
  overflow: visible;
  padding: 24px;
  margin: 60px auto;
  padding-top: 40px;
  background: #fff;
  box-shadow: none;
  border: 1px solid #dddddd;
  border-radius: 7px;
}
.tourInclusions:last-of-type {
  margin-bottom: 24px;
}
.tourInclusions:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f00c";
  position: absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  height: 80px;
  width: 80px;
  padding: 20px;
  background: green;
  border: 3px solid green;
  border-radius: 50%;
  color: #fff;
  font-size: 40px;
  text-align: center;
}
.tourInclusions > h3:first-of-type {
  text-align: center;
  color: green;
}
.tourInclusions ul > li:not(.columnHeading):before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f058";
  margin-right: 5px;
  color: green;
}
.tourInclusions ul > li:not(.columnHeading) ul {
  margin: 0 0 24px 48px;
}
.tourInclusions ul > li:not(.columnHeading) ul li:before {
  content: "";
  display: none;
}
.tourInclusions .lists {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .tourInclusions .lists:last-child {
  margin-bottom: 0;
}
.fold > div .tourInclusions .lists:only-child {
  margin: 0;
}
.tourInclusions .lists > * {
  display: none;
}
.tourInclusions .lists > div,
.tourInclusions .lists > a {
  display: block;
}
.tourInclusions .lists > div:nth-child(n),
.tourInclusions .lists > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .tourInclusions .lists {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .tourInclusions .lists {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 650px) {
  .tourInclusions .lists {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourInclusions .lists {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourInclusions .lists > div,
.internetExplorer .tourInclusions .lists > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .tourInclusions .lists > div:nth-child(1),
.internetExplorer .tourInclusions .lists > a:nth-child(1),
.internetExplorer .tourInclusions .lists > div:nth-child(2),
.internetExplorer .tourInclusions .lists > a:nth-child(2),
.internetExplorer .tourInclusions .lists > div:nth-child(3),
.internetExplorer .tourInclusions .lists > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourInclusions .lists > div *,
.internetExplorer .tourInclusions .lists > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .tourInclusions .lists > div:nth-child(n),
  .internetExplorer .tourInclusions .lists > a:nth-child(n) {
    width: 100%;
  }
}
.tourInclusions li {
  font-size: 0.9rem;
}
.tourExclusions {
  width: 100%;
  position: relative;
  overflow: visible;
  padding: 24px;
  margin: 60px auto;
  padding-top: 40px;
  background: #fff;
  box-shadow: none;
  border: 1px solid #dddddd;
  border-radius: 7px;
}
.tourExclusions:last-of-type {
  margin-bottom: 24px;
}
.tourExclusions:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f00d";
  position: absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  height: 80px;
  width: 80px;
  padding: 20px;
  background: #d10000;
  border: 3px solid #d10000;
  border-radius: 50%;
  color: #fff;
  font-size: 40px;
  text-align: center;
}
.tourExclusions > h3:first-of-type {
  text-align: center;
  color: #d10000;
}
.tourExclusions ul > li:not(.columnHeading):before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f057";
  margin-right: 5px;
  color: #d10000;
}
.tourExclusions ul > li:not(.columnHeading) ul {
  margin: 0 0 24px 48px;
}
.tourExclusions ul > li:not(.columnHeading) ul li:before {
  content: "";
  display: none;
}
.tourExclusions .lists {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .tourExclusions .lists:last-child {
  margin-bottom: 0;
}
.fold > div .tourExclusions .lists:only-child {
  margin: 0;
}
.tourExclusions .lists > * {
  display: none;
}
.tourExclusions .lists > div,
.tourExclusions .lists > a {
  display: block;
}
.tourExclusions .lists > div:nth-child(n),
.tourExclusions .lists > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .tourExclusions .lists {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .tourExclusions .lists {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 650px) {
  .tourExclusions .lists {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourExclusions .lists {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourExclusions .lists > div,
.internetExplorer .tourExclusions .lists > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .tourExclusions .lists > div:nth-child(1),
.internetExplorer .tourExclusions .lists > a:nth-child(1),
.internetExplorer .tourExclusions .lists > div:nth-child(2),
.internetExplorer .tourExclusions .lists > a:nth-child(2),
.internetExplorer .tourExclusions .lists > div:nth-child(3),
.internetExplorer .tourExclusions .lists > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourExclusions .lists > div *,
.internetExplorer .tourExclusions .lists > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .tourExclusions .lists > div:nth-child(n),
  .internetExplorer .tourExclusions .lists > a:nth-child(n) {
    width: 100%;
  }
}
.tourExclusions li {
  font-size: 0.9rem;
}
.regionalTourHightlights {
  background: #fff;
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 12px;
  -ms-grid-columns: repeat(4, 1fr);
  grid-template-columns: repeat(4, 1fr);
}
.fold > div .regionalTourHightlights:last-child {
  margin-bottom: 0;
}
.fold > div .regionalTourHightlights:only-child {
  margin: 0;
}
.regionalTourHightlights > * {
  display: none;
}
.regionalTourHightlights > div,
.regionalTourHightlights > a {
  display: block;
}
.regionalTourHightlights > div:nth-child(n),
.regionalTourHightlights > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.regionalTourHightlights > div:last-child:nth-child(2),
.regionalTourHightlights > a:last-child:nth-child(2),
.regionalTourHightlights > div:first-child:nth-last-child(2),
.regionalTourHightlights > a:first-child:nth-last-child(2) {
  -ms-grid-column-span: span 2;
  grid-column: span 2;
}
@media (max-width: 925px) and (min-width: 500px) {
  .regionalTourHightlights {
    grid-gap: 6px;
  }
}
@media (max-width: 925px) {
  .regionalTourHightlights {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 500px) {
  .regionalTourHightlights {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .regionalTourHightlights {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .regionalTourHightlights > div,
.internetExplorer .regionalTourHightlights > a {
  width: 25%;
  display: block;
  padding-left: 6px;
  padding-right: 6px;
}
.internetExplorer .regionalTourHightlights > div:nth-child(1),
.internetExplorer .regionalTourHightlights > a:nth-child(1),
.internetExplorer .regionalTourHightlights > div:nth-child(2),
.internetExplorer .regionalTourHightlights > a:nth-child(2),
.internetExplorer .regionalTourHightlights > div:nth-child(3),
.internetExplorer .regionalTourHightlights > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .regionalTourHightlights > div *,
.internetExplorer .regionalTourHightlights > a * {
  max-width: 100%;
}
@media (max-width: 925px) {
  .internetExplorer .regionalTourHightlights > div:nth-child(n),
  .internetExplorer .regionalTourHightlights > a:nth-child(n) {
    width: 100%;
  }
}
.regionalTourHightlights > div {
  background: #F9FAFB;
  position: relative;
  border-radius: 7px;
}
.regionalTourHightlights > div:nth-of-type(n+9) {
  display: none;
}
.regionalTourHightlights > div img {
  width: 100%;
  max-height: 75px;
  border-top-right-radius: 7px;
  border-top-left-radius: 7px;
}
.regionalTourHightlights > div > div {
  padding: 12px 12px 12px 24px;
}
.regionalTourHightlights > div h4,
.regionalTourHightlights > div h5 {
  font-size: 16.1px;
}
.regionalTourHightlights > div p,
.regionalTourHightlights > div ul,
.regionalTourHightlights > div ol,
.regionalTourHightlights > div li {
  font-size: 14px;
  margin: 0;
}
.regionalTourHightlights > div:before {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  left: 0;
  right: auto;
  border-width: 24px 0 24px 19px;
  border-color: transparent transparent transparent #fff;
}
.regionalTourHightlights > div:first-of-type:before {
  display: none;
}
.regionalTourHightlights > div:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  right: -19px;
  left: auto;
  border-width: 24px 0 24px 19px;
  border-color: transparent transparent transparent #F9FAFB;
  z-index: 1;
}
.regionalTourHightlights > div:nth-of-type(4n+4):after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  bottom: -19px;
  top: auto;
  left: calc((100% - 48px) / 2);
  border-width: 19px 24px 0 24px;
  border-color: #F9FAFB transparent transparent transparent;
}
.regionalTourHightlights > div:nth-of-type(5) {
  order: 8;
}
.regionalTourHightlights > div:nth-of-type(5):before {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: 0;
  left: calc((100% - 48px) / 2);
  border-width: 19px 24px 0 24px;
  border-color: #fff transparent transparent transparent;
}
.regionalTourHightlights > div:nth-of-type(5):after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  left: -19px;
  right: auto;
  border-width: 24px 19px 24px 0;
  border-color: transparent #F9FAFB transparent transparent;
  z-index: 1;
}
.regionalTourHightlights > div:nth-of-type(6) {
  order: 7;
}
.regionalTourHightlights > div:nth-of-type(6):before {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  right: 0;
  left: auto;
  border-width: 24px 19px 24px 0;
  border-color: transparent #fff transparent transparent;
}
.regionalTourHightlights > div:nth-of-type(6):after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  left: -19px;
  right: auto;
  border-width: 24px 19px 24px 0;
  border-color: transparent #F9FAFB transparent transparent;
  z-index: 1;
}
.regionalTourHightlights > div:nth-of-type(7) {
  order: 6;
}
.regionalTourHightlights > div:nth-of-type(7):before {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  right: 0;
  left: auto;
  border-width: 24px 19px 24px 0;
  border-color: transparent #fff transparent transparent;
}
.regionalTourHightlights > div:nth-of-type(7):after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  left: -19px;
  right: auto;
  border-width: 24px 19px 24px 0;
  border-color: transparent #F9FAFB transparent transparent;
  z-index: 1;
}
.regionalTourHightlights > div:nth-of-type(8) {
  order: 5;
}
.regionalTourHightlights > div:nth-of-type(8):before {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  top: calc((100% - 48px) / 2);
  right: 0;
  left: auto;
  border-width: 24px 19px 24px 0;
  border-color: transparent #fff transparent transparent;
}
.regionalTourHightlights > div:nth-of-type(8):after {
  display: none;
}
.regionalTourHightlights > div:last-of-type:after {
  display: none;
}
@media (max-width: 925px) {
  .regionalTourHightlights {
    grid-gap: 12px;
    grid-template-columns: 1fr 1fr;
  }
  .regionalTourHightlights > div:nth-of-type(3) {
    order: 4;
  }
  .regionalTourHightlights > div:nth-of-type(4) {
    order: 3;
  }
  .regionalTourHightlights > div:nth-of-type(5) {
    order: 5;
  }
  .regionalTourHightlights > div:nth-of-type(6) {
    order: 6;
  }
  .regionalTourHightlights > div:nth-of-type(7) {
    order: 8;
  }
  .regionalTourHightlights > div:nth-of-type(8) {
    order: 7;
  }
  .regionalTourHightlights > div:nth-of-type(n):before {
    display: none;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
  }
  .regionalTourHightlights > div:nth-of-type(n):after {
    display: none;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
  }
  .regionalTourHightlights > div:first-of-type:after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    right: -19px;
    left: auto;
    border-width: 24px 0 24px 19px;
    border-color: transparent transparent transparent #F9FAFB;
    z-index: 1;
  }
  .regionalTourHightlights > div:nth-of-type(2):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    left: 0;
    right: auto;
    border-width: 24px 0 24px 19px;
    border-color: transparent transparent transparent #fff;
  }
  .regionalTourHightlights > div:nth-of-type(2):after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    bottom: -19px;
    top: auto;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #F9FAFB transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(3):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: 0;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #fff transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(3):after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    left: -19px;
    right: auto;
    border-width: 24px 19px 24px 0;
    border-color: transparent #F9FAFB transparent transparent;
    z-index: 1;
  }
  .regionalTourHightlights > div:nth-of-type(4):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    right: 0;
    left: auto;
    border-width: 24px 19px 24px 0;
    border-color: transparent #fff transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(4):after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    bottom: -19px;
    top: auto;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #F9FAFB transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(5):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: 0;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #fff transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(5):after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    right: -19px;
    left: auto;
    border-width: 24px 0 24px 19px;
    border-color: transparent transparent transparent #F9FAFB;
    z-index: 1;
  }
  .regionalTourHightlights > div:nth-of-type(6):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    left: 0;
    right: auto;
    border-width: 24px 0 24px 19px;
    border-color: transparent transparent transparent #fff;
  }
  .regionalTourHightlights > div:nth-of-type(6):after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    bottom: -19px;
    top: auto;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #F9FAFB transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(7):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: 0;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #fff transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(7):after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    left: -19px;
    right: auto;
    border-width: 24px 19px 24px 0;
    border-color: transparent #F9FAFB transparent transparent;
    z-index: 1;
  }
  .regionalTourHightlights > div:nth-of-type(8):before {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: calc((100% - 48px) / 2);
    right: 0;
    left: auto;
    border-width: 24px 19px 24px 0;
    border-color: transparent #fff transparent transparent;
  }
  .regionalTourHightlights > div:last-of-type::after {
    display: none;
  }
}
@media (max-width: 500px) {
  .regionalTourHightlights {
    grid-template-columns: 1fr;
  }
  .regionalTourHightlights > div:nth-of-type(n) {
    order: initial;
  }
  .regionalTourHightlights > div:nth-of-type(n):before {
    display: none;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    top: 0;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #fff transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(n):after {
    display: none;
    bottom: auto;
    left: auto;
    right: auto;
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    content: "";
    bottom: -19px;
    top: auto;
    left: calc((100% - 48px) / 2);
    border-width: 19px 24px 0 24px;
    border-color: #F9FAFB transparent transparent transparent;
  }
  .regionalTourHightlights > div:nth-of-type(n):first-of-type:before {
    display: none;
  }
  .regionalTourHightlights > div:nth-of-type(n):last-of-type:after {
    display: none;
  }
}
.regionalTourHightlights li {
  line-height: 1.1em;
  padding: 3px 0;
}
.singleMajorMSPWithGraphic,
.longPageChapterIntro {
  visibility: hidden;
  position: relative;
  overflow: hidden;
  z-index: 10;
  display: block;
}
.fold > .singleMajorMSPWithGraphic,
.fold > .longPageChapterIntro {
  visibility: visible;
}
.singleMajorMSPWithGraphic + .singleMajorMSPWithGraphic,
.singleMajorMSPWithGraphic + .longPageChapterIntro,
.longPageChapterIntro + .singleMajorMSPWithGraphic,
.longPageChapterIntro + .longPageChapterIntro {
  margin-top: clamp(24px, 6vw, 100px);
}
.fold > .singleMajorMSPWithGraphic,
.fold > .longPageChapterIntro {
  max-width: 990px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .fold > .singleMajorMSPWithGraphic,
  .fold > .longPageChapterIntro {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 1010px) and (min-width: 750px) {
  .fold > .singleMajorMSPWithGraphic,
  .fold > .longPageChapterIntro {
    padding-right: 10px;
    padding-left: 10px;
  }
  .fold > .singleMajorMSPWithGraphic > div:first-of-type,
  .fold > .longPageChapterIntro > div:first-of-type {
    left: 10px;
  }
}
.singleMajorMSPWithGraphic > div:first-of-type,
.longPageChapterIntro > div:first-of-type {
  z-index: -1;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 25%;
}
.singleMajorMSPWithGraphic > div:first-of-type > img,
.longPageChapterIntro > div:first-of-type > img {
  width: 100%;
  height: 100%;
}
.singleMajorMSPWithGraphic > div:nth-of-type(2),
.longPageChapterIntro > div:nth-of-type(2) {
  z-index: 2;
  background: #5b7c29;
  max-width: 400px;
  margin: 40px 0;
  margin-left: auto;
  padding: 24px;
  border-radius: 0;
  border: 0 solid #ebebeb;
}
.singleMajorMSPWithGraphic > div:nth-of-type(2) *,
.longPageChapterIntro > div:nth-of-type(2) *,
.singleMajorMSPWithGraphic > div:nth-of-type(2) * a,
.longPageChapterIntro > div:nth-of-type(2) * a {
  color: #fff;
  text-align: center;
}
.singleMajorMSPWithGraphic > div:nth-of-type(2) .button,
.longPageChapterIntro > div:nth-of-type(2) .button {
  background: #fff;
  color: #5b7c29;
  max-width: 80%;
  min-width: 250px;
}
.singleMajorMSPWithGraphic > div:nth-of-type(2) .button:last-child,
.longPageChapterIntro > div:nth-of-type(2) .button:last-child {
  margin-bottom: 0;
}
.singleMajorMSPWithGraphic > div:nth-of-type(2) a:not(.button),
.longPageChapterIntro > div:nth-of-type(2) a:not(.button) {
  text-decoration: underline;
  text-underline-position: under;
  text-align: center;
}
@media (max-width: 750px) {
  .singleMajorMSPWithGraphic,
  .longPageChapterIntro {
    display: flex;
    flex-direction: column;
  }
  .singleMajorMSPWithGraphic > div:nth-of-type(n),
  .longPageChapterIntro > div:nth-of-type(n) {
    position: relative;
    z-index: 0;
    border-radius: 0;
  }
  .singleMajorMSPWithGraphic > div:first-of-type,
  .longPageChapterIntro > div:first-of-type {
    width: 90%;
    right: 0;
    left: 0;
    margin: auto;
    margin-bottom: -40px;
    z-index: 3;
  }
  .singleMajorMSPWithGraphic > div:first-of-type > img,
  .longPageChapterIntro > div:first-of-type > img {
    max-height: 500px;
  }
  .singleMajorMSPWithGraphic > div:nth-of-type(2),
  .longPageChapterIntro > div:nth-of-type(2) {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding-top: calc(24px / 2 + 40px);
  }
}
@media (max-width: 550px) {
  .singleMajorMSPWithGraphic > div:nth-of-type(2),
  .longPageChapterIntro > div:nth-of-type(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.singleMajorMSPWithGraphic:nth-of-type(n+2),
.longPageChapterIntro:nth-of-type(n+2) {
  margin-top: 72px;
}
.singleMajorMSPWithGraphic:nth-of-type(even) > div:first-of-type,
.longPageChapterIntro:nth-of-type(even) > div:first-of-type {
  left: 25%;
  right: 0;
}
.singleMajorMSPWithGraphic:nth-of-type(even) > div:nth-of-type(2),
.longPageChapterIntro:nth-of-type(even) > div:nth-of-type(2) {
  margin-left: 0;
  margin-right: auto;
}
@media screen and (max-width: 1010px) and (min-width: 750px) {
  .fold > .singleMajorMSPWithGraphic:nth-of-type(even) > div:first-of-type,
  .fold > .longPageChapterIntro:nth-of-type(even) > div:first-of-type {
    left: auto;
    right: 10px;
  }
}
.singleMajorMSPWithGraphic.miniGroup > div:nth-of-type(2),
.longPageChapterIntro.miniGroup > div:nth-of-type(2),
.singleMajorMSPWithGraphic.gardenTour > div:nth-of-type(2),
.longPageChapterIntro.gardenTour > div:nth-of-type(2) {
  background: #38726f;
}
.singleMajorMSPWithGraphic.miniGroup > div:nth-of-type(2) > a.button,
.longPageChapterIntro.miniGroup > div:nth-of-type(2) > a.button,
.singleMajorMSPWithGraphic.gardenTour > div:nth-of-type(2) > a.button,
.longPageChapterIntro.gardenTour > div:nth-of-type(2) > a.button {
  color: #38726f;
}
.singleMajorMSPWithGraphic.castleTour > div:nth-of-type(2),
.longPageChapterIntro.castleTour > div:nth-of-type(2),
.singleMajorMSPWithGraphic.golfTour > div:nth-of-type(2),
.longPageChapterIntro.golfTour > div:nth-of-type(2) {
  background: #7f071c;
}
.singleMajorMSPWithGraphic.castleTour > div:nth-of-type(2) > a.button,
.longPageChapterIntro.castleTour > div:nth-of-type(2) > a.button,
.singleMajorMSPWithGraphic.golfTour > div:nth-of-type(2) > a.button,
.longPageChapterIntro.golfTour > div:nth-of-type(2) > a.button {
  color: #7f071c;
}
.singleMajorMSPWithGraphic.privateTours > div:nth-of-type(2),
.longPageChapterIntro.privateTours > div:nth-of-type(2),
.singleMajorMSPWithGraphic.genealogyTour > div:nth-of-type(2),
.longPageChapterIntro.genealogyTour > div:nth-of-type(2) {
  background: #2f3e68;
}
.singleMajorMSPWithGraphic.privateTours > div:nth-of-type(2) > a.button,
.longPageChapterIntro.privateTours > div:nth-of-type(2) > a.button,
.singleMajorMSPWithGraphic.genealogyTour > div:nth-of-type(2) > a.button,
.longPageChapterIntro.genealogyTour > div:nth-of-type(2) > a.button {
  color: #2f3e68;
}
/* for when you want one fold or its child to be distinctive, give it an off-white background and a texture */
.distinctiveContent {
  background-color: #F9FAFB;
}
.distinctiveContent .distinctiveContent,
.distinctiveContent .distinctiveContent {
  background-color: #fefefe;
}
.distinctiveContent.fold {
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.distinctiveContent.fold + .distinctiveContent.fold {
  border-top: none;
}
.fold .distinctiveContent {
  padding: 2em;
  margin: 1em auto;
}
@media (max-width: 990px) {
  .fold .distinctiveContent {
    margin: 0.5em auto;
    padding: 0.5em;
  }
}
/* Expert Profile Page Styles */
.expert-profile-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px;
}
@media (max-width: 800px) {
  .expert-profile-container {
    padding: 24px;
  }
}
.expert-profile-header {
  display: grid;
  grid-template-columns: 1fr 350px;
  gap: 48px;
  margin-bottom: 72px;
}
@media (max-width: 800px) {
  .expert-profile-header {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}
.expert-profile-info {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.expert-profile-name {
  font-size: 48px;
  font-weight: 700;
  color: #84a750;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 12px;
  line-height: 1.1;
}
@media (max-width: 800px) {
  .expert-profile-name {
    font-size: 36px;
  }
}
.expert-profile-title {
  font-size: 24px;
  color: #666666;
  margin-bottom: 24px;
  line-height: 1.4;
}
@media (max-width: 800px) {
  .expert-profile-title {
    font-size: 20px;
  }
}
.expert-profile-label {
  font-size: 18px;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 12px;
}
.expert-profile-description {
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 24px;
}
.expert-profile-description a {
  color: #84a750;
  text-decoration: underline;
  text-underline-position: under;
}
.expert-profile-description a:hover {
  opacity: 0.8;
}
.expert-profile-photo {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media (max-width: 800px) {
  .expert-profile-photo {
    order: -1;
    margin-bottom: 24px;
  }
}
.expert-profile-photo img {
  width: 350px;
  height: 350px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
@media (max-width: 800px) {
  .expert-profile-photo img {
    width: 200px;
    height: 200px;
  }
}
.expert-profile-highlights {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 36px;
  margin-top: 48px;
}
@media (max-width: 800px) {
  .expert-profile-highlights {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.expert-profile-highlight-box {
  background-color: #4d4d4d;
  color: #ffffff;
  padding: 36px;
  border-radius: 20px;
}
.expert-profile-highlight-box h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 24px;
  color: #ffffff;
}
.expert-profile-highlight-box p {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 18px;
  color: #ffffff;
}
.expert-profile-highlight-box p:last-child {
  margin-bottom: 0;
}
.expert-profile-content {
  display: grid;
  grid-template-columns: 1fr 350px;
  gap: 48px;
  margin-top: 72px;
}
@media (max-width: 800px) {
  .expert-profile-content {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.expert-profile-content-text h3 {
  font-size: 24px;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 24px;
  margin-top: 36px;
}
.expert-profile-content-text h3:first-child {
  margin-top: 0;
}
.expert-profile-content-text h4 {
  font-size: 20px;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 18px;
  margin-top: 24px;
}
.expert-profile-content-text p {
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 24px;
}
.expert-profile-content-text p:last-child {
  margin-bottom: 0;
}
.expert-profile-content-text ul,
.expert-profile-content-text ol {
  margin-bottom: 24px;
  padding-left: 0;
  list-style: none;
}
.expert-profile-content-text li {
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 12px;
}
.expert-profile-content-text a {
  color: #84a750;
  text-decoration: underline;
  text-underline-position: under;
}
.expert-profile-content-text a:hover {
  opacity: 0.8;
}
/* Author Biographies Section */
/* Used on meet-the-experts index and article pages */
.author-biographies {
  max-width: 1200px;
  margin: 72px auto 48px;
  padding: 48px 0;
  border-top: 1px solid rgba(102, 102, 102, 0.2);
}
.author-biographies .author-bio {
  display: flex;
  gap: 36px;
  margin-bottom: 72px;
  max-width: 800px;
}
.author-biographies .author-bio:last-child {
  margin-bottom: 0;
}
.author-biographies .author-bio img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
@media (max-width: 600px) {
  .author-biographies .author-bio img {
    width: 60px;
    height: 60px;
  }
}
.author-biographies .author-bio .bio-content {
  flex: 1;
}
.author-biographies .author-bio .bio-content .label {
  font-size: 0.75rem;
  color: #666666;
  margin: 0 0 0.25rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.author-biographies .author-bio .bio-content .name {
  font-size: 1.125rem;
  font-weight: 700;
  color: #84a750;
  margin: 0 0 0.25rem;
  line-height: 1.3;
}
.author-biographies .author-bio .bio-content .role {
  font-size: 0.875rem;
  color: #666666;
  margin: 0 0 24px;
  font-weight: 600;
}
.author-biographies .author-bio .bio-content .bio-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #666666;
  margin: 0 0 1rem;
}
.author-biographies .author-bio .bio-content .bio-text:last-child {
  margin-bottom: 0;
}
@media (max-width: 600px) {
  .author-biographies .author-bio {
    flex-direction: column;
    gap: 24px;
  }
}
/* Hide author/contributor labels on meet-the-experts index page */
.expert-profile-container .author-biographies .author-bio .bio-content .label {
  display: none;
}
.expert-profile-container .author-biographies .author-bio:not(:last-of-type) {
  margin-bottom: 48px;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(102, 102, 102, 0.2);
}
/* Editorial Disclosure Section */
/* Information box about content authorship and editorial standards */
/* Styled to match .article-metadata aesthetic */
.editorial-disclosure {
  max-width: 1200px;
  margin: 48px auto;
  padding: 0;
}
.editorial-disclosure .disclosure-content {
  max-width: 800px;
  background-color: #f0f2f5;
  border: 1px solid #dcdcdc;
  border-radius: 8px;
  padding: 36px;
  position: relative;
  padding-left: 72px;
}
@media (max-width: 600px) {
  .editorial-disclosure .disclosure-content {
    padding: 24px;
    padding-left: 60px;
  }
}
.editorial-disclosure .disclosure-content:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f05a";
  position: absolute;
  left: 24px;
  top: 36px;
  color: #666666;
  font-size: 1.25rem;
}
@media (max-width: 600px) {
  .editorial-disclosure .disclosure-content:before {
    left: 18px;
    top: 24px;
    font-size: 1.1rem;
  }
}
.editorial-disclosure .disclosure-content p {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #666666;
}
@media (max-width: 600px) {
  .editorial-disclosure .disclosure-content p {
    font-size: 0.875rem;
  }
}
.editorial-disclosure .disclosure-content p a {
  color: #84a750;
  text-decoration: underline;
  text-underline-position: under;
}
/* Website Policy Page Styles */
/* Duplicated from expert profile styles for independent evolution */
/* Can be reused for editorial guidelines, privacy policy, terms, etc. */
.website-policy-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px;
}
@media (max-width: 800px) {
  .website-policy-container {
    padding: 24px;
  }
}
.website-policy-header {
  display: grid;
  grid-template-columns: 1fr 350px;
  gap: 48px;
  margin-bottom: 72px;
}
@media (max-width: 800px) {
  .website-policy-header {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
}
.website-policy-info {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.website-policy-name {
  font-size: 48px;
  font-weight: 700;
  color: #84a750;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 12px;
  line-height: 1.1;
}
@media (max-width: 800px) {
  .website-policy-name {
    font-size: 36px;
  }
}
.website-policy-title {
  font-size: 24px;
  color: #666666;
  margin-bottom: 24px;
  line-height: 1.4;
}
@media (max-width: 800px) {
  .website-policy-title {
    font-size: 20px;
  }
}
.website-policy-label {
  font-size: 18px;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 12px;
}
.website-policy-description {
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 24px;
}
.website-policy-description a {
  color: #84a750;
  text-decoration: underline;
  text-underline-position: under;
}
.website-policy-description a:hover {
  opacity: 0.8;
}
.website-policy-photo {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media (max-width: 800px) {
  .website-policy-photo {
    order: -1;
    margin-bottom: 24px;
  }
}
.website-policy-photo img {
  width: 350px;
  height: 350px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
@media (max-width: 800px) {
  .website-policy-photo img {
    width: 200px;
    height: 200px;
  }
}
.website-policy-highlights {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 36px;
  margin-top: 48px;
}
@media (max-width: 800px) {
  .website-policy-highlights {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.website-policy-highlight-box {
  background-color: #4d4d4d;
  color: #ffffff;
  padding: 36px;
  border-radius: 20px;
}
.website-policy-highlight-box h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 24px;
  color: #ffffff;
}
.website-policy-highlight-box p {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 18px;
  color: #ffffff;
}
.website-policy-highlight-box p:last-child {
  margin-bottom: 0;
}
.website-policy-content {
  margin-top: 72px;
}
.website-policy-content-text {
  max-width: calc(100% - 350px - (24px * 2));
}
@media (max-width: 800px) {
  .website-policy-content-text {
    max-width: 100%;
  }
}
.website-policy-content-text:not(:last-child) {
  border-bottom: 1px solid rgba(102, 102, 102, 0.2);
  padding-bottom: 48px;
  margin-bottom: 48px;
}
.website-policy-content-text h3 {
  font-size: 24px;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 24px;
  margin-top: 36px;
}
.website-policy-content-text h3:first-child {
  margin-top: 0;
}
.website-policy-content-text h4 {
  font-size: 20px;
  font-weight: 700;
  color: #4d4d4d;
  margin-bottom: 18px;
  margin-top: 24px;
}
.website-policy-content-text p {
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 24px;
}
.website-policy-content-text p:last-child {
  margin-bottom: 0;
}
.website-policy-content-text ul,
.website-policy-content-text ol {
  margin-bottom: 24px;
  padding-left: 0;
  list-style: none;
}
.website-policy-content-text li {
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin-bottom: 12px;
}
.website-policy-content-text a {
  color: #84a750;
  text-decoration: underline;
  text-underline-position: under;
}
.website-policy-content-text a:hover {
  opacity: 0.8;
}
.faq-grid {
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #fff;
}
.faq-grid > div {
  max-width: 1180px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1220px) {
  .faq-grid > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.faq-grid > div:not(:last-child) {
  margin-bottom: 24px;
}
.faq-grid > div {
  overflow: hidden;
}
.faq-grid > div > ul {
  justify-content: center;
  max-width: none;
  display: flex;
  overflow: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.faq-grid > div > ul.swipe {
  justify-content: flex-start;
}
.faq-grid > div > ul::-webkit-scrollbar {
  display: none;
}
.faq-grid > div > ul > li {
  flex-wrap: wrap;
  /* this allows wrapping */
  white-space: normal;
  /* allow internal line breaks */
  text-align: center;
  font-size: 12.72px;
  letter-spacing: 0.5px;
  margin: 12px;
  padding-bottom: 18px;
}
@media (max-width: 630px) {
  .faq-grid > div > ul > li {
    margin: 12px;
    padding-bottom: 12px;
    font-size: 11.76px;
  }
}
.faq-grid > div > ul > li svg.svg-inline--fa,
.faq-grid > div > ul > li i.fas,
.faq-grid > div > ul > li i.fab,
.faq-grid > div > ul > li i.fal,
.faq-grid > div > ul > li i.far {
  font-weight: 300;
  display: block;
  margin: 0 auto 5px;
  font-size: 24px;
}
@media (max-width: 630px) {
  .faq-grid > div > ul > li svg.svg-inline--fa,
  .faq-grid > div > ul > li i.fas,
  .faq-grid > div > ul > li i.fab,
  .faq-grid > div > ul > li i.fal,
  .faq-grid > div > ul > li i.far {
    font-size: 18px;
  }
}
.faq-grid > div > ul > li,
.faq-grid > div > ul > li svg.svg-inline--fa,
.faq-grid > div > ul > li i.fas,
.faq-grid > div > ul > li i.fab,
.faq-grid > div > ul > li i.fal,
.faq-grid > div > ul > li i.far {
  color: #9b9b9b;
}
.faq-grid > div > ul > li:hover {
  cursor: pointer;
}
.faq-grid > div > ul > li.selected,
.faq-grid > div > ul > li:hover {
  border-bottom: 3px solid #000;
}
.faq-grid > div > ul > li.selected,
.faq-grid > div > ul > li:hover,
.faq-grid > div > ul > li.selected svg.svg-inline--fa,
.faq-grid > div > ul > li:hover svg.svg-inline--fa,
.faq-grid > div > ul > li.selected i.fas,
.faq-grid > div > ul > li:hover i.fas,
.faq-grid > div > ul > li.selected i.fab,
.faq-grid > div > ul > li:hover i.fab,
.faq-grid > div > ul > li.selected i.fal,
.faq-grid > div > ul > li:hover i.fal,
.faq-grid > div > ul > li.selected i.far,
.faq-grid > div > ul > li:hover i.far {
  color: #000;
}
.faq-grid > div > .faq-cards {
  display: grid;
  grid-gap: 24px;
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 900px) {
  .faq-grid > div > .faq-cards {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 18px;
  }
}
@media (max-width: 630px) {
  .faq-grid > div > .faq-cards {
    grid-template-columns: 1fr 1fr;
    grid-gap: 12px;
  }
}
.faq-grid > div > .faq-cards > a {
  position: relative;
  display: none;
}
.faq-grid > div > .faq-cards > a.featured {
  display: block;
}
.faq-grid > div > .faq-cards > a img,
.faq-grid > div > .faq-cards > a picture {
  border-radius: 10px;
  overflow: hidden;
}
.faq-grid > div > .faq-cards > a .tag {
  position: absolute;
  padding-left: 14px;
  padding-right: 14px;
  top: 12px;
  left: 12px;
  padding: 4px 10px;
  font-size: 12px;
  line-height: 14px;
  border-radius: 14px;
  background: #fff;
  color: #666666;
}
.faq-grid > div > .faq-cards > a ul {
  margin: 8px 0 0 0;
}
.faq-grid > div > .faq-cards > a ul li {
  padding: 0;
  margin: 0;
  font-size: 13px;
  line-height: 1.5em;
  text-align: left;
}
.faq-grid > div > .faq-cards > a ul li:first-of-type {
  font-weight: bold;
  font-size: 14px;
}
.faq-grid > div > .faq-cards > a h4,
.faq-grid > div > .faq-cards > a p {
  padding: 0;
  margin: 0;
  font-size: 13px;
  line-height: 1.5em;
  text-align: left;
  color: #666666;
}
.faq-grid > div > .faq-cards > a h4 {
  font-weight: bold;
  font-size: 14px;
  margin-top: 5px;
}
.faq-grid.no-js > div > div.faq-cards > a {
  display: block;
}
/* Fold-specific variables */
/* A fold is the standard div containing (usually) one sales / informational message. It occupies full width of the body */
.fold {
  padding: clamp(30px, 7.5vh, 110px) 0;
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
}
.fold > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .fold > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.fold > div:not(:last-child) {
  margin-bottom: 24px;
}
.fold.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .fold.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.fold.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .fold.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.fold.tour-tinerary,
.fold.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.fold.tour-tinerary + .fold.tour-tinerary,
.fold.tour-tinerary + .fold.tour-accommodation,
.fold.tour-accommodation + .fold.tour-tinerary,
.fold.tour-accommodation + .fold.tour-accommodation {
  border-top: none;
}
.fold h1 svg.svg-inline--fa,
.fold h2 svg.svg-inline--fa,
.fold h3 svg.svg-inline--fa,
.fold h4 svg.svg-inline--fa,
.fold h5 svg.svg-inline--fa,
.fold p svg.svg-inline--fa,
.fold h1 i.fas,
.fold h2 i.fas,
.fold h3 i.fas,
.fold h4 i.fas,
.fold h5 i.fas,
.fold p i.fas,
.fold h1 i.fab,
.fold h2 i.fab,
.fold h3 i.fab,
.fold h4 i.fab,
.fold h5 i.fab,
.fold p i.fab,
.fold h1 i.fal,
.fold h2 i.fal,
.fold h3 i.fal,
.fold h4 i.fal,
.fold h5 i.fal,
.fold p i.fal,
.fold h1 i.far,
.fold h2 i.far,
.fold h3 i.far,
.fold h4 i.far,
.fold h5 i.far,
.fold p i.far {
  font-size: inherit;
}
.fold.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .fold.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.fold.timeLine > div h2 {
  text-align: center;
}
.fold.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.fold.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .fold.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .fold.timeLine > div > div > div:nth-child(6n+3),
  .fold.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .fold.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .fold.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .fold.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .fold.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .fold.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .fold.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .fold.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .fold.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .fold.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .fold.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .fold.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .fold.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .fold.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .fold.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .fold.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .fold.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .fold.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .fold.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .fold.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .fold.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .fold.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .fold.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .fold.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .fold.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .fold.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .fold.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .fold.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .fold.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .fold.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .fold.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .fold.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .fold.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .fold.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .fold.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .fold.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .fold.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .fold.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .fold.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .fold.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .fold.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .fold.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .fold.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .fold.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .fold.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .fold.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .fold.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .fold.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .fold.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .fold.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .fold.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .fold.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .fold.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .fold.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .fold.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .fold.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.fold.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.fold.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.fold.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.fold.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.fold.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.fold.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.fold.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.fold.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.fold.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.fold.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.fold.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.fold.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.fold.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.fold.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.fold.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.fold.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.fold.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.fold.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.fold.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.fold.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.fold.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.fold.timeLine > div > div p {
  font-size: 0.9rem;
}
.fold .svg-map {
  max-width: 600px;
  margin: auto;
}
.extendedContentList > div:nth-child(even) {
  background-color: #F9FAFB;
}
.extendedContentList > div:nth-child(even) .extendedContentList > div:nth-child(even),
.distinctiveContent .extendedContentList > div:nth-child(even) {
  background-color: #fefefe;
}
.extendedContentList > div:nth-child(even) .additionalInfoMenu,
.extendedContentList > div:nth-child(even) .additionalInfoFootnote,
.extendedContentList > div:nth-child(even) .distinctiveContent {
  background-color: #fff;
}
.productPage {
  background-color: #F9FAFB;
}
.productPage .fold > div .productDescriptionBlock {
  overflow: hidden;
  background-color: #fff;
  border-radius: 4px;
  width: 100%;
  padding: 48px 24px;
}
@media (max-width: 800px) {
  .productPage .fold > div .productDescriptionBlock {
    padding: 24px 12px;
  }
}
.productPage .fold > div .productDescriptionBlock .tourAttractionModalTrigger {
  background: #f2f2f2;
}
.productPage .secondaryNav + .fold {
  background-color: #fff;
}
.productPage .tertiaryNav > div > div {
  border-color: #c9c9c9;
}
.productPage .tertiaryNav > div > div a {
  color: #84a750;
}
.fold.intro h2,
.fold.intro h3,
.fold.intro h4,
.fold.intro p {
  text-align: center;
}
.fold.intro h2 .subHeading {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  clear: both;
}
.fold.intro h2 .subHeading:before {
  clear: both;
  content: "";
  display: block;
  border-top: 1px solid #84a750;
  margin: 24px auto;
  width: 250px;
}
.fold.intro p {
  text-align: center;
  font-size: 1.25rem;
  line-height: 2em;
  letter-spacing: 0.5px;
  margin-top: 24px;
}
@media (min-width: 400px) {
  .fold.intro p {
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
.brandIntro,
.regionIntro,
.topicIntro {
  width: 90%;
  max-width: 600px;
  margin: auto;
  margin-top: 24px;
}
.brandIntro img[src$=".png"],
.regionIntro img[src$=".png"],
.topicIntro img[src$=".png"] {
  margin: 24px auto 0 auto;
}
.brandIntro img[src$=".png"].companyLogo,
.regionIntro img[src$=".png"].companyLogo,
.topicIntro img[src$=".png"].companyLogo {
  max-width: 225px;
}
.brandIntro p:first-of-type,
.regionIntro p:first-of-type,
.topicIntro p:first-of-type {
  text-align: center;
}
.brandIntro p.jobTitle,
.regionIntro p.jobTitle,
.topicIntro p.jobTitle {
  font-weight: bold;
  margin-top: 0;
}
.brandIntro p,
.regionIntro p,
.topicIntro p,
.brandIntro h2,
.regionIntro h2,
.topicIntro h2,
.brandIntro h3,
.regionIntro h3,
.topicIntro h3,
.brandIntro h4,
.regionIntro h4,
.topicIntro h4,
.brandIntro h5,
.regionIntro h5,
.topicIntro h5 {
  text-align: center;
}
@media (max-width: 550px) {
  .brandIntro,
  .regionIntro,
  .topicIntro {
    width: 100%;
  }
  .brandIntro p:first-of-type,
  .regionIntro p:first-of-type,
  .topicIntro p:first-of-type {
    text-align: justify;
  }
}
.regionIntro,
.topicIntro,
.tourIntro {
  max-width: 650px;
}
.regionIntro p,
.topicIntro p,
.tourIntro p {
  text-align: center;
  letter-spacing: 0.5px;
}
.regionIntro h2,
.topicIntro h2,
.tourIntro h2 {
  text-align: center;
  width: 100%;
}
.regionIntro h2 .destinationLabel,
.topicIntro h2 .destinationLabel,
.tourIntro h2 .destinationLabel {
  display: block;
}
.regionIntro h2 .subHeading,
.topicIntro h2 .subHeading,
.tourIntro h2 .subHeading {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  clear: both;
}
.regionIntro h2 .subHeading:before,
.topicIntro h2 .subHeading:before,
.tourIntro h2 .subHeading:before {
  clear: both;
  content: "";
  display: block;
  border-top: 1px solid #84a750;
  margin: 24px auto;
  width: 250px;
}
.tourIntro {
  max-width: 650px;
}
.tourIntro p {
  font-size: clamp(1.1rem, 2vw, 1.5rem);
}
.strip {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
  padding-top: 24px;
  padding-bottom: 24px;
}
.strip > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .strip > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.strip > div:not(:last-child) {
  margin-bottom: 24px;
}
.strip.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .strip.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.strip.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .strip.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.strip.tour-tinerary,
.strip.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.strip.tour-tinerary + .strip.tour-tinerary,
.strip.tour-tinerary + .strip.tour-accommodation,
.strip.tour-accommodation + .strip.tour-tinerary,
.strip.tour-accommodation + .strip.tour-accommodation {
  border-top: none;
}
.strip h1 svg.svg-inline--fa,
.strip h2 svg.svg-inline--fa,
.strip h3 svg.svg-inline--fa,
.strip h4 svg.svg-inline--fa,
.strip h5 svg.svg-inline--fa,
.strip p svg.svg-inline--fa,
.strip h1 i.fas,
.strip h2 i.fas,
.strip h3 i.fas,
.strip h4 i.fas,
.strip h5 i.fas,
.strip p i.fas,
.strip h1 i.fab,
.strip h2 i.fab,
.strip h3 i.fab,
.strip h4 i.fab,
.strip h5 i.fab,
.strip p i.fab,
.strip h1 i.fal,
.strip h2 i.fal,
.strip h3 i.fal,
.strip h4 i.fal,
.strip h5 i.fal,
.strip p i.fal,
.strip h1 i.far,
.strip h2 i.far,
.strip h3 i.far,
.strip h4 i.far,
.strip h5 i.far,
.strip p i.far {
  font-size: inherit;
}
.strip.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .strip.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.strip.timeLine > div h2 {
  text-align: center;
}
.strip.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.strip.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .strip.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .strip.timeLine > div > div > div:nth-child(6n+3),
  .strip.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .strip.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .strip.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .strip.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .strip.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .strip.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .strip.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .strip.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .strip.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .strip.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .strip.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .strip.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .strip.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .strip.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .strip.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .strip.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .strip.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .strip.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .strip.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .strip.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .strip.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .strip.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .strip.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .strip.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .strip.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .strip.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .strip.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .strip.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .strip.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .strip.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .strip.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .strip.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .strip.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .strip.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .strip.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .strip.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .strip.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .strip.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .strip.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .strip.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .strip.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .strip.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .strip.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .strip.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .strip.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .strip.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .strip.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .strip.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .strip.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .strip.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .strip.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .strip.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .strip.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .strip.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .strip.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .strip.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.strip.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.strip.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.strip.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.strip.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.strip.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.strip.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.strip.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.strip.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.strip.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.strip.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.strip.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.strip.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.strip.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.strip.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.strip.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.strip.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.strip.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.strip.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.strip.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.strip.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.strip.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.strip.timeLine > div > div p {
  font-size: 0.9rem;
}
.strip .svg-map {
  max-width: 600px;
  margin: auto;
}
.strip > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .strip > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.strip > div:not(:last-child) {
  margin-bottom: 24px;
}
.strip > div > a[rel^="lightbox"],
.strip > div > img,
.strip > div > .photoGallery,
.strip > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.textBox,
.travelguide .textBox {
  max-width: 720px;
  margin: auto;
}
.textBox h2,
.travelguide .textBox h2,
.textBox h3,
.travelguide .textBox h3,
.textBox h4,
.travelguide .textBox h4,
.textBox h5,
.travelguide .textBox h5,
.textBox h6,
.travelguide .textBox h6 {
  text-align: center;
  display: block;
}
.textBox p,
.travelguide .textBox p {
  text-align: justify;
  margin-top: 24px;
}
@media (min-width: 720px) {
  .textBox p,
  .travelguide .textBox p {
    font-size: clamp(15px, 3vw, 17px);
  }
  .textBox p:only-of-type,
  .travelguide .textBox p:only-of-type {
    text-align: center;
  }
}
.tourCategoriesExplainer {
  background: #F9FAFB;
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
}
.tourCategoriesExplainer > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tourCategoriesExplainer > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tourCategoriesExplainer > div:not(:last-child) {
  margin-bottom: 24px;
}
.tourCategoriesExplainer.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .tourCategoriesExplainer.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tourCategoriesExplainer.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .tourCategoriesExplainer.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tourCategoriesExplainer.tour-tinerary,
.tourCategoriesExplainer.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.tourCategoriesExplainer.tour-tinerary + .tourCategoriesExplainer.tour-tinerary,
.tourCategoriesExplainer.tour-tinerary + .tourCategoriesExplainer.tour-accommodation,
.tourCategoriesExplainer.tour-accommodation + .tourCategoriesExplainer.tour-tinerary,
.tourCategoriesExplainer.tour-accommodation + .tourCategoriesExplainer.tour-accommodation {
  border-top: none;
}
.tourCategoriesExplainer h1 svg.svg-inline--fa,
.tourCategoriesExplainer h2 svg.svg-inline--fa,
.tourCategoriesExplainer h3 svg.svg-inline--fa,
.tourCategoriesExplainer h4 svg.svg-inline--fa,
.tourCategoriesExplainer h5 svg.svg-inline--fa,
.tourCategoriesExplainer p svg.svg-inline--fa,
.tourCategoriesExplainer h1 i.fas,
.tourCategoriesExplainer h2 i.fas,
.tourCategoriesExplainer h3 i.fas,
.tourCategoriesExplainer h4 i.fas,
.tourCategoriesExplainer h5 i.fas,
.tourCategoriesExplainer p i.fas,
.tourCategoriesExplainer h1 i.fab,
.tourCategoriesExplainer h2 i.fab,
.tourCategoriesExplainer h3 i.fab,
.tourCategoriesExplainer h4 i.fab,
.tourCategoriesExplainer h5 i.fab,
.tourCategoriesExplainer p i.fab,
.tourCategoriesExplainer h1 i.fal,
.tourCategoriesExplainer h2 i.fal,
.tourCategoriesExplainer h3 i.fal,
.tourCategoriesExplainer h4 i.fal,
.tourCategoriesExplainer h5 i.fal,
.tourCategoriesExplainer p i.fal,
.tourCategoriesExplainer h1 i.far,
.tourCategoriesExplainer h2 i.far,
.tourCategoriesExplainer h3 i.far,
.tourCategoriesExplainer h4 i.far,
.tourCategoriesExplainer h5 i.far,
.tourCategoriesExplainer p i.far {
  font-size: inherit;
}
.tourCategoriesExplainer.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .tourCategoriesExplainer.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.tourCategoriesExplainer.timeLine > div h2 {
  text-align: center;
}
.tourCategoriesExplainer.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.tourCategoriesExplainer.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .tourCategoriesExplainer.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(6n+3),
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .tourCategoriesExplainer.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .tourCategoriesExplainer.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.tourCategoriesExplainer.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.tourCategoriesExplainer.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.tourCategoriesExplainer.timeLine > div > div p {
  font-size: 0.9rem;
}
.tourCategoriesExplainer .svg-map {
  max-width: 600px;
  margin: auto;
}
.tourCategoriesExplainer > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tourCategoriesExplainer > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tourCategoriesExplainer > div:not(:last-child) {
  margin-bottom: 24px;
}
.tourCategoriesExplainer > div > a[rel^="lightbox"],
.tourCategoriesExplainer > div > img,
.tourCategoriesExplainer > div > .photoGallery,
.tourCategoriesExplainer > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.tourCategoriesExplainer > div > h2,
.tourCategoriesExplainer > div > h3,
.tourCategoriesExplainer > div > h4,
.tourCategoriesExplainer > div > p {
  text-align: center;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.tourCategoriesExplainer > div > p {
  text-align: justify;
  margin-top: 24px;
}
@media (min-width: 720px) {
  .tourCategoriesExplainer > div > p {
    font-size: clamp(15px, 3vw, 17px);
  }
  .tourCategoriesExplainer > div > p:only-of-type {
    text-align: center;
  }
}
@media (max-width: 960px) {
  .tourCategoriesExplainer > div {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
}
.tourCategoriesExplainer > div > div {
  margin-top: 72px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 24px;
}
@media (max-width: 960px) {
  .tourCategoriesExplainer > div > div {
    grid-template-columns: 1fr;
    max-width: 550px;
    margin-right: auto;
    margin-left: auto;
  }
}
.tourCategoriesExplainer > div > div > div {
  background: #fff;
  padding: 12px;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid #dddddd;
  display: flex;
  flex-direction: column;
  box-shadow: 0 0.25rem 0.25rem rgba(40, 40, 40, 0.06), 0 0.5rem 0.75rem rgba(40, 40, 40, 0.06), 0 0.75rem 1.25rem rgba(40, 40, 40, 0.06);
}
.tourCategoriesExplainer > div > div > div p {
  font-size: 0.9rem;
}
.tourCategoriesExplainer > div > div > div .CTA-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
  margin-top: auto;
  padding-top: 48px;
  justify-self: flex-end;
}
.tourCategoriesExplainer > div > div > div .CTA-wrapper .CTA {
  display: flex;
  justify-content: space-between;
  text-transform: none;
  font-weight: 600;
  letter-spacing: 0.25px;
  font-size: 0.8rem;
  padding: 10px 14px;
  border: 1px solid #84a750;
  border-radius: 4px;
  min-width: 180px;
}
.tourCategoriesExplainer > div > div > div .CTA-wrapper .CTA:hover {
  background: #84a750;
  color: #fff;
}
.tourCategoriesExplainer > div > div > div .CTA-wrapper .CTA:after {
  content: "\f061";
  font-weight: 400;
}
.tourCategoriesExplainer > div > div > div .CTA-wrapper .min-price {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.75rem;
  color: #666666;
}
.tourCategoriesExplainer > div > div > div.iconic > div:first-child {
  background: #84a750;
  border-radius: 4px;
  overflow: hidden;
}
.tourCategoriesExplainer > div > div > div.iconic > div:first-child img,
.tourCategoriesExplainer > div > div > div.iconic > div:first-child picture {
  opacity: 0.75;
  width: 100%;
  min-height: 125px;
}
.tourCategoriesExplainer > div > div > div.iconic h4 {
  font-size: 1.18rem;
}
.tourCategoriesExplainer > div > div > div.iconic .CTA {
  color: #84a750;
  border-color: #84a750;
}
.tourCategoriesExplainer > div > div > div.iconic .CTA:hover {
  background: #84a750;
}
.tourCategoriesExplainer > div > div > div.iconic .details svg.svg-inline--fa,
.tourCategoriesExplainer > div > div > div.iconic .details i.fas,
.tourCategoriesExplainer > div > div > div.iconic .details i.fab,
.tourCategoriesExplainer > div > div > div.iconic .details i.fal,
.tourCategoriesExplainer > div > div > div.iconic .details i.far {
  color: #84a750;
}
.tourCategoriesExplainer > div > div > div.ancient > div:first-child {
  background: #801e2f;
  border-radius: 4px;
  overflow: hidden;
}
.tourCategoriesExplainer > div > div > div.ancient > div:first-child img,
.tourCategoriesExplainer > div > div > div.ancient > div:first-child picture {
  opacity: 0.75;
  width: 100%;
  min-height: 125px;
}
.tourCategoriesExplainer > div > div > div.ancient h4 {
  font-size: 1.18rem;
}
.tourCategoriesExplainer > div > div > div.ancient .CTA {
  color: #801e2f;
  border-color: #801e2f;
}
.tourCategoriesExplainer > div > div > div.ancient .CTA:hover {
  background: #801e2f;
}
.tourCategoriesExplainer > div > div > div.ancient .details svg.svg-inline--fa,
.tourCategoriesExplainer > div > div > div.ancient .details i.fas,
.tourCategoriesExplainer > div > div > div.ancient .details i.fab,
.tourCategoriesExplainer > div > div > div.ancient .details i.fal,
.tourCategoriesExplainer > div > div > div.ancient .details i.far {
  color: #801e2f;
}
.tourCategoriesExplainer > div > div > div.luxury > div:first-child {
  background: #30275A;
  border-radius: 4px;
  overflow: hidden;
}
.tourCategoriesExplainer > div > div > div.luxury > div:first-child img,
.tourCategoriesExplainer > div > div > div.luxury > div:first-child picture {
  opacity: 0.75;
  width: 100%;
  min-height: 125px;
}
.tourCategoriesExplainer > div > div > div.luxury h4 {
  font-size: 1.18rem;
}
.tourCategoriesExplainer > div > div > div.luxury .CTA {
  color: #30275A;
  border-color: #30275A;
}
.tourCategoriesExplainer > div > div > div.luxury .CTA:hover {
  background: #30275A;
}
.tourCategoriesExplainer > div > div > div.luxury .details svg.svg-inline--fa,
.tourCategoriesExplainer > div > div > div.luxury .details i.fas,
.tourCategoriesExplainer > div > div > div.luxury .details i.fab,
.tourCategoriesExplainer > div > div > div.luxury .details i.fal,
.tourCategoriesExplainer > div > div > div.luxury .details i.far {
  color: #30275A;
}
.tour-page-intro {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
}
.tour-page-intro > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tour-page-intro > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tour-page-intro > div:not(:last-child) {
  margin-bottom: 24px;
}
.tour-page-intro.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .tour-page-intro.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tour-page-intro.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .tour-page-intro.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tour-page-intro.tour-tinerary,
.tour-page-intro.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.tour-page-intro.tour-tinerary + .tour-page-intro.tour-tinerary,
.tour-page-intro.tour-tinerary + .tour-page-intro.tour-accommodation,
.tour-page-intro.tour-accommodation + .tour-page-intro.tour-tinerary,
.tour-page-intro.tour-accommodation + .tour-page-intro.tour-accommodation {
  border-top: none;
}
.tour-page-intro h1 svg.svg-inline--fa,
.tour-page-intro h2 svg.svg-inline--fa,
.tour-page-intro h3 svg.svg-inline--fa,
.tour-page-intro h4 svg.svg-inline--fa,
.tour-page-intro h5 svg.svg-inline--fa,
.tour-page-intro p svg.svg-inline--fa,
.tour-page-intro h1 i.fas,
.tour-page-intro h2 i.fas,
.tour-page-intro h3 i.fas,
.tour-page-intro h4 i.fas,
.tour-page-intro h5 i.fas,
.tour-page-intro p i.fas,
.tour-page-intro h1 i.fab,
.tour-page-intro h2 i.fab,
.tour-page-intro h3 i.fab,
.tour-page-intro h4 i.fab,
.tour-page-intro h5 i.fab,
.tour-page-intro p i.fab,
.tour-page-intro h1 i.fal,
.tour-page-intro h2 i.fal,
.tour-page-intro h3 i.fal,
.tour-page-intro h4 i.fal,
.tour-page-intro h5 i.fal,
.tour-page-intro p i.fal,
.tour-page-intro h1 i.far,
.tour-page-intro h2 i.far,
.tour-page-intro h3 i.far,
.tour-page-intro h4 i.far,
.tour-page-intro h5 i.far,
.tour-page-intro p i.far {
  font-size: inherit;
}
.tour-page-intro.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .tour-page-intro.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.tour-page-intro.timeLine > div h2 {
  text-align: center;
}
.tour-page-intro.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.tour-page-intro.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .tour-page-intro.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(6n+3),
  .tour-page-intro.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .tour-page-intro.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .tour-page-intro.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.tour-page-intro.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.tour-page-intro.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.tour-page-intro.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.tour-page-intro.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.tour-page-intro.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.tour-page-intro.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.tour-page-intro.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.tour-page-intro.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.tour-page-intro.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.tour-page-intro.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.tour-page-intro.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.tour-page-intro.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.tour-page-intro.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.tour-page-intro.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.tour-page-intro.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.tour-page-intro.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.tour-page-intro.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.tour-page-intro.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.tour-page-intro.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.tour-page-intro.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.tour-page-intro.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.tour-page-intro.timeLine > div > div p {
  font-size: 0.9rem;
}
.tour-page-intro .svg-map {
  max-width: 600px;
  margin: auto;
}
.tour-page-intro > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tour-page-intro > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tour-page-intro > div:not(:last-child) {
  margin-bottom: 24px;
}
.tour-page-intro > div > a[rel^="lightbox"],
.tour-page-intro > div > img,
.tour-page-intro > div > .photoGallery,
.tour-page-intro > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.tour-page-intro > div > div {
  display: grid;
  grid-gap: 48px;
  grid-template-columns: 1fr 300px;
}
.tour-page-intro > div > div > div:nth-of-type(1) p {
  font-size: 1.2rem;
  line-height: 1.8em;
  letter-spacing: 0.25px;
}
.tour-page-intro > div > div > div:nth-of-type(2) .tour-category-tag {
  background: red;
  border-top-right-radius: 7px;
  border-top-left-radius: 7px;
  padding: 11px 9px 9px 9px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: bold;
  border: 1px solid #dddddd;
  border-bottom: none;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div {
  background: #F9FAFB;
  border-radius: 7px;
  padding: 24px;
  border: 1px solid #dddddd;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div ul {
  margin: 0	;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'Alegreya Sans', sans-serif;
  line-height: 1.3em;
  font-size: 19px;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li:not(:last-of-type) {
  margin-bottom: 18px;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li svg.svg-inline--fa,
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li i.fas,
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li i.fab,
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li i.fal,
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li i.far {
  font-size: 24px;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li > div {
  font-weight: inherit;
}
.tour-page-intro > div > div > div:nth-of-type(2) > div ul li > div > span {
  display: block;
  font-size: 13px;
  margin-top: -5px;
  color: #666666;
  font-family: 'Montserrat', sans-serif;
  font-weight: normal;
}
.tour-page-intro > div > div > div:nth-of-type(2) .tour-category-tag + div:not(.tour-category-tag) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-top: none;
}
@media (min-width: 500px) and (max-width: 775px) {
  .tour-page-intro > div > div > div:nth-of-type(2) ul {
    display: flex;
    column-gap: 24px;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .tour-page-intro > div > div > div:nth-of-type(2) ul li {
    flex-basis: 46%;
  }
}
@media (max-width: 775px) {
  .tour-page-intro > div > div {
    grid-template-columns: 1fr;
  }
  .tour-page-intro > div > div > div:nth-of-type(1) h2,
  .tour-page-intro > div > div > div:nth-of-type(1) p:only-of-type {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 550px;
  }
}
.explainer-gallery {
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
}
.explainer-gallery > div {
  max-width: 1580px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1620px) {
  .explainer-gallery > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.explainer-gallery > div:not(:last-child) {
  margin-bottom: 24px;
}
.explainer-gallery > div {
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(450px, 50%) 1fr;
}
@media (max-width: 1030px) {
  .explainer-gallery > div {
    grid-template-columns: 1fr;
  }
}
.explainer-gallery > div > div:nth-of-type(1) > div {
  position: -webkit-sticky;
  /* Safari */
  position: sticky;
  top: 24px;
  background: #fff;
  padding: 24px;
}
.our-guides {
  display: grid;
  grid-template-columns: 5fr 4fr;
  grid-gap: 48px;
}
.our-guides > div:nth-of-type(2) ul {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 600px) and (max-width: 900px) {
  .our-guides > div:nth-of-type(2) ul {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .our-guides > div:nth-of-type(2) ul > li {
    flex-grow: 1;
    flex-basis: 45%;
  }
}
.our-guides > div:nth-of-type(2) ul li {
  display: flex;
  gap: 24px;
}
.our-guides > div:nth-of-type(2) ul li svg.svg-inline--fa,
.our-guides > div:nth-of-type(2) ul li i.fas,
.our-guides > div:nth-of-type(2) ul li i.fab,
.our-guides > div:nth-of-type(2) ul li i.fal,
.our-guides > div:nth-of-type(2) ul li i.far {
  font-size: 40px;
  width: 40px;
}
.our-guides > div:nth-of-type(2) ul li p {
  font-size: 0.9rem;
}
@media (max-width: 900px) {
  .our-guides {
    grid-template-columns: 1fr;
  }
}
.fold.design-principles,
.fold.seat-hold-info {
  overflow: visible;
}
.our-design-principles,
.seat-hold {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 72px;
  position: relative;
}
@media (min-width: 900px) and (max-width: 1200px) {
  .our-design-principles > div:nth-of-type(1) div,
  .seat-hold > div:nth-of-type(1) div {
    position: sticky;
    top: 70px;
    z-index: 10;
  }
}
.our-design-principles > div:nth-of-type(1) div > h2,
.seat-hold > div:nth-of-type(1) div > h2 {
  margin-top: 0;
}
.our-design-principles > div:nth-of-type(1) div .button,
.seat-hold > div:nth-of-type(1) div .button {
  margin-left: 0;
  width: auto;
  max-width: none;
  border-radius: 4px;
  display: inline-block;
}
.our-design-principles > div:nth-of-type(2) ul,
.seat-hold > div:nth-of-type(2) ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (min-width: 900px) and (max-width: 1200px) {
  .our-design-principles > div:nth-of-type(2) ul,
  .seat-hold > div:nth-of-type(2) ul {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .our-design-principles > div:nth-of-type(2) ul,
  .seat-hold > div:nth-of-type(2) ul {
    grid-template-columns: 1fr;
  }
}
.our-design-principles > div:nth-of-type(2) ul li,
.seat-hold > div:nth-of-type(2) ul li {
  border-radius: 7px;
  background: #fff;
  padding: 30px;
  box-shadow: none;
  border: 1px solid #dddddd;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  min-height: 190px;
}
.our-design-principles > div:nth-of-type(2) ul li svg.svg-inline--fa,
.seat-hold > div:nth-of-type(2) ul li svg.svg-inline--fa,
.our-design-principles > div:nth-of-type(2) ul li i.fas,
.seat-hold > div:nth-of-type(2) ul li i.fas,
.our-design-principles > div:nth-of-type(2) ul li i.fab,
.seat-hold > div:nth-of-type(2) ul li i.fab,
.our-design-principles > div:nth-of-type(2) ul li i.fal,
.seat-hold > div:nth-of-type(2) ul li i.fal,
.our-design-principles > div:nth-of-type(2) ul li i.far,
.seat-hold > div:nth-of-type(2) ul li i.far {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: 2px solid #e6ebdf;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #84a750;
  margin-bottom: 24px;
  font-weight: 300;
}
.our-design-principles > div:nth-of-type(2) ul li h5,
.seat-hold > div:nth-of-type(2) ul li h5 {
  margin: 0 0 12px 0;
  text-align: center;
}
.our-design-principles > div:nth-of-type(2) ul li p,
.seat-hold > div:nth-of-type(2) ul li p {
  font-size: 0.9rem;
  margin: 0;
}
@media (max-width: 900px) {
  .our-design-principles,
  .seat-hold {
    grid-template-columns: 1fr;
  }
}
.stackedCTAs {
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
}
.stackedCTAs > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .stackedCTAs > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.stackedCTAs > div:not(:last-child) {
  margin-bottom: 24px;
}
.stackedCTAs > h2 {
  max-width: 720px;
  text-align: center;
  margin: 0 auto 24px;
}
.stackedCTAs > div {
  background-color: #fff;
  padding: 48px;
  margin: 72px auto;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
  border-radius: 20px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 48px;
  grid-template-areas: "textbox img";
}
.stackedCTAs > div:first-of-type {
  margin-top: 0;
}
.stackedCTAs > div:last-of-type {
  margin-bottom: 0;
}
.stackedCTAs > div:nth-of-type(even) {
  grid-template-areas: "img textbox";
}
@media (max-width: 990px) {
  .stackedCTAs > div {
    max-width: calc(100% - (2 * 10px));
  }
}
@media (max-width: 900px) {
  .stackedCTAs > div {
    max-width: calc(100% - (2 * 10px));
    grid-template-columns: 1fr;
  }
  .stackedCTAs > div:nth-of-type(n) {
    grid-template-areas: "img" "textbox";
  }
}
.stackedCTAs > div > div {
  grid-area: textbox;
}
.stackedCTAs > div > figure,
.stackedCTAs > div > picture {
  grid-area: img;
}
.stackedCTAs > div p {
  font-size: 0.9rem;
}
.stackedCTAs > div .button {
  margin-bottom: 0;
  padding: 12px 16px;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.75px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  border-radius: 4px;
  text-decoration: none;
  box-shadow: none;
  transition: transform 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
}
.stackedCTAs > div .button:hover,
.stackedCTAs > div .button:focus {
  background-color: #749246;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(77, 77, 77, 0.18);
}
svg.svg-inline--fa {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
}
h1 svg.svg-inline--fa,
h2 svg.svg-inline--fa,
h3 svg.svg-inline--fa,
h4 svg.svg-inline--fa,
h5 svg.svg-inline--fa,
h1 i.fas,
h2 i.fas,
h3 i.fas,
h4 i.fas,
h5 i.fas,
h1 i.far,
h2 i.far,
h3 i.far,
h4 i.far,
h5 i.far,
h1 i.fab,
h2 i.fab,
h3 i.fab,
h4 i.fab,
h5 i.fab,
h1 i.fal,
h2 i.fal,
h3 i.fal,
h4 i.fal,
h5 i.fal {
  /* Override defaults so that icon can clear */
}
h1 svg.svg-inline--fa:not(.inlineIcon),
h2 svg.svg-inline--fa:not(.inlineIcon),
h3 svg.svg-inline--fa:not(.inlineIcon),
h4 svg.svg-inline--fa:not(.inlineIcon),
h5 svg.svg-inline--fa:not(.inlineIcon),
h1 i.fas:not(.inlineIcon),
h2 i.fas:not(.inlineIcon),
h3 i.fas:not(.inlineIcon),
h4 i.fas:not(.inlineIcon),
h5 i.fas:not(.inlineIcon),
h1 i.far:not(.inlineIcon),
h2 i.far:not(.inlineIcon),
h3 i.far:not(.inlineIcon),
h4 i.far:not(.inlineIcon),
h5 i.far:not(.inlineIcon),
h1 i.fab:not(.inlineIcon),
h2 i.fab:not(.inlineIcon),
h3 i.fab:not(.inlineIcon),
h4 i.fab:not(.inlineIcon),
h5 i.fab:not(.inlineIcon),
h1 i.fal:not(.inlineIcon),
h2 i.fal:not(.inlineIcon),
h3 i.fal:not(.inlineIcon),
h4 i.fal:not(.inlineIcon),
h5 i.fal:not(.inlineIcon) {
  display: inline;
  margin: 0 0.3em 0 0;
}
.footer {
  /* darker color with white writing */
  background-color: #8d8d8d;
  position: relative;
  /* If footer begins with columns, they're usual top margin won't be needed because there is already lots of white space at teh start of the fold */
  overflow: visible;
}
.footer * {
  color: #ffffff;
}
.footer a.footer-logo {
  display: block;
  max-width: 250px;
  margin-left: auto;
  margin-right: auto;
}
.footer img {
  max-width: 235px;
  filter: brightness(1000%) grayscale(1) saturate(0%);
  margin-left: 0;
}
.footer > div > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 80px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 300px;
}
.fold > div .footer > div > div:last-child {
  margin-bottom: 0;
}
.fold > div .footer > div > div:only-child {
  margin: 0;
}
.footer > div > div > * {
  display: none;
}
.footer > div > div > div,
.footer > div > div > a {
  display: block;
}
.footer > div > div > div:nth-child(n),
.footer > div > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .footer > div > div {
    grid-gap: 40px;
  }
}
@media (max-width: 650px) {
  .footer > div > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .footer > div > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .footer > div > div > div,
.internetExplorer .footer > div > div > a {
  width: 50%;
  display: block;
  padding-left: 40px;
  padding-right: 40px;
}
.internetExplorer .footer > div > div > div:nth-child(1),
.internetExplorer .footer > div > div > a:nth-child(1),
.internetExplorer .footer > div > div > div:nth-child(2),
.internetExplorer .footer > div > div > a:nth-child(2),
.internetExplorer .footer > div > div > div:nth-child(3),
.internetExplorer .footer > div > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .footer > div > div > div *,
.internetExplorer .footer > div > div > a * {
  max-width: 100%;
}
.internetExplorer .footer > div > div > div:nth-child(even),
.internetExplorer .footer > div > div > a:nth-child(even) {
  width: 33.33333333%;
}
.internetExplorer .footer > div > div > div:nth-child(odd),
.internetExplorer .footer > div > div > a:nth-child(odd) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .footer > div > div > div:nth-child(n),
  .internetExplorer .footer > div > div > a:nth-child(n) {
    width: 100%;
  }
}
.footer > div > div svg.svg-inline--fa,
.footer > div > div i.fas,
.footer > div > div i.fab,
.footer > div > div i.fal,
.footer > div > div i.far,
.footer > div > div .fa-fw,
.footer > div > div path {
  color: #ffffff;
}
.footer > div > div p {
  font-size: 0.96rem;
}
.footer > div > div ul,
.footer > div > div ol,
.footer > div > div li {
  font-size: 0.9rem;
}
@media (max-width: 650px) {
  .footer > div > div img {
    margin-left: auto;
  }
  .footer > div > div h4,
  .footer > div > div p,
  .footer > div > div ul,
  .footer > div > div li {
    text-align: center;
  }
  .footer p {
    text-align: center;
  }
}
.prefooter {
  background: #e6e6e6;
}
.prefooter *,
.prefooter * a {
  color: #8d8d8d;
}
.prefooter > div {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  margin: 0 auto;
  grid-template-columns: 1fr 300px 1fr;
}
.fold > div .prefooter > div:last-child {
  margin-bottom: 0;
}
.fold > div .prefooter > div:only-child {
  margin: 0;
}
.prefooter > div > * {
  display: none;
}
.prefooter > div > div,
.prefooter > div > a {
  display: block;
}
.prefooter > div > div:nth-child(n),
.prefooter > div > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .prefooter > div {
    grid-gap: 12px;
  }
}
@media (max-width: 650px) {
  .prefooter > div {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .prefooter > div {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .prefooter > div > div,
.internetExplorer .prefooter > div > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .prefooter > div > div:nth-child(1),
.internetExplorer .prefooter > div > a:nth-child(1),
.internetExplorer .prefooter > div > div:nth-child(2),
.internetExplorer .prefooter > div > a:nth-child(2),
.internetExplorer .prefooter > div > div:nth-child(3),
.internetExplorer .prefooter > div > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .prefooter > div > div *,
.internetExplorer .prefooter > div > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .prefooter > div > div:nth-child(n),
  .internetExplorer .prefooter > div > a:nth-child(n) {
    width: 100%;
  }
}
.prefooter > div > div ul li {
  font-size: 0.9rem;
  line-height: 2.4em;
}
.prefooter > div > div ul li a {
  text-decoration: none;
}
@media (max-width: 600px) {
  .prefooter {
    padding: 48px 0;
  }
}
.fold.containsTourSelectionArea + .prefooter {
  border-top: 1px solid #d4d4d4;
}
/* START OF CONTACT FORM   **************************************/
.symbolBeforeHeader {
  float: left;
}
input {
  width: 100%;
  min-height: 20px;
  font-size: 1em;
  line-height: 1.3em;
  text-align: left;
  padding: 0.5em;
}
input.button {
  text-align: center;
  /* style to match the reCAPTCHA */
  float: left;
  width: 302px;
  max-width: 302px;
  margin: 10px 0;
}
input.button:hover {
  cursor: pointer;
}
select {
  min-height: 25px;
  font-size: 1em;
  line-height: 1.3em;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  border-radius: 5px;
  padding: 5px;
  border-color: #A5A5A5;
}
select:focus {
  border-radius: 0;
}
.contactFormArea p select {
  display: inline;
}
select#numberOfGuests,
select#numberOfRooms {
  font-weight: bold;
  color: #4d4d4d;
  width: 65px;
}
textarea {
  width: 100%;
  font-size: 1em;
  line-height: 1.3em;
  text-align: left;
}
.recaptchaDiv {
  display: block;
  margin: 40px auto;
}
.smallTextArea {
  height: 100px;
}
.mediumTextArea {
  height: 200px;
}
.checkbox {
  width: auto;
  vertical-align: middle;
}
.successMessage,
.contactFormArea .successMessage {
  display: none;
  clear: both;
  border-radius: 7px;
  background: #fff;
  padding: 24px;
  box-shadow: none;
  border: 1px solid #dddddd;
}
.errorMessage,
.contactFormArea .errorMessage {
  border-radius: 7px;
  background: #fff;
  padding: 24px;
  box-shadow: none;
  border: 1px solid #dddddd;
  border: 2px solid red;
}
.errorMessage,
.contactFormArea .errorMessage,
.errorMessage *,
.contactFormArea .errorMessage * {
  color: red;
}
.validationError {
  border: 2px solid red;
}
.contactFormArea table input,
.booking-engine table input {
  width: auto;
}
.contactFormArea .inputBlock:first-of-type,
.booking-engine .inputBlock:first-of-type {
  margin-top: 0;
}
.contactFormArea input[type="text"],
.booking-engine input[type="text"],
.contactFormArea input[type="textarea"],
.booking-engine input[type="textarea"],
.contactFormArea input[type="email"],
.booking-engine input[type="email"],
.contactFormArea input[type="tel"],
.booking-engine input[type="tel"],
.contactFormArea select,
.booking-engine select,
.contactFormArea textarea,
.booking-engine textarea {
  font-family: 'Montserrat', sans-serif;
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #d3d3d3;
  border-radius: 4px;
  background: #fff;
  color: #666;
  font-size: 15px;
  line-height: 1.4;
}
.contactFormArea ul.checkBoxArea,
.booking-engine ul.checkBoxArea {
  padding-left: 12px;
}
.contactFormArea ul.checkBoxArea li.checkboxWrapper,
.booking-engine ul.checkBoxArea li.checkboxWrapper {
  font-size: 0.9rem;
  margin-bottom: 12px;
}
.contactFormArea ul.checkBoxArea li.checkboxWrapper input[type="checkbox"] ~ label:before,
.booking-engine ul.checkBoxArea li.checkboxWrapper input[type="checkbox"] ~ label:before {
  margin-right: 12px;
  font-size: 32px;
}
/* END OF CONTACT FORM   **************************************/
.bookingFormBox {
  border: 1px solid #efeded;
  border-radius: 4px;
  padding: 15px;
}
body.booking-form .fold > div {
  max-width: 800px;
}
.formSection {
  min-height: 100vh;
}
.formSection.singleMajorInput {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 0;
}
.formSection.singleMajorInput input {
  width: 100%;
  padding: 10px;
}
.formSection.singleMajorInput .recaptchaDiv {
  margin-left: 0;
}
.userInputRequirementPlaceholder,
.roomingArea .userInputRequirementPlaceholder {
  position: relative;
  border: none;
  background: transparent;
}
.userInputRequirementPlaceholder textarea,
.roomingArea .userInputRequirementPlaceholder textarea {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: transparent;
  resize: none;
  border: 0px none;
  outline: none;
  height: 0;
}
.userInputRequirementPlaceholder .placeholderMessage,
.roomingArea .userInputRequirementPlaceholder .placeholderMessage {
  background: transparent;
  margin-top: 48px;
  font-size: 2rem;
  text-align: center;
  font-weight: bold;
  color: red;
}
@media (max-width: 500px) {
  .userInputRequirementPlaceholder .placeholderMessage,
  .roomingArea .userInputRequirementPlaceholder .placeholderMessage {
    font-size: 6vw;
    line-height: 1.25em;
  }
}
.userInputRequirementPlaceholder .validationErrorMessage,
.roomingArea .userInputRequirementPlaceholder .validationErrorMessage {
  visibility: hidden;
}
.forwardBack {
  display: flex;
  width: 100%;
  margin-top: 48px;
}
.forwardBack > *:nth-child(n+3) {
  display: none;
}
.forwardBack > div {
  width: 50%;
  padding: 12px;
}
.forwardBack > div:hover {
  background: #ececec;
}
@media (max-width: 500px) {
  .forwardBack > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.forwardBack > div a,
.forwardBack > div input,
.forwardBack > div > span {
  display: block;
  color: #84a750;
  font-weight: bold;
  font-size: 1.3rem;
  cursor: pointer;
}
.forwardBack > div a span:nth-of-type(2),
.forwardBack > div input span:nth-of-type(2),
.forwardBack > div > span span:nth-of-type(2) {
  font-weight: normal;
  font-size: 0.75em;
  text-transform: none;
  text-decoration: underline;
  text-underline-position: under;
}
.forwardBack > div span:first-of-type:after,
.forwardBack > div input:after,
.forwardBack > div span:first-of-type:before,
.forwardBack > div input:before {
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  color: #84a750;
  font-size: 2em;
  width: 25px;
}
.forwardBack > div input {
  background: transparent;
  display: inline-block;
  border: none;
  text-align: right;
  max-width: 90%;
  padding: 0;
}
.forwardBack > div input:hover {
  cursor: pointer;
}
.forwardBack > div:first-child a span:first-of-type:before,
.forwardBack > div:first-child input span:first-of-type:before,
.forwardBack > div:first-child > span span:first-of-type:before {
  content: "\f0d9";
}
.forwardBack > div:first-child a span:nth-of-type(2),
.forwardBack > div:first-child input span:nth-of-type(2),
.forwardBack > div:first-child > span span:nth-of-type(2) {
  padding-left: 25px;
}
.forwardBack > div:nth-of-type(2) a,
.forwardBack > div:nth-of-type(2) input,
.forwardBack > div:nth-of-type(2) > span {
  text-align: right;
}
.forwardBack > div:nth-of-type(2) a span:first-of-type:after,
.forwardBack > div:nth-of-type(2) input span:first-of-type:after,
.forwardBack > div:nth-of-type(2) > span span:first-of-type:after {
  content: "\f0da";
}
.forwardBack > div:nth-of-type(2) a span:nth-of-type(2),
.forwardBack > div:nth-of-type(2) input span:nth-of-type(2),
.forwardBack > div:nth-of-type(2) > span span:nth-of-type(2) {
  padding-right: 25px;
}
p.majorBookingStatement {
  font-weight: bold;
  line-height: 1.6em;
  font-size: 1.7rem;
  text-align: center;
}
.roomingAndPricesArea {
  padding-top: 5vh;
}
.roomingArea {
  margin-top: 24px;
}
.roomingArea > div {
  margin-bottom: 24px;
  border: 1px solid #efeded;
  border-radius: 4px;
  padding: 15px;
  background: #f7f7f7;
}
.roomingArea > div .roomHeadingArea {
  padding: 10px 0;
  margin-bottom: 10px;
}
.roomingArea > div .roomHeadingArea p select {
  font-size: 1rem;
}
.roomingArea > div p {
  font-weight: bold;
}
.roomingArea > div h2,
.roomingArea > div h3,
.roomingArea > div h4 {
  background: none;
  color: #4d4d4d;
}
.roomingArea > div table {
  margin: 0;
}
.roomingArea > div table ::placeholder {
  color: lightgray;
}
.roomingArea > div table input {
  border: none;
}
.roomingArea > div table .ageCategoryLabel,
.roomingArea > div table .guestPriceLabel {
  display: none;
}
.roomingArea > div table tr.inputBlock {
  margin: 0;
}
.roomingArea > div table thead tr {
  background: transparent;
}
.roomingArea > div table thead tr,
.roomingArea > div table thead tr th {
  color: #4d4d4d;
}
@media (min-width: 1000px) {
  .roomingArea > div table tbody tr:first-of-type td:first-of-type {
    padding-left: 25px;
  }
}
.roomingArea > div table tbody tr:nth-child(n) {
  background: #fff;
}
@media (max-width: 1000px) {
  .roomingArea > div {
    background: #f7f7f7;
  }
  .roomingArea > div table,
  .roomingArea > div tbody,
  .roomingArea > div tr,
  .roomingArea > div td {
    display: block;
  }
  .roomingArea > div table tr {
    margin-bottom: 15px;
    background-color: #f7f7f7;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    overflow: hidden;
  }
  .roomingArea > div table tr td {
    border: none;
  }
  .roomingArea > div table tr td:nth-child(n) {
    background: #fff;
  }
  .roomingArea > div table tr td:first-child {
    font-weight: bold;
    font-size: 1.2em;
  }
  .roomingArea > div table tr td:last-child {
    color: darkgray;
  }
  .roomingArea > div table thead {
    display: none;
  }
  .roomingArea > div table input {
    width: 100%;
  }
  .roomingArea > div table .ageCategoryLabel,
  .roomingArea > div table .guestPriceLabel {
    display: inline;
  }
  .roomingArea > div table select {
    display: inline;
  }
  .roomingArea > div table .bedSpacePriceCell {
    font-weight: bold;
  }
}
.contact-page {
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
}
.contact-page > div {
  max-width: 1280px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1320px) {
  .contact-page > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.contact-page > div:not(:last-child) {
  margin-bottom: 24px;
}
.contact-page > div > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 48px;
}
@media (max-width: 900px) {
  .contact-page > div > div {
    grid-template-columns: 1fr;
  }
}
.contact-page > div > div > div:nth-of-type(1) h1 {
  font-size: clamp(2rem, 4vw, 3.5rem);
}
.contact-page > div > div > div:nth-of-type(1) .contact-details {
  font-size: 0.95rem;
}
.contact-page > div > div > div:nth-of-type(1) .contact-details li {
  padding: 6px 0;
}
.contact-page > div > div > div:nth-of-type(2) {
  background: #fff;
  border: 1px solid #c4c4c4;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
  padding: 48px;
}
.contact-page > div > div > div:nth-of-type(2) input.button {
  border: none;
  width: 100%;
  max-width: 100%;
  border-radius: 4px;
}
.private-booking-page {
  padding: clamp(30px, 7.5vh, 110px) 0;
  background: #F9FAFB;
}
.private-booking-page > div {
  max-width: 1280px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1320px) {
  .private-booking-page > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.private-booking-page > div:not(:last-child) {
  margin-bottom: 24px;
}
.private-booking-page > div > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 48px;
}
@media (max-width: 900px) {
  .private-booking-page > div > div {
    grid-template-columns: 1fr;
  }
}
.private-booking-page > div > div > div:nth-of-type(1) h1 {
  font-size: clamp(2rem, 4vw, 3.5rem);
}
.private-booking-page > div > div > div:nth-of-type(1) .contact-details {
  font-size: 0.95rem;
}
.private-booking-page > div > div > div:nth-of-type(1) .contact-details li {
  padding: 6px 0;
}
.private-booking-page > div > div > div:nth-of-type(2) input.button {
  border: none;
  width: 100%;
  max-width: 100%;
  border-radius: 4px;
}
.private-booking-page > div > div > div:nth-of-type(2) .be-actions-row,
.private-booking-page > div > div > div:nth-of-type(2) .pt-error-message {
  margin-top: 24px;
}
.private-booking-page > div > div > div:nth-of-type(2) p + .inputBlock {
  margin-top: 24px;
}
.private-booking-page .pt-validation-error {
  border: 2px solid #dc3545 !important;
  background-color: #fff5f5 !important;
  animation: shake 0.3s;
}
.private-booking-page .pt-error-message {
  background: #f8d7da;
  color: #721c24;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
  border: 1px solid #f5c6cb;
  display: none;
}
.fold[data-prices-fold] .alternativeOptions > div h4,
.fold[data-prices-fold] .alternativeOptions > div h5,
.fold[data-prices-fold] .alternativeOptions > div p {
  margin: 0;
}
.fold[data-prices-fold] .alternativeOptions > div > div ~ div,
.fold[data-prices-fold] .alternativeOptions > div > div ~ h4,
.fold[data-prices-fold] .alternativeOptions > div > div ~ h5 {
  margin-top: 24px;
}
table[data-tour-prices-table] tr:only-of-type td,
table[data-tour-prices-table] tr:only-of-type th {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: clamp(1.4rem, 2.5vw, 1.65rem);
  font-weight: bold;
}
table[data-tour-prices-table] tr:only-of-type td:first-child,
table[data-tour-prices-table] tr:only-of-type th:first-child {
  margin-top: 0;
}
table[data-tour-prices-table] tr:only-of-type td a,
table[data-tour-prices-table] tr:only-of-type th a {
  color: inherit;
}
div[data-key-info-desc=""] ul {
  list-style-type: square;
}
div[data-key-info-desc=""] ul ul {
  list-style-type: circle;
}
div[data-key-info-desc=""] ul ul ul {
  list-style-type: square;
}
.tourPageMainContent {
  background: #F9FAFB;
}
.tourPageMainContent h2,
.tourPageMainContent h3 {
  color: #676767;
}
.tourPageMainContent .credibilityIndicators {
  background: #fff;
}
.tourPageMainContent .fold.prefooter {
  background: transparent;
}
/* ============================================================================
   FULL-SCREEN HERO BANNER (Front Page)
   ============================================================================
   Full-viewport hero with background image, foreground content overlay,
   and sticky navigation that gains white background on scroll.
   
   Structure:
   - Background image layer (first child div)
   - Foreground content layer (second child div) with:
     * Sticky navigation area
     * Hero content area (text box + optional image slider)
   
   Desktop: Text box (45% width) on left, optional image slider (75% width) on right
   Mobile: Single column layout, background image visible
   ============================================================================ */
.hero.frontPage {
  /* Background and foreground plane layering (80% brightness on background) */
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  /* Second child: Foreground content overlay with nav + hero area */
  /* -------------------------------------------------------------------------
        VIEWPORT AND BACKGROUND STYLING
        ------------------------------------------------------------------------- */
  /* Full viewport height (min 430px for landscape mobiles) */
  min-height: 100vh;
  /* Black background shown before image loads */
  background: #000;
  /* -------------------------------------------------------------------------
        BACKGROUND IMAGE LAYER (First Child)
        ------------------------------------------------------------------------- */
  /* Responsive image handling: mobile vs desktop variants */
  /* -------------------------------------------------------------------------
        FOREGROUND CONTENT OVERLAY (Second Child)
        ------------------------------------------------------------------------- */
  /* Absolute positioned overlay covering entire viewport */
  /* -------------------------------------------------------------------------
        SKIP TO CONTENT LINK
        ------------------------------------------------------------------------- */
  /* Down arrow icon at bottom center */
  /* Hide skip link on mobile when contact prompt bar is present */
}
.hero.frontPage > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.hero.frontPage > div:first-child img,
.hero.frontPage > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.hero.frontPage > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .hero.frontPage > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .hero.frontPage > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.hero.frontPage > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.hero.frontPage > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .hero.frontPage > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .hero.frontPage,
.internetExplorer .hero.frontPage * {
  display: block;
}
.internetExplorer body > .hero.frontPage {
  min-height: 400px;
}
.hero.frontPage > div:nth-of-type(2) {
  width: 100%;
  max-width: 100%;
  /* Override global whitespace rules from Common Libraries */
  /* No background wash (transparent, 0% opacity) */
  background: rgba(0, 0, 0, 0);
  /* Navigation area styling at desktop breakpoint */
  /* Hero content area (text + optional slider) */
}
@media (max-width: 1010px) {
  .hero.frontPage > div:nth-of-type(2) {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1020px) {
  .hero.frontPage > div:nth-of-type(2) .navArea {
    background: #fff;
    /* White nav background */
    margin-top: 24px;
  }
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea {
  width: 100%;
  max-width: 990px;
  /* Vertical spacing at desktop breakpoint */
  /* Foreground content layering (100% brightness) */
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1020px) {
  .hero.frontPage > div:nth-of-type(2) > div.heroArea {
    margin: 48px auto 48px auto;
  }
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child img,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(100%);
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .hero.frontPage > div:nth-of-type(2) > div.heroArea,
.internetExplorer .hero.frontPage > div:nth-of-type(2) > div.heroArea * {
  display: block;
}
.internetExplorer body > .hero.frontPage > div:nth-of-type(2) > div.heroArea {
  min-height: 400px;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div {
  /* All text elements: white text with shadow for contrast */
  /* First child: Text box (left side on desktop) */
  /* Second child: Image slider box (right side on desktop) */
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div * {
  color: #ffffff;
  text-shadow: 2px 3px 5px rgba(0, 0, 0, 0.5);
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type {
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 5;
  width: clamp(320px, 45%, 45%);
  /* 45% width text box */
  overflow: visible;
  /* Bug fix: prevent h1 cutoff on desktop */
  /* Slider navigation controls */
}
@media (max-width: 1010px) {
  .hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type {
    left: 10px;
  }
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type h1 {
  margin-top: 0;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls {
  margin-top: 12px;
  display: flex;
  /* Icon sizing and opacity */
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls > div {
  margin-right: 24px;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls svg.svg-inline--fa,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls i.fas,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls i.fab,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls i.fal,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls i.far,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:first-of-type .sliderControls i.fad {
  font-size: 24px;
  font-weight: 900;
  opacity: 0.6;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-of-type(2) {
  margin: 0 0 0 auto;
  width: 75%;
  /* 75% width image slider */
  /* Hide default slick slider navigation arrows */
  /* Full width on mobile */
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-of-type(2) .slick-prev:before,
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-of-type(2) .slick-next:before {
  opacity: 0;
}
.hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-of-type(2) .sliderWrapper {
  margin: 0;
}
@media (max-width: 1020px) {
  .hero.frontPage > div:nth-of-type(2) > div.heroArea > div:nth-of-type(2) {
    width: 100%;
    padding: 0;
  }
}
@media (max-height: 430px) {
  .hero.frontPage {
    min-height: 430px;
  }
}
.hero.frontPage > div:first-child {
  /* Default (desktop) image: hide on mobile, show on tablets */
}
.hero.frontPage > div:first-child picture,
.hero.frontPage > div:first-child picture > img:nth-child(n) {
  /* Mobile option with tablet bias: show mobile image up to 800px */
  /* Mobile option without bias: show mobile image up to 1000px */
}
@media (min-width: 800px) {
  .hero.frontPage > div:first-child picture.mobileOption.mobileBias,
  .hero.frontPage > div:first-child picture > img:nth-child(n).mobileOption.mobileBias {
    display: none;
  }
}
@media (min-width: 1000px) {
  .hero.frontPage > div:first-child picture.mobileOption:not(.mobileBias),
  .hero.frontPage > div:first-child picture > img:nth-child(n).mobileOption:not(.mobileBias) {
    display: none;
  }
}
@media (max-width: 1000px) {
  .hero.frontPage > div:first-child picture picture .defaultOption:not(.mobileBias),
  .hero.frontPage > div:first-child picture picture > img:nth-child(n) .defaultOption:not(.mobileBias) {
    display: none;
  }
}
.hero.frontPage > div:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* Remove top margin from nav at desktop */
  /* Sticky navigation: fixed position with white background on scroll */
  /* -------------------------------------------------------------------------
             HERO CONTENT AREA
             ------------------------------------------------------------------------- */
  /* Text and CTA content positioned at bottom of viewport */
}
@media (max-width: 1100px) {
  .hero.frontPage > div:nth-child(2) {
    padding: 0;
  }
}
@media (min-width: 1020px) {
  .hero.frontPage > div:nth-child(2) .navArea {
    margin-top: 0;
  }
}
@media (min-width: 1020px) {
  .hero.frontPage > div:nth-child(2) > div.navArea.sticky {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    margin: 0;
    z-index: 1;
    background: #fff;
    transition: background-color 0.45s ease;
  }
}
.hero.frontPage > div:nth-child(2) > div.heroArea {
  padding-bottom: clamp(12px, 6vh, 65px);
  padding-left: clamp(12px, 6vh, 65px);
  padding-right: 24px;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  display: block;
  width: auto;
  max-width: none;
  margin: 0;
  /* Text box container */
  /* H1 center alignment for narrow screens (without CTA buttons) */
  /* -------------------------------------------------------------------------
                  CTA WRAPPER VARIANT
                  ------------------------------------------------------------------------- */
  /* Hero with CTA buttons: vertically centered layout */
}
.hero.frontPage > div:nth-child(2) > div.heroArea > div:first-child {
  position: relative;
  width: 100%;
  z-index: 0;
}
.hero.frontPage > div:nth-child(2) > div.heroArea > div:first-child h1 {
  text-align: left;
  margin: 0;
}
@media (max-width: 615px) {
  .hero.frontPage > div:nth-child(2) > div.heroArea:not(.CTAWrapper) {
    padding: 10px;
    bottom: 35%;
  }
  .hero.frontPage > div:nth-child(2) > div.heroArea:not(.CTAWrapper) > div:first-child h1 {
    text-align: center;
    /* Add em-dash separator before subheading */
  }
  .hero.frontPage > div:nth-child(2) > div.heroArea:not(.CTAWrapper) > div:first-child h1 .subHeading:before {
    content: "—";
    margin: 0 0 18px 0;
  }
}
.hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper {
  min-height: calc(100vh - 142px);
  width: 100%;
  max-width: 1300px;
  margin: auto;
  display: flex;
  align-items: center;
  /* Content box: 60% width on desktop, full width on mobile */
}
@media (max-width: 850px) {
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper {
    padding: 10px;
    max-width: 600px;
  }
}
@media (max-width: 500px) {
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper {
    height: calc(100vh - 70px);
  }
}
.hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div {
  width: 60%;
  min-width: 550px;
  margin: 0 auto 0 0;
  /* Left-aligned on desktop */
  position: static;
  /* Responsive heading size */
  /* CTA button styling */
}
@media (max-width: 850px) {
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div {
    margin: auto;
    /* Center-aligned on mobile */
    min-width: 0;
    width: 100%;
    /* Center all text on mobile */
  }
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div h1,
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div p {
    text-align: center;
  }
}
.hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div h1 {
  font-size: clamp(2.4rem, 6vw, 5rem);
}
.hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div .buttonWrapper {
  /* First button: no text shadow, standard text color */
  /* Mobile: stack buttons vertically */
}
.hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div .buttonWrapper a:first-of-type {
  text-shadow: none;
  color: #666666;
}
@media (max-width: 700px) {
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div .buttonWrapper {
    flex-direction: column;
    width: 100%;
    max-width: 400px;
    margin: 24px auto;
  }
  .hero.frontPage > div:nth-child(2) > div.heroArea.CTAWrapper > div .buttonWrapper a {
    width: 100%;
  }
}
.hero.frontPage .skip {
  position: absolute;
  bottom: clamp(10px, 3vh, 24px);
}
.hero.frontPage .skip:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f13a";
  /* Down arrow icon */
  font-size: clamp(35px, 7vh, 70px);
  font-weight: 300;
  opacity: 0.2;
  color: #fff;
}
.hero.frontPage .skip:hover:after {
  opacity: 0.8;
  transition: opacity ease 0.15s;
}
@media (max-width: 500px) {
  .contactPromptBar ~ .hero.frontPage .skip {
    display: none;
  }
}
/* FUNCTIONS OF THIS STYLESHEET

1. Styles for iframes and content which is embedded from other websites  



*/
.iframeContainer {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
  overflow: hidden;
}
.iframeContainer iframe,
.iframeContainer object,
.iframeContainer embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
p + .googleMapWrapper {
  margin-top: 24px;
}
#lightboxBackground {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: flex;
  justify-content: center;
  align-items: center;
}
#lightboxBackground .lb-loadingWrapper {
  font-size: 50px;
  color: #eee;
}
#lightbox {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  display: flex;
  justify-content: center;
  align-items: center;
}
#lightbox .lb-container {
  position: relative;
  max-height: 100%;
  max-width: 100%;
}
#lightbox .lb-container .lb-image {
  max-height: 100vh;
  max-width: 100%;
  overflow: hidden;
}
#lightbox .lb-container .lb-loadingErrorMessage {
  min-height: 200px;
  display: none;
  padding: 2em;
}
#lightbox .lb-container .lb-close {
  position: absolute;
  top: 0;
  right: 0;
}
#lightbox .lb-container .lb-prev,
#lightbox .lb-container .lb-next {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 45%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
#lightbox .lb-container .lb-next {
  left: auto;
  right: 0;
  justify-content: flex-end;
}
#lightbox .lb-container .lb-iconWrapper {
  background-color: rgba(0, 0, 0, 0.5);
  padding: 1em;
  color: rgba(240, 240, 240, 0.7);
  font-size: 18px;
}
@media only screen and (max-width: 800px) {
  #lightbox .lb-container .lb-iconWrapper {
    padding: 0.5em;
  }
}
@media only screen and (max-width: 500px) {
  #lightbox .lb-container .lb-iconWrapper {
    font-size: 15px;
  }
}
#lightbox .lb-container .lb-close,
#lightbox .lb-container .lb-prev,
#lightbox .lb-container .lb-next {
  cursor: pointer;
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
#lightbox .lb-container .lb-close:hover,
#lightbox .lb-container .lb-prev:hover,
#lightbox .lb-container .lb-next:hover {
  opacity: 0.8;
}
#lightbox .lb-container .lb-close:hover .lb-iconWrapper,
#lightbox .lb-container .lb-prev:hover .lb-iconWrapper,
#lightbox .lb-container .lb-next:hover .lb-iconWrapper {
  color: #fff;
}
#lightbox .lb-container .lb-description {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0.3em;
  background-color: rgba(0, 0, 0, 0.5);
  color: rgba(240, 240, 240, 0.7);
  line-height: 1.3em;
}
@media only screen and (max-width: 800px) {
  #lightbox .lb-container .lb-description {
    font-size: 0.8em;
  }
}
#lightbox .lb-container .lb-loader {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
}
#lightbox.loadingError .lb-loadingErrorMessage {
  display: block;
}
#lightbox.loadingError .lb-image {
  display: none;
}
.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0;
}
.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../../_CommonLibraries/photo/loading.gif) no-repeat;
}
.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../../_CommonLibraries/photo/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}
/* Phil's Rules */
.lightbox img {
  border: none;
}
/* base image styles - stop if overflowing it's container, centre in space if too small etc 
	  Applies to a[rel*="lightbox"] and img */
a:not(.button)[rel*="lightbox"] {
  max-width: 100%;
  object-fit: cover;
  display: block;
  margin-left: auto;
  margin-right: auto;
  /* to make the overlay children(i.e the magifying glass on hover) be centralised vertically and horisontally */
  /* OLD - iOS 6-, Safari 3.1-6 */
  /* OLD - Firefox 19- (bit buggy but only affects 5% of visitors to our sites) */
  /* TWEENER - IE 10 */
  /* NEW - Chrome */
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;
  /* OLD - Firefox 19- (bit buggy but only affects 5% of visitors to our sites) */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Chrome */
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: stretch;
}
a:not(.button)[rel*="lightbox"]:hover,
a:not(.button)[rel*="lightbox"]:focus {
  /* display a magifying glass icon in front of the image */
  /* darken the image */
}
a:not(.button)[rel*="lightbox"]:hover:before,
a:not(.button)[rel*="lightbox"]:focus:before {
  /* create and style the icon*/
  content: "\f00e";
  font-family: "Font Awesome 5 Pro";
  font-size: 35px;
  color: #fff;
  font-weight: 900;
  /* display the icon centrally in front of the image */
  position: absolute;
  z-index: 1;
}
a:not(.button)[rel*="lightbox"]:hover img,
a:not(.button)[rel*="lightbox"]:focus img {
  filter: brightness(30%);
  /* smooth the effect */
  transition: ease 0.15s;
  -webkit-transition: ease 0.15s;
  /*  for safari - most users need this*/
}
/* For images where the centre of action might get cropped out by responsive design (e.g. the sun in a sunset) */
/* You can only use one of these classes on any given image, i.e. can't use them in combination */
img {
  max-width: 100%;
  object-fit: cover;
  display: block;
  margin-left: auto;
  margin-right: auto;
  /* Flip an image horizontally so it faces inward, toward the centre of the page 
	
	## Don't use on any image containing text ##
	
	*/
}
img.cropFromLeft {
  object-position: right;
}
img.cropFromRight {
  object-position: left;
}
img.cropFromTop {
  object-position: bottom;
}
img.cropFromBottom {
  object-position: top;
}
img.flipHorizontal {
  -moz-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  filter: FlipH;
  -ms-filter: "FlipH";
}
figure {
  position: relative;
}
img {
  margin-left: auto;
  margin-right: auto;
}
img.foregroundLogo {
  -webkit-filter: saturate(0) brightness(100);
  filter: saturate(0) brightness(100);
  opacity: 0.85;
}
img.mappedImage {
  width: auto;
  min-width: 0;
  max-width: none;
}
.fold > div > a[rel^="lightbox"],
.fold > div > img,
.fold > div > .photoGallery,
.fold > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.photoGallery {
  display: grid;
  clear: both;
  grid-gap: 6px;
  margin: 6px;
  grid-template-columns: repeat(3, 1fr);
  max-width: 100%;
  width: 100%;
}
.photoGallery > a,
.photoGallery > figure,
.photoGallery > div,
.photoGallery > img,
.photoGallery > picture {
  width: 100%;
}
.photoGallery > a,
.photoGallery > figure,
.photoGallery > div,
.photoGallery > img,
.photoGallery > picture,
.photoGallery > a img,
.photoGallery > figure img,
.photoGallery > div img,
.photoGallery > img img,
.photoGallery > picture img,
.photoGallery > a picture,
.photoGallery > figure picture,
.photoGallery > div picture,
.photoGallery > img picture,
.photoGallery > picture picture,
.photoGallery > a picture img,
.photoGallery > figure picture img,
.photoGallery > div picture img,
.photoGallery > img picture img,
.photoGallery > picture picture img {
  max-height: none;
  width: 100%;
}
.photoGallery > a.portrait,
.photoGallery > figure.portrait,
.photoGallery > div.portrait,
.photoGallery > img.portrait,
.photoGallery > picture.portrait {
  grid-row: span 2;
}
.photoGallery > a.doubleWidth,
.photoGallery > figure.doubleWidth,
.photoGallery > div.doubleWidth,
.photoGallery > img.doubleWidth,
.photoGallery > picture.doubleWidth {
  grid-column: span 2;
}
@media (max-width: 800px) {
  .photoGallery {
    grid-template-columns: 1fr 1fr;
  }
}
.photoGallery > * {
  width: auto;
}
.sliderGalleryWithThumbnails .slider-nav {
  padding-top: 4px;
  padding-bottom: 4px;
}
.sliderGalleryWithThumbnails .slider-nav figcaption {
  display: none;
}
.sliderGalleryWithThumbnails .slider-nav img,
.sliderGalleryWithThumbnails .slider-nav figure {
  min-width: 100%;
  min-height: 100%;
}
.sliderGalleryWithThumbnails .slider-for {
  overflow: hidden;
}
.sliderGalleryWithThumbnails .slider-for img,
.sliderGalleryWithThumbnails .slider-for figure {
  min-width: 100%;
  min-height: 100%;
}
.sliderGalleryWithThumbnails .slider-for button {
  margin: 0 12px;
}
.sliderGalleryWithThumbnails .slider-for button.slick-prev.slick-arrow:before,
.sliderGalleryWithThumbnails .slider-for button.slick-next.slick-arrow:before {
  text-shadow: none;
  text-align: center;
  color: #dddddd;
  font-size: 50px;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-weight: 400;
}
.sliderGalleryWithThumbnails .slider-for button.slick-prev.slick-arrow.slick-prev.slick-arrow:before,
.sliderGalleryWithThumbnails .slider-for button.slick-next.slick-arrow.slick-prev.slick-arrow:before {
  content: "\f053";
}
.sliderGalleryWithThumbnails .slider-for button.slick-prev.slick-arrow.slick-next.slick-arrow:before,
.sliderGalleryWithThumbnails .slider-for button.slick-next.slick-arrow.slick-next.slick-arrow:before {
  content: "\f054";
}
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure {
  position: relative;
}
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.55);
  padding: 24px;
  min-width: 200px;
  width: 35%;
}
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption p {
  font-size: 14px;
  margin: 0;
}
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption p a {
  text-decoration: underline;
  text-underline-position: under;
}
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption,
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption * {
  color: white;
}
@media (max-width: 550px) {
  .sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption {
    bottom: 0;
    left: 0;
    right: 0;
    top: auto;
    min-width: 100%;
    height: 50px;
    padding-top: 0;
    padding-bottom: 0;
  }
  .sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption *:nth-child(n+2) {
    display: none;
  }
  .sliderGalleryWithThumbnails .slider-for .slick-slide > figure figcaption h4 {
    line-height: 50px;
    margin: 0;
  }
}
.sliderGalleryWithThumbnails .slider-for .slick-slide > figure img {
  width: auto;
}
@media (min-width: 0) {
  .masonry-gallery {
    column-count: 2;
    column-gap: clamp(12px, 3vw, 24px);
  }
}
.masonry-gallery > div,
.masonry-gallery > a {
  break-inside: avoid;
  margin-bottom: clamp(12px, 3vw, 24px);
  display: block;
}
.masonry-gallery > div > picture,
.masonry-gallery > a > picture,
.masonry-gallery > div img,
.masonry-gallery > a img {
  width: 100%;
  height: auto;
  display: block;
}
.fold[name="included"] .inclusionsGrid {
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
.fold[name="included"] .inclusionsGrid__col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 800px) {
  .fold[name="included"] .inclusionsGrid {
    grid-template-columns: 1fr;
  }
}
.fold[name="included"] .inclusionCard {
  border-radius: 7px;
  background: #fff;
  padding: 24px;
  box-shadow: none;
  border: 1px solid #dddddd;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  text-align: left;
}
.fold[name="included"] .inclusionCard .cardHead {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.fold[name="included"] .inclusionCard .cardHead .badge {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #a8c381;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
}
.fold[name="included"] .inclusionCard .cardHead h3 {
  margin: 0;
  text-align: left;
}
.fold[name="included"] .inclusionCard .cardBody {
  margin-top: 6px;
}
.fold[name="included"] .inclusionCard .inclusionList {
  list-style: none;
  margin: 0;
  padding: 0;
}
.fold[name="included"] .inclusionCard .inclusionList > li {
  position: relative;
  padding-left: 28px;
  margin: 6px 0;
}
.fold[name="included"] .inclusionCard .inclusionList > li:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f058";
  color: #84a750;
  position: absolute;
  left: 0;
  top: 2px;
  font-size: 1.05em;
}
.fold[name="included"] .inclusionCard .inclusionList > li ul {
  margin: 6px 0 0 0;
}
.fold[name="included"] .inclusionCard--neg .cardHead .badge {
  background: #e35858;
}
.fold[name="included"] .inclusionCard--neg .cardHead .badge svg.svg-inline--fa,
.fold[name="included"] .inclusionCard--neg .cardHead .badge i.fas,
.fold[name="included"] .inclusionCard--neg .cardHead .badge i.fab,
.fold[name="included"] .inclusionCard--neg .cardHead .badge i.fal,
.fold[name="included"] .inclusionCard--neg .cardHead .badge i.far {
  color: #fff;
}
.fold[name="included"] .inclusionCard--neg .inclusionList > li:before {
  content: "\f057";
  color: #e35858;
}
/* Layered content: background images with foreground text
   Recommended image sizes: 1600x900 (wide), 700x1000 (tall) */
.layeredContent {
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.layeredContent > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.layeredContent > div:first-child img,
.layeredContent > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.layeredContent > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .layeredContent > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .layeredContent > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.layeredContent > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.layeredContent > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .layeredContent > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .layeredContent,
.internetExplorer .layeredContent * {
  display: block;
}
.internetExplorer body > .layeredContent {
  min-height: 400px;
}
.layeredContent.reducedHeight {
  min-height: 30vh;
}
.layeredContent.strip {
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 0;
}
.layeredContent.strip > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.layeredContent.strip > div:first-child img,
.layeredContent.strip > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(60%);
}
.layeredContent.strip > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .layeredContent.strip > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .layeredContent.strip > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.layeredContent.strip > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.layeredContent.strip > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .layeredContent.strip > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .layeredContent.strip,
.internetExplorer .layeredContent.strip * {
  display: block;
}
.internetExplorer body > .layeredContent.strip {
  min-height: 400px;
}
.layeredContent.strip > div:nth-child(n) {
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 750px) {
  .layeredContent {
    min-height: 600px;
  }
  .layeredContent.reducedHeight {
    min-height: 400px;
  }
  .layeredContent.noMinHeight {
    min-height: 0;
  }
}
.layeredContent > div:nth-child(2) {
  padding-bottom: 48px;
  padding-top: 48px;
}
.layeredContent > div:nth-child(2) * {
  color: #ffffff;
}
.layeredContent > div:nth-child(2) .buttonWrapper > a:first-of-type {
  color: #666666;
}
.columns .layeredContent > div:nth-child(2) * {
  text-align: Left;
}
.layeredContent > div:nth-child(2) .button {
  display: block;
  max-width: 300px;
  border: 1px solid #fff;
  background-color: transparent;
  color: #fff;
  box-shadow: none;
  text-shadow: none;
}
.layeredContent > div:nth-child(2) .button:hover {
  background-color: #fff;
  color: #666666;
}
.layeredContent > div:nth-child(2) p a {
  text-decoration: underline;
  text-underline-position: under;
  text-decoration-skip: ink;
}
.layeredContent > div:nth-child(2).majorLandingPageCTAArea {
  max-width: 700px;
  margin: 0 auto 0 0;
}
.layeredContent > div:nth-child(2).majorLandingPageCTAArea > * {
  text-align: left;
}
.layeredContent > div:nth-child(2).majorLandingPageCTAArea .button {
  width: 400px;
  max-width: 90%;
  color: #ffffff;
  background-color: #84a750;
  border-radius: 4px;
  padding: 24px;
  margin: 36px auto 24px 0;
  border: none;
  text-align: center;
  font-weight: bold;
  text-transform: uppercase;
}
@media (min-width: 1100px) {
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea {
    max-width: 1000px;
    margin: auto;
    padding-right: 300px;
  }
}
@media (max-width: 1100px) {
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media (max-width: 750px) {
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea {
    width: 100%;
    max-width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea h1,
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea h2,
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea p,
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea .h1Caption,
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea .subHeading {
    text-align: center;
  }
  .layeredContent > div:nth-child(2).majorLandingPageCTAArea .button {
    margin-left: auto;
    margin-right: auto;
  }
}
.printerFriendly .layeredContent .foregroundLayer * {
  color: #3b3b3b;
  text-shadow: none;
}
.layeredContent.travelJournalPenSketch,
.travelguide .layeredContent.travelJournalPenSketch {
  display: flex;
  align-items: flex-start;
  align-items: center;
}
.layeredContent.travelJournalPenSketch .foregroundLayer *,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer * {
  text-align: left;
}
.layeredContent.travelJournalPenSketch .foregroundLayer h1,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h1,
.layeredContent.travelJournalPenSketch .foregroundLayer h2,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h2,
.layeredContent.travelJournalPenSketch .foregroundLayer h3,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h3 {
  font-family: 'Allura', Sans Serif;
  text-transform: none;
  line-height: 1em;
  padding: 0.1em;
}
.layeredContent.travelJournalPenSketch .foregroundLayer h1 .subHeading,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h1 .subHeading,
.layeredContent.travelJournalPenSketch .foregroundLayer h2 .subHeading,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h2 .subHeading,
.layeredContent.travelJournalPenSketch .foregroundLayer h3 .subHeading,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h3 .subHeading {
  text-transform: uppercase;
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 0.9em;
  font-weight: 900;
  opacity: 1;
  margin: 0;
}
.layeredContent.travelJournalPenSketch .foregroundLayer h1 .subHeading:before,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h1 .subHeading:before,
.layeredContent.travelJournalPenSketch .foregroundLayer h2 .subHeading:before,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h2 .subHeading:before,
.layeredContent.travelJournalPenSketch .foregroundLayer h3 .subHeading:before,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h3 .subHeading:before {
  height: 0;
}
.layeredContent.travelJournalPenSketch .foregroundLayer h1,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h1,
.layeredContent.travelJournalPenSketch .foregroundLayer h2,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h2 {
  font-size: 6em;
}
@media (max-width: 800px) {
  .layeredContent.travelJournalPenSketch .foregroundLayer h1,
  .travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h1,
  .layeredContent.travelJournalPenSketch .foregroundLayer h2,
  .travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h2 {
    font-size: 4.5em;
  }
}
@media (max-width: 600px) {
  .layeredContent.travelJournalPenSketch .foregroundLayer h1,
  .travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h1,
  .layeredContent.travelJournalPenSketch .foregroundLayer h2,
  .travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h2 {
    font-size: 3em;
  }
}
.layeredContent.travelJournalPenSketch .foregroundLayer h3,
.travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h3 {
  font-size: 4.2em;
}
@media (max-width: 800px) {
  .layeredContent.travelJournalPenSketch .foregroundLayer h3,
  .travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h3 {
    font-size: 3em;
  }
}
@media (max-width: 600px) {
  .layeredContent.travelJournalPenSketch .foregroundLayer h3,
  .travelguide .layeredContent.travelJournalPenSketch .foregroundLayer h3 {
    font-size: 2.4em;
  }
}
.layeredContent.CROSplitterMenu .columns > div:first-of-type {
  display: flex;
  align-items: center;
}
@media (min-width: 800px) {
  .layeredContent.CROSplitterMenu .columns > div:first-of-type h1,
  .layeredContent.CROSplitterMenu .columns > div:first-of-type h2,
  .layeredContent.CROSplitterMenu .columns > div:first-of-type h3,
  .layeredContent.CROSplitterMenu .columns > div:first-of-type h1 .subHeading,
  .layeredContent.CROSplitterMenu .columns > div:first-of-type h2 .subHeading,
  .layeredContent.CROSplitterMenu .columns > div:first-of-type h3 .subHeading {
    text-align: left;
  }
}
.layeredContent.CROSplitterMenu .columns > div:first-of-type *:nth-child(n + 2) {
  display: none;
}
.layeredContent.CROSplitterMenu .columns > div:nth-of-type(2) ul.midPageMenu.vertical li .button {
  background: #fff;
  color: #666666;
}
@media (max-width: 550px) {
  .layeredContent.CROSplitterMenu .columns > div:nth-of-type(2) ul.midPageMenu.vertical li .button {
    font-size: 0.8rem;
  }
}
.layeredContent.CROSplitterMenu .columns > div:nth-of-type(2) ul.midPageMenu.vertical li .button:after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f054";
  margin-left: 0.5em;
  font-size: 1.2em;
  vertical-align: middle;
  line-height: 1em;
  font-weight: normal;
}
.layeredContent.CROSplitterMenu .columns > div:nth-of-type(2) ul.midPageMenu.vertical li .button.strongCallToAction {
  font-weight: bold;
}
.layeredContent.CROSplitterMenu .columns > div:nth-of-type(2) ul.midPageMenu.vertical li .button.strongCallToAction:after {
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  content: "\f054";
  margin-left: 0.5em;
  font-size: 1.2em;
  vertical-align: middle;
  line-height: 1em;
}
.columns.multipleOptionsJunction > div img {
  max-height: 200px;
  width: 100%;
}
.columns.multipleOptionsJunction > div a h3:after,
.columns.multipleOptionsJunction > div a h4:after,
.columns.multipleOptionsJunction > div a h5:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  margin-left: 0.5em;
}
.columns.multipleOptionsJunction > div h3 {
  margin-top: 0.4em;
  text-transform: uppercase;
}
.columns.multipleOptionsJunction > div ul h4:after,
.columns.multipleOptionsJunction > div ul h5:after {
  content: "";
}
.columns.multipleOptionsJunction > div figure {
  position: relative;
}
.columns.multipleOptionsJunction > div figcaption {
  position: absolute;
  top: 0;
  left: 0;
  height: 2rem;
  width: 100%;
  padding: 0.2rem;
  font-size: 1rem;
  background: rgba(255, 255, 255, 0.9);
  color: #3c3c3c;
  text-shadow: none;
  font-weight: bold;
}
.columns.multipleOptionsJunction.miniature {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .columns.multipleOptionsJunction.miniature:last-child {
  margin-bottom: 0;
}
.fold > div .columns.multipleOptionsJunction.miniature:only-child {
  margin: 0;
}
.columns.multipleOptionsJunction.miniature > * {
  display: none;
}
.columns.multipleOptionsJunction.miniature > div,
.columns.multipleOptionsJunction.miniature > a {
  display: block;
}
.columns.multipleOptionsJunction.miniature > div:nth-child(n),
.columns.multipleOptionsJunction.miniature > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 0) {
  .columns.multipleOptionsJunction.miniature {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .columns.multipleOptionsJunction.miniature {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 0) {
  .columns.multipleOptionsJunction.miniature {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .columns.multipleOptionsJunction.miniature {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .columns.multipleOptionsJunction.miniature > div,
.internetExplorer .columns.multipleOptionsJunction.miniature > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .columns.multipleOptionsJunction.miniature > div:nth-child(1),
.internetExplorer .columns.multipleOptionsJunction.miniature > a:nth-child(1),
.internetExplorer .columns.multipleOptionsJunction.miniature > div:nth-child(2),
.internetExplorer .columns.multipleOptionsJunction.miniature > a:nth-child(2),
.internetExplorer .columns.multipleOptionsJunction.miniature > div:nth-child(3),
.internetExplorer .columns.multipleOptionsJunction.miniature > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .columns.multipleOptionsJunction.miniature > div *,
.internetExplorer .columns.multipleOptionsJunction.miniature > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .columns.multipleOptionsJunction.miniature > div:nth-child(n),
  .internetExplorer .columns.multipleOptionsJunction.miniature > a:nth-child(n) {
    width: 100%;
  }
}
.columns.multipleOptionsJunction.miniature .pairedContentCard {
  margin: 0.5em 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 5px;
}
@media (max-width: 500px) {
  .columns.multipleOptionsJunction.miniature .pairedContentCard {
    grid-template-columns: 1fr;
  }
}
.columns.multipleOptionsJunction.miniature .pairedContentCard > div:nth-of-type(2) {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.columns.multipleOptionsJunction .columns {
  margin: 0;
}
.breadcrumb {
  background: #fff;
}
.breadcrumb div {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
  max-width: 1424px;
  padding-top: 6px;
  padding-bottom: 6px;
  font-size: 0.8rem;
}
@media (max-width: 1010px) {
  .breadcrumb div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 700px) {
  .breadcrumb div {
    font-size: 0.8rem;
  }
}
.breadcrumb div > .svg-inline--fa,
.breadcrumb div .fa {
  vertical-align: middle;
  color: #84a750;
}
.additionalInfoMenu {
  background-color: #F9FAFB;
  padding: 1.35em;
  display: flex;
  flex-direction: column;
}
.additionalInfoMenu .additionalInfoMenu,
.distinctiveContent .additionalInfoMenu {
  background-color: #fefefe;
}
.additionalInfoMenu > * {
  display: none;
}
.additionalInfoMenu > div {
  display: block;
}
.additionalInfoMenu > div:nth-child(n+2) {
  margin-top: 0.75em;
}
@media (max-width: 800px) and (min-width: 550px) {
  .additionalInfoMenu {
    flex-direction: row;
    justify-content: space-evenly;
    align-content: stretch;
  }
  .additionalInfoMenu > div {
    flex-grow: 1;
    min-width: 33.33333333%;
    margin-right: 0.3em;
  }
  .additionalInfoMenu > div:last-child {
    margin-right: 0;
  }
  .additionalInfoMenu > div:nth-child(n) {
    margin-top: 0;
  }
}
.additionalInfoMenu > h1,
.additionalInfoMenu h2,
.additionalInfoMenu h3 {
  display: none;
}
.additionalInfoMenu h4,
.additionalInfoMenu h5 {
  color: #84a750;
}
.additionalInfoMenu h4 {
  font-size: 1.1rem;
}
.additionalInfoMenu h4:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f124";
}
.additionalInfoMenu.nonLocational h4:before {
  content: "\f05a";
}
.additionalInfoMenu ul,
.additionalInfoMenu p {
  margin-top: 0;
  font-size: 0.96rem;
  line-height: 1.4em;
  width: 100%;
}
.suggestedAlternativeContent,
.suggestedNextStepContent {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 18px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .suggestedAlternativeContent:last-child,
.fold > div .suggestedNextStepContent:last-child {
  margin-bottom: 0;
}
.fold > div .suggestedAlternativeContent:only-child,
.fold > div .suggestedNextStepContent:only-child {
  margin: 0;
}
.suggestedAlternativeContent > *,
.suggestedNextStepContent > * {
  display: none;
}
.suggestedAlternativeContent > div,
.suggestedNextStepContent > div,
.suggestedAlternativeContent > a,
.suggestedNextStepContent > a {
  display: block;
}
.suggestedAlternativeContent > div:nth-child(n),
.suggestedNextStepContent > div:nth-child(n),
.suggestedAlternativeContent > a:nth-child(n),
.suggestedNextStepContent > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 550px) {
  .suggestedAlternativeContent,
  .suggestedNextStepContent {
    grid-gap: 9px;
  }
}
@media (max-width: 800px) {
  .suggestedAlternativeContent,
  .suggestedNextStepContent {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 550px) {
  .suggestedAlternativeContent,
  .suggestedNextStepContent {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .suggestedAlternativeContent,
.internetExplorer .suggestedNextStepContent {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .suggestedAlternativeContent > div,
.internetExplorer .suggestedNextStepContent > div,
.internetExplorer .suggestedAlternativeContent > a,
.internetExplorer .suggestedNextStepContent > a {
  width: 33.33333333%;
  display: block;
  padding-left: 9px;
  padding-right: 9px;
}
.internetExplorer .suggestedAlternativeContent > div:nth-child(1),
.internetExplorer .suggestedNextStepContent > div:nth-child(1),
.internetExplorer .suggestedAlternativeContent > a:nth-child(1),
.internetExplorer .suggestedNextStepContent > a:nth-child(1),
.internetExplorer .suggestedAlternativeContent > div:nth-child(2),
.internetExplorer .suggestedNextStepContent > div:nth-child(2),
.internetExplorer .suggestedAlternativeContent > a:nth-child(2),
.internetExplorer .suggestedNextStepContent > a:nth-child(2),
.internetExplorer .suggestedAlternativeContent > div:nth-child(3),
.internetExplorer .suggestedNextStepContent > div:nth-child(3),
.internetExplorer .suggestedAlternativeContent > a:nth-child(3),
.internetExplorer .suggestedNextStepContent > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .suggestedAlternativeContent > div *,
.internetExplorer .suggestedNextStepContent > div *,
.internetExplorer .suggestedAlternativeContent > a *,
.internetExplorer .suggestedNextStepContent > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .suggestedAlternativeContent > div:nth-child(n),
  .internetExplorer .suggestedNextStepContent > div:nth-child(n),
  .internetExplorer .suggestedAlternativeContent > a:nth-child(n),
  .internetExplorer .suggestedNextStepContent > a:nth-child(n) {
    width: 100%;
  }
}
.suggestedAlternativeContent div > a,
.suggestedNextStepContent div > a {
  display: block;
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100px;
  border-radius: 7px;
  overflow: hidden;
}
.suggestedAlternativeContent div > a > div:first-child,
.suggestedNextStepContent div > a > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.suggestedAlternativeContent div > a > div:first-child img,
.suggestedNextStepContent div > a > div:first-child img,
.suggestedAlternativeContent div > a > div:first-child picture,
.suggestedNextStepContent div > a > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.suggestedAlternativeContent div > a > div:first-child > img:nth-of-type(2),
.suggestedNextStepContent div > a > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .suggestedAlternativeContent div > a > div:first-child > img:nth-of-type(2):last-child,
  .suggestedNextStepContent div > a > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .suggestedAlternativeContent div > a > div:first-child > img:first-of-type:nth-last-of-type(2),
  .suggestedNextStepContent div > a > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.suggestedAlternativeContent div > a > div:first-child > picture > img:nth-child(n),
.suggestedNextStepContent div > a > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.suggestedAlternativeContent div > a > div:nth-child(2),
.suggestedNextStepContent div > a > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .suggestedAlternativeContent div > a > div:nth-child(2),
  .suggestedNextStepContent div > a > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .suggestedAlternativeContent div > a,
.internetExplorer .suggestedNextStepContent div > a,
.internetExplorer .suggestedAlternativeContent div > a *,
.internetExplorer .suggestedNextStepContent div > a * {
  display: block;
}
.internetExplorer body > .suggestedAlternativeContent div > a,
.internetExplorer body > .suggestedNextStepContent div > a {
  min-height: 400px;
}
.suggestedAlternativeContent div > a > div:nth-of-type(2),
.suggestedNextStepContent div > a > div:nth-of-type(2) {
  font-size: 1.19rem;
  color: #ffffff;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  text-shadow: 1px 1px darkslategray;
}
.suggestedAlternativeContent div > a > div:nth-of-type(2) span,
.suggestedNextStepContent div > a > div:nth-of-type(2) span {
  font-size: 0.7em;
  opacity: 0.9;
  margin-top: 6px;
  display: block;
  clear: both;
  width: 100%;
}
.suggestedAlternativeContent div > a > div:first-child img,
.suggestedNextStepContent div > a > div:first-child img {
  filter: brightness(56%);
}
@media (max-width: 550px) {
  .suggestedAlternativeContent,
  .suggestedNextStepContent {
    grid-gap: 6px;
  }
}
.productCategoryGallery {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 24px;
}
@media (max-width: 800px) {
  .productCategoryGallery {
    grid-template-columns: 1fr;
    padding: 0 14px;
  }
}
@media (min-width: 801px) {
  .productCategoryGallery > a:nth-of-type(1) {
    grid-column-start: 1;
    grid-column-end: 3;
  }
}
.productCategoryGallery > a {
  border-radius: 4px;
  overflow: hidden;
  min-height: 336px;
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: align-items 2.75s;
}
@media (max-width: 990px) {
  .productCategoryGallery > a {
    min-height: calc((100vw - (10px * 2) - (24px * 2)) / 3);
  }
}
.productCategoryGallery > a > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.productCategoryGallery > a > div:first-child img,
.productCategoryGallery > a > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.productCategoryGallery > a > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .productCategoryGallery > a > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .productCategoryGallery > a > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.productCategoryGallery > a > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.productCategoryGallery > a > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .productCategoryGallery > a > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .productCategoryGallery > a,
.internetExplorer .productCategoryGallery > a * {
  display: block;
}
.internetExplorer body > .productCategoryGallery > a {
  min-height: 400px;
}
@media (min-width: 800px) {
  .productCategoryGallery > a {
    align-items: flex-end;
  }
}
.productCategoryGallery > a > div:nth-of-type(1) {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.productCategoryGallery > a > div:nth-of-type(2) {
  padding: 12px 0;
  transition: transform 0.75s;
}
.productCategoryGallery > a > div:nth-of-type(2) h4,
.productCategoryGallery > a > div:nth-of-type(2) h5,
.productCategoryGallery > a > div:nth-of-type(2) p,
.productCategoryGallery > a > div:nth-of-type(2) .CTA {
  color: #ffffff;
  text-transform: none;
  text-align: center;
}
.productCategoryGallery > a > div:nth-of-type(2) .CTA {
  font-size: 1rem;
  border-color: #ffffff;
  display: block;
  border: none;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 12px;
}
.productCategoryGallery > a > div:nth-of-type(2) .CTA:after {
  margin-top: -6px;
}
.productCategoryGallery > a > div:nth-of-type(2) div {
  display: none;
  width: 400px;
  max-width: 90%;
  margin: auto;
}
@media (min-width: 800px) {
  .productCategoryGallery > a:active,
  .productCategoryGallery > a:hover {
    align-items: center;
  }
  .productCategoryGallery > a:active > div:nth-of-type(2),
  .productCategoryGallery > a:hover > div:nth-of-type(2) {
    transform: translateY(-10%);
  }
  .productCategoryGallery > a:active > div:nth-of-type(2) div,
  .productCategoryGallery > a:hover > div:nth-of-type(2) div {
    display: block;
  }
}
.topAlternativeContent {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 18px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr 250px;
}
.fold > div .topAlternativeContent:last-child {
  margin-bottom: 0;
}
.fold > div .topAlternativeContent:only-child {
  margin: 0;
}
.topAlternativeContent > * {
  display: none;
}
.topAlternativeContent > a,
.topAlternativeContent > div {
  display: block;
}
.topAlternativeContent > a:nth-child(n),
.topAlternativeContent > div:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
.topAlternativeContent > div:first-of-type {
  background: #fff;
  padding: 18px;
  border-radius: 7px;
  border: 1px solid #dddddd;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.topAlternativeContent > div:first-of-type > ul {
  margin: 0;
}
.topAlternativeContent > div:first-of-type > ul > li > a {
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
}
.topAlternativeContent > div:first-of-type > ul > li > a:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f138";
  margin-right: 5px;
}
@media (min-width: 751px) {
  .topAlternativeContent > div:first-of-type {
    grid-column-start: 3;
    grid-column-end: 4;
    grid-row-start: 1;
    grid-row-end: 3;
  }
}
.topAlternativeContent > div:not(:first-of-type) > a {
  display: block;
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100px;
  border-radius: 7px;
  overflow: hidden;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.topAlternativeContent > div:not(:first-of-type) > a > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.topAlternativeContent > div:not(:first-of-type) > a > div:first-child img,
.topAlternativeContent > div:not(:first-of-type) > a > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.topAlternativeContent > div:not(:first-of-type) > a > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .topAlternativeContent > div:not(:first-of-type) > a > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .topAlternativeContent > div:not(:first-of-type) > a > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
  .topAlternativeContent > div:not(:first-of-type) > a > div:first-child > picture > img:nth-child(n) {
    display: block;
  }
}
.topAlternativeContent > div:not(:first-of-type) > a > div:nth-of-type(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.19rem;
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  text-shadow: 1px 1px #2f4f4f;
}
@media (max-width: 1010px) {
  .topAlternativeContent > div:not(:first-of-type) > a > div:nth-of-type(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 1100px) {
  .topAlternativeContent > div:not(:first-of-type) > a > div:nth-of-type(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.topAlternativeContent > div:not(:first-of-type) > a > div:nth-of-type(2) span {
  font-size: 0.7em;
  opacity: 0.9;
  margin-top: 6px;
  display: block;
  clear: both;
  width: 100%;
}
.internetExplorer .topAlternativeContent {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .topAlternativeContent > a,
.internetExplorer .topAlternativeContent > div {
  width: 33.33333333%;
  display: block;
  padding-left: 9px;
  padding-right: 9px;
}
.internetExplorer .topAlternativeContent > a:first-child,
.internetExplorer .topAlternativeContent > div:first-child,
.internetExplorer .topAlternativeContent > a:nth-child(2),
.internetExplorer .topAlternativeContent > div:nth-child(2),
.internetExplorer .topAlternativeContent > a:nth-child(3),
.internetExplorer .topAlternativeContent > div:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .topAlternativeContent > a *,
.internetExplorer .topAlternativeContent > div * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .topAlternativeContent > a:nth-child(n),
  .internetExplorer .topAlternativeContent > div:nth-child(n) {
    width: 100%;
  }
}
.internetExplorer .topAlternativeContent > div:not(:first-of-type) > a,
.internetExplorer .topAlternativeContent > div:not(:first-of-type) > a * {
  display: block;
}
body > .internetExplorer .topAlternativeContent > div:not(:first-of-type) > a {
  min-height: 400px;
}
@media (max-width: 800px) and (min-width: 751px) {
  .topAlternativeContent {
    grid-gap: 9px;
  }
}
@media (max-width: 750px) {
  .topAlternativeContent {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 750px) {
  .topAlternativeContent {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    grid-gap: 12px;
  }
  .topAlternativeContent > div:first-of-type {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 3;
    grid-row-end: 4;
  }
}
@media (max-width: 750px) and (min-width: 451px) {
  .topAlternativeContent > div:first-of-type ul > li {
    width: 50%;
    float: left;
    clear: none;
  }
}
@media (max-width: 450px) {
  .topAlternativeContent {
    grid-template-columns: 1fr;
  }
  .topAlternativeContent > div:first-of-type {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 5;
    grid-row-end: 6;
  }
}
/* FUNCTIONS OF THIS STYLESHEET

1. Rules for all lists which do not obviously belong with parent classes in other style sheets



*/
ul {
  margin-top: 1.6em;
}
h2 + ul,
h3 + ul,
h4 + ul,
h5 + ul {
  margin-top: 0;
}
ul li {
  line-height: 1.5em;
}
h2 + ul.checklist,
h3 + ul.checklist,
h4 + ul.checklist,
h5 + ul.checklist {
  margin-top: 0;
}
ul.checklist li {
  font-size: 0.96rem;
  letter-spacing: 0.3px;
}
ul.checklist li:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f14a";
  color: #84a750;
  font-size: 1.3em;
  margin-right: 5px;
}
.fold > div > ul {
  text-align: left;
  list-style-position: outside;
}
.fold > div > ul li ul {
  margin-left: 1em;
  margin-top: 0.5em;
}
.fold > div > ul li ul li {
  font-size: 1em;
  /* this means "take the same size as your parent" */
}
.fold > div > ul li ul ul {
  margin-left: 1em;
  margin-top: 0;
}
.fold > div > ul li svg.svg-inline--fa,
.fold > div > ul li i.fas,
.fold > div > ul li i.fab,
.fold > div > ul li i.fal,
.fold > div > ul li i.far {
  font-size: 1em;
  /* this means "take the same size as your parent" */
}
ul.bulletPoint {
  margin-left: 24px;
  list-style-type: square;
}
ul.bulletPoint li {
  margin-bottom: 12px;
}
ul.bulletPoint ul {
  list-style-type: circle;
}
ul.bulletPoint ul ul {
  list-style-type: square;
}
ul.MSPDetails li,
ul.handyExternalLinks li {
  display: flex;
  margin-bottom: 10px;
}
ul.MSPDetails li svg.svg-inline--fa,
ul.handyExternalLinks li svg.svg-inline--fa,
ul.MSPDetails li i.fas,
ul.handyExternalLinks li i.fas,
ul.MSPDetails li i.fab,
ul.handyExternalLinks li i.fab,
ul.MSPDetails li i.fal,
ul.handyExternalLinks li i.fal,
ul.MSPDetails li i.far,
ul.handyExternalLinks li i.far {
  width: 34px;
  font-size: 1.5em;
  margin-right: 10px;
  color: #84a750;
}
ul.MSPDetails li > span h5,
ul.handyExternalLinks li > span h5 {
  font-size: 16px;
}
ul.MSPDetails + p,
ul.handyExternalLinks + p {
  margin-top: 24px;
}
ul.handyExternalLinks li {
  margin-bottom: 24px;
}
ul.extendedThreeColumnList,
ol.extendedThreeColumnList {
  columns: 3;
  -webkit-columns: 3;
  -moz-columns: 3;
}
ul.extendedThreeColumnList li,
ol.extendedThreeColumnList li {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
@media (max-width: 850px) {
  ul.extendedThreeColumnList,
  ol.extendedThreeColumnList {
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
  }
}
@media (max-width: 550px) {
  ul.extendedThreeColumnList,
  ol.extendedThreeColumnList {
    columns: 1;
    -webkit-columns: 1;
    -moz-columns: 1;
  }
}
ul.sequentialStepsList {
  /* Correct specing in columns */
  list-style-type: none;
  counter-reset: li-counter;
  margin-top: 30px;
  margin-bottom: 30px;
  margin-left: 45px;
  padding-left: 45px;
  border-left: 4px solid #90b25e;
  position: relative;
  padding-bottom: 0;
  /* reduce whitespace in certain instances by adding the class compactListStyle */
  /******* Mobile Styles ********/
}
.columns > div ul.sequentialStepsList {
  margin-left: 20px;
}
ul.sequentialStepsList > li {
  position: relative;
  /* make the height of paragraphs in the last child <li> unknown. This will curtail the length of the left border, making it stop at the last nodal point */
}
ul.sequentialStepsList > li:last-child {
  margin-bottom: 0;
}
ul.sequentialStepsList > li:before {
  position: absolute;
  left: calc(0px - 45px - (4px / 2) - (30px / 2 ));
  top: -2px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #ffffff;
  border: 4px solid #90b25e;
  box-shadow: 1px 1px 5px 1px rgba(128, 128, 128, 0.71);
  display: block;
  content: "";
}
ul.sequentialStepsList > li > * {
  margin: 0;
  padding: 0;
  text-align: left;
}
ul.sequentialStepsList > li p {
  width: 100%;
  /* take the font size of parent */
  /* space out the list items by giving the p some whitespace */
}
ul.sequentialStepsList > li p:last-child {
  padding-bottom: 2em;
}
ul.sequentialStepsList > li:last-child p {
  float: left;
}
ul.sequentialStepsList.compactListStyle > li p {
  padding-bottom: 0.7em;
}
@media (max-width: 550px) {
  ul.sequentialStepsList {
    margin-left: 20px;
  }
}
ul.tourItineraryQuickView {
  list-style-type: none;
  counter-reset: li-counter;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 30px;
  padding-left: 30px;
  border-left: 2px solid darkGray;
  position: relative;
  padding-bottom: 0;
}
ul.tourItineraryQuickView > li {
  position: relative;
  font-size: 0.96rem;
  font-weight: bold;
  margin-bottom: 8px;
  line-height: 1em;
}
ul.tourItineraryQuickView > li span {
  vertical-align: top;
}
ul.tourItineraryQuickView > li > ul,
.fold > div ul.tourItineraryQuickView > li > ul {
  display: flex;
  gap: 0 5px;
  margin: 0;
  flex-wrap: wrap;
}
ul.tourItineraryQuickView > li > ul li,
.fold > div ul.tourItineraryQuickView > li > ul li {
  font-size: 0.8em;
  font-weight: normal;
}
ul.tourItineraryQuickView > li > ul li:not(:last-child):after,
.fold > div ul.tourItineraryQuickView > li > ul li:not(:last-child):after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-weight: 300;
  opacity: 0.75;
  content: "\f105";
  display: inline-block;
}
ul.tourItineraryQuickView > li:last-child {
  margin-bottom: 0;
}
ul.tourItineraryQuickView > li:before {
  position: absolute;
  left: calc(0px - 30px - (2px / 2) - (10px / 2 ));
  width: 10px;
  height: 10px;
  background-color: darkGray;
  display: block;
  content: "";
}
ul.tourItineraryQuickView > li:first-child:before {
  top: 0;
}
ul.tourItineraryQuickView > li > * {
  margin: 0;
  padding: 0;
  text-align: left;
}
ul.tourItineraryQuickView > li > span,
ul.tourItineraryQuickView > li > ul {
  width: 100%;
}
ul.tourItineraryQuickView > li:last-child {
  min-height: 10px;
}
ul.tourItineraryQuickView > li:last-child > span,
ul.tourItineraryQuickView > li:last-child > ul {
  float: left;
}
p + .toggleFeaturesList {
  margin-top: 24px;
}
ul.toggleFeaturesList {
  margin-top: 24px;
}
ul.toggleFeaturesList h3.toggle_trigger,
ul.toggleFeaturesList h4.toggle_trigger,
ul.toggleFeaturesList h5.toggle_trigger {
  text-transform: none;
  font-size: clamp(15px, 2.5vw, 17px);
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
}
ul.toggleFeaturesList.tourDetail {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background: #F9FAFB;
  padding: 48px;
}
ul.toggleFeaturesList.tourDetail:before {
  position: absolute;
  display: block;
  content: "";
  width: 18px;
  height: 36px;
  box-sizing: border-box;
  top: 90px;
  background-color: #fff;
  left: 0;
  border-left: none;
  border-bottom-right-radius: 30px;
  border-top-right-radius: 30px;
}
ul.toggleFeaturesList.tourDetail:after {
  position: absolute;
  display: block;
  content: "";
  width: 18px;
  height: 36px;
  box-sizing: border-box;
  top: 90px;
  background-color: #fff;
  right: 0;
  border-right: none;
  border-bottom-left-radius: 30px;
  border-top-left-radius: 30px;
}
.distinctiveContent ul.toggleFeaturesList.tourDetail,
.extendedContentList > div:nth-child(even) ul.toggleFeaturesList.tourDetail {
  background-color: #fff;
}
.distinctiveContent ul.toggleFeaturesList.tourDetail:before,
.extendedContentList > div:nth-child(even) ul.toggleFeaturesList.tourDetail:before,
.distinctiveContent ul.toggleFeaturesList.tourDetail:after,
.extendedContentList > div:nth-child(even) ul.toggleFeaturesList.tourDetail:after {
  background-color: #F9FAFB;
  background-image: none;
}
ul.toggleFeaturesList.tourDetail > li:first-of-type {
  border-top: none;
}
ul.toggleFeaturesList.tourDetail > li {
  border-top-style: dotted;
  border-top-width: 2px;
}
ul.toggleFeaturesList.tourDetail > li:last-child {
  border-bottom-style: dotted;
  border-bottom-width: 2px;
}
@media (max-width: 700px) {
  ul.toggleFeaturesList.tourDetail {
    padding: 24px;
  }
}
@media (max-width: 450px) {
  ul.toggleFeaturesList.tourDetail {
    padding-left: 12px;
    padding-right: 12px;
  }
}
ul.sideBenefitsList,
.fold ul.sideBenefitsList {
  margin: 0;
}
ul.sideBenefitsList li,
.fold ul.sideBenefitsList li {
  font-size: 0.96rem;
}
body {
  counter-reset: list-counter;
}
ul.mapHighlighterList {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul.mapHighlighterList li {
  margin: 0 0 12px;
}
ul.mapHighlighterList li:last-child {
  margin-bottom: 0;
}
ul.mapHighlighterList a {
  align-items: center;
  background: #F9FAFB;
  border-radius: 7px;
  color: #4d4d4d;
  display: flex;
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 1.333rem;
  font-weight: 600;
  gap: 12px;
  padding: 12px 24px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease;
}
ul.mapHighlighterList a:after {
  color: rgba(91, 124, 41, 0.4);
  content: "\f0a9";
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  margin-left: auto;
}
ul.mapHighlighterList a:hover,
ul.mapHighlighterList a:focus,
ul.mapHighlighterList a:focus-visible {
  background: rgba(91, 124, 41, 0.12);
  color: #5b7c29;
}
ul.mapHighlighterList a:hover:after,
ul.mapHighlighterList a:focus:after,
ul.mapHighlighterList a:focus-visible:after {
  color: #5b7c29;
}
.sitemap ul li {
  padding: 6px 0;
}
/* FUNCTIONS OF THIS STYLE SHEET

	1. create style for magnifying glass used for e.g. Then and Now
	

This style sheet has NOT been added to common libraries because it does not work for tablets and mobiles, so a better solution should be designed at some future time.
	
*/
.magnifiedImageContainer {
  position: relative;
  margin: 2rem auto 0;
  overflow: visible;
  /* the magnifying glass */
}
.magnifiedImageContainer:after {
  content: "";
  display: block;
  clear: both;
}
.magnifiedImageContainer .magnifyingGlass {
  width: 275px;
  height: 275px;
  border-radius: 100%;
  position: absolute;
  /*Multiple box shadows to achieve the glass effect*/
  box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.85), 0 0 7px 7px rgba(0, 0, 0, 0.25), inset 0 0 40px 2px rgba(0, 0, 0, 0.25);
  /*hide the magnifier by default*/
  display: none;
}
.interactive-map,
.interactive-map-key {
  max-width: 600px;
  margin: auto;
  height: auto;
  margin-bottom: 48px;
}
.interactive-map {
  position: relative;
}
.interactive-map img {
  width: 100%;
  height: auto;
}
.interactive-map .city-dot {
  position: absolute;
  font-size: 14px;
  text-align: center;
  height: 30px;
  line-height: 30px;
  width: 30px;
  color: #fff;
  background-color: red;
  font-weight: bold;
  border-radius: 50%;
  cursor: pointer;
}
.interactive-map .tooltip {
  position: absolute;
  display: none;
  width: 200px;
  background-color: white;
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.interactive-map .tooltip p {
  font-size: 0.89rem;
}
/**
 * MIT Carousel Styles
 *
 * Companion styles for includes/scripts/mit-carousel.js.
 * Two nav-position variants are supported via BEM modifiers:
 *
 *   .mitCarousel--navSides   Prev/next buttons flank the viewport left and right,
 *                            vertically centred (matching legacy slick carousel UX).
 *
 *   .mitCarousel--navAbove   Prev/next buttons appear in a header row above the
 *                            carousel, typically paired with a title/subtitle on
 *                            the opposite side.
 *
 * CSS custom properties set by JS at runtime:
 *   --mitc-items   number of visible slides
 *   --mitc-gap     gap between slides (px value with unit, e.g. "16px")
 */
.mitCarousel {
  /* Fallback values (overridden by JS) */
  --mitc-items: 3;
  --mitc-gap: 16px;
  position: relative;
  width: 100%;
  /* ── Viewport: clips the overflowing track ────────────────────────────── */
  /* ── Track: horizontal flex row of all slides ─────────────────────────── */
  /* ── Individual slide ─────────────────────────────────────────────────── */
  /* ── Shared prev/next button base styles ──────────────────────────────── */
  /* ── Dots container ───────────────────────────────────────────────────── */
  /* ── Title / subtitle slot ────────────────────────────────────────────── */
}
.mitCarousel__viewport {
  overflow: hidden;
  width: 100%;
}
.mitCarousel__track {
  display: flex;
  gap: var(--mitc-gap);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
}
.mitCarousel__slide {
  /*
         * Width = (viewport - total gap between visible items) / visible items.
         * Using CSS calc() with the custom properties set by JS.
         */
  flex: 0 0 calc((100% - (var(--mitc-items) - 1) * var(--mitc-gap)) / var(--mitc-items));
  min-width: 0;
  /* Prevent flex item overflow */
  /* Below the tablet breakpoint, cap each slide at the viewport width
           so a single card never overflows the screen. */
}
@media (max-width: 599px) {
  .mitCarousel__slide {
    max-width: 100%;
  }
}
.mitCarousel__slide > div,
.mitCarousel__slide > a {
  max-width: 90vw;
  margin-left: auto;
  margin-right: auto;
}
.mitCarousel__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #dddddd;
  background: #ffffff;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
  padding: 0;
}
.mitCarousel__btn i {
  font-size: 0.78rem;
  color: #666666;
  pointer-events: none;
  transition: color 0.2s ease;
}
.mitCarousel__btn:hover:not(:disabled) {
  background: #F9FAFB;
  border-color: #bebebe;
}
.mitCarousel__btn:hover:not(:disabled) i {
  color: #4d4d4d;
}
.mitCarousel__btn:focus-visible {
  outline: 2px solid #84a750;
  outline-offset: 2px;
}
.mitCarousel__btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}
.mitCarousel__dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
  margin-top: 18px;
}
.mitCarousel__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: none;
  background: #dcdcdc;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  transition: background 0.2s ease, transform 0.2s ease;
}
.mitCarousel__dot--active {
  background: #666666;
  transform: scale(1.3);
}
.mitCarousel__dot:hover:not(.mitCarousel__dot--active) {
  background: #a9a9a9;
}
.mitCarousel__dot:focus-visible {
  outline: 2px solid #84a750;
  outline-offset: 2px;
}
.mitCarousel__title {
  /* If no title text is provided the slot is absent from the DOM */
}
.mitCarousel__title h2,
.mitCarousel__title h3 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-size: 2.253rem;
  font-weight: 700;
  margin: 0 0 6px;
  line-height: 1.2;
}
.mitCarousel__title p {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: 1rem;
  margin: 0;
}
.mitCarousel__title:empty {
  display: none;
}
/* ── MODIFIER: navSides ────────────────────────────────────────────────────
   Prev/next buttons are positioned to the immediate left and right of the
   viewport, vertically centred in the flex row — matching the existing
   carousel UX. On small screens the buttons shrink slightly.
   ───────────────────────────────────────────────────────────────────────── */
.mitCarousel--navSides {
  /* Flex row: [prev-btn] [viewport] [next-btn] */
  /* On very small screens pull the buttons slightly inward */
}
.mitCarousel--navSides .mitCarousel__title {
  margin-bottom: 24px;
}
.mitCarousel--navSides .mitCarousel__body {
  display: flex;
  align-items: center;
  gap: 10.8px;
}
.mitCarousel--navSides .mitCarousel__viewport {
  flex: 1;
  min-width: 0;
}
.mitCarousel--navSides .mitCarousel__btn {
  flex-shrink: 0;
}
@media (max-width: 550px) {
  .mitCarousel--navSides .mitCarousel__body {
    gap: 6px;
  }
  .mitCarousel--navSides .mitCarousel__btn {
    width: 34px;
    height: 34px;
  }
  .mitCarousel--navSides .mitCarousel__btn i {
    font-size: 0.7rem;
  }
}
/* ── MODIFIER: navAbove ────────────────────────────────────────────────────
   Prev/next buttons appear in a header row above the carousel viewport.
   The header uses flex layout: title/subtitle on the left expands to fill
   available space; the button group sits on the right, bottom-aligned with
   the title text.
   ───────────────────────────────────────────────────────────────────────── */
.mitCarousel--navAbove {
  /* Header row: title (flex 1) + nav buttons (flex-shrink 0) */
  /* Compact pair of circular nav buttons */
  /* Collapse header to column on narrow screens so buttons don't crowd title */
}
.mitCarousel--navAbove .mitCarousel__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-bottom: 24px;
}
.mitCarousel--navAbove .mitCarousel__title {
  flex: 1;
  min-width: 0;
  /* Reset margin since spacing is controlled by the header row */
  margin-bottom: 0;
}
.mitCarousel--navAbove .mitCarousel__aboveNav {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
  /* Optical nudge so button baseline aligns with last line of title text */
  padding-bottom: 2px;
}
@media (max-width: 550px) {
  .mitCarousel--navAbove .mitCarousel__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
a[onclick]:hover {
  cursor: pointer;
}
/* The Modal (background) */
.modal {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Stay in place */
  z-index: 1000;
  /* Sit on top */
  padding-top: 50px;
  /* Location of the box */
  left: 0;
  top: 0;
  width: 100vw;
  /* Full width */
  height: 100vh;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: #000000;
  /* Fallback color */
  background-color: rgba(0, 0, 0, 0.8);
  /* Black w/ opacity */
  place-items: center;
  /* Modal Content */
  /* The Close Button */
}
.modal .modalContent {
  box-sizing: border-box;
  background-color: #fefefe;
  margin: auto;
  border: 1px solid #888;
  max-width: 1200px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding: 24px;
  overflow: hidden;
}
@media (max-width: 400px) {
  .modal .modalContent {
    max-width: 96%;
  }
}
.modal .modalContent.reducedWhitespace {
  padding: 1%;
}
.modal .modalContent .innerContentArea {
  overflow: hidden;
}
.modal.miniModal .modalContent {
  max-width: 450px;
  width: 90%;
  padding: 24px;
}
.modal .modalClose {
  color: #aaaaaa;
  float: right;
  font-size: 40px;
  line-height: 39px;
  cursor: pointer;
}
/* symbol indicating modal link */
.openModalInlineLink:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  margin-left: 2px;
  content: "\f24d";
  font-size: 0.5em;
  vertical-align: super;
}
.modalTrigger:hover {
  cursor: pointer;
}
.modal.destinationAttraction .modalContent > img,
.modal.destinationAttraction .modalContent .imgWrapper > img,
.modal.destinationAttraction .modalContent > picture img,
.modal.destinationAttraction .modalContent .imgWrapper > picture img {
  margin: 24px auto;
  width: 100%;
  max-height: 500px;
}
.modal.destinationAttraction .modalContent .imgWrapper {
  width: 100%;
  position: relative;
}
.modal.destinationAttraction.wildAtlanticWay .modalContent .imgWrapper:after {
  content: "";
  background-image: url(https://www.myirelandtour.com/images/ap/_graphics/logos/partners/tourist-boards/wild-atlantic-way%2Ccredibility-indicator/wild-atlantic-way,ar_unchanged,w_200,h_70,.png);
  display: block;
  position: absolute;
  top: 24px;
  left: 24px;
  width: 200px;
  height: 70px;
  background-repeat: no-repeat;
}
@media (max-width: 500px) {
  .modal.destinationAttraction.wildAtlanticWay .modalContent .imgWrapper:after {
    background-image: url(https://www.myirelandtour.com/images/ap/_graphics/logos/partners/tourist-boards/wild-atlantic-way%2Ccredibility-indicator/wild-atlantic-way,ar_unchanged,w_80,h_30,.png);
    width: 80px;
    height: 30px;
  }
}
.modal.destinationAttraction.irelandsAncientEast .modalContent .imgWrapper:after {
  content: "";
  background-image: url(https://www.myirelandtour.com/images/ap/_graphics/logos/partners/tourist-boards/irelands-ancient-east%2Ccredibility-indicator/irelands-ancient-east,ar_unchanged,w_200,h_63,.png);
  display: block;
  position: absolute;
  top: 24px;
  left: 24px;
  width: 200px;
  height: 63px;
  background-repeat: no-repeat;
}
@media (max-width: 500px) {
  .modal.destinationAttraction.irelandsAncientEast .modalContent .imgWrapper:after {
    background-image: url(https://www.myirelandtour.com/images/ap/_graphics/logos/partners/tourist-boards/irelands-ancient-east%2Ccredibility-indicator/irelands-ancient-east%2Car_unchanged%2Cw_80%2Ch_25%2C.png);
    width: 80px;
    height: 25px;
  }
}
.modal .fold {
  padding: 0;
}
.modal .modalClose.button {
  font-size: 1rem;
}
.modal.tourQuickView .modalContent > div {
  padding-top: 36px;
  display: grid;
  grid-template-columns: minmax(300px, 1fr) 1fr;
  grid-gap: 24px;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(1) {
  display: flex;
  justify-content: center;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(1) img {
  max-width: 100%;
  width: 100%;
  margin-top: auto;
  margin-bottom: auto;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(1) figcaption {
  text-align: center;
  font-size: 0.89rem;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(1) figcaption a {
  color: #666666;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) ul.tourMSPs {
  display: flex;
  gap: 14px;
  font-size: 0.9rem;
  margin: 0;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) ul.tourMSPs svg.svg-inline--fa,
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) ul.tourMSPs i.fas,
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) ul.tourMSPs i.fab,
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) ul.tourMSPs i.fal,
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) ul.tourMSPs i.far {
  font-weight: 300;
  color: #666666;
  vertical-align: middle;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) p {
  font-size: 0.9rem;
  margin-top: 12px;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) .tourItineraryQuickView {
  margin-top: 24px;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) .button {
  margin: 12px auto 0;
  width: 100%;
  max-width: 500px;
  padding: 16px;
  background-color: #cf2b04;
}
.modal.tourQuickView .modalContent > div > div:nth-of-type(2) .button:first-of-type {
  margin-top: 48px;
}
@media (max-width: 800px) {
  .modal.tourQuickView .modalContent > div {
    grid-template-columns: 1fr;
    max-width: 500px;
    margin: auto;
  }
  .modal.tourQuickView .modalContent > div > div:nth-of-type(1) {
    display: block;
  }
  .modal.tourQuickView .modalContent > div > div:nth-of-type(1) img {
    max-width: 400px;
    margin: auto;
  }
}
/* ============================================================================
   NAVIGATION SYSTEM
   ============================================================================
   Three-tier responsive navigation with sticky positioning:
   
   Desktop (>1220px):
   - Top announcement/contact bar (optional)
   - Logo area with CTAs
   - Horizontal selector tabs with mega-menu dropdowns (4-column grid)
   
   Mobile (≤1220px):
   - Hamburger menu opens full-screen overlay
   - Hierarchical navigation with back/close buttons
   - Breadcrumb-style depth navigation
   
   Features:
   - Sticky positioning with smooth hide/show on scroll
   - Overlay darkening when menu open
   - Touch-friendly mobile interactions
   - Accessible keyboard navigation
   ============================================================================ */
/* Configuration variables */
.nav {
  /* Derived dimensions */
  /* -------------------------------------------------------------------------
        UTILITY MIXINS (Scoped to .nav)
        ------------------------------------------------------------------------- */
  /* Mobile-only visibility */
  /* Desktop-only visibility */
  /* Centered content container with max-width */
  /* Interactive link styling */
  /* Circular hover button (hamburger, back, close) */
  /* Back/close button styling with positioning */
  /* Top-level navigation selector tab */
  /* Mobile navigation list item with chevron */
  /* -------------------------------------------------------------------------
        OVERLAY (Mobile menu backdrop)
        ------------------------------------------------------------------------- */
  /* Semi-transparent backdrop when mobile menu is open */
  /* -------------------------------------------------------------------------
        MAIN NAV CONTAINER (Sticky positioning)
        ------------------------------------------------------------------------- */
  display: block;
  background: #fff;
  font-size: 15px;
  position: sticky;
  z-index: 101;
  transition: top 0.3s ease;
  top: 0;
  /* Compact variant: relative positioning (not sticky) */
  /* -------------------------------------------------------------------------
        TOP BARS (Announcement / Contact)
        ------------------------------------------------------------------------- */
  /* Top announcement or contact bar */
  /* Underlined links in announcement bar */
  /* Plain links in contact bar */
  /* -------------------------------------------------------------------------
        LOGO AREA (Logo, contact icons, CTA button, hamburger)
        ------------------------------------------------------------------------- */
  /* -------------------------------------------------------------------------
        SELECTORS AREA (Top-level navigation tabs)
        ------------------------------------------------------------------------- */
  /* Horizontal navigation tabs (desktop) / Full-screen menu (mobile) */
  /* -------------------------------------------------------------------------
        NAV CONTENTS AREA (Mega-menu dropdowns)
        ------------------------------------------------------------------------- */
  /* Dropdown content panels (desktop) / Hierarchical screens (mobile) */
}
@media (min-width: 1220px) {
  .nav .mobileOnly {
    display: none;
  }
}
@media (max-width: 1220px) {
  .nav .desktopOnly {
    display: none;
  }
}
.nav .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 98;
  /* Below sticky nav, above page content */
  display: none;
  pointer-events: none;
  /* Allow clicks through when hidden */
}
.nav.compact {
  position: relative;
}
.nav .announcementBar,
.nav .contactBar {
  background: #4d4d4d;
  color: #ffffff;
  height: 50px;
  text-align: center;
  font-size: 0.9em;
  transition: transform 0.3s ease;
  /* Slide up when hidden */
  /* Hide on tablets and mobiles */
}
.nav .announcementBar.hidden,
.nav .contactBar.hidden {
  transform: translateY(-100%);
}
.nav .announcementBar > *,
.nav .contactBar > * {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  line-height: 50px;
  font-size: 14px;
}
@media (min-width: 1220px) and (max-width: 1500px) {
  .nav .announcementBar > *,
  .nav .contactBar > * {
    width: 90%;
  }
}
@media (max-width: 1220px) {
  .nav .announcementBar > *,
  .nav .contactBar > * {
    width: 100%;
  }
}
.nav .announcementBar ul,
.nav .contactBar ul {
  margin: 0 auto;
  color: inherit;
  display: flex;
  gap: 24px;
  justify-content: center;
}
.nav .announcementBar ul a,
.nav .contactBar ul a {
  color: inherit;
}
@media (max-width: 650px) {
  .nav .announcementBar,
  .nav .contactBar {
    display: none;
  }
}
.nav .announcementBar a {
  text-decoration: underline;
  text-underline-position: under;
}
.nav .contactBar a {
  text-decoration: none;
}
.nav .logo-area {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  /* Logo, contact icons, CTAs */
  /* CTA button area (right side, desktop) */
  /* Hamburger menu (mobile only) */
}
@media (min-width: 1220px) and (max-width: 1500px) {
  .nav .logo-area {
    width: 90%;
  }
}
@media (max-width: 1220px) {
  .nav .logo-area {
    width: 100%;
  }
}
@media (min-width: 650px) and (max-width: 1220px) {
  .nav .logo-area {
    padding: 0 12px;
  }
}
.nav .logo-area > div {
  height: 80px;
  padding: 12px;
  display: flex;
  align-items: center;
  /* Logo sizing */
  /* Contact icons or CTAs */
}
.nav .logo-area > div svg,
.nav .logo-area > div img {
  height: 56px;
  max-height: 56px;
  width: auto;
}
.nav .logo-area > div ul {
  display: flex;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav .logo-area > div:nth-of-type(3),
.nav .logo-area .CTA-area {
  align-self: center;
}
.nav .logo-area > div:nth-of-type(3) > a,
.nav .logo-area .CTA-area > a {
  padding: 12px;
  border-radius: 4px;
  background: #84a750;
  font-size: 0.89rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #ffffff;
}
.nav .logo-area > .burger-menu {
  display: none;
  font-size: 30px;
  /* 60px burger size * 0.5 */
  border-radius: 50%;
  height: 60px;
  line-height: 60px;
  width: 60px;
}
.nav .logo-area > .burger-menu:hover {
  background: #f2f2f2;
}
@media (max-width: 1220px) {
  .nav .logo-area > .burger-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }
}
.nav .selectors-area {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: space-between;
  background: #fff;
  padding-bottom: 5px;
  /* Space for underline hover effect */
  /* Desktop: Horizontal tabs */
  /* Mobile: Full-screen overlay menu */
}
@media (min-width: 1220px) and (max-width: 1500px) {
  .nav .selectors-area {
    width: 90%;
  }
}
@media (max-width: 1220px) {
  .nav .selectors-area {
    width: 100%;
  }
}
.nav .selectors-area .close {
  display: none;
}
.nav .selectors-area ul {
  display: flex;
  gap: 12px;
  padding: 0 24px;
  width: 100%;
  margin: 0;
}
@media (min-width: 1221px) {
  .nav .selectors-area ul > li {
    padding: 0 12px;
  }
}
.nav .selectors-area ul li {
  height: 56px;
  line-height: 56px;
  font-size: 0.9rem;
  font-weight: 600;
  color: #777;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  /* Underline on hover/active (desktop only) */
  /* Tab link styling */
  /* Optional dropdown caret (currently disabled: @showDropdownCaret = false) */
}
@media (max-width: 1220px) {
  .nav .selectors-area ul li {
    cursor: pointer;
  }
}
@media (min-width: 1221px) {
  .nav .selectors-area ul li:hover,
  .nav .selectors-area ul li.active {
    border-color: #84a750;
  }
}
.nav .selectors-area ul li > a {
  display: inline-block;
}
.nav .selectors-area ul li > a,
.nav .selectors-area ul li > a:hover {
  text-decoration: none;
  color: #777;
}
.nav .selectors-area ul li[data-nav-item] {
  /* No caret shown per current configuration */
}
@media (max-width: 1220px) {
  .nav .selectors-area {
    display: none;
    /* Hidden by default, shown via JS */
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 15%;
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 300vh;
  }
  .nav .selectors-area .close {
    display: block;
    width: 100%;
  }
  .nav .selectors-area .close span,
  .nav .selectors-area .close i {
    font-size: 30px;
    /* 60px burger size * 0.5 */
    border-radius: 50%;
    height: 60px;
    line-height: 60px;
    width: 60px;
    display: block;
    cursor: pointer;
    margin: auto;
    margin-bottom: 0;
    margin-right: 6px;
    margin-top: 6px;
  }
  .nav .selectors-area .close span:hover,
  .nav .selectors-area .close i:hover {
    background: #f2f2f2;
  }
  .nav .selectors-area ul {
    flex-direction: column;
    gap: 0;
    width: 100%;
  }
  .nav .selectors-area ul li {
    background: #fff;
    position: relative;
    width: 100%;
    line-height: 56px;
    cursor: pointer;
    font-size: 15px;
    font-weight: inherit;
    border-bottom: 1px solid #dcdcdc;
  }
  .nav .selectors-area ul li:hover {
    color: #84a750;
  }
  .nav .selectors-area ul li:after {
    font-family: "Font Awesome 5 Pro";
    vertical-align: middle;
    font-weight: 900;
    content: "\f105";
    /* Right chevron icon */
    position: absolute;
    right: 27px;
    /* Burger size calculation */
    font-size: 1.5em;
    font-weight: 300;
  }
}
.nav .nav-contents-area {
  width: 100vw;
  background: #fff;
  position: relative;
  /* Mobile: Back/close header with breadcrumb */
  /* Active state: dropdown panel visible */
  /* Individual dropdown panel */
  /* -------------------------------------------------------------------------
             DEPTH 2 NAVIGATION (Mobile sub-menu)
             ------------------------------------------------------------------------- */
  /* When user drills into a sub-category (mobile only) */
}
.nav .nav-contents-area .back-close {
  display: none;
  padding: 0 6px;
  align-items: center;
  /* Current section title (breadcrumb) */
}
.nav .nav-contents-area .back-close .close,
.nav .nav-contents-area .back-close .back {
  display: block;
  width: 100%;
  width: 60px;
  margin-top: 0;
}
.nav .nav-contents-area .back-close .close span,
.nav .nav-contents-area .back-close .back span,
.nav .nav-contents-area .back-close .close i,
.nav .nav-contents-area .back-close .back i {
  font-size: 30px;
  /* 60px burger size * 0.5 */
  border-radius: 50%;
  height: 60px;
  line-height: 60px;
  width: 60px;
  display: block;
  cursor: pointer;
  margin: auto;
  margin-bottom: 0;
  margin-right: 6px;
  margin-top: 6px;
}
.nav .nav-contents-area .back-close .close span:hover,
.nav .nav-contents-area .back-close .back span:hover,
.nav .nav-contents-area .back-close .close i:hover,
.nav .nav-contents-area .back-close .back i:hover {
  background: #f2f2f2;
}
.nav .nav-contents-area .back-close .back {
  margin-left: 0;
}
.nav .nav-contents-area .back-close .current-selection {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  margin: 6px 0 0 0;
  font-weight: 600;
  font-size: 1.35rem;
}
.nav .nav-contents-area .back-close .current-selection:first-child {
  margin-top: 0;
}
.nav .nav-contents-area .back-close .current-selection a {
  color: inherit;
}
.nav .nav-contents-area.active {
  min-height: 65vh;
  /* Desktop: Position absolute to overlay content instead of pushing it down */
}
@media (min-width: 1221px) {
  .nav .nav-contents-area.active {
    position: absolute;
    top: 100%;
    /* Position directly below the navigation bar */
    left: 0;
    right: 0;
    width: 100%;
    z-index: 100;
    /* Ensure it appears above page content */
    /* Material Design 3 elevation: bottom-only shadow using pseudo-element */
  }
  .nav .nav-contents-area.active::after {
    content: '';
    position: absolute;
    bottom: -8px;
    /* Position below the dropdown edge */
    left: 0;
    right: 0;
    height: 8px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.12) 0%, rgba(0, 0, 0, 0.06) 50%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
    /* Don't interfere with clicks */
    z-index: -1;
    /* Behind the dropdown */
  }
}
@media (max-width: 1220px) {
  .nav .nav-contents-area.active {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    min-height: 100vh;
  }
  .nav .nav-contents-area.active .back-close {
    display: flex;
  }
}
.nav .nav-contents-area > div {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  padding: 12px 12px 48px 12px;
  z-index: 1;
  display: none;
  /* Active panel: shown on top */
  /* Panel content container */
}
@media (min-width: 1220px) and (max-width: 1500px) {
  .nav .nav-contents-area > div {
    width: 90%;
  }
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div {
    width: 100%;
  }
}
.nav .nav-contents-area > div * {
  background: #fff;
}
.nav .nav-contents-area > div.active {
  display: block;
  min-height: 65vh;
  z-index: 11;
  width: 100%;
  box-sizing: border-box;
}
.nav .nav-contents-area > div > div {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 24px;
  /* Reduced spacing on short screens */
  /* Grid container: 4-column layout on desktop */
}
@media (min-width: 1220px) and (max-width: 1500px) {
  .nav .nav-contents-area > div > div {
    width: 90%;
  }
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div {
    width: 100%;
  }
}
@media (max-height: 700px) and (min-width: 1220px) {
  .nav .nav-contents-area > div > div {
    margin-top: 12px;
  }
}
.nav .nav-contents-area > div > div h3 {
  font-size: clamp(1.25rem, 2vw, 1.45rem);
}
.nav .nav-contents-area > div > div > div {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr;
  padding: 0 24px;
  /* Desktop: 4-column mega-menu grid */
  /* Grid item: navigation column */
}
@media (max-height: 700px) and (min-width: 1220px) {
  .nav .nav-contents-area > div > div > div {
    margin-top: 12px;
  }
}
@media (min-width: 1221px) {
  .nav .nav-contents-area > div > div > div {
    grid-gap: 48px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.nav .nav-contents-area > div > div > div > div {
  /* Mobile: styled as navigation list items */
  /* Sub-item with nested navigation */
  /* Column heading / sub-category selector */
  /* Navigation links list */
  /* Individual navigation link */
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div {
    background: #fff;
    position: relative;
    width: 100%;
    line-height: 56px;
    cursor: pointer;
    font-size: 15px;
    font-weight: inherit;
    border-bottom: 1px solid #dcdcdc;
  }
  .nav .nav-contents-area > div > div > div > div:hover {
    color: #84a750;
  }
  .nav .nav-contents-area > div > div > div > div:after {
    font-family: "Font Awesome 5 Pro";
    vertical-align: middle;
    font-weight: 900;
    content: "\f105";
    /* Right chevron icon */
    position: absolute;
    right: 27px;
    /* Burger size calculation */
    font-size: 1.5em;
    font-weight: 300;
  }
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div[data-sub-item] {
    /* Active state: hide selector, show list */
  }
  .nav .nav-contents-area > div > div > div > div[data-sub-item] .sub-selector {
    height: 56px;
    line-height: 56px;
    display: inline-block;
    width: 92%;
  }
  .nav .nav-contents-area > div > div > div > div[data-sub-item].active .sub-selector {
    display: none;
  }
  .nav .nav-contents-area > div > div > div > div[data-sub-item].active ul {
    display: block;
  }
}
.nav .nav-contents-area > div > div > div > div .sub-selector {
  height: 56px;
  line-height: 56px;
  font-size: 0.9rem;
  font-weight: 600;
  color: #777;
  border-bottom: 2px solid transparent;
  margin: 0;
  /* Desktop: styled as column heading */
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div .sub-selector {
    cursor: pointer;
  }
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div .sub-selector {
    cursor: pointer;
    font-size: 15px;
    font-weight: inherit;
  }
  .nav .nav-contents-area > div > div > div > div .sub-selector:hover {
    color: #84a750;
  }
}
@media (min-width: 1221px) {
  .nav .nav-contents-area > div > div > div > div .sub-selector {
    font-size: 1rem;
    padding: 0;
    font-family: 'Alegreya Sans', sans-serif;
    color: #4d4d4d;
    font-weight: 600;
    line-height: 1.1em;
    margin: 0.75em 0 0.25em 0;
    text-align: left;
  }
  .nav .nav-contents-area > div > div > div > div .sub-selector:first-child {
    margin-top: 0;
  }
  .nav .nav-contents-area > div > div > div > div .sub-selector a {
    color: inherit;
  }
}
.nav .nav-contents-area > div > div > div > div ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  line-height: 1.25em;
  /* Hidden by default on mobile (JS shows on interaction) */
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div ul {
    display: none;
  }
}
.nav .nav-contents-area > div > div > div > div li {
  padding: 4px 0;
  font-weight: 400;
  font-size: 0.9rem;
  /* Sub-title: heading-style non-clickable items (mobile) */
}
@media (min-height: 700px) and (min-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div li {
    padding: 6px 0;
  }
}
.nav .nav-contents-area > div > div > div > div li a {
  text-decoration: none;
  color: #777;
  display: inline-block;
  width: 92%;
}
.nav .nav-contents-area > div > div > div > div li a:hover {
  color: #84a750;
}
@media (max-width: 1220px) {
  .nav .nav-contents-area > div > div > div > div li.sub-title {
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 6px;
    cursor: default;
    padding: 6px 0;
  }
  .nav .nav-contents-area > div > div > div > div li.sub-title:after {
    display: none;
    /* Remove chevron */
  }
}
@media (max-width: 1220px) {
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item] {
    display: none;
    /* Active sub-item: show as full-screen list */
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active {
    display: block;
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active:after {
    display: none;
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active ul > li {
    background: #fff;
    position: relative;
    width: 100%;
    line-height: 56px;
    cursor: pointer;
    font-size: 15px;
    font-weight: inherit;
    border-bottom: 1px solid #dcdcdc;
    /* Sub-title remains non-interactive */
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active ul > li:hover {
    color: #84a750;
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active ul > li:after {
    font-family: "Font Awesome 5 Pro";
    vertical-align: middle;
    font-weight: 900;
    content: "\f105";
    /* Right chevron icon */
    position: absolute;
    right: 27px;
    /* Burger size calculation */
    font-size: 1.5em;
    font-weight: 300;
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active ul > li.sub-title {
    font-weight: 600;
    cursor: default;
  }
  .nav .nav-contents-area[data-nav-depth="2"] div[data-sub-item].active ul > li.sub-title:hover {
    color: inherit;
  }
}
/* ============================================================================
   SITE-SPECIFIC OVERRIDES
   ============================================================================ */
/* Icon colors */
.nav {
  /* CTA button text size override */
  /* Desktop typography refinements */
}
.nav svg.svg-inline--fa,
.nav i.fas,
.nav i.fab,
.nav i.fal,
.nav i.far {
  color: #666666;
}
.nav .logo-area > div:nth-of-type(3) > a {
  font-size: 12px;
}
@media (min-width: 1220px) {
  .nav {
    /* Column headings: uppercase, tighter spacing */
    /* Top-level selector tabs: uppercase, tighter spacing */
  }
  .nav .nav-contents-area > div > div > div > div .sub-selector {
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 6px;
    display: block;
    height: auto;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.25px;
  }
  .nav .selectors-area > ul > li {
    text-transform: uppercase;
    font-size: 12.5px;
    letter-spacing: 0.5px;
  }
}
/* "View all" catch-all links at bottom of nav columns */
@media (min-width: 1220px) {
  .nav .nav-contents-area ul li.catch-all {
    margin-top: 10px;
  }
  .nav .nav-contents-area ul li.catch-all > a {
    color: #919191;
  }
  .nav .nav-contents-area ul li.catch-all > a:after {
    font-family: "Font Awesome 5 Pro";
    vertical-align: middle;
    font-weight: 900;
    content: "\f105";
    /* Right chevron */
    display: inline-block;
    margin-left: 8px;
  }
}
/* Mobile menu control icons */
.burger-menu svg.svg-inline--fa,
.back svg.svg-inline--fa,
.close svg.svg-inline--fa,
.burger-menu i.fas,
.back i.fas,
.close i.fas,
.burger-menu i.fab,
.back i.fab,
.close i.fab,
.burger-menu i.fal,
.back i.fal,
.close i.fal,
.burger-menu i.far,
.back i.far,
.close i.far {
  color: #666666;
}
/* Contact bar icon colors */
.contactBar {
  display: flex;
  align-items: center;
}
.contactBar svg.svg-inline--fa,
.contactBar i.fas,
.contactBar i.fab,
.contactBar i.fal,
.contactBar i.far {
  color: #ffffff;
}
/* Sub-title styling in nav dropdowns */
.nav .nav-contents-area ul li.sub-title {
  font-weight: 600;
  color: #666666;
  margin-bottom: 0;
  cursor: default;
  list-style: none;
  /* Spacing between sub-titles (desktop) */
}
@media (min-width: 1220px) {
  .nav .nav-contents-area ul li.sub-title:not(:first-child) {
    margin-top: 18px;
  }
}
/* Newsletter Signup Form Styling
   Standalone newsletter signup include using Brevo API
   Location: includes/contact/newsletter-signup-form.php
*/
.newsletter-signup-form {
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.newsletter-signup-form > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.newsletter-signup-form > div:first-child img,
.newsletter-signup-form > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.newsletter-signup-form > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .newsletter-signup-form > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .newsletter-signup-form > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.newsletter-signup-form > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.newsletter-signup-form > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .newsletter-signup-form > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .newsletter-signup-form,
.internetExplorer .newsletter-signup-form * {
  display: block;
}
.internetExplorer body > .newsletter-signup-form {
  min-height: 400px;
}
.newsletter-signup-form > div:nth-of-type(2) {
  padding: 3em 0;
  text-align: center;
}
.newsletter-signup-form > div:nth-of-type(2) h2 {
  margin: 0 0 0.5em 0;
  color: #fff;
  font-weight: 600;
  text-align: center;
}
.newsletter-signup-form > div:nth-of-type(2) p {
  margin: 0 0 1.5em 0;
  color: #fff;
  font-size: 1em;
  line-height: 1.5;
  text-align: center;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form {
  display: flex;
  gap: 15px;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: wrap;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock {
  margin-top: 0;
  flex: 1;
  max-width: 350px;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="text"],
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="email"] {
  width: 100%;
  padding: 20px;
  border: 1px solid #d3d3d3;
  border-radius: 4px;
  background: #fff;
  color: #666;
  font-size: 15px;
  line-height: 1.4;
  transition: border-color 0.2s ease;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="text"]:focus,
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="email"]:focus {
  border-color: #84a750;
  outline: none;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="text"].validation-error,
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="email"].validation-error,
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="text"][aria-invalid="true"],
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="email"][aria-invalid="true"] {
  border: 2px solid red;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="text"]::placeholder,
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock input[type="email"]::placeholder {
  color: #999;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock.submitButton {
  flex: 0 0 auto;
  margin-top: 0;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock.submitButton input.button {
  width: auto;
  padding: 20px 32px;
  background: #cf2b04;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.1s ease;
  margin: 0;
  text-transform: none;
  letter-spacing: 0.5px;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock.submitButton input.button:hover {
  background: #e6e6e6;
  transform: translateY(-1px);
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock.submitButton input.button:active {
  transform: translateY(0);
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock.submitButton input.button:disabled {
  background: #ccc;
  cursor: not-allowed;
  transform: none;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea .successMessage {
  display: none;
  padding: 16px;
  margin-bottom: 1.5em;
  background: #fff;
  color: #666666;
  border-radius: 4px;
  text-align: left;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea .successMessage strong {
  font-weight: 600;
  color: inherit;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea .error-message {
  padding: 16px;
  margin-bottom: 1.5em;
  background: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
  border-radius: 4px;
  text-align: left;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.newsletter-signup-form > div:nth-of-type(2) .contactFormArea .error-message strong {
  font-weight: 600;
}
@media (max-width: 768px) {
  .newsletter-signup-form > div:nth-of-type(2) {
    padding: 1.5em 0;
  }
  .newsletter-signup-form > div:nth-of-type(2) h2 {
    font-size: 1.5em;
  }
  .newsletter-signup-form > div:nth-of-type(2) .contactFormArea form {
    flex-direction: column;
    align-items: stretch;
  }
  .newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock {
    max-width: 100%;
  }
  .newsletter-signup-form > div:nth-of-type(2) .contactFormArea form .inputBlock.submitButton input.button {
    width: 100%;
  }
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form {
  background: transparent;
  padding: 0;
  text-align: left;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form > div:first-of-type {
  display: none;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form h2 {
  color: inherit;
  font-size: 1.6em;
  margin-bottom: 1em;
  text-align: left;
  margin: 0;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form p {
  color: inherit;
  font-size: 0.95em;
  margin-bottom: 1em;
  text-align: left;
  display: none;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea {
  padding: 0;
  margin-top: 12px;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form {
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock {
  flex: none;
  max-width: 100%;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock input[type="text"],
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock input[type="email"] {
  padding: 10px 14px;
  font-size: 14px;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock input[type="text"].validation-error,
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock input[type="email"].validation-error,
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock input[type="text"][aria-invalid="true"],
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock input[type="email"][aria-invalid="true"] {
  border: 2px solid red;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock.submitButton {
  margin-top: 5px;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock.submitButton input.button {
  width: 100%;
  padding: 12px 24px;
  font-size: 15px;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea form .inputBlock.submitButton input.button:hover {
  background: #e6e6e6;
}
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea .successMessage,
.newsletter-signup-form-wrapper.compact .newsletter-signup-form .contactFormArea .error-message {
  max-width: 100%;
}
/*** FUNCTIONS OF THIS STYLE SHEET

	1. To make tour itineraries printer friendly

*/
.printerFriendly {
  padding-left: 2em;
  padding-right: 2em;
}
.printerFriendly .fold {
  padding-top: 24px;
  padding-bottom: 24px;
}
.printerFriendly .fold:not(:first-of-type):after {
  display: block;
  width: 80%;
  max-width: 800px;
  margin: auto;
  border-bottom: 1px solid #dddddd;
  content: "";
  height: 48px;
  margin-bottom: 24px;
}
.printerFriendly .fold:not(:first-of-type):last-child:after {
  display: none;
}
.printerFriendly .fold h3,
.printerFriendly .fold h4,
.printerFriendly .fold h5 {
  margin: 0;
}
.printerFriendly .fold h3 + p,
.printerFriendly .fold h4 + p,
.printerFriendly .fold h5 + p {
  margin-top: 0;
}
.printerFriendly .fold h3[data-itineraries-day-title],
.printerFriendly .fold h4[data-itineraries-day-title],
.printerFriendly .fold h5[data-itineraries-day-title] {
  font-size: 1.8em;
}
.printerFriendly .fold ol {
  margin-top: 24px;
  margin-bottom: 24px;
}
.printerFriendly .fold ol li {
  margin: 0;
}
.printerFriendly .fold > div div:not(:last-of-type) {
  margin-bottom: 24px;
}
.printerFriendly .fold p + h3,
.printerFriendly .fold p + h4,
.printerFriendly .fold p + h5,
.printerFriendly .fold p + div {
  margin-top: 24px;
}
.printerFriendly *,
.printerFriendly a,
.printerFriendly svg.svg-inline--fa,
.printerFriendly i.fas,
.printerFriendly i.far,
.printerFriendly i.fab,
.printerFriendly i.fal {
  color: #3b3b3b;
}
.printerFriendly .subHeading {
  opacity: initial;
}
.printerFriendly img,
.printerFriendly .button {
  display: none;
}
.printerFriendly .layeredContent {
  min-height: 0;
}
.printerFriendly .layeredContent .backgroundLayer {
  display: none;
}
.printerFriendly .layeredContent .foregroundLayer {
  padding: 2em 0 0 0;
}
.printerFriendly .layeredContent .foregroundLayer * {
  color: #3b3b3b;
  text-shadow: none;
  text-align: left;
}
.printerFriendly .layeredContent .foregroundLayer .button,
.printerFriendly .layeredContent .foregroundLayer .multiButtonArea {
  display: none;
}
.printerFriendly .svg-inline--fa.fa-clone {
  display: none;
}
.printerFriendly .openModalInlineLink:after {
  content: '';
}
.printerFriendly a svg.svg-inline--fa,
.printerFriendly a i.fas,
.printerFriendly a i.far,
.printerFriendly a i.fab,
.printerFriendly a i.fal {
  color: #84a750;
}
.printerFriendly .logo {
  max-width: 300px;
  filter: saturate(0);
  display: block;
  margin-left: 0;
}
.printerFriendly .tour-title {
  line-height: 1.4em;
}
@media print {
  .printerFriendly div.tourInclusions,
  .printerFriendly div.tourExclusions,
  .printerFriendly table {
    break-inside: avoid;
  }
  .printerFriendly .printerFriendly .tourInclusions:before,
  .printerFriendly .printerFriendly .tourExclusions:before {
    display: none;
  }
}
.printerFriendly .tourInclusions,
.printerFriendly .tourExclusions {
  border: none;
  padding: 0;
  margin: 24px 0;
}
.printerFriendly .tourInclusions:after,
.printerFriendly .tourExclusions:after {
  display: block;
  width: 80%;
  max-width: 800px;
  margin: auto;
  border-bottom: 1px solid #dddddd;
  content: "";
  height: 48px;
  margin-bottom: 24px;
}
.printerFriendly .tourInclusions:last-child:after,
.printerFriendly .tourExclusions:last-child:after {
  display: none;
}
.printerFriendly .tourInclusions h3:nth-of-type(n),
.printerFriendly .tourExclusions h3:nth-of-type(n) {
  color: #3b3b3b;
  text-align: left;
}
.printerFriendly .tourInclusions:before,
.printerFriendly .tourExclusions:before {
  display: none;
}
.reviewsChart {
  background: #fff;
  box-shadow: none;
  border: none;
  border-radius: 7px;
}
.reviewsChart > div {
  position: relative;
  display: flex;
  flex-direction: row;
  padding: 24px;
}
.reviewsChart > div > div:first-of-type {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 40%;
}
.reviewsChart > div > div:first-of-type .introTextSnippet {
  justify-self: flex-start;
  margin-bottom: 24px;
  font-size: 15px;
  color: #a5a5a5;
}
.reviewsChart > div > div:first-of-type > div {
  display: flex;
  flex-direction: column;
  width: 200px;
  max-width: 80%;
}
.reviewsChart > div > div:first-of-type > div .masterRatingNumbers,
.reviewsChart > div > div:first-of-type > div .masterRatingStars {
  text-align: center;
}
.reviewsChart > div > div:first-of-type > div .masterRatingNumbers {
  font-weight: 900;
  font-size: 60px;
}
@media (max-width: 10000px) and (min-width: 10000px) {
  .reviewsChart > div > div:first-of-type > div .masterRatingNumbers {
    font-size: 8vw;
  }
}
.reviewsChart > div > div:first-of-type > div .masterRatingNumbers:after {
  content: "/5";
  display: inline;
  vertical-align: top;
  font-size: 0.45em;
  opacity: 0.6;
  font-weight: 400;
  margin-left: 5px;
}
.reviewsChart > div > div:first-of-type > div .masterRatingStars {
  color: #ffc04b;
  font-size: 42.75px;
}
@media (max-width: 10000px) and (min-width: 10000px) {
  .reviewsChart > div > div:first-of-type > div .masterRatingStars {
    font-size: 5vw;
  }
}
.reviewsChart > div > div:first-of-type .masterRatingsKey {
  font-size: 15px;
  color: #a5a5a5;
  margin-top: 1em;
}
.reviewsChart > div > div:first-of-type .masterRatingsKey > a {
  color: inherit;
  text-decoration: underline;
  text-underline-position: under;
}
.reviewsChart > div > div:nth-of-type(2) {
  width: 60%;
  padding-top: 36px;
}
.reviewsChart > div > div:nth-of-type(2) table,
.reviewsChart > div > div:nth-of-type(2) th,
.reviewsChart > div > div:nth-of-type(2) tr,
.reviewsChart > div > div:nth-of-type(2) td {
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
}
.reviewsChart > div > div:nth-of-type(2) table {
  width: 100%;
}
.reviewsChart > div > div:nth-of-type(2) table tr td:first-child {
  width: 150px;
  text-align: left;
  line-height: 1em;
  font-size: 24.75px;
  color: #ffc04b;
}
.reviewsChart > div > div:nth-of-type(2) table tr td:first-child .shortFall {
  color: #e9e9e9;
}
.reviewsChart > div > div:nth-of-type(2) table tr td:first-child .ratingCount {
  font-size: 12px;
  line-height: 24.75px;
  vertical-align: middle;
  color: #a5a5a5;
}
.reviewsChart > div > div:nth-of-type(2) table tr td:nth-child(2) {
  width: auto;
  padding: 12px 0;
}
.reviewsChart > div > div:nth-of-type(2) table tr td:nth-child(2):after {
  margin-left: 3%;
  color: transparent;
  content: ".";
  text-align: Left;
  display: block;
  height: 19px;
  border-radius: 19px;
  overflow: hidden;
}
.reviewsChart > div > div:nth-of-type(2) table tr:first-of-type td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 98.3%, #e9e9e9 98.3%);
}
.reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(2) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 1.45%, #e9e9e9 1.45%);
}
.reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(3) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0.25%, #e9e9e9 0.25%);
}
.reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(4) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0%, #e9e9e9 0%);
}
.reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(5) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0%, #e9e9e9 0%);
}
.reviewsChart > div:after {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #d7d7d7;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
  content: "\f1a0\2007\f39e";
  font-size: 24.75px;
}
@media (max-width: 10000px) {
  .reviewsChart > div {
    flex-direction: column;
  }
  .reviewsChart > div > div:nth-of-type(n) {
    width: 100%;
  }
  .reviewsChart > div > div:first-of-type {
    margin-bottom: 24px;
  }
  .reviewsChart > div > div:first-of-type > span,
  .reviewsChart > div > div:first-of-type > div {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }
}
.reviewsChart.miniVersion {
  background: #fff;
  box-shadow: none;
  border: none;
  border-radius: 7px;
  max-width: 300px;
  margin: 0 auto;
}
.reviewsChart.miniVersion > div {
  position: relative;
  display: flex;
  flex-direction: row;
  padding: 24px;
}
.reviewsChart.miniVersion > div > div:first-of-type {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 40%;
}
.reviewsChart.miniVersion > div > div:first-of-type .introTextSnippet {
  justify-self: flex-start;
  margin-bottom: 24px;
  font-size: 12px;
  color: #a5a5a5;
}
.reviewsChart.miniVersion > div > div:first-of-type > div {
  display: flex;
  flex-direction: column;
  width: 200px;
  max-width: 80%;
}
.reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingNumbers,
.reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingStars {
  text-align: center;
}
.reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingNumbers {
  font-weight: 900;
  font-size: 48px;
}
@media (max-width: 10000px) and (min-width: 10000px) {
  .reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingNumbers {
    font-size: 8vw;
  }
}
.reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingNumbers:after {
  content: "/5";
  display: inline;
  vertical-align: top;
  font-size: 0.45em;
  opacity: 0.6;
  font-weight: 400;
  margin-left: 5px;
}
.reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingStars {
  color: #ffc04b;
  font-size: 34.2px;
}
@media (max-width: 10000px) and (min-width: 10000px) {
  .reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingStars {
    font-size: 5vw;
  }
}
.reviewsChart.miniVersion > div > div:first-of-type .masterRatingsKey {
  font-size: 12px;
  color: #a5a5a5;
  margin-top: 1em;
}
.reviewsChart.miniVersion > div > div:first-of-type .masterRatingsKey > a {
  color: inherit;
  text-decoration: underline;
  text-underline-position: under;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) {
  width: 60%;
  padding-top: 36px;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table,
.reviewsChart.miniVersion > div > div:nth-of-type(2) th,
.reviewsChart.miniVersion > div > div:nth-of-type(2) tr,
.reviewsChart.miniVersion > div > div:nth-of-type(2) td {
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table {
  width: 100%;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr td:first-child {
  width: 150px;
  text-align: left;
  line-height: 1em;
  font-size: 19.8px;
  color: #ffc04b;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr td:first-child .shortFall {
  color: #e9e9e9;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr td:first-child .ratingCount {
  font-size: 12px;
  line-height: 19.8px;
  vertical-align: middle;
  color: #a5a5a5;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr td:nth-child(2) {
  width: auto;
  padding: 12px 0;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr td:nth-child(2):after {
  margin-left: 3%;
  color: transparent;
  content: ".";
  text-align: Left;
  display: block;
  height: 19px;
  border-radius: 19px;
  overflow: hidden;
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr:first-of-type td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 98.3%, #e9e9e9 98.3%);
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr:nth-of-type(2) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 1.45%, #e9e9e9 1.45%);
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr:nth-of-type(3) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0.25%, #e9e9e9 0.25%);
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr:nth-of-type(4) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0%, #e9e9e9 0%);
}
.reviewsChart.miniVersion > div > div:nth-of-type(2) table tr:nth-of-type(5) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0%, #e9e9e9 0%);
}
.reviewsChart.miniVersion > div:after {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #d7d7d7;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
  content: "\f1a0\2007\f39e";
  font-size: 19.8px;
}
@media (max-width: 10000px) {
  .reviewsChart.miniVersion > div {
    flex-direction: column;
  }
  .reviewsChart.miniVersion > div > div:nth-of-type(n) {
    width: 100%;
  }
  .reviewsChart.miniVersion > div > div:first-of-type {
    margin-bottom: 24px;
  }
  .reviewsChart.miniVersion > div > div:first-of-type > span,
  .reviewsChart.miniVersion > div > div:first-of-type > div {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }
}
.reviewsChart.miniVersion > div {
  padding: 18px 24px;
}
.reviewsChart.miniVersion > div:after {
  top: auto;
  bottom: 12px;
  right: calc((100% - 40px) / 2);
  display: none;
}
.reviewsChart.miniVersion > div > div:first-of-type .introTextSnippet {
  display: none;
}
@media (max-width: 10000px) {
  .reviewsChart.miniVersion > div > div:first-of-type {
    margin-bottom: 0;
  }
}
.reviewsChartWithIntro {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-areas: "explainerColumn chart ";
}
.fold > div .reviewsChartWithIntro:last-child {
  margin-bottom: 0;
}
.fold > div .reviewsChartWithIntro:only-child {
  margin: 0;
}
.reviewsChartWithIntro > * {
  display: none;
}
.reviewsChartWithIntro > div,
.reviewsChartWithIntro > a {
  display: block;
}
.reviewsChartWithIntro > div:nth-child(n),
.reviewsChartWithIntro > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 1000px) and (min-width: 800px) {
  .reviewsChartWithIntro {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .reviewsChartWithIntro {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .reviewsChartWithIntro {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .reviewsChartWithIntro > div,
.internetExplorer .reviewsChartWithIntro > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .reviewsChartWithIntro > div:nth-child(1),
.internetExplorer .reviewsChartWithIntro > a:nth-child(1),
.internetExplorer .reviewsChartWithIntro > div:nth-child(2),
.internetExplorer .reviewsChartWithIntro > a:nth-child(2),
.internetExplorer .reviewsChartWithIntro > div:nth-child(3),
.internetExplorer .reviewsChartWithIntro > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .reviewsChartWithIntro > div *,
.internetExplorer .reviewsChartWithIntro > a * {
  max-width: 100%;
}
@media (max-width: 1000px) {
  .internetExplorer .reviewsChartWithIntro > div:nth-child(n),
  .internetExplorer .reviewsChartWithIntro > a:nth-child(n) {
    width: 100%;
  }
}
.reviewsChartWithIntro > div:first-of-type {
  display: flex;
  flex-direction: column;
  justify-content: center;
  grid-area: explainerColumn;
}
@media (max-width: 800px) {
  .reviewsChartWithIntro {
    grid-template-areas: "chart" "explainerColumn";
    margin: 0 auto;
  }
}
.reviewsChartWithIntro div:nth-of-type(2) {
  grid-area: chart;
}
.reviewsChartWithIntro .reviewsChart {
  background: #fff;
  box-shadow: none;
  border: 2px solid #dddddd;
  border-radius: 7px;
}
.reviewsChartWithIntro .reviewsChart > div {
  position: relative;
  display: flex;
  flex-direction: row;
  padding: 24px;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 40%;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type .introTextSnippet {
  justify-self: flex-start;
  margin-bottom: 24px;
  font-size: 15px;
  color: #a5a5a5;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div {
  display: flex;
  flex-direction: column;
  width: 200px;
  max-width: 80%;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingNumbers,
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingStars {
  text-align: center;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingNumbers {
  font-weight: 900;
  font-size: 48px;
}
@media (max-width: 10000px) and (min-width: 10000px) {
  .reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingNumbers {
    font-size: 8vw;
  }
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingNumbers:after {
  content: "/5";
  display: inline;
  vertical-align: top;
  font-size: 0.45em;
  opacity: 0.6;
  font-weight: 400;
  margin-left: 5px;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingStars {
  color: #ffc04b;
  font-size: 31.5px;
}
@media (max-width: 10000px) and (min-width: 10000px) {
  .reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div .masterRatingStars {
    font-size: 5vw;
  }
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type .masterRatingsKey {
  font-size: 15px;
  color: #a5a5a5;
  margin-top: 1em;
}
.reviewsChartWithIntro .reviewsChart > div > div:first-of-type .masterRatingsKey > a {
  color: inherit;
  text-decoration: underline;
  text-underline-position: under;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) {
  width: 60%;
  padding-top: 36px;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table,
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) th,
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) tr,
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) td {
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table {
  width: 100%;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr td:first-child {
  width: 150px;
  text-align: left;
  line-height: 1em;
  font-size: 24.75px;
  color: #ffc04b;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr td:first-child .shortFall {
  color: #e9e9e9;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr td:first-child .ratingCount {
  font-size: 12px;
  line-height: 24.75px;
  vertical-align: middle;
  color: #a5a5a5;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr td:nth-child(2) {
  width: auto;
  padding: 12px 0;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr td:nth-child(2):after {
  margin-left: 3%;
  color: transparent;
  content: ".";
  text-align: Left;
  display: block;
  height: 19px;
  border-radius: 19px;
  overflow: hidden;
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr:first-of-type td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 98.3%, #e9e9e9 98.3%);
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(2) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 1.45%, #e9e9e9 1.45%);
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(3) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0.25%, #e9e9e9 0.25%);
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(4) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0%, #e9e9e9 0%);
}
.reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(2) table tr:nth-of-type(5) td:nth-child(2):after {
  background: linear-gradient(90deg, #ffc04b 0%, #e9e9e9 0%);
}
.reviewsChartWithIntro .reviewsChart > div:after {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #d7d7d7;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
  content: "\f1a0\2007\f39e";
  font-size: 24.75px;
}
@media (max-width: 10000px) {
  .reviewsChartWithIntro .reviewsChart > div {
    flex-direction: column;
  }
  .reviewsChartWithIntro .reviewsChart > div > div:nth-of-type(n) {
    width: 100%;
  }
  .reviewsChartWithIntro .reviewsChart > div > div:first-of-type {
    margin-bottom: 24px;
  }
  .reviewsChartWithIntro .reviewsChart > div > div:first-of-type > span,
  .reviewsChartWithIntro .reviewsChart > div > div:first-of-type > div {
    width: 100%;
    max-width: 100%;
    text-align: center;
  }
}
.review {
  position: relative;
  box-shadow: 0px 0px 6px rgba(41, 41, 41, 0.2);
  border: none;
  border-radius: 0;
  width: 100%;
  margin: 24px auto;
  padding: 24px;
  background: #fff;
  overflow: hidden;
  display: block;
  grid-template-areas: "reviewerInfo" "reviewBody";
}
.review:before {
  display: none;
}
.review > div {
  position: relative;
}
.review.rated5Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605\2605\2605";
}
.review.rated4Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605\2605";
}
.review.rated3Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605";
}
.review.rated2Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605";
}
.review.rated1Star > div:first-of-type > p:first-of-type:after {
  content: "\2605";
}
.review.unrated > div:first-of-type > p:first-of-type:after {
  content: "";
}
.review > div:first-of-type {
  grid-area: reviewerInfo;
}
.review > div:first-of-type > p:first-of-type {
  font-weight: bold;
  font-size: 18.4px;
  margin: 0;
}
.review > div:first-of-type > p:first-of-type:after {
  color: #ffc04b;
  font-size: 1.2em;
  margin-left: 10px;
}
.review > div:first-of-type p:nth-of-type(2) {
  font-size: 12px;
  margin: 0;
  color: #afafaf;
}
.review > div:nth-of-type(2) {
  grid-area: reviewBody;
  margin-top: 12px;
}
.review > div:nth-of-type(2) span.readMore {
  cursor: pointer;
  color: #7aa9d2;
  display: block;
}
.review > div:nth-of-type(2) span.productBeingReviewed {
  font-size: 12px;
  color: #afafaf;
  font-size: 12.8px;
  margin-top: 1em;
}
.review > div:nth-of-type(2) p:nth-of-type(n+3):not(.boilerplate) {
  display: none;
}
.review > div:nth-of-type(2) span.readMore:focus {
  position: absolute;
  left: -5000px;
}
.review > div:nth-of-type(2) span.readMore:focus ~ p:nth-of-type(n+3) {
  display: block;
}
.review > div:nth-of-type(2) a {
  color: #7aa9d2;
}
.review > div:nth-of-type(2) p.boilerplate {
  font-size: 12px;
  text-align: right;
}
.review:after {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #7aa9d2;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
  content: "";
  font-size: 26.4px;
}
.review.google:after {
  content: "\f1a0";
}
.review.facebook:after {
  content: "\f39e";
}
.review.tripadvisor:after {
  content: "\f262";
}
.review .more-text {
  display: none;
}
.review .reviewBody {
  font-size: 0.9rem;
}
.sliderWrapper.reviewSlider .slider .review {
  position: relative;
  box-shadow: none;
  border: none;
  border-radius: 0;
  width: 100%;
  margin: 24px auto;
  padding: 24px;
  background: #fff;
  overflow: hidden;
  display: block;
  grid-template-areas: "reviewerInfo" "reviewBody";
  max-width: 800px;
}
.sliderWrapper.reviewSlider .slider .review:before {
  display: none;
}
.sliderWrapper.reviewSlider .slider .review > div {
  position: relative;
}
.sliderWrapper.reviewSlider .slider .review.rated5Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605\2605\2605";
}
.sliderWrapper.reviewSlider .slider .review.rated4Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605\2605";
}
.sliderWrapper.reviewSlider .slider .review.rated3Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605";
}
.sliderWrapper.reviewSlider .slider .review.rated2Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605";
}
.sliderWrapper.reviewSlider .slider .review.rated1Star > div:first-of-type > p:first-of-type:after {
  content: "\2605";
}
.sliderWrapper.reviewSlider .slider .review.unrated > div:first-of-type > p:first-of-type:after {
  content: "";
}
.sliderWrapper.reviewSlider .slider .review > div:first-of-type {
  grid-area: reviewerInfo;
}
.sliderWrapper.reviewSlider .slider .review > div:first-of-type > p:first-of-type {
  font-weight: bold;
  font-size: 18.4px;
  margin: 0;
}
.sliderWrapper.reviewSlider .slider .review > div:first-of-type > p:first-of-type:after {
  color: #ffc04b;
  font-size: 1.2em;
  margin-left: 10px;
}
.sliderWrapper.reviewSlider .slider .review > div:first-of-type p:nth-of-type(2) {
  font-size: 12px;
  margin: 0;
  color: #afafaf;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) {
  grid-area: reviewBody;
  margin-top: 12px;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) span.readMore {
  cursor: pointer;
  color: #7aa9d2;
  display: block;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) span.productBeingReviewed {
  font-size: 12px;
  color: #afafaf;
  font-size: 12.8px;
  margin-top: 1em;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) p:nth-of-type(n+3):not(.boilerplate) {
  display: none;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) span.readMore:focus {
  position: absolute;
  left: -5000px;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) span.readMore:focus ~ p:nth-of-type(n+3) {
  display: block;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) a {
  color: #7aa9d2;
}
.sliderWrapper.reviewSlider .slider .review > div:nth-of-type(2) p.boilerplate {
  font-size: 12px;
  text-align: right;
}
.sliderWrapper.reviewSlider .slider .review:after {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #7aa9d2;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
  content: "";
  font-size: 26.4px;
}
.sliderWrapper.reviewSlider .slider .review.google:after {
  content: "\f1a0";
}
.sliderWrapper.reviewSlider .slider .review.facebook:after {
  content: "\f39e";
}
.sliderWrapper.reviewSlider .slider .review.tripadvisor:after {
  content: "\f262";
}
.sliderWrapper.reviewSlider .slider.slick-initialized .slick-slide {
  flex-direction: column;
  justify-content: center;
}
@media (min-width: 800px) {
  .sliderWrapper .slider.reviewsSlider .slick-slide > div {
    margin-right: 12px;
  }
  .sliderWrapper .slider.reviewsSlider .slick-slide > div:not(:nth-of-type(1)) {
    margin-left: 12px;
  }
}
.reviewWrapper {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  max-width: 100%;
}
.fold > div .reviewWrapper:last-child {
  margin-bottom: 0;
}
.fold > div .reviewWrapper:only-child {
  margin: 0;
}
.reviewWrapper > * {
  display: none;
}
.reviewWrapper > div,
.reviewWrapper > a {
  display: block;
}
.reviewWrapper > div:nth-child(n),
.reviewWrapper > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 950px) and (min-width: 800px) {
  .reviewWrapper {
    grid-gap: 12px;
  }
}
@media (max-width: 950px) {
  .reviewWrapper {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 800px) {
  .reviewWrapper {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .reviewWrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .reviewWrapper > div,
.internetExplorer .reviewWrapper > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .reviewWrapper > div:nth-child(1),
.internetExplorer .reviewWrapper > a:nth-child(1),
.internetExplorer .reviewWrapper > div:nth-child(2),
.internetExplorer .reviewWrapper > a:nth-child(2),
.internetExplorer .reviewWrapper > div:nth-child(3),
.internetExplorer .reviewWrapper > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .reviewWrapper > div *,
.internetExplorer .reviewWrapper > a * {
  max-width: 100%;
}
@media (max-width: 950px) {
  .internetExplorer .reviewWrapper > div:nth-child(n),
  .internetExplorer .reviewWrapper > a:nth-child(n) {
    width: 100%;
  }
}
.reviewWrapper > div {
  display: grid;
  height: 100%;
}
.reviewWrapper > div > div > .review {
  position: relative;
  box-shadow: 0px 0px 6px rgba(41, 41, 41, 0.2);
  border: none;
  border-radius: 0;
  width: 100%;
  margin: 0 auto;
  padding: 24px;
  background: #fff;
  overflow: hidden;
  display: block;
  grid-template-areas: "reviewerInfo" "reviewBody";
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 48px auto;
}
.reviewWrapper > div > div > .review:before {
  display: none;
}
.reviewWrapper > div > div > .review > div {
  position: relative;
}
.reviewWrapper > div > div > .review.rated5Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605\2605\2605";
}
.reviewWrapper > div > div > .review.rated4Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605\2605";
}
.reviewWrapper > div > div > .review.rated3Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605\2605";
}
.reviewWrapper > div > div > .review.rated2Stars > div:first-of-type > p:first-of-type:after {
  content: "\2605\2605";
}
.reviewWrapper > div > div > .review.rated1Star > div:first-of-type > p:first-of-type:after {
  content: "\2605";
}
.reviewWrapper > div > div > .review.unrated > div:first-of-type > p:first-of-type:after {
  content: "";
}
.reviewWrapper > div > div > .review > div:first-of-type {
  grid-area: reviewerInfo;
}
.reviewWrapper > div > div > .review > div:first-of-type > p:first-of-type {
  font-weight: bold;
  font-size: 18.4px;
  margin: 0;
}
.reviewWrapper > div > div > .review > div:first-of-type > p:first-of-type:after {
  color: #ffc04b;
  font-size: 1.2em;
  margin-left: 10px;
}
.reviewWrapper > div > div > .review > div:first-of-type p:nth-of-type(2) {
  font-size: 12px;
  margin: 0;
  color: #afafaf;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) {
  grid-area: reviewBody;
  margin-top: 12px;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) span.readMore {
  cursor: pointer;
  color: #7aa9d2;
  display: block;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) span.productBeingReviewed {
  font-size: 12px;
  color: #afafaf;
  font-size: 12.8px;
  margin-top: 1em;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) p:nth-of-type(n+3):not(.boilerplate) {
  display: none;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) span.readMore:focus {
  position: absolute;
  left: -5000px;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) span.readMore:focus ~ p:nth-of-type(n+3) {
  display: block;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) a {
  color: #7aa9d2;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) p.boilerplate {
  font-size: 12px;
  text-align: right;
}
.reviewWrapper > div > div > .review:after {
  position: absolute;
  top: 24px;
  right: 24px;
  color: #7aa9d2;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-family: "Font Awesome 5 Brands";
  content: "";
  font-size: 26.4px;
}
.reviewWrapper > div > div > .review.google:after {
  content: "\f1a0";
}
.reviewWrapper > div > div > .review.facebook:after {
  content: "\f39e";
}
.reviewWrapper > div > div > .review.tripadvisor:after {
  content: "\f262";
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) {
  display: flex;
  flex-direction: column;
  margin-top: 0;
}
.reviewWrapper > div > div > .review > div:nth-of-type(2) .boilerplate {
  margin-top: auto;
}
.fold.reviews {
  background: #f4f6f8;
  background: linear-gradient(-28deg, #F9FAFB 0%, #F9FAFB 15%, #f4f6f8 15%, #f4f6f8 65%, #F9FAFB 65%, #F9FAFB 100%);
  overflow: hidden;
  position: relative;
}
.fold.reviews h2 {
  color: #4d4d4d;
}
.handwrittenReview {
  /* where the review quotation begins with a quotation mark, the height of this character should not throw out the line-height of the whole first line */
}
.handwrittenReview h2,
.handwrittenReview h3,
.handwrittenReview h4,
.handwrittenReview h5,
.handwrittenReview p {
  font-family: 'Shadows Into Light Two';
  line-height: 1.4em;
}
.handwrittenReview .fa-quote-left {
  line-height: 0.7em;
}
.handwrittenReview .reviewer:after {
  display: inline-block;
  content: "\2605\2605\2605\2605\2605\00A0";
}
/**** review boxes *****/
/* styled to look like an embedded iframe */
.columns.multiplesOfThree.containsReviewBoxes {
  padding-top: 40px;
  /* make room / whitespace for negative margin of children, particularly needed on narrower screens when the columns stack vertically */
  /* where reviews are only being served as a call to action, just show the first three*/
}
@media (max-width: 1000px) {
  .columns.multiplesOfThree.containsReviewBoxes > div:nth-child(n+2) {
    margin-top: 150px;
  }
}
.columns.multiplesOfThree.containsReviewBoxes.reviewCallToAction > div:nth-child(n+4) {
  display: none;
}
.columns.containsReviewBoxes {
  padding-top: 40px;
  /* make room / whitespace for negative margin of children, particularly needed on narrower screens when the columns stack vertically */
  /* where reviews are only being served as a call to action, just show the first two*/
}
@media (max-width: 1000px) {
  .columns.containsReviewBoxes > div:nth-child(n+2) {
    margin-top: 150px;
  }
}
.columns.containsReviewBoxes.reviewCallToAction > div:nth-child(n+3) {
  display: none;
}
/* For when you put reviews in a slider. Only show first 9 reviews */
.sliderWrapper.sliderStyleThreeItems.containsReviewBoxes {
  padding-top: 40px;
}
@media (max-width: 1000px) {
  .twoColumnsWrapper > .reviewBoxWrapper {
    margin-top: 40px;
  }
}
.reviewBoxWrapper .reviewBox {
  background-color: #ffffff;
  opacity: 1;
  border: 1px solid #a5a5a5;
  overflow: visible;
  max-width: 350px;
  width: 100%;
  position: relative;
  padding: 20px;
  min-height: 300px;
  padding-top: 0;
  /* create space above each reviewBox for the avatar to fit into */
  margin: 150px auto 20px auto;
  /* the first one needs less whitespace */
}
.reviewBoxWrapper .reviewBox h2,
.reviewBoxWrapper .reviewBox h3,
.reviewBoxWrapper .reviewBox h4,
.reviewBoxWrapper .reviewBox h5,
.reviewBoxWrapper .reviewBox p {
  text-align: left;
  margin-top: 0.8em;
}
.reviewBoxWrapper .reviewBox h2,
.reviewBoxWrapper .reviewBox h3,
.reviewBoxWrapper .reviewBox h4 {
  font-family: 'Roboto', Sans Serif;
}
.reviewBoxWrapper .reviewBox p {
  font-family: 'Roboto', Sans Serif;
}
.reviewBoxWrapper .reviewBox p.fiveStarReview,
.reviewBoxWrapper .reviewBox p.fourStarReview {
  font-size: 0.6em;
  color: #999999;
  font-style: italic;
}
.reviewBoxWrapper .reviewBox p.fiveStarReview:before,
.reviewBoxWrapper .reviewBox p.fourStarReview:before {
  display: block;
  content: "\2605\2605\2605\2605\2605\00A0";
  color: #e7711b;
  clear: both;
  font-size: 2.5em;
  font-style: normal;
  margin-bottom: 0.5em;
}
.reviewBoxWrapper .reviewBox p.fourStarReview:before {
  content: "\2605\2605\2605\2605\00A0";
}
.reviewBoxWrapper .reviewBox p.boilerplate {
  font-family: 'Roboto', Sans Serif;
}
.reviewBoxWrapper .reviewBox:first-child {
  margin: 75px auto 20px auto;
}
.reviewBoxWrapper .reviewBox a:not(.button) {
  color: #4285F4;
}
.reviewBoxWrapper .reviewBox .avatarArea img,
.reviewBoxWrapper .reviewBox .avatarArea svg.svg-inline--fa,
.reviewBoxWrapper .reviewBox .avatarArea i.fas,
.reviewBoxWrapper .reviewBox .avatarArea i.far,
.reviewBoxWrapper .reviewBox .avatarArea i.fab,
.reviewBoxWrapper .reviewBox .avatarArea i.fal {
  display: inline-block;
  font-size: 1em;
  color: #769648;
  vertical-align: bottom;
  height: 2em;
  width: 2em;
  padding: 0.4em;
  border-radius: 100%;
  border: 2px solid #84a750;
  padding: 0;
  margin-bottom: 0.2em;
  font-size: 0.9em;
  color: #ffffff;
  border-color: #ffffff;
  margin: -75px auto 0 auto;
}
.reviewBoxWrapper .reviewBox .avatarArea svg.svg-inline--fa,
.reviewBoxWrapper .reviewBox .avatarArea i.fas,
.reviewBoxWrapper .reviewBox .avatarArea i.far,
.reviewBoxWrapper .reviewBox .avatarArea i.fab,
.reviewBoxWrapper .reviewBox .avatarArea i.fal {
  background-color: #7aa9d2;
  border: none;
  font-size: 4em;
  padding-top: 0.5em;
  color: #ffffff;
}
.reviewBoxWrapper .reviewBox .avatarArea img {
  min-height: 144px;
  max-height: 144px;
  height: 144px;
  max-width: 144px;
  width: 144px;
}
.allReviewsSummaryBox,
.fold .allReviewsSummaryBox {
  background-color: #ffffff;
  opacity: 1;
  border: 1px solid #a5a5a5;
  overflow: visible;
  max-width: 350px;
  width: 100%;
  position: relative;
  padding: 20px;
  box-shadow: 0 0 10px -1px #000;
  margin: 1em auto;
}
.allReviewsSummaryBox h2,
.fold .allReviewsSummaryBox h2,
.allReviewsSummaryBox h3,
.fold .allReviewsSummaryBox h3,
.allReviewsSummaryBox h4,
.fold .allReviewsSummaryBox h4,
.allReviewsSummaryBox h5,
.fold .allReviewsSummaryBox h5,
.allReviewsSummaryBox p,
.fold .allReviewsSummaryBox p {
  text-align: left;
  margin-top: 0.8em;
}
.allReviewsSummaryBox h2,
.fold .allReviewsSummaryBox h2,
.allReviewsSummaryBox h3,
.fold .allReviewsSummaryBox h3,
.allReviewsSummaryBox h4,
.fold .allReviewsSummaryBox h4 {
  font-family: 'Roboto', Sans Serif;
}
.allReviewsSummaryBox p,
.fold .allReviewsSummaryBox p {
  font-family: 'Roboto', Sans Serif;
}
.allReviewsSummaryBox p.fiveStarReview,
.fold .allReviewsSummaryBox p.fiveStarReview,
.allReviewsSummaryBox p.fourStarReview,
.fold .allReviewsSummaryBox p.fourStarReview {
  font-size: 0.6em;
  color: #999999;
  font-style: italic;
}
.allReviewsSummaryBox p.fiveStarReview:before,
.fold .allReviewsSummaryBox p.fiveStarReview:before,
.allReviewsSummaryBox p.fourStarReview:before,
.fold .allReviewsSummaryBox p.fourStarReview:before {
  display: block;
  content: "\2605\2605\2605\2605\2605\00A0";
  color: #e7711b;
  clear: both;
  font-size: 2.5em;
  font-style: normal;
  margin-bottom: 0.5em;
}
.allReviewsSummaryBox p.fourStarReview:before,
.fold .allReviewsSummaryBox p.fourStarReview:before {
  content: "\2605\2605\2605\2605\00A0";
}
.allReviewsSummaryBox p.boilerplate,
.fold .allReviewsSummaryBox p.boilerplate {
  font-family: 'Roboto', Sans Serif;
}
.allReviewsSummaryBox .button,
.fold .allReviewsSummaryBox .button {
  text-align: left;
}
.submitReviewButton {
  display: block;
  flex-grow: 0;
  float: none;
  margin: 24px auto;
  padding: 24px;
  max-width: 250px;
  text-align: center;
  color: #ffffff;
  background-color: #84a750;
  font-weight: bold;
  text-transform: uppercase;
  box-shadow: none;
  background-color: #4285F4;
  float: right;
  min-width: 0;
  padding: 10px;
  text-align: left;
  font-family: 'Roboto', Sans Serif;
  vertical-align: middle;
  border-radius: 2px;
}
p + .submitReviewButton {
  margin: 48px auto;
}
.submitReviewButton.strongCallToAction,
.layeredContent .submitReviewButton.strongCallToAction {
  background-color: #cf2b04;
  box-shadow: none;
}
@media (max-width: 600px) {
  .submitReviewButton {
    max-width: 95%;
  }
}
.submitReviewButton svg.svg-inline--fa,
.submitReviewButton i.fas,
.submitReviewButton i.fab,
.submitReviewButton i.fal,
.submitReviewButton i.far {
  display: inline-block;
  font-size: 1em;
}
.masterRatingStrip > div {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 250px;
}
@media (max-width: 1010px) {
  .masterRatingStrip > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.masterRatingStrip > div .reviewsChart.miniVersion {
  background-color: transparent;
}
.masterRatingStrip > div .reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingNumbers {
  font-size: 34px;
}
.masterRatingStrip > div .reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingStars {
  font-size: 28px;
}
.masterRatingStrip > div .reviewsChart.miniVersion > div > div:first-of-type > div .masterRatingsKey {
  font-size: 10px;
}
.masterRatingStrip > div > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.masterRatingStrip > div > div p {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  text-transform: none;
  margin: 0;
  text-align: center;
  font-weight: 500;
  font-size: clamp(0.85rem, 2vw, 1.05rem);
  font-size: clamp(1.15rem, 2.5vw, 1.35rem);
  letter-spacing: 0.3px;
  line-height: 1.35em;
}
.masterRatingStrip > div > div p:first-child {
  margin-top: 0;
}
.masterRatingStrip > div > div p a {
  color: inherit;
}
@media (max-width: 650px) {
  .masterRatingStrip > div {
    max-width: 500px;
    margin-top: 24px;
    grid-template-columns: 1fr;
  }
  .masterRatingStrip > div > div p {
    text-align: center;
    margin-bottom: 12px;
  }
}
.reviewWrapper > div {
  display: none;
}
.reviewWrapper > div:nth-child(-n + 12) {
  display: block;
}
.loadmoreButton {
  letter-spacing: 1px;
  font-size: 15px;
  text-align: center;
  width: 250px;
  margin: 72px auto 24px auto;
  padding: 10px;
  line-height: 1em;
  background: #EAEEF3;
  cursor: pointer;
}
.loadmoreButton:hover {
  background: #cad4e0;
}
/* New grid layout for tour rating strip: .tour-rating-grid */
.tour-rating-grid {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 48px;
  align-items: start;
}
@media (max-width: 1010px) {
  .tour-rating-grid {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 650px) {
  .tour-rating-grid {
    grid-template-columns: 1fr;
  }
}
.tour-rating-grid .rating-breakdown h2 {
  margin-top: 0;
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
}
.tour-rating-grid .rating-breakdown h2:first-child {
  margin-top: 0;
}
.tour-rating-grid .rating-breakdown h2 a {
  color: inherit;
}
.tour-rating-grid .rating-breakdown .sub {
  color: #666666;
  margin-bottom: 24px;
}
.tour-rating-grid .rating-breakdown .breakdown-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.tour-rating-grid .rating-breakdown .breakdown-list .breakdown-row {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 12px 0;
}
.tour-rating-grid .rating-breakdown .breakdown-list .breakdown-row .starLabel {
  width: 72px;
  color: #ffbc00;
  font-size: 1rem;
  flex: 0 0 72px;
}
.tour-rating-grid .rating-breakdown .breakdown-list .breakdown-row .bar {
  flex: 1 1 auto;
  background: #e9e9e9;
  height: 12px;
  border-radius: 999px;
  overflow: hidden;
}
.tour-rating-grid .rating-breakdown .breakdown-list .breakdown-row .bar .bar-fill {
  height: 100%;
  background: #ffbc00;
  width: 0%;
  transition: width 500ms ease-in-out;
}
.tour-rating-grid .rating-breakdown .breakdown-list .breakdown-row .count {
  flex: 0 0 48px;
  text-align: right;
  color: #666666;
}
.tour-rating-grid .rating-summary {
  background: #fff;
  border: 1px solid #dddddd;
  border-radius: 7px;
  padding: 30px;
  text-align: center;
}
.tour-rating-grid .rating-summary .big-rating {
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
  color: #666666;
}
.tour-rating-grid .rating-summary .big-rating .slash {
  font-size: 18px;
  color: #999999;
  margin-left: 4px;
}
.tour-rating-grid .rating-summary .star-icons {
  color: #ffbc00;
  font-size: 22px;
  margin-top: 12px;
}
.tour-rating-grid .rating-summary .meta {
  color: #b3b3b3;
  margin-top: 12px;
  font-size: 0.95rem;
}
.slider.reviewsSlider,
.slider.tour-highlights {
  position: relative;
  padding-top: 40px;
}
.slider.reviewsSlider button.slick-prev.slick-arrow,
.slider.tour-highlights button.slick-prev.slick-arrow,
.slider.reviewsSlider button.slick-next.slick-arrow,
.slider.tour-highlights button.slick-next.slick-arrow {
  position: absolute;
  top: 0;
  width: 55px;
  height: 55px;
  border: 2px solid #dcdcdc;
  background: #fff;
  border-radius: 50%;
  opacity: 1;
  z-index: 0;
}
.slider.reviewsSlider button.slick-prev.slick-arrow:before,
.slider.tour-highlights button.slick-prev.slick-arrow:before,
.slider.reviewsSlider button.slick-next.slick-arrow:before,
.slider.tour-highlights button.slick-next.slick-arrow:before {
  text-shadow: none;
  text-align: center;
  color: #666666;
  font-size: 18px;
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  font-weight: 400;
}
.slider.reviewsSlider button.slick-prev.slick-arrow,
.slider.tour-highlights button.slick-prev.slick-arrow {
  left: 40px;
}
.slider.reviewsSlider button.slick-prev.slick-arrow:before,
.slider.tour-highlights button.slick-prev.slick-arrow:before {
  content: "\f053";
}
.slider.reviewsSlider button.slick-next.slick-arrow,
.slider.tour-highlights button.slick-next.slick-arrow {
  left: 140px;
  right: auto;
}
.slider.reviewsSlider button.slick-next.slick-arrow:before,
.slider.tour-highlights button.slick-next.slick-arrow:before {
  content: "\f054";
}
.slider.reviewsSlider.onePerRow button.slick-prev.slick-arrow,
.slider.tour-highlights.onePerRow button.slick-prev.slick-arrow {
  right: auto;
  left: 40%;
}
.slider.reviewsSlider.onePerRow button.slick-next.slick-arrow,
.slider.tour-highlights.onePerRow button.slick-next.slick-arrow {
  left: auto;
  right: 40%;
}
@media (max-width: 680px) {
  .slider.reviewsSlider.onePerRow button.slick-prev.slick-arrow,
  .slider.tour-highlights.onePerRow button.slick-prev.slick-arrow {
    right: auto;
    left: 24px;
  }
  .slider.reviewsSlider.onePerRow button.slick-next.slick-arrow,
  .slider.tour-highlights.onePerRow button.slick-next.slick-arrow {
    left: auto;
    right: 24px;
  }
}
.slider.reviewsSlider.onePerRow .slick-dots li:nth-of-type(n+10),
.slider.tour-highlights.onePerRow .slick-dots li:nth-of-type(n+10),
.slider.reviewsSlider.twoPerRow .slick-dots li:nth-of-type(n+10),
.slider.tour-highlights.twoPerRow .slick-dots li:nth-of-type(n+10) {
  display: none;
}
.slider.reviewsSlider.onePerRow > div > div > div > div > div,
.slider.tour-highlights.onePerRow > div > div > div > div > div {
  max-width: 650px;
  margin-right: auto;
  margin-left: auto;
}
.slider.reviewsSlider.onePerRow > div > div > div > div > div:not(:first-child),
.slider.tour-highlights.onePerRow > div > div > div > div > div:not(:first-child) {
  display: none;
}
.slider.reviewsSlider.twoPerRow > div > div,
.slider.tour-highlights.twoPerRow > div > div {
  display: flex;
  gap: 24px;
}
.slider.reviewsSlider.twoPerRow > div > div > div > div,
.slider.tour-highlights.twoPerRow > div > div > div > div {
  width: 50%;
}
@media (max-width: 800px) {
  .slider.reviewsSlider.twoPerRow > div > div > div > div,
  .slider.tour-highlights.twoPerRow > div > div > div > div {
    flex: 1;
  }
  .slider.reviewsSlider.twoPerRow > div > div > div > div:nth-child(even),
  .slider.tour-highlights.twoPerRow > div > div > div > div:nth-child(even) {
    display: none;
  }
}
@media (max-width: 800px) {
  .slider.reviewsSlider button.slick-prev.slick-arrow,
  .slider.tour-highlights button.slick-prev.slick-arrow {
    right: auto;
    left: 40%;
  }
  .slider.reviewsSlider button.slick-next.slick-arrow,
  .slider.tour-highlights button.slick-next.slick-arrow {
    left: auto;
    right: 40%;
  }
}
@media (max-width: 800px) and (max-width: 680px) {
  .slider.reviewsSlider button.slick-prev.slick-arrow,
  .slider.tour-highlights button.slick-prev.slick-arrow {
    right: auto;
    left: 24px;
  }
  .slider.reviewsSlider button.slick-next.slick-arrow,
  .slider.tour-highlights button.slick-next.slick-arrow {
    left: auto;
    right: 24px;
  }
}
.secondaryNav {
  padding: 0 0;
  background-color: #F9FAFB;
  position: -webkit-sticky;
  /* Safari */
  position: sticky;
  top: -1px;
  z-index: 81;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.secondaryNav > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .secondaryNav > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.secondaryNav > div:not(:last-child) {
  margin-bottom: 24px;
}
.secondaryNav > div {
  padding-left: 0;
  padding-right: 0;
}
.secondaryNav > div ul {
  margin-top: 0;
  width: 100%;
}
.secondaryNav > div ul li {
  font-size: 0.96rem;
  letter-spacing: 0.5px;
  text-align: center;
}
.secondaryNav > div ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px 0;
  min-height: 48px;
  text-decoration: none;
  color: #666666;
  font-weight: 600;
  white-space: nowrap;
}
@media (max-width: 900px) {
  @keyframes swipe {
    50% {
      transform: translateX(0);
    }
    75% {
      transform: translateX(-20%);
    }
    100% {
      transform: translateX(0);
    }
  }
  .secondaryNav > div {
    overflow-x: auto;
    animation: 2s ease 0s 1 swipe;
  }
  .secondaryNav > div ul {
    display: flex;
    gap: 36px;
    padding-left: 52px;
    padding-right: 24px;
  }
  .secondaryNav > div ul li {
    scroll-snap-align: start;
    flex: 0 0 auto;
  }
}
@media (min-width: 901px) {
  .secondaryNav > div {
    display: flex;
    overflow: hidden;
    max-width: 1300px;
  }
  .secondaryNav > div > * {
    display: none;
  }
  .secondaryNav > div ul {
    display: flex;
    width: 100%;
    justify-content: space-between;
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
  }
  .secondaryNav > div ul li {
    min-width: 170px;
    flex-grow: 1;
  }
}
@media (min-width: 901px) and (max-width: 510px) {
  .secondaryNav > div ul li:nth-of-type(n + 3) {
    display: none;
  }
}
@media (min-width: 901px) and (max-width: 680px) {
  .secondaryNav > div ul li:nth-of-type(n + 4) {
    display: none;
  }
}
@media (min-width: 901px) and (max-width: 850px) {
  .secondaryNav > div ul li:nth-of-type(n + 5) {
    display: none;
  }
}
@media (min-width: 901px) and (max-width: 1020px) {
  .secondaryNav > div ul li:nth-of-type(n + 6) {
    display: none;
  }
}
@media (min-width: 901px) and (max-width: 1190px) {
  .secondaryNav > div ul li:nth-of-type(n + 7) {
    display: none;
  }
}
@media (min-width: 901px) and (max-width: 1360px) {
  .secondaryNav > div ul li:nth-of-type(n + 8) {
    display: none;
  }
}
.singleFullWidthCTA {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .singleFullWidthCTA {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 1100px) {
  .singleFullWidthCTA {
    padding-left: 0;
    padding-right: 0;
  }
}
.singleFullWidthCTA > div {
  width: 100%;
  margin-top: 24px;
  margin-bottom: 24px;
  background: #84a750;
  padding: 24px;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.singleFullWidthCTA > div > img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
  z-index: -1;
}
.singleFullWidthCTA > div > img img,
.singleFullWidthCTA > div > img picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(80%);
}
.singleFullWidthCTA > div > div {
  width: auto;
}
@media (min-width: 768px) {
  .singleFullWidthCTA > div > div {
    max-width: 70%;
  }
}
.singleFullWidthCTA > div > div > * {
  display: none;
}
.singleFullWidthCTA > div > div p {
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: left;
}
.singleFullWidthCTA > div > div p > * {
  color: inherit;
  font-weight: inherit;
}
.singleFullWidthCTA > div > a {
  padding: 12px;
  padding-left: 24px;
  border-radius: 50px;
  background: #fff;
  color: #84a750;
  min-width: 220px;
  margin-left: 24px;
  display: flex;
  justify-content: space-between;
  font-weight: bold;
}
.singleFullWidthCTA > div > a:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  margin-left: 10px;
}
@media (max-width: 768px) {
  .singleFullWidthCTA > div {
    flex-direction: column;
  }
  .singleFullWidthCTA > div > div {
    width: 100%;
  }
  .singleFullWidthCTA > div > div p {
    text-align: center;
  }
  .singleFullWidthCTA > div a {
    margin: 24px auto 0;
  }
}
.tourCategoriesExplainer + .singleFullWidthCTA {
  max-width: 100%;
  width: 100%;
  border-top: clamp(48px, 5vw, 100px) solid #F9FAFB;
}
.tourCategoriesExplainer + .singleFullWidthCTA:before {
  display: block;
  content: "";
  background: #F9FAFB;
  height: 100px;
}
.tourCategoriesExplainer + .singleFullWidthCTA > div {
  margin: 0 auto;
  margin-top: -100px;
  width: 970px;
  max-width: 96%;
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px;
  height: 200px;
  background: #4d4d4d;
}
@media (min-width: 1250px) {
  .tourCategoriesExplainer + .singleFullWidthCTA > div {
    padding-left: 72px;
    padding-right: 72px;
  }
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > div {
  max-width: 50%;
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > div p {
  font-size: clamp(1.75rem, 3vw, 2.1rem);
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > div p + p {
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: normal;
  margin-top: 0;
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > a.button {
  margin: auto 0 auto auto;
  border-radius: 4px;
  padding: 24px;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.5px;
  border: 2px solid #fff;
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > a.button:hover {
  color: #4d4d4d;
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > a.button:not(:hover) {
  color: #fff;
  background: transparent;
}
.tourCategoriesExplainer + .singleFullWidthCTA > div > a.button:not(:hover):after {
  color: #fff;
}
@media (max-width: 768px) {
  .tourCategoriesExplainer + .singleFullWidthCTA > div {
    flex-direction: column;
    height: auto;
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .tourCategoriesExplainer + .singleFullWidthCTA > div > div {
    width: 100%;
    max-width: 550px;
    margin: auto;
  }
  .tourCategoriesExplainer + .singleFullWidthCTA > div > div p {
    text-align: center;
  }
  .tourCategoriesExplainer + .singleFullWidthCTA > div > a.button {
    margin: 48px auto 0 auto;
    text-align: center;
    display: block;
    width: 100%;
    max-width: 320px;
  }
  .tourCategoriesExplainer + .singleFullWidthCTA > div > a.button:after {
    display: none;
  }
}
.skipToPrices {
  position: absolute;
  bottom: -5000px;
  visibility: hidden;
  opacity: 0;
  transition: bottom 0.5s ease-in;
}
.displaysPricesCTA .footer,
.displaysPricesCTA #footer {
  padding-bottom: 105px;
}
@media (max-width: 450px) {
  .displaysPricesCTA .footer,
  .displaysPricesCTA #footer {
    padding-bottom: 90px;
  }
}
.displaysPricesCTA .skipToPrices {
  visibility: visible;
  opacity: 1;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  border-top: 1px solid #dcdcdc;
  z-index: 999;
  background: #fff;
}
.displaysPricesCTA .skipToPrices > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .displaysPricesCTA .skipToPrices > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.displaysPricesCTA .skipToPrices > div:not(:last-child) {
  margin-bottom: 24px;
}
.displaysPricesCTA .skipToPrices > div {
  padding-top: 12px;
  padding-bottom: 12px;
  display: flex;
}
.displaysPricesCTA .skipToPrices > div > * {
  display: none;
}
.displaysPricesCTA .skipToPrices > div > ul {
  display: flex;
  padding: 0;
}
.displaysPricesCTA .skipToPrices > div > ul li {
  padding: 15px 0;
  max-width: 200px;
  min-width: 90px;
  font-size: 0.9rem;
  text-align: center;
}
@media (max-width: 620px) {
  .displaysPricesCTA .skipToPrices > div > ul li:nth-child(n+3) {
    display: none;
  }
}
.displaysPricesCTA .skipToPrices > div > div {
  max-width: 250px;
  width: 220px;
  display: flex;
  align-items: center;
  margin: 0 0 0 auto;
}
.displaysPricesCTA .skipToPrices > div > div > .button {
  margin: 0;
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  padding: 12px;
}
@media (max-width: 450px) {
  .displaysPricesCTA .skipToPrices > div > div {
    max-width: 49%;
    min-width: 49%;
    margin: 0 auto;
  }
  .displaysPricesCTA .skipToPrices > div > ul {
    width: 49%;
  }
  .displaysPricesCTA .skipToPrices > div > ul > li {
    width: auto;
    max-width: 50%;
    padding-right: 10px;
    min-width: 0;
  }
}
@media (max-width: 410px) {
  .displaysPricesCTA .skipToPrices > div > div {
    max-width: 150px;
    min-width: 150px;
    margin-right: 0;
  }
  .displaysPricesCTA .skipToPrices > div > div .button {
    padding: 8px;
  }
}
/***** FUNCTIONS OF THIS STYLE SHEET 

	1. Site-specific customisations for the slick slider (in common libraries)

*/
.sliderWrapper {
  margin: 48px auto;
}
.fold > div .sliderWrapper:last-child {
  margin-bottom: 0;
}
.fold > div .sliderWrapper:only-child {
  margin: 0;
}
.slider.productSlider .slick-prev:before,
.slider.productSlider .slick-next:before {
  text-shadow: 0px 1px 4px grey;
  color: #fff;
  opacity: 0.85;
}
/**
 * Special Offers Carousel Styles
 * 
 * Styling for promotional tour offers carousel on homepage and other pages.
 * Uses slick carousel framework (sliderStyleFourItems).
 * Design matches screenshot: compact cards with image, label bar, meta, pricing, and CTA.
 */
.specialOffersCarousel {
  background: #f9fafb;
}
.specialOffersCarousel > div {
  max-width: 1200px;
  padding-left: 10px;
  padding-right: 10px;
}
.specialOffersCarousel .carousel-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
}
.specialOffersCarousel .carousel-header .textBox {
  flex: 1;
}
.specialOffersCarousel .carousel-header .textBox h2 {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-size: 2.253rem;
  font-weight: 700;
  margin: 0 0 6px 0;
  line-height: 1.2;
}
.specialOffersCarousel .carousel-header .textBox p {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: 1rem;
  margin: 0;
  line-height: 1.5;
}
.specialOffersCarousel .carousel-header .carousel-nav {
  display: flex;
  gap: 8px;
  margin-left: 24px;
  align-self: center;
}
.specialOffersCarousel .carousel-header .carousel-nav button {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #dddddd;
  background: #ffffff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}
.specialOffersCarousel .carousel-header .carousel-nav button i {
  font-size: 1rem;
  color: #666666;
}
.specialOffersCarousel .carousel-header .carousel-nav button:hover {
  background: #F9FAFB;
  border-color: #666666;
}
.specialOffersCarousel .carousel-header .carousel-nav button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.specialOffersCarousel .sliderWrapper.specialOffersWrapper {
  position: relative;
  margin: 0 -10px;
}
@media (min-width: 800px) {
  .specialOffersCarousel .sliderWrapper.specialOffersWrapper {
    margin: 0;
  }
}
.specialOffersCarousel .specialOfferCard {
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
  margin: 24px auto;
  transition: box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.specialOffersCarousel .offerImage {
  position: relative;
  width: 100%;
  height: 180px;
  background-color: #F9FAFB;
  overflow: hidden;
}
.specialOffersCarousel .offerImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.specialOffersCarousel .discountBadge {
  position: absolute;
  top: 12px;
  left: 12px;
  background-color: #cf2b04;
  color: #ffffff;
  padding: 8px 12px;
  border-radius: 6px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.specialOffersCarousel .offerLabel {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.3);
  color: #ffffff;
  padding: 10px 16.08px;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.63rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-align: left;
  margin: 0;
}
.specialOffersCarousel .offerContent {
  display: flex;
  flex-direction: column;
  padding: 16.08px;
  gap: 8px;
  flex: 1;
}
.specialOffersCarousel .offerMeta {
  display: flex;
  align-items: center;
  gap: 18px;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.67rem;
  color: #666666;
  margin: 0;
  padding: 0;
}
.specialOffersCarousel .offerMeta span {
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.specialOffersCarousel .offerMeta span i {
  font-size: 0.73rem;
  color: rgba(102, 102, 102, 0.65);
}
.specialOffersCarousel h5 {
  margin: 0;
  padding: 0;
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
}
.specialOffersCarousel h5 a {
  color: #4d4d4d;
  text-decoration: none;
  transition: color 0.2s ease;
}
.specialOffersCarousel h5 a::after {
  content: '\203A';
  /* › single right angle quotation */
  display: inline-block;
  margin-left: 0.3em;
  opacity: 0.65;
  transform: translateX(0);
  transition: opacity 0.2s ease, transform 0.2s ease;
  font-style: normal;
}
.specialOffersCarousel h5 a:hover {
  color: #84a750;
}
.specialOffersCarousel h5 a:hover::after {
  opacity: 1;
  transform: translateX(3px);
}
.specialOffersCarousel .pricingCTARow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
}
.specialOffersCarousel .offerPricing {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}
.specialOffersCarousel .offerPricing .wasPrice {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.65rem;
  color: rgba(102, 102, 102, 0.75);
  text-decoration: line-through;
  text-underline-position: under;
  line-height: 1.2;
}
.specialOffersCarousel .offerPricing .nowPrice {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #cf2b04;
  line-height: 1;
}
.specialOffersCarousel .offerPricing .nowPrice .pp {
  font-size: 0.72rem;
  font-weight: 400;
  color: rgba(102, 102, 102, 0.7);
  margin-left: 3px;
}
.specialOffersCarousel .reserveButton {
  text-align: center;
  padding: 13.92px 26.4px;
  background: #84a750;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 0.87rem;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  flex-shrink: 0;
}
.specialOffersCarousel .reserveButton i {
  font-size: 0.75rem;
  font-weight: 300;
}
.specialOffersCarousel .reserveButton:hover {
  background: #6e8b43;
  box-shadow: 0 4px 8px rgba(132, 167, 80, 0.3);
  transform: translateY(-1px);
}
.specialOffersCarousel .reserveButton:hover i {
  transform: translateX(3px);
}
.specialOffersCarousel .reserveButton:active {
  transform: translateY(0);
}
@media (max-width: 800px) {
  .specialOffersCarousel .carousel-header {
    flex-direction: column;
    gap: 12px;
  }
  .specialOffersCarousel .carousel-header .carousel-nav {
    margin-left: 0;
    align-self: flex-start;
  }
  .specialOffersCarousel .offerContent {
    padding: 12px;
  }
  .specialOffersCarousel .offerMeta {
    gap: 12px;
    font-size: 0.75rem;
  }
  .specialOffersCarousel h5 {
    font-size: 1rem;
  }
  .specialOffersCarousel .offerPricing .nowPrice {
    font-size: 20px;
  }
  .specialOffersCarousel .reserveButton {
    padding: 12px 19.92px;
    font-size: 0.93rem;
  }
}
@media (max-width: 550px) {
  .specialOffersCarousel .carousel-header .textBox h2 {
    font-size: 1.833rem;
  }
  .specialOffersCarousel .carousel-header .textBox p {
    font-size: 0.93rem;
  }
  .specialOffersCarousel .carousel-header .carousel-nav button {
    width: 36px;
    height: 36px;
  }
  .specialOffersCarousel .carousel-header .carousel-nav button i {
    font-size: 0.9rem;
  }
  .specialOffersCarousel .offerContent {
    padding: 10px;
    gap: 6px;
  }
  .specialOffersCarousel .discountBadge {
    font-size: 0.62rem;
    padding: 6px 10px;
  }
  .specialOffersCarousel .offerLabel {
    font-size: 0.6rem;
    padding: 8px 12px;
  }
  .specialOffersCarousel .pricingCTARow {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }
  .specialOffersCarousel .reserveButton {
    width: 100%;
    justify-content: center;
  }
  .specialOffersCarousel .offerPricing .nowPrice {
    font-size: 18px;
  }
}
*,
*:before,
*:after {
  box-sizing: border-box;
}
.standoutRibbonWrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translate3d(0, 0, 0);
  font-family: "Roboto", sans-serif;
}
.standoutRibbonWrapper .standoutRibbon {
  background: #84a750;
  display: inline-block;
  color: #f4f4f4;
  padding: 0.5em 0.7em;
  font-weight: 900;
  letter-spacing: 0.2em;
  position: relative;
  font-size: 1.1rem;
  text-transform: uppercase;
  transform-style: preserve-3d;
  transform: rotate(-10deg) skew(-10deg, 5deg);
  margin: 1.5rem auto 3rem;
}
@media (max-width: 550px) {
  .standoutRibbonWrapper .standoutRibbon {
    font-size: 0.825rem;
    max-width: 85%;
    padding-top: 0.425em;
    padding-bottom: 0.425em;
  }
}
.standoutRibbonWrapper .standoutRibbon:before,
.standoutRibbonWrapper .standoutRibbon:after {
  content: "";
  width: 0;
  height: 2em;
  display: block;
  background: #84a750;
  position: absolute;
  border-style: solid;
  border-width: 0.5em;
  z-index: -1;
  transform: translateZ(-1em);
}
.standoutRibbonWrapper .standoutRibbon:before {
  left: -0.5em;
  top: 1em;
  border-color: #769648 #5b7337 #769648 #769648;
}
@media (max-width: 550px) {
  .standoutRibbonWrapper .standoutRibbon:before {
    top: 1.5375em;
  }
}
.standoutRibbonWrapper .standoutRibbon:after {
  right: -0.5em;
  top: -0.5em;
  border-color: #769648 #769648 #769648 #5b7337;
}
.standoutRibbonWrapper:after {
  display: block;
  content: "";
  clear: both;
}
/* FUNCTIONS OF THIS STYLESHEET

1. Contains all summaries for tours and attractions
2. Contains all listings for partners




*/
/* Variables */
/* mixins */
/* styles */
/* what happens to button and icon list on narrow screens - should be re-usable in all listing styles */
/* ============================================================================
   WEBSITE SECTION SUMMARY
   ============================================================================
   Content summary cards used throughout the site for introducing website
   sections (e.g., travel guide sections, blog categories).

   Features:
   - Layered content design with foreground text over background images
   - Special "travel journal pen sketch" variant with larger responsive headings
   - Justified paragraphs with consistent spacing
   - Icon-enhanced list links (right arrow icons)
   ============================================================================ */
.websiteSectionSummary {
  font-size: 0.9em;
  /* Layered content cards (standard and travel guide contexts) */
  /* Heading spacing */
  /* Paragraph styling: justified text with consistent line height */
  /* List styling */
}
.websiteSectionSummary .layeredContent,
.travelguide .websiteSectionSummary .layeredContent {
  min-height: 175px;
  /* Travel journal pen sketch variant: larger responsive headings */
}
.websiteSectionSummary .layeredContent .foregroundLayer,
.travelguide .websiteSectionSummary .layeredContent .foregroundLayer {
  padding: 12px;
  padding-right: 18px;
}
.websiteSectionSummary .layeredContent .foregroundLayer:after,
.travelguide .websiteSectionSummary .layeredContent .foregroundLayer:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  color: #fff;
  display: flex;
  justify-self: center;
  font-size: 35px;
  line-height: 35px;
  position: absolute;
  right: 12px;
  top: calc((100% - 35px) / 2);
}
.websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h1,
.travelguide .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h1,
.websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h2,
.travelguide .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h2 {
  font-size: 3rem;
  /* Fluid typography between mobile and desktop */
  /* Hide subheading separator line */
}
@media (min-width: 650px) and (max-width: 990px) {
  .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h1,
  .travelguide .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h1,
  .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h2,
  .travelguide .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h2 {
    font-size: 4.9vw;
  }
}
.websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h1 .subHeading:before,
.travelguide .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h1 .subHeading:before,
.websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h2 .subHeading:before,
.travelguide .websiteSectionSummary .layeredContent.travelJournalPenSketch .foregroundLayer h2 .subHeading:before {
  height: 0;
}
.websiteSectionSummary h3,
.websiteSectionSummary h4,
.websiteSectionSummary h5 {
  margin-top: 0.8em;
}
.websiteSectionSummary p,
.websiteSectionSummary p:only-of-type {
  text-align: justify;
  line-height: 1.5em;
  margin-top: 1.3em;
}
.websiteSectionSummary ul {
  /* Reduced spacing when inside fold */
  /* Right arrow icon after list links */
}
.fold .websiteSectionSummary ul {
  margin-top: 0.4em;
}
.websiteSectionSummary ul li a:after {
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  content: "\0020\f0a9";
  /* Space + right arrow icon */
}
.websiteSectionSummaries {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 12px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
}
.fold > div .websiteSectionSummaries:last-child {
  margin-bottom: 0;
}
.fold > div .websiteSectionSummaries:only-child {
  margin: 0;
}
.websiteSectionSummaries > * {
  display: none;
}
.websiteSectionSummaries > div,
.websiteSectionSummaries > a {
  display: block;
}
.websiteSectionSummaries > div:nth-child(n),
.websiteSectionSummaries > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .websiteSectionSummaries {
    grid-gap: 6px;
  }
}
@media (max-width: 650px) {
  .websiteSectionSummaries {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .websiteSectionSummaries {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .websiteSectionSummaries > div,
.internetExplorer .websiteSectionSummaries > a {
  width: 50%;
  display: block;
  padding-left: 6px;
  padding-right: 6px;
}
.internetExplorer .websiteSectionSummaries > div:nth-child(1),
.internetExplorer .websiteSectionSummaries > a:nth-child(1),
.internetExplorer .websiteSectionSummaries > div:nth-child(2),
.internetExplorer .websiteSectionSummaries > a:nth-child(2),
.internetExplorer .websiteSectionSummaries > div:nth-child(3),
.internetExplorer .websiteSectionSummaries > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .websiteSectionSummaries > div *,
.internetExplorer .websiteSectionSummaries > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .websiteSectionSummaries > div:nth-child(n),
  .internetExplorer .websiteSectionSummaries > a:nth-child(n) {
    width: 100%;
  }
}
@media (min-width: 1150px) {
  .multiSummaryStoryBoardLayout .fold:nth-child(even) .pairedContentCard:nth-child(n) {
    flex-direction: row-reverse;
  }
  .multiSummaryStoryBoardLayout .fold:nth-child(odd) .pairedContentCard:nth-child(n) {
    flex-direction: row;
  }
}
.pairedContentCard {
  width: 95%;
  margin: 1.5em auto;
  display: flex;
  justify-content: space-between;
}
.pairedContentCard.standout {
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
  padding: 2em;
}
@media (max-width: 1150px) {
  .pairedContentCard.standout {
    padding: 0.75em;
  }
}
.pairedContentCard > * {
  flex-basis: 48%;
  align-self: center;
}
.pairedContentCard > *:first-child {
  align-self: flex-start;
}
.pairedContentCard:nth-child(odd) {
  flex-direction: row;
}
.pairedContentCard:nth-child(even) {
  flex-direction: row-reverse;
}
@media (max-width: 1150px) {
  .pairedContentCard:nth-child(n) {
    flex-direction: column;
  }
  .pairedContentCard:nth-child(n) > * {
    flex-basis: auto;
    align-self: auto;
  }
}
.detailedDestinationSummary,
.websiteContentSummary {
  background-color: #F9FAFB;
  padding: 2rem;
  margin-bottom: 2rem;
}
.detailedDestinationSummary .detailedDestinationSummary,
.detailedDestinationSummary .websiteContentSummary,
.websiteContentSummary .detailedDestinationSummary,
.websiteContentSummary .websiteContentSummary,
.distinctiveContent .detailedDestinationSummary,
.distinctiveContent .websiteContentSummary {
  background-color: #fefefe;
}
.detailedDestinationSummary:first-of-type,
.websiteContentSummary:first-of-type {
  margin-top: 1rem;
}
@media (max-width: 600px) {
  .detailedDestinationSummary,
  .websiteContentSummary {
    padding: 1.2rem;
  }
}
.detailedDestinationSummary > div:first-child,
.websiteContentSummary > div:first-child {
  display: flex;
  width: 100%;
  margin: 0;
  justify-content: space-between;
}
.detailedDestinationSummary > div:first-child > div,
.websiteContentSummary > div:first-child > div,
.detailedDestinationSummary > div:first-child > a,
.websiteContentSummary > div:first-child > a {
  flex-basis: 48.5%;
  align-self: center;
}
.distinctiveContent .detailedDestinationSummary,
.distinctiveContent .websiteContentSummary {
  background: #fefefe;
}
@media (min-width: 900px) {
  .detailedDestinationSummary:nth-child(even) > div:first-child,
  .websiteContentSummary:nth-child(even) > div:first-child {
    flex-direction: row-reverse;
  }
  .detailedDestinationSummary:nth-child(even) > div:first-child > div:nth-child(2),
  .websiteContentSummary:nth-child(even) > div:first-child > div:nth-child(2) {
    margin-left: 0;
    margin-right: 2rem;
  }
}
@media (max-width: 900px) {
  .detailedDestinationSummary > div:first-child:nth-child(n),
  .websiteContentSummary > div:first-child:nth-child(n) {
    flex-direction: column;
  }
  .detailedDestinationSummary > div:first-child:nth-child(n) > *,
  .websiteContentSummary > div:first-child:nth-child(n) > * {
    flex-basis: auto;
    align-self: auto;
  }
  .detailedDestinationSummary > div:first-child > div:first-child,
  .websiteContentSummary > div:first-child > div:first-child {
    margin-bottom: 1rem;
  }
}
.detailedDestinationSummary {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}
.detailedDestinationSummary:before {
  position: absolute;
  display: block;
  content: "";
  width: 18px;
  height: 36px;
  box-sizing: border-box;
  top: 90px;
  background-color: #fff;
  left: 0;
  border-left: none;
  border-bottom-right-radius: 30px;
  border-top-right-radius: 30px;
}
.detailedDestinationSummary:after {
  position: absolute;
  display: block;
  content: "";
  width: 18px;
  height: 36px;
  box-sizing: border-box;
  top: 90px;
  background-color: #fff;
  right: 0;
  border-right: none;
  border-bottom-left-radius: 30px;
  border-top-left-radius: 30px;
}
.distinctiveContent .detailedDestinationSummary,
.extendedContentList > div:nth-child(even) .detailedDestinationSummary {
  background-color: #fff;
}
.distinctiveContent .detailedDestinationSummary:before,
.extendedContentList > div:nth-child(even) .detailedDestinationSummary:before,
.distinctiveContent .detailedDestinationSummary:after,
.extendedContentList > div:nth-child(even) .detailedDestinationSummary:after {
  background-color: #F9FAFB;
  background-image: none;
}
.detailedDestinationSummary > div > div {
  position: relative;
}
@media (min-width: 900px) {
  .detailedDestinationSummary:nth-child(even) > div:first-child > div .noteworthyDestinationBadges {
    right: 10px;
    left: auto;
  }
}
.fold.containsTourSummaries > div {
  max-width: 1200px;
}
.tourSummaries,
.containsTourSummaries {
  background: #f5f5f5;
}
select.tourSummariesSelect {
  margin: 24px 0 24px auto;
  display: block;
}
.tourSummaries {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
}
.textBox + .tourSummaries {
  margin-top: 48px;
}
.tourSummary {
  position: relative;
  display: grid;
  grid-template-columns: 300px 1.8fr minmax(190px, 1fr);
  grid-template-rows: 25px 1fr;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0.25rem 0.25rem rgba(40, 40, 40, 0.06), 0 0.5rem 0.75rem rgba(40, 40, 40, 0.06), 0 0.75rem 1.25rem rgba(40, 40, 40, 0.06);
  overflow: hidden;
  border-top: 5px solid #cf2b04;
  grid-template-areas: "tourCategoryTab tourDescriptionContainer priceCTAContainer" "imageContainer tourDescriptionContainer priceCTAContainer";
  background-clip: border-box;
}
.tourSummary .tourCategoryTab {
  grid-area: tourCategoryTab;
  background: #cf2b04;
  color: #fff;
  padding: 6px;
  font-size: 12px;
  letter-spacing: 0.75px;
  font-weight: bold;
  text-transform: uppercase;
}
.tourSummary > div {
  overflow: hidden;
}
.tourSummary .imageContainer {
  grid-area: imageContainer;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
}
.tourSummary .imageContainer img,
.tourSummary .imageContainer picture {
  min-width: 100%;
  width: 100%;
}
.tourSummary .tourDescriptionContainer {
  grid-area: tourDescriptionContainer;
  display: flex;
  flex-direction: column;
  padding: 12px;
  padding-top: 24px;
  gap: 10px;
  background: #fff;
}
.tourSummary .tourDescriptionContainer .new-tour-announcement {
  display: flex;
  align-items: center;
  background: #cf2b04;
  border-radius: 50%;
  width: 90px;
  height: 90px;
  padding: 9px;
  color: #fff;
  font-size: 13px;
  line-height: 1.15em;
  text-transform: uppercase;
  text-align: center;
  font-weight: bold;
  position: absolute;
  top: 32px;
  left: 12px;
  box-shadow: 0 0 10px -1px rgba(0, 0, 0, 0.6);
  transform: rotate(-15deg);
}
.tourSummary .tourDescriptionContainer ul {
  display: flex;
  gap: 10px;
  font-size: 0.9rem;
}
.tourSummary .tourDescriptionContainer ul svg.svg-inline--fa,
.tourSummary .tourDescriptionContainer ul i.fas,
.tourSummary .tourDescriptionContainer ul i.fab,
.tourSummary .tourDescriptionContainer ul i.fal,
.tourSummary .tourDescriptionContainer ul i.far {
  font-weight: 300;
  color: #666666;
  vertical-align: middle;
}
@media (max-width: 450px) {
  .tourSummary .tourDescriptionContainer ul {
    flex-direction: column;
  }
}
@media (min-width: 660px) and (max-width: 720px) {
  .tourSummary .tourDescriptionContainer ul {
    flex-direction: column;
  }
}
.tourSummary .tourDescriptionContainer p {
  font-size: 0.9rem;
}
.tourSummary .tourDescriptionContainer .rating,
.tourSummary .tourDescriptionContainer .review-message {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: clamp(15px, 2.5vw, 17px);
  line-height: 1.7em;
  font-size: 0.9rem;
  display: block;
  justify-self: flex-end;
  margin-top: auto;
}
.tourSummary .tourDescriptionContainer .rating b,
.tourSummary .tourDescriptionContainer .review-message b,
.tourSummary .tourDescriptionContainer .rating strong,
.tourSummary .tourDescriptionContainer .review-message strong {
  font-weight: 600;
}
h1 + .tourSummary .tourDescriptionContainer .rating,
h1 + .tourSummary .tourDescriptionContainer .review-message,
h2 + .tourSummary .tourDescriptionContainer .rating,
h2 + .tourSummary .tourDescriptionContainer .review-message,
h3 + .tourSummary .tourDescriptionContainer .rating,
h3 + .tourSummary .tourDescriptionContainer .review-message,
h4 + .tourSummary .tourDescriptionContainer .rating,
h4 + .tourSummary .tourDescriptionContainer .review-message,
h5 + .tourSummary .tourDescriptionContainer .rating,
h5 + .tourSummary .tourDescriptionContainer .review-message,
h6 + .tourSummary .tourDescriptionContainer .rating,
h6 + .tourSummary .tourDescriptionContainer .review-message {
  margin-top: 0;
}
.tourSummary .tourDescriptionContainer .rating:before,
.tourSummary .tourDescriptionContainer .review-message:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  color: #ffbc00;
  margin-right: 5px;
}
.tourSummary .tourDescriptionContainer .rating.four:before,
.tourSummary .tourDescriptionContainer .review-message.four:before {
  content: "\f005\f005\f005\f005";
}
.tourSummary .tourDescriptionContainer .rating.fourHalf:before,
.tourSummary .tourDescriptionContainer .review-message.fourHalf:before {
  content: "\f005\f005\f005\f005\f5c0";
}
.tourSummary .tourDescriptionContainer .rating.five:before,
.tourSummary .tourDescriptionContainer .review-message.five:before {
  content: "\f005\f005\f005\f005\f005";
}
.tourSummary .priceCTAContainer {
  grid-area: priceCTAContainer;
  background: #F9FAFB;
  display: flex;
  flex-direction: column;
  padding: 12px;
}
.tourSummary .priceCTAContainer .price {
  margin-top: 24px;
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  font-weight: 600;
  line-height: 1.1em;
  margin: 0.75em 0 0.25em 0;
  text-align: left;
  font-size: 1.9rem;
}
.tourSummary .priceCTAContainer .price:first-child {
  margin-top: 0;
}
.tourSummary .priceCTAContainer .price a {
  color: inherit;
}
.tourSummary .priceCTAContainer .price span {
  font-size: 12px;
}
.tourSummary .priceCTAContainer > div {
  margin-top: auto;
  justify-self: flex-end;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.tourSummary .priceCTAContainer > div > a {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: clamp(15px, 2.5vw, 17px);
  line-height: 1.7em;
  display: block;
  background: #cf2b04;
  padding: 10px;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
}
.tourSummary .priceCTAContainer > div > a b,
.tourSummary .priceCTAContainer > div > a strong {
  font-weight: 600;
}
h1 + .tourSummary .priceCTAContainer > div > a,
h2 + .tourSummary .priceCTAContainer > div > a,
h3 + .tourSummary .priceCTAContainer > div > a,
h4 + .tourSummary .priceCTAContainer > div > a,
h5 + .tourSummary .priceCTAContainer > div > a,
h6 + .tourSummary .priceCTAContainer > div > a {
  margin-top: 0;
}
.tourSummary .priceCTAContainer > div > a svg.svg-inline--fa,
.tourSummary .priceCTAContainer > div > a i.fas,
.tourSummary .priceCTAContainer > div > a i.fab,
.tourSummary .priceCTAContainer > div > a i.fal,
.tourSummary .priceCTAContainer > div > a i.far {
  color: #cf2b04;
  vertical-align: middle;
}
.tourSummary .priceCTAContainer > div > a[onclick] {
  background: transparent;
  color: #cf2b04;
  border: 3px solid #cf2b04;
}
@media (max-width: 850px) {
  .tourSummary {
    grid-template-columns: 300px 1fr;
    grid-template-areas: "tourCategoryTab tourDescriptionContainer" "imageContainer tourDescriptionContainer" "imageContainer priceCTAContainer";
  }
  .tourSummary .priceCTAContainer,
  .tourSummary .tourDescriptionContainer {
    padding: 16px 24px;
  }
  .tourSummary .priceCTAContainer {
    background-color: transparent;
  }
  .tourSummary .priceCTAContainer > div {
    margin-top: 24px;
  }
}
@media (max-width: 660px) {
  .tourSummary {
    grid-template-columns: 1fr;
    grid-template-areas: "tourCategoryTab" "imageContainer" "tourDescriptionContainer" "priceCTAContainer";
  }
}
.tourSummary[data-tour-collection="iconic"] {
  border-color: #84a750;
}
.tourSummary[data-tour-collection="iconic"] .tourCategoryTab {
  background: #84a750;
  display: block;
}
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a {
  background-color: #84a750;
}
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a svg.svg-inline--fa,
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a i.fas,
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a i.fab,
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a i.fal,
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a i.far {
  color: #84a750;
}
.tourSummary[data-tour-collection="iconic"] .priceCTAContainer > div > a[onclick] {
  color: #84a750;
  border-color: #84a750;
  background-color: transparent;
}
.tourSummary[data-tour-collection="luxury"] {
  border-color: #30275A;
}
.tourSummary[data-tour-collection="luxury"] .tourCategoryTab {
  background: #30275A;
  display: block;
}
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a {
  background-color: #30275A;
}
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a svg.svg-inline--fa,
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a i.fas,
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a i.fab,
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a i.fal,
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a i.far {
  color: #30275A;
}
.tourSummary[data-tour-collection="luxury"] .priceCTAContainer > div > a[onclick] {
  color: #30275A;
  border-color: #30275A;
  background-color: transparent;
}
.tourSummary[data-tour-collection="discovery"] {
  border-color: #801e2f;
}
.tourSummary[data-tour-collection="discovery"] .tourCategoryTab {
  background: #801e2f;
  display: block;
}
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a {
  background-color: #801e2f;
}
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a svg.svg-inline--fa,
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a i.fas,
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a i.fab,
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a i.fal,
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a i.far {
  color: #801e2f;
}
.tourSummary[data-tour-collection="discovery"] .priceCTAContainer > div > a[onclick] {
  color: #801e2f;
  border-color: #801e2f;
  background-color: transparent;
}
.tourSummaries.london-tours-only .tourSummary {
  display: none;
}
.tourSummaries.london-tours-only .tourSummary[data-tour-cities*="london"] {
  display: grid;
}
.tourSummaries.bath-tours-only .tourSummary {
  display: none;
}
.tourSummaries.bath-tours-only .tourSummary[data-tour-cities*="bath"] {
  display: grid;
}
.tourSummaries.bristol-tours-only .tourSummary {
  display: none;
}
.tourSummaries.bristol-tours-only .tourSummary[data-tour-cities*="bristol"] {
  display: grid;
}
.tourSummaries.stratford-tours-only .tourSummary {
  display: none;
}
.tourSummaries.stratford-tours-only .tourSummary[data-tour-cities*="stratford"] {
  display: grid;
}
.tourSummaries.birmingham-tours-only .tourSummary {
  display: none;
}
.tourSummaries.birmingham-tours-only .tourSummary[data-tour-cities*="birmingham"] {
  display: grid;
}
.tourSummaries.manchester-tours-only .tourSummary {
  display: none;
}
.tourSummaries.manchester-tours-only .tourSummary[data-tour-cities*="manchester"] {
  display: grid;
}
.tourSummaries.york-tours-only .tourSummary {
  display: none;
}
.tourSummaries.york-tours-only .tourSummary[data-tour-cities*="york"] {
  display: grid;
}
.tourSummaries.newcastle-tours-only .tourSummary {
  display: none;
}
.tourSummaries.newcastle-tours-only .tourSummary[data-tour-cities*="newcastle"] {
  display: grid;
}
.tourSummaries.edinburgh-tours-only .tourSummary {
  display: none;
}
.tourSummaries.edinburgh-tours-only .tourSummary[data-tour-cities*="edinburgh"] {
  display: grid;
}
.tourSummaries.glasgow-tours-only .tourSummary {
  display: none;
}
.tourSummaries.glasgow-tours-only .tourSummary[data-tour-cities*="glasgow"] {
  display: grid;
}
.tourSummaries.belfast-tours-only .tourSummary {
  display: none;
}
.tourSummaries.belfast-tours-only .tourSummary[data-tour-cities*="belfast"] {
  display: grid;
}
.tourSummaries.derry-tours-only .tourSummary {
  display: none;
}
.tourSummaries.derry-tours-only .tourSummary[data-tour-cities*="derry"] {
  display: grid;
}
.tourSummaries.galway-tours-only .tourSummary {
  display: none;
}
.tourSummaries.galway-tours-only .tourSummary[data-tour-cities*="galway"] {
  display: grid;
}
.tourSummaries.killarney-tours-only .tourSummary {
  display: none;
}
.tourSummaries.killarney-tours-only .tourSummary[data-tour-cities*="killarney"] {
  display: grid;
}
.tourSummaries.cork-tours-only .tourSummary {
  display: none;
}
.tourSummaries.cork-tours-only .tourSummary[data-tour-cities*="cork"] {
  display: grid;
}
.tourSummaries.dublin-tours-only .tourSummary {
  display: none;
}
.tourSummaries.dublin-tours-only .tourSummary[data-tour-cities*="dublin"] {
  display: grid;
}
.tourSummaries.waterford-tours-only .tourSummary {
  display: none;
}
.tourSummaries.waterford-tours-only .tourSummary[data-tour-cities*="waterford"] {
  display: grid;
}
.tourSummaries.wexford-tours-only .tourSummary {
  display: none;
}
.tourSummaries.wexford-tours-only .tourSummary[data-tour-cities*="wexford"] {
  display: grid;
}
.tourSummaries.limerick-tours-only .tourSummary {
  display: none;
}
.tourSummaries.limerick-tours-only .tourSummary[data-tour-cities*="limerick"] {
  display: grid;
}
.tourSummaries.kilkenny-tours-only .tourSummary {
  display: none;
}
.tourSummaries.kilkenny-tours-only .tourSummary[data-tour-cities*="kilkenny"] {
  display: grid;
}
.tourSummaries.oxford-tours-only .tourSummary {
  display: none;
}
.tourSummaries.oxford-tours-only .tourSummary[data-tour-cities*="oxford"] {
  display: grid;
}
.tour-alternatives {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
@media (max-width: 800px) {
  .tour-alternatives {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 450px) {
  .tour-alternatives {
    grid-template-columns: 1fr;
  }
}
.tour-alternatives > a {
  display: block;
  overflow: hidden;
}
.tour-alternatives > a img,
.tour-alternatives > a picture {
  width: 100%;
  max-height: 175px;
  border-radius: 4px;
}
.tour-alternatives > a > div {
  margin-top: 6px;
}
.tour-alternatives > a > div ul {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  margin-top: 0;
}
.tour-alternatives > a > div ul li {
  font-size: 12px;
  line-height: 1.1em;
}
.tour-alternatives > a > div ul li:first-child:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f02b";
  font-size: 0.8em;
  color: #84a750;
  margin-right: 3px;
}
.tour-alternatives > a > div ul li:last-child {
  align-self: flex-end;
  color: #fff;
  background: #808080;
  padding: 6px;
  border-radius: 4px;
  letter-spacing: 0.5px;
}
.tour-alternatives > a > div h4,
.tour-alternatives > a > div h5 {
  text-transform: none;
}
.tour-alternatives > a > div p {
  font-size: 0.8rem;
}
.tour-alternatives > a > div p span {
  text-decoration: underline;
  text-underline-position: under;
}
.collectionFilterControls {
  margin: 24px 0 48px;
  display: flex;
  gap: 24px;
  align-items: stretch;
  justify-content: space-between;
  flex-wrap: nowrap;
}
@media (max-width: 1050px) {
  .collectionFilterControls {
    flex-direction: column;
    max-width: 580px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
}
.collectionFilterControls .collectionFilterButton {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  text-align: left;
  cursor: pointer;
  border-radius: 7px;
  border: 2px solid #b7b7b7;
  background: #ffffff;
  padding: 18px 21.6px 18px 43.6px;
  position: relative;
  transition: background-color 160ms ease, box-shadow 160ms ease, border-color 160ms ease, transform 120ms ease;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0), 0 2px 4px -2px rgba(0, 0, 0, 0.08), 0 3px 8px -2px rgba(0, 0, 0, 0.06);
}
.collectionFilterControls .collectionFilterButton.is-off {
  background: #fff;
  border-color: rgba(102, 102, 102, 0.25);
  opacity: 0.65;
}
.collectionFilterControls .collectionFilterButton .checkbox {
  /* Circular overhanging status badge */
  position: absolute;
  top: -9.6px;
  left: -9.6px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #84a750;
  color: #ffffff;
  font-weight: 700;
  font-size: 18px;
  line-height: 1;
  border-radius: 50%;
  box-shadow: 0 2px 6px -2px rgba(0, 0, 0, 0.25), 0 4px 10px -2px rgba(0, 0, 0, 0.18);
  border: 3px solid #fff;
  transition: background-color 180ms ease, color 180ms ease, transform 160ms ease, box-shadow 180ms ease;
  z-index: 1;
}
.collectionFilterControls .collectionFilterButton .checkbox i.fas,
.collectionFilterControls .collectionFilterButton .checkbox i.far,
.collectionFilterControls .collectionFilterButton .checkbox i.fa-solid,
.collectionFilterControls .collectionFilterButton .checkbox i.fa-regular {
  font-size: 1.05rem;
  line-height: 1;
  color: #fff;
}
.collectionFilterButton:hover .collectionFilterControls .collectionFilterButton .checkbox,
.collectionFilterButton:focus .collectionFilterControls .collectionFilterButton .checkbox {
  transform: scale(1.05);
  box-shadow: 0 3px 8px -2px rgba(0, 0, 0, 0.3), 0 6px 14px -2px rgba(0, 0, 0, 0.22);
}
.collectionFilterControls .collectionFilterButton .labelText {
  font-family: 'Montserrat', sans-serif;
  color: inherit;
  display: block;
  line-height: 1.3em;
  font-size: clamp(0.9rem, 1.1rem, 1rem);
  letter-spacing: 0.15px;
}
.collectionFilterControls .collectionFilterButton .labelText strong {
  font-family: 'Alegreya Sans', sans-serif;
  color: #4d4d4d;
  display: block;
  font-weight: 600;
  font-size: 1.2rem;
  line-height: 1.1em;
  margin: 0 0 2px 0;
  letter-spacing: 0.3px;
  text-transform: none;
}
.collectionFilterControls .collectionFilterButton .labelText .hint {
  font-size: 0.85rem;
  display: block;
  margin-top: 0;
  line-height: 1.2em;
  font-weight: 400;
  color: #666666;
  letter-spacing: 0.15px;
}
@media (max-width: 480px) {
  .collectionFilterControls .collectionFilterButton .labelText strong {
    font-size: clamp(1rem, 1.2rem, 1.15rem);
    letter-spacing: 0.2px;
  }
  .collectionFilterControls .collectionFilterButton .labelText .hint {
    font-size: 0.8rem;
  }
}
.collectionFilterControls .collectionFilterButton.is-off .labelText strong {
  color: rgba(102, 102, 102, 0.65);
}
.collectionFilterControls .collectionFilterButton.is-off .labelText .hint {
  color: rgba(102, 102, 102, 0.5);
}
.collectionFilterControls .collectionFilterButton.is-off .checkbox {
  background: #999999;
  color: rgba(102, 102, 102, 0.42);
  box-shadow: 0 1px 3px -1px rgba(0, 0, 0, 0.18);
}
.collectionFilterControls .collectionFilterButton.is-off .checkbox i {
  color: rgba(102, 102, 102, 0.7);
}
.collectionFilterControls .collectionFilterButton[data-collection="iconic"]:not(.is-off) {
  border-color: #dae5cb;
}
.collectionFilterControls .collectionFilterButton[data-collection="iconic"]:not(.is-off):hover {
  border-color: #84a750;
}
.collectionFilterControls .collectionFilterButton[data-collection="iconic"]:not(.is-off) .checkbox {
  background: #84a750;
}
.collectionFilterControls .collectionFilterButton[data-collection="discovery"]:not(.is-off) {
  border-color: #d9bcc1;
}
.collectionFilterControls .collectionFilterButton[data-collection="discovery"]:not(.is-off):hover {
  border-color: #801e2f;
}
.collectionFilterControls .collectionFilterButton[data-collection="discovery"]:not(.is-off) .checkbox {
  background: #801e2f;
}
.collectionFilterControls .collectionFilterButton[data-collection="luxury"]:not(.is-off) {
  border-color: #c1bece;
}
.collectionFilterControls .collectionFilterButton[data-collection="luxury"]:not(.is-off):hover {
  border-color: #30275A;
}
.collectionFilterControls .collectionFilterButton[data-collection="luxury"]:not(.is-off) .checkbox {
  background: #30275A;
}
/* Flavour filters (article context) - 3x2 grid layout */
.article-content .collectionFilterControls {
  flex-wrap: wrap;
}
.article-content .collectionFilterControls .collectionFilterButton {
  flex: 1 1 calc(33.333% - (24px * 2 / 3));
}
/* Jump-to-flavour nav (beneath flavour filter, article context) */
.article-content .flavourJumpLinks {
  margin: 18px 0 0;
}
.article-content .flavourJumpLinks li.is-hidden {
  display: none;
}
/* Meta row (sort select + live count) */
.collectionFilterMetaRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 12px auto;
  max-width: 940px;
  flex-wrap: wrap;
}
.collectionFilterMetaRow .tourSummariesSelect {
  flex: 0 0 auto;
  min-width: 337px;
}
.collectionFilterMetaRow .collectionFilterCount {
  flex: 1 1 auto;
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.3em;
  color: rgba(102, 102, 102, 0.7);
}
@media (max-width: 640px) {
  .collectionFilterMetaRow {
    flex-direction: column;
    align-items: flex-start;
  }
  .collectionFilterMetaRow .collectionFilterCount {
    text-align: left;
    width: 100%;
  }
}
table {
  max-width: 100%;
  width: 100%;
  background: transparent;
  border-collapse: separate;
  border-spacing: 0;
  margin: 48px auto;
  /* global table cell styling */
  text-align: center;
  /* reduce sizes on smaller devices */
}
h2 + table,
h3 + table,
h4 + table,
h5 + table {
  margin-top: 0;
}
@media (max-width: 800px) {
  table {
    margin-top: 24px;
    margin-bottom: 24px;
  }
}
table td {
  border: 1px solid #e6e6e6;
  border-style: none solid solid none;
}
table td .specialOfferConditions {
  font-size: 0.8em;
}
table tr.headerRow,
table thead > tr:first-of-type {
  margin-bottom: 5px;
  border-bottom: 5px solid transparent;
  background: #767676;
}
table tr.headerRow th,
table thead > tr:first-of-type th {
  border: none;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.4px;
  font-size: clamp(14px, 2vw, 1rem);
}
table tr.headerRow th:first-of-type,
table thead > tr:first-of-type th:first-of-type {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
table tr.headerRow th:last-of-type,
table thead > tr:first-of-type th:last-of-type {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
table tbody {
  border-collapse: separate;
  border-spacing: 0;
}
table tbody:before {
  line-height: 4px;
  content: "\200C";
  display: block;
  font-size: 1px;
}
table tbody tr:first-of-type td {
  border-top-style: solid;
}
table tbody tr:first-of-type td:first-of-type {
  border-top-left-radius: 4px;
}
table tbody tr:first-of-type td:last-of-type {
  border-top-right-radius: 4px;
}
table tbody tr:last-of-type td:first-of-type {
  border-bottom-left-radius: 4px;
}
table tbody tr:last-of-type td:last-of-type {
  border-bottom-right-radius: 4px;
}
table tbody tr td:first-child {
  border-left-style: solid;
}
table th,
table td,
table tr {
  font-size: 0.89rem;
  line-height: 1.2rem;
}
table .booked * {
  font-size: 0.89rem;
  opacity: 0.725;
}
table .button {
  margin: 0;
  padding: 14px;
  background-color: #90b25e;
  border-color: #90b25e;
  -webkit-box-shadow: inset 0px -2px 20px 0px #718f44;
  -moz-box-shadow: inset 0px -2px 20px 0px #718f44;
  box-shadow: inset 0px -2px 20px 0px #718f44;
}
table th,
table td {
  padding: 12px;
  vertical-align: middle;
}
@media (max-width: 380px) {
  table th,
  table td {
    padding: 6px;
  }
}
table tbody tr {
  /* give it a white background as standard */
  background-color: #ffffff;
  /* alternate diff color background to make it easier to read*/
  /*************************/
  /* Styles for price notes */
  /*************************/
}
table tbody tr:nth-child(odd) {
  background-color: #f7f7f7;
}
table tbody tr .CTA {
  font-size: inherit;
  font-weight: bold;
  line-height: 1.2rem;
  color: #84a750;
  text-transform: uppercase;
}
table tbody tr .CTA:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  margin-left: 5px;
  content: "\f054";
}
@media (max-width: 850px) {
  table .button {
    max-width: 175px;
  }
}
@media (max-width: 500px) {
  table .button {
    padding-left: 8px;
    padding-right: 8px;
    min-width: 0;
  }
}
@media (max-width: 650px) {
  .prices table tr td,
  .prices table tr th {
    font-size: 13px;
  }
  .prices table tr td:nth-of-type(2),
  .prices table tr th:nth-of-type(2) {
    display: none;
  }
}
.tourComparisonTable {
  display: flex;
  margin: 48px auto;
}
.tourComparisonTable > div {
  flex-grow: 1;
  flex-basis: 0px;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr repeat(5, 80px);
  border-left: 1px solid #dddddd;
  font-size: 14px;
}
.tourComparisonTable > div:first-of-type {
  background-color: #fafafa;
}
.tourComparisonTable > div:first-of-type > div {
  font-weight: 600;
}
.tourComparisonTable > div:first-of-type {
  min-width: 200px;
  width: 200px;
  flex: 0;
}
.tourComparisonTable > div:first-of-type > div {
  text-align: left;
}
.tourComparisonTable > div:last-of-type {
  border-right: 1px solid #dddddd;
}
.tourComparisonTable > div > div {
  display: flex;
  padding: 0 24px;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  color: #666666;
  border-bottom: 1px solid #dddddd;
}
.tourComparisonTable > div > div a:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  display: inline-block;
  content: "\f105";
  margin-left: 3px;
}
.tourComparisonTable > div > div:first-child {
  font-weight: 600;
  position: relative;
}
.tourComparisonTable > div > div:first-child:before {
  display: block;
  content: "";
  height: 8px;
  background-color: blue;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.tourComparisonTable > div:not(:first-of-type) > div:first-child {
  padding: 32px 24px 24px;
}
.tourComparisonTable > div:first-of-type > div:first-child:before {
  background: #fafafa;
  border-top: 1px solid #dddddd;
}
.tourComparisonTable > div.iconic a {
  color: #84a750;
}
.tourComparisonTable > div.iconic > div:first-child:before {
  background: #84a750;
}
.tourComparisonTable > div.castles a {
  color: #30275A;
}
.tourComparisonTable > div.castles > div:first-child:before {
  background: #30275A;
}
.tourComparisonTable > div.ancient a {
  color: #801e2f;
}
.tourComparisonTable > div.ancient > div:first-child:before {
  background: #801e2f;
}
.tourComparisonTable > div.northernIreland a {
  color: #888888;
}
.tourComparisonTable > div.northernIreland > div:first-child:before {
  background: #888888;
}
@media (max-width: 1100px) {
  .tourComparisonTable {
    min-width: 100%;
    overflow: scroll;
  }
  .tourComparisonTable > div {
    min-width: 180px;
    font-size: 13px;
  }
  .tourComparisonTable > div > div {
    padding-left: 12px;
    padding-right: 12px;
  }
}
@media (max-width: 700px) {
  .tourComparisonTable > div {
    font-size: 12px;
    width: calc((100% - 200px) / 2.7);
    min-width: 120px;
  }
  .tourComparisonTable > div:first-of-type {
    width: 130px;
    min-width: 130px;
  }
}
@media (max-width: 500px) {
  .tourComparisonTable > div {
    width: calc((100% - 200px) / 2);
  }
}
.swipeButtons {
  display: none;
  gap: 24px;
  margin: 24px auto;
  justify-content: flex-end;
}
.swipeButtons.displayed {
  display: flex;
}
.swipeButtons span {
  display: block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  border-radius: 50%;
  background: lightgray;
  font-size: 25px;
}
.swipeButtons span,
.swipeButtons span svg.svg-inline--fa,
.swipeButtons span i.fas,
.swipeButtons span i.fab,
.swipeButtons span i.fal,
.swipeButtons span i.far {
  color: #666666;
  font-weight: 400;
}
/* 	PURPOSE OF THIS STYLE SHEET
	
	Tabs component - Material Design 3 inspired implementation
	Used for sections where website visitors can select one of multiple options 
	to customize the content they see, e.g. Tour Ireland (a) South to North or (b) North to South
*/
.tabs {
  background: #F9FAFB;
  margin: 0 auto;
  padding: 24px 10px;
}
@media (min-width: 1100px) {
  .tabs {
    border-radius: 4px;
    overflow: hidden;
  }
}
.tabs .tabs__content,
.tabs .tabs__selector,
.tabs .tabs__intro {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 1010px) {
  .tabs .tabs__content,
  .tabs .tabs__selector,
  .tabs .tabs__intro {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 1010px) {
  .tabs .tabs__content,
  .tabs .tabs__selector,
  .tabs .tabs__intro {
    padding-left: 0;
    padding-right: 0;
  }
}
.tabs .tabs__intro {
  padding: 0 24px;
  margin-bottom: 24px;
}
.tabs .tabs__content {
  padding: 24px;
  background-color: #fff;
}
@media (min-width: 1100px) {
  .tabs .tabs__content {
    border-radius: 0 0 4px 4px;
  }
}
@media (max-width: 800px) {
  .tabs .tabs__content {
    padding: 12px;
  }
}
.tabs .tabs__content > *:not(.selected) {
  display: none;
}
.tabs .tabs__content .photoGallery {
  margin-top: 24px;
  margin-bottom: 24px;
}
.tabs .tabs__selector {
  display: flex;
  position: relative;
  background-color: #fff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
@media (min-width: 1100px) {
  .tabs .tabs__selector {
    border-radius: 4px 4px 0 0;
  }
}
.tabs .tabs__selector > * {
  flex: 0 1 auto;
  min-width: 90px;
  min-height: 48px;
  padding: 0 24px;
  cursor: pointer;
  position: relative;
  background: transparent;
  border: none;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.tabs .tabs__selector > *,
.tabs .tabs__selector > * * {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 15px;
  line-height: 20px;
  letter-spacing: 0.1px;
  color: #49454F;
  text-transform: none;
}
.tabs .tabs__selector > *::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background-color: #84a750;
  transform: scaleX(0);
  transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
}
.tabs .tabs__selector > *:hover {
  background-color: rgba(132, 167, 80, 0.08);
}
.tabs .tabs__selector > *:focus-visible {
  outline: none;
  background-color: rgba(132, 167, 80, 0.12);
}
.tabs .tabs__selector > *.selected,
.tabs .tabs__selector > *.selected * {
  color: #84a750;
}
.tabs .tabs__selector > *.selected::after {
  transform: scaleX(1);
}
.tabs .tabs__selector > *:active {
  background-color: rgba(132, 167, 80, 0.12);
}
.tabs .tabs__selector > *:nth-child(n+5) {
  display: none;
}
@media (max-width: 800px) {
  .tabs .tabs__selector > * {
    min-width: 72px;
    padding: 0 16px;
    font-size: 13px;
  }
  .tabs .tabs__selector > * svg.svg-inline--fa {
    display: block;
    margin: 0 auto 4px;
    font-size: 20px;
  }
}
@media (max-width: 430px) {
  .tabs .tabs__selector > * {
    min-width: 60px;
    padding: 0 12px;
    font-size: 12px;
    line-height: 16px;
  }
}
@media (max-width: 500px) {
  .tabs .tabs__selector > * {
    flex: 1 1 0;
    min-width: 0;
  }
}
@media (max-width: 1100px) {
  .tabs {
    padding-left: 0;
    padding-right: 0;
  }
}
.tertiaryNav {
  overflow: hidden;
  /* icons can also be used inside inline elements. Below makes them display around correct size */
  padding: clamp(30px, 7.5vh, 110px) 0;
  padding: 20px 0;
}
.tertiaryNav > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tertiaryNav > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tertiaryNav > div:not(:last-child) {
  margin-bottom: 24px;
}
.tertiaryNav.wide > div {
  max-width: 1500px;
}
@media (max-width: 1500px) {
  .tertiaryNav.wide > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tertiaryNav.narrow > div {
  max-width: 720px;
}
@media (max-width: 720px) {
  .tertiaryNav.narrow > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tertiaryNav.tour-tinerary,
.tertiaryNav.tour-accommodation {
  background: #F9FAFB;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}
.tertiaryNav.tour-tinerary + .tertiaryNav.tour-tinerary,
.tertiaryNav.tour-tinerary + .tertiaryNav.tour-accommodation,
.tertiaryNav.tour-accommodation + .tertiaryNav.tour-tinerary,
.tertiaryNav.tour-accommodation + .tertiaryNav.tour-accommodation {
  border-top: none;
}
.tertiaryNav h1 svg.svg-inline--fa,
.tertiaryNav h2 svg.svg-inline--fa,
.tertiaryNav h3 svg.svg-inline--fa,
.tertiaryNav h4 svg.svg-inline--fa,
.tertiaryNav h5 svg.svg-inline--fa,
.tertiaryNav p svg.svg-inline--fa,
.tertiaryNav h1 i.fas,
.tertiaryNav h2 i.fas,
.tertiaryNav h3 i.fas,
.tertiaryNav h4 i.fas,
.tertiaryNav h5 i.fas,
.tertiaryNav p i.fas,
.tertiaryNav h1 i.fab,
.tertiaryNav h2 i.fab,
.tertiaryNav h3 i.fab,
.tertiaryNav h4 i.fab,
.tertiaryNav h5 i.fab,
.tertiaryNav p i.fab,
.tertiaryNav h1 i.fal,
.tertiaryNav h2 i.fal,
.tertiaryNav h3 i.fal,
.tertiaryNav h4 i.fal,
.tertiaryNav h5 i.fal,
.tertiaryNav p i.fal,
.tertiaryNav h1 i.far,
.tertiaryNav h2 i.far,
.tertiaryNav h3 i.far,
.tertiaryNav h4 i.far,
.tertiaryNav h5 i.far,
.tertiaryNav p i.far {
  font-size: inherit;
}
.tertiaryNav.startsDefinedNewSection > div:first-of-type:before {
  display: block;
  content: "";
  width: 95%;
  margin: 0 auto;
  height: 1.75em;
  border-top: 2px solid #c0d3a3;
}
@media (max-width: 800px) {
  .tertiaryNav.startsDefinedNewSection > div:first-of-type:before {
    height: 1em;
  }
}
.tertiaryNav.timeLine > div h2 {
  text-align: center;
}
.tertiaryNav.timeLine > div > div {
  display: grid;
  grid-template-columns: 1fr 55px 1fr;
  grid-column-gap: 24px;
  margin-top: 48px;
  width: 100%;
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}
.tertiaryNav.timeLine > div > div > div {
  min-height: 230px;
  padding: 48px;
  padding-top: 16.5px;
}
@media (max-width: 850px) {
  .tertiaryNav.timeLine > div > div {
    grid-template-columns: 55px 1fr;
    grid-template-areas: "number1 caption1" "number2 caption2" "number3 caption3" "number4 caption4" "number5 caption5" "number6 caption6" "number7 caption7" "number8 caption8" "number9 caption9" "number10 caption10" "number11 caption11" "number12 caption12" "number13 caption13" "number14 caption14" "number15 caption15" "number16 caption16" "number17 caption17" "number18 caption18";
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(6n+3),
  .tertiaryNav.timeLine > div > div > div:nth-child(6n+4) {
    display: none;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(1) {
    grid-area: caption1;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(2) {
    grid-area: number1;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(3) {
    grid-area: empty1;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(4) {
    grid-area: empty2;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(5) {
    grid-area: number2;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(6) {
    grid-area: caption2;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(7) {
    grid-area: caption3;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(8) {
    grid-area: number3;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(9) {
    grid-area: empty3;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(10) {
    grid-area: empty4;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(11) {
    grid-area: number4;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(12) {
    grid-area: caption4;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(13) {
    grid-area: caption5;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(14) {
    grid-area: number5;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(15) {
    grid-area: empty5;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(16) {
    grid-area: empty6;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(17) {
    grid-area: number6;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(18) {
    grid-area: caption6;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(19) {
    grid-area: caption7;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(20) {
    grid-area: number7;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(21) {
    grid-area: empty7;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(22) {
    grid-area: empty8;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(23) {
    grid-area: number8;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(24) {
    grid-area: caption8;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(25) {
    grid-area: caption9;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(26) {
    grid-area: number9;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(27) {
    grid-area: empty9;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(28) {
    grid-area: empty10;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(29) {
    grid-area: number10;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(30) {
    grid-area: caption10;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(31) {
    grid-area: caption11;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(32) {
    grid-area: number11;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(33) {
    grid-area: empty11;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(34) {
    grid-area: empty12;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(35) {
    grid-area: number12;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(36) {
    grid-area: caption12;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(37) {
    grid-area: caption13;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(38) {
    grid-area: number13;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(39) {
    grid-area: empty13;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(40) {
    grid-area: empty14;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(41) {
    grid-area: number14;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(42) {
    grid-area: caption14;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(43) {
    grid-area: caption15;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(44) {
    grid-area: number15;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(45) {
    grid-area: empty15;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(46) {
    grid-area: empty16;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(47) {
    grid-area: number16;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(48) {
    grid-area: caption16;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(49) {
    grid-area: caption17;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(50) {
    grid-area: number17;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(51) {
    grid-area: empty17;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(52) {
    grid-area: empty18;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(53) {
    grid-area: number18;
  }
  .tertiaryNav.timeLine > div > div > div:nth-child(54) {
    grid-area: caption18;
  }
}
@media (max-width: 510px) {
  .tertiaryNav.timeLine > div > div > div {
    padding-left: 0;
    padding-right: 0;
  }
}
.tertiaryNav.timeLine > div > div > div:nth-child(3n+2) {
  padding: 0;
  position: relative;
  min-height: 55px;
}
.tertiaryNav.timeLine > div > div > div:nth-child(3n+2):before {
  display: block;
  content: "";
  display: flex;
  height: 100%;
  border-right: 2px dashed #d8d8d8;
  width: 50%;
}
.tertiaryNav.timeLine > div > div > div:nth-child(3n+2):after {
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  border: 2px dashed #d8d8d8;
  color: #84a750;
  content: "1";
  font-size: 22px;
  font-weight: bold;
  line-height: 55px;
  text-align: center;
  background-color: #fff;
}
.tertiaryNav.timeLine > div > div > div:nth-child(5):after {
  content: "2";
}
.tertiaryNav.timeLine > div > div > div:nth-child(8):after {
  content: "3";
}
.tertiaryNav.timeLine > div > div > div:nth-child(11):after {
  content: "4";
}
.tertiaryNav.timeLine > div > div > div:nth-child(14):after {
  content: "5";
}
.tertiaryNav.timeLine > div > div > div:nth-child(17):after {
  content: "6";
}
.tertiaryNav.timeLine > div > div > div:nth-child(20):after {
  content: "7";
}
.tertiaryNav.timeLine > div > div > div:nth-child(23):after {
  content: "8";
}
.tertiaryNav.timeLine > div > div > div:nth-child(26):after {
  content: "9";
}
.tertiaryNav.timeLine > div > div > div:nth-child(29):after {
  content: "10";
}
.tertiaryNav.timeLine > div > div > div:nth-child(32):after {
  content: "11";
}
.tertiaryNav.timeLine > div > div > div:nth-child(35):after {
  content: "12";
}
.tertiaryNav.timeLine > div > div > div:nth-child(38):after {
  content: "13";
}
.tertiaryNav.timeLine > div > div > div:nth-child(41):after {
  content: "14";
}
.tertiaryNav.timeLine > div > div > div:nth-child(44):after {
  content: "15";
}
.tertiaryNav.timeLine > div > div > div:nth-child(47):after {
  content: "16";
}
.tertiaryNav.timeLine > div > div > div:nth-child(50):after {
  content: "17";
}
.tertiaryNav.timeLine > div > div > div:nth-child(53):after {
  content: "18";
}
.tertiaryNav.timeLine > div > div div:nth-last-child(2):before {
  display: none;
}
.tertiaryNav.timeLine > div > div p {
  font-size: 0.9rem;
}
.tertiaryNav .svg-map {
  max-width: 600px;
  margin: auto;
}
.tertiaryNav > div {
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tertiaryNav > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.tertiaryNav > div:not(:last-child) {
  margin-bottom: 24px;
}
.tertiaryNav > div > a[rel^="lightbox"],
.tertiaryNav > div > img,
.tertiaryNav > div > .photoGallery,
.tertiaryNav > div:not(.photoGallery) > div[about^="/"] {
  margin: 1rem auto;
}
.tertiaryNav > div > div {
  width: 92%;
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  padding: 20px 0;
  margin: 0 auto;
}
.tertiaryNav > div > div ul {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
}
.tertiaryNav > div > div ul li {
  font-size: 1.1rem;
  text-transform: uppercase;
  margin: 0;
  letter-spacing: 0.65px;
}
.tertiaryNav > div > div ul li a {
  padding: 10px 20px;
  color: inherit;
  display: block;
}
.tertiaryNav > div > div ul li.ourToursPromo {
  display: none;
}
@media (max-width: 600px) {
  .tertiaryNav > div > div ul li {
    font-size: 14px;
  }
  .tertiaryNav > div > div ul li a {
    padding: 7px 14px;
  }
}
.tertiaryNav ~ .layeredContent .tertiaryNav li.ourToursPromo {
  display: list-item;
}
/* FUNCTIONS OF THIS STYLESHEET

Toast notification system - temporary floating messages that appear at the bottom of the screen.
Used for feedback messages like "Link copied to clipboard!" that auto-dismiss after a few seconds.

Material Design 3 inspired implementation with smooth animations.

Created: February 2026

*/
.toast {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%) translateY(100px);
  background: #2c3e50;
  color: #ffffff;
  padding: 16px 24px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  font-size: 15px;
  font-weight: 500;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 10000;
  pointer-events: none;
}
.toast.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.toggle_trigger {
  position: relative;
  padding-right: 1.5em;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.toggle_trigger:after {
  display: block;
  content: "\f055";
  font-family: 'Font Awesome 5 Pro';
  font-weight: 900;
  font-size: 1.5em;
  position: absolute;
  right: 0;
  top: 0;
}
.toggle_trigger.active:after {
  content: "\f057";
  color: #84a750;
}
.toggle_container {
  position: relative;
  display: none;
}
.toggle_container:after {
  display: block;
  content: "";
  clear: both;
}
.toggleFixedCloserWrapper {
  position: absolute;
  overflow: hidden;
  top: 0;
  right: 65px;
}
.toggleFixedCloserWrapper .toggleFixedCloserBtn {
  position: fixed;
  top: 0;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 1em;
  cursor: pointer;
}
.toggleFixedCloserWrapper .toggleFixedCloserBtn * {
  color: rgba(240, 240, 240, 0.9);
  font-size: 18px;
}
@media (max-width: 800px) {
  .toggleFixedCloserWrapper .toggleFixedCloserBtn {
    padding: 0.75em;
  }
}
@media (max-width: 500px) {
  .toggleFixedCloserWrapper .toggleFixedCloserBtn {
    font-size: 15px;
  }
}
ul.toggleFeaturesList {
  clear: both;
}
ul.toggleFeaturesList > li {
  text-align: left;
  border-top: 1px solid #dcdcdc;
  border-left: 5px solid transparent;
  padding: 1rem;
}
ul.toggleFeaturesList > li:last-child {
  border-bottom: 1px solid #dcdcdc;
}
@media (max-width: 600px) {
  ul.toggleFeaturesList > li {
    padding: 0.7em 0.25em;
  }
}
ul.toggleFeaturesList > li.active {
  border-left-color: #e2191a;
}
ul.toggleFeaturesList > li .toggle_trigger:after {
  display: none;
}
ul.toggleFeaturesList > li .toggle_trigger:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f067";
  display: inline;
  vertical-align: middle;
  font-weight: 400;
  margin-right: 0.5em;
  font-size: 1.3em;
}
ul.toggleFeaturesList > li .toggle_trigger.active {
  color: #e2191a;
}
ul.toggleFeaturesList > li .toggle_trigger.active:before {
  content: "\f068";
}
ul.toggleFeaturesList > li .toggle_container {
  padding-top: 1em;
}
/* Minimal, mobile-first styles for the new filters UI. Keep neutral and scoped. */
.mit-tour-filters {
  margin: 0 0 1rem 0;
}
@media (max-width: 970px) {
  .mit-tour-filters,
  .tourSelectionArea > div:first-of-type > div.tourSelectionControls > .mit-tour-filters {
    width: 100%;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
  .mit-tour-filters aside.filters-drawer {
    max-width: 100%;
  }
}
.mit-tour-filters button.filters-toggle {
  width: 90%;
  max-width: 500px;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  background: #4d4d4d;
  color: #fff;
  text-align: center;
  border: none;
  font-size: 14px;
  font-weight: normal;
  margin: auto;
}
@media (min-width: 970px) {
  .mit-tour-filters button.filters-toggle {
    display: none;
  }
}
@media (max-width: 970px) {
  .mit-tour-filters button.filters-toggle {
    display: block;
  }
  .mit-tour-filters button.filters-toggle.sticky {
    top: 72px;
    z-index: 12;
    position: fixed;
  }
}
@media (max-width: 970px) {
  .tourSelectionArea > div:first-of-type > div.tourSelectionControls {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
/* Summary row */
.filters-summary-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  justify-content: space-between;
  margin: 0.5rem 0;
}
.filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  min-height: 2rem;
}
.chip {
  background: #e4ecd7;
  border: 1px solid #b4cb92;
  border-radius: 999px;
  padding: 0.25rem 0.5rem;
  font-family: 'Montserrat', sans-serif;
  color: #4d4d4d;
  font-size: 0.825rem;
}
.results-and-sort {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  font-family: 'Montserrat', sans-serif;
  color: #4d4d4d;
}
.results-and-sort select {
  margin-right: 0;
  padding: 12px;
  color: #666666;
}
/* Layout */
.filters-layout {
  display: block;
}
@media (min-width: 980px) {
  .filters-layout {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 1rem;
  }
}
.filters-drawer {
  display: block;
  border: 1px solid #e5e7eb;
  border-radius: 0.75rem;
  padding: 1rem;
  margin: 0.5rem 0;
  background: #fff;
}
@media (min-width: 980px) {
  .filters-drawer {
    position: sticky;
    top: 4.5rem;
    height: fit-content;
  }
}
@media (max-width: 970px) {
  .filters-drawer {
    display: none;
    position: static;
  }
  .filters-drawer.open {
    display: block;
  }
}
.row-actions {
  display: flex;
  gap: 0.5rem;
  justify-content: stretch;
  margin-top: 0.75rem;
}
.row-actions button {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  border: 1px solid #eaedf1;
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: normal;
  background: #ffffff;
  color: #666666;
  flex-basis: 50%;
  gap: 0.5rem;
  flex: 1;
}
.drawer-actions {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
  margin-top: 0.75rem;
}
.drawer-actions button {
  padding: 0.5rem 1rem;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: 0.5px;
  background: #84a750;
  color: #fff;
  width: 100%;
}
.drawer-actions button.clear {
  background: #f3f4f6;
  color: #374151;
}
.filter-card {
  margin-bottom: 1.5rem;
}
.filter-card h5 {
  margin: 0.25rem 0 0.5rem 0;
  background: #eaedf1;
  padding: 6px;
  border-radius: 4px;
  text-transform: none;
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.3px;
}
.filter-card .check {
  display: flex;
  align-items: center;
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  gap: 0.5rem;
  margin: 0.5rem 0;
  font-size: 13px;
}
.filter-card .check input[type=checkbox] {
  width: 1.1rem;
  height: 1.1rem;
  margin: 0 0.35rem 0 0;
  flex: 0 0 auto;
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #ccc;
  border-radius: 0.2rem;
  background: #fff;
  position: relative;
}
.filter-card .check input[type=checkbox]:checked {
  background: #84a750;
}
.filter-card .check input[type=checkbox]:checked::after {
  content: '\f00c';
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  color: #fff;
  font-size: 0.8rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.filter-card label {
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: 13px;
  margin-bottom: 0.25rem;
  display: block;
  font-weight: 500;
}
.filter-card label > select {
  display: block;
  margin-top: 5px;
}
.filter-card select {
  width: 100%;
  font-size: 14px;
  padding: 15px 10px ;
  color: #666666;
}
.filter-card label + label {
  display: block;
  margin-top: 12px;
}
.filter-card input[type=month] {
  margin-bottom: 1rem;
  color: #808080;
  border: 1px solid #808080;
  border-radius: 4px;
  font-size: 13px;
}
.filter-card .note {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  color: #808080;
  margin-top: 0.5rem;
}
.filter-card .group-discount-notification {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  margin-top: 0.75rem;
  padding: 0.5rem;
  background: #d8e4c6;
  border-left: 3px solid #84a750;
  border-radius: 4px;
  line-height: 1.4;
}
.filter-card .group-discount-notification::before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: '\f05a';
  margin-right: 0.5rem;
}
.filter-card #spacesChildrenWrap {
  margin-top: 0.5rem;
}
.filter-card .dual-range {
  width: 96%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  position: relative;
  height: 3.5rem;
  padding: 0 0.65rem;
  /* sizing + quick tweaks */
}
.filter-card .dual-range .slider-track {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 7px;
  background: #acacac;
  border-radius: 999px;
  z-index: 0;
}
.filter-card .dual-range .slider-range {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 7px;
  background: #a8c381;
  border-radius: 999px;
  z-index: 0;
}
.filter-card .dual-range input[type=range] {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 2rem;
  width: 100%;
  appearance: none;
  background: transparent;
  pointer-events: none;
  z-index: 1;
  margin: 0;
  padding: 0;
  /* Tracks (transparent because you draw your own) */
  /* WebKit thumb */
  /* Firefox thumb */
  /* (optional) active/hover polish */
  /* Disabled */
}
.filter-card .dual-range input[type=range]:focus {
  outline: none;
}
.filter-card .dual-range input[type=range]::-webkit-slider-runnable-track {
  height: 0.6rem;
  background: transparent;
}
.filter-card .dual-range input[type=range]::-moz-range-track {
  height: 0.6rem;
  background: transparent;
}
.filter-card .dual-range input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 50%;
  background-color: #84a750;
  /* outer green */
  background-image: radial-gradient(circle, #fff 42%, transparent 43%);
  /* inner white circle */
  border: 1px solid #6e8b43;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
  pointer-events: auto;
  cursor: pointer;
  margin-top: calc((1.35rem - 0.6rem) / -2);
}
.filter-card .dual-range input[type=range]::-moz-range-thumb {
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 50%;
  background-color: #84a750;
  /* outer green */
  background-image: radial-gradient(circle, #fff 42%, transparent 43%);
  /* inner white circle */
  border: 1px solid #6e8b43;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
  pointer-events: auto;
  cursor: pointer;
}
.filter-card .dual-range input[type=range]:hover::-webkit-slider-thumb,
.filter-card .dual-range input[type=range]:focus-visible::-webkit-slider-thumb,
.filter-card .dual-range input[type=range]:hover::-moz-range-thumb,
.filter-card .dual-range input[type=range]:focus-visible::-moz-range-thumb {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.filter-card .dual-range input[type=range]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.filter-card .dual-range input[type=range]:disabled::-webkit-slider-thumb,
.filter-card .dual-range input[type=range]:disabled::-moz-range-thumb {
  cursor: not-allowed;
}
.filter-card .dual-range .range-labels {
  font-family: 'Montserrat', sans-serif;
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: #6b7280;
  margin-left: -10px;
  margin-right: -10px;
}
/* No results */
.noToursFoundWarning {
  border: 1px solid #fecaca;
  background: #fff1f2;
  color: #7f1d1d;
  border-radius: 0.5rem;
  padding: 1rem;
}
/* Disabled filter checkbox states */
.filter-card .check input[type=checkbox]:disabled {
  opacity: 0.5;
  border-color: #d1d5db;
  background: #f3f4f6;
  cursor: not-allowed;
}
.filter-card .check:has(input[type=checkbox]:disabled) {
  opacity: 0.6;
  cursor: not-allowed;
}
.filter-card .check:has(input[type=checkbox]:disabled) .series-label {
  color: #9ca3af;
}
/* FUNCTIONS OF THIS STYLESHEET

1. Contains all style for any tour itineraries */
.tourBanner {
  background-color: transparent;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 400px;
}
.tourBanner > div:first-child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}
.tourBanner > div:first-child img,
.tourBanner > div:first-child picture {
  object-fit: cover;
  width: 100%;
  height: 100%;
  filter: brightness(74%);
}
.tourBanner > div:first-child > img:nth-of-type(2) {
  display: none;
}
@media (max-width: 500px) {
  .tourBanner > div:first-child > img:nth-of-type(2):last-child {
    display: block;
  }
  .tourBanner > div:first-child > img:first-of-type:nth-last-of-type(2) {
    display: none;
  }
}
.tourBanner > div:first-child > picture > img:nth-child(n) {
  display: block;
}
.tourBanner > div:nth-child(2) {
  position: relative;
  resize: vertical;
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1010px) {
  .tourBanner > div:nth-child(2) {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.internetExplorer .tourBanner,
.internetExplorer .tourBanner * {
  display: block;
}
.internetExplorer body > .tourBanner {
  min-height: 400px;
}
@media (max-width: 600px) {
  .tourBanner {
    min-height: 25vh;
  }
}
.tourBanner > div:nth-of-type(2) h1,
.tourBanner > div:nth-of-type(2) h2,
.tourBanner > div:nth-of-type(2) h3,
.tourBanner > div:nth-of-type(2) h4,
.tourBanner > div:nth-of-type(2) h5,
.tourBanner > div:nth-of-type(2) ul,
.tourBanner > div:nth-of-type(2) p {
  color: #ffffff;
}
.tourBanner > div:nth-of-type(2) > div:first-of-type {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.tourBanner > div:nth-of-type(2) > div:first-of-type h1,
.tourBanner > div:nth-of-type(2) > div:first-of-type h2 {
  margin-top: auto;
  margin-bottom: auto;
  width: 800px;
  max-width: 90%;
}
.tourBanner > div:nth-of-type(2) > div:first-of-type .tour-category-tag {
  margin-top: 12px;
}
@media (max-width: 1000px) {
  .tourBanner > div:nth-of-type(2) > div:first-of-type h1,
  .tourBanner > div:nth-of-type(2) > div:first-of-type h2 {
    text-align: center;
    margin: auto;
  }
  .tourBanner > div:nth-of-type(2) > div:first-of-type .tour-category-tag {
    margin-left: auto;
    margin-right: auto;
  }
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) *,
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) a,
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) svg.svg-inline--fa,
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) i.fas,
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) i.fab,
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) i.fal,
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) i.far {
  color: #ffffff;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2).topMSPs {
  display: flex;
  flex-wrap: wrap;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2).topMSPs > div {
  width: 48%;
  max-width: 225px;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2).topMSPs > div h5 {
  text-align: center;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) a.fullyBooked {
  font-size: 1.25rem;
  color: #ffffff;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  min-width: 175px;
  max-width: 300px;
  margin: auto;
  padding: 10px;
  background: #cf2b04;
  border: 3px dashed white;
  outline: 5px solid #cf2b04;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) a.fullyBooked > span {
  font-size: 0.62em;
  display: block;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) a.fullyBooked > span:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f054";
  vertical-align: top;
  margin-left: 3px;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) a.fullyBooked:nth-child(n) {
  margin-bottom: 50px;
  display: block;
}
.tourBanner > div:nth-of-type(2) > div:nth-of-type(2) a.fullyBooked:after {
  display: block;
  content: "";
  position: absolute;
  bottom: -30px;
  left: calc(50% - 25px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 25px 0 25px;
  border-color: #cf2b04 transparent transparent transparent;
}
.tourSideBenefitBlurbs {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(3, 1fr);
  grid-template-columns: repeat(3, 1fr);
}
.fold > div .tourSideBenefitBlurbs:last-child {
  margin-bottom: 0;
}
.fold > div .tourSideBenefitBlurbs:only-child {
  margin: 0;
}
.tourSideBenefitBlurbs > * {
  display: none;
}
.tourSideBenefitBlurbs > div,
.tourSideBenefitBlurbs > a {
  display: block;
}
.tourSideBenefitBlurbs > div:nth-child(n),
.tourSideBenefitBlurbs > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 850px) {
  .tourSideBenefitBlurbs {
    grid-gap: 12px;
  }
}
@media (max-width: 850px) {
  .tourSideBenefitBlurbs {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourSideBenefitBlurbs {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourSideBenefitBlurbs > div,
.internetExplorer .tourSideBenefitBlurbs > a {
  width: 33.33333333%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .tourSideBenefitBlurbs > div:nth-child(1),
.internetExplorer .tourSideBenefitBlurbs > a:nth-child(1),
.internetExplorer .tourSideBenefitBlurbs > div:nth-child(2),
.internetExplorer .tourSideBenefitBlurbs > a:nth-child(2),
.internetExplorer .tourSideBenefitBlurbs > div:nth-child(3),
.internetExplorer .tourSideBenefitBlurbs > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourSideBenefitBlurbs > div *,
.internetExplorer .tourSideBenefitBlurbs > a * {
  max-width: 100%;
}
@media (max-width: 800px) {
  .internetExplorer .tourSideBenefitBlurbs > div:nth-child(n),
  .internetExplorer .tourSideBenefitBlurbs > a:nth-child(n) {
    width: 100%;
  }
}
.tourSideBenefitBlurbs img {
  max-height: 250px;
  width: 100%;
}
@media (max-width: 500px) {
  .tourSideBenefitBlurbs img {
    max-height: 25vh;
  }
}
.tourItineraryAndMap {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 350px;
}
.fold > div .tourItineraryAndMap:last-child {
  margin-bottom: 0;
}
.fold > div .tourItineraryAndMap:only-child {
  margin: 0;
}
.tourItineraryAndMap > * {
  display: none;
}
.tourItineraryAndMap > div,
.tourItineraryAndMap > a {
  display: block;
}
.tourItineraryAndMap > div:nth-child(n),
.tourItineraryAndMap > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 800px) {
  .tourItineraryAndMap {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) {
  .tourItineraryAndMap {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourItineraryAndMap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourItineraryAndMap > div,
.internetExplorer .tourItineraryAndMap > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .tourItineraryAndMap > div:nth-child(1),
.internetExplorer .tourItineraryAndMap > a:nth-child(1),
.internetExplorer .tourItineraryAndMap > div:nth-child(2),
.internetExplorer .tourItineraryAndMap > a:nth-child(2),
.internetExplorer .tourItineraryAndMap > div:nth-child(3),
.internetExplorer .tourItineraryAndMap > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourItineraryAndMap > div *,
.internetExplorer .tourItineraryAndMap > a * {
  max-width: 100%;
}
.internetExplorer .tourItineraryAndMap > div:nth-child(even),
.internetExplorer .tourItineraryAndMap > a:nth-child(even) {
  width: 33.33333333%;
}
.internetExplorer .tourItineraryAndMap > div:nth-child(odd),
.internetExplorer .tourItineraryAndMap > a:nth-child(odd) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .tourItineraryAndMap > div:nth-child(n),
  .internetExplorer .tourItineraryAndMap > a:nth-child(n) {
    width: 100%;
  }
}
.tourItineraryAndMap > div:first-of-type > div {
  background: #fff;
  padding: 18px;
  border-radius: 7px;
  border: 1px solid #dddddd;
}
.tourItineraryAndMap > div:first-of-type > div > ul {
  margin: 0;
}
.tourItineraryAndMap > div:first-of-type > div > ul > li > a {
  font-size: 0.8rem;
  font-weight: bold;
  text-transform: uppercase;
}
.tourItineraryAndMap > div:first-of-type > div > ul > li > a:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f138";
  margin-right: 5px;
}
.tourItineraryAndMap > div:first-of-type > div h4.toggle_trigger {
  font-size: 1rem;
  font-weight: 600;
}
.tourItineraryAndMap > div:first-of-type > div h4.toggle_trigger:not(.active) {
  color: #666666;
}
.tourItineraryAndMap > div:first-of-type > div h4.toggle_trigger span {
  margin-left: 5px;
  font-weight: normal;
}
.tourItineraryAndMap > div:first-of-type > div .toggle_container p,
.tourItineraryAndMap > div:first-of-type > div .toggle_container ul,
.tourItineraryAndMap > div:first-of-type > div .toggle_container li {
  font-size: 0.95rem;
}
.tourItineraryAndMap > div:first-of-type > div p + ul.toggleFeaturesList {
  margin-top: 24px;
}
.tourItineraryAndMap > div:first-of-type > div p + ul.toggleFeaturesList li:last-of-type {
  border-bottom: none;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div {
  background: #fff;
  padding: 18px;
  border-radius: 7px;
  border: 1px solid #dddddd;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div > ul {
  margin: 0;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div > ul > li > a {
  font-size: 0.8rem;
  font-weight: bold;
  text-transform: uppercase;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div > ul > li > a:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f138";
  margin-right: 5px;
}
@media (min-width: 800px) {
  .tourItineraryAndMap > div:nth-of-type(2) > div > div {
    margin-bottom: 24px;
  }
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div img {
  margin-bottom: 24px;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div a {
  font-weight: bold;
  display: block;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div p {
  font-size: 0.9rem;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div ul li {
  font-size: 0.8rem;
}
.tourItineraryAndMap > div:nth-of-type(2) > div > div p + ul {
  margin-top: 24px;
}
@media (max-width: 800px) {
  .tourItineraryAndMap > div:nth-of-type(2) {
    clear: both;
    width: 100%;
    margin: 24px 0;
    box-sizing: border-box;
    display: grid;
    grid-gap: 24px;
    -ms-grid-columns: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
    grid-template-columns: auto 250px;
  }
  .fold > div .tourItineraryAndMap > div:nth-of-type(2):last-child {
    margin-bottom: 0;
  }
  .fold > div .tourItineraryAndMap > div:nth-of-type(2):only-child {
    margin: 0;
  }
  .tourItineraryAndMap > div:nth-of-type(2) > * {
    display: none;
  }
  .tourItineraryAndMap > div:nth-of-type(2) > div,
  .tourItineraryAndMap > div:nth-of-type(2) > a {
    display: block;
  }
  .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(n),
  .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(n) {
    -ms-grid-column-span: span 1;
    grid-column: span 1;
  }
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-left: auto;
    margin-right: auto;
  }
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div,
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a {
    width: 50%;
    display: block;
    padding-left: 12px;
    padding-right: 12px;
  }
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(1),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(1),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(2),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(2),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(3),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(3) {
    flex-grow: 1;
  }
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div *,
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a * {
    max-width: 100%;
  }
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(even),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(even) {
    width: 33.33333333%;
  }
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(odd),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(odd) {
    width: 66.66666667%;
  }
  .tourItineraryAndMap > div:nth-of-type(2) > div:nth-of-type(2) > div {
    margin-bottom: 24px;
  }
}
@media (max-width: 800px) and (max-width: 800px) and (min-width: 600px) {
  .tourItineraryAndMap > div:nth-of-type(2) {
    grid-gap: 12px;
  }
}
@media (max-width: 800px) and (max-width: 600px) {
  .tourItineraryAndMap > div:nth-of-type(2) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 800px) and (max-width: 800px) {
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > div:nth-child(n),
  .internetExplorer .tourItineraryAndMap > div:nth-of-type(2) > a:nth-child(n) {
    width: 100%;
  }
}
.fold.itinerary {
  background: #F9FAFB;
}
.tourItinerary {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
}
.fold > div .tourItinerary:last-child {
  margin-bottom: 0;
}
.fold > div .tourItinerary:only-child {
  margin: 0;
}
.tourItinerary > * {
  display: none;
}
.tourItinerary > div,
.tourItinerary > a {
  display: block;
}
.tourItinerary > div:nth-child(n),
.tourItinerary > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 1000px) and (min-width: 870px) {
  .tourItinerary {
    grid-gap: 12px;
  }
}
@media (max-width: 870px) {
  .tourItinerary {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourItinerary {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourItinerary > div,
.internetExplorer .tourItinerary > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .tourItinerary > div:nth-child(1),
.internetExplorer .tourItinerary > a:nth-child(1),
.internetExplorer .tourItinerary > div:nth-child(2),
.internetExplorer .tourItinerary > a:nth-child(2),
.internetExplorer .tourItinerary > div:nth-child(3),
.internetExplorer .tourItinerary > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourItinerary > div *,
.internetExplorer .tourItinerary > a * {
  max-width: 100%;
}
@media (max-width: 1000px) {
  .internetExplorer .tourItinerary > div:nth-child(n),
  .internetExplorer .tourItinerary > a:nth-child(n) {
    width: 100%;
  }
}
.tourItinerary > div:first-of-type > div {
  display: none;
}
.tourItinerary > div:first-of-type > div:first-of-type {
  display: block;
}
.tourItinerary > div:first-of-type > div > div:nth-of-type(2) {
  display: none;
}
.tourItinerary > div:first-of-type > div.active {
  display: block;
}
.tourItinerary > div:first-of-type > div.active > div:nth-of-type(2) {
  display: block;
}
.tourItinerary > div:first-of-type > div > div {
  display: grid;
  clear: both;
  grid-gap: 6px;
  margin: 6px;
  grid-template-columns: repeat(2, 1fr);
}
.tourItinerary > div:first-of-type > div > div > a,
.tourItinerary > div:first-of-type > div > div > figure,
.tourItinerary > div:first-of-type > div > div > div,
.tourItinerary > div:first-of-type > div > div > img,
.tourItinerary > div:first-of-type > div > div > picture {
  width: 100%;
}
.tourItinerary > div:first-of-type > div > div > a,
.tourItinerary > div:first-of-type > div > div > figure,
.tourItinerary > div:first-of-type > div > div > div,
.tourItinerary > div:first-of-type > div > div > img,
.tourItinerary > div:first-of-type > div > div > picture,
.tourItinerary > div:first-of-type > div > div > a img,
.tourItinerary > div:first-of-type > div > div > figure img,
.tourItinerary > div:first-of-type > div > div > div img,
.tourItinerary > div:first-of-type > div > div > img img,
.tourItinerary > div:first-of-type > div > div > picture img,
.tourItinerary > div:first-of-type > div > div > a picture,
.tourItinerary > div:first-of-type > div > div > figure picture,
.tourItinerary > div:first-of-type > div > div > div picture,
.tourItinerary > div:first-of-type > div > div > img picture,
.tourItinerary > div:first-of-type > div > div > picture picture,
.tourItinerary > div:first-of-type > div > div > a picture img,
.tourItinerary > div:first-of-type > div > div > figure picture img,
.tourItinerary > div:first-of-type > div > div > div picture img,
.tourItinerary > div:first-of-type > div > div > img picture img,
.tourItinerary > div:first-of-type > div > div > picture picture img {
  max-height: none;
  width: 100%;
}
.tourItinerary > div:first-of-type > div > div > a.portrait,
.tourItinerary > div:first-of-type > div > div > figure.portrait,
.tourItinerary > div:first-of-type > div > div > div.portrait,
.tourItinerary > div:first-of-type > div > div > img.portrait,
.tourItinerary > div:first-of-type > div > div > picture.portrait {
  grid-row: span 2;
}
.tourItinerary > div:first-of-type > div > div > a.doubleWidth,
.tourItinerary > div:first-of-type > div > div > figure.doubleWidth,
.tourItinerary > div:first-of-type > div > div > div.doubleWidth,
.tourItinerary > div:first-of-type > div > div > img.doubleWidth,
.tourItinerary > div:first-of-type > div > div > picture.doubleWidth {
  grid-column: span 2;
}
@media (max-width: 800px) {
  .tourItinerary > div:first-of-type > div > div {
    grid-template-columns: 1fr 1fr;
  }
}
.tourItinerary > div:nth-of-type(2) ul.toggleFeaturesList {
  margin: 0;
}
.tourItinerary > div:nth-of-type(2) .toggle_container ul li:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  color: #84a750;
  font-size: 1em;
  margin-right: 5px;
  width: 20px;
  display: inline-block;
  text-align: center;
}
.tourItinerary > div:nth-of-type(2) .toggle_container ul li.accommodation:before {
  content: "\f236";
}
.tourItinerary > div:nth-of-type(2) .toggle_container ul li.meal:before {
  content: "\f2e7";
}
.tourItinerary > div:nth-of-type(2) .toggle_container ul li.attraction:before {
  content: "\f3ff";
}
.tourItinerary > div:nth-of-type(2) .toggle_container ul li a {
  font-size: 0.75em;
}
.tourDetails {
  margin: 24px auto;
  border-radius: 0;
  background: #F9FAFB;
  overflow: hidden;
  border-top: 5px solid #84a750;
}
.tourDetails > *,
.tourDetails ul.toggleFeaturesList {
  padding: 24px;
  margin: 0;
}
.tourDetails ul.toggleFeaturesList {
  padding-top: 12px;
}
.tourDetails ul.toggleFeaturesList > li:first-of-type {
  border-top: none;
}
.tourDetails h2,
.tourDetails h3,
.tourDetails ul.toggleFeaturesList > li .toggle_trigger {
  color: #4d4d4d;
}
.tourDetails > h2,
.tourDetails > h3 {
  display: block;
  background: #f0f2f5;
}
.tourDetails > h2 svg.svg-inline--fa,
.tourDetails > h3 svg.svg-inline--fa,
.tourDetails > h2 i.fas,
.tourDetails > h3 i.fas,
.tourDetails > h2 i.fab,
.tourDetails > h3 i.fab,
.tourDetails > h2 i.fal,
.tourDetails > h3 i.fal,
.tourDetails > h2 i.far,
.tourDetails > h3 i.far {
  font-size: 1em;
  color: inherit;
}
.fold.sampleItinerary {
  background: #F9FAFB;
}
.fold.sampleItinerary > div > div {
  background: #fff;
  border-radius: 4px;
  padding: 48px 24px;
}
.fold.sampleItinerary > div > div > div:first-child {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 24px;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 37.5%;
}
.fold > div .fold.sampleItinerary > div > div > div:first-child:last-child {
  margin-bottom: 0;
}
.fold > div .fold.sampleItinerary > div > div > div:first-child:only-child {
  margin: 0;
}
.fold.sampleItinerary > div > div > div:first-child > * {
  display: none;
}
.fold.sampleItinerary > div > div > div:first-child > div,
.fold.sampleItinerary > div > div > div:first-child > a {
  display: block;
}
.fold.sampleItinerary > div > div > div:first-child > div:nth-child(n),
.fold.sampleItinerary > div > div > div:first-child > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 650px) {
  .fold.sampleItinerary > div > div > div:first-child {
    grid-gap: 12px;
  }
}
@media (max-width: 650px) {
  .fold.sampleItinerary > div > div > div:first-child {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .fold.sampleItinerary > div > div > div:first-child {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div,
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a {
  width: 50%;
  display: block;
  padding-left: 12px;
  padding-right: 12px;
}
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div:nth-child(1),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a:nth-child(1),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div:nth-child(2),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a:nth-child(2),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div:nth-child(3),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div *,
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a * {
  max-width: 100%;
}
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div:nth-child(even),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a:nth-child(even) {
  width: 33.33333333%;
}
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > div:nth-child(odd),
.internetExplorer .fold.sampleItinerary > div > div > div:first-child > a:nth-child(odd) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .fold.sampleItinerary > div > div > div:first-child > div:nth-child(n),
  .internetExplorer .fold.sampleItinerary > div > div > div:first-child > a:nth-child(n) {
    width: 100%;
  }
}
.fold.sampleItinerary > div > div > div:first-child .pricingGuide {
  margin: 24px 0;
  background: #F9FAFB;
  padding: 24px;
  border-radius: 4px;
}
.fold.sampleItinerary > div > div > div:first-child .pricingGuide ul {
  margin-top: 12px;
}
.fold.sampleItinerary > div > div > div:first-child .pricingGuide .openModalInlineLink {
  font-size: 0.85em;
}
.fold.sampleItinerary > div > div > div:first-child .button {
  width: 100%;
  max-width: 350px;
  border-radius: 4px;
  margin: 0;
}
.fold.sampleItinerary > div > div > div:first-child .button:after {
  content: "\f105";
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  vertical-align: top;
  margin-left: 10px;
}
.fold.sampleItinerary > div > div > div:not(:first-child) {
  margin-top: 36px;
}
.fold.sampleItinerary > div > div .columns {
  margin: 0;
}
.fold.containsTourSelectionArea {
  padding: clamp(30px, 7.5vh, 110px) 0;
  padding-top: 24px;
  background: #F9FAFB;
}
.fold.containsTourSelectionArea > div {
  max-width: 1180px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1220px) {
  .fold.containsTourSelectionArea > div {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.fold.containsTourSelectionArea > div:not(:last-child) {
  margin-bottom: 24px;
}
.fold.containsTourSelectionArea > div:first-of-type > div:not(.textBox) {
  background: #fff;
  padding: 24px;
  border-radius: 4px;
}
.fold.containsTourSelectionArea > div:first-of-type > div:not(.textBox) > div {
  display: flex;
  align-items: center;
}
.fold.containsTourSelectionArea > div:first-of-type > div:not(.textBox) > div .tourDisplayInstructions {
  max-width: 400px;
}
.fold.containsTourSelectionArea > div:first-of-type > div:not(.textBox) > div > div:nth-child(2) {
  margin-left: 24px;
  min-width: 330px;
  text-align: center;
}
@media (max-width: 625px) {
  .fold.containsTourSelectionArea > div:first-of-type {
    margin-bottom: 0;
  }
  .fold.containsTourSelectionArea > div:first-of-type > div {
    padding-left: 12px;
    padding-right: 12px;
  }
  .fold.containsTourSelectionArea > div:first-of-type > div > div .tourDisplayInstructions {
    display: none;
  }
  .fold.containsTourSelectionArea > div:first-of-type > div > div > div:nth-child(2) {
    margin: auto;
    min-width: 0;
    width: calc(100% - 12px);
    max-width: 330px;
  }
  .fold.containsTourSelectionArea .tourSelectionArea {
    margin-top: 10px;
  }
}
@media (max-width: 400px) {
  .fold.containsTourSelectionArea .tourDisplayOptionsToggleSwitch > div {
    font-size: 13px;
    padding-left: 10px;
    padding-right: 10px;
    width: 100%;
  }
}
.tourSelectionArea {
  display: none;
  max-width: 100%;
}
@media (max-width: 970px) {
  .tourSelectionArea .desktopOnly {
    visibility: hidden;
  }
}
@media (max-width: 1000px) {
  .tourSelectionArea .desktopOnly {
    display: flex;
  }
}
.tourSelectionArea.selected {
  clear: both;
  width: 100%;
  margin: 24px 0;
  box-sizing: border-box;
  display: grid;
  grid-gap: 0;
  -ms-grid-columns: repeat(2, 1fr);
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: auto 380px;
  grid-template-columns: 380px auto;
}
.fold > div .tourSelectionArea.selected:last-child {
  margin-bottom: 0;
}
.fold > div .tourSelectionArea.selected:only-child {
  margin: 0;
}
.tourSelectionArea.selected > * {
  display: none;
}
.tourSelectionArea.selected > div,
.tourSelectionArea.selected > a {
  display: block;
}
.tourSelectionArea.selected > div:nth-child(n),
.tourSelectionArea.selected > a:nth-child(n) {
  -ms-grid-column-span: span 1;
  grid-column: span 1;
}
@media (max-width: 800px) and (min-width: 970px) {
  .tourSelectionArea.selected {
    grid-gap: 0;
  }
}
@media (max-width: 970px) {
  .tourSelectionArea.selected {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.internetExplorer .tourSelectionArea.selected {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
}
.internetExplorer .tourSelectionArea.selected > div,
.internetExplorer .tourSelectionArea.selected > a {
  width: 50%;
  display: block;
  padding-left: 0;
  padding-right: 0;
}
.internetExplorer .tourSelectionArea.selected > div:nth-child(1),
.internetExplorer .tourSelectionArea.selected > a:nth-child(1),
.internetExplorer .tourSelectionArea.selected > div:nth-child(2),
.internetExplorer .tourSelectionArea.selected > a:nth-child(2),
.internetExplorer .tourSelectionArea.selected > div:nth-child(3),
.internetExplorer .tourSelectionArea.selected > a:nth-child(3) {
  flex-grow: 1;
}
.internetExplorer .tourSelectionArea.selected > div *,
.internetExplorer .tourSelectionArea.selected > a * {
  max-width: 100%;
}
.internetExplorer .tourSelectionArea.selected > div:nth-child(odd),
.internetExplorer .tourSelectionArea.selected > a:nth-child(odd) {
  width: 33.33333333%;
}
.internetExplorer .tourSelectionArea.selected > div:nth-child(even),
.internetExplorer .tourSelectionArea.selected > a:nth-child(even) {
  width: 66.66666667%;
}
@media (max-width: 800px) {
  .internetExplorer .tourSelectionArea.selected > div:nth-child(n),
  .internetExplorer .tourSelectionArea.selected > a:nth-child(n) {
    width: 100%;
  }
}
.tourSelectionArea > div {
  padding: 24px;
  max-width: 100%;
}
.tourSelectionArea > div:first-of-type {
  padding: 0;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionOptOut {
  display: flex;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionOptOut > div {
  min-width: 40%;
  padding: 12px;
  border-radius: 4px 4px 0 0;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionOptOut > div:first-child {
  background: #fff;
  padding-left: 24px;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionOptOut > div h5 {
  font-size: 13px;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionOptOut > div a:after {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  vertical-align: top;
  margin-left: 3px;
  content: "\f054";
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls {
  padding-top: 24px;
  padding-bottom: 24px;
  max-width: 100%;
  border-radius: 4px;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls:nth-of-type(2) {
  border-top-left-radius: 0;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div {
  padding-left: 24px;
  padding-right: 24px;
  max-width: 100%;
  margin-bottom: 18px;
}
@media (max-width: 550px) {
  .tourSelectionArea > div:first-of-type > div.tourSelectionControls > div {
    padding-left: 12px;
    padding-right: 12px;
  }
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div p {
  font-size: 14px;
  margin-top: 0;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div h3,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div h4,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div h5 {
  margin: 0 0 10px 0;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.distinctSection {
  border-top: 1px solid #e6e6e6;
  padding-top: 18px;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton {
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h3,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h3,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h4,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h4,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h5,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h5 {
  line-height: 1em;
  display: flex;
  align-self: center;
  margin: 0;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h3 svg.svg-inline--fa,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h3 svg.svg-inline--fa,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h4 svg.svg-inline--fa,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h4 svg.svg-inline--fa,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h5 svg.svg-inline--fa,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h5 svg.svg-inline--fa,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h3 i.fas,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h3 i.fas,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h4 i.fas,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h4 i.fas,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h5 i.fas,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h5 i.fas,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h3 i.fab,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h3 i.fab,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h4 i.fab,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h4 i.fab,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h5 i.fab,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h5 i.fab,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h3 i.fal,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h3 i.fal,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h4 i.fal,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h4 i.fal,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h5 i.fal,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h5 i.fal,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h3 i.far,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h3 i.far,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h4 i.far,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h4 i.far,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton > h5 i.far,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton > h5 i.far {
  color: inherit;
  vertical-align: top;
}
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div.headingAndButton span,
.tourSelectionArea > div:first-of-type > div.tourSelectionControls > div .headingAndButton span {
  display: none;
}
.tourSelectionArea > div:nth-of-type(2) {
  padding: 24px;
  background: #F9FAFB;
}
@media (max-width: 970px) {
  .tourSelectionArea > div:nth-of-type(2) {
    padding-left: 0;
    padding-right: 0;
  }
}
.tourSelectionArea > div:nth-of-type(2) > div {
  display: grid;
  grid-template-columns: 1fr;
  overflow: hidden;
}
.tourSelectionArea > div:nth-of-type(2) > div:not(.filters-summary-row) {
  margin-top: 24px;
}
.tourSelectionArea .toggle_container {
  padding-top: 10px;
}
.tourSelectionArea .dateRange {
  display: flex;
  justify-content: space-between;
  align-content: center;
}
.tourSelectionArea .dateRange input {
  border: 1px solid #e6e6e6;
  border-radius: 5px;
  padding: 10px 15px;
  margin: 0 auto 6px;
  font-size: 14px;
  padding-left: 8px;
  padding-right: 8px;
  width: 45%;
  max-width: 45%;
}
.tourSelectionArea .dateRange input,
.tourSelectionArea .dateRange input * {
  cursor: pointer;
}
.tourSelectionArea .dateRange input:hover {
  background: #f8f8f8;
}
.tourSelectionArea .dateRange input.selected {
  background: #f8f8f8;
}
.tourSelectionArea .dateRange input label {
  text-align: right;
}
.tourSelectionArea .dateRange input::-webkit-clear-button {
  display: none;
  /* Hide the button */
  -webkit-appearance: none;
  /* turn off default browser styling */
}
.tourSelectionArea .dateRange input[type="date"]::-webkit-inner-spin-button,
.tourSelectionArea .dateRange input[type="date"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  display: none;
  visibility: hidden;
}
.tourSelectionArea .dateRange input[type="date"]:not(.has-value):before {
  content: attr(placeholder) !important;
  color: #aaa;
  margin-right: 0.5em;
  display: inline;
  width: 100%;
}
.tourSelectionArea .dateRange > div {
  padding: 10px;
  display: flex;
  align-self: center;
  color: #A5A5A5;
  max-width: 10%;
}
.tour-instance-prices {
  margin: 48px auto;
  border-radius: 0.75rem;
  border: 1px solid #e5e7eb;
  overflow: hidden;
  max-width: 800px;
}
.tourInstanceSummary {
  display: grid;
  position: relative;
  grid-template-columns: 80px 1fr 1fr;
  grid-template-areas: "image-area tour-summary-area cta-prices-area";
  padding: 24px;
  background: #fff;
}
.tourInstanceSummary:not(:last-of-type) {
  border-bottom: 1px solid #e5e7eb;
}
.tourInstanceSummary > div:first-of-type {
  grid-area: image-area;
}
.tourInstanceSummary > div:nth-of-type(2) {
  grid-area: tour-summary-area;
}
.tourInstanceSummary > div:nth-of-type(3) {
  grid-area: cta-prices-area;
}
@media (max-width: 350px) {
  .tourInstanceSummary {
    grid-template-columns: 75px auto;
  }
}
.tourInstanceSummary > div:first-of-type {
  position: relative;
}
.tourInstanceSummary > div:first-of-type img {
  width: 80px;
  height: 80px;
  margin: auto;
  border-radius: 0.375rem;
  overflow: hidden;
}
.tourInstanceSummary > div:first-of-type img.mobile-version {
  display: none;
}
@media (max-width: 671px) {
  .tourInstanceSummary > div:first-of-type img {
    overflow: hidden;
  }
  .tourInstanceSummary > div:first-of-type img img.desktop-version {
    display: none;
  }
  .tourInstanceSummary > div:first-of-type img img.mobile-version {
    display: block;
  }
}
.tourInstanceSummary > div:first-of-type .discount {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: #cf2b04;
  padding: 3px 0;
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem;
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 15px;
  color: #fff;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.6px;
  margin: 0;
  line-height: 1.3em;
}
.tourInstanceSummary > div:first-of-type .discount span {
  display: block;
  font-size: 12.5px;
  margin: 0;
  line-height: 1em;
  letter-spacing: 0;
}
.tourInstanceSummary > div:nth-of-type(2) {
  padding: 0 12px 12px 12px;
  position: relative;
}
.tourInstanceSummary > div:nth-of-type(2) > h4,
.tourInstanceSummary > div:nth-of-type(2) > h5 {
  font-size: 19.2px;
  margin: 0;
}
.tourInstanceSummary > div:nth-of-type(2) > h4 a,
.tourInstanceSummary > div:nth-of-type(2) > h5 a {
  color: inherit;
}
.tourInstanceSummary > div:nth-of-type(2) > h4 svg.svg-inline--fa,
.tourInstanceSummary > div:nth-of-type(2) > h5 svg.svg-inline--fa,
.tourInstanceSummary > div:nth-of-type(2) > h4 i.fas,
.tourInstanceSummary > div:nth-of-type(2) > h5 i.fas,
.tourInstanceSummary > div:nth-of-type(2) > h4 i.fab,
.tourInstanceSummary > div:nth-of-type(2) > h5 i.fab,
.tourInstanceSummary > div:nth-of-type(2) > h4 i.fal,
.tourInstanceSummary > div:nth-of-type(2) > h5 i.fal,
.tourInstanceSummary > div:nth-of-type(2) > h4 i.far,
.tourInstanceSummary > div:nth-of-type(2) > h5 i.far {
  color: inherit;
  font-size: inherit;
}
.tourInstanceSummary > div:nth-of-type(2) > h5 {
  text-transform: none;
}
.tourInstanceSummary > div:nth-of-type(2) p,
.tourInstanceSummary > div:nth-of-type(2) .groupTotalLine {
  font-size: 12px;
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  margin: 0;
  margin-bottom: 5px;
  line-height: 1.2em;
}
@media (max-width: 1300px) and (min-width: 950px) {
  .tourInstanceSummary > div:nth-of-type(2) p,
  .tourInstanceSummary > div:nth-of-type(2) .groupTotalLine {
    font-size: 14px;
  }
}
@media (max-width: 970px) and (min-width: 600px) {
  .tourInstanceSummary > div:nth-of-type(2) p,
  .tourInstanceSummary > div:nth-of-type(2) .groupTotalLine {
    font-size: 14px;
  }
}
.tourInstanceSummary > div:nth-of-type(2) .discount-reason {
  font-size: 12px;
  font-family: 'Montserrat', sans-serif;
  color: #cf2b04;
  font-weight: bold;
  text-underline-position: under;
  margin: 0;
}
@media (max-width: 1300px) and (min-width: 950px) {
  .tourInstanceSummary > div:nth-of-type(2) .discount-reason {
    font-size: 14px;
  }
}
@media (max-width: 970px) and (min-width: 600px) {
  .tourInstanceSummary > div:nth-of-type(2) .discount-reason {
    font-size: 14px;
  }
}
.tourInstanceSummary > div:nth-of-type(2) p:first-of-type {
  font-weight: 600;
  margin-top: 10px;
  text-transform: none;
  font-size: 14px;
  letter-spacing: 0.4px;
}
.tourInstanceSummary > div:nth-of-type(2) p:first-of-type a {
  text-decoration: none;
}
.tourInstanceSummary > div:nth-of-type(2) p.availabilityAdvice {
  color: #84a750;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 10.95px;
  background-color: #fff3cd;
  color: #856404;
  padding: 4px 8px;
  border-radius: 4px;
  display: inline-block;
}
.tourInstanceSummary > div:nth-of-type(2) p.availabilityAdvice:before {
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  content: "\f071";
  vertical-align: bottom;
  margin-right: 5px;
}
.tourInstanceSummary > div:nth-of-type(3) {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: right;
}
.tourInstanceSummary > div:nth-of-type(3) .price {
  color: #4d4d4d;
  font-weight: bold;
  letter-spacing: 0.75px;
  font-size: 18px;
}
.tourInstanceSummary > div:nth-of-type(3) .price.discounted {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  color: #cf2b04;
}
@media (min-width: 600px) {
  .tourInstanceSummary > div:nth-of-type(3) .price.discounted {
    gap: 8px;
  }
}
@media (max-width: 671px) {
  .tourInstanceSummary > div:nth-of-type(3) .price.discounted {
    align-items: flex-end;
  }
}
.tourInstanceSummary > div:nth-of-type(3) .price.discounted .originalPrice:before {
  content: "Was ";
}
.tourInstanceSummary > div:nth-of-type(3) .price.discounted .originalPrice {
  font-size: 10px;
  opacity: 0.7;
  vertical-align: middle;
  color: #666666;
  text-align: right;
  display: inline-block;
  margin-left: auto;
}
@media (max-width: 380px) {
  .tourInstanceSummary > div:nth-of-type(3) .price.discounted .originalPrice:after {
    clear: both;
    display: block;
    content: "";
  }
}
@media (max-width: 671px) {
  .tourInstanceSummary > div:nth-of-type(3) {
    margin-top: 24px;
    justify-content: flex-start;
  }
  .tourInstanceSummary > div:nth-of-type(3) > div {
    width: 100%;
  }
  .tourInstanceSummary > div:nth-of-type(3) > div > a {
    width: 100%;
    text-align: center;
  }
}
.tourInstanceSummary > div:nth-of-type(3) div {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.tourInstanceSummary > div:nth-of-type(3) div .CTA {
  text-transform: none;
  font-size: 13.125px;
  font-weight: bold;
  margin: 0;
  background-color: transparent;
  border: 1px solid #84a750;
  border-radius: 4px;
  color: #84a750;
  padding: 12px 24px;
  letter-spacing: 0.75px;
}
.tourInstanceSummary > div:nth-of-type(3) div .CTA:after {
  display: none;
}
@media (max-width: 671px) {
  .tourInstanceSummary > div:nth-of-type(3) div .CTA {
    margin-top: 24px;
  }
}
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container {
  align-self: flex-end;
  display: flex;
  flex-direction: row;
  margin-top: 24px;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 8px;
}
@media (max-width: 671px) {
  .tourInstanceSummary > div:nth-of-type(3) div .tis-share-container {
    bottom: 9.6px;
    right: 9.6px;
    gap: 4px;
  }
}
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: buttonface;
  width: 32px;
  height: 32px;
  padding: 0;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
}
@media (max-width: 671px) {
  .tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn {
    width: 28px;
    height: 28px;
    font-size: 13px;
  }
}
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn svg.svg-inline--fa,
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn i.fas,
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn i.fab,
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn i.fal,
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn i.far,
.tourInstanceSummary > div:nth-of-type(3) div .tis-share-container .tis-share-btn i.fad {
  font-size: inherit;
  font-weight: 300;
  color: #808080;
}
.tourInstanceSummary.booked {
  background-color: #eeeeee;
}
.tourInstanceSummary.booked img {
  filter: grayscale(100%);
  opacity: 0.35;
}
.tourInstanceSummary.booked > div:first-of-type .discount {
  display: none;
}
.tourInstanceSummary.booked > div:nth-of-type(3) .price {
  display: none;
}
.tourInstanceSummary.booked > div:nth-of-type(3) .tis-share-container {
  display: none;
}
.tourInstanceSummary.booked > div:nth-of-type(2) *,
.tourInstanceSummary.booked > div:nth-of-type(2) svg.svg-inline--fa,
.tourInstanceSummary.booked > div:nth-of-type(2) i.fas,
.tourInstanceSummary.booked > div:nth-of-type(2) i.fab,
.tourInstanceSummary.booked > div:nth-of-type(2) i.fal,
.tourInstanceSummary.booked > div:nth-of-type(2) i.far,
.tourInstanceSummary.booked > div:nth-of-type(2) a.CTA:nth-of-type(n) {
  color: lightgray;
}
.tourInstanceSummary.booked > div:nth-of-type(2) a.CTA:nth-of-type(2) {
  display: none;
}
.tourInstanceSummary.booked > div:nth-of-type(2) > div:first-of-type h5:first-of-type {
  font-size: 16px;
}
.tourInstanceSummary.booked > div:nth-of-type(2) > div:first-of-type h5:first-of-type:before {
  content: "Fully Booked - ";
  display: inline;
  text-transform: none;
  color: inherit;
  font-size: inherit;
}
.tourInstanceSummary.booked > div:nth-of-type(2) > div:nth-of-type(n+2) {
  justify-content: flex-end;
}
@media (min-width: 970px) and (max-width: 1100px) {
  .tourSelectionArea .tourInstanceSummary {
    grid-template-columns: 70px 1fr;
    grid-template-areas: "image-area tour-summary-area" "cta-prices-area cta-prices-area";
  }
  .tourSelectionArea .tourInstanceSummary > div:first-of-type img {
    margin-left: 0;
    width: 70px;
    height: 70px;
  }
  .tourSelectionArea .tourInstanceSummary > div:nth-of-type(3) {
    flex-direction: column;
    margin-top: 0;
  }
  .tourSelectionArea .tourInstanceSummary > div:nth-of-type(3) .price {
    position: absolute;
    top: 24px;
    right: 24px;
    text-align: right;
  }
  .tourSelectionArea .tourInstanceSummary > div:nth-of-type(3) .price {
    display: block;
    margin-left: 0;
    width: 100%;
  }
  .tourSelectionArea .tourInstanceSummary > div:nth-of-type(3) > div {
    width: 100%;
  }
  .tourSelectionArea .tourInstanceSummary > div:nth-of-type(3) > div .CTA {
    width: 100%;
    text-align: center;
  }
}
@media (max-width: 671px) {
  .tourInstanceSummary {
    grid-template-columns: 70px 1fr;
    grid-template-areas: "image-area tour-summary-area" "cta-prices-area cta-prices-area";
  }
  .tourInstanceSummary > div:first-of-type img {
    margin-left: 0;
    width: 70px;
    height: 70px;
  }
  .tourInstanceSummary > div:nth-of-type(3) {
    flex-direction: column;
    margin-top: 0;
  }
  .tourInstanceSummary > div:nth-of-type(3) .price {
    position: absolute;
    top: 24px;
    right: 24px;
    text-align: right;
  }
  .tourInstanceSummary > div:nth-of-type(3) .price {
    display: block;
    margin-left: 0;
    width: 100%;
  }
  .tourInstanceSummary > div:nth-of-type(3) > div {
    width: 100%;
  }
  .tourInstanceSummary > div:nth-of-type(3) > div .CTA {
    width: 100%;
    text-align: center;
  }
}
@media (max-width: 480px) {
  .tourInstanceSummary > div:nth-of-type(3) .price {
    position: static;
    text-align: left;
    margin-bottom: 9px;
  }
}
/* TEMP component: tour tabs styling – added 2025-10-14; remove or consolidate when migrated to design system */
.tourTabs {
  display: flex;
  gap: 1.5rem;
  /* Local border removed; baseline drawn on the fold wrapper below */
  border-bottom: none;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 0.5rem;
  position: relative;
  z-index: 0;
}
.tourTab {
  appearance: none;
  background: transparent;
  border: 0;
  margin: 0;
  padding: 1.25rem 0.5rem;
  font: inherit;
  color: #666666;
  letter-spacing: 0.25px;
  border-bottom: 2px solid transparent;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  position: relative;
  z-index: 1;
  /* ensure active underline sits above the baseline */
}
.tourTab[aria-selected="true"] {
  color: #111827;
  border-bottom-color: #84a750;
  font-weight: 600;
}
.tourTab:hover {
  color: #222;
}
.tourTab:focus-visible {
  outline: 2px solid #84a750;
  outline-offset: 2px;
  text-underline-position: under;
}
/* Hide non-active panels when JS applies [hidden] */
[data-tab-panel][hidden] {
  display: none !important;
}
/* Remove the default fold padding for the tab tops wrapper */
.fold[name="tour-tabs"] {
  padding-top: 0;
  padding-bottom: 0;
  border-bottom: 1px solid #e5e7eb;
  /* Make the tab tops sticky */
  position: sticky;
  top: 0;
  z-index: 11;
  background: #fff;
}
.fold[name="tour-tabs"] > div {
  padding-top: 0;
  padding-bottom: 0;
}
.fold[data-tab-panel="faqs"] .textBox h2,
.fold[data-tab-panel="hold-seats"] .textBox h2,
.fold[data-tab-panel="faqs"] .textBox h3,
.fold[data-tab-panel="hold-seats"] .textBox h3,
.fold[data-tab-panel="faqs"] .textBox h4,
.fold[data-tab-panel="hold-seats"] .textBox h4,
.fold[data-tab-panel="faqs"] .textBox h5,
.fold[data-tab-panel="hold-seats"] .textBox h5,
.fold[data-tab-panel="faqs"] .textBox p,
.fold[data-tab-panel="hold-seats"] .textBox p {
  text-align: left;
}
.fold[data-tab-panel="faqs"] .textBox h5,
.fold[data-tab-panel="hold-seats"] .textBox h5,
.fold[data-tab-panel="faqs"] .textBox h4,
.fold[data-tab-panel="hold-seats"] .textBox h4 {
  margin-top: 1.5rem;
}
.fold[data-tab-panel="faqs"] .textBox h5 + p,
.fold[data-tab-panel="hold-seats"] .textBox h5 + p,
.fold[data-tab-panel="faqs"] .textBox h4 + p,
.fold[data-tab-panel="hold-seats"] .textBox h4 + p {
  margin-top: 0.25rem;
}
/* ============================================================================
   TOUR CATEGORY STYLING
   ============================================================================
   Tour pages are categorized into collections (Iconic, Ancient, Castles, 
   Northern Ireland) with unique accent colors applied to key UI elements:
   - Navigation "Book Now" button
   - Tour category badge/tag
   - Contact area styling
   - Tour intro section border and icons
   
   Implementation: Iconic (green) is the default base style, with overrides
   only for Ancient (blue), Castles (purple), and Northern Ireland (orange).
   This minimizes CSS output by eliminating redundant color declarations.
   ============================================================================ */
/* -------------------------------------------------------------------------
   BASE TOUR PAGE STYLES (Applied to all tour categories)
   Default: Iconic Tours (Green accent)
   ------------------------------------------------------------------------- */
body[class*="tour-category-"] {
  /* Tour category badge/tag - default green */
  /* Contact area */
  /* Tour intro section: colored border and accent icons - default green */
}
body[class*="tour-category-"] .tour-category-tag {
  background: #84a750;
  padding: 11px 9px 9px 9px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: bold;
  color: #fff;
  display: block;
}
body[class*="tour-category-"] .contactArea {
  background: #ffffff;
}
body[class*="tour-category-"] .contactArea,
body[class*="tour-category-"] .contactArea a,
body[class*="tour-category-"] .contactArea ul li,
body[class*="tour-category-"] .contactArea svg.svg-inline--fa,
body[class*="tour-category-"] .contactArea i.fas,
body[class*="tour-category-"] .contactArea i.fab,
body[class*="tour-category-"] .contactArea i.fal,
body[class*="tour-category-"] .contactArea i.far {
  color: #666666;
}
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2):before {
  display: block;
  content: "";
  border-top: 7px solid #84a750;
}
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2) > div {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2) svg.svg-inline--fa,
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2) i.fas,
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2) i.fab,
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2) i.fal,
body[class*="tour-category-"] .tour-page-intro > div > div > div:nth-of-type(2) i.far {
  color: #84a750;
}
/* -------------------------------------------------------------------------
   CATEGORY-SPECIFIC COLOR OVERRIDES
   (Iconic tours use defaults above, no override needed)
   ------------------------------------------------------------------------- */
/* Ancient/Discovery Tours: Blue accent override */
body.tour-category-discovery .tour-category-tag {
  background: #801e2f;
}
body.tour-category-discovery .tour-page-intro > div > div > div:nth-of-type(2):before {
  border-top-color: #801e2f;
}
body.tour-category-discovery .tour-page-intro > div > div > div:nth-of-type(2) svg.svg-inline--fa,
body.tour-category-discovery .tour-page-intro > div > div > div:nth-of-type(2) i.fas,
body.tour-category-discovery .tour-page-intro > div > div > div:nth-of-type(2) i.fab,
body.tour-category-discovery .tour-page-intro > div > div > div:nth-of-type(2) i.fal,
body.tour-category-discovery .tour-page-intro > div > div > div:nth-of-type(2) i.far {
  color: #801e2f;
}
/* Castles/Luxury Tours: Purple accent override */
body.tour-category-luxury .tour-category-tag {
  background: #30275A;
}
body.tour-category-luxury .tour-page-intro > div > div > div:nth-of-type(2):before {
  border-top-color: #30275A;
}
body.tour-category-luxury .tour-page-intro > div > div > div:nth-of-type(2) svg.svg-inline--fa,
body.tour-category-luxury .tour-page-intro > div > div > div:nth-of-type(2) i.fas,
body.tour-category-luxury .tour-page-intro > div > div > div:nth-of-type(2) i.fab,
body.tour-category-luxury .tour-page-intro > div > div > div:nth-of-type(2) i.fal,
body.tour-category-luxury .tour-page-intro > div > div > div:nth-of-type(2) i.far {
  color: #30275A;
}
.travelguide h2 {
  font-size: 32px;
  line-height: 35.2px;
  vertical-align: middle;
  display: inline-block;
}
.travelguide h2 .destinationLabel {
  margin-right: -47px;
}
@media (max-width: 550px) {
  .travelguide h2 .destinationLabel {
    margin-right: -57px;
  }
}
.travelguide h2 .destinationLabel:before,
.travelguide h2 .destinationLabel:after,
.travelguide h2 .destinationLabel span {
  top: -4px;
}
@media (max-width: 550px) {
  .travelguide h2 .destinationLabel:before,
  .travelguide h2 .destinationLabel:after,
  .travelguide h2 .destinationLabel span {
    top: -2px;
  }
}
.travelguide h2 .destinationLabel:before,
.travelguide h2 .destinationLabel:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid white;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  position: relative;
}
.travelguide h2 .destinationLabel:before {
  z-index: 1;
  background: #69853f;
  left: 0;
}
.travelguide h2 .destinationLabel:after {
  z-index: 2;
  background: #84a750;
  left: -90px;
}
@media (max-width: 550px) {
  .travelguide h2 .destinationLabel:after {
    left: -80px;
  }
}
.travelguide h2 .destinationLabel span {
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid white;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  background: #9cba70;
  left: 10px;
  position: relative;
  z-index: 3;
}
.travelguide h2 .destinationLabel span,
.travelguide h2 .destinationLabel span svg.svg-inline--fa,
.travelguide h2 .destinationLabel span i.fas,
.travelguide h2 .destinationLabel span i.fab,
.travelguide h2 .destinationLabel span i.fal,
.travelguide h2 .destinationLabel span i.far {
  color: white;
  margin: 0;
}
.travelguide h2 .destinationLabel span svg.svg-inline--fa,
.travelguide h2 .destinationLabel span i.fas,
.travelguide h2 .destinationLabel span i.fab,
.travelguide h2 .destinationLabel span i.fal,
.travelguide h2 .destinationLabel span i.far {
  display: block;
  justify-self: center;
  align-self: center;
  text-align: center;
  height: 60%;
  width: 60%;
  font-size: 25px;
  line-height: 60%;
  line-height: 25px;
  margin: 20%;
}
@media (max-width: 550px) {
  .travelguide h2 .destinationLabel span {
    left: 4px;
  }
}
.intro .travelguide h2 {
  text-align: center;
}
.travelguide h3 {
  font-size: 29px;
}
.travelguide .distinctiveContent h2 {
  font-size: 32px;
  line-height: 35.2px;
  vertical-align: middle;
  display: inline-block;
}
.travelguide .distinctiveContent h2 .destinationLabel {
  margin-right: -47px;
}
@media (max-width: 550px) {
  .travelguide .distinctiveContent h2 .destinationLabel {
    margin-right: -57px;
  }
}
.travelguide .distinctiveContent h2 .destinationLabel:before,
.travelguide .distinctiveContent h2 .destinationLabel:after,
.travelguide .distinctiveContent h2 .destinationLabel span {
  top: -4px;
}
@media (max-width: 550px) {
  .travelguide .distinctiveContent h2 .destinationLabel:before,
  .travelguide .distinctiveContent h2 .destinationLabel:after,
  .travelguide .distinctiveContent h2 .destinationLabel span {
    top: -2px;
  }
}
.travelguide .distinctiveContent h2 .destinationLabel:before,
.travelguide .distinctiveContent h2 .destinationLabel:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid #F9FAFB;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  position: relative;
}
.travelguide .distinctiveContent h2 .destinationLabel:before {
  z-index: 1;
  background: #69853f;
  left: 0;
}
.travelguide .distinctiveContent h2 .destinationLabel:after {
  z-index: 2;
  background: #84a750;
  left: -90px;
}
@media (max-width: 550px) {
  .travelguide .distinctiveContent h2 .destinationLabel:after {
    left: -80px;
  }
}
.travelguide .distinctiveContent h2 .destinationLabel span {
  display: inline-block;
  vertical-align: middle;
  line-height: 47px;
  text-align: center;
  border: 5px solid #F9FAFB;
  border-radius: 50%;
  width: 57px;
  height: 57px;
  font-size: 22px;
  background: #9cba70;
  left: 10px;
  position: relative;
  z-index: 3;
}
.travelguide .distinctiveContent h2 .destinationLabel span,
.travelguide .distinctiveContent h2 .destinationLabel span svg.svg-inline--fa,
.travelguide .distinctiveContent h2 .destinationLabel span i.fas,
.travelguide .distinctiveContent h2 .destinationLabel span i.fab,
.travelguide .distinctiveContent h2 .destinationLabel span i.fal,
.travelguide .distinctiveContent h2 .destinationLabel span i.far {
  color: #F9FAFB;
  margin: 0;
}
.travelguide .distinctiveContent h2 .destinationLabel span svg.svg-inline--fa,
.travelguide .distinctiveContent h2 .destinationLabel span i.fas,
.travelguide .distinctiveContent h2 .destinationLabel span i.fab,
.travelguide .distinctiveContent h2 .destinationLabel span i.fal,
.travelguide .distinctiveContent h2 .destinationLabel span i.far {
  display: block;
  justify-self: center;
  align-self: center;
  text-align: center;
  height: 60%;
  width: 60%;
  font-size: 25px;
  line-height: 60%;
  line-height: 25px;
  margin: 20%;
}
@media (max-width: 550px) {
  .travelguide .distinctiveContent h2 .destinationLabel span {
    left: 4px;
  }
}
.intro .travelguide .distinctiveContent h2 {
  text-align: center;
}
.travelguide .travelguideRegionCards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 28.8px;
  margin-top: 24px;
}
.travelguide .travelguideRegionCard {
  background: #ffffff;
  border: 1px solid #dddddd;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.travelguide .travelguideRegionCard__imageLink {
  display: block;
  position: relative;
  color: #ffffff;
  text-decoration: none;
}
.travelguide .travelguideRegionCard__imageLink figure {
  margin: 0;
}
.travelguide .travelguideRegionCard__imageLink img {
  display: block;
  width: 100%;
  height: auto;
}
.travelguide .travelguideRegionCard__imageLink:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(77, 77, 77, 0.9), rgba(77, 77, 77, 0));
}
.travelguide .travelguideRegionCard__title,
.travelguide .travelguideRegionCard__arrow {
  position: absolute;
  bottom: 24px;
  z-index: 2;
}
.travelguide .travelguideRegionCard__title {
  left: 24px;
  right: 60px;
  font-size: 1.15rem;
  font-weight: bold;
  letter-spacing: 0.2px;
  line-height: 34px;
}
.travelguide .travelguideRegionCard__arrow {
  right: 24px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(77, 77, 77, 0.45);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
}
.travelguide .travelguideRegionCard__content {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.travelguide .travelguideRegionCard__label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #84a750;
  font-weight: bold;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.travelguide .travelguideRegionCard__label i {
  color: #84a750;
}
.travelguide .travelguideRegionCard__list {
  list-style: none;
  padding: 0;
  margin: 0 0 10px 0;
}
.travelguide .travelguideRegionCard__list li {
  margin: 0;
}
.travelguide .travelguideRegionCard__list a {
  font-size: 14px;
  padding: 0;
  color: #666666;
  text-decoration: none;
  display: block;
}
.travelguide .travelguideRegionCard__list a:hover,
.travelguide .travelguideRegionCard__list a:focus {
  color: #84a750;
}
@media (max-width: 650px) {
  .travelguide .travelguideRegionCard__list a {
    padding: 4px 0;
  }
}
.travelguide .travelguideRegionCard__allLink {
  color: #84a750;
  text-decoration: underline;
  text-underline-position: under;
  font-weight: normal;
  margin-bottom: 18px;
  align-self: flex-start;
}
.travelguide .travelguideRegionCard__allLink:hover,
.travelguide .travelguideRegionCard__allLink:focus {
  color: #4d4d4d;
}
.travelguide .travelguideRegionCard__services {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid #dcdcdc;
  display: flex;
  gap: 10px;
}
.travelguide .travelguideRegionCard__serviceLink {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #F9FAFB;
  color: #84a750;
  text-decoration: none;
  transition: transform 150ms ease, background 150ms ease, color 150ms ease;
}
.travelguide .travelguideRegionCard__serviceLink:hover,
.travelguide .travelguideRegionCard__serviceLink:focus {
  background: rgba(132, 167, 80, 0.12);
  color: #4d4d4d;
  transform: translateY(-1px);
}
.peopleAsk {
  border-radius: 7px;
  background: #F9FAFB;
  padding: 18px;
  box-shadow: none;
  border: 1px solid #dddddd;
  margin: 48px auto;
}
.travelguide .destinationProfile:nth-child(n) > .peopleAsk,
.destinationProfile:nth-child(n) > .peopleAsk {
  background: #fff;
  width: calc(100% - (10px * 2));
}
@media (min-width: 800px) {
  .travelguide .destinationProfile:nth-child(n) > .peopleAsk,
  .destinationProfile:nth-child(n) > .peopleAsk {
    margin-right: auto  ;
    margin-left: 10px;
    width: calc(100% - (2 * 10px) - 350px - 24px - 20px);
  }
}
@media (min-width: 970px) {
  .travelguide .destinationProfile:nth-child(n) > .peopleAsk,
  .destinationProfile:nth-child(n) > .peopleAsk {
    width: 596px;
    margin-left: calc((100% - 970px) / 2);
    margin-right: calc((100% - 970px - (800px - 596px)) / 2);
  }
}
.travelguide .destinationProfile:nth-child(odd) > .peopleAsk,
.destinationProfile:nth-child(odd) > .peopleAsk {
  background: #F9FAFB;
}
.map-embed {
  display: block;
  border: 0;
}
/* Container for the "Ask us anything" widget */
.ask-us-anything {
  /* Breakpoint for responsive adjustments */
  /* Rounded corner size */
  /* Background color for the widget */
  /* Color used to mask out the surrounding shape cuts */
  /* Horizontal padding around content */
  /* Fixed width for the question column */
  /* Gap between grid columns */
  /* Maximum overall width of the widget */
  /* Height for the answer paragraph area */
  /* Diameter for the decorative cut-outs */
  overflow: hidden;
  background: #F9FAFB;
  border-radius: 20px;
  padding: 0 40px;
  max-width: 880px;
  margin: auto;
  /* Center horizontally */
  /* Responsive tweaks at smaller viewports */
  /* Inner section holding the question and answer */
}
@media (max-width: 800px) {
  .ask-us-anything {
    max-width: 700px;
    padding: 0 30px;
  }
}
.ask-us-anything section {
  position: relative;
  display: grid;
  /* Two-column layout: fixed question width + flexible answer */
  grid-template-columns: 260px 1fr;
  grid-gap: 35px;
  /* Hide headings and lists not used in this component */
  /* Apply vertical padding to direct h3 and p children */
  /* Question title styling */
  /* Answer paragraph area */
  /* Decorative circular cut-outs on both sides of the question area */
  /* Vertical offset for the cut-outs */
  /* Adjustments for mobile (stacked layout) */
}
.ask-us-anything section h1,
.ask-us-anything section h2,
.ask-us-anything section h4,
.ask-us-anything section h5,
.ask-us-anything section ol,
.ask-us-anything section ul {
  display: none;
}
.ask-us-anything section > h3,
.ask-us-anything section > p {
  padding-top: 40px;
  padding-bottom: 40px;
}
.ask-us-anything section > h3 {
  padding-right: 35px;
  border-right: 2px dashed #f0f2f5;
  font-family: 'Montserrat', sans-serif;
  color: #666666;
  font-size: clamp(15px, 2.5vw, 17px);
  line-height: 1.7em;
  /* Mixin for base typography */
  font-size: 1.5rem;
  line-height: 1.5;
  /* Watermark logo behind the question text */
}
.ask-us-anything section > h3 b,
.ask-us-anything section > h3 strong {
  font-weight: 600;
}
h1 + .ask-us-anything section > h3,
h2 + .ask-us-anything section > h3,
h3 + .ask-us-anything section > h3,
h4 + .ask-us-anything section > h3,
h5 + .ask-us-anything section > h3,
h6 + .ask-us-anything section > h3 {
  margin-top: 0;
}
.ask-us-anything section > h3:before {
  /* Label above the question */
  content: "Ask us anything";
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 12px;
  font-weight: bold;
  color: #84a750;
}
.ask-us-anything section > h3::after {
  content: "";
  position: absolute;
  top: 80%;
  left: 0%;
  width: 220px;
  height: 220px;
  background: url('https://www.myirelandtour.com/images/logos/MIT-Logo-LaTene-for-watermark.png') no-repeat center center;
  background-size: contain;
  opacity: 0.2;
  pointer-events: none;
  transform: translate(-50%, -50%) rotate(10deg);
  z-index: 0;
}
.ask-us-anything section > p {
  min-height: 300px;
  font-size: 1.15rem;
}
.ask-us-anything section:before,
.ask-us-anything section:after {
  content: "";
  display: block;
  border-radius: 50%;
  position: absolute;
  /* Position at the edge of the question column */
  left: 233.75px;
  width: 52.5px;
  height: 52.5px;
  background: #fff;
}
.ask-us-anything section:before {
  top: -36.75px;
}
.ask-us-anything section:after {
  bottom: -36.75px;
}
@media (max-width: 800px) {
  .ask-us-anything section {
    grid-template-columns: 1fr;
    grid-gap: 24px;
    padding: 20px;
    max-width: 700px;
    /* Reposition cut-outs for stacked layout */
  }
  .ask-us-anything section > h3 {
    padding-right: 0;
    padding-top: 24px;
    padding-bottom: 0;
    border-right: none;
    font-size: 1.2rem;
  }
  .ask-us-anything section > h3:after {
    /* Move watermark to the right side */
    top: 80%;
    left: 100%;
  }
  .ask-us-anything section p {
    min-height: 200px;
    padding-top: 0;
    font-size: 0.95rem;
    line-height: 1.6;
  }
  .ask-us-anything section:before,
  .ask-us-anything section:after {
    top: 123.75px;
    bottom: auto;
  }
  .ask-us-anything section:before {
    left: -64.3125px;
    right: auto;
  }
  .ask-us-anything section:after {
    right: -64.3125px;
    left: auto;
  }
}
/* Shared Travel Guide Section Header */
.travelguide-section-header {
  text-align: center;
  margin-bottom: 48px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.travelguide-section-header__eyebrow {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #84a750;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.travelguide-section-header__icon {
  width: 16px;
  height: 16px;
  stroke: currentColor;
}
.travelguide-section-header__title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 36px;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 18px 0;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .travelguide-section-header__title {
    font-size: 28px;
  }
}
.travelguide-section-header__title--large {
  font-size: 48px;
}
@media (max-width: 768px) {
  .travelguide-section-header__title--large {
    font-size: 36px;
  }
}
.travelguide-section-header__intro {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin: 0 auto 30px;
  max-width: 800px;
}
.travelguide-section-header__intro--large {
  font-size: 18px;
  margin-bottom: 36px;
}
.travelguide-section-header__divider {
  width: 80px;
  height: 3px;
  background: #84a750;
  margin: 0 auto;
}
.top10-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  max-width: 800px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .top10-grid {
    gap: 24px;
  }
}
.top10-card {
  display: flex;
  align-items: stretch;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  transition: all 0.3s ease;
  border: 1px solid #e5e5e5;
  position: relative;
}
.top10-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
  border-color: rgba(132, 167, 80, 0.3);
}
.top10-card:hover .top10-card__arrow {
  transform: translate(4px, -50%);
}
.top10-card:hover .top10-card__image-wrapper picture img {
  transform: scale(1.05);
}
.top10-card__image-wrapper {
  position: relative;
  flex-shrink: 0;
  width: 130px;
  overflow: hidden;
  background: #f5f5f5;
}
@media (max-width: 640px) {
  .top10-card__image-wrapper {
    width: 100px;
  }
}
.top10-card__image-wrapper picture {
  display: block;
  width: 100%;
  height: 100%;
}
.top10-card__image-wrapper picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.top10-card__number {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 36px;
  height: 36px;
  background: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 18px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  backdrop-filter: blur(8px);
}
@media (max-width: 640px) {
  .top10-card__number {
    width: 32px;
    height: 32px;
    font-size: 16px;
    top: 8px;
    left: 8px;
  }
}
.top10-card__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 18px 24px;
  flex-grow: 1;
  position: relative;
}
@media (max-width: 640px) {
  .top10-card__content {
    padding: 12px 18px;
  }
}
.top10-card__category {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #84a750;
  margin-bottom: 6px;
}
h3.top10-card__title,
.travelGuide h3.top10-card__title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 8px 0;
  line-height: 1.3;
}
@media (max-width: 640px) {
  h3.top10-card__title,
  .travelGuide h3.top10-card__title {
    font-size: 20px;
  }
}
.top10-card__description {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  color: #666666;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
}
@media (max-width: 640px) {
  .top10-card__description {
    font-size: 13px;
  }
}
.top10-card__icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  stroke: #84a750;
  margin-top: -1px;
}
.top10-card__arrow {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  stroke: #cccccc;
  transition: all 0.3s ease;
}
@media (max-width: 640px) {
  .top10-card__arrow {
    right: 12px;
    width: 20px;
    height: 20px;
  }
}
/* Special Interests Cards Section */
.special-interests {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 10px;
}
.special-interests__header {
  text-align: center;
  margin-bottom: 48px;
  max-width: 100%;
}
.special-interests__eyebrow {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #84a750;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.special-interests__icon-eyebrow {
  width: 16px;
  height: 16px;
  stroke: currentColor;
}
.special-interests__title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 36px;
  font-weight: 700;
  margin: 0 0 18px 0;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .special-interests__title {
    font-size: 28px;
  }
}
.special-interests__intro {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #666666;
  margin: 0 auto 30px;
  max-width: 800px;
}
.special-interests__divider {
  width: 80px;
  height: 3px;
  background: #84a750;
  margin: 0 auto;
}
.special-interests__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 980px) {
  .special-interests__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .special-interests__grid {
    grid-template-columns: 1fr;
  }
}
.special-interests__card {
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 20px;
  padding: 30px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
  position: relative;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
}
.special-interests__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(41, 41, 41, 0.25);
}
.special-interests__card:hover .special-interests__link svg {
  transform: translateX(4px);
}
.special-interests__card--cta {
  background: #84a750;
  border-color: #84a750;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 36px;
}
.special-interests__card--cta:hover {
  background: #769648;
  border-color: #769648;
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(41, 41, 41, 0.25);
}
.special-interests__icon {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  font-size: 24px;
}
.special-interests__icon--orange {
  background: rgba(255, 107, 53, 0.1);
  color: #ff6b35;
}
.special-interests__icon--blue {
  background: rgba(74, 144, 226, 0.1);
  color: #4a90e2;
}
.special-interests__icon--green {
  background: rgba(132, 167, 80, 0.15);
  color: #69853f;
}
.special-interests__icon--purple {
  background: rgba(155, 89, 182, 0.1);
  color: #9b59b6;
}
.special-interests__icon--teal {
  background: rgba(32, 178, 170, 0.1);
  color: #20b2aa;
}
.special-interests__card-title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.special-interests__card-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: #666666;
  margin: 0 0 18px 0;
  flex-grow: 1;
}
.special-interests__link {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #84a750;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
}
.special-interests__link svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}
.special-interests__cta-title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 12px 0;
  line-height: 1.3;
}
.special-interests__cta-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #ffffff;
  margin: 0 0 24px 0;
}
.special-interests__cta-button {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: #84a750;
  background: #ffffff;
  padding: 12px 28px;
  border-radius: 24px;
  transition: all 0.3s ease;
}
.special-interests__card--cta:hover .special-interests__cta-button {
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
/* Planning Hub Section */
.planning-hub {
  max-width: 1200px;
  margin: 0 auto;
}
.planning-hub .travelguide-section-header {
  margin-bottom: 60px;
}
.planning-hub__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-bottom: 72px;
}
@media (max-width: 1100px) {
  .planning-hub__cards {
    grid-template-columns: 1fr;
  }
}
.planning-hub__right-column {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.planning-hub__small-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
@media (max-width: 640px) {
  .planning-hub__small-cards {
    grid-template-columns: 1fr;
  }
}
.planning-hub__card {
  background: #ffffff;
  border: 1px solid #dddddd;
  border-radius: 20px;
  padding: 36px;
  box-shadow: 0 2px 8px rgba(41, 41, 41, 0.1);
}
.planning-hub__card--large {
  display: flex;
  flex-direction: column;
}
.planning-hub__eyebrow {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #84a750;
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.planning-hub__icon {
  width: 14px;
  height: 14px;
  stroke: currentColor;
  flex-shrink: 0;
}
.planning-hub__card-title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 18px 0;
  line-height: 1.3;
}
.planning-hub__card-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.6;
  color: #666666;
  margin: 0 0 18px 0;
}
.planning-hub__card--large .planning-hub__card-text {
  font-size: 15px;
}
.planning-hub__card-text:last-child {
  margin-bottom: 0;
}
.planning-hub__button {
  display: inline-block;
  background: #84a750;
  color: #ffffff;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 600;
  padding: 12px 28px;
  border-radius: 8px;
  text-decoration: none;
  margin-top: auto;
  transition: all 0.3s ease;
  align-self: flex-start;
}
.planning-hub__button:hover {
  background: #6e8b43;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(132, 167, 80, 0.3);
}
.planning-hub__link {
  display: inline-block;
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #84a750;
  text-decoration: none;
  margin-top: 18px;
  transition: color 0.3s ease;
}
.planning-hub__link:hover {
  color: #5b7337;
}
.planning-hub__stats {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 36px;
}
.planning-hub__stat {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 12px;
  border-bottom: 1px solid #e5e5e5;
}
.planning-hub__stat:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.planning-hub__stat-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  color: #666;
}
.planning-hub__stat-value {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #4d4d4d;
}
.planning-hub__card--small .planning-hub__subsection {
  margin-top: 36px;
  padding-top: 36px;
  border-top: 2px solid #e5e5e5;
}
.planning-hub__subsection-title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 18px 0;
}
.planning-hub__options {
  display: flex;
  flex-direction: row;
  gap: 18px;
}
@media (max-width: 640px) {
  .planning-hub__options {
    flex-direction: column;
  }
}
.planning-hub__option-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 4px 0;
}
.planning-hub__option-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  line-height: 1.5;
  color: #666666;
  margin: 0;
}
.planning-hub__footer {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
  padding-top: 48px;
  border-top: 2px solid #e5e5e5;
}
@media (max-width: 768px) {
  .planning-hub__footer {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.planning-hub__footer-title {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #4d4d4d;
  margin: 0 0 18px 0;
}
.planning-hub__footer-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.planning-hub__footer-list li {
  margin-bottom: 12px;
}
.planning-hub__footer-list li:last-child {
  margin-bottom: 0;
}
.planning-hub__footer-list a {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: #333;
  text-decoration: none;
  transition: color 0.3s ease;
  position: relative;
  padding-left: 18px;
  display: inline-block;
}
.planning-hub__footer-list a::before {
  content: '\f105';
  font-family: "Font Awesome 5 Pro";
  vertical-align: middle;
  font-weight: 900;
  position: absolute;
  left: 0;
  color: #84a750;
  font-size: 13px;
  transition: transform 0.3s ease;
}
.planning-hub__footer-list a:hover {
  color: #84a750;
}
.planning-hub__footer-list a:hover::before {
  transform: translateX(3px);
}
/* Tour Price Calculator */
.tour-price-calculator,
body.authored-content main article .article-body .article-content .tour-price-calculator {
  border-radius: 7px;
  background: #fff;
  padding: 0;
  box-shadow: none;
  border: 1px solid #dddddd;
  box-shadow: 0 0 6px rgba(41, 41, 41, 0.2);
  margin-top: 36px;
  margin-bottom: 24px;
  overflow: hidden;
}
.tour-price-calculator .calc-header,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-header {
  background: #84a750;
  padding: 42px 30px;
  margin: 0;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.tour-price-calculator .calc-header-text,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-header-text {
  position: relative;
  z-index: 1;
  flex: 1;
  padding-right: 80px;
}
.tour-price-calculator .calc-title,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-title,
.tour-price-calculator .calc-title:not(.toggle_trigger),
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-title:not(.toggle_trigger) {
  font-family: 'Montserrat', sans-serif;
  font-size: 24px;
  font-weight: 600;
  color: #fff;
  margin: 0 0 5px;
  line-height: 1.25;
  letter-spacing: -0.2px;
}
.tour-price-calculator .calc-subtitle,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-subtitle {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.75);
  margin: 0;
  line-height: 1.4;
}
.tour-price-calculator .calc-header-icon,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-header-icon {
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.25);
  box-shadow: 0 0 0 16px rgba(255, 255, 255, 0.1), 0 0 0 32px rgba(255, 255, 255, 0.07), 0 0 0 52px rgba(255, 255, 255, 0.04);
  z-index: 0;
}
.tour-price-calculator .calc-body,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-body {
  padding: 24px 30px;
}
.tour-price-calculator .calculator-controls,
body.authored-content main article .article-body .article-content .tour-price-calculator .calculator-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #dddddd;
}
@media (max-width: 800px) {
  .tour-price-calculator .calculator-controls,
  body.authored-content main article .article-body .article-content .tour-price-calculator .calculator-controls {
    flex-direction: column;
  }
}
.tour-price-calculator .calc-field,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-field {
  flex: 1;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.tour-price-calculator .calc-field-header,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-field-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.tour-price-calculator .calc-field-label,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-field-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.7px;
  text-transform: uppercase;
  color: #666666;
  display: flex;
  align-items: center;
  gap: 5px;
}
.tour-price-calculator .calc-icon,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-icon {
  color: #666666;
  flex-shrink: 0;
}
.tour-price-calculator .calc-field-value,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-field-value {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  color: #84a750;
  background: rgba(132, 167, 80, 0.1);
  border: 1px solid rgba(132, 167, 80, 0.3);
  border-radius: 50px;
  padding: 3px 10px;
  white-space: nowrap;
}
.tour-price-calculator .calc-slider-wrap,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-slider-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.tour-price-calculator input[type=range],
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range] {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 22px;
  background: transparent;
  outline: none;
  cursor: pointer;
  margin: 0;
  accent-color: #84a750;
}
.tour-price-calculator input[type=range]::-webkit-slider-runnable-track,
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range]::-webkit-slider-runnable-track {
  height: 3px;
  background: #dddddd;
  border-radius: 2px;
}
.tour-price-calculator input[type=range]::-webkit-slider-thumb,
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #84a750;
  border: 3px solid #fff;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  margin-top: -9.5px;
  transition: transform 120ms ease, box-shadow 120ms ease;
}
.tour-price-calculator input[type=range]::-moz-range-thumb,
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range]::-moz-range-thumb {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #84a750;
  border: 3px solid #fff;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  transition: transform 120ms ease, box-shadow 120ms ease;
}
.tour-price-calculator input[type=range]::-moz-range-track,
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range]::-moz-range-track {
  background: #dddddd;
  height: 3px;
  border-radius: 2px;
}
.tour-price-calculator input[type=range]:focus::-webkit-slider-thumb,
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range]:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 4px rgba(132, 167, 80, 0.2), 0 1px 4px rgba(0, 0, 0, 0.25);
  transform: scale(1.1);
}
.tour-price-calculator input[type=range]:focus::-moz-range-thumb,
body.authored-content main article .article-body .article-content .tour-price-calculator input[type=range]:focus::-moz-range-thumb {
  box-shadow: 0 0 0 4px rgba(132, 167, 80, 0.2), 0 1px 4px rgba(0, 0, 0, 0.25);
  transform: scale(1.1);
}
.tour-price-calculator .calc-slider-ticks,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-slider-ticks {
  display: flex;
  justify-content: space-between;
  padding: 0 11px;
}
.tour-price-calculator .calc-slider-ticks span,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-slider-ticks span {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  color: #666666;
  text-align: center;
}
.tour-price-calculator .calculator-result,
body.authored-content main article .article-body .article-content .tour-price-calculator .calculator-result {
  background: #fff;
  padding: 24px 0;
}
.tour-price-calculator .calc-range-label,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-range-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #666666;
  margin: 0 0 4px;
}
.tour-price-calculator .calc-range-value,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-range-value {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 50px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 18px;
  line-height: 1.1;
}
.tour-price-calculator .calc-stat-cards,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-cards {
  display: flex;
  gap: 12px;
  margin-bottom: 24px;
}
@media (max-width: 800px) {
  .tour-price-calculator .calc-stat-cards,
  body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-cards {
    flex-direction: column;
  }
}
.tour-price-calculator .calc-stat-card,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-card {
  flex: 1;
  border: 1px solid #dddddd;
  border-radius: 7px;
  padding: 12px 14px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.tour-price-calculator .calc-stat-icon,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-icon {
  flex-shrink: 0;
  margin-top: 2px;
  color: #84a750;
}
.tour-price-calculator .calc-stat-icon.calc-stat-icon--muted,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-icon.calc-stat-icon--muted {
  color: #666666;
}
.tour-price-calculator .calc-stat-card-body,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-card-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.tour-price-calculator .calc-stat-card-label,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-card-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.7px;
  text-transform: uppercase;
  color: #666666;
}
.tour-price-calculator .calc-stat-card-value,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-card-value {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #4d4d4d;
  line-height: 1.2;
}
.tour-price-calculator .calc-stat-card-value.calc-stat-card-value--text,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-stat-card-value.calc-stat-card-value--text {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #666666;
  line-height: 1.4;
}
.tour-price-calculator .calc-info-box,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-info-box {
  background: rgba(132, 167, 80, 0.08);
  border: 1px solid rgba(132, 167, 80, 0.25);
  border-radius: 7px;
  padding: 12px 14px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.tour-price-calculator .calc-info-box .calc-info-icon,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-info-box .calc-info-icon {
  flex-shrink: 0;
  margin-top: 1px;
  color: #84a750;
}
.tour-price-calculator .calc-info-box p,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-info-box p {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  color: #4d4d4d;
  margin: 0;
  line-height: 1.5;
}
.tour-price-calculator .calc-cta,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-cta {
  padding: 24px 0;
}
.tour-price-calculator .calc-cta-btn,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-cta-btn {
  display: block;
  width: 100%;
  text-align: center;
  background: #84a750;
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 700;
  padding: 14px 24px;
  border-radius: 7px;
  text-decoration: none;
  transition: background 150ms ease;
}
.tour-price-calculator .calc-cta-btn:hover,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-cta-btn:hover,
.tour-price-calculator .calc-cta-btn:focus,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-cta-btn:focus {
  background: #6e8b43;
  color: #fff;
  text-decoration: none;
}
.tour-price-calculator .calc-footer,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-footer {
  border-top: 1px solid #dddddd;
  padding: 10px 0;
  text-align: center;
}
.tour-price-calculator .calc-footer p,
body.authored-content main article .article-body .article-content .tour-price-calculator .calc-footer p {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #666666;
  margin: 0;
  opacity: 0.7;
}
.tag {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #84a750;
  margin-bottom: 0.35rem;
}
.tag svg.svg-inline--fa,
.tag i.fas,
.tag i.fab,
.tag i.fal,
.tag i.far,
.tag i.fad {
  color: inherit;
}
.interview-places-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: start;
  gap: 24px;
  margin: 36px 0;
}
@media (max-width: 640px) {
  .interview-places-grid {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }
}
@media (max-width: 400px) {
  .interview-places-grid {
    grid-template-columns: 1fr;
  }
}
.interview-place-card {
  background: #ffffff;
  border: 1px solid #dcdcdc;
  border-top: 3px solid #84a750;
  border-radius: 8px;
  padding: 18px 20.4px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.interview-place-card:hover {
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
  transform: translateY(-3px);
}
.interview-place-card h4 {
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 17px;
  color: #4d4d4d;
  margin: 0 0 8px 0;
  line-height: 1.3;
}
.interview-place-card p {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  line-height: 1.6;
  color: #666666;
  margin: 0;
}
.interview-place-card .interview-place-location {
  font-size: 11px;
  color: #8c8c8c;
  margin: 8px 0 0 0;
  border-top: 1px solid #dcdcdc;
  padding-top: 8px;
}
.interview-place-card .interview-place-location a {
  color: #84a750;
}
/* Trust Indicators Component
 * Three-column layout showcasing key trust signals with icons
 * Similar pattern to .threeMajorUSPs but with distinct styling
 */
.fold.containstrustIndicators {
  padding-top: 0;
  padding-bottom: 0;
}
.fold.containstrustIndicators > div {
  padding-top: 36px;
  padding-bottom: 36px;
}
.trustIndicators {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 36px;
}
@media (max-width: 840px) {
  .trustIndicators {
    grid-template-columns: 1fr;
    grid-gap: 24px;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
}
.trustIndicators > div {
  border-radius: 7px;
  background: #fff;
  padding: 18px;
  box-shadow: none;
  border: 1px solid #dddddd;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.trustIndicators > div svg.svg-inline--fa,
.trustIndicators > div i.fas,
.trustIndicators > div i.fab,
.trustIndicators > div i.fal,
.trustIndicators > div i.far,
.trustIndicators > div i.fad {
  display: block;
  font-size: 3rem;
  color: #84a750;
  margin-bottom: 18px;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 840px) {
  .trustIndicators > div svg.svg-inline--fa,
  .trustIndicators > div i.fas,
  .trustIndicators > div i.fab,
  .trustIndicators > div i.fal,
  .trustIndicators > div i.far,
  .trustIndicators > div i.fad {
    font-size: 2.5rem;
  }
}
.trustIndicators > div h4 {
  color: #4d4d4d;
  font-weight: 600;
  margin: 0;
  font-size: 1.15rem;
  text-align: center;
  text-transform: none;
}
@media (max-width: 840px) {
  .trustIndicators > div h4 {
    font-size: 1.1rem;
  }
}
.trustIndicators > div p {
  color: #666666;
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.5em;
  opacity: 0.85;
}
@media (max-width: 840px) {
  .trustIndicators > div p {
    font-size: 0.9rem;
  }
}
.alternativeOptionsArea {
  background: #F9FAFB;
  margin: 0 auto;
  padding: 24px 10px;
}
@media (max-width: 1100px) {
  .alternativeOptionsArea {
    padding-left: 0;
    padding-right: 0;
  }
}
.alternativeOptionsArea .alternativeOptions,
.alternativeOptionsArea .alternativeOptionsSelectorArea,
.alternativeOptionsArea .alternativeOptionsIntroArea {
  max-width: 990px;
  max-width: 970px;
  width: 100%;
  float: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 1010px) {
  .alternativeOptionsArea .alternativeOptions,
  .alternativeOptionsArea .alternativeOptionsSelectorArea,
  .alternativeOptionsArea .alternativeOptionsIntroArea {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.alternativeOptionsArea .alternativeOptionsIntroArea {
  padding: 0 24px;
  margin-bottom: 24px;
}
.alternativeOptionsArea .alternativeOptions {
  padding: 24px;
  background-color: #fff;
  border-radius: 0;
}
@media (max-width: 800px) {
  .alternativeOptionsArea .alternativeOptions {
    padding-left: 12px;
    padding-right: 12px;
  }
}
.alternativeOptionsArea .alternativeOptions > *:not(.selected) {
  display: none;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea {
  display: flex;
  align-items: center;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > * {
  width: 25%;
  padding: 12px 24px 19px 24px;
  border-radius: 0;
  font-weight: 900;
  font-size: 1rem;
  color: #989898;
  text-transform: uppercase;
  vertical-align: middle;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > * * {
  font-weight: 900;
  font-size: 1rem;
  color: #989898;
  text-transform: uppercase;
  vertical-align: middle;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > *:nth-child(n+5) {
  display: none;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > * > span {
  padding-bottom: 3px;
  text-align: center;
  display: block;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > *.selected {
  background-color: #fff;
  border-top: 3px solid #84a750;
  min-width: 25%;
  color: #84a750;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > *.selected * {
  color: #84a750;
}
.alternativeOptionsArea .alternativeOptionsSelectorArea > *:not(.selected) {
  flex-shrink: 1;
}
@media (max-width: 800px) {
  .alternativeOptionsArea .alternativeOptionsSelectorArea > * {
    padding-left: 12px;
    padding-right: 12px;
    text-align: center;
    font-size: 0.8rem;
    line-height: 1.2em;
  }
  .alternativeOptionsArea .alternativeOptionsSelectorArea > * * {
    text-align: center;
    font-size: 0.8rem;
    line-height: 1.2em;
  }
  .alternativeOptionsArea .alternativeOptionsSelectorArea > * svg.svg-inline--fa {
    display: block;
    margin: 0 auto 3px;
    font-size: 1.4em;
  }
}
@media (max-width: 430px) {
  .alternativeOptionsArea .alternativeOptionsSelectorArea > * {
    font-size: 3vw;
    padding: 6px;
  }
  .alternativeOptionsArea .alternativeOptionsSelectorArea > * span {
    font-size: 3vw;
    padding: 6px;
  }
}
.alternativeOptionsArea div.alternativeOptionsSelectorArea > a,
.alternativeOptionsArea div.alternativeOptionsSelectorArea > * {
  font-weight: 700;
  font-family: 'Alegreya Sans', sans-serif;
  letter-spacing: 0.75px;
  font-size: 1.15rem;
}
@media (max-width: 700px) {
  .alternativeOptionsArea div.alternativeOptionsSelectorArea > a,
  .alternativeOptionsArea div.alternativeOptionsSelectorArea > * {
    text-transform: none;
    font-size: 0.9rem;
  }
}
@media (max-width: 500px) {
  .alternativeOptionsArea div.alternativeOptionsSelectorArea {
    padding: 0;
  }
  .alternativeOptionsArea div.alternativeOptionsSelectorArea > a,
  .alternativeOptionsArea div.alternativeOptionsSelectorArea > *.selected {
    min-width: 30%;
  }
}
