/* Colors */
.TopContentWrapper {
  background-color: #114752;
  padding: 5em 5vw;
  overflow: hidden;
  position: relative; }
  @media only screen and (max-width: 1500px) {
    .TopContentWrapper {
      padding: 4.5em 5vw; } }
  @media only screen and (max-width: 1000px) {
    .TopContentWrapper {
      padding: 4em 5vw; } }
  @media only screen and (max-width: 640px) {
    .TopContentWrapper {
      padding: 3em 5vw; } }
  .TopContentWrapper .TopContent {
    max-width: 1400px;
    margin: 0 auto;
    display: block;
    text-align: center;
    position: relative;
    z-index: 3;
    color: #fff; }
    .TopContentWrapper .TopContent h1,
    .TopContentWrapper .TopContent h2,
    .TopContentWrapper .TopContent h3,
    .TopContentWrapper .TopContent h4,
    .TopContentWrapper .TopContent h5,
    .TopContentWrapper .TopContent h6,
    .TopContentWrapper .TopContent p {
      color: #fff; }
  .TopContentWrapper .dots {
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    width: 100%;
    height: auto;
    z-index: 1; }

.VisitorInfoWrapper {
  padding: 8.5em 5vw;
  overflow: hidden;
  position: relative;
  background: #f3f3f3; }
  @media only screen and (max-width: 1500px) {
    .VisitorInfoWrapper {
      padding: 5.5em 5vw; } }
  @media only screen and (max-width: 1000px) {
    .VisitorInfoWrapper {
      padding: 3.5em 5vw; } }
  .VisitorInfoWrapper .Map {
    position: absolute;
    top: -65px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    min-width: 100%;
    max-width: 300%;
    z-index: 1;
    height: auto; }
  .VisitorInfoWrapper .VisitorInfoContent {
    position: relative;
    z-index: 3; }
    .VisitorInfoWrapper .VisitorInfoContent.SmallVisitorsInfo {
      max-width: 1200px;
      margin-left: auto;
      margin-right: auto; }
    .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats {
      margin: clamp(30px, 4vw, 50px) 0 0 0;
      padding: 0;
      list-style: none;
      -webkit-column-count: 2;
      column-count: 2;
      -webkit-column-gap: 40px;
      column-gap: 40px; }
      @media only screen and (max-width: 1000px) {
        .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats {
          -webkit-column-count: 1;
          column-count: 1; } }
      .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li {
        display: inline-block;
        width: 100%;
        margin: 0 0 30px 0; }
        .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li > h3 {
          margin: 0 0 0.5em 0;
          text-transform: capitalize;
          letter-spacing: 0.025em;
          font-weight: 700;
          font-size: 1.5em; }
          @media only screen and (max-width: 1000px) {
            .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li > h3 {
              font-size: 1.3em; } }
        .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations {
          margin: 0;
          padding: 0;
          list-style: none;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -ms-flex-direction: column;
          flex-direction: column;
          gap: 12px; }
          .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li {
            border-radius: 5px;
            background: white;
            padding: clamp(25px, 5%, 30px) clamp(20px, 6%, 40px);
            width: 100%;
            margin: 0; }
            .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address {
              all: unset;
              -webkit-box-sizing: border-box;
              box-sizing: border-box;
              display: block;
              line-height: 1.4;
              font-size: 0.95rem; }
              .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address .LocName {
                font-weight: bold;
                font-family: 'Montserrat', sans-serif;
                letter-spacing: 0.025em;
                margin: 0 0 0.4em 0;
                font-size: 1.25em;
                color: #114752;
                text-wrap: balance; }
                @media only screen and (max-width: 1200px) {
                  .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address .LocName {
                    font-size: 1.1em; } }
              .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address .LocAddr {
                text-wrap: balance; }
                .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address .LocAddr:not(:last-child) {
                  margin-bottom: 0.6em; }
              .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address a {
                color: inherit;
                -webkit-text-decoration: #2c97b2 underline 0.5px;
                text-decoration: #2c97b2 underline 0.5px; }
                .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address a.color-primary, .VisitorInfoWrapper .VisitorInfoContent ul.VisitorInfoCats > li ul.CatLocations > li address a:hover {
                  color: #2c97b2; }
  .VisitorInfoWrapper .wave {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2; }

.DownloadWrapper {
  background-color: #114752;
  position: relative;
  overflow: hidden;
  padding: calc(6em + 7vw) 5vw 5em 5vw; }
  @media only screen and (max-width: 1000px) {
    .DownloadWrapper {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      padding: calc(4em + 7vw) 5vw 3em 5vw; } }
  @media only screen and (max-width: 700px) {
    .DownloadWrapper {
      padding: calc(3em + 7vw) 5vw 2.5em 5vw; } }
  .DownloadWrapper .Wave {
    position: absolute;
    left: 0;
    display: block;
    top: -1px;
    width: 100%;
    height: auto;
    z-index: 2; }
  .DownloadWrapper .dots {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: auto;
    display: block;
    z-index: 1;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .DownloadWrapper .DownloadContent {
    position: relative;
    z-index: 3;
    color: #fff;
    text-align: center; }
    .DownloadWrapper .DownloadContent h1,
    .DownloadWrapper .DownloadContent h2,
    .DownloadWrapper .DownloadContent h3,
    .DownloadWrapper .DownloadContent h4,
    .DownloadWrapper .DownloadContent h5,
    .DownloadWrapper .DownloadContent h6,
    .DownloadWrapper .DownloadContent p {
      color: #fff; }
    .DownloadWrapper .DownloadContent .BlueOutlineBtn {
      border-width: 3.5px;
      border-style: solid;
      border-color: #2c97b2;
      text-decoration: none;
      border-radius: 100px;
      padding: 20px;
      margin: 1em 0 0 0;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      gap: 1em;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: 1.5px;
      font-size: 20px;
      font-family: 'NimbuSanTBlaCon';
      font-weight: 900;
      text-align: center;
      min-width: 330px;
      max-width: 100%; }
      @media only screen and (max-width: 640px) {
        .DownloadWrapper .DownloadContent .BlueOutlineBtn {
          padding: 16px 10px;
          font-size: 18px; } }
      @media only screen and (max-width: 420px) {
        .DownloadWrapper .DownloadContent .BlueOutlineBtn {
          min-width: 0;
          width: 100%; } }
      .DownloadWrapper .DownloadContent .BlueOutlineBtn:hover {
        background-color: #2c97b2; }
      .DownloadWrapper .DownloadContent .BlueOutlineBtn img {
        -ms-flex-negative: 0;
        flex-shrink: 0; }

.FlipbookWrapper {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3em;
  margin-bottom: 3em; }

.PDFOutlineBtn {
  border-width: 3.5px;
  border-style: solid;
  border-color: #2c97b2;
  text-decoration: none;
  border-radius: 100px;
  padding: 20px;
  margin: 1em 0 0 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1em;
  color: #114752;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: 20px;
  font-family: 'NimbuSanTBlaCon';
  font-weight: 900;
  text-align: center;
  min-width: 330px;
  max-width: 100%; }
  @media only screen and (max-width: 640px) {
    .PDFOutlineBtn {
      padding: 16px 10px;
      font-size: 18px; } }
  @media only screen and (max-width: 420px) {
    .PDFOutlineBtn {
      min-width: 0;
      width: 100%; } }
  .PDFOutlineBtn:hover {
    background-color: #2c97b2;
    color: #fff; }
  .PDFOutlineBtn img {
    -ms-flex-negative: 0;
    flex-shrink: 0; }
