@font-face{font-family:Instrument;src:url('../assets/fonts/InstrumentSans-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:Instrument;src:url('../assets/fonts/InstrumentSans-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Bricolage;src:url('../assets/fonts/BricolageGrotesque-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Readex;src:url('../assets/fonts/ReadexPro-Arabic-400.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:Readex;src:url('../assets/fonts/ReadexPro-Arabic-700.woff2') format('woff2');font-weight:700;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
:root{--ink:#172B36;--paper:#F1F6F4;--white:#fff;--silver:#7F979F;--orange:#FF4D00;--line:#B3C9C2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 Instrument,Readex,system-ui,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}img{display:block;max-width:100%}h1,h2{font-family:Bricolage,Readex,system-ui,sans-serif;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(38px,5.5vw,72px);margin:.2em 0}h2{font-size:clamp(28px,3vw,40px);margin:.25em 0 .6em}p{max-width:72ch}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;padding:12px;background:var(--white);z-index:9}.topbar,main,footer{width:min(100%,1440px);margin-inline:auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px clamp(20px,4vw,64px);border-bottom:1px solid var(--line)}.brand{font:700 26px Bricolage,Readex,system-ui,sans-serif}.brand span{color:var(--orange)}.topbar nav{display:flex;flex-wrap:wrap;gap:clamp(12px,2vw,30px);font-weight:700}.topbar nav a:hover,.inline-link:hover{color:#B33600}main{padding:0 clamp(20px,4vw,64px) 80px}.intro{padding:clamp(56px,7vw,100px) 0;max-width:900px}.intro>p:last-child,.lead{font-size:clamp(18px,2vw,24px)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#B33600}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tile,.service,.case-hero,.case-body,.feature{background:var(--white);border:1px solid var(--line)}.tile{display:flex;flex-direction:column;transition:border-color .2s,background .2s}.tile:hover{border-color:var(--orange);text-decoration:none;background:#F7FAF9}.tile>img{aspect-ratio:16/9;object-fit:cover;width:100%}.tile>div{padding:24px;flex:1;display:flex;flex-direction:column}.tile h2{font-size:24px}.tile .inline-link{margin-top:auto}.inline-link{display:inline-block;margin-top:16px;font-size:13px;font-weight:700;text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:5px}.crumb{display:flex;justify-content:space-between;gap:16px;padding:22px 0;font-size:13px;font-weight:700}.crumb a{text-decoration:underline;text-underline-offset:4px}.case-hero,.case-body{display:grid;grid-template-columns:minmax(0,3fr) minmax(220px,1fr)}.case-hero>div,.case-body>div{padding:clamp(26px,4vw,60px)}.case-hero aside,.case-body aside{padding:clamp(26px,3vw,40px);border-left:1px solid var(--line);background:var(--paper)}.case-hero aside{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.client-logo{max-width:200px;max-height:120px;object-fit:contain}.client-mark{padding:16px 22px;font:700 28px Bricolage,Readex,system-ui;background:var(--orange)}.case-body{border-top:0}.case-body p{font-size:18px}.case-body ul{padding-left:18px}.case-body li{margin:8px 0}.feature{padding:clamp(24px,4vw,50px);margin-top:30px}.feature>img{width:100%;max-height:650px;object-fit:contain;background:var(--paper)}.screens{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.screens img{width:100%;aspect-ratio:16/10;object-fit:cover}.screens a:hover{outline:2px solid var(--orange)}.actions{display:flex;flex-wrap:wrap;gap:12px;padding:32px 0}.actions a{display:inline-flex;align-items:center;min-height:48px;padding:12px 18px;border:1px solid var(--ink);font-weight:700}.actions a.primary{background:var(--orange);border-color:var(--orange)}.actions a:hover{background:var(--ink);color:var(--white);text-decoration:none}.service-list{display:grid;gap:20px}.service{display:grid;grid-template-columns:minmax(220px,36%) 1fr;scroll-margin-top:20px}.service>img{width:100%;height:100%;min-height:280px;object-fit:cover;background:var(--paper)}.service>div{padding:clamp(24px,4vw,50px)}.service dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border-top:1px solid var(--line);padding-top:24px}.service dt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#B33600}.service dd{margin:8px 0 0}footer{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;padding:32px clamp(20px,4vw,64px);border-top:1px solid var(--line);font-size:13px;font-weight:700}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.screens{grid-template-columns:repeat(2,minmax(0,1fr))}.service dl{grid-template-columns:1fr}}

/* Service details match the roomy internal view. */
.service-list .service>div>p:not(.eyebrow){font-size:clamp(17px,1.6vw,21px);line-height:1.55}
.service-list .service dl{grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid var(--orange)}
@media(max-width:600px){.service-list .service dl{grid-template-columns:1fr}}
@media(max-width:650px){.topbar{align-items:flex-start;flex-direction:column}.topbar nav{gap:16px}.grid{grid-template-columns:1fr}.case-hero,.case-body,.service{grid-template-columns:1fr}.case-hero aside,.case-body aside{border-left:0;border-top:1px solid var(--line)}.service>img{min-height:0;aspect-ratio:16/9}.screens{grid-template-columns:repeat(2,minmax(0,1fr))}}
.service>img{height:auto;min-height:0;aspect-ratio:2/1;object-fit:contain;object-position:center;align-self:center;padding:clamp(12px,2vw,28px);background:#F1F6F4}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile{transition:none}}
/* 404 page */
.nf{padding-bottom:clamp(24px,3vw,40px)}.nf h1{font-size:clamp(44px,7vw,96px)}.nf-actions{padding-top:0;padding-bottom:clamp(56px,7vw,100px)}
.nf-ar{border-top:1px solid var(--line);padding:clamp(32px,5vw,64px) 0 clamp(48px,6vw,90px)}.nf-ar h2{font-size:clamp(32px,5vw,56px);line-height:1.3}.nf-ar,.nf-ar *{letter-spacing:0!important}.nf-ar .actions{padding-bottom:0}
