/* Left-justify the "Backed by Travel Leaders Network" trust strip. */
.wof-trust-strip {
  text-align: left !important;
}
.wof-trust-strip > * {
  text-align: left !important;
  justify-content: flex-start !important;
}

/* Homepage Client Stories: a small text teaser. */
#client-stories { padding-top: 18px; padding-bottom: 18px; }
#client-stories .section-heading { margin-bottom: 10px; }
#client-stories .section-heading h2 { font-size: 22px; line-height: 1.2; margin: 0; }

/* Fix: "Cruising 101 with Cristi" card — force all guide cards to white backgrounds with navy text. */
#guides .guide-card {
  background: #ffffff !important;
  color: #0a2a4a !important;
}
#guides .guide-card h3,
#guides .guide-card .guide-card-body h3 {
  color: #0a2a4a !important;
}
#guides .guide-card p,
#guides .guide-card .guide-card-body p {
  color: #0a2a4a !important;
}

#client-stories .section-heading .eyebrow,
#client-stories .section-heading > p,
#client-stories .wof-post-image,
#client-stories .wof-post-body > p { display: none; }
#client-stories .wof-post-grid { display: block; max-width: 760px; margin: 0; }
#client-stories .wof-post-card { display: block; width: 100%; max-width: none; min-height: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; }
#client-stories .wof-post-body { padding: 0; }
#client-stories .wof-post-body h3 { font-size: 17px; line-height: 1.35; margin: 0 0 6px; }
#client-stories .wof-post-body .wof-inline-link { font-size: 14px; line-height: 1.3; }
#client-stories .wof-center { text-align: left; margin: 8px 0 0; }
#client-stories .wof-center .button { display: inline; padding: 0; min-height: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-size: 13px; text-decoration: underline; }
/* Homepage article teasers: small thumbnails, titles and read links. */
#guides .guide-grid { gap: 14px; }
#guides .guide-card.article-photo-card { display: grid; grid-template-columns: 86px minmax(0, 1fr); min-height: 0; height: auto; border-radius: 12px; }
#guides .article-photo-card .guide-card-image { width: 86px; min-height: 0; height: 100%; padding: 9px; display: flex; align-items: center; }
#guides .article-photo-card .guide-card-image img { width: 100%; height: auto; max-height: 82px; object-fit: contain; }
#guides .article-photo-card .guide-card-body { padding: 12px 14px; gap: 0; }
#guides .article-photo-card .guide-tag { font-size: 10px; line-height: 1.3; letter-spacing: 1px; margin-bottom: 5px; }
#guides .article-photo-card h3 { font-size: 18px; line-height: 1.25; margin: 0 0 8px; }
#guides .article-photo-card .guide-card-body > p { display: none; }
#guides .article-photo-card .read-more { font-size: 13px; line-height: 1.3; margin: 0; padding: 0; }
@media (max-width: 600px) {
 #guides .guide-card.article-photo-card { grid-template-columns: 70px minmax(0, 1fr); }
 #guides .article-photo-card .guide-card-image { width: 70px; padding: 7px; }
 #guides .article-photo-card .guide-card-body { padding: 10px 12px; }
 #guides .article-photo-card h3 { font-size: 16px; }
 #client-stories .section-heading h2 { font-size: 20px; }
}

/* Keep the main planning action visible on the homepage on phones. */
@media (max-width: 767px) {
  body:has(#client-stories) .final-cta a[href$="/start-planning/"] {
    position: fixed !important;
    left: 16px;
    right: 16px;
    bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    z-index: 9999;
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: auto;
    min-height: 52px !important;
    padding: 12px 20px !important;
    border-radius: 999px;
    background: #0d7886 !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 700;
    text-align: center;
    box-shadow: 0 6px 20px rgba(8, 53, 67, .28);
  }
  body:has(#client-stories) {
    padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px));
  }
}

/* The floating Back to Top control overlaps the mobile planning button. */
@media (max-width: 767px) {
  body:has(#client-stories) .back-to-top { display: none !important; }
}

/* Compact article previews on Tips, Guides and Reviews. */
.page-id-1525 .wp-post-list { display: grid; gap: 14px; }
.page-id-1525 .wp-post-card {
  display: grid; grid-template-columns: 104px minmax(0, 1fr);
  gap: 5px 18px; padding: 18px; min-width: 0; border-radius: 14px;
}
.page-id-1525 .wp-post-card > * { grid-column: 2; min-width: 0; }
.page-id-1525 .wp-post-card > .wp-card-image {
  grid-column: 1; grid-row: 1 / span 5; align-self: start;
  display: block; width: 104px; height: 104px; margin: 0; overflow: hidden;
}
.page-id-1525 .wp-post-card .wp-card-image img {
  display: block; width: 100%; max-width: 100%; height: 100%;
  max-height: 104px; object-fit: contain; margin: 0;
}
.page-id-1525 .wp-post-card h2 { font-size: 20px; line-height: 1.3; margin: 0; }
.page-id-1525 .wp-post-card p { font-size: 16px; line-height: 1.45; margin: 0; }
.page-id-1525 .wp-post-card .wp-post-date { font-size: 13px; }
.page-id-1525 .wp-post-card .text-link { font-size: 15px; margin: 3px 0 0; }
.page-id-1525 .wp-post-card > .sharedaddy { display: none; }
@media (max-width: 600px) {
  .page-id-1525 .wp-post-card { grid-template-columns: 72px minmax(0, 1fr); gap: 5px 12px; padding: 14px; }
  .page-id-1525 .wp-post-card > .wp-card-image { width: 72px; height: 72px; }
  .page-id-1525 .wp-post-card .wp-card-image img { max-height: 72px; }
  .page-id-1525 .wp-post-card h2 { font-size: 18px; }
}

/* Hide the Guides & Resources search box. */
.resource-search { display: none !important; }
/* Fix #4: Tips, Guides and Reviews - horizontal scroll on mobile */
@media (max-width: 1000px) {
  #guides .guide-grid {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
  }
  #guides .guide-grid .guide-card {
    flex: 0 0 85% !important;
    scroll-snap-align: start !important;
  }
}
/* Fix #5: Reserve coral ONLY for Start Planning With Cristi */ .hero-actions .button.primary:not(.hero-cta-coral) { background-color: #087f89 !important; border-color: #087f89 !important; }

/* Deal filter pills: pretty brand colors. */ .wof-deal-filters button{background:#e1f2f4!important;border-color:#087f89!important;color:#087f89!important} .wof-deal-filters button:hover{background:#c8e8ec!important} .wof-deal-filters button[aria-pressed="true"]{background:#092d4b!important;border-color:#092d4b!important;color:#fff!important}

/* Tours & Excursions buttons: match the site button style, no arrows. */
#tours .inline-resource-link.has-brand-logo {
  font-size: 0; /* hides the label text node so the arrow disappears */
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 52px;
  padding: 8px 20px 8px 8px;
  border-radius: 999px;
  border: 2px solid transparent;
  background: #087f89;
  box-shadow: none;
  text-decoration: none;
  transition: transform .18s ease, background-color .18s ease;
}
#tours .inline-resource-link.has-brand-logo:hover {
  background: #066d76;
  transform: translateY(-2px);
  box-shadow: none;
}
#tours .inline-resource-link.has-brand-logo img {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  padding: 5px;
  border-radius: 999px;
  background: #fff;
  object-fit: contain;
  box-shadow: none;
}
#tours .inline-resource-link.has-brand-logo::after {
  font-size: .95rem;
  font-weight: 800;
  line-height: 1.3;
  color: #fff;
}
#tours .inline-resource-link.has-brand-logo[href*="viator.com"]::after { content: "Browse Viator Tours"; }
#tours .inline-resource-link.has-brand-logo[href*="toursbylocals.com"]::after { content: "Explore ToursByLocals"; }
#tours .inline-resource-link.has-brand-logo[href*="amstardmc.com"]::after { content: "Explore Amstar Excursions"; }
#tours .inline-resource-link.has-brand-logo[href*="ResortforaDay.com"]::after { content: "Browse Resort Day Passes"; }

/* Mobile: horizontal swipe for guides + featured deals (no vertical stacking) */
@media (max-width: 768px) {
  /* Guides: horizontal scroll, no vertical stacking */
  #guides .guide-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x mandatory !important;
    gap: 16px !important;
    padding-bottom: 12px !important;
  }
  #guides .guide-grid .guide-card {
    flex: 0 0 80% !important;
    max-width: 80% !important;
    scroll-snap-align: start !important;
  }
  /* Featured deals: horizontal scroll */
  #departures .wof-carousel-viewport,
  #departures .wof-deal-track {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
  #departures .wof-deal-card {
    flex: 0 0 80% !important;
    max-width: 80% !important;
    scroll-snap-align: start !important;
  }
}

/* Trust strip: keep the heading on one line and size up the logo. */
.wof-trust-strip {
  text-align: left !important;
  display: block !important;
}
.wof-trust-strip strong {
  display: inline !important;
  white-space: nowrap !important;
}
.wof-tl-logo {
  width: 100px !important;
  height: auto !important;
  vertical-align: middle !important;
  margin-right: 10px !important;
  display: inline-block !important;
}
 .insurance-feature p.eyebrow{display:block !important;}