/* =============================================================================
   LAYER 4 — PILLAR / HUB (Template F)
   Serves: /more/ribe/ (3,289), /slatke-vode/ribe/ (1,432), /more/jeska-za-ribolov-na-moru/
   (2,853), /more/mamci/ (234), /tehnike/cvorovi/, /tehnike/, /more/, /slatke-vode/,
   /oprema/ and /more/oprema/. Roughly 7,800 clicks.

   Ruling 1 (2026-08-06) maps /tehnike/cvorovi/ here rather than to the HowTo template:
   it shipped as an additive pillar, not a how-to.

   A pillar's job is internal linking and disambiguation. It must NOT duplicate spoke
   content, which is why the teaser cards are capped visually — see below.
   ============================================================================= */

/* Spoke teasers moved to 3-components.css 2026-08-09: the /propisi/ index
   and /tehnike/ pillar both use them — two contexts = components, per the layer rule. */

/* --- gear mini-cards -------------------------------------------------------
   The money path out of a hub. Sits BEFORE the species strip: a visitor on a hub has
   already chosen a discipline, so buying intent is higher here than further down. The
   species strip below is disambiguation and cross-linking, which is a lower-intent job.
   --------------------------------------------------------------------------- */
.sr-hub-gear { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: var(--s3); }
.sr-hub-gear__item {
  border: 1px solid var(--border); border-radius: var(--r-card);
  padding: var(--s3); text-decoration: none; font-weight: 600; color: var(--sea);
}
.sr-hub-gear__item:hover { border-color: var(--sea); }

/* --- hero ------------------------------------------------------------------
   Template F opens with a full-bleed photo. NONE EXISTS, and design.md §5 permits
   original photography only. So the hero is omitted on hub pages until real photography
   exists (ruling 1 delta) — this rule keeps the H1 block looking deliberate rather than
   like a hero that failed to load.
   --------------------------------------------------------------------------- */
.sr-hub-head { border-bottom: 1px solid var(--border); padding-bottom: var(--s4); margin-bottom: var(--s5); }

/* --- theme-rendered species grid (sr_pillar_species_grid) -------------------
   Sits AFTER the editor content, so it needs its own top rule rather than relying on
   the flow spacing between authored blocks. The grid and card styles themselves are in
   3-components.css — shared with the homepage, which is the whole point of keeping the
   registry as the single source of both.
   --------------------------------------------------------------------------- */
.sr-pillar-species { border-top: 1px solid var(--border); margin-top: var(--s6); padding-top: var(--s5); }
.sr-pillar-species > h2 { margin-bottom: var(--s4); }

/* --- photo hero (sr_pillar_hero) --------------------------------------------
   Full-bleed band, not a boxed image: the pillar hero's job is to say "this is the sea
   section" before a word is read. Text sits on a veil rather than on the raw photo,
   because these are 2014 archive frames with unpredictable exposure and a fixed veil is
   the only way to guarantee contrast across all of them.
   --------------------------------------------------------------------------- */
.sr-hub-hero { position: relative; margin-bottom: var(--s6); background: var(--sea); }
.sr-hub-hero__img { display: block; width: 100%; height: clamp(200px, 32vw, 380px); object-fit: cover; object-position: center 45%; }
.sr-hub-hero__in {
  position: absolute; inset: 0; display: flex; align-items: flex-end;
  background: var(--veil-hero);
}
.sr-hub-hero__in > .sr-shell { padding-bottom: var(--s5); padding-top: var(--s5); }
.sr-hub-hero__title { color: var(--on-fill); margin: 0 0 var(--s2); font-size: var(--fs-h1); }
.sr-hub-hero__sub { color: var(--on-sea-soft); margin: 0; max-width: 56ch; font-size: var(--fs-h4); }

/* --- spoke cards: guard against the wpautop shatter --------------------------
   inc/blocks.php now keeps wpautop off structured content, which is the real fix. These
   two rules are the belt to that braces: if a stray <p> or <br> ever lands inside a card
   again, the card still reads as one block instead of splitting into grid cells.
   --------------------------------------------------------------------------- */
.sr-spoke > p:empty, .sr-spoke > br { display: none; }
.sr-spoke { display: block; }

/* --- hub running order sections (species 6 / regs 7 / guides 8 / gear 9) ------
   All four are theme-rendered so the order is one decision, identical on both water
   pillars. They need a shared rhythm: the species grid already has its own top rule, so
   the other three only need consistent spacing and a lede that sits under the heading.
   --------------------------------------------------------------------------- */
.sr-hub-regs, .sr-hub-gear-band, .sr-hub-spokes { margin-top: var(--s6); }
.sr-hub-regs > h2, .sr-hub-gear-band > h2, .sr-hub-spokes > h2 { margin-bottom: var(--s2); }
.sr-hub-regs__lede { color: var(--muted); margin: 0 0 var(--s4); max-width: 70ch; }

/* Breathing room between the species grid and its "Sve vrste" button — they were
   colliding (owner, 2026-08-11): the grid's own gap does not apply to the button,
   which is a sibling of the grid rather than a cell in it. */
.sr-pillar-species .sr-water__foot { margin-top: var(--s5); }
