.gbb-page {
  --gbb-purple: #44416d;
  --gbb-orange: #fb7025;
  --gbb-ink: #24223b;
  --gbb-muted: #686872;
  color: var(--gbb-ink);
  background: #fff;
  font-family: inherit;
}

.gbb-page *, .gbb-page *::before, .gbb-page *::after { box-sizing: border-box; }
.gbb-container { width: min(100% - 40px, 1180px); margin-inline: auto; }
.gbb-hero { padding: 72px 0 78px; background: linear-gradient(rgba(15, 10, 22, .38), rgba(15, 10, 22, .38)), url('https://guybutchers.com/wp-content/uploads/2026/10/all-pages-banner.jpg.jpeg') center / cover no-repeat; color: #fff; }
.gbb-breadcrumb { font-size: 14px; line-height: 1.5; margin-bottom: 14px; }
.gbb-breadcrumb a { color: inherit; text-decoration: none; }
.gbb-breadcrumb a:hover { color: var(--gbb-orange); }
.gbb-breadcrumb span { margin: 0 7px; opacity: .7; }
.gbb-page .gbb-hero h1 { color: #fff !important; margin: 0; font-size: clamp(36px, 5vw, 56px); line-height: 1.12; font-weight: 700; letter-spacing: 0; }
.gbb-listing { padding-block: 64px 90px; }
.gbb-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.gbb-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e8e7eb; border-radius: 7px; background: #fff; color: inherit; text-decoration: none; box-shadow: 0 10px 26px rgba(24, 20, 49, .06); transition: transform .2s ease, box-shadow .2s ease; }
.gbb-card:hover, .gbb-card:focus-visible { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(24, 20, 49, .12); }
.gbb-card:focus-visible { outline: 2px solid var(--gbb-orange); outline-offset: 3px; }
.gbb-card-image { width: 100%; aspect-ratio: 16 / 10; overflow: hidden; background: #171135; }
.gbb-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.gbb-card:hover .gbb-card-image img { transform: scale(1.025); }
.gbb-card-image-empty { display: grid; place-items: center; color: #fff; font-size: 18px; font-weight: 600; }
.gbb-card-body { display: flex; flex: 1; flex-direction: column; padding: 22px 24px 20px; }
.gbb-card h2 { color: var(--gbb-purple); font-size: 21px; line-height: 1.35; font-weight: 700; letter-spacing: 0; margin: 0 0 13px; }
.gbb-excerpt { color: var(--gbb-muted); font-size: 15px; line-height: 1.7; margin: 0 0 22px; }
.gbb-meta { display: flex; flex-wrap: wrap; gap: 5px 14px; align-items: center; margin-top: auto; padding-top: 16px; border-top: 1px solid #f0eef2; color: var(--gbb-muted); font-size: 13px; line-height: 1.4; }
.gbb-meta span { color: var(--gbb-purple); font-weight: 700; }
.gbb-empty { margin: 0; padding: 50px 0; text-align: center; color: var(--gbb-muted); }
.gbb-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 44px; }
.gbb-pagination .page-numbers { display: inline-flex; justify-content: center; align-items: center; min-width: 40px; min-height: 40px; padding: 7px 12px; border: 1px solid #dedce5; border-radius: 5px; color: var(--gbb-purple); text-decoration: none; }
.gbb-pagination .page-numbers.current, .gbb-pagination .page-numbers:hover { background: var(--gbb-orange); border-color: var(--gbb-orange); color: #fff; }
.gbb-article-container { width: min(100% - 40px, 820px); margin-inline: auto; }
.gbb-article-header { padding: 58px 0 42px; background: #f7f6f9; }
.gbb-page .gbb-article-header h1 { margin: 0 0 18px; color: var(--gbb-purple); font-size: clamp(30px, 3vw, 40px) !important; line-height: 1.25; font-weight: 700; letter-spacing: 0; }
.gbb-article-meta { margin: 0; color: var(--gbb-muted); font-size: 14px; }
.gbb-article-meta span { margin: 0 8px; }
.gbb-article { padding-block: 44px 90px; }
.gbb-article-image { margin: 0 0 36px; }
.gbb-article-image img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: cover; border-radius: 6px; }
.gbb-article-content { color: var(--gbb-ink); font-size: 17px; line-height: 1.8; overflow-wrap: break-word; }
.gbb-article-content p { margin: 0 0 1.25em; }
.gbb-article-content h2, .gbb-article-content h3, .gbb-article-content h4 { color: var(--gbb-purple); line-height: 1.3; letter-spacing: 0; margin: 1.5em 0 .6em; }
.gbb-article-content img { max-width: 100%; height: auto; }
.gbb-article-content a, .gbb-back { color: var(--gbb-orange); }
.gbb-article-content blockquote { border-left: 3px solid var(--gbb-orange); margin: 1.5em 0; padding: 8px 0 8px 20px; }
.gbb-back { display: inline-block; margin-top: 36px; font-weight: 600; text-decoration: none; }
.gbb-back:hover { text-decoration: underline; }

@media (max-width: 900px) { .gbb-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) {
  .gbb-container, .gbb-article-container { width: min(100% - 32px, 1180px); }
  .gbb-hero { padding: 52px 0 58px; }
  .gbb-listing { padding-block: 36px 60px; }
  .gbb-grid { grid-template-columns: 1fr; gap: 20px; }
  .gbb-card-body { padding: 18px 20px; }
  .gbb-card h2 { font-size: 20px; }
  .gbb-article-header { padding: 38px 0 32px; }
  .gbb-article { padding-block: 30px 60px; }
  .gbb-article-content { font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .gbb-card, .gbb-card-image img { transition: none; }
}
