/* BlueprintIt Blog — shared styles */
:root{
  --navy:#0a1628; --navy2:#0d1b30; --cyan:#0891b2; --cyan-bright:#00d4ff;
  --gold:#b45309; --ink:#1e293b; --muted:#64748b; --line:#e2e8f0;
  --paper:#ffffff; --wash:#f8fafc;
  --sans:'IBM Plex Sans',system-ui,-apple-system,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.75;font-size:17px}
img{max-width:100%}
a{color:var(--cyan);text-decoration:none}
a:hover{text-decoration:underline}

/* Header band */
.site-head{background:var(--navy);color:#fff;padding:14px 20px}
.site-head .inner{max-width:820px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.wordmark{font-weight:800;font-size:20px;color:#f1f5f9;letter-spacing:-.01em}
.wordmark span{color:var(--cyan-bright)}
.head-cta{font-size:13px;font-weight:600;background:var(--cyan-bright);color:var(--navy);padding:8px 16px;border-radius:8px}
.head-cta:hover{text-decoration:none;opacity:.9}

/* Article shell */
main{max-width:820px;margin:0 auto;padding:36px 20px 60px}
.crumb{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px}
.crumb a{color:var(--muted)}
h1{font-size:clamp(28px,5vw,40px);line-height:1.15;color:var(--navy);letter-spacing:-.02em;margin-bottom:14px}
.byline{font-size:13.5px;color:var(--muted);margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.byline b{color:var(--ink)}
h2{font-size:24px;color:var(--navy);margin:38px 0 12px;letter-spacing:-.01em}
h3{font-size:18.5px;color:var(--navy);margin:26px 0 8px}
p{margin-bottom:16px}
ul,ol{margin:0 0 16px 22px}
li{margin-bottom:8px}
strong{color:var(--navy)}

/* Table */
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15px}
th{background:var(--navy);color:#fff;text-align:left;padding:10px 12px;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase}
td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
tr:nth-child(even) td{background:var(--wash)}

/* Callouts + CTA */
.tip{background:var(--wash);border-left:4px solid var(--cyan);padding:14px 18px;margin:20px 0;border-radius:0 8px 8px 0}
.vastu-note{background:#fffbeb;border-left:4px solid #f59e0b;padding:14px 18px;margin:20px 0;border-radius:0 8px 8px 0}
.cta-box{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);color:#e2e8f0;border-radius:14px;padding:26px 24px;margin:32px 0;text-align:center}
.cta-box h3{color:#fff;margin:0 0 8px;font-size:20px}
.cta-box p{color:#94a3b8;font-size:15px;margin-bottom:16px}
.cta-btn{display:inline-block;background:var(--cyan-bright);color:var(--navy);font-weight:700;padding:12px 28px;border-radius:10px;font-size:15.5px}
.cta-btn:hover{text-decoration:none;transform:translateY(-1px)}

/* TOC */
.toc{background:var(--wash);border:1px solid var(--line);border-radius:10px;padding:18px 22px;margin:24px 0;font-size:15px}
.toc b{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.toc ol{margin:10px 0 0 20px}
.toc li{margin-bottom:5px}

/* FAQ */
.faq{border:1px solid var(--line);border-radius:10px;margin:12px 0;overflow:hidden}
.faq summary{padding:14px 18px;font-weight:600;color:var(--navy);cursor:pointer;background:var(--wash);list-style:none}
.faq summary::before{content:"+ ";color:var(--cyan);font-family:var(--mono)}
.faq[open] summary::before{content:"− "}
.faq div{padding:12px 18px 16px;font-size:15.5px}

/* Related + footer */
.related{display:grid;gap:12px;margin:18px 0}
@media(min-width:640px){.related{grid-template-columns:1fr 1fr}}
.rel-card{border:1px solid var(--line);border-radius:10px;padding:16px 18px;display:block}
.rel-card:hover{border-color:var(--cyan);text-decoration:none}
.rel-card .k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.rel-card .t{font-weight:600;color:var(--navy);margin-top:4px;line-height:1.4}
.site-foot{background:var(--navy);color:#94a3b8;text-align:center;padding:26px 20px;font-size:13px}
.site-foot a{color:var(--cyan-bright)}

/* Blog index cards */
.post-grid{display:grid;gap:16px;margin-top:26px}
@media(min-width:640px){.post-grid{grid-template-columns:1fr 1fr}}
.post-card{border:1px solid var(--line);border-radius:12px;padding:22px;display:block;transition:.15s}
.post-card:hover{border-color:var(--cyan);text-decoration:none;transform:translateY(-2px)}
.post-card .tag{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.post-card h2{font-size:19px;margin:8px 0}
.post-card p{font-size:14.5px;color:var(--muted);margin:0}
