/* Caliph Business Solutions: shared styles for every page */
/* Layout: a cream reception desk in morning light. White paper documents sit on cream, near-black serif
   headlines carry two bronze-gradient words, and bronze is the only accent. One loud moment (the licence
   you can put your own name on), then a quiet left-aligned grid. Single light look on purpose: the client
   asked for no dark theme, so there are no dark sections anywhere on the page. */
:root{
  --bg:#F8F3EA; --bg-2:#FBF8F1; --card:#FFFFFF;
  --ink:#241F1A; --muted:#4A423A; --soft:#6F6355;
  --line:#E8DECD; --line-2:#D3C3A9;
  --bronze:#8A5A2E; --bronze-2:#A9794A; --bronze-deep:#6E4521; --gold:#E3C394; --gold-soft:#F4E9D6;
  --ok:#1F7A55; --ok-bg:#DDF1E7; --warn:#8F5B00; --warn-bg:#FBEBC8; --stamp:#2F4FA8; --off:#B5A892;
  --display:'Playfair Display','Reem Kufi',Georgia,'Times New Roman',serif;
  --body:'Jost','Almarai',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ar:'Almarai','Jost',system-ui,sans-serif;
  --r-lg:26px; --r-md:18px; --r-sm:12px;
  --lift:0 44px 80px -44px rgba(74,52,24,.55);
  --lift-sm:0 16px 32px -22px rgba(74,52,24,.4);
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{overflow-x:clip}
html{scroll-behavior:smooth;scroll-padding-top:130px}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;font-weight:400;font-variant-numeric:lining-nums}
[dir=rtl] body{font-family:var(--ar)}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:700;margin:0;text-wrap:balance;letter-spacing:-.015em;line-height:1.12}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{font-family:'Reem Kufi','Almarai',sans-serif;letter-spacing:0;line-height:1.4;font-weight:700}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button{font-family:inherit}
.wrap{max-width:1240px;margin-inline:auto;padding-inline:clamp(16px,4vw,44px)}
:focus-visible{outline:3px solid var(--bronze-2);outline-offset:3px;border-radius:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:10px 30px;border-radius:999px;font:600 13.5px/1.25 var(--body);letter-spacing:.14em;text-transform:uppercase;text-align:center;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s,box-shadow .25s}
[dir=rtl] .btn{font-family:var(--ar);font-weight:700;font-size:15.5px;letter-spacing:0}
.btn-primary{background:linear-gradient(100deg,#7A4E26,#9A6A38);color:#fff;box-shadow:0 14px 30px -14px rgba(122,78,38,.75)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 36px -14px rgba(122,78,38,.9)}
.btn-ghost{border-color:var(--bronze);color:var(--bronze);background:rgba(255,255,255,.4)}
.btn-ghost:hover{background:var(--gold-soft);transform:translateY(-2px)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{transform:translateY(-2px)}
.btn-wa{background:#0F7A5C;color:#fff}
.btn-wa:hover{transform:translateY(-2px);background:#128C6A}
.lede{color:var(--muted);font-weight:300;font-size:clamp(1.08rem,1.3vw,1.24rem);max-width:60ch}
.sec{padding-block:clamp(72px,10vw,136px)}
.sec.tight{padding-top:0}
.sec-head{display:flex;flex-direction:column;gap:18px;margin-bottom:clamp(34px,5vw,60px);max-width:800px}
.sec-head h2{font-size:clamp(2rem,4.3vw,3.5rem)}
.fineprint{font-size:14px;color:var(--soft)}

.js [data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}
.js [data-reveal].in{opacity:1;transform:none}

/* ---------- faq ---------- */
.faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,80px);align-items:start}
@media (max-width:900px){.faq{grid-template-columns:minmax(0,1fr)}}
.faq .sec-head{margin-bottom:0}
details{border-bottom:1px solid var(--line-2)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;font:600 clamp(1.1rem,1.7vw,1.35rem) var(--display)}
[dir=rtl] summary{font-family:'Reem Kufi',var(--ar)}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:12px;height:12px;border-right:2px solid var(--bronze);border-bottom:2px solid var(--bronze);transform:rotate(45deg);transition:transform .3s;margin-inline-end:6px}
details[open] summary::after{transform:rotate(-135deg)}
details p{color:var(--muted);padding-bottom:22px;max-width:64ch}

/* ---------- contact ---------- */
.final{position:relative;border-radius:clamp(26px,4vw,56px);background:linear-gradient(150deg,#FFFFFF,#F6ECD8 78%);border:1px solid var(--line-2);box-shadow:var(--lift);padding:clamp(28px,5.5vw,76px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(24px,4vw,64px);align-items:start;overflow:hidden}
.final::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(138,90,46,.12) 0 1px,transparent 1px 22px),repeating-linear-gradient(-45deg,rgba(138,90,46,.12) 0 1px,transparent 1px 22px);-webkit-mask:radial-gradient(closest-side at 85% 10%,#000,transparent);mask:radial-gradient(closest-side at 85% 10%,#000,transparent);pointer-events:none}
@media (max-width:900px){.final{grid-template-columns:minmax(0,1fr)}}
.final>*{position:relative;min-width:0}
.final h2{font-size:clamp(2rem,4.4vw,3.6rem)}
.final .lede{margin-top:16px;color:var(--muted)}
.reach-us{display:grid;gap:14px;margin-top:28px}
.reach-us li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center}
.reach-us .ico{width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);background:var(--card);display:grid;place-items:center}
.reach-us svg{width:20px;height:20px;stroke:var(--bronze);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.reach-us small{display:block;color:var(--soft);font-size:14px}
.reach-us b{font-weight:500;user-select:all;-webkit-user-select:all}
.form{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-lg);box-shadow:var(--lift-sm);padding:clamp(18px,3vw,30px);display:grid;gap:14px}
.field{display:grid;gap:6px;font-size:14.5px;font-weight:500;color:var(--muted)}
.field textarea{padding:12px 14px;min-height:96px;resize:vertical}
.form .btn{width:100%}
.form output{font-size:14.5px;color:var(--ink);background:var(--ok-bg);border:1px solid var(--ok);border-radius:12px;padding:12px 14px}

/* ---------- full service list ---------- */
.dir{columns:3 290px;column-gap:18px}
.dg{break-inside:avoid;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--lift-sm);padding:20px 22px 12px;margin-bottom:18px}
.dg h3{font-size:1.28rem;padding-bottom:12px;border-bottom:2px solid var(--bronze)}
.dg li{padding:9px 0;border-bottom:1px dashed var(--line-2);font-size:15.5px;color:var(--muted)}
.dg li:last-child{border-bottom:0}
.dg li.kv{display:grid;grid-template-columns:minmax(0,6.6em) minmax(0,1fr);gap:12px}
.dg li.kv b{font-weight:600;color:var(--ink)}

/* =====================================================================
   Shared site chrome and inner page components.
   Class names here never collide with the home page sections
   (hero, steps, facts, docs, hub, tabs, pill, search, open are taken).
   ===================================================================== */
.skip{position:absolute;inset-inline-start:12px;top:-70px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;text-decoration:none}
.skip:focus{top:12px}
.tlink{color:var(--bronze);font-weight:600;text-decoration:none}
.tlink:hover{text-decoration:underline}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.eyebrow{font:600 12.5px var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--bronze)}
.note{font-size:15px;color:var(--soft);border-inline-start:3px solid var(--gold);padding-inline-start:14px}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:50;background:rgba(248,243,234,.95);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.hdr.scrolled{border-bottom-color:var(--line-2)}
.hdr-in{display:flex;align-items:stretch;gap:8px 20px;min-height:72px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);flex:none}
.logo svg{flex:none}
.logo b{display:block;font:700 24px/1 'Playfair Display',Georgia,serif;letter-spacing:.005em}
.logo small{display:block;font:600 9.5px/1 'Jost',system-ui,sans-serif;letter-spacing:.3em;color:var(--bronze);margin-top:5px;text-transform:uppercase}
.mnav{display:flex;align-items:stretch;gap:0;flex:1 1 auto;min-width:0;margin-inline-start:6px}
.mi{display:flex}
.mb,.ml{display:flex;align-items:center;gap:6px;background:none;border:0;padding:0 11px;font:500 15.5px var(--body);color:var(--muted);text-decoration:none;cursor:pointer;white-space:nowrap}
[dir=rtl] .mb,[dir=rtl] .ml{font-family:var(--ar)}
.mb:hover,.ml:hover,.mb[aria-expanded=true],.ml[aria-current=page]{color:var(--bronze)}
.mb svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.mb[aria-expanded=true] svg{transform:rotate(180deg)}
.mega{position:absolute;inset-inline:0;top:100%;background:var(--bg-2);border-block:1px solid var(--line-2);box-shadow:0 34px 50px -34px rgba(74,52,24,.5);display:none;max-height:calc(100vh - 100px);overflow:auto}
.mb[aria-expanded=true]+.mega{display:block}
@media (hover:hover){.mi:hover>.mega{display:block}.mi:hover>.mb{color:var(--bronze)}.mi:hover>.mb svg{transform:rotate(180deg)}}
.mega-in{display:grid;gap:22px 36px;padding-block:26px 30px}
.mg-3{grid-template-columns:minmax(0,.8fr) minmax(0,2.2fr) minmax(0,.8fr)}
.mg-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mg-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.mega h3{font-size:1.06rem;margin-bottom:8px}
.mega h3 a{text-decoration:none}
.mega h3 a:hover{color:var(--bronze)}
.mega p{font-size:14.5px;color:var(--soft);max-width:34ch}
.mega li a{display:block;padding:6px 0;text-decoration:none;color:var(--muted);font-size:15px}
.mega li a:hover{color:var(--bronze)}
.mega small{display:block;font:600 11.5px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin:0 0 2px}
.mcols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 26px}
.mlist2{columns:2;column-gap:30px}
.mlist2 li{break-inside:avoid}
.hdr-r{display:flex;align-items:center;gap:10px;margin-inline-start:auto;flex:none}
.langlink{font:600 14px 'Almarai','Jost',system-ui,sans-serif;text-decoration:none;color:var(--ink);border:1px solid var(--line-2);border-radius:999px;padding:9px 15px;background:var(--card);white-space:nowrap}
.langlink:hover{border-color:var(--bronze)}
.hdr .btn{min-height:44px;padding:8px 20px;font-size:12.5px}
[dir=rtl] .hdr .btn{font-size:14.5px}
.burger{display:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--line-2);background:var(--card);align-items:center;justify-content:center;cursor:pointer;color:var(--ink)}
.burger svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}
.drawer{position:fixed;inset:0;top:var(--hdr-h,72px);z-index:49;background:var(--bg);overflow:auto;padding:14px clamp(16px,4vw,44px) 130px}
.drawer details{border-bottom:1px solid var(--line-2)}
.drawer summary{font:600 1.12rem var(--body);padding:16px 0}
[dir=rtl] .drawer summary{font-family:var(--ar)}
.drawer details ul{padding-bottom:14px;display:grid}
.drawer details a,.drawer>a{display:block;padding:9px 0;text-decoration:none;color:var(--muted);font-size:16px}
.drawer details b{display:block;font:600 11.5px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-top:12px}
.drawer>a{font-weight:600;color:var(--ink);font-size:1.12rem;padding:16px 0;border-bottom:1px solid var(--line-2)}
.drawer .btn{margin-top:22px;width:100%}
html.nav-open{overflow:hidden}
@media (max-width:1120px){.mnav{display:none}.burger{display:flex}}
@media (max-width:560px){.hdr .btn{display:none}.logo b{font-size:21px}.hdr-in{min-height:64px}}

/* ---------- breadcrumbs and page hero ---------- */
.crumbs{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:14px;color:var(--soft)}
.crumbs a{color:var(--soft);text-decoration:none}
.crumbs a:hover{color:var(--bronze)}
.crumbs li+li::before{content:"/";margin-inline-end:8px;color:var(--line-2)}
.phero{position:relative;padding-block:clamp(20px,3vw,34px) clamp(40px,6vw,72px);background:radial-gradient(70% 90% at 88% 0%,rgba(227,195,148,.36),transparent 70%),linear-gradient(#F8F3EA,#FBF4E4);border-bottom:1px solid var(--line)}
[dir=rtl] .phero{background:radial-gradient(70% 90% at 12% 0%,rgba(227,195,148,.36),transparent 70%),linear-gradient(#F8F3EA,#FBF4E4)}
.phero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(26px,4vw,64px);align-items:center;margin-top:clamp(20px,3vw,36px)}
.phero.solo .phero-grid{grid-template-columns:minmax(0,1fr)}
.phero.solo .phero-copy{max-width:880px}
.phero-copy{display:grid;gap:18px;justify-items:start;min-width:0}
.phero h1{font-size:clamp(2rem,4vw,3.25rem)}
.phero .lede{font-weight:400;max-width:64ch}
.phero .meta{font-size:14px;color:var(--soft)}
@media (max-width:940px){.phero-grid{grid-template-columns:minmax(0,1fr)}}
.fwrap{position:relative;padding:14px 12px;min-width:0}
.fwrap::before,.fwrap::after{content:"";position:absolute;inset:14px 12px;border-radius:8px;background:#F0E9DA;border:1px solid #E3D8C3}
.fwrap::before{transform:rotate(-2.4deg) translate(-8px,6px)}
.fwrap::after{transform:rotate(2deg) translate(9px,8px);background:#EAE1CF}
.fsheet{position:relative;z-index:1;background:linear-gradient(180deg,#fff,#FCFBF8);border-radius:8px;box-shadow:0 0 0 1px #E1D6C1,0 40px 70px -44px rgba(74,52,24,.6);padding:22px 24px 14px}
.fsheet h2{font-size:1.08rem;display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding-bottom:12px;border-bottom:2px solid var(--bronze)}
.fsheet h2 span{font:600 11px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}
.fsheet dl{margin:0;display:grid}
.fsheet dl>div{display:grid;grid-template-columns:minmax(0,8.6em) minmax(0,1fr);gap:14px;padding:11px 0;border-bottom:1px dashed var(--line-2)}
.fsheet dl>div:last-child{border-bottom:0}
.fsheet dt{color:var(--soft);font-size:14.5px}
.fsheet dd{margin:0;font-weight:500;font-size:15.5px}
@media (max-width:420px){.fsheet dl>div{grid-template-columns:minmax(0,1fr);gap:2px}}

/* ---------- page body ---------- */
.pbody{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(28px,4.5vw,72px);align-items:start;padding-block:clamp(40px,6vw,80px)}
.pbody.one{grid-template-columns:minmax(0,1fr)}
.pmain{display:grid;gap:clamp(40px,5.5vw,68px);min-width:0;grid-template-columns:minmax(0,1fr)}
.pmain>section{scroll-margin-top:100px;display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}
.pmain h2{font-size:clamp(1.55rem,2.6vw,2.15rem)}
.prose{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
.prose p{color:var(--muted);max-width:70ch;font-size:1.06rem}
.prose ul{display:grid;gap:8px;max-width:70ch}
.prose ul li{position:relative;padding-inline-start:22px;color:var(--muted)}
.prose ul li::before{content:"";position:absolute;inset-inline-start:2px;top:.62em;width:8px;height:8px;transform:rotate(45deg);background:var(--bronze-2)}
.prose h3{font-size:1.2rem;margin-top:6px}
.aside{position:sticky;top:96px;display:grid;gap:16px}
.toc{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);padding:18px 20px;box-shadow:var(--lift-sm)}
.toc b{display:block;font:600 11.5px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.toc a{display:block;padding:6px 0;padding-inline-start:12px;border-inline-start:2px solid var(--line);color:var(--muted);text-decoration:none;font-size:15px}
.toc a.on,.toc a:hover{color:var(--bronze);border-color:var(--bronze)}
.talk{border-radius:var(--r-md);background:linear-gradient(160deg,#fff,#F6ECD8);border:1px solid var(--line-2);padding:20px;display:grid;gap:10px}
.talk b{font:700 1.15rem/1.25 var(--display)}
.talk p{font-size:15px;color:var(--muted)}
.talk .btn{width:100%;min-height:46px;padding:8px 14px;font-size:12.5px}
[dir=rtl] .talk .btn{font-size:14.5px}
@media (max-width:1000px){.pbody{grid-template-columns:minmax(0,1fr)}.aside{display:none}}
.bgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bitem{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:20px 22px;box-shadow:var(--lift-sm);display:grid;gap:6px;align-content:start;min-width:0}
.bitem h3{font-size:1.14rem;line-height:1.25}
.bitem p{color:var(--muted);font-size:15.5px}
@media (max-width:640px){.bgrid{grid-template-columns:minmax(0,1fr)}}
.need{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-md);padding:6px 22px;box-shadow:var(--lift-sm)}
.need li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;padding:13px 0;border-bottom:1px dashed var(--line-2);align-items:start}
.need li:last-child{border-bottom:0}
.need li::before{content:"";width:20px;height:20px;margin-top:3px;border-radius:6px;background:var(--ok-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F7A55' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px no-repeat}
.flow{display:grid;counter-reset:f}
.flow li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;padding-bottom:26px;counter-increment:f}
.flow li::before{content:counter(f);width:44px;height:44px;border-radius:13px;background:var(--bronze);color:#fff;display:grid;place-items:center;font:700 1.1rem 'Playfair Display',Georgia,serif;font-variant-numeric:lining-nums;position:relative;z-index:1}
.flow li::after{content:"";position:absolute;inset-inline-start:21px;top:44px;bottom:0;width:2px;background:var(--line-2)}
.flow li:last-child{padding-bottom:0}
.flow li:last-child::after{display:none}
.flow h3{font-size:1.18rem;margin-top:8px}
.flow p{color:var(--muted);margin-top:4px;max-width:66ch}
.gk{display:grid;gap:10px}
.gk li{background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:14px 18px;color:var(--muted)}
.faqs{border-top:1px solid var(--line-2)}
.srcs{display:grid;gap:6px;font-size:14.5px;color:var(--soft);border-top:1px solid var(--line-2);padding-top:18px}
.srcs a{color:var(--bronze)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.kcard{display:grid;gap:8px;align-content:start;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:20px 22px;text-decoration:none;color:inherit;box-shadow:var(--lift-sm);transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .3s;min-width:0}
.kcard:hover{transform:translateY(-4px);border-color:var(--bronze-2)}
.kcard b{font:700 1.15rem/1.25 var(--display)}
.kcard span{color:var(--muted);font-size:15px}
.kcard i{font:600 12px var(--body);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze);margin-top:4px}
.kgroup{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.kgroup>h3{font-size:1.25rem;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;justify-content:space-between;padding-bottom:10px;border-bottom:2px solid var(--bronze)}
.kgroup>h3 a{text-decoration:none}
.kgroup>h3 a:hover{color:var(--bronze)}
.kgroup>h3 small{font:500 14px var(--body);color:var(--soft)}
.take{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r-md);padding:22px 24px;box-shadow:var(--lift-sm);display:grid;gap:12px}
.take h2{font-size:1.25rem}
.article{max-width:800px}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--lift-sm);overflow:hidden}
.stat-row div{padding:20px 22px;border-inline-start:1px solid var(--line);display:grid;gap:4px}
.stat-row div:first-child{border-inline-start:0}
.stat-row b{font:700 2rem/1 var(--display);color:var(--bronze);font-variant-numeric:lining-nums}
.stat-row span{color:var(--muted);font-size:15px}
@media (max-width:560px){.stat-row div{border-inline-start:0;border-top:1px solid var(--line)}.stat-row div:first-child{border-top:0}}

/* ---------- forms shared by every page ---------- */
.field input,.field select,.field textarea{font:400 16px var(--body);color:var(--ink);background:var(--bg-2);border:1px solid var(--line-2);border-radius:12px;min-height:50px;padding:0 14px;width:100%;min-width:0;transition:border-color .2s,background .2s}
[dir=rtl] .field input,[dir=rtl] .field select,[dir=rtl] .field textarea{font-family:var(--ar)}
.field input::placeholder,.field textarea::placeholder{color:#7A6E5F}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--bronze);background:var(--card)}
.form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form output.err{background:#F9DEDA;border-color:#B23A32}
.form .small{font-size:13.5px;color:var(--soft)}
.form .small a{color:var(--bronze)}
.reach-us a{color:inherit;text-decoration:none}
.reach-us a:hover{color:var(--bronze)}

/* ---------- service list links ---------- */
.dg a{color:inherit;text-decoration:none}
.dg a:hover{color:var(--bronze)}
.dg li.kv span a{white-space:nowrap}
.bt .more{position:relative;z-index:1;align-self:flex-start;color:var(--bronze);font-weight:600;font-size:15px;text-decoration:none}
.bt .more:hover{text-decoration:underline}
.juris .more{justify-self:start}

/* ---------- footer ---------- */
.ftr{margin-top:clamp(60px,8vw,110px);background:var(--bg-2);border-top:1px solid var(--line-2);padding-block:54px 110px;color:var(--muted);font-size:15.5px}
.ftr-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:34px}
@media (max-width:900px){.ftr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.ftr-grid{grid-template-columns:minmax(0,1fr)}}
.ftr h2{font:600 15px var(--body);letter-spacing:0;color:var(--ink);margin-bottom:10px}
[dir=rtl] .ftr h2{font-family:var(--ar);font-weight:700}
.ftr a{display:block;padding:5px 0;color:var(--muted);text-decoration:none}
.ftr a:hover{color:var(--bronze)}
.ftr .logo{display:flex;padding:0;color:var(--ink)}
.ftr address{font-style:normal;display:grid;gap:2px;margin-top:14px}
.ftr-fine{margin-top:40px;padding-top:22px;border-top:1px solid var(--line-2);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:14px;color:var(--soft)}
.ftr-fine a{display:inline;padding:0;color:var(--soft)}
.ftr-fine span{display:flex;flex-wrap:wrap;gap:6px 18px}
.wa{position:fixed;inset-inline-end:max(16px,2vw);bottom:calc(env(safe-area-inset-bottom,0px) + 18px);z-index:40;display:flex;align-items:center;gap:10px;background:#0F7A5C;color:#fff;text-decoration:none;font-weight:600;font-size:15px;border-radius:999px;min-height:54px;padding:0 20px 0 16px;box-shadow:0 18px 36px -14px rgba(15,122,92,.85);transition:transform .25s}
.wa:hover{transform:translateY(-3px) scale(1.03)}
.wa svg{width:24px;height:24px}

/* ---------- Arabic: no letter-spacing on joined script, mock file reads right to left ---------- */
[dir=rtl] .eyebrow,[dir=rtl] .fsheet h2 span,[dir=rtl] .toc b,[dir=rtl] .kcard i,[dir=rtl] .mega small,[dir=rtl] .drawer details b{letter-spacing:0;font-family:var(--ar);font-size:13.5px}
[dir=rtl] .folder{direction:rtl;text-align:right}
[dir=rtl] .pipe::before,[dir=rtl] .pipe::after{left:auto;right:.62em}
[dir=rtl] .pp::before{left:auto;right:-2em}
.mini-lic{direction:ltr;text-align:left}
[dir=rtl] .lede{font-weight:400}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js [data-reveal]{opacity:1;transform:none}}
@media print{.hdr,.drawer,.wa,.aside,.ftr,#contact{display:none!important}body{background:#fff}}

/* ---------- fixes after the full-site review ---------- */
body{margin:0}
.field textarea{min-height:104px;padding:12px 14px;resize:vertical}
.reach-us a.tlink{color:var(--bronze);font-size:15px;font-weight:600}
.reach-us a.tlink:hover{text-decoration:underline}
.srcs{border-top:0;padding-top:0}
.ph{white-space:nowrap;unicode-bidi:isolate}
.ftr{margin-top:0}
[dir=rtl] .seg{grid-template-columns:auto auto auto}
[dir=rtl] .seg button{font-size:13.5px;white-space:nowrap;padding:0 8px}
[dir=rtl] .try-row{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.hdr{top:env(safe-area-inset-top,0px)}

/* ---------- the client's logo ---------- */
.logo img{display:block;height:56px;width:auto;flex:none}
.ftr .logo img{height:52px}
@media (max-width:560px){.logo img{height:48px}.logo{gap:9px}}
.ftr-fine .by{display:inline;white-space:nowrap}
.ftr-fine .by a{color:var(--muted);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.ftr-fine .by a:hover{color:var(--bronze)}

/* ---------- authorities and free zones we file with ---------- */
.bodies{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.body-t{display:grid;gap:4px;align-content:center;min-height:94px;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px;text-decoration:none;color:inherit;box-shadow:var(--lift-sm);transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .3s}
.body-t:hover{transform:translateY(-3px);border-color:var(--bronze-2)}
.body-t b{font:700 1.06rem/1.25 var(--display)}
[dir=rtl] .body-t b{font-family:'Reem Kufi',var(--ar);line-height:1.5}
.body-t span{font-size:13.5px;color:var(--soft)}

html{scroll-padding-top:96px}
.mega .mx{margin-top:12px;padding-top:10px;border-top:1px solid var(--line-2)}
.mega .mx a{color:var(--bronze);font-weight:600}
.drawer details a.dh{font-weight:600;color:var(--ink)}
.srcs b{color:var(--ink);font-weight:600}
.srcs ul{display:grid;gap:4px}
.faq .sec-head .tlink{align-self:flex-start}
.phero .btn-ghost{background:rgba(255,255,255,.6)}
.kgroup>.note{margin:0}
