:root {
  --gmb-gold: #b8903c;
  --gmb-gold-soft: #d8c28d;
  --gmb-ink: #25211d;
  --gmb-muted: #6f675d;
  --gmb-paper: #fffdfa;
  --gmb-blush: #f6f0e8;
  --gmb-line: rgba(87, 70, 44, 0.16);
  --gmb-shadow: 0 18px 40px rgba(31, 21, 10, 0.08);
}

body.gmb-single-post,
body.gmb-blog-index {
  background: linear-gradient(180deg, #fffdfa 0%, #f8f3ec 100%);
}

body.gmb-single-post .site,
body.gmb-blog-index .site,
body.gmb-single-post #page,
body.gmb-blog-index #page {
  background: transparent;
}

body.gmb-single-post article.gmb-article {
  max-width: 980px;
  margin: 3rem auto;
  background: var(--gmb-paper);
  box-shadow: var(--gmb-shadow);
  border: 1px solid var(--gmb-line);
  padding: clamp(1.5rem, 2vw, 2.5rem);
}

.gmb-article-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 2rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--gmb-line);
}

.gmb-kicker {
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: .72rem;
  color: var(--gmb-gold);
  font-weight: 700;
  margin-bottom: .8rem;
}

.gmb-article-title {
  font-size: clamp(2.2rem, 5vw, 4.2rem);
  line-height: 1.05;
  margin: 0 0 .7rem;
  color: var(--gmb-ink);
}

.gmb-subtitle {
  font-size: clamp(1.1rem, 2vw, 1.4rem);
  line-height: 1.5;
  color: var(--gmb-muted);
  max-width: 680px;
  margin: 0 auto 1rem;
}

.gmb-meta {
  display: flex;
  justify-content: center;
  gap: .7rem;
  flex-wrap: wrap;
  color: var(--gmb-muted);
  font-size: .95rem;
}

.gmb-standfirst {
  font-size: clamp(1.1rem, 2vw, 1.3rem);
  line-height: 1.7;
  color: #3e342b;
  max-width: 700px;
  margin: 1.3rem auto 0;
}

.gmb-featured-media {
  margin: 0 auto 2rem;
  max-width: 100%;
}

.gmb-featured-media img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 2px;
}

.gmb-caption {
  margin-top: .55rem;
  color: var(--gmb-muted);
  font-size: .9rem;
  text-align: right;
  font-style: italic;
}

.gmb-article-body {
  max-width: 760px;
  margin: 0 auto;
  color: var(--gmb-ink);
  font-size: 1.1rem;
  line-height: 1.95;
}

.gmb-article-body > p:first-child::first-letter {
  float: left;
  font-size: 4.5rem;
  line-height: .8;
  padding-right: .45rem;
  padding-top: .25rem;
  color: var(--gmb-gold);
  font-weight: 700;
}

.gmb-article-body h2,
.gmb-article-body h3,
.gmb-article-body h4 {
  color: var(--gmb-ink);
  margin-top: 2rem;
  margin-bottom: .7rem;
  line-height: 1.25;
}

.gmb-article-body p,
.gmb-article-body ul,
.gmb-article-body ol,
.gmb-article-body blockquote {
  margin-bottom: 1.25rem;
}

.gmb-article-body blockquote {
  margin: 2rem 0;
  padding: 1rem 1.25rem;
  background: var(--gmb-blush);
  border-left: 4px solid var(--gmb-gold);
  font-size: 1.18rem;
  font-style: italic;
}

.gmb-article-body figure {
  margin-top: .6rem;
  margin-bottom: 1.1rem;
}

.gmb-article-body .wp-block-image.alignleft,
.gmb-article-body .wp-block-image.alignright,
.gmb-article-body .alignleft,
.gmb-article-body .alignright {
  max-width: min(42%, 320px);
}

.gmb-article-body .wp-block-image.alignleft,
.gmb-article-body .alignleft {
  float: left;
  margin: .4rem 1.5rem .8rem 0;
}

.gmb-article-body .wp-block-image.alignright,
.gmb-article-body .alignright {
  float: right;
  margin: .4rem 0 .8rem 1.5rem;
}

.gmb-article-body .wp-block-image img,
.gmb-article-body img {
  border-radius: 2px;
  box-shadow: 0 8px 24px rgba(25, 18, 10, 0.14);
}

.gmb-article-body::after {
  content: "";
  display: table;
  clear: both;
}

body.gmb-blog-index .site-main,
body.gmb-blog-index main,
body.gmb-blog-index .content-area {
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

body.gmb-blog-index article.gmb-post-card {
  background: rgba(255,255,255,.8);
  border: 1px solid var(--gmb-line);
  box-shadow: 0 10px 24px rgba(31, 21, 10, 0.05);
  padding: 1.2rem;
  margin-bottom: 2rem;
}

body.gmb-blog-index article.gmb-post-card .post-thumbnail,
body.gmb-blog-index article.gmb-post-card img {
  width: 100%;
  height: auto;
  display: block;
}

body.gmb-blog-index article.gmb-post-card .entry-title,
body.gmb-blog-index article.gmb-post-card h2 {
  font-size: clamp(1.5rem, 3vw, 2rem);
  line-height: 1.2;
}

body.gmb-blog-index article.gmb-post-card .entry-title a,
body.gmb-blog-index article.gmb-post-card h2 a {
  color: var(--gmb-ink);
  text-decoration: none;
}

body.gmb-blog-index article.gmb-post-card .entry-title a:hover,
body.gmb-blog-index article.gmb-post-card h2 a:hover {
  color: var(--gmb-gold);
}

body.gmb-blog-index .entry-summary,
body.gmb-blog-index .entry-content,
body.gmb-blog-index .post excerpt {
  color: #4b433b;
}

body.gmb-blog-index .read-more,
body.gmb-blog-index a.more-link {
  display: inline-block;
  margin-top: .7rem;
  padding-bottom: .15rem;
  border-bottom: 2px solid var(--gmb-gold);
  text-decoration: none;
  color: var(--gmb-ink);
  font-weight: 600;
}

@media (max-width: 860px) {
  body.gmb-single-post article.gmb-article {
    margin: 1rem;
    padding: 1.2rem;
  }

  .gmb-article-body {
    font-size: 1.02rem;
    line-height: 1.8;
  }

  .gmb-article-body .wp-block-image.alignleft,
  .gmb-article-body .wp-block-image.alignright,
  .gmb-article-body .alignleft,
  .gmb-article-body .alignright {
    float: none;
    display: block;
    max-width: 100%;
    margin: 1rem 0;
  }
}
