/*
Theme Name: Al Reyadah
Theme URI: https://commademo.com/al-reyadah/
Author: Al Reyadah
Author URI: https://commademo.com/al-reyadah/
Description: A modern, dark, RTL-first corporate theme for Al Reyadah. Arabic-only, Cairo typography, Elementor-compatible (Theme Builder locations for header, footer, single and archive). Built for fast loading, SEO-friendly markup, and reusable section components.
Version: 8.7.5
Requires at least: 5.9
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: al-reyadah
Tags: business, elementor, custom-colors, custom-logo, custom-menu, featured-images, rtl-language-support, translation-ready, full-width-template
*/

/* ==========================================================================
   1. Design tokens — dark corporate palette
   Brand palette (only colors used):
     #1F4669 primary · #3B7596 secondary · #82C0CC accent · #757575 muted
   Dark surfaces are derived (darkened) from the primary to keep the
   "use only these colors" intent while supporting a true dark theme.
   ========================================================================== */
:root {
    --ar-primary: #1F4669;
    --ar-secondary: #3B7596;
    --ar-accent: #82C0CC;
    --ar-muted: #757575;

    --ar-bg: #102233;          /* darkened primary — page background */
    --ar-surface: #16304a;     /* card / section surface */
    --ar-surface-2: #1F4669;   /* raised surface = primary */
    --ar-border: #25415c;
    --ar-text: #eaf1f6;
    --ar-text-soft: #b9c6d2;

    --ar-font: "Cairo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --ar-container: 1200px;
    --ar-radius: 14px;
    --ar-radius-sm: 10px;
    --ar-transition: 0.25s ease;
    --ar-shadow: 0 18px 40px rgba(0,0,0,0.35);
}

/* ==========================================================================
   2. Base / reset (RTL-first)
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; direction: rtl; }
html, body { direction: rtl; }
.elementor, .elementor-section, .e-con, .elementor-widget-container { direction: rtl; }

body {
    margin: 0;
    direction: rtl;
    text-align: right;
    font-family: var(--ar-font);
    font-size: 17px;
    line-height: 1.8;
    font-weight: 400;
    color: var(--ar-text);
    background-color: var(--ar-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img { max-width: 100%; height: auto; display: block; }

a { color: var(--ar-accent); text-decoration: none; transition: color var(--ar-transition); }
a:hover, a:focus { color: #fff; }

h1, h2, h3, h4, h5, h6 {
    font-family: var(--ar-font);
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
    margin: 0 0 0.5em;
}
h1 { font-size: clamp(2rem, 4vw, 3.2rem); }
h2 { font-size: clamp(1.6rem, 3vw, 2.4rem); }
h3 { font-size: 1.4rem; }

p { margin: 0 0 1.2em; color: var(--ar-text-soft); }
ul, ol { margin: 0 0 1.2em; padding-inline-start: 1.4em; }

blockquote {
    margin: 1.5em 0;
    padding: 0.5em 1.25em;
    border-inline-start: 4px solid var(--ar-accent);
    background: var(--ar-surface);
    color: var(--ar-text-soft);
    border-radius: var(--ar-radius-sm);
}

/* ==========================================================================
   3. Layout helpers
   ========================================================================== */
.ar-container { width: 100%; max-width: var(--ar-container); margin: 0 auto; padding: 0 24px; }
.ar-site-content { padding: 64px 0; }
.ar-section { padding: 80px 0; }
.ar-section--alt { background: var(--ar-surface); }
.ar-section-head { text-align: center; max-width: 720px; margin: 0 auto 48px; }
.ar-section-head .eyebrow { color: var(--ar-accent); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; font-size: 0.85rem; }

.ar-skip-link { position: absolute; right: -9999px; top: 0; background: var(--ar-primary); color: #fff; padding: 10px 16px; z-index: 100000; }
.ar-skip-link:focus { right: 8px; top: 8px; }

/* ==========================================================================
   4. Header
   ========================================================================== */
.ar-site-header { background: rgba(16,34,51,0.85); backdrop-filter: blur(10px); border-bottom: 1px solid var(--ar-border); position: sticky; top: 0; z-index: 999; }
.ar-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 16px 24px; max-width: var(--ar-container); margin: 0 auto; }
.ar-site-title { font-size: 1.4rem; margin: 0; }
.ar-site-title a { color: #fff; }
.ar-site-description { margin: 0; font-size: 0.8rem; color: var(--ar-muted); }
.custom-logo { max-height: 52px; width: auto; }

.ar-main-nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 28px; }
.ar-main-nav a { color: var(--ar-text); font-weight: 500; font-size: 0.98rem; padding: 6px 0; position: relative; }
.ar-main-nav a:hover, .ar-main-nav .current-menu-item > a { color: var(--ar-accent); }
.ar-main-nav .current-menu-item > a::after { content: ""; position: absolute; right: 0; left: 0; bottom: -4px; height: 2px; background: var(--ar-accent); }

.ar-menu-toggle { display: none; background: transparent; border: 1px solid var(--ar-border); border-radius: var(--ar-radius-sm); padding: 8px 12px; cursor: pointer; color: #fff; font-size: 1.1rem; }

/* ==========================================================================
   5. Buttons
   ========================================================================== */
.ar-btn, button, input[type="submit"] {
    display: inline-block;
    background: var(--ar-secondary);
    color: #fff;
    border: none;
    padding: 13px 30px;
    border-radius: var(--ar-radius-sm);
    font-family: inherit;
    font-weight: 700;
    cursor: pointer;
    transition: transform var(--ar-transition), background var(--ar-transition), box-shadow var(--ar-transition);
}
.ar-btn:hover, button:hover, input[type="submit"]:hover { background: var(--ar-accent); color: var(--ar-primary); transform: translateY(-2px); box-shadow: var(--ar-shadow); }
.ar-btn--ghost { background: transparent; border: 1px solid var(--ar-accent); color: var(--ar-accent); }
.ar-btn--ghost:hover { background: var(--ar-accent); color: var(--ar-primary); }

/* ==========================================================================
   6. Cards / content
   ========================================================================== */
.ar-card { background: var(--ar-surface); border: 1px solid var(--ar-border); border-radius: var(--ar-radius); overflow: hidden; transition: transform var(--ar-transition), box-shadow var(--ar-transition), border-color var(--ar-transition); }
.ar-card:hover { transform: translateY(-6px); box-shadow: var(--ar-shadow); border-color: var(--ar-accent); }
.ar-card .ar-card-body { padding: 24px; }

.ar-entry { margin-bottom: 48px; }
.ar-entry-title { font-size: 2rem; margin-bottom: 0.3em; }
.ar-entry-title a { color: #fff; }
.ar-entry-title a:hover { color: var(--ar-accent); }
.ar-entry-meta { color: var(--ar-muted); font-size: 0.85rem; margin-bottom: 1em; display: flex; flex-wrap: wrap; gap: 14px; }
.ar-entry-thumb { margin-bottom: 1.2em; border-radius: var(--ar-radius); overflow: hidden; }
.ar-read-more { display: inline-block; margin-top: 0.5em; font-weight: 700; color: var(--ar-accent); }
.ar-page-title { font-size: 2.4rem; margin-bottom: 1em; }

/* ==========================================================================
   7. Pagination
   ========================================================================== */
.ar-pagination { margin-top: 32px; text-align: center; }
.ar-pagination .page-numbers { display: inline-block; padding: 8px 14px; margin: 0 4px 4px 0; border: 1px solid var(--ar-border); border-radius: var(--ar-radius-sm); color: var(--ar-text); }
.ar-pagination .page-numbers.current { background: var(--ar-secondary); color: #fff; border-color: var(--ar-secondary); }

/* ==========================================================================
   8. Footer (sectioned, not solid)
   ========================================================================== */
.ar-site-footer { background: var(--ar-bg); padding: 56px 0 24px; margin-top: 0; border-top: 1px solid var(--ar-border); }
.ar-footer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; max-width: var(--ar-container); margin: 0 auto; padding: 0 24px; }
.ar-footer-box { background: var(--ar-surface); border: 1px solid var(--ar-border); border-radius: var(--ar-radius); padding: 28px; }
.ar-footer-box h4 { color: #fff; margin-bottom: 16px; font-size: 1.05rem; }
.ar-footer-box ul { list-style: none; padding: 0; margin: 0; }
.ar-footer-box li { margin-bottom: 10px; }
.ar-footer-box a { color: var(--ar-text-soft); }
.ar-footer-box a:hover { color: var(--ar-accent); }
.ar-footer-credit { text-align: center; color: var(--ar-muted); font-size: 0.85rem; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--ar-border); }

/* ==========================================================================
   9. Forms
   ========================================================================== */
input[type="text"], input[type="email"], input[type="url"], input[type="search"], textarea, select {
    width: 100%; padding: 12px 16px; border: 1px solid var(--ar-border); border-radius: var(--ar-radius-sm);
    font-family: inherit; font-size: 1rem; margin-bottom: 1em; background: var(--ar-surface); color: var(--ar-text);
}
input::placeholder, textarea::placeholder { color: var(--ar-muted); }

/* ==========================================================================
   10. WP core classes
   ========================================================================== */
.alignleft { float: left; margin: 0 1.5em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1.5em; }
.aligncenter { display: block; margin: 0 auto 1em; }
.wp-caption-text { font-size: 0.85rem; color: var(--ar-muted); text-align: center; }
.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; }

/* ==========================================================================
   11. Animation utilities (Fade In, Slide Up, Text Reveal, counters)
   Elements get .ar-animate + a variant; JS adds .is-visible on scroll.
   ========================================================================== */
/* Failsafe pattern: elements are VISIBLE by default. Hiding only applies
   once JS adds .ar-anim-ready to <html>. So if JS doesn't run (e.g. inside
   the Elementor editor, or on failure) content is never stuck invisible. */
.ar-animate { transition: opacity 0.7s ease, transform 0.7s ease; will-change: opacity, transform; }
html.ar-anim-ready .ar-animate { opacity: 0; }
html.ar-anim-ready .ar-animate.slide-up { transform: translateY(40px); }
html.ar-anim-ready .ar-animate.slide-right { transform: translateX(40px); }
html.ar-anim-ready .ar-animate.slide-left { transform: translateX(-40px); }
html.ar-anim-ready .ar-animate.zoom-in { transform: scale(0.94); }
html.ar-anim-ready .ar-animate.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
    html.ar-anim-ready .ar-animate { opacity: 1 !important; transform: none !important; transition: none !important; }
    html { scroll-behavior: auto; }
}

/* ==========================================================================
   Elementor Projects grid (Posts / Loop) — dark cards
   ========================================================================== */
.elementor-posts .elementor-post__card,
.elementor-posts .elementor-post {
    background: var(--ar-surface) !important;
    border: 1px solid var(--ar-border) !important;
    border-radius: var(--ar-radius) !important;
    overflow: hidden;
    box-shadow: none;
    transition: transform var(--ar-transition), box-shadow var(--ar-transition), border-color var(--ar-transition);
}
.elementor-posts .elementor-post:hover .elementor-post__card,
.elementor-posts .elementor-post:hover {
    transform: translateY(-6px);
    box-shadow: var(--ar-shadow);
    border-color: var(--ar-accent) !important;
}
.elementor-post__thumbnail { border-radius: 0; }
.elementor-post__text { padding: 22px; }
.elementor-post__card .elementor-post__text { padding: 22px; }
.elementor-post__title,
.elementor-post__title a { color: #fff; font-family: var(--ar-font); font-weight: 700; }
.elementor-post__title a:hover { color: var(--ar-accent); }
.elementor-post__excerpt p { color: var(--ar-text-soft); }
.elementor-post__meta-data { color: var(--ar-muted); }
.elementor-post__read-more { color: var(--ar-accent); font-weight: 700; }
.elementor-post__read-more:hover { color: #fff; }
.elementor-post__badge { background: var(--ar-secondary); color: #fff; }

/* Project category filter buttons (Elementor) */
.ar-filter .elementor-button { background: transparent; border: 1px solid var(--ar-border); color: var(--ar-text-soft); }
.ar-filter .elementor-button:hover { border-color: var(--ar-accent); color: var(--ar-accent); }

/* ---- Theme-rendered Projects archive ---- */
.ar-projects-head { text-align: center; margin-bottom: 28px; }
.ar-projects-head .eyebrow { display: block; color: var(--ar-accent); font-weight: 700; letter-spacing: 1px; font-size: 0.85rem; margin-bottom: 8px; }
.ar-projects-head .ar-page-title { font-size: clamp(2rem, 4vw, 2.8rem); margin: 0; }

.ar-filter { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 44px; }
.ar-filter-link {
    display: inline-block;
    padding: 10px 24px;
    border: 1px solid var(--ar-secondary);
    border-radius: 30px;
    color: var(--ar-accent);
    font-weight: 700;
    font-size: 0.95rem;
    transition: all var(--ar-transition);
}
.ar-filter-link:hover { background: var(--ar-secondary); color: #fff; }
.ar-filter-link.is-active { background: var(--ar-accent); color: var(--ar-primary); border-color: var(--ar-accent); }

.ar-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}
.ar-archive-grid .ar-card { display: flex; flex-direction: column; }
.ar-card-thumb { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--ar-surface-2); }
.ar-card-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.ar-card:hover .ar-card-thumb img { transform: scale(1.05); }
.ar-card-thumb--ph {
    display: block; width: 100%; height: 100%;
    background: linear-gradient(135deg, #1F4669, #16304A);
    position: relative;
}
.ar-card-thumb--ph::after {
    content: "الريادة"; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
    color: rgba(130,192,204,0.45); font-weight: 800; font-size: 1.4rem; letter-spacing: 1px;
}
.ar-card-tag {
    display: inline-block; align-self: flex-start; margin-bottom: 10px;
    background: rgba(130,192,204,0.12); color: var(--ar-accent);
    padding: 4px 12px; border-radius: 20px; font-size: 0.78rem; font-weight: 700;
}
@media (max-width: 980px) { .ar-archive-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { .ar-archive-grid { grid-template-columns: 1fr; } }

/* ---- Single project (details) ---- */
.ar-project-head { margin-bottom: 24px; }
.ar-project-title { font-size: clamp(2rem, 4vw, 3rem); margin: 10px 0 0; }
.ar-project-hero { border-radius: var(--ar-radius); overflow: hidden; margin-bottom: 40px; aspect-ratio: 21 / 9; }
.ar-project-hero img { width: 100%; height: 100%; object-fit: cover; }
.ar-project-hero .ar-card-thumb--ph { display: block; width: 100%; height: 100%; }
.ar-project-body { display: grid; grid-template-columns: 1.9fr 1fr; gap: 36px; align-items: start; }
.ar-block-title { font-size: 1.5rem; margin-bottom: 16px; position: relative; padding-bottom: 10px; }
.ar-block-title::after { content: ""; position: absolute; bottom: 0; right: 0; width: 54px; height: 3px; background: var(--ar-accent); border-radius: 3px; }
.ar-project-specs {
    background: var(--ar-surface); border: 1px solid var(--ar-border);
    border-radius: var(--ar-radius); padding: 28px; position: sticky; top: 96px;
}
.ar-specs-list { list-style: none; margin: 0 0 20px; padding: 0; }
.ar-specs-list li { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--ar-border); }
.ar-specs-list li:last-child { border-bottom: none; }
.ar-specs-list span { color: var(--ar-muted); }
.ar-specs-list strong { color: #fff; font-weight: 700; }
.ar-related { margin-top: 60px; }
@media (max-width: 860px) { .ar-project-body { grid-template-columns: 1fr; } .ar-project-specs { position: static; } }

/* ---- Home: "نخدم قطاعين رئيسيين" project-category cards ----
   Force the two cards side-by-side on desktop/tablet (they otherwise wrap
   because 50% + 50% + gap > 100%). row-reverse puts مشاريع سكنية on the
   right per RTL spec. Stacks naturally on mobile. The element id below is
   the Elementor container for that row on the Home page. */
@media (min-width: 768px) {
    .elementor-element-7bf9096e {
        flex-wrap: nowrap !important;
        flex-direction: row-reverse !important;
        align-items: stretch !important;
    }
    .elementor-element-7bf9096e > .e-con { flex: 1 1 0 !important; }
}

/* ---- Home hero background image (facade composition) ----
   Sets the uploaded hero image as the section background with a dark
   gradient overlay so the white heading, text and buttons stay readable.
   The element id is the Home hero container. */
.elementor-element-4e164737 {
    background-image:
        linear-gradient(160deg, rgba(16,34,51,0.55), rgba(13,27,41,0.68)),
        url('https://commademo.com/al-reyadah/wp-content/uploads/2026/06/ChatGPT-Image-Jun-17-2026-12_12_29-PM.png') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

/* ---- Footer background: solid brand navy (no image) ---- */
.elementor-132 > .elementor-element-69611a80,
.elementor-location-footer > .e-con {
    position: relative;
    background-image: none !important;
    background-color: #102233 !important;
}

/* ============================================================
   Premium Stats section redesign ("أرقام تتحدث عن جودتنا")
   ============================================================ */
/* Section background polish: radial navy + subtle dot pattern */
.elementor-element-31d563cd {
    position: relative;
    overflow: hidden;
    background: radial-gradient(120% 120% at 50% 0%, #1a3651 0%, var(--ar-bg) 60%, #0c1c2c 100%) !important;
}
.elementor-element-31d563cd::before {
    content: none;
}
.elementor-element-31d563cd > .e-con-inner,
.elementor-element-31d563cd > * { position: relative; z-index: 1; }

/* Heading gold underline */
.elementor-element-12422551 .elementor-heading-title { position: relative; display: inline-block; padding-bottom: 18px; }
.elementor-element-12422551 .elementor-heading-title::after {
    content: ""; position: absolute; bottom: 0; right: 50%; transform: translateX(50%);
    width: 64px; height: 4px; background: var(--ar-accent); border-radius: 4px;
}

/* Counters row: 4 across desktop, 2x2 tablet, 1 col mobile */
.elementor-element-4c0b429e { flex-wrap: nowrap !important; align-items: stretch !important; gap: 24px !important; }
.elementor-element-4c0b429e > .elementor-widget-counter { flex: 1 1 0 !important; }
@media (max-width: 1024px) {
    .elementor-element-4c0b429e { flex-wrap: wrap !important; }
    .elementor-element-4c0b429e > .elementor-widget-counter { flex: 1 1 calc(50% - 12px) !important; max-width: calc(50% - 12px); }
}
@media (max-width: 560px) {
    .elementor-element-4c0b429e > .elementor-widget-counter { flex-basis: 100% !important; max-width: 100%; }
}

/* Counter cards */
.elementor-widget-counter {
    background: linear-gradient(160deg, rgba(31,70,105,0.55), rgba(13,27,41,0.65)) !important;
    border: 1px solid rgba(130,192,204,0.28) !important;
    border-radius: 16px !important;
    padding: 34px 18px 30px !important;
    box-shadow: 0 18px 40px rgba(0,0,0,0.32);
    text-align: center;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.elementor-widget-counter:hover {
    transform: translateY(-8px);
    border-color: var(--ar-accent) !important;
    box-shadow: 0 26px 54px rgba(0,0,0,0.45);
}
.ar-counter-ico {
    width: 62px; height: 62px; margin: 0 auto 16px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(130,192,204,0.12); color: var(--ar-accent);
    border: 1px solid rgba(130,192,204,0.25);
}
.ar-counter-ico svg { width: 34px; height: 34px; }
.elementor-widget-counter .elementor-counter-number-wrapper {
    justify-content: center !important;
    color: var(--ar-accent) !important;
    font-weight: 900 !important;
    font-size: clamp(44px, 5.4vw, 70px) !important;
    line-height: 1 !important;
}
.elementor-widget-counter .elementor-counter-number-suffix,
.elementor-widget-counter .elementor-counter-number-prefix {
    font-size: 0.5em !important; font-weight: 800 !important; vertical-align: super;
}
.elementor-widget-counter .elementor-counter-title {
    color: #cdd9e2 !important; font-size: 17px !important; font-weight: 500 !important; margin-top: 12px !important;
}
/* Force visual order: icon -> number -> label (counter uses column-reverse natively) */
.elementor-widget-counter .elementor-counter { flex-direction: column !important; align-items: center !important; }
.elementor-widget-counter .ar-counter-ico { order: 1; margin: 0 auto 16px !important; }
.elementor-widget-counter .elementor-counter-number-wrapper { order: 2; }
.elementor-widget-counter .elementor-counter-title { order: 3; }

/* ============================================================
   Section sizing: hero stays full-screen; all other Home sections
   size to their content with comfortable padding (no forced 100vh,
   which previously left large empty gaps). Hero + stats are excluded
   so they keep their own dedicated spacing rules.
   ============================================================ */
.elementor-11 > .e-con:not(.elementor-element-4e164737):not(.elementor-element-31d563cd) {
    min-height: 0 !important;
    justify-content: center;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* Trim the oversized inner padding (Elementor default ~90px) that was
   creating large empty bands above/below the content. */
.elementor-11 > .e-con:not(.elementor-element-4e164737):not(.elementor-element-31d563cd) > .e-con-inner {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
}
@media (max-width: 1024px) {
    .elementor-11 > .e-con:not(.elementor-element-4e164737):not(.elementor-element-31d563cd) > .e-con-inner {
        padding-top: 40px !important; padding-bottom: 40px !important;
    }
}
/* Hero keeps its full-screen height. */
.elementor-element-4e164737 { min-height: 100vh !important; }

/* Home sections are reordered in the DOM by theme.js:
   hero -> numbers (stats) -> projects slider -> rest. */
.elementor-11 > .e-con { width: 100%; }

/* Remove the "تابعنا" (follow us / social) section on the Home page. */
.elementor-element-40ae11cd { display: none !important; }

/* Remove the "رؤيتنا" (Vision) section on the Home page. */
.elementor-element-3382a972 { display: none !important; }

/* ============================================================
   Stats bar — reference style: gold icon beside number, dark bar
   overlapping the hero, sitting on a white backdrop.
   ============================================================ */
.elementor-element-31d563cd { min-height: auto !important; padding: 0 24px 18px !important; justify-content: flex-start !important; background: #16304A !important; }
.elementor-element-31d563cd::before { display: none !important; }
.elementor-element-31d563cd .elementor-widget-heading { display: none !important; }
.elementor-element-4c0b429e {
    flex-wrap: nowrap !important;
    max-width: 1180px; margin: -200px auto 0 !important;
    position: relative; z-index: 6;
    background: linear-gradient(160deg, #1f4669 0%, #102537 100%) !important;
    border: 1px solid rgba(163,174,184,0.25) !important;
    border-radius: 18px !important;
    padding: 26px 10px !important;
    box-shadow: 0 26px 55px rgba(0,0,0,0.45) !important;
    gap: 0 !important;
}
.elementor-element-4c0b429e > .elementor-widget-counter {
    background: transparent !important; border: none !important; box-shadow: none !important;
    border-radius: 0 !important; padding: 8px 22px !important; transform: none !important;
    border-inline-end: 1px solid rgba(163,174,184,0.25) !important;
}
.elementor-element-4c0b429e > .elementor-widget-counter:last-child { border-inline-end: none !important; }
.elementor-element-4c0b429e .elementor-counter {
    display: grid !important;
    grid-template-columns: 1fr auto;
    grid-template-areas: "num icon" "title icon";
    align-items: center; gap: 0 16px;
}
.elementor-element-4c0b429e .ar-counter-ico {
    grid-area: icon; margin: 0 !important; width: 52px; height: 52px; border-radius: 14px;
    background: rgba(163,174,184,0.12) !important; border: 1px solid rgba(163,174,184,0.45) !important; color: #a3aeb8 !important;
}
.elementor-element-4c0b429e .ar-counter-ico svg { width: 26px; height: 26px; }
.elementor-element-4c0b429e .elementor-counter-number-wrapper { grid-area: num; justify-content: flex-start !important; color: #ffffff !important; font-size: clamp(26px, 3vw, 38px) !important; margin: 0 !important; }
.elementor-element-4c0b429e .elementor-counter-title { grid-area: title; color: #c9d4dd !important; font-size: 14px !important; margin: 2px 0 0 !important; text-align: right !important; }

/* ============================================================
   "أحدث المشاريع" projects slider (injected after stats)
   ============================================================ */
.ar-projects-slider-section { width: 100%; padding: 4px 24px 70px; background: #16304A !important; min-height: auto; }
.ar-ps-inner { max-width: 1200px; margin: 0 auto; width: 100%; }
.ar-ps-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 34px; gap: 16px; }
.ar-ps-head h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); color: #ffffff; margin: 0; font-weight: 800; }
.ar-ps-viewall { color: #a3aeb8; font-weight: 700; font-size: 0.95rem; display: inline-flex; align-items: center; gap: 8px; }
.ar-ps-viewall:hover { color: #1F4669; }
.ar-ps-wrap { position: relative; }
.ar-ps-track { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; padding: 6px 4px 10px; -ms-overflow-style: none; scrollbar-width: none; }
.ar-ps-track::-webkit-scrollbar { display: none; }
.ar-ps-card { flex: 0 0 282px; scroll-snap-align: start; background: #102233; border: 1px solid rgba(130,192,204,0.18); border-radius: 16px; overflow: hidden; box-shadow: 0 14px 34px rgba(0,0,0,0.35); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.ar-ps-card:hover { transform: translateY(-6px); box-shadow: 0 22px 46px rgba(20,48,74,0.22); }
.ar-ps-card a { display: block; color: inherit; }
.ar-ps-thumb { aspect-ratio: 4/3; background: linear-gradient(135deg, #1F4669, #16304A); position: relative; overflow: hidden; }
.ar-ps-thumb img { width: 100%; height: 100%; object-fit: cover; }
.ar-ps-thumb--ph::after { content: "الريادة"; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: rgba(130,192,204,0.45); font-weight: 800; font-size: 1.2rem; }
.ar-ps-body { padding: 18px 20px 22px; text-align: center; }
.ar-ps-title { color: #fff; font-weight: 700; font-size: 1.1rem; margin: 0 0 4px; }
.ar-ps-loc { color: #a3aeb8; font-size: 0.85rem; }
.ar-ps-nav { position: absolute; top: 42%; transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; background: #ffffff; border: 1px solid #d4dae1; color: #1F4669; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; cursor: pointer; z-index: 3; box-shadow: 0 8px 20px rgba(20,48,74,0.12); transition: background .2s ease, color .2s ease; }
.ar-ps-nav:hover { background: #1F4669; color: #fff; }
.ar-ps-prev { right: -16px; }
.ar-ps-next { left: -16px; }
@media (max-width: 700px) { .ar-ps-card { flex-basis: 80%; } .ar-ps-nav { display: none; } }

/* ============================================================
   "أحدث المشاريع" — native Elementor projects section (.ar-elproj-section)
   Editable in Elementor; this only adds polish (image ratio, hover, width).
   ============================================================ */
/* Row centered + 4 equal cards across (Elementor applies custom classes only
   to widgets, so containers are targeted by their element id). */
.elementor-element-fa1row0 { max-width: 1200px; margin-left: auto; margin-right: auto; }
.elementor-element-fa1row0 > .e-con {
    flex: 1 1 220px !important; width: auto !important; min-width: 0 !important;
    overflow: hidden;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.elementor-element-fa1row0 > .e-con:hover {
    transform: translateY(-6px); box-shadow: 0 24px 48px rgba(0,0,0,0.4);
}
.elementor-element-fa1row0 .elementor-widget-image,
.elementor-element-fa1row0 .elementor-widget-image .elementor-widget-container { width: 100%; line-height: 0; }
.elementor-element-fa1row0 .elementor-widget-image img {
    width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block;
}
.ar-elproj-eyebrow .elementor-heading-title { letter-spacing: 2px; font-weight: 800; }
.ar-elproj-loc .elementor-heading-title { font-weight: 700; }
@media (max-width: 1024px) { .elementor-element-fa1row0 > .e-con { flex-basis: 45% !important; } }
@media (max-width: 600px) { .elementor-element-fa1row0 > .e-con { flex-basis: 100% !important; } }

/* ============================================================
   Home V2 (native Elementor page) — image ratios + polish.
   Custom classes apply to widgets, so image hooks work here.
   ============================================================ */
.ar-v2-pimg img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.ar-v2-aboutimg img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; border-radius: 18px; }
.ar-v2-hero .elementor-widget-heading,
.ar-v2-hero .elementor-widget-text-editor { max-width: 640px; }
.ar-v2-hero .elementor-heading-title { line-height: 1.25; }

/* ============================================================
   "أحدث المشاريع" — Swiper carousel (CPT-driven). Replaces the static
   Elementor projects cards (which are hidden below).
   ============================================================ */
.elementor-element-fa1sec0 { display: none !important; } /* hide old static cards */

.ar-ps2-section { position: relative; width: 100%; padding: 84px 0 88px; overflow: hidden;
    background:
        radial-gradient(1200px 420px at 50% -8%, rgba(130,192,204,0.10), transparent 70%),
        linear-gradient(180deg, #173552 0%, #16304A 55%, #122a40 100%);
}
.ar-ps2-inner { position: relative; z-index: 1; max-width: 1240px; margin: 0 auto; padding: 0 40px; }
.ar-ps2-head { text-align: center; margin-bottom: 34px; }
/* Premium eyebrow with flanking hairlines */
.ar-ps2-eyebrow { display: inline-flex; align-items: center; gap: 12px; color: #a3aeb8; font-weight: 800; font-size: .82rem; letter-spacing: 4px; margin-bottom: 14px; text-transform: uppercase; }
.ar-ps2-eyebrow::before, .ar-ps2-eyebrow::after { content: ""; width: 34px; height: 1px; background: linear-gradient(90deg, transparent, rgba(130,192,204,0.7)); }
.ar-ps2-eyebrow::after { background: linear-gradient(90deg, rgba(130,192,204,0.7), transparent); }
.ar-ps2-title { color: #fff; font-weight: 900; font-size: clamp(1.9rem, 3.2vw, 2.7rem); line-height: 1.25; letter-spacing: -.5px; margin: 0; }
/* Decorative gradient divider with a centred diamond */
.ar-ps2-divider { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 18px auto 0; }
.ar-ps2-divider span { width: 60px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, transparent, #82C0CC); }
.ar-ps2-divider span:last-child { background: linear-gradient(90deg, #82C0CC, transparent); }
.ar-ps2-divider i { width: 9px; height: 9px; transform: rotate(45deg); background: #82C0CC; border-radius: 2px; box-shadow: 0 0 0 4px rgba(130,192,204,0.18); }
.ar-ps2-sub { max-width: 720px; margin: 18px auto 0; color: #c4d2dd; font-size: 1.04rem; line-height: 1.95; font-weight: 500; }

.ar-ps2-tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 22px 0 30px; }
.ar-ps2-tab { font-family: inherit; cursor: pointer; border: 1px solid rgba(130,192,204,0.3); background: transparent; color: #cfdae3; font-weight: 700; font-size: .9rem; padding: 9px 20px; border-radius: 999px; transition: .2s; }
.ar-ps2-tab:hover { border-color: #82C0CC; color: #fff; }
.ar-ps2-tab.is-active { background: #a3aeb8; border-color: #a3aeb8; color: #2a2206; }

/* Static grid layout for the projects */
.ar-ps2-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; align-items: stretch; }
.ar-ps2-grid .ar-ps2-card { height: 100%; }
@media (max-width: 1100px) { .ar-ps2-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 820px)  { .ar-ps2-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px)  { .ar-ps2-grid { grid-template-columns: 1fr; } }

.ar-ps2-wrap { position: relative; }
.ar-ps2-swiper { overflow: hidden; padding: 6px 4px; }
/* Equal-height cards: stretch every slide to the row height */
.ar-ps2-swiper .swiper-wrapper { align-items: stretch; }
.ar-ps2-swiper .swiper-slide { height: auto; display: flex; }
.ar-ps2-card { position: relative; display: flex; flex-direction: column; width: 100%; background: linear-gradient(180deg, #12283d 0%, #0e2032 100%); border: 1px solid rgba(130,192,204,0.16); border-radius: 18px; overflow: hidden; height: 100%; box-shadow: 0 16px 40px rgba(0,0,0,.38); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.ar-ps2-card::after { content: ""; position: absolute; inset: 0; border-radius: 18px; border: 1px solid transparent; pointer-events: none; transition: border-color .3s ease; }
.ar-ps2-card:hover { transform: translateY(-8px); box-shadow: 0 30px 60px rgba(0,0,0,.5); border-color: rgba(130,192,204,0.5); }
.ar-ps2-card:hover::after { border-color: rgba(130,192,204,0.35); }
.ar-ps2-thumb { position: relative; aspect-ratio: 16/11; overflow: hidden; }
.ar-ps2-thumb::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(14,32,50,0) 78%, rgba(14,32,50,0.28) 100%); }
.ar-ps2-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
.ar-ps2-card:hover .ar-ps2-thumb img { transform: scale(1.07); }
.ar-ps2-body { padding: 20px 20px 24px; text-align: center; flex: 1 1 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; }
/* Reserve a fixed 2-line height for the title so all cards are identical */
.ar-ps2-name { color: #fff; font-weight: 800; font-size: 1.12rem; line-height: 1.35; margin: 0 0 12px; min-height: 2.7em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ar-ps2-cat { display: inline-block; color: #cfe3e8; font-weight: 700; font-size: .76rem; letter-spacing: .5px; padding: 5px 14px; border: 1px solid rgba(130,192,204,0.3); border-radius: 999px; background: rgba(130,192,204,0.08); }

.ar-ps2-nav { position: absolute; top: 40%; transform: translateY(-50%); z-index: 5; width: 46px; height: 46px; border-radius: 50%; background: #ffffff !important; border: 0; color: #1F4669 !important; cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 22px rgba(0,0,0,.3); transition: background .2s, color .2s, transform .2s; }
.ar-ps2-nav svg { width: 20px; height: 20px; min-width: 20px; flex: 0 0 20px; display: block; }
.ar-ps2-nav:hover { background: #1F4669 !important; color: #ffffff !important; transform: translateY(-50%) scale(1.08); }
.ar-ps2-prev { right: -22px; }
.ar-ps2-next { left: -22px; }

.ar-ps2-dots { position: static !important; margin-top: 26px; text-align: center; }
.ar-ps2-dots .swiper-pagination-bullet { background: #82C0CC; opacity: .4; width: 9px; height: 9px; }
.ar-ps2-dots .swiper-pagination-bullet-active { background: #a3aeb8; opacity: 1; width: 26px; border-radius: 6px; }

.ar-ps2-cta { text-align: center; margin-top: 30px; }
.ar-ps2-cta a { color: #a3aeb8; font-weight: 800; font-size: .98rem; display: inline-flex; gap: 8px; align-items: center; }
.ar-ps2-cta a:hover { color: #82C0CC; }

@media (max-width: 700px) {
    .ar-ps2-inner { padding: 0 20px; }
    .ar-ps2-nav { display: none; }
}

/* ============================================================
   "كلمة الرئيس التنفيذي" — CEO message section
   ============================================================ */
.ar-ceo-section {
    position: relative; width: 100%; padding: 90px 0; overflow: hidden;
    background:
        radial-gradient(900px 380px at 85% 10%, rgba(130,192,204,0.10), transparent 70%),
        linear-gradient(180deg, #122a40 0%, #16304A 60%, #122a40 100%);
}
.ar-ceo-inner {
    max-width: 1200px; margin: 0 auto; padding: 0 40px;
    display: flex; flex-direction: row; gap: 50px; align-items: center;
}
/* Portrait card with a subtle offset accent frame — image on the RIGHT */
.ar-ceo-media { position: relative; flex: 0 0 40%; max-width: 40%; }
.ar-ceo-body { flex: 1 1 auto; min-width: 0; }
/* Solid offset backdrop rectangle behind the portrait (like reference) */
.ar-ceo-media::before {
    content: ""; position: absolute; inset: 26px -24px -24px 24px; border-radius: 16px;
    background: linear-gradient(160deg, #1F4669, #16304A); z-index: 0;
}
/* Dotted pattern accent at the corner */
.ar-ceo-media::after {
    content: ""; position: absolute; width: 96px; height: 96px; right: -34px; bottom: -34px; z-index: 0;
    background-image: radial-gradient(rgba(130,192,204,0.7) 2px, transparent 2px);
    background-size: 15px 15px;
}
.ar-ceo-media img {
    position: relative; z-index: 1; width: 100%; height: auto; border-radius: 14px;
    box-shadow: 0 26px 60px rgba(0,0,0,0.5); border: 6px solid #ffffff;
    display: block;
}
.ar-ceo-body { text-align: right; position: relative; }
/* Big quotation mark near the heading */
.ar-ceo-body::before {
    content: "\201D"; position: absolute; top: -46px; left: 4px;
    font-family: Georgia, 'Times New Roman', serif; font-size: 6rem; line-height: 1;
    color: rgba(130,192,204,0.35); pointer-events: none;
}
.ar-ceo-eyebrow {
    display: block; color: #ffffff; font-weight: 800; letter-spacing: 0; text-transform: none;
    font-size: clamp(1.6rem, 3vw, 2.2rem); line-height: 1.3; margin-bottom: 22px;
}
.ar-ceo-eyebrow::after { content: none !important; }
.ar-ceo-verse {
    position: relative; margin: 0 0 18px; padding: 0 22px 0 0;
    border-right: 3px solid #82C0CC;
    color: #fff; font-weight: 800; font-size: clamp(1.4rem, 2.4vw, 1.95rem); line-height: 1.7;
}
.ar-ceo-surah { display: block; margin-top: 8px; color: #82C0CC; font-weight: 700; font-size: .9rem; letter-spacing: .5px; }
.ar-ceo-text { color: #c8d5df; font-size: 1.08rem; line-height: 2; font-weight: 500; margin: 0 0 26px; }
.ar-ceo-sign { margin-bottom: 28px; }
.ar-ceo-name { display: block; color: #82C0CC; font-weight: 700; font-size: clamp(1.5rem, 2.6vw, 2rem); line-height: 1.4; font-family: 'Scheherazade New', 'Cairo', sans-serif; }
/* CEO message paragraphs (on the ceo-message page) */
.ar-ceo-msg p { color: #c8d5df; font-size: 1.06rem; line-height: 2; font-weight: 500; margin: 0 0 16px; }
.ar-ceo-msg p.ar-founder-lead { color: #e8eef3; font-weight: 600; border: 0; padding: 0; }
/* CEO-message page: make the section full-bleed like the home one */
.ar-ceo-page .ar-ceo-section { width: 100vw; margin-left: calc(50% - 50vw); }
.ar-ceo-role { display: block; color: #a3aeb8; font-weight: 600; font-size: .95rem; margin-top: 4px; }
.ar-ceo-cta {
    display: inline-flex; align-items: center; gap: 10px;
    background: #1F4669; color: #fff !important; font-weight: 800; font-size: 1rem;
    padding: 14px 32px; border-radius: 999px; border: 1px solid rgba(130,192,204,0.4);
    transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.ar-ceo-cta:hover { background: #82C0CC; color: #102233 !important; transform: translateY(-2px); box-shadow: 0 14px 30px rgba(0,0,0,.35); }
.ar-ceo-cta span { transition: transform .25s ease; }
.ar-ceo-cta:hover span { transform: translateX(-4px); }

@media (max-width: 880px) {
    .ar-ceo-section { padding: 64px 0; }
    .ar-ceo-inner { flex-direction: column-reverse; gap: 30px; padding: 0 22px; }
    .ar-ceo-media { flex: 1 1 auto; max-width: 420px; margin: 0 auto; }
    .ar-ceo-media::before { inset: 14px -14px -14px 14px; }
    .ar-ceo-body { text-align: center; }
    .ar-ceo-eyebrow { justify-content: center; }
}

/* ============================================================
   CEO journey page — photo header + biography article
   ============================================================ */
/* Hide the default page title (the photo header replaces it) */
.ar-ceo-page .ar-page-title { display: none !important; }
.ar-ceo-page .ar-site-content { padding-top: 56px; }

.ar-bio-hero { text-align: center; max-width: 880px; margin: 0 auto 46px; }
.ar-bio-avatar {
    width: 168px; height: 168px; border-radius: 50%; overflow: hidden; margin: 0 auto 20px;
    border: 3px solid rgba(130,192,204,0.5); box-shadow: 0 20px 46px rgba(0,0,0,0.5);
}
.ar-bio-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.ar-bio-eyebrow { display: block; color: #a3aeb8; font-weight: 800; letter-spacing: 3px; font-size: .8rem; text-transform: uppercase; margin-bottom: 8px; }
.ar-bio-name { color: #fff; font-weight: 900; font-size: clamp(1.7rem, 3.2vw, 2.4rem); margin: 0 0 6px; }
.ar-bio-role { display: block; color: #82C0CC; font-weight: 700; font-size: 1.02rem; }
/* Decorative divider under the header */
.ar-bio-hero::after { content: ""; display: block; width: 70px; height: 3px; border-radius: 3px; margin: 22px auto 0; background: linear-gradient(90deg, transparent, #82C0CC, transparent); }

.ar-ceo-bio { max-width: 880px; margin: 0 auto; text-align: right !important; }

/* ============================================================
   Inner content pages (من نحن / خدماتنا / تواصل معنا)
   ============================================================ */
.ar-pg { max-width: 1040px; margin: 0 auto; text-align: right; }
.ar-pg .ar-pg-lead { color: #cdd9e2; font-size: 1.16rem; line-height: 2; font-weight: 500; margin: 0 0 34px; }
.ar-pg h2 { color: #fff; font-weight: 900; font-size: clamp(1.5rem, 2.6vw, 2rem); margin: 1.7em 0 .7em; }
.ar-pg h3 { color: #fff; font-weight: 800; font-size: 1.22rem; margin: 0 0 .55em; }
.ar-pg p { color: #c4d2dd; line-height: 2; }

.ar-pg-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 6px 0; }
.ar-pg-card { background: linear-gradient(180deg, #12283d, #0e2032); border: 1px solid rgba(130,192,204,0.18); border-radius: 16px; padding: 28px 26px; }
.ar-pg-card h3 { color: #82C0CC; }

.ar-pg-values { list-style: none; padding: 0; margin: 0 0 1em; display: flex; flex-wrap: wrap; gap: 12px; }
.ar-pg-values li { background: rgba(130,192,204,0.08); border: 1px solid rgba(130,192,204,0.28); color: #cfe3e8; border-radius: 999px; padding: 10px 22px; font-weight: 700; }

/* Services grid */
.ar-svc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 12px; }
.ar-svc-card { background: linear-gradient(180deg, #12283d, #0e2032); border: 1px solid rgba(130,192,204,0.18); border-radius: 16px; padding: 28px 26px; transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.ar-svc-card:hover { transform: translateY(-6px); border-color: rgba(130,192,204,0.5); box-shadow: 0 22px 46px rgba(0,0,0,.4); }
.ar-svc-card h3 { color: #82C0CC; }
.ar-svc-card p { color: #c4d2dd; line-height: 1.95; margin: 0; }
@media (max-width: 980px) { .ar-svc-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { .ar-svc-grid { grid-template-columns: 1fr; } .ar-pg-cards { grid-template-columns: 1fr; } }

/* Contact page */
.ar-contact-grid { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 44px; align-items: start; }
.ar-contact-info h2, .ar-contact-form-wrap h2 { margin-top: 0; }
.ar-contact-list { list-style: none; padding: 0; margin: 0 0 22px; }
.ar-contact-list li { display: flex; flex-direction: column; gap: 4px; padding: 15px 0; border-bottom: 1px solid rgba(130,192,204,0.15); }
.ar-contact-list li span { color: #a3aeb8; font-size: .84rem; font-weight: 700; }
.ar-contact-list li a { color: #fff; font-weight: 700; font-size: 1.06rem; }
.ar-contact-note { color: #a3aeb8; }

.ar-cform-intro { color: #82C0CC; font-weight: 700; line-height: 1.9; margin: 0 0 18px; font-size: 1.02rem; }
.ar-cform { background: linear-gradient(180deg, #12283d, #0e2032); border: 1px solid rgba(130,192,204,0.18); border-radius: 18px; padding: 30px; }
.ar-cform-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ar-cform label { display: flex; flex-direction: column; gap: 8px; color: #cdd9e2; font-weight: 700; font-size: .92rem; margin-bottom: 16px; }
.ar-cform input, .ar-cform textarea { background: #0c1c2c; border: 1px solid rgba(130,192,204,0.25); border-radius: 10px; color: #fff; padding: 12px 14px; font-family: inherit; font-size: 1rem; outline: none; transition: border-color .2s ease; }
.ar-cform input:focus, .ar-cform textarea:focus { border-color: #82C0CC; }
.ar-cform textarea { resize: vertical; }
.ar-cform button { background: #1F4669; color: #fff; border: 1px solid rgba(130,192,204,0.4); border-radius: 999px; padding: 13px 44px; font-weight: 800; font-size: 1rem; cursor: pointer; transition: background .2s ease, transform .2s ease; }
.ar-cform button:hover { background: #82C0CC; color: #102233; transform: translateY(-2px); }
.ar-cform button:disabled { opacity: .6; cursor: default; }
.ar-cform-msg { margin-top: 14px; font-weight: 700; }
.ar-cform-msg.is-ok { color: #82C0CC; }
.ar-cform-msg.is-err { color: #e98a8a; }
@media (max-width: 820px) { .ar-contact-grid { grid-template-columns: 1fr; gap: 30px; } .ar-cform-row { grid-template-columns: 1fr; } }

/* ============================================================
   "طلب موعد اجتماع عمل" — fixed button + modal
   ============================================================ */
/* Vertical tab pinned to the right edge, vertically centred */
/* Side "طلب موعد اجتماع" tab hidden — the request opens from the header calendar icon instead */
.ar-meet-btn { display: none !important; }
.ar-meet-btn {
    position: fixed; top: 50%; right: 0; z-index: 1000;
    transform: translateY(-50%);
    writing-mode: vertical-rl;
    display: inline-flex; align-items: center; gap: 10px;
    background: linear-gradient(180deg, #3B7596, #1F4669); color: #fff;
    border: 1px solid rgba(130,192,204,0.5); border-right: 0;
    border-radius: 12px 0 0 12px;
    padding: 20px 12px; font-family: inherit; font-weight: 800; font-size: .95rem;
    cursor: pointer; box-shadow: -8px 0 26px rgba(0,0,0,.4);
    transition: padding .2s ease, background .25s ease, box-shadow .2s ease;
}
.ar-meet-btn:hover { background: linear-gradient(180deg, #82C0CC, #3B7596); color: #102233; padding-inline: 16px; box-shadow: -10px 0 32px rgba(0,0,0,.5); }
.ar-meet-btn svg { width: 18px; height: 18px; }
@media (max-width: 860px) {
    .ar-meet-btn { padding: 16px 9px; font-size: .82rem; }
    .ar-meet-btn svg { width: 15px; height: 15px; }
}

.ar-meet-overlay { position: fixed; inset: 0; z-index: 100000; background: rgba(5,12,20,0.74); backdrop-filter: blur(4px); display: flex; align-items: flex-start; justify-content: center; padding: 44px 16px; overflow: auto; }
.ar-meet-overlay[hidden] { display: none; }
.ar-meet-modal { position: relative; width: 100%; max-width: 700px; background: linear-gradient(180deg, #16304A, #102233); border: 1px solid rgba(130,192,204,0.25); border-radius: 22px; padding: 36px 34px; box-shadow: 0 44px 90px rgba(0,0,0,.6); }
.ar-meet-close { position: absolute; top: 14px; left: 18px; background: transparent; border: 0; color: #a3aeb8; font-size: 1.9rem; line-height: 1; cursor: pointer; padding: 0; }
.ar-meet-close:hover { color: #fff; }
.ar-meet-title { color: #fff; font-weight: 900; font-size: clamp(1.3rem, 2.4vw, 1.6rem); margin: 0 0 24px; text-align: center; }
.ar-meet-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ar-meet-form label { display: flex; flex-direction: column; gap: 7px; color: #cdd9e2; font-weight: 700; font-size: .9rem; margin-bottom: 13px; text-align: right; }
.ar-meet-loc { color: #82C0CC; font-weight: 800; font-size: .95rem; text-align: right; margin: 4px 0 10px; padding-top: 6px; border-top: 1px solid rgba(130,192,204,0.18); }
.ar-meet-form input, .ar-meet-form select { background: #0c1c2c; border: 1px solid rgba(130,192,204,0.25); border-radius: 10px; color: #fff; padding: 11px 13px; font-family: inherit; font-size: .98rem; outline: none; transition: border-color .2s ease; }
.ar-meet-form input:focus, .ar-meet-form select:focus { border-color: #82C0CC; }
.ar-meet-form select { appearance: none; -webkit-appearance: none; background-image: linear-gradient(45deg, transparent 50%, #82C0CC 50%), linear-gradient(135deg, #82C0CC 50%, transparent 50%); background-position: calc(0% + 16px) center, calc(0% + 21px) center; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.ar-meet-submit { width: 100%; background: #1F4669; color: #fff; border: 1px solid rgba(130,192,204,0.4); border-radius: 999px; padding: 14px; font-weight: 800; font-size: 1rem; cursor: pointer; transition: background .2s ease, transform .2s ease; margin-top: 4px; }
.ar-meet-submit:hover { background: #82C0CC; color: #102233; transform: translateY(-2px); }
.ar-meet-submit:disabled { opacity: .6; cursor: default; }
.ar-meet-msg { margin-top: 14px; font-weight: 700; text-align: center; }
.ar-meet-msg.is-ok { color: #82C0CC; }
.ar-meet-msg.is-err { color: #e98a8a; }
@media (max-width: 600px) { .ar-meet-row { grid-template-columns: 1fr; } .ar-meet-modal { padding: 30px 20px; } }

/* ============================================================
   Careers page (الوظائف)
   ============================================================ */
.ar-jobs-page .ar-page-title { display: none !important; }
/* Featured careers hero card (image + overlay + briefcase icon) */
.ar-jobs-feature {
    position: relative; max-width: 1040px; margin: 0 auto 40px;
    min-height: 360px; border-radius: 22px; overflow: hidden;
    border: 1px solid rgba(130,192,204,0.45);
    background-size: cover; background-position: center;
    display: flex; align-items: flex-end;
    box-shadow: 0 26px 64px rgba(0,0,0,0.55);
}
.ar-jobs-feature-icon {
    display: none !important; /* removed per client request (careers + suppliers banners) */
}
.ar-jobs-feature-icon svg { width: 26px; height: 26px; }
.ar-jobs-feature-text { position: relative; z-index: 2; padding: 36px 40px; max-width: 720px; }
.ar-jobs-feature-text h1 { color: #82C0CC; font-weight: 900; font-size: clamp(1.9rem, 3.6vw, 2.8rem); margin: 0 0 12px; }
.ar-jobs-feature-text p { color: #e3edf3; font-size: 1.1rem; line-height: 1.95; margin: 0 0 20px; }
.ar-jobs-feature-cta {
    display: inline-flex; align-items: center; gap: 8px;
    background: #82C0CC; color: #102233 !important; font-weight: 800; font-size: 1rem;
    padding: 12px 30px; border-radius: 999px; transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.ar-jobs-feature-cta:hover { background: #fff; transform: translateY(-2px); box-shadow: 0 14px 30px rgba(0,0,0,.4); }

/* Suppliers banner: full image (contain) on the left, clean full-height
   navy text panel on the right — no floating corners over the image. */
.ar-jobs-page .ar-jobs-feature { min-height: 430px; align-items: stretch; justify-content: flex-start; }
.ar-jobs-page .ar-jobs-feature-text {
    display: flex; flex-direction: column; justify-content: center;
    width: 46%; max-width: none; margin: 0; padding: 40px 44px;
    border: 0; border-radius: 0;
    border-inline-start: 1px solid rgba(130,192,204,0.28);
    background: linear-gradient(to left, rgba(9,19,30,0.97) 62%, rgba(9,19,30,0.80) 100%);
}
@media (max-width: 768px) {
    .ar-jobs-page .ar-jobs-feature { flex-direction: column; align-items: stretch; justify-content: flex-end; min-height: 540px; }
    .ar-jobs-page .ar-jobs-feature-text {
        width: 100%; padding: 26px 22px;
        border-inline-start: 0; border-top: 1px solid rgba(130,192,204,0.28);
        background: rgba(9,19,30,0.9);
    }
}

.ar-jobs-join { color: #fff !important; font-weight: 900; text-align: center; font-size: clamp(1.6rem, 2.8vw, 2.2rem); margin: 0 0 14px !important; }
.ar-jobs-intro { text-align: center !important; max-width: 820px; margin: 0 auto 10px !important; }
.ar-jobs .ar-pg-lead, .ar-jobs h2, .ar-jobs h3 { text-align: right; }
.ar-jobs h2 { text-align: center; }
@media (max-width: 600px) {
    .ar-jobs-feature { min-height: 300px; }
    .ar-jobs-feature-text { padding: 26px 22px; }
}
.ar-jobs-why .ar-svc-card { text-align: center; }
.ar-jobs-why .ar-svc-card h3 { color: #82C0CC; }

/* Application form */
.ar-job-form { background: linear-gradient(180deg, #12283d, #0e2032); border: 1px solid rgba(130,192,204,0.18); border-radius: 18px; padding: 30px; max-width: 920px; margin: 8px auto 0; }
.ar-job-sub { color: #fff !important; font-size: 1.05rem !important; margin: 6px 0 16px !important; padding-bottom: 10px; border-bottom: 1px solid rgba(130,192,204,0.2); text-align: right; }
.ar-job-sub:not(:first-child) { margin-top: 26px !important; }
.ar-job-form label { display: flex; flex-direction: column; gap: 8px; color: #cdd9e2; font-weight: 700; font-size: .92rem; margin-bottom: 16px; text-align: right; }
.ar-job-form input[type="text"], .ar-job-form input[type="tel"], .ar-job-form input[type="email"], .ar-job-form select { background: #0c1c2c; border: 1px solid rgba(130,192,204,0.25); border-radius: 10px; color: #fff; padding: 12px 14px; font-family: inherit; font-size: 1rem; outline: none; transition: border-color .2s ease; }
.ar-job-form input:focus, .ar-job-form select:focus { border-color: #82C0CC; }
.ar-job-form select { appearance: none; -webkit-appearance: none; }
/* File upload */
.ar-job-file { gap: 10px; }
.ar-job-file input[type="file"] { background: #0c1c2c; border: 1px dashed rgba(130,192,204,0.4); border-radius: 10px; color: #cdd9e2; padding: 14px; font-family: inherit; cursor: pointer; }
.ar-job-file input[type="file"]::file-selector-button { background: #1F4669; color: #fff; border: 0; border-radius: 8px; padding: 8px 16px; margin-inline-end: 12px; font-family: inherit; font-weight: 700; cursor: pointer; }
/* Acknowledgement */
.ar-job-ack { flex-direction: row !important; align-items: center; gap: 10px; color: #cdd9e2; font-weight: 600; margin: 6px 0 20px; }
.ar-job-ack input { width: 18px; height: 18px; accent-color: #82C0CC; flex: 0 0 18px; }
.ar-job-submit { width: 100%; background: #1F4669; color: #fff; border: 1px solid rgba(130,192,204,0.4); border-radius: 999px; padding: 14px; font-weight: 800; font-size: 1rem; cursor: pointer; transition: background .2s ease, transform .2s ease; }
.ar-job-submit:hover { background: #82C0CC; color: #102233; transform: translateY(-2px); }
.ar-job-submit:disabled { opacity: .6; cursor: default; }
.ar-job-msg { margin-top: 14px; font-weight: 700; text-align: center; }
.ar-job-msg.is-ok { color: #82C0CC; }
.ar-job-msg.is-err { color: #e98a8a; }

/* Supplier / contractor registration form (reuses .ar-job-form) */
.ar-supplier-form input[type="url"], .ar-supplier-form textarea { background: #0c1c2c; border: 1px solid rgba(130,192,204,0.25); border-radius: 10px; color: #fff; padding: 12px 14px; font-family: inherit; font-size: 1rem; outline: none; transition: border-color .2s ease; }
.ar-supplier-form input[type="url"]:focus, .ar-supplier-form textarea:focus { border-color: #82C0CC; }
.ar-supplier-form textarea { resize: vertical; min-height: 96px; }
.ar-supplier-form .ar-job-note { color: var(--ar-muted); font-size: .85rem; margin: -6px 0 14px; text-align: right; }
.ar-supplier-form .ar-job-file { margin-bottom: 14px; }

/* Premium nav dropdown (sub-menu) — brand navy + Cairo, replaces the
   default light Roboto dropdown so sub-items match the site. */
.elementor-nav-menu .elementor-nav-menu--dropdown,
.elementor-nav-menu ul.sub-menu {
    background-color: #16304A !important;
    border: 1px solid rgba(130,192,204,0.25) !important;
    border-radius: 12px !important;
    box-shadow: 0 18px 42px rgba(0,0,0,0.38) !important;
    overflow: hidden;
    padding: 6px !important;
    margin-top: 10px !important;
    min-width: 240px;
}
.elementor-nav-menu a.elementor-sub-item {
    font-family: 'Cairo', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: #dbe5ec !important;
    background-color: transparent !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    line-height: 1.5 !important;
    transition: background-color .2s ease, color .2s ease;
}
.elementor-nav-menu a.elementor-sub-item:hover,
.elementor-nav-menu a.elementor-sub-item:focus,
.elementor-nav-menu a.elementor-sub-item.elementor-item-active {
    background-color: rgba(130,192,204,0.15) !important;
    color: #82C0CC !important;
}

/* Talents section */
.ar-jobs-talents { text-align: center; max-width: 760px; margin: 50px auto 0; padding: 30px; background: rgba(130,192,204,0.06); border: 1px solid rgba(130,192,204,0.2); border-radius: 18px; }
.ar-jobs-talents h2 { margin-top: 0; }
.ar-jobs-talents p { color: #c4d2dd; }
.ar-ceo-bio h2 {
    color: #82C0CC; font-weight: 900; font-size: clamp(1.4rem, 2.6vw, 2rem);
    margin: 1.8em 0 .7em; padding-bottom: .45em;
    border-bottom: 1px solid rgba(130,192,204,0.28);
    text-align: right;
}
.ar-ceo-bio h2:first-child { margin-top: 0; }
.ar-ceo-bio p {
    color: #c8d5df; font-size: 1.1rem; line-height: 2.2; font-weight: 500;
    margin: 0 0 1.25em; text-align: right;
}
.ar-bio-verse {
    text-align: center; color: #82C0CC; font-weight: 800;
    font-size: clamp(1.3rem, 2.8vw, 1.9rem); line-height: 1.9;
    margin: 0 auto 18px; padding: 22px 24px; max-width: 760px;
    border: 0; border-top: 1px solid rgba(130,192,204,0.28);
    border-bottom: 1px solid rgba(130,192,204,0.28);
}
.ar-bio-lead {
    text-align: center !important; color: #dbe5ec !important;
    font-size: 1.18rem !important; font-weight: 700 !important;
    max-width: 780px; margin: 0 auto 10px !important; line-height: 2 !important;
}

/* Executive team grid (About page) — avatar beside name */
.ar-team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 8px; }
.ar-team-card {
    background: linear-gradient(180deg, rgba(130,192,204,0.08), rgba(16,34,51,0.35));
    border: 1px solid rgba(130,192,204,0.22); border-radius: 16px;
    padding: 20px 22px; text-align: right;
    display: flex; flex-direction: row; align-items: center; gap: 16px;
}
.ar-team-avatar {
    flex: 0 0 68px; width: 68px; height: 68px; border-radius: 50%;
    background: linear-gradient(135deg, #1F4669, #16304A);
    border: 2px solid rgba(130,192,204,0.5); overflow: hidden;
    display: flex; align-items: center; justify-content: center;
    color: #82C0CC; font-weight: 800; font-size: 1.5rem;
}
.ar-team-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ar-team-info { display: flex; flex-direction: column; gap: 5px; text-align: right; min-width: 0; }
.ar-team-card .ar-team-name { color: #fff; font-weight: 800; font-size: 1.12rem; }
.ar-team-card .ar-team-role { color: #82C0CC; font-weight: 600; font-size: .9rem; line-height: 1.55; }
@media (max-width: 900px) { .ar-team-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .ar-team-grid { grid-template-columns: 1fr; } }

/* Founder page — layout modeled on majd.sa/ar/the-founder */
.ar-founder-page .ar-page-title { display: none !important; }
.ar-founder-page .ar-site-content { padding-top: 0 !important; }
.ar-founder { color: #c8d5df; }
.ar-founder-hero {
    width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
    min-height: 360px; padding: 64px 24px;
    background-size: cover; background-position: center center; background-repeat: no-repeat;
    display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
    border-bottom: 3px solid #82C0CC;
}
.ar-founder-eyebrow { color: #82C0CC; font-weight: 700; letter-spacing: .05em; margin-bottom: 12px; font-size: 1rem; }
.ar-founder-title { color: #fff; font-weight: 900; font-size: clamp(2.2rem, 5vw, 3.4rem); margin: 0; }
.ar-breadcrumb { margin-top: 18px; color: #cfe0ea; font-size: .95rem; display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.ar-breadcrumb a { color: #82C0CC; text-decoration: none; }
.ar-breadcrumb span { color: #8298a8; }
.ar-founder-body {
    max-width: 1140px; margin: 0 auto; padding: 64px 24px;
    display: grid; grid-template-columns: 330px 1fr; gap: 48px; align-items: start;
}
.ar-founder-photo { position: sticky; top: 100px; text-align: center; }
.ar-founder-photo img { width: 100%; border-radius: 18px; border: 1px solid rgba(130,192,204,0.3); box-shadow: 0 22px 55px rgba(0,0,0,0.45); display: block; }
.ar-founder-name { display: block; color: #fff; font-weight: 800; font-size: 1.35rem; margin-top: 20px; }
.ar-founder-role { display: block; color: #82C0CC; font-weight: 600; margin-top: 7px; font-size: .98rem; }
.ar-founder-text { text-align: right; }
.ar-founder-lead {
    color: #eaf1f6; font-weight: 700; font-size: clamp(1.15rem, 2vw, 1.35rem); line-height: 2;
    margin: 0 0 24px; padding-bottom: 24px; border-bottom: 1px solid rgba(130,192,204,0.25);
}
.ar-founder-text p { color: #c8d5df; font-size: 1.08rem; line-height: 2.15; margin: 0 0 1.25em; }
.ar-founder-text h3 { color: #82C0CC; font-weight: 800; font-size: 1.4rem; margin: 1.7em 0 .6em; }
@media (max-width: 860px) {
    .ar-founder-body { grid-template-columns: 1fr; gap: 30px; padding: 44px 22px; }
    .ar-founder-photo { position: static; max-width: 300px; margin: 0 auto; }
    .ar-founder-hero { min-height: 260px; padding: 48px 20px; }
}

/* Home stats band (أرقام الريادة) — even 3-per-row grid so the 6 figures
   don't split unevenly across rows. */
.elementor-element-v2fce > .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(6, 1fr) !important;
    gap: 24px 12px !important;
    justify-items: center; align-items: start;
}
.elementor-element-v2fce > .e-con-inner > .e-con {
    width: 100% !important; max-width: 220px;
}
.elementor-element-v2fce .elementor-heading-title { white-space: nowrap; }
@media (max-width: 1100px) {
    .elementor-element-v2fce > .e-con-inner { grid-template-columns: repeat(3, 1fr) !important; gap: 40px 18px !important; }
}
@media (max-width: 620px) {
    .elementor-element-v2fce > .e-con-inner { grid-template-columns: repeat(2, 1fr) !important; }
}

/* Organizational chart image */
.ar-orgchart { margin: 0 0 46px; }
.ar-orgchart h2 { margin-top: 0; }
.ar-orgchart-frame {
    display: block; border-radius: 16px; overflow: hidden;
    border: 1px solid rgba(130,192,204,0.28); background: #fff;
    box-shadow: 0 16px 44px rgba(0,0,0,0.35);
}
.ar-orgchart-frame img { width: 100%; display: block; }

/* Board members — zig-zag member list (modeled on majd.sa/ar/board-members) */
.ar-board-list { max-width: 1160px; margin: 0 auto; padding: 60px 24px; display: flex; flex-direction: column; gap: 56px; }
.ar-board-member { display: flex; gap: 46px; align-items: flex-start; }
.ar-board-member:nth-child(even) { flex-direction: row-reverse; }
.ar-board-photo { flex: 0 0 300px; }
.ar-board-photo img { width: 100%; border-radius: 18px; border: 1px solid rgba(130,192,204,0.3); box-shadow: 0 20px 50px rgba(0,0,0,0.42); display: block; }
.ar-board-ph {
    display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 1 / 1.12;
    border-radius: 18px; background: linear-gradient(135deg, #1F4669, #0e2032);
    border: 1px solid rgba(130,192,204,0.3); color: #82C0CC; font-weight: 800; font-size: 3rem;
}
.ar-board-info { flex: 1 1 auto; min-width: 0; text-align: right; }
.ar-board-name { color: #fff; font-weight: 800; font-size: 1.55rem; margin: 0 0 6px; }
.ar-board-role { display: block; color: #82C0CC; font-weight: 700; margin-bottom: 18px; }
.ar-board-bio p { color: #c8d5df; line-height: 2.15; font-size: 1.06rem; margin: 0 0 1.1em; }
.ar-board-bio:not(.ar-open) p:nth-of-type(n+2) { display: none; }
.ar-board-more {
    margin-top: 4px; background: transparent; border: 1px solid rgba(130,192,204,0.5); color: #82C0CC;
    font-weight: 700; border-radius: 999px; padding: 9px 24px; cursor: pointer; font-family: inherit;
    transition: background .2s ease, color .2s ease;
}
.ar-board-more:hover { background: #82C0CC; color: #102233; }
@media (max-width: 820px) {
    .ar-board-member, .ar-board-member:nth-child(even) { flex-direction: column; gap: 22px; }
    .ar-board-photo { flex: none; width: 100%; max-width: 300px; }
}

/* Vision / Mission cards — prominent image banner on top of each card */
.ar-vm-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 8px 0 10px; }
.ar-vm-card {
    display: flex; flex-direction: column; overflow: hidden;
    background: linear-gradient(180deg, rgba(130,192,204,0.08), rgba(16,34,51,0.4));
    border: 1px solid rgba(130,192,204,0.22); border-radius: 18px;
}
.ar-vm-media {
    width: 100%; aspect-ratio: 1 / 1;
    background: linear-gradient(135deg, #1F4669, #102233);
    display: flex; align-items: center; justify-content: center;
    color: rgba(130,192,204,0.85);
    border-bottom: 1px solid rgba(130,192,204,0.22);
}
.ar-vm-media svg { width: 60px; height: 60px; }
.ar-vm-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
.ar-vm-text { padding: 28px 30px; text-align: right; }
.ar-vm-text h3 { color: #82C0CC; margin: 0 0 10px; font-weight: 800; font-size: 1.35rem; }
.ar-vm-text p { color: #c8d5df; line-height: 2; margin: 0; }
@media (max-width: 768px) {
    .ar-vm-grid { grid-template-columns: 1fr; }
    .ar-vm-media { aspect-ratio: 16 / 10; }
}

/* Vision/Mission — accordion layout (رؤيتنا / رسالتنا / قيمنا) */
.ar-vm2 { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; margin: 6px 0 46px; }
.ar-vm2-media { border-radius: 22px; overflow: hidden; aspect-ratio: 1 / 1;
    border: 1px solid rgba(130,192,204,0.25); box-shadow: 0 26px 60px rgba(0,0,0,0.45);
    background: linear-gradient(135deg, #1F4669, #102233); }
.ar-vm2-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: opacity .3s ease; }
/* 3D illustration composite (arrow logo + floating icons) */
.ar-vm2-illus { position: relative; width: 100%; aspect-ratio: 1.16 / 1; border-radius: 24px;
    background: linear-gradient(160deg, #eef1f6 0%, #dde4ec 100%);
    border: 1px solid rgba(255,255,255,0.5); box-shadow: 0 26px 60px rgba(0,0,0,0.45); overflow: hidden; }
.ar-vm2-illus .il { position: absolute; display: block; filter: drop-shadow(0 10px 16px rgba(20,40,60,0.18)); }
.ar-vm2-illus .il-logo    { left: 24%; top: 12%; width: 50%; filter: drop-shadow(0 18px 26px rgba(20,50,80,0.28)); }
.ar-vm2-illus .il-cloud1  { left: 12%; top: 3%;  width: 23%; }
.ar-vm2-illus .il-cloud2  { left: 68%; top: 55%; width: 30%; }
.ar-vm2-illus .il-diamond { left: 1%;  top: 30%; width: 22%; animation: ar-float 5s ease-in-out infinite; }
.ar-vm2-illus .il-lamp    { left: 74%; top: 16%; width: 18%; animation: ar-float 6s ease-in-out infinite; }
.ar-vm2-illus .il-cone    { left: 7%;  top: 72%; width: 16%; }
.ar-vm2-illus .il-plant   { left: 69%; top: 80%; width: 10%; }
@keyframes ar-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
.ar-vm2-content { text-align: right; }
.ar-vm2-eyebrow { display: inline-block; color: #82C0CC; font-weight: 800; letter-spacing: 4px; font-size: .8rem; margin-bottom: 10px; }
.ar-vm2-title { color: #fff; font-weight: 800; font-size: clamp(1.7rem, 3.4vw, 2.5rem); margin: 0 0 14px; }
.ar-vm2-lead { color: #c7d3dc; line-height: 1.95; margin: 0 0 22px; }

.ar-acc { display: flex; flex-direction: column; gap: 12px; }
.ar-acc-item { border: 1px solid rgba(130,192,204,0.22); border-radius: 14px;
    background: rgba(255,255,255,0.02); overflow: hidden; transition: border-color .3s, background .3s; }
.ar-acc-head { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 15px 20px; background: transparent; border: 0; cursor: pointer;
    color: #fff; font-weight: 700; font-size: 1.05rem; font-family: inherit; text-align: right; }
.ar-acc-ico { width: 24px; height: 24px; flex: 0 0 auto; border-radius: 50%;
    border: 1px solid rgba(130,192,204,0.5); position: relative; transition: transform .3s, background .3s, border-color .3s; }
.ar-acc-ico::before { content: ""; position: absolute; top: 50%; left: 50%;
    width: 7px; height: 7px; border-right: 2px solid #82C0CC; border-bottom: 2px solid #82C0CC;
    transform: translate(-50%, -70%) rotate(45deg); transition: border-color .3s; }
.ar-acc-body { max-height: 0; overflow: hidden; transition: max-height .38s ease; }
.ar-acc-body p { margin: 0; padding: 0 20px 18px; color: #c7d3dc; line-height: 1.95; }
.ar-acc-item.ar-open { border-color: #82C0CC; background: rgba(130,192,204,0.08); }
.ar-acc-item.ar-open .ar-acc-body { max-height: 460px; }
.ar-acc-item.ar-open .ar-acc-ico { background: #82C0CC; border-color: #82C0CC; transform: rotate(180deg); }
.ar-acc-item.ar-open .ar-acc-ico::before { border-color: #102233; }
@media (max-width: 820px) {
    .ar-vm2 { grid-template-columns: 1fr; gap: 26px; }
    .ar-vm2-media { order: -1; aspect-ratio: 16 / 10; }
    .ar-vm2-illus { order: -1; max-width: 420px; margin: 0 auto; }
}

/* ============================================================
   "خبرة تمتد لسنوات في عالم الإنشاءات" (about) — force side-by-side
   with the image on the LEFT and the text on the RIGHT (RTL).
   Stacks on mobile. (Elementor container #v2fb5)
   ============================================================ */
@media (min-width: 768px) {
    .elementor-element-v2fb5 > .e-con-inner {
        display: flex !important;
        flex-direction: row-reverse !important;   /* image (1st child) -> left, text -> right */
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 44px !important;
    }
    .elementor-element-v2fb5 > .e-con-inner > .elementor-element-v2fae,
    .elementor-element-v2fb5 > .e-con-inner > .elementor-element-v2fb4 {
        flex: 1 1 0 !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-v2fb5 > .e-con-inner {
        display: flex !important;
        flex-direction: column-reverse !important;  /* text on top, image below */
    }
    .elementor-element-v2fb5 > .e-con-inner > .elementor-element-v2fae,
    .elementor-element-v2fb5 > .e-con-inner > .elementor-element-v2fb4 {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* V1 partners (Elementor) — logo placeholder sizing */
.ar-elpart-img img { max-height: 50px; width: auto; object-fit: contain; opacity: 0.85; filter: grayscale(1); transition: filter .25s ease, opacity .25s ease; }
.ar-elpart-img img:hover { filter: grayscale(0); opacity: 1; }

/* Partners logo slider (auto-moving) — compact square logo boxes */
.ar-plogo-swiper { width: 100% !important; overflow: hidden; grid-column: 1 / -1 !important; flex: 1 1 100% !important; }
.ar-plogo-swiper .swiper-wrapper { transition-timing-function: linear !important; align-items: stretch; }
.ar-plogo-swiper .swiper-slide { width: min(170px, 46vw) !important; height: auto; display: flex; }
.ar-plogo-swiper .swiper-slide > .e-con {
    width: 100% !important; aspect-ratio: 1 / 1 !important; min-height: 0 !important; height: auto !important;
    align-items: center !important; justify-content: center !important;
}
.ar-plogo-swiper .elementor-widget-image,
.ar-plogo-swiper .elementor-widget-image .elementor-widget-container { width: 100%; display: flex; align-items: center; justify-content: center; }
.ar-plogo-swiper .elementor-widget-image img {
    max-height: 70% !important; max-width: 82% !important; width: auto !important; object-fit: contain;
    filter: none !important; opacity: 1 !important;
}

/* ============================================================
   "شركاؤنا" partners section (injected before the footer)
   Placeholder logo cards — replace with real client logos later.
   ============================================================ */
.ar-partners-section { width: 100%; padding: 72px 24px 84px; background: #16304A; position: relative; }
.ar-partners-inner { max-width: 1200px; margin: 0 auto; width: 100%; text-align: center; }
.ar-partners-eyebrow { color: var(--ar-accent); font-weight: 700; font-size: 0.9rem; letter-spacing: 2px; margin-bottom: 10px; }
.ar-partners-title { font-size: clamp(1.7rem, 3vw, 2.4rem); color: #fff; font-weight: 800; margin: 0 0 14px; }
.ar-partners-underline { width: 64px; height: 4px; background: var(--ar-accent); border-radius: 4px; margin: 0 auto 18px; }
.ar-partners-sub { color: var(--ar-text-soft); max-width: 620px; margin: 0 auto 48px; line-height: 1.8; }
.ar-partners-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 22px; }
.ar-partner-card {
    aspect-ratio: 3 / 2;
    background: rgba(255,255,255,0.04);
    border: 1px solid var(--ar-border);
    border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    position: relative; overflow: hidden;
    transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.ar-partner-card:hover { transform: translateY(-5px); border-color: var(--ar-accent); background: rgba(255,255,255,0.07); }
.ar-partner-card img { max-width: 70%; max-height: 60%; object-fit: contain; filter: grayscale(1) opacity(0.85); transition: filter .25s ease; }
.ar-partner-card:hover img { filter: grayscale(0) opacity(1); }
.ar-partner-ph { display: flex; flex-direction: column; align-items: center; gap: 8px; color: var(--ar-muted); }
.ar-partner-ph svg { width: 34px; height: 34px; opacity: 0.5; }
.ar-partner-ph span { font-size: 0.8rem; font-weight: 600; letter-spacing: 1px; }
@media (max-width: 1024px) { .ar-partners-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 600px) { .ar-partners-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; } .ar-partners-section { padding: 54px 18px 60px; } }

/* ---- Logo sizing: comfortable navbar height + smaller logo on mobile ---- */
.elementor-location-header > .e-con { padding-top: 16px !important; padding-bottom: 16px !important; }
@media (max-width: 600px) {
    .elementor-element-4e01f69e img { height: 44px !important; }
    .elementor-element-27ecc2cd img { height: 56px !important; }
}

/* Mission & Vision (رسالتنا / رؤيتنا): image on the RIGHT, text on the LEFT
   (right-aligned) for consistent RTL. Mission's DOM is content-first so it
   needs row-reverse to push the image right; Vision's DOM is image-first so
   it is already image-right (no reverse). */
.elementor-element-35701f59 > .e-con-inner { flex-direction: row-reverse !important; }

/* Unify the Mission section background with the other content sections
   (#16304A dark navy) so there is no color banding down the page. */
.elementor-element-35701f59 { background-color: #16304A !important; }

/* Right-align (true RTL start) the About + Mission text. Elementor had these
   set to text-align:end, which in an RTL context renders on the LEFT. */
.elementor-element-22e6412 .elementor-heading-title,
.elementor-element-22e6412 .elementor-widget-text-editor,
.elementor-element-22e6412 .elementor-widget-text-editor *,
.elementor-element-35701f59 .elementor-heading-title,
.elementor-element-35701f59 .elementor-widget-text-editor,
.elementor-element-35701f59 .elementor-widget-text-editor * {
    text-align: right !important;
}

/* Home content FULL-BLEED (edge-to-edge): remove the theme's boxed wrapper
   (max-width + side padding) so the hero and every section span the full
   viewport width and sit flush under the header. */
.home .ar-site-content,
.page-id-11 .ar-site-content {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}
.home #ar-main, .page-id-11 #ar-main {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}
.home .elementor-11, .page-id-11 .elementor-11 { width: 100%; }

/* Counter / stats block */
.ar-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 24px; }
.ar-stat { text-align: center; padding: 24px; }
.ar-stat .ar-stat-num { font-size: clamp(2.2rem, 4vw, 3.4rem); font-weight: 800; color: var(--ar-accent); line-height: 1; }
.ar-stat .ar-stat-label { color: var(--ar-text-soft); margin-top: 8px; }

/* ==========================================================================
   12. Responsive
   ========================================================================== */
@media (max-width: 980px) {
    .ar-footer-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 820px) {
    .ar-menu-toggle { display: inline-block; }
    .ar-main-nav { display: none; position: absolute; top: 100%; right: 0; left: 0; background: var(--ar-bg); border-bottom: 1px solid var(--ar-border); padding: 16px 24px; }
    .ar-main-nav.is-open { display: block; }
    .ar-main-nav ul { flex-direction: column; gap: 16px; }
    .ar-section { padding: 56px 0; }
    body { font-size: 16px; }
}
@media (max-width: 560px) {
    .ar-footer-grid { grid-template-columns: 1fr; }
}

/* ============================================================
   Client tweaks: font, nav button, footer cleanup
   ============================================================ */
/* Site-wide font: Cairo */
body,
h1, h2, h3, h4, h5, h6, p,
.elementor-heading-title,
.elementor-widget-text-editor, .elementor-widget-text-editor *,
.elementor-button, .elementor-icon-list-text,
.elementor-nav-menu .elementor-item, .elementor-widget-icon-list,
.ar-ps2-section, .ar-ps2-section * {
    font-family: 'Cairo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* Home page typeface: Scheherazade New (overrides Cairo on the home page only) */
body.home,
body.home h1, body.home h2, body.home h3, body.home h4, body.home h5, body.home h6, body.home p,
body.home .elementor-heading-title,
body.home .elementor-widget-text-editor, body.home .elementor-widget-text-editor *,
body.home .elementor-button, body.home .elementor-icon-list-text,
body.home .elementor-nav-menu .elementor-item, body.home .elementor-widget-icon-list,
body.home .ar-ps2-section, body.home .ar-ps2-section *,
body.home .ar-ceo-section, body.home .ar-ceo-section *,
body.home .elementor-widget-heading .elementor-heading-title,
.elementor-173 .elementor-widget-heading .elementor-heading-title {
    font-family: 'Scheherazade New', 'Cairo', sans-serif !important;
}

/* Header "تواصل معنا" as a round icon button */
.elementor-element-128ebd28 { display: inline-flex !important; }
.ar-contact-iconbtn {
    width: 48px !important; height: 48px !important; min-width: 0 !important;
    padding: 0 !important; border-radius: 50% !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
}
.ar-contact-iconbtn .ar-contact-ico { display: inline-flex; line-height: 0; }
.ar-contact-iconbtn .ar-contact-ico svg { width: 21px; height: 21px; }
.ar-contact-iconbtn:hover { transform: translateY(-2px); }
/* Header meeting button with label: clear filled pill "طلب موعد اجتماع" */
.ar-contact-iconbtn.ar-has-label {
    width: auto !important; height: auto !important; border-radius: 999px !important;
    padding: 10px 20px !important; gap: 9px !important;
    background: #82C0CC !important; background-image: none !important;
    color: #102233 !important; border: 0 !important;
    box-shadow: 0 6px 18px rgba(130,192,204,0.35) !important;
}
.ar-contact-iconbtn.ar-has-label:hover { background: #9fd0da !important; transform: translateY(-2px); }
.ar-contact-iconbtn.ar-has-label svg { width: 18px !important; height: 18px !important; stroke: #102233 !important; }
.ar-contact-iconbtn .ar-meet-label { font-family: inherit; font-weight: 800; font-size: .98rem; white-space: nowrap; color: #102233 !important; }

/* Footer: remove the "روابط إضافية" column */
.elementor-element-2b977466 { display: none !important; }

/* Footer: transparent column boxes — show the background image directly */
.elementor-element-52d664ab,
.elementor-element-4ecd4d70,
.elementor-element-670ecba,
.elementor-element-4500d2de {
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 0 !important;
}
/* Keep footer text readable on the bare image */
.elementor-location-footer .elementor-widget-container,
.elementor-location-footer h1, .elementor-location-footer h2,
.elementor-location-footer h3, .elementor-location-footer h4,
.elementor-location-footer p, .elementor-location-footer a,
.elementor-location-footer li { text-shadow: 0 1px 6px rgba(0,0,0,0.75); }

/* Footer: remove the chevron icons next to the links */
.elementor-location-footer .elementor-icon-list-icon { display: none !important; }
.elementor-location-footer .elementor-icon-list-text { padding-inline-start: 0 !important; padding-inline-end: 0 !important; }

/* Footer: tidy column spacing after removing the 4th column —
   constrain + center the row and let the 3 columns fill evenly. */
.elementor-element-52d664ab {
    max-width: 1200px !important;
    margin-inline: auto !important;
    justify-content: center !important;
    gap: 36px !important;
}
.elementor-element-52d664ab > .e-con {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
}

/* ==========================================================================
   Home page — make the section headlines bold and clearly visible
   (V2 is the front page = .elementor-173; also covers any home template).
   ========================================================================== */
.home .elementor-widget-heading .elementor-heading-title,
.elementor-173 .elementor-widget-heading .elementor-heading-title {
    font-family: 'Scheherazade New', var(--ar-font) !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: 0 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,0.55) !important;
}
/* Big section titles: heavier weight + tighter, sharper look */
.home .elementor-widget-heading.elementor-widget-heading h1.elementor-heading-title,
.home .elementor-widget-heading.elementor-widget-heading h2.elementor-heading-title,
.elementor-173 .elementor-widget-heading h1.elementor-heading-title,
.elementor-173 .elementor-widget-heading h2.elementor-heading-title {
    font-weight: 900 !important;
    line-height: 1.25 !important;
}

/* ============================================================
   Gray (brand) accent on button hover — site-wide
   ============================================================ */
.ar-btn:hover, button:hover, input[type="submit"]:hover,
.ar-cform button:hover, .ar-meet-submit:hover, .ar-job-submit:hover,
.ar-ceo-cta:hover, .ar-jobs-feature-cta:hover,
.elementor-button:hover, .elementor-button:focus {
    background: #a3aeb8 !important;
    background-color: #a3aeb8 !important;
    background-image: none !important;
    color: #102233 !important;
    border-color: #a3aeb8 !important;
}
.ar-meet-btn:hover { background: #a3aeb8 !important; background-image: none !important; color: #102233 !important; }
.ar-ps2-nav:hover { background: #a3aeb8 !important; color: #102233 !important; }
.ar-cform button:hover span, .ar-ceo-cta:hover span, .ar-jobs-feature-cta:hover span { color: #102233 !important; }

/* ============================================================
   Scroll experience — Lenis smooth scroll + reveal + snap
   ============================================================ */
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }
.lenis.lenis-smooth iframe { pointer-events: none; }

/* Reveal-on-scroll */
.ar-reveal { opacity: 0; transform: translateY(34px); transition: opacity .75s ease, transform .75s cubic-bezier(.2,.7,.2,1); will-change: opacity, transform; }
.ar-reveal.ar-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
    .ar-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* (Scroll-snap intentionally omitted — it conflicts with Lenis smooth scroll, and the Majd reference itself uses smooth scroll without snap.) */

/* ============================================================
   Premium header — sticky, transparent over hero → solid on scroll
   (CSS/JS only; Elementor header data untouched & editable)
   ============================================================ */
.elementor-location-header { position: -webkit-sticky; position: sticky; top: 0; z-index: 9999; }
.elementor-element-68aa29f6 {
    transition: background-color .45s ease, box-shadow .45s ease, backdrop-filter .45s ease, padding .35s ease !important;
}
body:not(.ar-scrolled) .elementor-element-68aa29f6 {
    background-color: transparent !important;
    box-shadow: none !important;
}
body.ar-scrolled .elementor-element-68aa29f6 {
    background-color: rgba(16,34,51,0.92) !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.34) !important;
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}

/* Premium nav hover — animated underline */
.elementor-nav-menu .elementor-item { position: relative; transition: color .25s ease; }
.elementor-nav-menu .elementor-item::after {
    content: ""; position: absolute; right: 0; bottom: 2px; height: 2px; width: 0;
    background: #82C0CC; border-radius: 2px; transition: width .32s cubic-bezier(.2,.7,.2,1);
}
.elementor-nav-menu .elementor-item:hover::after,
.elementor-nav-menu .elementor-item.elementor-item-active::after { width: 100%; }
.elementor-nav-menu .elementor-item:hover { color: #82C0CC !important; }

/* About page top banner (نبذة عنا) — full-bleed hero image */
.ar-about-banner { width: 100vw; margin-left: calc(50% - 50vw); margin-top: -24px; margin-bottom: 46px; line-height: 0; }
.ar-about-banner img { width: 100%; height: auto; display: block; }
@media (max-width: 600px) { .ar-about-banner { margin-bottom: 28px; } }

/* ============================================================
   Image reveal — subtle scale/fade as the section enters view
   ============================================================ */
.ar-reveal .elementor-widget-image img,
.ar-reveal .ar-ceo-media img,
.ar-reveal .ar-jobs-feature { transition: transform 1s cubic-bezier(.2,.7,.2,1), opacity .8s ease; }
.ar-reveal:not(.ar-in) .elementor-widget-image img,
.ar-reveal:not(.ar-in) .ar-ceo-media img { transform: scale(1.06); opacity: .55; }

/* ============================================================
   Typography polish (no text changes — spacing/rhythm only)
   ============================================================ */
.elementor-widget-heading .elementor-heading-title { letter-spacing: -0.01em; }
.elementor-widget-text-editor { line-height: 1.95; }
.elementor-widget-text-editor p { margin-bottom: 1.1em; }

/* ============================================================
   Solid two-tone navy section rhythm (#16304A / #102233)
   ============================================================ */
html, body { background-color: #102233 !important; }
/* Flatten custom-section gradients to solid navy */
.ar-ceo-section { background: #16304A !important; }
.ar-ps2-section { background: #102233 !important; }
.elementor-element-31d563cd { background: #16304A !important; }
/* Home top-level sections alternate the two navy shades (solid, no gradients) */
.elementor-element-v2fac   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-v2fb5   { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2fc1   { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2fce   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-v2fe6   { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2ff4   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-v2ff8   { background-color:#102233 !important; background-image:none !important; }
.elementor-element-f61f7e5 { background-color:#102233 !important; background-image:none !important; }
.elementor-element-fb3a4f1 { background-color:#16304A !important; background-image:none !important; }

/* ============================================================
   Global: Scheherazade New everywhere, smaller size, justified text
   ============================================================ */
:root { --ar-font: 'Scheherazade New', 'Cairo', sans-serif; }
body, body h1, body h2, body h3, body h4, body h5, body h6, body p, body span, body a, body li, body div,
body .elementor-heading-title,
body .elementor-widget-heading .elementor-heading-title,
body .elementor-widget-heading .elementor-heading-title *,
body .elementor-widget-text-editor, body .elementor-widget-text-editor *,
body .elementor-button, body .elementor-icon-list-text,
body .elementor-nav-menu .elementor-item, body .elementor-widget-icon-list,
body .ar-ps2-section *, body .ar-ceo-section *, body .ar-acc *, body .ar-vm2 *,
body .ar-founder *, body .ar-pg *, body .ar-team-card *, body .ar-board-member *,
body .ar-meet-form *, body .ar-meet-modal * {
    font-family: 'Scheherazade New', 'Cairo', sans-serif !important;
}
/* Smaller base text */
body { font-size: 14px; }
body .elementor-widget-text-editor, body .elementor-widget-text-editor p { font-size: 14px; }
/* Justify is applied smartly via JS (skips centered text) so that
   centered headings/subtitles stay centered. */

/* "خبرة تمتد لسنوات في عالم الإنشاءات" — keep on one line */
.elementor-element-v2fb0 .elementor-heading-title { white-space: nowrap; font-size: clamp(1.35rem, 2.9vw, 2rem) !important; }
@media (max-width: 520px) { .elementor-element-v2fb0 .elementor-heading-title { white-space: normal; } }

/* Projects section heading + subheading stay centered */
.ar-ps2-head, .ar-ps2-sub, .ar-ps2-title, .ar-ps2-eyebrow { text-align: center !important; }

/* ============================================================
   Re-alternation: من نحن = light; header + footer = dark
   ============================================================ */
body:not(.ar-scrolled) .elementor-element-68aa29f6,
body.ar-scrolled .elementor-element-68aa29f6 { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2fac   { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2fb5   { background-color:#16304A !important; background-image:none !important; }
.ar-ceo-section            { background:#102233 !important; }
.elementor-element-v2fc1   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-v2fce   { background-color:#102233 !important; background-image:none !important; }
.ar-ps2-section            { background:#16304A !important; }
.elementor-element-v2fe6   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-v2ff4   { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2ff8   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-f61f7e5 { background-color:#102233 !important; background-image:none !important; }
.elementor-element-fb3a4f1 { background-color:#16304A !important; background-image:none !important; }
.elementor-location-footer > .e-con, .elementor-132 > .elementor-element-69611a80 { background-color:#102233 !important; background-image:none !important; }

/* ============================================================
   Corrected real-ID alternation (home). من نحن light onward.
   ============================================================ */
.elementor-element-33f3c7e,
.elementor-element-33f3c7e > .e-con-inner > .e-con { background-color:#102233 !important; background-image:none !important; }
.elementor-element-2e27189,
.elementor-element-2e27189 .ar-ceo-section { background-color:#16304A !important; background:#16304A !important; }
.elementor-element-592b1c5 { background-color:#102233 !important; background-image:none !important; }
.elementor-element-v2fe6   { background-color:#16304A !important; background-image:none !important; }
.elementor-element-f61f7e5 { background-color:#102233 !important; background-image:none !important; }
.elementor-element-93ee592 { background-color:#16304A !important; background-image:none !important; }

/* ============================================================
   Home: unify text white + stats one row + equal section sizes
   ============================================================ */
.home .elementor-widget-heading .elementor-heading-title,
.home .elementor-widget-text-editor,
.home .elementor-widget-text-editor p,
.home .elementor-widget-text-editor li,
.home .ar-ceo-msg, .home .ar-ceo-msg p,
.home .ar-ceo-name,
.home .elementor h1,.home .elementor h2,.home .elementor h3,
.home .elementor h4,.home .elementor h5,.home .elementor h6 { color:#ffffff !important; }

/* Stats: keep all figures on a single row */
.home .elementor-element-d531e95 { flex-wrap:nowrap !important; justify-content:space-between !important; gap:12px !important; }
.home .elementor-element-d531e95 > .elementor-element { flex:1 1 0 !important; width:auto !important; min-width:0 !important; text-align:center !important; }
@media (max-width:767px){
  .home .elementor-element-d531e95 { flex-wrap:wrap !important; }
  .home .elementor-element-d531e95 > .elementor-element { flex:1 1 30% !important; }
}

/* Equalize main section heights */
.home .elementor-element-v2fb5,
.home .elementor-element-33f3c7e,
.home .elementor-element-2e27189,
.home .elementor-element-592b1c5,
.home .elementor-element-v2fe6,
.home .elementor-element-f61f7e5,
.home .elementor-element-93ee592 {
  min-height:640px !important;
  padding-top:72px !important;
  padding-bottom:72px !important;
  justify-content:center !important;
}

/* ============================================================
   Equal-size tuning v2: tighten the tall sections toward others
   ============================================================ */
.home .elementor-element-v2fb5,
.home .elementor-element-33f3c7e,
.home .elementor-element-2e27189,
.home .elementor-element-592b1c5,
.home .elementor-element-93ee592,
.home .ar-ps2-section,
.home .elementor-element-f61f7e5 {
  min-height:720px !important;
  padding-top:60px !important;
  padding-bottom:60px !important;
  justify-content:center !important;
}
/* trim client-logo grid so عملاؤنا matches the rest */
.home .elementor-element-2ba3843 { gap:12px !important; }
.home .elementor-element-2ba3843 img { max-height:46px !important; width:auto !important; }

/* ============================================================
   Fix: white icon-box text (حلول معمارية) + smaller stat numbers
   ============================================================ */
.home .elementor-widget-icon-box .elementor-icon-box-title,
.home .elementor-widget-icon-box .elementor-icon-box-title a,
.home .elementor-widget-icon-box .elementor-icon-box-description,
.home .elementor-icon-box-title,
.home .elementor-icon-box-description { color:#ffffff !important; }

/* Stats: reduce number size so 6 fit neatly on one row */
.home .elementor-counter-number { font-size:40px !important; line-height:1.1 !important; }
.home .elementor-counter-number-suffix { font-size:24px !important; }
.home .elementor-counter-title { font-size:15px !important; }

/* ============================================================
   Clients & Partners logo marquee slider (enlarged, auto-scroll)
   ============================================================ */
.ar-mq-viewport{
  overflow:hidden; width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);
}
.home .ar-mq-track{
  display:flex !important; flex-wrap:nowrap !important; width:max-content !important;
  grid-template-columns:none !important; gap:0 !important; align-items:center !important;
  animation:ar-mq-scroll 40s linear infinite;
}
.home .ar-mq-track:hover{ animation-play-state:paused; }
.home .ar-mq-track > *{ flex:0 0 auto !important; width:auto !important; margin:0 6px !important; }
.home .ar-mq-track img{ height:88px !important; max-height:88px !important; width:auto !important; object-fit:contain; }
@keyframes ar-mq-scroll{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* Marquee must run LTR so the track aligns correctly (RTL page) */
.ar-mq-viewport, .home .ar-mq-track { direction:ltr !important; }

/* Bigger logos + tighter (less empty) clients/partners sections */
.home .ar-mq-track img{ height:132px !important; max-height:132px !important; }
.home .elementor-element-f61f7e5,
.home .elementor-element-93ee592{
  min-height:480px !important;
  padding-top:56px !important;
  padding-bottom:56px !important;
}

/* ============================================================
   Projects display overhaul: full images, bigger cards,
   one-line titles, autoplay carousel, no side arrows, unified.
   ============================================================ */
/* Home carousel */
.ar-ps2-nav { display:none !important; }
.ar-ps2-thumb { aspect-ratio: 3 / 2 !important; background:#0b1b2b; }
.ar-ps2-thumb::after { display:none !important; }
.ar-ps2-thumb img { object-fit: contain !important; }
.ar-ps2-name {
  font-size:0.92rem !important; line-height:1.4 !important; margin:0 0 10px !important;
  min-height:0 !important; -webkit-line-clamp:1 !important; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis; max-width:100%;
}
.ar-ps2-body { padding:16px 16px 20px !important; }

/* Archive listing + related — unify to the carousel card look, full images */
.ar-archive-grid { grid-template-columns: repeat(3, 1fr); gap:26px; }
.ar-archive-grid .ar-card, .ar-related .ar-card {
  background: linear-gradient(180deg,#12283d 0%,#0e2032 100%) !important;
  border:1px solid rgba(130,192,204,0.16) !important; border-radius:18px !important;
  box-shadow:0 16px 40px rgba(0,0,0,.38); overflow:hidden;
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.ar-archive-grid .ar-card:hover, .ar-related .ar-card:hover {
  transform:translateY(-8px); box-shadow:0 30px 60px rgba(0,0,0,.5); border-color:rgba(130,192,204,0.5);
}
.ar-card-thumb { aspect-ratio: 3 / 2 !important; background:#0b1b2b !important; }
.ar-card-thumb img { object-fit: contain !important; }
.ar-card .ar-card-body { padding:16px 18px 20px !important; text-align:center; }
.ar-entry-title {
  font-size:0.98rem !important; line-height:1.4 !important; margin:0 0 8px !important;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.ar-card-tag { align-self:center !important; }

/* Single project — hero + content images shown fully, nothing cropped */
.ar-project-hero {
  aspect-ratio:auto !important; max-height:none; border-radius:16px;
  background:#0b1b2b; display:flex; align-items:center; justify-content:center;
}
.ar-project-hero img { width:100% !important; height:auto !important; object-fit:contain !important; display:block; }
.ar-entry-content img { max-width:100%; height:auto; border-radius:12px; }

/* ============================================================
   Projects: remove type/category tag (keep name) + zoom out images
   ============================================================ */
.ar-ps2-cat, .ar-card-tag { display:none !important; }
.ar-ps2-thumb { padding:16px !important; box-sizing:border-box !important; }
.ar-card-thumb { padding:16px !important; box-sizing:border-box !important; }
.ar-project-hero { padding:16px; }
.ar-project-hero img { max-height:520px; }

/* ============================================================
   Careers page: image beside the "إنضم" text (no boxes)
   ============================================================ */
.ar-jobs-join-row { display:grid; grid-template-columns: 1fr 1fr; gap:44px; align-items:center; margin:8px 0 46px; }
.ar-jobs-join-row .ar-jobs-join { margin-top:0; }
.ar-jobs-join-media img { width:100%; display:block; border-radius:18px; object-fit:cover; aspect-ratio:4/3; box-shadow:0 18px 44px rgba(0,0,0,.34); }
.ar-jobs-join-text { align-self:center; }
@media (max-width:820px){ .ar-jobs-join-row { grid-template-columns:1fr; gap:24px; } .ar-jobs-join-media { order:-1; } }

/* ============================================================
   Services page (خدماتنا): no boxes — clean title + description
   ============================================================ */
.page-id-355 .ar-svc-grid{ display:block !important; }
.page-id-355 .ar-svc-card{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  border-radius:0 !important; padding:0 0 22px !important; margin:0 0 22px !important;
  border-bottom:1px solid rgba(130,192,204,0.18) !important; text-align:right;
}
.page-id-355 .ar-svc-card:last-child{ border-bottom:0 !important; margin-bottom:0 !important; padding-bottom:0 !important; }
.page-id-355 .ar-svc-card h3{
  color:#82C0CC !important; font-size:1.2rem !important; font-weight:800 !important;
  margin:0 0 8px !important; padding-right:14px; border-right:3px solid #82C0CC;
}
.page-id-355 .ar-svc-card p{ color:#c8d6e0 !important; margin:0 !important; line-height:1.95 !important; }

/* ============================================================
   الميثاق page (page-id-8454) – centered ceremonial layout (Variant A)
   ============================================================ */
.page-id-8454 .elementor-element-64d77e5 { padding: 50px 20px 80px !important; }
.page-id-8454 .elementor-element-64d77e5 > .e-con-inner { max-width: 880px !important; margin: 0 auto !important; }

/* Centered heading */
.page-id-8454 .elementor-element-d6b1328 h3 {
  text-align: center !important; font-size: 2.4rem !important;
  letter-spacing: 0.08em; margin-bottom: 8px !important; display: block;
}
/* Thin divider below heading */
.page-id-8454 .elementor-element-d6b1328::after {
  content: ''; display: block; width: 120px; height: 1px;
  background: linear-gradient(90deg, transparent, #82C0CC 40%, #82C0CC 60%, transparent);
  margin: 14px auto 44px;
}

/* Charter text — centered, no box */
.page-id-8454 .elementor-element-7fe5d54 {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; padding: 0 !important;
}
.page-id-8454 .elementor-element-7fe5d54 p {
  text-align: justify !important; text-align-last: justify;
  font-size: 1.15rem !important;
  line-height: 2.9 !important; color: #cde0e8 !important; margin: 0;
}

/* Quran verse — standalone centered block */
.page-id-8454 .ar-quran-verse {
  display: block; margin: 28px auto; line-height: 2 !important;
  font-size: 1.7em !important;
}
.ar-quran-verse {
  color: #82C0CC !important; font-family: 'Scheherazade New', serif !important;
  font-weight: 600;
}

/* ============================================================
   Careers page: remove remaining boxes (talents + form container)
   ============================================================ */
.ar-jobs .ar-jobs-talents {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; padding: 0 !important;
  text-align: center;
}
.ar-jobs .ar-job-form {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; padding: 0 !important;
}

/* ============================================================
   GLOBAL REVIEW: white text + Scheherazade New + bigger headings
   ============================================================ */
/* Font: Scheherazade New everywhere (excluding icon fonts/svg) */
body,
p, h1, h2, h3, h4, h5, h6, a, li, td, th, blockquote, label, button,
input, textarea, select, figcaption,
.elementor-heading-title, .elementor-widget-text-editor,
.elementor-icon-box-title, .elementor-icon-box-description,
.elementor-button-text, .elementor-counter-number, .elementor-counter-title,
.ar-pg, .ar-pg * {
  font-family: 'Scheherazade New', serif !important;
}
/* Icon fonts must keep their own family */
i.fab, .fab, .fa-brands { font-family: "Font Awesome 5 Brands" !important; font-weight: 400 !important; }
i.fas, .fas, .fa-solid, i.fa, .fa { font-family: "Font Awesome 5 Free" !important; font-weight: 900 !important; }
i.far, .far { font-family: "Font Awesome 5 Free" !important; font-weight: 400 !important; }
[class*="eicon"] { font-family: eicons !important; }
.dashicons { font-family: dashicons !important; }

/* White text everywhere (dark theme) */
h1, h2, h3, h4, h5, h6, p, li, td, th, blockquote, figcaption, label,
.elementor-heading-title, .elementor-icon-box-title,
.elementor-icon-box-description, .elementor-widget-text-editor,
.elementor-counter-number, .elementor-counter-title,
.ar-pg, .ar-pg p, .ar-pg li, .ar-ps2-name, .ar-card-title,
.ar-svc-card p, .ar-jobs p {
  color: #ffffff !important;
}
/* Keep form fields readable (dark text on light input bg) */
input, textarea, select { color: #14212e !important; }
/* Keep Quran verse + accent titles distinct */
.ar-quran-verse { color: #82C0CC !important; }
.page-id-355 .ar-svc-card h3 { color: #82C0CC !important; }

/* Heading hierarchy: main titles clearly larger than body */
h1, .elementor-widget-heading h1.elementor-heading-title { font-size: 2.8rem !important; line-height: 1.5 !important; }
h2, .elementor-widget-heading h2.elementor-heading-title { font-size: 2.2rem !important; line-height: 1.5 !important; }
h3 { font-size: 1.6rem !important; line-height: 1.5 !important; }
h4 { font-size: 1.25rem !important; }
/* Nav menu + footer links stay compact */
.elementor-nav-menu a { font-size: 1rem !important; }

/* ============================================================
   Services page: "ما يميّزنا" items — inline compact style
   (different from the services list: no big titles)
   ============================================================ */
.elementor-element-2c6dcc2 .ar-svc-card {
  border-bottom: 0 !important; padding: 10px 0 !important; margin: 0 !important;
}
.elementor-element-2c6dcc2 .ar-svc-card h3 {
  display: inline !important; font-size: 1.12rem !important;
  color: #82C0CC !important; font-weight: 700 !important;
  border: 0 !important; padding: 0 !important; margin: 0 !important;
}
.elementor-element-2c6dcc2 .ar-svc-card h3::before {
  content: '✓'; color: #82C0CC; font-weight: 900;
  margin-left: 10px; font-size: 1rem;
}
.elementor-element-2c6dcc2 .ar-svc-card p:empty { display: none !important; }
.elementor-element-2c6dcc2 .ar-svc-card p {
  display: inline !important; font-size: 1rem !important;
  color: #c8d6e0 !important; line-height: 2.1 !important;
}

/* Careers: لماذا تعمل معنا — clean checklist (no boxes) */
.ar-jobs .ar-why-list { list-style: none; padding: 0; margin: 6px 0 40px; text-align: center; }
.ar-jobs .ar-why-list li { padding: 9px 0; font-size: 1.05rem; color: #c8d6e0 !important; }
.ar-jobs .ar-why-list li strong { color: #82C0CC !important; font-weight: 700; }
.ar-jobs .ar-why-list li::before { content: '◆'; color: #82C0CC; font-size: 0.75em; margin-left: 12px; vertical-align: middle; }

/* Services page: clear separation before "ما يميّزنا" section */
.page-id-355 .elementor-element-4054a9f {
  margin-top: 80px !important;
  padding-top: 60px !important;
  position: relative;
}
.page-id-355 .elementor-element-4054a9f::before {
  content: ''; position: absolute; top: 0; right: 50%;
  transform: translateX(50%);
  width: 100%; max-width: 720px; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(130,192,204,0.45) 30%, rgba(130,192,204,0.45) 70%, transparent);
}

/* Careers join section: distinct heading + justified equal-length text */
.ar-jobs .ar-jobs-join {
  color: #82C0CC !important; font-size: 1.9rem !important;
  padding-bottom: 12px; margin-bottom: 18px !important;
  border-bottom: 2px solid rgba(130,192,204,0.35);
  display: inline-block;
}
.ar-jobs .ar-jobs-join-text { text-align: right; }
.ar-jobs .ar-jobs-intro,
.ar-jobs .ar-jobs-join-text p {
  text-align: justify !important;
  text-align-last: right;
  line-height: 2.4 !important;
}

/* ============================================================
   Loading overlay (brand logo preloader)
   ============================================================ */
#ar-preloader {
  position: fixed; inset: 0; z-index: 999999;
  background: #0e2032;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 30px;
  opacity: 1; transition: opacity 0.85s ease;
}
#ar-preloader.ar-preloader-hide { opacity: 0; pointer-events: none; }
.ar-preloader-logo {
  width: 220px; max-width: 55vw; height: auto;
  animation: ar-logo-pulse 1.6s ease-in-out infinite;
}
@keyframes ar-logo-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%      { opacity: 0.55; transform: scale(0.96); }
}

/* ============================================================
   Two-column split (يمين/شمال) for feature checklists
   ============================================================ */
/* Services page: ما يميّزنا items in 2 columns */
.elementor-element-2c6dcc2 .ar-svc-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 6px 70px !important;
  max-width: 980px; margin: 0 auto !important;
}
.elementor-element-2c6dcc2 .ar-svc-card { text-align: right !important; }

/* Careers page: لماذا تعمل معنا items in 2 columns */
.ar-jobs .ar-why-list {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 12px 70px;
  max-width: 980px;
  margin: 10px auto 44px;
  text-align: right !important;
}

/* Mobile: back to single column */
@media (max-width: 820px) {
  .elementor-element-2c6dcc2 .ar-svc-grid,
  .ar-jobs .ar-why-list { grid-template-columns: 1fr !important; }
}

/* About page: facade image floated beside the text */
.ar-about-facade {
  float: left; width: 46%; max-width: 520px;
  margin: 6px 34px 16px 0;
}
.ar-about-facade img {
  width: 100%; height: auto; border-radius: 16px; display: block;
  box-shadow: 0 10px 40px rgba(0,0,0,0.35);
}
@media (max-width: 820px) {
  .ar-about-facade { float: none; width: 100%; margin: 8px 0 20px; }
}

/* About page: remove the old top banner (keep only the facade image) */
.ar-about-banner { display: none !important; }

/* ============================================================
   About page cleanup: single title + tidy image/text layout
   ============================================================ */
/* remove the duplicated "نبذة عنا" heading inside the content
   (the hero page title at the top stays) */
.elementor-element-dc63cfc { display: none !important; }

/* first block: image + lead paragraph side by side */
.elementor-element-18dd838 {
  display: grid !important;
  grid-template-columns: 1fr 1.05fr !important;
  gap: 44px !important;
  align-items: center !important;
}
.elementor-element-18dd838 .ar-about-facade {
  float: none !important; width: 100% !important;
  max-width: none !important; margin: 0 !important;
}
.elementor-element-18dd838 p {
  text-align: justify !important; text-align-last: right;
  line-height: 2.5 !important; margin: 0 !important;
}

/* following paragraphs: full width, justified, same rhythm */
.elementor-element-78b14ef p, .elementor-element-d6528a0 p {
  text-align: justify !important; text-align-last: right;
  line-height: 2.5 !important;
}
.elementor-element-78b14ef { margin-top: 34px !important; }

@media (max-width: 820px) {
  .elementor-element-18dd838 { grid-template-columns: 1fr !important; }
}

/* ============================================================
   About page: one flowing text block, image floated inside it
   ============================================================ */
/* undo the grid split */
.elementor-element-18dd838 { display: block !important; }
/* hide the now-duplicated separate paragraphs */
.elementor-element-78b14ef, .elementor-element-d6528a0 { display: none !important; }

.ar-about-flow { overflow: hidden; }
.ar-about-flow .ar-about-facade {
  float: left !important; width: 44% !important; max-width: 520px !important;
  margin: 6px 0 16px 36px !important;
}
.ar-about-flow p {
  text-align: justify !important; text-align-last: auto !important;
  line-height: 2.5 !important; margin: 0 0 18px !important;
  font-size: 1.05rem !important;
}
@media (max-width: 820px) {
  .ar-about-flow .ar-about-facade { float: none !important; width: 100% !important; margin: 0 0 20px !important; }
}

/* About page: image on top alone, text below */
.ar-about-flow .ar-about-facade {
  float: none !important; width: 100% !important;
  max-width: 780px !important; margin: 0 auto 36px !important;
}

/* Careers why-list: centered layout */
.ar-jobs .ar-why-list {
  grid-template-columns: repeat(2, auto) !important;
  justify-content: center !important;
  gap: 14px 110px !important;
  text-align: center !important;
  max-width: none !important;
}
.ar-jobs .ar-why-list li { text-align: center !important; }
@media (max-width: 820px) {
  .ar-jobs .ar-why-list { grid-template-columns: 1fr !important; }
}

/* ============================================================
   فلسفة الموقع الإلكتروني (page-id-9059) – clean presentation
   ============================================================ */
.page-id-9059 .elementor-element-d6b1328 h3 {
  text-align: center !important; font-size: 2.2rem !important;
  letter-spacing: 0.05em; margin-bottom: 8px !important; display: block;
}
.page-id-9059 .elementor-element-d6b1328::after {
  content: ''; display: block; width: 120px; height: 1px;
  background: linear-gradient(90deg, transparent, #82C0CC 40%, #82C0CC 60%, transparent);
  margin: 14px auto 40px;
}
.page-id-9059 .elementor-element-7fe5d54 {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; padding: 0 !important;
}
.ar-philo { max-width: 860px; margin: 0 auto; }
.ar-philo p {
  text-align: justify !important; text-align-last: right;
  line-height: 2.6 !important; font-size: 1.05rem !important;
  color: #cde0e8 !important; margin: 0 0 22px !important;
}
.ar-philo .ar-philo-lead {
  font-size: 1.18rem !important; color: #eaf3f7 !important;
}
.ar-philo .ar-philo-close {
  text-align: center !important; text-align-last: center;
  color: #82C0CC !important; font-size: 1.12rem !important;
  margin-top: 34px !important; padding-top: 28px;
  border-top: 1px solid rgba(130,192,204,0.25);
}

/* Careers: لماذا تعمل معنا؟ — all items on ONE line */
.ar-jobs .ar-why-list {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center;
  gap: 48px !important;
  max-width: none !important;
}
.ar-jobs .ar-why-list li { white-space: nowrap; padding: 0 !important; }
@media (max-width: 900px) {
  .ar-jobs .ar-why-list { flex-wrap: wrap !important; gap: 16px 34px !important; }
}

/* Dropdown menu items must use Scheherazade New too */
.elementor-nav-menu a.elementor-sub-item,
.elementor-nav-menu--dropdown a,
.elementor-nav-menu .sub-menu a,
ul.sub-menu a {
  font-family: 'Scheherazade New', serif !important;
}

/* ============================================================
   CEO message page fixes: centered layout + proper portrait
   ============================================================ */
/* kill the full-bleed left shift that pushed content left */
.ar-ceo-page .ar-ceo-section {
  width: 100% !important;
  margin-left: 0 !important; margin-right: 0 !important;
  border-radius: 18px;
}
.ar-ceo-page .ar-ceo-inner {
  max-width: 1150px !important;
  padding: 0 34px !important;
  gap: 60px !important;
  align-items: center !important;
  margin: 0 auto !important;
}
/* portrait: fixed ratio, no distortion */
.ar-ceo-page .ar-ceo-media { flex: 0 0 36% !important; max-width: 400px !important; }
.ar-ceo-page .ar-ceo-media img {
  aspect-ratio: 3 / 4 !important;
  object-fit: cover !important;
  object-position: top center !important;
  height: auto;
}
/* text: justified, hugs the right, breathing room from the left edge */
.ar-ceo-page .ar-ceo-body { padding-left: 14px; }
.ar-ceo-page .ar-ceo-msg p {
  text-align: justify !important;
  text-align-last: right;
  line-height: 2.4 !important;
}
@media (max-width: 900px) {
  .ar-ceo-page .ar-ceo-inner { flex-direction: column-reverse !important; gap: 30px !important; }
  .ar-ceo-page .ar-ceo-media { max-width: 340px !important; margin: 0 auto; }
  .ar-ceo-page .ar-ceo-body { padding-left: 0; }
}

/* ميثاقنا: keep the Quran verse centered — never stretched */
.page-id-8454 .ar-quran-verse {
  text-align: center !important;
  text-align-last: center !important;
  word-spacing: normal !important;
}

/* ============================================================
   رؤيتنا للإستدامة (page 11937) — clean flow, no boxes
   ============================================================ */
.ar-sust { max-width: 900px; margin: 0 auto; padding: 10px 0 30px; }
.ar-sust .ar-sust-lead-title {
  text-align: center !important; font-size: 2rem !important;
  color: #82C0CC !important; margin: 0 0 18px !important;
}
.ar-sust .ar-sust-lead {
  font-size: 1.12rem !important; color: #eaf3f7 !important;
}
.ar-sust p {
  text-align: justify !important; text-align-last: right;
  line-height: 2.5 !important; color: #cde0e8 !important;
  margin: 0 0 22px !important;
}
.ar-sust h3 {
  color: #82C0CC !important; font-size: 1.45rem !important;
  margin: 34px 0 12px !important; padding-right: 14px;
  border-right: 3px solid #82C0CC; text-align: right;
}
.ar-sust h4 {
  color: #ffffff !important; font-size: 1.12rem !important;
  margin: 20px 0 8px !important; text-align: right;
}
.ar-sust .ar-sust-img { margin: 30px 0; }
.ar-sust .ar-sust-img img {
  width: 100%; height: auto; border-radius: 16px; display: block;
  box-shadow: 0 12px 44px rgba(0,0,0,0.35);
}

/* ============================================================
   رؤيتنا للإستدامة — modern editorial layout (v2)
   ============================================================ */
.ar-sust2 { max-width: 1040px; margin: 0 auto; padding: 10px 0 40px; }

/* hero */
.ar-sust2 .s-hero { text-align: center; margin-bottom: 40px; }
.ar-sust2 .s-kicker {
  display: inline-block; font-size: 0.8rem; letter-spacing: 0.35em;
  color: #82C0CC; border: 1px solid rgba(130,192,204,0.4);
  padding: 5px 20px 5px 14px; border-radius: 30px; margin-bottom: 18px;
}
.ar-sust2 .s-hero h2 {
  font-size: 2.5rem !important; color: #ffffff !important; margin: 0 0 18px !important;
}
.ar-sust2 .s-lead {
  max-width: 990px; margin: 0 auto !important;
  font-size: 1.12rem !important; color: #cde0e8 !important;
  line-height: 2.4 !important;
  text-align: justify !important; text-align-last: justify;
  text-wrap: balance;
}

/* imagery */
.ar-sust2 .s-img { margin: 44px 0; }
.ar-sust2 .s-img img {
  width: 100%; height: auto; border-radius: 20px; display: block;
  box-shadow: 0 24px 60px rgba(0,0,0,0.45);
}

/* vision: asymmetric editorial split */
.ar-sust2 .s-vision {
  display: grid; grid-template-columns: 240px 1fr; gap: 40px;
  align-items: start; margin: 50px 0;
}
.ar-sust2 .s-vision h3 {
  color: #82C0CC !important; font-size: 1.6rem !important; margin: 0 !important;
  line-height: 1.6 !important; text-align: right;
  border-top: 2px solid #82C0CC; padding-top: 16px; border-radius: 0;
}
.ar-sust2 .s-vision p {
  color: #cde0e8 !important; line-height: 2.5 !important; margin: 0 !important;
  text-align: justify !important; text-align-last: right; font-size: 1.05rem !important;
}

/* pillars: 3 minimal columns with ghost numbers */
.ar-sust2 .s-pillars { margin: 60px 0; }
.ar-sust2 .s-pillars-title {
  text-align: center !important; color: #ffffff !important;
  font-size: 1.8rem !important; margin: 0 0 8px !important;
}
.ar-sust2 .s-pillars-title::after {
  content: ''; display: block; width: 90px; height: 2px; margin: 14px auto 40px;
  background: linear-gradient(90deg, transparent, #82C0CC, transparent);
}
.ar-sust2 .s-pillars-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 44px;
}
.ar-sust2 .s-pillar { position: relative; padding-top: 14px; border-top: 1px solid rgba(130,192,204,0.25); border-radius: 0; }
.ar-sust2 .s-num {
  display: block; font-size: 2.6rem; font-weight: 700;
  color: rgba(130,192,204,0.22); line-height: 1; margin-bottom: 6px;
}
.ar-sust2 .s-pillar h4 {
  color: #82C0CC !important; font-size: 1.15rem !important; margin: 0 0 10px !important;
  text-align: right;
}
.ar-sust2 .s-pillar p {
  color: #c8d6e0 !important; line-height: 2.2 !important; margin: 0 !important;
  text-align: justify !important; text-align-last: right; font-size: 0.95rem !important;
}

/* projects: image beside text */
.ar-sust2 .s-projects {
  display: grid; grid-template-columns: 1fr 1fr; gap: 48px;
  align-items: center; margin: 60px 0;
}
.ar-sust2 .s-projects .s-img { margin: 0; }
.ar-sust2 .s-projects-text h3 {
  color: #82C0CC !important; font-size: 1.6rem !important; margin: 0 0 14px !important;
  text-align: right;
}
.ar-sust2 .s-projects-text p {
  color: #cde0e8 !important; line-height: 2.5 !important; margin: 0 !important;
  text-align: justify !important; text-align-last: right;
}

/* closing statement */
.ar-sust2 .s-close {
  text-align: center; max-width: 760px; margin: 60px auto 0;
  padding-top: 34px; border-top: 1px solid rgba(130,192,204,0.25);
}
.ar-sust2 .s-close h3 {
  color: #ffffff !important; font-size: 1.5rem !important; margin: 0 0 14px !important;
}
.ar-sust2 .s-close p {
  color: #9fd3dd !important; line-height: 2.4 !important; margin: 0 !important;
  font-size: 1.08rem !important; text-align: center !important;
}

@media (max-width: 860px) {
  .ar-sust2 .s-vision { grid-template-columns: 1fr; gap: 16px; }
  .ar-sust2 .s-pillars-grid { grid-template-columns: 1fr; gap: 30px; }
  .ar-sust2 .s-projects { grid-template-columns: 1fr; gap: 24px; }
}

/* Sustainability v3: pillar groups beside images */
.ar-sust2 .s-group {
  display: grid; grid-template-columns: 1fr 1fr; gap: 50px;
  align-items: center; margin: 44px 0;
}
.ar-sust2 .s-pillars-col { display: flex; flex-direction: column; gap: 26px; }
.ar-sust2 .s-group .s-img { margin: 0; }
.ar-sust2 .s-group .s-img img { height: 100%; object-fit: cover; }
@media (max-width: 860px) {
  .ar-sust2 .s-group { grid-template-columns: 1fr; gap: 26px; }
  .ar-sust2 .s-group.s-alt .s-img { order: 2; }
}

/* ============================================================
   Home: مدونة رؤى الريادة section
   ============================================================ */
.ar-blogsec {
  display: grid; grid-template-columns: 1fr 1fr; gap: 56px;
  align-items: center; max-width: 1180px; margin: 0 auto;
  padding: 70px 30px;
}
.ar-blogsec-media img {
  width: 100%; height: auto; border-radius: 18px; display: block;
  box-shadow: 0 20px 55px rgba(0,0,0,0.45);
}
.ar-blogsec-text h2 {
  color: #ffffff !important; font-size: 2rem !important;
  margin: 0 0 16px !important; text-align: right;
}
.ar-blogsec-text h2::after {
  content: ''; display: block; width: 80px; height: 2px; margin-top: 14px;
  background: linear-gradient(90deg, #82C0CC, transparent);
}
.ar-blogsec-text p {
  color: #cde0e8 !important; line-height: 2.5 !important;
  text-align: justify !important; text-align-last: right;
  margin: 0 0 26px !important; font-size: 1.05rem !important;
}
.ar-blog-cta {
  display: inline-block; background: #82C0CC; color: #0e2032 !important;
  font-size: 1rem; padding: 13px 40px; border-radius: 10px; text-decoration: none;
  position: relative; overflow: hidden;
  transition: transform .3s ease, box-shadow .3s ease;
}
.ar-blog-cta::before {
  content: ''; position: absolute; inset: 0;
  background: rgba(255,255,255,0.25); transform: translateX(-120%) skewX(-18deg);
  transition: transform .55s ease;
}
.ar-blog-cta:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(130,192,204,0.3); }
.ar-blog-cta:hover::before { transform: translateX(120%) skewX(-18deg); }
@media (max-width: 860px) {
  .ar-blogsec { grid-template-columns: 1fr; gap: 28px; padding: 50px 22px; }
}

/* Blog page placeholder */
.ar-blog-holder { text-align: center; padding: 80px 20px 120px; }
.ar-blog-soon { color: #82C0CC !important; font-size: 1.3rem !important; }

/* ============================================================
   مدونة رؤى الريادة — blog page
   ============================================================ */
.ar-blogpg { max-width: 1120px; margin: 0 auto; padding: 20px 0 60px; }
.ar-blogpg .bp-hero { text-align: center; margin-bottom: 46px; }
.ar-blogpg .bp-hero h2 { color: #fff !important; font-size: 2.2rem !important; margin: 0 0 16px !important; }
.ar-blogpg .bp-hero h2::after {
  content: ''; display: block; width: 90px; height: 2px; margin: 14px auto 0;
  background: linear-gradient(90deg, transparent, #82C0CC, transparent);
}
.ar-blogpg .bp-hero p {
  max-width: 850px; margin: 0 auto !important; color: #cde0e8 !important;
  line-height: 2.5 !important; font-size: 1.08rem !important; text-align: center !important;
}
.ar-blogpg .bp-latest {
  color: #82C0CC !important; font-size: 1.5rem !important;
  margin: 0 0 26px !important; padding-right: 14px;
  border-right: 3px solid #82C0CC; text-align: right;
}
.ar-blogpg .bp-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 28px;
}
.ar-blogpg .bp-card {
  background: rgba(22,48,74,0.5);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(130,192,204,0.25); border-radius: 16px;
  overflow: hidden; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.ar-blogpg .bp-card:hover { transform: translateY(-5px); border-color: #82C0CC;
  box-shadow: 0 18px 44px rgba(0,0,0,0.4); }
.ar-blogpg .bp-thumb { aspect-ratio: 16/9; background: #0b1b2b; }
.ar-blogpg .bp-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ar-blogpg .bp-card-body { padding: 20px 22px 24px; }
.ar-blogpg .bp-card-body h4 { color: #fff !important; font-size: 1.15rem !important; margin: 0 0 10px !important; text-align: right; }
.ar-blogpg .bp-card-body p {
  color: #c8d6e0 !important; line-height: 2.2 !important; font-size: 0.95rem !important;
  margin: 0 0 18px !important; text-align: justify !important; text-align-last: right;
}
.ar-blogpg .bp-more {
  display: inline-block; background: transparent; color: #82C0CC !important;
  border: 1px solid #82C0CC; font-size: 0.92rem; padding: 9px 28px;
  border-radius: 9px; cursor: pointer; transition: all .3s ease;
}
.ar-blogpg .bp-more:hover { background: #82C0CC; color: #0e2032 !important; transform: translateY(-2px); }

/* article modal */
.bp-modal { position: fixed; inset: 0; z-index: 999999; display: none;
  align-items: center; justify-content: center; padding: 26px;
  background: rgba(4,10,17,0.85); backdrop-filter: blur(6px); }
.bp-modal.open { display: flex; }
.bp-modal-box { background: #102233; border: 1px solid rgba(130,192,204,0.3);
  border-radius: 18px; max-width: 820px; width: 100%; max-height: 86vh;
  overflow: hidden; position: relative; display: flex; flex-direction: column; }
.bp-modal-content { overflow-y: auto; overscroll-behavior: contain;
  scrollbar-width: thin; scrollbar-color: rgba(130,192,204,0.45) transparent;
  padding: 34px 38px 40px; }
.bp-modal-content h3 { color: #82C0CC !important; font-size: 1.5rem !important; margin: 0 0 18px !important; text-align: right; }
.bp-modal-content .bp-full-img { width: 100%; height: auto; max-height: 320px; object-fit: cover;
  border-radius: 12px; margin-bottom: 22px; display: block; }
.bp-modal-content p { color: #dbe7ee !important; line-height: 2.4 !important;
  text-align: justify !important; text-align-last: right; margin: 0 0 16px !important; }
.bp-modal-close { position: absolute; top: 14px; left: 14px; z-index: 3;
  width: 40px; height: 40px; border-radius: 50%; cursor: pointer;
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.28); color: #fff;
  display: flex; align-items: center; justify-content: center;
  transition: all .2s ease; }
.bp-modal-close svg { width: 18px !important; height: 18px !important; }
.bp-modal-close:hover { background: #82C0CC; color: #0e2032; border-color: #82C0CC; transform: rotate(90deg) scale(1.07); }
@media (max-width: 760px) { .ar-blogpg .bp-grid { grid-template-columns: 1fr; } }

/* Home blog section: shorter image so the section isn't too tall */
.ar-blogsec { padding: 50px 30px !important; }
.ar-blogsec-media img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  max-height: 340px;
}
@media (max-width: 860px) {
  .ar-blogsec-media img { max-height: 240px; }
}

/* Home blog section: show the whole image (no cropping) */
.ar-blogsec-media img {
  aspect-ratio: auto !important;
  object-fit: contain !important;
  max-height: 380px !important;
  width: 100%;
}

/* ============================================================
   Logos (عملاؤنا / شركاؤنا) — static, uniform, no edge fade
   ============================================================ */
.ar-mq-viewport, .home .ar-mq-track {
  -webkit-mask-image: none !important; mask-image: none !important;
  direction: rtl !important;
}
.home .ar-mq-track {
  animation: none !important;
  width: auto !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
}
.elementor-element-2ba3843, .elementor-element-532d01a {
  display: flex !important; flex-wrap: wrap !important;
  justify-content: center !important; align-items: center !important;
  gap: 26px !important;
}
.elementor-element-2ba3843 > .elementor-element,
.elementor-element-532d01a > .elementor-element {
  width: 190px !important; max-width: 190px !important; flex: 0 0 190px !important;
  background: #ffffff !important; border-radius: 12px !important;
  padding: 16px !important; display: flex !important;
  align-items: center !important; justify-content: center !important;
  height: 116px !important;
  transition: transform .3s ease, box-shadow .3s ease;
}
.elementor-element-2ba3843 > .elementor-element:hover,
.elementor-element-532d01a > .elementor-element:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.25);
}
.elementor-element-2ba3843 img, .elementor-element-532d01a img,
.home .ar-mq-track img {
  width: auto !important; max-width: 100% !important;
  height: auto !important; max-height: 74px !important;
  object-fit: contain !important; filter: none !important;
  opacity: 1 !important; mix-blend-mode: normal !important;
}

/* Logos: explicit box so SVGs don't collapse to 0 inside flex cards */
.elementor-element-2ba3843 img, .elementor-element-532d01a img {
  width: 158px !important; max-width: 158px !important;
  height: 74px !important; max-height: 74px !important;
  min-width: 158px !important; min-height: 74px !important;
  object-fit: contain !important; display: block !important;
  flex: 0 0 auto !important;
}
.elementor-element-2ba3843 .elementor-widget-image,
.elementor-element-532d01a .elementor-widget-image {
  width: 100% !important; display: flex !important;
  align-items: center !important; justify-content: center !important;
}
.elementor-element-2ba3843 .elementor-widget-container,
.elementor-element-532d01a .elementor-widget-container,
.elementor-element-2ba3843 figure, .elementor-element-532d01a figure,
.elementor-element-2ba3843 .elementor-image, .elementor-element-532d01a .elementor-image {
  width: 100% !important; margin: 0 !important; display: flex !important;
  align-items: center !important; justify-content: center !important;
}

/* ============================================================
   Logos — legacy look: grayscale on transparent, no white cards
   Clients = static row · Partners = auto-moving slider
   ============================================================ */
.elementor-element-2ba3843 > .elementor-element,
.elementor-element-532d01a > .elementor-element {
  background: transparent !important;
  border: 0 !important; box-shadow: none !important;
  border-radius: 0 !important; padding: 0 !important;
  width: 240px !important; max-width: 240px !important; min-width: 240px !important;
  flex: 0 0 240px !important; height: 60px !important;
  transform: none !important;
}
.elementor-element-2ba3843 > .elementor-element:hover,
.elementor-element-532d01a > .elementor-element:hover {
  transform: none !important; box-shadow: none !important;
}
.elementor-element-2ba3843 img, .elementor-element-532d01a img {
  width: 240px !important; max-width: 240px !important; min-width: 240px !important;
  height: 60px !important; max-height: 60px !important; min-height: 60px !important;
  object-fit: contain !important;
  filter: grayscale(1) brightness(1.1) contrast(0.9) !important;
  transition: filter .3s ease, opacity .3s ease;
}
.elementor-element-2ba3843 img:hover, .elementor-element-532d01a img:hover {
  filter: grayscale(0) brightness(1.15) !important;
}
/* clients: single centered row with generous spacing */
.elementor-element-2ba3843 {
  gap: 44px !important; row-gap: 30px !important;
}
/* partners: moving slider — hide overflow, run the track */
.elementor-element-532d01a {
  overflow: hidden !important; flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 52px !important;
}
.elementor-element-532d01a.ar-run {
  animation: ar-logos-scroll 32s linear infinite;
  width: max-content !important;
}
.elementor-element-532d01a.ar-run:hover { animation-play-state: paused; }
@keyframes ar-logos-scroll {
  /* RTL: the wide track overflows to the left, so move it right to reveal it */
  from { transform: translateX(0); }
  to   { transform: translateX(50%); }
}

/* Clients (عملاؤنا) — each logo on its own white card */
.elementor-element-2ba3843 > .elementor-element {
  background: #ffffff !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  width: 230px !important; max-width: 230px !important; min-width: 230px !important;
  flex: 0 0 230px !important; height: 108px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.14) !important;
}
.elementor-element-2ba3843 img {
  width: 186px !important; max-width: 186px !important; min-width: 186px !important;
  height: 68px !important; max-height: 68px !important; min-height: 68px !important;
  object-fit: contain !important;
  filter: none !important;
}
.elementor-element-2ba3843 img:hover { filter: none !important; }
.elementor-element-2ba3843 { gap: 26px !important; row-gap: 26px !important; }

/* Clients — fit all six white cards on one row (container is 1140px, gap 12px) */
.elementor-element-2ba3843 { flex-wrap: nowrap !important; }
.elementor-element-2ba3843 > .elementor-element {
  width: 176px !important; max-width: 176px !important; min-width: 176px !important;
  flex: 0 0 176px !important; height: 96px !important;
  padding: 12px 14px !important;
}
.elementor-element-2ba3843 img {
  width: 146px !important; max-width: 146px !important; min-width: 146px !important;
  height: 58px !important; max-height: 58px !important; min-height: 58px !important;
}
@media (max-width: 1024px) {
  .elementor-element-2ba3843 { flex-wrap: wrap !important; }
}

/* Partners marquee: clipped viewport so the wide track can't widen the page */
.ar-logos-marquee {
  width: 100% !important; max-width: 100% !important;
  overflow: hidden !important;
  flex: 1 1 100% !important;
}

/* Partners — slightly larger logos in the slider */
.elementor-element-532d01a > .elementor-element {
  width: 300px !important; max-width: 300px !important; min-width: 300px !important;
  flex: 0 0 300px !important; height: 86px !important;
}
.elementor-element-532d01a img {
  width: 300px !important; max-width: 300px !important; min-width: 300px !important;
  height: 86px !important; max-height: 86px !important; min-height: 86px !important;
}

/* Partners — size each slot to the logo itself (no fixed-width gaps) */
.elementor-element-532d01a { gap: 18px !important; column-gap: 18px !important; }
.elementor-element-532d01a > .elementor-element {
  width: auto !important; max-width: none !important; min-width: 0 !important;
  flex: 0 0 auto !important; height: 86px !important;
  margin: 0 10px !important; padding: 0 !important;
}
.elementor-element-532d01a .elementor-widget-image,
.elementor-element-532d01a .elementor-widget-container {
  width: auto !important; max-width: none !important;
}
.elementor-element-532d01a img {
  width: auto !important; max-width: 320px !important; min-width: 0 !important;
  height: 86px !important; max-height: 86px !important; min-height: 86px !important;
  object-fit: contain !important;
}

/* ── "ما يميزنا" page — centered hero, same language as the sustainability page ── */
.page-id-11932 .ar-page-title { display: none !important; }
.ar-mayo-hero { text-align: center; margin: 6px 0 46px; }
.ar-mayo-hero .mh-kicker {
  display: block; color: #82C0CC; font-weight: 700;
  font-size: .9rem; letter-spacing: .16em; margin-bottom: 12px;
}
.ar-mayo-hero h2 {
  color: #fff; font-weight: 900; margin: 0;
  font-size: clamp(1.9rem, 3.6vw, 2.8rem); line-height: 1.35;
}
.ar-mayo-hero h2::after {
  content: ''; display: block; width: 78px; height: 2px; margin: 18px auto 0;
  background: linear-gradient(90deg, transparent, #82C0CC, transparent);
}

/* Sustainability — more breathing room between the pillars title and the pillars */
.ar-sust2 .s-pillars-title { margin-bottom: 0 !important; }
.ar-sust2 .s-pillars-title + .s-group { margin-top: 84px !important; }

/* ── Services page: image + description hero ── */
.ar-svc-hero {
  display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center;
  margin: 4px 0 46px;
}
.ar-svc-hero-media img {
  width: 100%; height: 340px; object-fit: cover; display: block;
  border-radius: 18px; box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.ar-svc-hero-text { text-align: right; }
.ar-svc-hero-text .svch-kicker {
  display: block; color: #82C0CC; font-weight: 700;
  font-size: .88rem; letter-spacing: .16em; margin-bottom: 10px;
}
.ar-svc-hero-text h2 {
  color: #fff !important; font-weight: 900; margin: 0 0 14px !important;
  font-size: clamp(1.5rem, 2.6vw, 2.1rem) !important; line-height: 1.5;
}
.ar-svc-hero-text p {
  color: #c9d8e2; line-height: 2; margin: 0;
  text-align: justify; text-align-last: right;
}
@media (max-width: 900px) {
  .ar-svc-hero { grid-template-columns: 1fr; gap: 22px; }
  .ar-svc-hero-media img { height: 240px; }
}

/* ── Media center: hero, banner, clean grid (no heavy boxes) ── */
.page-id-463 .ar-page-title { display: none !important; }
.ar-media-hero { text-align: center; margin: 6px 0 30px; }
.ar-media-hero .mdh-kicker {
  display: block; color: #82C0CC; font-weight: 700;
  font-size: .88rem; letter-spacing: .16em; margin-bottom: 12px;
}
.ar-media-hero h2 {
  color: #fff !important; font-weight: 900; margin: 0 !important;
  font-size: clamp(1.9rem, 3.6vw, 2.8rem) !important;
}
.ar-media-hero h2::after {
  content: ''; display: block; width: 78px; height: 2px; margin: 18px auto 22px;
  background: linear-gradient(90deg, transparent, #82C0CC, transparent);
}
.ar-media-hero .mdh-lead {
  color: #c9d8e2; line-height: 2; margin: 0 auto; max-width: 760px; text-align: center;
}
.ar-media-banner { margin: 34px 0 52px; }
.ar-media-banner img {
  width: 100%; height: 380px; object-fit: cover; display: block;
  border-radius: 20px; box-shadow: 0 20px 46px rgba(0,0,0,.4);
}
.ar-media-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 46px 60px; margin: 0 0 20px;
}
.ar-media-item {
  position: relative; padding-top: 16px;
  border-top: 1px solid rgba(130,192,204,.28);
  background: transparent !important; border-radius: 0 !important;
}
.ar-media-item .mi-num {
  display: block; font-size: 1.55rem; font-weight: 900;
  color: rgba(130,192,204,.32); line-height: 1; margin-bottom: 10px;
}
.ar-media-item h3 {
  color: #82C0CC !important; font-weight: 800; margin: 0 0 8px !important;
  font-size: 1.18rem !important;
}
.ar-media-item p { color: #c4d2dd; line-height: 1.95; margin: 0 0 12px; }
.ar-media-item .mi-badge {
  display: inline-block; font-size: .78rem; font-weight: 700; color: #9fc6cf;
  border: 1px solid rgba(130,192,204,.32); border-radius: 999px; padding: 5px 14px;
}
@media (max-width: 820px) {
  .ar-media-grid { grid-template-columns: 1fr; gap: 34px; }
  .ar-media-banner img { height: 240px; }
}

/* Partners — medium logo size + one unified hover tone for all logos */
.elementor-element-532d01a > .elementor-element {
  height: 62px !important; margin: 0 8px !important;
}
.elementor-element-532d01a img {
  width: auto !important; max-width: 215px !important; min-width: 0 !important;
  height: 62px !important; max-height: 62px !important; min-height: 62px !important;
  filter: grayscale(1) brightness(1.1) contrast(.9) !important;
}
.elementor-element-532d01a img:hover {
  /* same tone for every logo — just a brighter monochrome, no colour shift */
  filter: grayscale(1) brightness(1.75) contrast(.95) !important;
}

/* "ما يميزنا" title — same treatment as the قصتنا page (right aligned + rule) */
.ar-mayo-hero {
  text-align: right !important;
  margin: 0 0 34px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(255,255,255,.8) !important;
}
.ar-mayo-hero .mh-kicker { display: none !important; }
.ar-mayo-hero h2 {
  font-size: 2.8rem !important; font-weight: 700 !important; margin: 0 !important;
}
.ar-mayo-hero h2::after { display: none !important; }
@media (max-width: 700px) { .ar-mayo-hero h2 { font-size: 2rem !important; } }

/* ── Blog page: the four articles in one row, whole card is a link (no popup) ── */
.ar-blogpg .bp-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
}
.ar-blogpg .bp-card { display: flex !important; }
.ar-blogpg .bp-card-link {
  display: flex; flex-direction: column; height: 100%;
  text-decoration: none !important; color: inherit;
}
.ar-blogpg .bp-thumb img {
  width: 100% !important; height: 170px !important;
  object-fit: cover !important; display: block;
}
.ar-blogpg .bp-card-body { display: flex; flex-direction: column; flex: 1 1 auto; }
.ar-blogpg .bp-card-body h4 {
  font-size: 1.02rem !important; line-height: 1.6 !important; margin: 0 0 10px !important;
}
.ar-blogpg .bp-card-body p {
  font-size: .9rem !important; line-height: 1.85 !important; margin: 0 0 16px !important;
}
.ar-blogpg .bp-more {
  display: inline-block; margin-top: auto; cursor: pointer;
  font-size: .86rem; font-weight: 700; color: #82C0CC;
  border: 1px solid rgba(130,192,204,.4); border-radius: 999px; padding: 8px 18px;
  transition: background .25s ease, color .25s ease;
}
.ar-blogpg .bp-card-link:hover .bp-more { background: #82C0CC; color: #0b1a28; }
.ar-blogpg .bp-card-link:hover .bp-thumb img { transform: none; }
@media (max-width: 1100px) { .ar-blogpg .bp-grid { grid-template-columns: 1fr 1fr !important; } }
@media (max-width: 620px)  { .ar-blogpg .bp-grid { grid-template-columns: 1fr !important; } }

/* ============================================================
   Article page (single post) — "مدونة رؤى الريادة"
   ============================================================ */
.single-post .ar-page-title { display: none !important; }
.ar-article-page { max-width: 900px; margin: 0 auto; padding-bottom: 30px; }
.ar-article-page .ar-article-head { text-align: center; margin: 10px 0 30px; }
.ar-article-page .aah-kicker {
  display: block; color: #82C0CC; font-weight: 700;
  font-size: .86rem; letter-spacing: .16em; margin-bottom: 14px;
}
.ar-article-page .aah-title {
  color: #fff !important; font-weight: 900; margin: 0 0 14px !important;
  font-size: clamp(1.65rem, 3.1vw, 2.4rem) !important; line-height: 1.55;
}
.ar-article-page .aah-title::after {
  content: ''; display: block; width: 78px; height: 2px; margin: 18px auto 0;
  background: linear-gradient(90deg, transparent, #82C0CC, transparent);
}
.ar-article-page .aah-date { display: block; color: #9fb6c4; font-size: .9rem; }
.ar-article-page .ar-article-hero { margin: 26px 0 34px; }
.ar-article-page .ar-article-hero img {
  width: 100%; height: 360px; object-fit: cover; display: block;
  border-radius: 18px; box-shadow: 0 18px 44px rgba(0,0,0,.4);
}
.ar-article-page .ar-article-body p {
  color: #cbd9e3; line-height: 2.15; font-size: 1.05rem;
  margin: 0 0 20px; text-align: justify; text-align-last: right;
}
.ar-article-page .ar-article-body p:first-of-type {
  color: #e7f0f5; font-size: 1.14rem; font-weight: 600;
  border-inline-start: 2px solid rgba(130,192,204,.45); padding-inline-start: 18px;
}
.ar-article-page .ar-article-body h2,
.ar-article-page .ar-article-body h3 {
  color: #fff !important; font-weight: 800; margin: 1.6em 0 .6em !important;
}
.ar-article-page .ar-article-foot {
  margin: 40px 0 0; padding-top: 22px;
  border-top: 1px solid rgba(130,192,204,.22); text-align: center;
}
.ar-article-page .aaf-back {
  display: inline-block; text-decoration: none;
  color: #82C0CC; font-weight: 700; font-size: .95rem;
  border: 1px solid rgba(130,192,204,.4); border-radius: 999px; padding: 10px 26px;
  transition: background .25s ease, color .25s ease;
}
.ar-article-page .aaf-back:hover { background: #82C0CC; color: #0b1a28; }
@media (max-width: 700px) { .ar-article-page .ar-article-hero img { height: 210px; } }

/* Comments — Arabic, quiet styling */
.ar-comments { max-width: 900px; margin: 46px auto 0; }
.ar-comments .arc-title,
.ar-comments .comment-reply-title {
  color: #fff !important; font-weight: 800; font-size: 1.2rem !important;
  margin: 0 0 18px !important; text-align: right;
}
.ar-comments .arc-list { list-style: none; padding: 0; margin: 0 0 34px; }
.ar-comments .arc-list li { margin: 0 0 16px; }
.ar-comments .comment-body {
  background: rgba(255,255,255,.03); border: 1px solid rgba(130,192,204,.16);
  border-radius: 14px; padding: 18px 20px;
}
.ar-comments .comment-author, .ar-comments .comment-meta { font-size: .86rem; color: #9fb6c4; }
.ar-comments .comment-author .fn { color: #cfe3e8; font-weight: 700; font-style: normal; }
.ar-comments p { color: #cbd9e3; line-height: 1.95; }
.ar-comments .arc-field { display: flex; flex-direction: column; gap: 8px; margin: 0 0 16px; }
.ar-comments form { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
.ar-comments .arc-field-full, .ar-comments .form-submit,
.ar-comments .comment-form-cookies-consent { grid-column: 1 / -1; }
.ar-comments label { color: #9fc6cf; font-size: .88rem; font-weight: 700; }
.ar-comments input[type="text"], .ar-comments input[type="email"], .ar-comments textarea {
  background: rgba(255,255,255,.04); border: 1px solid rgba(130,192,204,.25);
  border-radius: 10px; color: #eaf3f6; padding: 11px 14px; font: inherit; width: 100%;
}
.ar-comments input:focus, .ar-comments textarea:focus { outline: none; border-color: #82C0CC; }
.ar-comments .submit, .ar-comments .arc-submit {
  background: transparent; color: #82C0CC; font-weight: 700; cursor: pointer;
  border: 1px solid rgba(130,192,204,.45); border-radius: 999px; padding: 11px 30px;
  transition: background .25s ease, color .25s ease;
}
.ar-comments .submit:hover, .ar-comments .arc-submit:hover { background: #82C0CC; color: #0b1a28; }
@media (max-width: 700px) { .ar-comments form { grid-template-columns: 1fr; } }

/* Blog cards — equal heights, CTAs on one line and identical in size */
.ar-blogpg .bp-card { align-self: stretch !important; }
.ar-blogpg .bp-card-link { display: flex !important; flex-direction: column !important; height: 100% !important; }
.ar-blogpg .bp-card-body { display: flex !important; flex-direction: column !important; flex: 1 1 auto !important; }
.ar-blogpg .bp-card-body h4 { min-height: 3.4em !important; }
.ar-blogpg .bp-card-body p { flex: 1 1 auto !important; }
.ar-blogpg .bp-more {
  margin-top: auto !important; align-self: flex-start !important;
  min-width: 130px !important; text-align: center !important;
}

/* Comments — everything in white so it reads clearly on the dark background */
.ar-comments,
.ar-comments p,
.ar-comments label,
.ar-comments a,
.ar-comments .logged-in-as,
.ar-comments .logged-in-as a,
.ar-comments .comment-notes,
.ar-comments .required-field-message,
.ar-comments .comment-form-cookies-consent label,
.ar-comments .arc-title,
.ar-comments .comment-reply-title,
.ar-comments .comment-author,
.ar-comments .comment-author .fn,
.ar-comments .comment-meta,
.ar-comments .comment-meta a {
  color: #ffffff !important;
}
.ar-comments .comment-reply-title, .ar-comments .arc-title { font-size: 1.3rem !important; }
.ar-comments .logged-in-as, .ar-comments .comment-notes { font-size: .9rem !important; opacity: .95; }
.ar-comments .logged-in-as a, .ar-comments .comment-meta a { text-decoration: underline; }
.ar-comments label { font-size: .95rem !important; }
.ar-comments input[type="text"],
.ar-comments input[type="email"],
.ar-comments input[type="url"],
.ar-comments textarea {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ffffff;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.38) !important;
}
.ar-comments input::placeholder, .ar-comments textarea::placeholder {
  color: rgba(255,255,255,.6) !important;
}
.ar-comments input:focus, .ar-comments textarea:focus {
  border-color: #ffffff !important;
}
.ar-comments .submit, .ar-comments .arc-submit {
  color: #ffffff !important; border-color: rgba(255,255,255,.6) !important; background: transparent !important;
}
.ar-comments .submit:hover, .ar-comments .arc-submit:hover {
  background: #ffffff !important; color: #0b1a28 !important;
}

/* ============================================================
   Sustainability page — refined top block (pillars below unchanged)
   ============================================================ */
.page-id-11937 .ar-page-title { display: none !important; }

.ar-sust2 .s-hero {
  text-align: center !important;
  margin: 6px 0 54px !important;
  padding: 0 0 6px;
}
.ar-sust2 .s-hero::before {
  content: 'رؤيتنا للإستدامة';
  display: block; color: #82C0CC; font-weight: 700;
  font-size: .88rem; letter-spacing: .16em; margin-bottom: 14px;
}
.ar-sust2 .s-hero h2 {
  color: #fff !important; font-weight: 900 !important;
  font-size: clamp(1.9rem, 3.8vw, 2.9rem) !important;
  line-height: 1.45 !important; margin: 0 !important;
}
.ar-sust2 .s-hero h2::after {
  content: ''; display: block; width: 86px; height: 2px; margin: 20px auto 26px;
  background: linear-gradient(90deg, transparent, #82C0CC, transparent);
}
.ar-sust2 .s-hero .s-lead {
  max-width: 900px !important; margin: 0 auto !important;
  color: #cbd9e3 !important; font-size: 1.06rem !important; line-height: 2.1 !important;
}

/* Vision statement — quiet feature block instead of a plain two-column row */
.ar-sust2 .s-vision {
  display: block !important;
  position: relative;
  max-width: 940px; margin: 0 auto 18px !important;
  padding: 30px 34px !important;
  background: linear-gradient(180deg, rgba(130,192,204,.07), rgba(130,192,204,.02));
  border: 1px solid rgba(130,192,204,.22);
  border-radius: 18px;
  text-align: center;
}
.ar-sust2 .s-vision .s-vision-head { display: block; margin: 0 0 12px; }
.ar-sust2 .s-vision h3 {
  color: #82C0CC !important; font-weight: 800 !important;
  font-size: 1.16rem !important; margin: 0 !important; text-align: center !important;
}
.ar-sust2 .s-vision h3::after {
  content: ''; display: block; width: 54px; height: 1px; margin: 12px auto 0;
  background: rgba(130,192,204,.5);
}
.ar-sust2 .s-vision p {
  color: #d3e0e8 !important; line-height: 2.05 !important; font-size: 1.02rem !important;
  margin: 0 !important; text-align: center !important; text-align-last: center !important;
}
@media (max-width: 700px) {
  .ar-sust2 .s-vision { padding: 24px 20px !important; }
}

/* Vision card: drop the old full-width rule above the heading */
.ar-sust2 .s-vision h3 { border-top: 0 !important; padding-top: 0 !important; }
.ar-sust2 .s-vision .s-vision-head { border: 0 !important; padding-top: 0 !important; }

/* Vision statement — no box; a quiet centred quote block */
.ar-sust2 .s-vision {
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  max-width: 880px !important;
  margin: 8px auto 6px !important;
  position: relative;
}
.ar-sust2 .s-vision .s-vision-head { margin: 0 0 16px !important; }
.ar-sust2 .s-vision h3 {
  color: #82C0CC !important; font-weight: 700 !important;
  font-size: .92rem !important; letter-spacing: .14em !important;
}
.ar-sust2 .s-vision h3::after { display: none !important; }
.ar-sust2 .s-vision p {
  color: #e3edf3 !important;
  font-size: 1.18rem !important; line-height: 2.1 !important; font-weight: 500 !important;
  max-width: 820px; margin: 0 auto !important;
}
.ar-sust2 .s-vision::after {
  content: ''; display: block; width: 60px; height: 1px; margin: 26px auto 0;
  background: rgba(130,192,204,.45);
}
@media (max-width: 700px) { .ar-sust2 .s-vision p { font-size: 1.05rem !important; } }

/* Partners — a slightly roomier gap between logos (was 34px, now ~52px) */
.elementor-element-532d01a { gap: 20px !important; column-gap: 20px !important; }
.elementor-element-532d01a > .elementor-element { margin: 0 16px !important; }

/* Clients row — same look, now a moving slider like the partners row */
.elementor-element-2ba3843 {
  overflow: visible !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 26px !important; column-gap: 26px !important;
}
.elementor-element-2ba3843.ar-run {
  width: max-content !important;
  animation: ar-logos-scroll 34s linear infinite;
}
.elementor-element-2ba3843.ar-run:hover { animation-play-state: paused; }
@media (max-width: 1024px) { .elementor-element-2ba3843 { flex-wrap: nowrap !important; } }

/* "ما يميزنا" title — exactly like قصتنا: right aligned, no rule underneath */
.ar-mayo-hero {
  border-bottom: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 0 44px !important;
}

/* ── Sustainability: top block laid out like قصتنا (title right, no centring) ── */
.ar-sust2 .s-hero {
  text-align: right !important;
  margin: 0 0 40px !important;
}
.ar-sust2 .s-hero::before { display: none !important; }
.ar-sust2 .s-hero h2 {
  font-size: 2.8rem !important; font-weight: 700 !important;
  line-height: 1.5 !important; margin: 0 0 26px !important; text-align: right !important;
}
.ar-sust2 .s-hero h2::after { display: none !important; }
.ar-sust2 .s-hero .s-lead {
  max-width: none !important; margin: 0 !important;
  text-align: justify !important; text-align-last: right !important;
}

/* Vision statement + photo side by side (photo on the right in RTL) */
.ar-sust2 .s-vision {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 30px 40px !important;
  align-items: center !important;
  text-align: right !important;
  max-width: none !important;
  margin: 10px 0 6px !important;
}
.ar-sust2 .s-vision .s-vision-media {
  grid-row: 1 / span 2;
  align-self: stretch;
}
.ar-sust2 .s-vision .s-vision-media img {
  width: 100%; height: 100%; min-height: 260px; max-height: 340px;
  object-fit: cover; display: block;
  border-radius: 16px; box-shadow: 0 16px 38px rgba(0,0,0,.36);
}
.ar-sust2 .s-vision .s-vision-head { margin: 0 0 12px !important; align-self: end; }
.ar-sust2 .s-vision h3 { text-align: right !important; }
.ar-sust2 .s-vision p {
  text-align: justify !important; text-align-last: right !important;
  font-size: 1.06rem !important; align-self: start; max-width: none !important;
}
.ar-sust2 .s-vision::after { display: none !important; }
@media (max-width: 820px) {
  .ar-sust2 .s-vision { grid-template-columns: 1fr !important; }
  .ar-sust2 .s-vision .s-vision-media { grid-row: auto; }
  .ar-sust2 .s-hero h2 { font-size: 2rem !important; }
}

/* Form dropdowns (سنوات الخبرة … وباقي القوائم) — white text, readable options */
.ar-job-form select,
.ar-meet-form select,
.ar-jobs select,
form select {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background-color: #0c1c2c !important;
}
.ar-job-form select option,
.ar-meet-form select option,
.ar-jobs select option,
form select option {
  color: #ffffff !important;
  background-color: #0e2032 !important;
}
form select option:checked,
form select option:hover {
  color: #0b1a28 !important;
  background-color: #82C0CC !important;
}

/* Media centre items — no badges, everything centred */
.ar-media-item .mi-badge { display: none !important; }
.ar-media-item { text-align: center !important; }
.ar-media-item .mi-num { text-align: center !important; }
.ar-media-item h3 { text-align: center !important; }
.ar-media-item p { text-align: center !important; margin-bottom: 0 !important; }
.ar-media-grid { align-items: start !important; }

/* Media centre banner — a bit smaller */
.ar-media-banner { margin: 26px auto 42px !important; max-width: 900px !important; }
.ar-media-banner img { height: 260px !important; }
@media (max-width: 820px) { .ar-media-banner img { height: 190px !important; } }

/* ── Media centre: intro text beside the image (قصتنا-style title) ── */
.elementor-element-c63ddc3 > .elementor-widget-container {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 40px !important;
  align-items: center !important;
}
.ar-media-hero {
  text-align: right !important;
  margin: 0 !important;
}
.ar-media-hero .mdh-kicker { display: none !important; }
.ar-media-hero h2 {
  font-size: 2.8rem !important; font-weight: 700 !important;
  text-align: right !important; margin: 0 0 22px !important;
}
.ar-media-hero h2::after { display: none !important; }
.ar-media-hero .mdh-lead {
  max-width: none !important; margin: 0 !important;
  text-align: justify !important; text-align-last: right !important;
  font-size: 1.04rem !important;
}
.ar-media-banner { margin: 0 !important; max-width: none !important; }
.ar-media-banner img { height: 300px !important; border-radius: 16px !important; }

/* Sections — clearer, card-like blocks */
.ar-media-grid { gap: 26px !important; margin-top: 54px !important; }
.ar-media-item {
  background: linear-gradient(180deg, rgba(130,192,204,.07), rgba(130,192,204,.02)) !important;
  border: 1px solid rgba(130,192,204,.22) !important;
  border-top: 1px solid rgba(130,192,204,.22) !important;
  border-radius: 16px !important;
  padding: 30px 26px !important;
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.ar-media-item:hover {
  transform: translateY(-4px);
  border-color: rgba(130,192,204,.55) !important;
  background: linear-gradient(180deg, rgba(130,192,204,.12), rgba(130,192,204,.04)) !important;
}
.ar-media-item .mi-num {
  font-size: 2rem !important; color: rgba(130,192,204,.45) !important; margin-bottom: 8px !important;
}
.ar-media-item h3 { font-size: 1.32rem !important; margin-bottom: 10px !important; }
.ar-media-item p { font-size: .98rem !important; }
@media (max-width: 900px) {
  .elementor-element-c63ddc3 > .elementor-widget-container { grid-template-columns: 1fr !important; gap: 24px !important; }
  .ar-media-hero h2 { font-size: 2rem !important; }
  .ar-media-banner img { height: 210px !important; }
}

/* Media hero grid — Elementor optimised markup has no .elementor-widget-container */
.elementor-element-c63ddc3,
.elementor-element-c63ddc3 > .elementor-widget-container {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 40px !important;
  align-items: center !important;
}
.ar-media-banner img { width: 100% !important; }

/* Media sections — no boxes; plain entries again (keep image + text side by side) */
.ar-media-item {
  background: none !important;
  border: 0 !important;
  border-top: 1px solid rgba(130,192,204,.28) !important;
  border-radius: 0 !important;
  padding: 18px 6px 0 !important;
  transform: none !important;
}
.ar-media-item:hover {
  background: none !important;
  border-color: rgba(130,192,204,.28) !important;
  transform: none !important;
}
.ar-media-grid { gap: 40px 56px !important; }

/* Media hero — stacked like قصتنا: title + description first, image underneath */
.elementor-element-c63ddc3,
.elementor-element-c63ddc3 > .elementor-widget-container {
  display: block !important;
}
.ar-media-hero { margin: 0 0 30px !important; }
.ar-media-banner { margin: 0 0 10px !important; max-width: none !important; }
.ar-media-banner img { width: 100% !important; height: 320px !important; }
@media (max-width: 900px) { .ar-media-banner img { height: 200px !important; } }

/* Filled hover states — force the dark label so it stays readable on teal/white */
.ar-blogpg .bp-card-link:hover .bp-more,
.ar-blogpg .bp-more:hover,
.ar-article-page .aaf-back:hover,
.ar-comments .submit:hover,
.ar-comments .arc-submit:hover,
.ar-board-more:hover,
.ar-job-submit:hover,
.ar-meet-submit:hover,
.ar-cform button:hover,
.ar-ceo-cta:hover {
  background: #82C0CC !important;
  border-color: #82C0CC !important;
  color: #0b1a28 !important;
  -webkit-text-fill-color: #0b1a28 !important;
}
.ar-comments .submit:hover, .ar-comments .arc-submit:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
}
.ar-jobs-feature-cta:hover { color: #0b1a28 !important; -webkit-text-fill-color: #0b1a28 !important; }

/* Suppliers hero title — smaller so it fits on one line */
.ar-suppliers-page .ar-jobs-feature-text h2,
.ar-suppliers-page .ar-jobs-feature h2 {
  font-size: clamp(1.35rem, 2.1vw, 1.85rem) !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
}
@media (max-width: 820px) {
  .ar-suppliers-page .ar-jobs-feature-text h2,
  .ar-suppliers-page .ar-jobs-feature h2 { white-space: normal !important; font-size: 1.3rem !important; }
}

/* Suppliers hero title is an H1 — size it to sit on one line */
.ar-suppliers-page .ar-jobs-feature h1 {
  font-size: 1.62rem !important;
  line-height: 1.6 !important;
  white-space: nowrap !important;
  margin-bottom: 14px !important;
}
@media (max-width: 900px) {
  .ar-suppliers-page .ar-jobs-feature h1 { white-space: normal !important; font-size: 1.35rem !important; }
}

/* Charter page — the new photo under the title */
.page-id-8454 .ar-charter-img img,
.page-id-8454 .elementor-widget-image img {
  width: 100% !important; max-width: 900px !important;
  height: 340px !important; object-fit: cover !important;
  display: block !important; margin: 8px auto 34px !important;
  border-radius: 18px !important; box-shadow: 0 18px 44px rgba(0,0,0,.42) !important;
}
@media (max-width: 820px) {
  .page-id-8454 .elementor-widget-image img { height: 210px !important; }
}

/* CTA buttons that used the orange accent → neutral grey */
.arv3-cta, .arp5-cta a, .arp4-cta a {
  background: #6B7280 !important; border-color: #6B7280 !important; color: #ffffff !important;
}
.arv3-cta:hover, .arp5-cta a:hover, .arp4-cta a:hover {
  background: #4B5563 !important; border-color: #4B5563 !important; color: #ffffff !important;
}

/* ===== Media banner - show the whole image, never cropped ===== */
.ar-media-banner { margin: 0 auto 16px !important; max-width: 1040px !important; }
.ar-media-banner img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  border-radius: 16px !important;
}
@media (max-width: 900px) {
  .ar-media-banner img { height: auto !important; }
}

/* ===== Charter + Careers images - show the whole photo, never cropped ===== */
.page-id-8454 .ar-charter-img img,
.page-id-8454 .elementor-widget-image img {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}
@media (max-width: 820px) {
  .page-id-8454 .elementor-widget-image img { height: auto !important; }
}
.ar-jobs-join-media img {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}

/* ===== Executive members - photo above the list, full, centered ===== */
.ar-exec-photo { margin: 26px auto 10px !important; max-width: 900px; text-align: center; }
.ar-exec-photo img {
  width: 100% !important; height: auto !important; max-height: none !important;
  aspect-ratio: auto !important; object-fit: contain !important;
  display: block; margin: 0 auto; border-radius: 18px;
  box-shadow: 0 18px 44px rgba(0,0,0,.40);
}

/* Executive members photo - portrait: cap the height, keep it whole */
.ar-exec-photo { max-width: none !important; }
.ar-exec-photo img {
  width: auto !important; max-width: 100% !important;
  height: auto !important; max-height: 620px !important;
}
@media (max-width: 700px) { .ar-exec-photo img { max-height: 440px !important; } }

/* Executive members photo - refined framing */
.ar-exec-photo { display:flex !important; justify-content:center !important; align-items:center !important; margin: 40px auto 46px !important; padding: 0 18px !important; }
.ar-exec-photo img {
  max-height: 520px !important; width: auto !important; max-width: 100% !important;
  border-radius: 20px !important;
  outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 14px !important;
  box-shadow: 0 30px 66px rgba(0,0,0,.55) !important;
}
@media (max-width: 700px) { .ar-exec-photo img { max-height: 400px !important; outline-offset: 9px !important; } }

/* Home 'about' photo - whole image, framed */
.ar-v2-aboutimg { display:flex !important; justify-content:center !important; align-items:center !important; }
.ar-v2-aboutimg img {
  width: auto !important; max-width: 100% !important;
  height: auto !important; max-height: 520px !important;
  aspect-ratio: auto !important; object-fit: contain !important;
  border-radius: 20px !important;
  outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 14px !important;
  box-shadow: 0 30px 66px rgba(0,0,0,.55) !important;
}
@media (max-width: 700px) { .ar-v2-aboutimg img { max-height: 400px !important; outline-offset: 9px !important; } }

/* Founder hero - move the content clear of the logo in the photo */
.ar-founder .ar-founder-hero {
  min-height: 420px !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  text-align: right !important;
  padding: 48px clamp(24px, 7vw, 96px) 46px !important;
}
.ar-founder .ar-founder-hero .ar-founder-eyebrow,
.ar-founder .ar-founder-hero .ar-founder-title { text-shadow: 0 3px 18px rgba(0,0,0,.75); }
.ar-founder .ar-founder-hero .ar-breadcrumb { justify-content: flex-start !important; text-shadow: 0 2px 12px rgba(0,0,0,.75); }
@media (max-width: 860px) {
  .ar-founder .ar-founder-hero { min-height: 300px !important; padding: 34px 22px 30px !important; }
}

/* Founder hero - anchor to the right side (RTL start) */
.ar-founder .ar-founder-hero { align-items: flex-start !important; }
.ar-founder .ar-founder-hero .ar-breadcrumb { justify-content: flex-end !important; }

/* Founder hero - show the whole banner photo, uncropped */
.ar-founder .ar-founder-hero {
  aspect-ratio: 1919 / 820 !important;
  min-height: 0 !important;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #102233 !important;
}
@media (max-width: 860px) { .ar-founder .ar-founder-hero { min-height: 0 !important; } }

/* Founder hero - slightly shorter banner */
.ar-founder .ar-founder-hero { max-height: 380px !important; }
@media (max-width: 860px) { .ar-founder .ar-founder-hero { max-height: 250px !important; } }

/* Home: vision - mission - values section */
.ar-vmv-home { padding: 76px 24px; text-align: center; }
.ar-vmv-inner { max-width: 860px; margin: 0 auto; }
.ar-vmv-kicker { display:block; color:#82C0CC; font-weight:700; letter-spacing:.05em; font-size:1rem; margin-bottom:14px; }
.ar-vmv-title { color:#fff; font-weight:900; font-size:clamp(1.9rem,3.6vw,2.6rem); margin:0 0 20px; }
.ar-vmv-text { color:#c8d5df; font-size:1.08rem; line-height:2.1; margin:0 0 30px; }
.ar-vmv-cta { display:inline-flex; align-items:center; gap:10px; background:#6B7280; color:#fff !important; text-decoration:none; font-weight:700; padding:13px 34px; border-radius:10px; transition:background .3s ease, transform .3s ease; }
.ar-vmv-cta:hover { background:#4B5563; transform:translateY(-2px); color:#fff !important; }
@media (max-width:700px){ .ar-vmv-home { padding:52px 20px; } }

/* Home: vision section band - same background as the founder quote section */
.elementor-element-arvmv1 { background-color:#16304A !important; }
.ar-vmv-sec { padding: 64px 30px !important; }

/* Home: about band matches the solutions band, so it reads apart from the vision band */
.elementor-element-v2fb5 { background-color:#102233 !important; }

/* Home: vision section - title + CTA only */
.ar-vmv-only { text-align:center; padding:64px 24px; }
.ar-vmv-only h2 { color:#fff !important; font-size:clamp(1.9rem,3.4vw,2.4rem) !important; margin:0 0 26px !important; }
.ar-vmv-only .ar-blog-cta { margin:0 auto; }
@media (max-width:700px){ .ar-vmv-only { padding:46px 20px; } }

/* Home: vision section - framed photo, white table strip cropped out */
.ar-vmv-media img {
  width: 100% !important; height: auto !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important; object-position: center top !important;
  border-radius: 20px !important;
  outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 12px !important;
  box-shadow: 0 26px 60px rgba(0,0,0,.5) !important;
}
.ar-vmv-text { display:flex; flex-direction:column; align-items:flex-end; }
.ar-vmv-text h2 { margin-bottom: 26px !important; }
.ar-vmv-sec { padding: 70px 40px !important; }
@media (max-width:860px){ .ar-vmv-text { align-items:center; } .ar-vmv-media img { outline-offset:8px !important; } }

/* Home: vm2 photo - simple frame, white table strip cropped out */
body.home .ar-vm2-illus { border-radius:0 !important; overflow:visible !important; }
body.home .ar-vm2-illus img {
  width:100% !important; height:auto !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important; object-position: center top !important;
  border-radius: 20px !important;
  outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 12px !important;
  box-shadow: 0 26px 60px rgba(0,0,0,.5) !important;
  display:block !important;
}
@media (max-width:860px){ body.home .ar-vm2-illus img { outline-offset:8px !important; } }

/* Home: drop the white card behind the vm2 photo */
body.home .ar-vm2-illus {
  background: none !important; border: 0 !important; box-shadow: none !important;
  aspect-ratio: auto !important; border-radius: 0 !important; overflow: visible !important;
}

/* Home: vm2 photo - uncropped, whole image inside the frame */
body.home .ar-vm2-illus img {
  aspect-ratio: auto !important;
  height: auto !important; max-height: none !important;
  object-fit: contain !important; object-position: center !important;
}

/* ===== Unified CTA styling - same look as the founder-quote button (meeting button excluded) ===== */
.ar-blog-cta,
.arv3-cta,
.ar-jobs-feature-cta,
.ar-board-more,
.bp-more,
.aaf-back,
.ar-job-submit,
.ar-meet-submit,
.ar-cform button,
.ar-ps2-cta a,
.arp5-cta a,
.arp4-cta a,
.ar-vmv-cta,
.ar-site-main .elementor-button,
.elementor-location-footer .elementor-button {
  display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:10px !important;
  background:#1F4669 !important; background-image:none !important;
  color:#ffffff !important; -webkit-text-fill-color:#ffffff !important;
  font-weight:800 !important; font-size:1rem !important;
  padding:14px 32px !important; border-radius:999px !important;
  border:1px solid rgba(130,192,204,0.4) !important;
  box-shadow:none !important; text-decoration:none !important;
  transition:background .25s ease, transform .25s ease, box-shadow .25s ease !important;
}
.ar-blog-cta:hover,
.arv3-cta:hover,
.ar-jobs-feature-cta:hover,
.ar-board-more:hover,
.bp-more:hover,
.aaf-back:hover,
.ar-job-submit:hover,
.ar-meet-submit:hover,
.ar-cform button:hover,
.ar-ps2-cta a:hover,
.arp5-cta a:hover,
.arp4-cta a:hover,
.ar-vmv-cta:hover,
.ar-site-main .elementor-button:hover,
.elementor-location-footer .elementor-button:hover {
  background:#82C0CC !important; border-color:#82C0CC !important;
  color:#102233 !important; -webkit-text-fill-color:#102233 !important;
  transform:translateY(-2px) !important; box-shadow:0 14px 30px rgba(0,0,0,.35) !important;
}
.ar-blog-cta *,
.arv3-cta *,
.ar-jobs-feature-cta *,
.ar-board-more *,
.bp-more *,
.aaf-back *,
.ar-job-submit *,
.ar-meet-submit *,
.ar-cform button *,
.ar-ps2-cta a *,
.arp5-cta a *,
.arp4-cta a *,
.ar-vmv-cta *,
.ar-site-main .elementor-button *,
.elementor-location-footer .elementor-button * { color:inherit !important; -webkit-text-fill-color:inherit !important; background:none !important; }

/* ===== Glassmorphic pill CTAs - unified with "تعرف على مسيرته" ===== */
.ar-blog-cta,
.arv3-cta,
.ar-jobs-feature-cta,
.ar-board-more,
.bp-more,
.aaf-back,
.ar-ps2-cta a,
.arp5-cta a,
.arp4-cta a,
.ar-job-submit,
.ar-meet-submit,
.ar-cform button,
.ar-site-main .elementor-button,
.elementor-location-footer .elementor-button {
  display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:12px !important;
  padding:14px 32px !important; border-radius:100px !important;
  background:rgba(255,255,255,0.08) !important; background-image:none !important;
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,0.30) !important;
  color:#FFFFFF !important; -webkit-text-fill-color:#FFFFFF !important;
  font-weight:500 !important; font-size:15px !important;
  text-decoration:none !important; box-shadow:none !important; cursor:pointer !important;
  transition:all .3s ease !important;
}
.ar-blog-cta:hover,
.arv3-cta:hover,
.ar-jobs-feature-cta:hover,
.ar-board-more:hover,
.bp-more:hover,
.aaf-back:hover,
.ar-ps2-cta a:hover,
.arp5-cta a:hover,
.arp4-cta a:hover,
.ar-job-submit:hover,
.ar-meet-submit:hover,
.ar-cform button:hover,
.ar-site-main .elementor-button:hover,
.elementor-location-footer .elementor-button:hover {
  background:rgba(255,255,255,0.15) !important;
  border-color:rgba(255,255,255,0.50) !important;
  color:#FFFFFF !important; -webkit-text-fill-color:#FFFFFF !important;
  transform:translateY(-1px) !important; box-shadow:none !important;
}
.ar-blog-cta *,
.arv3-cta *,
.ar-jobs-feature-cta *,
.ar-board-more *,
.bp-more *,
.aaf-back *,
.ar-ps2-cta a *,
.arp5-cta a *,
.arp4-cta a *,
.ar-job-submit *,
.ar-meet-submit *,
.ar-cform button *,
.ar-site-main .elementor-button *,
.elementor-location-footer .elementor-button * { color:inherit !important; -webkit-text-fill-color:inherit !important; background:none !important; }
.ar-blog-cta::after,
.ar-jobs-feature-cta::after,
.ar-board-more::after,
.bp-more::after,
.ar-ps2-cta a::after,
.arp5-cta a::after,
.arp4-cta a::after,
.ar-site-main .elementor-button::after,
.elementor-location-footer .elementor-button::after {
  content:"←"; font-size:18px; line-height:1; color:#FFFFFF;
  transition:transform .3s ease;
}
.ar-blog-cta:hover::after,
.ar-jobs-feature-cta:hover::after,
.ar-board-more:hover::after,
.bp-more:hover::after,
.ar-ps2-cta a:hover::after,
.arp5-cta a:hover::after,
.arp4-cta a:hover::after,
.ar-site-main .elementor-button:hover::after,
.elementor-location-footer .elementor-button:hover::after { transform:translateX(-4px); }
.ar-site-main .elementor-button .elementor-button-icon svg,
.elementor-location-footer .elementor-button .elementor-button-icon svg { display:none !important; }

/* ===== CTA hover glow ===== */
.ar-blog-cta:hover,
.arv3-cta:hover,
.ar-jobs-feature-cta:hover,
.ar-board-more:hover,
.bp-more:hover,
.aaf-back:hover,
.ar-ps2-cta a:hover,
.arp5-cta a:hover,
.arp4-cta a:hover,
.ar-job-submit:hover,
.ar-meet-submit:hover,
.ar-cform button:hover,
.ar-site-main .elementor-button:hover,
.elementor-location-footer .elementor-button:hover,
.ar-ceo-cta:hover,
.ar-meet-btn:hover,
.ar-blog-cta:focus-visible,
.arv3-cta:focus-visible,
.ar-jobs-feature-cta:focus-visible,
.ar-board-more:focus-visible,
.bp-more:focus-visible,
.aaf-back:focus-visible,
.ar-ps2-cta a:focus-visible,
.arp5-cta a:focus-visible,
.arp4-cta a:focus-visible,
.ar-job-submit:focus-visible,
.ar-meet-submit:focus-visible,
.ar-cform button:focus-visible,
.ar-site-main .elementor-button:focus-visible,
.elementor-location-footer .elementor-button:focus-visible,
.ar-ceo-cta:focus-visible,
.ar-meet-btn:focus-visible {
  background:rgba(130,192,204,0.22) !important;
  border-color:#82C0CC !important;
  color:#ffffff !important; -webkit-text-fill-color:#ffffff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 0 0 3px rgba(130,192,204,0.18), 0 12px 32px rgba(130,192,204,0.45) !important;
  filter:brightness(1.06);
}

/* ===== CTA hover glow - high specificity ===== */
html body .ar-blog-cta:hover,
html body .arv3-cta:hover,
html body .ar-jobs-feature-cta:hover,
html body .ar-board-more:hover,
html body .bp-more:hover,
html body .aaf-back:hover,
html body .ar-ps2-cta a:hover,
html body .arp5-cta a:hover,
html body .arp4-cta a:hover,
html body .ar-job-submit:hover,
html body .ar-meet-submit:hover,
html body .ar-cform button:hover,
html body .ar-site-main .elementor-button:hover,
html body .elementor-location-footer .elementor-button:hover,
html body .ar-ceo-cta:hover,
html body .ar-meet-btn:hover {
  background:rgba(130,192,204,0.22) !important;
  border-color:#82C0CC !important;
  color:#ffffff !important; -webkit-text-fill-color:#ffffff !important;
  transform:translateY(-2px) !important;
  box-shadow:0 0 0 3px rgba(130,192,204,0.18), 0 12px 32px rgba(130,192,204,0.45) !important;
  filter:brightness(1.06) !important;
}

/* Blog CTA: kill the legacy shine overlay so it matches the rest */
html body .ar-blog-cta::before { display:none !important; content:none !important; background:none !important; }

/* ===== Bigger, clearer partner & client logos ===== */
html body .elementor-element-532d01a > .elementor-element { height:132px !important; margin:0 16px !important; }
html body .elementor-element-532d01a img {
  height:132px !important; max-height:132px !important; min-height:132px !important;
  width:auto !important; max-width:380px !important; min-width:0 !important;
  object-fit:contain !important;
  filter:none !important; opacity:1 !important;
}
html body .elementor-element-532d01a img:hover { filter:brightness(1.15) !important; }
html body .elementor-element-2ba3843 > .elementor-element { height:96px !important; width:auto !important; max-width:none !important; min-width:0 !important; flex:0 0 auto !important; }
html body .elementor-element-2ba3843 img {
  height:96px !important; max-height:96px !important; min-height:96px !important;
  width:auto !important; max-width:260px !important; min-width:0 !important;
  object-fit:contain !important;
  filter:none !important; opacity:1 !important;
}
html body .elementor-element-2ba3843 img:hover { filter:brightness(1.15) !important; }
@media (max-width:820px){
  html body .elementor-element-532d01a > .elementor-element,
  html body .elementor-element-532d01a img { height:76px !important; max-height:76px !important; min-height:76px !important; }
  html body .elementor-element-2ba3843 > .elementor-element,
  html body .elementor-element-2ba3843 img { height:70px !important; max-height:70px !important; min-height:70px !important; }
}

/* ===== Partners: uniform white cards, every logo the same box ===== */
html body .elementor-element-532d01a > .elementor-element {
  width:240px !important; max-width:240px !important; min-width:240px !important;
  flex:0 0 240px !important; height:146px !important;
  margin:0 12px !important; padding:0 !important;
  background:#ffffff !important; border-radius:14px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  overflow:hidden !important; box-shadow:0 10px 26px rgba(0,0,0,.28) !important;
}
html body .elementor-element-532d01a > .elementor-element .elementor-widget-image,
html body .elementor-element-532d01a > .elementor-element .elementor-widget-container,
html body .elementor-element-532d01a > .elementor-element figure {
  width:100% !important; height:100% !important; margin:0 !important; padding:0 !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
html body .elementor-element-532d01a img {
  width:100% !important; max-width:206px !important; min-width:0 !important;
  height:110px !important; max-height:110px !important; min-height:110px !important;
  object-fit:contain !important; filter:none !important; opacity:1 !important;
}
html body .elementor-element-532d01a img:hover { filter:none !important; }
@media (max-width:820px){
  html body .elementor-element-532d01a > .elementor-element { width:160px !important; max-width:160px !important; min-width:160px !important; flex:0 0 160px !important; height:96px !important; }
  html body .elementor-element-532d01a img { max-width:128px !important; max-height:66px !important; }
}

/* ===== Partners: transparent slots, uniform size, white monochrome logos ===== */
html body .elementor-element-532d01a > .elementor-element {
  background:none !important; box-shadow:none !important; border-radius:0 !important;
  width:220px !important; max-width:220px !important; min-width:220px !important;
  flex:0 0 220px !important; height:120px !important; margin:0 14px !important;
}
html body .elementor-element-532d01a img {
  width:100% !important; max-width:190px !important;
  height:96px !important; max-height:96px !important; min-height:96px !important;
  object-fit:contain !important;
  filter:brightness(0) invert(1) !important; opacity:.95 !important;
  transition:opacity .25s ease, filter .25s ease !important;
}
html body .elementor-element-532d01a img:hover { opacity:1 !important; filter:brightness(0) invert(1) !important; }
@media (max-width:820px){
  html body .elementor-element-532d01a > .elementor-element { width:160px !important; max-width:160px !important; min-width:160px !important; flex:0 0 160px !important; height:92px !important; }
  html body .elementor-element-532d01a img { max-width:140px !important; height:72px !important; max-height:72px !important; min-height:72px !important; }
}

/* ===== Partners: equalised visual size - every logo drawn at the same height ===== */
html body .elementor-element-532d01a img {
  width:auto !important; max-width:240px !important; min-width:0 !important;
  height:112px !important; max-height:112px !important; min-height:112px !important;
  object-fit:contain !important; object-position:center !important;
}
@media (max-width:820px){
  html body .elementor-element-532d01a img { height:64px !important; max-height:64px !important; min-height:64px !important; max-width:150px !important; }
}

/* ===== Partners: per-logo optical normalisation (files are 300x300 with different padding) ===== */
html body .elementor-element-532d01a > .elementor-element { overflow:visible !important; }
html body .elementor-element-532d01a img { transform-origin:center center !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+1) img { transform:scale(1.9) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+2) img { transform:scale(1.5) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+3) img { transform:scale(1.9) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+4) img { transform:scale(1.9) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+5) img { transform:scale(1.07) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+6) img { transform:scale(1.9) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+7) img { transform:scale(0.6) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+8) img { transform:scale(1.22) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+9) img { transform:scale(1.79) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+10) img { transform:scale(1.9) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+0) img { transform:scale(1.9) !important; }

/* ===== Clients carousel: 6 per view on desktop, bigger logos ===== */
html body .elementor-element-2ba3843 { gap:20px !important; column-gap:20px !important; }
html body .elementor-element-2ba3843 > .elementor-element {
  width:178px !important; max-width:178px !important; min-width:178px !important;
  flex:0 0 178px !important; height:120px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  padding:10px !important;
}
html body .elementor-element-2ba3843 img {
  max-width:160px !important; max-height:100px !important;
  width:auto !important; height:auto !important;
  min-width:0 !important; min-height:0 !important;
  object-fit:contain !important;
}
@media (min-width:768px) and (max-width:1199px){
  html body .elementor-element-2ba3843 > .elementor-element { width:190px !important; max-width:190px !important; min-width:190px !important; flex:0 0 190px !important; }
}

/* clients img final override */
html body.home .elementor-element-2ba3843 img, body .elementor-element-2ba3843 img {
  max-width:160px !important; max-height:100px !important;
  width:auto !important; height:auto !important;
  min-width:0 !important; min-height:0 !important;
}

/* ===== Partners: reference look - light band, grayscale logos, no cards ===== */
html body .elementor-element-93ee592 { background-color:#F2F4F6 !important; }
html body .elementor-element-93ee592 h1, html body .elementor-element-93ee592 h2,
html body .elementor-element-93ee592 h3, html body .elementor-element-93ee592 p,
html body .elementor-element-93ee592 .elementor-heading-title { color:#1B3E4E !important; -webkit-text-fill-color:#1B3E4E !important; }
html body .elementor-element-532d01a > .elementor-element {
  background:none !important; box-shadow:none !important; border:0 !important; border-radius:0 !important;
  width:230px !important; max-width:230px !important; min-width:230px !important;
  flex:0 0 230px !important; height:110px !important; margin:0 18px !important; padding:0 !important;
}
html body .elementor-element-532d01a img {
  filter:grayscale(1) brightness(1.1) contrast(0.9) !important; opacity:1 !important;
}
html body .elementor-element-532d01a img:hover { filter:grayscale(0) !important; }
html body .elementor-element-532d01a.ar-run:hover { animation-play-state:paused !important; }

/* ===== Partners: dark band like clients ===== */
html body .elementor-element-93ee592 { background-color:#102233 !important; }
html body .elementor-element-93ee592 h1, html body .elementor-element-93ee592 h2,
html body .elementor-element-93ee592 h3,
html body .elementor-element-93ee592 .elementor-heading-title { color:#ffffff !important; -webkit-text-fill-color:#ffffff !important; }
html body .elementor-element-93ee592 p { color:#c8d5df !important; -webkit-text-fill-color:#c8d5df !important; }
html body .elementor-element-532d01a img {
  filter:brightness(0) invert(1) !important; opacity:.95 !important;
}
html body .elementor-element-532d01a img:hover { filter:brightness(0) invert(1) !important; opacity:1 !important; }

/* ===== Partners: founder-band colour + reveal colours on hover ===== */
html body .elementor-element-93ee592 { background-color:#16304A !important; }
html body .elementor-element-532d01a img {
  filter:brightness(0) invert(1) !important; opacity:.95 !important;
  transition:filter .3s ease, opacity .3s ease !important;
}
html body .elementor-element-532d01a img:hover {
  filter:none !important; opacity:1 !important;
}

/* ===== Partners: tighter spacing between logos ===== */
html body .elementor-element-532d01a { gap:0px !important; column-gap:0px !important; }
html body .elementor-element-532d01a > .elementor-element {
  width:150px !important; max-width:150px !important; min-width:150px !important;
  flex:0 0 150px !important; margin:0 3px !important;
}

/* ===== Partners: no-overlap sizing, grey logos, colour on hover ===== */
html body .elementor-element-532d01a { gap:14px !important; column-gap:14px !important; }
html body .elementor-element-532d01a > .elementor-element {
  width:195px !important; max-width:195px !important; min-width:195px !important;
  flex:0 0 195px !important; margin:0 6px !important; overflow:hidden !important;
}
html body .elementor-element-532d01a img {
  filter:brightness(0) invert(1) !important; opacity:.55 !important;
  transition:filter .3s ease, opacity .3s ease !important;
}
html body .elementor-element-532d01a img:hover { filter:none !important; opacity:1 !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+1) img { transform:scale(1.5) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+2) img { transform:scale(1.3) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+3) img { transform:scale(1.5) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+4) img { transform:scale(1.5) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+5) img { transform:scale(1) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+6) img { transform:scale(1.5) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+7) img { transform:scale(0.6) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+8) img { transform:scale(1.15) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+9) img { transform:scale(1.4) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+10) img { transform:scale(1.5) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+0) img { transform:scale(1.5) !important; }

/* ===== Partners: bigger + clearly visible before hover ===== */
html body .elementor-element-532d01a { gap:6px !important; column-gap:6px !important; }
html body .elementor-element-532d01a > .elementor-element { margin:0 3px !important; }
html body .elementor-element-532d01a img { opacity:.9 !important; }
html body .elementor-element-532d01a img:hover { filter:none !important; opacity:1 !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+1) img { transform:scale(1.7) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+2) img { transform:scale(1.45) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+3) img { transform:scale(1.7) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+4) img { transform:scale(1.7) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+5) img { transform:scale(1.1) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+6) img { transform:scale(1.7) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+7) img { transform:scale(0.68) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+8) img { transform:scale(1.3) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+9) img { transform:scale(1.55) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+10) img { transform:scale(1.7) !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+0) img { transform:scale(1.7) !important; }

/* ===== Partners: final uniform spacing + detail-preserving tint ===== */
html body .elementor-element-532d01a { gap:40px !important; column-gap:40px !important; padding:20px 0 !important; }
html body .elementor-element-532d01a > .elementor-element {
  width:157px !important; max-width:180px !important; min-width:140px !important;
  flex:0 0 157px !important; height:100px !important; margin:0 !important;
  overflow:visible !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
html body .elementor-element-532d01a > .elementor-element img {
  transform:none !important;
  max-width:100% !important; max-height:80px !important;
  width:auto !important; height:auto !important;
  min-width:0 !important; min-height:0 !important;
  object-fit:contain !important;
  filter:grayscale(1) invert(1) brightness(1.55) contrast(.95) !important;
  opacity:.92 !important;
  transition:filter .3s ease, opacity .3s ease !important;
}
html body .elementor-element-532d01a > .elementor-element img:hover { filter:none !important; opacity:1 !important; }
@media (min-width:768px) and (max-width:1199px){
  html body .elementor-element-532d01a { gap:30px !important; column-gap:30px !important; }
  html body .elementor-element-532d01a > .elementor-element { width:190px !important; flex:0 0 190px !important; }
}
@media (max-width:767px){
  html body .elementor-element-532d01a { gap:20px !important; column-gap:20px !important; }
  html body .elementor-element-532d01a > .elementor-element { width:150px !important; min-width:150px !important; flex:0 0 150px !important; height:80px !important; }
  html body .elementor-element-532d01a > .elementor-element img { max-height:60px !important; }
}

/* Partners: kill all per-logo transforms for uniform sizing */
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+0) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+1) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+2) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+3) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+4) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+5) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+6) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+7) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+8) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+9) img { transform:none !important; }
html body .elementor-element-532d01a > .elementor-element:nth-child(11n+10) img { transform:none !important; }

/* ===== Partners: tighter final gap ===== */
html body .elementor-element-532d01a { gap:16px !important; column-gap:16px !important; }
html body .elementor-element-532d01a > .elementor-element {
  width:172px !important; max-width:172px !important; min-width:172px !important;
  flex:0 0 172px !important; margin:0 !important;
}
@media (max-width:767px){
  html body .elementor-element-532d01a { gap:12px !important; column-gap:12px !important; }
  html body .elementor-element-532d01a > .elementor-element { width:140px !important; max-width:140px !important; min-width:140px !important; flex:0 0 140px !important; }
}

/* ===== Partners: bigger logos final ===== */
html body .elementor-element-532d01a > .elementor-element { height:130px !important; }
html body .elementor-element-532d01a > .elementor-element img {
  max-height:118px !important; max-width:100% !important;
}

/* ===== Partners: identical square render for every logo (files are 300x300) ===== */
html body .elementor-element-532d01a > .elementor-element img {
  width:124px !important; height:124px !important;
  max-width:124px !important; max-height:124px !important;
  min-width:124px !important; min-height:124px !important;
  object-fit:contain !important;
}
@media (max-width:767px){
  html body .elementor-element-532d01a > .elementor-element img {
    width:84px !important; height:84px !important;
    max-width:84px !important; max-height:84px !important;
    min-width:84px !important; min-height:84px !important;
  }
}

/* ===== Single project hero: no backdrop, photo fully visible ===== */
html body .ar-project-hero {
  background:none !important; padding:0 !important;
  border:0 !important; box-shadow:none !important;
}
html body .ar-project-hero img {
  max-height:none !important; width:100% !important; height:auto !important;
  object-fit:contain !important; border-radius:16px;
}

/* ===== Project modal image: smaller + whole (no crop) ===== */
html body .arp7m-imgwrap {
  height:auto !important; min-height:0 !important; max-height:480px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  background:transparent !important; padding:10px !important;
}
html body .arp7m-imgwrap img {
  width:auto !important; max-width:100% !important;
  height:auto !important; max-height:460px !important;
  object-fit:contain !important; border-radius:16px !important;
  margin:0 auto !important; display:block !important;
}
html body .arp7m-gallery { display:flex !important; align-items:center !important; }
@media (max-width:767px){
  html body .arp7m-imgwrap { max-height:300px !important; }
  html body .arp7m-imgwrap img { max-height:280px !important; max-width:100% !important; }
}

/* ===== Single project hero: modest size, centered, whole ===== */
html body .ar-project-hero {
  max-width:760px !important; margin:0 auto 40px !important;
}
html body .ar-project-hero img {
  width:auto !important; max-width:100% !important;
  height:auto !important; max-height:480px !important;
  object-fit:contain !important; margin:0 auto !important;
}
@media (max-width:767px){
  html body .ar-project-hero img { max-height:300px !important; }
}

/* ===== Project cards: tag back + divider + arrow + bigger title ===== */
html body .ar-card .ar-card-tag {
  display:inline-block !important;
  color:rgba(255,255,255,.72) !important; -webkit-text-fill-color:rgba(255,255,255,.72) !important;
  font-size:13px !important; font-weight:600 !important;
  background:none !important; border:1px solid rgba(130,192,204,.35) !important;
  border-radius:999px !important; padding:3px 14px !important;
  margin:0 0 10px !important;
}
html body .ar-card .ar-entry-title,
html body .ar-card .ar-entry-title a {
  color:#ffffff !important; font-size:19px !important; font-weight:700 !important; opacity:1 !important;
}
html body .ar-card .ar-entry-title {
  border-bottom:1px solid rgba(255,255,255,.15) !important;
  padding-bottom:12px !important; margin-bottom:12px !important;
}
html body .ar-card .ar-read-more {
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  color:#82C0CC !important; font-weight:600 !important;
}
html body .ar-card .ar-read-more::before {
  content:"←"; color:#82C0CC; font-size:16px; line-height:1;
  transition:transform .25s ease;
}
html body .ar-card:hover .ar-read-more::before { transform:translateX(-4px); }

/* ===== Project side gallery (auto-rotating) ===== */
.ar-project-gallery { margin-top:26px; }
.ar-pg-slider { position:relative; width:100%; aspect-ratio:4/3; border-radius:14px; overflow:hidden; background:#0b1b2b; }
.ar-pg-slider img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .8s ease; }
.ar-pg-slider img.on { opacity:1; }
.ar-pg-dots { display:flex; justify-content:center; gap:8px; margin-top:12px; }
.ar-pg-dots span { width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,.25); transition:background .3s ease, transform .3s ease; }
.ar-pg-dots span.on { background:#82C0CC; transform:scale(1.25); }

/* ===== Hero thumbnails gallery (single project) ===== */
.ar-hero-thumbs { display:flex; justify-content:center; gap:10px; max-width:760px;
  margin:-24px auto 44px; overflow-x:auto; padding:4px 0; scrollbar-width:thin; }
.ar-hero-thumbs img { width:72px; height:72px; border-radius:10px; object-fit:cover; cursor:pointer;
  opacity:.6; border:2px solid transparent; transition:all .2s ease; flex:0 0 72px; }
.ar-hero-thumbs img:hover { opacity:.95; transform:scale(1.05); }
.ar-hero-thumbs img.active { opacity:1; border-color:#82C0CC; }
.ar-project-hero img { transition:opacity .3s ease; }
@media (max-width:767px){ .ar-hero-thumbs img { width:56px; height:56px; flex:0 0 56px; } }

/* ===== Hero + side thumbnails layout ===== */
.ar-hero-wrap { display:flex; gap:16px; align-items:stretch; justify-content:center;
  max-width:900px; margin:0 auto 44px; }
.ar-hero-wrap .ar-project-hero { flex:1 1 auto; margin:0 !important; max-width:760px !important; }
.ar-hero-wrap .ar-hero-thumbs { flex:0 0 88px; flex-direction:column; justify-content:flex-start;
  margin:0 !important; max-width:none; max-height:480px; overflow-y:auto; overflow-x:hidden; }
@media (max-width:767px){
  .ar-hero-wrap { flex-direction:column; align-items:center; }
  .ar-hero-wrap .ar-hero-thumbs { flex:none; flex-direction:row; max-height:none;
    overflow-x:auto; overflow-y:hidden; width:100%; justify-content:center; }
}

/* ===== thumbs hover zoom - forced ===== */
html body .ar-hero-thumbs img { transition:transform .2s ease, opacity .2s ease, border-color .2s ease !important; will-change:transform; }
html body .ar-hero-thumbs img:hover {
  transform:scale(1.22) !important; opacity:1 !important; z-index:5; position:relative;
  box-shadow:0 8px 22px rgba(0,0,0,.45);
}
html body .ar-hero-thumbs { overflow:visible !important; padding:6px !important; }

/* ===== Image lightbox (zoom) ===== */
.ar-lightbox { position:fixed; inset:0; z-index:999999; display:none; align-items:center; justify-content:center;
  background:rgba(4,12,20,.9); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
.ar-lightbox.open { display:flex; animation:arlbfade .25s ease; }
@keyframes arlbfade { from { opacity:0 } to { opacity:1 } }
.ar-lightbox img { max-width:92vw; max-height:88vh; object-fit:contain; border-radius:12px;
  box-shadow:0 30px 80px rgba(0,0,0,.6); cursor:zoom-out; }
.ar-lightbox-close { position:absolute; top:22px; left:22px; width:44px; height:44px; border-radius:50%;
  background:#6B7280; color:#fff; border:0; font-size:18px; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:background .25s ease, transform .25s ease; }
.ar-lightbox-close:hover { background:#4B5563; transform:scale(1.1); }

/* ===== Fullscreen gallery lightbox (Amazon style) ===== */
.ar-xlb { position:fixed; inset:0; z-index:999999; display:none;
  background:rgba(11,35,64,.95); -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px); }
.ar-xlb.open { display:block; animation:arxlbfade .25s ease; }
@keyframes arxlbfade { from { opacity:0 } to { opacity:1 } }
.ar-xlb-close { position:absolute; top:20px; left:20px; width:46px; height:46px; border-radius:50%;
  background:#C9A96E; color:#0B2340; border:0; font-size:19px; font-weight:700; cursor:pointer; z-index:3;
  display:flex; align-items:center; justify-content:center; transition:transform .25s ease, background .25s ease; }
.ar-xlb-close:hover { transform:scale(1.1); background:#dbbc85; }
.ar-xlb-title { position:absolute; top:30px; right:34px; color:#fff; font-size:1.25rem; font-weight:700; z-index:3; }
.ar-xlb-body { position:absolute; inset:80px 34px 30px; display:flex; gap:22px; align-items:center; }
.ar-xlb-thumbs { order:0; flex:0 0 190px; display:grid; grid-template-columns:1fr 1fr; gap:10px;
  align-content:start; max-height:100%; overflow-y:auto; padding:4px; }
.ar-xlb-thumbs img { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:10px; cursor:pointer;
  opacity:.55; border:2px solid transparent; transition:all .2s ease; }
.ar-xlb-thumbs img:hover { opacity:.95; transform:scale(1.05); }
.ar-xlb-thumbs img.active { opacity:1; border-color:#C9A96E; }
.ar-xlb-main { order:1; flex:1 1 auto; height:100%; display:flex; align-items:center; justify-content:center; min-width:0; }
.ar-xlb-main img { max-width:min(800px,100%); max-height:100%; object-fit:contain; border-radius:12px;
  box-shadow:0 30px 80px rgba(0,0,0,.55); transition:opacity .25s ease; }
@media (max-width:860px){
  .ar-xlb-body { inset:70px 16px 16px; flex-direction:column; }
  .ar-xlb-thumbs { order:1; flex:none; width:100%; grid-template-columns:repeat(5,1fr); max-height:90px; }
  .ar-xlb-main { order:0; width:100%; }
}

/* ===== xlb brand colours (teal instead of gold) ===== */
html body .ar-xlb-close { background:#82C0CC !important; color:#102233 !important; }
html body .ar-xlb-close:hover { background:#9fd3dc !important; }
html body .ar-xlb-thumbs img.active { border-color:#82C0CC !important; }

/* ===== home projects cards: clearer photos ===== */
html body .arv3-item { opacity:1 !important; }
html body .arv3-item:not(.on) { box-shadow:0 14px 30px rgba(0,0,0,.24); }
html body .arv3-shot { height:270px !important; margin:0 14px 18px !important; }
html body .arv3-shot img { width:100% !important; height:100% !important; object-fit:cover !important; image-rendering:auto; }
@media (max-width:980px){ html body .arv3-shot { height:210px !important; } }

/* ===== projects-v2 cards: whole photos, no crop ===== */
html body .arp6-shot { height:200px !important; background:#0f2c3a !important; }
html body .arp6-shot i {
  background-size:contain !important; background-repeat:no-repeat !important;
  background-position:center !important;
}

/* ===== v2 map: static, full, no pins, arabic labels ===== */
html body .arp6-pin { display:none !important; }
html body #arp6Svg { cursor:default !important; }
html body #arp6Svg.dragging { cursor:default !important; }
html body .arp6-lbl { font-size:16px !important; font-weight:700; }
html body .arp6-map { overflow:visible !important; }
html body #arp6Pan { transform:none !important; }

/* ===== home project cards: full photo + no touch-hover ===== */
/* photo shown whole - no side crop, white letterbox matches the card */
html body .arv3-shot { background:#ffffff !important; height:250px !important; }
html body .arv3-shot img {
  width:100% !important; height:100% !important;
  object-fit:contain !important; object-position:center center !important;
  display:block !important;
}
/* safety: no decorative overlays over the card photo */
html body .arv3-item::before, html body .arv3-item::after,
html body .arv3-shot::before, html body .arv3-shot::after { content:none !important; display:none !important; }
/* touch devices: no hover state sticking, no tap flash */
@media (hover: none) and (pointer: coarse) {
  html body .arv3-item:hover, html body .arv3-item:active,
  html body .arv3-item:hover img, html body .arv3-item:active img {
    transform:none !important; opacity:1 !important; filter:none !important;
  }
  html body .arv3-item, html body .arv3-item * {
    -webkit-tap-highlight-color: transparent !important;
  }
  html body .ar-hero-thumbs img:hover, html body .ar-hero-thumbs img:active,
  html body .arp6-item:hover, html body .arp6-item:active {
    transform:none !important;
  }
}

/* ===== v2 panel: breathing room so the first card is not clipped at the top ===== */
html body #arp6Panel { padding-top:12px !important; padding-bottom:12px !important; scroll-padding-top:12px; }
html body .arp6-item { margin-top:2px !important; }

/* ===== Journey list style - boxless numbered flow for services & feature lists ===== */
html body .ar-svc-grid {
  display:block !important; position:relative !important;
  counter-reset:svc; margin-top:26px !important;
  padding-right:6px;
}
/* the flowing line */
html body .ar-svc-grid::before {
  content:""; position:absolute; top:14px; bottom:14px; right:31px; width:2px;
  background:linear-gradient(180deg, rgba(130,192,204,.85), rgba(130,192,204,.25) 70%, transparent);
  border-radius:2px;
}
html body .ar-svc-card {
  background:none !important; border:0 !important; box-shadow:none !important;
  border-radius:0 !important; transform:none !important;
  position:relative !important; counter-increment:svc;
  padding:30px 108px 30px 0 !important; margin:0 !important;
  transition:none !important;
}
/* big ghost number */
html body .ar-svc-card::before {
  content:"٠" counter(svc, arabic-indic);
  position:absolute; right:64px; top:24px;
  font-size:2.6rem; font-weight:900; line-height:1;
  color:rgba(130,192,204,.30);
  transition:color .35s ease, transform .35s ease;
}
/* node on the line */
html body .ar-svc-card::after {
  content:""; position:absolute; right:26px; top:42px;
  width:12px; height:12px; border-radius:50%;
  background:#102233; border:2px solid #82C0CC;
  transition:background .35s ease, box-shadow .35s ease;
}
html body .ar-svc-card:hover::before { color:#82C0CC; transform:scale(1.08); }
html body .ar-svc-card:hover::after { background:#82C0CC; box-shadow:0 0 0 6px rgba(130,192,204,.18); }
html body .ar-svc-card h3 {
  color:#ffffff !important; font-size:1.45rem !important; margin:0 0 10px !important;
  transition:color .3s ease;
}
html body .ar-svc-card:hover h3 { color:#82C0CC !important; }
html body .ar-svc-card p { color:#b9cbd6 !important; line-height:2.05 !important; max-width:640px; }
/* soft divider between steps - a fading hairline, not a box */
html body .ar-svc-card + .ar-svc-card {
  border-top:0 !important;
}
@media (max-width:700px){
  html body .ar-svc-card { padding:24px 74px 24px 0 !important; }
  html body .ar-svc-grid::before { right:23px; }
  html body .ar-svc-card::before { right:44px; font-size:2rem; }
  html body .ar-svc-card::after { right:18px; }
}

/* ===== journey style wins on page 355 (old list overrides neutralised) ===== */
html body.page-id-355 .ar-svc-card {
  padding:30px 108px 30px 0 !important; margin:0 !important;
  border-bottom:0 !important; text-align:right !important;
}
html body.page-id-355 .ar-svc-card h3 {
  color:#ffffff !important; font-size:1.45rem !important; font-weight:800 !important;
  margin:0 0 10px !important; padding-right:0 !important; border-right:0 !important;
}
html body.page-id-355 .ar-svc-card:hover h3 { color:#82C0CC !important; }
html body.page-id-355 .ar-svc-card p { color:#b9cbd6 !important; line-height:2.05 !important; }
@media (max-width:700px){
  html body.page-id-355 .ar-svc-card { padding:24px 74px 24px 0 !important; }
}

/* ===== journey v2 - editorial outline numbers, more air, kinetic hover ===== */
html body .ar-svc-card, html body.page-id-355 .ar-svc-card {
  padding:44px 150px 44px 0 !important;
}
/* huge outlined numeral */
html body .ar-svc-card::before {
  content:"٠" counter(svc, arabic-indic) !important;
  right:44px !important; top:30px !important;
  font-size:4.4rem !important; font-weight:900 !important;
  color:transparent !important;
  -webkit-text-stroke:1.5px rgba(130,192,204,.45);
  letter-spacing:-2px;
  transition:all .4s cubic-bezier(.2,.8,.2,1) !important;
}
html body .ar-svc-card:hover::before {
  color:#82C0CC !important; -webkit-text-stroke:1.5px #82C0CC;
  transform:translateY(-4px) !important;
}
/* thinner, quieter line + glowing node */
html body .ar-svc-grid::before { width:1px !important; right:20px !important;
  background:linear-gradient(180deg, rgba(130,192,204,.5), rgba(130,192,204,.12) 75%, transparent) !important; }
html body .ar-svc-card::after { right:15px !important; top:56px !important; width:10px !important; height:10px !important; }
/* kinetic title with growing gradient dash */
html body .ar-svc-card h3, html body.page-id-355 .ar-svc-card h3 {
  font-size:1.6rem !important; letter-spacing:-.3px;
  display:inline-block; position:relative;
  transition:transform .35s ease, color .3s ease !important;
}
html body .ar-svc-card h3::after {
  content:""; display:block; height:3px; width:34px; margin-top:10px;
  border-radius:3px; background:linear-gradient(90deg, #82C0CC, transparent);
  transition:width .45s cubic-bezier(.2,.8,.2,1);
}
html body .ar-svc-card:hover h3 { transform:translateX(-8px); }
html body .ar-svc-card:hover h3::after { width:110px; }
html body .ar-svc-card p { transition:color .3s ease; }
html body .ar-svc-card:hover p { color:#dceaf2 !important; }
@media (max-width:700px){
  html body .ar-svc-card, html body.page-id-355 .ar-svc-card { padding:32px 92px 32px 0 !important; }
  html body .ar-svc-card::before { font-size:3rem !important; right:28px !important; }
  html body .ar-svc-grid::before { right:12px !important; }
  html body .ar-svc-card::after { right:7px !important; }
}

/* ===== journey v3 - two columns (4 + 4), same number hover ===== */
html body .ar-svc-grid, html body.page-id-355 .ar-svc-grid {
  display:grid !important; grid-template-columns:1fr 1fr !important;
  gap:18px 56px !important;
}
/* no connecting line/nodes in grid layout */
html body .ar-svc-grid::before { display:none !important; }
html body .ar-svc-card::after { display:none !important; }
html body .ar-svc-card, html body.page-id-355 .ar-svc-card {
  padding:34px 108px 26px 0 !important;
}
html body .ar-svc-card::before {
  right:10px !important; top:26px !important;
  font-size:3.6rem !important;
}
@media (max-width:900px){
  html body .ar-svc-grid, html body.page-id-355 .ar-svc-grid { grid-template-columns:1fr !important; }
}
@media (max-width:700px){
  html body .ar-svc-card, html body.page-id-355 .ar-svc-card { padding:26px 84px 20px 0 !important; }
  html body .ar-svc-card::before { font-size:2.8rem !important; right:6px !important; }
}

/* ===== journey v4 - no numbers, everything else stays ===== */
html body .ar-svc-card::before { content:none !important; display:none !important; }
html body .ar-svc-card, html body.page-id-355 .ar-svc-card {
  padding:34px 24px 26px 0 !important;
}
@media (max-width:700px){
  html body .ar-svc-card, html body.page-id-355 .ar-svc-card { padding:26px 16px 20px 0 !important; }
}

/* ===== v2 card photo fills its strip exactly - no bars, nothing eaten ===== */
html body .arp6-shot {
  height:auto !important; aspect-ratio:3/2 !important;
  background:#0f2c3a !important;
}
html body .arp6-shot i {
  background-size:contain !important; background-repeat:no-repeat !important;
  background-position:center !important; inset:0 !important;
}

/* ===== CX page: photo on top, text under it, cleaner title & prose ===== */
html body.page-id-11933 .ar-jobs-join-row {
  display:flex !important; flex-direction:column !important;
  gap:34px !important; max-width:880px !important; margin:0 auto !important;
}
html body.page-id-11933 .ar-jobs-join-media { order:-1 !important; width:100% !important; }
html body.page-id-11933 .ar-jobs-join-media img {
  width:100% !important; height:auto !important; max-height:none !important;
  aspect-ratio:auto !important; object-fit:contain !important;
  border-radius:18px !important; box-shadow:0 24px 55px rgba(0,0,0,.4);
}
html body.page-id-11933 h2.ar-jobs-join {
  text-align:center !important; color:#ffffff !important;
  font-size:clamp(1.7rem,3.2vw,2.3rem) !important; font-weight:800 !important;
  margin:0 !important; padding:0 !important;
  border:0 !important; text-decoration:none !important;
}
html body.page-id-11933 h2.ar-jobs-join::after {
  content:""; display:block; width:70px; height:3px; margin:16px auto 0;
  border-radius:3px; background:linear-gradient(90deg, transparent, #82C0CC, transparent);
}
html body.page-id-11933 .ar-jobs-join-row p {
  color:#c8d6e0 !important; font-size:1.06rem !important; line-height:2.15 !important;
  text-align:justify !important; text-align-last:right !important;
  margin:0 auto !important; max-width:820px !important;
}

/* ===== Sustainability page - editorial rework ===== */
/* hero: centered, breathing */
html body .ar-sust2 .s-hero { text-align:center !important; max-width:840px; margin:0 auto 54px !important; }
html body .ar-sust2 .s-hero h2 { font-size:clamp(2rem,4vw,2.9rem) !important; color:#fff !important; margin:0 0 18px !important; }
html body .ar-sust2 .s-hero h2::after { content:""; display:block; width:70px; height:3px; margin:18px auto 0; border-radius:3px; background:linear-gradient(90deg, transparent, #82C0CC, transparent); }
html body .ar-sust2 .s-hero .s-lead { color:#c8d6e0 !important; line-height:2.15 !important; font-size:1.05rem !important; text-align:justify; text-align-last:center; margin:0 !important; }

/* vision: photo on top, text under */
html body .ar-sust2 .s-vision { display:flex !important; flex-direction:column !important; gap:26px !important; max-width:860px; margin:0 auto 70px !important; text-align:center; }
html body .ar-sust2 .s-vision-media { order:-1; }
html body .ar-sust2 .s-vision-media img { width:100% !important; height:auto !important; object-fit:contain !important; border-radius:18px !important; box-shadow:0 24px 55px rgba(0,0,0,.4); background:none !important; }
html body .ar-sust2 .s-vision-head h3 { color:#fff !important; font-size:1.7rem !important; margin:0 !important; border:0 !important; padding:0 !important; }
html body .ar-sust2 .s-vision-head h3::after { content:""; display:block; width:56px; height:3px; margin:14px auto 0; border-radius:3px; background:linear-gradient(90deg, transparent, #82C0CC, transparent); }
html body .ar-sust2 .s-vision > p { color:#c8d6e0 !important; line-height:2.15 !important; max-width:800px; margin:0 auto !important; text-align:justify; text-align-last:right; }

/* pillars title */
html body .ar-sust2 .s-pillars-title { text-align:center !important; color:#fff !important; font-size:clamp(1.6rem,3vw,2.2rem) !important; margin:0 0 46px !important; border:0 !important; }
html body .ar-sust2 .s-pillars-title::after { content:""; display:block; width:70px; height:3px; margin:16px auto 0; border-radius:3px; background:linear-gradient(90deg, transparent, #82C0CC, transparent); }

/* groups: image + pillars aligned */
html body .ar-sust2 .s-group { display:grid !important; grid-template-columns:1fr 1.25fr !important; gap:56px !important; align-items:center !important; margin:0 0 66px !important; }
html body .ar-sust2 .s-group .s-img { order:0; }
html body .ar-sust2 .s-group .s-img img { width:100% !important; height:auto !important; border-radius:18px !important; box-shadow:0 22px 50px rgba(0,0,0,.38); }

/* pillar entries - boxless, kinetic like services */
html body .ar-sust2 .s-pillar { border:0 !important; padding:20px 0 !important; margin:0 !important; background:none !important; }
html body .ar-sust2 .s-pillar + .s-pillar { border-top:1px solid rgba(130,192,204,.12) !important; }
html body .ar-sust2 .s-num {
  display:block; font-size:2.6rem !important; font-weight:900 !important; line-height:1;
  color:transparent !important; -webkit-text-stroke:1.3px rgba(130,192,204,.45);
  margin-bottom:8px; transition:all .35s ease;
}
html body .ar-sust2 .s-pillar:hover .s-num { color:#82C0CC !important; -webkit-text-stroke:1.3px #82C0CC; }
html body .ar-sust2 .s-pillar h4 { color:#fff !important; font-size:1.3rem !important; margin:0 0 8px !important; display:inline-block; transition:transform .3s ease; }
html body .ar-sust2 .s-pillar h4::after { content:""; display:block; height:3px; width:30px; margin-top:8px; border-radius:3px; background:linear-gradient(90deg,#82C0CC,transparent); transition:width .4s cubic-bezier(.2,.8,.2,1); }
html body .ar-sust2 .s-pillar:hover h4 { transform:translateX(-6px); }
html body .ar-sust2 .s-pillar:hover h4::after { width:90px; }
html body .ar-sust2 .s-pillar p { color:#b9cbd6 !important; line-height:2.05 !important; margin:0 !important; }

@media (max-width:900px){
  html body .ar-sust2 .s-group { grid-template-columns:1fr !important; gap:28px !important; }
  html body .ar-sust2 .s-group .s-img { order:-1; }
}

/* sustain vision head centered */
html body .ar-sust2 .s-vision-head { text-align:center !important; width:100%; }
html body .ar-sust2 .s-vision-head h3 { display:inline-block !important; text-align:center !important; }

/* ===== Sustainability - banded sections for clearer division ===== */
/* vision: its own full-bleed tinted band */
html body .ar-sust2 .s-vision {
  width:100vw !important; margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important;
  max-width:none !important; background:#16304A !important;
  padding:64px max(24px, calc(50vw - 430px)) 70px !important;
  margin-bottom:0 !important;
}
/* pillars title breathes on the base background */
html body .ar-sust2 .s-pillars-title { margin:70px 0 52px !important; }
/* group 2 (s-alt): full-bleed tinted band to alternate with group 1 */
html body .ar-sust2 .s-group.s-alt {
  width:100vw !important; margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important;
  background:#16304A !important;
  padding:60px max(24px, calc(50vw - 555px)) 64px !important;
  margin-bottom:0 !important;
}
html body .ar-sust2 .s-group { margin-bottom:70px !important; }
html body .ar-sust2 .s-group.s-alt { margin-top:10px; }
/* hero: more separation under it */
html body .ar-sust2 .s-hero { margin-bottom:64px !important; }

/* ===== Sustainability - single colour, no bands ===== */
html body .ar-sust2 .s-vision {
  background:none !important; width:auto !important;
  margin-left:auto !important; margin-right:auto !important;
  max-width:860px !important; padding:0 0 70px !important;
}
html body .ar-sust2 .s-group.s-alt {
  background:none !important; width:auto !important;
  margin-left:0 !important; margin-right:0 !important;
  padding:0 !important; margin-bottom:70px !important;
}

/* vision photo true size - shadow hugs the photo, no ghost panel */
html body .ar-sust2 .s-vision .s-vision-media img {
  width:100% !important; height:auto !important; max-height:none !important;
  aspect-ratio:auto !important; object-fit:contain !important;
}

/* ===== Careers page - editorial rework ===== */
/* join: photo on top, text under, centered */
html body.page-id-367 .ar-jobs-join-row {
  display:flex !important; flex-direction:column !important;
  gap:30px !important; max-width:880px !important; margin:0 auto 74px !important;
}
html body.page-id-367 .ar-jobs-join-media { order:-1 !important; width:100% !important; }
html body.page-id-367 .ar-jobs-join-media img {
  width:100% !important; height:auto !important; max-height:none !important;
  aspect-ratio:auto !important; object-fit:contain !important;
  border-radius:18px !important; box-shadow:0 24px 55px rgba(0,0,0,.4);
}
html body.page-id-367 h2.ar-jobs-join {
  text-align:center !important; color:#fff !important;
  font-size:clamp(1.7rem,3.2vw,2.3rem) !important;
  margin:0 !important; border:0 !important; padding:0 !important;
}
html body.page-id-367 h2.ar-jobs-join::after {
  content:""; display:block; width:70px; height:3px; margin:16px auto 0;
  border-radius:3px; background:linear-gradient(90deg, transparent, #82C0CC, transparent);
}
html body.page-id-367 .ar-jobs-join-text p {
  color:#c8d6e0 !important; line-height:2.15 !important; font-size:1.05rem !important;
  max-width:820px; margin:0 auto !important;
  text-align:justify !important; text-align-last:right !important;
}

/* section titles unified */
html body.page-id-367 .ar-jobs h2:not(.ar-jobs-join) {
  text-align:center !important; color:#fff !important;
  font-size:clamp(1.5rem,2.8vw,2rem) !important; margin:70px 0 34px !important;
}
html body.page-id-367 .ar-jobs h2:not(.ar-jobs-join)::after {
  content:""; display:block; width:60px; height:3px; margin:14px auto 0;
  border-radius:3px; background:linear-gradient(90deg, transparent, #82C0CC, transparent);
}

/* why-us: 2x2 editorial grid, boxless, kinetic */
html body.page-id-367 .ar-why-list {
  display:grid !important; grid-template-columns:1fr 1fr !important;
  gap:26px 64px !important; max-width:760px; margin:0 auto 20px !important;
  padding:0 !important; list-style:none !important;
}
html body.page-id-367 .ar-why-list li {
  color:#fff !important; font-size:1.2rem !important; font-weight:700 !important;
  text-align:right !important; padding:6px 0 !important; margin:0 !important;
  position:relative; transition:transform .3s ease;
}
html body.page-id-367 .ar-why-list li::before { content:none !important; }
html body.page-id-367 .ar-why-list li::after {
  content:""; display:block; height:3px; width:28px; margin-top:10px;
  border-radius:3px; background:linear-gradient(90deg,#82C0CC,transparent);
  transition:width .45s cubic-bezier(.2,.8,.2,1);
}
html body.page-id-367 .ar-why-list li:hover { transform:translateX(-6px); }
html body.page-id-367 .ar-why-list li:hover::after { width:100px; }

/* talents: quiet centered block */
html body.page-id-367 .ar-jobs-talents { text-align:center !important; max-width:700px; margin:0 auto !important; }
html body.page-id-367 .ar-jobs-talents p { color:#c8d6e0 !important; line-height:2.1 !important; }

@media (max-width:700px){
  html body.page-id-367 .ar-why-list { grid-template-columns:1fr !important; gap:20px !important; }
}

/* why-list centered items */
html body.page-id-367 .ar-why-list li { text-align:center !important; }
html body.page-id-367 .ar-why-list li::after { margin:10px auto 0 !important; background:linear-gradient(90deg, transparent, #82C0CC, transparent) !important; }
html body.page-id-367 .ar-why-list li:hover { transform:translateY(-3px) !important; }

/* ===== ar-policies strip (footer) ===== */
.ar-policies {
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap:10px 28px; padding:18px 20px 6px; margin:8px auto 0;
  border-top:1px solid rgba(255,255,255,.12); max-width:1140px;
}
.ar-policies a {
  color:#c8d6e0 !important; font-size:.92rem; text-decoration:underline;
  text-underline-offset:5px; text-decoration-color:rgba(130,192,204,.5);
  transition:color .25s ease, text-decoration-color .25s ease;
}
.ar-policies a:hover { color:#82C0CC !important; text-decoration-color:#82C0CC; }

/* policies side-aligned like reference */
html body .ar-policies { justify-content:flex-start !important; padding-right:20px !important; }
html body #arPolicies + .elementor-widget,
html body #arPolicies + .elementor-widget * { text-align:right !important; }
html body #arPolicies + * { text-align:right !important; }

/* ===== AR FOOTER 3COL: three even columns, centered links column ===== */
html body .elementor-element-d7e3217 { display: none !important; }
html body .elementor-element-52d664ab { display: flex !important; flex-wrap: wrap !important; justify-content: space-between !important; gap: 40px !important; }
html body .elementor-element-52d664ab > .e-con { flex: 1 1 0 !important; width: auto !important; max-width: 360px !important; min-width: 220px !important; }
html body .elementor-element-7687b10 { align-items: center !important; }
html body .elementor-element-7687b10 .elementor-widget-container, html body .elementor-element-7687b10 h1, html body .elementor-element-7687b10 h2, html body .elementor-element-7687b10 h3, html body .elementor-element-7687b10 h4, html body .elementor-element-7687b10 p, html body .elementor-element-7687b10 ul, html body .elementor-element-7687b10 li, html body .elementor-element-7687b10 a { text-align: center !important; }
html body .elementor-element-7687b10 ul { padding: 0 !important; margin: 0 auto !important; list-style-position: inside !important; }
@media (max-width: 767px) { html body .elementor-element-52d664ab { flex-direction: column !important; align-items: center !important; } html body .elementor-element-52d664ab > .e-con { max-width: 100% !important; } }

/* ===== AR FOOTER HARD-HIDE: removed widgets can never show, even from cached HTML ===== */
html body .elementor-location-footer .elementor-social-icon-facebook,
html body .elementor-location-footer .elementor-social-icon-instagram,
html body .elementor-location-footer .elementor-social-icon-snapchat { display: none !important; }
html body .elementor-location-footer .elementor-grid-item:has(.elementor-social-icon-facebook),
html body .elementor-location-footer .elementor-grid-item:has(.elementor-social-icon-instagram),
html body .elementor-location-footer .elementor-grid-item:has(.elementor-social-icon-snapchat) { display: none !important; }
html body .elementor-element-6f04a25, html body .elementor-element-bada2b8 { display: none !important; }

/* ===== AR FOOTER BOTTOM CENTER: policies strip + copyright stacked & centered ===== */
html body .ar-policies { justify-content: center !important; text-align: center !important; }
html body .elementor-element-5abbfc2c, html body .elementor-element-5abbfc2c * { text-align: center !important; }
html body .elementor-element-5abbfc2c { margin-top: 6px !important; }

/* ===== AR FOOTER BOTTOM CENTER 2: override old side-align id rules ===== */
html body #arPolicies + .elementor-widget, html body #arPolicies + .elementor-widget *, html body #arPolicies + * { text-align: center !important; }
html body #arPolicies { justify-content: center !important; }

/* ===== AR CONTACT V2: majd-style contact layout ===== */
html body.page-id-356 .ar-page-title { display: none !important; }
html body .ar-contact2 { padding: 26px 0 10px; }
html body .ar-c2-grid { display: grid; grid-template-columns: 1fr 1.15fr; gap: 60px; align-items: start; }
html body .ar-c2-eyebrow { color: #82C0CC; font-size: 14px; font-weight: 700; margin: 0 0 8px; }
html body .ar-c2-big { font-size: 42px; line-height: 1.25; font-weight: 800; color: #fff; margin: 0 0 16px; }
html body .ar-c2-lead { color: rgba(255,255,255,.72); line-height: 1.95; margin: 0 0 30px; max-width: 520px; }
html body .ar-c2-company { color: #fff; font-size: 22px; font-weight: 700; margin: 0 0 8px; }
html body .ar-c2-addr { color: rgba(255,255,255,.65); margin: 0 0 22px; }
html body .ar-c2-lines { display: flex; flex-wrap: wrap; gap: 14px 30px; align-items: center; margin: 0 0 14px; }
html body .ar-c2-line { display: inline-flex; align-items: center; gap: 10px; color: #82C0CC !important; font-weight: 600; text-decoration: none !important; }
html body .ar-c2-line:hover { filter: brightness(1.15); }
html body .ar-c2-ic { width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(130,192,204,.45); display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
html body .ar-c2-ic svg { width: 18px; height: 18px; }
html body .ar-c2-cs { color: rgba(255,255,255,.65); }
html body .ar-c2-cs a { color: #82C0CC !important; text-decoration: none !important; }
html body .ar-c2-ftitle { color: #fff; font-size: 24px; font-weight: 700; margin: 4px 0 26px; }
html body .ar-contact2 .ar-cform { background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; box-shadow: none !important; }
html body .ar-contact2 .ar-cform-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 34px; }
html body .ar-contact2 .ar-cform label { display: flex; flex-direction: column; gap: 2px; font-size: 13px; font-weight: 600; color: rgba(255,255,255,.85); margin: 0 0 24px; }
html body .ar-contact2 .ar-req { color: #82C0CC; display: inline; }
html body .ar-contact2 .ar-cform input, html body .ar-contact2 .ar-cform textarea { background: transparent !important; border: 0 !important; border-bottom: 1px solid rgba(255,255,255,.3) !important; border-radius: 0 !important; color: #fff !important; padding: 8px 0 10px !important; font-size: 15px; box-shadow: none !important; outline: none !important; transition: border-color .25s; }
html body .ar-contact2 .ar-cform input:focus, html body .ar-contact2 .ar-cform textarea:focus { border-bottom-color: #82C0CC !important; }
html body .ar-contact2 .ar-cform input::placeholder, html body .ar-contact2 .ar-cform textarea::placeholder { color: rgba(255,255,255,.35); font-weight: 400; }
html body .ar-contact2 .ar-cform textarea { min-height: 90px; resize: vertical; }
@media (max-width: 900px) { html body .ar-c2-grid { grid-template-columns: 1fr; gap: 40px; } html body .ar-c2-big { font-size: 32px; } html body .ar-contact2 .ar-cform-row { grid-template-columns: 1fr; gap: 0; } }

/* ===== AR CONTACT V2 FIX: keep the * beside the label text ===== */
html body .ar-contact2 .ar-cform label { display: block !important; }
html body .ar-contact2 .ar-cform input, html body .ar-contact2 .ar-cform textarea { display: block !important; width: 100% !important; margin-top: 4px !important; }

/* ===== AR CONTACT V2 SIZES: unified headings + big standalone تواصل معنا ===== */
html body .ar-contact2 > .ar-c2-eyebrow { font-size: 32px; font-weight: 800; color: #fff; margin: 0 0 30px; }
html body .ar-c2-big { font-size: 26px !important; }
html body .ar-c2-company { font-size: 26px !important; }
html body .ar-c2-ftitle { font-size: 26px !important; }
@media (max-width: 900px) { html body .ar-contact2 > .ar-c2-eyebrow { font-size: 26px; } html body .ar-c2-big, html body .ar-c2-company, html body .ar-c2-ftitle { font-size: 22px !important; } }

/* ===== AR V3 TWO-CARD SCROLL: exactly 2 full cards per view + no bottom void ===== */
html body .arv3-stack { height: 772px !important; max-height: 772px !important; scroll-snap-type: y mandatory; scroll-padding-top: 0; }
html body .arv3-item { scroll-snap-align: start; scroll-snap-stop: always; flex: 0 0 auto; }
html body .arv3 { padding-bottom: 0 !important; }
html body .elementor-element-v2fe6 { padding-bottom: 14px !important; }
html body .elementor-element-v2fe6 > .e-con-inner { padding-bottom: 0 !important; }
@media (max-width: 900px) { html body .arv3-stack { height: auto !important; max-height: 772px !important; } }

/* ===== AR V3 INTRO FIRST: title/lead/CTA on top, map below — no empty top area ===== */
html body .arv3-mapcol { display: flex !important; flex-direction: column !important; }
html body .arv3-intro { order: -1 !important; margin: 0 0 24px !important; }
html body .arv3-map { flex: 1 1 auto !important; display: flex !important; align-items: center !important; justify-content: center !important; }
html body .arv3-map svg { max-height: 100%; }

/* ===== AR PARTNERS UNIFORM V2: measured per-logo sizes + white default + white-pill hover ===== */
html body .elementor-element-532d01a img { width: auto !important; height: 110px !important; max-width: 170px !important; max-height: 170px !important; object-fit: contain !important; filter: brightness(0) invert(1) !important; opacity: .92 !important; transition: filter .25s, opacity .25s, background .25s, box-shadow .25s !important; border-radius: 4px; }
html body .elementor-element-532d01a img[src$="%D8%A7%D9%84%D8%B4%D8%A4%D9%88%D9%86-%D8%A7%D9%84%D8%A7%D8%B3%D9%84%D8%A7%D9%85%D9%8A%D8%A93.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="%D8%A7%D9%84%D8%B9%D8%AF%D9%84.png"] { height: 168px !important; }
html body .elementor-element-532d01a img[src$="%D8%A7%D9%84%D9%83%D9%87%D8%B1%D8%A8%D8%A7%D8%A1.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="%D8%A3%D9%85%D8%A7%D9%86%D8%A9-%D8%A7%D9%84%D9%85%D8%AF%D9%8A%D9%86%D8%A9.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="%D8%A3%D9%85%D8%A7%D9%86%D8%A9-%D8%AC%D8%AF%D8%A91.png"] { height: 120px !important; }
html body .elementor-element-532d01a img[src$="%D8%A3%D9%85%D8%A7%D9%86%D8%A9-%D9%85%D9%83%D8%A9.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="%D8%A3%D9%85%D8%A7%D9%86%D8%A9-%D9%85%D9%86%D8%B7%D9%82%D8%A9-%D8%A7%D9%84%D9%82%D8%B5%D9%8A%D9%85-.png"] { height: 67px !important; }
html body .elementor-element-532d01a img[src$="%D8%A3%D9%88%D9%82%D8%A7%D9%81.png"] { height: 137px !important; }
html body .elementor-element-532d01a img[src$="%D8%B4%D8%B9%D8%A7%D8%B1-%D8%A7%D9%84%D9%87%D9%8A%D8%A6%D8%A9-%D8%A7%D9%84%D8%B9%D8%A7%D9%85%D8%A9-%D9%84%D9%84%D9%88%D9%84%D8%A7%D9%8A%D8%A9-%D8%B9%D9%84%D9%89-%D8%A3%D9%85%D9%88%D8%A7%D9%84-%D8%A7%D9%84%D9%82%D8%A7%D8%B5%D8%B1%D9%8A%D9%86-%D9%88%D9%85%D9%86-%D9%81%D9%8A-%D8%AD%D9%83%D9%85%D9%87%D9%85.png"] { height: 170px !important; }
html body .elementor-element-532d01a img[src$="%D9%87%D9%8A%D8%A6%D8%A9-%D8%AA%D8%B7%D9%88%D9%8A%D8%B1-%D8%A7%D9%84%D9%85%D8%AF%D9%8A%D9%86%D8%A9-%D8%A7%D9%84%D9%85%D9%86%D9%88%D8%B1%D8%A9.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="%D9%88%D8%B2%D8%A7%D8%B1%D8%A9-%D8%A7%D9%84%D8%A8%D9%84%D8%AF%D9%8A%D8%A7%D8%AA-%D9%88%D8%A7%D9%84%D8%A7%D8%B3%D9%83%D8%A7%D9%86.png"] { height: 170px !important; }
html body .elementor-element-532d01a > .e-con { display: flex !important; align-items: center !important; justify-content: center !important; width: 172px !important; height: 180px !important; overflow: visible !important; }
html body .elementor-element-532d01a img:hover, html body .elementor-element-532d01a > .e-con:hover img { filter: none !important; opacity: 1 !important; background: #fff !important; box-shadow: 0 0 0 9px #fff !important; }

/* ===== AR PARTNERS UNIFORM V2b: raw-filename selectors (attribute values are unencoded) ===== */
html body .elementor-element-532d01a img[src$="الشؤون-الاسلامية3.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="العدل.png"] { height: 168px !important; }
html body .elementor-element-532d01a img[src$="الكهرباء.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="أمانة-المدينة.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="أمانة-جدة1.png"] { height: 120px !important; }
html body .elementor-element-532d01a img[src$="أمانة-مكة.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="أمانة-منطقة-القصيم-.png"] { height: 67px !important; }
html body .elementor-element-532d01a img[src$="أوقاف.png"] { height: 137px !important; }
html body .elementor-element-532d01a img[src$="شعار-الهيئة-العامة-للولاية-على-أموال-القاصرين-ومن-في-حكمهم.png"] { height: 170px !important; }
html body .elementor-element-532d01a img[src$="هيئة-تطوير-المدينة-المنورة.png"] { height: 169px !important; }
html body .elementor-element-532d01a img[src$="وزارة-البلديات-والاسكان.png"] { height: 170px !important; }

/* ===== AR PARTNERS UNIFORM V3: specificity-boosted per-logo sizes ===== */
html body .elementor-element-532d01a img[src$="الشؤون-الاسلامية3.png"][src$="الشؤون-الاسلامية3.png"][src$="الشؤون-الاسلامية3.png"] { height: 169px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="العدل.png"][src$="العدل.png"][src$="العدل.png"] { height: 168px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="الكهرباء.png"][src$="الكهرباء.png"][src$="الكهرباء.png"] { height: 169px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="أمانة-المدينة.png"][src$="أمانة-المدينة.png"][src$="أمانة-المدينة.png"] { height: 169px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="أمانة-جدة1.png"][src$="أمانة-جدة1.png"][src$="أمانة-جدة1.png"] { height: 120px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="أمانة-مكة.png"][src$="أمانة-مكة.png"][src$="أمانة-مكة.png"] { height: 169px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="أمانة-منطقة-القصيم-.png"][src$="أمانة-منطقة-القصيم-.png"][src$="أمانة-منطقة-القصيم-.png"] { height: 67px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="أوقاف.png"][src$="أوقاف.png"][src$="أوقاف.png"] { height: 137px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="شعار-الهيئة-العامة-للولاية-على-أموال-القاصرين-ومن-في-حكمهم.png"][src$="شعار-الهيئة-العامة-للولاية-على-أموال-القاصرين-ومن-في-حكمهم.png"][src$="شعار-الهيئة-العامة-للولاية-على-أموال-القاصرين-ومن-في-حكمهم.png"] { height: 170px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="هيئة-تطوير-المدينة-المنورة.png"][src$="هيئة-تطوير-المدينة-المنورة.png"][src$="هيئة-تطوير-المدينة-المنورة.png"] { height: 169px !important; width: auto !important; max-width: 170px !important; }
html body .elementor-element-532d01a img[src$="وزارة-البلديات-والاسكان.png"][src$="وزارة-البلديات-والاسكان.png"][src$="وزارة-البلديات-والاسكان.png"] { height: 170px !important; width: auto !important; max-width: 170px !important; }

/* ===== AR PARTNERS MAXH FIX: kill the old 124px max-height clamp ===== */
html body .elementor-element-532d01a img[src$=".png"][src$=".png"][src$=".png"] { max-height: 175px !important; }

/* ===== AR PARTNERS MINH FIX: no minimum clamp so small emblems can size correctly ===== */
html body .elementor-element-532d01a img[src$=".png"][src$=".png"][src$=".png"] { min-height: 0 !important; min-width: 0 !important; }

/* ===== AR PARTNERS SPACING V2: uniform breathing room between logos ===== */
html body .elementor-element-532d01a { gap: 22px !important; }
html body .elementor-element-532d01a > .e-con, html body .elementor-element-532d01a > .elementor-element { width: 196px !important; }

/* ===== AR CLIENTS UNIFORM V1: measured per-logo sizes to fill the white frame evenly ===== */
html body .elementor-element-2ba3843 img[src$="saas.png"][src$="saas.png"][src$="saas.png"] { height: 131px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="الامد1.png"][src$="الامد1.png"][src$="الامد1.png"] { height: 70px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="أوقاف-الفهاد.png"][src$="أوقاف-الفهاد.png"][src$="أوقاف-الفهاد.png"] { height: 119px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="بن-باز1.png"][src$="بن-باز1.png"][src$="بن-باز1.png"] { height: 86px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"] { height: 58px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="تعظيم1.png"][src$="تعظيم1.png"][src$="تعظيم1.png"] { height: 70px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="جمعية-منارات.png"][src$="جمعية-منارات.png"][src$="جمعية-منارات.png"] { height: 60px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="سمايا.png"][src$="سمايا.png"][src$="سمايا.png"] { height: 131px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="شركة-الفهاد.png"][src$="شركة-الفهاد.png"][src$="شركة-الفهاد.png"] { height: 131px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="شركة-المنارة-المتقدمة.png"][src$="شركة-المنارة-المتقدمة.png"][src$="شركة-المنارة-المتقدمة.png"] { height: 131px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"] { height: 60px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مؤسسة-الحبيب.png"][src$="مؤسسة-الحبيب.png"][src$="مؤسسة-الحبيب.png"] { height: 96px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مؤسسة-سليمان-الراجحي-الخيرية.png"][src$="مؤسسة-سليمان-الراجحي-الخيرية.png"][src$="مؤسسة-سليمان-الراجحي-الخيرية.png"] { height: 63px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="وقف-سليمان-الراجحي.png"][src$="وقف-سليمان-الراجحي.png"][src$="وقف-سليمان-الراجحي.png"] { height: 78px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="الجميح.png"][src$="الجميح.png"][src$="الجميح.png"] { height: 101px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="السرتي.png"][src$="السرتي.png"][src$="السرتي.png"] { height: 131px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="المجدوعي.png"][src$="المجدوعي.png"][src$="المجدوعي.png"] { height: 131px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="حراء1.png"][src$="حراء1.png"][src$="حراء1.png"] { height: 64px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="غيث-الحبيب.png"][src$="غيث-الحبيب.png"][src$="غيث-الحبيب.png"] { height: 64px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مجد.png"][src$="مجد.png"][src$="مجد.png"] { height: 113px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }

/* ===== AR CLIENTS MOUSA FIX: bump مجمع الموسى ===== */
html body .elementor-element-2ba3843 img[src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"] { height: 95px !important; }

/* ===== AR CLIENTS TURKI-AMAD FIX ===== */
html body .elementor-element-2ba3843 img[src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"] { height: 95px !important; }
html body .elementor-element-2ba3843 img[src$="الامد1.png"][src$="الامد1.png"][src$="الامد1.png"][src$="الامد1.png"] { height: 95px !important; }

/* ===== AR CLIENTS SULAIMAN FIX ===== */
html body .elementor-element-2ba3843 img[src*="مؤسسة-سليمان"][src*="مؤسسة-سليمان"][src*="مؤسسة-سليمان"][src*="مؤسسة-سليمان"] { height: 95px !important; }

/* ===== AR CLIENTS UNIFORM FINAL: full recalibration, artwork ~72px for all ===== */
html body .elementor-element-2ba3843 img[src$="saas.png"][src$="saas.png"][src$="saas.png"][src$="saas.png"][src$="saas.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="الامد1.png"][src$="الامد1.png"][src$="الامد1.png"][src$="الامد1.png"][src$="الامد1.png"] { height: 86px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="أوقاف-الفهاد.png"][src$="أوقاف-الفهاد.png"][src$="أوقاف-الفهاد.png"][src$="أوقاف-الفهاد.png"][src$="أوقاف-الفهاد.png"] { height: 130px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="بن-باز1.png"][src$="بن-باز1.png"][src$="بن-باز1.png"][src$="بن-باز1.png"][src$="بن-باز1.png"] { height: 107px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"][src$="تركي-بن-عبدالله.png"] { height: 72px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="تعظيم1.png"][src$="تعظيم1.png"][src$="تعظيم1.png"][src$="تعظيم1.png"][src$="تعظيم1.png"] { height: 87px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="جمعية-منارات.png"][src$="جمعية-منارات.png"][src$="جمعية-منارات.png"][src$="جمعية-منارات.png"][src$="جمعية-منارات.png"] { height: 74px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="سمايا.png"][src$="سمايا.png"][src$="سمايا.png"][src$="سمايا.png"][src$="سمايا.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="شركة-الفهاد.png"][src$="شركة-الفهاد.png"][src$="شركة-الفهاد.png"][src$="شركة-الفهاد.png"][src$="شركة-الفهاد.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="شركة-المنارة-المتقدمة.png"][src$="شركة-المنارة-المتقدمة.png"][src$="شركة-المنارة-المتقدمة.png"][src$="شركة-المنارة-المتقدمة.png"][src$="شركة-المنارة-المتقدمة.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"][src$="مجمع-الموسسى.png"] { height: 74px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مؤسسة-الحبيب.png"][src$="مؤسسة-الحبيب.png"][src$="مؤسسة-الحبيب.png"][src$="مؤسسة-الحبيب.png"][src$="مؤسسة-الحبيب.png"] { height: 119px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مؤسسة-سليمان-الراجحي-الخيرية.png"][src$="مؤسسة-سليمان-الراجحي-الخيرية.png"][src$="مؤسسة-سليمان-الراجحي-الخيرية.png"][src$="مؤسسة-سليمان-الراجحي-الخيرية.png"][src$="مؤسسة-سليمان-الراجحي-الخيرية.png"] { height: 78px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="وقف-سليمان-الراجحي.png"][src$="وقف-سليمان-الراجحي.png"][src$="وقف-سليمان-الراجحي.png"][src$="وقف-سليمان-الراجحي.png"][src$="وقف-سليمان-الراجحي.png"] { height: 97px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="الجميح.png"][src$="الجميح.png"][src$="الجميح.png"][src$="الجميح.png"][src$="الجميح.png"] { height: 126px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="السرتي.png"][src$="السرتي.png"][src$="السرتي.png"][src$="السرتي.png"][src$="السرتي.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="المجدوعي.png"][src$="المجدوعي.png"][src$="المجدوعي.png"][src$="المجدوعي.png"][src$="المجدوعي.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="حراء1.png"][src$="حراء1.png"][src$="حراء1.png"][src$="حراء1.png"][src$="حراء1.png"] { height: 80px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="غيث-الحبيب.png"][src$="غيث-الحبيب.png"][src$="غيث-الحبيب.png"][src$="غيث-الحبيب.png"][src$="غيث-الحبيب.png"] { height: 79px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }
html body .elementor-element-2ba3843 img[src$="مجد.png"][src$="مجد.png"][src$="مجد.png"][src$="مجد.png"][src$="مجد.png"] { height: 129px !important; width: auto !important; max-width: 132px !important; max-height: 132px !important; min-width: 0 !important; min-height: 0 !important; }

/* ===== AR V3 SOFT SNAP: fluid wheel scrolling, gentle alignment ===== */
html body .arv3-stack { scroll-snap-type: y proximity !important; }
html body .arv3-item { scroll-snap-stop: normal !important; }

/* ===== AR V3 SCROLL LIKE V2: free scroll + thin teal scrollbar, no snap ===== */
html body .arv3-stack { scroll-snap-type: none !important; scrollbar-width: thin; scrollbar-color: rgba(79,209,209,.5) transparent; padding-inline-end: 8px; }
html body .arv3-stack::-webkit-scrollbar { width: 5px; }
html body .arv3-stack::-webkit-scrollbar-thumb { background: rgba(79,209,209,.45); border-radius: 3px; }
html body .arv3-stack::-webkit-scrollbar-track { background: transparent; }

/* ===== AR V3 OVERSCROLL: no scroll chaining from the stack to the page ===== */
html body .arv3-stack { overscroll-behavior: contain !important; }

/* ===== AR MARQUEE SEAMLESS: exact loop distance (50% + half-gap), slower clients, edge fade ===== */
@keyframes ar-scroll-partners { 0% { transform: translateX(0); } 100% { transform: translateX(calc(50% + 11px)); } }
@keyframes ar-scroll-clients { 0% { transform: translateX(0); } 100% { transform: translateX(calc(50% + 6px)); } }
html body .elementor-element-532d01a { animation-name: ar-scroll-partners !important; }
html body .elementor-element-2ba3843 { animation-name: ar-scroll-clients !important; animation-duration: 60s !important; }
html body *:has(> .elementor-element-532d01a), html body *:has(> .elementor-element-2ba3843) { -webkit-mask-image: linear-gradient(to left, transparent 0, #000 70px, #000 calc(100% - 70px), transparent 100%); mask-image: linear-gradient(to left, transparent 0, #000 70px, #000 calc(100% - 70px), transparent 100%); }

/* ===== AR CLIENTS NO EDGE FADE: keep fade on partners only ===== */
html body *:has(> .elementor-element-2ba3843) { -webkit-mask-image: none !important; mask-image: none !important; }

/* ===== AR PARTNERS HOVER UNIFORM: white hover pill = fixed slot size for every logo ===== */
html body .elementor-element-532d01a > .e-con:hover, html body .elementor-element-532d01a > .elementor-element:hover { background: #fff !important; border-radius: 14px !important; }
html body .elementor-element-532d01a > .e-con:hover img, html body .elementor-element-532d01a > .elementor-element:hover img, html body .elementor-element-532d01a img:hover { filter: none !important; opacity: 1 !important; background: none !important; box-shadow: none !important; }

/* ===== AR MARQUEE SLOWER: gentler drift for both logo sliders ===== */
html body .elementor-element-532d01a { animation-duration: 55s !important; }
html body .elementor-element-2ba3843 { animation-duration: 85s !important; }

/* ===== AR PARTNERS STEP CAROUSEL: 4 visible, advance one logo at a time ===== */
@keyframes ar-scroll-partners-step {
0.000% { transform: translateX(0px); }
6.545% { transform: translateX(0px); }
9.091% { transform: translateX(194px); }
15.636% { transform: translateX(194px); }
18.182% { transform: translateX(388px); }
24.727% { transform: translateX(388px); }
27.273% { transform: translateX(582px); }
33.818% { transform: translateX(582px); }
36.364% { transform: translateX(776px); }
42.909% { transform: translateX(776px); }
45.455% { transform: translateX(970px); }
52.000% { transform: translateX(970px); }
54.545% { transform: translateX(1164px); }
61.091% { transform: translateX(1164px); }
63.636% { transform: translateX(1358px); }
70.182% { transform: translateX(1358px); }
72.727% { transform: translateX(1552px); }
79.273% { transform: translateX(1552px); }
81.818% { transform: translateX(1746px); }
88.364% { transform: translateX(1746px); }
90.909% { transform: translateX(1940px); }
97.455% { transform: translateX(1940px); }
100% { transform: translateX(2134px); }
}
html body *:has(> .elementor-element-532d01a) { max-width: min(94vw, 754px) !important; margin-inline: auto !important; overflow: hidden !important; }
html body .elementor-element-532d01a { animation-name: ar-scroll-partners-step !important; animation-duration: 33s !important; animation-timing-function: ease-in-out !important; }

/* ===== AR PARTNERS CONTINUOUS 4UP: 4 visible, smooth non-stop drift ===== */
html body .elementor-element-532d01a { animation-name: ar-scroll-partners !important; animation-duration: 45s !important; animation-timing-function: linear !important; }

/* ===== AR CLIENTS 5UP: 5 visible, continuous drift ===== */
html body *:has(> .elementor-element-2ba3843) { max-width: min(94vw, 938px) !important; margin-inline: auto !important; overflow: hidden !important; }

/* ===== AR PARTNERS NO WHITE BG: no white pill behind partner logos (hover keeps true colors only) ===== */
html body .elementor-element-532d01a > .e-con:hover, html body .elementor-element-532d01a > .elementor-element:hover { background: none !important; box-shadow: none !important; }
html body .elementor-element-532d01a img:hover, html body .elementor-element-532d01a > .e-con:hover img, html body .elementor-element-532d01a > .elementor-element:hover img { background: none !important; box-shadow: none !important; }

/* ===== AR PARTNERS NO EDGE FADE: clean hard edges, no side gradient ===== */
html body *:has(> .elementor-element-532d01a) { -webkit-mask-image: none !important; mask-image: none !important; }

/* ===== AR SLIDERS FULLWIDTH: edge-to-edge slow marquee for partners & clients ===== */
html body *:has(> .elementor-element-532d01a), html body *:has(> .elementor-element-2ba3843) { width: 100vw !important; max-width: 100vw !important; margin-inline: calc(50% - 50vw) !important; overflow: hidden !important; }
html body .elementor-element-532d01a { animation-duration: 60s !important; }
html body .elementor-element-2ba3843 { animation-duration: 100s !important; }

/* ===== AR PARTNERS TILES: wider gaps + subtle glass tile behind each logo ===== */
@keyframes ar-scroll-partners2 { 0% { transform: translateX(0); } 100% { transform: translateX(calc(50% + 20px)); } }
html body .elementor-element-532d01a { gap: 40px !important; animation-name: ar-scroll-partners2 !important; }
html body .elementor-element-532d01a > .e-con, html body .elementor-element-532d01a > .elementor-element { background: rgba(255,255,255,0.07) !important; border: 1px solid rgba(255,255,255,0.14) !important; border-radius: 14px !important; transition: background .25s, border-color .25s; }
html body .elementor-element-532d01a > .e-con:hover, html body .elementor-element-532d01a > .elementor-element:hover { background: rgba(255,255,255,0.12) !important; border-color: rgba(130,192,204,0.45) !important; box-shadow: none !important; }

/* ===== AR PARTNERS TILES V2: landscape slots, tile visible on hover only ===== */
html body .elementor-element-532d01a > .e-con, html body .elementor-element-532d01a > .elementor-element { background: none !important; border-color: transparent !important; height: 130px !important; }
html body .elementor-element-532d01a > .e-con:hover, html body .elementor-element-532d01a > .elementor-element:hover { background: rgba(255,255,255,0.09) !important; border-color: rgba(130,192,204,0.4) !important; }
html body .elementor-element-532d01a img { max-height: 118px !important; }

/* ===== AR PARTNERS TILES V3: soft light-white hover tile (not translucent) ===== */
html body .elementor-element-532d01a > .e-con:hover, html body .elementor-element-532d01a > .elementor-element:hover { background: rgba(255,255,255,0.92) !important; border-color: rgba(130,192,204,0.5) !important; }

/* ===== AR PARTNERS SLOT WIDER ===== */
html body .elementor-element-532d01a > .e-con, html body .elementor-element-532d01a > .elementor-element { width: 204px !important; }

/* ===== AR PARTNERS SLOT WIDER 2: release min/max clamps ===== */
html body .elementor-element-532d01a > .e-con, html body .elementor-element-532d01a > .elementor-element { width: 204px !important; min-width: 204px !important; max-width: 204px !important; flex-basis: 204px !important; }

/* ===== AR FOUNDER PHOTO = CEO SIZE: match the CEO-message portrait ===== */
html body .ar-founder-photo { width: 386px !important; max-width: 100% !important; margin-inline: auto; }
html body .ar-founder-photo img { width: 386px !important; height: 515px !important; max-height: none !important; object-fit: cover !important; object-position: top center !important; display: block; }
@media (max-width: 700px) { html body .ar-founder-photo img { width: 100% !important; height: auto !important; aspect-ratio: 386/515; } }

/* ===== AR FOUNDER PHOTO WIDTH 2: full 386px like the CEO page ===== */
html body .ar-founder-photo, html body .ar-founder-photo img { max-width: none !important; }
html body .ar-founder-photo img { width: 386px !important; }
@media (max-width: 700px) { html body .ar-founder-photo, html body .ar-founder-photo img { max-width: 100% !important; } }

/* ===== AR FOUNDER PHOTO SHIFT: keep the wider photo off the text column ===== */
@media (min-width: 701px) { html body .ar-founder-photo { transform: translateX(50px); } html body .ar-founder-photo figcaption, html body .ar-founder-photo + * { transform: none; } }

/* ===== AR SUBMENU ARROWS: CTA-style ← arrow on every header dropdown item ===== */
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item { display: flex !important; align-items: center; justify-content: space-between; gap: 10px; }
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item::after { content: "←"; display: inline-block; color: #82C0CC; opacity: .55; transition: transform .25s ease, opacity .25s ease; }
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item:hover::after { transform: translateX(-5px); opacity: 1; }

/* ===== AR CONTACT LINES COL: stacked contact items with icons ===== */
html body .ar-c2-lines-col { flex-direction: column !important; align-items: flex-start !important; gap: 16px !important; }
html body .ar-c2-lines-col .ar-c2-line { align-items: center; }
html body .ar-c2-lines-col .ar-c2-line b { color: #82C0CC; font-weight: 600; }
html body .ar-c2-lines-col .ar-c2-line > span:not(.ar-c2-ic) { line-height: 1.8; }
html body .ar-c2-line-addr { color: rgba(255,255,255,.78) !important; font-weight: 500 !important; }

/* ===== AR CONTACT ICONS ONE COLOR: unified teal for all contact icons ===== */
html body .ar-c2-lines .ar-c2-ic { color: #82C0CC !important; border-color: rgba(130,192,204,.45) !important; }

/* ===== AR CONTACT ADDR TEAL: address same color as phone ===== */
html body .ar-c2-line-addr { color: #82C0CC !important; }

/* ===== AR CONTACT LINES 2X2 ===== */
html body .ar-c2-lines-col { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 18px 26px !important; align-items: start !important; }
@media (max-width: 700px) { html body .ar-c2-lines-col { grid-template-columns: 1fr !important; } }

/* ===== AR CONTACT LINES SWAP: mirror the 2x2 columns ===== */
@media (min-width: 701px) {
html body .ar-c2-lines-col > :nth-child(odd) { grid-column: 2; }
html body .ar-c2-lines-col > :nth-child(even) { grid-column: 1; }
}

/* ===== AR CONTACT LINES SWAP 2: explicit 2x2 placement ===== */
@media (min-width: 701px) {
html body .ar-c2-lines-col > :nth-child(1) { grid-area: 1 / 2; }
html body .ar-c2-lines-col > :nth-child(2) { grid-area: 1 / 1; }
html body .ar-c2-lines-col > :nth-child(3) { grid-area: 2 / 2; }
html body .ar-c2-lines-col > :nth-child(4) { grid-area: 2 / 1; }
}

/* ===== AR CONTACT ADDR ONELINE: address spans both columns on one line ===== */
@media (min-width: 701px) {
html body .ar-c2-lines-col > :nth-child(4) { grid-area: 3 / 1 / 4 / 3; white-space: nowrap; }
}

/* ===== AR CONTACT LINES STACKED FINAL: all four under each other ===== */
html body .ar-c2-lines-col { grid-template-columns: 1fr !important; gap: 16px !important; }
html body .ar-c2-lines-col > * { grid-area: auto !important; }

/* ===== AR SUBMENU ARROWS V2: refined chevron style ===== */
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item::after { content: "‹" !important; font-size: 20px; line-height: 1; font-weight: 400; width: 22px; height: 22px; display: inline-flex !important; align-items: center; justify-content: center; border: 1px solid rgba(130,192,204,.35); border-radius: 50%; color: #82C0CC; opacity: .65; padding-bottom: 2px; }
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item:hover::after { transform: translateX(-4px); opacity: 1; background: rgba(130,192,204,.12); border-color: #82C0CC; }

/* ===== AR SOLUTIONS BG: حلول معمارية مبتكرة section color ===== */
html body .elementor-element-33f3c7e, html body .elementor-element-33f3c7e .elementor-element-62a7f6d { background-color: #3b7596 !important; }

/* ===== AR SOLUTIONS BG INNER: clear dark inner boxes so the section is one color ===== */
html body .elementor-element-33f3c7e .e-con, html body .elementor-element-33f3c7e .e-con-inner, html body .elementor-element-33f3c7e .elementor-widget, html body .elementor-element-33f3c7e .elementor-widget-container, html body .elementor-element-33f3c7e .elementor-icon-box-wrapper { background-color: transparent !important; }

/* ===== AR SOLUTIONS BG INNER 2: beat the old high-specificity dark rule ===== */
html body .elementor-element-33f3c7e > .e-con-inner > .e-con { background-color: transparent !important; }

/* ===== AR SUBMENU ARROWS OFF: back to plain items ===== */
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item::after { content: none !important; }
html body .elementor-location-header .elementor-nav-menu--dropdown .elementor-sub-item { display: block !important; }

/* ===== AR MAP LABELS SMALLER: lighter map typography ===== */
html body .arp6-lbl { font-size: 11px !important; }
html body .arp6-lbl[font-size="11"], html body .arp6-lbl[font-size="12"] { font-size: 10px !important; }

/* ===== AR CARD LOC: location line on related-project cards ===== */
html body .ar-card-loc { color: #82C0CC; font-size: 13px; margin: 2px 0 8px; }

/* ===== AR SITEWIDE PHOTO FRAME: unified simple frame like the من نحن photo (founder & CEO excluded) ===== */
html body .ar-blogsec-media img, html body .ar-board-photo img, html body .ar-exec-photo img, html body .ar-jobs-join-media img, html body .ar-media-banner img, html body .ar-media-hero img, html body .ar-svc-hero-media img, html body .ar-vm-media img, html body .ar-about-banner img, html body .ar-about-facade img, html body .ar-sust2 img, html body.page-id-11933 .ar-pg img, html body .ar-vm2-media img { border-radius: 20px !important; outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 13px !important; box-shadow: 0 30px 66px rgba(0,0,0,.55) !important; }
html body .ar-blogsec-media, html body .ar-board-photo, html body .ar-jobs-join-media, html body .ar-media-banner, html body .ar-media-hero, html body .ar-svc-hero-media, html body .ar-vm-media, html body .ar-about-banner, html body .ar-about-facade, html body .ar-vm2-media { overflow: visible !important; }
html body .ar-founder-photo img, html body .ar-ceo-media img { outline: none !important; outline-offset: 0 !important; }

/* ===== AR ABOUT FRAME CLIP FIX: let the photo frame breathe on قصتنا ===== */
html body .ar-about-flow { overflow: visible !important; }
html body .ar-about-facade { margin-top: 18px !important; }

/* ===== AR FRAME MITHAQ+VISION: same unified frame ===== */
html body.page-id-8454 .ar-site-main img.attachment-large { border-radius: 20px !important; outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 13px !important; box-shadow: 0 30px 66px rgba(0,0,0,.55) !important; }
html body .ar-vm2-illus { border-radius: 20px !important; outline: 1px solid rgba(130,192,204,.38) !important; outline-offset: 13px !important; box-shadow: 0 30px 66px rgba(0,0,0,.55) !important; }

/* ===== AR HERO VIDEO: banner background video under the hero text ===== */
html body .elementor-element-v2fa7 { position: relative !important; overflow: hidden !important; }
html body .ar-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; pointer-events: none; }
html body .elementor-element-v2fa7 > *:not(.ar-hero-video) { position: relative; z-index: 1; }

/* ===== AR FRAME FIXES BLOG+VMV: frame hugs the blog photo; single frame on home vision ===== */
html body .ar-blogsec-media { display: flex !important; justify-content: center !important; }
html body .ar-blogsec-media img { width: auto !important; height: auto !important; max-width: 100% !important; max-height: 420px !important; }
html body:not(.page-id-571) .ar-vm2-illus { outline: none !important; box-shadow: none !important; }

/* ===== AR BOARD ZIGZAG: alternate photo side (odd right, even left) ===== */
html body .ar-board-list .ar-board-member:nth-child(even) { flex-direction: row-reverse !important; }

/* ===== AR RESPONSIVE FIXES 1: hero text on all devices + projects section flows on mobile/tablet ===== */
html body .elementor-element-v2fa1, html body .elementor-element-v2fa2, html body .elementor-element-v2fa3 { display: block !important; }
@media (max-width: 1024px) {
html body .elementor-element-v2fe6, html body .elementor-element-v2fe6 > .e-con-inner { height: auto !important; min-height: 0 !important; }
html body .arv3, html body .arv3-wrap, html body .arv3-grid { height: auto !important; }
html body .arv3-grid { display: flex !important; flex-direction: column !important; gap: 26px !important; }
html body .arv3-mapcol { position: static !important; order: 1 !important; }
html body .arv3-cardcol { order: 2 !important; }
html body .arv3-stack { height: auto !important; max-height: 690px !important; }
}

/* ===== AR RESPONSIVE FIXES 2: stack always clips its cards ===== */
html body .arv3-stack { overflow-y: auto !important; overflow-x: hidden !important; }

/* ===== AR RESPONSIVE FIXES 3: mobile board stacking, no sideways scroll, wrapping titles ===== */
@media (max-width: 900px) {
html body .ar-board-list .ar-board-member:nth-child(even) { flex-direction: column !important; }
html, body { overflow-x: hidden !important; }
html body .ar-page-title { font-size: 30px !important; white-space: normal !important; line-height: 1.4 !important; }
}

/* ===== AR HERO TEXT HIDDEN: hide (not delete) banner text on all devices ===== */
html body .elementor-element-v2fa1, html body .elementor-element-v2fa2, html body .elementor-element-v2fa3 { display: none !important; }

/* ===== AR SOLUTIONS NO TEXT SHADOW ===== */
html body .elementor-element-33f3c7e .elementor-heading-title, html body .elementor-element-33f3c7e h2, html body .elementor-element-33f3c7e h3, html body .elementor-element-33f3c7e p { text-shadow: none !important; }

/* ===== AR SOLUTIONS NO TEXT SHADOW 2: outrank the sitewide heading shadow ===== */
html body .elementor-element-33f3c7e .elementor-widget-heading .elementor-heading-title, html body .elementor-element-33f3c7e.e-con .elementor-heading-title, html body .elementor-element-33f3c7e.e-con h2, html body .elementor-element-33f3c7e.e-con h3, html body .elementor-element-33f3c7e.e-con p { text-shadow: none !important; }

/* ===== AR VMV EQUAL EDGES: equal top/bottom spacing for the home vision section ===== */
html body .elementor-element-c34c9ef { padding-top: 20px !important; }

/* ===== AR FOOTER LINKS RIGHT: روابط تهمك right-aligned ===== */
html body .elementor-element-7687b10 { align-items: flex-start !important; }
html body .elementor-element-7687b10 .elementor-widget-container, html body .elementor-element-7687b10 h1, html body .elementor-element-7687b10 h2, html body .elementor-element-7687b10 h3, html body .elementor-element-7687b10 h4, html body .elementor-element-7687b10 p, html body .elementor-element-7687b10 ul, html body .elementor-element-7687b10 li, html body .elementor-element-7687b10 a { text-align: right !important; }
html body .elementor-element-7687b10 ul { margin: 0 !important; }

/* ===== AR FOOTER LINKS RIGHT 2: icon-list items flush right ===== */
html body .elementor-element-7687b10 .elementor-icon-list-item, html body .elementor-element-7687b10 .elementor-icon-list-item > a { justify-content: flex-start !important; }
html body .elementor-element-7687b10 .elementor-icon-list-items { text-align: right !important; }

/* ===== AR SHARED HERO FULLBLEED: banner spans the whole screen ===== */
html body .ar-shared-hero-wrap { width: 100vw !important; max-width: 100vw !important; margin-inline: calc(50% - 50vw) !important; }
html body .ar-shared-hero { width: 100% !important; }

/* ===== AR SHARED HERO COVER: banner photo fills the full width ===== */
html body .ar-shared-hero { background-size: cover !important; background-position: center !important; }

/* ===== AR SHARED HERO COVER 2: outrank the founder contain rule ===== */
html body .ar-founder .ar-founder-hero.ar-shared-hero, html body .ar-shared-hero-wrap .ar-founder-hero { background-size: cover !important; background-position: center !important; }

/* ===== AR FOOTER 3 EVEN: three equal sections, balanced spacing ===== */
html body .elementor-element-52d664ab { justify-content: space-between !important; gap: 48px !important; }
html body .elementor-element-52d664ab > .e-con { flex: 1 1 0 !important; max-width: none !important; min-width: 0 !important; }
@media (max-width: 767px) { html body .elementor-element-52d664ab > .e-con { flex: 1 1 100% !important; } }

/* ===== AR FOOTER BALANCED GAPS: columns hug their content, equal gaps between the three ===== */
html body .elementor-element-52d664ab > .e-con { flex: 0 1 auto !important; }
html body .elementor-element-52d664ab > .e-con:first-child { max-width: 360px !important; }

/* ===== AR MAYOMAYEZNA STACK: ما يميزنا — photo on top (like ميثاقنا), text below ===== */
html body.page-id-11932 .ar-jobs-join-row { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 40px !important; }
html body.page-id-11932 .ar-jobs-join-media { order: -1 !important; width: 100% !important; max-width: 860px !important; margin: 10px auto 0 !important; }
html body.page-id-11932 .ar-jobs-join-media img { width: 100% !important; height: auto !important; }
html body.page-id-11932 .ar-jobs-join-text { max-width: 900px !important; margin: 0 auto !important; }

/* ===== AR MITHAQ JUSTIFY FIX: even lines, normal word spacing on the last line ===== */
html body.page-id-8454 .ar-site-main p { text-align: justify !important; text-align-last: right !important; word-spacing: normal !important; }

/* ===== AR BLOG THUMBS FULL: uncropped card images on the blog ===== */
html body .bp-thumb img { object-fit: contain !important; }

/* ===== AR BLOG THUMBS FULL 2: outrank the blogpg cover rule ===== */
html body .ar-blogpg .bp-thumb img { object-fit: contain !important; }

/* ===== AR BLOG ARTICLE2 FIT: the portrait article photo fills its card clearly ===== */
html body .ar-blogpg .bp-thumb img[src*="ar-article-2"] { object-fit: cover !important; object-position: center 30% !important; }

/* ===== AR BLOG ARTICLE2 ZOOM FIX: taller thumb so the portrait photo shows more ===== */
html body .ar-blogpg .bp-thumb:has(img[src*="ar-article-2"]) { height: 235px !important; }
html body .ar-blogpg .bp-thumb img[src*="ar-article-2"] { height: 100% !important; object-position: center 25% !important; }

/* ===== AR BLOG ARTICLE2 BLUR FILL: full image, no zoom, blurred self-fill, uniform height ===== */
html body .ar-blogpg .bp-thumb:has(img[src*="ar-article-2"]) { height: 170px !important; position: relative !important; overflow: hidden !important; }
html body .ar-blogpg .bp-thumb:has(img[src*="ar-article-2"])::before { content: ""; position: absolute; inset: -20px; background: url("https://commademo.com/al-reyadah/wp-content/uploads/2026/07/ar-article-2.jpg") center / cover no-repeat; filter: blur(16px) brightness(.5) saturate(.9); z-index: 0; }
html body .ar-blogpg .bp-thumb img[src*="ar-article-2"] { position: relative !important; z-index: 1 !important; width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important; }

/* ===== AR MITHAQ 4 LINES EQUAL: balanced 4 lines, all flush, even spacing ===== */
html body.page-id-8454 .elementor-element-7fe5d54 p { text-wrap: balance; text-align: justify !important; text-align-last: justify !important; }
@media (max-width: 900px) {
  html body.page-id-8454 .elementor-element-7fe5d54 p { text-wrap: wrap; text-align: justify !important; text-align-last: right !important; }
}

/* ===== AR ORGSTRUCT HIDE TOP TITLE: banner already carries the title ===== */
html body.page-id-576 h1.ar-page-title { display: none !important; }

/* ===== AR FOOTER LOGO TEXT FLUSH: all lines end together ===== */
html body .elementor-element-6a42cafb p { text-wrap: balance; text-align: justify !important; text-align-last: justify !important; }

/* AR ORGSTRUCT banner reverted to match executive-members */

/* ===== AR EXECMEM HIDE DUP TITLE: banner already carries the title ===== */
html body.page-id-575 .elementor-element-790cc74 { display: none !important; }

/* ===== AR TEL INPUT RTL: phone fields start from the right like the rest ===== */
html body form input[type="tel"] { direction: rtl !important; text-align: right !important; }

/* ===== AR THUMB SLIDER CSS: side gallery becomes arrow slider, no overflow ===== */
html body .ar-thumbs-col { display: flex; flex-direction: column; align-items: center; gap: 8px; }
html body .ar-thumbs-col .ar-hero-thumbs { overflow-y: hidden !important; max-height: 400px !important; height: 400px !important; scrollbar-width: none; }
html body .ar-thumbs-col .ar-hero-thumbs::-webkit-scrollbar { display: none; }
html body .ar-thumb-nav { width: 34px; height: 34px; border-radius: 50%; border: 1px solid rgba(130,192,204,.45); background: rgba(130,192,204,.10); color: #82c0cc; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; transition: all .2s ease; }
html body .ar-thumb-nav:hover { background: #82c0cc; color: #12263a; }
html body .ar-thumb-nav.is-off { opacity: .25; pointer-events: none; }
html body .ar-hero-thumbs { overflow-y: hidden; }

/* ===== AR THUMB SLIDER FIX2: thumbs strip fills column height (flex-basis was hijacked) ===== */
html body .ar-thumbs-col { height: 480px; }
html body .ar-thumbs-col .ar-hero-thumbs { flex: 1 1 auto !important; min-height: 0 !important; height: auto !important; max-height: none !important; width: 88px; }

/* ===== AR BLOG GRID 3COL: 3 cards per row, extras flow below ===== */
@media (min-width: 901px) {
  html body .ar-blogpg .bp-grid { grid-template-columns: repeat(3, 1fr) !important; }
}

/* ===== AR ORGSTRUCT BANNER FLUSH TOP: remove gap between header and banner ===== */
html body.page-id-576 .ar-site-content { padding-top: 0 !important; }

/* ===== AR BLOG THUMBS FULL+FILL: every card image complete + blurred self fill ===== */
html body .ar-blogpg .bp-thumb::before { content: none !important; }
html body .ar-blogpg .bp-thumb, html body .ar-blogpg .bp-thumb:has(img) { position: relative !important; overflow: hidden !important; height: 200px !important; }
html body .ar-blogpg .bp-thumb .bp-blur { position: absolute; inset: -22px; background-position: center; background-size: cover; background-repeat: no-repeat; filter: blur(16px) brightness(.5) saturate(.9); z-index: 0; }
html body .ar-blogpg .bp-thumb img, html body .ar-blogpg .bp-thumb img[src*="ar-article-2"] { position: relative !important; z-index: 1 !important; width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important; }

/* ===== AR BLOG THUMB H UNIFY: article-2 same 200px as the rest ===== */
html body .ar-blogpg .bp-thumb:has(img[src*="ar-article-2"]) { height: 200px !important; }

/* ===== AR ARTICLE2 WIDE3 COVER: composite already contains its own blur sides ===== */
html body .ar-blogpg .bp-thumb img[src*="ar-article-2-wide3"] { object-fit: cover !important; }

/* ===== AR ARTICLE2 NEW COVER: replacement landscape image fills the card ===== */
html body .ar-blogpg .bp-thumb img[src*="ar-article-2-new"] { object-fit: cover !important; }

/* ===== AR ARTICLE2 HERO FULL: show whole image inside the article (no crop) ===== */
html body.postid-11987 .ar-article-hero img { height: auto !important; max-height: none !important; object-fit: contain !important; }
html body.postid-11987 .ar-article-hero { height: auto !important; max-height: none !important; }

/* ===== AR HERO IMAGE CSS: banner image fills hero like the video did ===== */
html body .elementor-element-v2fa7 img.ar-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }

/* ===== AR JOBFORM WHITE TEXT: typed text readable on dark inputs (suppliers + careers) ===== */
html body .ar-job-form input, html body .ar-job-form select, html body .ar-job-form textarea { color: #ffffff !important; caret-color: #82c0cc; }
html body .ar-job-form input::placeholder, html body .ar-job-form textarea::placeholder { color: rgba(255,255,255,.45) !important; }
html body .ar-job-form select option { color: #14212e; background: #ffffff; }

/* ===== AR MEDIA LINK CSS: linked media cards keep grid layout ===== */
html body .ar-media-grid .ar-media-link { display: contents; color: inherit; text-decoration: none; }
html body .ar-media-grid .ar-media-link .ar-media-item { cursor: pointer; transition: transform .25s ease; }
html body .ar-media-grid .ar-media-link:hover .ar-media-item { transform: translateY(-4px); }

/* ===== AR CERTS GRID CSS: 3 certificate cards, title above preview ===== */
html body .ar-certs-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; max-width: 1200px; margin: 48px auto 64px; padding: 0 16px; }
html body .ar-certs-grid .ar-cert { display: flex; flex-direction: column; gap: 14px; text-decoration: none; color: inherit; }
html body .ar-certs-grid .ar-cert h3 { margin: 0; font-size: 17px; color: #ffffff; text-align: center; font-weight: 600; }
html body .ar-certs-grid .ar-cert img { width: 100%; height: auto; border-radius: 14px; outline: 1px solid rgba(130,192,204,.35); outline-offset: 6px; box-shadow: 0 18px 40px rgba(0,0,0,.45); background: #fff; transition: transform .25s ease; }
html body .ar-certs-grid .ar-cert:hover img { transform: translateY(-5px); }
@media (max-width: 900px) { html body .ar-certs-grid { grid-template-columns: 1fr; max-width: 520px; } }

/* ===== AR CERTS LAYOUT 2+1: hide intro text, 2 certs side by side + 1 below ===== */
html body.page-id-12899 .ar-entry-content > .elementor-12899 { display: none !important; }
html body .ar-certs-grid { grid-template-columns: repeat(2, 1fr); max-width: 980px; margin-top: 24px; }
html body .ar-certs-grid .ar-cert:nth-child(3) { grid-column: 1 / -1; width: calc(50% - 14px); margin-inline: auto; }
@media (max-width: 900px) {
  html body .ar-certs-grid { grid-template-columns: 1fr; }
  html body .ar-certs-grid .ar-cert:nth-child(3) { width: 100%; }
}

/* ===== AR CERTS EQUAL SIZE: uniform card heights ===== */
html body .ar-certs-grid .ar-cert h3 { min-height: 56px; display: flex; align-items: flex-end; justify-content: center; }
html body .ar-certs-grid .ar-cert img { height: 340px !important; object-fit: contain !important; }

/* ===== AR CERTS FRAME BLUE + ONE-LINE TITLE ===== */
html body .ar-certs-grid .ar-cert img { background: #12263a !important; }
html body .ar-certs-grid .ar-cert h3 { min-height: 0; white-space: nowrap; font-size: 16px; }
html body .ar-certs-grid .ar-cert:nth-child(2) h3 { font-size: 14px; letter-spacing: -0.2px; }

/* ===== AR CERTS BLUE FRAME 2: visible blue frame band around each certificate ===== */
html body .ar-certs-grid .ar-cert img { padding: 16px; background: #12263a !important; border: 1px solid rgba(130,192,204,.35); outline: none; box-sizing: border-box; }

/* ===== AR BRAND PAGE CSS: hide intro text, single centered brand file card ===== */
html body.page-id-12900 .ar-entry-content > .elementor-12900 { display: none !important; }
html body .ar-brand-grid { grid-template-columns: 1fr !important; max-width: 640px !important; }
html body .ar-brand-grid .ar-cert img { height: 420px !important; }

/* ===== AR PDF OVERLAY CSS ===== */
html body .ar-pdf-overlay { position: fixed; inset: 0; background: rgba(5,12,20,.85); z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 4vh 4vw; }
html body .ar-pdf-box { position: relative; width: min(900px, 92vw); height: 88vh; background: #12263a; border-radius: 14px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,0,0,.6); }
html body .ar-pdf-box iframe { width: 100%; height: 100%; border: 0; display: block; }
html body .ar-pdf-close { position: absolute; top: 10px; left: 10px; z-index: 2; width: 38px; height: 38px; border-radius: 50%; border: none; background: rgba(0,0,0,.55); color: #fff; font-size: 22px; line-height: 1; cursor: pointer; }
html body .ar-pdf-close:hover { background: #82c0cc; color: #12263a; }

/* ===== AR PDF BOX BIGGER: near-fullscreen viewer ===== */
html body .ar-pdf-overlay { padding: 2vh 2vw; }
html body .ar-pdf-box { width: min(1500px, 96vw) !important; height: 94vh !important; }

/* ===== AR CERTS+BRAND BIGGER PREVIEWS ===== */
html body .ar-certs-grid { max-width: 1240px !important; }
html body .ar-certs-grid .ar-cert img { height: 430px !important; }
html body .ar-brand-grid { max-width: 900px !important; }
html body .ar-brand-grid .ar-cert img { height: 560px !important; }
@media (max-width: 900px) { html body .ar-certs-grid .ar-cert img, html body .ar-brand-grid .ar-cert img { height: auto !important; } }

/* ===== AR PDF BOX SMALLER + X FIX ===== */
html body .ar-pdf-box { width: min(1050px, 88vw) !important; height: 86vh !important; }
html body .ar-pdf-overlay { padding: 5vh 4vw; }
html body .ar-pdf-close { position: absolute !important; top: 14px !important; right: 20px !important; left: auto !important; width: 42px !important; height: 42px !important; font-size: 26px !important; background: rgba(255,255,255,.12) !important; border: 1px solid rgba(255,255,255,.35) !important; color: #fff !important; display: flex; align-items: center; justify-content: center; z-index: 3; }
html body .ar-pdf-close:hover { background: #82c0cc !important; color: #12263a !important; }

/* ===== AR PDF IMG VIEW: certificates open as clean image, no dark frame ===== */
html body .ar-pdf-box.ar-pdf-box-img { background: transparent !important; box-shadow: none !important; width: auto !important; height: auto !important; max-width: 92vw; max-height: 92vh; display: flex; align-items: center; justify-content: center; overflow: visible !important; }
html body .ar-pdf-img { display: block; max-width: 88vw; max-height: 88vh; width: auto; height: auto; border-radius: 10px; box-shadow: 0 30px 70px rgba(0,0,0,.5); }

/* ===== AR MOBILE FIXES CERTS+THUMBS ===== */
@media (max-width: 900px) {
  html body .ar-certs-grid .ar-cert h3 { white-space: normal !important; }
  html body .ar-hero-thumbs { overflow-x: auto !important; flex-wrap: nowrap !important; scrollbar-width: none; padding-bottom: 4px; }
  html body .ar-hero-thumbs::-webkit-scrollbar { display: none; }
}

/* ===== AR HERO MOBILE FULL IMAGE: show whole banner on phones with blurred fill ===== */
@media (max-width: 900px) {
  html body .elementor-element-v2fa7 { position: relative; overflow: hidden; }
  html body .elementor-element-v2fa7::before { content: ""; position: absolute; inset: -24px; background: url("https://commademo.com/al-reyadah/wp-content/uploads/2026/08/ar-hero-banner.jpg") center / cover no-repeat; filter: blur(18px) brightness(.65); z-index: 0; }
  html body .elementor-element-v2fa7 img.ar-hero-video { object-fit: contain !important; object-position: center !important; z-index: 1 !important; }
}

/* ===== AR HERO MOBILE HEIGHT: tighter hero so the banner reads well ===== */
@media (max-width: 900px) {
  html body .elementor-element-v2fa7 { height: auto !important; min-height: calc(100vw * 1.02) !important; max-height: 520px !important; padding-top: 40px !important; padding-bottom: 40px !important; }
}

/* ===== AR VM2 EYEBROW ARABIC: no letter-spacing on Arabic (was breaking letters apart) ===== */
html body .ar-vm2-eyebrow { letter-spacing: 0 !important; font-size: 15px !important; font-weight: 600; }

/* ===== AR STORY HERO CSS: mobile banner for story page (full-bleed image + overlaid title) ===== */
@media (max-width: 767px) {
  html body.page-id-354 .ar-story-hero { position: relative !important; width: 100vw !important; margin-inline: calc(50% - 50vw) !important; height: 340px !important; overflow: hidden !important; border-radius: 0 !important; }
  html body.page-id-354 .ar-story-hero img { width: 100% !important; height: 100% !important; object-fit: cover !important; border-radius: 0 !important; outline: none !important; box-shadow: none !important; }
  html body.page-id-354 .ar-story-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,35,64,0) 30%, rgba(11,35,64,.85) 100%); z-index: 1; pointer-events: none; }
  html body.page-id-354 .ar-story-hero h1.ar-page-title { position: absolute; bottom: 22px; right: 20px; z-index: 2; color: #ffffff !important; font-size: 36px !important; font-weight: 700 !important; margin: 0 !important; opacity: 1 !important; transform: none !important; text-align: right !important; }
  html body.page-id-354 .ar-about-flow { margin-top: 0 !important; padding-top: 0 !important; }
}

/* ===== AR STORY HERO FLUSH: no gap above mobile story banner ===== */
@media (max-width: 767px) {
  html body.page-id-354 .ar-site-content { padding-top: 0 !important; }
  html body.page-id-354 .ar-entry-content, html body.page-id-354 .ar-about-flow { margin-top: 0 !important; }
}
