/* FAQS PAGE */
.faqs__wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--gutter-lg);
}

.faqs__group p:last-of-type {
  margin-top: var(--gutter-md);
}

.faqs__action {
  display: flex;
  justify-content: center;
}

/* ABOUT US PAGE */
.about-us {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

.about-us__values {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
  margin-top: var(--gutter-md);
}

.about-us__values-item {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
  text-align: center;
}

.about-us__values-item-icon {
  align-self: center;
  width: 64px;
  object-fit: cover;
}

.about-us__values-item-info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
  justify-content: center;
}

.about-us__dv-story,
.about-us__agent-custom-title {
  margin-top: var(--gutter-md);
}

/* EXPLORE MORE PAGE */
.explore-more__list {
  display: flex;
  flex-direction: column;
}

.explore-more__list-item {
  padding: var(--padding-xxl) 0;
}

.explore-more__list-item:first-of-type {
  padding-top: 0;
}

.explore-more__list-item:last-of-type {
  padding-bottom: 0;
}

.explore-more__list-item:not(:last-of-type) {
  border-bottom: 1px solid var(--ui-gray-medium);
}

.explore-more__list-item-article {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}

.explore-more__list-item-article-summary {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}

.explore-more__list-item-article-summary .btn {
  margin-top: var(--gutter-sm);
}

.explore-more__list-item-article-cover {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
  order: -1;
}

/* EXPLORE MORE - ARTICLE PAGE */
.explore-more-article__wrapper {
  display: flex;
  flex-direction: column;
}

.explore-more-article > .content__image {
  margin-bottom: var(--gutter-lg);
}

.explore-more-article__wrapper :is(h2, h3, h4) {
  margin: var(--gutter-md) 0;
}

.explore-more-article__wrapper ol,
.explore-more-article__wrapper ul {
  margin-top: var(--gutter-md);
  padding-inline-start: var(--gutter-md);
}

.explore-more-article__wrapper ul li {
  list-style-type: initial;
}

.explore-more-article__wrapper ol li,
.explore-more-article__wrapper ul li {
  font-size: var(--body-txt-regular);
  line-height: var(--body-txt-line-height-regular);
  color: var(--ui-black);
  list-style-position: inside;
}

.explore-more-article__wrapper p {
  margin: var(--gutter-sm) 0;
}

/* LUXURY CRUISES PAGE */
.luxury-cruises__hero, .list-supplier-content__hero {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.luxury-cruises__hero-title {
  color: var(--ui-white);
  text-align: center;
  text-shadow: var(--text-shdw);
}
.luxury-cruises__section-wrapper, .list-supplier__section-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
  padding: var(--padding-xxl) var(--padding-lg);
}
.luxury-cruises__corporate-search {
  margin: 0 0 var(--gutter-xl) 0;
}

.luxury-cruises__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
  place-content: center;
}

.luxury-cruises__list-item-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gutter-lg);
  background-color: var(--ui-white);
  border: var(--dflt-border-solid);
  border-radius: var(--card-border-radius);
  padding-bottom: var(--padding-xl);
  box-shadow: var(--box-shdw);
  overflow: hidden;
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease;
}

.luxury-cruises__list-item-card:hover {
  transform: scale(1.015);
  box-shadow: var(--box-shdw-hvr);
}

.luxury-cruises__list-item-card-cover {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}

.luxury-cruises__list-item-card-name {
  pointer-events: none;
}

/* EDITORIAL VIDEO GALLERY - VIDEO CATEGORY PAGES */
.video-gallery__wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--gutter-lg);
}

.video-gallery__video {
  width: 100%;
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  overflow: hidden;
}

.video-gallery__video-iframe {
  width: 100%;
  height: 100%;
}

.video-gallery__subtitle {
  text-align: center;
}

.video-gallery__group {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

/* DESTINATION PAGE */
.destination__wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

.destination__info {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}

.destination__info-facts :is(ul, li) {
  font-size: var(--body-txt-regular);
  line-height: normal;
}

.destination__info-summary {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
}

.destination__spots,
.destination__must-do-activities,
.travel-insurance__top-reasons,
.travel-insurance__leisureCare {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

.destination__spots-info,
.destination__must-do-activities-info,
.travel-insurance__leisureCare-info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
}

.destination__spots-cards,
.travel-insurance__leisureCare-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-md);
}

.destination__spots-cards-item,
.travel-insurance__leisureCare-cards-item {
  display: flex;
  flex-direction: column;
  background-color: var(--ui-white);
  border: var(--dflt-border-solid);
  border-radius: var(--card-border-radius);
  box-shadow: var(--box-shdw);
  overflow: hidden;
}

.destination__spots-cards-item-cover,
.travel-insurance__leisureCare-cards-item-cover {
  width: 100%;
  aspect-ratio: 20/9;
  object-fit: cover;
}

.destination__spots-cards-item-info,
.travel-insurance__leisureCare-cards-item-info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
  padding: calc(var(--padding-lg) * 1.5);
}
.destination__spots-cards-item-info {
  height: 100%;
}
.destination__spots-cards-item-info > .btn {
  margin: 0 auto;
  margin-top: auto;
}

/* LUXURY VACATIONS PAGE */
.content--luxury-vacations :is(h1, h2) {
  font-family: var(--secondary-font);
}

.luxury-vacations {
  gap: var(--gutter-xl);
}

.luxury-vacations .content__heading {
  padding-bottom: 0;
}

.luxury-vacations__carousel .dv-carousel__list-card-content {
  position: relative;
}
.luxury-vacations__carousel-link {
  position: absolute;
  left: var(--gutter-md);
  bottom: var(--gutter-md);
  cursor: pointer;
  font-family: var(--secondary-font);
  font-size: var(--body-txt-lg);
  text-shadow: var(--text-shdw);
  line-height: 1;
}

.luxury-vacations__carousel:last-of-type .dv-carousel__list {
  grid-auto-columns: calc((100% - var(--gutter-md)) / 1.5);
}

.luxury-vacations__carousel:last-of-type .dv-carousel__list-card {
  aspect-ratio: 9/16;
}

.luxury-vacations__partnerships {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--gutter-md);
}

.luxury-vacations__partnerships-card {
  width: 100%;
  aspect-ratio: 16/10;
  border-radius: var(--card-border-radius);
  overflow: hidden;
}

.luxury-vacations__partnerships-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.luxury-vacations__uncover-sights {
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
}

.luxury-vacations__uncover-sights-iframe {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 10px;
}

.luxury-vacations__uncover-sights-info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}

.luxury-vacations__uncover-sights-info-btn {
  margin-top: var(--gutter-sm);
}

/* TRAVEL INSURANCE PAGE */
.travel-insurance .content__heading {
  padding-bottom: 0;
}

.travel-insurance__wrapper,
.deals__wrapper,
.lists__wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

.travel-insurance__plans {
  text-align: center;
}

.travel-insurance__policy {
  margin-top: var(--gutter-lg);
}

.travel-insurance__policy,
.before-you-go__note {
  text-align: justify;
}

.content__frame:has(.travel-insurance__plans-quick-buttons-resources) {
  margin-bottom: var(--gutter-xl);
}

/* BEFORE YOU GO PAGE */
.before-you-go__primary,
.cruising-tips__book-cruise,
.destination-weddings__primary,
.honeymoon-registry__use,
.passport-information__summary {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}

.before-you-go__info,
.cruising-tips__book-cruise-info,
.cruising-tips__stateroom-choice-group,
.destination-weddings__info,
.honeymoon-registry__use-info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}

.before-you-go__info > * {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
}

.before-you-go__collage-grid {
  order: -1;
  aspect-ratio: 16/9;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 50% 50%;
  gap: var(--gutter-sm);
  border-radius: 10px;
  overflow: hidden;
}

.before-you-go__collage-grid-image {
  height: 100%;
  width: 100%;
}

.before-you-go__collage-grid-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

.before-you-go__prepare > h2 {
  text-align: center;
}

.before-you-go__prepare-banners {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}

/* CRUISING TIPS PAGE */
.cruising-tips__book-cruise-cover,
.destination-weddings__cover,
.honeymoon-registry__use-cover,
.passport-information__summary-cover {
  order: -1;
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 16/7;
}

.cruising-tips__book-cruise-cover img,
.destination-weddings__cover img,
.honeymoon-registry__use-cover img,
.passport-information__summary-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cruising-tips__stateroom-choice-group > :is(h2, h3),
.cruising-tips__stateroom-choice-group > p {
  text-align: center;
}

.cruising-tips__stateroom-choice-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-md);
}

.cruising-tips__stateroom-choice-cards-item {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
  background-color: var(--ui-white);
  border: var(--dflt-border-solid);
  border-radius: var(--card-border-radius);
  padding: calc(var(--padding-lg) * 1.5);
}

.cruising-tips__wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

.cruising-tips__pack-cruise,
.cruising-tips__packing-lists {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
}

.cruising-tips__packing-lists-destinations {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gutter-xs);
  font-size: var(--body-txt-regular);
}

.cruising-tips__packing-lists-destinations li::after {
  content: ",";
}
.cruising-tips__packing-lists-destinations li:last-of-type:after {
  content: ".";
}

.cruising-tips__packing-lists-cards {
  margin-top: var(--gutter-md);
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-md);
}

.cruising-tips__packing-lists-cards-item {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-sm);
  background-color: var(--ui-white);
  border: var(--dflt-border-solid);
  border-radius: var(--card-border-radius);
  box-shadow: var(--box-shdw);
  padding: calc(var(--padding-lg) * 1.5);
}

.cruising-tips__packing-lists-cards-item-head {
  display: flex;
  gap: var(--gutter-sm);
  align-items: center;
}

.cruising-tips__packing-lists-cards-item-head img {
  width: 28px;
  height: auto;
}

.cruising-tips__packing-lists-cards-item:last-of-type > p:last-of-type {
  margin-top: var(--gutter-sm);
}

.cruising-tips__who-and-how {
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  padding-bottom: var(--padding-xl);
}

.cruising-tips__who-and-how-cover {
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 16/7;
}

.cruising-tips__who-and-how-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 85%;
}

.cruising-tips__who-and-how-info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}

/* DEALS PAGE */
.deals__categories,
.deals__list,
.lists__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}

.deals__categories-card {
  aspect-ratio: 16/10;
  position: relative;
  display: flex;
  justify-content: center;
  border-radius: var(--card-border-radius);
  overflow: hidden;
}

.deals__categories-card > a {
  position: absolute;
  bottom: 32px;
}

.deals__categories-card-cover {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: 50% 0%;
  transform: scale(1.01);
  -webkit-transition: 0.4s ease;
  -moz-transition: 0.4s ease;
  -o-transition: 0.4s ease;
  transition: 0.4s ease;
}

.deals__categories-card:hover .deals__categories-card-cover {
  filter: blur(2px);
  transform: scale(1.03);
}

.deals__list-card,
.lists__cards-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--ui-white);
  border: var(--dflt-border-solid);
  border-radius: var(--card-border-radius);
  box-shadow: var(--box-shdw);
  overflow: hidden;
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease;
}

.deals__list-card:hover,
.lists__cards-item:hover {
  transform: scale(1.015);
  box-shadow: var(--box-shdw-hvr);
}

.deals__list-card-cover,
.lists__cards-item-cover {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}

.deals__list-card-content,
.lists__cards-item-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gutter-lg);
  padding: var(--padding-xl) calc(var(--padding-lg) * 1.5);
}

.deals__list-card-content > .btn--tertiary,
.lists__cards-item-content > .btn--tertiary {
  pointer-events: none;
}

.deals__list-card-info,
.lists__cards-item-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gutter-md);
  pointer-events: none;
}

.lists__cards-item-info-name,
.deals__list-card-info-name,
.content__deal-offer-card-info-name,
.luxury-cruises__list-item-card-name {
  text-align: center;
}

/* FALLBACK STYLES FOR WYSIWYG */
.deals__list-card-info :is(p, strong) {
  font-size: var(--body-txt-regular);
  line-height: var(--body-txt-line-height-regular);
  color: var(--ui-black);
}
.deals__list-card-info :is(strong) {
  font-weight: 600;
}
.deals__list-card-info > ul {
  padding-inline-start: calc(var(--gutter-md) * 1.5);
}
.deals__list-card-info > ul li {
  list-style-type: initial;
  font-size: var(--body-txt-regular);
  line-height: var(--body-txt-line-height-regular);
  color: var(--ui-black);
}
.deals__list-card-info > ul li::marker {
  color: var(--primary);
}

.deals--military .deals__list-card-content {
  align-items: flex-start;
  width: 100%;
  height: 100%;
}
.deals--military .deals__list-card-info {
  width: 100%;
}
.deals--military .deals__list-card-info > p,
.deals--military .deals__list-card-content > a {
  align-self: center;
}
.deals--military .deals__list-card-info > ul {
  align-self: flex-start;
}
.deals__list-card-content > a {
  margin-top: auto;
}

/* LISTS PAGE TEMPLATE */
.lists__action {
  margin: 0 auto;
}

/* ALL DESTINATIONS */
.destinations-all__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}

.destinations-all__cards-item {
  aspect-ratio: 16/9;
  position: relative;
  display: flex;
  justify-content: center;
  border-radius: var(--card-border-radius);
  overflow: hidden;
}

.destinations-all__cards-item > a {
  position: absolute;
  bottom: 32px;
}

.destinations-all__cards-item-cover {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: 50% 0%;
  transform: scale(1.01);
  -webkit-transition: 0.4s ease;
  -moz-transition: 0.4s ease;
  -o-transition: 0.4s ease;
  transition: 0.4s ease;
}

.destinations-all__cards-item:hover .destinations-all__cards-item-cover {
  filter: blur(2px);
  transform: scale(1.03);
}

.supplier-offers__wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}

/* SUPPLIER HIGHLIGHT */
.supplier-highlight__primary {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}
.supplier-highlight__info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-lg);
}
.supplier-highlight__info-logo {
  height: 100px;
  text-align: center;
}
.supplier-highlight__info-logo img {
  height: 100%;
  object-fit: contain;
}
.supplier-highlight__image {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 10px;
  overflow: hidden;
}
.supplier-highlight__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
.supplier-highlight__destinations .content__heading {
  padding-bottom: 0;
}

/* PROMOS PAGE */
.promos .content__heading {
  padding-bottom: 0;
}
.promos h2 {
  text-align: center;
  margin: 0 auto var(--gutter-lg) auto;
}
.promos__deals-group + * {
  margin-top: var(--gutter-lg);
}

/* PROMOS INACTIVE PAGE */
.promos--inactive__wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--gutter-lg);
}
.promos--inactive__wrapper > h2 {
  text-align: center;
}
.promos--inactive__grid,
.travel-advisor-value__cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}
.promos--inactive__grid-group > h3 {
  text-align: center;
  margin-bottom: var(--gutter-md);
}

/* DESTINATION WEDDING */
.destination-weddings {
  gap: var(--gutter-lg);
}
.destination-weddings > h2,
.destination-weddings__info > :is(h2, p) {
  text-align: center;
}
.destination-weddings__info .content__highlight-icon-list {
  margin-top: var(--gutter-md);
}
.destination-weddings__honeymoon-registry {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gutter-md);
  text-align: center;
}

/* HONEYMOON REGISTRY */
.honeymoon-registry {
  gap: var(--gutter-lg);
  align-items: center;
}
.honeymoon-registry .content__heading {
  padding-bottom: 0;
}
.honeymoon-registry__use-info > h3:last-of-type {
  margin-top: var(--gutter-lg);
}

/* PASSPORT INFORMATION */
.passport-information {
  gap: var(--gutter-lg);
  align-items: center;
}
.passport-information .content__heading {
  padding-bottom: 0;
}

/* FLEX PAY */
.flex-pay {
  gap: var(--gutter-lg);
}
.flex-pay__primary {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}
.flex-pay__summary {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.flex-pay__summary-logo {
  max-width: 75%;
}
.flex-pay__summary-logo img {
  width: 100%;
  object-fit: contain;
}
.flex-pay__summary-txt-bold,
.flex-pay__summary-txt {
  text-align: center;
  color: var(--ui-black);
}
.flex-pay__summary-txt-bold {
  margin-top: var(--gutter-lg);
}
.flex-pay__summary-txt {
  font-weight: 600;
  margin-top: var(--gutter-md);
}
.flex-pay__cover {
  order: -1;
}
.flex-pay__cover img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.flex-pay .content__heading {
  padding-bottom: 0;
}
.flex-pay > h2,
.flex-pay__how-works > h2 {
  text-align: center;
}

/* TRAVEL ADVISOR VALUE */
.travel-advisor-value {
  gap: var(--gutter-lg);
}
.travel-advisor-value .content__heading {
  padding-bottom: 0;
}
.travel-advisor-value .content__highlight-icon-list-item-icon {
  width: 150px;
}

/* FLIGHTS CAR RENTALS */
.flight-car-rental {
  gap: var(--gutter-lg);
}
.flight-car-rental__summary,
.flight-car-rental__rentals,
.price-guarantee__summary,
.shore-excursions__summary,
.travel-agency-business__summary {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-lg);
}
.flight-car-rental__cover,
.price-guarantee__cover,
.shore-excursions__cover,
.travel-agency-business__cover {
  aspect-ratio: 16/9;
  border-radius: 10px;
  overflow: hidden;
}
.flight-car-rental__cover img,
.price-guarantee__cover img,
.shore-excursions__cover img,
.travel-agency-business__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.flight-car-rental__flights .flight-car-rental__cover img,
.travel-agency-business__cover img {
  object-position: 50% 0%;
}
.flight-car-rental__info,
.price-guarantee__info,
.shore-excursions__info,
.travel-agency-business__info {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}
.flight-car-rental__rentals-item-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gutter-md);
  padding: 0 var(--padding-lg);
  text-align: center;
}
.flight-car-rental__rentals-item-logo {
  max-width: 70%;
  max-height: 100px;
  object-fit: contain;
}
.flight-car-rental__rentals-item-cards {
  margin-top: var(--gutter-lg);
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}

/* LOYALTY PERKS */
.loyalty-perks {
  gap: var(--gutter-lg);
}
.loyalty-perks .content__heading {
  padding-bottom: 0;
}
.loyalty-perks__policy {
  margin-top: var(--gutter-lg);
}

/* PASSPORT INFORMATION */
.price-guarantee .content__heading {
  padding-bottom: 0;
}

/* PRIVACY POLICY */
.privacy-policy {
  gap: var(--gutter-md);
}
.privacy-policy__list {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}

/* SHORE EXCURSIONS */
.shore-excursions {
  gap: var(--gutter-lg);
}
.shore-excursions .content__heading {
  padding-bottom: 0;
}

/* TRAVEL AGENCY BUSINESS */
.travel-agency-business .content__heading {
  padding-bottom: 0;
}

/* MEDIA INQUIRIES */
.media-inquiries .content__heading {
  padding-bottom: 0;
}

/* THANK YOU PAGE */
.thank-you-page {
  gap: var(--gutter-lg);
}
.thank-you-page .content__heading {
  padding-bottom: 0;
}

/* RULES AND REGULATIONS */
.rules-and-regulations,
.welcome-home-survey-terms-conditions,
.web-accessibility-policy {
  gap: var(--gutter-md);
}
.rules-and-regulations > h2,
.welcome-home-survey-terms-conditions > h2,
.web-accessibility-policy > h2 {
  text-align: center;
}
.rules-and-regulations__list,
.welcome-home-survey-terms-conditions__list {
  display: flex;
  flex-direction: column;
  gap: var(--gutter-md);
}
.rules-and-regulations__list > li > *:not(:last-child),
.welcome-home-survey-terms-conditions__list > li > *:not(:last-child) {
  margin-bottom: var(--gutter-md);
}
.rules-and-regulations__list-nested li {
  list-style-type: disc;
}

/* WEB ACCESSIBILITY */
.web-accessibility-policy h3 {
  color: var(--ui-black);
}
.web-accessibility-policy > h3:not(:first-of-type) {
  margin-top: var(--gutter-sm);
}
.web-accessibility-policy__primary {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gutter-md);
}
.web-accessibility-policy__primary-badge {
  height: 120px;
  object-fit: contain;
  order: -1;
  justify-self: center;
}

/* AGENT CUSTOM PAGES - GRJS */
#main-content-custom-page {
  .grjs-summary img,
  .meet-the-team__agency img,
  .grjs-summary__cover {
    aspect-ratio: unset !important;
    height: unset !important;
  }

  .grjs-summary__wrapper,
  .meet-the-team__agency-grid {
    align-items: start !important;
  }
}


/* BREAKPOINTS */

/* viewport-xs - Extra Small screens */
/* CSS Styles for devices with widths smaller than 576px */
@media screen and (max-width: 576px) {
}

/* viewport-sm - Small screens */
/* CSS Styles for devices with widths wider than 576px */
@media screen and (min-width: 576px) {
  .about-us__values-item {
    display: grid;
    grid-template-columns: minmax(auto, 80px) 1fr;
    gap: var(--gutter-lg);
    text-align: left;
  }

  .about-us__values-item-icon {
    align-self: flex-start;
    width: 100%;
  }

  .about-us__values-item-info {
    display: flex;
    flex-direction: column;
    gap: var(--gutter-sm);
    justify-content: center;
  }

  .about-us__dv-story,
  .about-us__agent-custom-title {
    margin-top: var(--gutter-md);
  }

  .luxury-cruises__list {
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-lg);
  }

  .destination__info-facts {
    place-self: center start;
  }

  .luxury-vacations__carousel:last-of-type .dv-carousel__list {
    grid-auto-columns: calc((100% - var(--gutter-lg)) / 2.5);
  }

  .before-you-go__prepare-banners .banner {
    max-width: 100%;
    width: 100%;
    display: grid;
    grid-template-columns: minmax(100px, auto) 1fr;
    gap: var(--gutter-lg);
  }

  .before-you-go__prepare-banners .banner__content {
    text-align: initial;
    place-self: center start;
  }

  .cruising-tips__stateroom-choice-cards {
    grid-template-columns: 1fr 1fr;
  }

  .cruising-tips__packing-lists-cards-item .content__default-list {
    columns: 2;
  }
  .cruising-tips__packing-lists-cards-item .content__default-list li {
    padding-right: var(--padding-lg);
  }

  .deals__categories-card {
    aspect-ratio: 16/9;
  }

  .deals__list,
  .lists__cards {
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-lg);
  }

  .deals--military :is(.deals__list) {
    grid-template-columns: 1fr;
  }

  .destination-weddings__info > :is(h2, p) {
    text-align: initial;
  }

  .flex-pay__primary {
    max-width: 70vw;
    margin: 0 auto;
  }
}

/* viewport-md - Medium screens */
/* CSS Styles for devices with widths wider than 768px */
@media screen and (min-width: 768px) {
  .about-us {
    gap: var(--gutter-lg);
  }

  .about-us__values {
    margin-top: var(--gutter-lg);
  }

  .about-us__values-item {
    grid-template-columns: minmax(auto, 100px) 1fr;
  }

  .about-us__values-item-icon {
    align-self: center;
  }

  .about-us__dv-story,
  .about-us__agent-custom-title {
    margin-top: var(--gutter-md);
  }

  .explore-more__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-lg);
  }

  .explore-more__list-item {
    padding: initial;
    padding-bottom: var(--padding-xl);
  }

  .explore-more__list-item:last-of-type {
    border-bottom: 1px solid var(--ui-gray-medium);
  }

  .luxury-cruises__hero-title {
    text-align: left;
  }
  .luxury-cruises__section-wrapper, .list-supplier__section-wrapper {
    padding: var(--padding-xxl) var(--padding-xl);
  }
  .luxury-cruises__list {
    grid-template-columns: repeat(3, 1fr);
  }

  .video-gallery__video {
    max-width: 720px;
    margin: 0 auto;
  }

  .destination__info {
    grid-template-columns: 1fr 1fr;
  }

  .destination__info-summary {
    gap: var(--gutter-md);
  }

  .destination__info-facts {
    place-self: baseline normal;
  }

  .destination__spots-info,
  .destination__must-do-activities-info,
  .travel-insurance__leisureCare-info {
    gap: var(--gutter-md);
  }

  .destination__spots-cards,
  .travel-insurance__leisureCare-cards {
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-lg);
  }

  .destination__spots-cards-item-cover,
  .travel-insurance__leisureCare-cards-item-cover {
    aspect-ratio: 16/9;
  }

  .destination__spots-cards-item-info,
  .travel-insurance__leisureCare-cards-item-info {
    gap: var(--gutter-md);
    padding: var(--padding-xl);
  }

  .luxury-vacations__partnerships {
    gap: var(--gutter-lg);
  }

  .luxury-vacations__carousel:last-of-type .dv-carousel__list {
    grid-auto-columns: calc((100% - var(--gutter-xl)) / 3);
  }

  .before-you-go__primary {
    grid-template-columns: auto auto;
  }

  .before-you-go__info {
    justify-content: space-between;
  }

  .before-you-go__collage-grid {
    order: initial;
    aspect-ratio: initial;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .before-you-go__collage-grid-image {
    max-height: 160px;
  }

  .cruising-tips__book-cruise,
  .destination-weddings__primary,
  .honeymoon-registry__use,
  .passport-information__summary {
    gap: var(--gutter-lg);
  }

  .cruising-tips__book-cruise-cover,
  .destination-weddings__cover,
  .honeymoon-registry__use-cover,
  .passport-information__summary-cover {
    aspect-ratio: 16/6;
  }

  .cruising-tips__book-cruise-cover img {
    object-position: 50% 65%;
  }

  .cruising-tips__stateroom-choice-cards,
  .cruising-tips__packing-lists-cards {
    gap: var(--gutter-lg);
  }

  .cruising-tips__stateroom-choice-cards-item,
  .cruising-tips__packing-lists-cards-item {
    padding: var(--padding-xl);
  }

  .cruising-tips__pack-cruise,
  .cruising-tips__packing-lists,
  .cruising-tips__packing-lists-cards-item {
    gap: var(--gutter-md);
  }

  .cruising-tips__who-and-how-cover {
    aspect-ratio: 16/6;
  }

  .cruising-tips__who-and-how-cover img {
    object-position: 50% 80%;
  }

  .travel-insurance__plans-quick-buttons-resources {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .travel-insurance__plans-quick-buttons-resources > * {
    width: 100%;
    max-width: initial;
  }

  .deals__categories {
    grid-template-columns: repeat(2, 1fr);
  }

  .deals__categories-card {
    aspect-ratio: 16/11;
  }

  .deals__list,
  .lists__cards {
    grid-template-columns: repeat(3, 1fr);
  }

  .deals--military :is(.deals__list) {
    grid-template-columns: repeat(2, 1fr);
  }

  .destinations-all__cards {
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-lg);
  }

  .supplier-highlight__primary {
    gap: var(--gutter-lg);
  }
  .supplier-highlight__image {
    max-width: 720px;
    margin: 0 auto;
  }

  .promos--inactive__grid,
  .travel-advisor-value__cards {
    grid-template-columns: repeat(2, 1fr);
  }
  .promos--inactive__grid > *:last-child,
  .travel-advisor-value__cards > *:last-child {
    grid-column: 1 / 3;
    max-width: calc((100% - var(--gutter-lg)) / 2);
    justify-self: center;
  }

  .web-accessibility-policy__primary {
    grid-template-columns: 1fr auto;
  }
  .web-accessibility-policy__primary h3 {
    align-self: flex-end;
  }
  .web-accessibility-policy__primary-badge {
    height: 140px;
    grid-row: 1/3;
    grid-column: 2/3;
    order: initial;
    justify-self: initial;
  }
}

/* viewport-lg - Large screens */
/* CSS Styles for devices with widths wider than 992px */
@media screen and (min-width: 992px) {
  .faqs__wrapper {
    gap: var(--gutter-xl);
  }

  .faqs__group p:last-of-type {
    margin-top: var(--gutter-lg);
  }

  .about-us__dv-story,
  .about-us__agent-custom-title {
    margin-top: var(--gutter-lg);
  }

  .luxury-cruises__section-wrapper, .list-supplier__section-wrapper {
    padding: calc(var(--padding-xxl) * 1.25) var(--padding-xl);
  }

  .explore-more__list {
    display: flex;
    flex-direction: column;
    row-gap: initial;
    column-gap: initial;
  }

  .explore-more__list-item {
    padding: var(--padding-xxl) 0;
  }

  .explore-more__list-item:last-of-type {
    border-bottom: none;
  }

  .explore-more__list-item-article {
    grid-template-columns: 1fr 240px;
    gap: var(--gutter-xl);
  }

  .explore-more__list-item-article-summary {
    min-width: 0;
  }
  .explore-more__list-item-article-title {
    word-wrap: break-word;
    overflow-wrap: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
  }

  .explore-more__list-item-article-cover {
    order: initial;
  }

  .explore-more-article > .content__image {
    margin-bottom: var(--gutter-xl);
  }
  .explore-more-article__wrapper h2,
  .explore-more-article__wrapper h3,
  .explore-more-article__wrapper h4 {
    margin: var(--gutter-lg) 0 var(--gutter-md) 0;
  }

  .video-gallery__wrapper {
    gap: var(--gutter-xl);
  }

  .video-gallery__group {
    gap: var(--gutter-lg);
  }

  .destination__wrapper {
    gap: var(--gutter-xl);
  }

  .destination__info {
    grid-template-columns: 1.5fr 1fr;
  }

  .luxury-vacations__partnerships {
    grid-template-columns: repeat(4, 1fr);
  }

  .luxury-vacations__uncover-sights {
    grid-template-columns: 35fr 65fr;
  }

  .luxury-vacations__carousel:last-of-type .dv-carousel__list {
    grid-auto-columns: calc((100% - 96px) / 3.5);
  }

  .travel-insurance__wrapper,
  .deals__wrapper,
  .lists__wrapper {
    gap: var(--gutter-xl);
  }

  .travel-insurance__policy {
    margin-top: var(--gutter-md);
  }

  .content__frame:has(.travel-insurance__plans-quick-buttons-resources) {
    margin-bottom: calc(var(--gutter-xl) * 1.25);
  }

  .before-you-go__primary {
    grid-template-columns: 1.3fr 1fr;
  }

  .before-you-go__prepare-banners {
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-lg);
  }

  .cruising-tips__book-cruise,
  .destination-weddings__primary,
  .honeymoon-registry__use,
  .passport-information__summary {
    grid-template-columns: 1.2fr 1fr;
  }

  .cruising-tips__book-cruise-cover,
  .destination-weddings__cover,
  .honeymoon-registry__use-cover,
  .passport-information__summary-cover {
    order: initial;
    aspect-ratio: initial;
  }

  .cruising-tips__book-cruise-cover img {
    object-position: 80% 95%;
  }

  .cruising-tips__packing-lists-cards {
    margin-top: var(--gutter-lg);
    gap: var(--gutter-lg);
  }

  .cruising-tips__who-and-how {
    grid-template-columns: 1.2fr 1fr;
    padding-bottom: var(--padding-xxl);
  }

  .cruising-tips__who-and-how-cover {
    aspect-ratio: initial;
  }

  .cruising-tips__who-and-how-cover img {
    object-position: 50% 100%;
  }

  .supplier-offers__wrapper {
    gap: var(--gutter-xl);
  }

  .supplier-highlight__primary {
    grid-template-columns: 1fr 1fr;
  }
  .supplier-highlight__info-logo {
    text-align: initial;
  }
  .supplier-highlight__video,
  .supplier-highlight__image {
    align-self: center;
  }

  .promos h2 {
    margin: 0 auto var(--gutter-xl) auto;
  }
  .promos__deals-group + * {
    margin-top: var(--gutter-xl);
  }

  .promos--inactive__wrapper {
    gap: var(--gutter-xl);
  }
  .promos--inactive__grid-group > h3 {
    margin-bottom: var(--gutter-lg);
  }

  .destination-weddings,
  .honeymoon-registry,
  .passport-information,
  .flex-pay,
  .travel-advisor-value,
  .flight-car-rental,
  .loyalty-perks,
  .shore-excursions,
  .thank-you-page {
    gap: var(--gutter-xl);
  }
  .destination-weddings__honeymoon-registry {
    gap: var(--gutter-lg);
  }

  .flex-pay__primary {
    max-width: initial;
    margin: initial;
    grid-template-columns: 1.2fr 1fr;
    gap: var(--gutter-xl);
  }
  .flex-pay__summary {
    align-items: flex-start;
    place-self: center;
  }
  .flex-pay__summary-logo {
    max-width: initial;
    height: 90px;
  }
  .flex-pay__summary-logo img {
    width: auto;
    height: 100%;
  }
  .flex-pay__summary-txt-bold,
  .flex-pay__summary-txt {
    text-align: initial;
  }
  .flex-pay__cover {
    order: initial;
  }

  .flight-car-rental__summary,
  .flight-car-rental__rentals,
  .price-guarantee__summary,
  .shore-excursions__summary {
    grid-template-columns: 1fr 1fr;
    place-items: center;
  }
  .flight-car-rental__cover,
  .shore-excursions__cover {
    aspect-ratio: initial;
  }
  .flight-car-rental__flights .flight-car-rental__info,
  .shore-excursions__resort .shore-excursions__info {
    order: -1;
  }
  .flight-car-rental__rentals-item-cards {
    gap: var(--gutter-lg);
  }

  .travel-agency-business__summary {
    grid-template-columns: 1fr 1.3fr;
    place-items: center;
  }
  .travel-agency-business__cover {
    aspect-ratio: 5/4;
  }
}

/* viewport-xl - Extra Large screens */
/* CSS Styles for devices with widths wider than 1200px */
@media screen and (min-width: 1200px) {
  .luxury-cruises__section-wrapper, .list-supplier__section-wrapper {
    padding: calc(var(--padding-xxl) * 1.5) var(--padding-xxl);
  }

  .explore-more__list-item-article {
    grid-template-columns: 1fr 300px;
    gap: var(--gutter-xxl);
  }

  .destination__spots-cards,
  .travel-insurance__leisureCare-cards {
    grid-template-columns: 1fr 1fr;
    gap: var(--gutter-xl);
  }

  .luxury-vacations__uncover-sights {
    grid-template-columns: 1fr 1fr;
  }

  .luxury-vacations__carousel:last-of-type .dv-carousel__list {
    grid-auto-columns: calc((100% - 96px) / 4);
  }

  .before-you-go__primary {
    grid-template-columns: 1fr 1fr;
  }

  .before-you-go__info {
    gap: var(--gutter-lg);
    padding: var(--padding-lg) 0;
  }

  .before-you-go__collage-grid {
    display: grid;
  }

  .before-you-go__collage-grid-image {
    max-height: initial;
  }

  .before-you-go__prepare-banners {
    gap: var(--gutter-lg);
  }

  .cruising-tips__stateroom-choice-cards {
    grid-template-columns: repeat(4, 1fr);
  }

  .cruising-tips__packing-lists-cards {
    grid-template-columns: repeat(3, 1fr);
  }

  .cruising-tips__packing-lists-cards-item > .content__default-list {
    columns: initial;
  }
  .cruising-tips__packing-lists-cards-item > .content__default-list li {
    padding-right: 0;
  }

  .cruising-tips__who-and-how {
    padding-bottom: var(--padding-xxl);
  }

  .cruising-tips__who-and-how-cover {
    aspect-ratio: 16/8;
  }

  .travel-insurance__plans-quick-buttons-resources {
    column-gap: var(--gutter-xxl);
  }

  .content__frame:has(.travel-insurance__plans-quick-buttons-resources) {
    margin-bottom: calc(var(--gutter-xl) * 1.5);
  }

  .deals__categories {
    gap: var(--gutter-xl);
  }

  .deals__categories-card {
    aspect-ratio: 16/9;
  }

  .deals--military :is(.deals__list) {
    grid-template-columns: repeat(3, 1fr);
  }

  .destinations-all__cards {
    grid-template-columns: repeat(3, 1fr);
  }

  .supplier-highlight__primary {
    grid-template-columns: 1.2fr 1fr;
  }
  .supplier-highlight__info-logo {
    height: 120px;
  }

  .promos--inactive__grid,
  .travel-advisor-value__cards {
    grid-template-columns: repeat(3, 1fr);
  }
  .promos--inactive__grid > *:last-child,
  .travel-advisor-value__cards > *:last-child {
    grid-column: initial;
    max-width: initial;
    justify-self: initial;
  }

  .passport-information__non-us-citizens {
    max-width: 860px;
    grid-template-columns: 1fr 1fr;
  }

  .travel-advisor-value
    > .content__highlight-icon-list--row
    .content__highlight-icon-list-item {
    width: calc((100% - var(--gutter-xl)) / 3);
  }

  .flight-car-rental__flights,
  .shore-excursions__resort {
    grid-template-columns: 1.5fr 1fr;
  }
  .flight-car-rental__cars,
  .price-guarantee__summary,
  .shore-excursions__excursions {
    grid-template-columns: 1fr 1.5fr;
  }
  .flight-car-rental__cover,
  .shore-excursions__cover {
    aspect-ratio: 4/3;
  }
  .flight-car-rental__rentals {
    gap: var(--gutter-xl);
  }

  /*   .welcome-home-survey-terms-conditions .dv-table {
    max-width: 1100px;
    margin: 0 auto;
  } */
}

/* viewport-xxl - Ultrawide screens */
/* CSS Styles for devices with widths wider than 1400px */
@media screen and (min-width: 1400px) {
  .luxury-cruises__section-wrapper, .list-supplier__section-wrapper {
    max-width: 1300px;
    margin: 0 auto;
    padding: calc(var(--padding-xxl) * 2) 0;
  }
  .luxury-cruises__list {
    grid-template-columns: repeat(4, 1fr);
  }

  .video-gallery__video {
    max-width: 960px;
  }

  .destination__info {
    grid-template-columns: 2fr 1fr;
  }

  .destination__spots-cards,
  .travel-insurance__leisureCare-cards {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--gutter-lg);
  }

  .luxury-vacations__carousel-link {
    left: var(--gutter-lg);
    bottom: var(--gutter-lg);
  }

  .luxury-vacations__carousel:last-of-type .dv-carousel__list {
    grid-auto-columns: calc((100% - var(--gutter-xxl)) / 5);
  }

  .travel-insurance__plans-quick-buttons {
    column-gap: var(--gutter-xl);
  }

  .before-you-go__primary {
    grid-template-columns: 1.5fr 1fr;
  }

  .before-you-go__prepare-banners {
    gap: var(--gutter-xl);
  }

  .travel-insurance__plans-quick-buttons-resources {
    display: flex;
    column-gap: var(--gutter-lg);
  }

  .content__frame:has(.travel-insurance__plans-quick-buttons-resources) {
    margin-bottom: var(--gutter-xxl);
  }

  .deals__list,
  .lists__cards {
    grid-template-columns: repeat(4, 1fr);
  }

  .deals--military :is(.deals__list) {
    grid-template-columns: repeat(4, 1fr);
  }

  .destinations-all__cards {
    gap: var(--gutter-xl);
  }

  .promos h2 {
    max-width: 1300px;
  }

  .promos--inactive__grid,
  .travel-advisor-value__cards {
    gap: var(--gutter-xl);
  }

  .destination-weddings .content__card-group {
    grid-template-columns: repeat(4, 1fr);
  }
}
