/* ═══════════════════════════════════════════════════════════════
   GALAXY MAINTENANCE — CLAY + GLASS + MINIMAL DESIGN SYSTEM
   Fraunces / Inter Tight / JetBrains Mono
   Palette: Deep teal #1F4D45 · Sand cream #FAF7F2 · Ink #14201D
   ═══════════════════════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  /* Teal scale */
  --teal-900:#0F2A26;
  --teal-700:#1F4D45;
  --teal-500:#3A8478;
  --teal-400:#4A9E8E;
  --teal-200:#B8D6CF;
  --teal-50:#EAF2F0;

  /* Neutral / sand */
  --ink:#14201D;
  --ink-80:rgba(20,32,29,.8);
  --ink-60:rgba(20,32,29,.6);
  --ink-40:rgba(20,32,29,.4);
  --ink-20:rgba(20,32,29,.2);
  --ink-10:rgba(20,32,29,.08);

  --white:#FFFFFF;
  --cream:#FAF7F2;
  --sand:#F0EAE0;
  --sand-deep:#E2D8C7;
  --border:#E8E1D3;

  /* Clay shadow tokens */
  --clay-light:rgba(255,255,255,.75);
  --clay-dark:rgba(173,160,138,.45);
  --clay-sm: -3px -3px 6px var(--clay-light), 4px 4px 10px var(--clay-dark);
  --clay-md: -6px -6px 14px var(--clay-light), 8px 8px 20px var(--clay-dark);
  --clay-lg: -10px -10px 24px var(--clay-light), 14px 14px 32px var(--clay-dark);
  --clay-inset: inset -2px -2px 6px var(--clay-light), inset 3px 3px 8px var(--clay-dark);

  /* Glass tokens */
  --glass-bg: rgba(255,255,255,.55);
  --glass-bg-dark: rgba(20,32,29,.4);
  --glass-border: rgba(255,255,255,.65);
  --glass-shadow: 0 8px 32px rgba(20,32,29,.08);

  /* Typography */
  --ff-display:'Outfit','Inter Tight',system-ui,sans-serif;
  --ff-body:'Inter Tight','Inter',system-ui,sans-serif;
  --ff-mono:'JetBrains Mono',ui-monospace,monospace;

  --nav-h:108px;
  --trans:.3s cubic-bezier(.4,0,.2,1);
  --trans-slow:.5s cubic-bezier(.4,0,.2,1);
}

html{scroll-behavior:smooth;font-size:16px}
body{
  font-family:var(--ff-body);
  color:var(--ink);
  background:var(--cream);
  background-image:
    radial-gradient(at 20% 0%,rgba(74,158,142,.06) 0,transparent 50%),
    radial-gradient(at 80% 100%,rgba(184,214,207,.18) 0,transparent 50%);
  background-attachment:fixed;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

[dir="rtl"] body{font-family:'Noto Sans Arabic',var(--ff-body)}

img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}

/* ── TYPOGRAPHY ── */
h1{
  font-family:var(--ff-display);
  font-size:clamp(2.8rem,6vw,5.2rem);
  font-weight:300;line-height:1;
  letter-spacing:-.035em;
}
h2{
  font-family:var(--ff-display);
  font-size:clamp(2rem,4vw,3.4rem);
  font-weight:300;line-height:1.05;
  letter-spacing:-.03em;
}
h3{
  font-family:var(--ff-display);
  font-size:1.5rem;font-weight:400;line-height:1.2;
  letter-spacing:-.02em;
}
h4{font-size:1rem;font-weight:500;letter-spacing:-.005em}
h5{
  font-family:var(--ff-mono);
  font-size:.7rem;font-weight:500;letter-spacing:.04em;
  text-transform:uppercase;color:var(--ink-40);
}
p{font-size:1rem;line-height:1.65;color:var(--ink-60);font-weight:400}
.lede{font-size:1.125rem;line-height:1.6;color:var(--ink-60);max-width:38ch}

.mono{
  font-family:var(--ff-mono);
  font-size:.72rem;font-weight:500;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ink-60);
}

.eyebrow{
  display:inline-flex;align-items:center;gap:.6rem;
  font-family:var(--ff-mono);
  font-size:.7rem;font-weight:500;letter-spacing:.08em;
  text-transform:uppercase;color:var(--teal-700);
  padding:.45rem 1rem;
  background:var(--glass-bg);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border:1px solid var(--glass-border);
  border-radius:100px;
  box-shadow:var(--glass-shadow);
  margin-bottom:1.75rem;
}
.eyebrow::before{
  content:'';display:block;width:6px;height:6px;border-radius:50%;
  background:var(--teal-400);box-shadow:0 0 8px var(--teal-400);
}

/* ── LAYOUT ── */
.container{width:90%;max-width:1280px;margin:0 auto}
section{padding:120px 0;position:relative}

/* ── BUTTONS ── */
.btn{
  display:inline-flex;align-items:center;gap:.6rem;
  padding:1.1rem 2rem;
  font-family:var(--ff-body);
  font-size:.84rem;font-weight:500;letter-spacing:.01em;
  border-radius:100px;
  transition:var(--trans);
  white-space:nowrap;
  position:relative;
  cursor:pointer;
}

.btn-primary{
  background:var(--teal-700);color:var(--white);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 4px 16px rgba(31,77,69,.25),
    0 1px 3px rgba(31,77,69,.15);
}
.btn-primary:hover{
  background:var(--teal-900);
  transform:translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 8px 24px rgba(31,77,69,.32),
    0 2px 6px rgba(31,77,69,.18);
}

.btn-clay{
  background:var(--cream);color:var(--ink);
  box-shadow:var(--clay-sm);
  border:1px solid rgba(255,255,255,.7);
}
.btn-clay:hover{
  box-shadow:var(--clay-md);
  transform:translateY(-1px);
}

.btn-glass{
  background:var(--glass-bg);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border:1px solid var(--glass-border);
  color:var(--ink);
  box-shadow:var(--glass-shadow);
}
.btn-glass:hover{background:rgba(255,255,255,.75)}

.btn-link{
  background:transparent;color:var(--ink);
  padding:.6rem 0;border-radius:0;
  font-weight:500;
  display:inline-flex;align-items:center;gap:.5rem;
  border-bottom:1px solid var(--ink);
}
.btn-link .arrow{transition:transform var(--trans)}
.btn-link:hover .arrow{transform:translateX(4px)}
[dir="rtl"] .btn-link .arrow{transform:scaleX(-1)}
[dir="rtl"] .btn-link:hover .arrow{transform:translateX(-4px) scaleX(-1)}

.btn-white{background:var(--white);color:var(--teal-700);box-shadow:0 4px 16px rgba(0,0,0,.08)}
.btn-white:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.12)}

.btn-outline-white{
  background:rgba(255,255,255,.08);color:var(--white);
  border:1px solid rgba(255,255,255,.3);
  backdrop-filter:blur(10px);
}
.btn-outline-white:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.5)}

.btn-whatsapp{
  background:#25D366;color:var(--white);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 16px rgba(37,211,102,.3);
}
.btn-whatsapp:hover{background:#1da851;transform:translateY(-1px)}

.btn-full{width:100%;justify-content:center;padding-top:1.2rem;padding-bottom:1.2rem}

/* ── NAVBAR — LIQUID GLASS ── */
#navbar{
  position:fixed;top:0;left:0;right:0;z-index:900;
  height:var(--nav-h);
  background:rgba(250,247,242,.65);
  backdrop-filter:saturate(180%) blur(24px);
  -webkit-backdrop-filter:saturate(180%) blur(24px);
  border-bottom:1px solid rgba(255,255,255,.5);
  box-shadow:0 1px 30px rgba(20,32,29,.04);
  transition:background var(--trans);
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  height:var(--nav-h);width:90%;max-width:1280px;margin:0 auto;
}
.logo-link{display:flex;align-items:center;transition:opacity var(--trans)}
.logo-link:hover{opacity:.75}
.logo-img{height:81px;width:auto;max-width:340px;object-fit:contain}

.nav-links{display:flex;align-items:center;gap:2.25rem}
.nav-links>li>a{
  font-size:.85rem;font-weight:500;letter-spacing:.005em;
  color:var(--ink-80);transition:color var(--trans);
  position:relative;
}
.nav-links>li>a::after{
  content:'';position:absolute;
  bottom:-6px;left:0;right:0;
  height:1px;background:var(--teal-400);
  transform:scaleX(0);transform-origin:left;
  transition:transform var(--trans);
}
.nav-links>li>a:hover{color:var(--ink)}
.nav-links>li>a:hover::after,
.nav-links>li>a.active::after{transform:scaleX(1)}
.nav-links>li>a.nav-cta{
  background:var(--teal-700);color:var(--white)!important;
  padding:.7rem 1.5rem;border-radius:100px;
  font-size:.82rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 4px 16px rgba(31,77,69,.25);
}
.nav-links>li>a.nav-cta::after{display:none}
.nav-links>li>a.nav-cta:hover{background:var(--teal-900);transform:translateY(-1px)}

.nav-right{display:flex;align-items:center;gap:1rem}

.lang-toggle{
  display:flex;align-items:center;gap:.45rem;
  font-family:var(--ff-mono);
  font-size:.72rem;font-weight:500;letter-spacing:.05em;
  color:var(--ink-60);padding:.55rem .85rem;
  background:var(--glass-bg);
  backdrop-filter:blur(20px);
  border:1px solid var(--glass-border);
  border-radius:100px;
  box-shadow:var(--glass-shadow);
  transition:var(--trans);
}
.lang-toggle:hover{background:rgba(255,255,255,.75)}
.lang-opt.active{color:var(--teal-400);font-weight:600}
.lang-sep{opacity:.3}

.hamburger{display:none;flex-direction:column;gap:5px;width:24px;padding:4px 0}
.hamburger span{display:block;height:1.5px;background:var(--ink);transition:var(--trans)}

/* ── HERO ── */
.hero{
  min-height:100vh;
  display:flex;align-items:center;
  padding:calc(var(--nav-h) + 60px) 0 100px;
  position:relative;overflow:hidden;
}

/* Floating clay orbs in hero */
.hero-orb{
  position:absolute;border-radius:50%;
  pointer-events:none;
  filter:blur(1px);
  animation:float 12s ease-in-out infinite;
}
.hero-orb-1{
  width:380px;height:380px;
  top:18%;right:-80px;
  background:radial-gradient(circle at 30% 30%,var(--teal-200),var(--teal-400));
  box-shadow:
    inset -20px -20px 60px rgba(31,77,69,.35),
    inset 20px 20px 60px rgba(255,255,255,.4),
    0 30px 80px rgba(31,77,69,.15);
  opacity:.55;
}
.hero-orb-2{
  width:180px;height:180px;
  bottom:18%;right:35%;
  background:radial-gradient(circle at 30% 30%,#FFFFFF,var(--sand));
  box-shadow:
    inset -10px -10px 30px var(--sand-deep),
    inset 10px 10px 30px rgba(255,255,255,.9),
    0 20px 50px rgba(173,160,138,.25);
  animation-delay:-4s;animation-duration:14s;
  opacity:.85;
}
.hero-orb-3{
  width:90px;height:90px;
  top:32%;left:55%;
  background:radial-gradient(circle at 30% 30%,var(--teal-400),var(--teal-700));
  box-shadow:
    inset -6px -6px 16px rgba(15,42,38,.5),
    inset 6px 6px 16px rgba(184,214,207,.4),
    0 12px 30px rgba(31,77,69,.25);
  animation-delay:-8s;animation-duration:10s;
  opacity:.6;
}
@keyframes float{
  0%,100%{transform:translateY(0) translateX(0) rotate(0)}
  33%{transform:translateY(-20px) translateX(15px) rotate(2deg)}
  66%{transform:translateY(15px) translateX(-10px) rotate(-1.5deg)}
}

.hero-grid{
  width:90%;max-width:1280px;margin:0 auto;
  position:relative;z-index:1;
}

.hero-meta{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:4rem;
  padding:.85rem 1.5rem;
  background:var(--glass-bg);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border:1px solid var(--glass-border);
  border-radius:100px;
  box-shadow:var(--glass-shadow);
  width:fit-content;gap:2rem;
}
.hero-meta .dot{width:6px;height:6px;border-radius:50%;background:#22C55E;box-shadow:0 0 8px #22C55E}
.hero-meta-item{
  display:flex;align-items:center;gap:.6rem;
  font-family:var(--ff-mono);font-size:.7rem;letter-spacing:.05em;
  color:var(--ink-60);
}
.hero-meta-sep{width:1px;height:14px;background:var(--ink-20)}

.hero-headline{
  max-width:18ch;margin-bottom:2rem;
}
.hero-headline .accent{
  color:var(--teal-700);
  font-weight:600;
  font-style:normal;
}

.hero-body{
  display:grid;grid-template-columns:1.2fr 1fr;
  gap:4rem;align-items:end;margin-top:3rem;
}
.hero-sub{
  font-size:1.1rem;line-height:1.55;color:var(--ink-60);
  max-width:42ch;
}
.hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:flex-end}
[dir="rtl"] .hero-actions{justify-content:flex-start}

/* ── INDEX STATS — CLAY CHIPS ── */
.index-strip{padding:60px 0}
.index-inner{
  width:90%;max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1.25rem;
}
.index-item{
  background:var(--cream);
  border-radius:24px;
  padding:2rem 1.75rem;
  box-shadow:var(--clay-md);
  border:1px solid rgba(255,255,255,.7);
  display:flex;flex-direction:column;gap:.5rem;
  transition:var(--trans);
}
.index-item:hover{transform:translateY(-3px);box-shadow:var(--clay-lg)}
.index-num{
  font-family:var(--ff-display);
  font-size:2.6rem;font-weight:400;
  line-height:1;color:var(--ink);
  letter-spacing:-.025em;
}
.index-num sup{font-size:1.2rem;color:var(--teal-400);vertical-align:super}
.index-num .h-suffix{font-size:1.5rem;color:var(--teal-400)}
.index-label{
  font-family:var(--ff-mono);font-size:.65rem;
  letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-40);
}

/* ── FEATURED AC ── */
.featured{padding:60px 0 120px}
.featured-grid{
  display:grid;grid-template-columns:1fr 1.1fr;
  gap:5rem;align-items:center;
}
.featured-visual{
  position:relative;
  aspect-ratio:4/5;
  background:linear-gradient(145deg,var(--teal-700),var(--teal-900));
  border-radius:36px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.12),
    0 30px 80px rgba(31,77,69,.25),
    0 4px 12px rgba(31,77,69,.15);
}
.featured-visual::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(circle at 70% 30%,rgba(184,214,207,.15) 0,transparent 50%),
    radial-gradient(circle at 20% 80%,rgba(74,158,142,.2) 0,transparent 50%);
}
.featured-icon-wrap{
  position:relative;z-index:1;
  width:200px;height:200px;
  background:var(--glass-bg-dark);
  backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.15);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.15);
}
.featured-icon-wrap svg{
  width:90px;height:90px;
  stroke:rgba(255,255,255,.85);
  stroke-width:1;fill:none;
}
.featured-tag{
  position:absolute;top:1.5rem;left:1.5rem;
  font-family:var(--ff-mono);
  font-size:.62rem;color:var(--white);
  letter-spacing:.1em;text-transform:uppercase;
  padding:.5rem 1rem;
  background:var(--glass-bg-dark);
  backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.2);
  border-radius:100px;
  z-index:2;
}
.featured-meta{
  position:absolute;bottom:1.5rem;left:1.5rem;
  font-family:var(--ff-mono);font-size:.7rem;
  color:rgba(255,255,255,.5);letter-spacing:.08em;
  z-index:2;
}

.featured-content h2{margin-bottom:1.5rem;max-width:16ch}
.featured-content .lede{margin-bottom:2rem}
.featured-list{
  display:flex;flex-direction:column;gap:.5rem;
  margin-bottom:2.5rem;
}
.featured-list li{
  display:grid;grid-template-columns:auto 1fr;gap:1.25rem;
  font-size:.95rem;color:var(--ink-60);
  align-items:center;
  padding:1rem 1.25rem;
  background:var(--glass-bg);
  backdrop-filter:blur(10px);
  border:1px solid var(--glass-border);
  border-radius:14px;
}
.featured-list li .mono{color:var(--teal-400);font-size:.65rem}

/* ── SERVICES GRID — CLAY CARDS ── */
.services{padding:120px 0}
.services-header{
  display:grid;grid-template-columns:1fr 1fr;gap:4rem;
  align-items:end;margin-bottom:5rem;
}
.services-header h2{max-width:16ch}
.services-header .lede{margin-bottom:0;max-width:38ch}

.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1.5rem;
}
.service-card{
  background:var(--cream);
  border-radius:28px;
  padding:2.25rem;
  border:1px solid rgba(255,255,255,.6);
  box-shadow:var(--clay-md);
  transition:var(--trans);
  display:flex;flex-direction:column;
  gap:1.25rem;
  position:relative;
  overflow:hidden;
  min-height:280px;
  cursor:pointer;
}
.service-card::before{
  content:'';position:absolute;
  top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);
}
.service-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--clay-lg);
}
.service-card:hover .service-card__cta{
  background:var(--teal-700);color:var(--white);
}

.service-card--featured{
  background:linear-gradient(145deg,var(--teal-700),var(--teal-900));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    -10px -10px 24px rgba(255,255,255,.4),
    14px 14px 32px rgba(31,77,69,.25);
}
.service-card--featured .service-card__num{color:var(--teal-200)}
.service-card--featured h3{color:var(--white)}
.service-card--featured p{color:rgba(255,255,255,.65)}
.service-card--featured .service-card__icon{background:var(--glass-bg-dark);border-color:rgba(255,255,255,.15)}
.service-card--featured .service-card__icon svg{stroke:var(--white)}
.service-card--featured .service-card__cta{background:rgba(255,255,255,.12);color:var(--white);border-color:rgba(255,255,255,.2)}
.service-card--featured:hover .service-card__cta{background:var(--white);color:var(--teal-700)}
.service-card--featured .service-card__tag{
  background:var(--glass-bg-dark);color:var(--teal-200);
  border:1px solid rgba(255,255,255,.18);
}

.service-card__top{
  display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;
}
.service-card__num{
  font-family:var(--ff-mono);
  font-size:.7rem;color:var(--ink-40);
  letter-spacing:.08em;
}
.service-card__icon{
  width:56px;height:56px;
  background:var(--white);
  border:1px solid rgba(255,255,255,.8);
  border-radius:18px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:var(--clay-sm);
}
.service-card__icon svg{
  width:26px;height:26px;
  stroke:var(--teal-700);stroke-width:1.5;fill:none;
}
.service-card__tag{
  display:inline-flex;align-items:center;gap:.4rem;
  font-family:var(--ff-mono);
  font-size:.6rem;color:var(--teal-700);
  letter-spacing:.08em;text-transform:uppercase;
  padding:.35rem .75rem;
  background:var(--teal-50);
  border-radius:100px;
  align-self:flex-start;
  border:1px solid var(--teal-200);
}
.service-card__tag::before{
  content:'';width:5px;height:5px;border-radius:50%;
  background:var(--teal-400);box-shadow:0 0 6px var(--teal-400);
}

.service-card h3{margin-top:auto}
.service-card p{font-size:.92rem;line-height:1.55}

.service-card__cta{
  display:inline-flex;align-items:center;justify-content:center;
  gap:.5rem;
  font-family:var(--ff-mono);
  font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;
  padding:.7rem 1.1rem;
  background:var(--white);color:var(--ink);
  border:1px solid var(--border);
  border-radius:100px;
  align-self:flex-start;
  margin-top:.5rem;
  transition:var(--trans);
}

/* ── PRICING — GLASS + CLAY HYBRID ── */
.pricing{padding:120px 0}
.pricing-header{
  display:grid;grid-template-columns:1fr 1fr;gap:4rem;
  align-items:end;margin-bottom:4rem;
}
.pricing-header h2{max-width:16ch}
.pricing-header .lede{max-width:38ch;margin-bottom:0}

.pricing-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:1.5rem;
}

.price-card{
  border-radius:32px;
  padding:3rem;
  display:flex;flex-direction:column;justify-content:space-between;
  min-height:380px;
  position:relative;overflow:hidden;
}
.price-card--featured{
  background:linear-gradient(145deg,var(--teal-700),var(--teal-900));
  color:var(--white);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.12),
    -10px -10px 24px rgba(255,255,255,.4),
    14px 14px 32px rgba(31,77,69,.3);
  border:1px solid rgba(255,255,255,.1);
}
.price-card--featured::before{
  content:'';position:absolute;top:0;right:0;
  width:300px;height:300px;
  background:radial-gradient(circle,rgba(184,214,207,.2),transparent 70%);
  pointer-events:none;
}
.price-card--featured h3,
.price-card--featured .price-currency,
.price-card--featured .price-amount,
.price-card--featured .price-amount-suffix{color:var(--white)}

.price-card--standard{
  background:var(--cream);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:var(--clay-md);
}

.price-tag{
  font-family:var(--ff-mono);
  font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.5rem 1rem;
  border-radius:100px;
  width:fit-content;
  margin-bottom:1.5rem;
}
.price-tag::before{
  content:'';width:5px;height:5px;border-radius:50%;
}
.price-card--featured .price-tag{
  background:var(--glass-bg-dark);
  color:var(--teal-200);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(10px);
}
.price-card--featured .price-tag::before{background:var(--teal-200);box-shadow:0 0 6px var(--teal-200)}
.price-card--standard .price-tag{
  background:var(--teal-50);color:var(--teal-700);
  border:1px solid var(--teal-200);
}
.price-card--standard .price-tag::before{background:var(--teal-400)}

.price-card h3{
  font-family:var(--ff-display);
  font-size:1.8rem;font-weight:400;letter-spacing:-.01em;
  line-height:1.1;
}

.price-figure{
  display:flex;align-items:baseline;gap:.6rem;
  margin:1.5rem 0 1rem;
}
.price-currency{
  font-family:var(--ff-mono);
  font-size:.85rem;letter-spacing:.06em;
  color:var(--ink-60);
  align-self:flex-start;padding-top:.6rem;
}
.price-amount{
  font-family:var(--ff-display);
  font-size:4.8rem;font-weight:400;letter-spacing:-.03em;
  line-height:.9;color:var(--ink);
}
.price-amount-suffix{
  font-family:var(--ff-display);
  font-size:1.4rem;font-weight:400;letter-spacing:-.01em;
  align-self:flex-end;padding-bottom:.6rem;
  opacity:.7;
}

.price-note{
  font-size:.92rem;line-height:1.55;
  margin-bottom:2rem;max-width:32ch;
}
.price-card--featured .price-note{color:rgba(255,255,255,.75)}
.price-card--standard .price-note{color:var(--ink-60)}

.price-footnote{
  text-align:center;margin-top:2.5rem;
  font-family:var(--ff-mono);
  font-size:.7rem;letter-spacing:.06em;
  color:var(--ink-40);text-transform:uppercase;
}

/* ── PROCESS ── */
.process{padding:120px 0}
.process-grid{
  display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;
  align-items:start;
}
.process-intro h2{max-width:14ch;margin-bottom:1.5rem}
.process-intro .lede{margin-bottom:0}

.process-steps{display:flex;flex-direction:column;gap:1rem}
.process-step{
  display:grid;grid-template-columns:auto 1fr;
  gap:1.5rem;align-items:center;
  padding:1.75rem 2rem;
  background:var(--cream);
  border:1px solid rgba(255,255,255,.7);
  border-radius:22px;
  box-shadow:var(--clay-sm);
  transition:var(--trans);
}
.process-step:hover{transform:translateX(4px);box-shadow:var(--clay-md)}
[dir="rtl"] .process-step:hover{transform:translateX(-4px)}
.process-step__num{
  font-family:var(--ff-display);
  font-size:2.2rem;font-weight:400;
  color:var(--teal-700);
  line-height:1;letter-spacing:-.02em;
  width:54px;height:54px;
  display:flex;align-items:center;justify-content:center;
  background:var(--white);
  border:1px solid rgba(255,255,255,.8);
  border-radius:18px;
  box-shadow:var(--clay-sm);
}
.process-step__body h4{margin-bottom:.3rem;font-size:1.15rem;font-family:var(--ff-display);font-weight:500;letter-spacing:-.01em}
.process-step__body p{font-size:.9rem;line-height:1.55;color:var(--ink-60)}

/* ── LOCATIONS — DARK GLASS ── */
.locations{
  padding:120px 0;
  background:linear-gradient(145deg,var(--ink),#0F1916);
  position:relative;overflow:hidden;
}
.locations::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(circle at 20% 50%,rgba(74,158,142,.12) 0,transparent 50%),
    radial-gradient(circle at 80% 30%,rgba(184,214,207,.06) 0,transparent 50%);
}
.locations h2{color:var(--white)}
.locations .eyebrow{color:var(--teal-400);background:var(--glass-bg-dark);border-color:rgba(255,255,255,.1)}
.locations .container{position:relative;z-index:1}

.locations-header{margin-bottom:4rem;max-width:32ch}
.locations-header h2{max-width:14ch}

.locations-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;
}
.location-card{
  background:var(--glass-bg-dark);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:3rem;
  display:flex;flex-direction:column;gap:2rem;
  min-height:300px;
  transition:var(--trans);
  position:relative;overflow:hidden;
}
.location-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);
}
.location-card:hover{
  border-color:rgba(255,255,255,.15);
  transform:translateY(-3px);
}

.location-meta{display:flex;justify-content:space-between;align-items:flex-start}
.location-index{
  font-family:var(--ff-mono);
  font-size:.7rem;color:var(--teal-400);
  letter-spacing:.08em;
}
.location-city{
  font-family:var(--ff-display);
  font-size:2.6rem;font-weight:400;
  letter-spacing:-.02em;color:var(--white);
  line-height:1;
}
.location-area{
  font-family:var(--ff-mono);
  font-size:.7rem;color:rgba(255,255,255,.45);
  letter-spacing:.08em;text-transform:uppercase;
  margin-top:.5rem;
}
.location-bottom{
  margin-top:auto;
  padding-top:1.5rem;
  border-top:1px solid rgba(255,255,255,.1);
  font-family:var(--ff-mono);
  font-size:.72rem;color:rgba(255,255,255,.55);
  line-height:1.7;
}

/* ── CTA BANNER ── */
.cta{
  padding:100px 0;
  background:linear-gradient(145deg,var(--teal-700),var(--teal-900));
  color:var(--white);
  position:relative;overflow:hidden;
}
.cta::before{
  content:'';position:absolute;top:-50%;right:-10%;
  width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle,rgba(184,214,207,.15),transparent 70%);
  pointer-events:none;
}
.cta-inner{
  display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center;
  position:relative;z-index:1;
}
.cta h2{color:var(--white);max-width:18ch}
.cta p{color:rgba(255,255,255,.7);margin-top:1rem;max-width:36ch}
.cta-actions{display:flex;flex-direction:column;gap:1.25rem;align-items:flex-start}
.cta-actions .btn{align-self:flex-start}
.cta-phone{
  display:block;
  font-family:var(--ff-display);
  font-size:1.7rem;font-weight:400;letter-spacing:-.01em;
  color:var(--white);margin-bottom:.4rem;
}
.cta-phone:hover{opacity:.8}
.cta-phone-label{
  font-family:var(--ff-mono);
  font-size:.66rem;color:rgba(255,255,255,.5);letter-spacing:.08em;
  text-transform:uppercase;
}
.cta .eyebrow{background:var(--glass-bg-dark);color:var(--teal-200);border-color:rgba(255,255,255,.15)}

/* ── FOOTER ── */
.footer{
  background:linear-gradient(180deg,var(--ink),#0A1310);
  color:var(--white);padding:80px 0 0;
  position:relative;
}
.footer-top{
  display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;
  gap:3rem;padding-bottom:3rem;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.footer-brand .logo-img{filter:brightness(0) invert(1);opacity:.9;margin-bottom:1.75rem;height:70px;max-width:300px}
.footer-brand p{font-size:.92rem;color:rgba(255,255,255,.45);max-width:30ch;line-height:1.6;margin-bottom:1.5rem}

.footer-col h5{
  font-family:var(--ff-mono);
  color:rgba(255,255,255,.35);margin-bottom:1.25rem;
}
.footer-col ul{display:flex;flex-direction:column;gap:.7rem}
.footer-col a{font-size:.9rem;color:rgba(255,255,255,.6);transition:color var(--trans)}
.footer-col a:hover{color:var(--teal-400)}

.footer-contact-phone{
  display:block;
  font-family:var(--ff-display);
  font-size:1.3rem;font-weight:400;letter-spacing:-.01em;
  color:var(--white);margin-bottom:.5rem;
}
.footer-contact-phone:hover{color:var(--teal-400)}
.footer-contact p{font-size:.82rem;color:rgba(255,255,255,.4);line-height:1.9}

.footer-social{display:flex;gap:.6rem;margin-top:1rem}
.footer-social a{
  width:38px;height:38px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  transition:var(--trans);
}
.footer-social a:hover{background:var(--teal-700);border-color:var(--teal-400);transform:translateY(-2px)}
.footer-social svg{width:16px;height:16px;fill:rgba(255,255,255,.7)}

.footer-bottom{
  padding:1.75rem 0;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;
}
.footer-bottom p{
  font-family:var(--ff-mono);
  font-size:.68rem;color:rgba(255,255,255,.3);letter-spacing:.06em;
}
.footer-bottom a{color:rgba(255,255,255,.5);transition:color var(--trans)}
.footer-bottom a:hover{color:var(--teal-400)}
.footer-legal{display:flex;gap:1.5rem;flex-wrap:wrap;font-family:var(--ff-mono);font-size:.68rem}

/* ═══════════════════════════════════════
   PAGE HERO (sub-pages)
   ═══════════════════════════════════════ */
.page-hero{
  padding:calc(var(--nav-h) + 80px) 0 80px;
  position:relative;overflow:hidden;
}
.page-hero .eyebrow{margin-bottom:1.5rem}
.page-hero h1{
  font-size:clamp(2.6rem,5vw,4.4rem);
  margin-bottom:1.5rem;max-width:18ch;
}
.page-hero .lede{font-size:1.15rem;max-width:46ch}

/* ═══════════════════════════════════════
   ABOUT PAGE
   ═══════════════════════════════════════ */
.about-story{padding:80px 0}
.story-grid{
  display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;
  align-items:start;
}
.story-visual{
  position:sticky;top:calc(var(--nav-h) + 40px);
  aspect-ratio:3/4;
  background:linear-gradient(145deg,var(--teal-700),var(--teal-900));
  border-radius:36px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  box-shadow:0 30px 80px rgba(31,77,69,.25);
  position:relative;
}
.story-visual::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(circle at 30% 30%,rgba(184,214,207,.15) 0,transparent 60%),
    radial-gradient(circle at 70% 80%,rgba(74,158,142,.2) 0,transparent 60%);
}
.story-visual h2{
  position:relative;z-index:1;
  color:var(--white);font-size:3rem;
  text-align:center;
  font-weight:300;max-width:10ch;
  letter-spacing:-.03em;
}
.story-content{display:flex;flex-direction:column;gap:2.5rem}
.story-block h3{margin-bottom:.75rem;font-size:1.6rem}
.story-block p{font-size:1rem;line-height:1.7}
.story-block p + p{margin-top:1rem}

.values-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;
  margin-top:3rem;
}
.value-card{
  background:var(--cream);
  border:1px solid rgba(255,255,255,.7);
  border-radius:22px;
  padding:1.75rem;
  box-shadow:var(--clay-sm);
}
.value-card .value-num{
  font-family:var(--ff-mono);font-size:.65rem;
  color:var(--teal-400);letter-spacing:.08em;
}
.value-card h4{margin:.75rem 0 .5rem;font-size:1.15rem;font-family:var(--ff-display);font-weight:500}
.value-card p{font-size:.88rem;line-height:1.55}

/* ═══════════════════════════════════════
   CONTACT PAGE
   ═══════════════════════════════════════ */
.contact-body{padding:60px 0 120px}
.contact-layout{
  display:grid;grid-template-columns:1.4fr 1fr;
  gap:3rem;align-items:start;
}

.contact-form-wrap{
  background:var(--cream);
  border:1px solid rgba(255,255,255,.7);
  border-radius:32px;
  padding:3rem;
  box-shadow:var(--clay-md);
}
.contact-form{display:flex;flex-direction:column;gap:1.5rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}

.form-group{display:flex;flex-direction:column;gap:.55rem}
.form-group label{
  font-family:var(--ff-mono);
  font-size:.66rem;font-weight:500;letter-spacing:.08em;
  text-transform:uppercase;color:var(--ink-60);
}
.form-group input,
.form-group textarea,
.select-wrap select{
  width:100%;padding:.95rem 1.2rem;
  font-size:1rem;font-family:var(--ff-body);color:var(--ink);
  background:var(--white);
  border:1px solid var(--border);border-radius:14px;
  outline:none;
  transition:var(--trans);
  appearance:none;-webkit-appearance:none;
  box-shadow:inset 0 1px 2px rgba(20,32,29,.03);
}
.form-group input::placeholder,
.form-group textarea::placeholder{color:var(--ink-40)}
.form-group input:focus,
.form-group textarea:focus,
.select-wrap select:focus{
  border-color:var(--teal-400);
  box-shadow:0 0 0 4px rgba(74,158,142,.12);
}
.form-group textarea{resize:vertical;min-height:100px}

.select-wrap{position:relative}
.select-wrap::after{
  content:'';position:absolute;right:1.2rem;top:50%;
  transform:translateY(-25%);width:9px;height:5px;
  background:var(--ink-60);
  clip-path:polygon(0 0,100% 0,50% 100%);
  pointer-events:none;
}
[dir="rtl"] .select-wrap::after{right:auto;left:1.2rem}

.contact-info-card{
  background:linear-gradient(145deg,var(--teal-700),var(--teal-900));
  color:var(--white);
  border-radius:32px;
  padding:2.5rem;
  box-shadow:0 20px 60px rgba(31,77,69,.2);
  position:relative;overflow:hidden;
}
.contact-info-card::before{
  content:'';position:absolute;top:-30%;right:-20%;
  width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(184,214,207,.18),transparent 70%);
}
.contact-info-card>*{position:relative;z-index:1}
.contact-info-card h3{
  font-family:var(--ff-display);
  font-size:1.6rem;font-weight:400;letter-spacing:-.01em;
  color:var(--white);margin-bottom:1.5rem;
}
.info-row{
  display:flex;flex-direction:column;gap:.3rem;
  padding:1.25rem 0;
  border-top:1px solid rgba(255,255,255,.1);
}
.info-row:last-of-type{border-bottom:1px solid rgba(255,255,255,.1)}
.info-row .mono{color:var(--teal-200);font-size:.62rem}
.info-row .value{font-size:1rem;color:var(--white);font-weight:400}
.info-row .value-sub{font-size:.85rem;color:rgba(255,255,255,.55);margin-top:.2rem}
.info-row a.value:hover{color:var(--teal-200)}

.contact-info-card .whatsapp-btn{
  display:flex;align-items:center;justify-content:center;gap:.6rem;
  background:#25D366;color:var(--white);
  padding:1rem 1.25rem;margin-top:1.5rem;
  border-radius:14px;
  font-size:.9rem;font-weight:500;letter-spacing:.01em;
  transition:filter var(--trans);
  box-shadow:0 4px 16px rgba(37,211,102,.25);
}
.contact-info-card .whatsapp-btn:hover{filter:brightness(1.08)}
.contact-info-card .whatsapp-btn svg{width:18px;height:18px;fill:var(--white)}

/* ═══════════════════════════════════════
   LEGAL PAGES (Privacy / Terms)
   ═══════════════════════════════════════ */
.legal{padding:60px 0 120px}
.legal-layout{
  display:grid;grid-template-columns:240px 1fr;gap:4rem;
  align-items:start;max-width:1080px;margin:0 auto;
}
.legal-toc{
  position:sticky;top:calc(var(--nav-h) + 20px);
  background:var(--cream);
  border-radius:22px;
  padding:1.5rem;
  box-shadow:var(--clay-sm);
  border:1px solid rgba(255,255,255,.7);
}
.legal-toc h5{margin-bottom:1rem}
.legal-toc ol{list-style:none;display:flex;flex-direction:column;gap:.5rem;counter-reset:toc}
.legal-toc li{counter-increment:toc}
.legal-toc a{
  font-size:.85rem;color:var(--ink-60);
  transition:color var(--trans);
  display:block;padding:.35rem 0;
}
.legal-toc a::before{
  content:counter(toc,decimal-leading-zero) " · ";
  font-family:var(--ff-mono);font-size:.72rem;color:var(--teal-400);
}
.legal-toc a:hover{color:var(--teal-700)}

.legal-content{
  background:var(--cream);
  border-radius:32px;
  padding:3.5rem;
  box-shadow:var(--clay-md);
  border:1px solid rgba(255,255,255,.7);
}
.legal-content h2{
  font-size:1.7rem;margin:2.5rem 0 1rem;
  padding-bottom:.75rem;
  border-bottom:1px solid var(--border);
  scroll-margin-top:calc(var(--nav-h) + 30px);
}
.legal-content h2:first-child{margin-top:0}
.legal-content h3{font-size:1.2rem;margin:1.5rem 0 .75rem}
.legal-content p{margin-bottom:1rem;font-size:.96rem;line-height:1.7}
.legal-content ul,.legal-content ol{margin:1rem 0 1rem 1.5rem}
.legal-content li{margin-bottom:.5rem;font-size:.95rem;line-height:1.65;color:var(--ink-60);list-style:disc}
.legal-content ol li{list-style:decimal}
.legal-content strong{color:var(--ink);font-weight:600}
.legal-meta{
  font-family:var(--ff-mono);font-size:.72rem;
  color:var(--ink-40);letter-spacing:.06em;text-transform:uppercase;
  padding-bottom:2rem;margin-bottom:2rem;
  border-bottom:1px solid var(--border);
}

/* ── MOBILE ── */
@media (max-width:960px){
  section{padding:80px 0}
  :root{--nav-h:84px}
  .logo-img{height:60px}
  .nav-links{
    position:fixed;inset:0;
    flex-direction:column;justify-content:center;gap:1.5rem;
    background:rgba(250,247,242,.97);
    backdrop-filter:blur(20px);
    transform:translateX(100%);transition:transform .3s ease;
    z-index:800;padding:var(--nav-h) 0 0;
  }
  .nav-links.open{transform:translateX(0)}
  .nav-links>li>a{font-size:1.4rem;font-family:var(--ff-display);font-weight:400;color:var(--ink)}
  .nav-links>li>a.nav-cta{font-size:1rem!important}
  .hamburger{display:flex;z-index:950}

  .hero-body{grid-template-columns:1fr;gap:2rem;align-items:start}
  .hero-actions{justify-content:flex-start!important}
  .hero-orb-1{width:240px;height:240px;right:-100px;top:30%}
  .hero-orb-2,.hero-orb-3{display:none}

  .index-inner{grid-template-columns:1fr 1fr;gap:1rem}
  .featured-grid{grid-template-columns:1fr;gap:3rem}
  .services-header{grid-template-columns:1fr;gap:1.5rem}
  .services-grid{grid-template-columns:1fr 1fr;gap:1rem}
  .service-card{padding:1.75rem;min-height:240px}
  .pricing-header{grid-template-columns:1fr;gap:1.5rem}
  .pricing-grid{grid-template-columns:1fr;gap:1rem}
  .price-card{padding:2.25rem;min-height:auto}
  .price-amount{font-size:3.8rem}
  .process-grid{grid-template-columns:1fr;gap:2rem}
  .locations-grid{grid-template-columns:1fr;gap:1rem}
  .location-card{padding:2rem;min-height:240px}
  .cta-inner{grid-template-columns:1fr;gap:2rem}
  .footer-top{grid-template-columns:1fr 1fr;gap:2.5rem}
  .contact-layout{grid-template-columns:1fr;gap:2rem}
  .contact-form-wrap{padding:2rem}
  .form-row{grid-template-columns:1fr}
  .story-grid{grid-template-columns:1fr;gap:3rem}
  .story-visual{position:static;aspect-ratio:16/10}
  .story-visual h2{font-size:2.2rem}
  .values-grid{grid-template-columns:1fr}
  .legal-layout{grid-template-columns:1fr;gap:1.5rem}
  .legal-toc{position:static}
  .legal-content{padding:2rem}
  .hero-meta{flex-wrap:wrap;gap:1rem;padding:.7rem 1.25rem}
  .hero-meta-sep{display:none}
}

@media (max-width:560px){
  .index-inner{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr;gap:2rem}
  .hero-actions{flex-direction:column;align-items:stretch;width:100%}
  .hero-actions .btn{justify-content:center}
}

/* ── RTL ── */
[dir="rtl"] .nav-links{flex-direction:row-reverse}
[dir="rtl"] .hero-actions{flex-direction:row-reverse;justify-content:flex-start}
[dir="rtl"] .footer-top{direction:rtl}
[dir="rtl"] .contact-layout{direction:rtl}
[dir="rtl"] .services-grid{direction:rtl}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4{
  font-family:'Noto Sans Arabic',var(--ff-body);font-weight:500;
}
[dir="rtl"] .eyebrow,[dir="rtl"] .mono,[dir="rtl"] .index-label,
[dir="rtl"] .service-card__num,[dir="rtl"] .form-group label,
[dir="rtl"] .info-row .mono,[dir="rtl"] .price-tag,
[dir="rtl"] .footer-bottom p,[dir="rtl"] .footer-legal{
  font-family:'Noto Sans Arabic',var(--ff-mono);
}

/* ── SCROLL REVEAL ── */
.js-ready .reveal{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}
.js-ready .reveal.visible{opacity:1;transform:none}

/* ── SELECTION ── */
::selection{background:var(--teal-700);color:var(--white)}
