/* ==========================================================
   Flint Insights — blog styles (archive + single post)
   Matches flint-international.me homepage: navy / gold,
   Red Hat Display headings, IBM Plex Sans UI, IBM Plex Mono labels
   ========================================================== */
.fl-blog{
  --fl-navy:#01142C; --fl-navy-2:#0A0E36; --fl-navy-3:#041A36;
  --fl-gold:#D3B10A; --fl-gold-ink:#7D6705; --fl-ink:#12152B;
  --fl-body:#334155; --fl-muted:#565B70; --fl-line:#E3E6EE; --fl-soft:#F6F7FB;
  --fl-cyan:#1FC8E8; --fl-green:#5FD08E;
  --fl-h:"Red Hat Display","Segoe UI",system-ui,sans-serif;
  --fl-ui:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;
  --fl-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  font-family:var(--fl-ui); color:var(--fl-body);
}
.fl-blog *{box-sizing:border-box}

/* ---------- shared bits ---------- */
.fl-blog .fl-eyebrow,.fl-blog .fl-eyebrow p{
  font-family:var(--fl-mono)!important; font-size:12px; font-weight:500; letter-spacing:.14em;
  text-transform:uppercase; color:var(--fl-gold); margin:0;
}
.fl-blog .fl-eyebrow p::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;
  background:var(--fl-gold);margin-right:10px;vertical-align:1px;box-shadow:0 0 0 0 rgba(211,177,10,.6);
  animation:fl-pulse 2s infinite}
@keyframes fl-pulse{0%{box-shadow:0 0 0 0 rgba(211,177,10,.55)}70%{box-shadow:0 0 0 9px rgba(211,177,10,0)}100%{box-shadow:0 0 0 0 rgba(211,177,10,0)}}

.fl-blog .elementor-button,.fl-blog .fl-btn{
  font-family:var(--fl-ui)!important; font-weight:600!important; font-size:15px!important;
  border-radius:6px!important; padding:12px 22px!important; border:2px solid var(--fl-gold)!important;
  background:var(--fl-gold)!important; color:#14172F!important; transition:transform .15s,box-shadow .15s;
}
.fl-blog .elementor-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px -12px rgba(211,177,10,.8)}
.fl-blog .fl-btn-ghost .elementor-button{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}
.fl-blog .fl-btn-ghost .elementor-button:hover{border-color:#fff!important;box-shadow:none}

/* ---------- dark hero (archive + single) ---------- */
.fl-blog .fl-hero{
  position:relative; overflow:hidden; color:#fff;
  background:
    radial-gradient(900px 420px at 85% -10%, rgba(31,200,232,.16), transparent 60%),
    radial-gradient(700px 380px at 10% 120%, rgba(211,177,10,.10), transparent 60%),
    linear-gradient(180deg,var(--fl-navy) 0%,var(--fl-navy-2) 100%);
}
.fl-blog .fl-hero::before{ /* command-centre grid */
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(140,190,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(140,190,255,.07) 1px,transparent 1px);
  background-size:48px 48px; mask-image:linear-gradient(180deg,#000 0%,transparent 95%);
  -webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 95%);
}
.fl-blog .fl-hero > *{position:relative;z-index:1}
.fl-blog .fl-hero .elementor-heading-title,.fl-blog .fl-hero h1{
  font-family:var(--fl-h)!important; font-weight:800!important; color:#fff!important;
  font-size:clamp(34px,4.6vw,56px)!important; line-height:1.08!important; letter-spacing:-.015em; margin:0;
}
.fl-blog .fl-hero .fl-dek,.fl-blog .fl-hero .fl-dek p{
  font-size:clamp(16px,1.4vw,19px); line-height:1.6; color:#DCE3F7; max-width:720px; margin:0;
}

/* category pills */
.fl-blog .fl-pills{gap:10px!important}
.fl-blog .fl-pill .elementor-button{
  background:rgba(255,255,255,.04)!important; color:#DCE3F7!important; border:1px solid rgba(140,190,255,.22)!important;
  font-family:var(--fl-mono)!important; font-size:12px!important; letter-spacing:.08em; text-transform:uppercase;
  padding:9px 16px!important; border-radius:999px!important; font-weight:500!important;
}
.fl-blog .fl-pill .elementor-button:hover{border-color:var(--fl-gold)!important;color:#fff!important;box-shadow:none}
body.blog .fl-blog .fl-pill--all .elementor-button,
body.category-soc-insights .fl-blog .fl-pill--soc-insights .elementor-button,
body.category-noc-insights .fl-blog .fl-pill--noc-insights .elementor-button,
body.category-saudi-digital-landscape .fl-blog .fl-pill--saudi-digital-landscape .elementor-button,
body.category-expert-perspectives .fl-blog .fl-pill--expert-perspectives .elementor-button{
  background:var(--fl-gold)!important;color:#14172F!important;border-color:var(--fl-gold)!important;
}

/* ---------- post cards (Archive Posts / Posts widget, Cards skin) ---------- */
.fl-blog .fl-feed{background:var(--fl-soft)}
.fl-blog .elementor-posts-container{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px!important}
.fl-blog .elementor-post{margin:0!important}
.fl-blog .elementor-post__card{
  background:#fff!important;border:1px solid var(--fl-line)!important;border-radius:14px!important;overflow:hidden;
  box-shadow:0 30px 60px -44px rgba(18,21,43,.5)!important;height:100%;display:flex;flex-direction:column;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.fl-blog .elementor-post__card:hover{transform:translateY(-4px);border-color:rgba(211,177,10,.55)!important;
  box-shadow:0 40px 70px -40px rgba(18,21,43,.55)!important}
.fl-blog .elementor-post__thumbnail{padding-bottom:56.25%!important;background:var(--fl-navy)}
.fl-blog .elementor-post__thumbnail img{transition:transform .5s ease}
.fl-blog .elementor-post__card:hover .elementor-post__thumbnail img{transform:translate(-50%,-50%) scale(1.04)}
.fl-blog .elementor-post__badge{
  font-family:var(--fl-mono)!important;font-size:11px!important;letter-spacing:.1em;text-transform:uppercase;font-weight:500!important;
  background:var(--fl-navy)!important;color:var(--fl-gold)!important;border:1px solid rgba(211,177,10,.45);
  border-radius:999px!important;padding:6px 12px!important;margin:16px!important;line-height:1!important;
}
.fl-blog .elementor-post__text{padding:22px 24px 8px!important;flex:1}
.fl-blog .elementor-post__title,.fl-blog .elementor-post__title a{
  font-family:var(--fl-h)!important;font-weight:700!important;font-size:21px!important;line-height:1.25!important;color:var(--fl-ink)!important;margin:0 0 10px!important
}
.fl-blog .elementor-post__excerpt p{font-size:15px!important;line-height:1.6!important;color:var(--fl-muted)!important;margin:0 0 14px!important}
.fl-blog .elementor-post__read-more{
  font-family:var(--fl-ui)!important;font-weight:600!important;font-size:14px!important;color:var(--fl-gold-ink)!important;
  text-transform:none!important;letter-spacing:0;display:inline-block;margin-bottom:14px
}
.fl-blog .elementor-post__meta-data{
  font-family:var(--fl-mono)!important;font-size:11.5px!important;letter-spacing:.06em;text-transform:uppercase;color:#7D85AE!important;
  border-top:1px solid var(--fl-line)!important;padding:14px 24px!important;margin:0!important
}

/* featured first card on blog page 1 */
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child{grid-column:1 / -1}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__card{display:grid;grid-template-columns:1.15fr 1fr}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__thumbnail__link{grid-row:1 / span 2;margin:0!important}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__thumbnail{height:100%;padding-bottom:0!important;min-height:340px}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__text{padding:40px 40px 10px!important;display:flex;flex-direction:column;justify-content:center}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__title a{font-size:clamp(24px,2.4vw,34px)!important}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__meta-data{padding:16px 40px!important}

/* pagination */
.fl-blog .elementor-pagination{margin-top:44px!important;font-family:var(--fl-mono);font-size:13px}
.fl-blog .elementor-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;
  border:1px solid var(--fl-line);border-radius:8px;margin:0 4px;color:var(--fl-ink);background:#fff;text-decoration:none}
.fl-blog .elementor-pagination .page-numbers.current{background:var(--fl-navy);color:var(--fl-gold);border-color:var(--fl-navy)}

/* ---------- single post ---------- */
.fl-blog .fl-meta .elementor-post-info,.fl-blog .fl-meta ul{display:flex;flex-wrap:wrap;gap:6px 22px;padding:0;margin:0;list-style:none}
.fl-blog .fl-meta .elementor-icon-list-text,.fl-blog .fl-meta .elementor-post-info__item,.fl-blog .fl-meta li{
  font-family:var(--fl-mono)!important;font-size:12px!important;letter-spacing:.1em;text-transform:uppercase;color:#8592BE!important
}
.fl-blog .fl-meta a{color:var(--fl-gold)!important}
.fl-blog .fl-meta .elementor-icon-list-icon svg{fill:var(--fl-gold)!important;width:13px}

.fl-blog .fl-article{background:#fff}
.fl-blog .fl-content{max-width:760px;font-size:17.5px;line-height:1.75;color:var(--fl-body)}
.fl-blog .fl-content h2{font-family:var(--fl-h);font-weight:700;color:var(--fl-ink);font-size:clamp(24px,2.3vw,30px);line-height:1.2;margin:52px 0 16px;letter-spacing:-.01em}
.fl-blog .fl-content h3{font-family:var(--fl-h);font-weight:700;color:var(--fl-ink);font-size:21px;margin:32px 0 10px}
.fl-blog .fl-content p{margin:0 0 18px}
.fl-blog .fl-content strong{color:var(--fl-ink);font-weight:600}
.fl-blog .fl-content a{color:var(--fl-gold-ink);text-decoration:underline;text-decoration-color:rgba(211,177,10,.6);text-underline-offset:3px}
.fl-blog .fl-content a:hover{text-decoration-color:var(--fl-gold)}
.fl-blog .fl-content ul{padding-left:0;list-style:none;margin:0 0 22px}
.fl-blog .fl-content ul li{position:relative;padding-left:26px;margin:0 0 10px}
.fl-blog .fl-content ul li::before{content:"";position:absolute;left:4px;top:.68em;width:9px;height:9px;background:var(--fl-gold);border-radius:2px;transform:rotate(45deg)}
.fl-blog .fl-content figure{margin:30px 0}
.fl-blog .fl-content img,.fl-blog .fl-content video{border-radius:14px;max-width:100%;height:auto;display:block}
.fl-blog .fl-content video{width:100%;background:var(--fl-navy);box-shadow:0 40px 70px -44px rgba(10,14,54,.7)}
.fl-blog .fl-content figcaption{font-family:var(--fl-mono);font-size:12px;letter-spacing:.06em;color:#7D85AE;margin-top:10px;text-align:left}
.fl-blog .fl-content table{width:100%;border-collapse:collapse;font-size:15px;margin:0 0 24px;border:1px solid var(--fl-line);border-radius:10px;overflow:hidden}
.fl-blog .fl-content th{background:var(--fl-navy);color:#fff;font-family:var(--fl-ui);font-weight:600;text-align:left;padding:12px 14px}
.fl-blog .fl-content td{padding:12px 14px;border-top:1px solid var(--fl-line);vertical-align:top}
.fl-blog .fl-content blockquote{margin:28px 0;padding:6px 0 6px 22px;border-left:3px solid var(--fl-gold);font-family:var(--fl-h);font-size:22px;line-height:1.45;color:var(--fl-ink)}
/* "In short" answer box (add class fl-answer to a paragraph or group) */
.fl-blog .fl-content .fl-answer{background:var(--fl-soft);border:1px solid var(--fl-line);border-left:4px solid var(--fl-gold);
  border-radius:12px;padding:20px 24px;font-size:18px;line-height:1.65;color:var(--fl-ink);margin:0 0 30px}
/* stat rows */
.fl-blog .fl-content .fl-stats li strong:first-child{font-family:var(--fl-h);font-size:1.25em;color:var(--fl-ink)}
/* FAQ (details/summary) */
.fl-blog .fl-content details{border:1px solid var(--fl-line);border-radius:12px;padding:0 20px;margin:0 0 12px;background:#fff}
.fl-blog .fl-content details[open]{border-color:rgba(211,177,10,.55)}
.fl-blog .fl-content summary{cursor:pointer;list-style:none;font-family:var(--fl-h);font-weight:700;color:var(--fl-ink);font-size:18px;padding:16px 28px 16px 0;position:relative}
.fl-blog .fl-content summary::-webkit-details-marker{display:none}
.fl-blog .fl-content summary::after{content:"+";position:absolute;right:0;top:12px;font-family:var(--fl-mono);font-size:22px;color:var(--fl-gold-ink)}
.fl-blog .fl-content details[open] summary::after{content:"–"}
.fl-blog .fl-content details p{margin:0 0 16px}
/* inline CTA inside a post (add class fl-inline-cta to a group) */
.fl-blog .fl-content .fl-inline-cta{background:linear-gradient(135deg,var(--fl-navy),var(--fl-navy-2));color:#DCE3F7;border-radius:14px;padding:28px 30px;margin:40px 0 10px}
.fl-blog .fl-content .fl-inline-cta h2,.fl-blog .fl-content .fl-inline-cta h3{color:#fff;margin:0 0 8px}
.fl-blog .fl-content .fl-inline-cta a{display:inline-block;margin-top:10px;background:var(--fl-gold);color:#14172F;text-decoration:none;font-family:var(--fl-ui);font-weight:600;border-radius:6px;padding:12px 22px}
.fl-blog .fl-content .fl-sources{font-size:13.5px;color:var(--fl-muted);border-top:1px solid var(--fl-line);padding-top:16px;margin-top:36px}

/* sidebar */
.fl-blog .fl-side{position:sticky;top:110px;align-self:flex-start}
.fl-blog .fl-toc .elementor-toc__header{background:transparent!important;padding:0 0 10px!important;border:0!important}
.fl-blog .fl-toc .elementor-toc__header-title{font-family:var(--fl-mono)!important;font-size:12px!important;letter-spacing:.14em;text-transform:uppercase;color:var(--fl-gold-ink)!important}
.fl-blog .fl-toc .elementor-toc,.fl-blog .fl-toc .elementor-widget-container{border:0!important;background:transparent!important}
.fl-blog .fl-toc .elementor-toc__body{padding:0!important;border-left:1px solid var(--fl-line);}
.fl-blog .fl-toc .elementor-toc__list-item-text{font-size:14px!important;line-height:1.45;color:var(--fl-muted)!important;padding:6px 0 6px 14px;display:block}
.fl-blog .fl-toc .elementor-toc__list-item-text.elementor-item-active,.fl-blog .fl-toc .elementor-toc__list-item-text:hover{color:var(--fl-ink)!important;box-shadow:inset 2px 0 0 var(--fl-gold)}
.fl-blog .fl-side-cta{background:linear-gradient(160deg,var(--fl-navy),var(--fl-navy-2));border-radius:14px;padding:26px!important;color:#DCE3F7;
  box-shadow:0 40px 70px -44px rgba(10,14,54,.7)}
.fl-blog .fl-side-cta .elementor-heading-title{font-family:var(--fl-h)!important;color:#fff!important;font-size:22px!important;line-height:1.25!important;font-weight:700!important}
.fl-blog .fl-side-cta p{font-size:14.5px;line-height:1.55;color:#DCE3F7;margin:0}
.fl-blog .fl-side-cta .elementor-button{width:100%;justify-content:center}
.fl-blog .fl-share .elementor-share-btn{border-radius:8px!important;background:var(--fl-soft)!important;border:1px solid var(--fl-line)!important}
.fl-blog .fl-share .elementor-share-btn__icon svg{fill:var(--fl-ink)!important}
.fl-blog .fl-share .elementor-share-btn:hover{border-color:var(--fl-gold)!important}

/* prev / next */
.fl-blog .elementor-post-navigation{border-top:1px solid var(--fl-line);border-bottom:1px solid var(--fl-line);padding:22px 0}
.fl-blog .post-navigation__prev--label,.fl-blog .post-navigation__next--label{font-family:var(--fl-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--fl-gold-ink)!important}
.fl-blog .post-navigation__prev--title,.fl-blog .post-navigation__next--title{font-family:var(--fl-h);font-weight:700;color:var(--fl-ink)!important;font-size:17px}

/* section titles on light bg */
.fl-blog .fl-section-title .elementor-heading-title{font-family:var(--fl-h)!important;font-weight:700!important;color:var(--fl-ink)!important;font-size:clamp(26px,2.6vw,34px)!important}

/* ---------- CTA band ---------- */
.fl-blog .fl-cta{position:relative;overflow:hidden;
  background:radial-gradient(800px 380px at 90% 0%,rgba(211,177,10,.14),transparent 60%),linear-gradient(180deg,var(--fl-navy-2),var(--fl-navy));}
.fl-blog .fl-cta .elementor-heading-title{font-family:var(--fl-h)!important;font-weight:800!important;color:#fff!important;font-size:clamp(28px,3.4vw,44px)!important;line-height:1.12!important}
.fl-blog .fl-cta .fl-dek p{color:#DCE3F7;font-size:17px;line-height:1.6;margin:0}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .fl-blog .elementor-posts-container{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fl-blog .fl-side{position:static}
}
@media (max-width:767px){
  .fl-blog .elementor-posts-container{grid-template-columns:1fr}
  body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__card{display:flex}
  body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__thumbnail{min-height:0;padding-bottom:56.25%!important}
  body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__text{padding:22px 24px 8px!important}
  .fl-blog .fl-content{font-size:16.5px}
}
/* ---- Flint brand palette: white + logo gold + logo charcoal ---- */
.fl-blog{--fl-gold:#D4B008;--fl-gold-ink:#8A7200;--fl-ink:#1E2222;--fl-body:#3D4343;--fl-muted:#5E6464;--fl-line:#E7E5DC;--fl-soft:#F8F7F2;--fl-char:#232727;--fl-grey:#565C5C}
/* white banners */
.fl-blog .fl-hero{color:var(--fl-ink);background:radial-gradient(900px 460px at 88% -10%,rgba(212,176,8,.22),transparent 60%),radial-gradient(700px 380px at 0% 120%,rgba(212,176,8,.10),transparent 60%),#FFFFFF;border-bottom:1px solid var(--fl-line)}
.fl-blog .fl-hero::before{background-image:linear-gradient(rgba(86,92,92,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(86,92,92,.07) 1px,transparent 1px)}
.fl-blog .fl-hero .elementor-heading-title,.fl-blog .fl-hero h1{color:var(--fl-ink)!important}
.fl-blog .fl-hero .fl-dek,.fl-blog .fl-hero .fl-dek p{color:var(--fl-muted)}
.fl-blog .fl-hero .fl-eyebrow p{color:var(--fl-grey)}
.fl-blog .fl-pill .elementor-button{background:#fff!important;color:var(--fl-ink)!important;border:1px solid #D9D6CA!important}
.fl-blog .fl-pill .elementor-button:hover{border-color:var(--fl-gold)!important;color:var(--fl-ink)!important}
body.blog .fl-blog .fl-pill--all .elementor-button,
body.category-soc-insights .fl-blog .fl-pill--soc-insights .elementor-button,
body.category-noc-insights .fl-blog .fl-pill--noc-insights .elementor-button,
body.category-saudi-digital-landscape .fl-blog .fl-pill--saudi-digital-landscape .elementor-button,
body.category-expert-perspectives .fl-blog .fl-pill--expert-perspectives .elementor-button{background:var(--fl-gold)!important;color:var(--fl-ink)!important;border-color:var(--fl-gold)!important}
.fl-blog .fl-meta .elementor-post-info__item,.fl-blog .fl-meta li{color:var(--fl-grey)!important}
.fl-blog .fl-meta a{color:var(--fl-gold-ink)!important}
/* buttons: gold with charcoal text */
.fl-blog .elementor-button{background:var(--fl-gold)!important;border-color:var(--fl-gold)!important;color:var(--fl-ink)!important}
/* cards */
.fl-blog .elementor-post__badge{background:var(--fl-gold)!important;color:var(--fl-ink)!important;border:0}
.fl-blog .elementor-post__thumbnail{background:var(--fl-char)}
.fl-blog .elementor-post__meta-data{color:var(--fl-grey)!important}
.fl-blog .elementor-pagination .page-numbers.current{background:var(--fl-gold);color:var(--fl-ink);border-color:var(--fl-gold)}
/* charcoal CTA areas */
.fl-blog .fl-content th{background:var(--fl-char)}
.fl-blog .fl-side-cta,.fl-blog .fl-content .fl-inline-cta{background:linear-gradient(160deg,#2C3131,#1A1D1D);color:#D6D8D3;box-shadow:0 40px 70px -44px rgba(26,29,29,.8)}
.fl-blog .fl-cta{background:radial-gradient(800px 380px at 90% 0%,rgba(212,176,8,.22),transparent 60%),linear-gradient(180deg,#232727,#161919)}
.fl-blog .fl-cta .fl-dek p{color:#D6D8D3}
/* ================= Flint Insights — motion layer ================= */
/* banner: drifting grid + floating gold glow */
.fl-blog .fl-hero::before{animation:fl-grid-drift 22s linear infinite}
@keyframes fl-grid-drift{to{background-position:48px 48px,48px 48px}}
.fl-blog .fl-hero::after{content:"";position:absolute;width:560px;height:560px;right:-120px;top:-220px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,176,8,.28),rgba(212,176,8,0) 65%);filter:blur(6px);pointer-events:none;z-index:0;
  animation:fl-orb 14s ease-in-out infinite alternate}
@keyframes fl-orb{0%{transform:translate(0,0) scale(1)}50%{transform:translate(-160px,70px) scale(1.12)}100%{transform:translate(-60px,150px) scale(.95)}}
.fl-blog .fl-cta::after{content:"";position:absolute;width:520px;height:520px;left:-160px;bottom:-300px;border-radius:50%;
  background:radial-gradient(circle,rgba(212,176,8,.20),rgba(212,176,8,0) 65%);pointer-events:none;animation:fl-orb 16s ease-in-out infinite alternate-reverse}
.fl-blog .fl-cta > *{position:relative;z-index:1}

/* banner title underline draws in */
.fl-blog .fl-hero h1.elementor-heading-title::after{content:"";display:block;height:5px;width:88px;margin-top:22px;border-radius:3px;
  background:linear-gradient(90deg,var(--fl-gold),#F2D650);transform-origin:left;animation:fl-draw 1s .55s cubic-bezier(.2,.8,.2,1) both}
@keyframes fl-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* entrance + scroll reveal (only when JS has switched it on) */
.fl-anim .fl-reveal{opacity:0;transform:translateY(26px);transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s cubic-bezier(.2,.8,.2,1);transition-delay:var(--fl-d,0s)}
.fl-anim .fl-reveal.is-in{opacity:1;transform:none}
.fl-anim .fl-reveal-zoom{opacity:0;transform:scale(.96);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:var(--fl-d,0s)}
.fl-anim .fl-reveal-zoom.is-in{opacity:1;transform:none}

/* buttons: shine sweep on hover */
.fl-blog .elementor-button{position:relative;overflow:hidden}
.fl-blog .elementor-button::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .6s ease}
.fl-blog .elementor-button:hover::after{left:130%}
.fl-blog .fl-pill .elementor-button{transition:transform .2s ease,background .2s,border-color .2s}
.fl-blog .fl-pill .elementor-button:hover{transform:translateY(-2px)}

/* cards: gold edge grows on hover */
.fl-blog .elementor-post__card::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;z-index:3;
  background:linear-gradient(90deg,var(--fl-gold),#F2D650);transform:scaleX(0);transform-origin:left;transition:transform .45s ease}
.fl-blog .elementor-post__card:hover::before{transform:scaleX(1)}
.fl-blog .elementor-post__read-more{transition:letter-spacing .25s ease,color .2s}
.fl-blog .elementor-post__card:hover .elementor-post__read-more{letter-spacing:.02em}

/* single post: reading progress bar */
.fl-progress{position:fixed;left:0;top:0;height:4px;width:100%;z-index:99999;pointer-events:none;
  background:linear-gradient(90deg,#D4B008,#F2D650);transform-origin:left;transform:scaleX(0);box-shadow:0 0 12px rgba(212,176,8,.6)}
/* answer box gentle gold sheen */
.fl-blog .fl-content .fl-answer{background-image:linear-gradient(110deg,transparent 30%,rgba(212,176,8,.10) 50%,transparent 70%);
  background-size:250% 100%;animation:fl-sheen 6s ease-in-out 1.2s infinite}
@keyframes fl-sheen{0%{background-position:120% 0}60%,100%{background-position:-120% 0}}
/* FAQ open animation */
.fl-blog .fl-content details[open] > *:not(summary){animation:fl-fade .45s ease}
@keyframes fl-fade{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
/* sidebar CTA: soft breathing glow */
.fl-blog .fl-side-cta{animation:fl-breathe 4.5s ease-in-out infinite}
@keyframes fl-breathe{0%,100%{box-shadow:0 40px 70px -44px rgba(26,29,29,.8),0 0 0 0 rgba(212,176,8,0)}50%{box-shadow:0 40px 70px -44px rgba(26,29,29,.8),0 0 0 6px rgba(212,176,8,.18)}}

@media (prefers-reduced-motion:reduce){
  .fl-blog *,.fl-blog *::before,.fl-blog *::after,.fl-progress{animation:none!important;transition:none!important}
  .fl-anim .fl-reveal,.fl-anim .fl-reveal-zoom{opacity:1!important;transform:none!important}
}
.fl-blog .elementor-post__card{position:relative}
/* ================= Clean layer (Emircom-style restraint) ================= */
/* banner: plain white, no grid, soft glow only */
.fl-blog .fl-hero{background:radial-gradient(760px 360px at 92% -20%,rgba(212,176,8,.14),transparent 62%),#fff;border-bottom:0}
.fl-blog .fl-hero::before{display:none}
.fl-blog .fl-hero::after{opacity:.55}
.fl-blog .fl-hero .elementor-heading-title,.fl-blog .fl-hero h1{font-weight:800!important;font-size:clamp(34px,4vw,50px)!important}
.fl-blog .fl-hero h1.elementor-heading-title::after{height:4px;width:64px;margin-top:18px}
.fl-blog .fl-hero .fl-dek,.fl-blog .fl-hero .fl-dek p{font-size:18px;color:var(--fl-muted)}
/* breadcrumb */
.fl-blog .fl-crumbs p{margin:0;font-family:var(--fl-ui);font-size:14px;color:var(--fl-muted)}
.fl-blog .fl-crumbs a{color:var(--fl-muted)!important;text-decoration:none}
.fl-blog .fl-crumbs a:hover{color:var(--fl-ink)!important}
.fl-blog .fl-crumbs .sep{margin:0 8px;color:#B9B6AA}
.fl-blog .fl-crumbs .now{color:var(--fl-ink)}

/* category bar: plain text tabs with gold underline */
.fl-blog .fl-tabs{background:#fff;border-top:1px solid var(--fl-line);border-bottom:1px solid var(--fl-line)}
.fl-blog .fl-tabs .fl-pills{gap:0 28px!important}
.fl-blog .fl-tabs .elementor-button,.fl-blog .fl-cats li a{
  all:unset;cursor:pointer;display:inline-block;font-family:var(--fl-ui)!important;font-size:15px!important;font-weight:500!important;
  color:var(--fl-muted)!important;padding:18px 0 16px!important;border-bottom:2px solid transparent!important;transition:color .2s,border-color .2s;
  letter-spacing:0!important;text-transform:none!important;background:none!important;border-radius:0!important;box-shadow:none!important}
.fl-blog .fl-tabs .elementor-button::after{display:none}
.fl-blog .fl-tabs .elementor-button:hover,.fl-blog .fl-cats li a:hover{color:var(--fl-ink)!important;transform:none!important}
body.blog .fl-blog .fl-tabs .fl-pill--all .elementor-button,
.fl-blog .fl-cats li.current-cat a{color:var(--fl-ink)!important;border-bottom-color:var(--fl-gold)!important;background:none!important}
.fl-blog .fl-cats ul{display:flex;flex-wrap:wrap;gap:0 28px;list-style:none;margin:0;padding:0}
.fl-blog .fl-cats li{margin:0;padding:0;list-style:none}
.fl-blog .fl-cats h5,.fl-blog .fl-cats .widget-title,.fl-blog .fl-cats .widgettitle{display:none}

/* feed */
.fl-blog .fl-feed{background:var(--fl-soft)}
.fl-blog .fl-section-title .elementor-heading-title{font-size:clamp(26px,2.4vw,32px)!important}

/* cards: image, category + date chips, title, summary, read more */
.fl-blog .elementor-post__card{border:1px solid rgba(231,229,220,.9)!important;border-radius:16px!important;
  box-shadow:0 10px 15px -3px rgba(0,0,0,.06),0 4px 6px -4px rgba(0,0,0,.05)!important}
.fl-blog .elementor-post__card:hover{box-shadow:0 22px 40px -18px rgba(0,0,0,.18)!important;border-color:rgba(212,176,8,.5)!important}
.fl-blog .elementor-post__badge{font-family:var(--fl-ui)!important;text-transform:none!important;letter-spacing:0!important;
  font-size:12.5px!important;font-weight:600!important;padding:7px 12px!important;border-radius:8px!important}
.fl-blog .elementor-post__meta-data{position:absolute;top:16px;right:16px;margin:0!important;padding:7px 12px!important;border:0!important;
  background:rgba(255,255,255,.94)!important;border-radius:8px;font-family:var(--fl-ui)!important;font-size:12.5px!important;font-weight:600;
  letter-spacing:0!important;text-transform:none!important;color:var(--fl-ink)!important;z-index:2;box-shadow:0 4px 12px -4px rgba(0,0,0,.25)}
.fl-blog .elementor-post__text{padding:24px 26px 26px!important}
.fl-blog .elementor-post__title,.fl-blog .elementor-post__title a{font-size:22px!important;line-height:1.3!important}
.fl-blog .elementor-post__excerpt p{color:#4B5563!important}
.fl-blog .elementor-post__read-more{margin:4px 0 0}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__meta-data{padding:7px 12px!important}
body.blog:not(.paged) .fl-blog .fl-feed .elementor-post:first-child .elementor-post__text{padding:44px!important}

/* single post: quiet meta line */
.fl-blog .fl-meta .elementor-post-info__item,.fl-blog .fl-meta li{font-family:var(--fl-ui)!important;text-transform:none!important;letter-spacing:0!important;font-size:14px!important}
.fl-blog .fl-meta a{font-weight:600}
.fl-blog .fl-toc .elementor-toc__header-title,.fl-blog .fl-side-cta .fl-eyebrow p,.fl-blog .fl-cta .fl-eyebrow p{
  font-family:var(--fl-ui)!important;text-transform:none;letter-spacing:0;font-size:14px;font-weight:600}
.fl-blog .fl-content figcaption{font-family:var(--fl-ui);letter-spacing:0;font-size:13.5px}
.fl-blog .elementor-pagination{font-family:var(--fl-ui)}
.fl-blog .post-navigation__prev--label,.fl-blog .post-navigation__next--label{font-family:var(--fl-ui);text-transform:none;letter-spacing:0;font-size:13px}

/* related section hides itself until there are other posts */
.fl-blog .fl-related:not(:has(.elementor-post)){display:none!important}
.fl-blog .fl-tabs .fl-pill .elementor-button,
body.blog .fl-blog .fl-tabs .fl-pill--all .elementor-button,
body .fl-blog .fl-tabs .fl-cats li a{border:0!important;border-bottom:2px solid transparent!important;outline:0}
body.blog .fl-blog .fl-tabs .fl-pill--all .elementor-button,
body .fl-blog .fl-tabs .fl-cats li.current-cat a{border-bottom-color:var(--fl-gold)!important;color:var(--fl-ink)!important}
body:not(.blog) .fl-blog .fl-tabs .fl-pill--all .elementor-button{background:none!important;color:var(--fl-muted)!important}

.fl-blog .fl-toc a{text-decoration:none}