:root{
  --cream:#FAF7F1; --cream-2:#F1E9DA; --card:#FFFFFF;
  --ink:#2B2118; --ink-soft:#6E5C48;
  --accent:#A8703E; --accent-dark:#8A5A2F; --accent-tint:#F3E4D2;
  --line:rgba(43,33,24,0.12);
  --shadow:0 18px 40px -22px rgba(43,33,24,0.28);
  box-sizing:border-box; padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 70px);}
html,body{height:100%;}
body{background:var(--cream);color:var(--ink);font-family:'IBM Plex Sans Arabic', sans-serif;line-height:1.75;overflow-x:hidden;}
h1,h2{font-family:'Markazi Text', serif;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
.overflow-guard{overflow-x:auto;}
.num{font-family:'IBM Plex Sans Arabic';font-weight:700;color:var(--accent);font-size:0.8rem;}

header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(250,247,241,0.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1180px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.2rem;color:var(--ink);}
.brand svg{width:32px;height:32px;flex-shrink:0;color:var(--accent);}
nav.links{display:flex;gap:30px;font-size:0.94rem;color:var(--ink-soft);}
nav.links a{padding-bottom:4px;border-bottom:2px solid transparent;}
nav.links a:hover{color:var(--ink);}
nav.links a.active{color:var(--ink);border-color:var(--accent);}
.nav-cta{background:var(--accent);color:#fff;padding:10px 22px;border-radius:4px;font-size:0.9rem;font-weight:600;white-space:nowrap;}
.nav-cta:hover{background:var(--accent-dark);}
.menu-toggle{display:none;background:none;border:none;font-size:1.3rem;color:var(--ink);}
@media (max-width:820px){ nav.links{display:none;} .menu-toggle{display:block;} }

.page-hero{padding:52px 0 40px;border-bottom:1px solid var(--line);background:var(--cream-2);}
.page-hero .eyebrow{color:var(--accent);font-size:0.9rem;font-weight:600;margin-bottom:10px;}
.page-hero h1{font-size:clamp(1.9rem,4vw,2.7rem);color:var(--ink);font-weight:700;max-width:20ch;}
.page-hero p{color:var(--ink-soft);margin-top:14px;max-width:55ch;}

.hero{padding:60px 0 0;}
.hero .wrap{display:grid;grid-template-columns:1.05fr 0.95fr;gap:48px;align-items:center;padding-bottom:56px;}
@media (max-width:900px){ .hero .wrap{grid-template-columns:1fr;} }
.eyebrow{color:var(--accent);font-size:0.92rem;font-weight:600;margin-bottom:16px;}
.hero h1{font-size:clamp(2.2rem,4.6vw,3.3rem);font-weight:700;color:var(--ink);max-width:16ch;margin-bottom:20px;letter-spacing:-0.01em;}
.hero p{color:var(--ink-soft);font-size:1.06rem;max-width:48ch;margin-bottom:30px;}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;}
.btn{display:inline-block;padding:14px 28px;border-radius:4px;font-size:0.95rem;font-weight:600;}
.btn-primary{background:var(--accent);color:#fff;}
.btn-primary:hover{background:var(--accent-dark);}
.btn-outline{border:1.5px solid var(--line);color:var(--ink);}
.btn-outline:hover{border-color:var(--accent);color:var(--accent);}
.hero-visual{position:relative;}
.visual-card{background:var(--card);border-radius:14px;box-shadow:var(--shadow);padding:22px;}
.skyline{width:100%;height:auto;border-radius:8px;}
.skyline .fill{fill:var(--accent-tint);}
.skyline .bld{fill:none;stroke:var(--ink);stroke-width:1.8;opacity:0.85;}
.float-chip{position:absolute;bottom:-18px;right:24px;background:var(--ink);color:#fff;border-radius:10px;padding:14px 20px;box-shadow:var(--shadow);display:flex;align-items:center;gap:12px;}
.float-chip svg{width:22px;height:22px;stroke:var(--accent-tint);fill:none;stroke-width:2;}
.float-chip b{display:block;font-size:0.95rem;}
.float-chip span{display:block;font-size:0.75rem;color:#D8CBBA;}

.pillars-strip{border-top:1px solid var(--line);background:var(--card);}
.pillars-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);}
@media (max-width:700px){ .pillars-strip .wrap{grid-template-columns:repeat(2,1fr);} }
.p-item{padding:22px 20px;text-align:center;border-left:1px solid var(--line);}
.p-item:last-child{border-left:none;}
.p-item b{display:block;font-size:0.97rem;color:var(--ink);font-weight:700;margin-bottom:3px;}
.p-item span{font-size:0.8rem;color:var(--ink-soft);}

section{padding:80px 0;}
.section-head{max-width:62ch;margin-bottom:46px;}
.section-head h2{font-size:clamp(1.8rem,3vw,2.4rem);color:var(--ink);font-weight:700;}
.section-head p{color:var(--ink-soft);margin-top:14px;}

.about-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:60px;align-items:start;}
@media (max-width:900px){ .about-grid{grid-template-columns:1fr;} }
.about-grid p{color:var(--ink-soft);margin-bottom:16px;}
.pillars{display:grid;gap:14px;}
.pillar{display:flex;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px;}
.pillar b{display:block;color:var(--ink);margin-bottom:5px;}
.pillar span{color:var(--ink-soft);font-size:0.92rem;}

.service-group{margin-bottom:52px;}
.service-group:last-child{margin-bottom:0;}
.group-head{display:flex;align-items:baseline;gap:14px;margin-bottom:22px;padding-bottom:14px;border-bottom:2px solid var(--line);}
.group-head h3{font-size:1.25rem;color:var(--ink);font-weight:700;}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
@media (max-width:960px){ .services-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .services-grid{grid-template-columns:1fr;} }
.service{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:24px 20px;transition:box-shadow .25s ease, transform .25s ease;}
.service:hover{box-shadow:var(--shadow);transform:translateY(-3px);}
.icon-badge{width:40px;height:40px;border-radius:9px;background:var(--accent-tint);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.icon-badge svg{width:20px;height:20px;stroke:var(--accent);fill:none;stroke-width:1.8;}
.service h4{font-size:0.98rem;font-weight:700;color:var(--ink);margin-bottom:6px;}
.service p{font-size:0.86rem;color:var(--ink-soft);}

.process{background:var(--cream-2);}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
@media (max-width:900px){ .process-grid{grid-template-columns:repeat(2,1fr);gap:24px;} }
@media (max-width:560px){ .process-grid{grid-template-columns:1fr;} }
.step{padding:0 20px 0 0;position:relative;}
.step:not(:last-child)::after{content:"";position:absolute;top:22px;left:0;width:100%;height:1px;background:var(--line);}
@media (max-width:900px){ .step:not(:last-child)::after{display:none;} }
.step-num{width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--accent-tint);display:flex;align-items:center;justify-content:center;font-family:'Markazi Text',serif;font-size:1.3rem;font-weight:700;margin-bottom:18px;position:relative;z-index:1;}
.step h4{font-size:1rem;font-weight:700;color:var(--ink);margin-bottom:8px;}
.step p{font-size:0.88rem;color:var(--ink-soft);}

.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
@media (max-width:900px){ .why-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .why-grid{grid-template-columns:1fr;} }
.why-card{background:var(--card);border-radius:12px;padding:24px 20px;box-shadow:0 10px 26px -18px rgba(43,33,24,0.2);}
.why-card .icon-badge{background:var(--ink);}
.why-card .icon-badge svg{stroke:var(--accent-tint);}
.why-card span{color:var(--ink-soft);font-size:0.9rem;}

.cta-band{background:var(--ink);color:#fff;text-align:center;}
.cta-band h2{font-size:clamp(1.7rem,3vw,2.2rem);margin-bottom:16px;max-width:26ch;margin-inline:auto;color:#fff;}
.cta-band p{max-width:48ch;margin:0 auto 28px;color:#D8CBBA;}
.cta-band .btn-primary{background:var(--accent);}
.cta-band .btn-primary:hover{background:var(--accent-dark);}

.faq-list{max-width:800px;}
details{border-bottom:1px solid var(--line);padding:20px 0;}
summary{cursor:pointer;font-weight:600;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:16px;}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+";font-size:1.3rem;color:var(--accent);flex-shrink:0;}
details[open] summary::after{content:"–";}
details p{color:var(--ink-soft);margin-top:12px;font-size:0.95rem;}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;}
@media (max-width:900px){ .contact-grid{grid-template-columns:1fr;} }
.contact-info div{display:flex;flex-direction:column;gap:2px;margin-bottom:24px;}
.contact-info b{color:var(--ink);}
.contact-info span, .contact-info a{color:var(--ink-soft);font-size:0.95rem;}
form{display:grid;gap:14px;background:var(--card);padding:28px;border-radius:12px;border:1px solid var(--line);}
input,textarea{width:100%;padding:13px 14px;border:1px solid var(--line);background:var(--cream);border-radius:6px;font-family:inherit;font-size:0.95rem;color:var(--ink);}
textarea{resize:vertical;min-height:100px;}
form .btn-primary{border:none;cursor:pointer;justify-self:start;}

footer{background:var(--cream-2);color:var(--ink-soft);padding:48px 0 26px;font-size:0.88rem;border-top:1px solid var(--line);}
.footer-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:20px;}
.footer-brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:700;font-family:'Markazi Text',serif;font-size:1.25rem;}
.footer-brand svg{color:var(--accent);}
.footer-links{display:flex;gap:22px;flex-wrap:wrap;}
.footer-links a:hover{color:var(--accent);}
.copyright{text-align:center;color:#8A7860;}

@media (prefers-reduced-motion:no-preference){
  .fade-in{animation:fadeUp .7s ease both;}
  @keyframes fadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
}
