@charset "UTF-8";
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, strong, sub, sup, tt, var,
b, 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: 100%;
  font: inherit;
  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, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

#wrapperSet {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto; }

#wrapperSet2 {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto; }

#wrapperFull {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto; }

#wrapperNav {
  max-width: 100%;
  background-color: #4A8668;
  margin-left: auto;
  margin-right: auto; }

#wrapperHead {
  max-width: 100%;
  background-color: cornsilk;
  margin-left: auto;
  margin-right: auto; }

#wrapper {
  width: 120px;
  margin: 0 auto; }

/* Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.  */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

/*  apply a natural box layout model to all elements  */
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

body {
  font-size: 1rem;
  font-family: "Raleway", sans-serif; }
  body .colorHR {
    background-color: #6E0C5D;
    height: 1rem; }
  body input {
    outline: none; }
  body input[type=search] {
    -webkit-appearance: textfield;
    -webkit-box-sizing: content-box;
    position: absolute;
    z-index: 655;
    margin-left: 12rem;
    font-size: 60%; }
  body input::-webkit-search-decoration,
  body input::-webkit-search-cancel-button {
    display: none; }
  body input[type=search] {
    background: #ededed url(https://static.tumblr.com/ftv85bp/MIXmud4tx/search-icon.png) no-repeat 9px center;
    border: solid 1px #ccc;
    padding: 8px 14px 12px 65px;
    width: 55px;
    margin-top: 5px;
    -webkit-border-radius: 10em;
    -moz-border-radius: 10em;
    border-radius: 10em;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    transition: all .5s; }
  body input[type=search]:focus {
    width: 110px;
    background-color: #fff;
    border-color: #66CC75;
    -webkit-box-shadow: 0 0 5px rgba(109, 207, 246, 0.5);
    -moz-box-shadow: 0 0 5px rgba(109, 207, 246, 0.5);
    box-shadow: 0 0 5px rgba(109, 207, 246, 0.5); }
  body input:-moz-placeholder {
    color: #999; }
  body input::-webkit-input-placeholder {
    color: #999; }

/*  header  */
header {
  background-color: cornsilk;
  font-weight: 800;
  max-width: 75rem;
  margin: 0 auto;
  height: 120px;
  position: relative; }
  header h1 {
    font-size: 2rem;
    color: #6E0C5D;
    position: absolute;
    bottom: 10px;
    left: 20px; }
  header h2 {
    font-size: 1.4rem;
    color: #6E0C5D;
    position: absolute;
    bottom: 10px;
    left: 20px; }
  header .telephone {
    font-size: 1.5rem;
    bottom: 10px;
    color: #6E0C5D;
    text-align: right;
    padding-top: 85px;
    padding-right: 5px;
    text-decoration: none;
    display: none; }
  header a:link {
    text-decoration: none;
    color: #6E0C5D; }
  header a:visited {
    text-decoration: none;
    color: #6E0C5D; }
  header a:hover {
    text-decoration: underline;
    color: #6E0C5D; }
  header a:active {
    text-decoration: underline;
    color: #6E0C5D; }
  header figure {
    position: absolute;
    bottom: 10%;
    left: 2%; }

ul {
  margin-left: 2%; }

ul li {
  display: block; }

ul li a {
  display: block;
  border: none;
  background: none;
  font-size: .9em;
  padding: .7em .9em;
  color: white;
  text-decoration: none;
  /*transition*/
  -webkit-transition: background 0.3s linear;
  transition: background 0.3s linear; }

ul li a:hover {
  background: #57094a; }

ul li ul {
  /*rules for the sub menu items*/
  z-index: 99;
  position: absolute;
  background-color: #9c1184;
  left: -999em;
  /* pushes the menu way off to the side */
  width: 10em; }

ul li ul li {
  /* overides the float and line from the parent ul */
  float: none;
  border-right: none; }

ul li:hover ul {
  /* this displays the menus as drop downs  */
  left: auto;
  margin-left: 0; }

/*  main  */
main {
  margin: 0 auto;
  padding: 0 1%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -ms-grid-template-columns: 1fr 1fr;
  grid-column-gap: .5px;
  grid-row-gap: 10px;
  /* Set a style for all Cruises Page "Read More" buttons */
  /* Set a style for Booking Page "Book My Cruise" button */
  /* style all input elements with a required attribute */
  /**
   * style input elements that have a required
   * attribute and a focus state
   */
  /**
   * style input elements that have a required
   * attribute and a hover state
   */
  /* END OF BOOK MY CRUISE FORM SETTINGS */ }
  main h2 {
    font-size: 1.75rem; }
  main div.blogTitle {
    color: #6E0C5D;
    font-size: 2.5rem;
    font-weight: 800; }
  main div.mySlider div {
    width: 100%;
    z-index: -1; }
    main div.mySlider div img {
      width: 100%; }
  main div.teaser {
    position: relative; }
    main div.teaser div.span {
      position: absolute;
      display: inline-block;
      text-align: center;
      background-color: rgba(0, 0, 0, 0.3);
      width: 100%;
      color: white;
      bottom: 0px;
      font-size: 1.6rem; }
    main div.teaser div.spanTop {
      position: absolute;
      display: inline-flex;
      bottom: 80%;
      top: 0px;
      background-color: rgba(0, 0, 0, 0.3);
      width: 100%;
      padding: 5px 3%;
      color: white;
      font-size: 1.5rem; }
    main div.teaser img {
      display: block;
      width: 100%; }
  main div.lead {
    grid-row: 1;
    grid-column: 1/span 4;
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    -ms-grid-row-span: 2; }
  main div.heading {
    grid-row: 3;
    grid-column: 1/span 2;
    -ms-grid-row: 3;
    -ms-grid-column: 1/span 2; }
  main div.ie1 {
    grid-row: 4;
    grid-column: 1/span 1;
    -ms-grid-row: 4;
    -ms-grid-column: 2/span 2; }
    main div.ie1 img {
      opacity: 0.75;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
    main div.ie1 img:hover {
      opacity: 1.0;
      filter: alpha(opacity=100);
      /* For IE8 and earlier */ }
  main div.ie2 {
    grid-row: 4;
    grid-column: 2/span 2;
    -ms-grid-row: 4;
    -ms-grid-column: 2/span 2; }
    main div.ie2 img {
      opacity: 0.75;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
    main div.ie2 img:hover {
      opacity: 1.0;
      filter: alpha(opacity=100);
      /* For IE8 and earlier */ }
  main div.ie3 {
    grid-row: 5;
    grid-column: 1/span 1;
    -ms-grid-row: 5;
    -ms-grid-column: 1/span 2; }
    main div.ie3 img {
      opacity: 0.75;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
    main div.ie3 img:hover {
      opacity: 1.0;
      filter: alpha(opacity=100);
      /* For IE8 and earlier */ }
  main div.ie4 {
    grid-row: 5;
    grid-column: 2/span 2;
    -ms-grid-row: 5;
    -ms-grid-column: 2/span 2; }
    main div.ie4 img {
      opacity: 0.75;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
    main div.ie4 img:hover {
      opacity: 1.0;
      filter: alpha(opacity=100);
      /* For IE8 and earlier */ }
  main div.opacity img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    /* For IE8 and earlier */ }
  main div.opacity img:hover {
    opacity: 1.0;
    filter: alpha(opacity=100);
    /* For IE8 and earlier */ }
  main h2.imgCaption {
    text-align: center;
    font-size: .5em;
    padding-bottom: 5px;
    padding-top: 5px; }
  main div.cruiseImg {
    grid-row: 3;
    grid-column: 1/span 3;
    -ms-grid-row: 3;
    -ms-grid-column: 1/span 3; }
    main div.cruiseImg img {
      opacity: 0.75;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
  main div.cruiseText {
    grid-row: 3;
    grid-column: 3/span 2;
    -ms-grid-row: 3;
    -ms-grid-column: 3/span 2;
    font-size: 1.5rem;
    bottom: 10px;
    color: #6E0C5D;
    text-align: right;
    padding-top: 5px;
    padding-right: 5px;
    text-decoration: none;
    display: none; }
  main div.cruiseAlaskaImg {
    grid-row: 4;
    grid-column: 1/span 4;
    -ms-grid-row: 4;
    -ms-grid-column: 1/span 1;
    padding-top: 1rem; }
  main div.cruiseAlaskaText {
    grid-row: 5;
    grid-column: 1/span 4;
    -ms-grid-row: 5;
    -ms-grid-column: 1/span 1;
    padding-left: 2rem;
    padding-bottom: 2rem;
    line-height: 120%; }
  main div.cruiseMedImg {
    grid-row: 6;
    grid-column: 1/span 4;
    -ms-grid-row: 6;
    -ms-grid-column: 1/span 4;
    padding-top: 1rem; }
  main div.cruiseMedText {
    grid-row: 7;
    grid-column: 1/span 4;
    -ms-grid-row: 7;
    -ms-grid-column: 1/span 4;
    padding-left: 2rem;
    padding-bottom: 2rem;
    line-height: 120%; }
  main div.cruiseCaribbeanImg {
    grid-row: 8;
    grid-column: 1/span 4;
    -ms-grid-row: 8;
    -ms-grid-column: 1/span 4;
    padding-top: 1rem; }
  main div.cruiseCaribbeanText {
    grid-row: 9;
    grid-column: 1/span 4;
    -ms-grid-row: 9;
    -ms-grid-column: 1/span 4;
    padding-left: 2rem;
    padding-bottom: 2rem;
    line-height: 120%; }
  main div.cruiseTahitiImg {
    grid-row: 10;
    grid-column: 1/span 4;
    -ms-grid-row: 10;
    -ms-grid-column: 1/span 4;
    padding-top: 1rem; }
  main div.cruiseTahitiText {
    grid-row: 11;
    grid-column: 1/span 4;
    -ms-grid-row: 11;
    -ms-grid-column: 1/span 4;
    padding-left: 2rem;
    padding-bottom: 2rem;
    line-height: 120%; }
  main h2.cruiseText {
    font-size: 1.4rem;
    color: #4A8668;
    margin-top: 10px;
    font-weight: 600;
    bottom: 0px;
    left: 20px; }
  main button.readMore {
    background-color: #4A8668;
    color: white;
    font-size: .8rem;
    border-radius: 20px;
    padding: 8px 8px;
    margin: 1rem 0;
    border: none;
    cursor: pointer;
    width: 100%;
    opacity: 0.9;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 4px 4px 3px #999;
    -webkit-box-shadow: 4px 4px 3px #999;
    -moz-box-shadow: 4px 4px 3px #999; }
  main button.readMore:hover {
    opacity: 2; }
  main h2.agentsText {
    font-size: 1.4rem;
    color: #4A8668;
    margin-top: 10px;
    font-weight: 600;
    bottom: 0px;
    left: 20px; }
  main p.testimonials {
    color: #EAAB4D; }
  main div.agentsText {
    grid-row: 6;
    grid-column: 1/span 2;
    -ms-grid-row: 6;
    -ms-grid-column: 1/span 2;
    padding-left: 0rem;
    margin-right: 0rem;
    padding-bottom: 2rem;
    line-height: 120%; }
  main div.agentsImg {
    grid-row: 5;
    grid-column: 1/span 2;
    -ms-grid-row: 5;
    -ms-grid-column: 1/span 2;
    margin-top: 1rem;
    padding-bottom: 1rem; }
  main div.bookingContainer {
    grid-row: 5;
    grid-column: 1/span 2;
    -ms-grid-row: 5;
    -ms-grid-column: 1/span 2;
    margin-left: 1rem;
    border-radius: 5px;
    background-color: #fff;
    padding: 20px; }
    main div.bookingContainer div.opacity img {
      opacity: 0.75;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
    main div.bookingContainer div.opacity img:hover {
      opacity: 1.0;
      filter: alpha(opacity=100);
      /* For IE8 and earlier */ }
  main button.bookCruise {
    background-color: #4A8668;
    color: white;
    font-size: .8rem;
    border-radius: 20px;
    padding: 8px 8px;
    margin: 0 0;
    border: none;
    cursor: pointer;
    width: 20rem;
    opacity: 0.9;
    float: left;
    box-shadow: 4px 4px 3px #999;
    -webkit-box-shadow: 4px 4px 3px #999;
    -moz-box-shadow: 4px 4px 3px #999; }
  main button.bookCruise:hover {
    opacity: 2; }
  main input[type=text], main select {
    width: 100%;
    padding: 14px 20px;
    margin: 8px 0;
    display: inline-block;
    border: 1px solid #000;
    border-radius: 4px;
    box-sizing: border-box;
    background-color: #f1f1f1; }
  main input[type=submit] {
    width: 100%;
    background-color: #4CAF50;
    color: white;
    padding: 14px 20px;
    margin: 8px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer; }
  main input[type=submit]:hover {
    background-color: #45a049; }
  main div.booking {
    border-radius: 5px;
    background-color: #fff;
    padding: 20px; }
  main input:required,
  main textarea:required {
    border-color: red !important; }
  main input:required + label {
    color: red; }
  main input:required:focus {
    border: 2px solid red;
    outline: none; }
  main input:required:hover {
    opacity: 1; }

/*  footer  */
footer {
  background-color: #6E0C5D;
  /* Full-width input fields */
  /* Set a style for all buttons */
  /* Add padding to container elements */
  /* Clear floats */
  /* Change styles for cancel button and signup button on extra small screens */
  /* various extras */
  /*----- Clearfix: Force an Element not to collapse -----*/ }
  footer ul.social {
    display: table;
    max-width: 75rem;
    margin: 10px auto; }
    footer ul.social li {
      float: left;
      text-align: center; }
      footer ul.social li a {
        font-size: 3rem;
        padding-left: .5rem;
        color: white; }
      footer ul.social li a:hover {
        color: #EAAB4D; }
  footer h2 {
    font-size: 1.5rem;
    color: #5da682; }
  footer div.container1 {
    display: -ms-inline-block;
    display: inline-block;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    footer div.container1 div {
      -ms-flexbasis: 100%;
      flex-basis: 100%;
      padding: 1rem 2%; }
      footer div.container1 div ul li a {
        color: #d8d8d8;
        text-align: left;
        padding: 10px 0 15px 2px;
        text-decoration: none; }
  footer div.container2 {
    display: -ms-inline-block;
    display: inline-block;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    footer div.container2 div {
      -ms-flexbasis: 100%;
      flex-basis: 100%;
      padding: 1rem 4%; }
      footer div.container2 div ul li a {
        color: #d8d8d8;
        text-align: center;
        padding: 10px 0 15px 2px;
        text-decoration: none; }
  footer p {
    margin-top: 1rem;
    margin-bottom: 1rem;
    font-size: 1.2rem;
    text-align: left;
    color: #f1f1f1; }
    footer p a {
      color: white;
      text-decoration: none; }
  footer p.copyright {
    margin-top: .2rem;
    margin-bottom: .2rem;
    font-size: .9rem;
    text-align: center;
    color: #f1f1f1; }
    footer p.copyright a {
      color: white;
      text-decoration: none; }
  footer p.address {
    margin-top: .2rem;
    margin-bottom: .2rem;
    font-size: 1rem;
    text-align: left;
    color: #f1f1f1; }
    footer p.address a {
      color: white;
      text-decoration: none; }
  footer p.cabot {
    margin-top: .2rem;
    margin-bottom: .2rem;
    font-size: .8rem;
    text-align: left;
    line-height: normal;
    color: #f1f1f1; }
    footer p.cabot a {
      color: white;
      text-decoration: none; }
    footer p.cabot p.cabotHead {
      margin-top: .2rem;
      font-size: .9rem;
      text-align: left;
      line-height: normal;
      color: #f1f1f1; }
      footer p.cabot p.cabotHead a {
        color: white;
        text-decoration: none; }
  footer * {
    box-sizing: border-box; }
  footer input[type=text], footer input[type=password] {
    width: 100%;
    border-radius: 5px;
    padding-top: 15px;
    padding-bottom: 15px;
    margin: 5px 0 0 0;
    display: inline-block;
    border: none;
    background: #f1f1f1;
    color: white; }
  footer input[type=text]:focus, footer input[type=password]:focus {
    background-color: #ddd;
    outline: none; }
  footer hr {
    border: 1px solid #f1f1f1;
    margin-bottom: 25px; }
  footer button {
    background-color: #4A8668;
    color: white;
    font-size: 1rem;
    border-radius: 20px;
    padding: 14px 20px;
    margin: 0 0;
    border: none;
    cursor: pointer;
    width: 100%;
    opacity: 0.9; }
  footer button:hover {
    opacity: 1; }
  footer .container {
    padding: 0px; }
  footer .clearfix::after {
    content: "";
    clear: both;
    display: table; }
  @media screen and (max-width: 300px) {
    footer .cancelbtn, footer .signupbtn {
      width: 100%; } }
  footer li.active {
    background-color: #57094a; }
  footer .clearfix:after {
    content: "";
    display: table;
    clear: both; }

/*Change the menubar color on line 23 */
/*Change the dropdown menu color on line 49*/
/*If you have a light background color then change the background image on lines 30 and 37 to load menuOpenBlack and menuCloseBlack*/
/*Adjust the media query max-width value on line 12 to match your breakpoint between the small and medium screens OR between the medium and large screens*/
/*  apply a natural box layout model to all elements  */
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

#hamburgerBtn {
  display: none; }

/* hide the navigation button by default */
@media only screen and (max-width: 35rem) {
  /* Navigation Button  -------------------------------------------------------- */
  body {
    padding-top: 50px; }

  nav {
    position: absolute;
    top: 0;
    left: 0;
    width: 75rem;
    height: 2.75rem;
    background-color: #4A8668;
    /* change the menu color */ }

  #hamburgerBtn {
    display: block;
    width: 7rem;
    height: 2.75rem;
    background-image: url("../images/menuOpenWhite.png");
    background-color: rgba(0, 0, 0, 0.1);
    background-position: 2vw center;
    background-repeat: no-repeat;
    border: 0 none; }

  #hamburgerBtn.open {
    background: url("../images/menuCloseWhite.png");
    background-position: 2vw center;
    background-repeat: no-repeat; }

  /* Navigation Bar -------------------------------------------------------- */
  #primaryNav {
    height: 0;
    overflow: hidden;
    width: 20rem;
    background-color: #4A8668;
    /* change the menu color */
    margin: 0;
    padding: 0;
    z-index: 8;
    font-family: Verdana;
    font-weight: normal; }

  #primaryNav li.active a {
    background-color: rgba(0, 0, 0, 0.25); }

  #primaryNav li a {
    display: inline-block;
    width: 75rem;
    padding: .75rem 2vw;
    font-size: 14px;
    text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.15);
    color: white;
    text-decoration: none;
    border-top: 1px solid rgba(0, 0, 0, 0.2); }

  #primaryNav li a:hover {
    background-color: #6E0C5D;
    color: #fff; }

  /* Toggle the navigation bar to expand down  */
  #primaryNav.open {
    height: auto; }

  /* Submenus – optional .parent class indicates dropdowns */
  #primaryNav > li:hover > a {
    background: rgba(0, 0, 0, 0.5); }

  #primaryNav li.parent > a:after {
    font-size: .75rem;
    content: "\25BC";
    color: rgba(0, 0, 0, 0.5);
    float: right; }

  #primaryNav li.parent > a:hover {
    background: rgba(0, 0, 0, 0.75); }

  /*hide the sub menu items by default*/
  #primaryNav li ul {
    display: none;
    background: rgba(0, 0, 0, 0.8);
    padding: 0; }

  #primaryNav li ul a {
    border-top: solid 1px rgba(0, 0, 0, 0.2);
    font-size: 12px;
    padding: 10px 5%;
    font-weight: normal; }

  #primaryNav li:hover ul {
    display: block; } }
/* End Mobile Styles */
@media only screen and (min-width: 35rem) {
  /*  header  */
  header {
    background-color: cornsilk;
    font-weight: 800;
    max-width: 75rem;
    margin: 0 auto;
    height: 150px;
    position: relative; }
    header h1 {
      font-size: 2rem;
      color: #6E0C5D;
      position: absolute;
      bottom: 40px;
      left: 20px; }
    header h2 {
      font-size: 1.4rem;
      color: #6E0C5D;
      position: absolute;
      bottom: 0px;
      left: 20px; }
    header .telephone {
      font-size: 1.5rem;
      bottom: 10px;
      color: #6E0C5D;
      text-align: right;
      padding-top: 115px;
      margin-right: 1%;
      text-decoration: none;
      display: block; }
    header a:link {
      text-decoration: none;
      color: #6E0C5D; }
    header a:visited {
      text-decoration: none;
      color: #6E0C5D; }
    header a:hover {
      text-decoration: underline;
      color: #6E0C5D;
      padding: 1rem; }
    header a:active {
      text-decoration: underline;
      color: #6E0C5D; }

  /*  nav  */
  nav div {
    height: 35px;
    background-color: #4A8668;
    color: white; }
    nav div a {
      float: left; }
  nav .topnav a:not(:first-child) {
    display: inline-block; }
  nav .topnav a.icon {
    display: none; }
  nav li {
    display: block;
    transition-duration: 0.5s; }
  nav li:hover {
    cursor: pointer; }
  nav ul li ul {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    transition: all 0.5s ease;
    margin-top: 2.2rem;
    left: 0;
    display: none; }
  nav ul li:hover > ul,
  nav ul li ul:hover {
    visibility: visible;
    opacity: 1;
    display: block; }
  nav ul li ul li {
    clear: both;
    width: 100%; }
  nav input {
    outline: none; }
  nav input[type=search] {
    -webkit-appearance: textfield;
    -webkit-box-sizing: content-box;
    margin-left: 77%;
    display: inline-block;
    z-index: 5000;
    font-size: 60%; }
  nav input::-webkit-search-decoration,
  nav input::-webkit-search-cancel-button {
    display: none; }
  nav input[type=search] {
    background: #ededed url(https://static.tumblr.com/ftv85bp/MIXmud4tx/search-icon.png) no-repeat 9px center;
    border: solid 1px #ccc;
    padding: 8px 14px 12px 65px;
    width: 55px;
    margin-top: 1px;
    -webkit-border-radius: 10em;
    -moz-border-radius: 10em;
    border-radius: 10em;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    transition: all .5s; }
  nav input[type=search]:focus {
    width: 100px;
    background-color: #fff;
    border-color: #66CC75;
    -webkit-box-shadow: 0 0 5px rgba(109, 207, 246, 0.5);
    -moz-box-shadow: 0 0 5px rgba(109, 207, 246, 0.5);
    box-shadow: 0 0 5px rgba(109, 207, 246, 0.5); }
  nav input:-moz-placeholder {
    color: #999; }
  nav input::-webkit-input-placeholder {
    color: #999; }
  nav ul {
    margin-left: 2%;
    border-left: 1px solid rgba(0, 0, 0, 0.2); }
  nav ul li {
    float: left; }
  nav ul li a {
    display: block;
    border: none;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    background: none;
    font-size: .9em;
    padding: .7em .9em;
    color: white;
    text-decoration: none;
    /*transition*/
    -webkit-transition: background 0.3s linear;
    transition: background 0.3s linear; }
  nav ul li a:hover {
    background: #57094a; }
  nav ul li ul {
    /*rules for the sub menu items*/
    z-index: 99;
    position: absolute;
    background-color: #9c1184;
    left: -999em;
    /* pushes the menu way off to the side */
    width: 10em; }
  nav ul li ul li {
    /* overides the float and line from the parent ul */
    float: none;
    border-right: none;
    border-top: solid 1px rgba(0, 0, 0, 0.2); }
  nav ul li:hover ul {
    /* this displays the menus as drop downs  */
    left: auto;
    margin-left: 0; }

  /*  main  */
  main {
    margin: 0 auto;
    padding: 1rem 2%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    -ms-grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: .5px;
    grid-row-gap: 10px;
    /* Set a style for all Cruises Page "Read More" buttons */
    /* Set a style for Booking Page "Book My Cruise" button */ }
    main div.mySlider div {
      width: 100%; }
      main div.mySlider div img {
        width: 100%; }
    main div.teaser {
      position: relative; }
      main div.teaser i {
        position: absolute;
        display: block;
        top: 10px;
        left: 40%;
        font-size: 4.5rem;
        color: hotpink; }
      main div.teaser span {
        position: absolute;
        display: block;
        text-align: center;
        background-color: rgba(0, 0, 0, 0.3);
        width: 100%;
        color: white;
        bottom: 0px; }
      main div.teaser span.top {
        position: absolute;
        display: block;
        vertical-align: top;
        background-color: rgba(0, 0, 0, 0.3);
        width: 100%;
        padding: 0 3%;
        color: white; }
      main div.teaser img {
        display: block;
        width: 100%; }
      main div.teaser h2.imgCaption {
        color: white;
        text-align: center;
        font-size: 1.3rem;
        padding-bottom: 5px;
        padding-top: 5px; }
    main div.lead {
      grid-row: 1/span 3;
      grid-column: 1/span 3;
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      -ms-grid-column-span: 3;
      -ms-grid-row-span: 3; }
    main div.heading {
      grid-row: 3;
      grid-column: 1/span 3;
      -ms-grid-row: 3;
      -ms-grid-column: 1/span 3; }
      main div.heading div.opacity img {
        opacity: 0.5;
        filter: alpha(opacity=50);
        /* For IE8 and earlier */ }
      main div.heading div.opacity img:hover {
        opacity: 1.0;
        filter: alpha(opacity=100);
        /* For IE8 and earlier */ }
    main div.ie1 {
      grid-row: 4;
      grid-column: 1/span 1;
      -ms-grid-row: 4;
      -ms-grid-column: 1/span 1; }
      main div.ie1 div.opacity img {
        opacity: 0.75;
        filter: alpha(opacity=50);
        /* For IE8 and earlier */ }
      main div.ie1 div.opacity img:hover {
        opacity: 1.0;
        filter: alpha(opacity=100);
        /* For IE8 and earlier */ }
    main div.ie2 {
      grid-row: 4;
      grid-column: 2/span 1;
      -ms-grid-row: 4;
      -ms-grid-column: 2/span 1; }
      main div.ie2 div.opacity img {
        opacity: 0.75;
        filter: alpha(opacity=50);
        /* For IE8 and earlier */ }
      main div.ie2 div.opacity img:hover {
        opacity: 1.0;
        filter: alpha(opacity=100);
        /* For IE8 and earlier */ }
    main div.ie3 {
      grid-row: 4;
      grid-column: 3/span 1;
      -ms-grid-row: 4;
      -ms-grid-column: 3/span 1; }
      main div.ie3 div.opacity img {
        opacity: 0.75;
        filter: alpha(opacity=50);
        /* For IE8 and earlier */ }
      main div.ie3 div.opacity img:hover {
        opacity: 1.0;
        filter: alpha(opacity=100);
        /* For IE8 and earlier */ }
    main div.ie4 {
      grid-row: 5;
      grid-column: 1/span 1;
      -ms-grid-row: 5;
      -ms-grid-column: 1/span 1; }
      main div.ie4 div.opacity img {
        opacity: 0.75;
        filter: alpha(opacity=50);
        /* For IE8 and earlier */ }
      main div.ie4 div.opacity img:hover {
        opacity: 1.0;
        filter: alpha(opacity=100);
        /* For IE8 and earlier */ }
    main div.opacity img {
      opacity: 0.5;
      filter: alpha(opacity=50);
      /* For IE8 and earlier */ }
    main div.opacity img:hover {
      opacity: 1.0;
      filter: alpha(opacity=100);
      /* For IE8 and earlier */ }
    main div.container2 {
      display: -ms-inline-flex !important;
      display: inline-flex !important;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      main div.container2 div {
        -ms-flexbasis: 100%;
        flex-basis: 100%;
        padding: 1rem 4%; }
        main div.container2 div ul li {
          max-width: 100%; }
          main div.container2 div ul li a {
            color: #d8d8d8;
            text-align: center;
            padding: 10px 0 15px 2px;
            text-decoration: none; }
    main div.cruiseAlaskaImg {
      grid-row: 4;
      grid-column: 1/span 1;
      -ms-grid-row: 4;
      -ms-grid-column: 1/span 1;
      -webkit-column-gap: 20px;
      -moz-column-gap: 20px;
      column-gap: 20px;
      padding-top: 1rem; }
    main div.cruiseAlaskaText {
      grid-row: 4;
      grid-column: 2/span 3;
      -ms-grid-row: 4;
      -ms-grid-column: 2/span 1;
      padding-left: 2rem;
      padding-bottom: 2rem;
      line-height: 120%; }
    main div.cruiseMedImg {
      grid-row: 5;
      grid-column: 1/span 1;
      -ms-grid-row: 5;
      -ms-grid-column: 1/span 1;
      -webkit-column-gap: 20px;
      -moz-column-gap: 20px;
      column-gap: 20px;
      padding-top: 1rem; }
    main div.cruiseMedText {
      grid-row: 5;
      grid-column: 2/span 3;
      -ms-grid-row: 5;
      -ms-grid-column: 2/span 1;
      padding-left: 2rem;
      padding-bottom: 2rem;
      line-height: 120%; }
    main div.cruiseCaribbeanImg {
      grid-row: 6;
      grid-column: 1/span 1;
      -ms-grid-row: 6;
      -ms-grid-column: 1/span 1;
      -webkit-column-gap: 20px;
      -moz-column-gap: 20px;
      column-gap: 20px;
      padding-top: 1rem; }
    main div.cruiseCaribbeanText {
      grid-row: 6;
      grid-column: 2/span 3;
      -ms-grid-row: 6;
      -ms-grid-column: 2/span 1;
      padding-left: 2rem;
      padding-bottom: 2rem;
      line-height: 120%; }
    main div.cruiseTahitiImg {
      grid-row: 7;
      grid-column: 1/span 1;
      -ms-grid-row: 7;
      -ms-grid-column: 1/span 1;
      -webkit-column-gap: 20px;
      -moz-column-gap: 20px;
      column-gap: 20px;
      padding-top: 1rem; }
    main div.cruiseTahitiText {
      grid-row: 7;
      grid-column: 2/span 3;
      -ms-grid-row: 7;
      -ms-grid-column: 2/span 1;
      padding-left: 2rem;
      padding-bottom: 2rem;
      line-height: 120%; }
    main h2.cruiseText {
      font-size: 1.4rem;
      color: #4A8668;
      margin-top: 10px;
      font-weight: 600;
      bottom: 0px;
      left: 20px; }
    main button.readMore {
      background-color: #4A8668;
      color: white;
      font-size: .8rem;
      border-radius: 20px;
      padding: 8px 8px;
      margin: 0 0;
      border: none;
      cursor: pointer;
      width: 8rem;
      opacity: 0.9;
      float: right;
      margin-right: 2rem;
      box-shadow: 4px 4px 3px #999;
      -webkit-box-shadow: 4px 4px 3px #999;
      -moz-box-shadow: 4px 4px 3px #999; }
    main button.readMore:hover {
      opacity: 2; }
    main h2.agentsText {
      font-size: 1.4rem;
      color: #4A8668;
      margin-top: 10px;
      font-weight: 600;
      bottom: 0px;
      left: 20px; }
    main p.testimonials {
      color: #EAAB4D; }
    main div.agentsText {
      grid-row: 4;
      grid-column: 1/span 2;
      -ms-grid-row: 4;
      -ms-grid-column: 1/span 2;
      padding-left: 0rem;
      margin-right: 2rem;
      padding-bottom: 2rem;
      line-height: 120%; }
    main div.agentsImg {
      grid-row: 4;
      grid-column: 3/span 1;
      -ms-grid-row: 4;
      -ms-grid-column: 3/span 1;
      margin-top: 1rem;
      padding-bottom: 1rem; }
    main div.bookingContainer {
      grid-row: 7;
      grid-column: 1/span 1;
      -ms-grid-row: 7;
      -ms-grid-column: 1/span 1; }
      main div.bookingContainer div.opacity img {
        opacity: 0.75;
        filter: alpha(opacity=50);
        /* For IE8 and earlier */ }
      main div.bookingContainer div.opacity img:hover {
        opacity: 1.0;
        filter: alpha(opacity=100);
        /* For IE8 and earlier */ }
    main button.bookCruise {
      background-color: #4A8668;
      color: white;
      font-size: .8rem;
      border-radius: 20px;
      padding: 8px 8px;
      margin: 0 0;
      border: none;
      cursor: pointer;
      width: 20rem;
      opacity: 0.9;
      float: left;
      box-shadow: 4px 4px 3px #999;
      -webkit-box-shadow: 4px 4px 3px #999;
      -moz-box-shadow: 4px 4px 3px #999; }
    main button.bookCruise:hover {
      opacity: 2; }

  /* START FOOTER HERE */
  footer div.container1 {
    display: -ms-inline-flex !important;
    display: inline-flex !important; }
    footer div.container1 div {
      -ms-flexbasis: 50%;
      flex-basis: 50%;
      padding: 1rem 2%; }
      footer div.container1 div ul li a {
        color: #d8d8d8;
        text-align: left;
        padding: 10px 0 15px 2px;
        text-decoration: none; }

  /* various extras */
  .active {
    background-color: #57094a; } }
@media only screen and (min-width: 64.0625rem) {
  /*  header  */
  header {
    background-color: cornsilk;
    font-weight: 800;
    max-width: 75rem;
    margin: 0 auto;
    height: 150px;
    position: relative; }
    header h1 {
      font-size: 2rem;
      color: #6E0C5D;
      position: absolute;
      bottom: 40px;
      left: 20px; }
    header h2 {
      font-size: 1.4rem;
      color: #6E0C5D;
      position: absolute;
      bottom: 10px;
      left: 20px; }
    header .telephone {
      font-size: 1.5rem;
      bottom: 10px;
      color: #6E0C5D;
      text-align: right;
      padding-top: 115px;
      padding-right: 1rem;
      text-decoration: none;
      display: block !important; }
    header a:link {
      text-decoration: none;
      color: #6E0C5D; }
    header a:visited {
      text-decoration: none;
      color: #6E0C5D; }
    header a:hover {
      text-decoration: underline;
      color: #6E0C5D; }
    header a:active {
      text-decoration: underline;
      color: #6E0C5D; }

  figure {
    position: absolute;
    bottom: 10%;
    left: 2%; }

  nav {
    background-color: #4A8668; }
    nav li {
      display: block;
      transition-duration: 0.5s; }
    nav li:hover {
      cursor: pointer; }
    nav ul li ul {
      visibility: hidden;
      opacity: 0;
      position: absolute;
      transition: all 0.5s ease;
      margin-top: 2.2rem;
      left: 0;
      display: none; }
    nav ul li:hover > ul,
    nav ul li ul:hover {
      visibility: visible;
      opacity: 1;
      display: block; }
    nav ul li ul li {
      clear: both;
      width: 100%; }

  /*  main  */
  main {
    -ms-grid-template-columns: 1fr 1fr 1fr 1fr;
    max-width: 75rem; }
    main div.lead {
      grid-row: 1 / span 2;
      grid-column: 1 / span 4;
      -ms-grid-row: 1;
      -ms-grid-column: 1;
      -ms-grid-column-span: 4;
      -ms-grid-row-span: 2; }
    main div.heading {
      grid-row: 3;
      grid-column: 1/span 4;
      -ms-grid-row: 1;
      -ms-grid-column: 1/span 4; }
    main div.ie1 {
      grid-row: 4;
      grid-column: 1/span 1;
      -ms-grid-row: 1;
      -ms-grid-column: 1/span 1; }
    main div.ie2 {
      grid-row: 4;
      grid-column: 2/span 1;
      -ms-grid-row: 1;
      -ms-grid-column: 2/span 1; }
    main div.ie3 {
      grid-row: 4;
      grid-column: 3/span 1;
      -ms-grid-row: 1;
      -ms-grid-column: 3/span 1; }
    main div.ie4 {
      grid-row: 4;
      grid-column: 4/span 1;
      -ms-grid-row: 1;
      -ms-grid-column: 4/span 1; }

  footer div.container1 {
    display: -ms-inline-flex !important;
    display: inline-flex !important; }
    footer div.container1 div {
      -ms-flexbasis: 33.33%;
      flex-basis: 33.33%;
      padding: 1rem 2%; }
      footer div.container1 div ul li a {
        color: #d8d8d8;
        text-align: left;
        padding: 10px 0 15px 2px;
        text-decoration: none; }
  footer div.container2 {
    display: -ms-inline-flex !important;
    display: inline-flex !important;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    footer div.container2 div {
      -ms-flexbasis: 33.33%;
      flex-basis: 33.33%;
      padding: 1rem 4%; }
      footer div.container2 div ul li a {
        color: #d8d8d8;
        text-align: center;
        padding: 10px 0 15px 2px;
        text-decoration: none; } }
