/* praveenkorra.com — Light Theme v2
   Drop-in replacement for /assets/css/style.css
   - Clean white background
   - Softer borders & shadows
   - Light navigation bar
   - Lighter forms + better focus states
*/

:root{
  --bg:#f8fafc;          /* page background */
  --bg-2:#ffffff;        /* surfaces/cards */
  --text:#0f172a;        /* primary text */
  --muted:#475569;       /* secondary text */
  --accent:#0284c7;      /* primary accent */
  --accent-2:#0ea5e9;    /* accent gradient end */
  --border:#e2e8f0;      /* borders/dividers */
  --ring:#bae6fd;        /* focus ring */
  --radius:18px;         /* card/button radius */
  --maxw:1100px;         /* container max width */
  --shadow:0 8px 24px rgba(2, 8, 23, .06); /* soft shadow */
}

*{box-sizing:border-box}
html,body{
  margin:0; padding:0;
  background:var(--bg);
  color:var(--text);
  font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,'Noto Sans',sans-serif;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}

a{color:var(--accent);text-decoration:none}
a:hover{opacity:.9}

/* Layout */
.container{max-width:var(--maxw);margin:0 auto;padding:24px}

/* Top Nav (light, sticky) */
.nav{
  display:flex; gap:18px; align-items:center; justify-content:space-between;
  padding:14px 24px; position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.85);
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--border);
}
.nav .links a{margin-left:14px;color:var(--text);opacity:.85}
.nav .links a:hover{opacity:1}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.3px}
.brand .dot{
  width:10px;height:10px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  box-shadow:0 0 0 4px rgba(14,165,233,.15);
}

/* Hero */
.hero{padding:72px 24px}
h1{font-size:44px;line-height:1.1;margin:0 0 12px}
@media (min-width:900px){ h1{font-size:52px} }
.kicker{letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-size:12px}
.lead{color:var(--muted);max-width:760px}

/* Grid + Cards */
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:28px}
.card{
  background:var(--bg-2);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:18px;
  box-shadow:var(--shadow);
  transform:translateY(2px);
  transition:transform .18s ease, box-shadow .18s ease;
}
.card:hover{transform:translateY(0);box-shadow:0 14px 32px rgba(2,8,23,.08)}
.card h3{margin:0 0 6px}

/* Sections + Footer */
.section{padding:32px 24px}
.section h2{font-size:28px;margin:0 0 10px}
.footer{
  border-top:1px solid var(--border);
  color:var(--muted);
  padding:32px 24px;
  background:#fff;
}

/* Badges (light) */
.badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:999px;
  background:#eef6ff;
  border:1px solid #dbeafe;
  color:#0c4a6e;font-size:12px;font-weight:600;
}

/* Timeline (lighter rails + glow dots) */
.timeline{position:relative;margin:24px 0;padding-left:22px}
.timeline:before{
  content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;
  background:linear-gradient(#bfdbfe,#e2e8f0);
}
.ti{position:relative;margin:18px 0;padding-left:14px}
.ti:before{
  content:"";position:absolute;left:-10px;top:8px;width:12px;height:12px;border-radius:50%;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  box-shadow:0 0 0 6px rgba(14,165,233,.18);
}

/* Forms — light inputs with clear focus */
form input, form textarea{
  width:100%;padding:12px;border-radius:12px;
  border:1px solid var(--border);background:#ffffff;color:var(--text);
  margin:6px 0 12px; outline:none; transition:border-color .15s ease, box-shadow .15s ease;
}
form input:focus, form textarea:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 4px var(--ring);
}

/* Buttons */
button, .btn{
  padding:12px 16px;border-radius:12px;border:1px solid transparent;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  color:white;font-weight:700;cursor:pointer;
  box-shadow:var(--shadow); transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
button:hover, .btn:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(2,8,23,.12)}
button:active, .btn:active{transform:translateY(0)}

/* Utilities */
hr.sep{border:0;border-top:1px solid var(--border);margin:26px 0}
.pill{
  display:inline-block;padding:6px 10px;border-radius:999px;
  background:#f1f5f9;border:1px solid var(--border);color:#334155;font-size:12px
}

/* Optional: subtle reveal (works with existing JS, degrades gracefully) */
.reveal{opacity:0;transform:translateY(12px);transition:opacity .45s ease, transform .45s ease}
.reveal.active{opacity:1;transform:translateY(0)}

/* Respect users who prefer less motion */
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}
/* --- ensure reveal sections always visible if JS fails --- */
.reveal {
  opacity: 1 !important;
  transform: none !important;
}
.reveal.active {
  opacity: 1 !important;
  transform: none !important;
}
