/* A4 quote pages — design language from the SCIC Israel folder (SCIC_Folder_A4_print). */

@font-face { font-family: 'Talent'; src: url('assets/fonts/Talent_FS-Light.woff2') format('woff2'); font-weight: 300; }
@font-face { font-family: 'Talent'; src: url('assets/fonts/Talent_FS-Regular.woff2') format('woff2'); font-weight: 400; }
@font-face { font-family: 'Talent'; src: url('assets/fonts/Talent_FS-Medium.woff2') format('woff2'); font-weight: 500; }
@font-face { font-family: 'Talent'; src: url('assets/fonts/Talent_FS-Demibold.woff2') format('woff2'); font-weight: 600; }
@font-face { font-family: 'Talent'; src: url('assets/fonts/Talent_FS-Bold.woff2') format('woff2'); font-weight: 700; }

:root {
  --q-cream: #F4EBE2;
  --q-cream-2: #EADFD3;
  --q-bronze: #A9825F;
  --q-bronze-soft: #C9AE93;
  --q-ink: #2A2826;
  --q-body: #4A4541;
  --q-muted: #8A827B;
  --q-line: #DCD2C7;
  --q-black: #0D0D0D;
}

.page {
  width: 210mm;
  height: 297mm;
  position: relative;
  overflow: hidden;
  background: #fff;
  color: var(--q-body);
  font-family: 'Talent', 'Assistant', 'Segoe UI', Arial, sans-serif;
  font-size: 9.6pt;
  line-height: 1.65;
  direction: rtl;
  text-align: right;
  box-sizing: border-box;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
.page *, .page *::before, .page *::after { box-sizing: border-box; }
.page.cream { background: var(--q-cream); }
.page.dark { background: var(--q-black); color: #CFC8C1; }

.pad { padding: 24mm 22mm 26mm; }

.eyebrow {
  font-size: 7pt;
  font-weight: 500;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--q-bronze);
  direction: ltr;
  display: block;
  text-align: right;
  margin-bottom: 5mm;
}
.dark .eyebrow { color: var(--q-bronze-soft); }

.h1 {
  font-weight: 300;
  font-size: 31pt;
  line-height: 1.12;
  color: var(--q-ink);
  margin: 0 0 3mm;
  letter-spacing: -0.005em;
}
.dark .h1 { color: #fff; }
.sub { font-weight: 300; font-size: 13pt; color: var(--q-muted); margin: 0 0 6mm; }
.rule { width: 16mm; height: 0; border-top: 0.6pt solid var(--q-bronze); margin: 7mm 0; }
.rule.center { margin-inline: auto; }
.lead { font-size: 10.2pt; line-height: 1.75; margin: 0 0 4mm; }
.muted { color: var(--q-muted); }
.ltr { direction: ltr; unicode-bidi: isolate; display: inline-block; }
h3.t { font-size: 10.5pt; font-weight: 600; color: var(--q-ink); margin: 0 0 1.2mm; }
.dark h3.t { color: #fff; }
p { margin: 0 0 3mm; }

.pfoot {
  position: absolute;
  bottom: 12mm; left: 22mm; right: 22mm;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 7pt; color: var(--q-bronze);
}
.pfoot .pnum { font-weight: 600; direction: ltr; }
.pfoot .pmeta { letter-spacing: 0.04em; color: var(--q-muted); }
.dark .pfoot .pmeta { color: #7c756f; }

.img { background-size: cover; background-position: center; background-color: var(--q-cream-2); }

/* ---------- Cover ---------- */
.cover .img { position: absolute; inset: 0; }
.cover .shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.05) 30%, rgba(0,0,0,.15) 55%, rgba(0,0,0,.88) 100%); }
.cover .logo { position: absolute; top: 34mm; left: 0; right: 0; text-align: center; }
.cover .logo img { height: 15mm; }
.cover .block { position: absolute; bottom: 30mm; left: 22mm; right: 22mm; text-align: center; color: #fff; }
.cover .block .eyebrow { text-align: center; color: var(--q-bronze-soft); margin-bottom: 4mm; }
.cover .block .title { font-weight: 300; font-size: 30pt; line-height: 1.15; margin: 0; }
.cover .block .for { font-weight: 300; font-size: 14pt; margin-top: 3mm; color: #EDE6DF; }
.cover .block .meta { margin-top: 9mm; display: flex; justify-content: center; gap: 9mm; font-size: 8pt; color: #BDB4AB; letter-spacing: .03em; }
.cover .block .meta b { color: #fff; font-weight: 500; }

/* ---------- Story ---------- */
.story .img.top { height: 132mm; }
.story .body { padding: 14mm 22mm 0; }
.stats { display: grid; grid-template-columns: 1fr 1fr 1fr; border-top: 0.5pt solid var(--q-line); border-bottom: 0.5pt solid var(--q-line); padding: 6mm 0; margin-top: 8mm; }
.stats > div { text-align: center; }
.stats > div:first-child { text-align: right; }
.stats > div:last-child { text-align: left; }
.stats .n { font-weight: 300; font-size: 24pt; color: var(--q-bronze); line-height: 1.1; direction: ltr; }
.stats .l { font-size: 8pt; color: var(--q-muted); }

/* ---------- Israel ---------- */
.israel .img.top { height: 110mm; }
.israel .body { padding: 12mm 22mm 0; }
.steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5mm; border-top: 0.5pt solid #333; padding-top: 5mm; margin-top: 6mm; }
.steps .n { font-weight: 300; font-size: 19pt; color: var(--q-bronze-soft); direction: ltr; text-align: right; line-height: 1.2; }
.steps p { font-size: 8pt; line-height: 1.5; color: #A9A19A; margin: 0; }
.founders { display: grid; grid-template-columns: 1fr 1fr; gap: 8mm; margin-top: 9mm; }
.founder { display: flex; gap: 4mm; align-items: center; }
.founder .ph { width: 20mm; height: 20mm; border-radius: 50%; flex: none; background-size: cover; background-position: center 25%; }
.founder .nm { color: #fff; font-size: 11pt; font-weight: 400; }
.founder .rl { color: var(--q-bronze-soft); font-size: 7.6pt; }
.founder p { font-size: 7.8pt; line-height: 1.5; margin: 1mm 0 0; color: #A9A19A; }

/* ---------- Charter ---------- */
.charter-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6mm 10mm; margin-top: 4mm; }
.charter-grid .it { border-top: 0.5pt solid var(--q-line); padding-top: 3.5mm; }
.charter-grid .it .k { font-size: 7pt; color: var(--q-bronze); font-weight: 600; direction: ltr; text-align: right; letter-spacing: .1em; }
.charter-grid .it p { font-size: 8.7pt; line-height: 1.6; margin: 0; }
.section-h { display: flex; align-items: baseline; gap: 4mm; margin: 10mm 0 3mm; }
.section-h h2 { font-size: 15pt; font-weight: 400; color: var(--q-ink); margin: 0; }
.section-h .en { font-size: 6.8pt; letter-spacing: .3em; text-transform: uppercase; color: var(--q-bronze); direction: ltr; }
.ethics { background: var(--q-cream); padding: 6mm 7mm; margin-top: 2mm; display: grid; grid-template-columns: 1fr 1fr; gap: 4mm 9mm; }
.ethics .it p { font-size: 8.4pt; line-height: 1.55; margin: 0; }
.pledge { margin-top: 8mm; display: flex; justify-content: space-between; align-items: flex-end; font-size: 8.5pt; }
.pledge .sig { font-weight: 300; font-size: 12pt; color: var(--q-ink); }

/* ---------- Kitchen ---------- */
.kitchen .img.hero { height: 128mm; }
.kitchen .body { padding: 12mm 22mm 0; }
.kfacts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 0.5pt solid var(--q-line); border-bottom: 0.5pt solid var(--q-line); margin: 6mm 0; }
.kfacts > div { padding: 3.5mm 0 3.5mm 4mm; }
.kfacts > div + div { border-right: 0.5pt solid var(--q-line); padding-right: 4mm; }
.kfacts .l { font-size: 7pt; color: var(--q-muted); }
.kfacts .v { font-size: 10pt; color: var(--q-ink); font-weight: 500; }
.kitchen.no-banner .body { padding-top: 24mm; }
.kitchen.mixed .img.hero { height: 96mm; }
.mix-h { font-size: 7.4pt; color: var(--q-bronze); font-weight: 600; margin: 5mm 0 2mm; }
.kfacts .v[dir=auto] { text-align: right; }
.mix { display: grid; gap: 4mm; margin: 2mm 0 5mm; }
.mix .mx .img { height: 34mm; margin-bottom: 2mm; }
.no-banner .mix .mx .img { height: 52mm; }
.mix .mx .ct { font-size: 6.4pt; letter-spacing: .25em; text-transform: uppercase; color: var(--q-bronze); direction: ltr; text-align: right; }
.mix .mx .nm { font-size: 10pt; font-weight: 600; color: var(--q-ink); direction: ltr; text-align: right; }
.mix .mx .rl { font-size: 8.2pt; color: var(--q-muted); line-height: 1.45; }
.gallery { display: grid; gap: 4mm; margin-top: 5mm; }
.gallery .img { height: 42mm; }

/* ---------- Plans (appendix images) ---------- */
.plan .frame { position: absolute; top: 40mm; bottom: 28mm; left: 22mm; right: 22mm; display: flex; align-items: center; justify-content: center; }
.plan .frame img { max-width: 100%; max-height: 100%; object-fit: contain; }
.plan .cap { font-size: 8.5pt; color: var(--q-muted); }

/* ---------- Specs ---------- */
.note-box { background: var(--q-cream); padding: 5mm 6mm; margin-top: 7mm; font-size: 8.8pt; }
.note-box .ttl { font-weight: 600; color: var(--q-ink); margin-bottom: 1mm; }

.std-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4.2mm 9mm; margin-top: 2mm; }
.std-grid .it { border-top: 0.5pt solid var(--q-line); padding-top: 2.6mm; }
.std-grid .it .hd { display: flex; justify-content: space-between; align-items: baseline; }
.std-grid .it .hd .en { font-size: 6.4pt; letter-spacing: .2em; text-transform: uppercase; color: var(--q-bronze); direction: ltr; }
.std-grid .it h3.t { font-size: 9.6pt; }
.std-grid .it p { font-size: 7.9pt; line-height: 1.55; margin: 0; }
.certs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4mm; margin-top: 3mm; }
.certs .c { background: var(--q-cream); padding: 3.5mm; }
.certs .c b { display: block; font-size: 8pt; color: var(--q-ink); direction: ltr; text-align: right; font-weight: 600; }
.certs .c span { font-size: 7.2pt; line-height: 1.45; display: block; margin-top: 1mm; }

/* ---------- Timeline ---------- */
.tl-total { display: flex; align-items: baseline; gap: 4mm; margin: 2mm 0 8mm; }
.tl-total .n { font-weight: 300; font-size: 44pt; color: var(--q-bronze); line-height: 1; }
.tl-total .l { font-size: 11pt; color: var(--q-ink); font-weight: 300; }
.tl { position: relative; }
.tl .row { display: grid; grid-template-columns: 58mm 1fr; gap: 6mm; align-items: center; padding: 3.4mm 0; border-bottom: 0.5pt solid var(--q-line); }
.tl .row .nm { font-size: 9.6pt; color: var(--q-ink); font-weight: 500; }
.tl .row .ds { font-size: 7.8pt; color: var(--q-muted); line-height: 1.45; }
.tl .track { position: relative; height: 7mm; }
.tl .bar { position: absolute; top: 0; bottom: 0; background: var(--q-cream-2); border-right: 1.2mm solid var(--q-bronze); display: flex; align-items: center; justify-content: center; font-size: 7.4pt; color: var(--q-ink); white-space: nowrap; }
.tl .axis { display: grid; grid-template-columns: 58mm 1fr; gap: 6mm; margin-top: 2mm; }
.tl .axis .scale { display: flex; justify-content: space-between; font-size: 6.8pt; color: var(--q-muted); direction: rtl; }
.brand-q { margin: 11mm 0 2mm; font-weight: 300; font-size: 17pt; line-height: 1.35; color: var(--q-ink); border-right: 0.8pt solid var(--q-bronze); padding-right: 6mm; }
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 9mm; margin-top: 9mm; }
.checklist { list-style: none; padding: 0; margin: 0; }
.checklist li { position: relative; padding: 1.6mm 5mm 1.6mm 0; border-bottom: 0.5pt solid var(--q-line); font-size: 8.8pt; }
.checklist li::before { content: ''; position: absolute; right: 0; top: 3.6mm; width: 2mm; height: 2mm; border: 0.6pt solid var(--q-bronze); transform: rotate(45deg); }
.checklist.x li::before { border-color: var(--q-muted); background: transparent; transform: none; width: 2.4mm; height: 0; top: 4.6mm; }

/* ---------- Price ---------- */
.price-table { width: 100%; border-collapse: collapse; margin-top: 3mm; }
.price-table th { background: var(--q-cream); font-size: 7.8pt; font-weight: 600; color: var(--q-ink); padding: 3mm 3mm; text-align: right; }
.price-table td { padding: 3mm; border-bottom: 0.5pt solid var(--q-line); vertical-align: top; font-size: 9pt; }
.price-table td.num, .price-table th.num { text-align: left; white-space: nowrap; direction: ltr; }
.price-table td.idx { color: var(--q-bronze); width: 8mm; font-size: 8pt; }
.price-table .d { color: var(--q-ink); }
.price-table .incl { font-size: 8pt; color: var(--q-bronze); font-weight: 500; }
.price-table .dd { font-size: 7.8pt; color: var(--q-muted); line-height: 1.45; margin-top: .6mm; }
.totals { margin-top: 6mm; margin-right: auto; width: 88mm; }
.totals .r { display: flex; justify-content: space-between; padding: 1.8mm 0; font-size: 9pt; border-bottom: 0.5pt solid var(--q-line); }
.totals .r .v { direction: ltr; }
.totals .grand { border-bottom: 0; border-top: 0.8pt solid var(--q-bronze); margin-top: 2mm; padding-top: 4mm; align-items: baseline; }
.totals .grand .k { font-size: 10pt; color: var(--q-ink); font-weight: 600; }
.totals .grand .v { font-size: 22pt; font-weight: 300; color: var(--q-bronze); }
.pay { display: grid; gap: 3mm; margin-top: 3mm; }
.pay .p { display: grid; grid-template-columns: 14mm 1fr auto; align-items: baseline; gap: 3mm; border-bottom: 0.5pt solid var(--q-line); padding: 2mm 0; font-size: 9pt; }
.pay .p .pc { font-size: 13pt; font-weight: 300; color: var(--q-bronze); direction: ltr; text-align: right; }
.pay .p .am { direction: ltr; color: var(--q-ink); }
.sigs { display: grid; grid-template-columns: 1fr 1fr; gap: 14mm; position: absolute; bottom: 30mm; left: 22mm; right: 22mm; }
.sigs .s { border-top: 0.6pt solid var(--q-ink); padding-top: 2mm; font-size: 8pt; color: var(--q-muted); }
.meta-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4mm; margin-top: 5mm; }
.meta-grid .m { background: var(--q-cream); padding: 3.5mm 4mm; }
.meta-grid .m .l { font-size: 7pt; color: var(--q-muted); }
.meta-grid .m .v { font-size: 10pt; color: var(--q-ink); font-weight: 500; }
.meta-grid .m .cd { font-size: 8pt; color: var(--q-body); line-height: 1.5; unicode-bidi: plaintext; }

/* ---------- Closing ---------- */
.why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5.5mm 10mm; margin-top: 4mm; }
.why-grid .it .n { font-weight: 300; font-size: 15pt; color: var(--q-bronze); direction: ltr; text-align: right; line-height: 1.2; }
.why-grid .it p { font-size: 8.6pt; line-height: 1.55; margin: 0; }
.next { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5mm; margin-top: 4mm; }
.next .s { border-top: 0.6pt solid var(--q-bronze); padding-top: 3mm; font-size: 8.6pt; }
.next .s b { display: block; color: var(--q-ink); font-weight: 600; }
.contact-card { position: absolute; bottom: 28mm; left: 22mm; right: 22mm; display: flex; justify-content: space-between; align-items: center; background: #fff; padding: 6mm 8mm; }
.contact-card .who { font-weight: 300; font-size: 14pt; color: var(--q-ink); }
.contact-card .who small { display: block; font-size: 8pt; color: var(--q-muted); font-weight: 400; }
.contact-card .ways { font-size: 8.6pt; text-align: left; direction: ltr; line-height: 1.7; }

.back { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.back img { height: 13mm; }
.back .nm { color: #fff; margin-top: 8mm; font-size: 10pt; }
.back .ln { margin-top: 5mm; font-size: 8.6pt; color: #A9A19A; line-height: 1.8; }
.back .foot { position: absolute; bottom: 20mm; left: 0; right: 0; text-align: center; font-size: 6.6pt; letter-spacing: .34em; color: #5f5953; direction: ltr; }

.empty-hint { color: #b9aea3; font-style: italic; }

@media print {
  @page { size: A4; margin: 0; }
  html, body { margin: 0 !important; padding: 0 !important; background: #fff !important; }
  .page { break-after: page; page-break-after: always; box-shadow: none !important; margin: 0 !important; }
  .page:last-child { break-after: auto; page-break-after: auto; }
  .empty-hint { display: none; }
}
