/* ==========================================================
   WordPress content inside the Norman Svelund design
   (articles and normal pages written in the editor)
   ========================================================== */

.post-body > *:first-child { margin-top: 0; }
.post-body h2, .post-body h3, .post-body h4 {
  font-family: var(--f-serif); font-weight: 500; color: var(--ink); line-height: 1.2; text-wrap: balance;
  margin: 1.6em 0 .5em;
}
.post-body h2 { font-size: clamp(26px, 2.6vw, 38px); }
.post-body h3 { font-size: clamp(22px, 2.1vw, 30px); }
.post-body h4 { font-size: clamp(19px, 1.6vw, 24px); }
.post-body ul, .post-body ol { margin: 0 0 1.4em; padding-left: 1.3em; color: #3b342d; }
.post-body li { margin: 0 0 .5em; }
.post-body li::marker { color: #A0672A; }
.post-body a:not(.btn) { color: #8A5A22; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.post-body a:not(.btn):hover { color: var(--ink); }
.post-body strong { color: var(--ink); }
.post-body hr { border: 0; height: 1px; background: rgba(29, 26, 23, .15); margin: 2.4em 0; }

/* first paragraph opens with a large letter, like the printed page */
.post-body > p:first-of-type::first-letter {
  float: left; font-family: var(--f-display); font-size: 4.2em; line-height: .82; padding: 6px 12px 0 0; color: #A0672A;
}

/* quotes (classic and block editor) look like the pull quote */
.post-body blockquote, .post-body .wp-block-quote {
  margin: 2em 0; padding: 10px 0 10px 28px; border-left: 2px solid var(--gold);
}
.post-body blockquote p, .post-body .wp-block-quote p {
  font-family: var(--f-serif); font-style: italic; font-size: clamp(24px, 2.4vw, 34px); line-height: 1.35; color: var(--ink); margin: 0 0 .4em;
}
.post-body blockquote cite, .post-body .wp-block-quote cite { font-size: 13px; font-style: normal; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-soft); }
.post-body .wp-block-pullquote { border-top: 1px solid var(--gold); border-bottom: 1px solid var(--gold); padding: 1.4em 0; text-align: center; }

/* pictures */
.post-body img { height: auto; border-radius: var(--radius); }
.post-body figure, .post-body .wp-block-image { margin: 2em 0; }
.post-body figcaption, .post-body .wp-caption-text, .post-body .wp-element-caption {
  font-family: var(--f-serif); font-style: italic; font-size: 16px; color: var(--ink-soft); text-align: center; margin-top: 10px;
}
.post-body .alignleft { float: left; margin: .4em 1.4em 1em 0; max-width: 50%; }
.post-body .alignright { float: right; margin: .4em 0 1em 1.4em; max-width: 50%; }
.post-body .aligncenter { margin-left: auto; margin-right: auto; }
.post-body .alignwide { margin-left: -6vw; margin-right: -6vw; max-width: none; }
.post-body::after { content: ""; display: table; clear: both; }
.wp-block-embed iframe, .post-body iframe { max-width: 100%; }

/* blog pagination */
.jpager { margin-top: 50px; }
.jpager .nav-links { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.jpager .page-numbers {
  display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 14px;
  border: 1px solid rgba(29, 26, 23, .2); border-radius: 40px; text-decoration: none; color: var(--ink);
  font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.jpager .page-numbers.current, .jpager .page-numbers:hover { background: var(--ink); color: var(--vellum); border-color: var(--ink); }

/* contact form spam trap: hidden from people */
.hp-field { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* WordPress admin bar sits above the fixed header when logged in */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }

/* screen reader text used by WordPress */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ns-no-sound .sound-toggle { display: none !important; }
.footer-social { list-style: none; margin: 22px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 20px; } .footer-social a { color: var(--gold-soft); text-decoration: none; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; } .footer-social a:hover { color: var(--vellum); }

/* ---------- logo picture (Site Editor > Logo) ---------- */
.brand-logo { display: block; height: var(--logo-h, 44px); width: auto; max-width: min(320px, 46vw); object-fit: contain; object-position: left center; }
.brand-logo--scrolled { display: none; }
.site-header.is-scrolled .brand-logo--main.has-alt { display: none; }
.site-header.is-scrolled .brand-logo--scrolled { display: block; }
.footer-brand .brand-logo { height: calc(var(--logo-h, 44px) * 1.2); max-width: min(360px, 80vw); }
@media (max-width: 767px) {
  .brand-logo { height: var(--logo-hm, 34px); max-width: 56vw; }
  .footer-brand .brand-logo { height: calc(var(--logo-hm, 34px) * 1.2); }
}
