/* =========================================================
   D.I.G.G.E.R. FIELD JOURNAL
   Field Tool 90 — Interpreting Figurative Language
   Dense print-first reference edition
   ========================================================= */

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

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

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

body {
  background: #d7d7d7;
}

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

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

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

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

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

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

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

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

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

.figurative-content {
  min-height: 0;
  overflow: hidden;
}

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

.figurative-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(--fig-green);
}

.figurative-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(--fig-green-dark);
  background: var(--fig-green-dark);
  color: #fff;
  font-size: 14pt;
  letter-spacing: 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Method */
.method-section,
.questions-section,
.guardrails,
.worked-figure,
.quick-reference {
  margin-top: 0.18in;
  padding: 0.16in 0.18in;
  border: 1px solid var(--fig-rule);
  background: #fff;
  break-inside: avoid;
}

.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;
}

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

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

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

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

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

.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;
}

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

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

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

.type-grid--large {
  gap: 0.15in;
}

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

.type-card--bronze {
  border-top-color: var(--fig-bronze);
}

.type-card--wide {
  grid-column: 1 / -1;
}

.type-card header {
  display: flex;
  justify-content: space-between;
  gap: 0.14in;
  align-items: baseline;
}

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

.type-card--bronze h2 {
  color: var(--fig-bronze-dark);
}

.type-card header span {
  color: var(--fig-bronze-dark);
  font-family: var(--fig-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.type-card p,
.type-card blockquote {
  margin: 0.07in 0 0;
  font-family: var(--fig-serif);
  font-size: 10pt;
  line-height: 1.28;
}

.type-card blockquote {
  padding-top: 0.07in;
  border-top: 1px dotted var(--fig-rule);
  font-style: italic;
}

.type-card__ask {
  color: var(--fig-green-dark);
}

/* Guardrails */
.guardrails {
  background: var(--fig-bronze-pale);
}

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

.guardrail-grid article {
  padding: 0.14in 0.16in;
  border: 1px solid var(--fig-rule);
  background: #fff;
}

.guardrail-grid h3 {
  margin: 0;
  color: var(--fig-bronze-dark);
  font-family: var(--fig-serif);
  font-size: 12pt;
  line-height: 1.08;
}

.guardrail-grid p,
.guardrail-grid blockquote {
  margin: 0.07in 0 0;
  font-family: var(--fig-serif);
  font-size: 10pt;
  line-height: 1.28;
}

.guardrail-grid blockquote {
  padding-top: 0.07in;
  border-top: 1px dotted var(--fig-rule);
  font-style: italic;
}

/* Worked figures */
.worked-figure {
  background: var(--fig-blue-pale);
}

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

.worked-grid article {
  padding: 0.13in 0.15in;
  border-left: 4px solid var(--fig-blue);
  background: #fff;
}

.worked-grid span {
  display: block;
  margin-bottom: 0.04in;
  color: var(--fig-blue-dark);
  font-family: var(--fig-sans);
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

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

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

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

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

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

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

/* Remember */
.figurative-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(--fig-bronze);
  background: var(--fig-bronze-pale);
}

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

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

.figurative-remember p {
  margin: 0;
  font-family: var(--fig-serif);
  font-size: 10pt;
  line-height: 1.3;
}

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

@media screen {
  .figurative-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;
  }

  .figurative-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;
  }

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

  .principle-band,
  .method-section,
  .questions-section,
  .type-card,
  .guardrails,
  .worked-figure,
  .quick-reference,
  .figurative-remember {
    break-inside: avoid;
    page-break-inside: avoid;
  }
}