/* ── Global button hover fixes ── */
/* Remove underline on all button hovers */
.sat-btn:hover,
.sat-btn:focus,
.sat-cta__btn:hover,
.sat-cta__btn:focus {
  text-decoration: none !important;
}

/* Ensure CTA buttons lift and shadow like nav buttons */
.sat-cta__btn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 32px rgba(30,58,95,0.18) !important;
}

/* Keep primary CTA button colours on hover */
.sat-cta__btn--primary:hover {
  background: #162d4a !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

/* ============================================
   BLOG POST LAYOUT — single post fix
   ============================================ */

/* Constrain the post content to a readable column */
.single-post .entry-content {
  max-width: 740px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  box-sizing: border-box !important;
}

/* Constrain the title and meta above content */
.single-post main .wp-block-post-title,
.single-post main h1 {
  max-width: 740px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 48px 28px 12px;
  font-size: 2.2rem;
  font-weight: 700;
  color: #1E3A5F;
  line-height: 1.3;
  box-sizing: border-box;
}

.single-post main .wp-block-post-author,
.single-post main .wp-block-post-date,
.single-post main .wp-block-post-terms {
  max-width: 740px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 28px;
  box-sizing: border-box;
  color: #6b7280;
  font-size: 0.9rem;
}

/* Body text */
.single-post .entry-content p {
  font-size: 17px !important;
  line-height: 1.8 !important;
  color: #374151 !important;
  margin-bottom: 1.4em !important;
}

/* Headings */
.single-post .entry-content h2 {
  font-size: 1.65rem !important;
  font-weight: 700 !important;
  color: #1E3A5F !important;
  margin-top: 2.8rem !important;
  margin-bottom: 0.9rem !important;
  line-height: 1.3 !important;
}

.single-post .entry-content h3 {
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  color: #1E3A5F !important;
  margin-top: 2rem !important;
  margin-bottom: 0.75rem !important;
}

/* Lists */
.single-post .entry-content ul,
.single-post .entry-content ol {
  padding-left: 1.6rem !important;
  margin-bottom: 1.4em !important;
}

.single-post .entry-content li {
  font-size: 17px !important;
  line-height: 1.75 !important;
  color: #374151 !important;
  margin-bottom: 0.5em !important;
}

/* Horizontal rules as section breaks */
.single-post .entry-content hr {
  border: none !important;
  border-top: 1px solid #e5e7eb !important;
  margin: 2.8rem 0 !important;
}

/* Bold text */
.single-post .entry-content strong {
  color: #1E3A5F !important;
  font-weight: 600 !important;
}

/* Inline images and infographics */
.single-post .entry-content img,
.single-post .entry-content figure {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 10px !important;
  margin: 2rem 0 !important;
  display: block;
}

/* Tables */
.single-post .entry-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 1.5rem 0 !important;
  font-size: 15px !important;
}
.single-post .entry-content th {
  background: #1E3A5F !important;
  color: #fff !important;
  padding: 10px 14px !important;
  text-align: left !important;
}
.single-post .entry-content td {
  padding: 9px 14px !important;
  border-bottom: 1px solid #e5e7eb !important;
  color: #374151 !important;
}
.single-post .entry-content tr:nth-child(even) td {
  background: #f9fafb !important;
}

/* Author bio at the bottom */
.single-post .entry-content em {
  color: #6b7280 !important;
  font-size: 15px !important;
  display: block;
  margin-top: 2rem !important;
  padding-top: 1.5rem !important;
  border-top: 1px solid #e5e7eb !important;
}

/* Post navigation prev/next */
.single-post .wp-block-post-navigation-link,
.single-post .navigation.post-navigation {
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 28px;
  box-sizing: border-box;
}

/* More posts section */
.single-post .wp-block-latest-posts,
.single-post ul.wp-block-latest-posts {
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .single-post .entry-content {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .single-post .entry-content h2 {
    font-size: 1.4rem !important;
  }
  .single-post main .wp-block-post-title,
  .single-post main h1 {
    font-size: 1.7rem;
    padding: 32px 20px 8px;
  }
}

/* Fix post title — alignfull escapes constrained layout */
.single-post h1.wp-block-post-title {
  max-width: 740px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 40px 28px 16px !important;
  box-sizing: border-box !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: #1E3A5F !important;
  line-height: 1.3 !important;
}

/* Post meta row (Written by / category) */
.single-post .wp-block-group.alignfull .wp-block-post-author-name,
.single-post .wp-block-group.alignfull .wp-block-post-terms,
.single-post .wp-block-group.alignfull > *:not(h1):not(.entry-content) {
  max-width: 740px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
  box-sizing: border-box !important;
}

/* ── Blog post: meta line (Written by / in) ── */
.single-post .wp-block-post-author,
.single-post .entry-meta,
.single-post .post-meta {
  font-size: 0.85rem !important;
  color: #8A9BB0 !important;
  margin-bottom: 0.5rem !important;
}
/* Tighten the author/category line spacing */
.single-post .wp-block-post-author__content {
  gap: 0 !important;
  padding: 0 !important;
}
/* The theme outputs "Written by ... in ... Category" with flexbox spacing */
.single-post .entry-header + .entry-meta,
.wp-block-template-part .entry-meta {
  column-gap: 0.4rem !important;
  margin-bottom: 1.5rem !important;
}

/* ── Blog post: reduce oversized bottom-of-page fonts ── */
/* Next/Prev post navigation */
.single-post .wp-block-post-navigation-link,
.single-post .post-navigation .nav-previous,
.single-post .post-navigation .nav-next,
.single-post nav.navigation.post-navigation a,
.single-post .nav-links a {
  font-size: 1rem !important;
}
/* Comments heading */
.single-post #comments h2,
.single-post .comments-title,
.single-post #respond h3,
.single-post .comment-reply-title {
  font-size: 1.4rem !important;
  font-weight: 700 !important;
}
/* Comment form labels */
.single-post .comment-form label,
.single-post .comment-form p {
  font-size: 0.95rem !important;
}

/* ── Category archive: 3-column card grid ── */
.category .wp-block-post-template,
.tag .wp-block-post-template,
.archive .wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 2rem 0 !important;
}
.category .wp-block-post,
.archive .wp-block-post {
  background: #fff !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 12px rgba(30,58,95,0.08) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 200ms ease, box-shadow 200ms ease !important;
}
.category .wp-block-post:hover,
.archive .wp-block-post:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(30,58,95,0.14) !important;
}
.category .wp-block-post .wp-block-post-featured-image img,
.archive .wp-block-post .wp-block-post-featured-image img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  display: block !important;
}
.category .wp-block-post .wp-block-post-title,
.archive .wp-block-post .wp-block-post-title {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #1E3A5F !important;
  padding: 1rem 1.25rem 0.5rem !important;
  margin: 0 !important;
}
.category .wp-block-post .wp-block-post-title a,
.archive .wp-block-post .wp-block-post-title a {
  color: #1E3A5F !important;
  text-decoration: none !important;
}
.category .wp-block-post .wp-block-post-excerpt,
.archive .wp-block-post .wp-block-post-excerpt {
  font-size: 0.9rem !important;
  color: #6b7280 !important;
  padding: 0 1.25rem 1.25rem !important;
  margin: 0 !important;
  flex-grow: 1 !important;
}
@media (max-width: 768px) {
  .category .wp-block-post-template,
  .archive .wp-block-post-template {
    grid-template-columns: 1fr !important;
  }
}


/* ── Blog post: fix meta line spacing (Written by / in) ── */
/* Target the flex group that contains the author + category meta */
.single-post .wp-block-group.is-layout-flex.has-small-font-size,
.single-post .wp-block-group.wp-block-group-is-layout-flex.has-small-font-size {
  margin-bottom: 1rem !important;
  margin-top: 0 !important;
  color: #8A9BB0 !important;
  font-size: 0.875rem !important;
}
/* The "Written by" and "in" text nodes */
.single-post .wp-block-group.is-layout-flex.has-small-font-size p {
  margin: 0 !important;
  font-size: 0.875rem !important;
  color: #8A9BB0 !important;
}
/* Author name link */
.single-post .wp-block-post-author-name a,
.single-post .taxonomy-post_tag a,
.single-post .taxonomy-category a {
  font-size: 0.875rem !important;
  color: #D4AF37 !important;
}


/* Fix archive grid: prevent alignfull bleed from cutting off first card */
.category .wp-block-query.alignfull,
.archive .wp-block-query.alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 2rem !important;
  padding-right: 2rem !important;
  box-sizing: border-box !important;
}

/* Card style */
.category .wp-block-post,
.archive .wp-block-post {
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
}

/* Image height */
.category .wp-block-post .wp-block-post-featured-image img,
.archive .wp-block-post .wp-block-post-featured-image img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  display: block !important;
}

/* Card title padding */
.category .wp-block-post .wp-block-post-title,
.archive .wp-block-post .wp-block-post-title {
  padding: 1rem 1rem 0.5rem !important;
  font-size: 1.05rem !important;
}

/* Card excerpt padding */
.category .wp-block-post .wp-block-post-excerpt,
.archive .wp-block-post .wp-block-post-excerpt {
  padding: 0 1rem 1rem !important;
  font-size: 0.875rem !important;
  color: #4a5568 !important;
}

/* Archive/Category card layout fixes */
/* Hide full post content in archive — cards should show image + title + date only */
.category .wp-block-post .wp-block-post-content,
.archive .wp-block-post .wp-block-post-content {
  display: none !important;
}

/* Remove top padding from the inner group wrapper */
.category .wp-block-post .wp-block-group,
.archive .wp-block-post .wp-block-group {
  padding-top: 0 !important;
  padding-bottom: 1rem !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Featured image: fixed height, no margin */
.category .wp-block-post .wp-block-post-featured-image,
.archive .wp-block-post .wp-block-post-featured-image {
  margin: 0 !important;
}
.category .wp-block-post .wp-block-post-featured-image img,
.archive .wp-block-post .wp-block-post-featured-image img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  display: block !important;
}

/* Title styling */
.category .wp-block-post .wp-block-post-title,
.archive .wp-block-post .wp-block-post-title {
  font-size: 1.05rem !important;
  line-height: 1.4 !important;
  padding: 1rem 1rem 0.4rem !important;
  margin: 0 !important;
}

/* Date styling */
.category .wp-block-post .wp-block-post-date,
.archive .wp-block-post .wp-block-post-date {
  padding: 0 1rem !important;
  font-size: 0.8rem !important;
  color: #8a9bb0 !important;
}

/* Tighten figure height to match image — remove gap below image */
.category .wp-block-post .wp-block-post-featured-image,
.archive .wp-block-post .wp-block-post-featured-image {
  height: 220px !important;
  overflow: hidden !important;
  line-height: 0 !important;
}

/* Remove extra spacing between figure and title area */
.category .wp-block-post .wp-block-post-title,
.archive .wp-block-post .wp-block-post-title {
  margin-top: 0 !important;
}

/* Override WP's inline aspect-ratio on featured image figure — let width fill the card */
.category .wp-block-post .wp-block-post-featured-image,
.archive .wp-block-post .wp-block-post-featured-image {
  aspect-ratio: unset !important;
  width: 100% !important;
}

/* ======================== SINGLE POST FIXES ======================== */

/* 1. Hide "More Posts" section below comments on single posts */
.single main.wp-block-group > .wp-block-group:not(:first-child) {
  display: none !important;
}

/* 2. Comment section — clean layout */
.wp-block-comments {
  border-top: 2px solid #e2e8f0 !important;
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
.wp-block-comments h2.wp-block-heading {
  font-size: 1.4rem !important;
  color: #1E3A5F !important;
  font-weight: 700 !important;
  margin-bottom: 1.5rem !important;
}
.comment-reply-title {
  font-size: 1.2rem !important;
  color: #1E3A5F !important;
  font-weight: 600 !important;
  margin-bottom: 1.25rem !important;
}
.logged-in-as {
  color: #4a5568 !important;
  font-size: 0.875rem !important;
  margin-bottom: 1.25rem !important;
}
.comment-form label {
  display: block !important;
  margin-bottom: 0.4rem !important;
  color: #4a5568 !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
}
.comment-form-comment textarea,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"] {
  width: 100% !important;
  border: 1.5px solid #cbd5e0 !important;
  border-radius: 0.5rem !important;
  padding: 0.85rem 1rem !important;
  font-size: 1rem !important;
  font-family: Inter, sans-serif !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  color: #1E3A5F !important;
  transition: border-color 200ms ease !important;
}
.comment-form-comment textarea {
  min-height: 140px !important;
  resize: vertical !important;
}
.comment-form-comment textarea:focus,
.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus {
  outline: none !important;
  border-color: #1E3A5F !important;
  box-shadow: 0 0 0 3px rgba(30,58,95,0.1) !important;
}
.comment-form p {
  margin-bottom: 1.1rem !important;
}
.form-submit {
  margin-top: 0.25rem !important;
}

/* 3. Post Comment + Connect button — navy, same as site buttons */
.comment-form #submit,
.wp-block-post-comments-form #submit,
.wp-block-post-comments-form .wp-block-button__link,
.comment-form a.button,
#jetpack-comment-form a[class*="connect"],
.jetpack-comment-form button {
  background: #1E3A5F !important;
  color: #ffffff !important;
  border: 2px solid #1E3A5F !important;
  padding: 0.85rem 1.75rem !important;
  border-radius: 0.5rem !important;
  font-family: Inter, sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  display: inline-block !important;
  text-decoration: none !important;
  transition: background 200ms ease, transform 250ms cubic-bezier(0.34,1.56,0.64,1) !important;
}
.comment-form #submit:hover,
.wp-block-post-comments-form #submit:hover,
.wp-block-post-comments-form .wp-block-button__link:hover {
  background: #162d4a !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

/* ======================== MOBILE — SINGLE POST ======================== */
@media (max-width: 768px) {
  .single .wp-block-post-title {
    font-size: 1.75rem !important;
    line-height: 1.3 !important;
  }
  .single .wp-block-post-featured-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 300px !important;
    object-fit: cover !important;
  }
  .single .entry-content.wp-block-post-content {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .single .wp-block-group.has-small-font-size.is-layout-flex {
    flex-wrap: wrap !important;
    gap: 0.25rem !important;
    padding: 0 1.25rem !important;
  }
  .wp-block-comments {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .comment-form-comment textarea {
    min-height: 110px !important;
  }
  /* Hide post navigation on mobile (prev/next post links) */
  .single .wp-block-group.alignwide.is-layout-flow:not(.sat-cta):not(.wp-block-query) {
    padding: 0 1.25rem !important;
  }
}

/* ======================== MOBILE — CATEGORY PAGE ======================== */
@media (max-width: 768px) {
  .category .wp-block-query.alignfull,
  .archive .wp-block-query.alignfull {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .category .wp-block-post-template,
  .archive .wp-block-post-template {
    grid-template-columns: 1fr !important;
    gap: 1.25rem !important;
  }
  .category .wp-block-post,
  .archive .wp-block-post {
    width: 100% !important;
    max-width: 100% !important;
  }
  .category .wp-block-post .wp-block-post-featured-image img,
  .archive .wp-block-post .wp-block-post-featured-image img {
    height: 200px !important;
  }
  .category h1.wp-block-post-title,
  .archive h1.wp-block-post-title,
  .category .wp-block-query-title,
  .archive .wp-block-query-title {
    font-size: 1.6rem !important;
    padding: 0 1rem !important;
  }
}


/* ======================== CATEGORY LABELS ON ARCHIVE CARDS ======================== */
/* Gold chip showing category name above the post title — uses post body class */

.category .wp-block-post.category-salesforce-advice .wp-block-post-title::before,
.archive .wp-block-post.category-salesforce-advice .wp-block-post-title::before {
  content: 'SALESFORCE ADVICE';
  display: block;
  font-size: 0.68rem;
  font-weight: 700;
  color: #D4AF37;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-family: Inter, sans-serif;
  margin-bottom: 0.6rem;
  padding-bottom: 0;
}

/* Ensure the heading stacks correctly */
.category .wp-block-post .wp-block-post-title,
.archive .wp-block-post .wp-block-post-title {
  display: flex !important;
  flex-direction: column !important;
}


/* ======================== CAROUSEL — MOBILE FIX ======================== */
@media (max-width: 680px) {

  /* Section padding */
  .sat-articles { padding: 44px 20px !important; }
  .sat-articles__inner { max-width: 100% !important; }
  .sat-articles__heading { font-size: 1.4rem !important; margin-bottom: 1.5rem !important; }

  /* Hide arrows — use dots only on mobile */
  .sat-car-btn { display: none !important; }

  /* Track takes full width now arrows are gone */
  .sat-articles__stage { gap: 0 !important; }

  /* Card stacks: image on top, text below */
  .sat-car-slide a {
    flex-direction: column !important;
    border-radius: 10px !important;
  }

  /* Image: full width, fixed height */
  .sat-car-img {
    width: 100% !important;
    min-height: 190px !important;
    max-height: 210px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
  }

  /* Content area */
  .sat-car-body {
    padding: 1.1rem 1.25rem 1.25rem !important;
  }

  /* Title */
  .sat-car-title {
    font-size: 1rem !important;
    line-height: 1.4 !important;
    margin: 0.4rem 0 0.5rem !important;
    -webkit-line-clamp: 3 !important;
  }

  /* Excerpt — shorter on mobile */
  .sat-car-excerpt {
    font-size: 0.82rem !important;
    -webkit-line-clamp: 2 !important;
    margin-bottom: 0.75rem !important;
  }

  /* "Read the article" link */
  .sat-car-link {
    font-size: 0.82rem !important;
  }

  /* Dots — smaller, tighter */
  .sat-car-dots {
    gap: 6px !important;
    margin-top: 1rem !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    max-width: 240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .sat-car-dot {
    width: 7px !important;
    height: 7px !important;
  }
}


/* Carousel mobile polish */
@media (max-width: 680px) {
  .sat-car-cat { align-self: flex-start !important; max-width: fit-content !important; }
  .sat-car-body { align-items: flex-start !important; }
  .sat-car-track { min-height: unset !important; }
}

/* Also fix on desktop — chip shouldn't stretch in column flex body either */
.sat-car-body { align-items: flex-start; }


/* ====== SINGLE POST MOBILE — COMPLETE FIX (2026-05-10) ====== */
/* Root cause: FSE alignfull uses margin-left: clamp(-30px..) pushing content 30px off-screen.
   Fix: reset the bleed on mobile, add explicit padding to each content element. */
@media (max-width: 768px) {

  /* 1. Reset alignfull bleed on single post pages */
  .single .wp-block-group.alignfull {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* 2. Also reset entry-content alignfull bleed */
  .single .entry-content.wp-block-post-content {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }

  /* 3. Post title */
  .single .wp-block-post-title {
    padding-left: 20px !important;
    padding-right: 20px !important;
    font-size: 1.75rem !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* 4. Featured image stays full width */
  .single .wp-block-post-featured-image,
  .single .wp-block-post-featured-image img {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* 5. Author meta row */
  .single .wp-block-post-featured-image + div {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  /* 6. All content blocks inside entry-content */
  .single .entry-content > * {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
  }

  /* 7. Comments section */
  .single .wp-block-comments {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  /* 8. Prev/next nav */
  .single .wp-block-group.alignwide {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  /* 9. Overflow guard */
  .single main {
    overflow-x: hidden !important;
    max-width: 100% !important;
  }
}

/* ====== MOBILE TABLE FIX ====== */
@media (max-width: 768px) {
  /* Make WordPress table blocks scroll horizontally rather than squish */
  .single .wp-block-table {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    display: block !important;
    width: 100% !important;
    margin-bottom: 1.5rem !important;
  }

  .single .wp-block-table table {
    min-width: 480px !important;
    width: 100% !important;
    border-collapse: collapse !important;
  }

  .single .wp-block-table td,
  .single .wp-block-table th {
    white-space: normal !important;
    min-width: 100px !important;
    padding: 0.6rem 0.75rem !important;
    font-size: 0.875rem !important;
  }
}

/* ====== TABLE + MAIN OVERFLOW FIX ====== */
@media (max-width: 768px) {
  /* Allow table figures to scroll — the hidden guard on main was blocking them */
  .single main {
    overflow-x: visible !important;
  }

  /* Tables: scrollable wrapper (figure has no class in WP output) */
  .single .entry-content figure {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  .single .entry-content figure table {
    min-width: 400px !important;
    table-layout: auto !important;
    width: 100% !important;
  }

  .single .entry-content figure table td,
  .single .entry-content figure table th {
    min-width: 80px !important;
    padding: 0.5rem 0.75rem !important;
    font-size: 0.875rem !important;
    white-space: normal !important;
    word-break: normal !important;
  }
}

/* ===== Author meta flex fix — reset auto-margins that spread items across full width ===== */
.single .wp-block-post-featured-image + div .wp-block-post-author-name,
.single .wp-block-post-featured-image + div .wp-block-post-terms {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: none !important;
}

/* ===== Mobile table — fit in viewport, no horizontal scroll ===== */
@media (max-width: 768px) {
  .single .entry-content figure {
    overflow-x: visible !important;
    -webkit-overflow-scrolling: unset !important;
  }
  .single .entry-content figure table {
    min-width: 0 !important;
    width: 100% !important;
    font-size: 0.7rem !important;
    table-layout: auto !important;
  }
  .single .entry-content figure table td,
  .single .entry-content figure table th {
    min-width: 0 !important;
    padding: 0.35rem 0.45rem !important;
    font-size: 0.7rem !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }
}

/* ===== Post Navigation — Card Design ===== */
/* Reset container to grid for equal-width cards */
.single nav.wp-block-group.alignwide.is-layout-flex,
.single div.wp-block-group.alignwide.is-layout-flex:has(.wp-block-post-navigation-link) {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1rem !important;
  align-items: stretch !important;
  border-top: 0 !important;
  padding-top: 2rem !important;
  padding-bottom: 0.5rem !important;
  flex-wrap: unset !important;
}

/* Card base */
.single .wp-block-post-navigation-link {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 0.75rem !important;
  padding: 1.25rem 1.5rem !important;
  transition: border-color 200ms ease, box-shadow 200ms ease, transform 200ms ease !important;
  cursor: pointer !important;
}
.single .wp-block-post-navigation-link:hover {
  border-color: #1E3A5F !important;
  box-shadow: 0 6px 24px rgba(30,58,95,0.12) !important;
  transform: translateY(-3px) !important;
}

/* Hide the ← → arrow characters */
.single .wp-block-post-navigation-link__arrow-previous,
.single .wp-block-post-navigation-link__arrow-next {
  display: none !important;
}

/* Direction labels via ::before */
.single .post-navigation-link-previous::before {
  content: '← Previous Article' !important;
  display: block !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #94a3b8 !important;
  margin-bottom: 0.6rem !important;
  font-family: Inter, sans-serif !important;
  text-decoration: none !important;
}
.single .post-navigation-link-next {
  text-align: right !important;
}
.single .post-navigation-link-next::before {
  content: 'Next Article →' !important;
  display: block !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #94a3b8 !important;
  margin-bottom: 0.6rem !important;
  font-family: Inter, sans-serif !important;
  text-align: right !important;
  text-decoration: none !important;
}

/* Link title */
.single .wp-block-post-navigation-link a {
  display: block !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  color: #1E3A5F !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  font-family: Inter, sans-serif !important;
}
.single .wp-block-post-navigation-link a:hover {
  color: #1E3A5F !important;
  text-decoration: none !important;
}

/* Gold left accent on hover */
.single .post-navigation-link-previous:hover {
  border-left: 3px solid #D4AF37 !important;
}
.single .post-navigation-link-next:hover {
  border-right: 3px solid #D4AF37 !important;
}

/* Mobile: stack vertically */
@media (max-width: 640px) {
  .single nav.wp-block-group.alignwide.is-layout-flex,
  .single div.wp-block-group.alignwide.is-layout-flex:has(.wp-block-post-navigation-link) {
    grid-template-columns: 1fr !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .single .post-navigation-link-next {
    text-align: left !important;
  }
  .single .post-navigation-link-next::before {
    text-align: left !important;
  }
}

/* ===== Post Nav — hide empty cards + topic label ===== */
/* Switch from grid to flex so the hidden card leaves the other at 50% on its correct side */
.single nav.wp-block-group.alignwide.is-layout-flex,
.single div.wp-block-group.alignwide.is-layout-flex:has(.wp-block-post-navigation-link) {
  display: flex !important;
  flex-wrap: nowrap !important;
  grid-template-columns: unset !important;
}
.single .wp-block-post-navigation-link {
  flex: 0 0 calc(50% - 0.5rem) !important;
  min-width: 0 !important;
}
.single .post-navigation-link-next {
  margin-left: auto !important;
}
/* Hide card when article does not exist (div has no a inside) */
.single .wp-block-post-navigation-link:not(:has(a)) {
  display: none !important;
}
/* Topic tag under post title */
.single .wp-block-post-navigation-link a::after {
  content: 'Salesforce Advice' !important;
  display: block !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  color: #D4AF37 !important;
  margin-top: 0.5rem !important;
  text-decoration: none !important;
}
/* Mobile: stack full width, left-align next */
@media (max-width: 640px) {
  .single .wp-block-post-navigation-link {
    flex: 0 0 100% !important;
    margin-left: 0 !important;
  }
  .single .post-navigation-link-next { text-align: left !important; }
  .single .post-navigation-link-next::before { content: 'Next Article' !important; text-align: left !important; }
  .single .post-navigation-link-previous::before { content: 'Previous Article' !important; }
}

/* Hide author meta (Written by / in category) — desktop and mobile */
.single .wp-block-post-featured-image + div {
  display: none !important;
}

/* Mobile nav cards — stack vertically */
@media (max-width: 640px) {
  .single nav.wp-block-group.alignwide.is-layout-flex {
    flex-wrap: wrap !important;
  }
  .single .wp-block-post-navigation-link {
    flex: 0 0 100% !important;
    margin-left: 0 !important;
  }
  .single .post-navigation-link-next {
    text-align: left !important;
  }
}

/* ── Hide blog post byline (Written by / in Category) — 2026-05-17 ── */
/* The theme outputs a flex group containing "Written by", author name, "in", category. Hide the whole group. */
.single-post .wp-block-group.is-layout-flex:has(> .wp-block-post-author-name),
.single-post .wp-block-group.is-layout-flex:has(.wp-block-post-author-name + .wp-block-post-terms),
.single-post .wp-block-group:has(> .wp-block-post-author-name):has(> .wp-block-post-terms) {
  display: none !important;
}
