@page { size:A4; margin:0; }
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
body { font-family:'Heebo',sans-serif; background:#dce4e8; color:#1f2d3a; direction:rtl; }

.page {
  width:210mm; height:297mm; background:#fff;
  margin:0 auto 40px; overflow:hidden;
  display:flex; flex-direction:column;
  box-shadow:0 2px 4px rgba(0,0,0,.07),0 8px 24px rgba(0,0,0,.13),0 20px 50px rgba(0,0,0,.10);
}

/* Header */
.header {
  background:linear-gradient(160deg,#1B3461 0%,#1D4A8A 30%,#2B5BA8 65%,#3A72C0 100%);
  color:#fff; padding:14px 26px; font-size:20px; font-weight:800;
  flex-shrink:0; display:flex; align-items:center; gap:10px;
  border-bottom:4px solid #F0B429;
}
.header .phase {
  font-size:11px; font-weight:600; background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.4); color:#fff;
  padding:3px 10px; border-radius:20px; white-space:nowrap;
  margin-right:auto;
}

/* Body */
.body { flex:1; padding:18px 26px 14px; overflow:hidden; display:flex; flex-direction:column; gap:11px; }

/* Cards */
.card { background:#f2f8fb; border-right:5px solid #2B5BA8; padding:12px 15px; border-radius:8px; font-size:15px; line-height:1.75; text-align:justify; text-align-last:right; }
.card strong { color:#1B3461; }
.card-gold  { border-right-color:#F0B429; background:#fffbf0; text-align:justify; text-align-last:right; }
.card-green { border-right-color:#2D9B6F; background:#f0faf5; }
.card-red   { border-right-color:#c0392b; background:#fdf5f5; }
.card-purple{ border-right-color:#7B4FA6; background:#f8f3fd; }

/* Grid */
.grid2 { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.grid3 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; }
.grid4 { display:grid; grid-template-columns:1fr 1fr 1fr 1fr; gap:10px; }

/* Section title */
.sec  { font-size:16px; font-weight:800; color:#1B3461; border-bottom:2px solid #d0e4f0; padding-bottom:5px; }
.sec-sm { font-size:14px; font-weight:700; color:#2B5BA8; }

/* Text */
.txt { font-size:15px; line-height:1.85; text-align:justify; text-align-last:right; color:#1f2d3a; }

/* Bubble */
.bubble { background:#EBF2FA; border-right:5px solid #2B5BA8; border-radius:10px; padding:12px 15px; font-size:15px; line-height:1.8; }

/* Important */
.important { background:#FFF8E1; border:1.5px solid #F0C040; border-radius:10px; padding:12px 15px; font-size:14px; line-height:1.8; color:#4a3000; }
.important .imp-t { font-size:14px; font-weight:800; color:#8a5a00; margin-bottom:5px; }

/* Steps */
.step-row { display:flex; align-items:flex-start; gap:12px; padding:9px 0; border-bottom:1px dashed #d0e4f0; font-size:15px; }
.step-row:last-child { border-bottom:none; }
.step-num { width:30px; height:30px; border-radius:50%; background:#2B5BA8; color:#fff; font-size:14px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.step-letter { width:30px; height:30px; border-radius:50%; background:#F0B429; color:#1B3461; font-size:14px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; }

/* Tag */
.tag { display:inline-flex; align-items:center; gap:5px; background:#EBF2FA; border:1px solid #c0d8ee; border-radius:20px; padding:3px 11px; font-size:12px; font-weight:700; color:#1B3461; }
.tag-gold { background:#fffbf0; border-color:#F0B429; color:#7a5a00; }

/* Box highlight */
.highlight-box {
  background:linear-gradient(135deg,#1B3461,#2B5BA8);
  border-radius:14px; padding:18px 20px; color:#fff; text-align:center;
  font-size:17px; font-weight:800; line-height:1.5;
}

/* Letter box */
.letter-box {
  width:48px; height:48px; border-radius:50%;
  background:linear-gradient(135deg,#2B5BA8,#1B3461);
  color:#fff; font-size:20px; font-weight:900;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}

/* TOC item */
.toc-item { display:flex; align-items:center; gap:12px; padding:9px 14px; border-bottom:1px solid #edf4f8; font-size:15px; font-weight:600; }
.toc-item:last-child { border-bottom:none; }
.toc-link { color:inherit; text-decoration:none; display:block; }
.toc-link:hover { text-decoration:underline; }

/* Phase badge */
.phase-section { font-size:12px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; color:#3a5060; margin-bottom:6px; padding-bottom:4px; border-bottom:1px solid #e0edf5; }

/* Footer */
.pf { background:#f0f5fb; border-top:2px solid #d0e4f0; padding:8px 26px; display:flex; align-items:center; justify-content:space-between; gap:14px; flex-shrink:0; }
.pf-org { font-size:11px; font-weight:700; color:#1B3461; white-space:nowrap; }
.pf-contacts { display:flex; align-items:center; gap:10px; }
.pf-item { display:flex; align-items:center; gap:5px; font-size:10.5px; color:#1B3461; white-space:nowrap; font-weight:600; }
.ci { width:22px; height:22px; border-radius:50%; background:linear-gradient(135deg,#2B5BA8,#1B3461); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.ci svg { width:11px; height:11px; stroke:#fff; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }


    .sense-row { display:flex; align-items:center; gap:14px; padding:10px 14px; border-bottom:1px dashed #d0e4f0; font-size:15px; }
    .sense-row:last-child { border-bottom:none; }
    .sense-num { width:34px; height:34px; border-radius:50%; background:#2B5BA8; color:#fff; font-size:17px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
    .steps { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
    .step { background:#EBF2FA; border-radius:10px; padding:13px; }
    .step .sn { font-size:11px; font-weight:800; color:#2B5BA8; letter-spacing:.5px; text-transform:uppercase; margin-bottom:5px; }
    .step p { font-size:15px; line-height:1.7; text-align:justify; text-align-last:right; }
    .phone-card { background:#f2f8fb; border:1.5px solid #d0e4f0; border-radius:12px; padding:16px; text-align:center; }
    .phone-card .pl { font-size:14px; color:#2d3e4a; margin-bottom:4px; }
    .phone-card .pn { font-size:22px; font-weight:800; color:#1B3461; direction:ltr; }
    .phone-em { background:#1B3461; border:none; }
    .phone-em .pl { color:#fff; }
    .phone-em .pn { color:#fff; font-size:30px; }
    /* Print button */
.print-btn { position:fixed; bottom:28px; left:28px; background:linear-gradient(135deg,#1B3461,#2B5BA8); color:#fff; border:none; border-radius:50px; padding:12px 22px; font-size:14px; font-weight:700; font-family:'Heebo',sans-serif; cursor:pointer; display:flex; align-items:center; gap:8px; box-shadow:0 4px 16px rgba(27,52,97,.35); z-index:9999; transition:transform .15s; }
.print-btn:hover { transform:translateY(-2px); }
.print-btn svg { width:17px; height:17px; stroke:#fff; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

@media print {
  body { background:#fff; }
  .page { margin:0 !important; width:210mm !important; height:297mm !important; overflow:hidden; box-shadow:none; page-break-after:always; break-after:page; display:flex; flex-direction:column; }
  .page:last-of-type { page-break-after:avoid; break-after:avoid; }
  .body { overflow:hidden; }
  .print-btn { display:none !important; }
  * { -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }
}


/* ══ MOBILE RESPONSIVE ══ */
@media screen and (max-width: 768px) {
  body { background:#fff; }

  .page {
    width:100% !important;
    height:auto !important;
    min-height:unset !important;
    margin:0 0 16px 0 !important;
    box-shadow:0 2px 8px rgba(0,0,0,.10);
    overflow:visible;
  }

  .body {
    padding:14px 16px 12px;
    overflow:visible;
  }

  .header {
    padding:12px 16px;
    font-size:16px;
    flex-wrap:wrap;
    gap:6px;
  }

  .header .phase {
    font-size:10px;
    padding:2px 8px;
  }

  .grid2 { grid-template-columns:1fr !important; }
  .grid3 { grid-template-columns:1fr !important; }
  .grid4 { grid-template-columns:1fr 1fr !important; }

  .steps { grid-template-columns:1fr !important; }
  .step { grid-column:auto !important; }

  .card { font-size:14px; }
  .txt  { font-size:14px; }

  .pf {
    padding:8px 14px;
    flex-wrap:wrap;
    gap:6px;
  }
  .pf-contacts { flex-wrap:wrap; gap:6px; }

  /* Cover page adjustments */
  .page:first-of-type > div:nth-child(3) {
    padding:12px 16px;
  }
  .page:first-of-type > div:nth-child(3) > div {
    padding:24px 20px;
  }
  .page:first-of-type > div:nth-child(3) > div > div:first-child {
    font-size:32px !important;
  }

  /* TOC adjustments */
  .toc-item { font-size:13px; padding:7px 12px; }

  /* Print button hidden on mobile */
  .print-btn { display:none; }
}