/* Global Direction company profile — base stylesheet (shared by EN + AR editions). Fonts self-hosted in ./fonts/. */
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/poppins-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/poppins-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/poppins-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/poppins-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/poppins-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/tajawal-500-arabic.woff2') format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/tajawal-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/tajawal-700-arabic.woff2') format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/tajawal-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/tajawal-400-arabic.woff2') format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/tajawal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/tajawal-800-arabic.woff2') format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Tajawal';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/tajawal-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* =====================================================================
   GLOBAL D CO. — COMPANY PROFILE
   A4 landscape, 14 pages. Print with: File → Print → Save as PDF
   (margins: none, background graphics: on) or run build-pdf.sh.
   ===================================================================== */
:root{
  --purple:#6E2C91;
  --purple-deep:#4E1C6A;
  --orange:#F05A28;
  --lilac:#F6F0F6;
  --lilac-2:#EFE4F0;
  --gray:#5A5A5A;
  --gray-light:#9A9A9A;
  --rule:#E3DDE6;
  --white:#FFFFFF;
  --page-w:297mm;
  --page-h:210mm;
  --pad-x:16mm;
  --pad-top:13mm;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:#DADADA;-webkit-print-color-adjust:exact;print-color-adjust:exact}
body{
  font-family:'Poppins',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  color:var(--gray);
  font-size:10.5pt;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.ar{font-family:'Tajawal','Poppins',sans-serif;direction:rtl;unicode-bidi:isolate}

/* ---------- page canvas ---------- */
.page{
  position:relative;
  width:var(--page-w);
  height:var(--page-h);
  background:var(--white);
  overflow:hidden;
  margin:12mm auto;
  box-shadow:0 8px 40px rgba(0,0,0,.18);
  padding:var(--pad-top) var(--pad-x) 18mm;
  display:flex;flex-direction:column;
  page-break-after:always;
  break-after:page;
}
.page:last-child{page-break-after:auto;break-after:auto}

/* ---------- page furniture ---------- */
.eyebrow{
  display:inline-flex;align-items:center;gap:3mm;
  color:var(--orange);font-size:8.5pt;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;line-height:1;
}
.eyebrow::before{content:"";display:inline-block;width:2.4mm;height:2.4mm;background:var(--purple)}
.headline{
  color:var(--purple);font-weight:800;font-size:30pt;line-height:1.08;
  letter-spacing:-.015em;margin:4mm 0 0;
}
.headline .alt{color:var(--orange)}
.page-header{margin-bottom:8mm;flex:none}
.footer{
  position:absolute;left:var(--pad-x);right:var(--pad-x);bottom:8mm;
  display:flex;justify-content:space-between;align-items:center;
  font-size:8pt;color:var(--gray-light);letter-spacing:.06em;
  padding-top:2.5mm;border-top:.3mm solid var(--rule);
}
.footer .num{color:var(--purple);font-weight:700;font-size:9pt}
.footer .num::before{content:"";display:inline-block;width:1.8mm;height:1.8mm;background:var(--orange);margin-right:2mm;vertical-align:middle;position:relative;top:-.3mm}

/* watermark motif — Kufic-style geometric grid, corner-anchored, ~5% tint */
.wm{
  position:absolute;width:95mm;height:95mm;pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><g fill='none' stroke='%236E2C91' stroke-width='2'><path d='M4 4h16v16H4zM28 4h16v8H28zM28 20h8v24h-8zM4 28h16v16H4zM44 20v24h-8'/><path d='M12 12h4v4M36 12h4M12 36h4'/></g><rect x='40' y='40' width='4' height='4' fill='%23F05A28'/></svg>");
  background-size:12mm 12mm;
  opacity:.06;
  -webkit-mask-image:radial-gradient(circle at var(--mx,100%) var(--my,100%),#000 0%,#000 35%,transparent 72%);
  mask-image:radial-gradient(circle at var(--mx,100%) var(--my,100%),#000 0%,#000 35%,transparent 72%);
}
.wm.tr{top:0;right:0;--mx:100%;--my:0%}
.wm.br{bottom:0;right:0;--mx:100%;--my:100%}
.wm.bl{bottom:0;left:0;--mx:0%;--my:100%}
.wm.tl{top:0;left:0;--mx:0%;--my:0%}
.wm.light{opacity:.09;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><g fill='none' stroke='%23FFFFFF' stroke-width='2'><path d='M4 4h16v16H4zM28 4h16v8H28zM28 20h8v24h-8zM4 28h16v16H4zM44 20v24h-8'/><path d='M12 12h4v4M36 12h4M12 36h4'/></g><rect x='40' y='40' width='4' height='4' fill='%23F05A28'/></svg>")}

/* ---------- logo ---------- */
.logo{display:flex;align-items:center;gap:3.2mm;text-decoration:none}
.logo .mark{width:12mm;height:12mm;flex:none}
.logo .word{line-height:1;color:var(--purple);font-weight:800;font-size:15pt;letter-spacing:-.02em}
.logo .word span{color:var(--orange)}
.logo .tag{display:block;color:var(--gray-light);font-size:6.5pt;font-weight:500;letter-spacing:.2em;text-transform:uppercase;margin-top:1.4mm}
.logo.on-dark .word{color:#fff}
.logo.on-dark .tag{color:rgba(255,255,255,.65)}

/* ---------- shared components ---------- */
.two-col{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:14mm;align-items:stretch}
.lead{font-size:12pt;line-height:1.75;padding-top:1mm}
.lead p+p{margin-top:4mm}
.lead strong{color:var(--purple);font-weight:600}

.card-lilac{
  background:var(--lilac);border-left:1.8mm solid var(--orange);
  padding:6mm 7mm;position:relative;
}
.card-purple{
  background:var(--purple);border-top:1.8mm solid var(--orange);
  color:#fff;padding:7mm 8mm;position:relative;overflow:hidden;
}
.card-purple .label{color:var(--orange);font-size:8.5pt;letter-spacing:.22em;text-transform:uppercase;font-weight:600}

.stats{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:6mm}
.stat{display:flex;flex-direction:column;justify-content:center}
.stat .n{display:block;color:var(--purple);font-size:46pt;font-weight:800;line-height:1;letter-spacing:-.03em}
.stat .n sup{font-size:20pt;color:var(--orange);vertical-align:top;top:.6mm;position:relative}
.stat .l{display:block;margin-top:3mm;font-size:10.5pt;color:var(--gray);font-weight:500;letter-spacing:.02em}

.medallion{
  width:16mm;height:16mm;border-radius:50%;background:#fff;
  display:flex;align-items:center;justify-content:center;flex:none;
  box-shadow:0 1mm 3mm rgba(0,0,0,.15);
}
.medallion svg{width:8.5mm;height:8.5mm;stroke:var(--orange);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.medallion.purple{background:var(--purple);box-shadow:none}

.todo{background:#FFF3B0;border-bottom:1px dashed #C9A400}

/* ---------- COVER ---------- */
.cover{padding:0;display:grid;grid-template-columns:57% 43%}
.cover .left{padding:16mm 0 14mm 18mm;display:flex;flex-direction:column;position:relative}
.cover .site{color:var(--orange);font-size:8.5pt;font-weight:600;letter-spacing:.3em;text-transform:uppercase;margin-top:4mm;margin-left:15.2mm}
.cover .rule{width:26mm;height:1.6mm;background:var(--orange);margin:24mm 0 8mm}
.cover h1{font-size:64pt;line-height:.98;font-weight:800;letter-spacing:-.03em;color:var(--purple)}
.cover h1 span{display:block;color:var(--orange)}
.cover .sub{font-size:12pt;line-height:1.6;max-width:110mm;margin-top:8mm;color:var(--gray)}
.cover .strip{
  margin-top:auto;display:flex;gap:0;align-items:center;font-size:8pt;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--purple)
}
.cover .strip span+span::before{content:"";display:inline-block;width:1.6mm;height:1.6mm;background:var(--orange);margin:0 4mm;vertical-align:middle;position:relative;top:-.4mm}
.cover .right{
  background:var(--purple);position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:flex-end;padding:14mm 14mm 14mm 16mm;
}
.cover .right .grid{
  position:absolute;inset:0;opacity:.14;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><g fill='none' stroke='%23FFFFFF' stroke-width='2'><path d='M4 4h16v16H4zM28 4h16v8H28zM28 20h8v24h-8zM4 28h16v16H4zM44 20v24h-8'/><path d='M12 12h4v4M36 12h4M12 36h4'/></g><rect x='40' y='40' width='4' height='4' fill='%23F05A28'/></svg>");
  background-size:14mm 14mm;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 55%,transparent 100%);
  mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 55%,transparent 100%);
}
.cover .right .blob{position:absolute;right:-30mm;top:-30mm;width:95mm;height:95mm;background:var(--orange);opacity:.95;transform:rotate(12deg)}
.cover .right .blob2{position:absolute;right:26mm;top:44mm;width:22mm;height:22mm;background:#fff;opacity:.9}
.cover .services{position:relative;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:3.5mm 6mm}
.cover .services li{color:#fff;font-size:10pt;font-weight:500;display:flex;align-items:center;gap:3mm}
.cover .services li::before{content:"";width:2mm;height:2mm;background:var(--orange);flex:none}
.cover .services-title{position:relative;color:rgba(255,255,255,.7);font-size:8pt;letter-spacing:.25em;text-transform:uppercase;font-weight:600;margin-bottom:6mm}
.v2030{display:flex;align-items:center;gap:3mm;position:relative}
.v2030 .box{width:11mm;height:11mm;border:.5mm solid currentColor;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:8pt;letter-spacing:-.02em;line-height:1;flex:none}
.v2030 .txt{font-size:7pt;letter-spacing:.14em;text-transform:uppercase;line-height:1.35;font-weight:500}
.v2030 .txt b{display:block;font-size:8.5pt;letter-spacing:.06em}
.cover .v2030{color:#fff;margin-top:12mm;justify-content:flex-end}

/* ---------- STORY / TIMELINE ---------- */
.timeline{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;column-gap:16mm;row-gap:0}
.tl{display:grid;grid-template-columns:19mm 1fr;gap:5mm;padding:3mm 0;border-bottom:.3mm solid var(--rule);align-items:center}
.tl .y{color:var(--orange);font-weight:800;font-size:15pt;line-height:1.15;letter-spacing:-.02em}
.tl .t{color:var(--purple);font-weight:700;font-size:11pt;line-height:1.3}
.tl .d{font-size:9.5pt;line-height:1.5;margin-top:.8mm}
.tl:nth-last-child(-n+2){border-bottom:none}

/* ---------- VISION & MISSION ---------- */
.vm{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:10mm;margin-top:2mm}
.vm .card-purple{padding:10mm 11mm;display:flex;flex-direction:column;justify-content:center}
.vm .card-purple p{font-size:16.5pt;font-weight:500;line-height:1.45;margin-top:6mm;color:#fff;letter-spacing:-.005em}
.vm .card-purple .wm{width:70mm;height:70mm}
.single{flex:none;margin-top:8mm;display:grid;grid-template-columns:auto 1fr;gap:8mm;align-items:center;padding:6mm 8mm;background:var(--lilac);border-left:1.8mm solid var(--orange)}
.single .k{color:var(--purple);font-weight:800;font-size:17pt;line-height:1;letter-spacing:-.02em;white-space:nowrap}
.single .k span{color:var(--orange)}
.single p{font-size:10.5pt;line-height:1.55}

/* ---------- WHY US ---------- */
.why{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:6mm}
.why .card-lilac{padding:7mm 8mm;display:flex;flex-direction:column;justify-content:center}
.why .n{color:var(--orange);font-weight:800;font-size:18pt;line-height:1;letter-spacing:-.02em}
.why h3{color:var(--purple);font-size:12pt;font-weight:700;line-height:1.3;margin:3.5mm 0 2.5mm}
.why p{font-size:10pt;line-height:1.6}

/* ---------- SERVICE OVERVIEW ---------- */
.svc-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:6mm}
.svc-grid .card-purple{padding:8mm 8mm 7mm;display:flex;flex-direction:column;justify-content:center}
.svc-grid .num{position:absolute;right:6mm;top:5mm;color:rgba(255,255,255,.28);font-weight:800;font-size:16pt;line-height:1}
.svc-grid h3{color:var(--orange);font-size:12.5pt;font-weight:700;margin-top:5mm;line-height:1.25}
.svc-grid p{color:#fff;font-size:10pt;line-height:1.55;margin-top:2mm;opacity:.95}

/* Seven service cards: four columns, with the seventh spanning two so both rows fill
   exactly — a third row would cost the other cards the height they need. */
.svc-grid.svc-grid--7{grid-template-columns:repeat(4,1fr)}
.svc-grid.svc-grid--7 > :last-child{grid-column:span 2}

/* ---------- AI PAGE ---------- */
/* The two letters carry the page: a display-size lockup beside the headline, and the
   same word again, enormous and faint, sitting behind the cards. */
.ai-lockup{flex:none;display:grid;grid-template-columns:auto 1fr;gap:9mm;align-items:center;position:relative;z-index:1}
.ai-lockup .page-header{margin-bottom:0}
.ai-word{
  font-weight:800;font-size:160pt;line-height:.94;
  letter-spacing:-.05em;color:var(--purple);
}
.ai-word i{font-style:normal;color:var(--orange)}
/* The bilingual edition prints every card twice, so the letters give height back. */
body.bi .ai-word{font-size:104pt}
.ai-page .why{position:relative;z-index:1}

/* ---------- SERVICE DETAIL ---------- */
.svc-head{flex:none;display:grid;grid-template-columns:auto 1fr;gap:7mm;align-items:center;margin-bottom:5mm}
.svc-head .headline{margin-top:2.5mm;font-size:24pt}
.svc-intro{font-size:10.5pt;line-height:1.6;max-width:215mm;margin-bottom:6mm;flex:none}
.svc-rows{
  flex:1;min-height:0;display:grid;grid-template-columns:56mm 1fr;
  grid-auto-rows:1fr;gap:2.2mm;align-items:stretch;
}
.svc-rows .k{
  display:flex;align-items:center;
  color:var(--purple);font-weight:700;font-size:10.5pt;line-height:1.3;
  padding:2.5mm 5mm;border-left:1.6mm solid var(--purple);background:var(--lilac-2);
}
.svc-rows .v{
  display:flex;align-items:center;
  background:var(--lilac);padding:2.5mm 6mm;font-size:9.8pt;line-height:1.6;color:var(--gray)
}
.svc-rows .v .sep{color:var(--orange);font-weight:800;margin:0 2mm}
.svc-rows.dense .v{font-size:9.4pt;line-height:1.55}
.svc-close{margin-top:6mm;flex:none;font-size:10.5pt;line-height:1.5;display:flex;gap:4mm;align-items:flex-start}
.svc-close::before{content:"";flex:none;width:6mm;height:1.6mm;background:var(--orange);margin-top:3mm}
.svc-close b{color:var(--orange);font-weight:700}
.svc-close .stack{color:var(--gray-light);font-size:8.5pt;margin-top:1.5mm;letter-spacing:.02em}
.host-stats{flex:none;display:grid;grid-template-columns:repeat(3,1fr);gap:5mm;margin-top:6mm}
.host-stats .s{background:var(--purple);color:#fff;padding:3.5mm 6mm;border-top:1.4mm solid var(--orange);display:flex;align-items:baseline;gap:4mm}
.host-stats .s .n{font-size:17pt;font-weight:800;line-height:1;letter-spacing:-.02em;color:#fff}
.host-stats .s .l{font-size:8.5pt;line-height:1.3;opacity:.9}

/* ---------- CLIENTS ---------- */
.sectors{flex:1;min-height:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6mm}
.sectors .card-lilac{padding:6mm 6mm}
.sectors h3{color:var(--purple);font-size:11.5pt;font-weight:700;line-height:1.3}
.sectors .sub{color:var(--orange);font-size:8pt;letter-spacing:.16em;text-transform:uppercase;font-weight:600;margin-top:1mm}
.sectors ul{list-style:none;margin-top:4mm}
.sectors li{font-size:9.2pt;line-height:1.45;padding:1.4mm 0 1.4mm 5mm;position:relative;border-top:.3mm solid rgba(110,44,145,.12)}
.sectors li::before{content:"";position:absolute;left:0;top:3.2mm;width:1.8mm;height:1.8mm;background:var(--orange)}
.partners{flex:none;margin-top:8mm;display:grid;grid-template-columns:auto 1fr;gap:8mm;align-items:center}
.partners .lbl{color:var(--purple);font-size:8pt;letter-spacing:.22em;text-transform:uppercase;font-weight:700;border-right:.4mm solid var(--orange);padding-right:8mm;line-height:1.4}
.partners ul{list-style:none;display:flex;flex-wrap:wrap;gap:2.5mm 8mm}
.partners li{color:#7C7C7C;font-weight:700;font-size:11pt;letter-spacing:-.01em}
.cert{flex:none;margin-top:6mm;display:flex;gap:6mm;font-size:8.5pt;color:var(--gray)}
.cert span b{color:var(--purple)}

/* ---------- CONTACT ---------- */
.contact{padding:0;display:grid;grid-template-columns:52% 48%}
.contact .l{padding:16mm 14mm 14mm 18mm;display:flex;flex-direction:column;position:relative}
.contact .l .headline{font-size:34pt;margin-top:5mm}
.contact .l .sub{font-size:11pt;line-height:1.65;max-width:120mm;margin-top:6mm}
.contact .r{background:var(--purple);color:#fff;padding:18mm 18mm 14mm 16mm;display:flex;flex-direction:column;position:relative;overflow:hidden;border-left:2mm solid var(--orange)}
.contact dl{display:grid;grid-template-columns:auto 1fr;gap:6.5mm 10mm;position:relative;margin:auto 0}
.contact dt{color:var(--orange);font-size:8pt;font-weight:700;letter-spacing:.22em;text-transform:uppercase;line-height:1.5;padding-top:.6mm}
.contact dd{font-size:14pt;font-weight:600;line-height:1.35;letter-spacing:-.01em}
.contact dd small{display:block;font-size:9pt;font-weight:400;opacity:.75;letter-spacing:0}
.steps{margin-top:auto;margin-bottom:8mm;display:grid;grid-template-columns:repeat(3,1fr);gap:4mm;position:relative}
.steps .card-lilac{padding:4.5mm 5mm}
.steps .n{color:var(--orange);font-weight:800;font-size:13pt;line-height:1}
.steps h4{color:var(--purple);font-size:9.5pt;font-weight:700;line-height:1.3;margin-top:2mm}
.steps p{font-size:8.5pt;line-height:1.45;margin-top:1mm}
.contact .legal{font-size:8pt;line-height:1.6;color:var(--gray-light);letter-spacing:.04em}
.contact .legal b{color:var(--purple);font-weight:700}
.contact .r .v2030{margin-top:auto;justify-content:flex-end;color:#fff}

/* ---------- screen-only toolbar ---------- */
.toolbar{
  position:fixed;left:50%;transform:translateX(-50%);bottom:14px;z-index:99;
  background:var(--purple);color:#fff;font-size:12px;padding:8px 14px;border-radius:999px;
  display:flex;gap:14px;align-items:center;box-shadow:0 6px 24px rgba(0,0,0,.25)
}
.toolbar button{background:var(--orange);color:#fff;border:0;border-radius:999px;padding:6px 14px;font:inherit;font-weight:600;cursor:pointer}
.toolbar kbd{opacity:.75}

/* ---------- PRINT ---------- */
@page{size:A4 landscape;margin:0}
@media print{
  html,body{background:#fff}
  .page{margin:0;box-shadow:none;page-break-after:always;break-after:page}
  .page:last-child{page-break-after:auto}
  .toolbar{display:none!important}
  .todo{background:transparent;border-bottom:0}
}

/* ---------- CMS edition additions (styles that were inline attributes in the static HTML) ---------- */
.lead .reg{font-size:9.5pt;color:var(--gray-light);margin-top:8mm;line-height:1.55}
.lead .reg b{color:var(--gray);font-weight:600}
.lead .reg .ar{color:var(--gray);font-weight:700}
.svc-close .stack{display:block}
.contact .l > .eyebrow-contact{margin-top:16mm}
.contact .legal .legal-alt{font-size:9pt;color:var(--gray)}
.contact .r .wm-contact{width:120mm;height:120mm}
.toolbar .tb-link{color:#fff;opacity:.85;text-decoration:underline;text-underline-offset:2px}
.toolbar .tb-link:hover{opacity:1}

/* ---------- Vision 2030: official logo on a white card ---------- */
.v2030 .logo-card{background:#fff;border-radius:2mm;padding:2.2mm 3mm;flex:none;display:flex;align-items:center;box-shadow:0 1mm 3mm rgba(0,0,0,.12)}
.v2030 .logo-card img{display:block;height:20mm;width:auto}
.v2030 .txt{font-size:7pt;letter-spacing:.14em;text-transform:uppercase;line-height:1.35;font-weight:600;max-width:32mm;text-align:end}
