/* Garrett O'Rourke — design details beyond theme.json.
   Classes here are applied via block patterns (className) and templates. */

/* Balanced, sensible heading wraps (no ragged one-word-per-line). */
h1.wp-block-heading, h2.wp-block-heading, h3.wp-block-heading,
.wp-block-post-title { text-wrap: balance; }

/* ── Hero ───────────────────────────────────────────────── */
.garrett-eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 600;
  font-size: 0.72rem;
  color: var(--wp--preset--color--primary);
}
.garrett-portrait img { border-radius: 4px; }
@media (min-width: 782px) {
  .garrett-portrait { position: relative; }
  .garrett-portrait::before {
    content: "";
    position: absolute;
    inset: 16px -16px -16px 16px;
    border: 1px solid var(--wp--preset--color--primary);
    border-radius: 4px;
    opacity: 0.5;
    z-index: 0;
  }
  .garrett-portrait img { position: relative; z-index: 1; }
}

/* ── Navy band (About / CTA) ────────────────────────────── */
.garrett-band { background: var(--wp--preset--color--secondary); }
.garrett-band :where(h1, h2, h3, h4, p, li) { color: var(--wp--preset--color--band-text); }
.garrett-band .garrett-eyebrow { color: var(--wp--preset--color--tertiary); }
.garrett-cred { border-top: 1px solid rgba(255, 255, 255, 0.14); padding-top: 0.9rem; }
.garrett-cred .garrett-cred-k {
  text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.7rem;
  font-weight: 600; color: var(--wp--preset--color--tertiary);
}

/* ── Footer network chips (interlinks out to all properties) ── */
.garrett-network a {
  display: inline-block;
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.18);
  padding: 5px 11px;
  border-radius: 6px;
  font-size: 0.8rem;
  color: var(--wp--preset--color--band-text);
}
.garrett-network a:hover { border-color: var(--wp--preset--color--tertiary); }

/* ── Category eyebrow used on cards & single ────────────── */
.garrett-cat {
  text-transform: uppercase; letter-spacing: 0.14em; font-weight: 600;
  font-size: 0.7rem; color: var(--wp--preset--color--primary);
}

/* ── Recent-posts divided list ──────────────────────────── */
.garrett-recent .wp-block-column {
  border-top: 1px solid var(--wp--preset--color--border);
  padding-top: 1.1rem;
}

/* ── Single-post reading polish ─────────────────────────── */
.single .wp-block-post-content > p:first-of-type::first-letter {
  font-family: var(--wp--preset--font-family--heading);
  font-size: 3.1rem; line-height: 0.8; float: left;
  padding: 0.08em 0.14em 0 0; color: var(--wp--preset--color--primary); font-weight: 500;
}
.wp-block-pullquote {
  border-left: 2px solid var(--wp--preset--color--primary);
  padding: 0.2rem 0 0.2rem 1.4rem; text-align: left; font-style: italic;
}
.wp-block-pullquote p { font-size: 1.4rem; line-height: 1.35; }

/* ── About page portrait: keep the crop anchored to the head ── */
.garrett-about-photo img { object-position: top center; }

/* ── Cross-site network cards ───────────────────────────── */
.garrett-net-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 0.9rem;
}
.garrett-net-card {
  display: block;
  text-decoration: none;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 8px;
  padding: 0.95rem 1.05rem;
  transition: border-color 0.15s, transform 0.12s;
}
.garrett-net-card:hover { border-color: var(--wp--preset--color--primary); transform: translateY(-1px); }
.garrett-net-card strong {
  display: block;
  font-family: var(--wp--preset--font-family--heading);
  font-weight: 500;
  font-size: 1.08rem;
  color: var(--wp--preset--color--contrast);
}
.garrett-net-card span {
  display: block;
  color: var(--wp--preset--color--muted);
  font-size: 0.84rem;
  margin-top: 0.2rem;
}

/* ── Post meta line ─────────────────────────────────────── */
.garrett-meta { color: var(--wp--preset--color--muted); font-size: 0.85rem; }
.garrett-meta a { color: var(--wp--preset--color--contrast); font-weight: 600; text-decoration: none; }
