/* =========================================================
   D.I.G.G.E.R. FIELD JOURNAL
   Field Tool 92 — Reading Biblical Narrative
   Print-first five-page edition
   ========================================================= */

@page {
  size: Letter portrait;
  margin: 0;
}

:root {
  --na-white: #ffffff;
  --na-ink: #252925;
  --na-navy: #18314d;
  --na-muted: #5e645e;
  --na-green: #566b5d;
  --na-green-dark: #3f5146;
  --na-green-pale: #edf2ee;
  --na-blue: #607887;
  --na-blue-dark: #445b69;
  --na-blue-pale: #edf2f4;
  --na-bronze: #956d43;
  --na-bronze-dark: #755333;
  --na-bronze-pale: #f5efe7;
  --na-rule: #b8bdb8;
  --na-rule-light: #d9ddd9;
  --na-serif: Georgia, "Times New Roman", serif;
  --na-sans: Arial, Helvetica, sans-serif;
}

html,
body {
  margin: 0;
  padding: 0;
}

body {
  background: #d7d7d7;
}

.book {
  margin: 0;
  padding: 0;
}

.narrative-page,
.narrative-page *,
.narrative-page *::before,
.narrative-page *::after {
  box-sizing: border-box;
}

.page.narrative-page,
.page.narrative-page::before,
.page.narrative-page::after,
.narrative-sheet,
.narrative-sheet::before,
.narrative-sheet::after {
  background-color: var(--na-white) !important;
  background-image: none !important;
}

.page.narrative-page::before,
.page.narrative-page::after,
.narrative-sheet::before,
.narrative-sheet::after {
  content: none !important;
  display: none !important;
}

.narrative-page {
  width: 8.5in;
  height: 11in;
  min-height: 11in;
  margin: 0 auto 0.35in;
  overflow: hidden;
  color: var(--na-ink);
  background: #fff;
  break-after: page;
  page-break-after: always;
}

.narrative-page:last-child {
  break-after: auto;
  page-break-after: auto;
}

.narrative-sheet {
  display: grid;
  grid-template-rows: 0.58in minmax(0, 1fr) 0.56in;
  width: 100%;
  height: 100%;
  padding-top: 0.34in;
  padding-bottom: 0.34in;
}

.narrative-page.page--right .narrative-sheet {
  padding-left: 0.82in;
  padding-right: 0.58in;
}

.narrative-page.page--left .narrative-sheet {
  padding-left: 0.58in;
  padding-right: 0.82in;
}

.narrative-content {
  min-height: 0;
  overflow: hidden;
  padding-bottom: 0.22in;
}

/* Ribbon */
.narrative-ribbon {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-width: 2.55in;
  height: 0.42in;
  margin-left: 0.22in;
  padding: 0 0.34in 0 0.55in;
  background: var(--na-green);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.narrative-ribbon::after {
  content: "";
  position: absolute;
  top: 0;
  right: -0.25in;
  width: 0;
  height: 0;
  border-top: 0.21in solid transparent;
  border-bottom: 0.21in solid transparent;
  border-left: 0.25in solid var(--na-green);
}

.narrative-ribbon__seal {
  position: absolute;
  left: -0.24in;
  display: grid;
  place-items: center;
  width: 0.54in;
  height: 0.54in;
  border: 3px solid #fff;
  border-radius: 50%;
  outline: 1px solid var(--na-green-dark);
  background: var(--na-green-dark);
  color: #fff;
  font-size: 14pt;
  letter-spacing: 0;
}

/* Hero */
.narrative-hero {
  text-align: center;
}

.narrative-workflow {
  display: inline-grid;
  grid-template-columns: 0.52in auto;
  gap: 0.12in;
  align-items: center;
  margin-bottom: 0.14in;
  text-align: left;
}

.narrative-workflow__letter {
  display: grid;
  place-items: center;
  width: 0.52in;
  height: 0.52in;
  border-radius: 50%;
  background: var(--na-blue);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 22pt;
  font-weight: 700;
}

.narrative-eyebrow {
  margin: 0;
  color: var(--na-blue);
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.narrative-workflow__name {
  margin: 0.025in 0 0;
  font-family: var(--na-serif);
  font-size: 12pt;
  font-weight: 700;
  line-height: 1.05;
}

.narrative-continued {
  margin: 0 0 0.07in;
  color: var(--na-bronze-dark);
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.narrative-hero h1 {
  margin: 0;
  color: var(--na-navy);
  font-family: var(--na-serif);
  font-size: 27pt;
  font-weight: 400;
  line-height: 1.05;
}

.narrative-hero--continued h1 {
  font-size: 24pt;
}

.narrative-deck {
  max-width: 6.1in;
  margin: 0.10in auto 0;
  color: var(--na-green-dark);
  font-family: var(--na-sans);
  font-size: 10.5pt;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.35;
  text-transform: uppercase;
}

.narrative-rule {
  display: flex;
  align-items: center;
  gap: 0.12in;
  width: 3.25in;
  margin: 0.13in auto;
}

.narrative-rule::before,
.narrative-rule::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--na-bronze);
}

.narrative-rule span {
  width: 0.09in;
  height: 0.09in;
  border: 1px solid var(--na-bronze);
  transform: rotate(45deg);
}

.narrative-intro {
  margin: 0;
  padding: 0.14in 0.18in;
  border-left: 4px solid var(--na-blue);
  background: var(--na-blue-pale);
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.4;
  text-align: left;
}

/* Shared headings */
.narrative-section-head p,
.narrative-section-head h2 {
  margin: 0;
}

.narrative-section-head h2 {
  margin-top: 0.035in;
  font-family: var(--na-serif);
  font-size: 15pt;
  line-height: 1.08;
}

/* Principle */
.narrative-principle {
  display: grid;
  grid-template-columns: 1.05in minmax(0, 1fr);
  margin-top: 0.18in;
  border: 1px solid var(--na-green-dark);
  background: var(--na-green-pale);
}

.narrative-principle__label {
  display: grid;
  place-items: center;
  padding: 0.12in;
  background: var(--na-green-dark);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
}

.narrative-principle>div:last-child {
  padding: 0.14in 0.17in;
}

.narrative-principle h2 {
  margin: 0;
  color: var(--na-green-dark);
  font-family: var(--na-serif);
  font-size: 14pt;
  line-height: 1.08;
}

.narrative-principle p {
  margin: 0.06in 0 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.32;
}

/* Shared panels */
.narrative-method-section,
.narrative-signals-section,
.narrative-questions-section,
.narrative-observation-order,
.judgment-section,
.narrative-map,
.narrative-example,
.narrative-example-analysis,
.narrative-quick-reference {
  margin-top: 0.18in;
  padding: 0.16in 0.18in;
  border: 1px solid var(--na-rule);
  background: #fff;
  break-inside: avoid;
}

/* Method */
.narrative-method-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.12in 0.16in;
  margin: 0.13in 0 0;
  padding: 0;
  list-style: none;
}

.narrative-method-grid li {
  display: grid;
  grid-template-columns: 0.34in minmax(0, 1fr);
  gap: 0.09in;
  align-items: start;
}

.narrative-method-grid li>span {
  display: grid;
  place-items: center;
  width: 0.32in;
  height: 0.32in;
  border-radius: 50%;
  background: var(--na-green-dark);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
}

.narrative-method-grid h3 {
  margin: 0 0 0.035in;
  font-family: var(--na-serif);
  font-size: 11.5pt;
  line-height: 1.1;
}

.narrative-method-grid p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.28;
}

/* Story elements */
.story-elements-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.14in;
  margin-top: 0.18in;
}

.story-element {
  padding: 0.15in 0.17in;
  border: 1px solid var(--na-rule);
  border-top: 4px solid var(--na-blue);
  background: #fff;
  break-inside: avoid;
}

.story-element--bronze {
  border-top-color: var(--na-bronze);
}

.story-element header {
  display: flex;
  justify-content: space-between;
  gap: 0.12in;
  align-items: baseline;
}

.story-element h2 {
  margin: 0;
  color: var(--na-blue-dark);
  font-family: var(--na-serif);
  font-size: 13pt;
  line-height: 1.08;
}

.story-element--bronze h2 {
  color: var(--na-bronze-dark);
}

.story-element header span {
  color: var(--na-bronze-dark);
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.story-element p {
  margin: 0.07in 0 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.28;
}

.story-element__question {
  padding-top: 0.07in;
  border-top: 1px dotted var(--na-rule);
  color: var(--na-green-dark);
}

/* Signals */
.narrative-signals-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.12in;
  margin-top: 0.13in;
}

.narrative-signals-grid article {
  padding: 0.13in 0.15in;
  border: 1px solid var(--na-rule-light);
  background: var(--na-green-pale);
}

.narrative-signals-grid h3 {
  margin: 0 0 0.04in;
  color: var(--na-green-dark);
  font-family: var(--na-serif);
  font-size: 11.5pt;
  line-height: 1.1;
}

.narrative-signals-grid p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.28;
}

/* Questions */
.narrative-questions-section {
  background: var(--na-blue-pale);
}

.narrative-questions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.09in 0.18in;
  margin: 0.13in 0 0;
  padding: 0;
  list-style: none;
}

.narrative-questions-grid li {
  position: relative;
  padding-left: 0.22in;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.28;
}

.narrative-questions-grid li::before {
  content: "?";
  position: absolute;
  left: 0;
  color: var(--na-blue);
  font-family: var(--na-sans);
  font-weight: 700;
}

/* Observation order */
.narrative-observation-order {
  background: var(--na-bronze-pale);
}

.narrative-observation-order__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.11in;
  margin-top: 0.12in;
}

.narrative-observation-order__grid article {
  display: grid;
  grid-template-columns: 0.32in minmax(0, 1fr);
  gap: 0.08in;
  align-items: start;
}

.narrative-observation-order__grid span,
.narrative-quick-reference__grid span {
  display: grid;
  place-items: center;
  width: 0.30in;
  height: 0.30in;
  border-radius: 50%;
  background: var(--na-bronze-dark);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
}

.narrative-observation-order__grid p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.25;
}

/* Judgment */
.judgment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.12in;
  margin-top: 0.13in;
}

.judgment-grid article {
  padding: 0.13in 0.15in;
  border: 1px solid var(--na-rule-light);
  background: var(--na-bronze-pale);
}

.judgment-grid h3 {
  margin: 0 0 0.04in;
  color: var(--na-bronze-dark);
  font-family: var(--na-serif);
  font-size: 11.5pt;
  line-height: 1.1;
}

.judgment-grid p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.28;
}

/* Plot map */
.narrative-map {
  background: var(--na-blue-pale);
}

.plot-map {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1.08fr auto 1fr auto 1fr;
  gap: 0.06in;
  align-items: center;
  margin-top: 0.13in;
}

.plot-map article {
  padding: 0.11in 0.09in;
  border: 1px solid var(--na-rule);
  background: #fff;
  text-align: center;
}

.plot-map__climax {
  border-color: var(--na-bronze) !important;
  background: var(--na-bronze-pale) !important;
}

.plot-map article>span {
  display: grid;
  place-items: center;
  width: 0.28in;
  height: 0.28in;
  margin: 0 auto 0.05in;
  border-radius: 50%;
  background: var(--na-blue-dark);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
}

.plot-map__climax>span {
  background: var(--na-bronze-dark) !important;
}

.plot-map h3 {
  margin: 0;
  font-family: var(--na-sans);
  font-size: 10pt;
  line-height: 1.05;
  text-transform: uppercase;
}

.plot-map p {
  margin: 0.05in 0 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.2;
}

.plot-map>b {
  color: var(--na-blue-dark);
  font-family: var(--na-sans);
  font-size: 12pt;
  text-align: center;
}

/* Notes */
.narrative-note,
.narrative-remember {
  display: grid;
  grid-template-columns: 0.38in minmax(0, 1fr);
  gap: 0.11in;
  align-items: start;
  margin-top: 0.17in;
  padding: 0.14in 0.16in;
  border-left: 4px solid var(--na-bronze);
  background: var(--na-bronze-pale);
}

.narrative-note>span,
.narrative-remember>span {
  display: grid;
  place-items: center;
  width: 0.34in;
  height: 0.34in;
  border-radius: 50%;
  background: var(--na-bronze-dark);
  color: #fff;
  font-family: var(--na-sans);
  font-size: 11pt;
  font-weight: 700;
}

.narrative-note h2,
.narrative-remember h2 {
  margin: 0 0 0.03in;
  color: var(--na-bronze-dark);
  font-family: var(--na-sans);
  font-size: 10pt;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.narrative-note p,
.narrative-remember p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.3;
}

/* Worked example */
.narrative-example {
  background: var(--na-green-pale);
}

.narrative-example-grid,
.narrative-example-analysis__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.12in;
  margin-top: 0.13in;
}

.narrative-example-grid article,
.narrative-example-analysis__grid article {
  padding: 0.13in 0.15in;
  border-left: 4px solid var(--na-green);
  background: #fff;
}

.narrative-example-grid span {
  display: block;
  margin-bottom: 0.04in;
  color: var(--na-green-dark);
  font-family: var(--na-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.narrative-example-grid p,
.narrative-example-analysis__grid p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.28;
}

.narrative-example__caution {
  margin: 0.12in 0 0;
  padding-top: 0.10in;
  border-top: 1px solid var(--na-rule);
  font-family: var(--na-serif);
  font-size: 10pt;
  font-style: italic;
  line-height: 1.3;
}

.narrative-example-analysis {
  background: var(--na-blue-pale);
}

.narrative-example-analysis__grid h3 {
  margin: 0 0 0.04in;
  color: var(--na-blue-dark);
  font-family: var(--na-serif);
  font-size: 11.5pt;
  line-height: 1.1;
}

/* Quick reference */
.narrative-quick-reference__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.12in;
  margin-top: 0.13in;
}

.narrative-quick-reference__grid article {
  display: grid;
  grid-template-columns: 0.32in minmax(0, 1fr);
  gap: 0.08in;
  align-items: start;
}

.narrative-quick-reference__grid span {
  background: var(--na-green-dark);
}

.narrative-quick-reference__grid p {
  margin: 0;
  font-family: var(--na-serif);
  font-size: 10pt;
  line-height: 1.25;
}

/* Footer */
.narrative-footer {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 0.18in;
  align-items: center;
  min-height: 0.56in;
  padding-top: 0.09in;
  border-top: 1px solid var(--na-rule);
  color: var(--na-muted);
  font-family: var(--na-sans);
  font-size: 10pt;
  line-height: 1;
}

@media screen {
  .narrative-page {
    box-shadow: 0 0.12in 0.35in rgba(0, 0, 0, 0.15);
  }
}

@media print {

  html,
  body {
    width: 8.5in;
    margin: 0;
    padding: 0;
    background: #fff !important;
  }

  .book {
    background: #fff !important;
  }

  .narrative-page {
    margin: 0;
    box-shadow: none;
    background: #fff !important;
    break-after: page;
    page-break-after: always;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .narrative-page:last-child {
    break-after: auto;
    page-break-after: auto;
  }

  .narrative-principle,
  .narrative-method-section,
  .story-element,
  .narrative-signals-section,
  .narrative-questions-section,
  .narrative-observation-order,
  .judgment-section,
  .narrative-map,
  .narrative-note,
  .narrative-example,
  .narrative-example-analysis,
  .narrative-quick-reference,
  .narrative-remember {
    break-inside: avoid;
    page-break-inside: avoid;
  }
}