/* Shared layout for all three directions. Colour and type live in dN.css. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
a{color:inherit;text-decoration:none}
p,h1,h2,h3{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 48px}
.s{padding:88px 0}
.eyebrow{font-family:var(--f-label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:28px;font-weight:600}
[lang=ar]{font-family:var(--f-ar)}

/* top bar */
.top{display:flex;gap:24px;align-items:center;padding:14px 48px;font-family:var(--f-label);font-size:12px;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--rule)}
.top-back{color:var(--ink);font-weight:600}
.top-tag{margin-left:auto}

/* idea */
.s-idea{padding:96px 0 104px}
.idea-wm{margin-bottom:96px}
.dir-name{font-family:var(--f-disp);font-size:clamp(64px,10vw,152px);line-height:.92;margin-bottom:44px}
.idea-lines{max-width:760px;display:grid;gap:10px}
.idea-lines p{font-size:clamp(19px,1.7vw,24px);line-height:1.4}

/* palette */
.sws{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.sw-chip{aspect-ratio:1/1.15;border-radius:var(--r);border:1px solid var(--rule)}
.sw-meta{display:grid;margin-top:12px;font-size:14px;line-height:1.35}
.sw-name{font-weight:600}
.sw-hex{color:var(--muted)}
.sw-role{color:var(--muted);font-size:13px}
.note{margin-top:28px;max-width:640px;color:var(--muted);font-size:15px}

/* type */
.spec{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.spec-card{background:var(--surface);border-radius:var(--r);padding:40px;border:1px solid var(--rule)}
.spec-k{font-family:var(--f-label);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:28px;font-weight:600}
.spec-k.small{margin:18px 0 0;text-transform:none;letter-spacing:0;font-size:13px;font-weight:400}
.spec-disp{font-family:var(--f-disp);font-size:56px;line-height:1.02;margin-bottom:24px}
.spec-card.ar .spec-disp{font-family:var(--f-ar);line-height:1.35}
.spec-body{font-size:17px;max-width:460px}
.spec-fig{margin-top:28px;border-collapse:collapse;width:100%;font-size:16px}
.spec-fig td{padding:9px 0;border-top:1px solid var(--rule)}
.spec-fig td+td{text-align:right}
.spec-ar-fig{margin-top:28px;padding-top:16px;border-top:1px solid var(--rule);font-size:20px}

/* website hero frame */
.site{background:var(--hero-bg,var(--surface));border-radius:var(--r);overflow:hidden;border:1px solid var(--rule)}
.h-nav{display:flex;align-items:center;gap:32px;padding:22px 44px}
.h-links{display:flex;gap:28px;margin-left:auto;font-size:15px}
.h-btn{display:inline-block;padding:11px 18px;font-size:15px;font-weight:600;cursor:pointer}
.h-btn.big{padding:16px 26px;font-size:16px}
.h-body{padding:72px 44px 80px}
.h-head,.h-head2,.cv h3,.vl-t{font-family:var(--f-disp)}
.h-cat{font-family:var(--f-label);font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:28px;font-weight:600}
.h-ctas{display:flex;gap:28px;align-items:center;margin-top:40px}
.h-link{font-weight:600;border-bottom:1.5px solid currentColor;padding-bottom:2px}

/* WhatsApp phone */
.chat-grid{display:grid;grid-template-columns:400px 1fr;gap:72px;align-items:center}
.phone{width:380px;border-radius:46px;padding:12px;background:#111;box-shadow:0 30px 60px -30px rgba(0,0,0,.35);position:relative;font-family:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-variant-numeric:normal}
.phone>*{position:relative}
.ph-notch{position:absolute;top:22px;left:50%;transform:translateX(-50%);width:96px;height:26px;border-radius:14px;background:#111;z-index:3}
.wa-head{display:flex;align-items:center;gap:10px;padding:52px 14px 10px;background:#F0F2F5;border-radius:36px 36px 0 0;color:#111B21}
.wa-back{font-size:30px;line-height:1;color:#54656F;margin-right:-2px}
.wa-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;overflow:hidden;flex:none}
.wa-who{display:grid;line-height:1.2}
.wa-name{font-size:16px;font-weight:600}
.wa-sub{font-size:12px;color:#667781}
.wa-body{background:#EFEAE2;padding:12px 10px 14px;display:flex;flex-direction:column;gap:6px;min-height:560px}
.wa-day{align-self:center;background:#fff;color:#54656F;font-size:12px;padding:4px 10px;border-radius:8px;margin-bottom:6px;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.bub{max-width:86%;background:#fff;color:#111B21;font-size:14.2px;line-height:1.38;padding:7px 9px 8px;border-radius:8px;box-shadow:0 1px .5px rgba(11,20,26,.13);position:relative}
.bub .t{float:right;margin:6px 0 -4px 10px;font-size:11px;color:#667781}
.bub.out{align-self:flex-end;background:#D9FDD3}
.bub.out .tick{color:#53BDEB;letter-spacing:-3px}
.bub.img{padding:3px;max-width:88%}
.bub-cap{padding:7px 7px 6px}
.wa-input{background:#F0F2F5;padding:10px 12px 22px;border-radius:0 0 36px 36px}
.wa-input span{display:block;background:#fff;border-radius:20px;padding:9px 14px;color:#8696A0;font-size:14px}
.phone.wa-dark .wa-head,.phone.wa-dark .wa-input{background:#202C33;color:#E9EDEF}
.phone.wa-dark .wa-sub,.phone.wa-dark .wa-back{color:#8696A0}
.phone.wa-dark .wa-body{background:#0B141A}
.phone.wa-dark .wa-day{background:#182229;color:#8696A0}
.phone.wa-dark .bub{background:#202C33;color:#E9EDEF}
.phone.wa-dark .bub.out{background:#005C4B}
.phone.wa-dark .bub .t{color:#8696A0}
.phone.wa-dark .wa-input span{background:#2A3942;color:#8696A0}
.wcard{border-radius:6px;overflow:hidden;padding:14px 14px 12px;font-family:var(--f-body);font-variant-numeric:tabular-nums}
.wc-top{display:flex;justify-content:space-between;font-size:12px;font-weight:600}
.wc-s{opacity:.6;font-weight:400}
.wc-big{font-family:var(--f-disp);font-size:44px;line-height:1.05;margin:8px 0 2px}
.wc-t{font-size:12px;opacity:.75;margin-bottom:8px}
.wc-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:11px}
.wcard .chart{display:block;width:100%;height:auto}
.chat-notes h3{font-family:var(--f-disp);font-size:clamp(30px,3vw,42px);line-height:1.1;margin-bottom:28px;max-width:560px}
.chat-notes ol{margin:0;padding:0;list-style:none;counter-reset:n;display:grid;gap:20px;max-width:520px}
.chat-notes li{counter-increment:n;padding-left:44px;position:relative;font-size:17px}
.chat-notes li::before{content:counter(n);position:absolute;left:0;top:0;font-weight:700;color:var(--muted)}

/* print + data card */
.print-grid{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:56px;align-items:start}
.a4{aspect-ratio:210/297;width:100%;max-width:440px;box-shadow:0 24px 50px -28px rgba(0,0,0,.4);overflow:hidden}
.cv{height:100%;display:flex;flex-direction:column;padding:40px 38px 30px}
.cv-foot{margin-top:auto;font-size:10px;opacity:.6}
.dcard{border-radius:var(--r);padding:32px;background:var(--surface);border:1px solid var(--rule)}
.dc-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}
.dc-k{font-size:14px;color:var(--muted);margin-bottom:6px}
.dc-big{font-family:var(--f-disp);font-size:48px;line-height:1}
.dc-big small{font-family:var(--f-body);font-size:15px;color:var(--muted);font-weight:400}
.dc-s{font-family:var(--f-label);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--rule);padding:4px 8px;border-radius:99px;white-space:nowrap}
.dcard .chart{display:block;width:100%;height:auto}
.dc-foot{margin-top:16px;font-size:14px;color:var(--muted)}
.chart text{font-family:var(--f-body);font-variant-numeric:tabular-nums}

/* voice */
.vls{display:grid;gap:0;border-top:1px solid var(--rule)}
.vl{display:grid;grid-template-columns:220px 1fr;gap:32px;padding:26px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.vl-k{font-family:var(--f-label);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}
.vl-t{font-size:clamp(20px,2vw,28px);line-height:1.3}

/* arabic */
.ar-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
.ar-k{font-family:var(--f-label);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:20px;text-align:right;font-weight:600}
.ar-hero h2{font-family:var(--f-ar);font-size:clamp(36px,4.6vw,64px);line-height:1.35;font-weight:700}
.ar-hero h2 em{font-style:normal}
.ar-cat{margin-top:16px;font-size:20px;color:var(--muted)}
.ar-wa{background:#EFEAE2;border-radius:var(--r);padding:28px 22px}
.ar-bub{max-width:100%;font-family:var(--f-ar);font-size:17px;line-height:1.7}
.ar-bub .t{float:left;margin:8px 10px -4px 0}

.foot{padding:40px 0 56px;border-top:1px solid var(--rule);font-size:13px;color:var(--muted)}
.foot .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}

@media (max-width:900px){
  body{font-size:16px}
  .wrap{padding:0 22px}
  .s{padding:60px 0}
  .top{padding:12px 22px;flex-wrap:wrap;gap:6px 16px}
  .top-tag{margin-left:0;width:100%}
  .idea-wm{margin-bottom:56px}
  .s-idea{padding:56px 0 64px}
  .sws{grid-template-columns:repeat(3,1fr);gap:14px 10px}
  .sw-meta{font-size:13px}
  .spec{grid-template-columns:1fr}
  .spec-card{padding:26px 22px}
  .spec-disp{font-size:40px}
  .h-nav{padding:18px 20px;gap:12px}
  .h-links{display:none}
  .h-nav .h-btn{margin-left:auto}
  .h-body{padding:40px 20px 48px}
  .h-ctas{flex-direction:column;align-items:flex-start;gap:18px}
  .chat-grid{grid-template-columns:1fr;gap:40px;justify-items:center}
  .phone{width:346px}
  .chat-notes{justify-self:stretch}
  .print-grid{grid-template-columns:1fr;gap:56px}
  .a4{margin:0 auto}
  .cv{padding:30px 28px 22px}
  .dcard{padding:22px 18px}
  .dc-big{font-size:38px}
  .vl{grid-template-columns:1fr;gap:8px;padding:20px 0}
  .ar-grid{grid-template-columns:1fr}
  .foot .wrap{flex-direction:column;align-items:flex-start}
  .dir.dir .chart:not(.mini) .c-lab{font-size:20px}
  .dir.dir .chart:not(.mini) .c-val,.dir.dir .chart .c-tlab{font-size:21px}
}

/* Direction 3: Hard Numbers */
.d3{--ground:#0F2B23;--surface:#163A2F;--ink:#F2EEE3;--accent:#D2F34C;--data:#8DB8A0;--muted:#8DB8A0;--rule:rgba(242,238,227,.16);--r:0px;
  --f-disp:"Archivo",sans-serif;--f-body:"Archivo",sans-serif;--f-label:"Archivo",sans-serif;--f-ar:"Kufi","Archivo",sans-serif}
.d3 .dir-name,.d3 .spec-disp,.d3 .h-head,.d3 .h-head2,.d3 .chat-notes h3,.d3 .dc-big,.d3 .wc-big,.d3 .cv h3,.d3 .cv-n{font-weight:900;font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em}
.d3 .dir-name{font-size:clamp(56px,10.5vw,168px);line-height:.86}
.d3 .spec-card.ar .spec-disp{text-transform:none;font-stretch:100%}
.d3 .eyebrow{color:var(--accent);font-stretch:125%;font-weight:800;letter-spacing:.08em}
.d3 .spec-k,.d3 .vl-k,.d3 .ar-k,.d3 .dc-s{font-stretch:112%}
.d3 .idea-lines p{font-weight:500}
.d3 .vl-t{font-weight:700;font-stretch:112%;letter-spacing:-.01em}
.d3 .spec-card{border:0}
.d3 .sw-chip{border:1px solid rgba(242,238,227,.22)}

/* wordmark: lime square + NAME */
.d3 .wm{display:inline-flex;align-items:center;gap:10px;font-weight:900;font-stretch:125%;font-size:24px;letter-spacing:.02em}
.d3 .wm-mark{width:22px;height:22px;background:var(--accent);display:inline-block}
.d3 .idea-wm .wm{font-size:32px}.d3 .idea-wm .wm-mark{width:30px;height:30px}

/* hero */
.d3 .site{--hero-bg:var(--ground);border:1px solid rgba(242,238,227,.22)}
.d3 .h-btn{background:var(--accent);color:var(--ground);font-weight:800;font-stretch:112%}
.d3 .h-nav .h-btn{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.d3 .h-cat{color:var(--muted);font-stretch:125%}
.d3 .h-head{display:flex;align-items:center;gap:.25em;font-size:clamp(60px,9.4vw,150px);line-height:.9;letter-spacing:-.04em}
.d3 .h-arrow{font-weight:400;font-stretch:100%;color:var(--muted);font-size:.6em}
.d3 .h-n.acc{color:var(--accent)}
.d3 .h-head2{font-size:clamp(30px,4.4vw,64px);line-height:.95;margin-top:14px}
.d3 .h-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-top:56px;padding-top:24px;border-top:1.5px solid var(--ink)}
.d3 .h-sub{font-size:19px;max-width:520px}

/* chat */
.d3 .wa-avatar{background:var(--ground)}
.d3 .wa-avatar .wm-mark{width:16px;height:16px}
.d3 .wcard{background:var(--ground);color:var(--ink)}
.d3 .wc-top{font-stretch:125%;font-weight:800;font-size:11px;letter-spacing:.06em}
.d3 .wc-big{font-size:58px;color:var(--accent);line-height:.95}
.d3 .wc-big small{font-size:30px}
.d3 .wc-t{opacity:1;color:var(--muted);font-weight:600}
.d3 .wc-foot .wm{font-size:12px;gap:6px}.d3 .wc-foot .wm-mark{width:11px;height:11px}
.d3 .chart .c-bar{fill:#2F5A4C}
.d3 .chart .c-bar.last{fill:var(--accent)}
.d3 .chart .c-base{stroke:var(--ink);stroke-width:2}
.d3 .chart .c-val{font-size:15px;fill:var(--muted);font-weight:800;font-stretch:112%}
.d3 .chart .c-val.last{fill:var(--accent)}
.d3 .chart .c-lab{font-size:12px;fill:var(--muted);font-weight:600}
.d3 .chat-notes li::before{color:var(--accent)}
.d3 .phone{box-shadow:0 0 0 1px rgba(242,238,227,.18),0 30px 60px -30px rgba(0,0,0,.6)}

/* cover: cream paper version */
.d3 .a4{background:var(--ink);color:var(--ground)}
.d3 .cv .wm{font-size:18px}.d3 .cv .wm-mark{width:16px;height:16px;background:var(--ground)}
.d3 .cv-n{display:flex;align-items:center;gap:.12em;font-size:92px;line-height:.85;margin-top:auto;letter-spacing:-.05em}
.d3 .cv-n .acc{background:var(--accent);padding:0 .08em}
.d3 .cv-arr{font-weight:400;font-stretch:100%;font-size:.45em}
.d3 .cv h3{font-size:24px;line-height:1.05;margin-top:22px}
.d3 .cv-tbl{margin-top:28px;border-top:2px solid var(--ground)}
.d3 .cv-tbl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(15,43,35,.2);font-size:12.5px}
.d3 .cv-tbl span{font-weight:700;font-stretch:112%;text-transform:uppercase;font-size:11px;letter-spacing:.04em;padding-top:1px}
.d3 .cv-tbl b{font-weight:600;text-align:right}
.d3 .cv-foot{margin-top:22px}

.d3 .dcard{border:0}
.d3 .dc-big{color:var(--accent);font-size:64px}
.d3 .dc-k{font-weight:700;font-stretch:112%;text-transform:uppercase;font-size:12px;letter-spacing:.05em}
.d3 .ar-hero h2{font-weight:800;line-height:1.5}
.d3 .ar-hero h2 em{color:var(--accent)}
.d3 .ar-wa{background:#0B141A}
.d3 .ar-bub{background:#202C33;color:#E9EDEF}
.d3 .ar-bub .t{color:#8696A0}

@media (max-width:900px){
  .d3 .h-head{font-size:13.5vw;font-stretch:110%}
  .d3 .h-head2{font-size:30px}
  .d3 .h-foot{flex-direction:column;align-items:flex-start;gap:24px}
  .d3 .h-sub{font-size:17px}
  .d3 .cv-n{font-size:64px}
  .d3 .dc-big{font-size:52px}
}
