@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700&display=swap');

:root {
  --bg: #0b0f14;
  --surface: #111822;
  --surface-2:#0f1520;
  --text: #e7edf3;
  --muted: #9fb0c0;
  --primary: #4da3ff;
  --primary-2:#7cc0ff;
  --accent: #7ee787;
  --danger: #ff6b6b;
  --shadow: 0 10px 30px rgba(0,0,0,.25);
  --radius: 14px;
}

* { box-sizing: border-box; margin:0; padding:0; }
html, body {
  height: 100%;
  scroll-snap-type: y mandatory;
  overflow-y: scroll;
}
body {
  font: 16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, "Helvetica Neue", Arial, "Noto Sans";
  color: var(--text);
  background: linear-gradient(180deg, var(--bg), #0c1016 40%, #0a0f15 100%);
}

/* container */
.container { width: min(1100px, 92vw); margin: 0 auto; }

/* navbar */
.site-header {
  position: sticky; top:0; z-index:1000;
  background: rgba(15, 21, 32, .8);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.05);
}
.navbar {
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.7rem 0;
}
.nav-links {
  display:flex; gap:.6rem; list-style:none;
}
.nav-link {
  display:inline-block; padding:.55rem .9rem; border-radius:999px;
  text-decoration:none; color:var(--text); opacity:.9;
}
.nav-link:hover { background:rgba(255,255,255,.06); }
.nav-link.active { background:rgba(77,163,255,.15); color:var(--primary); }

.nav-right { display:flex; align-items:center; gap:.6rem; }
.brand img {
  width:40px; height:40px; object-fit:contain;
  background: rgba(255,255,255,.05); border-radius:50%;
  outline:1px dashed rgba(255,255,255,.2);
}

/* hamburger */
.nav-toggle { display:none; background:none; border:0; cursor:pointer; }
.nav-toggle .bar {
  display:block; width:24px; height:2px; background:var(--text); margin:5px 0;
}

/* dropdown */
.dropdown { position:relative; }
.dropdown-toggle {
  background:transparent; color:var(--text);
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px; padding:.45rem .8rem; cursor:pointer;
}
.dropdown-menu {
  position:absolute; right:0; top:110%; min-width:210px; padding:.4rem;
  background:var(--surface); border:1px solid rgba(255,255,255,.08);
  box-shadow: var(--shadow); border-radius: var(--radius);
  display:none;
}
.dropdown.open .dropdown-menu { display:block; }
.dropdown-menu a {
  display:block; padding:.5rem .7rem; border-radius:10px;
  color:var(--text); text-decoration:none;
}
.dropdown-menu a:hover { background:rgba(255,255,255,.06); }
.dropdown-menu hr {
  border:0; border-top:1px solid rgba(255,255,255,.08); margin:.4rem 0;
}

/* sections */
section {
  height:100vh;                 /* full screen height */
  display:flex; flex-direction:column;
  justify-content:center; align-items:center;
  padding:2rem; scroll-snap-align:start;
}
.section.alt { background: var(--surface-2); }

/* hero */
.hero {
  text-align:center;
  background: radial-gradient(1000px 300px at 20% -10%, rgba(126,231,135,.15), transparent 60%),
              radial-gradient(900px 300px at 80% -10%, rgba(77,163,255,.2), transparent 60%);
}
.headline { 
  font-size: clamp(2.2rem, 6vw, 3.6rem); 
  margin:.2rem 0; 
  font-family: 'Cinzel Decorative', serif; /* New font */
}
.tagline { font-size: clamp(1.1rem, 2.8vw, 1.4rem); color: var(--primary-2); margin:.2rem 0 .8rem; }
.subtext { color: var(--muted); max-width:720px; margin:0 auto 1.2rem; }
.hero-cta { display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; }

/* grids / cards */
.card {
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.08);
  border-radius: var(--radius); padding:1rem; box-shadow: var(--shadow);
  margin:.6rem;
}
.card-grid {
  display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:1rem; width:100%;
}

/* lists */
.checklist, .bullets { padding-left:1.1rem; }
.checklist li { margin:.3rem 0; list-style:"✔  "; }
.bullets li { margin:.25rem 0; }

/* forms */
label { display:block; margin:.6rem 0 .25rem; }
input, textarea {
  width:100%; background:rgba(255,255,255,.04); color:var(--text);
  border:1px solid rgba(255,255,255,.12); border-radius:12px; padding:.7rem .8rem;
}
input:focus, textarea:focus {
  outline:2px solid rgba(77,163,255,.35);
  border-color: rgba(77,163,255,.35);
}
.hp { position:absolute !important; left:-9999px !important; opacity:0 !important; }

/* buttons */
.btn {
  display:inline-block; text-decoration:none; border-radius:999px;
  padding:.65rem 1rem; border:1px solid transparent; cursor:pointer;
}
.btn.primary { background:var(--primary); color:#07111c; font-weight:600; }
.btn.outline { border-color: rgba(255,255,255,.2); color:var(--text); }
.btn:hover { filter: brightness(1.05); }

/* footer */
.site-footer {
  padding:32px 0; border-top:1px solid rgba(255,255,255,.06);
  text-align:center; color:var(--muted);
}
.to-top { margin-left:.6rem; color:var(--primary); text-decoration:none; }

/* social icons */
.social-links {
  margin-top:1rem;
  display:flex;
  justify-content:center;
  gap:1rem;
}
.social-links a {
  color:var(--text);
  font-size:1.4rem;
  text-decoration:none;
  transition:color .2s;
}
.social-links a:hover { color:var(--primary); }

/* mobile */
@media (max-width: 900px) {
  .nav-toggle { display:block; }
  .nav-links {
    position:fixed; inset:60px 0 auto 0; background:var(--surface);
    transform: translateY(-120%); transition: transform .25s ease;
    padding:1rem; flex-direction:column;
  }
  .nav-links.open { transform: translateY(0); }
}

footer.site-footer {
  scroll-snap-align: none; /* disable snap for footer */
  height: auto;
}

/* Social links */
.social-links {
  margin-top: 1rem;
  display: flex;
  gap: 1.2rem;
}

.social-links a svg {
  transition: transform 0.2s, fill 0.3s;
}

.social-links a:hover svg {
  transform: scale(1.2);
  fill: #00aced; /* LinkedIn blue-ish hover, looks modern */
}


