/* StudyMed Georgia — Blog styles */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root { --red: #ff2d55; --red-glow: rgba(255,45,85,0.22); --radius: 20px; --radius-sm: 12px; }
[data-theme="dark"] {
  --bg: #080808; --bg2: #111; --bg3: #1a1a1a; --surface: #141414;
  --border: rgba(255,255,255,0.08); --border2: rgba(255,255,255,0.14);
  --text: #fff; --text2: rgba(255,255,255,0.62); --text3: rgba(255,255,255,0.28);
  --card: #111; --nav-bg: rgba(8,8,8,0.88); --pill-bg: rgba(255,255,255,0.06);
  --pill-hover: rgba(255,255,255,0.1);
}
html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, sans-serif; background: var(--bg); color: var(--text); line-height: 1.7; -webkit-font-smoothing: antialiased; }

/* NAV */
nav { position: sticky; top:0; z-index:100; display:flex; align-items:center; justify-content:space-between; padding:14px 32px; background:var(--nav-bg); backdrop-filter:blur(20px); border-bottom:1px solid var(--border); }
.nav-logo img { height:34px; width:auto; display:block; }
.nav-links { display:flex; gap:26px; list-style:none; align-items:center; }
.nav-links a { text-decoration:none; color:var(--text2); font-size:0.86rem; font-weight:500; transition:color 0.2s; }
.nav-links a:hover, .nav-links a.active { color:var(--text); }
.nav-apply { background:var(--red); color:#fff; padding:9px 20px; border-radius:50px; font-weight:700; font-size:0.84rem; border:none; cursor:pointer; font-family:inherit; text-decoration:none; transition:opacity 0.2s; }
.nav-apply:hover { opacity:0.85; }

/* LAYOUT */
.wrap { max-width: 760px; margin: 0 auto; padding: 56px 24px 80px; }
.wrap-wide { max-width: 1080px; margin: 0 auto; padding: 56px 24px 80px; }

.crumb { font-size:0.8rem; color:var(--text3); margin-bottom:28px; }
.crumb a { color:var(--text2); text-decoration:none; }
.crumb a:hover { color:var(--red); }

.eyebrow { font-size:0.72rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; color:var(--red); margin-bottom:16px; }

article h1, .page-title { font-size:clamp(2rem,5vw,3rem); font-weight:900; letter-spacing:-1.5px; line-height:1.08; margin-bottom:18px; }
.meta { font-size:0.85rem; color:var(--text3); margin-bottom:36px; display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.meta .dot { width:3px; height:3px; border-radius:50%; background:var(--text3); }

article h2 { font-size:1.6rem; font-weight:800; letter-spacing:-0.5px; margin:44px 0 16px; line-height:1.2; }
article h3 { font-size:1.2rem; font-weight:700; margin:30px 0 12px; }
article p { color:var(--text2); margin-bottom:20px; font-size:1.05rem; }
article a { color:var(--red); text-decoration:underline; text-underline-offset:2px; }
article strong { color:var(--text); font-weight:700; }
article ul, article ol { color:var(--text2); margin:0 0 22px 22px; font-size:1.05rem; }
article li { margin-bottom:10px; }
article .lead { font-size:1.2rem; color:var(--text); line-height:1.6; margin-bottom:32px; }

.callout { background:var(--pill-bg); border:1px solid var(--border); border-left:3px solid var(--red); border-radius:var(--radius-sm); padding:18px 22px; margin:28px 0; }
.callout p { margin:0; color:var(--text2); font-size:0.98rem; }

table.data { width:100%; border-collapse:collapse; margin:26px 0; font-size:0.95rem; }
table.data th, table.data td { text-align:left; padding:12px 14px; border-bottom:1px solid var(--border); }
table.data th { color:var(--text); font-weight:700; background:var(--pill-bg); }
table.data td { color:var(--text2); }

/* CTA card */
.cta-card { background:linear-gradient(135deg, rgba(255,45,85,0.12), rgba(255,107,53,0.08)); border:1px solid var(--border2); border-radius:var(--radius); padding:32px; text-align:center; margin:48px 0 8px; }
.cta-card h3 { font-size:1.5rem; font-weight:900; letter-spacing:-0.5px; margin-bottom:10px; color:var(--text); }
.cta-card p { color:var(--text2); margin-bottom:22px; }
.cta-btns { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.btn-red { background:var(--red); color:#fff; padding:14px 30px; border-radius:50px; font-weight:800; font-size:0.95rem; text-decoration:none; box-shadow:0 8px 28px var(--red-glow); transition:transform 0.2s; }
.btn-red:hover { transform:translateY(-2px); }
.btn-ghost { background:var(--pill-bg); color:var(--text); padding:14px 30px; border-radius:50px; font-weight:700; font-size:0.95rem; text-decoration:none; border:1px solid var(--border2); }

/* Blog listing cards */
.blog-head { text-align:center; margin-bottom:48px; }
.blog-head p { color:var(--text2); max-width:520px; margin:12px auto 0; }
.post-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:22px; }
.post-card { display:block; background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:26px; text-decoration:none; transition:border-color 0.2s, transform 0.2s; }
.post-card:hover { border-color:var(--red); transform:translateY(-3px); }
.post-card .tag { font-size:0.68rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--red); }
.post-card h2 { font-size:1.25rem; font-weight:800; letter-spacing:-0.4px; margin:12px 0 10px; color:var(--text); line-height:1.25; }
.post-card p { color:var(--text2); font-size:0.92rem; margin:0 0 16px; }
.post-card .read { color:var(--text3); font-size:0.8rem; font-weight:600; }

/* FOOTER */
footer { border-top:1px solid var(--border); padding:40px 24px; text-align:center; }
footer .fnav { display:flex; gap:22px; justify-content:center; flex-wrap:wrap; margin-bottom:16px; }
footer .fnav a { color:var(--text2); text-decoration:none; font-size:0.85rem; }
footer .fnav a:hover { color:var(--red); }
footer small { color:var(--text3); font-size:0.78rem; }

@media (max-width: 640px) {
  nav { padding:12px 16px; }
  .nav-links { display:none; }
  .wrap, .wrap-wide { padding:36px 18px 60px; }
}
