/* ==========================================================================
   GVS <-> WordPress bridge — arneiron-gvs-child
   Maps the arneiron PARENT theme's emitted markup onto the GVS look.

   THE RULE (skaryna lesson, 2026-08-09: 84% of a port's rules could not
   fire because they were authored against another page's classes):
   every selector below is tagged with where its class was PROVEN to be
   emitted —
     [census]  present in the parent's rendered-page class census
               (/data/arnie/blockport-2026-08-09/render-class-census.json)
     [core]    emitted by WordPress core for that block wherever content
               uses it — fires only on pages that contain the block
     [wp]      the FSE page wrapper, always present on a block theme
   Nothing here targets a .gvs-* class: those are covered by the four
   layer files, and fire only on markup that carries them (the overridden
   footer part, and any content authored with GVS classes).
   No !important anywhere, matching the H1 contract.
   ========================================================================== */

/* --- site frame [wp] ---------------------------------------------------- */
.wp-site-blocks {
  background-color: var(--gvs-paper);
}

/* --- parent header (dynamic block arneiron/header) [census] -------------
   app-header, app-nav, brand, wordmark, menu-toggle, btn--primary, is-active
   all appear in the census. Paper ground, petrol ink, the 2px poster
   keyline, 96px nav height. */
.app-header {
  min-height: var(--gvs-nav-h);
  background: var(--gvs-paper);
  border-bottom: var(--gvs-border-width) solid var(--gvs-petrol);
  color: var(--gvs-petrol);
}
.app-header .brand,
.app-header .wordmark {
  font-family: var(--gvs-font-display);
  font-weight: var(--gvs-display-weight);
  letter-spacing: var(--gvs-tracking-caps);
  text-transform: uppercase;
  color: var(--gvs-petrol);
}
.app-header .app-nav a {
  color: var(--gvs-petrol);
  text-decoration-color: transparent;
}
.app-header .app-nav a:hover {
  color: var(--gvs-petrol-deep);
  text-decoration-color: var(--gvs-gold);
}
.app-header .app-nav a.is-active,
.app-header .app-nav a[aria-current="page"] {
  color: var(--gvs-petrol-deep);
  text-decoration: underline;
  text-decoration-color: var(--gvs-gold);
  text-underline-offset: 4px;
}
.app-header .menu-toggle {
  color: var(--gvs-petrol);
}

/* --- buttons ------------------------------------------------------------
   Parent's own button family [census: btn, btn--primary] and the core
   block button [core]. Gold fill, petrol ink (5.03:1), radius 8, no
   poster shadow. Hover steps to the measured gold-hover. */
.btn--primary,
.wp-block-button__link,
.wp-element-button {
  background-color: var(--gvs-gold);
  color: var(--gvs-petrol);
  border: none;
  border-radius: var(--gvs-radius);
  font-weight: var(--gvs-body-weight-em);
  box-shadow: none;
}
.btn--primary:hover,
.wp-block-button__link:hover,
.wp-element-button:hover {
  background-color: var(--gvs-gold-hover, #D4A02F);
  color: var(--gvs-petrol);
}
.btn--primary:active,
.wp-block-button__link:active,
.wp-element-button:active {
  background-color: var(--gvs-gold-active, #BE8C22);
  color: var(--gvs-petrol);
}

/* --- separator -> the Rasta divider [core] ------------------------------
   Three hard butted bands, red / gold / green, never a blend. Fires
   wherever content uses core/separator. */
.wp-block-separator {
  height: var(--gvs-divider-height);
  max-width: none;
  border: none;
  background: var(--gvs-rasta);
  opacity: 1;
}

/* --- quotes and pull-quotes [core] -------------------------------------- */
.wp-block-quote {
  border-left: 4px solid var(--gvs-gold);
  color: var(--gvs-petrol);
  font-family: var(--gvs-font-body);
}
.wp-block-pullquote {
  border-top: var(--gvs-border-width) solid var(--gvs-petrol);
  border-bottom: var(--gvs-border-width) solid var(--gvs-petrol);
  color: var(--gvs-petrol);
}

/* --- images: the warm-paper mat and petrol keyline [core] --------------- */
.wp-block-image img {
  border: var(--gvs-photo-keyline) solid var(--gvs-petrol);
  border-radius: var(--gvs-photo-radius-max);
  background: var(--gvs-paper);
  padding: var(--gvs-photo-mat);
}

/* --- tables [core] ------------------------------------------------------ */
.wp-block-table th {
  background: var(--gvs-cream);
  color: var(--gvs-petrol);
}
.wp-block-table td,
.wp-block-table th {
  border-color: var(--gvs-soft-grey);
}
