/* ===========================================================
   FixMyTech blog — shared styles (brand-matched, senior-friendly)
   =========================================================== */
:root{
  --navy:#0A1F3C; --blue:#1F6FE0; --blue-dark:#1657b4;
  --ink:#14233d; --muted:#45557a; --line:#d8e1ef; --cream:#f4f7fb;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:20px; line-height:1.7; color:var(--ink); background:#fff;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--blue-dark)}
.wrap{width:100%; max-width:820px; margin:0 auto; padding:0 22px}

/* top bar */
.bnav{
  position:sticky; top:0; z-index:20; background:rgba(10,31,60,.97);
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:12px 22px; box-shadow:0 2px 16px rgba(10,31,60,.28);
}
.bnav .brand{color:#fff; font-weight:800; font-size:1.3rem; text-decoration:none; white-space:nowrap}
.bnav .brand:hover{color:#ffd77a}
.bnav .bnav-call{
  background:var(--blue); color:#fff; text-decoration:none; font-weight:800;
  padding:10px 18px; border-radius:12px; font-size:1.05rem; white-space:nowrap; min-height:44px;
  display:inline-flex; align-items:center;
}
.bnav .bnav-call:hover{background:var(--blue-dark)}

/* blog index header */
.bhead{background:linear-gradient(160deg,#0A1F3C 0%,#143a6b 100%); color:#fff; padding:56px 0}
.bhead h1{font-size:clamp(2rem,5vw,3rem); margin:0 0 .3em; color:#fff}
.bhead p{font-size:1.2rem; color:#d6e2f5; margin:0; max-width:640px}

/* post cards */
.posts{display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:48px 0}
.post-card{
  display:block; text-decoration:none; color:inherit; background:#fff;
  border:2px solid var(--line); border-radius:18px; padding:28px;
  box-shadow:0 4px 14px rgba(10,31,60,.05); transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.post-card:hover{transform:translateY(-4px); box-shadow:0 16px 32px rgba(10,31,60,.12); border-color:var(--blue)}
.post-card .tag{display:inline-block; background:#eaf2ff; color:var(--blue-dark); font-weight:800;
  font-size:.9rem; padding:5px 12px; border-radius:999px; margin-bottom:12px}
.post-card h2{font-size:1.4rem; color:var(--navy); margin:0 0 .4em; line-height:1.25}
.post-card p{color:var(--muted); margin:0}
.post-card .more{display:inline-block; margin-top:14px; color:var(--blue-dark); font-weight:800}

/* article */
.article{padding:44px 0 8px}
.article .tag{display:inline-block; background:#eaf2ff; color:var(--blue-dark); font-weight:800;
  font-size:.95rem; padding:6px 14px; border-radius:999px}
.article h1{font-size:clamp(2rem,5vw,2.8rem); color:var(--navy); line-height:1.15; margin:16px 0 .2em}
.article .meta{color:var(--muted); font-size:1.05rem; margin-bottom:28px}
.article h2{font-size:1.7rem; color:var(--navy); margin:1.6em 0 .4em}
.article p{margin:0 0 1.1em}
.article ul,.article ol{margin:0 0 1.2em; padding-left:1.3em}
.article li{margin:.5em 0}
.article strong{color:var(--navy)}
.callout{background:var(--cream); border-left:5px solid var(--blue); border-radius:12px;
  padding:20px 24px; margin:1.4em 0}
.callout strong{color:var(--navy)}
.crumbs{padding:20px 0 0; font-size:1rem; color:var(--muted)}
.crumbs a{color:var(--blue-dark); font-weight:700}

/* end-of-post CTA */
.cta-band{background:linear-gradient(160deg,#1F6FE0 0%,#0A1F3C 100%); color:#fff; border-radius:24px;
  padding:36px; margin:40px 0; text-align:center}
.cta-band h3{color:#fff; font-size:1.7rem; margin:0 0 .3em}
.cta-band p{color:#dbe7fb; margin:0 0 20px}
.cta-band .calls{display:flex; gap:14px; flex-wrap:wrap; justify-content:center}
.cta-band .call{background:#fff; color:var(--navy); text-decoration:none; font-weight:800;
  padding:16px 22px; border-radius:14px; font-size:1.15rem; min-height:56px;
  display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1.2; flex:1 1 240px}
.cta-band .call small{font-size:1.1rem; font-weight:800; letter-spacing:.4px}
.cta-band .call:hover{background:#eaf2ff}

/* footer */
.bfoot{background:var(--navy); color:#cdd9ee; padding:36px 0; font-size:1.02rem; text-align:center}
.bfoot a{color:#fff; font-weight:700}

@media (max-width:760px){
  .posts{grid-template-columns:1fr}
  body{font-size:19px}
}
