/* =========================================================
   v79 — Tighten: everything two-three steps smaller, no dead gaps,
   balanced line endings. Loaded last on every page.
   ========================================================= */
:root{
  --bar-h:80px;
  --bar-logo-h:44px;
  --bar-link:15px;
  --bar-link-ar:18px;
  --bar-gap:26px;
  --bar-cta-h:44px;
  --bar-cta-font:14px;
  --bar-cta-font-ar:16.5px;
}
.site-header .brand-text{font-size:20px!important}
.site-header .lang-toggle{width:36px!important;height:36px!important}
.site-header .main-nav .nav-cta{--pill-h:44px}

/* nicer line endings everywhere */
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}

/* ---------- Services + service detail heroes ---------- */
@media (min-width:761px){
  body .svx-hero .qs-visual-frame,body.rtl .svx-hero .qs-visual-frame{min-height:520px!important}
  body .svx-hero .qs-visual-copy,body.rtl .svx-hero .qs-visual-copy{flex:1 1 auto;display:flex!important;flex-direction:column;justify-content:center;padding:48px 0 36px!important}
}
body .svx-hero h1{font-size:clamp(30px,3.2vw,46px)!important;line-height:1.15!important;margin-bottom:14px!important}
html[dir="rtl"] body .svx-hero h1{font-size:clamp(32px,3.4vw,50px)!important;line-height:1.32!important}
body .svx-hero .qs-visual-eyebrow{font-size:13px!important;margin-bottom:12px!important}
html[dir="rtl"] body .svx-hero .qs-visual-eyebrow{font-size:16px!important}
body .svx-hero .qs-visual-lead{font-size:16px!important;line-height:1.7!important;margin-bottom:24px!important}
html[dir="rtl"] body .svx-hero .qs-visual-lead{font-size:18px!important;line-height:1.8!important}
body .svx-hero .qs-visual-copy .qs-visual-lead{max-width:520px!important}
html[dir="rtl"] body .svx-hero .qs-visual-copy .qs-visual-lead{max-width:500px!important}
body .svx-hero .qs-visual-cta{--pill-h:50px;font-size:15px!important}
html[dir="rtl"] body .svx-hero .qs-visual-cta{font-size:16.5px!important}
body .svx-hero .qs-visual-bottom-item{min-height:64px!important;font-size:15px!important;padding:10px 16px!important}
html[dir="rtl"] body .svx-hero .qs-visual-bottom-item{font-size:16px!important}
body .svx-hero .qs-visual-bottom-icon{width:40px!important;height:40px!important}
body .svx-hero .qs-visual-bottom,body .svx-hero .qs-visual-service-links{margin-bottom:28px!important}
body .svx-hero .qs-visual-service-link{min-height:56px!important;padding:10px 14px!important}
body .svx-hero .qs-visual-service-title{font-size:14px!important}
html[dir="rtl"] body .svx-hero .qs-visual-service-title{font-size:15.5px!important}
body .svx-hero .qs-visual-service-icon{width:34px!important;height:34px!important}

/* ---------- Services list ---------- */
body .svx-list{padding:96px 0 90px!important}
body .svx-list .section-head{margin-bottom:56px!important}
body .svx-list .section-head h2{font-size:clamp(28px,2.8vw,40px)!important;line-height:1.2!important}
html[dir="rtl"] body .svx-list .section-head h2{font-size:clamp(30px,3vw,42px)!important;line-height:1.4!important}
body .svx-list .services-overview-lead{font-size:16.5px!important;max-width:640px}
html[dir="rtl"] body .svx-list .services-overview-lead{font-size:18px!important}
body .svx-list .services-flat-grid{gap:56px 24px!important}
body .svx-list .detail-card{padding:52px 26px 24px!important}
body .svx-list .detail-card h2{font-size:21px!important;line-height:1.3!important}
html[dir="rtl"] body .svx-list .detail-card h2{font-size:22px!important;line-height:1.45!important}
body .svx-list .detail-card p,body .svx-list .detail-card li{font-size:14.5px!important}
html[dir="rtl"] body .svx-list .detail-card p,html[dir="rtl"] body .svx-list .detail-card li{font-size:16px!important}
body .svx-list .detail-card .headline{font-size:15.5px!important}
html[dir="rtl"] body .svx-list .detail-card .headline{font-size:17px!important}
body .svx-list .svx-ic{width:66px;height:66px;top:-33px}
body .svx-list .svx-ic svg{width:40px;height:40px}
body .svx-more{font-size:14px!important;padding:6px 6px 6px 18px!important;gap:10px}
html[dir="rtl"] body .svx-more{font-size:15.5px!important;padding:6px 18px 6px 6px!important}
body .svx-more::after{width:30px!important;height:30px!important}

/* ---------- Service detail body ---------- */
body .svx-detail{padding:100px 0 80px!important}
body .svx-detail .service-page-copy h2{font-size:clamp(26px,2.4vw,34px)!important;line-height:1.25!important}
html[dir="rtl"] body .svx-detail .service-page-copy h2{font-size:clamp(28px,2.6vw,36px)!important;line-height:1.45!important}
body .svx-detail .service-page-copy p,body .svx-detail .service-page-copy li{font-size:15.5px!important;line-height:1.75!important}
html[dir="rtl"] body .svx-detail .service-page-copy p,html[dir="rtl"] body .svx-detail .service-page-copy li{font-size:17px!important;line-height:1.85!important}
body .svx-detail .service-page-copy h3{font-size:18px!important}
html[dir="rtl"] body .svx-detail .service-page-copy h3{font-size:20px!important}

/* footer after the wave: less empty space */
body .site-footer.svx-foot,body .site-footer.has-top-wave{padding-top:88px!important}

/* ---------- About ---------- */
body .about-story h2{font-size:36px!important;line-height:1.18!important}
html[dir="rtl"] body .about-story h2{font-size:40px!important;line-height:1.4!important}
body .about-story-copy p:not(.about-story-eyebrow){font-size:16px!important;line-height:1.75!important;max-width:600px}
html[dir="rtl"] body .about-story-copy p:not(.about-story-eyebrow){font-size:18px!important;line-height:1.9!important}
body .qs-visual-about .qs-visual-copy h1{font-size:clamp(30px,3.4vw,48px)!important}
html[dir="rtl"] body .qs-visual-about .qs-visual-copy h1{font-size:clamp(32px,3.6vw,52px)!important}

@media (max-width:760px){
  body .svx-hero h1{font-size:30px!important}
  html[dir="rtl"] body .svx-hero h1{font-size:33px!important}
  body .svx-list{padding:70px 0 70px!important}
  body .svx-detail{padding:70px 0 60px!important}
  body .site-footer.svx-foot,body .site-footer.has-top-wave{padding-top:64px!important}
  body .about-story h2{font-size:28px!important}
  html[dir="rtl"] body .about-story h2{font-size:31px!important}
}

/* =========================================================
   Services dropdown: opens on hover and stays open while the pointer
   travels into it (no gap, short close delay). The arrow next to
   "Services" rotates by itself; clicking it pins the menu open.
   Two-column panel with icons.
   ========================================================= */
@media (min-width:901px){
  .site-header .nav-services{position:relative}
  .site-header .nav-services::after{content:"";position:absolute;left:-20px;right:-20px;top:100%;height:26px}
  .site-header .nav-services-menu{top:calc(100% + 22px)!important;width:580px!important;max-height:none!important;overflow:visible!important;
    display:grid!important;grid-template-columns:1fr 1fr;gap:4px;padding:12px!important;border-radius:16px!important;
    background:linear-gradient(160deg,#073d68,#052a49)!important;border:1px solid rgba(127,208,245,.22)!important;
    box-shadow:0 26px 50px -18px rgba(0,8,20,0.45)!important;transition:opacity .18s ease,transform .18s ease,visibility .18s}
  .site-header .nav-services-menu::before{content:"";position:absolute;top:-7px;left:50%;width:14px;height:14px;transform:translateX(-50%) rotate(45deg);
    background:#073d68;border-left:1px solid rgba(127,208,245,.22);border-top:1px solid rgba(127,208,245,.22)}
  /* hover alone no longer decides; JS adds .open with a close delay */
  .site-header .nav-services:hover .nav-services-menu,.site-header .nav-services:focus-within .nav-services-menu{opacity:0;visibility:hidden;pointer-events:none}
  .site-header .nav-services.open .nav-services-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important}
  .site-header .nav-services-menu a{display:flex!important;align-items:center;gap:10px;padding:10px 12px!important;border-radius:10px!important;font-size:14px!important;line-height:1.3!important;font-weight:600}
  html[dir="rtl"] .site-header .nav-services-menu a{font-size:15.5px!important}
  .site-header .nav-services-menu .nav-svc-ic{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
    background:radial-gradient(circle at 40% 32%,#2a8fc4 0%,#0b6a9b 55%,#05486c 100%);box-shadow:inset 0 2px 3px rgba(255,255,255,0.12),0 0 0 1.5px rgba(249,199,33,0.33)}
  .site-header .nav-services-menu .nav-svc-ic svg{width:17px;height:17px;fill:none;stroke:#F9C721;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .site-header .nav-services-menu a:hover{background:rgba(249,199,33,.12)!important}
  .site-header .nav-services-menu .nav-services-all{grid-column:1/-1;justify-content:center;margin-top:6px!important}
  .site-header .nav-services-toggle span{display:inline-block;transition:transform .2s ease}
  .site-header .nav-services.open .nav-services-toggle span{transform:rotate(180deg)}
}
@media (min-width:761px){body .svx-hero .qs-visual-copy>*{align-self:flex-start}}
body .qs-visual-about .qs-visual-copy h1{font-size:clamp(28px,3vw,42px)!important}
html[dir="rtl"] body .qs-visual-about .qs-visual-copy h1{font-size:clamp(30px,3.2vw,46px)!important}

/* v83 — Shadow CEO as a branded card inside the Services menu */
.nav-sc-card{display:flex!important;align-items:center;gap:12px;margin-top:8px;padding:12px 14px!important;border-radius:12px!important;text-decoration:none;
  background:linear-gradient(120deg,#0b0d10,#15171b 60%,#0b0d10)!important;border:1px solid rgba(230,197,143,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.03),0 10px 20px -12px rgba(0,0,0,0.42);transition:border-color .2s,transform .2s}
.nav-sc-card:hover{border-color:#e6c58f!important;transform:translateY(-1px)}
.nav-sc-card::before{display:none!important}
.nav-sc-mark{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font:700 17px/1 "Playfair Display",Georgia,serif;color:#e6c58f;
  background:radial-gradient(circle at 40% 30%,#2a241a,#0e0c09);box-shadow:inset 0 0 0 1px rgba(230,197,143,0.36)}
.nav-sc-mark i{font-style:normal;margin-inline-start:-.25em;position:relative;top:.25em}
html[dir="rtl"] .nav-sc-mark{direction:ltr}
.nav-sc-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.nav-sc-txt b{font:700 15px/1.1 "Playfair Display",Georgia,serif!important;letter-spacing:.06em;color:#fff;direction:ltr;text-align:start}
html[dir="rtl"] .nav-sc-txt b{text-align:right}
.nav-sc-txt small{font:500 12px/1.4 Inter,Arial,sans-serif;color:#d8cdb8}
html[dir="rtl"] .nav-sc-txt small{font:600 13.5px/1.4 "Somar Sans","IBM Plex Sans Arabic",sans-serif}
.nav-sc-go{margin-inline-start:auto;flex:none;width:28px;height:28px;border-radius:50%;
  background:#e6c58f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a1208' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center/14px no-repeat}
html[dir="rtl"] .nav-sc-go{transform:scaleX(-1)}
@media (min-width:901px){.site-header .nav-services-menu .nav-sc-card{grid-column:1/-1}}
/* services menu on phones/tablets: same icons, sized for touch */
.site-header .nav-services-menu .nav-svc-ic{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 40% 32%,#2a8fc4 0%,#0b6a9b 55%,#05486c 100%);box-shadow:0 0 0 1.5px rgba(249,199,33,0.33)}
.site-header .nav-services-menu .nav-svc-ic svg{width:16px;height:16px;fill:none;stroke:#F9C721;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:900px){
  .site-header .nav-services-menu a{display:flex!important;align-items:center;gap:10px;padding:10px 12px!important;font-size:14.5px!important;line-height:1.35!important}
  html[dir="rtl"] .site-header .nav-services-menu a{font-size:16px!important}
  .site-header .nav-services-menu .nav-sc-card{margin:8px 0}
  .site-header .nav-services-menu .nav-services-all{justify-content:center}
}
@media (max-width:900px){
  .site-header .main-nav .nav-services{display:block!important;width:100%!important;position:static!important}
  .site-header .main-nav .nav-services::after{display:none!important}
  .site-header .main-nav .nav-services>a{justify-content:center}
  .site-header .main-nav .nav-services-menu{position:static!important;left:auto!important;right:auto!important;transform:none!important;
    width:100%!important;max-width:none!important;margin:8px 0 0!important;display:none!important;grid-template-columns:1fr!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;padding:8px!important;border-radius:14px!important;
    background:#052a49!important;box-shadow:inset 0 0 0 1px rgba(127,208,245,0.108)!important}
  .site-header .main-nav .nav-services-menu::before{display:none!important}
  .site-header .main-nav .nav-services.open .nav-services-menu{display:grid!important}
  .site-header .main-nav .nav-services-menu a{text-align:start!important;justify-content:flex-start!important}
  .site-header .main-nav .nav-services-menu .nav-services-all{justify-content:center!important}
  .nav-sc-txt small{font-size:12px}
}
.nav-sc-mark{white-space:nowrap;direction:ltr;letter-spacing:-.02em}
.nav-sc-mark i{display:inline}
@media (max-width:900px){
  .site-header .main-nav .nav-services{display:flex!important;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px}
  .site-header .main-nav .nav-services>a{flex:0 0 auto}
  .site-header .main-nav .nav-services-toggle{flex:0 0 auto}
  .site-header .main-nav .nav-services-menu{flex:0 0 100%}
}
.nav-sc-mark{font-size:15px!important}.nav-sc-mark i{margin-inline-start:-.15em!important;top:.2em!important;position:relative}
.nav-sc-mark{display:flex!important;align-items:center;justify-content:center}.nav-sc-mark i{display:inline-block!important}
/* v88 — About story like the reference: picture half / text half, larger airy text */
@media (min-width:901px){
  body .about-story{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;min-height:600px!important}
  body .about-story-art{min-height:600px!important}
  body .about-story-copy{max-width:720px!important;padding-block:64px 56px!important;padding-inline:clamp(28px,4.5vw,72px) clamp(20px,2.4vw,40px)!important}
  body .about-story-copy p:not(.about-story-eyebrow){max-width:none!important;font-size:18.5px!important;line-height:1.9!important;margin-bottom:22px!important}
  html[dir="rtl"] body .about-story-copy p:not(.about-story-eyebrow){font-size:21px!important;line-height:2.1!important}
  html[dir="rtl"] body .about-story h2{font-size:44px!important}
  body .about-story h2{font-size:40px!important}
}
/* v87 — real Shadow CEO monogram everywhere */
img.sc-logo{display:block;width:72%;height:72%;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,0.3))}
.nav-sc-mark img.sc-logo{width:76%;height:76%}
