/*

$breakpoints: (
  small: 0px,
  medium: 640px,
  large: 1024px,
  xlarge: 1200px,
  xxlarge: 1440px,
);
*/
/* 62.5%    of 1024 */
/* 85%      of 1200 */
/* 83.33%   of 1440 */
@media (min-width: 640px) {
  .grid-container {
    max-width: 640px;
  }
}
@media (min-width: 1024px) {
  .grid-container {
    max-width: 1024px;
  }
}
@media (min-width: 1200px) {
  .grid-container {
    max-width: 1200px;
  }
}
@media (min-width: 1440px) {
  .grid-container {
    max-width: 1440px;
  }
}
/* --- Fonts --- */
@font-face {
  font-family: "Avenir Next LT W01 Regular";
  font-display: swap; /* or block, swap, fallback, optional */
  src: url("../fonts/c4691e94-080d-4452-8f9f-8b3db6b68d55.woff2") format("woff2"), url("../fonts/a1adabe6-efe5-40b7-b619-48111c8ff883.woff") format("woff");
}
@font-face {
  font-family: "Avenir Next LT W01 Italic";
  font-display: swap; /* or block, swap, fallback, optional */
  src: url("../fonts/f07f5ab2-8ecc-416d-afa7-b73dbea95907.woff2") format("woff2"), url("../fonts/3a03e3a3-baa3-4079-aa61-d2ec2a35bea3.woff") format("woff");
}
@font-face {
  font-family: "Avenir Next LT W01 Medium";
  font-display: swap; /* or block, swap, fallback, optional */
  src: url("../fonts/f5d4f93b-454a-43e0-9ae8-7f1271b5c0fd.woff2") format("woff2"), url("../fonts/72556e8c-c677-48d8-81ff-3eb8fc50033b.woff") format("woff");
}
@font-face {
  font-family: "Avenir Next LT W01 Bold";
  font-display: swap; /* or block, swap, fallback, optional */
  src: url("../fonts/b56355b0-7729-42a7-9f65-62c7211d078c.woff2") format("woff2"), url("../fonts/05537afc-e923-4df9-b365-71798fbd220d.woff") format("woff");
}
@font-face {
  font-family: "Helvetica Rounded LT W01 Bold";
  font-display: swap; /* or block, swap, fallback, optional */
  src: url("../fonts/97a9fecf-7aea-42d4-a440-4930f8f5f463.woff2") format("woff2"), url("../fonts/a2911332-2a58-407b-9a36-16b5a2578d81.woff") format("woff");
}
@font-face {
  font-family: "Helvetica Rounded LT W01 Black";
  font-display: swap; /* or block, swap, fallback, optional */
  src: url("../fonts/6f8c93ab-8471-44ad-b174-535bbfb4143d.woff2") format("woff2"), url("../fonts/db21eb82-5556-4c2f-a386-74077df41c1d.woff") format("woff");
}
/* --- Colors --- */
/* --- Fonts --- */
/* --- Body --- */
body {
  font-family: "Avenir Next LT W01 Regular", sans-serif;
  background-color: #fff;
  padding: 0px;
  margin: 0px;
}

#primary.content-area {
  font-family: "Avenir Next LT W01 Regular", sans-serif;
}

/* --- Headings --- */
h1 {
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.125;
}

h2 {
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 1.5rem;
  font-weight: normal;
  line-height: 1.125;
}

h2.subhead {
  color: #018369;
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.1rem;
}

h1.page-title {
  text-align: center;
}

/* --- Misc. --- */
.hide {
  display: none;
}

.underline {
  text-decoration: underline;
}

.child-policy {
  margin-top: 1rem;
  font-family: "Avenir Next LT W01 Medium", sans-serif;
}

.red {
  color: #cd0000;
}

/* --- Layout --- */
.grid-row {
  max-width: 1440px;
  display: table;
  margin: 0px auto;
  width: 100%;
}

.grid-row .cell {
  padding: 0px 1rem 0px 1rem;
}

.grid-row .cell.nopad {
  padding: 0px 0px 0px 0px;
}

@media (min-width: 1024px) {
  .grid-row .cell {
    padding: 0px 2rem 0px 2rem;
  }
}
@media (min-width: 1440px) {
  .grid-row .cell {
    padding: 0px 0px 0px 0px;
  }
}
/* --- Header --- */
#header .top-controls {
  display: flex;
  justify-content: space-between;
}

/* LOGO 371 x 150 = 0.404312668463612 */
#header {
  width: 100%;
  height: 60px; /* background-color: rgba( 255, 255, 255, .80); */
  background-image: url(../images/top-gradient.png);
  background-repeat: repeat-x;
  background-size: 1px 100%; /* linear-gradient(to top, rgba(255, 255, 255, .75), rgba(255, 255, 255, .95)); */
}

#header.fixed {
  position: fixed;
  z-index: 120;
  top: 0px;
  left: 0px;
}

#header.menu-open {
  z-index: 220;
}

#main.fixed-header {
  margin-top: 60px;
  z-index: 20;
}

#header .top-controls .top-logo .logo {
  width: 130px;
  height: 61px;
} /* width: 200px; height: 81px;  */
#header .top-controls .top-logo {
  padding: 0.5rem 0 0 0;
  flex: 1 150px;
}

#header .top-controls .giftcard-container {
  flex: 0 0 75px;
}

#header .top-controls .giftcard-container .giftcard {
  width: 75px;
  height: auto;
  display: table;
  float: right;
  padding: 10px 5px 0 0;
}

#header .top-controls .top-logo img {
  display: table;
  width: 100%;
  height: auto;
}

#header .top-controls .menu-toggle-container {
  flex: 0 0 100px;
}

#header .top-controls .menu-toggle-container .menu-toggle {
  display: table;
  float: right;
  padding: 10px 0 0 0;
}

#header .top-controls .menu-toggle a {
  display: table; /*background-color: $white;*/
  background-image: linear-gradient(to top, rgb(203, 243, 247), rgb(255, 255, 255));
  padding: 0.6rem 0.88rem;
  border-radius: 12.5px;
}

#header .grid-row .cell {
  padding: 0px 0px 0px 0px;
}

.holiday-giftcard .giftcard .e {
  fill: #781aff;
}

.holiday-giftcard .giftcard .e, .holiday-giftcard .giftcard .f, .holiday-giftcard .giftcard .g, .holiday-giftcard .giftcard .h, .holiday-giftcard .giftcard .i,
.holiday-giftcard .giftcard .j, .holiday-giftcard .giftcard .k, .holiday-giftcard .giftcard .l, .holiday-giftcard .giftcard .m, .holiday-giftcard .giftcard .n,
.holiday-giftcard .giftcard .o, .holiday-giftcard .giftcard .p, .holiday-giftcard .giftcard .q, .holiday-giftcard .giftcard .r, .holiday-giftcard .giftcard .s,
.holiday-giftcard .giftcard .t {
  stroke-width: 0px;
}

.holiday-giftcard .giftcard .f {
  fill: #790ff2;
}

.holiday-giftcard .giftcard .g {
  fill: #0ae26b;
}

.holiday-giftcard .giftcard .h {
  fill: #1dea00;
}

.holiday-giftcard .giftcard .i {
  fill: #166ed8;
}

.holiday-giftcard .giftcard .j {
  fill: #e2137a;
}

.holiday-giftcard .giftcard .k {
  fill: #990ff2;
}

.holiday-giftcard .giftcard .l {
  fill: #ff5af7;
}

.holiday-giftcard .giftcard .m {
  fill: #ef1dea;
}

.holiday-giftcard .giftcard .n {
  fill: #ffa20d;
}

.holiday-giftcard .giftcard .o {
  fill: #fff;
}

.holiday-giftcard .giftcard .p {
  fill: #e9ff10;
}

.holiday-giftcard .giftcard .q {
  fill: #f21947;
}

.holiday-giftcard .giftcard .r {
  fill: #f4ed06;
}

.holiday-giftcard .giftcard .s {
  fill: #00d2e8;
}

.holiday-giftcard .giftcard .t {
  fill: #0000ed;
}

.giftcard-container #giftcard .d {
  fill: #e2f7f2;
}

.giftcard-container #giftcard .e {
  fill: #1168bf;
}

.giftcard-container #giftcard .f {
  fill: #24c5d1;
}

#banner-top {
  width: 100%;
  background-color: #1d689c;
}

#banner-top .banner-inner {
  display: table;
  margin: 0px auto;
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 1.5rem;
  color: #fff;
  padding: 1rem 0 1rem 0;
}

#menu-top {
  position: relative;
}

#menu-top.nav-container {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: #007db7;
  top: 0px;
  left: 0px;
}

#menu-top.nav-container a {
  color: #fff;
  font-family: "Helvetica Rounded LT W01 Black";
  text-decoration: none;
}

#menu-top.nav-container li.current-menu-item a {
  color: #007db7;
}

#menu-top .menu-close {
  position: absolute;
  top: 4px;
  right: 8px;
  padding: 1px;
}

#menu-top .menu-close .menu-close-icon,
#menu-top .menu-close .menu-close-icon {
  display: table;
  float: left;
}

#menu-top .menu-close .menu-close-icon img {
  padding: 3px 5px 0 0;
}

#menu-top .menu-close img {
  height: 15px;
  width: 15px;
}

#menu-top .menu-close .close {
  text-transform: uppercase;
}

.menu-toggle {
  text-transform: uppercase;
  font-size: 14px;
  line-height: 1;
}

.menu-toggle .menu-label {
  display: inline-block;
}

.menu-toggle .icon-bars {
  display: inline-block;
  width: 20px;
  height: 17px;
  margin: 0 5px 0 0;
} /* 41 x 34 = .829 */
.menu-toggle .icon-bars img {
  width: 100%;
  height: auto;
  display: table;
  padding: 2px 0 0 0;
}

.menu-toggle a {
  font-family: "Helvetica Rounded LT W01 Black";
  text-decoration: none;
  color: #026493;
}

.nav-container ul {
  list-style-type: none;
  margin: 0px auto;
  display: table;
  padding: 2rem 0 1rem 0;
}

.nav-container ul li {
  margin: 5px 0 5px 0;
  padding: 5px;
  text-align: center;
  font-size: 1.125rem;
}

.nav-container ul li.current-menu-item {
  background-color: #fff;
  color: #007db7;
}

@media (min-width: 1024px) {
  #header .top-controls .top-logo .logo {
    width: 200px;
    height: 81px;
  }
  #header .grid-row .cell {
    padding: 0px 2rem 0px 2rem;
  }
  #header .top-controls .giftcard-container {
    flex: 0 0 100px;
    padding: 15px 10px 0 0;
  }
  #header .top-controls .giftcard-container .giftcard {
    width: 100px;
  }
  #header {
    height: 100px;
  }
  #header.shorter {
    height: 60px;
  }
  #header .top-controls .menu-toggle-container {
    flex: 0 0 150px;
    padding: 20px 10px 0 0;
  }
  .menu-toggle {
    font-size: 1.5rem;
  }
  #header.shorter .menu-toggle {
    font-size: 1.25rem;
  }
  .menu-toggle .icon-bars {
    width: 25px;
    height: 21px;
  } /* .84 */
  #header.shorter .menu-toggle .icon-bars {
    width: 19px;
    height: 16px;
  }
  .nav-container ul li {
    margin: 0.5rem 0 0.5rem 0;
    padding: 0.5rem;
    text-align: center;
    font-size: 1.5rem;
  }
  #header.shorter .top-controls .top-logo {
    padding: 0.25rem 0 0 0;
  }
  #header.shorter .top-controls .top-logo .logo {
    width: 148px;
    height: 60px;
  }
  #header.shorter .top-controls .giftcard-container {
    flex: 0 0 75px;
    padding: 5px 10px 0 0;
  }
  #header.shorter .top-controls .giftcard-container .giftcard {
    width: 75px;
  }
  #header.shorter .top-controls .menu-toggle {
    padding: 10px 0.5rem 0 0;
  }
  #header.shorter .top-controls .menu-toggle-container {
    flex: 0 0 150px;
    padding: 5px 10px 0 0;
  }
  #banner-top {
    position: fixed;
    height: 0px;
    top: 0px;
    left: 0px;
    z-index: 120;
    background-color: transparent;
  }
  #banner-top .banner-inner {
    font-size: 2rem;
    color: #c43bcf;
    padding: 1.5rem 0 0 0;
  }
}
@media (min-width: 1440px) {
  #header .grid-row .cell {
    padding: 0px 0px 0px 0px;
  }
}
/* --- Misc. --- */
.cell {
  border: none;
}

pre {
  background-color: #fff;
}

a {
  color: #007db7;
}

a:hover {
  color: #000;
}

.text-danger {
  color: #732114;
}

.text-success {
  color: #0a7447;
}

/* --- WordPress Images --- */
img.alignright {
  float: right;
  display: table;
  padding: 0 0 0.25rem 1rem;
}

img.alignleft {
  float: left;
  display: table;
  padding: 0 1rem 0.25rem 0;
}

img.aligncenter {
  clear: both;
  display: table;
  margin: 0px auto;
}

img.aligncenter.size-large {
  width: 100%;
  height: auto;
}

/* --- Featured Image --- */
#featured-image {
  width: 100%;
  background-image: url(../images/featured_image_bg.jpg);
  background-repeat: repeat-x;
  background-position: top;
  background-size: 100% 100%;
}

#featured-image img {
  width: 100%;
  height: auto;
  margin: 0px auto;
  display: table;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
}

/* --- Buttons --- */
.btn, .button {
  display: table;
  font-family: "Avenir Next LT W01 Regular", sans-serif;
  font-weight: 300;
  background-color: #fff;
  color: #000;
  padding: 0.6rem 1.2rem;
  border-radius: 14px;
  border: none;
  font-family: "Helvetica Rounded LT W01 Bold";
}

.btn.btn-primary, .button {
  background-color: #007db7;
  color: #fff;
}

a:hover.btn {
  color: #000;
}

a:hover.btn.btn-primary {
  color: #fff;
  background-color: #007db7;
}

.btn.readmore {
  margin: 0.5rem 0 0 0;
}

.btn.readmore.small {
  font-size: 0.9rem;
  font-weight: 400;
  padding: 0.25rem 0.75rem;
}

/* --- Drop Cap --- */
/* --- Headings --- */
.page-title-container.centered {
  display: table;
  margin: 0px auto;
}

/* --- Main --- */
#main {
  line-height: 1.5;
}

/* --- Cruise Packages --- */
.cruise-packages .package {
  margin: 1rem 0px;
  padding: 1rem 0px;
}

.cruise-packages .package .package-photo-container {
  background-color: #cbf3f7;
}

.cruise-packages .package .package-info-container {
  margin: 2.33rem 0 2.33rem 0;
}

.cruise-packages .package .package-photo-container img {
  display: table;
  width: 100%;
  height: auto;
}

.package h1.package-header, .package h2.package-header {
  color: #007db7;
  margin: 0px;
  padding: 0px;
}

.package h2.package-subhead, .package h3.package-subhead {
  margin: 5px 0 1rem 0;
  padding: 0px;
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.1rem;
}

.package-appx-time {
  font-family: "Helvetica Rounded LT W01 Bold";
  color: #018369;
}

.package-subhead {
  color: #cd0000;
}

.package .package-content {
  font-size: 1.075rem;
  line-height: 1.5;
  margin: 2rem 0 0 0;
}

.package .package-bottom,
.package .package-book {
  margin: 2rem 0 0 0;
}

.package .price {
  margin: 0 0 1rem 0;
}

.package .price .value-container,
.package-price.has-sale.has-label {
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.125rem;
}

.package-price.has-sale.has-label.regular-price {
  text-decoration: line-through;
}

.package-price.has-sale.sale-price.has-sale.has-label {
  color: #cd0000;
}

.package .price .value-container .regular-price {
  font-family: "Avenir Next LT W01 Regular", sans-serif;
  text-decoration: line-through;
}

.package .price .value-container .sale-price {
  color: red;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
}

.package .price .price-description,
.package .price .price-explain {
  font-size: 1rem;
  margin: 5px 0 0 0;
}

.package .package-terms h2.term-title {
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.125rem;
  margin: 0px;
  padding: 0px;
}

.package .package-terms p {
  margin: 0px;
  padding: 0px;
}

.package .package-terms ul {
  list-style-type: none;
  padding: 0px;
  margin: 0px;
}

.package .package-book a {
  text-decoration: none;
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.125rem;
}

.package .package-book a.btn.btn-primary {
  background-color: #822f89;
}

.package .package-book.book-special-occasion a,
#giftcards-homepage .giftcards-button-container a {
  display: table;
  margin: 0px auto 1rem auto;
}

.package .call-special-occasion {
  font-size: 1.125rem;
  font-family: "Helvetica Rounded LT W01 Bold";
  text-align: center;
}

.package .specialty-package-content p,
#giftcards-homepage .giftcard-content p {
  margin: 5px 0 0 0;
  padding: 0 0 0 0;
}

.specialty-cruise-packages .package-info {
  margin: 1rem 0 1rem 0;
  line-height: 1.5;
}

.specialty-cruise-packages .package-title h2 {
  margin: 0px;
  padding: 0px;
}

.boat-page-packages .package {
  text-align: center;
  margin: 1rem auto;
  padding: 1rem 0px;
}

.boat-page-packages .package .package-bottom {
  margin: 0 0 0 0;
}

.boat-page-packages .package .price {
  margin: 0.5rem 0 0.5rem 0;
}

.boat-page-packages .package .price .price-description,
.boat-page-packages .package .price .price-explain {
  margin: 0 0 0 0;
}

.boat-page-packages .package .package-book {
  margin: 1rem auto 1rem auto;
  display: table;
}

.glider-container .slide {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  max-height: 300px;
}

.cruise-packages .package .package-photo-container.glider-container .slide img,
.glider-container img {
  max-height: 100%;
  width: auto;
}

@media (min-width: 1024px) {
  .package .package-book a, .package .call-special-occasion {
    font-size: 1.5rem;
  }
  .boat-page-packages .package .package-book a {
    font-size: 1.25rem;
  }
  .package .package-book.book-special-occasion a,
  #giftcards-homepage .giftcards-button-container a {
    display: table;
    margin: 0px auto 1rem 0px;
  }
  .boat-page-packages .package .package-book.book-special-occasion a {
    margin: 0px auto 0.25rem 0px;
  }
  .package .call-special-occasion {
    text-align: left;
  }
  .boat-page-packages .package .call-special-occasion {
    text-align: center;
  }
  .boat-page-packages .package .call-special-occasion {
    font-size: 1.125rem;
  }
}
/* --- Booking Form --- */
#reservations-policy ul {
  list-style-type: none;
  margin: 1rem 0 1rem 0;
  padding: 0.25rem 1rem 0.25rem 1rem;
  border: 1px solid #822f89;
}

#reservations-policy ul li {
  margin: 1rem 0 1rem 0;
}

#book-a-cruise-container, #contact-info-container {
  max-width: 700px;
  display: table;
  margin: 0px auto;
}

#book-a-cruise-form-container {
  padding: 0.25rem 1rem;
  border: 1px solid #5df6ed;
}

.error_message_container {
  margin: 1rem 0 1rem 0;
  color: #732114;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
}

#input_1_1 .gchoice label {
  font-family: "Avenir Next LT W01 Medium", sans-serif;
}

#book-a-cruise-container .package-details.closed {
  display: none;
}

#book-a-cruise-container .package-details {
  margin: 1rem 0 1rem 0;
}

#book-a-cruise-container .package-details .appx-time,
#book-a-cruise-container .package-details .package-price {
  font-family: "Avenir Next LT W01 Medium", sans-serif;
}

#book-a-cruise-container .package-details .package-price .regular-price {
  font-family: "Avenir Next LT W01 Regular", sans-serif;
  text-decoration: line-through;
}

#book-a-cruise-container .package-details .package-price .sale-price {
  color: red;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
}

#book-a-cruise-container .package-details .appx-time,
#book-a-cruise-container .package-details .package-price-container {
  margin: 0 0 1rem 0;
}

#book-a-cruise-container .package-details-link {
  font-size: 12px;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
  display: inline-block;
  background-repeat: no-repeat;
  margin-left: 5px;
  padding: 3px 0px 3px 20px;
}

#book-a-cruise-container .package-details-link.arrow-up {
  background-image: url(../images/arrow.png);
  background-position: 5px 3px;
  background-size: 12px 12px;
}

#book-a-cruise-container .package-details-link.arrow-down {
  background-image: url(../images/arrow-down.png);
  background-position: 5px 5px;
  background-size: 12px 12px;
}

#book-a-cruise-container .package-details h2.term-title {
  font-size: 1rem;
  font-family: "Avenir Next LT W01 Medium", sans-serif;
  margin: 0px;
  padding: 0px;
}

#book-a-cruise-container .package-details .terms p {
  margin: 0px;
  padding: 0px;
}

#book-a-cruise-container .package-details .package_price1_description,
#book-a-cruise-container .package-details .package_price2_description,
#book-a-cruise-container .package-details .terms p {
  font-size: 0.8rem;
}

/* --- Contact Form --- */
#contact-info-container .contact-info {
  display: table;
  margin: 0px auto;
  text-align: center;
  line-height: 1.125;
}

#contact-info-container .contact-info .map-it {
  margin: 12px 0 5px 0;
  font-size: 13px;
  text-transform: uppercase;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
}

.contact-form-container {
  background-color: #defcff;
  padding: 0.5rem 1.5rem 1.5rem 1.5rem;
}

@media (min-width: 1024px) {
  .contact-form-container .gform_body .gform_fields .gfield {
    display: flex;
  }
  .contact-form-container .gform_body .gform_fields .gfield .gfield_label {
    flex: 0 1 120px;
  }
  .contact-form-container .gform_body .gform_fields .gfield .ginput_container {
    flex: 2 0 300px;
  }
  .contact-form-container .gform_body .gform_fields .gfield .ginput_container input[type=text],
  .contact-form-container .gform_body .gform_fields .gfield .ginput_container input[type=email] {
    width: 100%;
  }
  .contact-form-container .gform_footer input[type=submit],
  .contact-form-container .gform_legacy_markup_wrapper .gform_footer input[type=submit] {
    margin-left: 120px;
  }
}
/* --- Cruise Schedule --- */
.schedule {
  margin: 0px auto 1rem auto;
  padding: 0.25rem 1rem;
  border: 1px solid #dbdbdb;
}

.schedule h2 {
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 1rem;
  margin: 0px;
  padding: 0.5rem 0px 0.5rem 0px;
  text-align: center;
}

.schedule h3 {
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 0.88rem;
  margin: 0px;
  padding: 0.5rem 0px 0.5rem 0px;
  text-align: center;
  color: #1d689c;
  line-height: 1.2;
}

.schedule ul {
  list-style-type: none;
  padding: 0px;
  margin: 0px auto 0px auto;
  display: table;
}

.schedule ul.times li {
  display: flex;
  position: relative;
  justify-content: space-between;
}

.schedule ul.times li.timespan-special {
  display: block;
  margin: 0 0 2px 0;
  padding: 0 0 3px 0;
}

.schedule ul.times li.timespan-special .time-special-description {
  font-size: 12px;
  text-align: center;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
  color: #1d689c;
}

.schedule ul.times li .timespan {
  display: flex;
  flex: 180px 0 1;
  justify-content: space-between;
}

.schedule ul.times li span {
  display: block;
  padding: 0 10px 0 10px;
}

#cruise-schedule-container {
  padding: 2rem 0 0 0;
}

@media (min-width: 1024px) {
  #cruise-schedule-container .schedule {
    border: none;
  }
  #cruise-schedule-container .schedule.schedule-top {
    border: none;
    margin: 0px auto 2rem auto;
  }
  #cruise-schedule-container .schedule-bottom {
    display: grid;
    grid-template-columns: 33.33% 33.33% 33.33%;
  }
}
@media (min-width: 1200px) {
  .schedule {
    padding: 0.5rem 1.5rem;
    font-size: 1.25rem;
  }
  .schedule h2 {
    font-size: 1.25rem;
  }
}
/* --- Faq --- */
.faq {
  margin: 3rem 0 3rem 0;
}

.faq .faq-q h2 {
  color: #007db7;
}

/* --- Reviews --- */
.review-container .review .icon, .review-container .review .review-author {
  display: table;
  margin: 0px auto;
}

.review-container .review .review-author {
  font-family: "Helvetica Rounded LT W01 Bold";
  text-align: center;
}

.review-container .review .icon {
  max-width: 100px;
}

.review-container .review .icon img {
  width: 100%;
  height: auto;
}

.review-container .review {
  margin: 1rem 0 2rem 0;
  padding: 1rem 0 1rem 0;
}

.review-container .review-image {
  display: table;
  margin: 0px auto;
}

.review-container .review-image img {
  width: 100%;
  height: auto;
  display: table;
}

@media (min-width: 1024px) {
  .review-container .review {
    display: flex;
    align-items: flex-start;
  }
  .review-container .review .icon {
    padding: 0.66rem 2rem 0 0;
  }
  .review-container .review .icon {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 150px;
  }
  .review-container .review .review-content {
    flex: 1 2 auto;
  }
  .review-container .review .icon {
    margin: 0px 0px;
  }
}
/* --- Photos & Videos --- */
/* --- 16 x 9 (0.5625) --- */
.videos .video {
  margin: 2rem 0 2rem 0;
  padding: 2rem 0 2rem 0;
}

.embed-responsive-16by9:before {
  padding-top: 56.25%;
}

.embed-responsive:before {
  display: block;
  content: "";
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive iframe {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/* --- Personnel -- */
.personnel .person {
  clear: both;
  margin: 1rem 0 1rem 0;
  padding: 1rem 0 1rem 0;
}

.personnel .person .person-image {
  display: table;
  float: left;
  padding: 0 0.5rem 0.5rem 0;
}

.personnel .person .person-image img {
  display: table;
  max-width: 150px;
  height: auto;
  margin: 0.25rem 0 0 0;
}

.personnel .person h3 {
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.5rem;
}

/* --- Book Button (bottom) --- */
#book-bottom {
  position: fixed;
  bottom: 5px;
  right: 5px;
}

#book-bottom .book-button {
  font-size: 1.25rem;
}

#book-bottom .book-button a {
  text-decoration: none;
}

/* --- Boat Gallery --- */
.boat-content,
.boat-gallery .ngg-galleryoverview {
  max-width: 750px;
  margin: 0px auto;
}

.boat-gallery {
  margin: 0 0 1rem 0;
}

.boat-book {
  margin: 2rem auto 1rem auto;
  display: table;
}

.boat-book a.btn.btn-primary {
  background-color: #822f89;
  text-decoration: none;
  font-family: "Helvetica Rounded LT W01 Bold";
  font-size: 1.5rem;
}

/* --- Gift Cards --- */
#fareharbor-iframe-container {
  height: 100%;
  min-height: 2500px;
  position: relative;
}

#fareharbor-iframe-container #fareharbor-lightframe-iframe {
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  overflow-y: scroll;
  overflow-x: hidden;
}

@media (min-width: 1024px) {
  #fareharbor-iframe-container {
    min-height: 2000px;
  }
}
/* --- Directions --- */
.directions {
  margin: 3rem 0 3rem 0;
}

/* --- Footer --- */
#footer {
  text-align: center;
  padding: 2rem 0 0 0;
}

#footer .top-rated {
  padding: 4rem 0 0 0;
}

#footer .top-rated h3 {
  font-family: "Helvetica Rounded LT W01 Black";
  margin: 0.5rem auto 0.5rem auto;
  padding: 1.25rem 0 1.25rem 0;
  display: table;
  border-bottom: 1px solid #c5e9ec;
}

#footer .top-rated ul {
  list-style-type: none;
  padding: 1.25rem 0 1.25rem 0;
  margin: 0px auto;
  display: grid;
  grid-template-columns: 50% 50%;
}

#footer .top-rated ul li a {
  display: table;
  padding: 1rem 1rem 1rem 1rem;
  margin: 0px auto;
}

#footer .social-links a img,
#footer .top-rated ul li a img {
  width: 100%;
  height: auto;
}

#footer {
  background-image: url(../images/footer-bg.png);
  background-repeat: repeat-x;
  background-color: #5df6ed;
}

#footer .social-links {
  display: flex;
  justify-content: center;
}

#footer .social-links a {
  display: table;
  padding: 0 0.5rem 0 0.5rem;
}

#footer .physical-address {
  font-family: "Avenir Next LT W01 Medium", sans-serif;
  line-height: 1.5;
  font-size: 1.125rem;
  padding: 0 0 1rem 0;
  margin: 1rem auto 1rem auto;
}

#footer .physical-address .name {
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 1.25rem;
}

#footer .physical-address a {
  color: #000;
  text-decoration: none;
}

#footer .physical-address a.underline {
  text-decoration: underline;
}

#footer .physical-address a:hover {
  text-decoration: underline;
}

#footer .phone {
  margin: 1rem 0 1rem 0;
}

#footer .email {
  display: table;
  margin: 0.5rem auto;
}

#footer .email .btn {
  background-color: #007db7;
  color: #fff;
  padding: 0.4rem 0.8rem;
}

#footer .trip-advisor-travelers-choice-container {
  margin: 1rem 0 1rem 0;
  padding: 0 0 1rem 0;
}

#footer .trip-advisor-travelers-choice-container .trip-advisor-travelers-choice-2023 {
  display: table;
  width: 100%;
  max-width: 144px;
  margin: 1rem auto 1rem auto;
}

#footer .copyright {
  padding: 1rem 0 1rem 0;
  margin: 2rem auto 1rem auto;
  display: table;
  font-size: 0.85rem;
}

@media (min-width: 1024px) {
  #footer .top-rated h3,
  #footer .physical-address .name {
    font-size: 1.5rem;
  }
  #footer .top-rated ul {
    display: flex;
    justify-content: center;
  }
}
/* --- Popup --- */
.popup {
  display: none;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 200;
  background-color: rgba(0, 0, 0, 0.75);
}

.popup.closed {
  display: none;
}

.popup.open {
  display: block;
}

.popup .popup-inner {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 90%;
  background-color: #d2065c;
  padding: 0.333rem 0 0.333rem 0;
  text-align: center;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.popup .popup-inner .close {
  position: absolute;
  top: 6px;
  right: 2px;
}

.popup .popup-inner .close .btn.btn-close {
  height: 28px;
  width: 28px;
  display: table;
  padding: 0px;
  margin: 0px;
  background-color: transparent;
  border: none;
}

.popup .popup-inner .close .btn.btn-close svg {
  height: 100%;
  width: 100%;
}

.popup .popup-inner .close .btn.btn-close .x {
  padding: 0 0 3px 0;
  display: block;
}

.popup .popup-inner .btn.btn-primary {
  background-color: #a0fff5;
  color: #d2065c;
  text-decoration: none;
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 2rem;
  border-radius: 1.666rem;
  margin: 1rem auto 0.222rem auto;
}

.popup .popup-inner .popup-title h2 {
  color: #fffa65;
  text-align: center;
  font-size: 1.777rem;
  padding: 0px;
  margin: 0.333rem 0 0.333rem 0;
}

.popup .popup-inner .special-container {
  padding: 1rem;
  text-align: center;
}

.popup .popup-inner .special-image {
  width: 100%;
  max-width: 180px;
  margin: 0px auto 0.666rem auto;
}

.popup .popup-inner .special-image img {
  display: table;
  width: 100%;
  height: auto;
  margin: 0px auto;
}

.popup .popup-inner .special-container .special-title {
  font-family: "Helvetica Rounded LT W01 Bold";
  color: #026493;
  font-size: 1.222rem;
}

.popup .popup-inner .special-container .special-price {
  font-family: "Helvetica Rounded LT W01 Black";
  color: #d2065c;
  font-size: 1.666rem;
  line-height: 1;
  margin: 0px;
  padding: 0px;
}

.popup .popup-inner .special-container .special-price-exclusions {
  color: #d2065c;
  font-family: "Avenir Next LT W01 Bold", sans-serif;
}

.popup .popup-inner .special-container-catamaran {
  background-color: #a0fff5;
}

.popup .popup-inner .special-container-pontoon {
  background-color: #f5ffa0;
}

.popup .popup-bottom {
  padding: 0 0 0.666rem 0;
}

.popup .popup-bottom .action-text {
  font-family: "Helvetica Rounded LT W01 Bold";
  color: #fffa65;
  font-size: 1rem;
  margin: 0px;
  padding: 0px;
}

.cruise-specials-content-top {
  background-color: #d2065c;
  color: #fffa65;
  font-family: "Helvetica Rounded LT W01 Black";
  font-size: 1.125rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  text-align: center;
}

@media (min-width: 1024px) {
  .popup .popup-inner {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 600px;
  }
  .popup .popup-inner .special-image {
    max-width: 300px;
  }
  .popup .popup-inner .special-image {
    margin: 0px auto 1rem auto;
  }
}
/* --- Misc. --- */
.recaptcha-disclaimer {
  font-size: 0.8125rem;
}

.grecaptcha-badge {
  opacity: 0;
}