@font-face{font-family:"IBM Plex Sans Arabic";src:url("/assets/fonts/plex-ar-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans Arabic";src:url("/assets/fonts/plex-ar-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans Arabic";src:url("/assets/fonts/plex-ar-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans Arabic";src:url("/assets/fonts/plex-ar-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/assets/fonts/plex-la-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/assets/fonts/plex-la-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --brand-primary:#183f86;
  --brand-secondary:#0788c9;
  --brand-accent:#36a6c8;
  --bg-primary:#edf3f8;
  --bg-secondary:#f5f8fb;
  --surface:#ffffff;
  --surface-elevated:#ffffff;
  --text-primary:#142033;
  --text-secondary:#4f6278;
  --text-muted:#7b8da1;
  --border:#d8e4ee;
  --success:#237a5a;
  --warning:#a66a14;
  --danger:#b7443e;
  --evidence:#355f9f;
  --ink-blue:#0c315f;
  --pale-blue:#edf6fc;
  --pale-cyan:#eaf8fb;
  --pale-green:#edf8f3;
  --pale-amber:#fff8e9;
  --space-xs:.5rem;
  --space-sm:.8rem;
  --space-md:1.25rem;
  --space-lg:2rem;
  --space-xl:3rem;
  --space-2xl:4.5rem;
  --radius-sm:8px;
  --radius-md:14px;
  --radius-lg:22px;
  --radius-xl:32px;
  --shadow-sm:0 8px 24px rgba(22,54,90,.07);
  --shadow-lg:0 28px 70px rgba(19,47,79,.14);
  --page-width:210mm;
  --page-height:297mm;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--bg-primary);color:var(--text-primary);font-family:"IBM Plex Sans Arabic",Tahoma,Arial,sans-serif;font-size:16px;line-height:1.75;text-rendering:optimizeLegibility;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(27,72,123,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(27,72,123,.025) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 75%)}
a{color:inherit}
img,svg{max-width:100%}
.skip-link{position:fixed;z-index:1000;inset-block-start:10px;inset-inline-start:10px;transform:translateY(-180%);background:#fff;color:var(--brand-primary);padding:10px 16px;border-radius:10px;font-weight:700}
.skip-link:focus{transform:none}

.guide-toolbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;min-height:70px;padding:10px clamp(16px,3vw,42px);background:rgba(255,255,255,.94);border-bottom:1px solid rgba(171,193,213,.68);backdrop-filter:blur(16px);box-shadow:0 7px 22px rgba(19,48,80,.05)}
.toolbar-brand{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none}
.toolbar-brand img{width:94px;height:34px;object-fit:contain}
.toolbar-brand span{display:grid;line-height:1.35}
.toolbar-brand strong{font-size:.92rem}
.toolbar-brand small{color:var(--text-muted);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.toolbar-progress{display:grid;grid-template-columns:auto minmax(130px,240px) auto;align-items:center;gap:10px;color:var(--text-muted);font-size:.76rem;font-weight:600}
.toolbar-progress [data-guide-progress-label],.page-footer .footer-number{direction:ltr;unicode-bidi:isolate}
.progress-track{height:5px;background:#dfe9f1;border-radius:999px;overflow:hidden}
.progress-track span{display:block;width:1%;height:100%;border-radius:inherit;background:var(--brand-secondary);transition:width .25s ease}
.toolbar-actions{display:flex;justify-content:flex-start;gap:8px}
.tool-button,.tool-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--ink-blue);font:inherit;font-size:.84rem;font-weight:700;text-decoration:none;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.tool-button:hover,.tool-link:hover{border-color:#9bbbd5;background:#f4f9fd;transform:translateY(-1px)}
.tool-link.primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}
.tool-button:focus-visible,.tool-link:focus-visible,.index-link:focus-visible{outline:3px solid rgba(7,136,201,.28);outline-offset:2px}
.mobile-index-toggle{display:none}

.guide-layout{position:relative;display:grid;grid-template-columns:minmax(220px,270px) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:start;max-width:1500px;margin:0 auto;padding:28px clamp(16px,3vw,42px) 80px}
.guide-index{position:sticky;top:94px;max-height:calc(100vh - 118px);overflow:auto;background:rgba(255,255,255,.88);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow-sm);scrollbar-width:thin}
.index-label{display:block;direction:ltr;unicode-bidi:isolate;text-align:left;color:var(--brand-secondary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.07em;margin-bottom:4px}
.guide-index h2{font-size:1.12rem;margin:0 0 16px}
.index-nav{display:grid;gap:6px}
.index-link{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:10px;border-radius:10px;color:var(--text-secondary);font-size:.79rem;font-weight:600;text-decoration:none;transition:background .2s ease,color .2s ease}
.index-link span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#edf4fa;color:var(--brand-primary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:.68rem}
.index-link:hover,.index-link.active{background:var(--pale-blue);color:var(--ink-blue)}
.index-link.active span{background:var(--brand-secondary);color:#fff}
.index-note{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--border);color:var(--text-muted);font-size:.72rem}

.guide-document{min-width:0;display:grid;gap:32px;justify-items:center}
.page{position:relative;width:min(100%,var(--page-width));min-height:var(--page-height);padding:15mm 16mm 17mm;background:var(--surface);border:1px solid rgba(205,219,231,.8);border-radius:4px;box-shadow:var(--shadow-lg);overflow:hidden;isolation:isolate;scroll-margin-top:94px}
.page::before{content:"";position:absolute;z-index:-1;inset-inline-start:-70mm;inset-block-start:-75mm;width:150mm;height:150mm;border-radius:50%;border:1px solid rgba(39,111,176,.055)}
.page::after{content:"";position:absolute;z-index:-1;inset-inline-end:-26mm;inset-block-end:-22mm;width:75mm;height:75mm;background:radial-gradient(circle,rgba(67,165,199,.07),transparent 68%)}
.page[data-density="dense"]{padding-top:13mm}
.page[data-density="dense"] p,.page[data-density="dense"] li{font-size:9.75pt;line-height:1.62}
.page[data-density="dense"] .card{padding:3.6mm}
.page[data-density="extra"]{padding-top:11.5mm;padding-bottom:15mm}
.page[data-density="extra"] p,.page[data-density="extra"] li{font-size:9.1pt;line-height:1.52}
.page[data-density="extra"] h1{font-size:23pt;margin-bottom:3.5mm}
.page[data-density="extra"] .card{padding:3mm}

.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:12mm;padding-bottom:3mm;margin-bottom:6mm;border-bottom:1px solid var(--border)}
.page-brand{display:flex;align-items:center;gap:12px;min-width:0}
.page-brand .labiba-mark{width:77px;height:31px;object-fit:contain}
.page-brand .brand-separator{width:1px;height:24px;background:var(--border)}
.page-brand .majal-mark{width:92px;height:34px;object-fit:contain}
.page-chapter{color:var(--text-muted);font-size:8.4pt;font-weight:600;text-align:right;max-width:68mm}
.page-overline{display:flex;align-items:center;gap:3mm;margin-bottom:3mm;color:var(--brand-secondary);font-size:8.7pt;font-weight:700}
.page-overline::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand-secondary);box-shadow:0 0 0 5px rgba(7,136,201,.09)}
.page-overline .chapter-line{display:inline-flex;align-items:baseline;gap:.35em;white-space:nowrap}
.page-overline b{font-family:inherit;font-size:8pt;letter-spacing:0}
.page-footer{position:absolute;inset-inline:16mm;inset-block-end:6mm;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding-top:2.5mm;border-top:1px solid var(--border);color:var(--text-muted);font-size:7.6pt}
.page-footer .footer-guide{justify-self:start;text-align:start}
.page-footer .footer-number{justify-self:end;display:grid;place-items:center;width:9mm;height:9mm;border-radius:50%;background:var(--ink-blue);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:7pt;font-weight:600}

h1,h2,h3,p{overflow-wrap:anywhere}
h1{margin:0 0 5mm;color:var(--text-primary);font-size:28pt;line-height:1.25;font-weight:700;letter-spacing:-.035em;text-wrap:balance}
h2{margin:5mm 0 2.5mm;color:var(--ink-blue);font-size:16.5pt;line-height:1.42;font-weight:700;text-wrap:balance}
h3{margin:0 0 1.8mm;color:var(--text-primary);font-size:11.7pt;line-height:1.48;font-weight:700}
p{margin:0 0 3.4mm;color:var(--text-secondary);font-size:10.25pt;line-height:1.72}
.lead{max-width:170mm;margin:0 0 6mm;color:#334b65;font-size:13.3pt;line-height:1.75;font-weight:500}
small,.caption{color:var(--text-muted)}
strong,b{font-weight:700}
[dir="ltr"],.ltr{font-family:"IBM Plex Sans",Arial,sans-serif;unicode-bidi:isolate}
ul,ol{margin:0;padding:0 5mm 0 0}
li{margin-bottom:1.8mm;color:var(--text-secondary);font-size:10pt;line-height:1.65}
li::marker{color:var(--brand-secondary)}

.grid2,.grid3,.grid4{display:grid;gap:4mm;margin:4mm 0}
.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{position:relative;padding:4.6mm;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 5px 15px rgba(21,56,94,.035)}
.card::before{content:"";position:absolute;inset-inline-start:0;inset-block:4mm;width:3px;border-radius:0 4px 4px 0;background:#bdd4e6}
.card.soft{background:var(--bg-secondary)}
.card.accent::before{background:var(--brand-secondary)}
.card.warn{background:var(--pale-amber)}
.card.warn::before{background:var(--warning)}
.card p{font-size:9.55pt;margin:0}
.callout{position:relative;margin:5mm 0;padding:4.5mm 5.5mm;border:1px solid #cfe0ec;border-radius:var(--radius-md);background:var(--pale-blue)}
.callout::before{content:"";position:absolute;inset-inline-start:0;inset-block:4mm;width:4px;border-radius:0 4px 4px 0;background:var(--brand-secondary)}
.callout.gold{border-color:#ead7ac;background:var(--pale-amber)}
.callout.gold::before{background:var(--warning)}
.callout.blue{background:#eef4fb}
.callout b{display:block;margin-bottom:1mm;color:var(--ink-blue)}
.callout span{color:var(--text-secondary);font-size:9.7pt}
.quote{position:relative;margin:5mm 0;padding:5mm 8mm 5mm 6mm;border:1px solid #d3e3ef;border-radius:var(--radius-md);background:#f5f9fc}
.quote::before{content:"“";position:absolute;inset-inline-start:5mm;top:1mm;color:#c4d9e9;font-size:28pt;font-family:Georgia,serif}
.quote p{margin:0;color:#314961;font-size:12pt;line-height:1.78;font-weight:500}
.pillrow{display:flex;flex-wrap:wrap;gap:2mm;margin-top:4mm}
.pill,.capability-tag,.signal,.badge-good,.badge-req{display:inline-flex;align-items:center;border-radius:999px;padding:1.5mm 3mm;font-size:8pt;font-weight:700}
.pill,.capability-tag{border:1px solid #c8dfed;background:#f3f9fd;color:var(--ink-blue)}
.signal.explicit,.badge-good{background:var(--pale-green);color:var(--success)}
.signal.possible{background:var(--pale-blue);color:var(--evidence)}
.signal.infer,.badge-req{background:var(--pale-amber);color:var(--warning)}

.metricrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;margin:5mm 0}
.metric{padding:5mm;border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(145deg,#fff,#f3f8fc);text-align:right}
.metric b{display:block;color:var(--brand-secondary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:24pt;line-height:1.1}
.metric span{color:var(--text-secondary);font-size:8.8pt}
.outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;margin:5mm 0}
.outcome{position:relative;min-height:42mm;padding:5mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.outcome .icon{display:grid;place-items:center;width:10mm;height:10mm;margin-bottom:3mm;border-radius:10px;background:var(--pale-blue);color:var(--brand-primary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:8pt;font-weight:600}
.outcome b{display:block;margin-bottom:1mm;color:var(--ink-blue);font-size:10.7pt}
.outcome span{color:var(--text-secondary);font-size:8.9pt;line-height:1.55}

.decision-banner{position:relative;overflow:hidden;margin:4mm 0 6mm;padding:7mm;border:1px solid #c8ddec;border-radius:var(--radius-lg);background:linear-gradient(135deg,#f7fbfe,#eaf5fb)}
.decision-banner::after{content:"";position:absolute;inset-inline-start:-22mm;bottom:-35mm;width:80mm;height:80mm;border:1px solid rgba(7,136,201,.13);border-radius:50%;box-shadow:0 0 0 14mm rgba(7,136,201,.035)}
.decision-banner h2{margin:0 0 2mm;color:var(--brand-primary);font-size:20pt}
.decision-banner p{position:relative;z-index:1;margin:0;font-size:11pt}
.exec-eyebrow{display:inline-flex;margin-bottom:3mm;color:var(--brand-secondary);font-size:8.6pt;font-weight:700}
.ask-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;margin:5mm 0}
.ask{position:relative;padding:5mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.ask .k{display:grid;place-items:center;width:9mm;height:9mm;margin-bottom:3mm;border-radius:9px;background:var(--brand-primary);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:8pt;font-weight:600}
.ask p{font-size:9.1pt;margin:0}
.deliverables,.guarantee-grid,.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4mm;margin:4mm 0}
.deliverable{display:grid;grid-template-columns:11mm 1fr;gap:3mm;padding:4mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.deliverable .dnum{display:grid;place-items:center;width:9mm;height:9mm;border-radius:8px;background:var(--pale-blue);color:var(--brand-primary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:7.8pt;font-weight:600}
.deliverable b,.guarantee b,.faq b{display:block;color:var(--ink-blue)}
.deliverable span,.guarantee span,.faq span{color:var(--text-secondary);font-size:9pt;line-height:1.55}
.guarantee,.faq{padding:4.5mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.guarantee{border-inline-start:3px solid var(--success);background:var(--pale-green)}
.exit-box{display:grid;grid-template-columns:30mm 1fr;gap:5mm;align-items:center;margin-top:5mm;padding:5mm;border:1px solid #c9deeb;border-radius:var(--radius-md);background:var(--pale-blue)}
.exit-box .x{color:var(--brand-secondary);font-size:24pt;font-weight:700}
.exit-box p{margin:0}
.exit-box p b{color:var(--ink-blue)}
.commitment-band{padding:5mm;border:1px solid #cfe0ec;border-radius:var(--radius-lg);background:#f4f9fc}
.commitment-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm}
.commitment{padding:4mm;border-radius:var(--radius-md);background:#fff}
.commitment b{display:block;color:var(--ink-blue)}
.commitment span{font-size:8.8pt;color:var(--text-secondary)}

.flow{display:flex;align-items:stretch;justify-content:center;gap:6mm;margin:7mm 0;counter-reset:flow}
.flow .node{position:relative;display:grid;place-items:center;min-width:0;flex:1;padding:4.5mm 3mm;border:1px solid #c8ddeb;border-radius:var(--radius-md);background:linear-gradient(145deg,#fff,#eff7fc);color:var(--ink-blue);font-size:9.4pt;font-weight:700;text-align:center;counter-increment:flow}
.flow .node::before{content:counter(flow,decimal-leading-zero);position:absolute;top:-4mm;inset-inline-start:3mm;padding:.8mm 1.7mm;border-radius:5px;background:var(--brand-primary);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:6.6pt}
.flow .node.node-brand{display:flex;align-items:center;justify-content:center;gap:2mm;direction:ltr}
.flow .node.node-brand img{display:block;width:23mm;max-width:72%;height:auto}
.flow .node.node-brand span{font-family:"IBM Plex Sans",Arial,sans-serif;color:var(--brand-primary);font-size:8.7pt}
.flow .arr{display:grid;place-items:center;color:transparent;font-size:0;min-width:5mm}
.flow .arr::before{content:"";width:100%;height:2px;background:linear-gradient(90deg,var(--brand-secondary),var(--brand-accent))}
.flow .arr::after{content:"";width:6px;height:6px;border-block-start:2px solid var(--brand-accent);border-inline-end:2px solid var(--brand-accent);transform:rotate(-135deg);margin-inline-start:-4px}
.stepbar{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4mm;margin:8mm 0}
.stepbar::before{content:"";position:absolute;z-index:-1;inset-inline:6%;top:11mm;height:2px;background:#c7ddeb}
.step{padding:4mm 3mm;border:1px solid #c8ddeb;border-radius:var(--radius-md);background:#fff;text-align:center}
.step b{display:grid;place-items:center;width:10mm;height:10mm;margin:0 auto 2.5mm;border-radius:50%;background:var(--brand-secondary);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:8pt}
.step span{color:var(--text-secondary);font-size:8.4pt;line-height:1.5}
.trace{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3mm;margin:7mm 0;counter-reset:trace}
.trace>div{position:relative;padding:4mm 3mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;text-align:center;counter-increment:trace}
.trace>div::before{content:counter(trace);display:grid;place-items:center;width:8mm;height:8mm;margin:0 auto 2mm;border-radius:8px;background:var(--pale-cyan);color:var(--brand-primary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:7pt;font-weight:600}
.trace b{display:block;color:var(--ink-blue);font-size:9.2pt}
.trace span{color:var(--text-secondary);font-size:8.1pt}
.stack{display:grid;gap:2mm;width:min(100%,160mm);margin:6mm auto}
.layer{position:relative;margin-inline:auto;padding:3.8mm 6mm;border:1px solid #c6dbea;border-radius:10px;background:#fff;color:var(--ink-blue);font-weight:700;text-align:center;box-shadow:0 5px 15px rgba(21,56,94,.04)}
.layer:nth-child(1){width:62%;border-color:#92cde2;background:var(--pale-cyan)}
.layer:nth-child(2){width:72%;background:#eef5fb}
.layer:nth-child(3){width:82%;background:#f3f6fb}
.layer:nth-child(4){width:91%;background:#f6f8fa}
.layer:nth-child(5){width:100%;background:#eef2f6}
.layer::before{content:"";position:absolute;inset-inline-start:4mm;top:50%;width:6px;height:6px;border-radius:50%;background:var(--brand-secondary);transform:translateY(-50%)}
.replace-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3mm;margin:7mm 0}
.replace-grid>div{padding:4mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;text-align:center}
.replace-grid>div::before{content:"";display:block;width:18mm;height:3px;margin:0 auto 3mm;border-radius:999px;background:linear-gradient(90deg,var(--brand-primary),var(--brand-accent))}
.replace-grid b{display:block;color:var(--ink-blue);font-size:10pt}
.replace-grid span{color:var(--text-secondary);font-size:8.5pt}

.productHero{display:grid;grid-template-columns:16mm 1fr;gap:4mm;align-items:start;margin-bottom:5mm}
.productHero .num{display:grid;place-items:center;width:14mm;height:14mm;border-radius:14px;background:var(--brand-primary);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:11pt;font-weight:600;box-shadow:0 0 0 4px var(--pale-blue)}
.productgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3mm}
.product{display:grid;grid-template-columns:9mm 1fr;gap:2.5mm;padding:3mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.product .ico{display:grid;place-items:center;width:8mm;height:8mm;border-radius:7px;background:var(--pale-cyan);color:var(--brand-primary);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:7pt;font-weight:600}
.product b{display:block;color:var(--ink-blue);font-size:9.2pt}
.product small{display:block;color:var(--brand-secondary);font-size:7.7pt;font-weight:700}
.product span{display:block;color:var(--text-secondary);font-size:7.8pt;line-height:1.45}
.domain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4mm}
.domain{padding:4.5mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.domain h2{margin:0 0 2mm;font-size:13pt}
.domain .mini-products{display:flex;flex-wrap:wrap;gap:1.5mm}
.domain .mini-products span{padding:1.3mm 2.2mm;border-radius:7px;background:var(--pale-blue);color:var(--ink-blue);font-size:7.7pt}
.capability-map-brand{display:inline-flex;align-items:center;gap:3mm;margin:-1mm 0 4mm;padding:2.2mm 3mm;border:1px solid #cee0eb;border-radius:var(--radius-md);background:#fff;box-shadow:0 8px 20px rgba(22,63,103,.07);color:var(--ink-blue);font-weight:700}
.capability-map-brand img{display:block;width:33mm;height:auto}

.wave-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;margin-top:6mm}
.wave{position:relative;min-height:92mm;padding:6mm;border:1px solid #c7dcea;border-radius:var(--radius-lg);background:#fff;overflow:hidden}
.wave::before{content:"";position:absolute;inset-inline-start:-12mm;bottom:-18mm;width:50mm;height:50mm;border:1px solid rgba(7,136,201,.18);border-radius:50%;box-shadow:0 0 0 10mm rgba(7,136,201,.04)}
.wave:nth-child(2){background:#f4f8fc}
.wave:nth-child(3){background:var(--pale-cyan)}
.wave h2{margin:0 0 3mm;color:var(--brand-primary);font-size:14pt}
.wave p,.wave li{position:relative;color:var(--text-secondary);font-size:8.7pt}

.table{width:100%;margin-top:4mm;border-collapse:separate;border-spacing:0;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;font-size:8.6pt}
.table th{padding:2.7mm 3mm;background:var(--ink-blue);color:#fff;text-align:right;font-weight:600}
.table td{padding:2.6mm 3mm;border-bottom:1px solid var(--border);background:#fff;color:var(--text-secondary);vertical-align:top;line-height:1.48}
.table tr:nth-child(even) td{background:#f7fafc}
.table tr:last-child td{border-bottom:0}
.table.license{font-size:7.35pt}
.table.license th,.table.license td{padding:1.8mm 2mm}
.selector-table td:first-child{color:var(--ink-blue);font-weight:700}

.value-levers,.revenue{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;margin:4mm 0}
.lever,.revenue .card{padding:4.5mm;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.lever b,.revenue .card b{display:block;color:var(--ink-blue);margin-bottom:1mm}
.lever span{color:var(--text-secondary);font-size:8.8pt}
.sla{display:grid;gap:3mm;width:min(100%,160mm);margin:6mm auto}
.sla div{position:relative;padding:4mm 5mm;border:1px solid #c7dcea;border-radius:var(--radius-md);background:#fff;color:var(--text-secondary)}
.sla div:nth-child(1){width:100%}.sla div:nth-child(2){width:88%;justify-self:center}.sla div:nth-child(3){width:76%;justify-self:center;background:var(--pale-blue)}
.sla b{display:inline-block;width:40mm;color:var(--ink-blue)}
.scopebox{margin:5mm 0;padding:4.5mm;border:1px solid #c8ddeb;border-radius:var(--radius-md);background:#f6fafd}
.scopebox b{color:var(--ink-blue)}
.scopebox p{margin:1mm 0;font-size:9.6pt}
.finalbox{position:relative;margin-top:7mm;padding:7mm;border:1px solid #bdd6e8;border-radius:var(--radius-lg);background:linear-gradient(135deg,#eff7fc,#e9f7fa);overflow:hidden}
.finalbox::after{content:"";position:absolute;inset-inline-start:-20mm;bottom:-28mm;width:68mm;height:68mm;border:1px solid rgba(7,136,201,.14);border-radius:50%;box-shadow:0 0 0 13mm rgba(7,136,201,.04)}
.finalbox p{position:relative;z-index:1;color:var(--text-secondary)}
.final-lockup{position:relative;z-index:1;display:flex;align-items:center;gap:4mm;margin-bottom:3mm}
.final-lockup img:first-child{width:28mm;height:11mm;object-fit:contain}
.final-lockup img:last-child{width:31mm;height:12mm;object-fit:contain}
.final-lockup span{width:1px;height:8mm;background:#c9dce9}
.final-action{position:relative;z-index:1;margin-top:4mm;padding:3mm 4mm;border:1px solid #b7dbe8;border-inline-start:4px solid var(--brand-secondary);border-radius:10px;background:#dff3f7;color:var(--ink-blue);font-weight:700}
.illustrative{margin-top:2mm;color:var(--text-muted);font-size:7.8pt;text-align:left}

.guide-visual{position:relative;margin:5mm 0 7mm;padding:4mm;border:1px solid #d2e1ec;border-radius:var(--radius-lg);background:linear-gradient(160deg,#fbfdff,#eef6fb);overflow:hidden}
.guide-visual svg{display:block;width:100%;height:auto}
.guide-visual text{font-family:"IBM Plex Sans Arabic",Tahoma,sans-serif}
.guide-visual .latin{font-family:"IBM Plex Sans",Arial,sans-serif}
.visual{position:relative;min-height:66mm;margin:5mm 0 7mm;border:1px solid #d0e0eb;border-radius:var(--radius-lg);background:linear-gradient(145deg,#f9fcfe,#eaf4fa);overflow:hidden}
.visual .mesh{position:absolute;inset:0;background-image:linear-gradient(rgba(24,63,134,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(24,63,134,.05) 1px,transparent 1px);background-size:12mm 12mm;transform:perspective(420px) rotateX(60deg) scale(1.35);transform-origin:center bottom}
.visual .center{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.visual .center b{color:var(--brand-primary);font-size:22pt}.visual .center span{color:var(--text-secondary)}
.cover-art{margin:7mm 0 5mm;border:1px solid #d3e2ec;border-radius:var(--radius-xl);background:linear-gradient(145deg,#fbfdff,#eef6fb);overflow:hidden}
.cover-art svg{display:block;width:100%;height:auto}

.page--cover{display:grid;grid-template-rows:auto auto auto 1fr auto auto;background:#fff}
.page--cover::before{inset-inline-start:auto;inset-inline-end:-32mm;inset-block-start:-38mm;width:115mm;height:115mm;border-color:rgba(7,136,201,.08);box-shadow:0 0 0 18mm rgba(7,136,201,.025)}
.page--cover h1{max-width:170mm;margin-top:4mm;color:var(--ink-blue);font-size:34pt;line-height:1.23}
.page--cover .lead{max-width:168mm;color:#405970;font-size:12.5pt}
.page--chapter-start{background:linear-gradient(180deg,#fff,#f8fbfd)}
.chapter-banner{display:grid;grid-template-columns:25mm 1fr;gap:6mm;align-items:center;margin:-1mm 0 6mm;padding:5mm;border:1px solid #c8ddea;border-radius:var(--radius-lg);background:linear-gradient(135deg,#eef6fb,#f9fcfe)}
.chapter-banner .chapter-number{display:grid;place-items:center;width:22mm;height:22mm;border-radius:18px;background:var(--brand-primary);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:14pt;font-weight:600;box-shadow:0 0 0 5px rgba(7,136,201,.09)}
.chapter-banner strong{display:block;color:var(--ink-blue);font-size:13pt}
.chapter-banner span{color:var(--text-secondary);font-size:9.2pt}
.page--standard{background:linear-gradient(180deg,#fff 0%,#fafdff 100%)}
.page--standard .standard-id{display:inline-flex;margin-bottom:3mm;padding:2mm 3mm;border-radius:8px;background:var(--brand-primary);color:#fff;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:13pt;font-weight:600;letter-spacing:.04em}
.page--standard h1{padding-bottom:4mm;border-bottom:1px solid var(--border)}
.page--standard .grid2>.card:nth-child(1){background:var(--pale-blue)}
.page--standard .grid2>.card:nth-child(2){background:var(--pale-green)}
.page--capability .productHero{padding:5mm;border:1px solid #ccdeea;border-radius:var(--radius-lg);background:linear-gradient(135deg,#f3f9fd,#fff)}
.page--capability h1{color:var(--brand-primary)}
.page--capability .productHero.branded-product{grid-template-columns:1fr;padding:4.5mm 5mm;gap:3mm}
.product-lockup{display:flex;flex-direction:column;gap:2mm;margin:0 0 4mm;padding:3mm 4mm;border:1px solid #d4e3ed;border-radius:var(--radius-md);background:#fff;box-shadow:0 9px 22px rgba(22,63,103,.08)}
.productHero .product-lockup{grid-column:1/-1;margin-bottom:0}
.product-logo{display:block;width:min(100%,116mm);height:auto;object-fit:contain}
.product-lockup>span{color:var(--text-secondary);font-size:9pt;font-weight:700;padding-inline-start:1mm}
.product-governance{border-color:#c9dce9;background:#f4f9fc}
.page--process .flow,.page--process .stepbar,.page--process .trace{margin-top:10mm}
.page--governance h1{max-width:170mm}
.page--table .table-wrap{overflow-x:auto}

@media (max-width:1120px){
  .guide-layout{grid-template-columns:1fr}
  .guide-index{display:none;position:fixed;z-index:60;inset:76px auto 16px 16px;width:min(320px,calc(100vw - 32px));max-height:calc(100vh - 96px)}
  html[dir="rtl"] .guide-index{inset:76px 16px 16px auto}
  .guide-index.open{display:block}
  .mobile-index-toggle{display:inline-flex}
  .guide-document{gap:24px}
}

@media (max-width:900px){
  .guide-toolbar{grid-template-columns:1fr auto;min-height:64px;padding:8px 14px}
  .toolbar-brand span,.toolbar-progress,.toolbar-actions .tool-link{display:none}
  .toolbar-actions{grid-column:2}
}

@media (max-width:760px){
  html{scroll-padding-top:74px}
  body{font-size:15px}
  .guide-toolbar{grid-template-columns:1fr auto;min-height:64px;padding:8px 12px}
  .toolbar-brand span,.toolbar-progress,.toolbar-actions .print-button,.toolbar-actions .primary{display:none}
  .toolbar-brand img{width:82px}
  .toolbar-actions{grid-column:2}
  .guide-layout{padding:14px 0 48px}
  .guide-document{gap:14px;width:100%}
  .page{width:100%;min-height:auto;padding:24px 20px 76px;border-inline:0;border-radius:0;box-shadow:0 12px 32px rgba(19,47,79,.08)}
  .page-head{align-items:flex-start;margin-bottom:24px}
  .page-brand{gap:8px}.page-brand .labiba-mark{width:64px}.page-brand .majal-mark{width:72px}.page-brand .brand-separator{height:20px}
  .page-chapter{max-width:130px;font-size:.67rem}
  .page-footer{inset-inline:20px;bottom:18px;grid-template-columns:1fr auto}
  .page-footer .footer-guide{display:none}
  .page-footer .footer-brand{justify-self:start;white-space:nowrap;font-size:.65rem}
  .page-footer .footer-brand img:first-child{width:56px;max-height:18px}.page-footer .footer-brand img:last-child{width:61px;max-height:20px}
  h1{font-size:clamp(2rem,8vw,3rem);line-height:1.28}
  h2{font-size:1.42rem}h3{font-size:1.04rem}p,.lead,li{font-size:1rem!important;line-height:1.78!important}
  .page--cover h1{font-size:clamp(2.35rem,10vw,4rem)}
  .grid2,.grid3,.grid4,.outcome-grid,.ask-row,.deliverables,.guarantee-grid,.faq-grid,.commitment-row,.productgrid,.domain-grid,.wave-grid,.value-levers,.revenue{grid-template-columns:1fr}
  .guide-visual,.cover-art{overflow-x:auto;overscroll-behavior-inline:contain}
  .guide-visual svg,.cover-art svg{min-width:700px}
  .metricrow{grid-template-columns:1fr 1fr}.metric:last-child{grid-column:1/-1}
  .flow,.stepbar,.trace{display:grid;grid-template-columns:1fr;gap:12px}
  .flow .arr{height:18px}.flow .arr::before{width:2px;height:100%}.flow .arr::after{transform:rotate(135deg);margin:0 0 -2px}
  .stepbar::before{display:none}
  .replace-grid{grid-template-columns:1fr 1fr}
  .chapter-banner{grid-template-columns:58px 1fr}.chapter-banner .chapter-number{width:52px;height:52px}
  .table{min-width:680px}.table-wrap{margin-inline:-8px;padding-bottom:8px;overflow-x:auto}
  .page[data-density="dense"],.page[data-density="extra"]{padding:24px 20px 76px}
  .page[data-density="dense"] p,.page[data-density="extra"] p,.page[data-density="dense"] li,.page[data-density="extra"] li{font-size:1rem;line-height:1.78}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.progress-track span,.guide-index,.tool-button,.tool-link{transition:none}}

@page{size:A4;margin:0}
@media print{
  html,body{background:#fff!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  body::before,.guide-toolbar,.guide-index,.skip-link{display:none!important}
  .guide-layout,.guide-document{display:block;max-width:none;margin:0;padding:0}
  .page{width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important;margin:0!important;padding:14mm 16mm 16mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important;break-after:page;page-break-after:always;break-inside:avoid;page-break-inside:avoid}
  .page:last-child{break-after:auto;page-break-after:auto}
  .page::before,.page::after{print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .page-head{margin-bottom:5mm}
  .page-footer{bottom:5mm}
  .card,.callout,.quote,.deliverable,.guarantee,.faq,.metric,.outcome,.ask,.wave,.domain,.table,.guide-visual,.visual,.cover-art,.finalbox,.chapter-banner{break-inside:avoid;page-break-inside:avoid}
  .table-wrap{overflow:visible!important}
  a{text-decoration:none}
  .page[data-density="dense"] p,.page[data-density="dense"] li{font-size:9.35pt;line-height:1.55}
  .page[data-density="extra"] p,.page[data-density="extra"] li{font-size:8.7pt;line-height:1.45}
  .page[data-density="extra"] h1{font-size:21.5pt}
}
