/* ========== Base & variables ========== */
* { box-sizing: border-box; margin:0; padding:0; }
:root{
  --bg:#0d1114;
  --panel:#0f1417;
  --muted:#9aa3ad;
  --accent1:#e1306c; /* pink */
  --accent2:#0071e3; /* blue */
  --glass: rgba(255,255,255,0.03);
  --maxw:1100px;
  --radius:12px;
}

html,body { height:100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial; background:var(--bg); color:#fff; -webkit-font-smoothing:antialiased; }

/* ===== Header ===== */
.site-header { position:sticky; top:0; z-index:60; backdrop-filter: blur(6px); background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02)); border-bottom:1px solid rgba(255,255,255,0.03); }
.header-inner { max-width:var(--maxw); margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:12px 18px; gap:12px; }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:inherit; }
.brand-logo { width:48px; height:48px; border-radius:10px; background-image: url('static/logo.jpg'), linear-gradient(135deg,#1f2937,#374151); background-size:cover; background-position:center; box-shadow: 0 8px 30px rgba(0,0,0,0.6); border:1px solid rgba(255,255,255,0.03); }
.brand-text { font-weight:700; letter-spacing:0.2px; }

/* nav */
.main-nav { display:flex; gap:16px; align-items:center; }
.nav-link { color:rgba(255,255,255,0.9); text-decoration:none; padding:8px 10px; border-radius:8px; font-weight:600; transition: background .15s, color .15s; }
.nav-link:hover, .nav-link.active { color:var(--accent2); background: rgba(255,255,255,0.02); }

/* header actions */
.header-actions { display:flex; gap:10px; align-items:center; }
.icon { color:var(--muted); text-decoration:none; font-weight:600; }
.hamburger { display:none; background:none; border:none; color:var(--muted); font-size:20px; }

/* mobile nav */
.mobile-nav { display:none; background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02)); padding:12px 20px; border-bottom:1px solid rgba(255,255,255,0.03); }

/* ===== Panels / layout ===== */
.panel { max-width:var(--maxw); margin:28px auto; padding:26px; background: linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.00)); border-radius:var(--radius); border:1px solid rgba(255,255,255,0.03); box-shadow: 0 8px 30px rgba(0,0,0,0.7); }
.lead { color:var(--muted); font-size:1rem; margin-bottom:12px; }

/* ===== Hero ===== */
.hero { display:grid; grid-template-columns: 260px 1fr; gap:28px; align-items:center; padding:30px; border-radius:var(--radius); }
.hero-business { background: linear-gradient(90deg, rgba(7,68,133,0.5), rgba(225,48,108,0.25)); color:#fff; }
.avatar { width:230px; height:230px; border-radius:50%; background-image: url('static/profile.png'), linear-gradient(135deg,#10131a,#1f2937); background-size:cover; background-position:center; border:6px solid rgba(255,255,255,0.03); box-shadow: 0 20px 60px rgba(0,0,0,0.7); }
.hero-title { font-size:2.4rem; margin-bottom:6px; }
.hero-sub { color:var(--muted); margin-bottom:10px; }

/* CTA */
.cta-row { display:flex; gap:12px; margin:12px 0 18px; }
.btn { display:inline-block; padding:10px 16px; border-radius:10px; font-weight:700; text-decoration:none; cursor:pointer; }
.primary { background: linear-gradient(90deg,var(--accent1),#ff7aa2); color:#fff; box-shadow: 0 10px 30px rgba(225,48,108,0.12); }
.outline { background:transparent; border:1px solid rgba(255,255,255,0.06); color:#fff; }
.btn:hover { transform: translateY(-3px); }

/* meta & socials */
.meta { display:flex; gap:12px; list-style:none; margin-top:6px; color:var(--muted); padding-left:0; }
.socials { margin-top:12px; display:flex; gap:8px; }
.pill { padding:8px 12px; border-radius:999px; background:var(--glass); color:#fff; text-decoration:none; font-weight:700; }

/* two-col */
.two-col { display:grid; grid-template-columns: 1fr 1fr; gap:20px; margin-top:18px; }

/* chips / skills */
.chips { display:flex; flex-wrap:wrap; gap:10px; margin-top:8px; }
.chip { padding:8px 12px; border-radius:999px; background: rgba(255,255,255,0.02); color:var(--muted); font-weight:700; }

/* grid cards */
.grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap:18px; margin-top:12px; }
.card { border-radius:10px; overflow:hidden; display:flex; flex-direction:column; background: linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.00)); border:1px solid rgba(255,255,255,0.03); }
.card-media { height:140px; background-size:cover; background-position:center; }
.card-body { padding:14px; }
.muted { color:var(--muted); margin-top:8px; }

/* services */
.cards { display:flex; gap:18px; flex-wrap:wrap; margin-top:18px; }
.service-card { padding:18px; border-radius:10px; min-width:260px; background: rgba(255,255,255,0.01); border:1px solid rgba(255,255,255,0.03); }

/* contact form */
.contact-form { display:flex; flex-direction:column; gap:12px; max-width:680px; margin:0 auto; }
.contact-form input, .contact-form textarea { padding:12px; border-radius:8px; background: rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.03); color:#fff; outline:none; }

/* footer */
.site-footer { margin-top:30px; border-top:1px solid rgba(255,255,255,0.03); padding:14px 0; }
.footer-inner { max-width:var(--maxw); margin:0 auto; display:flex; justify-content:space-between; align-items:center; padding:8px 18px; }
.footer-logo { width:40px; height:40px; border-radius:8px; background-image: url('static/logo.jpg'), linear-gradient(135deg,#10131a,#1f2937); background-size:cover; }

/* helpers */
.link { color:var(--accent2); text-decoration:none; font-weight:700; }

/* responsive */
@media (max-width:900px){
  .hero { grid-template-columns: 1fr; text-align:center; padding:18px; }
  .two-col { grid-template-columns:1fr; }
  .main-nav{ display:none; }
  .hamburger{ display:block; }
  .mobile-nav{ display:block; }
  .cards{ flex-direction:column; }
  .header-inner{ padding:10px; }
}