:root{
  --bg:#f5f5f7;
  --ink:#1d1d1f;
  --muted:#6e6e73;
  --card:#ffffff;
  --border:#d2d2d7;
  --gray-light:#f0f0f2;
  --gray-mid:#86868b;
}

*{box-sizing:border-box}

html,body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--ink);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,"Noto Sans","Noto Sans Arabic",Arial;
  line-height:1.7;
  font-size:20px;
}

a{color:inherit;text-decoration:none}
a:hover{opacity:.7}

.page{
  max-width:700px;
  margin:0 auto;
  padding:50px 24px 70px;
}

/* Hero */

.hero{
  text-align:center;
  margin-bottom:50px;
}

.name{
  font-size:44px;
  font-weight:700;
  letter-spacing:-.5px;
  margin:0 0 4px;
}

.subtitle{
  font-size:22px;
  font-weight:400;
  color:var(--muted);
  margin:0 0 10px;
}

.tagline{
  font-size:18px;
  color:var(--gray-mid);
  margin:0;
}

/* Intro */

.intro{
  text-align:center;
  background:var(--card);
  padding:28px 24px;
  border-radius:16px;
  margin-bottom:36px;
  border:1px solid var(--border);
}

.intro p{
  margin:0;
  font-size:18px;
  color:var(--ink);
}

/* Domain cards */

.domains{
  display:flex;
  flex-direction:column;
  gap:16px;
  margin-bottom:50px;
}

.domain-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:24px 24px 28px;
  text-align:center;
  transition:transform .15s ease, box-shadow .15s ease;
}

.domain-card:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(0,0,0,.08);
}

.domain-icon{
  font-size:36px;
  margin-bottom:6px;
}

.domain-card h2{
  font-size:22px;
  font-weight:600;
  margin:0 0 8px;
}

.domain-card p{
  font-size:16px;
  color:var(--muted);
  margin:0;
  line-height:1.6;
}

/* Contact footer */

.contact{
  text-align:center;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:30px 24px;
}

.contact h2{
  font-size:22px;
  font-weight:600;
  margin:0 0 16px;
}

.contact-links{
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:center;
}

.contact-links a{
  font-size:18px;
  color:var(--ink);
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Responsive tweaks */

@media(max-width:480px){
  .name{font-size:34px}
  .page{padding:30px 18px 50px}
}