/* =====================================================================
   INNOWELL — UNIVERSAL BLOG TEMPLATE  (Elementor Pro / CPT ready)
   Scoped to .iwbp-root  •  vanilla, no build step  •  responsive

   MERGE MODEL — designed to flow seamlessly out of the universal header.
   The header is a cream (#FDF8F5) card in a teal (#44AFB7) frame with a
   FLAT bottom (radius 20px 20px 0 0), 5px teal side gutters, max 1900px.
   This template continues that exact sheet:
     • teal root, 5px side gutters, NO top padding  -> flush with header
     • cream "paper", max 1900px, flat top + rounded bottom (0 0 20 20)
     • content sits ON the paper (teal-tint info blocks + white cards),
       not as cream cards floating on teal.
   ===================================================================== */

/* ---------- Font: PPPangramSans (Hostinger CDN, matches site) ---------- */
@font-face{
  font-family:"PPPangramSans";
  src:url("https://innowell.org/wp-content/uploads/2026/06/PPPangramSans-Medium.ttf") format("truetype");
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"PPPangramSans";
  src:url("https://innowell.org/wp-content/uploads/2026/06/PPPangramSans-Semibold.ttf") format("truetype");
  font-weight:600; font-style:normal; font-display:swap;
}

/* ---------- Brand tokens (scoped to the template root) ---------- */
.iwbp-root{
  --iw-bg:#44AFB7;
  --iw-paper:#FDF8F5;
  --iw-tint:#EAF6F6;
  --iw-white:#FFFFFF;
  --iw-card-shadow:0 1px 2px rgba(12,74,78,0.04), 0 12px 28px -20px rgba(12,74,78,0.30);
  --iw-border:rgba(12,74,78,0.12);
  --iw-border-strong:rgba(12,74,78,0.20);
  --iw-hair:rgba(12,74,78,0.10);
  --iw-text:#0C4A4E;
  --iw-text-muted:rgba(12,74,78,0.74);
  --iw-text-subtle:rgba(12,74,78,0.50);
  --iw-brand:#44AFB7;
  --iw-brand-deep:#0C4A4E;
  --iw-accent:#F4BF55;
  --iw-accent-2:#EFA94A;
  --iw-coral:#FF886D;
  --iw-purple:#B471F9;
  --iw-font-sans:"PPPangramSans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --iw-font-mono:"PPPangramSans",system-ui,sans-serif;
  --iw-font-serif:"PPPangramSans",Georgia,serif;
  --iw-radius-sm:12px;
  --iw-radius-lg:20px;
  --iw-gutter:5px;
  --iw-paper-max:1900px;
  --iw-read-max:1240px;
}

/* ---------- Nuke Elementor wrapper padding ---------- */
.elementor-widget-shortcode:has(.iwbp-root),
.elementor-widget-shortcode:has(.iwbp-root) .elementor-widget-container,
.elementor-widget-html:has(.iwbp-root),
.elementor-widget-html:has(.iwbp-root) .elementor-widget-container,
.elementor-element:has(.iwbp-root) > .elementor-widget-container,
.e-con:has(.iwbp-root) > .e-con-inner,
.elementor-section:has(.iwbp-root) > .elementor-container{
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  row-gap:0 !important;
}

/* ---------- Reset ---------- */
.iwbp-root *,
.iwbp-root *::before,
.iwbp-root *::after{ box-sizing:border-box !important; }

/* ---------- Teal frame (flush to header: NO top padding) ---------- */
.iwbp-root{
  background:var(--iw-bg) !important;
  color:var(--iw-text) !important;
  font-family:var(--iw-font-sans) !important;
  font-weight:400 !important;
  line-height:1.7 !important;
  -webkit-font-smoothing:antialiased !important;
  font-size:17px !important;
  letter-spacing:-0.01em !important;
  padding:0 var(--iw-gutter) var(--iw-pad-y, 0) !important;
  margin:0 !important;
  position:relative !important;
}
.iwbp-root img{ max-width:100% !important; display:block !important; }
.iwbp-root a{ color:inherit !important; text-decoration:none !important; }

/* ---------- Cream paper: continuation of the header sheet ---------- */
.iwbp-paper{
  background:var(--iw-paper) !important;
  max-width:var(--iw-paper-max) !important;
  margin:0 auto !important;
  border-radius:0 0 var(--iw-radius-lg) var(--iw-radius-lg) !important;
  padding:clamp(28px,4vw,56px) clamp(18px,4vw,48px) clamp(48px,6vw,84px) !important;
  box-sizing:border-box !important;
  position:relative !important;
}

/* ---------- Reading column + grid ---------- */
.iwbp-shell{
  max-width:760px !important;
  margin:0 auto !important;
  padding:0 !important;
}
.iwbp-grid{
  display:block !important;
}
.iwbp-article{ min-width:0 !important; display:flex !important; flex-direction:column !important; gap:clamp(32px,4vw,48px) !important; }

/* ---------- Placeholder image ---------- */
.iwbp-ph{
  position:relative !important;
  background:
    radial-gradient(120% 120% at 0% 0%, rgba(116,244,201,0.45), transparent 55%),
    radial-gradient(120% 120% at 100% 100%, rgba(180,113,249,0.20), transparent 55%),
    linear-gradient(160deg,#cdeef0,#bfe9ec) !important;
  border:1px solid var(--iw-border) !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  color:var(--iw-text-subtle) !important;
  overflow:hidden !important;
}
.iwbp-ph::after{
  content:attr(data-label) !important;
  font-family:var(--iw-font-mono) !important;
  font-size:11px !important; font-weight:600 !important;
  letter-spacing:0.14em !important; text-transform:uppercase !important;
}
.iwbp-ph svg{ position:absolute !important; width:34px !important; height:34px !important;
  top:14px !important; left:14px !important; stroke:var(--iw-brand-deep) !important; opacity:0.7 !important; }

/* ---------- Shared bits ---------- */
.iwbp-badge{
  display:inline-flex !important; align-items:center !important; gap:7px !important;
  font-family:var(--iw-font-mono) !important;
  font-size:11px !important; font-weight:600 !important;
  letter-spacing:0.12em !important; text-transform:uppercase !important;
  color:var(--iw-brand-deep) !important;
  background:linear-gradient(180deg,var(--iw-accent) 0%,var(--iw-accent-2) 100%) !important;
  padding:6px 13px !important;
  border-radius:999px !important;
}
.iwbp-meta-mono{
  font-family:var(--iw-font-mono) !important;
  font-size:12.5px !important; font-weight:600 !important;
  letter-spacing:0.02em !important;
  color:var(--iw-text-subtle) !important;
}
.iwbp-serif{
  font-family:var(--iw-font-serif) !important;
  font-weight:600 !important;
  color:var(--iw-brand) !important;
}

/* ---------- 1. Hero ---------- */
.iwbp-hero{ margin:0 !important; }
.iwbp-hero-top{ display:flex !important; align-items:center !important; gap:12px !important; margin-bottom:20px !important; flex-wrap:wrap !important; }
.iwbp-hero h1{
  font-family:var(--iw-font-sans) !important;
  font-weight:600 !important;
  font-size:clamp(34px,4.8vw,56px) !important;
  line-height:1.05 !important;
  letter-spacing:-0.03em !important;
  margin:0 0 18px !important;
  color:var(--iw-text) !important;
  text-wrap:balance !important;
}
.iwbp-hero h1 .iwbp-serif{ font-size:1.04em !important; }
.iwbp-excerpt{
  font-size:19px !important;
  color:var(--iw-text-muted) !important;
  margin:0 0 28px !important;
  max-width:62ch !important;
}
.iwbp-featured{
  border-radius:var(--iw-radius-lg) !important;
  height:clamp(260px,40vw,480px) !important;
  margin-bottom:28px !important;
  overflow:hidden !important;
}
.iwbp-byline{
  display:flex !important; align-items:center !important; gap:14px !important;
  flex-wrap:wrap !important;
  padding-top:22px !important;
  border-top:1px solid var(--iw-hair) !important;
}
.iwbp-avatar{
  width:48px !important; height:48px !important; border-radius:50% !important;
  flex:0 0 auto !important;
  border:1px solid var(--iw-border-strong) !important;
}
.iwbp-avatar.iwbp-ph{ font-size:0 !important; }
.iwbp-byline-name{ font-weight:600 !important; font-size:14.5px !important; color:var(--iw-text) !important; line-height:1.3 !important; }
.iwbp-byline-sub{ font-family:var(--iw-font-mono) !important; font-weight:600 !important; font-size:11.5px !important; color:var(--iw-text-subtle) !important; }
.iwbp-dot{ color:var(--iw-text-subtle) !important; }
.iwbp-pill-meta{ display:flex !important; align-items:center !important; gap:10px !important; flex-wrap:wrap !important; margin-left:auto !important; }
.iwbp-chip{
  font-family:var(--iw-font-mono) !important;
  font-size:11px !important; font-weight:600 !important; letter-spacing:0.02em !important;
  color:var(--iw-text-muted) !important;
  background:var(--iw-white) !important;
  border:1px solid var(--iw-border) !important;
  border-radius:999px !important;
  padding:5px 12px !important;
}

/* ---------- 2. Intro ---------- */
.iwbp-intro p{ font-size:19px !important; color:var(--iw-text-muted) !important; margin:0 0 18px !important; line-height:1.75 !important; }
.iwbp-intro p:first-child{ color:var(--iw-text) !important; }

/* ---------- 3. Table of Contents (teal-tint) ---------- */
.iwbp-toc{
  background:var(--iw-tint) !important;
  border:1px solid var(--iw-border) !important;
  border-radius:var(--iw-radius-lg) !important;
  padding:24px 26px !important;
  margin:0 !important;
}
.iwbp-toc-title{
  font-family:var(--iw-font-mono) !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:0.12em !important; text-transform:uppercase !important;
  color:var(--iw-brand) !important;
  margin:0 0 14px !important;
}
.iwbp-toc ol{ list-style:none !important; margin:0 !important; padding:0 !important; counter-reset:iwbp-toc !important;
  display:grid !important; grid-template-columns:1fr 1fr !important; gap:2px 28px !important; }
.iwbp-toc li{ counter-increment:iwbp-toc !important; }
.iwbp-toc a{
  display:flex !important; align-items:baseline !important; gap:10px !important;
  padding:8px 0 !important; font-size:15px !important;
  color:var(--iw-text-muted) !important;
  transition:color 0.18s ease !important;
}
.iwbp-toc a::before{
  content:counter(iwbp-toc,decimal-leading-zero) !important;
  font-family:var(--iw-font-mono) !important;
  font-size:12px !important; font-weight:600 !important;
  color:var(--iw-coral) !important;
  flex:0 0 auto !important;
}
.iwbp-toc a:hover{ color:var(--iw-brand) !important; }

/* ---------- 4. Main content ---------- */
.iwbp-content{ scroll-margin-top:24px !important; }
.iwbp-content h2{
  font-family:var(--iw-font-sans) !important;
  font-weight:600 !important;
  font-size:clamp(26px,3vw,34px) !important;
  letter-spacing:-0.025em !important;
  line-height:1.15 !important;
  color:var(--iw-text) !important;
  margin:44px 0 16px !important;
  scroll-margin-top:24px !important;
}
.iwbp-content > h2:first-child,
.iwbp-content > h3:first-child{ margin-top:0 !important; }
.iwbp-content h3{
  font-family:var(--iw-font-sans) !important;
  font-weight:600 !important;
  font-size:21px !important;
  letter-spacing:-0.015em !important;
  color:var(--iw-text) !important;
  margin:34px 0 12px !important;
}
.iwbp-content p{ margin:0 0 18px !important; color:var(--iw-text-muted) !important; }
.iwbp-content p strong{ color:var(--iw-text) !important; font-weight:600 !important; }
.iwbp-content .iwbp-hl{ color:var(--iw-brand) !important; font-weight:600 !important; }
.iwbp-content a.iwbp-link{
  color:var(--iw-brand-deep) !important; font-weight:600 !important;
  border-bottom:1.5px solid var(--iw-brand) !important;
  transition:border-color 0.18s ease, color 0.18s ease !important;
}
.iwbp-content a.iwbp-link:hover{ color:var(--iw-brand) !important; border-color:var(--iw-brand-deep) !important; }

.iwbp-content ul,
.iwbp-content ol{ margin:0 0 22px !important; padding:0 !important; list-style:none !important; }
.iwbp-content ul li,
.iwbp-content ol li{ position:relative !important; padding-left:28px !important; margin:0 0 10px !important; color:var(--iw-text-muted) !important; }
.iwbp-content ul li::before{
  content:"" !important; position:absolute !important; left:4px !important; top:11px !important;
  width:8px !important; height:8px !important; border-radius:50% !important;
  background:var(--iw-coral) !important;
}
.iwbp-content ol{ counter-reset:iwbp-ol !important; }
.iwbp-content ol li{ counter-increment:iwbp-ol !important; }
.iwbp-content ol li::before{
  content:counter(iwbp-ol) !important;
  position:absolute !important; left:0 !important; top:1px !important;
  font-family:var(--iw-font-mono) !important; font-size:13px !important; font-weight:600 !important;
  color:var(--iw-brand) !important;
}

.iwbp-inline-img{ border-radius:var(--iw-radius-sm) !important; height:clamp(200px,30vw,320px) !important; margin:26px 0 !important; }
.iwbp-figcap{ font-family:var(--iw-font-mono) !important; font-size:11.5px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; margin-top:10px !important; text-align:center !important; }

/* Quote block */
.iwbp-quote{
  margin:30px 0 !important; padding:24px 28px !important;
  border-left:3px solid var(--iw-coral) !important;
  background:var(--iw-tint) !important;
  border-radius:0 var(--iw-radius-sm) var(--iw-radius-sm) 0 !important;
}
.iwbp-quote p{
  font-family:var(--iw-font-serif) !important; font-weight:600 !important;
  font-size:23px !important; line-height:1.4 !important;
  color:var(--iw-text) !important; margin:0 0 8px !important;
}
.iwbp-quote cite{
  font-style:normal !important; font-family:var(--iw-font-mono) !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:0.04em !important; color:var(--iw-text-subtle) !important;
}

/* Callout */
.iwbp-callout{
  display:flex !important; gap:16px !important; margin:28px 0 !important; padding:20px 22px !important;
  background:var(--iw-tint) !important;
  border:1px solid var(--iw-border) !important;
  border-radius:var(--iw-radius-lg) !important;
}
.iwbp-callout-icon{
  flex:0 0 auto !important; width:42px !important; height:42px !important; border-radius:12px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  background:rgba(68,175,183,0.16) !important; border:1px solid rgba(68,175,183,0.35) !important;
}
.iwbp-callout-icon svg{ width:20px !important; height:20px !important; stroke:var(--iw-brand) !important; }
.iwbp-callout-title{ font-weight:600 !important; font-size:15px !important; color:var(--iw-text) !important; margin:0 0 4px !important; }
.iwbp-callout p{ margin:0 !important; font-size:15px !important; color:var(--iw-text-muted) !important; }

/* ---------- 5. CTA card (white) ---------- */
.iwbp-cta{
  margin:32px 0 !important; padding:32px !important;
  background:
    radial-gradient(120% 140% at 100% 0%, rgba(244,191,85,0.20), transparent 60%),
    var(--iw-white) !important;
  border:1px solid var(--iw-border-strong) !important;
  border-radius:var(--iw-radius-lg) !important;
  box-shadow:var(--iw-card-shadow) !important;
  display:flex !important; gap:22px !important; align-items:center !important; flex-wrap:wrap !important;
}
.iwbp-cta-icon{
  flex:0 0 auto !important; width:56px !important; height:56px !important; border-radius:16px !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  background:linear-gradient(180deg,var(--iw-accent),var(--iw-accent-2)) !important;
  box-shadow:0 12px 28px -12px rgba(244,191,85,0.7) !important;
}
.iwbp-cta-icon svg{ width:26px !important; height:26px !important; stroke:var(--iw-brand-deep) !important; }
.iwbp-cta-body{ flex:1 1 280px !important; min-width:0 !important; }
.iwbp-cta-body h3{ margin:0 0 6px !important; font-size:21px !important; font-weight:600 !important; color:var(--iw-text) !important; letter-spacing:-0.015em !important; }
.iwbp-cta-body p{ margin:0 !important; color:var(--iw-text-muted) !important; font-size:15.5px !important; }
.iwbp-cta-actions{ flex:0 0 auto !important; display:flex !important; flex-direction:column !important; align-items:flex-start !important; gap:8px !important; }

.iwbp-btn{
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  font-family:var(--iw-font-sans) !important; font-weight:600 !important; font-size:15px !important;
  background:linear-gradient(180deg,var(--iw-accent) 0%,var(--iw-accent-2) 100%) !important;
  color:var(--iw-brand-deep) !important;
  border:none !important; border-radius:999px !important;
  padding:13px 24px !important; cursor:pointer !important;
  transition:transform 0.16s ease, box-shadow 0.16s ease, opacity 0.16s ease !important;
  box-shadow:0 10px 24px -12px rgba(244,191,85,0.8) !important;
}
.iwbp-btn:hover{ transform:translateY(-1px) !important; box-shadow:0 14px 30px -12px rgba(244,191,85,0.95) !important; opacity:0.95 !important; }
.iwbp-btn svg{ width:16px !important; height:16px !important; stroke:var(--iw-brand-deep) !important; }
.iwbp-link-secondary{ font-family:var(--iw-font-mono) !important; font-size:12px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; }
.iwbp-link-secondary:hover{ color:var(--iw-brand) !important; }

/* ---------- 6. FAQ (white item cards) ---------- */
.iwbp-faq{ margin:0 !important; }
.iwbp-faq h2{ margin:0 0 18px !important; font-size:clamp(25px,3vw,32px) !important; font-weight:600 !important; letter-spacing:-0.025em !important; color:var(--iw-text) !important; }
.iwbp-faq-item{
  border:1px solid var(--iw-border) !important;
  border-radius:var(--iw-radius-sm) !important;
  background:var(--iw-white) !important;
  margin-bottom:12px !important; overflow:hidden !important;
  transition:border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.iwbp-faq-item:last-child{ margin-bottom:0 !important; }
.iwbp-faq-item[data-open="true"]{ border-color:rgba(68,175,183,0.55) !important; box-shadow:var(--iw-card-shadow) !important; }
.iwbp-faq-q{
  width:100% !important;
  display:flex !important; align-items:center !important; justify-content:space-between !important; gap:16px !important;
  background:transparent !important; border:none !important; text-align:left !important; cursor:pointer !important;
  padding:18px 22px !important;
  font-family:var(--iw-font-sans) !important; font-weight:600 !important; font-size:16.5px !important;
  color:var(--iw-text) !important;
}
.iwbp-faq-icon{ flex:0 0 auto !important; position:relative !important; width:18px !important; height:18px !important; }
.iwbp-faq-icon::before,
.iwbp-faq-icon::after{
  content:"" !important; position:absolute !important; background:var(--iw-text-subtle) !important;
  transition:background 0.2s ease, transform 0.25s ease, opacity 0.2s ease !important;
}
.iwbp-faq-icon::before{ top:8px !important; left:0 !important; width:18px !important; height:2px !important; }
.iwbp-faq-icon::after{ left:8px !important; top:0 !important; width:2px !important; height:18px !important; }
.iwbp-faq-item[data-open="true"] .iwbp-faq-icon::before,
.iwbp-faq-item[data-open="true"] .iwbp-faq-icon::after{ background:var(--iw-brand) !important; }
.iwbp-faq-item[data-open="true"] .iwbp-faq-icon::after{ transform:rotate(90deg) !important; opacity:0 !important; }
.iwbp-faq-a{ max-height:0 !important; overflow:hidden !important; transition:max-height 0.32s ease !important; }
.iwbp-faq-a-inner{ padding:0 22px 20px !important; color:var(--iw-text-muted) !important; font-size:15.5px !important; }

/* ---------- 7. Author box (teal-tint) ---------- */
.iwbp-author{
  display:flex !important; gap:22px !important; align-items:flex-start !important; flex-wrap:wrap !important;
  margin:0 !important; padding:clamp(24px,3vw,32px) !important;
  background:var(--iw-tint) !important;
  border:1px solid var(--iw-border) !important;
  border-radius:var(--iw-radius-lg) !important;
}
.iwbp-author-avatar{ width:84px !important; height:84px !important; border-radius:20px !important; flex:0 0 auto !important; border:1px solid var(--iw-border-strong) !important; }
.iwbp-author-body{ flex:1 1 260px !important; min-width:0 !important; }
.iwbp-author-eyebrow{ font-family:var(--iw-font-mono) !important; font-size:11px !important; font-weight:600 !important; letter-spacing:0.12em !important; text-transform:uppercase !important; color:var(--iw-brand) !important; margin:0 0 6px !important; }
.iwbp-author-name{ font-size:19px !important; font-weight:600 !important; color:var(--iw-text) !important; margin:0 0 2px !important; }
.iwbp-author-role{ font-family:var(--iw-font-mono) !important; font-size:12.5px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; margin:0 0 12px !important; }
.iwbp-author-bio{ font-size:15.5px !important; color:var(--iw-text-muted) !important; margin:0 0 16px !important; }
.iwbp-social-row{ display:flex !important; gap:10px !important; flex-wrap:wrap !important; }
.iwbp-social{
  width:38px !important; height:38px !important; border-radius:50% !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  background:var(--iw-white) !important; border:1px solid var(--iw-border) !important;
  transition:border-color 0.18s ease, transform 0.18s ease, background 0.18s ease !important;
}
.iwbp-social svg{ width:17px !important; height:17px !important; fill:var(--iw-text-muted) !important; }
.iwbp-social:hover{ transform:translateY(-2px) !important; border-color:rgba(68,175,183,0.6) !important; background:rgba(68,175,183,0.10) !important; }
.iwbp-social:hover svg{ fill:var(--iw-brand) !important; }

/* ---------- 8. Related posts (white cards) ---------- */
.iwbp-related{ margin:0 !important; }
.iwbp-related > h2{ margin:0 0 22px !important; font-size:clamp(25px,3vw,32px) !important; font-weight:600 !important; letter-spacing:-0.025em !important; color:var(--iw-text) !important; }
.iwbp-related-grid{ display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:20px !important; }
.iwbp-card{
  background:var(--iw-white) !important;
  border:1px solid var(--iw-border) !important;
  border-radius:var(--iw-radius-lg) !important;
  overflow:hidden !important;
  box-shadow:var(--iw-card-shadow) !important;
  transition:border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}
.iwbp-card:hover{ border-color:rgba(68,175,183,0.55) !important; transform:translateY(-3px) !important; box-shadow:0 1px 2px rgba(12,74,78,0.05), 0 18px 36px -22px rgba(12,74,78,0.40) !important; }
.iwbp-card-thumb{ height:152px !important; overflow:hidden !important; }
.iwbp-card-thumb .iwbp-ph{ height:100% !important; border:none !important; border-radius:0 !important; transition:transform 0.4s ease !important; }
.iwbp-card:hover .iwbp-card-thumb .iwbp-ph{ transform:scale(1.06) !important; }
.iwbp-card-body{ padding:16px 18px 20px !important; }
.iwbp-card .iwbp-badge{ font-size:9.5px !important; padding:4px 10px !important; margin-bottom:11px !important; }
.iwbp-card-title{ font-size:16.5px !important; font-weight:600 !important; color:var(--iw-text) !important; line-height:1.3 !important; margin:0 0 12px !important; letter-spacing:-0.015em !important; }
.iwbp-card:hover .iwbp-card-title{ color:var(--iw-brand) !important; }
.iwbp-card-meta{ font-family:var(--iw-font-mono) !important; font-size:11.5px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; display:flex !important; gap:8px !important; align-items:center !important; }

/* ---------- 9. Sidebar (white widgets) ---------- */
.iwbp-sidebar{ position:sticky !important; top:24px !important; display:flex !important; flex-direction:column !important; gap:20px !important; }
.iwbp-widget{
  background:var(--iw-white) !important;
  border:1px solid var(--iw-border) !important;
  border-radius:var(--iw-radius-lg) !important;
  padding:22px !important;
  box-shadow:var(--iw-card-shadow) !important;
}
.iwbp-widget-title{
  font-family:var(--iw-font-sans) !important; font-weight:600 !important; font-size:16px !important;
  color:var(--iw-text) !important; margin:0 0 16px !important;
  padding-bottom:13px !important; border-bottom:1px solid var(--iw-hair) !important;
  text-align:center !important;
}
.iwbp-cat-list{ list-style:none !important; margin:0 !important; padding:0 !important; }
.iwbp-cat-list li + li{ border-top:1px solid var(--iw-hair) !important; }
.iwbp-cat-list a{
  display:flex !important; align-items:center !important; justify-content:space-between !important;
  padding:11px 0 !important; font-size:14.5px !important; color:var(--iw-text-muted) !important;
  transition:color 0.18s ease, padding 0.18s ease !important;
}
.iwbp-cat-list a svg{ width:14px !important; height:14px !important; stroke:var(--iw-text-subtle) !important; transition:transform 0.18s ease, stroke 0.18s ease !important; }
.iwbp-cat-list a:hover{ color:var(--iw-brand) !important; padding-left:4px !important; }
.iwbp-cat-list a:hover svg{ stroke:var(--iw-brand) !important; transform:translateX(3px) !important; }
.iwbp-cat-count{ font-family:var(--iw-font-mono) !important; font-size:11px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; margin-left:auto !important; margin-right:10px !important; }

.iwbp-pop{ display:flex !important; flex-direction:column !important; gap:14px !important; }
.iwbp-pop-item{ display:flex !important; gap:12px !important; align-items:center !important; }
.iwbp-pop-thumb{ width:56px !important; height:56px !important; border-radius:12px !important; flex:0 0 auto !important; }
.iwbp-pop-thumb::after{ display:none !important; }
.iwbp-pop-thumb svg{ position:static !important; width:20px !important; height:20px !important; }
.iwbp-pop-body{ min-width:0 !important; }
.iwbp-pop-title{ font-size:13.5px !important; font-weight:600 !important; color:var(--iw-text) !important; line-height:1.35 !important; margin:0 0 4px !important; transition:color 0.18s ease !important; }
.iwbp-pop-item:hover .iwbp-pop-title{ color:var(--iw-brand) !important; }
.iwbp-pop-meta{ font-family:var(--iw-font-mono) !important; font-size:10.5px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; }

.iwbp-news{ text-align:center !important; }
.iwbp-news .iwbp-widget-title{ border-bottom:none !important; padding-bottom:0 !important; margin-bottom:8px !important; }
.iwbp-news p{ font-size:14px !important; color:var(--iw-text-muted) !important; margin:0 0 16px !important; }
.iwbp-news-input{
  width:100% !important; background:var(--iw-paper) !important;
  border:1px solid var(--iw-border-strong) !important; border-radius:999px !important;
  padding:12px 16px !important; color:var(--iw-text) !important;
  font-family:var(--iw-font-sans) !important; font-size:14px !important;
  margin-bottom:10px !important; outline:none !important;
  transition:border-color 0.18s ease, box-shadow 0.18s ease !important;
}
.iwbp-news-input::placeholder{ color:var(--iw-text-subtle) !important; }
.iwbp-news-input:focus{ border-color:var(--iw-brand) !important; box-shadow:0 0 0 3px rgba(68,175,183,0.18) !important; }
.iwbp-news .iwbp-btn{ width:100% !important; justify-content:center !important; }
.iwbp-news-note{ font-family:var(--iw-font-mono) !important; font-size:10.5px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; margin:12px 0 0 !important; }

.iwbp-stay{ display:flex !important; gap:12px !important; flex-wrap:wrap !important; }
.iwbp-stay .iwbp-social{ width:44px !important; height:44px !important; }
.iwbp-stay .iwbp-social svg{ width:19px !important; height:19px !important; }

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .iwbp-grid{ grid-template-columns:1fr !important; }
  .iwbp-sidebar{ position:static !important; }
  .iwbp-related-grid{ grid-template-columns:repeat(2,1fr) !important; }
  .iwbp-toc ol{ grid-template-columns:1fr !important; }
}
@media (max-width:768px){
  .iwbp-related-grid{ grid-template-columns:repeat(2,1fr) !important; }
  .iwbp-toc ol{ grid-template-columns:1fr !important; }
  .iwbp-hero h1{ font-size:clamp(28px,6vw,40px) !important; }
}
@media (max-width:767px){
  .iwbp-root{ font-size:16px !important; padding:0 6px var(--iw-pad-y, 0) !important; }
  .iwbp-paper{ border-radius:0 0 16px 16px !important; padding:clamp(22px,5vw,32px) clamp(16px,5vw,22px) clamp(40px,8vw,56px) !important; }
  .iwbp-related-grid{ grid-template-columns:1fr !important; }
  .iwbp-pill-meta{ margin-left:0 !important; width:100% !important; }
  .iwbp-cta{ padding:24px !important; }
  .iwbp-cta-actions{ width:100% !important; }
  .iwbp-byline{ gap:12px !important; }
}

/* =====================================================================
   ADDITIONS for the live WordPress / Elementor build
   ===================================================================== */
.iwbp-featured{ overflow:hidden !important; }
.iwbp-featured > img{ width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; }
.iwbp-inline-img{ overflow:hidden !important; }
.iwbp-inline-img > img{ width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; }
.iwbp-card-thumb > img{ width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; transition:transform 0.4s ease !important; }
.iwbp-card:hover .iwbp-card-thumb > img{ transform:scale(1.06) !important; }
.iwbp-avatar > img,
.iwbp-author-avatar > img,
.iwbp-pop-thumb > img{ width:100% !important; height:100% !important; object-fit:cover !important; border-radius:inherit !important; display:block !important; }
.iwbp-pop-thumb{ overflow:hidden !important; }
.iwbp-avatar,.iwbp-author-avatar{ overflow:hidden !important; }

.iwbp-content img{ border-radius:var(--iw-radius-sm) !important; margin:26px 0 !important; height:auto !important; }
.iwbp-content figure{ margin:26px 0 !important; }
.iwbp-content figcaption{ font-family:var(--iw-font-mono) !important; font-size:11.5px !important; font-weight:600 !important; color:var(--iw-text-subtle) !important; margin-top:10px !important; text-align:center !important; }
.iwbp-content table{ width:100% !important; border-collapse:collapse !important; margin:26px 0 !important; font-size:15px !important; border-radius:var(--iw-radius-sm) !important; overflow:hidden !important; border:1px solid var(--iw-border) !important; }
.iwbp-content th,.iwbp-content td{ border:1px solid var(--iw-border) !important; padding:11px 14px !important; text-align:left !important; color:var(--iw-text-muted) !important; }
.iwbp-content th{ color:var(--iw-text) !important; font-weight:600 !important; background:var(--iw-tint) !important; }

.iwbp-progress{
  position:fixed !important; top:0 !important; left:0 !important;
  height:3px !important; width:0% !important; z-index:9999 !important;
  background:linear-gradient(90deg,var(--iw-coral),var(--iw-accent)) !important;
  transition:width 0.08s linear !important; pointer-events:none !important;
}

.iwbp-root [hidden]{ display:none !important; }

@media (prefers-reduced-motion:reduce){
  .iwbp-root *{ transition:none !important; scroll-behavior:auto !important; }
  .iwbp-progress{ transition:none !important; }
}

.iwbp-content a{
  color:var(--iw-brand-deep) !important; font-weight:600 !important;
  border-bottom:1.5px solid var(--iw-brand) !important;
  transition:border-color 0.18s ease, color 0.18s ease !important;
}
.iwbp-content a:hover{ color:var(--iw-brand) !important; border-color:var(--iw-brand-deep) !important; }
.iwbp-content h2,.iwbp-content h3{ scroll-margin-top:24px !important; }
.iwbp-content blockquote{
  margin:30px 0 !important; padding:24px 28px !important;
  border-left:3px solid var(--iw-coral) !important;
  background:var(--iw-tint) !important;
  border-radius:0 var(--iw-radius-sm) var(--iw-radius-sm) 0 !important;
}
.iwbp-content blockquote p{
  font-family:var(--iw-font-serif) !important; font-weight:600 !important;
  font-size:23px !important; line-height:1.4 !important;
  color:var(--iw-text) !important; margin:0 0 8px !important;
}
.iwbp-content blockquote cite{
  font-style:normal !important; font-family:var(--iw-font-mono) !important;
  font-size:12px !important; font-weight:600 !important; letter-spacing:0.04em !important; color:var(--iw-text-subtle) !important;
}