/* nour — print.css — editorial print stylesheet (A4, Cmd+P → PDF or paper).
   Reference: New Yorker / Granta. All scoped inside @media print. */

@media print {

  /* Page geometry: A4 with 18mm sides, 24mm vertical for running head/foot. */
  @page {
    size: A4;
    margin: 24mm 18mm 24mm 18mm;
    @top-center {
      content: "نور  nour — cozinha do levante";
      font: italic 9pt "Cormorant Garamond", Georgia, serif;
      color: #888; letter-spacing: .04em;
    }
    @bottom-left   { content: "R. dos Pinheiros 1277"; font: 9pt "Cormorant Garamond", Georgia, serif; color: #555; }
    @bottom-center { content: counter(page); font: 9pt "Cormorant Garamond", Georgia, serif; color: #555; }
    @bottom-right  { content: "maio 2026"; font: 9pt "Cormorant Garamond", Georgia, serif; color: #555; }
  }

  /* Palette reset: Khiam Stone bg → white, Nour Ink #1A1815 → #000. */
  html, body, main, header, footer, section, article, aside,
  .hero, .manifesto, .monife, .menu, .pacing, .visite,
  .frame, .container, .grupo, .item, .khiam-card, .head {
    background: #fff !important; background-image: none !important;
    color: #000 !important; box-shadow: none !important; border-color: #000 !important;
  }
  html, body {
    font: 11pt/1.5 "Cormorant Garamond", Georgia, "Times New Roman", serif;
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
  }

  /* Hide all interactive / decorative chrome. */
  nav, nav#reserve, .cursor, .cursor-trail, .progress,
  .essay, aside.essay, .luz, .hero .hero-floor, .terraces-wrap,
  .pacing .scrubber, .pacing .lanes, .pacing .ticks,
  .sahn .chips, .sahn .step, .sahn .total, .sahn .price-tag,
  .bordado, svg.bordado, .khiam-svg, svg.khiam-svg,
  button, .chip, .divisor,
  [aria-hidden="true"]:not(.ar) { display: none !important; }

  /* Kill animations, transforms, .reveal opacity hooks. */
  *, *::before, *::after {
    animation: none !important; transition: none !important; transform: none !important;
  }
  .reveal { opacity: 1 !important; visibility: visible !important; }

  /* Pacing: replace animated scrubber with one declarative editorial line. */
  .pacing .stage::before {
    content: "Trinta horas para fermentar. Quatro minutos para servir.";
    display: block; font-style: italic; font-size: 13pt; text-align: center; margin: 6mm 0;
  }
  .pacing .verdict, .pacing .head { display: none !important; }

  /* Sahn Nour: replace interactive builder with a static editorial listing. */
  .sahn { page-break-inside: avoid; margin: 8mm 0; }
  .sahn::before {
    content: "Sahn Nour — uma base, dois grelhados, um molho. Pão árabe e picles inclusos. R$ 49,90.";
    display: block; font-style: italic; text-align: center;
    border-top: .5pt solid #000; border-bottom: .5pt solid #000; padding: 4mm 0; margin: 6mm 0;
  }

  /* Body copy: justified, hyphenated, anti-orphan. */
  p { text-align: justify; hyphens: auto; -webkit-hyphens: auto; orphans: 3; widows: 3; margin: 0 0 4mm; }

  /* Headings: bold italic, no underline. */
  h1, h2, h3, h4, .h-display {
    font-family: "Cormorant Garamond", Georgia, serif;
    font-weight: 700; font-style: italic; text-decoration: none !important;
    color: #000 !important; page-break-after: avoid; break-after: avoid;
  }
  h1, .h-display { font-size: 26pt; line-height: 1.1; margin: 0 0 6mm; }
  h2 { font-size: 18pt; margin: 8mm 0 3mm; }
  h3 { font-size: 14pt; margin: 6mm 0 2mm; }
  .eyebrow {
    font: 8pt/1.4 "Inter", sans-serif; letter-spacing: .18em; text-transform: uppercase;
    display: block; margin-bottom: 2mm;
  }

  /* Hero: trimmed editorial title. */
  .hero { text-align: center; padding: 10mm 0 8mm; border-bottom: .5pt solid #000; margin-bottom: 10mm; page-break-after: avoid; }
  .hero .tagline { font-style: italic; font-size: 13pt; }
  .hero .km { font-size: 9pt; letter-spacing: .06em; margin-top: 4mm; }

  /* Manifesto: full block, italic, justified, drop-cap on first paragraph. */
  .manifesto { page-break-inside: avoid; margin: 8mm 0; }
  .manifesto .frame { border: none !important; padding: 0 !important; }
  .manifesto p { font-style: italic; font-size: 12pt; line-height: 1.55; }
  .manifesto p.lead::first-letter,
  .manifesto .frame > p:first-of-type::first-letter {
    font: 700 italic 44pt/.9 "Cormorant Garamond", Georgia, serif;
    float: left; padding: 2mm 3mm 0 0;
  }
  .manifesto .signature { font-style: italic; text-align: right; margin-top: 4mm; font-size: 10pt; }
  .manifesto .rule { border: none; border-top: .5pt solid #000; margin: 4mm 0; }

  /* Cardápio: 5 grupos, never split a group across pages. */
  .menu-head { margin-bottom: 6mm; page-break-after: avoid; }
  .menu .note { font-style: italic; font-size: 10pt; }
  .menu .note em { display: none; }  /* "passe o cursor..." is screen-only */
  .grupo {
    page-break-inside: avoid; break-inside: avoid;
    margin: 0 0 8mm; padding-top: 4mm; border-top: .5pt solid #000;
  }
  .grupo .head { margin-bottom: 3mm; page-break-after: avoid; }
  .grupo .head .ar { font-family: "Amiri", "Cormorant Garamond", serif; font-size: 16pt; margin-right: 3mm; }
  .grupo .desc { font-style: italic; font-size: 10pt; margin-bottom: 4mm; }

  /* Cardápio item: dotted leader between name and price (flex + stretchy ::after). */
  .grupo .item {
    display: flex; align-items: baseline; flex-wrap: wrap;
    page-break-inside: avoid; break-inside: avoid;
    margin: 0 0 3mm; border: none !important; background: none !important;
  }
  .grupo .item .name  { flex: 0 1 auto; font-weight: 500; font-size: 11pt; padding-right: 2mm; }
  .grupo .item::after {
    content: ""; flex: 1 1 auto; border-bottom: .5pt dotted #000;
    margin: 0 2mm 4pt; align-self: end; min-width: 6mm;
  }
  .grupo .item .price { flex: 0 0 auto; order: 3; font-variant-numeric: tabular-nums; font-size: 11pt; padding-left: 2mm; }
  .grupo .item .desc {
    flex: 1 0 100%; order: 4; font-style: italic; font-size: 9.5pt;
    color: #333 !important; margin: 1mm 0 0; text-align: left; hyphens: auto;
  }
  .grupo .item .badge {
    font: 7pt "Inter", sans-serif; letter-spacing: .1em; text-transform: uppercase;
    border: .4pt solid #000; padding: .5mm 1.5mm; margin-left: 2mm;
  }

  /* Casa da Monife / Khiam: keep block together. */
  .monife { page-break-inside: avoid; margin: 8mm 0; }
  .monife .grid { display: block; }
  .monife .khiam-card { border: .5pt solid #000; padding: 4mm; margin-top: 4mm; }
  .monife .khiam-card .coords, .monife .khiam-card .name { font-style: italic; font-size: 10pt; }
  .monife .facts { display: flex; flex-wrap: wrap; gap: 4mm; margin-top: 4mm; border-top: .5pt solid #000; padding-top: 4mm; }
  .monife .fact { flex: 1 1 30%; }
  .monife .fact .num { display: block; font-style: italic; font-size: 18pt; }
  .monife .fact .lab { display: block; font-size: 8pt; letter-spacing: .08em; text-transform: uppercase; }

  /* Diário: each peça on its own page, drop-cap, justified body. */
  article { page-break-before: always; break-before: page; padding-top: 4mm; }
  article:first-of-type { page-break-before: avoid; }
  article h2 { font-size: 22pt; margin: 2mm 0 4mm; }
  article .byline {
    font-style: italic; font-size: 10pt; color: #444 !important;
    margin-bottom: 6mm; border-bottom: .5pt solid #000; padding-bottom: 2mm;
  }
  article p { font-size: 11pt; line-height: 1.55; }
  article > p:first-of-type::first-letter,
  article .byline + p::first-letter {
    font: 700 italic 42pt/.9 "Cormorant Garamond", Georgia, serif;
    float: left; padding: 2mm 3mm 0 0;
  }
  article .signoff { font-style: italic; text-align: right; margin-top: 6mm; font-size: 10pt; color: #444 !important; }

  /* Diário TOC + listas */
  section.toc { page-break-inside: avoid; margin-bottom: 8mm; }
  section.toc::before { content: "Sumário"; display: block; font: 700 italic 12pt "Cormorant Garamond", serif; margin-bottom: 2mm; }
  ul.tempo, ul.recipes { list-style: none; padding: 0; margin: 4mm 0; }
  ul.tempo li, ul.recipes li { border-top: .3pt solid #000; padding: 2mm 0; page-break-inside: avoid; }
  ul.recipes .ar { font-family: "Amiri", serif; font-size: 13pt; margin-right: 3mm; }
  ul.recipes .pt { font-style: italic; font-size: 10pt; }
  ul.recipes .gloss { display: block; font-size: 10pt; margin-top: 1mm; text-align: justify; hyphens: auto; }

  /* Images: contained; large/hero images get their own page. */
  img, svg { max-width: 100%; height: auto; }
  .hero img, .hero svg, img.lead, figure.large img {
    page-break-before: always; page-break-after: avoid; display: block; margin: 0 auto;
  }

  /* Links: print absolute URL in monospace 9pt; suppress for nav/buttons/anchors. */
  a { color: #000 !important; text-decoration: none; }
  a[href^="http"]::after,
  a[href^="mailto:"]::after,
  a[href^="tel:"]::after {
    content: " (" attr(href) ")";
    font: 9pt "SFMono-Regular", "Menlo", "Consolas", monospace;
    color: #555; word-break: break-all;
  }
  a[href^="#"]::after, a.mark::after, a.back::after, nav a::after, button::after { content: "" !important; }

  /* Visite + footer block kept together. */
  .visite, footer { page-break-inside: avoid; }
  footer { border-top: .5pt solid #000; margin-top: 10mm; padding-top: 4mm;
           font-size: 9pt; font-style: italic; color: #333 !important; }
  footer ul { list-style: none; padding: 0; margin: 0; }
}
