Amazon Faves

Costa Maya Cruise Port Guide: Beach Clubs, Ruins & Top Things to Do

caribbean mexico
Professor Melissa at Hayhu Beach, one of the top excursions in Costa Maya, Mexico and one of the best beaches in Costa Maya

The Costa Maya cruise port is one of the most talked about ports in this part of the Caribbean right now. It’s in the middle of a major multi year transformation tied to Royal Caribbean’s upcoming Perfect Day Mexico project, which will overhaul the whole port experience in the coming years.

It’s also one of the most overlooked cruise ports. Some cruisers skip itineraries with Costa Maya, assuming it’s just a themed shopping village or another basic beach stop. I’ve heard a lot of people ask “Is Costa Maya even worth getting off the ship for?" and my short answer is "yes, yes, you should."

You’ll probably hear the nickname “Costa Maybe” too, which refers to how weather and sea conditions sometimes cause missed port calls or last minute itinerary changes.

So I get why Costa Maya throws people off, especially if all they see is the giant tourist village at the pier. One thing I really don’t love is the maze-like layout that feels like it was built to trap people. It’s confusing on purpose and if you’re trying to get out of there quickly, it’s annoying to navigate.

Last time I visited, it was slammed. We were docked with several mega-ships and close to 20,000 cruisers were flooding the port at once. The crowd control was rough. The whole area felt like a bottleneck and that intentionally confusing layout made it worse. It was the most congested cruise port I’ve ever been to.

Still, I like Costa Maya a lot. It has a real sense of place, easy access to Mayan cultural sites, and one of the strongest identities of any Western Caribbean port. It's also home to my absolute favorite beach club, Nacional.

Once Perfect Day Mexico opens, this port is going to matter even more. If it’s on your itinerary now, this is your window to experience both the current village setup and the real Mahahual just outside the gates.

Even before the full overhaul, though, there’s plenty to do here. You can check out beach clubs, explore Mayan ruins, or go for lagoon adventures that feel totally different from what you’ll find in other nearby ports.

Most ports offer some kind of beach day and Costa Maya cruise port is no exception. Lots of people head to Mahahual for that. But if you’re open to doing something more unique while you’re here, this is the place to do it. Save your beach day for a more standard Caribbean stop.

The second you start walking through the Costa Maya cruise complex, you’ll notice how much it’s geared toward tourists. Performers, shops, restaurants, a pool, even flamingos. But once you step outside into Mahahual, it’s a completely different energy.

Costa Maya Cruise: Costa Maya port map

Costa Maya Cruise Port Map

The Costa Maya cruise port sits on the southeastern edge of Mexico’s Yucatán Peninsula, just outside the small beach town of Mahahual. The port itself is a large, purpose built cruise village designed with visitors in mind, and it feels very different from the local community you find once you leave the gates.

Most ships dock at a very long pier that connects to the cruise village. It's convenient in the sense that you can walk right off the ship without tendering, but do not underestimate the walk. It can take a while to make your way down that pier, especially if you are behind big crowds or pushing a stroller. And once you get into the port village, the layout is intentionally winding, so it can take even longer to get to the exit. I always build in some extra time here, especially when I have an independent excursion or I am trying to get to Mahahual early.

Once you exit the Costa Maya cruise port, Mahahual and the beachfront Malecón area are only a short taxi or trolley ride away. This is where you will find the beach clubs, restaurants, small shops, and that slower seaside atmosphere that many cruisers love. You can also reach tours that visit Mayan ruins, lagoons, and nature experiences that are unique to this region.

Get the Costa Maya Cruise Port Map
Costa Maya Cruise Port Map

Getting Around Costa Maya Cruise Port

The Costa Maya cruise port is easy to navigate, though it is not a fully walkable destination in the same way that some city-based cruise ports are.

The main port complex is walkable, but Mahahual and the Malecón area, which are really the spots that cruisers will want to visit if they prefer to explore beyond the commercialized cruise port area, are a short distance away. Depending on your mobility, interests, and the kind of day you want, here are the best ways to get around:

Taxis and Port Shuttles

The most common way to reach Mahahual from the Costa Maya cruise port is by taxi or shuttle service. Taxis line up outside the port gates and have clearly posted rates to beach clubs and the Malecón. This is the quickest and simplest option for most cruisers. If you plan to visit a beach club, many offer transportation as part of your reservation.

Some cruisers wonder if it is safe to take taxis and explore beyond the Costa Maya cruise port. I understand the concern, and I can only speak from my own experience, but I have taken taxis here many times, including when traveling alone with my young daughter, and I have always felt safe. Taxis are regulated, rates are set, and while the vehicles are not always the newest or fanciest, the service has been consistently reliable in my experience.

Road conditions in the Costa Maya cruise port area can be rough and bumpy, so it's not always the most comfy ride, but it has been a safe one for me.

Related: Explore transportation in Costa Maya

Trolley to Mahahual

The Costa Maya cruise port often operates a trolley that runs between the Costa Maya cruise port and Mahahual. It is a slower ride than a taxi, but it is scenic and an affordable way (just a few bucks per person) to reach the beachfront area if you are not in a hurry.

Golf Cart Rentals

Golf carts in Costa Maya cruise port are a popular option if you want flexibility and the ability to explore different areas outside of Mahahual. Rentals are available near the port and along the road heading toward the village. You can also reserve a golf cart in advance. If you choose this option, remember that golf carts must follow local traffic rules.

Related: Book a Golf Cart Rental

Walking

The Costa Maya cruise port village is walkable with shops, dining, and a large pool area. However, Mahahual is not within comfortable walking distance for most guests. If you want a beach day or plan to explore the Malecón, choose a taxi, shuttle, trolley, or golf cart instead. It also gets ragingly hot, and the sidewalk infrastructure isn't great, so trust me... just take a taxi or other form of transportation. 

Related: Book a tour in the Costa Maya Cruise Port

Guided Tours in Costa Maya Cruise Port

If you want to explore with cultural context or visit Mayan ruins, a guided experience is an excellent option. You can book a Chacchoben Mayan Ruins Tour or a more relaxed outing like a lagoon or beach club day pass. If you book an independent excursion, you'll need to exit the cruise terminal area and meet up with your tour operator outside the village, but if you take a cruise line excursion, you'll likely meet your group in the village off the pier. 

Related: Explore the pros and cons of independent vs. cruise line excursions

Ride Share

Ride share services like Uber and Lyft are not widely used in Costa Maya cruise port. Plan on taxis, shuttles, or a pre arranged tour if you need transportation.

Costa Maya Cruise Port: A yellow taxi van parked near the stone pyramid
Costa Maya Cruise Port: Colorful mural with the Costa Maya logo
Costa Maya Cruise Port: Carniva Jubilee docked in Costa Maya Port

Costa Maya Cruise Port at a Glance

  • Ships: Typically accommodates 2–4 ships at the pier, and when it's at capacity, especially with mega-ships, it gets crazy crowded
  • Wi-Fi: Available in the port village and at many beach clubs in Mahahual
  • ATMs: Available inside the Costa Maya cruise port and throughout Mahahual; machines may dispense only pesos
  • Facilities: Restaurants, bars, shops, large pool, dolphin experience, Aviarius, and restrooms within the port complex
  • Distance to Mahahual: About 3 miles to town via taxi or shuttle map it here
  • Port Address: 97780 Mahahual, Quintana Roo, Mexico
Costa Maya Cruise Port: Princess Cruise Ship Docked in Costa Maya Port
Costa Maya Cruise Port: Welcome signage in Costa Maya Beach

Is the Costa Maya Cruise Port Too “Theme Park"?

Costa Maya is one of the most talked about cruise ports in the Western Caribbean, but not always for reasons you might expect. Some cruisers love the convenience of having a massive pool, bars, restaurants, shopping, and even a dolphin encounter all within steps of the ship. Others describe the port as feeling a little too “theme parkified,” as if it were built more for cruise passengers than for showcasing the real Mexico. And this criticism will likely grow as Perfect Day Mexico is developed.

There is some truth to that observation. Costa Maya’s port village was developed specifically for cruise tourism and is not an organically grown town. That means you get a very polished, easy, contained experience that is great for families and anyone who wants a low-effort port day, but this isn't really reflective of the local community outside the gates of the "village."

But if you want something that feels more like authentic coastal Mexico, all you have to do is step outside the port gates. Just a short taxi ride away, Mahahual offers beach clubs, the waterfront Malecón, local vendors, and a much more relaxed pace that feels entirely different from the cruise terminal environment.

So, is Costa Maya a giant cruise-designed theme park? Only if you decide not to leave the port area. Once you head to Mahahual, you’ll see a very different side of this part of Mexico.

Top Things to Do in Costa Maya Cruise Port

The Costa Maya cruise port is different from many other cruise destinations because the port terminal itself is so developed and intentionally designed for visiting cruisers.

Some people choose to spend their entire day inside the port area without ever exiting the gates, and I understand why. If you prefer an easy port day with plenty to do, you will find a surprising amount of activities right inside the Costa Maya cruise port, although it can become uncomfortably crowded.

Here are some of the top things to do without leaving the port complex. Some can be booked directly with the cruise line as an excursion, or you can buy on-site. Some of these, however, sell out, so if there's something you really want to do, it's best to book in advance.

Aviarius Costa Maya

This multi-level aviary lets you walk through different bird habitats above the port shopping village. It is an easy activity if you want something unique without spending your entire day off site. You enter at one tower and exit from another, crossing a series of suspension bridges and elevated walkways. Tickets can be purchased at the entrance.

Related: See Aviarius reviews on Tripadvisor

Dolphin Experience

There is a dolphin encounter facility inside the Costa Maya cruise port where you can watch dolphins from the walkway or reserve a paid interaction experience. Whether or not to participate is a personal decision based on your preferences and feelings about animal tourism, but it is a popular option for many families visiting the Costa Maya cruise port.

Related: Dolphin Discovery Costa Maya Reviews on Tripadvisor

Large Free Pool and Swim Up Bar

One of the most popular features inside the Costa Maya cruise port is the enormous free pool with a swim-up bar, loungers, and entertainment. If you prefer not to pay for a beach club or excursion, you can easily enjoy a full pool day here. It can get busy on multi-ship days, but it is a convenient and fun option for a relaxed port day.

Beach Style Loungers and Ocean Views

There are beach-style loungers set in sand with beautiful ocean views inside the Costa Maya cruise port, which can be a great option if you want beach vibes without leaving the port. However, you cannot directly access or swim in the ocean from this area due to the rock and breakwater layout that protects the pier.

In most cases, you should expect to order food or drinks if you plan to use the loungers for an extended time. This is similar to many cruise port setups and is something to consider if you want a quiet place to relax, with your feet in the sand (but not a traditional beach day) without heading into Mahahual.

Flamingos and Animal Viewing

The port area has resident flamingos and other animals that can be seen throughout the village. It is a small detail but a memorable one, especially if you are traveling with children. Even if you prefer to explore beyond the commercialized village, it's a fun sight and makes for a great photo opp.

Related: Explore Best Wildlife and Nature Tours in Costa Maya

Shopping and Market Stalls

The Costa Maya cruise port has many shops and market-style vendors selling clothing, jewelry, souvenirs, snacks, and locally made goods. There are also mud baths, massages, chocolate and Tequila tasting experiences, and other touristy activities. As with any cruise port shopping area, prices are aimed at tourists, so negotiate respectfully if you are looking for a better deal.

Related: Explore Best Places to Shop in Costa Maya

Restaurants and Bars

If you want to stay close to the ship and still enjoy a meal or a cocktail, there are restaurants and bars located throughout the Costa Maya cruise port. You will find casual Mexican-inspired dishes, frozen drinks, and quick snacks near the pool and shopping village. Prices are comparable to other cruise-controlled ports in the region.

Related: Explore the Best-rated Restaurants and Bars in Costa Maya

Costa Maya Cruise Port: Shops at the Village

Top Things to Do Outside the Costa Maya Cruise Port

Once you leave the main terminal area and head toward Mahahual, you will find a completely different side of the Costa Maya cruise port experience. Many cruisers come here specifically for the beach club scene, and yes, beach resorts are definitely a thing in Costa Maya, but I will cover those in their own section since there is a lot to discuss.

For now, if you want something beyond the port activities but you are not looking for a full beach day, here are some of the best things to do outside the Costa Maya cruise port:

Walk the Malecón in Mahahual

The beachfront Malecón is the heart of Mahahual and a chill way to spend part of your port day. It isn't a traditional wooden boardwalk, but a paved oceanfront walkway lined with resorts, shops, bars, and restaurants. Several of the beach clubs (discussed in the next section) are located on the Malecón.

You can walk along the waterfront, pop into small shops, grab drinks or snacks, or simply enjoy the view. Street vendors and tour operators are common here, so be prepared for some sales pitches, but a polite “no thank you” is generally respected.

Related: View the Mahahual Malecón on Google Maps

Visit the Faro Lighthouse Area

The lighthouse near the coast provides a scenic viewpoint and a short photo stop. You will likely pass it if you explore the Malecón, and it is an easy walk if you are already spending time in Mahahual. Nearby, you will see small fishing boats and local divers preparing for reef trips, which can give you a feel for the pace of life here.

Snorkeling and Reef Tours

The Mesoamerican Barrier Reef is close to shore in this part of the Yucatán Peninsula, which means you can get excellent snorkeling with relatively short boat rides. You can book a reef snorkel tour in advance or often secure a spot once you arrive in Mahahual.

Water clarity can vary based on weather and surf conditions, like that pesky sargassum that plagues this area, but on a good day, you might see coral formations, sea turtles, rays, and colorful fish.

Related: Book a Costa Maya Reef Snorkel Tour

Costa Maya Cruise Port: Nacional Beach Club

Kayak and Paddleboard Rentals

Several tour operators along the Malecón offer kayak and paddleboard rentals. The water can be calm and clear on good weather days, making this a fun and relaxed activity if you want to be on the water without committing to a full tour. It's also helpful to be able to just decide and book on-site, since you never know how bad the sargassum is going to be on the day of your visit.

Related: Book a kayak in Costa Maya

Beach Day (True Free Public Beach Option)

You cannot enjoy a true beach day inside the Costa Maya cruise port terminal, since you can't access or swim in the ocean from within the controlled port area. If you want an actual beach day, you can choose one of the many paid beach clubs in Mahahual, but there are free options.

If you want a completely free beach day with no entrance fee and no requirement or expectation that you buy food or drinks, that's also possible. There are stretches of shoreline near Mahahual where you can set down a towel, swim, and enjoy the ocean without spending anything. These areas are often located between beach clubs or a short walk farther down the Malecón past the busier sections.

Be aware that amenities are limited in these public areas. You will not have loungers, restrooms, or waiter service, and seagrass can accumulate depending on the season. But if you simply want the sand, ocean, and a no-cost beach experience, it's available.

Chacchoben Mayan Ruins

If you want a deeper cultural and historical experience, the Chacchoben Ruins are one of the most popular excursions in the region. They are located inland, so plan on a longer tour if you choose this option, but the site offers remarkable insight into ancient Mayan civilization.

You can visit on a guided excursion for additional context or book a private tour for a more personalized experience. Some tours also combine the ruins with a lagoon stop or a beach club visit.

Related: Book a Guided Chacchoben Ruins Tour

Lost Mayan Kingdom Water Park

If you're traveling with kids or just want an adrenaline-filled day, Lost Mayan Kingdom is a full-scale water park located near the Costa Maya cruise port. It's packed with massive water slides, zip lines, lazy rivers, splash zones, and even a jungle-themed ride that runs through parts of the park.

This is not a budget stop, but if you want a family-friendly alternative to beach clubs or cultural excursions, it's one of the most action-packed things you can do near the port. Tickets are often sold as excursions through cruise lines, but you can sometimes book independently too. Transportation is usually included with admission.

Admission to the Lost Mayan Kingdom can be pricey, typically ranging from $110 to $ 120 per adult (cheaper for kids), but it includes access to all adventure activities.

While buying tickets in person at the entrance is technically possible, there are no reliable online options for independent advance purchase, meaning you risk the attraction selling out on busy cruise days. And given the limited availability of other waterpark options in Costa Maya, it frequently sells out.

Related: See Lost Mayan Kingdom Reviews

Costa Maya Cruise Port: Beach Club
Costa Maya Cruise Port: Professor Melissa at Nacional Beach Club

Best Costa Maya Cruise Port Beach Clubs

Mahahual is known for its long stretch of shallow turquoise water and a lineup of beach clubs that range from casual and loud to boutique and serene. Many cruisers come to the Costa Maya cruise port specifically for a beach club day, so choosing the right one matters more here than in many other ports.

As a general rule, if you want to use a lounger or stay for several hours, expect to purchase food or drinks even when there is no formal entrance fee, like at Krazy Lobster and Jamie's. Minimum spend requirements vary, and some clubs offer all-inclusive packages, so check in advance if that matters to you.

Other options operate on an all-inclusive model, where you pay one upfront fee for use of loungers and umbrellas (or palapas), use of resort amenities, and unlimited food and drinks, including alcohol. In Costa Maya, I prefer the all-inclusives.

Here are the most popular beach clubs for cruisers in Costa Maya:

Krazy Lobster Beach Club

Krazy Lobster is a popular Costa Maya beach club for cruisers, especially those looking for a budget friendly and casual day. There is no entrance fee, but you are expected to purchase food and drinks if you plan to use beach loungers or stay for a while.

The atmosphere here is lively (meaning sometimes unpleasantly overcrowded) and often busy when multiple ships are in port. It's more of a loud party spot, versus a "kick back and relax at the beach" day. Services may feel basic and the beach area can be crowded, but it is a fun option if you want a low cost beach day, but still with access to the purchase of food and drinks.

Related: Book Krazy Lobster Beach Club

Jamie’s Blue Reef

Jamie’s Blue Reef is another well-known option for cruisers who want something more elevated than a "free" beach day, but at a reasonable cost. Jamie's typically operates on a day pass model with reserved seating, food, and drinks included or a clear minimum spend, which many cruisers appreciate because pricing feels straightforward.

The vibe here is more relaxed than some of the high-energy Malecón spots, like Krazy Lobster, and capacity is usually kept in check, so it does not feel as packed as the most budget-friendly clubs either. It's also on the Malecón, not far from Krazy Lobster, and adjacent to Nacional. If you like the idea of an organized beach day with your chairs, shade, and service sorted ahead of time, Jamie’s is worth considering.

Related: Book Jamie’s Blue Reef

Nacional Beach Club (My Personal Top Pick)

Nacional Beach Club is my personal favorite in Mahahual. It has a more curated and bougie-feeling atmosphere compared to the louder Malecón clubs, and I find the service consistently attentive without being overbearing. The shaded seating, beachfront layout, guaranteed lounger/palapa, and slower pace make it feel more like a proper vacation spot rather than a tourist churn. It's also truly all-inclusive, making it a good value considering all that you get.

What I appreciate most is that it strikes a balance. It is not a luxury priced resort, but it delivers a noticeably better overall experience than the lower cost options. Food and drinks aren't just your average "meh" all-inclusive food, but it's outstanding. There's even lobster on the menu, and they offer breakfast, too, for cruisers with an early call to Costa Maya.

Capacity here is limited, so you don't have to worry about overcrowding.  If you want a beach day that feels calm, comfortable, and still rooted in Mahahual’s character, Nacional is an excellent choice. In my opinion, Nacional is hands-down the best beach club in Costa Maya, and it's one of the few cruise port spots anywhere that I come back to over and over again.

Because of the capacity limit, it does regularly sell out, so I always recommend booking as far in advance as possible. 

Another great thing is that the cost of your day pass here includes transportation. You'll take your own taxi once you exit the cruise terminal village, and upon arrival at Nacional, they'll pay the fare for you. 

Nacional also has a small plunge pool, which is handy if you're visiting on a day when the sargassum is bad.

I have video reviews of Costa Maya's Nacional Beach Club here and here to see what you can expect.

Related: Want to save 5% on your Nacional booking? I have an exclusive arrangement with them, where you can book direct here and use promo code "PROFMELISSA" to receive the discount.

Maya Chan Beach Resort

Maya Chan is is a popular choice for cruisers looking for a Costa Maya beach club, as it's an all inclusive beach experience, rather than the "free with minimum spend" model of Jamie's and Krazy Lobster, and unlike its competitors is not located on the Malecón. It's family owned and intentionally small, with personalized service and transportation included from the Costa Maya cruise port. Space is limited, so this one typically sells out before sail day.

If you want shaded day beds, a slower pace, and food and drinks included, Maya Chan is usually a safe bet. It is not walkable from the Malecón, and that distance is part of why it stays calmer than the in town clubs, but it does make it a bit more difficult to reach.

Related: Read reviews of Maya Chan Beach Resort

Costa Maya Cruise Port: Shops Along the Malecon

Hayhu Beach Experience

Hayhu is a bit different from the Malecón beach clubs. It's far from the others, nowhere near the Malecón, and in fact sits about a 30-minute ride from the cruise terminal. While the trek there and back can be a bit much, including traversing bumpy roads in a taxi, it's still worth it. 

The design, furniture, and food here are all elevated, and the tone is quieter and more intentional. It is farther from the main beach area that it fronts, and that separation shows in the experience. If you want something that feels more private, more refined, and more relaxed, Hayhu is built for that. It's sort of like a beach resort in the jungle. It's lush, it's fancy, it's quiet, and it's relaxing.

Reservations are recommended and there may be a minimum spend or day pass structure (Hayhu has both options). This is not the place you go for loud party beach energy. It's off the beaten path, but if you're traveling with a small group splitting the cost, offers high quality at a reasonable price.

Related: Book a group Hayhu Beach Experience

YaYa Beach Club

YaYa Beach is another solid option with a laid back vibe and flexible day pass packages. It’s an easy walk from the Malecón and tends to be calmer than the busier stretch near the lighthouse.

Day passes typically start around $25 to $35 for basic access with a lounger and shaded area. If you want open bar or upgraded amenities, you’ll pay more. Unlike all-inclusive beach clubs like Nacional or Hayhu, YaYa is more of a build-your-own experience with add-ons priced separately. This means that it could be a more affordable beach club option, but the trade off is feeling nickel-and-dimed.

Related: Book YaYa Beach Club

Free Public Beach Areas

You can also enjoy a completely free beach day in Mahahual with no entrance fee and no obligation to buy food or drinks. These stretches of beach are usually located between beach clubs or farther down the Malecón. There are no facilities, so it's towel in the sand and ocean time, which works well for cruisers who want the beach without the spend. Remember, though, that sargassum can be present depending on the season.

Tips for Mahahual Beach Clubs

  • Nearly all clubs expect a food or drink purchase if you use loungers, even without an entry fee, like Jamie's, YaYa and Krazy Lobster.
  • Vendors are common along the busier beach sections. A polite “no thank you” is usually enough. Even still, it can be admittedly annoying when vendors interrupt your beach day experience every few minutes.
  • If you prefer quiet, choose a club south of town or one that requires reservations.
  • Seagrass (or "sargassum") is a natural part of this coastline. Some clubs manage it better than others, but there's really no containing it when it's bad. 
  • Beach massages are a "thing" here, available at all of the beach clubs, and is one of my favorite parts of a Costa Maya beach day experience. They're affordable... and phenomenal. 
Costa Maya Cruise Port: Krazy Lobster

The Future of Costa Maya and Perfect Day Mexico

The Costa Maya cruise port is in the middle of a massive transformation. Royal Caribbean is developing Perfect Day Mexico, inspired by their wildly popular Perfect Day at CocoCay. This multi-year project is going to completely change what the port looks and feels like.

Here's the thing, though. Several cruise lines have already scaled back with including Costa Maya in their itineraries. 

So what happens to cruisers on non-Royal Caribbean corporation owned cruise lines else once Perfect Day Mexico is complete? As of now, there's been no official word that other cruise lines will be shut out. The port is expected to remain accessible to multiple lines, but Royal Caribbean and Celebrity will have exclusive sections and experiences that other cruise lines won't be able to access.

If you're sailing with a line that's not Royal Caribbean or Celebrity, you should still expect to dock at Costa Maya cruise port and enjoy Mahahual, independent beach clubs like Nacional and Maya Chan, Chacchoben ruins excursions, and snorkeling trips. Just know the port layout, access, and pricing could shift as development continues.

👉 View the Costa Maya Cruise Port Ship Schedule 🛳️

Language and Currency in Costa Maya Cruise Port

The official language of Costa Maya and Mahahual is Spanish, but English is widely spoken in the cruise port area and at most beach clubs, restaurants, and tour operator stands. You will likely have little trouble communicating in English in the areas most travelers visit, and even with taxi drivers, so knowing a few basic Spanish phrases is helpful.

The local currency is the Mexican peso (MXN). United States dollars are accepted in most cruise-facing businesses, including taxis, souvenir stands, beach clubs, and bars. That said, it is common for change to be given back in pesos, and conversion rates vary by vendor. Some use very reasonable rates, and others round up in a way that benefits the seller, so it helps to have a general sense of approximate pricing.

Credit cards are accepted at many beach clubs and established restaurants, but smaller stands, local vendors, and massage providers typically prefer cash. If you want the simplest experience, keep small bills in USD or pesos for purchases like snacks, tips, restrooms, and beach equipment.

ATMs are available both inside the cruise port and in Mahahual. Machines may dispense only pesos, and many will ask whether you want to be charged in your home currency or in pesos. Choosing pesos usually yields a better exchange rate, while dynamic currency conversion (charging in USD) often costs more without making it obvious.

For most cruisers, a mix of small USD bills and a credit card with no foreign transaction fees is enough for a smooth day in port.

Related: Check out my go-to travel-specific credit card I use when traveling

Chicken Rooster in Key West Cruise Port

Are the Ruins and Cenotes in Costa Maya Authentic?

One of the biggest draws for travelers visiting Mexico is the chance to explore ancient Mayan ruins and swim in stunning cenotes. Costa Maya cruise port is no exception, and you will see countless tours promoting both experiences the moment you walk off the ship. But a common question comes up: how authentic are the ruins and cenotes near Costa Maya?

The short answer is that Costa Maya offers access to real archaeological sites and real natural cenotes, but not every tour gives you the same level of cultural depth. The most well-known ruins accessible from the port are the Chacchoben Ruins, which date back more than 1,000 years. These are authentic Mayan structures, and guided tours can offer meaningful history and context.

You may also see excursions marketed as visits to a “Mayan village” or “Mayan cultural park.” Some are informative and community connected, while others lean more into staged (i.e. fake) performances created for cruise tourists. Neither is necessarily wrong, but it helps to know what you are booking.

The same idea applies to cenotes. Mexico’s cenotes are natural sinkholes formed by collapsed limestone, and they are a significant part of Mayan history and cosmology. Tours from Costa Maya can take you to natural cenotes, though some are more developed for tourism than others, with added platforms, hammocks, and bars.

If you're interested in visiting Costa Maya’s real Mayan ruins or unique lagoon areas like Bacalar, your best bet is booking through the cruise line. Why? These sites are located well outside the terminal area and require reliable transportation with guaranteed return timing, so you don't risk missing the ship.

Costa Maya Cruise Port: Nacional Beach Club Palapas and Loungers
Costa Maya Cruise Port: Loungers at Port Are Free with Food or Drink Purchase

Time Zone in Costa Maya Cruise Port

Costa Maya cruise port is located in the Mexican state of Quintana Roo, which observes Eastern Standard Time (UTC 5) year round and does not switch for Daylight Saving Time. Depending on the time of year, this may or may not match the time used on your ship.

Some cruise lines stay on “ship time,” which does not always change to match local time. Always confirm the correct time before leaving the port area, especially if you plan to visit Mahahual or have an independently booked excursion. Your all aboard time is based on ship time, not local time.

If you use a phone with roaming or an international plan, it may automatically update to local time once you exit the terminal. Many cruisers set their phone to manual time mode during port days to avoid confusion.

Related: Check out my go-to for keeping track of ship time easily

Costa Maya Cruise Port: Carnival Jubilee Docked

Costa Maya Cruise Port FAQs

Video: A Cruiser's Guide to the Costa Maya Cruise Port

#block-1755536107589 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755536107589 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755536107589 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755536107589 .block { padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755536107589 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755554634660 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755554634660 .block { border: 4px black; border-radius: 4px; background-color: #ecf0f1; padding: 0px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755554634660 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755554634660 .block { padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755554634660 { text-align: left; } } #block-1695978871700 { margin-top: 5px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; } #block-1695978871700 .block { border: 4px black; border-radius: 4px; background-color: #ecf0f1; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1695978871700 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1695978871700 .block { padding: 0px; padding: 0px; padding-top: 15px; padding-right: 10px; padding-bottom: 15px; padding-left: 15px; } } @media (max-width: 767px) { #block-1695978871700 { text-align: left; } } #block-1695978871700 .image__image { max-width: 27%; border-radius: 5px; } #block-1695978871700 .image__image { float: right; margin-left: 17px; margin-bottom: 10px; } #block-1695978871700 .btn, [data-slick-id="1695978871700"] .block .btn { color: #000000; border-color: #60dedb; border-radius: 100px; background-color: #60dedb; } #block-1695978871700 .btn--outline, [data-slick-id="1695978871700"] .block .btn--outline { background: transparent; color: #60dedb; } #block-1763315180732 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1763315180732 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1763315180732 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1763315180732 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1763315180732 { text-align: ; } } #block-1763315180732 .block, [data-slick-id="1763315180732"] .block { display: flex; justify-content: flex-start; } #block-1763315180732 .image, [data-slick-id="1763315180732"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1763315180732 .image__image, [data-slick-id="1763315180732"] .image__image { width: 100%; } #block-1763315180732 .image__overlay, [data-slick-id="1763315180732"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1763315180732 .image__overlay-text, [data-slick-id="1763315180732"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1763315180732 .block, [data-slick-id="1763315180732"] .block { display: flex; justify-content: center; } #block-1763315180732 .image__overlay, [data-slick-id="1763315180732"] .image__overlay { opacity: 0; } #block-1763315180732 .image__overlay:hover { opacity: 1; } } #block-1755538207916 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755538207916 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755538207916 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755538207916 .block { padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755538207916 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1694872795640 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1694872795640 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1694872795640 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1694872795640 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1694872795640 { text-align: ; } } #block-1694872795640 .block, [data-slick-id="1694872795640"] .block { display: flex; justify-content: flex-start; } #block-1694872795640 .image, [data-slick-id="1694872795640"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1694872795640 .image__image, [data-slick-id="1694872795640"] .image__image { width: 100%; } #block-1694872795640 .image__overlay, [data-slick-id="1694872795640"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1694872795640 .image__overlay-text, [data-slick-id="1694872795640"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1694872795640 .block, [data-slick-id="1694872795640"] .block { display: flex; justify-content: flex-start; } #block-1694872795640 .image__overlay, [data-slick-id="1694872795640"] .image__overlay { opacity: 0; } #block-1694872795640 .image__overlay:hover { opacity: 1; } } #block-1694872799582 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1694872799582 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1694872799582 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1694872799582 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1694872799582 { text-align: ; } } #block-1694872799582 .block, [data-slick-id="1694872799582"] .block { display: flex; justify-content: flex-start; } #block-1694872799582 .image, [data-slick-id="1694872799582"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1694872799582 .image__image, [data-slick-id="1694872799582"] .image__image { width: 100%; } #block-1694872799582 .image__overlay, [data-slick-id="1694872799582"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1694872799582 .image__overlay-text, [data-slick-id="1694872799582"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1694872799582 .block, [data-slick-id="1694872799582"] .block { display: flex; justify-content: flex-start; } #block-1694872799582 .image__overlay, [data-slick-id="1694872799582"] .image__overlay { opacity: 0; } #block-1694872799582 .image__overlay:hover { opacity: 1; } } #block-1755562158546 { margin-top: 5px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; } #block-1755562158546 .block { border: 4px black; border-radius: 4px; background-color: #ecf0f1; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1755562158546 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755562158546 .block { padding: 0px; padding: 0px; padding-top: 15px; padding-right: 10px; padding-bottom: 0px; padding-left: 15px; } } @media (max-width: 767px) { #block-1755562158546 { text-align: left; } } #block-1755562158546 .image__image { max-width: 35%; border-radius: 5px; } #block-1755562158546 .image__image { float: right; margin-left: 12px; margin-bottom: 10px; } #block-1755538897505 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755538897505 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755538897505 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755538897505 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755538897505 { text-align: ; } } #block-1755538897505 .block, [data-slick-id="1755538897505"] .block { display: flex; justify-content: flex-start; } #block-1755538897505 .image, [data-slick-id="1755538897505"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755538897505 .image__image, [data-slick-id="1755538897505"] .image__image { width: 100%; } #block-1755538897505 .image__overlay, [data-slick-id="1755538897505"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755538897505 .image__overlay-text, [data-slick-id="1755538897505"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755538897505 .block, [data-slick-id="1755538897505"] .block { display: flex; justify-content: center; } #block-1755538897505 .image__overlay, [data-slick-id="1755538897505"] .image__overlay { opacity: 0; } #block-1755538897505 .image__overlay:hover { opacity: 1; } } #block-1755539653896 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755539653896 .block { border: 4px black; border-radius: 4px; background-color: #ecf0f1; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1755539653896 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755539653896 .block { padding: 0px; padding: 0px; padding-top: 20px; padding-right: 5px; padding-bottom: 10px; padding-left: 20px; } } @media (max-width: 767px) { #block-1755539653896 { text-align: left; } } #block-1755539653896 .image__image { max-width: 35%; border-radius: 4px; } #block-1755539653896 .image__image { float: right; margin-left: 15px; margin-bottom: 10px; } #block-1755539080552 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755539080552 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755539080552 { margin-top: 10px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755539080552 .block { padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755539080552 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755550840188 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755550840188 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755550840188 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755550840188 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755550840188 { text-align: ; } } #block-1755550840188 .block, [data-slick-id="1755550840188"] .block { display: flex; justify-content: flex-start; } #block-1755550840188 .image, [data-slick-id="1755550840188"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755550840188 .image__image, [data-slick-id="1755550840188"] .image__image { width: 100%; } #block-1755550840188 .image__overlay, [data-slick-id="1755550840188"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755550840188 .image__overlay-text, [data-slick-id="1755550840188"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755550840188 .block, [data-slick-id="1755550840188"] .block { display: flex; justify-content: center; } #block-1755550840188 .image__overlay, [data-slick-id="1755550840188"] .image__overlay { opacity: 0; } #block-1755550840188 .image__overlay:hover { opacity: 1; } } #block-1761179941637 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1761179941637 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1761179941637 { margin-top: 10px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1761179941637 .block { padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1761179941637 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755540685876 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755540685876 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755540685876 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755540685876 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755540685876 { text-align: ; } } #block-1755540685876 .block, [data-slick-id="1755540685876"] .block { display: flex; justify-content: flex-start; } #block-1755540685876 .image, [data-slick-id="1755540685876"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755540685876 .image__image, [data-slick-id="1755540685876"] .image__image { width: 100%; } #block-1755540685876 .image__overlay, [data-slick-id="1755540685876"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755540685876 .image__overlay-text, [data-slick-id="1755540685876"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755540685876 .block, [data-slick-id="1755540685876"] .block { display: flex; justify-content: center; } #block-1755540685876 .image__overlay, [data-slick-id="1755540685876"] .image__overlay { opacity: 0; } #block-1755540685876 .image__overlay:hover { opacity: 1; } } #block-1755540195794 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755540195794 .block { border: 1px dashed #95a5a6; border-radius: 26px; background-color: #60dedb; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1755540195794 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755540195794 .block { padding: 0px; padding: 0px; padding-top: 14px; padding-right: 25px; padding-bottom: 0px; padding-left: 25px; } } @media (max-width: 767px) { #block-1755540195794 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755540469436 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755540469436 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755540469436 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755540469436 .block { padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755540469436 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755541195928 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541195928 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755541195928 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541195928 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755541195928 { text-align: ; } } #block-1755541195928 .block, [data-slick-id="1755541195928"] .block { display: flex; justify-content: flex-start; } #block-1755541195928 .image, [data-slick-id="1755541195928"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755541195928 .image__image, [data-slick-id="1755541195928"] .image__image { width: 100%; } #block-1755541195928 .image__overlay, [data-slick-id="1755541195928"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755541195928 .image__overlay-text, [data-slick-id="1755541195928"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755541195928 .block, [data-slick-id="1755541195928"] .block { display: flex; justify-content: flex-start; } #block-1755541195928 .image__overlay, [data-slick-id="1755541195928"] .image__overlay { opacity: 0; } #block-1755541195928 .image__overlay:hover { opacity: 1; } } #block-1755541213845 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541213845 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755541213845 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541213845 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755541213845 { text-align: ; } } #block-1755541213845 .block, [data-slick-id="1755541213845"] .block { display: flex; justify-content: flex-start; } #block-1755541213845 .image, [data-slick-id="1755541213845"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755541213845 .image__image, [data-slick-id="1755541213845"] .image__image { width: 100%; } #block-1755541213845 .image__overlay, [data-slick-id="1755541213845"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755541213845 .image__overlay-text, [data-slick-id="1755541213845"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755541213845 .block, [data-slick-id="1755541213845"] .block { display: flex; justify-content: flex-start; } #block-1755541213845 .image__overlay, [data-slick-id="1755541213845"] .image__overlay { opacity: 0; } #block-1755541213845 .image__overlay:hover { opacity: 1; } } #block-1755540900538 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755540900538 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755540900538 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755540900538 .block { padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755540900538 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755541002552 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541002552 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755541002552 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541002552 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755541002552 { text-align: ; } } #block-1755541002552 .block, [data-slick-id="1755541002552"] .block { display: flex; justify-content: flex-start; } #block-1755541002552 .image, [data-slick-id="1755541002552"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755541002552 .image__image, [data-slick-id="1755541002552"] .image__image { width: 100%; } #block-1755541002552 .image__overlay, [data-slick-id="1755541002552"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755541002552 .image__overlay-text, [data-slick-id="1755541002552"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755541002552 .block, [data-slick-id="1755541002552"] .block { display: flex; justify-content: center; } #block-1755541002552 .image__overlay, [data-slick-id="1755541002552"] .image__overlay { opacity: 0; } #block-1755541002552 .image__overlay:hover { opacity: 1; } } #block-1755541517484 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541517484 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755541517484 { margin-top: 15px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755541517484 .block { padding: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755541517484 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755542211310 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755542211310 .block { border: 4px black; border-radius: 4px; background-color: #ecf0f1; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1755542211310 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755542211310 .block { padding: 0px; padding: 0px; padding-top: 20px; padding-right: 5px; padding-bottom: 10px; padding-left: 20px; } } @media (max-width: 767px) { #block-1755542211310 { text-align: left; } } #block-1755542211310 .image__image { max-width: 35%; border-radius: 4px; } #block-1755542211310 .image__image { float: right; margin-left: 15px; margin-bottom: 10px; } #block-1755551719584 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755551719584 .block { border: 2px dashed #ecf0f1; border-radius: 28px; background-color: #60dedb; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1755551719584 { margin-top: -20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755551719584 .block { padding: 0px; padding: 0px; padding-top: 14px; padding-right: 25px; padding-bottom: 0px; padding-left: 25px; } } @media (max-width: 767px) { #block-1755551719584 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755542516828 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755542516828 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755542516828 { margin-top: 15px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755542516828 .block { padding: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755542516828 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1763309546821 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1763309546821 .block { border: 4px black; border-radius: 4px; background-color: #ecf0f1; padding: 0px; padding: 0px; padding: 0px; padding-top: 15px; padding-right: 15px; padding-bottom: 15px; padding-left: 15px; } @media (min-width: 768px) { #block-1763309546821 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1763309546821 .block { padding: 0px; padding: 0px; padding-top: 20px; padding-right: 5px; padding-bottom: 10px; padding-left: 20px; } } @media (max-width: 767px) { #block-1763309546821 { text-align: left; } } #block-1763309546821 .image__image { max-width: 35%; border-radius: 4px; } #block-1763309546821 .image__image { float: right; margin-left: 15px; margin-bottom: 10px; } #block-1755551253458 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551253458 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755551253458 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551253458 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755551253458 { text-align: ; } } #block-1755551253458 .block, [data-slick-id="1755551253458"] .block { display: flex; justify-content: flex-start; } #block-1755551253458 .image, [data-slick-id="1755551253458"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755551253458 .image__image, [data-slick-id="1755551253458"] .image__image { width: 100%; } #block-1755551253458 .image__overlay, [data-slick-id="1755551253458"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755551253458 .image__overlay-text, [data-slick-id="1755551253458"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755551253458 .block, [data-slick-id="1755551253458"] .block { display: flex; justify-content: flex-start; } #block-1755551253458 .image__overlay, [data-slick-id="1755551253458"] .image__overlay { opacity: 0; } #block-1755551253458 .image__overlay:hover { opacity: 1; } } #block-1755551243013 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551243013 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755551243013 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551243013 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755551243013 { text-align: ; } } #block-1755551243013 .block, [data-slick-id="1755551243013"] .block { display: flex; justify-content: flex-start; } #block-1755551243013 .image, [data-slick-id="1755551243013"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755551243013 .image__image, [data-slick-id="1755551243013"] .image__image { width: 100%; } #block-1755551243013 .image__overlay, [data-slick-id="1755551243013"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755551243013 .image__overlay-text, [data-slick-id="1755551243013"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755551243013 .block, [data-slick-id="1755551243013"] .block { display: flex; justify-content: flex-start; } #block-1755551243013 .image__overlay, [data-slick-id="1755551243013"] .image__overlay { opacity: 0; } #block-1755551243013 .image__overlay:hover { opacity: 1; } } #block-1755551308933 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551308933 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755551308933 { margin-top: 15px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551308933 .block { padding: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755551308933 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755551524535 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551524535 .block { border: 4px black; border-radius: 0px; padding: 0px; padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755551524535 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755551524535 .block { padding: 0; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755551524535 { text-align: ; } } #block-1755551524535 .block, [data-slick-id="1755551524535"] .block { display: flex; justify-content: flex-start; } #block-1755551524535 .image, [data-slick-id="1755551524535"] .image { width: 100%; overflow: hidden; border-radius: 4px; } #block-1755551524535 .image__image, [data-slick-id="1755551524535"] .image__image { width: 100%; } #block-1755551524535 .image__overlay, [data-slick-id="1755551524535"] .image__overlay { opacity: 0; background-color: #fff; border-radius: 4px; } #block-1755551524535 .image__overlay-text, [data-slick-id="1755551524535"] .image__overlay-text { color: !important; } @media (min-width: 768px) { #block-1755551524535 .block, [data-slick-id="1755551524535"] .block { display: flex; justify-content: center; } #block-1755551524535 .image__overlay, [data-slick-id="1755551524535"] .image__overlay { opacity: 0; } #block-1755551524535 .image__overlay:hover { opacity: 1; } } #block-1755552875609 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755552875609 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755552875609 { margin-top: 10px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755552875609 .block { padding: 0px; padding-top: -10px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755552875609 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } #block-1755552778128 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755552778128 .block { border: 4px black; border-radius: 4px; background-color: #fff; padding: 0px; padding: 0px; padding: 0px; padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; } @media (min-width: 768px) { #block-1755552778128 { margin-top: -10px; margin-right: 0px; margin-bottom: -20px; margin-left: 0px; } #block-1755552778128 .block { padding: 0px; padding: 0px; padding-top: 30px; padding-right: 30px; padding-bottom: 30px; padding-left: 30px; } } @media (max-width: 767px) { #block-1755552778128 { text-align: left; } } #block-1755552778128 .accordion-title h5 { margin: 0; cursor: pointer; } #block-1755552778128 .accordion-body { padding-top: 24px; } #block-1755552778128 .accordion-title.collapsed:after { content: "\f067"; margin-left: 24px; } #block-1755552778128 .accordion-title:after { content: "\f068"; margin-left: 24px; color: ; } #block-1755552970975 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755552970975 .block { border: 4px black; border-radius: 4px; background-color: #fff; padding: 0px; padding: 0px; padding: 0px; padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; } @media (min-width: 768px) { #block-1755552970975 { margin-top: 0px; margin-right: 0px; margin-bottom: -20px; margin-left: 0px; } #block-1755552970975 .block { padding: 0px; padding: 0px; padding-top: 30px; padding-right: 30px; padding-bottom: 30px; padding-left: 30px; } } @media (max-width: 767px) { #block-1755552970975 { text-align: left; } } #block-1755552970975 .accordion-title h5 { margin: 0; cursor: pointer; } #block-1755552970975 .accordion-body { padding-top: 24px; } #block-1755552970975 .accordion-title.collapsed:after { content: "\f067"; margin-left: 24px; } #block-1755552970975 .accordion-title:after { content: "\f068"; margin-left: 24px; color: ; } #block-1755553187967 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755553187967 .block { border: 4px black; border-radius: 4px; background-color: #fff; padding: 0px; padding: 0px; padding: 0px; padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; } @media (min-width: 768px) { #block-1755553187967 { margin-top: 0px; margin-right: 0px; margin-bottom: -20px; margin-left: 0px; } #block-1755553187967 .block { padding: 0px; padding: 0px; padding-top: 30px; padding-right: 30px; padding-bottom: 30px; padding-left: 30px; } } @media (max-width: 767px) { #block-1755553187967 { text-align: left; } } #block-1755553187967 .accordion-title h5 { margin: 0; cursor: pointer; } #block-1755553187967 .accordion-body { padding-top: 24px; } #block-1755553187967 .accordion-title.collapsed:after { content: "\f067"; margin-left: 24px; } #block-1755553187967 .accordion-title:after { content: "\f068"; margin-left: 24px; color: ; } #block-1755553260566 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755553260566 .block { border: 4px black; border-radius: 4px; background-color: #fff; padding: 0px; padding: 0px; padding: 0px; padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; } @media (min-width: 768px) { #block-1755553260566 { margin-top: 0px; margin-right: 0px; margin-bottom: -20px; margin-left: 0px; } #block-1755553260566 .block { padding: 0px; padding: 0px; padding-top: 30px; padding-right: 30px; padding-bottom: 30px; padding-left: 30px; } } @media (max-width: 767px) { #block-1755553260566 { text-align: left; } } #block-1755553260566 .accordion-title h5 { margin: 0; cursor: pointer; } #block-1755553260566 .accordion-body { padding-top: 24px; } #block-1755553260566 .accordion-title.collapsed:after { content: "\f067"; margin-left: 24px; } #block-1755553260566 .accordion-title:after { content: "\f068"; margin-left: 24px; color: ; } #block-1755553295362 { margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; } #block-1755553295362 .block { border: 4px black; border-radius: 4px; background-color: #fff; padding: 0px; padding: 0px; padding: 0px; padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; } @media (min-width: 768px) { #block-1755553295362 { margin-top: 0px; margin-right: 0px; margin-bottom: 25px; margin-left: 0px; } #block-1755553295362 .block { padding: 0px; padding: 0px; padding-top: 30px; padding-right: 30px; padding-bottom: 30px; padding-left: 30px; } } @media (max-width: 767px) { #block-1755553295362 { text-align: left; } } #block-1755553295362 .accordion-title h5 { margin: 0; cursor: pointer; } #block-1755553295362 .accordion-body { padding-top: 24px; } #block-1755553295362 .accordion-title.collapsed:after { content: "\f067"; margin-left: 24px; } #block-1755553295362 .accordion-title:after { content: "\f068"; margin-left: 24px; color: ; } #block-1755552122302 { margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755552122302 .block { border: 4px black; border-radius: 4px; padding: 0px; padding: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } @media (min-width: 768px) { #block-1755552122302 { margin-top: -5px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; } #block-1755552122302 .block { padding: 0px; padding-top: -10px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } } @media (max-width: 767px) { #block-1755552122302 { text-align: left; } } #block-1577982541036_0 .btn { margin-top: 1rem; } .awesomecontainer { background: ; h1, h2, h3, h4, h5, h6, p, ul, li, .block-type--table table {color: ;} padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; } .awesomecontainer .row { -webkit-box-align: flex-start; -ms-flex-align: flex-start; align-items: flex-start; } .awesomecontainer .row .block-type--accordion { align-self: flex-start; }

BABY, LET'S CRUISE...

Let us help you plan the cruise (or trip) of a lifetime!
Let's Go!

Subscribe to my Cruiseletter

Get juicy cruise info, insider tips, and FREE port guides, delivered straight to your inbox. Plus, you'll get my FREE Cruise Packing List & Planner, and I promise to never spam you.

By submitting this form, you're agreeing to receive emails from Professor Melissa. Don't worry, your info is safe with me. We'll never share or sell it. You can also unsubscribe at any time.