/* ============================================================
   FLEUR — BLOG
   /wp-content/themes/fleur/assets/fleur-blog.css
   Blog index + single article.
   ============================================================ */

.flb-post,.flb-post *{box-sizing:border-box}
.flb-post{
  background:#fff;color:var(--fl-body);
  font-family:var(--fl-sans);font-weight:300;
  -webkit-font-smoothing:antialiased;width:100%;overflow-x:clip
}
.flb-post a{text-decoration:none;color:inherit}
.flb-post img{display:block;max-width:100%;height:auto}

/* ── Article hero ──────────────────────────────────────── */
.flb-hero{position:relative;min-height:56vh;max-height:640px;display:flex;align-items:flex-end;overflow:hidden}
.flb-hero-bg{position:absolute;inset:0}
.flb-hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.flb-hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,20,38,.72) 10%,rgba(12,20,38,.3) 70%,rgba(0,0,0,0) 90%)}
.flb-hero-in{position:relative;z-index:2;padding:120px 52px 64px;max-width:900px}
.flb-eyebrow{
  text-transform:uppercase;color:#fff;font-weight:300;
  display:block;margin-bottom:18px;font-size:13px;letter-spacing:2px
}
.flb-hero h1{
  font-family:'Quicksand',var(--fl-sans)!important;
  font-size:46px;font-weight:300;color:#fff;line-height:1.18;margin:0 0 18px
}
.flb-meta{font-size:14px;color:rgba(255,255,255,.82);font-weight:400}
.flb-meta span+span::before{content:'·';margin:0 10px;opacity:.6}

/* ── Article body ──────────────────────────────────────── */
.flb-body{max-width:780px;margin:0 auto;padding:64px 24px 80px}
.flb-lead{
  font-size:20px;line-height:1.8;color:var(--fl-ink);font-weight:400;
  margin:0 0 34px
}
.flb-body h2{
  font-family:var(--fl-serif);font-size:32px;font-weight:300;font-style:normal;
  color:var(--fl-ink);line-height:1.25;margin:52px 0 18px
}
.flb-body h2:first-of-type{margin-top:0}
.flb-body h3{
  font-family:var(--fl-serif);font-size:24px;font-weight:300;font-style:normal;
  color:var(--fl-ink);line-height:1.3;margin:38px 0 14px
}
.flb-body h4{
  font-size:15px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;
  color:var(--fl-blue);margin:32px 0 12px
}
.flb-body p{font-size:17px;line-height:1.9;margin:0 0 20px;font-weight:400}
.flb-body ul,.flb-body ol{margin:0 0 24px;padding-left:20px}
.flb-body li{font-size:17px;line-height:1.85;margin-bottom:9px;font-weight:400}
.flb-body a:not(.flb-cta-btn){
  color:var(--fl-blue);border-bottom:1px solid var(--fl-rule);padding-bottom:1px
}
.flb-body a:not(.flb-cta-btn):hover{border-bottom-color:#FBE48A;border-bottom-width:2px}
.flb-body img{border-radius:8px;margin:14px 0 28px}
.flb-body figure{margin:28px 0}
.flb-body figcaption{
  font-size:14px;color:var(--fl-mid);margin-top:10px;font-style:italic
}
.flb-body blockquote{
  margin:32px 0;padding:6px 0 6px 24px;
  border-left:3px solid var(--fl-blue);
  font-family:var(--fl-serif);font-size:22px;font-style:italic;
  color:var(--fl-ink);line-height:1.5
}

/* Key-fact panel */
.flb-note{
  background:var(--fl-bg);border-radius:6px;padding:22px 26px;margin:0 0 28px
}
.flb-note p:last-child{margin-bottom:0}
.flb-note strong{color:var(--fl-ink)}

/* Checklist columns */
.flb-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin:0 0 24px}
.flb-cols ul{margin-bottom:0}

/* In-article CTA */
.flb-cta{
  background:var(--fl-cta,#FBE48A);border-radius:8px;
  padding:30px 32px;margin:38px 0
}
.flb-cta h3{margin:0 0 10px;font-size:24px}
.flb-cta p{margin:0 0 18px;font-size:16px;color:var(--fl-ink)}
.flb-cta-btn{
  display:inline-block;background:var(--fl-ink);color:#fff!important;
  font-size:13px;font-weight:600;letter-spacing:.8px;
  padding:14px 30px;border:none!important
}
.flb-cta-btn:hover{background:var(--fl-blue)}

/* FAQ block inside an article */
.flb-faq{border-top:1px solid var(--fl-rule);margin-top:44px;padding-top:10px}
.flb-faq-item{border-bottom:1px solid var(--fl-rule);padding:18px 0}
.flb-faq-item h3{
  font-family:var(--fl-sans);font-size:17px;font-weight:600;
  color:var(--fl-ink);margin:0 0 8px
}
.flb-faq-item p{margin:0;font-size:16px}

/* ── Blog index ────────────────────────────────────────── */
.flb-index-head{padding:64px 52px 40px;max-width:860px}
.flb-index-head h1{
  font-family:var(--fl-serif);font-size:46px;font-weight:300;font-style:normal;
  color:var(--fl-ink);line-height:1.15;margin:0 0 16px
}
.flb-index-head p{font-size:17px;line-height:1.85;font-weight:400;margin:0}

.flb-grid{
  padding:0 52px 80px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:40px 32px
}
.flb-card{display:block}
.flb-card-img{
  height:250px;border-radius:8px;overflow:hidden;margin-bottom:20px;
  background:var(--fl-bg)
}
.flb-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease}
.flb-card:hover .flb-card-img img{transform:scale(1.05)}
.flb-card-date{
  font-size:12px;letter-spacing:1.6px;text-transform:uppercase;
  color:var(--fl-mid);font-weight:600;display:block;margin-bottom:10px
}
.flb-card h2{
  font-family:var(--fl-serif);font-size:23px;font-weight:300;font-style:normal;
  color:var(--fl-ink);line-height:1.3;margin:0 0 10px;transition:color .2s
}
.flb-card:hover h2{color:var(--fl-blue)}
.flb-card p{font-size:15px;line-height:1.75;color:var(--fl-body);margin:0;font-weight:400}

.flb-pagination{padding:0 52px 80px;text-align:center}
.flb-pagination a,.flb-pagination span{
  display:inline-block;padding:10px 16px;font-size:14px;color:var(--fl-mid)
}
.flb-pagination .current{color:var(--fl-blue);font-weight:600}

/* ── Next / previous ───────────────────────────────────── */
.flb-nav{
  border-top:1px solid var(--fl-rule);max-width:780px;margin:0 auto;
  padding:32px 24px 64px;display:flex;justify-content:space-between;gap:24px
}
.flb-nav a{font-size:15px;color:var(--fl-ink)}
.flb-nav a:hover{color:var(--fl-blue)}
.flb-nav span{
  display:block;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;
  color:var(--fl-mid);font-weight:600;margin-bottom:6px
}

/* ── Responsive ────────────────────────────────────────── */
@media(max-width:1100px){
  .flb-hero-in,.flb-index-head,.flb-grid,.flb-pagination{padding-left:36px;padding-right:36px}
  .flb-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:860px){
  .flb-hero{min-height:44vh}
  .flb-hero-in{padding:100px 24px 44px}
  .flb-hero h1{font-size:28px}
  .flb-body{padding:44px 24px 64px}
  .flb-lead{font-size:18px}
  .flb-body h2{font-size:25px;margin:40px 0 14px}
  .flb-body h3{font-size:21px}
  .flb-body p,.flb-body li{font-size:16px}
  .flb-cols{grid-template-columns:1fr;gap:0}
  .flb-cta{padding:24px 22px}
  .flb-index-head{padding:44px 24px 28px}
  .flb-index-head h1{font-size:30px}
  .flb-grid{grid-template-columns:1fr;gap:32px;padding:0 24px 56px}
  .flb-card-img{height:220px}
  .flb-nav{flex-direction:column;gap:20px;padding:26px 24px 48px}
}
