/* ==========================================================================
   Al Raya — design system
   1 Fonts & tokens   2 Base   3 Utilities & buttons   4 Header   5 Footer
   6 Page header & theme templates   7 Elementor section & widget classes
   8 Motion   9 Print
   Horizontal spacing uses logical properties so the theme is RTL-ready.
   ========================================================================== */

/* 1 ── Fonts & tokens ───────────────────────────────────────────────────── */
@font-face{font-family:"Archivo";src:url("../fonts/archivo-latin.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Instrument Serif";src:url("../fonts/instrument-serif-latin.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";src:url("../fonts/jetbrains-mono-latin.woff2") format("woff2");font-weight:400 600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ar-navy-950:#041621; --ar-navy-900:#07212F; --ar-navy-850:#0A2C3F; --ar-navy:#0D3D57; --ar-navy-600:#1C5C7E;
  --ar-red:#E63D49;            /* brand red: display type, shapes */
  --ar-red-btn:#DC3340;        /* button fill: brand red nudged for 4.5:1 with white text */
  --ar-red-text:#C22E3D;       /* small red text on light backgrounds (AA) */
  --ar-red-deep:#B62B3A; --ar-red-soft:#FF6B75;
  --ar-paper:#F4F0E9; --ar-paper-2:#EAE4DA; --ar-ink:#082230; --ar-ink-2:#4A6170;
  --ar-mist:#9DB4C1; --ar-mist-2:#C5D5DF;
  --ar-line-d:rgba(255,255,255,.13); --ar-line-l:rgba(8,34,48,.14);
  --ar-font:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --ar-serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --ar-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;
  --ar-max:1296px;
  --ar-gutter:clamp(20px,5vw,72px);
  --ar-sec-y:clamp(72px,8.2vw,118px);
  --ar-radius:clamp(20px,2.1vw,30px);
  --ar-header-h:76px;
  --ar-acc:var(--ar-red);
}

/* 2 ── Base ─────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;background:var(--ar-navy-950)}
body{margin:0;font-family:var(--ar-font);font-size:17px;line-height:1.55;color:var(--ar-ink);background:var(--ar-paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,svg,video{max-width:100%;height:auto}
img{display:block}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{color:var(--ar-red-text)}
.ar-dark a:hover{color:var(--ar-red-soft)}
:focus-visible{outline:3px solid var(--ar-red-soft);outline-offset:3px;border-radius:4px}
.ar-light :focus-visible,.ar-prose :focus-visible{outline-color:var(--ar-navy)}
h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--ar-font);font-stretch:108%;font-weight:800;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}
h1{font-size:clamp(42px,7.6vw,110px);font-stretch:110%;letter-spacing:-.042em;line-height:.93}
h2{font-size:clamp(34px,5.2vw,74px);line-height:.96}
h3{font-size:clamp(24px,2.6vw,36px)}
h4{font-size:clamp(20px,1.9vw,26px)}
h5,h6{font-size:18px}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0}
address{font-style:normal}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--ar-red);color:#fff}
h1 em,h2 em{font-family:var(--ar-serif);font-style:italic;font-weight:400;font-stretch:100%;letter-spacing:-.025em;font-size:1.13em;line-height:.9;color:var(--ar-red)}
.ar-dark h1 em,.ar-dark h2 em{color:var(--ar-red-soft)}

/* 3 ── Utilities & buttons ──────────────────────────────────────────────── */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.ar-skip{position:absolute;inset-inline-start:16px;top:-80px;z-index:1000;background:#fff;color:var(--ar-ink);padding:12px 18px;border-radius:10px;font-weight:700}
.ar-skip:focus{top:16px}
.ar-wrap{width:100%;max-width:calc(var(--ar-max) + var(--ar-gutter)*2);margin-inline:auto;padding-inline:var(--ar-gutter);position:relative}
.ar-wrap--narrow{max-width:calc(820px + var(--ar-gutter)*2)}
.ar-dark{color:#fff}
.ar-light{color:var(--ar-ink)}
.ar-mono{font-family:var(--ar-mono);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-stretch:100%}
.ar-label{display:flex;align-items:center;gap:12px;margin:0 0 22px;font-family:var(--ar-mono);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ar-red-text)}
.ar-label::before{content:"";width:28px;height:1.5px;background:currentColor;flex:none}
.ar-dark .ar-label,.ar-cta .ar-label{color:var(--ar-red-soft)}
.ar-cta .ar-label{color:#fff}
.ar-icon{flex:none}

.ar-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:60px;padding:0 30px;border-radius:999px;border:1.5px solid transparent;font-family:var(--ar-font);font-weight:700;font-size:16px;line-height:1.1;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}
.ar-button:hover{transform:translateY(-2px)}
.ar-button .ar-icon{transition:transform .2s ease}
.ar-button:hover .ar-icon{transform:translateX(3px)}
.ar-button--red{background:var(--ar-red-btn);color:#fff;box-shadow:0 18px 40px -14px rgba(230,61,73,.75)}
.ar-button--red:hover{background:#C92A37;color:#fff}
.ar-button--ghost{border-color:rgba(255,255,255,.34);color:#fff}
.ar-button--ghost:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}
.ar-button--ink{background:var(--ar-navy-950);color:#fff}
.ar-button--ink:hover{background:var(--ar-navy);color:#fff}
.ar-button--line{border-color:var(--ar-line-l);color:var(--ar-ink)}
.ar-button--line:hover{border-color:var(--ar-ink);color:var(--ar-ink)}
.ar-button--lg{min-height:76px;padding:0 42px;font-size:19px}
.ar-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none}
.ar-link:hover .ar-icon{transform:translateX(3px)}
.ar-link .ar-icon{transition:transform .2s ease}
.ar-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.ar-chips li{min-height:32px;padding:6px 14px;border-radius:999px;border:1px solid var(--ar-line-l);font-size:13px;font-weight:600;line-height:1.3}
.ar-dark .ar-chips li{border-color:rgba(255,255,255,.26)}

/* 4 ── Header ───────────────────────────────────────────────────────────── */
.ar-header{position:absolute;inset-inline:0;top:clamp(14px,2vw,28px);z-index:100;padding-inline:var(--ar-gutter)}
.admin-bar .ar-header{top:calc(clamp(14px,2vw,28px) + 32px)}
.ar-header__bar{position:relative;max-width:var(--ar-max);margin-inline:auto;min-height:var(--ar-header-h);background:#fff;border-radius:20px;display:flex;align-items:center;gap:20px;padding-block:0;padding-inline:26px 12px;box-shadow:0 24px 60px -24px rgba(0,0,0,.55);color:var(--ar-ink)}
.ar-header__logo{display:flex;align-items:center;flex:none;overflow:hidden;border-radius:8px}
.ar-logo{height:44px;width:auto;max-width:none;flex:none}
/* The official logo file carries transparent padding; trim it optically without editing the artwork. */
.ar-header .ar-logo--default{height:66px;margin-inline:-46px -38px}
.ar-nav{display:flex;align-items:center;gap:26px;margin-inline-start:auto}
.ar-nav__list{list-style:none;display:flex;align-items:center;gap:clamp(18px,2.6vw,38px);font-size:15px;font-weight:600}
.ar-nav__list a{display:block;padding:10px 0;text-decoration:none;color:var(--ar-ink)}
.ar-nav__list a:hover,.ar-nav__list .current-menu-item>a,.ar-nav__list .current_page_item>a,.ar-nav__list .current-menu-ancestor>a{color:var(--ar-red-text)}
.ar-nav__list li{position:relative}
.ar-nav__list .sub-menu{list-style:none;position:absolute;top:100%;inset-inline-start:-18px;min-width:270px;background:#fff;border-radius:16px;padding:10px 18px;box-shadow:0 24px 50px -20px rgba(4,22,33,.45);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility .18s}
.ar-nav__list li:hover>.sub-menu,.ar-nav__list li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.ar-nav__extra{display:flex;align-items:center;gap:22px}
.ar-header__tel{font-family:var(--ar-mono);font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--ar-ink-2);text-decoration:none;white-space:nowrap}
.ar-header__cta{min-height:52px;padding:0 24px;font-size:15px;box-shadow:none}
.ar-burger{display:none;width:48px;height:48px;border:0;border-radius:14px;background:var(--ar-paper);cursor:pointer;margin-inline-start:auto;position:relative}
.ar-burger__bars,.ar-burger__bars::before,.ar-burger__bars::after{position:absolute;inset-inline-start:14px;width:20px;height:2px;border-radius:2px;background:var(--ar-ink);transition:transform .2s ease,opacity .2s ease}
.ar-burger__bars{top:23px}
.ar-burger__bars::before,.ar-burger__bars::after{content:"";inset-inline-start:0}
.ar-burger__bars::before{top:-6px}
.ar-burger__bars::after{top:6px}
.is-open .ar-burger__bars{background:transparent}
.is-open .ar-burger__bars::before{transform:translateY(6px) rotate(45deg)}
.is-open .ar-burger__bars::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:1320px){.ar-header__tel{display:none}}
@media (max-width:1100px){
  :root{--ar-header-h:64px}
  .ar-header__bar{padding-inline:18px 8px}
  .ar-header .ar-logo--default{height:56px;margin-inline:-39px -32px}
  .ar-burger{display:block}
  .ar-nav{display:none;position:absolute;top:calc(100% + 8px);inset-inline:0;flex-direction:column;align-items:stretch;gap:8px;background:#fff;border-radius:20px;padding:14px 22px 22px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6);max-height:calc(100vh - 140px);overflow:auto}
  .is-open .ar-nav{display:flex}
  .ar-nav__list{flex-direction:column;align-items:stretch;gap:0;font-size:18px}
  .ar-nav__list>li{border-bottom:1px solid var(--ar-line-l)}
  .ar-nav__list a{padding:15px 0}
  .ar-nav__list .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0 0 10px 16px;min-width:0;font-size:16px}
  .ar-nav__list .sub-menu a{padding:9px 0}
  .ar-nav__extra{flex-direction:column;align-items:stretch;gap:14px;padding-top:12px}
  .ar-header__tel{display:block;font-size:13px;padding:13px 0}
  .ar-header__cta{min-height:56px}
}

/* 5 ── Footer ───────────────────────────────────────────────────────────── */
.ar-footer{background:var(--ar-navy-950);padding-block:clamp(56px,5.6vw,80px) 36px}
.ar-footer__cols{display:grid;grid-template-columns:1.5fr 1.25fr .8fr 1fr;gap:clamp(32px,3.9vw,56px)}
.ar-footer .ar-logo{height:44px}
.ar-footer .ar-logo--default{height:56px;margin-inline-start:-43px}
.ar-footer__blurb{margin:26px 0 0;max-width:330px;font-size:16px;color:var(--ar-mist)}
.ar-footer__social{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.ar-footer__social a{display:inline-flex;align-items:center;min-height:44px;padding:0 13px;border-radius:999px;border:1px solid var(--ar-line-d);font-size:13px;font-weight:600;text-decoration:none}
.ar-footer__social a:hover{border-color:#fff;color:#fff}
.ar-footer__title{margin:0 0 22px;font-family:var(--ar-mono);font-size:11.5px;font-weight:500;font-stretch:100%;letter-spacing:.16em;line-height:1.4;text-transform:uppercase;color:var(--ar-red-soft)}
.ar-footer__col ul{list-style:none;font-size:16.5px;font-weight:500;color:#E3ECF1}
.ar-footer__col li a{display:inline-block;padding:9px 0;text-decoration:none}
.ar-footer address{font-size:16.5px;line-height:1.7;color:#E3ECF1}
.ar-footer address a{display:block;padding-block:6px;text-decoration:none}
.ar-footer address a:first-of-type{margin-top:1.2em}
.ar-footer__legal{margin-top:64px;padding-top:26px;border-top:1px solid var(--ar-line-d);display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;font-family:var(--ar-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ar-mist)}
.ar-footer__legal p{margin:0}
.ar-footer__legalnav{list-style:none;display:flex;gap:24px}
.ar-footer__legalnav a{text-decoration:none}
@media (max-width:1024px){.ar-footer__cols{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.ar-footer__cols{grid-template-columns:1fr}.ar-footer__legal{margin-top:44px}}

/* 6 ── Page header & theme templates ────────────────────────────────────── */
.ar-pagehero{position:relative;overflow:hidden;padding-block:calc(var(--ar-header-h) + clamp(84px,9vw,132px)) clamp(56px,6vw,92px);background:radial-gradient(820px 620px at 92% 110%,rgba(230,61,73,.36),transparent 62%),radial-gradient(1100px 760px at 4% -6%,#17587A 0%,transparent 62%),linear-gradient(180deg,#082636 0%,#041621 100%)}
.admin-bar .ar-pagehero{padding-top:calc(var(--ar-header-h) + clamp(84px,9vw,132px) + 32px)}
.ar-pagehero__title{max-width:16ch}
.ar-pagehero__lede{margin:28px 0 0;max-width:640px;font-size:clamp(17px,1.5vw,20px);color:var(--ar-mist-2)}
.ar-pagehero__meta{margin-top:28px;color:var(--ar-mist)}
.ar-pagehero__meta p{margin:0}
.ar-crumbs{margin-bottom:26px;font-family:var(--ar-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ar-mist)}
.ar-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px 10px}
.ar-crumbs li+li::before{content:"/";margin-inline-end:10px;opacity:.5}
.ar-crumbs a{text-decoration:none}
.ar-section{padding-block:var(--ar-sec-y)}
.ar-section.ar-light{background:var(--ar-paper)}
.ar-section.ar-dark{background:var(--ar-navy-950)}

.ar-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,32px)}
.ar-card{display:flex;flex-direction:column;border-radius:var(--ar-radius);background:#fff;box-shadow:inset 0 0 0 1px var(--ar-line-l);overflow:hidden;color:var(--ar-ink)}
.ar-card__media{display:block;aspect-ratio:16/9;background:var(--ar-paper-2);overflow:hidden}
.ar-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.ar-card:hover .ar-card__media img{transform:scale(1.03)}
.ar-card__body{display:flex;flex-direction:column;gap:12px;padding:26px 28px 30px;flex:1}
.ar-card__meta{margin:0;font-size:11px;color:var(--ar-red-text)}
.ar-card__title{font-size:clamp(21px,1.9vw,26px);line-height:1.08;letter-spacing:-.03em}
.ar-card__title a{text-decoration:none;color:var(--ar-ink)}
.ar-card__title a:hover{color:var(--ar-red-text)}
.ar-card__text{margin:0;font-size:15.5px;color:var(--ar-ink-2)}
.ar-card .ar-link{margin-top:auto;padding-top:8px;color:var(--ar-ink)}
.ar-related .ar-label{color:var(--ar-red-soft)}
@media (max-width:1024px){.ar-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.ar-cards{grid-template-columns:1fr}}

.ar-pagination{margin-top:56px}
.ar-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.ar-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:0 16px;border-radius:999px;border:1px solid var(--ar-line-l);font-weight:700;text-decoration:none}
.ar-pagination .page-numbers.current{background:var(--ar-ink);border-color:var(--ar-ink);color:#fff}
.ar-empty{max-width:560px}
.ar-empty h2{margin-bottom:14px}
.ar-search{display:flex;gap:10px;margin-top:28px;max-width:560px}
.ar-search input{flex:1;min-width:0;min-height:60px;padding:0 22px;border-radius:999px;border:1.5px solid var(--ar-line-l);background:#fff;color:var(--ar-ink)}
.ar-dark .ar-search input{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3);color:#fff}
.ar-dark .ar-search input::placeholder{color:var(--ar-mist)}

.ar-prose{font-size:clamp(17px,1.35vw,19px);line-height:1.7;color:#1B3644}
.ar-prose>*+*{margin-top:1.15em}
.ar-prose h2{font-size:clamp(28px,3vw,42px);margin-top:1.7em;color:var(--ar-ink)}
.ar-prose h3{font-size:clamp(22px,2.1vw,28px);margin-top:1.6em;color:var(--ar-ink)}
.ar-prose h4{margin-top:1.5em;color:var(--ar-ink)}
.ar-prose p{margin-bottom:0}
.ar-prose>p:first-child{font-size:1.14em;line-height:1.55;color:var(--ar-ink)}
.ar-prose ul,.ar-prose ol{padding-inline-start:1.3em}
.ar-prose li+li{margin-top:.45em}
.ar-prose li::marker{color:var(--ar-red)}
.ar-prose a{color:var(--ar-red-text);font-weight:600}
.ar-prose blockquote{margin-inline:0;padding-inline-start:24px;border-inline-start:3px solid var(--ar-red);font-family:var(--ar-serif);font-style:italic;font-size:1.5em;line-height:1.25;color:var(--ar-ink)}
.ar-prose img,.ar-prose figure{border-radius:20px}
.ar-prose figure{margin-inline:0}
.ar-prose figcaption{margin-top:10px;font-size:14px;color:var(--ar-ink-2)}
.ar-prose table{width:100%;border-collapse:collapse;font-size:.92em}
.ar-prose th,.ar-prose td{padding:12px 14px;border-bottom:1px solid var(--ar-line-l);text-align:start}
.ar-prose code{font-family:var(--ar-mono);font-size:.88em;background:var(--ar-paper-2);padding:.15em .4em;border-radius:6px}
.ar-prose hr{border:0;border-top:1px solid var(--ar-line-l);margin-block:2.2em}
.ar-prose .ar-placeholder,.ar-placeholder{background:#FFF3C4;color:#5B4500;padding:.1em .4em;border-radius:5px;font-weight:600}
.ar-article__media{margin:0 0 44px;border-radius:var(--ar-radius);overflow:hidden}
.ar-article__media img{width:100%}
.ar-article__foot{margin-top:56px;padding-top:28px;border-top:1px solid var(--ar-line-l)}
.ar-tags a{display:inline-block;margin:0 8px 8px 0;padding:6px 14px;border-radius:999px;border:1px solid var(--ar-line-l);font-size:13px;font-weight:600;text-decoration:none}
.ar-postnav{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}
.ar-postnav .ar-mono{display:block;margin-bottom:8px;color:var(--ar-ink-2);font-size:11px}
.ar-postnav a{font-weight:800;font-stretch:106%;font-size:20px;letter-spacing:-.025em;line-height:1.15;text-decoration:none}
.ar-postnav__next{text-align:end;grid-column:2}
.ar-comments{margin-top:64px}
.ar-comments__title{font-size:28px;margin-bottom:24px}
.ar-comments__list{list-style:none}
.ar-comments__list li{padding:20px 0;border-top:1px solid var(--ar-line-l)}
.ar-comments input:not([type=checkbox]):not([type=submit]),.ar-comments textarea{width:100%;padding:14px 16px;border-radius:14px;border:1.5px solid var(--ar-line-l);background:#fff}
.ar-comments .submit{min-height:56px;padding:0 28px;border-radius:999px;border:0;background:var(--ar-red-btn);color:#fff;font-weight:700;cursor:pointer}

.ar-art{position:relative;margin:0;border-radius:clamp(16px,1.8vw,26px);overflow:hidden;box-shadow:0 60px 110px -40px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.14)}
.ar-art img{width:100%;height:auto}
.ar-light .ar-art{box-shadow:0 40px 80px -40px rgba(8,34,48,.45),0 0 0 1px var(--ar-line-l)}
.ar-project__lead{background:linear-gradient(180deg,var(--ar-navy-950) 0,var(--ar-navy-950) 50%,var(--ar-paper) 50%)}
.ar-project__grid{display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.ar-project__facts dl{margin:0 0 28px}
.ar-project__facts dl>div{padding:18px 0;border-top:1px solid var(--ar-line-l)}
.ar-project__facts dt{margin-bottom:6px;font-size:11px;color:var(--ar-red-text)}
.ar-project__facts dd{margin:0;font-weight:600;font-size:17px;line-height:1.45}
.ar-project__facts dd a{text-decoration:none}
.ar-project__facts .ar-button{white-space:normal;text-align:start;padding-block:14px;font-size:14px;font-family:var(--ar-mono);font-weight:500;letter-spacing:.02em}
.ar-project__results{margin-top:48px;padding:32px;border-radius:var(--ar-radius);background:#fff;box-shadow:inset 0 0 0 1px var(--ar-line-l)}
.ar-project__results h2{font-size:26px;margin-bottom:16px}
.ar-project__results ul{padding-inline-start:1.2em}
.ar-project__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:64px}
.ar-project__next{background:var(--ar-navy-950);padding-block:clamp(56px,6vw,90px)}
.ar-project__next a{display:inline-flex;align-items:center;gap:20px;font-weight:800;font-stretch:110%;font-size:clamp(34px,6vw,84px);letter-spacing:-.045em;line-height:1;text-decoration:none}
.ar-project__next .ar-icon{width:.6em;height:.6em;color:var(--ar-red-soft)}
@media (max-width:900px){.ar-project__grid{grid-template-columns:1fr}.ar-project__gallery{grid-template-columns:1fr}}

.ar-pagehero .ar-chips li{border-color:rgba(255,255,255,.26)}
.ar-service__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);gap:clamp(32px,6vw,96px);align-items:start}
.ar-service__side{display:grid;gap:20px;position:sticky;top:32px}
.ar-panel{padding:32px;border-radius:var(--ar-radius);background:#fff;box-shadow:inset 0 0 0 1px var(--ar-line-l)}
.ar-panel--dark{background:linear-gradient(150deg,#12506F 0%,#0A2F44 55%,#062030 100%);color:#fff;box-shadow:none}
.ar-panel__title{font-size:22px;margin-bottom:18px}
.ar-ticks{list-style:none;display:grid;gap:12px;font-size:16px;line-height:1.45}
.ar-ticks li{position:relative;padding-inline-start:28px}
.ar-ticks li::before{content:"";position:absolute;inset-inline-start:2px;top:.42em;width:12px;height:7px;border-inline-start:2px solid var(--ar-red);border-bottom:2px solid var(--ar-red);transform:rotate(-45deg)}
.ar-panel--dark .ar-ticks li::before{border-color:var(--ar-red-soft)}
.ar-linklist{list-style:none;border-top:1px solid var(--ar-line-l)}
.ar-linklist a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--ar-line-l);font-weight:800;font-stretch:108%;font-size:clamp(22px,2.6vw,36px);letter-spacing:-.035em;line-height:1.05;text-decoration:none}
.ar-linklist .ar-icon{width:26px;height:26px;color:var(--ar-red)}
@media (max-width:900px){.ar-service__grid{grid-template-columns:1fr}.ar-service__side{position:static}}
.ar-404{min-height:78vh}
.ar-404__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}

/* 7 ── Elementor section & widget classes ───────────────────────────────── */
/* Let the design system drive type and colour; anything set in Elementor's Style tab still wins. */
.ar-site .elementor-widget-heading .elementor-heading-title{color:inherit;font-family:inherit}
.ar-site .elementor-widget-text-editor{color:inherit;font-family:inherit}
.ar-site .elementor-widget-text-editor p:last-child{margin-bottom:0}
.ar-site .elementor-widget-icon-box .elementor-icon-box-title,.ar-site .elementor-widget-icon-box .elementor-icon-box-description{color:inherit;font-family:inherit;margin:0}
.ar-site .elementor-icon-list-text{color:inherit}

/* Section backgrounds: the base colour is set on the container in Elementor; these add the light effects. */
.ar-site .ar-bg-hero{background-image:radial-gradient(820px 620px at 88% 66%,rgba(230,61,73,.42),transparent 62%),radial-gradient(1100px 760px at 4% -6%,rgba(23,88,122,.95) 0%,transparent 62%),linear-gradient(180deg,rgba(8,38,54,.9) 0%,rgba(4,22,33,0) 100%)}
.ar-site .ar-bg-work{background-image:radial-gradient(520px 520px at -4% 30%,rgba(28,92,126,.5),transparent 70%),radial-gradient(620px 620px at 106% 72%,rgba(230,61,73,.2),transparent 70%)}
.ar-site .ar-bg-ai{background-image:radial-gradient(900px 700px at 82% 42%,rgba(230,61,73,.3),transparent 62%),radial-gradient(900px 700px at 0% 100%,rgba(19,80,113,.95) 0%,transparent 60%)}
.ar-site .ar-bg-panel{background-image:linear-gradient(140deg,#0F4764 0%,#082B3E 60%,#051B28 100%)}
.ar-cta,.ar-site .ar-cta{background-color:var(--ar-red);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 900'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23C22E3D'/%3E%3Cstop offset='1' stop-color='%230D3D57'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M170 150 L760 450 L170 750 Z' fill='url(%23g)' stroke='url(%23g)' stroke-width='150' stroke-linejoin='round' opacity='.9'/%3E%3C/svg%3E"),linear-gradient(135deg,#F0505B 0%,#E63D49 40%,#B62B3A 100%);background-repeat:no-repeat;background-position:right -180px top -120px,0 0;background-size:820px 820px,cover;color:#fff}
[dir=rtl] .ar-cta{background-position:left -180px top -120px,0 0}
@media (max-width:900px){.ar-cta,.ar-site .ar-cta{background-size:520px 520px,cover;background-position:right -210px top -90px,0 0}}

/* Headings & text */
.ar-site .ar-eyebrow .elementor-heading-title{display:flex;align-items:center;gap:12px;font-family:var(--ar-mono);font-size:12px;font-weight:500;font-stretch:100%;letter-spacing:.16em;line-height:1.4;text-transform:uppercase;color:var(--ar-red-text)}
.ar-site .ar-eyebrow .elementor-heading-title::before{content:"";width:28px;height:1.5px;background:currentColor;flex:none}
.ar-site .ar-dark .ar-eyebrow .elementor-heading-title{color:var(--ar-red-soft)}
.ar-site .ar-cta .ar-eyebrow .elementor-heading-title{color:#fff}
.ar-site .ar-h1 .elementor-heading-title{font-size:clamp(42px,7.6vw,110px);font-stretch:110%;font-weight:800;letter-spacing:-.042em;line-height:.93}
.ar-site .ar-h2 .elementor-heading-title{font-size:clamp(38px,6.4vw,92px);font-stretch:110%;font-weight:800;letter-spacing:-.042em;line-height:.93}
.ar-site .ar-h2--xl .elementor-heading-title{font-size:clamp(46px,10.4vw,150px)}
.ar-site .ar-h2--md .elementor-heading-title{font-size:clamp(36px,5.8vw,84px)}
.ar-site .ar-h3 .elementor-heading-title{font-size:clamp(26px,3.2vw,46px);font-stretch:108%;letter-spacing:-.04em;line-height:1}
.ar-site .ar-h3--sm .elementor-heading-title{font-size:clamp(21px,2.1vw,30px);font-weight:700;letter-spacing:-.03em;line-height:1.12}
.ar-site .elementor-heading-title em{font-family:var(--ar-serif);font-style:italic;font-weight:400;font-stretch:100%;letter-spacing:-.025em;font-size:1.13em;line-height:.9;color:var(--ar-red)}
.ar-site .ar-dark .elementor-heading-title em{color:var(--ar-red-soft)}
.ar-site .ar-cta .elementor-heading-title em{color:var(--ar-navy-950)}
.ar-site .elementor-heading-title .ar-red,.ar-red{color:var(--ar-red)}
.ar-site .ar-statement .elementor-heading-title{font-size:clamp(28px,3.96vw,57px);font-stretch:100%;font-weight:600;letter-spacing:-.034em;line-height:1.09;text-wrap:pretty}
.ar-site .ar-statement .ar-dim{color:#8496A0}
.ar-pill{display:inline-block;width:1.96em;height:.95em;border-radius:999px;vertical-align:-.12em;margin-inline:.1em;background-repeat:no-repeat;background-position:center,center;background-size:.36em auto,cover}
.ar-pill--play{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='%23fff'%3E%3Cpath d='M2 1l9 5-9 5z'/%3E%3C/svg%3E"),linear-gradient(120deg,#F0505B,#C22E3D)}
.ar-pill--spark{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M12 2l2.2 6.8L21 11l-6.8 2.2L12 20l-2.2-6.800L3 11l6.8-2.200z'/%3E%3C/svg%3E"),linear-gradient(120deg,#12506F,#062030)}
.ar-site .ar-lede{font-size:clamp(17px,1.4vw,20px);line-height:1.5;color:var(--ar-ink-2)}
.ar-site .ar-dark .ar-lede{color:var(--ar-mist-2)}
.ar-site .ar-text{font-size:clamp(16px,1.25vw,18px);line-height:1.5;color:var(--ar-ink-2)}
.ar-site .ar-dark .ar-text{color:var(--ar-mist-2)}
.ar-site .ar-small{font-size:14.5px;color:var(--ar-mist)}

/* Buttons (native Button widget). Default = brand red pill; classes switch the variant. */
.ar-site .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:0 30px;border-radius:999px;border:1.5px solid transparent;background:var(--ar-red-btn);color:#fff;fill:#fff;font-family:var(--ar-font);font-weight:700;font-size:16px;line-height:1.1;letter-spacing:-.005em;white-space:nowrap;box-shadow:0 18px 40px -14px rgba(230,61,73,.75);transition:transform .2s ease,background-color .2s ease,border-color .2s ease}
.ar-site .elementor-button:hover,.ar-site .elementor-button:focus{background:#C92A37;color:#fff;transform:translateY(-2px)}
.ar-site .elementor-button .elementor-button-content-wrapper{align-items:center;gap:14px}
.ar-site .ar-btn--arrow .elementor-button-text::after{content:"";display:inline-block;width:18px;height:18px;margin-inline-start:14px;vertical-align:-3px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
[dir=rtl] .ar-btn--arrow .elementor-button-text::after{transform:scaleX(-1)}
.ar-site .ar-btn--ghost .elementor-button{background:transparent;border-color:rgba(255,255,255,.34);color:#fff;box-shadow:none}
.ar-site .ar-btn--ghost .elementor-button:hover{background:rgba(255,255,255,.08);border-color:#fff}
.ar-site .ar-cta .ar-btn--ghost .elementor-button{border-color:rgba(255,255,255,.6)}
.ar-site .ar-btn--ink .elementor-button{background:var(--ar-navy-950);box-shadow:0 30px 50px -18px rgba(4,22,33,.7)}
.ar-site .ar-btn--ink .elementor-button:hover{background:var(--ar-navy)}
.ar-site .ar-btn--line .elementor-button{background:transparent;border-color:var(--ar-line-l);color:var(--ar-ink);box-shadow:none}
.ar-site .ar-btn--line .elementor-button:hover{border-color:var(--ar-ink);color:var(--ar-ink)}
.ar-site .ar-btn--lg .elementor-button{min-height:76px;padding:0 42px;font-size:19px}

/* About: fact columns */
.ar-site .ar-facts{border-top:1px solid var(--ar-line-l)}
.ar-site .ar-fact .elementor-icon-box-title{font-size:19px;font-stretch:100%;font-weight:700;letter-spacing:-.015em;line-height:1.25;margin-bottom:8px}
.ar-site .ar-fact .elementor-icon-box-description{font-size:15.5px;line-height:1.5;color:var(--ar-ink-2)}
.ar-site .ar-fact.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:start}

/* Why Al Raya: numbered differentiators (numbers come from a CSS counter, so reordering renumbers) */
.ar-site .ar-why{counter-reset:ar-why}
.ar-site .ar-why .elementor-widget-icon-box{counter-increment:ar-why;display:grid;grid-template-columns:clamp(64px,7.6vw,110px) minmax(0,1fr);gap:10px;padding-block:clamp(22px,2.4vw,34px);border-top:1px solid var(--ar-line-l);width:100%}
.ar-site .ar-why .elementor-widget-icon-box:last-child{border-bottom:1px solid var(--ar-line-l)}
.ar-site .ar-why .elementor-widget-icon-box::before{content:counter(ar-why,decimal-leading-zero);font-stretch:118%;font-weight:800;font-size:clamp(40px,4.4vw,64px);line-height:.9;letter-spacing:-.05em;color:var(--ar-red)}
.ar-site .ar-why .elementor-widget-icon-box .elementor-icon-box-wrapper{display:block;text-align:start}
.ar-site .ar-why .elementor-icon-box-title{font-size:clamp(22px,2.1vw,30px);font-stretch:106%;font-weight:800;letter-spacing:-.035em;line-height:1.05}
.ar-site .ar-why .elementor-icon-box-description{margin-top:10px;max-width:470px;font-size:16.5px;line-height:1.5;color:var(--ar-ink-2)}

/* "Our main goal" card */
.ar-site .ar-goal{position:relative;overflow:hidden;border-radius:26px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 900'%3E%3Cpath d='M170 150 L760 450 L170 750 Z' fill='%23E63D49' stroke='%23E63D49' stroke-width='150' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(140deg,#0F4764,#051B28);background-repeat:no-repeat;background-position:right -96px top -46px,0 0;background-size:330px 330px,cover;color:#fff}
[dir=rtl] .ar-goal{background-position:left -96px top -46px,0 0}
.ar-site .ar-goal .ar-eyebrow .elementor-heading-title{color:var(--ar-red-soft)}
.ar-site .ar-goal .ar-eyebrow .elementor-heading-title::before{display:none}
.ar-site .ar-goal .ar-goal__quote .elementor-heading-title{max-width:232px;font-size:25px;font-stretch:108%;font-weight:800;letter-spacing:-.035em;line-height:1.08}

/* AI Search: capability rows */
.ar-site .ar-caps .elementor-widget-icon-box{padding-block:28px;border-top:1px solid var(--ar-line-d);width:100%}
.ar-site .ar-caps .elementor-widget-icon-box:last-child{border-bottom:1px solid var(--ar-line-d)}
.ar-site .ar-caps .elementor-widget-icon-box .elementor-icon-box-wrapper{display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px;text-align:start;align-items:start}
.ar-site .ar-caps .elementor-widget-icon-box .elementor-icon-box-content{text-align:start}
.ar-site .ar-caps .elementor-icon-box-icon{margin:0}
.ar-site .ar-caps .elementor-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff;fill:#fff;font-size:18px}
.ar-site .ar-caps .elementor-icon svg{width:18px;height:18px;fill:#fff}
.ar-site .ar-caps .elementor-icon-box-title{font-size:clamp(21px,1.8vw,25px);font-stretch:106%;font-weight:800;letter-spacing:-.03em;line-height:1.1}
.ar-site .ar-caps .elementor-icon-box-description{margin-top:8px;font-size:16px;line-height:1.5;color:#B9CBD6}
.ar-site .ar-note{position:relative;padding-inline-start:32px;max-width:520px;font-size:14.5px;color:var(--ar-mist)}
.ar-site .ar-note::before{content:"";position:absolute;inset-inline-start:0;top:2px;width:18px;height:18px;background:var(--ar-mist);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.2 8-8 9-4.800-1-8-4.500-8-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.2 8-8 9-4.800-1-8-4.500-8-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E") center/contain no-repeat}
.ar-site .ar-terms{border-top:1px solid var(--ar-line-d);padding-top:26px;width:100%}
.ar-site .ar-terms .elementor-icon-list-items{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 28px;list-style:none;margin:0;padding:0}
.ar-site .ar-terms .elementor-icon-list-item{margin:0;padding:0}
.ar-site .ar-terms .elementor-icon-list-item::after{display:none}
.ar-site .ar-terms .elementor-icon-list-text{padding:0;font-family:var(--ar-mono);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#C9D8E1}

/* Closing CTA: contact lines (rendered by the [alraya_company] shortcode) */
.ar-contactline{display:block}
.ar-site .ar-contact .elementor-heading-title,.ar-site .ar-contact{font-stretch:106%;font-weight:700;font-size:clamp(19px,1.7vw,24px);letter-spacing:-.02em;line-height:1.2}
.ar-site .ar-contact a{display:inline-block;padding-block:9px;text-decoration:none}
.ar-site .ar-contact small,.ar-ctaband__contact dt{display:block;margin-bottom:8px;font-family:var(--ar-mono);font-size:12px;font-weight:500;font-stretch:100%;letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.ar-ctaband{padding-block:clamp(72px,7.8vw,112px) clamp(68px,7.2vw,104px)}
.ar-ctaband__title{font-size:clamp(46px,10.4vw,150px);font-stretch:110%;letter-spacing:-.042em;line-height:.93}
.ar-ctaband__title em{font-size:1.14em;color:var(--ar-navy-950)}
.ar-ctaband__row{display:flex;flex-wrap:wrap;align-items:center;gap:28px 40px;margin-top:clamp(36px,4.4vw,64px)}
.ar-ctaband__contact{display:flex;flex-wrap:wrap;gap:20px 44px;margin:0;margin-inline-start:auto}
.ar-ctaband__contact dd{margin:0;font-stretch:106%;font-weight:700;font-size:clamp(19px,1.7vw,24px);letter-spacing:-.02em}
.ar-ctaband__contact a{display:inline-block;padding-block:9px;text-decoration:none}
.ar-ctaband__contact a:hover,.ar-cta a:hover{color:var(--ar-navy-950)}
@media (max-width:767px){.ar-ctaband__contact{margin-inline-start:0}}

/* Generic two-column split used by inner pages */
.ar-site .ar-rule{border-top:1px solid var(--ar-line-l)}
.ar-site .ar-dark .ar-rule{border-color:var(--ar-line-d)}

/* 8 ── Motion ───────────────────────────────────────────────────────────── */
.ar-js-reveal .ar-reveal,.ar-js-reveal .ar-svc,.ar-js-reveal .ar-pj,.ar-js-reveal .ar-card,.ar-js-reveal .ar-process__step{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.ar-js-reveal .is-in{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* 9 ── Print ────────────────────────────────────────────────────────────── */
@media print{.ar-header,.ar-footer,.ar-cta{display:none}body{background:#fff}}

/* 10 ── Inner-page helpers ─────────────────────────────────────────────── */
.ar-site .ar-push-end{--width:auto;margin-inline-start:auto}
@media (max-width:767px){.ar-site .ar-push-end{margin-inline-start:0}}
.ar-site .ar-figure .elementor-heading-title{font-stretch:112%;font-weight:800;font-size:clamp(48px,6.4vw,92px);letter-spacing:-.045em;line-height:.95}
.ar-site .ar-contact--stack{padding-block:18px;border-top:1px solid var(--ar-line-l);width:100%}
.ar-site .ar-contact--stack small{color:var(--ar-red-text);opacity:1}
.ar-site .ar-dark .ar-contact--stack{border-color:var(--ar-line-d)}
/* Notes meant for editors only: visible while editing, hidden on the public site. */
.ar-site:not(.elementor-editor-active) .ar-editor-note{display:none}
