/* ==========================================================================
   WordPress-only additions. Nothing here alters the client's design; it
   covers chrome the static export never had (admin bar, editor output,
   comment and gallery defaults, print).
   ========================================================================== */

/* Admin bar: the mobile drawer is fixed to the viewport, so shift it down. */
body.admin-bar .mobile-menu { top: calc(76px + 32px); }
@media screen and (max-width: 782px) {
  body.admin-bar .mobile-menu { top: calc(76px + 46px); }
}

/* Editor output inside prose areas (Gutenberg / classic content). */
.qr-editor > *:first-child { margin-top: 0; }
.qr-editor > *:last-child { margin-bottom: 0; }
.qr-editor p { color: var(--q-soft); line-height: 1.78; margin: 0 0 24px; }
.qr-editor h2 { font-size: clamp(30px, 3.5vw, 46px); line-height: 1.05; letter-spacing: -.035em; text-transform: uppercase; margin: 48px 0 20px; }
.qr-editor h3 { font-size: 20px; text-transform: uppercase; margin: 36px 0 14px; }
.qr-editor ul, .qr-editor ol { color: var(--q-soft); line-height: 1.8; padding-left: 20px; margin: 0 0 24px; }
.qr-editor a:not(.button):not(.text-link) { color: var(--q-green); border-bottom: 1px solid currentColor; }
.qr-editor blockquote { margin: 32px 0; padding-left: 22px; border-left: 2px solid var(--q-lemon); font-family: var(--font-editorial); font-size: 21px; line-height: 1.55; color: var(--q-soft); }
.qr-editor img, .qr-editor figure { margin: 32px 0; }
.qr-editor figcaption { color: var(--q-muted); font-size: 11px; margin-top: 10px; }
.alignleft { float: left; margin: 0 30px 22px 0; }
.alignright { float: right; margin: 0 0 22px 30px; }
.aligncenter { margin-inline: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }

/* Form feedback (the static export had no submit handling). */
.qr-notice { padding: 20px 22px; margin-bottom: 32px; border-left: 3px solid var(--q-green); background: var(--q-tint); font-size: 14px; line-height: 1.6; }
.qr-notice.is-error { border-left-color: #a32020; background: #fbeaea; }
.qr-notice p { margin: 0; }
.qr-honey { position: absolute; left: -9999px; }
.form-grid label.has-error input,
.form-grid label.has-error select,
.form-grid label.has-error textarea { border-color: #a32020; }
.form-error { color: #a32020; font-size: 11px; }

/* Pagination, used only if the client later adds an Insights archive. */
.qr-pagination { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 60px; }
.qr-pagination .page-numbers { border: 1px solid var(--q-border); padding: 11px 15px; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--q-soft); }
.qr-pagination .page-numbers.current { background: var(--q-green); border-color: var(--q-green); color: #fff; }

@media print {
  .site-header, .mobile-menu, .cta-band, .site-footer, .skip-link { display: none !important; }
  body { background: #fff; }
}
