@font-face{font-family:'Almarai';src:url('fonts/Almarai-Regular.ttf');font-weight:400}
@font-face{font-family:'Almarai';src:url('fonts/Almarai-Bold.ttf');font-weight:700}
@font-face{font-family:'Almarai';src:url('fonts/Almarai-ExtraBold.ttf');font-weight:800}
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-Regular.ttf');font-weight:400}
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-Medium.ttf');font-weight:500}
@font-face{font-family:'Tajawal';src:url('fonts/Tajawal-Bold.ttf');font-weight:700}
@font-face{font-family:'Amiri';src:url('fonts/Amiri-Regular.ttf');font-weight:400}
@font-face{font-family:'Amiri';src:url('fonts/Amiri-Bold.ttf');font-weight:700}

:root{
  --forest:#0B3B29; --forest-2:#12513A; --forest-3:#0E4230;
  --sage:#8FBF9F; --sage-soft:#D8E8D6; --lime:#CDE8A8;
  --cream:#F7F3E7; --cream-2:#EFE9D8; --gold:#C9A227; --gold-soft:#E3C766;
  --ink:#12211B; --body:#3A4A41;
}

*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased}
html,body{background:#8a8a8a}
@page{size:297mm 420mm;margin:0}

.poster{
  position:relative;width:297mm;height:420mm;overflow:hidden;
  background:var(--cream);color:var(--ink);
  font-family:'Tajawal','Almarai',sans-serif;
  direction:rtl;
  display:flex;flex-direction:column;
}
/* soft paper texture + corner motifs */
.poster::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 88% 6%, rgba(143,191,159,.22), transparent 42%),
    radial-gradient(circle at 4% 96%, rgba(201,162,39,.14), transparent 38%);
}
.poster > *{flex:0 0 auto}
.topline{height:6mm;background:linear-gradient(90deg,var(--forest) 0%,var(--forest-2) 45%,var(--gold) 100%);position:relative;z-index:2}

/* ============ HEADER ============ */
.header{
  position:relative;z-index:2;padding:8mm 15mm 6mm;
  display:flex;align-items:flex-start;justify-content:space-between;gap:10mm;
  border-bottom:.5mm solid rgba(11,59,41,.16);
}
.brand{display:flex;align-items:center;gap:5mm}
.emblem{width:19mm;height:19mm;flex:0 0 auto}
.brand-text .country{font-size:8.5pt;letter-spacing:.06em;color:var(--forest-2);opacity:.85;font-weight:500}
.brand-text .school{
  font-family:'Almarai',sans-serif;font-weight:800;font-size:19pt;line-height:1.25;
  color:var(--forest);margin-top:1mm;
}
.brand-text .dept{font-size:9pt;color:var(--body);margin-top:1.6mm;font-weight:500}
.header-left{text-align:left;padding-top:2mm}
.badge-pill{
  display:inline-flex;align-items:center;gap:2mm;
  background:var(--forest);color:var(--cream);
  font-family:'Almarai',sans-serif;font-weight:700;font-size:9pt;
  padding:2.4mm 5mm;border-radius:20mm;letter-spacing:.01em;
}
.badge-pill .dot{width:2mm;height:2mm;border-radius:50%;background:var(--gold-soft)}
.header-left .year{font-family:'Almarai',sans-serif;font-weight:800;font-size:26pt;color:var(--forest);line-height:1;margin-top:3mm}
.header-left .year small{font-size:10pt;font-weight:700;color:var(--gold);display:block;margin-top:1mm;letter-spacing:.04em}

/* ============ HERO ============ */
.hero-wrap{position:relative;z-index:2;padding:7mm 15mm 0}
.hero{
  position:relative;border-radius:9mm;overflow:hidden;
  background:
    radial-gradient(circle at 92% 8%, rgba(143,191,159,.35), transparent 46%),
    linear-gradient(160deg,var(--forest-2) 0%,var(--forest) 58%,#082E1F 100%);
  color:var(--cream);padding:11mm 12mm 10mm;
  display:flex;align-items:center;gap:8mm;
  box-shadow:0 3mm 7mm rgba(11,59,41,.22);
}
.hero::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(247,243,231,.14) .35mm, transparent .35mm);
  background-size:5mm 5mm;opacity:.5;
}
.hero-copy{position:relative;z-index:2;flex:1 1 auto}
.eyebrow{
  display:inline-flex;align-items:center;gap:2.5mm;
  font-family:'Almarai',sans-serif;font-weight:700;font-size:10.5pt;
  color:var(--gold-soft);letter-spacing:.02em;margin-bottom:5mm;
}
.eyebrow::before{content:'';width:14mm;height:.5mm;background:var(--gold-soft);opacity:.75}
h1{
  font-family:'Almarai',sans-serif;font-weight:800;
  font-size:78pt;line-height:1.02;letter-spacing:-.01em;
  color:#FBF8EF;text-shadow:0 1mm 2mm rgba(0,0,0,.18);
}
h1 .thin{display:block;font-size:26pt;font-weight:400;color:var(--sage);letter-spacing:.01em;margin-top:3mm}
.tagline{
  font-family:'Almarai',sans-serif;font-weight:700;font-size:17pt;line-height:1.5;
  color:var(--lime);margin-top:6mm;
}
.lead{font-size:11pt;line-height:1.85;color:rgba(247,243,231,.86);margin-top:4mm;max-width:150mm;font-weight:400}
.hero-art{position:relative;z-index:2;width:78mm;flex:0 0 auto}
.hero-art svg{width:100%;height:auto;display:block}

/* ============ PILLARS ============ */
.pillars{position:relative;z-index:2;padding:9mm 15mm 0}
.section-head{display:flex;align-items:center;gap:5mm;margin-bottom:6mm}
.section-head h2{font-family:'Almarai',sans-serif;font-weight:800;font-size:17pt;color:var(--forest);white-space:nowrap}
.section-head .rule{flex:1 1 auto;height:.4mm;background:linear-gradient(90deg,rgba(11,59,41,.28),transparent)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:6mm}
.card{
  position:relative;background:#FFFDF6;border-radius:6mm;padding:9mm 9mm 8mm 9mm;
  border:.4mm solid rgba(11,59,41,.10);
  box-shadow:0 1.2mm 3mm rgba(11,59,41,.07);
  overflow:hidden;
}
.card::before{content:'';position:absolute;top:0;right:0;width:100%;height:1.6mm;background:linear-gradient(90deg,var(--forest),var(--sage))}
.card .num{
  position:absolute;left:8mm;top:6mm;
  font-family:'Almarai',sans-serif;font-weight:800;font-size:34pt;line-height:1;
  color:rgba(11,59,41,.09);
}
.card .icon{width:13mm;height:13mm;margin-bottom:4mm;color:var(--forest-2)}
.card .icon svg{width:100%;height:100%;display:block}
.card h3{font-family:'Almarai',sans-serif;font-weight:800;font-size:14.5pt;color:var(--forest);margin-bottom:2.5mm;line-height:1.35}
.card p{font-size:10.5pt;line-height:1.8;color:var(--body)}

/* ============ QUOTE ============ */
.quote-wrap{position:relative;z-index:2;padding:8mm 15mm 0}
.quote{
  position:relative;background:linear-gradient(120deg,var(--sage-soft),#E8F0DF);
  border-radius:7mm;padding:10mm 16mm 9mm;text-align:center;overflow:hidden;
  border:.4mm solid rgba(11,59,41,.10);
}
.quote .mark{position:absolute;font-family:'Amiri',serif;font-size:56pt;line-height:1;color:rgba(11,59,41,.16)}
.quote .mark.open{top:3mm;right:11mm}
.quote .mark.close{bottom:1mm;left:11mm}
.quote p{font-family:'Amiri',serif;font-weight:700;font-size:19pt;line-height:1.65;color:var(--forest)}
.quote span{display:block;font-family:'Tajawal',sans-serif;font-size:9.5pt;font-weight:500;color:var(--body);margin-top:3mm;letter-spacing:.02em}

/* ============ FOOTER ============ */
.footer{
  position:relative;z-index:2;margin-top:auto;
  background:linear-gradient(160deg,var(--forest-2),var(--forest));
  color:var(--cream);padding:8.5mm 15mm;display:flex;align-items:center;justify-content:space-between;gap:8mm;
}
.footer::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1.4mm;
  background:linear-gradient(90deg,var(--gold) 0%,var(--sage) 50%,var(--gold) 100%);
}
.student{display:flex;align-items:center;gap:6mm}
.student .avatar{
  width:20mm;height:20mm;border-radius:50%;flex:0 0 auto;
  background:rgba(247,243,231,.10);border:.6mm solid var(--gold-soft);
  display:grid;place-items:center;font-family:'Almarai',sans-serif;font-weight:800;font-size:15pt;color:var(--gold-soft);
}
.student .label{font-size:8.5pt;letter-spacing:.08em;color:var(--sage);font-weight:500}
.student .name{font-family:'Almarai',sans-serif;font-weight:800;font-size:17pt;line-height:1.3;margin-top:1mm}
.student .meta{font-size:10pt;color:rgba(247,243,231,.85);margin-top:1.5mm;font-weight:500}
.student .meta b{color:var(--gold-soft);font-weight:700}
.footer .left{text-align:left;font-size:9.5pt;line-height:1.9;color:rgba(247,243,231,.82)}
.footer .left b{font-family:'Almarai',sans-serif;color:var(--cream);font-weight:700;font-size:10.5pt}
.seal{
  width:26mm;height:26mm;border-radius:50%;flex:0 0 auto;
  border:.6mm dashed rgba(227,199,102,.75);
  display:grid;place-items:center;text-align:center;
  font-family:'Almarai',sans-serif;font-weight:700;font-size:6.6pt;line-height:1.5;color:var(--gold-soft);
  letter-spacing:.02em;padding:3mm;
}
.seal b{display:block;font-size:8.4pt;color:#FBF8EF;font-weight:800}
