/* ==========================================================================
   AVANT HEIR — components on top of Astra
   Everything global (palette, base fonts, sizes, widths, header/footer bars,
   blog grid, banners, related posts) is set in the Astra Customizer.
   This file adds the brand's magazine furniture: the condensed display voice,
   the serif wink, the taxonomy slash, cards, ledgers, the field-guide parts,
   and the block styles offered in the editor.
   ========================================================================== */

/* --------------------------------------------------------------------------
   0. BASE — the sans talks (condensed), links carry the accent underline
   -------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.entry-title, .ast-archive-title, .ast-related-posts-title,
.wp-block-post-title, .wp-block-heading {
  font-stretch: var(--stretch-display);
  letter-spacing: 0 !important; /* readability first: no tracking on headings, sitewide */
}
h4, h5, h6 { font-stretch: 82%; }
/* prose headings inside posts read a touch wider than display lockups */
.entry-content h2:not(.wp-block-post-title):not(.section-header__title):not([class*="hero"]),
.entry-content h3:not(.wp-block-post-title):not([class*="__name"]):not([class*="__title"]) { font-stretch: 84%; }

::selection { background: var(--ah-marigold-light); color: var(--ah-ink); }

/* prose links only: bold, marigold stripe behind the text. Never on Query Loop
   titles/terms, buttons, headings, or the handwritten note. */
.entry-content :is(p, li, figcaption) a:not(.wp-block-button__link, .wp-block-post-template *, .wp-block-post-terms *, .wp-block-post-title *, .wp-block-read-more, .tax *, .hand *, .btn) {
  font-weight: 700;
  color: var(--ah-ink);
  text-decoration: none;
  background-image: linear-gradient(var(--ah-marigold-light), var(--ah-marigold-light));
  background-repeat: no-repeat;
  background-size: 100% 0.42em;
  background-position: 0 90%;
  padding: 0 0.08em;
  margin: 0 -0.08em;
  transition: background-size 0.15s ease;
}
.entry-content :is(p, li, figcaption) a:not(.wp-block-button__link, .wp-block-post-template *, .wp-block-post-terms *, .wp-block-post-title *, .wp-block-read-more, .tax *, .hand *, .btn):hover {
  background-image: linear-gradient(var(--ah-marigold), var(--ah-marigold));
  background-size: 100% 0.55em;
  color: var(--ah-ink);
}

/* titles are never underlined, wherever Astra's content-link rule reaches */
.entry-content h1 a, .entry-content h2 a, .entry-content h3 a, .entry-content h4 a,
.wp-block-post-title a, .index-label__name a, .ledger-row__name a, .wp-block-read-more,
.ast-article-post .entry-title a, .ast-related-post-title a { text-decoration: none !important; }

/* Square everything. The brand has no radius. */
.wp-block-button__link, .ast-button, button, input, textarea, select,
.wp-block-image img, .wp-block-post-featured-image img { border-radius: 0 !important; }

/* --------------------------------------------------------------------------
   1. VOICES — block styles + utility classes
   -------------------------------------------------------------------------- */
/* the serif winks: italic only, never roman */
.wink, .is-style-wink, .is-style-dek,
.hero__dek, .featured__dek, .post-card__dek, .index-label__dek,
.ledger-row__dek, .page-header__dek, .equation__def, .signup__line {
  font-family: var(--font-serif) !important;
  font-style: italic;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}
.is-style-wink { font-size: 1.15em; color: var(--ah-mid-ink); }
.is-style-dek, .page-header__dek { font-size: 20px; line-height: 1.4; color: var(--ah-mid-ink); }

.kicker, .is-style-kicker {
  font-family: var(--font-sans);
  font-weight: 800; font-stretch: 82%;
  font-size: 11px; letter-spacing: var(--track-kicker);
  text-transform: uppercase; color: var(--ah-faded-ink);
}
.folio, .is-style-folio {
  font-family: var(--font-sans);
  font-weight: 600; font-size: 10px;
  letter-spacing: var(--track-folio); text-transform: uppercase;
  color: var(--ah-faded-ink);
}
.hand, .is-style-handwritten {
  font-family: var(--font-hand) !important;
  font-weight: 600; font-size: 24px; line-height: 1.15;
  color: var(--ah-marigold-deep);
  text-transform: none; letter-spacing: 0;
  transform: rotate(-2deg); display: inline-block;
}
.tag, .is-style-tag {
  display: inline-block;
  font-family: var(--font-sans);
  font-weight: 800; font-stretch: 82%;
  font-size: 10px; letter-spacing: 0.24em; text-transform: uppercase;
  padding: 4px 10px; margin: 0;
  background: var(--ah-marigold); color: var(--ah-ink);
}
.tag--cream { background: var(--ah-cream); box-shadow: inset 0 0 0 1px var(--ah-hairline); }
.tag--ink { background: var(--ah-ink); color: var(--ah-cream); }

/* the aesthetic name, everywhere: serif italic, led by the marigold slash */
.is-style-aesthetic-name,
.tax, .tax a, .index-label__name, .ledger-row__name a, .index-label__name a,
.ast-archive-title, .ah-aesthetic .ast-single-entry-banner .entry-title,
.cat-links a, .ast-terms-link a, .ast-related-cat-style--none a {
  font-family: var(--font-serif) !important;
  font-style: italic; font-weight: 400;
  text-transform: none; letter-spacing: 0;
  font-stretch: 100%;
}
.tax, .cat-links, .ast-single-entry-banner .ast-terms-link,
.wp-block-post-terms.tax {
  display: inline-flex; align-items: baseline; gap: 6px;
  font-size: 15px; line-height: 1.2; margin: 0;
}
.tax::before, .cat-links::before, .ast-single-entry-banner .ast-terms-link::before,
.entry-meta .ast-terms-link::before {
  content: "/";
  font-family: var(--font-sans); font-style: normal;
  font-weight: 900; font-size: 0.85em; color: var(--ah-marigold);
}
.tax a, .cat-links a { color: inherit; text-decoration: none; }
.tax a:hover, .cat-links a:hover { color: var(--ah-marigold-deep); }
.wp-block-post-terms__separator { color: var(--ah-faded-ink); }

/* section header: title + rule, optional link on the right */
.section-header {
  display: flex; align-items: baseline; justify-content: space-between; gap: 16px;
  border-bottom: var(--rule-section); padding-bottom: 10px;
  margin: 0 0 24px;
}
.section-header__title, .is-style-section-header {
  font-weight: 800 !important; font-stretch: 82%;
  font-size: 18px !important; text-transform: uppercase; letter-spacing: 0.04em !important;
  margin: 0;
}
.is-style-section-header { border-bottom: var(--rule-section); padding-bottom: 10px; margin-bottom: 24px; }
@media (min-width: 720px) { .section-header__title, .is-style-section-header { font-size: 22px !important; } }
.section-header .wp-block-buttons, .section-header p { margin: 0; }

/* buttons: block styles + pattern classes */
.wp-block-button .wp-block-button__link, .btn, .ast-button, .ast-single-related-posts-container .ast-button {
  font-family: var(--font-sans);
  font-weight: 700; font-stretch: var(--stretch-ui);
  font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase;
  padding: 10px 20px; border-radius: 0; line-height: 1.2;
}
.wp-block-button.is-style-ghost .wp-block-button__link,
.wp-block-button.btn--ghost .wp-block-button__link, .btn--ghost {
  background: transparent !important; color: var(--ah-ink) !important;
  box-shadow: inset 0 0 0 1.5px var(--ah-ink);
}
.wp-block-button.is-style-ghost .wp-block-button__link:hover,
.wp-block-button.btn--ghost .wp-block-button__link:hover, .btn--ghost:hover {
  color: var(--ah-marigold-deep) !important; box-shadow: inset 0 0 0 1.5px var(--ah-marigold-deep);
}
.wp-block-button.is-style-marigold .wp-block-button__link,
.wp-block-button.btn--marigold .wp-block-button__link, .btn--marigold {
  background: var(--ah-marigold) !important; color: var(--ah-ink) !important;
}
.wp-block-button.is-style-marigold .wp-block-button__link:hover,
.wp-block-button.btn--marigold .wp-block-button__link:hover { background: var(--ah-marigold-light) !important; }
.wp-block-button.is-style-link .wp-block-button__link,
.wp-block-button.btn--link .wp-block-button__link, .btn--link, .ah-field-guide-link a {
  background: transparent !important; color: var(--ah-ink) !important; padding: 0;
  text-decoration: underline; text-decoration-color: var(--ah-marigold);
  text-decoration-thickness: 2px; text-underline-offset: 4px;
  font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase;
}
.wp-block-button.is-style-link .wp-block-button__link:hover, .btn--link:hover, .ah-field-guide-link a:hover { color: var(--ah-marigold-deep) !important; }
.wp-block-buttons.chips { gap: 8px; }
.wp-block-button.is-style-chip .wp-block-button__link, .wp-block-button.chip .wp-block-button__link {
  background: var(--ah-cream) !important; color: var(--ah-ink) !important;
  box-shadow: inset 0 0 0 1px var(--ah-hairline);
  font-size: 10px; letter-spacing: 0.2em; padding: 5px 10px;
}
.wp-block-button.is-style-chip .wp-block-button__link:hover, .wp-block-button.chip .wp-block-button__link:hover { box-shadow: inset 0 0 0 1px var(--ah-ink); }

/* read-more block used as a primary button */
.wp-block-read-more.btn { display: inline-block; text-decoration: none; margin-top: 8px; }
.wp-block-read-more.btn--primary { background: var(--ah-ink); color: var(--ah-cream); }
.wp-block-read-more.btn--primary:hover { background: var(--ah-marigold-deep); color: var(--ah-ink); }

/* quote / pull quote */
.wp-block-quote.is-style-pullquote-fig, .pullquote {
  border-left: var(--rule-spine); padding-left: 22px; margin: 44px 0;
  font-family: var(--font-serif); font-style: italic;
  font-size: clamp(24px, 3vw, 32px); line-height: 1.3; color: var(--ah-fig);
}
.wp-block-quote.is-style-pullquote-fig p { font-family: inherit; font-style: inherit; font-size: inherit; line-height: inherit; }
.wp-block-quote.is-style-pullquote-fig cite { font-family: var(--font-sans); font-style: normal; font-size: 11px; letter-spacing: var(--track-kicker); text-transform: uppercase; color: var(--ah-faded-ink); }

/* group styles */
.wp-block-group.is-style-ink-panel { background: var(--ah-ink); color: var(--ah-cream); padding: 40px 32px; }
.wp-block-group.is-style-ink-panel a { color: var(--ah-marigold-light); }
.wp-block-group.is-style-ruled { border-top: var(--rule-hairline); border-bottom: var(--rule-hairline); padding: 20px 0; }

/* --------------------------------------------------------------------------
   2. BRAND MARKS — typographic, used in the header/footer HTML elements
   -------------------------------------------------------------------------- */
.wordmark {
  font-family: var(--font-sans);
  font-weight: 900; font-stretch: var(--stretch-display);
  font-size: 18px; line-height: 1;
  text-transform: uppercase; letter-spacing: var(--track-display);
  white-space: nowrap; color: var(--ah-ink); text-decoration: none;
}
.wordmark .slash { color: var(--ah-marigold); margin: 0 0.12em; }
.wordmark--lg { font-size: 28px; }
.monogram {
  display: inline-block; border: 2px solid currentColor;
  padding: 4px 6px; margin-right: 12px;
  font-family: var(--font-sans); font-weight: 900; font-stretch: var(--stretch-mono);
  font-size: 13px; line-height: 1; letter-spacing: 0.02em; color: var(--ah-ink);
}
.monogram .slash { color: var(--ah-marigold); }
.masthead__brand { display: inline-flex; align-items: center; text-decoration: none; }
.masthead__aside {
  font-family: var(--font-serif); font-style: italic; font-size: 13px; color: var(--ah-faded-ink);
}

/* --------------------------------------------------------------------------
   3. HEADER — menu voice, the Styles submenu
   -------------------------------------------------------------------------- */
.ast-header-html-1 p, .ast-header-html-2 p, .ast-footer-html-1 p, .ast-footer-html-2 p { margin: 0; }
.ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link { font-stretch: var(--stretch-ui); }
.ast-builder-menu .main-header-menu .menu-item.current-menu-item > .menu-link,
.ast-builder-menu .main-header-menu .menu-item.current-menu-ancestor > .menu-link {
  text-decoration: underline; text-decoration-color: var(--ah-marigold);
  text-decoration-thickness: 2px; text-underline-offset: 5px;
}
/* submenu = the aesthetic categories: serif italic names, two columns on desktop */
.ast-desktop .ast-builder-menu .main-header-menu .sub-menu {
  columns: 2; column-gap: 24px; padding: 10px 18px 12px;
}
/* Seasons dropdown: only four entries, so a single stacked column */
.ast-desktop .ast-builder-menu .main-header-menu #menu-item-3308 .sub-menu {
  columns: 1; min-width: 160px;
}
.ast-builder-menu .main-header-menu .sub-menu .menu-item { break-inside: avoid; }
.ast-builder-menu .main-header-menu .sub-menu .menu-link {
  font-family: var(--font-serif) !important; font-style: italic; font-weight: 400;
  text-transform: none; letter-spacing: 0; font-size: 15px;
  padding: 7px 0 !important; border-bottom: 1px solid var(--ah-hairline);
  display: flex; align-items: baseline; gap: 6px;
}
.ast-builder-menu .main-header-menu .sub-menu .menu-link::before {
  content: "/"; font-family: var(--font-sans); font-style: normal; font-weight: 900; font-size: 11px; color: var(--ah-marigold);
}
.ast-builder-menu .main-header-menu .sub-menu .menu-item:last-child .menu-link { border-bottom: none; }
/* mobile drawer: plain stacked links */
.ast-mobile-popup-drawer .menu-link, .ast-mobile-header-content .menu-link { font-stretch: var(--stretch-ui); }
.ast-mobile-popup-drawer .sub-menu .menu-link { font-family: var(--font-serif) !important; font-style: italic; text-transform: none; letter-spacing: 0; }

/* --------------------------------------------------------------------------
   4. HOME — hero, featured, grid, index teaser (all core Query Loop blocks)
   -------------------------------------------------------------------------- */
.ah-home > * + * { margin-top: var(--space-8); }
.ah-home .wp-block-query, .ah-home .wp-block-group { margin-bottom: 0; }

/* Query Loop lists: kill list chrome */
ul.wp-block-post-template { list-style: none; margin: 0; padding: 0; }
ul.wp-block-post-template > li { margin: 0; padding: 0; }
ul.wp-block-post-template.is-layout-flow > li + li { margin-top: 0; }

/* hero — latest post, contained to content width */
.ah-hero-loop > li { position: relative; }
.hero {
  position: relative; overflow: hidden;
  background: var(--ah-ink); color: var(--ah-cream);
  min-height: 480px; margin: 0;
}
@media (min-width: 720px) { .hero { min-height: 540px; } }
.hero__photo { position: absolute; inset: 0; margin: 0 !important; z-index: 0; }
.hero__photo a { display: block; height: 100%; }
.hero__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero::after {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background: linear-gradient(to top, var(--ah-scrim) 0%, rgba(28,24,20,0.25) 55%, rgba(28,24,20,0) 100%);
}
@media (min-width: 720px) {
  .hero::after { background: linear-gradient(to right, rgba(28,24,20,0.74) 0%, rgba(28,24,20,0.2) 55%, rgba(28,24,20,0) 100%); }
}
.hero__inner {
  position: relative; z-index: 2;
  display: flex; flex-direction: column; justify-content: flex-end;
  min-height: inherit; padding: 28px 20px 36px;
}
@media (min-width: 720px) { .hero__inner { padding: 48px 36px 52px; max-width: 760px; } }
.hero__inner > * { margin: 0; }
.hero__inner .tag { align-self: flex-start; }
.hero__inner .tax { color: var(--ah-cream); }
.hero__title {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
  font-size: clamp(38px, 7.5vw, 68px) !important; line-height: var(--leading-display) !important;
  text-transform: uppercase; margin-top: 14px !important; color: var(--ah-cream) !important;
}
.hero__title a { color: inherit !important; text-decoration: none; }
.hero__title a:hover { color: var(--ah-marigold-light) !important; }
.hero__dek, .hero__dek p { font-size: 19px; color: var(--ah-marigold-light) !important; margin: 12px 0 0 !important; }

/* featured (Read Next) — columns inside a Query Loop */
.featured { align-items: center; margin: 0; }
.featured__photo { margin: 0 !important; }
.featured__photo img { width: 100%; aspect-ratio: 3/2 !important; height: auto; object-fit: cover; display: block; }
.featured .wp-block-column > * + * { margin-top: 16px; }
.featured__title {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
  font-size: clamp(30px, 4.5vw, 46px) !important; line-height: 1 !important; text-transform: uppercase;
}
.featured__title a { color: inherit; text-decoration: none; }
.featured__title a:hover { color: var(--ah-marigold-deep); }
.featured__dek, .featured__dek p { font-size: 19px; color: var(--ah-mid-ink); margin: 0; }

/* post cards — Query Loop version */
ul.post-grid { display: grid; gap: 28px 24px; }
@media (min-width: 640px)  { ul.post-grid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { ul.post-grid { grid-template-columns: 1fr 1fr 1fr; gap: 32px 28px; } }
.post-card { margin: 0; }
.post-card__photo { margin: 0 !important; }
.post-card__photo img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.post-card__body { border-top: var(--rule-masthead); padding-top: 12px; margin-top: 12px; }
.post-card__body > * { margin: 0; }
.post-card__title {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
  font-size: 22px !important; line-height: 1.05 !important; text-transform: uppercase;
  margin-top: 8px !important;
}
.post-card__title a { color: inherit; text-decoration: none; }
.post-card:hover .post-card__title a { color: var(--ah-marigold-deep); }
.post-card__dek, .post-card__dek p { font-size: 15px; color: var(--ah-mid-ink); margin: 8px 0 0 !important; }
.post-card__folio { margin-top: 12px !important; }

/* Aesthetic Index teaser cards */
ul.index-cards { display: grid; gap: 24px; }
@media (min-width: 720px) { ul.index-cards { grid-template-columns: 1fr 1fr 1fr; gap: 20px; } }
.index-card { background: var(--ah-warm-fog); border: 1px solid var(--ah-hairline); margin: 0; }
.index-card__photo { margin: 0 !important; }
.index-card__photo img { width: 100%; aspect-ratio: 4/3 !important; height: auto; object-fit: cover; display: block; }
.index-card__foot { border-top: var(--rule-masthead); padding: 14px 16px 18px; }
.index-card__foot > * { margin: 0; }
.index-label__name { font-size: 26px !important; line-height: 1.1 !important; display: flex; gap: 8px; align-items: baseline; }
.index-label__name::before { content: "/"; font-family: var(--font-sans); font-style: normal; font-weight: 900; font-size: 18px; color: var(--ah-marigold); }
.index-label__name a { color: inherit; text-decoration: none; }
.index-card:hover .index-label__name a { color: var(--ah-marigold-deep); }
.index-label__dek, .index-label__dek p { font-size: 14px; color: var(--ah-mid-ink); margin: 6px 0 0 !important; }

/* --------------------------------------------------------------------------
   5. PAGE HEADERS + THE INDEX ledger (block patterns)
   -------------------------------------------------------------------------- */
.page-header { margin-bottom: var(--space-6); }
.page-header > * { margin: 0; }
.page-header__title {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
  font-size: clamp(42px, 9vw, 92px) !important; line-height: 0.94 !important;
  text-transform: uppercase; margin-top: 14px !important;
}
.page-header__dek { margin-top: 14px !important; }
.page-header__rule, hr.page-header__rule {
  width: 100% !important; max-width: none !important; height: 0; background: none !important;
  border: none; border-bottom: var(--rule-masthead); margin: 28px 0 0 !important; opacity: 1;
}
.page-header__folio { display: flex; justify-content: space-between; gap: 12px; margin-top: 10px !important; }

ul.ledger { border-top: 1px solid var(--ah-hairline); }
.ledger-row {
  display: grid; grid-template-columns: 1fr 108px; gap: 16px; align-items: center;
  padding: 22px 0; border-bottom: 1px solid var(--ah-hairline); margin: 0;
}
@media (min-width: 720px) { .ledger-row { grid-template-columns: 1fr 180px; gap: 28px; padding: 26px 0; } }
.ledger-row__main > * { margin: 0; }
.ledger-row__name { font-size: 27px !important; line-height: 1.1 !important; display: flex; gap: 10px; align-items: baseline; }
@media (min-width: 720px) { .ledger-row__name { font-size: 34px !important; } }
.ledger-row__name::before { content: "/"; font-family: var(--font-sans); font-style: normal; font-weight: 900; font-size: 0.7em; color: var(--ah-marigold); }
.ledger-row__name a { color: inherit; text-decoration: none; }
.ledger-row:hover .ledger-row__name a { color: var(--ah-marigold-deep); }
.ledger-row__dek, .ledger-row__dek p { font-size: 14px; color: var(--ah-mid-ink); margin: 6px 0 0 !important; max-width: 58ch; }
.ledger-row__photo { margin: 0 !important; }
.ledger-row__photo img { width: 100%; aspect-ratio: 4/3 !important; height: auto; object-fit: cover; display: block; }

/* --------------------------------------------------------------------------
   6. ASTRA BLOG GRID + RELATED POSTS — same card look as the Query Loop cards
   -------------------------------------------------------------------------- */
.ast-article-post .ast-blog-featured-section img,
.ast-related-post-featured-section img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.ast-article-post .cat-links, .ast-related-post .entry-meta {
  border-top: var(--rule-masthead); padding-top: 12px; margin-top: 12px; margin-bottom: 0;
}
.ast-article-post .entry-title, .ast-related-post-title {
  font-weight: 900 !important; font-stretch: var(--stretch-display) !important;
  font-size: 22px !important; line-height: 1.05 !important; text-transform: uppercase !important;
  margin: 8px 0 0 !important;
}
.ast-article-post .entry-title a, .ast-related-post-title a { color: inherit; text-decoration: none; }
.ast-article-post:hover .entry-title a, .ast-related-post:hover .ast-related-post-title a { color: var(--ah-marigold-deep); }
.ast-article-post .ast-excerpt-container, .ast-article-post .ast-excerpt-container p {
  font-family: var(--font-serif); font-style: italic; font-size: 15px; color: var(--ah-mid-ink); margin: 8px 0 0;
}
.ast-related-posts-title {
  font-weight: 800 !important; font-stretch: 82% !important; font-size: 22px !important;
  text-transform: uppercase; letter-spacing: 0.06em;
  border-bottom: var(--rule-section); padding-bottom: 10px; margin-bottom: 24px !important;
}
.ast-related-post .entry-meta * { font-family: var(--font-serif); font-style: italic; font-size: 15px; text-transform: none; letter-spacing: 0; }

/* --------------------------------------------------------------------------
   7. CATEGORY ARCHIVE — Astra banner (layout 1) styled as the design header
   -------------------------------------------------------------------------- */
.ast-archive-entry-banner, section.ast-archive-description { border-bottom: var(--rule-masthead); }
.ast-archive-entry-banner .ast-container::before, section.ast-archive-description::before {
  content: "The Archive"; display: block;
  font-family: var(--font-sans); font-weight: 800; font-stretch: 82%; font-size: 11px;
  letter-spacing: var(--track-kicker); text-transform: uppercase; color: var(--ah-faded-ink);
  margin-bottom: 8px;
}
.ast-archive-title { display: flex; align-items: baseline; gap: 0.15em; line-height: 1 !important; }
.ast-archive-title::before { content: "/"; font-family: var(--font-sans); font-style: normal; font-weight: 900; font-size: 0.7em; color: var(--ah-marigold); }
.ast-archive-description > p, .ast-archive-entry-banner p { max-width: 68ch; font-size: 15px; line-height: 1.7; color: var(--ah-mid-ink); }
.ah-field-guide-link { margin: 6px 0 0; }

/* --------------------------------------------------------------------------
   8. SINGLE POST — Astra banner (layout 2) + prose measure
   -------------------------------------------------------------------------- */
.ast-single-entry-banner { position: relative; }
.ast-single-entry-banner .entry-title, .single-page .entry-title, .page .entry-header .entry-title {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
}
/* Astra caps custom-width banners but does not center them */
.ast-single-entry-banner[data-banner-width-type="custom"] { margin-left: auto !important; margin-right: auto !important; }
.ast-single-entry-banner .entry-title { color: var(--ah-cream) !important; }
.ast-single-entry-banner .ast-terms-link a { color: var(--ah-cream) !important; text-decoration: none; }
.ast-single-entry-banner .ast-terms-link a:hover { color: var(--ah-marigold-light) !important; }
.ast-single-entry-banner .ast-single-post-excerpt, .ast-single-entry-banner .ast-container > p, .ast-single-entry-banner .entry-content p {
  font-family: var(--font-serif); font-style: italic; font-size: 19px; color: var(--ah-marigold-light);
}
/* prose: everything reads at 740 unless the writer sets wide/full */
.single-post .entry-content > *:not(.alignwide):not(.alignfull):not(.wp-block-group):not(.wp-block-columns):not(.wp-block-query) {
  max-width: var(--ah-measure); margin-left: auto; margin-right: auto;
}
.single-post .entry-content { font-size: 16px; line-height: 1.75; }
.entry-content h2:not(.wp-block-post-title):not(.section-header__title):not([class*="hero"]) {
  font-weight: 900; text-transform: uppercase; line-height: 1.05;
  border-bottom: var(--rule-section); padding-bottom: 10px; margin: 2em 0 0.8em;
}
.entry-content h3:not(.wp-block-post-title):not([class*="__name"]):not([class*="__title"]) {
  font-weight: 800; text-transform: uppercase; line-height: 1.15; margin: 1.6em 0 0.5em;
}
.entry-content h4 { font-weight: 800; text-transform: uppercase; margin: 1.4em 0 0.4em; }

/* Shop the Look label (blog posts) */
.shop-the-look-label {
  font-family: var(--font-serif) !important; font-style: italic; font-weight: 400;
  font-size: 26px; line-height: 1.3; color: var(--ah-ink);
  text-transform: none; letter-spacing: 0;
  margin-top: 1.4em !important; margin-bottom: 0.4em !important;
}
.shop-the-look-label + .wp-block-buttons { margin-top: 0; margin-bottom: 3em !important; }
/* the block after the shop row gets breathing room too, whatever it is */
.shop-the-look-label + .wp-block-buttons + * { margin-top: 0 !important; }
.entry-content figure figcaption, .wp-block-image figcaption {
  font-family: var(--font-serif); font-style: italic; font-size: 14px; color: var(--ah-faded-ink);
  text-align: left; margin-top: 10px;
}
.entry-content figure figcaption::before, .wp-block-image figcaption::before {
  content: "/ "; font-family: var(--font-sans); font-style: normal; font-weight: 900; color: var(--ah-marigold);
}

/* --------------------------------------------------------------------------
   9. AESTHETIC FIELD GUIDE — banner + the three sections (block patterns)
   -------------------------------------------------------------------------- */
/* split hero: ink panel left, featured photo right (image url injected in wp_head) */
.ah-aesthetic .ast-single-entry-banner {
  background: var(--ah-ink) !important; background-blend-mode: normal !important;
  overflow: hidden;
}
.ah-aesthetic .ast-single-entry-banner::after {
  content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 42%;
  background-size: cover; background-position: center 30%; background-repeat: no-repeat;
}
.ah-aesthetic .ast-single-entry-banner .ast-container { position: relative; z-index: 1; max-width: 56% !important; margin-left: 0 !important; margin-right: auto !important; }
@media (max-width: 899px) {
  .ah-aesthetic .ast-single-entry-banner::after { width: 100%; opacity: 0.35; }
  .ah-aesthetic .ast-single-entry-banner .ast-container { max-width: 100% !important; }
}
.ah-aesthetic .ast-single-entry-banner .ast-container::before {
  content: "The Aesthetic Index"; display: block;
  font-family: var(--font-sans); font-weight: 800; font-stretch: 82%; font-size: 12px;
  letter-spacing: var(--track-folio); text-transform: uppercase; color: var(--ah-cream-on-ink); margin-bottom: 10px;
}
.ah-aesthetic .ast-single-entry-banner .entry-title { display: flex; align-items: baseline; gap: 0.15em; line-height: 1.02 !important; }
.ah-aesthetic .ast-single-entry-banner .entry-title::before { content: "/"; font-family: var(--font-sans); font-style: normal; font-weight: 900; font-size: 0.7em; color: var(--ah-marigold-light); }

.entry-content .aesthetic-intro, .aesthetic-intro { max-width: var(--ah-measure) !important; margin: 0 auto var(--space-7) !important; font-size: 16px; line-height: 1.75; }

.ah-field-guide > * + * { margin-top: var(--space-8); }

/* elements: image + origin story, alternating */
.element { padding: 36px 0; border-bottom: 1px solid var(--ah-hairline); margin: 0 !important; align-items: center; }
.element:last-child { border-bottom: none; }
.element--flip .wp-block-column:first-child { order: 2; }
.element__photo { margin: 0 !important; }
.element__photo img, .wp-block-image.element__photo img { width: 100% !important; height: auto; aspect-ratio: 4/3; object-fit: cover; display: block; }
.element__name {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
  font-size: clamp(24px, 3vw, 32px) !important; line-height: 1.02 !important; text-transform: uppercase;
  margin: 0 0 12px !important;
}
.element__origin { font-size: 14px; line-height: 1.7; color: var(--ah-mid-ink); max-width: 56ch; margin: 0; }
.element__circa { margin-top: 14px !important; }

/* how to wear it: ruled rules */
.rules { gap: 28px 40px; }
.rule { border-top: 3px solid var(--ah-ink); padding-top: 14px; }
.rule > * { margin: 0; }
.rule__title { font-weight: 800 !important; font-stretch: 82%; font-size: 16px !important; text-transform: uppercase; letter-spacing: 0.05em; }
.rule__text { font-size: 13px; line-height: 1.65; color: var(--ah-mid-ink); margin-top: 6px !important; }
.rule + .rule { margin-top: 28px; }

/* where to find it */
.find__label { font-weight: 800 !important; font-stretch: 82%; font-size: 13px !important; letter-spacing: var(--track-kicker); text-transform: uppercase; margin: 0 0 4px !important; }
.find__item {
  position: relative; display: block; padding: 14px 0 14px 20px; margin: 0 !important;
  border-bottom: 1px solid var(--ah-hairline);
  font-size: 14px; line-height: 1.6; color: var(--ah-mid-ink);
}
.find__item::before { content: "/"; position: absolute; left: 0; top: 14px; font-weight: 900; color: var(--ah-marigold); }
.find__item strong { color: var(--ah-ink); font-weight: 700; }

/* --------------------------------------------------------------------------
   10. ABOUT — the name equation, pillars, tagline
   -------------------------------------------------------------------------- */
.equation { gap: 14px; margin-top: 40px !important; }
.equation .wp-block-column { display: flex; flex-direction: column; }
.equation__term, .equation__result { padding: 24px 24px 28px; height: 100%; }
.equation__term { border: 1px solid var(--ah-ink); background: var(--ah-cream); }
.equation__result { background: var(--ah-ink); color: var(--ah-cream); position: relative; }
.equation__term > *, .equation__result > * { margin: 0; }
.equation__lang { margin-bottom: 12px !important; }
.equation__result .equation__lang { color: var(--ah-cream-on-ink); }
.equation__word {
  font-weight: 900 !important; font-stretch: var(--stretch-display);
  font-size: clamp(24px, 2.6vw, 34px) !important; line-height: 1 !important; text-transform: uppercase; white-space: nowrap;
}
.equation__result .equation__word { color: var(--ah-cream); }
.equation__result .slash { color: var(--ah-marigold-light); }
.equation__def { font-size: 17px; color: var(--ah-mid-ink); margin-top: 10px !important; }
.equation__result .equation__def { color: var(--ah-marigold-light); }
.equation__op { font-weight: 900; font-size: 34px; color: var(--ah-marigold); text-align: center; align-self: center; margin: 0; }
.equation__result .hand { position: absolute; right: 8px; bottom: -36px; }
.equation__result::before {
  content: ""; position: absolute; top: -12px; right: 22px; width: 88px; height: 24px;
  background: var(--ah-tape); box-shadow: 0 1px 2px rgba(43,38,32,0.15); transform: rotate(-2.5deg);
}
.entry-content .wp-block-group.about-body, .about-body { max-width: var(--ah-measure) !important; margin: 72px auto 0 !important; font-size: 16px; line-height: 1.75; }
.pillars { gap: 28px; }
.pillar { border-top: 3px solid var(--ah-ink); padding-top: 14px; }
.pillar > * { margin: 0; }
.pillar__title { font-weight: 900 !important; font-stretch: var(--stretch-display); font-size: 20px !important; text-transform: uppercase; }
.pillar__dek { font-size: 15px; color: var(--ah-mid-ink); margin-top: 6px !important; }
.about-tagline { font-family: var(--font-serif) !important; font-style: italic; font-size: clamp(28px, 4vw, 42px); text-align: center; margin: var(--space-8) auto 0; }

/* --------------------------------------------------------------------------
   11. FOOTER — the Hand-Me-Down + wordmark on ink
   -------------------------------------------------------------------------- */
.site-footer .wordmark { color: var(--ah-cream); }
.site-footer .wordmark .slash { color: var(--ah-marigold-light); }
.footer-nav-wrap .menu-link {
  font-family: var(--font-sans); font-weight: 700; font-stretch: var(--stretch-ui);
  font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ah-cream);
}
.footer-nav-wrap .menu-link:hover { color: var(--ah-marigold-light); }
.ast-mobile-menu-trigger-minimal, .ast-mobile-menu-trigger-minimal .ast-mobile-svg { color: var(--ah-ink); fill: var(--ah-ink); }
.signup__label { font-weight: 800; font-stretch: 82%; font-size: 12px; letter-spacing: var(--track-kicker); text-transform: uppercase; color: var(--ah-cream); }
.signup__line { font-size: 15px; color: var(--ah-cream-on-ink); margin-top: 6px !important; }
.site-footer .ast-footer-copyright em, .site-footer .ast-footer-copyright i { font-family: var(--font-serif); font-size: 15px; color: var(--ah-cream-on-ink); }

/* --------------------------------------------------------------------------
   12. SMALL SCREENS
   -------------------------------------------------------------------------- */
@media (max-width: 719px) {
  .element--flip .wp-block-column:first-child { order: 0; }
  .equation__op { display: none; }
  .equation__result .hand { position: static; margin-top: 12px; }
}

/* --------------------------------------------------------------------------
   13. HOMEPAGE INDEX SCROLL STRIP
   The homepage Aesthetic Index shows all 16 entries in one horizontal rail.
   -------------------------------------------------------------------------- */
ul.index-cards.index-cards--scroll {
  display: flex;
  overflow-x: auto;
  gap: 20px;
  padding-bottom: 16px;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: var(--ah-ink) var(--ah-hairline);
}
ul.index-cards.index-cards--scroll::-webkit-scrollbar { height: 4px; }
ul.index-cards.index-cards--scroll::-webkit-scrollbar-track { background: var(--ah-hairline); }
ul.index-cards.index-cards--scroll::-webkit-scrollbar-thumb { background: var(--ah-ink); }
ul.index-cards.index-cards--scroll > li {
  flex: 0 0 clamp(240px, 26vw, 320px);
  scroll-snap-align: start;
}

/* --------------------------------------------------------------------------
   14. STYLE QUIZ — homepage banner + the quiz itself (/find-your-style/)
   -------------------------------------------------------------------------- */
.quiz-banner {
  background: var(--ah-ink);
  color: var(--ah-cream);
  padding: clamp(28px, 5vw, 48px) clamp(22px, 4vw, 44px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 18px 32px;
  margin: var(--space-6) 0;
}
.quiz-banner__copy > * { margin: 0 !important; color: inherit; }
.quiz-banner__kicker {
  font-family: var(--font-serif); font-style: italic; font-weight: 500;
  font-size: clamp(32px, 5vw, 48px); line-height: 1.05;
  color: var(--ah-cream); display: flex; gap: 12px; align-items: baseline;
}
.quiz-banner__kicker::before {
  content: "/"; font-family: var(--font-sans); font-style: normal;
  font-weight: 900; font-size: 0.55em; color: var(--ah-marigold);
}
.quiz-banner__line {
  font-family: var(--font-serif); font-style: italic;
  font-size: 16px; line-height: 1.4; opacity: 0.85;
  margin-top: 10px !important;
}
.quiz-banner .wp-block-button__link {
  background: transparent; color: var(--ah-cream);
  border: 2px solid var(--ah-cream); border-radius: 0;
  font-family: var(--font-sans); font-weight: 800; text-transform: uppercase;
  font-size: 13px; letter-spacing: 0.12em; padding: 13px 24px;
}
.quiz-banner .wp-block-button__link:hover {
  background: var(--ah-marigold); border-color: var(--ah-marigold); color: var(--ah-ink);
}

/* The quiz page. Everything scoped to #ah-quiz; markup lives in a Custom HTML
   block on /find-your-style/. */
.quiz-intro, .quiz-intro p {
  font-family: var(--font-serif); font-style: italic;
  font-size: 20px; color: var(--ah-mid-ink); max-width: var(--ah-measure);
}
#ah-quiz { max-width: 780px; margin: var(--space-5) auto var(--space-7); }
#ah-quiz .q-panel {
  background: var(--ah-warm-fog); border: 1px solid var(--ah-hairline);
  padding: clamp(24px, 4vw, 44px);
}
#ah-quiz .q-progress {
  display: flex; align-items: baseline; justify-content: space-between;
  font-family: var(--font-sans); font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.14em; color: var(--ah-mid-ink);
  margin-bottom: 10px;
}
#ah-quiz .q-bar { height: 3px; background: var(--ah-hairline); margin-bottom: 28px; }
#ah-quiz .q-bar span { display: block; height: 100%; background: var(--ah-marigold); transition: width 0.25s ease; }
#ah-quiz .q-question {
  font-family: var(--font-sans); font-weight: 900; font-stretch: var(--stretch-display);
  text-transform: uppercase; font-size: clamp(24px, 4.4vw, 28px); line-height: 1.05;
  color: var(--ah-ink); margin: 0 0 24px;
}
#ah-quiz .q-answers { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
#ah-quiz .q-answer {
  width: 100%; text-align: left; cursor: pointer;
  background: var(--ah-cream); border: 1px solid var(--ah-hairline); border-radius: 0;
  font-family: var(--font-serif); font-style: italic; font-size: 18px; line-height: 1.35;
  color: var(--ah-ink); padding: 15px 18px;
  display: flex; gap: 12px; align-items: baseline;
  transition: border-color 0.15s ease, background 0.15s ease;
}
#ah-quiz .q-answer::before {
  content: "/"; font-family: var(--font-sans); font-style: normal; font-weight: 900;
  font-size: 15px; color: var(--ah-hairline); transition: color 0.15s ease;
}
#ah-quiz .q-answer:hover { border-color: var(--ah-ink); background: var(--ah-warm-fog); }
#ah-quiz .q-answer:hover::before { color: var(--ah-marigold); }
#ah-quiz .q-result-kicker {
  font-family: var(--font-sans); font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.16em; color: var(--ah-mid-ink); margin: 0 0 14px;
}
#ah-quiz .q-result-name {
  font-family: var(--font-serif); font-style: italic; font-weight: 500;
  font-size: clamp(40px, 8vw, 64px); line-height: 1.02; color: var(--ah-ink);
  margin: 0 0 14px; display: flex; gap: 14px; align-items: baseline;
}
#ah-quiz .q-result-name::before {
  content: "/"; font-family: var(--font-sans); font-style: normal;
  font-weight: 900; font-size: 0.55em; color: var(--ah-marigold);
}
#ah-quiz .q-result-dek {
  font-family: var(--font-serif); font-style: italic; font-size: 20px;
  color: var(--ah-mid-ink); margin: 0 0 28px; max-width: 48ch;
}
#ah-quiz .q-result-cta {
  display: inline-block; background: var(--ah-marigold); color: var(--ah-ink);
  border: 2px solid var(--ah-marigold); text-decoration: none;
  font-family: var(--font-sans); font-weight: 800; text-transform: uppercase;
  font-size: 13px; letter-spacing: 0.12em; padding: 13px 24px;
}
#ah-quiz .q-result-cta:hover { background: transparent; color: var(--ah-ink); }
#ah-quiz .q-runners {
  border-top: 1px solid var(--ah-hairline); margin-top: 32px; padding-top: 18px;
  font-family: var(--font-sans); font-size: 14px; color: var(--ah-mid-ink);
}
#ah-quiz .q-runners a {
  font-family: var(--font-serif); font-style: italic; font-size: 17px;
  color: var(--ah-ink); text-decoration: none; border-bottom: 2px solid var(--ah-marigold-light);
  margin-right: 18px;
}
#ah-quiz .q-runners a:hover { border-bottom-color: var(--ah-marigold); }
#ah-quiz .q-retake {
  background: none; border: none; padding: 0; cursor: pointer;
  font-family: var(--font-sans); font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.12em; color: var(--ah-mid-ink);
  text-decoration: underline; text-underline-offset: 3px; margin-top: 26px; display: inline-block;
}
#ah-quiz .q-retake:hover { color: var(--ah-ink); }

/* Cards without a featured image yet get a typographic placeholder so the
   strip keeps its rhythm. Fills in automatically once the photo is set. */
.index-card:not(:has(.index-card__photo))::before {
  content: "/";
  display: flex; align-items: center; justify-content: center;
  aspect-ratio: 4 / 3;
  background: var(--ah-cream);
  font-family: var(--font-sans); font-weight: 900; font-size: 56px;
  color: var(--ah-hairline);
}

/* Strip arrows (injected by assets/js/index-strip.js) */
.index-strip { position: relative; }
.index-strip__arrow {
  position: absolute; top: 34%; transform: translateY(-50%);
  width: 46px; height: 46px; display: flex; align-items: center; justify-content: center;
  background: var(--ah-cream); border: 1px solid var(--ah-ink); border-radius: 0;
  color: var(--ah-ink); font-family: var(--font-sans); font-weight: 900; font-size: 20px;
  cursor: pointer; z-index: 2; padding: 0;
  box-shadow: 0 1px 0 var(--ah-hairline);
}
.index-strip__arrow--prev { left: -12px; }
.index-strip__arrow--next { right: -12px; }
.index-strip__arrow:hover:not(:disabled) { background: var(--ah-ink); color: var(--ah-cream); }
.index-strip__arrow:disabled { opacity: 0.2; cursor: default; }
@media (max-width: 719px) {
  .index-strip__arrow { width: 40px; height: 40px; }
  .index-strip__arrow--prev { left: -4px; }
  .index-strip__arrow--next { right: -4px; }
}

/* The Pin It plugin wraps images in an inline-block container that
   shrink-wraps them; force it to behave like a plain block. */
.element__photo .pin-it-container { display: block !important; width: 100% !important; }
.element__photo .pin-it-container img { width: 100% !important; }

/* Field-guide element photos go full-bleed on small screens. */
@media (max-width: 719px) {
  .ah-aesthetic .element__photo {
    width: 100vw;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }
}

/* --------------------------------------------------------------------------
   15. THE INDEX — banner tiles (two-up, photo bg, ink gradient, full-bleed
   on mobile). Tiles without a featured image fall back to a typographic
   ink panel and heal themselves once the photo is set.
   -------------------------------------------------------------------------- */
ul.index-tiles { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding: 0; }
ul.index-tiles > li { margin: 0; list-style: none; }
.index-tile { position: relative; z-index: 0; aspect-ratio: 3 / 2; overflow: hidden; background: var(--ah-ink); display: flex; align-items: flex-end; }
.index-tile__photo { position: absolute !important; inset: 0; margin: 0 !important; z-index: -2; }
.index-tile__photo img {
  width: 100%; height: 100% !important; object-fit: cover; display: block;
  transition: transform 0.5s ease;
}
.index-tile:hover .index-tile__photo img { transform: scale(1.04); }
.index-tile::after {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg, rgba(43, 38, 32, 0.16) 0%, rgba(43, 38, 32, 0.4) 55%, rgba(43, 38, 32, 0.8) 100%);
}
.index-tile:not(:has(.index-tile__photo))::before {
  content: "/"; position: absolute; inset: 0; z-index: -2;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-sans); font-weight: 900; font-size: 120px;
  color: rgba(251, 247, 237, 0.13);
}
.index-tile__text { position: static; width: 100%; padding: 20px 24px 24px; }
.index-tile__text > * { margin: 0 !important; }
.index-tile__name {
  font-family: var(--font-serif) !important; font-style: italic; font-weight: 500 !important;
  font-size: clamp(28px, 3.4vw, 40px) !important; line-height: 1.05 !important;
  text-transform: none; letter-spacing: 0;
  display: flex; gap: 12px; align-items: baseline; color: var(--ah-cream);
}
.index-tile__name::before {
  content: "/"; font-family: var(--font-sans); font-style: normal;
  font-weight: 900; font-size: 0.55em; color: var(--ah-marigold);
}
.index-tile__name a { color: inherit; text-decoration: none; }
.index-tile__name a::after { content: ""; position: absolute; inset: 0; } /* whole tile clickable */
.index-tile__dek, .index-tile__dek p {
  font-family: var(--font-serif); font-style: italic; font-size: 14px;
  color: var(--ah-cream); opacity: 0.88; margin-top: 7px !important; max-width: 52ch;
}
@media (max-width: 719px) {
  ul.index-tiles {
    grid-template-columns: 1fr; gap: 14px;
    width: 100vw !important; max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
  }
  .index-tile { aspect-ratio: 4 / 3; }
}

/* --------------------------------------------------------------------------
   16. ABOUT — the editor
   -------------------------------------------------------------------------- */
.editor { align-items: flex-start; margin: 0 !important; }
.editor__photo { margin: 0 !important; }
.editor__photo img {
  width: 100%; aspect-ratio: 1 / 1 !important; height: auto;
  object-fit: cover; display: block; border: 1px solid var(--ah-hairline);
}
.editor__intro {
  font-family: var(--font-serif); font-style: italic;
  font-size: clamp(24px, 3.2vw, 32px) !important; line-height: 1.35; color: var(--ah-ink);
  margin: 0 0 18px !important;
}
.editor__text .hand { font-size: clamp(24px, 3vw, 30px) !important; margin-top: 20px !important; }
.editor__text p { font-size: 16px; line-height: 1.75; color: var(--ah-mid-ink); max-width: 58ch; }
.editor__text p + p { margin-top: 16px !important; }

/* Breathing room between page content and the footer, sitewide. */
.site-content { padding-bottom: clamp(48px, 7vw, 88px) !important; }

/* --------------------------------------------------------------------------
   17. THE ARCHIVE — chip filter row + paginated post grid
   -------------------------------------------------------------------------- */
.archive-chips { margin: 0 0 44px; }
.archive-chips .kicker { margin-bottom: 14px !important; }
.ah-archive-query { margin-top: 8px; }
.wp-block-query-pagination.archive-pagination {
  display: flex; gap: 6px 18px; justify-content: center; align-items: baseline;
  flex-wrap: wrap; margin-top: 52px; border-top: 1px solid var(--ah-hairline); padding-top: 22px;
}
.archive-pagination a, .archive-pagination .page-numbers, .archive-pagination .wp-block-query-pagination-next, .archive-pagination .wp-block-query-pagination-previous {
  font-family: var(--font-sans); font-weight: 800; font-size: 13px;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--ah-ink) !important;
  text-decoration: none !important; background: none !important; padding: 4px 2px;
}
.archive-pagination a:hover { color: var(--ah-marigold-deep) !important; }
.archive-pagination .wp-block-query-pagination-numbers .current {
  color: var(--ah-ink); border-bottom: 3px solid var(--ah-marigold); padding-bottom: 2px;
}
