/* ============================================================
   Ambition Painting — blog
   Layers on top of locations.css (same navy + gold palette,
   Cinzel / Cormorant Garamond / Jost type system).
   ============================================================ */

/* ---- page hero (title band) ---- */
.bhero{
  position:relative;padding:138px 0 56px;overflow:hidden;color:#fff;
  background:radial-gradient(120% 150% at 82% -20%,var(--navy-700) 0%,var(--navy) 44%,var(--navy-deep) 100%);
}
.bhero .wrap{position:relative;z-index:2;}
.bhero--photo{
  background:
    linear-gradient(90deg, rgba(10,23,48,.8) 0%, rgba(10,23,48,.55) 55%, rgba(10,23,48,.42) 100%),
    linear-gradient(180deg, rgba(10,23,48,.74) 0%, rgba(21,32,60,.64) 42%, rgba(10,23,48,.92) 100%),
    url("/assets/blog/blog-hero.jpg") center 42% / cover no-repeat;
  background-color: var(--navy-deep);
}
/* article hero: the featured image IS the header (real <img> keeps alt for SEO) + overlay */
.bhero--feat{overflow:hidden;min-height:clamp(360px,46vh,520px);padding-bottom:74px;}
.bhero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;z-index:0;}
.bhero--feat::before{content:"";position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg, rgba(10,23,48,.84) 0%, rgba(10,23,48,.54) 52%, rgba(10,23,48,.34) 100%),
    linear-gradient(180deg, rgba(10,23,48,.5) 0%, rgba(10,23,48,.4) 42%, rgba(10,23,48,.85) 100%);
}
.bhero__cat{font-family:var(--display);font-weight:500;font-size:.76rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-light);display:inline-flex;align-items:center;gap:.8em;}
.bhero__cat::before{content:"";width:30px;height:1px;background:var(--gold);}
.bhero h1{font-family:var(--serif);font-weight:500;font-size:clamp(2.1rem,4.6vw,3.4rem);line-height:1.08;letter-spacing:.005em;margin:16px 0 0;max-width:22ch;text-wrap:balance;}
.bhero h1 .g{color:var(--gold);font-style:italic;}
.bhero__sub{font-family:var(--serif);font-size:clamp(1.15rem,1.9vw,1.5rem);font-weight:500;color:rgba(244,239,230,.84);margin-top:18px;max-width:58ch;line-height:1.5;}
.bhero__meta{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(244,239,230,.64);}
.bhero__meta .dot{width:4px;height:4px;border-radius:50%;background:var(--gold);}

/* ---- featured image band ---- */
.bfeat{width:100%;background:var(--navy-deep);}
.bfeat img{width:100%;max-height:560px;object-fit:cover;}
.bfeat__cap{max-width:1240px;margin:0 auto;padding:9px clamp(22px,4vw,52px);font-size:.76rem;letter-spacing:.03em;color:var(--muted);}

/* ---- article body ---- */
.article{padding:clamp(46px,6vw,78px) 0;background:var(--page);}
.acol{max-width:752px;margin:0 auto;}
.acol>p{font-size:1.13rem;line-height:1.78;color:#39404f;margin:0 0 1.25em;}
.acol .alead{font-family:var(--serif);font-weight:500;font-size:clamp(1.3rem,2vw,1.5rem);line-height:1.48;color:var(--navy);margin-bottom:1.1em;}
.acol h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,2.6vw,1.85rem);line-height:1.25;color:var(--navy);margin:1.7em 0 .45em;}
.acol h3{font-family:var(--display);font-weight:600;font-size:1.04rem;letter-spacing:.02em;color:var(--navy);margin:1.5em 0 .35em;}
.acol ul{list-style:none;margin:0 0 1.4em;}
.acol ul li{position:relative;padding-left:28px;margin-bottom:.66em;font-size:1.1rem;line-height:1.62;color:#39404f;}
.acol ul li::before{content:"";position:absolute;left:0;top:.62em;width:13px;height:2px;background:var(--gold);}
.acol strong{color:var(--navy);font-weight:600;}
.acol blockquote{margin:1.5em 0;padding:8px 0 8px 26px;border-left:3px solid var(--gold);font-family:var(--serif);font-style:italic;font-size:clamp(1.2rem,2.2vw,1.4rem);line-height:1.5;color:var(--navy);}
.acol a.inline{color:var(--gold-dark);border-bottom:1px solid rgba(189,154,90,.4);transition:color .2s;}
.acol a.inline:hover{color:var(--navy);}
.aend{max-width:752px;margin:36px auto 0;padding-top:26px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.aend a{font-family:var(--display);font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);}
.aend a:hover{color:var(--navy);}

/* ---- blog index grid ---- */
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.bcard{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s;}
.bcard:hover{transform:translateY(-6px);box-shadow:0 28px 56px rgba(21,32,60,.13);border-color:rgba(189,154,90,.4);}
.bcard__imgwrap{aspect-ratio:3/2;overflow:hidden;background:var(--navy-deep);}
.bcard__imgwrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.bcard:hover .bcard__imgwrap img{transform:scale(1.06);}
.bcard__body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1;}
.bcard__cat{font-family:var(--display);font-weight:600;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dark);}
.bcard__title{font-family:var(--serif);font-weight:600;font-size:1.4rem;line-height:1.2;color:var(--navy);margin:11px 0 11px;}
.bcard__exc{font-size:.97rem;line-height:1.65;color:var(--muted);flex:1;font-weight:300;}
.bcard__meta{margin-top:20px;display:flex;align-items:center;gap:10px;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.bcard__meta .dot{width:4px;height:4px;border-radius:50%;background:var(--gold);}
.bcard__more{margin-top:15px;font-family:var(--display);font-weight:600;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);}
.bgrid--2{grid-template-columns:repeat(2,1fr);max-width:880px;margin:0 auto;}
@media(max-width:900px){ .bgrid{grid-template-columns:1fr;max-width:540px;margin:0 auto;} }
