/*
Theme Name:   Amara Laurent
Theme URI:    https://amaralaurent.com
Description:  Amara Laurent personal brand site — child theme of Twenty Twenty-Five. Ports the brand's design tokens (Bodoni Moda / Playfair Display / Cormorant Garamond / Inter / JetBrains Mono + warm-paper palette + amber accent) onto WordPress's modern block theme architecture. Foundation child theme — block patterns and custom templates layered in via separate iterations.
Author:       Nick Onken / Onken Studio
Author URI:   https://nickonken.com
Template:     twentytwentyfive
Version:      0.11.4
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 8.1
License:      GPL v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  amaralaurent
Tags:         block-theme, blog, portfolio, one-column, custom-colors, custom-fonts, editor-style, full-site-editing, threaded-comments
*/

/* ============================================================ */
/*  Theme Brand Tokens (also defined in theme.json — these       */
/*  CSS custom properties are available for any custom HTML      */
/*  blocks that need to reference them inline)                   */
/* ============================================================ */

:root {
  /* Brand colors */
  --al-ink:        #0E0B08;
  --al-ink-soft:   #2A241D;
  --al-paper:      #F6F1E8;
  --al-paper-warm: #EFE7D7;
  --al-amber:      #B8884F;
  --al-amber-deep: #8C6232;
  --al-muted:      #7A6E61;
  --al-crimson:    #6B1E1A;
  --al-rule:       rgba(14, 11, 8, 0.18);
  --al-rule-soft:  rgba(14, 11, 8, 0.08);

  /* Brand font stacks (loaded via functions.php from Google Fonts) */
  --al-font-display:        'Playfair Display', Georgia, serif;
  --al-font-display-italic: 'Cormorant Garamond', Georgia, serif;
  --al-font-couture:        'Bodoni Moda', 'Playfair Display', Georgia, serif;
  --al-font-body:           'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --al-font-mono:           'JetBrains Mono', 'SF Mono', Consolas, monospace;
}

/* ============================================================ */
/*  Body baseline — match mockup register                        */
/* ============================================================ */

body {
  background: var(--al-paper);
  color: var(--al-ink);
  font-family: var(--al-font-body);
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Italic emphasis in display headlines uses Cormorant — gives
   the same literary register as the mockup's H1 / H2 italic spans */
h1 em, h2 em, h3 em,
.wp-block-heading em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}

/* ============================================================ */
/*  Heading scale — tame TT5 defaults to mockup register         */
/* ============================================================ */

h1.wp-block-heading {
  font-size: clamp(2.5rem, 5vw + 1rem, 5.25rem);
  line-height: 0.98;
  font-family: var(--al-font-couture);
  font-weight: 800;
  letter-spacing: -0.015em;
  margin-bottom: 1.5rem;
}

h2.wp-block-heading {
  font-size: clamp(2rem, 4vw + 0.5rem, 3.5rem);
  line-height: 1.05;
  font-family: var(--al-font-couture);
  font-weight: 700;
  letter-spacing: -0.01em;
}

/* ============================================================ */
/*  Big amber passage numerals (01, 02, 03 ...)                  */
/*  Defining mockup signature element — huge Bodoni in amber     */
/* ============================================================ */

.amara-passage-num {
  font-family: var(--al-font-couture) !important;
  font-size: clamp(4rem, 8vw, 6.5rem) !important;
  font-weight: 900 !important;
  line-height: 0.9 !important;
  color: var(--al-amber) !important;
  margin: 0 0 0.25rem 0 !important;
  letter-spacing: -0.02em;
}

.wp-block-media-text__content h3.wp-block-heading {
  font-size: clamp(1.4rem, 1.2vw + 0.75rem, 1.75rem);
  line-height: 1.35;
  margin-top: 0.75rem;
  margin-bottom: 1.25rem;
  font-weight: 500;
  max-width: 760px;
}

/* ============================================================ */
/*  Section labels — small uppercase mono labels                 */
/*  Targets <p><strong>...</strong></p> with no other content    */
/*  (THE ARC, THE FOUR..., PASSAGE 01..., footer attribution)    */
/* ============================================================ */

p > strong:only-child {
  display: inline-block;
  font-family: var(--al-font-mono);
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0.22em;
  color: var(--al-muted);
}

/* Tighten the paragraph wrapper around metadata stripes */
.wp-block-media-text__content > .wp-block-paragraph:first-child p {
  margin-bottom: 0.25rem;
}

/* ============================================================ */
/*  Media & Text — constrain photo column to ~320px sidebar      */
/*  on desktop (was defaulting to 50/50). Stack on mobile        */
/*  via WP's is-stacked-on-mobile class (handled by core CSS).   */
/* ============================================================ */

@media (min-width: 768px) {
  .wp-block-media-text {
    grid-template-columns: 580px 760px !important;
    gap: 25pt;
    align-items: start;
    margin-top: 2rem;
    margin-bottom: 2rem;
    justify-content: start;
  }
  .wp-block-media-text.has-media-on-the-right {
    grid-template-columns: 760px 580px !important;
  }

  /* Constrain body width inside text column for editorial reading.
     Mockup spec: .body-p max-width 760px. Wider than the photo column
     so passage copy reads as primary content, not a sidebar caption. */
  .wp-block-media-text__content p {
    max-width: 760px;
    text-align: justify;
    hyphens: auto;
    -webkit-hyphens: auto;
    text-justify: inter-word;
  }
  /* Don't justify the single-line metadata label (PASSAGE 01 · CIRCA 1988 · BEIRUT)
     — keep mono labels left-aligned so dot separators don't get spaced out. */
  .wp-block-media-text__content p:has(> strong:only-child) {
    text-align: left;
    hyphens: manual;
  }

  /* Flipped passages (photo on right): keep text LEFT-aligned in its column,
     matching the mockup .beat-flipped behavior (visual column flip only). */
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    /* No alignment override — content reads left-to-right as on photo-left rows */
  }
}

/* ============================================================ */
/*  Body paragraph register — match mockup body-p                */
/* ============================================================ */

.entry-content p {
  font-size: 1rem;
  line-height: 1.65;
  color: var(--al-ink-soft);
}

/* Constrain top-level paragraphs (lede, section intros) */
.entry-content > p {
  max-width: 720px;
}

/* ============================================================ */
/*  Vertical rhythm — tighten TT5 default block spacing          */
/* ============================================================ */

.entry-content > .wp-block-separator {
  margin: 3rem auto;
  border: 0;
  border-top: 1px solid var(--al-rule);
  width: 80px;
}

/* ============================================================ */
/*  TT5 auto page-title suppression — content provides own H1    */
/*  Loop 1: Pages all carry their own display-H1 inside the      */
/*  content; the auto-rendered post-title block is duplicate.    */
/* ============================================================ */

body.page .wp-block-post-title,
body.page header.wp-block-template-part .wp-block-post-title {
  display: none;
}

/* TT5 also wraps the title in a header block-template-part with
   spacing — strip its top padding when the title is hidden so
   our hero image sits flush against the masthead area. */
body.page main .wp-block-template-part:first-child {
  margin-block-start: 0;
}

/* ============================================================ */
/*  Hero banner image at top of /about (WU3 21:9)                */
/*  Loop 2: full-width 21:9 image, no rounding, no shadow,       */
/*  optional bottom hairline rule echoing mockup register.       */
/* ============================================================ */

.amara-about-hero {
  margin: 0 0 3rem 0 !important;
  width: 100%;
}
.amara-about-hero img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 21 / 9;
  object-fit: cover;
  border-radius: 0;
}

/* ============================================================ */
/*  Mentor card grid — 4 columns @ desktop, 2 @ tablet, 1 mobile */
/*  Loop 3: photo (4:5) + amber-deep mono role label + display   */
/*  italic name + mono when + body desc + amber link. Mirrors    */
/*  mockup .mentor-card register exactly.                        */
/* ============================================================ */

.amara-mentor-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin: 4rem auto !important;
  max-width: 1180px;
  width: 100%;
}
@media (max-width: 1023px) {
  .amara-mentor-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
@media (max-width: 599px) {
  .amara-mentor-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

.amara-mentor-card,
.amara-mentor-card:hover,
.amara-mentor-card:focus,
.amara-mentor-card:visited {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  color: inherit;
}
.amara-mentor-card *,
.amara-mentor-card *:hover {
  text-decoration: none !important;
}
.amara-mentor-card__photo {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--al-paper-warm);
  margin-bottom: 16px;
}
.amara-mentor-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(8%) contrast(1.02);
  transition: filter 0.45s ease;
}
.amara-mentor-card:hover .amara-mentor-card__photo img {
  filter: grayscale(0%) contrast(1.02);
}

.amara-mentor-card__body {
  padding-top: 14px;
  border-top: 1px solid var(--al-ink);
}
.amara-mentor-card__role {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 8px 0;
  font-weight: 400;
}
.amara-mentor-card__name {
  font-family: var(--al-font-display);
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 6px 0;
  color: var(--al-ink);
  letter-spacing: -0.005em;
}
.amara-mentor-card__name em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-mentor-card__when {
  font-family: var(--al-font-mono);
  font-size: 0.66rem;
  color: var(--al-muted);
  letter-spacing: 0.1em;
  margin: 0 0 14px 0;
}
.amara-mentor-card__desc {
  font-family: var(--al-font-body);
  font-size: 0.85rem;
  color: var(--al-ink-soft);
  line-height: 1.65;
  margin: 0 0 18px 0;
  max-width: none;
}
.amara-mentor-card__desc em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
}
.amara-mentor-card__link {
  font-family: var(--al-font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  text-decoration: none;
  margin-top: auto;
}
.amara-mentor-card__link:hover {
  color: var(--al-ink);
}

/* ============================================================ */
/*  AI disclosure — distinct visual register                     */
/*  Loop 4: insets the disclosure with paper-warm bg + amber     */
/*  hairline top + larger Cormorant italic, separating it as a  */
/*  meta-frame note rather than continuous body copy.            */
/* ============================================================ */

.amara-disclosure {
  margin: 5rem 0 0 0;
  padding: 3.5rem clamp(1.5rem, 4vw, 3.5rem) 3rem;
  background: var(--al-paper-warm);
  border-top: 1px solid var(--al-amber);
  position: relative;
  max-width: none;
}
.amara-disclosure::before {
  content: "";
  display: block;
  width: 60px;
  height: 1px;
  background: var(--al-amber-deep);
  margin: 0 auto 2rem;
}
.amara-disclosure .amara-disclosure-label {
  font-family: var(--al-font-mono) !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.22em !important;
  color: var(--al-amber-deep) !important;
  font-weight: 400 !important;
  text-transform: uppercase;
  text-align: center;
  margin: 0 0 0.5rem 0 !important;
}
.amara-disclosure h2.wp-block-heading {
  text-align: center;
  font-size: clamp(1.85rem, 3.5vw, 3rem);
  margin: 0 0 2rem 0;
}
.amara-disclosure p {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-size: clamp(1rem, 1.1vw + 0.6rem, 1.18rem) !important;
  line-height: 1.75 !important;
  color: var(--al-ink) !important;
  max-width: 640px !important;
  margin: 0 auto 1.4rem !important;
  text-align: left;
}
.amara-disclosure p:last-of-type {
  margin-bottom: 0 !important;
  text-align: center;
  color: var(--al-muted) !important;
  font-size: 1rem !important;
  padding-top: 1.5rem;
  border-top: 1px solid var(--al-rule-soft);
  margin-top: 2.5rem !important;
}

.amara-about-footer {
  margin-top: 3rem !important;
  text-align: center;
}
.amara-about-footer strong {
  font-family: var(--al-font-mono);
  font-size: 0.65rem;
  letter-spacing: 0.22em;
  color: var(--al-muted);
  font-weight: 400;
  text-transform: uppercase;
}

/* ============================================================ */
/*  Literary masthead — overrides TT5 default site header        */
/*  Spec ported from mockup .masthead block (line 35-46).        */
/* ============================================================ */

.amara-masthead {
  border-bottom: 1px solid var(--al-ink);
  background: rgba(246, 241, 232, 0.96);
  position: sticky;
  top: 0;
  z-index: 50;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}
.amara-masthead-inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 18px 48px 14px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 32px;
}
.amara-masthead-meta-left,
.amara-masthead-meta-right {
  font-family: var(--al-font-mono);
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-muted);
}
.amara-masthead-meta-right {
  text-align: right;
}
.amara-masthead-title {
  font-family: var(--al-font-couture);
  font-weight: 700;
  font-size: 36px;
  letter-spacing: 0.06em;
  line-height: 1;
  text-align: center;
  color: var(--al-ink);
  text-decoration: none !important;
  display: inline-block;
  white-space: nowrap;
}
.amara-masthead-title em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 400;
}
.amara-masthead-nav {
  border-top: 1px solid var(--al-rule);
  border-bottom: 1px solid var(--al-ink);
  background: var(--al-paper);
}
.amara-masthead-nav ul {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 48px;
  display: flex;
  justify-content: center;
  gap: 48px;
  list-style: none;
}
.amara-masthead-nav li {
  margin: 0;
}
.amara-masthead-nav a {
  display: inline-block;
  padding: 14px 0;
  font-family: var(--al-font-body);
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--al-ink-soft);
  text-decoration: none !important;
  position: relative;
}
.amara-masthead-nav a:hover {
  color: var(--al-ink);
}

/* Active page state — uses WP body class page-id-NN.
   Page IDs locked from Part 49: Home=7, About=8, Sovereignty=9,
   Speaking=10, Letters=11, Field Notes=12. */
body.page-id-7  .amara-masthead-nav .nav-home,
body.page-id-8  .amara-masthead-nav .nav-about,
body.page-id-9  .amara-masthead-nav .nav-sovereignty,
body.page-id-10 .amara-masthead-nav .nav-speaking,
body.page-id-11 .amara-masthead-nav .nav-letters,
body.page-id-12 .amara-masthead-nav .nav-fieldnotes {
  color: var(--al-ink);
  font-weight: 600;
}
body.page-id-7  .amara-masthead-nav .nav-home::after,
body.page-id-8  .amara-masthead-nav .nav-about::after,
body.page-id-9  .amara-masthead-nav .nav-sovereignty::after,
body.page-id-10 .amara-masthead-nav .nav-speaking::after,
body.page-id-11 .amara-masthead-nav .nav-letters::after,
body.page-id-12 .amara-masthead-nav .nav-fieldnotes::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: var(--al-amber);
}

/* Mobile masthead — collapse meta labels, keep wordmark + nav */
@media (max-width: 767px) {
  .amara-masthead-inner {
    padding: 14px 20px 10px;
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .amara-masthead-meta-left,
  .amara-masthead-meta-right {
    display: none;
  }
  .amara-masthead-title {
    font-size: 26px;
  }
  .amara-masthead-nav ul {
    padding: 0 12px;
    gap: 18px;
    overflow-x: auto;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .amara-masthead-nav a {
    padding: 10px 0;
    font-size: 10px;
    white-space: nowrap;
  }
}

/* ============================================================ */
/*  TT5 default header/footer suppression                        */
/*  Belt-and-suspenders: child-theme parts/ should override the  */
/*  parent theme's, but we hide TT5 chrome explicitly in case    */
/*  any template still references the parent's parts directly.   */
/* ============================================================ */

.wp-block-site-title,
.wp-block-site-logo:not(.amara-masthead .wp-block-site-logo) {
  display: none !important;
}

/* If TT5's default header template part renders alongside ours,
   hide it (keeps only our amara-masthead visible). */
header.wp-block-template-part:not(.amara-masthead-wrapper):has(.wp-block-site-title) {
  display: none !important;
}

/* ============================================================ */
/*  Literary footer                                              */
/* ============================================================ */

.amara-footer {
  margin-top: 6rem;
  border-top: 1px solid var(--al-ink);
  background: var(--al-paper);
  padding: 4rem 0 3rem;
}
.amara-footer-inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  text-align: center;
}
.amara-footer-imprint {
  font-family: var(--al-font-couture);
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1;
  color: var(--al-ink);
}
.amara-footer-imprint em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 400;
}
.amara-footer-tagline {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 14px;
  color: var(--al-muted);
  max-width: 520px;
  line-height: 1.6;
}
.amara-footer-nav {
  display: flex;
  justify-content: center;
  gap: 32px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.amara-footer-nav a {
  font-family: var(--al-font-mono);
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-ink-soft);
  text-decoration: none !important;
}
.amara-footer-nav a:hover {
  color: var(--al-amber-deep);
}
.amara-footer-copy {
  font-family: var(--al-font-mono);
  font-size: 9px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--al-muted);
  margin-top: 12px;
}

@media (max-width: 599px) {
  .amara-footer-inner {
    padding: 0 20px;
  }
  .amara-footer-nav {
    gap: 18px;
  }
}

/* ============================================================ */
/*  HOME PAGE — Block layouts (Hero / Premise / Book / Mentors / */
/*  Letters / Codex). All sit inside entry-content's constrained */
/*  layout. Each block self-centers via margin auto + max-width. */
/* ============================================================ */

/* Hero (21:9 D1 Orient Express, full-bleed) */
.amara-home-hero {
  margin: 0 0 3rem 0 !important;
  width: 100%;
}
.amara-home-hero img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 21 / 9;
  object-fit: cover;
  border-radius: 0;
}

/* Display H1 + lede */
.amara-home-h1 {
  font-family: var(--al-font-display) !important;
  font-size: clamp(3rem, 6vw + 1rem, 5.75rem) !important;
  font-weight: 900 !important;
  line-height: 0.98 !important;
  letter-spacing: -0.01em !important;
  margin: 2rem 0 1.5rem !important;
  max-width: 1180px;
}
.amara-home-h1 em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-home-lede {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-size: clamp(1.25rem, 1.4vw + 0.7rem, 1.625rem) !important;
  line-height: 1.45 !important;
  color: var(--al-ink-soft) !important;
  max-width: 820px !important;
  margin: 0 0 2rem 0 !important;
}

/* CTA buttons — sharp-edge ink-on-paper, mono uppercase tracked label */
.amara-home-cta {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  margin: 2rem 0 1rem 0;
}
.amara-cta-button {
  display: inline-block;
  padding: 14px 24px;
  font-family: var(--al-font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  background: var(--al-ink);
  color: var(--al-paper) !important;
  border: 1px solid var(--al-ink);
  text-decoration: none !important;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.amara-cta-button:hover {
  background: var(--al-amber-deep);
  border-color: var(--al-amber-deep);
}
.amara-cta-button--secondary {
  background: var(--al-paper);
  color: var(--al-ink) !important;
  border: 1px solid var(--al-ink);
}
.amara-cta-button--secondary:hover {
  background: var(--al-ink);
  color: var(--al-paper) !important;
}

/* Section labels (Block A · The Premise etc.) and section headings */
.amara-section-label {
  font-family: var(--al-font-mono);
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  font-weight: 600;
  margin: 0 0 12px 0;
}
.amara-section-h {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: clamp(2rem, 3.5vw + 0.5rem, 3rem);
  line-height: 1.1;
  letter-spacing: -0.005em;
  margin: 8px 0 16px;
  color: var(--al-ink);
}
.amara-section-h em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-body-p {
  font-family: var(--al-font-body);
  font-size: 1rem;
  line-height: 1.7;
  color: var(--al-ink);
  margin: 0 0 1rem 0;
  max-width: 760px;
}
.amara-body-p em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
}
.amara-link-arrow {
  display: inline-block;
  font-family: var(--al-font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep) !important;
  text-decoration: none !important;
  margin-top: 16px;
}
.amara-link-arrow:hover {
  color: var(--al-ink) !important;
}

/* Custom separator style — full-width hairline ink rule for home page sections */
.wp-block-separator.is-style-amara-rule {
  border: 0 !important;
  border-top: 1px solid var(--al-ink) !important;
  margin: 4rem 0 2rem 0 !important;
  width: 100% !important;
  max-width: 1384px;
}

/* Block A — Premise (text + 1:1 photo) */
.amara-block-premise {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  max-width: 1384px;
  margin: 0 auto;
  align-items: start;
  padding-top: 1rem;
}
.amara-block-premise__photo img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}
@media (max-width: 899px) {
  .amara-block-premise {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

/* Block B — Book (4:5 cover + content + email signup) */
.amara-block-book {
  display: grid;
  grid-template-columns: 480px 1fr;
  gap: 64px;
  max-width: 1384px;
  margin: 0 auto;
  align-items: center;
  padding-top: 1rem;
}
.amara-block-book__photo img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.amara-email-form {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 24px;
  max-width: 600px;
}
.amara-email-input {
  font-family: var(--al-font-body);
  font-size: 14px;
  padding: 12px 14px;
  flex: 1 1 280px;
  border: 1px solid var(--al-ink);
  background: var(--al-paper);
  color: var(--al-ink);
  border-radius: 0;
  outline: none;
}
.amara-email-input:focus {
  border-color: var(--al-amber-deep);
}
.amara-email-form .amara-cta-button {
  flex: 0 0 auto;
}
@media (max-width: 899px) {
  .amara-block-book {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .amara-block-book__photo {
    max-width: 360px;
  }
}

/* Block C — Four Mentors (home variant — simplified vs about page) */
.amara-block-mentors {
  max-width: 1384px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-block-mentors__intro {
  margin-bottom: 2rem;
}
.amara-mentors-home-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin: 2rem 0;
}
.amara-mentor-home-card,
.amara-mentor-home-card:hover,
.amara-mentor-home-card:focus,
.amara-mentor-home-card:visited {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  color: inherit;
}
.amara-mentor-home-card * {
  text-decoration: none !important;
}
.amara-mentor-home-card__photo {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--al-paper-warm);
  margin-bottom: 16px;
}
.amara-mentor-home-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(8%) contrast(1.02);
  transition: filter 0.45s ease;
}
.amara-mentor-home-card:hover .amara-mentor-home-card__photo img {
  filter: grayscale(0%) contrast(1.02);
}
.amara-mentor-home-card__role {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 6px 0;
}
.amara-mentor-home-card__name {
  font-family: var(--al-font-display);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 6px 0;
  color: var(--al-ink);
}
.amara-mentor-home-card__name em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-mentor-home-card__when {
  font-family: var(--al-font-mono);
  font-size: 0.66rem;
  color: var(--al-muted);
  letter-spacing: 0.1em;
  margin: 0;
}
.amara-block-mentors__cta {
  display: inline-block;
  margin-top: 1.5rem;
}
@media (max-width: 1023px) {
  .amara-mentors-home-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
@media (max-width: 599px) {
  .amara-mentors-home-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

/* Block D — Letters (3-col cards with 1:1 photos) */
.amara-block-letters {
  max-width: 1384px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-letters-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin: 2rem 0;
}
.amara-letter-card,
.amara-letter-card:hover,
.amara-letter-card:visited {
  display: block;
  text-decoration: none !important;
  color: inherit;
}
.amara-letter-card * {
  text-decoration: none !important;
}
.amara-letter-card__photo {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  margin-bottom: 16px;
  background: var(--al-paper-warm);
}
.amara-letter-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(8%);
  transition: filter 0.45s ease, transform 0.6s ease;
}
.amara-letter-card:hover .amara-letter-card__photo img {
  filter: grayscale(0%);
  transform: scale(1.03);
}
.amara-letter-card__date {
  font-family: var(--al-font-mono);
  font-size: 0.26rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 6px 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.amara-letter-card__title {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: 1.75rem;
  line-height: 1.2;
  margin: 0 0 10px 0;
  color: var(--al-ink);
}
.amara-letter-card__title em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-letter-card__lede {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--al-ink-soft);
  margin: 0;
}
.amara-block-letters__cta {
  display: inline-block;
  margin-top: 1.5rem;
}
@media (max-width: 899px) {
  .amara-letters-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

/* Block E — Visual Codex (6-col 4:5 thumbnail strip) */
.amara-block-codex {
  max-width: 1384px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-codex-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
  margin-top: 2rem;
}
.amara-codex-tile {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--al-paper-warm);
}
.amara-codex-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(5%);
  transition: filter 0.4s ease, transform 0.5s ease;
}
.amara-codex-tile:hover img {
  filter: grayscale(0%);
  transform: scale(1.04);
}
@media (max-width: 1199px) {
  .amara-codex-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 599px) {
  .amara-codex-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ============================================================ */
/*  SOVEREIGNTY PAGE — pillar boxes, principles list,            */
/*  pull quote, book section.                                    */
/* ============================================================ */

/* Sovereignty hero (21:9) */
.amara-sov-hero {
  margin: 0 0 3rem 0 !important;
  width: 100%;
}
.amara-sov-hero img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 21 / 9;
  object-fit: cover;
  border-radius: 0;
}

/* Pull quote — left amber border */
.amara-pull-quote {
  border-left: 4px solid var(--al-amber);
  padding: 24px 0 24px 32px;
  margin: 4rem 0;
  max-width: 900px;
}
.amara-pull-quote p {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: clamp(1.4rem, 2vw + 0.5rem, 1.875rem);
  line-height: 1.4;
  color: var(--al-ink);
  margin: 0 0 12px 0;
}
.amara-pull-quote__attr {
  font-family: var(--al-font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-muted);
}
.amara-pull-quote__attr em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  text-transform: none;
  letter-spacing: 0;
  font-size: 0.85rem;
  color: var(--al-ink-soft);
}

/* The Five Movements section */
.amara-sov-movements {
  max-width: 1384px;
  margin: 0 auto;
  padding-top: 1rem;
}

/* Pillar grid — 5 columns of book-architecture cards */
.amara-pillars-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin: 4rem 0 2rem 0;
}
.amara-pillar {
  background: var(--al-paper-warm);
  border-top: 4px solid var(--al-amber);
  padding: 0 24px 32px 24px;
  display: flex;
  flex-direction: column;
  min-height: 560px;
  position: relative;
}
.amara-pillar__photo {
  margin: 0 -24px 24px -24px;
  overflow: hidden;
}
.amara-pillar__photo img {
  width: 100%;
  height: auto !important;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.amara-pillar__label {
  font-family: var(--al-font-mono);
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  font-weight: 600;
  margin: 0;
}
.amara-pillar__numeral {
  font-family: var(--al-font-couture) !important;
  font-style: normal !important;
  font-weight: 700 !important;
  font-size: clamp(3rem, 4vw + 0.8rem, 5.5rem) !important;
  line-height: 1 !important;
  color: var(--al-amber) !important;
  margin: 12px 0 0 0 !important;
  letter-spacing: 0 !important;
}
.amara-pillar__name {
  font-family: var(--al-font-couture) !important;
  font-style: normal !important;
  font-weight: 700 !important;
  font-size: clamp(1.8rem, 2.2vw + 0.5rem, 3rem) !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  margin: 1.25rem 0 0 0 !important;
  color: var(--al-ink) !important;
}
.amara-pillar__subtitle {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--al-ink-soft);
  margin: 12px 0 0 0;
}
.amara-pillar__subtitle em {
  font-style: italic;
}
.amara-pillar__rule {
  border: 0 !important;
  border-top: 1px solid var(--al-rule) !important;
  margin: 24px 0 16px 0 !important;
  width: 100% !important;
}
.amara-pillar__body {
  font-family: var(--al-font-body);
  font-size: 0.85rem;
  line-height: 1.6;
  color: var(--al-ink);
  margin: 0 0 16px 0;
  flex-grow: 1;
}
.amara-pillar__chapters {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0;
}

@media (max-width: 1199px) {
  .amara-pillars-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  .amara-pillar {
    min-height: auto;
  }
}
@media (max-width: 599px) {
  .amara-pillars-grid {
    grid-template-columns: 1fr;
  }
}

/* The Twelve Principles list */
.amara-sov-principles {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-principles-list {
  margin: 3rem 0 2rem 0;
}
.amara-principle {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 32px;
  padding: 32px 0;
  border-top: 1px solid var(--al-rule);
  align-items: start;
}
.amara-principle:last-child {
  border-bottom: 1px solid var(--al-rule);
}
.amara-principle__num {
  font-family: var(--al-font-display);
  font-weight: 900;
  font-size: clamp(2.5rem, 3vw + 0.5rem, 4rem);
  line-height: 1;
  color: var(--al-amber);
  letter-spacing: -0.02em;
}
.amara-principle__head {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: clamp(1.25rem, 1.4vw + 0.6rem, 1.75rem);
  line-height: 1.25;
  margin: 0 0 12px 0;
  color: var(--al-ink);
  max-width: 760px;
}
.amara-principle__elab {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 1rem;
  line-height: 1.6;
  color: var(--al-ink-soft);
  margin: 0;
  max-width: 760px;
}
.amara-principle--placeholder .amara-principle__num,
.amara-principle--placeholder .amara-principle__head {
  color: var(--al-muted);
}
@media (max-width: 599px) {
  .amara-principle {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

/* The Book section (Coming Soon) */
.amara-sov-book {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-sov-book__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  margin-top: 3rem;
  align-items: start;
}
.amara-sov-book__cover img {
  width: 100%;
  height: auto;
  aspect-ratio: 2 / 3;
  object-fit: cover;
  display: block;
}
.amara-sov-book__content .amara-meta-tag {
  font-family: var(--al-font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 32px 0 16px 0;
}
@media (max-width: 899px) {
  .amara-sov-book__row {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .amara-sov-book__cover {
    max-width: 360px;
  }
}

/* ============================================================ */
/*  Sovereignty page (id 9) — center the top header treatment   */
/*  H1 + lede + intro body paragraph, magazine-title-page feel   */
/* ============================================================ */
body.page-id-9 .entry-content > .amara-home-h1,
body.page-id-9 .entry-content > .amara-home-lede,
body.page-id-9 .entry-content > .amara-body-p {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page-id-9 .entry-content > .amara-home-h1 {
  max-width: 1180px;
}
body.page-id-9 .entry-content > .amara-home-lede {
  max-width: 820px;
}
body.page-id-9 .entry-content > .amara-body-p {
  max-width: 760px !important;
}

/* ============================================================ */
/*  SPEAKING PAGE                                                */
/* ============================================================ */

/* Speaking hero (21:9) */
.amara-spk-hero {
  margin: 0 0 3rem 0 !important;
  width: 100%;
}
.amara-spk-hero img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 21 / 9;
  object-fit: cover;
}

/* Speaking page (id 10) — center the top header treatment, same as sovereignty */
body.page-id-10 .entry-content > .amara-home-h1,
body.page-id-10 .entry-content > .amara-home-lede {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page-id-10 .entry-content > .amara-home-h1 {
  max-width: 1180px;
}
body.page-id-10 .entry-content > .amara-home-lede {
  max-width: 820px;
}

/* Topics section — 4 talk cards in 2x2 grid */
.amara-spk-topics {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-talks-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 48px;
  margin-top: 3rem;
}
.amara-talk-card {
  border-top: 1px solid var(--al-amber);
  padding-top: 18px;
}
.amara-talk-card__role {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 10px 0;
  font-weight: 600;
}
.amara-talk-card__name {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: 1.625rem;
  line-height: 1.2;
  margin: 0 0 14px 0;
  color: var(--al-ink);
}
.amara-talk-card__name em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-talk-card__desc {
  font-family: var(--al-font-body);
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--al-ink-soft);
  margin: 0;
}
.amara-talk-card__desc em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
}
@media (max-width: 767px) {
  .amara-talks-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

/* On stage — 6 stage photos in 3-col grid */
.amara-spk-stages {
  max-width: 1384px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-stages-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 3rem;
}
.amara-stage {
  margin: 0;
}
.amara-stage__photo {
  overflow: hidden;
  background: var(--al-paper-warm);
}
.amara-stage__photo img {
  width: 100%;
  height: auto !important;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.amara-stage:hover .amara-stage__photo img {
  transform: scale(1.03);
}
.amara-stage__caption {
  font-family: var(--al-font-mono);
  font-size: 0.62rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--al-muted);
  margin-top: 12px;
}
@media (max-width: 899px) {
  .amara-stages-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 599px) {
  .amara-stages-grid {
    grid-template-columns: 1fr;
  }
}

/* Past engagements list */
.amara-spk-events {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-events-list {
  margin-top: 3rem;
}
.amara-event-row {
  display: grid;
  grid-template-columns: 100px 1fr 1fr;
  gap: 32px;
  padding: 20px 0;
  border-top: 1px solid var(--al-rule);
  align-items: baseline;
  font-family: var(--al-font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.amara-event-row:last-child {
  border-bottom: 1px solid var(--al-rule);
}
.amara-event__year {
  color: var(--al-muted);
}
.amara-event__venue {
  color: var(--al-ink);
  font-weight: 600;
}
.amara-event__topic {
  color: var(--al-muted);
}
.amara-event-row--upcoming .amara-event__year {
  color: var(--al-amber-deep);
  font-weight: 600;
}
.amara-event-row--upcoming .amara-event__venue,
.amara-event-row--upcoming .amara-event__topic {
  color: var(--al-amber-deep);
  font-style: italic;
  font-family: var(--al-font-display-italic);
  font-size: 0.95rem;
  letter-spacing: 0;
  text-transform: none;
}
@media (max-width: 767px) {
  .amara-event-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* Inquiry CTA */
.amara-spk-inquiry {
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 1rem;
}

/* ============================================================ */
/*  LETTERS PAGE                                                 */
/* ============================================================ */

/* Letters hero (21:9, alignwide) */
.amara-let-hero {
  margin: 0 auto 3rem auto !important;
  width: 100%;
}
.amara-let-hero img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 21 / 9;
  object-fit: cover;
}

/* Letters page (id 11) — center the title-page treatment */
body.page-id-11 .entry-content > .amara-home-h1,
body.page-id-11 .entry-content > .amara-home-lede {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page-id-11 .entry-content > .amara-home-h1 {
  max-width: 1180px;
}
body.page-id-11 .entry-content > .amara-home-lede {
  max-width: 820px;
}

/* 2-column row (What lives there | Cadence & registers) */
.amara-letters-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  max-width: 1180px;
  margin: 3rem auto 0 auto;
  align-items: start;
}
.amara-letters-row__col {
  display: block;
}

/* Letters page — column heads (visual hierarchy above each column body) */
.amara-letters-row__head {
  font-family: var(--al-font-display) !important;
  font-weight: 700 !important;
  font-size: clamp(1.75rem, 2.4vw + 0.6rem, 2.5rem) !important;
  line-height: 1.1 !important;
  margin: 0 0 1.25rem 0 !important;
  color: var(--al-ink) !important;
  letter-spacing: -0.005em !important;
}
.amara-letters-row__head em {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-weight: 500 !important;
}
@media (max-width: 899px) {
  .amara-letters-row {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

/* Register blocks (4 stacked) */
.amara-register-block {
  padding: 24px 0;
  border-top: 1px solid var(--al-rule);
}
.amara-register-block--first {
  border-top: 1px solid var(--al-ink);
  padding-top: 24px;
}
.amara-register-block:last-child {
  border-bottom: 1px solid var(--al-rule);
}
.amara-register-block__num {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 6px 0;
  font-weight: 600;
}
.amara-register-block__name {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.2;
  margin: 0 0 8px 0;
  color: var(--al-ink);
}
.amara-register-block__desc {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 1rem;
  line-height: 1.55;
  color: var(--al-ink-soft);
  margin: 0;
}

/* Substack CTA box — paper-warm with amber left border, centered */
.amara-substack-cta {
  max-width: 1180px;
  margin: 4rem auto 0 auto;
  padding: 4rem clamp(2rem, 5vw, 4rem);
  background: var(--al-paper-warm);
  border-left: 4px solid var(--al-amber);
  text-align: center;
}
.amara-substack-cta .amara-section-label {
  margin-top: 0;
}
.amara-substack-cta h2.amara-section-h {
  margin-top: 0.75rem;
  text-align: center;
}
.amara-substack-cta .amara-body-p {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ============================================================ */
/*  FIELD NOTES PAGE                                             */
/* ============================================================ */

/* Hero (alignwide 21:9) */
.amara-fn-hero {
  margin: 0 auto 3rem auto !important;
  width: 100%;
}
.amara-fn-hero img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 21 / 9;
  object-fit: cover;
}

/* Field Notes page (id 12) — center title-page treatment */
body.page-id-12 .entry-content > .amara-home-h1,
body.page-id-12 .entry-content > .amara-home-lede {
  text-align: center;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page-id-12 .entry-content > .amara-home-h1 {
  max-width: 1180px;
}
body.page-id-12 .entry-content > .amara-home-lede {
  max-width: 820px;
}

/* Pillars section */
.amara-fn-pillars-section {
  max-width: 1384px;
  margin: 0 auto;
  padding-top: 1rem;
}
.amara-fn-pillars-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-top: 4rem;
}
.amara-fn-pillar,
.amara-fn-pillar:hover,
.amara-fn-pillar:focus,
.amara-fn-pillar:visited {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  color: inherit !important;
}
.amara-fn-pillar * {
  text-decoration: none !important;
}
.amara-fn-pillar__photo {
  overflow: hidden;
  background: var(--al-paper-warm);
}
.amara-fn-pillar__photo img {
  width: 100%;
  height: auto !important;
  display: block;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.amara-fn-pillar:hover .amara-fn-pillar__photo img {
  transform: scale(1.03);
}
.amara-fn-pillar__body {
  border-top: 1px solid var(--al-amber);
  padding-top: 18px;
  margin-top: 0;
}
.amara-fn-pillar__role {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 8px 0;
  font-weight: 600;
}
.amara-fn-pillar__name {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: 1.625rem;
  line-height: 1.15;
  margin: 0 0 12px 0;
  color: var(--al-ink);
}
.amara-fn-pillar__name em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-fn-pillar__desc {
  font-family: var(--al-font-body);
  font-size: 0.9rem;
  line-height: 1.6;
  color: var(--al-ink-soft);
  margin: 0 0 16px 0;
}
.amara-fn-pillar__desc em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
}
.amara-fn-pillar__cadence {
  font-family: var(--al-font-mono);
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0;
  font-weight: 600;
}

/* Archive browse tile — 6th cell of pillar grid */
.amara-fn-archive-tile {
  position: relative;
  display: block;
  overflow: hidden;
  background: var(--al-ink);
  text-decoration: none !important;
  aspect-ratio: 4 / 5;
}
.amara-fn-archive-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: brightness(0.85);
  transition: transform 0.5s ease, filter 0.4s ease;
}
.amara-fn-archive-tile:hover img {
  transform: scale(1.04);
  filter: brightness(0.95);
}
.amara-fn-archive-tile__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 32px 24px 24px;
  background: linear-gradient(to bottom, rgba(20,18,15,0) 0%, rgba(20,18,15,0.55) 50%, rgba(20,18,15,0.85) 100%);
  pointer-events: none;
}
.amara-fn-archive-tile__label {
  font-family: var(--al-font-mono);
  font-size: 0.55rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--al-amber);
  font-weight: 600;
  margin: 0 0 8px 0;
  text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
.amara-fn-archive-tile__name {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 1.625rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.1;
  margin: 0 0 14px 0;
  text-shadow: 0 1px 4px rgba(0,0,0,0.5);
}
.amara-fn-archive-tile__cta {
  display: inline-block;
  padding: 10px 20px;
  background: rgba(255,255,255,0.95);
  color: var(--al-ink);
  font-family: var(--al-font-mono);
  font-size: 0.62rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 600;
  pointer-events: auto;
}

@media (max-width: 1023px) {
  .amara-fn-pillars-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 599px) {
  .amara-fn-pillars-grid {
    grid-template-columns: 1fr;
  }
}

/* Articles section */
.amara-fn-articles-section {
  max-width: 1384px;
  width: 100%;
  margin: 0 auto;
  padding: 1rem 0 0 0;
  box-sizing: border-box;
}
.amara-fn-articles-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  margin-top: 3rem;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.amara-fn-article,
.amara-fn-article:hover,
.amara-fn-article:visited {
  display: block;
  text-decoration: none !important;
  color: inherit;
}
.amara-fn-article * {
  text-decoration: none !important;
}
.amara-fn-article__photo {
  overflow: hidden;
  background: var(--al-paper-warm);
  margin-bottom: 14px;
}
.amara-fn-article__photo img {
  width: 100%;
  height: auto !important;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  filter: grayscale(5%);
  transition: transform 0.5s ease, filter 0.4s ease;
}
.amara-fn-article:hover .amara-fn-article__photo img {
  transform: scale(1.03);
  filter: grayscale(0%);
}
.amara-fn-article__date {
  font-family: var(--al-font-mono);
  font-size: 0.22rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--al-amber-deep);
  margin: 0 0 6px 0;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.amara-fn-article__title {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: 1.55rem;
  line-height: 1.2;
  color: var(--al-ink);
  margin: 0 0 10px 0;
}
.amara-fn-article__title em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-fn-article__lede {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--al-ink-soft);
  margin: 0;
}
@media (max-width: 1023px) {
  .amara-fn-articles-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 599px) {
  .amara-fn-articles-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

/* ============================================================ */
/*  SINGLE POST TEMPLATE (Field Notes / Letters / Blog)          */
/*  Vertical hero (4:5 featured image left, title + meta right)  */
/* ============================================================ */

.amara-post-hero {
  margin: 3rem auto 2rem auto !important;
  max-width: 1180px !important;
}
.amara-post-hero .wp-block-columns {
  gap: 4rem !important;
  align-items: start !important;
}

/* Featured image — 4:5 portrait */
.amara-post-hero__photo,
.amara-post-hero__photo img,
.amara-post-hero .wp-block-post-featured-image,
.amara-post-hero .wp-block-post-featured-image img {
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Category label (post terms) */
.amara-post-meta,
.amara-post-meta a {
  font-family: var(--al-font-mono) !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--al-amber-deep) !important;
  font-weight: 600 !important;
  margin: 0 0 12px 0 !important;
  text-decoration: none !important;
}

/* Big title — Playfair Display 700, more readable for long headlines than Bodoni */
h1.amara-post-title,
.amara-post-title {
  font-family: var(--al-font-display) !important;
  font-size: clamp(1.875rem, 2.5vw + 0.6rem, 3.25rem) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.005em !important;
  color: var(--al-ink) !important;
  margin: 0 0 1.25rem 0 !important;
}
.amara-post-title em {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-weight: 500 !important;
}

/* Date (mono, muted) */
.amara-post-date {
  font-family: var(--al-font-mono) !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--al-muted) !important;
  margin: 0 0 1.5rem 0 !important;
}

/* Lede (italic Cormorant) */
.amara-post-lede,
.amara-post-lede p {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-size: clamp(1.125rem, 1.2vw + 0.6rem, 1.4rem) !important;
  line-height: 1.5 !important;
  color: var(--al-ink-soft) !important;
  margin: 0 !important;
}

/* Image column can stick during scroll on desktop */
@media (min-width: 900px) {
  .amara-post-hero__photo-col {
    position: sticky !important;
    top: 120px !important;
    align-self: flex-start !important;
  }
}

/* Body — now lives inside right column alongside title/meta/lede */
.amara-post-body {
  max-width: none !important;
  margin: 2.5rem 0 4rem 0 !important;
  padding: 0 !important;
}
.amara-post-body p {
  font-family: var(--al-font-body);
  font-size: 1.0625rem;
  line-height: 1.8;
  color: var(--al-ink);
  text-align: justify;
  hyphens: auto;
  -webkit-hyphens: auto;
  margin: 0 0 1.25rem 0;
}
.amara-post-body p em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
}
.amara-post-body h2 {
  font-family: var(--al-font-display);
  font-weight: 700;
  font-size: clamp(1.5rem, 1.8vw + 0.6rem, 2.25rem);
  line-height: 1.15;
  color: var(--al-ink);
  margin: 3rem 0 1rem 0 !important;
}
.amara-post-body h2 em {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
}
.amara-post-body h3 {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-weight: 500;
  font-size: clamp(1.25rem, 1.4vw + 0.5rem, 1.75rem);
  line-height: 1.3;
  color: var(--al-ink);
  margin: 2.5rem 0 0.75rem 0 !important;
}

/* Pull quote inside post body */
.amara-post-body .wp-block-pullquote,
.amara-post-body blockquote {
  border-left: 4px solid var(--al-amber);
  padding: 1rem 0 1rem 2rem;
  margin: 2.5rem 0 !important;
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: clamp(1.25rem, 1.5vw + 0.5rem, 1.625rem);
  line-height: 1.4;
  color: var(--al-ink);
}
.amara-post-body blockquote p {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: inherit;
  text-align: left;
  hyphens: manual;
}

/* Mobile collapse */
@media (max-width: 899px) {
  .amara-post-hero .wp-block-columns {
    flex-direction: column;
    gap: 2rem !important;
  }
  .amara-post-hero .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }
  .amara-post-hero .wp-block-column[style*="480px"] {
    max-width: 360px;
  }
}

/* ============================================================ */
/*  CATEGORY ARCHIVE TEMPLATE (pillar landing pages)             */
/* ============================================================ */

/* Hero — sized to fit comfortably in viewport without scrolling */
.amara-category-hero {
  margin: 2rem auto 0 auto !important;
  max-width: 900px !important;
  width: 100%;
  aspect-ratio: 4 / 3;
  background-color: var(--al-paper-warm);
  background-size: cover;
  background-position: center;
  position: relative;
  display: flex;
  align-items: flex-end;
}
.amara-category-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(20,18,15,0) 40%, rgba(20,18,15,0.55) 75%, rgba(20,18,15,0.85) 100%);
  pointer-events: none;
}
.amara-category-hero__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 0 clamp(2rem, 4vw, 4rem) clamp(2rem, 4vw, 3rem);
  color: #fff;
  text-shadow: 0 1px 6px rgba(0,0,0,0.4);
}
.amara-category-eyebrow {
  font-family: var(--al-font-mono) !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--al-amber) !important;
  font-weight: 600 !important;
  margin: 0 0 0.75rem 0 !important;
}
.amara-category-title,
h1.amara-category-title {
  font-family: var(--al-font-couture) !important;
  font-weight: 700 !important;
  font-size: clamp(2.5rem, 5vw + 0.5rem, 5rem) !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
  color: #fff !important;
  margin: 0 0 1rem 0 !important;
}
.amara-category-description {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-size: clamp(1.125rem, 1.2vw + 0.6rem, 1.5rem) !important;
  line-height: 1.5 !important;
  color: rgba(255,255,255,0.92) !important;
  max-width: 720px !important;
  margin: 0 !important;
}

/* Per-category hero background images — same source as the Field Notes pillar tiles */
body.category-sovereignty .amara-category-hero {
  background-image: url('https://amaralaurent.com/wp-content/uploads/2026/05/fn_pillar_01_sovereignty.png');
}
body.category-ancient-future .amara-category-hero {
  background-image: url('https://amaralaurent.com/wp-content/uploads/2026/05/fn_pillar_02_ancient_future.png');
}
body.category-travel .amara-category-hero,
body.category-travel-adventure .amara-category-hero {
  background-image: url('https://amaralaurent.com/wp-content/uploads/2026/05/fn_pillar_03_travel.png');
}
body.category-health .amara-category-hero,
body.category-health-wellbeing .amara-category-hero {
  background-image: url('https://amaralaurent.com/wp-content/uploads/2026/05/fn_pillar_04_health.png');
}
body.category-wealth .amara-category-hero,
body.category-wealth-sovereignty .amara-category-hero {
  background-image: url('https://amaralaurent.com/wp-content/uploads/2026/05/fn_pillar_05_wealth.png');
}

/* "Articles" mono label above the posts grid — matches PILLAR II register */
.amara-category-articles-heading,
h2.amara-category-articles-heading {
  font-family: var(--al-font-mono) !important;
  font-weight: 600 !important;
  font-size: 0.7rem !important;
  line-height: 1.4 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--al-amber-deep) !important;
  margin: 2.5rem auto 0.5rem auto !important;
  max-width: 1180px !important;
  text-align: center !important;
}

/* Posts list — 2-col grid of category posts */
.amara-category-posts {
  margin: 1rem auto 4rem auto !important;
  max-width: 1180px !important;
  width: 100%;
}
.amara-category-posts .wp-block-query {
  margin: 0;
}
.amara-category-posts .wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 64px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.amara-category-card {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
}
.amara-category-card__photo {
  margin: 0 0 1.25rem 0 !important;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--al-paper-warm);
}
.amara-category-card__photo img,
.amara-category-card__photo a img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.5s ease;
}
.amara-category-card:hover .amara-category-card__photo img {
  transform: scale(1.03);
}
.amara-category-card__date {
  font-family: var(--al-font-mono) !important;
  font-size: 0.5rem !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: var(--al-amber-deep) !important;
  font-weight: 600 !important;
  margin: 0 0 0.5rem 0 !important;
}
.amara-category-card__title,
h3.amara-category-card__title {
  font-family: var(--al-font-display) !important;
  font-weight: 700 !important;
  font-size: clamp(1.5rem, 1.6vw + 0.75rem, 2rem) !important;
  line-height: 1.15 !important;
  margin: 0 0 0.75rem 0 !important;
  color: var(--al-ink) !important;
}
.amara-category-card__title a,
.amara-category-card__title a:hover,
.amara-category-card__title a:visited {
  color: var(--al-ink) !important;
  text-decoration: none !important;
}
.amara-category-card__title em {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-weight: 500 !important;
}
.amara-category-card__lede,
.amara-category-card__lede p {
  font-family: var(--al-font-display-italic) !important;
  font-style: italic !important;
  font-size: 1rem !important;
  line-height: 1.55 !important;
  color: var(--al-ink-soft) !important;
  margin: 0 !important;
}

/* Pagination */
.amara-category-pagination {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  margin-top: 4rem !important;
  font-family: var(--al-font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.amara-category-pagination a {
  color: var(--al-amber-deep) !important;
  text-decoration: none !important;
}
.amara-category-pagination .current {
  color: var(--al-ink) !important;
  font-weight: 600;
}

.amara-category-empty {
  font-family: var(--al-font-display-italic);
  font-style: italic;
  font-size: 1.125rem;
  color: var(--al-muted);
  text-align: center;
  padding: 3rem 0;
}

/* Mobile collapse */
@media (max-width: 767px) {
  .amara-category-posts .wp-block-post-template {
    grid-template-columns: 1fr !important;
    gap: 48px !important;
  }
  .amara-category-hero {
    aspect-ratio: 4 / 3;
  }
}
