
:root{
  --tempo-purple:#7b5cd6;
  --tempo-deep:#5f3dc4;
  --tempo-light:#efe9ff;
  --text:#1b1b1f;
}

html,body{scroll-behavior:smooth;color:var(--text);}
.section-title{font-weight:800;letter-spacing:.2px;}

.navbar .nav-link{font-weight:500;}
.navbar .btn{font-weight:600;}

.hero{
  position:relative;
  background: radial-gradient(1200px 600px at 10% 10%, rgba(255,255,255,.15), transparent 60%),
              linear-gradient(135deg,var(--tempo-deep),var(--tempo-purple));
}
.hero-card{
  width:420px; max-width:92%; aspect-ratio:1/1; object-fit:cover;
  border-radius:24px;
  border: 6px solid rgba(255,255,255,.35);
}
.hero-curve{
  position:absolute; left:0; right:0; bottom:-1px; height:60px;
  background: linear-gradient(to bottom, rgba(123,92,214,0), #fff);
}

/* about tiles */
.about-grid{
  display:grid; gap:16px;
  grid-template-columns:repeat(2,1fr);
}
.about-tile{background:#fff;}

/* work images */
.work-card img.object-cover{
  height:220px; object-fit:cover;
}

/* cards */
.card-title{font-weight:700;}
.card{transition:transform .2s ease, box-shadow .2s ease;}
.card:hover{transform:translateY(-4px); box-shadow:0 10px 26px rgba(0,0,0,.08);}

/* utilities */
.text-primary{color:var(--tempo-deep)!important;}
.btn-primary{background:var(--tempo-deep); border-color:var(--tempo-deep);}
.btn-primary:hover{background:#4d2fb0; border-color:#4d2fb0;}
.btn-outline-light:hover{color:#222; background:#fff; border-color:#fff;}
