/* =========================================================
   CleverFit ERP — Global Stylesheet
   Brand: Red #E4022B · Ink #14151A · Steel #6B7280
   Supports LTR (English) & RTL (Arabic)
   ========================================================= */

:root{
  --red:#E4022B;
  --red-dark:#B00020;
  --red-soft:#ff2e52;
  --ink:#14151A;
  --ink-2:#1f2129;
  --ink-3:#2a2d38;
  --steel:#6B7280;
  --mist:#f4f6fb;
  --line:#e7eaf1;
  --white:#ffffff;
  --green:#25D366;
  --radius:16px;
  --radius-sm:10px;
  --shadow-sm:0 4px 14px rgba(20,21,26,.06);
  --shadow-md:0 14px 40px rgba(20,21,26,.10);
  --shadow-lg:0 30px 70px rgba(20,21,26,.18);
  --maxw:1340px;
  --header-h:76px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --font:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;
  --font-ar:"Cairo","Segoe UI",Tahoma,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font);
  color:var(--ink);
  background:var(--white);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body[dir="rtl"]{font-family:var(--font-ar)}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}

.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}
section{position:relative}
.sec-pad{padding:96px 0}
.sec-pad-sm{padding:64px 0}

/* ---------- Typography ---------- */
h1,h2,h3,h4{line-height:1.15;font-weight:800;letter-spacing:-.02em}
h1{font-size:clamp(2.2rem,5vw,3.6rem)}
h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
h3{font-size:1.35rem}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--red);background:rgba(228,2,43,.08);
  padding:7px 14px;border-radius:999px;margin-bottom:18px;
}
.lead{font-size:1.12rem;color:var(--steel);max-width:640px}
.sec-head{text-align:center;max-width:720px;margin:0 auto 56px}
.sec-head .lead{margin:14px auto 0}
.text-center{text-align:center}
.gradient-text{background:linear-gradient(100deg,var(--red),var(--red-soft));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-weight:700;font-size:.98rem;padding:14px 26px;border-radius:999px;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;
  white-space:nowrap;
}
.btn svg{width:18px;height:18px}
.btn-primary{background:linear-gradient(120deg,var(--red),var(--red-dark));color:#fff;box-shadow:0 10px 26px rgba(228,2,43,.34)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(228,2,43,.42)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{transform:translateY(-3px);background:#000}
.btn-ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--ink);transform:translateY(-3px)}
.btn-wa{background:var(--green);color:#fff}
.btn-wa:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(37,211,102,.4)}
.btn-lg{padding:17px 34px;font-size:1.05rem}
.btn-block{width:100%}

/* ---------- Header ---------- */
.site-header{
  position:fixed;top:0;inset-inline:0;z-index:900;height:var(--header-h);
  background:rgba(255,255,255,.85);backdrop-filter:saturate(160%) blur(14px);
  border-bottom:1px solid transparent;transition:.3s var(--ease);
}
.site-header.scrolled{box-shadow:var(--shadow-sm);border-bottom-color:var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%}
.brand{display:flex;align-items:center;gap:10px}
.brand img{height:44px;width:auto}
.nav{display:flex;align-items:center;gap:4px}
.nav a{
  padding:10px 16px;border-radius:999px;font-weight:600;font-size:.96rem;color:var(--ink-2);
  transition:.2s;position:relative;
}
.nav a:hover{color:var(--red);background:var(--mist)}
.nav a.active{color:var(--red)}
.header-actions{display:flex;align-items:center;gap:10px}

/* language switch */
.lang-switch{position:relative}
.lang-btn{
  display:flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;
  border:1.5px solid var(--line);font-weight:700;font-size:.9rem;color:var(--ink-2);background:#fff;
}
.lang-btn:hover{border-color:var(--red);color:var(--red)}
.lang-btn svg{width:16px;height:16px}
.lang-menu{
  position:absolute;inset-inline-end:0;top:calc(100% + 10px);background:#fff;border:1px solid var(--line);
  border-radius:14px;box-shadow:var(--shadow-md);padding:8px;min-width:190px;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s var(--ease);
}
.lang-switch.open .lang-menu{opacity:1;visibility:visible;transform:translateY(0)}
.lang-menu button{
  display:flex;align-items:center;gap:11px;width:100%;padding:11px 12px;border-radius:9px;
  font-weight:600;color:var(--ink-2);text-align:start;
}
.lang-menu button:hover{background:var(--mist)}
.lang-menu button.active{color:var(--red);background:rgba(228,2,43,.06)}
.lang-menu .flag{font-size:1.15rem}

.burger{display:none;flex-direction:column;gap:5px;padding:8px}
.burger span{width:24px;height:2.5px;background:var(--ink);border-radius:2px;transition:.3s}
.burger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ---------- Hero ---------- */
.hero{
  position:relative;padding:calc(var(--header-h) + 70px) 0 90px;
  background:radial-gradient(1100px 520px at 80% -10%,rgba(228,2,43,.10),transparent 60%),
             linear-gradient(180deg,rgba(255,255,255,.62) 0%,rgba(244,246,251,.74) 100%),
             url('../img/erp-pattern.svg');
  background-repeat:no-repeat,no-repeat,repeat;
  background-size:auto,auto,340px 340px;
  overflow:hidden;
}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero h1 span{display:inline}
.hero .lead{margin:22px 0 32px}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px}
.hero-trust{display:flex;gap:26px;margin-top:34px;flex-wrap:wrap}
.hero-trust .t{display:flex;flex-direction:column}
.hero-trust .t b{font-size:1.7rem;color:var(--ink);font-weight:800}
.hero-trust .t span{font-size:.85rem;color:var(--steel)}
.hero-visual{position:relative}
.hero-visual img{border-radius:22px;box-shadow:var(--shadow-lg);width:100%;object-fit:cover;aspect-ratio:5/4}
.hero-badge{
  position:absolute;background:#fff;border-radius:14px;box-shadow:var(--shadow-md);
  padding:14px 18px;display:flex;align-items:center;gap:12px;font-weight:700;
}
.hero-badge .ic{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:#fff;background:var(--red)}
.hero-badge.b1{inset-block-start:22px;inset-inline-start:-26px}
.hero-badge.b2{inset-block-end:26px;inset-inline-end:-22px;background:var(--ink);color:#fff}
.hero-badge.b2 .ic{background:var(--green)}
.hero-badge small{display:block;font-weight:500;font-size:.72rem;color:var(--steel)}
.hero-badge.b2 small{color:#b8bcc9}

/* marquee logos */
.trustbar{padding:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.trustbar p{text-align:center;color:var(--steel);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin-bottom:20px}
.logo-row{display:flex;flex-wrap:wrap;justify-content:center;gap:44px;align-items:center;opacity:.7}
.logo-row span{font-weight:800;font-size:1.25rem;color:var(--steel);letter-spacing:-.02em}

/* ---------- Feature cards ---------- */
.grid{display:grid;gap:26px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;
  transition:.3s var(--ease);position:relative;overflow:hidden;
}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:transparent}
.card .ic{
  width:56px;height:56px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;
  background:linear-gradient(135deg,rgba(228,2,43,.12),rgba(228,2,43,.03));color:var(--red);
}
.card .ic svg{width:28px;height:28px}
.card h3{margin-bottom:9px}
.card p{color:var(--steel);font-size:.98rem}
.card .more{display:inline-flex;align-items:center;gap:6px;margin-top:16px;color:var(--red);font-weight:700;font-size:.92rem}
.card .more svg{width:15px;height:15px;transition:.2s}
.card:hover .more svg{transform:translateX(4px)}
body[dir="rtl"] .card:hover .more svg{transform:translateX(-4px)}

/* ---------- Split feature ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.split.reverse .split-media{order:2}
.split-media img{border-radius:20px;box-shadow:var(--shadow-md);width:100%;aspect-ratio:4/3;object-fit:cover}
.check-list{margin-top:24px;display:grid;gap:14px}
.check-list li{display:flex;gap:12px;align-items:flex-start;color:var(--ink-2);font-weight:500}
.check-list .ck{flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:rgba(37,211,102,.14);color:#1a9e4b;display:grid;place-items:center;margin-top:2px}
.check-list .ck svg{width:14px;height:14px}

/* ---------- Stats band ---------- */
.stats{background:var(--ink);color:#fff}
.stats .grid-4{gap:20px}
.stat{ text-align:center;padding:20px}
.stat b{display:block;font-size:2.6rem;font-weight:800;color:#fff;line-height:1}
.stat span{color:#aab0c0;font-size:.95rem;margin-top:8px;display:block}
.stat .plus{color:var(--red-soft)}

/* ---------- Steps ---------- */
.steps{counter-reset:step}
.step{position:relative;padding-inline-start:0}
.step .num{width:46px;height:46px;border-radius:12px;background:var(--red);color:#fff;font-weight:800;display:grid;place-items:center;margin-bottom:16px;font-size:1.1rem}
.step h3{margin-bottom:8px}
.step p{color:var(--steel);font-size:.96rem}

/* ---------- Pricing ---------- */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:stretch}
.price{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 30px;display:flex;flex-direction:column;transition:.3s var(--ease)}
.price:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}
.price.pop{border:2px solid var(--red);box-shadow:var(--shadow-md);position:relative}
.price.pop::before{content:attr(data-badge);position:absolute;top:-13px;inset-inline-start:50%;transform:translateX(-50%);background:var(--red);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:6px 16px;border-radius:999px}
body[dir="rtl"] .price.pop::before{transform:translateX(50%)}
.price h3{font-size:1.2rem}
.price .amt{font-size:2.6rem;font-weight:800;margin:14px 0 2px}
.price .amt small{font-size:.9rem;color:var(--steel);font-weight:600}
.price .desc{color:var(--steel);font-size:.92rem;min-height:44px}
.price ul{margin:22px 0;display:grid;gap:12px}
.price li{display:flex;gap:10px;align-items:flex-start;font-size:.94rem;color:var(--ink-2)}
.price li .ck{color:#1a9e4b;flex:0 0 18px}
.price li .ck svg{width:18px;height:18px}
.price .btn{margin-top:auto}

/* ---------- Testimonials ---------- */
.quote{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow-sm)}
.quote .stars{color:#f5a623;margin-bottom:12px;letter-spacing:2px}
.quote p{font-size:1.02rem;color:var(--ink-2);font-style:italic}
.quote .who{display:flex;align-items:center;gap:12px;margin-top:20px}
.quote .who .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;display:grid;place-items:center;font-weight:800}
.quote .who b{display:block;font-size:.95rem}
.quote .who span{font-size:.82rem;color:var(--steel)}

/* ---------- CTA band ---------- */
.cta-band{
  background:linear-gradient(120deg,var(--ink) 0%,#26060e 60%,var(--red-dark) 130%);
  color:#fff;border-radius:26px;padding:60px;text-align:center;position:relative;overflow:hidden;
}
.cta-band::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(228,2,43,.4),transparent 70%);top:-160px;inset-inline-end:-120px}
.cta-band h2{color:#fff;position:relative}
.cta-band p{color:#d7dae4;max-width:560px;margin:14px auto 30px;position:relative}
.cta-band .hero-cta{justify-content:center;position:relative}

/* ---------- FAQ / accordion ---------- */
.acc{max-width:820px;margin:0 auto;display:grid;gap:14px}
.acc-item{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.acc-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;font-weight:700;text-align:start;font-size:1.02rem}
.acc-q .pm{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--mist);display:grid;place-items:center;transition:.3s;color:var(--red);font-size:1.2rem}
.acc-item.open .acc-q .pm{transform:rotate(45deg);background:var(--red);color:#fff}
.acc-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease);color:var(--steel)}
.acc-a p{padding:0 24px 22px}

/* ---------- Contact / forms ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
.contact-info .ci{display:flex;gap:16px;align-items:flex-start;margin-bottom:26px}
.contact-info .ci .ic{width:48px;height:48px;border-radius:12px;background:rgba(228,2,43,.09);color:var(--red);display:grid;place-items:center;flex:0 0 48px}
.contact-info .ci b{display:block}
.contact-info .ci span{color:var(--steel);font-size:.95rem}
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow-sm)}
.field{margin-bottom:18px}
.field label{display:block;font-weight:600;font-size:.9rem;margin-bottom:7px}
.field .req{color:var(--red)}
.input,.select,.textarea{
  width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:11px;
  font-family:inherit;font-size:.97rem;background:#fff;transition:.2s;color:var(--ink);
}
.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 4px rgba(228,2,43,.1)}
.textarea{min-height:120px;resize:vertical}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-note{font-size:.82rem;color:var(--steel);margin-top:6px}

/* ---------- Footer ---------- */
.footer{background:var(--ink);color:#c4c9d6;padding:70px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.footer .brand{background:rgba(255,255,255,.95);padding:10px 16px;border-radius:14px;width:fit-content;box-shadow:0 8px 22px rgba(0,0,0,.30);border:1px solid rgba(255,255,255,.12)}
.footer .brand img{height:40px;filter:none}
.footer p{color:#9aa0b0;font-size:.94rem;margin-top:16px;max-width:300px}
.footer h4{color:#fff;font-size:.95rem;margin-bottom:18px;letter-spacing:.02em}
.footer li{margin-bottom:11px}
.footer a{color:#9aa0b0;font-size:.94rem;transition:.2s}
.footer a:hover{color:#fff}
.socials{display:flex;gap:12px;margin-top:22px}
.socials a{width:42px;height:42px;border-radius:11px;background:var(--ink-3);display:grid;place-items:center;color:#c4c9d6;transition:.25s}
.socials a:hover{background:var(--red);color:#fff;transform:translateY(-3px)}
.socials a svg{width:19px;height:19px}
.footer-bottom{border-top:1px solid var(--ink-3);margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.88rem;color:#8a90a0}
.footer-bottom a{color:#8a90a0}

/* ---------- Floating WhatsApp ---------- */
.wa-float{
  position:fixed;inset-block-end:26px;inset-inline-end:26px;z-index:800;
  width:60px;height:60px;border-radius:50%;background:var(--green);color:#fff;
  display:grid;place-items:center;box-shadow:0 12px 30px rgba(37,211,102,.5);
  animation:wapulse 2.4s infinite;transition:transform .25s;
}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:32px;height:32px}
@keyframes wapulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.5)}70%{box-shadow:0 0 0 18px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}

/* ---------- Modals ---------- */
.modal-overlay{
  position:fixed;inset:0;z-index:1000;background:rgba(15,16,22,.55);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;
  opacity:0;visibility:hidden;transition:.28s var(--ease);
}
.modal-overlay.open{opacity:1;visibility:visible}
.modal{
  background:#fff;border-radius:22px;width:100%;max-width:460px;max-height:92vh;overflow:auto;
  box-shadow:var(--shadow-lg);transform:translateY(24px) scale(.97);transition:.28s var(--ease);
}
.modal-overlay.open .modal{transform:translateY(0) scale(1)}
.modal-head{padding:28px 30px 6px;position:relative}
.modal-head .logo-mini{height:38px;margin-bottom:14px}
.modal-head h3{font-size:1.5rem}
.modal-head p{color:var(--steel);font-size:.94rem;margin-top:6px}
.modal-close{position:absolute;top:20px;inset-inline-end:20px;width:36px;height:36px;border-radius:50%;background:var(--mist);display:grid;place-items:center;color:var(--ink);font-size:1.2rem;transition:.2s}
.modal-close:hover{background:var(--red);color:#fff}
.modal-body{padding:18px 30px 30px}
.modal-tabs{display:flex;gap:6px;background:var(--mist);padding:5px;border-radius:12px;margin-bottom:22px}
.modal-tabs button{flex:1;padding:11px;border-radius:9px;font-weight:700;color:var(--steel);transition:.2s;font-size:.94rem}
.modal-tabs button.active{background:#fff;color:var(--red);box-shadow:var(--shadow-sm)}
.modal .form-alt{text-align:center;margin-top:18px;font-size:.9rem;color:var(--steel)}
.modal .form-alt a{color:var(--red);font-weight:700;cursor:pointer}
.divider{display:flex;align-items:center;gap:14px;color:var(--steel);font-size:.82rem;margin:20px 0}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line)}

/* toast */
.toast{
  position:fixed;inset-block-end:26px;inset-inline-start:50%;transform:translateX(-50%) translateY(30px);
  background:var(--ink);color:#fff;padding:14px 22px;border-radius:12px;font-weight:600;font-size:.94rem;
  box-shadow:var(--shadow-lg);z-index:1100;opacity:0;visibility:hidden;transition:.3s var(--ease);display:flex;gap:10px;align-items:center;
}
.toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.toast .ck{color:var(--green)}
body[dir="rtl"] .toast{transform:translateX(50%) translateY(30px)}
body[dir="rtl"] .toast.show{transform:translateX(50%) translateY(0)}

/* ---------- Page hero (inner) ---------- */
.page-hero{padding:calc(var(--header-h) + 66px) 0 62px;background:radial-gradient(900px 400px at 80% -20%,rgba(228,2,43,.10),transparent 60%),linear-gradient(180deg,rgba(255,255,255,.60),rgba(244,246,251,.76)),url('../img/erp-pattern.svg');background-repeat:no-repeat,no-repeat,repeat;background-size:auto,auto,340px 340px;text-align:center}
.page-hero h1{max-width:800px;margin:0 auto}
.page-hero .lead{margin:18px auto 0}
.breadcrumb{display:flex;gap:8px;justify-content:center;align-items:center;color:var(--steel);font-size:.88rem;margin-bottom:16px}
.breadcrumb a:hover{color:var(--red)}

/* reveal on scroll */
.reveal{opacity:0;transform:translateY(28px);transition:.7s var(--ease)}
.reveal.in{opacity:1;transform:none}

/* helpers */
.mb-0{margin-bottom:0}
.bg-mist{background:linear-gradient(rgba(244,246,251,.74),rgba(244,246,251,.74)),url('../img/erp-pattern.svg');background-size:auto,340px 340px}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:.88rem;font-weight:600;color:var(--ink-2);display:inline-flex;gap:8px;align-items:center}
.pill svg{width:15px;height:15px;color:var(--red)}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero-visual{max-width:560px;margin:0 auto}
  .split{grid-template-columns:1fr;gap:36px}
  .split.reverse .split-media{order:0}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
}
@media(max-width:820px){
  .nav,.header-actions .desk{display:none}
  .burger{display:flex}
  .nav.mobile-open{
    display:flex;flex-direction:column;position:fixed;top:var(--header-h);inset-inline:0;
    background:#fff;padding:18px;gap:6px;box-shadow:var(--shadow-md);border-top:1px solid var(--line);
    align-items:stretch;
  }
  .nav.mobile-open a{padding:14px 16px;font-size:1.05rem}
  .grid-3,.grid-4,.grid-2,.price-grid{grid-template-columns:1fr}
  .sec-pad{padding:70px 0}
  .cta-band{padding:44px 24px}
  .row-2{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .hero-badge{display:none}
}
@media(max-width:520px){
  .footer-grid{grid-template-columns:1fr}
  .hero-trust{gap:18px}
  .cta-band{padding:36px 20px}
}

/* =========================================================
   v2 — Splash · Mega-menu · Offices · Countries · Animations
   ========================================================= */

/* ---------- Splash / preloader ---------- */
.splash{
  position:fixed;inset:0;z-index:2000;display:grid;place-items:center;
  background:radial-gradient(700px 500px at 50% 40%,#26060e,#0d0d10 70%);
  transition:opacity .6s var(--ease),visibility .6s;
}
.splash.done{opacity:0;visibility:hidden}
.splash-inner{display:flex;flex-direction:column;align-items:center;gap:26px}
.splash-logo{height:96px;width:auto;filter:drop-shadow(0 10px 30px rgba(228,2,43,.5));
  animation:splashPop 1s var(--ease) both, splashFloat 2.6s ease-in-out 1s infinite;}
@keyframes splashPop{0%{opacity:0;transform:scale(.6) translateY(14px)}60%{opacity:1;transform:scale(1.06)}100%{transform:scale(1)}}
@keyframes splashFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.splash-bar{width:180px;height:4px;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden}
.splash-bar span{display:block;height:100%;width:40%;border-radius:99px;background:linear-gradient(90deg,var(--red),var(--red-soft));animation:splashBar 1.4s var(--ease) infinite}
@keyframes splashBar{0%{transform:translateX(-120%)}100%{transform:translateX(320%)}}

/* fade page content in after splash */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

/* ---------- Mega menu ---------- */
.has-mega{position:relative}
.nav-mega-btn{display:flex;align-items:center;gap:5px;padding:10px 16px;border-radius:999px;font-weight:600;font-size:.96rem;color:var(--ink-2);transition:.2s}
.nav-mega-btn:hover{color:var(--red);background:var(--mist)}
.nav-mega-btn .caret{width:15px;height:15px;transition:.25s}
.has-mega.active .nav-mega-btn{color:var(--red)}
.mega{
  position:absolute;top:calc(100% + 14px);inset-inline-start:50%;transform:translateX(-50%) translateY(10px);
  width:min(620px,92vw);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);
  padding:14px;opacity:0;visibility:hidden;transition:.24s var(--ease);z-index:50;
}
body[dir="rtl"] .mega{transform:translateX(50%) translateY(10px)}
.has-mega:hover .mega,.has-mega.open .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
body[dir="rtl"] .has-mega:hover .mega,body[dir="rtl"] .has-mega.open .mega{transform:translateX(50%) translateY(0)}
.has-mega:hover .nav-mega-btn .caret,.has-mega.open .nav-mega-btn .caret{transform:rotate(180deg)}
.mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.mega-item{display:flex;gap:13px;align-items:flex-start;padding:13px;border-radius:12px;transition:.2s}
.mega-item:hover{background:var(--mist)}
.mega-ic{flex:0 0 42px;width:42px;height:42px;border-radius:11px;display:grid;place-items:center;color:var(--red);background:linear-gradient(135deg,rgba(228,2,43,.12),rgba(228,2,43,.03));transition:.25s}
.mega-item:hover .mega-ic{background:var(--red);color:#fff;transform:translateY(-2px)}
.mega-ic svg{width:22px;height:22px}
.mega-txt b{display:block;font-size:.96rem;color:var(--ink);font-weight:700}
.mega-txt small{display:block;font-size:.8rem;color:var(--steel);margin-top:2px}

/* ---------- Footer offices / contact ---------- */
.foot-contact li{display:flex;flex-direction:column;gap:2px;margin-bottom:13px}
.fc-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#7d8496;font-weight:700}
.foot-contact a,.foot-contact span[data-cfg]{color:#e9ecf3;font-size:.95rem}
.foot-contact a:hover{color:#fff}
.footer-offices{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px;border-top:1px solid var(--ink-3);margin-top:44px;padding-top:30px}
.foff b{display:block;color:#fff;font-size:.9rem;margin-bottom:8px}
.foff span{color:#9aa0b0;font-size:.9rem;line-height:1.6}
.foff-countries{font-weight:600;color:#c4c9d6 !important}

/* ---------- Floating WA with tooltip ---------- */
.wa-float{gap:0;overflow:hidden;width:60px;padding:0 18px}
.wa-float .wa-tip{max-width:0;opacity:0;white-space:nowrap;font-weight:700;font-size:.92rem;transition:.3s var(--ease);overflow:hidden}
.wa-float:hover{width:auto;border-radius:999px}
.wa-float:hover .wa-tip{max-width:220px;opacity:1;margin-inline-start:10px}

/* ---------- Countries section ---------- */
.countries{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.country{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 20px;text-align:center;transition:.3s var(--ease)}
.country:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:transparent}
.country .flag{font-size:3rem;line-height:1;display:block;margin-bottom:12px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.12))}
.country b{display:block;font-size:1.05rem}
.country span{color:var(--steel);font-size:.85rem}

/* ---------- Home services strip cards ---------- */
.svc-card{position:relative;overflow:hidden}
.svc-card .ic{transition:.3s var(--ease)}
.svc-card:hover .ic{transform:translateY(-3px) scale(1.05)}
.svc-card::after{content:"";position:absolute;inset-inline-start:0;bottom:0;height:4px;width:0;background:linear-gradient(90deg,var(--red),var(--red-soft));transition:.35s var(--ease)}
.svc-card:hover::after{width:100%}

/* ---------- Package (services overview) ---------- */
.pkg{display:grid;gap:24px}
.pkg-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow-sm);border-top:4px solid var(--red)}
.pkg-card h3{color:var(--red);margin-bottom:18px;font-size:1.3rem}
.pkg-card ul{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pkg-card li{display:flex;gap:10px;align-items:flex-start;font-weight:500;color:var(--ink-2)}
.pkg-card li .ck{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:rgba(37,211,102,.14);color:#1a9e4b;display:grid;place-items:center;margin-top:2px}
.pkg-card li .ck svg{width:13px;height:13px}

/* ---------- animated hero background blobs ---------- */
.hero::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(228,2,43,.16),transparent 70%);
  top:-120px;inset-inline-end:8%;filter:blur(10px);animation:blob 12s ease-in-out infinite}
@keyframes blob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-30px,30px) scale(1.12)}}

/* staggered hero entrance */
.hero.in-anim .hero-copy>*{animation:fadeUp .7s var(--ease) both}
.hero.in-anim .hero-copy>*:nth-child(1){animation-delay:.05s}
.hero.in-anim .hero-copy>*:nth-child(2){animation-delay:.15s}
.hero.in-anim .hero-copy>*:nth-child(3){animation-delay:.25s}
.hero.in-anim .hero-copy>*:nth-child(4){animation-delay:.35s}
.hero.in-anim .hero-copy>*:nth-child(5){animation-delay:.45s}
.hero.in-anim .hero-visual{animation:fadeUp .9s var(--ease) .3s both}

/* service hero accent */
.service-hero{position:relative;overflow:hidden}
.service-hero .service-ic{width:74px;height:74px;border-radius:20px;display:grid;place-items:center;margin:0 auto 20px;
  background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;box-shadow:0 14px 30px rgba(228,2,43,.35)}
.service-hero .service-ic svg{width:38px;height:38px}

/* ---------- responsive v2 ---------- */
@media(max-width:820px){
  .mega{position:static;width:100%;transform:none;box-shadow:none;border:none;padding:6px 0;opacity:1;visibility:visible;display:none;background:transparent}
  body[dir="rtl"] .mega{transform:none}
  .has-mega:hover .mega,.has-mega.open .mega{display:block;transform:none}
  body[dir="rtl"] .has-mega:hover .mega,body[dir="rtl"] .has-mega.open .mega{transform:none}
  .has-mega:hover .mega{opacity:1}
  .mega-grid{grid-template-columns:1fr}
  .nav-mega-btn{width:100%;justify-content:space-between;padding:14px 16px;font-size:1.05rem}
  .footer-offices{grid-template-columns:1fr;gap:20px}
  .countries{grid-template-columns:1fr 1fr}
  .pkg-card ul{grid-template-columns:1fr}
}
@media(max-width:520px){
  .countries{grid-template-columns:1fr 1fr}
}

/* ---------- Pricing v3 (categories / custom quote) ---------- */
.price-grid.cols4{grid-template-columns:repeat(4,1fr)}
.price-seg{display:block;color:var(--steel);font-size:.86rem;font-weight:600;margin-top:2px}
.price .amt.gradient-text{font-size:2.2rem}
.care-banner{display:inline-flex;align-items:center;gap:12px;margin-top:24px;background:#fff;border:1px solid var(--line);
  box-shadow:var(--shadow-sm);border-radius:999px;padding:10px 10px 10px 20px}
.care-banner>span{font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--steel)}
.care-banner a{background:linear-gradient(120deg,var(--red),var(--red-dark));color:#fff;font-weight:800;padding:9px 18px;border-radius:999px;font-size:1rem}
.care-banner a:hover{transform:translateY(-1px)}
body[dir="rtl"] .care-banner{padding:10px 20px 10px 10px}
@media(max-width:1024px){ .price-grid.cols4{grid-template-columns:1fr 1fr} }
@media(max-width:820px){ .price-grid.cols4{grid-template-columns:1fr} }

/* ---------- Brochure page ---------- */
.brochure-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.brochure-frame-wrap{max-width:900px;margin:0 auto;border-radius:18px;overflow:hidden;
  border:1px solid var(--line);box-shadow:var(--shadow-lg);background:#B8B3B5}
.brochure-frame-bar{display:flex;align-items:center;gap:8px;padding:11px 16px;background:var(--ink);color:#cfd3dd}
.brochure-frame-bar .dots{display:flex;gap:6px}
.brochure-frame-bar .dots i{width:10px;height:10px;border-radius:50%;display:block}
.brochure-frame-bar .t{font-size:.82rem;font-weight:600;margin-inline-start:6px}
.brochure-frame-bar a{margin-inline-start:auto;color:#cfd3dd;font-size:.82rem;font-weight:600;display:inline-flex;gap:6px;align-items:center}
.brochure-frame-bar a:hover{color:#fff}
.brochure-viewport{position:relative;width:100%;height:820px;overflow:hidden;background:#B8B3B5}
.brochure-frame{width:100%;height:820px;border:0;display:block;background:#B8B3B5;margin:0 auto}
.brochure-note{text-align:center;color:var(--steel);font-size:.9rem;margin-top:16px}

/* module suite grid */
.modules{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mod{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 12px;text-align:center;transition:.28s var(--ease)}
.mod:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:transparent}
.mod .mic{width:44px;height:44px;margin:0 auto 9px;border-radius:11px;display:grid;place-items:center;color:var(--red);
  background:linear-gradient(135deg,rgba(228,2,43,.12),rgba(228,2,43,.03))}
.mod .mic svg{width:22px;height:22px}
.mod b{display:block;font-size:.92rem;color:var(--ink)}
.mod span{display:block;font-size:.76rem;color:var(--steel);margin-top:2px}
.ind-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}
/* zatca band */
.zatca{background:linear-gradient(135deg,var(--ink) 0%,#2a060c 60%,var(--red-dark) 130%);color:#fff;border-radius:24px;padding:48px;position:relative;overflow:hidden}
.zatca::after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.22),transparent 70%);top:-140px;inset-inline-end:-100px}
.zatca .eyebrow{background:rgba(255,255,255,.12);color:#ffb199}
.zatca h2{color:#fff;position:relative}
.zatca p{color:#d7dae4;max-width:620px;margin-top:14px;position:relative}
.zatca-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;position:relative}
.zbadge2{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);
  border-radius:999px;padding:9px 16px;font-size:.9rem;font-weight:600}
.zbadge2 svg{width:16px;height:16px;color:#ffb199}
@media(max-width:1024px){ .modules{grid-template-columns:1fr 1fr} }
@media(max-width:820px){ .brochure-frame{height:560px} .zatca{padding:32px 22px} }
@media(max-width:520px){ .modules{grid-template-columns:1fr 1fr} }

/* ---------- Global offices directory ---------- */
.offices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.office-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;box-shadow:var(--shadow-sm);transition:.25s var(--ease);display:flex;flex-direction:column}
.office-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.office-card.head{border:2px solid var(--red);box-shadow:var(--shadow-md)}
.oc-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.oc-flag{font-size:1.9rem;line-height:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.12))}
.oc-id{display:flex;flex-direction:column;min-width:0}
.oc-name{font-size:1.02rem;color:var(--ink);font-weight:800;line-height:1.2}
.oc-country{font-size:.82rem;color:var(--steel)}
.oc-badge{margin-inline-start:auto;background:var(--red);color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;white-space:nowrap}
.oc-addr{color:var(--steel);font-size:.92rem;line-height:1.6;flex:1}
.oc-phone{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-weight:700;color:var(--red);font-size:.96rem}
.oc-phone svg{width:16px;height:16px;flex:0 0 16px}
.oc-phone:hover{text-decoration:underline}
@media(max-width:900px){.offices-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.offices-grid{grid-template-columns:1fr}}

/* ---------- Safety: constrain any icon-wrapper SVG (prevents oversized icons) ---------- */
.ic svg{width:24px;height:24px}
.contact-info .ci .ic svg{width:22px;height:22px}

/* =========================================================
   Enriched service pages — gallery, brand panel, process, FAQ
   ========================================================= */
.svc-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.svc-gallery figure{position:relative;margin:0;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-md);aspect-ratio:4/3;background:linear-gradient(135deg,var(--red),#7c0016)}
.svc-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s var(--ease)}
.svc-gallery figure:hover img{transform:scale(1.06)}
.svc-gallery figure::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(228,2,43,.15),transparent 62%);z-index:1;pointer-events:none}
.svc-gallery figcaption{position:absolute;inset-inline:0;bottom:0;padding:16px 18px;color:#fff;font-weight:700;font-size:.98rem;z-index:2;background:linear-gradient(to top,rgba(9,13,24,.86),rgba(9,13,24,0))}

/* Branded graphic panel (paired with photos in the split section) */
.brand-panel{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/3;display:grid;place-items:center;box-shadow:var(--shadow-md);background:radial-gradient(120% 120% at 18% 12%,#ff2e50 0%,#c40021 46%,#7c0016 100%)}
.brand-panel::before{content:"";position:absolute;inset:0;background:url('../img/erp-pattern.svg');background-size:300px 300px;opacity:.16;mix-blend-mode:screen}
.brand-panel .bp-glyph{position:relative;z-index:2;width:118px;height:118px;color:#fff;filter:drop-shadow(0 10px 22px rgba(0,0,0,.32))}
.brand-panel .bp-glyph svg{width:100%;height:100%}
.brand-panel .bp-chip{position:absolute;z-index:3;background:rgba(255,255,255,.97);color:var(--ink);border-radius:12px;padding:9px 13px;font-weight:700;font-size:.82rem;box-shadow:0 14px 30px rgba(0,0,0,.24);display:flex;align-items:center;gap:7px}
.brand-panel .bp-chip svg{width:16px;height:16px;color:var(--red)}
.brand-panel .bp-chip.tl{top:16px;inset-inline-start:16px}
.brand-panel .bp-chip.br{bottom:16px;inset-inline-end:16px}

/* FAQ accordion (native details/summary — no JS needed) */
.faq-list{max-width:840px;margin:0 auto;display:grid;gap:14px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm);overflow:hidden;transition:.25s}
.faq-item[open]{border-color:rgba(228,2,43,.35);box-shadow:var(--shadow-md)}
.faq-item summary{list-style:none;cursor:pointer;padding:20px 22px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:14px;font-size:1.02rem}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary .fq-q{flex:1}
.faq-item summary .fq-i{flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:rgba(228,2,43,.1);color:var(--red);display:grid;place-items:center;transition:.25s}
.faq-item summary .fq-i svg{width:15px;height:15px}
.faq-item[open] summary .fq-i{transform:rotate(135deg);background:var(--red);color:#fff}
.faq-item .faq-a{padding:0 22px 20px;color:var(--ink-2);line-height:1.72}

@media (max-width:900px){ .svc-gallery{grid-template-columns:1fr 1fr} }
@media (max-width:600px){ .svc-gallery{grid-template-columns:1fr} }
