.pillars-search{border:0;border-radius:8px;padding:28px;width:min(650px,calc(100% - 32px));max-height:85vh;overflow:auto}.pillars-search::backdrop{background:#061c30aa}.pillars-search>button{float:inline-end;padding:8px 16px}.pillars-search h2{font-size:24px;margin:24px 0}.pillars-search label{display:grid;gap:8px}.pillars-search input{padding:12px;border:1px solid #aebfcb;border-radius:4px;font:inherit}.pillars-search ul{list-style:none;padding:0}.pillars-search li a{display:block;padding:12px 0;border-bottom:1px solid #dce5eb}

/* Keep adjacent contact links separate in both reading directions. */
.contact-split > aside > .text-link + .text-link { margin-inline-start: 24px; }
@media (max-width: 600px) {
  .contact-split > aside > .text-link + .text-link {
    display: flex; width: fit-content; margin-inline-start: 0; margin-block-start: 8px;
  }
}

/* Three Pillars shared controls and navigation. */
.button {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 48px; padding: 13px 22px; border: 1px solid transparent; border-radius: 8px;
  background: #08283e; color: #fff; font-size: 13px; font-weight: 600; line-height: 1.4;
  text-align: center; text-decoration: none; cursor: pointer;
  transition: background-color .18s, border-color .18s, box-shadow .18s, transform .18s;
}
.button.primary { background: #087da8; color: #fff; border-color: #087da8; box-shadow: 0 3px 8px #062c4314; }
.button.primary:hover { background: #06668b; border-color: #06668b; box-shadow: 0 5px 14px #062c4326; }
.button.ghost, .button.secondary { background: #fff; color: #0b354d; border-color: #b9ceda; }
.button.ghost:hover, .button.secondary:hover { background: #edf6fb; border-color: #609ebc; }
.button.white { background: #fff; color: #0b354d; border-color: #fff; }
.button.white:hover { background: #eaf6fb; border-color: #eaf6fb; }
.button.light-outline { background: #061c3033; color: #fff; border-color: #b7d2e380; }
.button.light-outline:hover { background: #ffffff1f; border-color: #e3f4ff; }
.button:active:not(:disabled) { transform: translateY(1px); }
.button:disabled, .button[aria-disabled="true"] { opacity: .5; box-shadow: none; cursor: not-allowed; }
.button__label { min-width: 0; }
.button__icon { display: block; flex: 0 0 18px; width: 18px; height: 18px; }
.button:focus-visible, .b2b-header a:focus-visible, .b2b-header button:focus-visible { outline: 3px solid #36b6e5; outline-offset: 4px; }
html[dir=rtl] .button__icon, html[dir=rtl] .tp-nav-item-arrow { transform: scaleX(-1); }

.b2b-header { position: sticky; top: 0; z-index: 40; background: #fff; border-bottom: 1px solid #dce7ed; box-shadow: 0 3px 16px #08283e06; }
.b2b-header .utility { height: 28px; background: #08283e; color: #d8e8f0; font-size: 10px; letter-spacing: .02em; }
.b2b-header .utility a { display: inline-flex; color: #e5f4fa; font-variant-numeric: tabular-nums; }
.b2b-nav { position: relative; display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 24px; min-height: 92px; padding-block: 12px; }
.tp-brand { flex: 0 0 auto; display: inline-flex; border-radius: 6px; }
.b2b-nav .b2b-logo { width: 190px; height: 69px; object-fit: contain; }
.b2b-nav .tp-navigation { display: flex; flex: 1; flex-wrap: nowrap; align-items: center; justify-content: flex-end; gap: 18px; font-size: 12px; }
.tp-nav-links, .tp-nav-actions { display: flex; flex-wrap: nowrap; align-items: center; gap: 3px; }
.tp-nav-actions { gap: 12px; }
.b2b-nav .tp-nav-link { display: inline-flex; position: relative; align-items: center; justify-content: center; gap: 6px; min-height: 42px; padding: 10px 9px; border: 0; border-radius: 6px; background: transparent; color: #244256; font: inherit; font-weight: 500; line-height: 1.4; white-space: nowrap; text-decoration: none; cursor: pointer; transition: background-color .18s, color .18s; }
.b2b-nav .tp-nav-link:hover, .b2b-nav .tp-nav-link[aria-expanded=true] { background: #f0f6f9; color: #087da8; }
.b2b-nav .tp-nav-link[data-active=true] { background: #edf7fb; color: #086f96; font-weight: 600; }
.tp-nav-link[data-active=true]::after { content: ''; position: absolute; bottom: 4px; inset-inline: 10px; height: 2px; background: #159bc8; border-radius: 2px; }
.tp-nav-chevron { display: block; width: 14px; height: 14px; flex: 0 0 14px; transition: transform .18s; }
[aria-expanded=true] > .tp-nav-chevron { transform: rotate(180deg); }
.b2b-nav .language { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 42px; padding: 9px 11px; color: #15516c; background: #f7fafc; border: 1px solid #e1ebf0; border-radius: 7px; font-size: 12px; line-height: 1.4; font-weight: 600; white-space: nowrap; text-decoration: none; }
.b2b-nav .language:hover { background: #eaf5fa; border-color: #a9d4e4; }
.b2b-nav .tp-header-cta { min-height: 44px; padding: 11px 16px; font-size: 12px; white-space: nowrap; }
.b2b-nav .tp-header-cta[aria-current=page] { color: #fff; background: #065b7d; border-color: #065b7d; box-shadow: 0 0 0 3px #087da826; }
.b2b-nav .mega { position: relative; }
.b2b-nav nav.tp-navigation .mega-panel { position: absolute; top: calc(100% + 12px); inset-inline-start: 0; width: min(360px, calc(100vw - 48px)); max-height: 65vh; padding: 12px; border: 1px solid #dce8ee; border-radius: 12px; background: #fff; box-shadow: 0 18px 50px #0b304d24; overflow-y: auto; }
.b2b-nav nav.tp-navigation .mega-panel[hidden] { display: none; }
.tp-nav-heading { margin: 3px 10px 8px; padding-block: 4px; color: #638093; font-size: 10px; line-height: 1.5; font-weight: 600; text-transform: uppercase; letter-spacing: .09em; }
.b2b-nav nav.tp-navigation .mega-panel a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 46px; padding: 11px 12px; border: 0; border-radius: 7px; color: #294c62; font-size: 13px; font-weight: 400; line-height: 1.6; text-decoration: none; }
.b2b-nav nav.tp-navigation .mega-panel a:hover { background: #f2f7fa; color: #087da8; }
.b2b-nav nav.tp-navigation .mega-panel a[aria-current=page] { background: #eaf6fc; color: #086d95; font-weight: 600; box-shadow: inset 3px 0 #159bc8; }
html[dir=rtl] .b2b-nav nav.tp-navigation .mega-panel a[aria-current=page] { box-shadow: inset -3px 0 #159bc8; }
.tp-nav-item-arrow { display: block; flex: 0 0 15px; opacity: .5; }
.b2b-nav nav.tp-navigation .mega-panel a[aria-current=page] .tp-nav-item-arrow { opacity: 1; }
.tp-menu-toggle { display: none; }
html[dir=rtl] .b2b-nav .tp-navigation { font-size: 13px; }
html[dir=rtl] .tp-nav-heading { font-size: 12px; letter-spacing: 0; }
html[dir=rtl] .b2b-nav nav.tp-navigation .mega-panel a { font-size: 14px; }
@media (max-width: 1280px) {
  .b2b-nav { min-height: 80px; padding-block: 10px; gap: 16px; }
  .b2b-nav .b2b-logo { width: 174px; height: 63px; }
  .tp-menu-toggle { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 13px; border: 1px solid #cddfe8; border-radius: 8px; background: #fff; color: #163e55; font: inherit; font-size: 13px; cursor: pointer; }
  .tp-menu-toggle[aria-expanded=true] { background: #edf7fb; border-color: #89c8df; }
  .b2b-nav .tp-navigation { display: none; position: absolute; top: 100%; inset-inline: 0; z-index: 50; max-height: calc(100dvh - 120px); padding: 16px; border: 1px solid #dce8ee; border-top: 2px solid #159bc8; border-radius: 0 0 12px 12px; background: #fff; box-shadow: 0 18px 40px #08283e24; overflow-y: auto; }
  .b2b-nav .tp-navigation[data-mobile-open=true] { display: flex; flex-direction: column; align-items: stretch; gap: 16px; }
  .tp-nav-links { flex-direction: column; align-items: stretch; gap: 3px; }
  .b2b-nav .tp-nav-link { width: 100%; justify-content: space-between; min-height: 46px; padding: 12px; font-size: 14px; }
  .tp-nav-link[data-active=true]::after { bottom: 5px; inset-inline: 12px auto; width: 22px; }
  .b2b-nav nav.tp-navigation .mega-panel { position: static; width: 100%; max-height: none; margin-top: 6px; padding: 8px; border: 0; border-radius: 8px; background: #f8fbfc; box-shadow: none; }
  .tp-nav-actions { flex-wrap: wrap; gap: 10px; padding-top: 16px; border-top: 1px solid #e2ebf0; }
  .b2b-nav .tp-nav-actions > .button { width: auto; flex: 1; margin: 0; min-height: 46px; }
  .b2b-nav .language { min-height: 46px; }
}
@media (max-width: 600px) {
  .b2b-header .utility { height: 26px; font-size: 9px; }
  .b2b-header .utility .wrap > span { max-width: 100%; }
  .b2b-header .utility a { display: none; }
  .b2b-nav .b2b-logo { width: 158px; height: 57px; }
  .b2b-nav { min-height: 76px; }
  .button { min-height: 48px; padding: 13px 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .button, .tp-nav-link, .tp-nav-chevron { transition: none; }
}

/* ---------- Menu & Arabic typography (aligned with EnviroMET) ---------- */
/* Arabic text uses Noto Sans Arabic instead of falling back to Arial; English stays Poppins. */
@font-face { font-family: 'Noto Sans Arabic'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/arabic-400.woff) format('woff'); }
@font-face { font-family: 'Noto Sans Arabic'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/arabic-500.woff) format('woff'); }
@font-face { font-family: 'Noto Sans Arabic'; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/arabic-600.woff) format('woff'); }
@font-face { font-family: 'Noto Sans Arabic'; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/arabic-700.woff) format('woff'); }
html[lang=ar] body, html[lang=ar] body *, [lang=ar] { font-family: 'Noto Sans Arabic', Poppins, Arial, sans-serif; }

/* Menu links: larger, clearer labels on desktop (the mobile menu below 1281px is unchanged). */
@media (min-width: 1281px) {
  .b2b-nav .tp-nav-link { padding: 10px 11px; font-size: 13px; }
}
@media (min-width: 1440px) {
  .b2b-nav .tp-nav-link { font-size: 14px; }
}
/* Current page: soft highlighted pill only, no underline. */
.tp-nav-link[data-active=true]::after { content: none; }

/* Header logo (22 Oct 2026): original full logo, trimmed, 60px tall (44px on mobile). */
.tp-brand .b2b-logo{width:auto;height:60px;object-fit:contain}
@media (max-width:760px){.tp-brand .b2b-logo{height:44px}}

/* Card icons (22 Oct 2026): customer and document cards in the website card style (same border, radius,
   pale icon tile, micro-label and hover as the service cards). Icons come from the 3Pillars company profile
   (pillars-assets/icons). Customer cards: icon + sector set by Interactions.client.tsx; documents: icon from the file. */
.reference-grid span,.document-grid>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;border:1px solid var(--line);border-top:3px solid #087aa7;border-radius:7px;padding:24px;text-align:start;line-height:1.45;color:var(--navy);font-size:16px;font-weight:500;letter-spacing:-.01em}
.reference-grid span{background:#fff}
.document-grid>a{background:#f3f7f9}
.document-grid>a:focus-visible{outline:2px solid #087aa7;outline-offset:3px}
.reference-grid span::before,.document-grid>a::before{content:"";order:-2;flex:0 0 auto;width:48px;height:48px;margin-bottom:20px;border-radius:8px;background:#e7f2f8 center/30px no-repeat;background-image:url(icons/buildings.png)}
.document-grid>a::before{background-color:#fff;border:1px solid var(--line)}
.reference-grid span::after,.document-grid>a::after{content:attr(data-sector);order:-1;margin-bottom:8px;font-size:12px;font-weight:500;line-height:1.4;color:#22617e}
.document-grid>a::after{content:attr(data-sub)}
.document-grid>a>span{flex:0 0 auto}
.document-grid>a>small{margin-top:auto;padding-top:16px;font-size:12px;font-weight:500;letter-spacing:0;color:#087aa7}
@media (max-width:760px){.reference-grid span,.document-grid>a{padding:20px 17px;font-size:14px}.reference-grid span::before,.document-grid>a::before{width:42px;height:42px;margin-bottom:14px;background-size:26px}.reference-grid span::after{font-size:11px}}
/* Reference logos (home + projects page): each government seal sits on a white medallion with a thin double ring,
   overlapping a navy band with a faint engineering grid. Name and services set by Interactions.client.tsx (home). */
.client-logos a{position:relative;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:0;padding:0 0 22px;border:1px solid var(--line);border-top:3px solid #087aa7;border-radius:7px;background:repeating-linear-gradient(90deg,#ffffff0f 0 1px,transparent 1px 22px) top/100% 76px no-repeat,repeating-linear-gradient(0deg,#ffffff0f 0 1px,transparent 1px 22px) top/100% 76px no-repeat,linear-gradient(115deg,#07182c,#0b2c49) top/100% 76px no-repeat,#fff;overflow:hidden;text-align:start}
.client-logos a:focus-visible{outline:2px solid #087aa7;outline-offset:3px}
.client-logos img{order:1;box-sizing:border-box;flex:0 0 auto;width:100px;height:100px;max-width:none;margin:26px 0 0;margin-inline-start:22px;padding:19px;object-fit:contain;background:#fff;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 0 0 5px #fff,0 0 0 6px #087aa759,0 10px 24px #071a2c2e}
.client-logos img[src*="customer-arqa"]{padding:12px}
.client-logos a::before{content:attr(data-tags);order:2;padding:20px 22px 0;font-size:12px;font-weight:500;line-height:1.5;color:#22617e}
.client-logos a::after{content:attr(data-name);order:3;padding:3px 22px 0;font-size:16px;font-weight:500;line-height:1.4;letter-spacing:-.01em;color:var(--navy);text-underline-offset:4px}
.client-logos a:hover::after{text-decoration:underline;text-decoration-color:#087aa7}
.logo-card{position:relative;background:#fff;border-top:3px solid #087aa7}
.logo-card .logo-stage{position:relative;height:120px;padding:0;background:repeating-linear-gradient(90deg,#ffffff0f 0 1px,transparent 1px 22px) top/100% 120px no-repeat,repeating-linear-gradient(0deg,#ffffff0f 0 1px,transparent 1px 22px) top/100% 120px no-repeat,linear-gradient(115deg,#07182c,#0b2c49) top/100% 120px no-repeat}
.logo-card .logo-stage img{position:absolute;inset-inline-start:32px;bottom:-60px;z-index:1;box-sizing:border-box;width:120px;height:120px;max-width:none;max-height:none;padding:23px;object-fit:contain;background:#fff;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 0 0 6px #fff,0 0 0 7px #087aa759,0 12px 28px #071a2c33}
.logo-card .logo-stage img[src*="customer-arqa"]{padding:14px}
.logo-card .card-copy{padding-top:84px}
.logo-card .card-meta{text-transform:none;letter-spacing:0;font-size:12px;font-weight:500}
@media (max-width:760px){.client-logos a{background:repeating-linear-gradient(90deg,#ffffff0f 0 1px,transparent 1px 22px) top/100% 60px no-repeat,repeating-linear-gradient(0deg,#ffffff0f 0 1px,transparent 1px 22px) top/100% 60px no-repeat,linear-gradient(115deg,#07182c,#0b2c49) top/100% 60px no-repeat,#fff;padding-bottom:16px}.client-logos img{width:80px;height:80px;padding:15px;margin:20px 0 0;margin-inline-start:15px}.client-logos a::before{padding:16px 15px 0;font-size:11px}.client-logos a::after{padding:2px 15px 0;font-size:14px}.logo-card .logo-stage{height:96px}.logo-card .logo-stage img{width:100px;height:100px;bottom:-50px;inset-inline-start:24px;padding:19px}.logo-card .card-copy{padding-top:70px}}
.reference-grid span[data-icon=city]::before{background-image:url(icons/buildings.png)}
.reference-grid span[data-icon=energy]::before{background-image:url(icons/factory.png)}
.reference-grid span[data-icon=cyber]::before{background-image:url(icons/security.png)}
.reference-grid span[data-icon=telecom]::before{background-image:url(icons/telecom-infra.png)}
.reference-grid span[data-icon=security]::before{background-image:url(icons/cctv.png)}
.reference-grid span[data-icon=fleet]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23087baa' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z'/%3E%3C/svg%3E")}
.reference-grid span[data-icon=defense]::before{background-image:url(icons/defense.png)}
.reference-grid span[data-icon=justice]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23087baa' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 3-8 3 8c-.9.6-1.9 1-3 1s-2.1-.4-3-1zM2 16l3-8 3 8c-.9.6-1.9 1-3 1s-2.1-.4-3-1zM7 21h10M12 3v18M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2'/%3E%3C/svg%3E")}
.reference-grid span[data-icon=atom]::before{background-image:url(icons/power.png)}
.reference-grid span[data-icon=environment]::before{background-image:url(icons/agriculture.png)}
.reference-grid span[data-icon=mobile]::before{background-image:url(icons/wireless.png)}
.document-grid>a[href*="company-profile"]::before{background-image:url(icons/buildings.png)}
.document-grid>a[href*="iso-9001"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='16.5' fill='%23fff' stroke='%23087baa' stroke-width='1.6'/%3E%3Ccircle cx='18' cy='18' r='13.5' fill='none' stroke='%23087baa' stroke-width='.6' stroke-dasharray='1.2 1.4'/%3E%3Ctext x='18' y='17' text-anchor='middle' font-family='Arial,Helvetica,sans-serif' font-size='8.5' font-weight='700' fill='%23087baa'%3EISO%3C/text%3E%3Ctext x='18' y='25.5' text-anchor='middle' font-family='Arial,Helvetica,sans-serif' font-size='6.8' font-weight='700' fill='%23087baa'%3E9001%3C/text%3E%3C/svg%3E");background-size:100%;background-color:transparent;border-color:transparent}
.document-grid>a[href*="iso-27001"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='16.5' fill='%23fff' stroke='%23087baa' stroke-width='1.6'/%3E%3Ccircle cx='18' cy='18' r='13.5' fill='none' stroke='%23087baa' stroke-width='.6' stroke-dasharray='1.2 1.4'/%3E%3Ctext x='18' y='17' text-anchor='middle' font-family='Arial,Helvetica,sans-serif' font-size='8.5' font-weight='700' fill='%23087baa'%3EISO%3C/text%3E%3Ctext x='18' y='25.5' text-anchor='middle' font-family='Arial,Helvetica,sans-serif' font-size='6.8' font-weight='700' fill='%23087baa'%3E27001%3C/text%3E%3C/svg%3E");background-size:100%;background-color:transparent;border-color:transparent}
.document-grid>a[href*="iso-45001"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='16.5' fill='%23fff' stroke='%23087baa' stroke-width='1.6'/%3E%3Ccircle cx='18' cy='18' r='13.5' fill='none' stroke='%23087baa' stroke-width='.6' stroke-dasharray='1.2 1.4'/%3E%3Ctext x='18' y='17' text-anchor='middle' font-family='Arial,Helvetica,sans-serif' font-size='8.5' font-weight='700' fill='%23087baa'%3EISO%3C/text%3E%3Ctext x='18' y='25.5' text-anchor='middle' font-family='Arial,Helvetica,sans-serif' font-size='6.8' font-weight='700' fill='%23087baa'%3E45001%3C/text%3E%3C/svg%3E");background-size:100%;background-color:transparent;border-color:transparent}
.document-grid>a[href$=".txt"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23087baa' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='2' width='8' height='4' rx='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14 2 2 4-4'/%3E%3C/svg%3E")}
/* Customer cards with a known organization (logo set by Interactions.client.tsx from pillars-assets/clients):
   the logo is the tile: full-width white plate, then a pale strip with sector and name. Each logo has its own
   height so emblems and wide wordmarks carry the same visual weight. */
.reference-grid span[data-logo]{padding:0 24px 22px;background:linear-gradient(#fff 0 150px,#f6f9fb 150px);overflow:hidden}
.reference-grid span[data-logo]::before{box-sizing:border-box;width:calc(100% + 48px);height:150px;margin:0 -24px 20px;padding:24px 28px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff var(--logo) center/contain no-repeat;background-origin:content-box;background-clip:padding-box}
.reference-grid span[data-logo=aramco]::before{background-size:auto 56px}
.reference-grid span[data-logo=mcit]::before{background-size:auto 66px}
.reference-grid span[data-logo=moj]::before{background-size:auto 70px}
.reference-grid span[data-logo=saudia-royal-fleet]::before{background-size:auto 74px}
.reference-grid span[data-logo=mobily]::before{background-size:auto 62px}
.reference-grid span[data-logo=neom]::before{background-size:auto 100px}
.reference-grid span[data-logo=nca]::before{background-size:auto 100px}
.reference-grid span[data-logo=public-security]::before{background-size:auto 98px}
.reference-grid span[data-logo=civil-defense]::before{background-size:auto 100px}
.reference-grid span[data-logo=kacare]::before{background-size:auto 98px}
.reference-grid span[data-logo=mewa]::before{background-size:auto 98px}
@media (max-width:760px){.reference-grid span[data-logo]{padding:0 15px 16px;background:linear-gradient(#fff 0 104px,#f6f9fb 104px)}.reference-grid span[data-logo]::before,.reference-grid span[data-logo][data-logo]::before{width:calc(100% + 30px);height:104px;margin:0 -15px 14px;padding:16px 14px;background-size:contain}.reference-grid span[data-logo=aramco]::before,.reference-grid span[data-logo=mobily]::before{padding:30px 26px}.reference-grid span[data-logo=mcit]::before,.reference-grid span[data-logo=moj]::before{padding:24px 16px}}


/* Contact form built in the CMS (Site → Contact form). */
.enquiry-panel .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.enquiry-panel .form-row>label{min-width:0}.enquiry-panel .form-choices{margin-block:15px}.enquiry-panel .form-choices legend{margin:0 0 4px;font-size:13px;font-weight:500}.enquiry-panel .form-choices .consent{margin-block:8px;font-weight:400}.enquiry-panel .form-actions a.button{text-decoration:none}@media (max-width:700px){.enquiry-panel .form-row{grid-template-columns:1fr}}

/* Supplied partner marks; original artwork and aspect ratios preserved. */
.partner-logo-wall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:32px 0 40px}.partner-logo-wall .partner-logo-card{margin:0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:22px 16px;background:#fff;border:1px solid #dce5eb;border-radius:14px}.partner-logo-wall img{width:100%;height:90px;object-fit:contain;filter:none;opacity:1}.partner-logo-wall figcaption{font-size:12px;line-height:1.6;color:#294c62;text-align:center}@media(max-width:1024px){.partner-logo-wall{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.partner-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.partner-logo-wall .partner-logo-card{padding:16px 12px}.partner-logo-wall img{height:70px}}
