/* ===== Single article — [hb_post_head] [hb_post_toc] [hb_post_footer] + Post Content ===== */
.hbp-head,.hbp-side,.hbp-foot,.hbp-cta,.single-post .elementor-widget-theme-post-content{--ink:var(--hb-ink);--gold:var(--hb-gold);--muted:#5a6b64;--line:#e3e8e5;--soft:#f6f3ea;--field:#f7f8f6;font-family:var(--e-global-typography-primary-font-family,inherit);color:var(--ink)}
.hbp-head *,.hbp-side *,.hbp-foot *,.hbp-cta *{box-sizing:border-box;font-family:inherit}

/* ---------- head ---------- */
.hbp-head{max-width:860px;margin:0 auto;padding:clamp(24px,4vw,48px) 0 clamp(20px,3vw,32px);text-align:center}
.hbp-crumbs{max-width:1280px;margin:clamp(16px,2.5vw,28px) auto 0;font-size:13px;line-height:1.9;color:#5a6b64;text-align:right;font-family:var(--e-global-typography-primary-font-family,inherit)}
.hbp-crumbs + .hbp-head{padding-top:clamp(16px,2vw,24px)}
.hbp-crumbs + .hbp-head--media{margin-top:12px;padding-top:clamp(28px,4vw,52px)}
.hbp-crumbs a{color:#5a6b64 !important;text-decoration:none !important}
.hbp-crumbs a:hover{color:var(--hb-gold-dark) !important}
.hbp-cat{display:inline-block;margin-bottom:12px;padding:3px 14px;border-radius:999px;background:var(--soft);color:var(--hb-gold-dark) !important;text-decoration:none !important;font-size:13px;font-weight:800;line-height:1.9}
.hbp-cat:hover{background:var(--gold);color:var(--ink) !important}
.hbp-title{margin:0 auto;max-width:800px;font-size:clamp(26px,3.6vw,42px);font-weight:900;line-height:1.6;color:var(--ink);text-wrap:balance}
.hbp-lead{max-width:680px;margin:14px auto 0;font-size:clamp(15.5px,1.4vw,17.5px);line-height:2.1;color:var(--muted)}
.hbp-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;margin-top:20px;font-size:14px;color:var(--muted)}
.hbp-author{display:inline-flex;align-items:center;gap:10px;color:var(--ink) !important;text-decoration:none !important;font-weight:800}
.hbp-author img{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:center 15%;background:var(--ink)}
.hbp-dot{width:4px;height:4px;border-radius:50%;background:var(--gold)}
/* with featured image: a soft hero band — text + framed image (desktop), stacked & centered (tablet/mobile) */
.hbp-head--media{max-width:1280px;margin-top:clamp(16px,2.5vw,28px);margin-bottom:clamp(24px,3vw,40px);padding:clamp(28px,4vw,52px) clamp(22px,4vw,56px);
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(28px,4vw,64px);align-items:center;text-align:right;
  border-radius:calc(28px * var(--hb-rs));background:linear-gradient(135deg,#f8f5ec 0%,#f3efe3 100%);border:1px solid rgba(var(--hb-gold-rgb),.22)}
.hbp-head--media .hbp-title,.hbp-head--media .hbp-lead{margin-right:0;margin-left:0}
.hbp-head--media .hbp-meta{justify-content:flex-start}
.hbp-head--media .hbp-cat{background:#fff}
.hbp-cover{position:relative;justify-self:center;width:340px;margin:0 !important;isolation:isolate}
.hbp-cover::before{content:"";position:absolute;inset:14px -14px -14px 14px;z-index:-1;border:1.5px solid rgba(var(--hb-gold-rgb),.8);border-radius:calc(24px * var(--hb-rs))}
.hbp-cover img{display:block;width:100% !important;height:100% !important;margin:0;aspect-ratio:1/1;object-fit:cover;border-radius:calc(24px * var(--hb-rs));background:#fff;box-shadow:0 22px 50px rgba(var(--hb-ink-rgb),.16)}
.hbp-cover--wide{width:440px}
.hbp-cover--wide img{aspect-ratio:16/10}
@media (max-width:1024px){
  .hbp-head--media{grid-template-columns:minmax(0,1fr);text-align:center;gap:28px}
  .hbp-head--media .hbp-title,.hbp-head--media .hbp-lead{margin-right:auto;margin-left:auto}
  .hbp-head--media .hbp-meta{justify-content:center}
  .hbp-cover{width:min(300px,78%)}
  .hbp-cover--wide{width:min(560px,100%)}
  .hbp-cover::before{inset:10px -10px -10px 10px}
}
@media (max-width:600px){
  .hbp-head--media{padding:24px 16px 30px;border-radius:calc(22px * var(--hb-rs))}
  .hbp-cover{width:min(240px,72%)}
}

/* ---------- article body (the Elementor «Post Content» box) ---------- */
.single-post .elementor-widget-theme-post-content{font-size:clamp(16px,1.25vw,17.5px);line-height:2.15;color:#24332e}
.single-post .elementor-widget-theme-post-content p{margin:0 0 1.15em}
.single-post .elementor-widget-theme-post-content h2,
.single-post .elementor-widget-theme-post-content h2.elementor-heading-title{margin:1.8em 0 .6em;font-size:clamp(21px,2vw,27px) !important;font-weight:900 !important;line-height:1.7 !important;color:var(--ink) !important;scroll-margin-top:calc(var(--hb-hdr-h,78px) + 20px)}
.single-post .elementor-widget-theme-post-content h3,
.single-post .elementor-widget-theme-post-content h3.elementor-heading-title{margin:1.5em 0 .5em;font-size:clamp(18px,1.6vw,21px) !important;font-weight:800 !important;line-height:1.75 !important;color:var(--ink) !important;scroll-margin-top:calc(var(--hb-hdr-h,78px) + 20px)}
.single-post .elementor-widget-theme-post-content .elementor-widget-heading{margin-bottom:0}
.single-post .elementor-widget-theme-post-content a:not([class]){color:var(--hb-gold-dark);text-decoration:underline;text-decoration-color:rgba(var(--hb-gold-rgb),.5);text-underline-offset:4px}
.single-post .elementor-widget-theme-post-content a:not([class]):hover{color:var(--ink)}
.single-post .elementor-widget-theme-post-content ul,.single-post .elementor-widget-theme-post-content ol{margin:0 0 1.2em;padding-right:1.4em}
.single-post .elementor-widget-theme-post-content li{margin-bottom:.4em}
.single-post .elementor-widget-theme-post-content li::marker{color:var(--hb-gold-dark);font-weight:800}
.single-post .elementor-widget-theme-post-content strong,.single-post .elementor-widget-theme-post-content b{color:var(--ink);font-weight:800}
.single-post .elementor-widget-theme-post-content blockquote{margin:1.6em 0;padding:18px 22px;border-right:4px solid var(--gold);border-radius:calc(14px * var(--hb-rs));background:var(--soft);font-size:1.03em;color:var(--ink)}
.single-post .elementor-widget-theme-post-content blockquote p:last-child{margin:0}
.single-post .elementor-widget-theme-post-content img{max-width:100%;height:auto;border-radius:calc(16px * var(--hb-rs))}
.single-post .elementor-widget-theme-post-content figcaption,.single-post .elementor-widget-theme-post-content .widget-image-caption{margin-top:8px;font-size:13.5px;color:var(--muted);text-align:center}
.single-post .elementor-widget-theme-post-content table{width:100%;margin:1.4em 0;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:calc(14px * var(--hb-rs));overflow:hidden;font-size:15px}
.single-post .elementor-widget-theme-post-content th,.single-post .elementor-widget-theme-post-content td{padding:10px 14px;border-top:1px solid var(--line);text-align:right}
.single-post .elementor-widget-theme-post-content tr:first-child th,.single-post .elementor-widget-theme-post-content tr:first-child td{border-top:0}
.single-post .elementor-widget-theme-post-content th{background:var(--field);font-weight:800}
.single-post .elementor-widget-theme-post-content .hb-audio,.single-post .elementor-widget-theme-post-content .hbp-cta{margin:1.6em 0}

/* ---------- 2-column layout via CSS classes (Elementor › Advanced › CSS Classes):
   outer container «hbp-row», inner containers «hbp-main» (Post Content) and «hbp-aside» ([hb_post_toc]) ---------- */
.hbp-row:not(.e-con-boxed),.hbp-row > .e-con-inner{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:stretch !important;gap:clamp(28px,4vw,48px) !important}
.hbp-row .hbp-main{flex:1 1 0 !important;width:auto !important;min-width:0;max-width:none !important;padding:0 !important}
.hbp-row .hbp-aside{flex:0 0 300px !important;width:300px !important;max-width:300px !important;padding:0 !important}
@media (max-width:1024px){
  .hbp-row:not(.e-con-boxed),.hbp-row > .e-con-inner{flex-direction:column !important;gap:20px !important}
  .hbp-row .hbp-aside{order:-1;flex:0 0 auto !important;width:100% !important;max-width:none !important}
}

/* ---------- side: TOC + small CTA ---------- */
.hbp-side{display:flex;flex-direction:column;gap:16px}
/* sticky must sit on the widget wrapper: it is the direct child of the tall side column */
.hbp-row .hbp-aside > .elementor-element,.hbp-row .hbp-aside > .e-con-inner > .elementor-element{position:sticky;top:calc(var(--hb-hdr-h,78px) + 24px);align-self:flex-start}
.admin-bar .hbp-row .hbp-aside > .elementor-element{top:calc(var(--hb-hdr-h,78px) + 56px)}
.hbp-toc{border:1px solid var(--line);border-radius:calc(18px * var(--hb-rs));background:#fff;overflow:hidden}
.hbp-toc summary{display:flex;align-items:center;gap:10px;width:100%;padding:14px 18px;font-size:15px;font-weight:900;cursor:pointer;list-style:none;user-select:none}
.hbp-toc summary::before{content:"";flex-shrink:0;width:30px;height:30px;border-radius:calc(9px * var(--hb-rs));background:rgba(var(--hb-gold-rgb),.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a8873a' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11M4.5 6h.01M4.5 12h.01M4.5 18h.01'/%3E%3C/svg%3E") no-repeat center/17px}
.hbp-toc summary::after{margin-inline-start:auto}
.hbp-toc summary::-webkit-details-marker{display:none}
.hbp-toc summary::after{content:"";width:8px;height:8px;border-left:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .2s ease}
.hbp-toc[open] summary::after{transform:rotate(135deg)}
.hbp-toc__list{list-style:none;margin:0;padding:0 10px 12px;max-height:min(60vh,520px);overflow:auto;counter-reset:toc}
.hbp-toc__list li{margin:0}
.hbp-toc__list a{display:block;padding:7px 10px;border-radius:calc(10px * var(--hb-rs));font-size:14px;line-height:1.8;color:var(--muted) !important;text-decoration:none !important;transition:background .15s ease,color .15s ease}
.hbp-toc__list .lv-h3 a{padding-right:24px;font-size:13.5px}
.hbp-toc__list a:hover{background:var(--field);color:var(--ink) !important}
.hbp-toc__list a.is-active{background:rgba(var(--hb-gold-rgb),.16);color:var(--ink) !important;font-weight:800}
.hbp-sidecta{padding:18px;border-radius:calc(18px * var(--hb-rs));background:var(--ink);color:#fff;background-image:radial-gradient(circle at 0% 0%,rgba(var(--hb-gold-rgb),.22),rgba(var(--hb-gold-rgb),0) 60%)}
.hbp-sidecta strong{display:block;font-size:15.5px;font-weight:900;line-height:1.7}
.hbp-sidecta p{margin:4px 0 12px;font-size:13.5px;line-height:1.9;color:rgba(255,255,255,.75)}
.hbp-sidecta a{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:calc(12px * var(--hb-rs));background:var(--gold);color:var(--ink) !important;text-decoration:none !important;font-size:14.5px;font-weight:900}
.hbp-sidecta a:hover{background:var(--hb-gold-hover)}

/* ---------- in-article CTA ---------- */
.hbp-cta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;padding:20px 22px;border:1px solid rgba(var(--hb-gold-rgb),.45);border-radius:calc(18px * var(--hb-rs));background:var(--soft)}
.hbp-cta[hidden]{display:none}
.hbp-cta strong{display:block;font-size:16px;font-weight:900;line-height:1.7;color:var(--ink)}
.hbp-cta p{margin:2px 0 0 !important;font-size:14px;line-height:1.9;color:var(--muted)}
.hbp-cta__btn{flex-shrink:0;display:inline-flex;align-items:center;min-height:46px;padding:0 22px;border-radius:calc(12px * var(--hb-rs));background:var(--ink);color:#fff !important;text-decoration:none !important;font-size:14.5px;font-weight:800}
.hbp-cta__btn:hover{background:var(--hb-ink-hover)}

/* ---------- footer ---------- */
.hbp-foot{display:flex;flex-direction:column;gap:20px;margin:clamp(28px,4vw,48px) 0 clamp(48px,6vw,88px)}
.hbp-authorbox{display:flex;align-items:flex-start;gap:18px;padding:22px;border:1px solid var(--line);border-radius:calc(20px * var(--hb-rs));background:#fff}
.hbp-authorbox img{flex-shrink:0;width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:center 15%;background:var(--ink)}
.hbp-authorbox__eyebrow{display:block;font-size:12.5px;font-weight:700;color:var(--hb-gold-dark)}
.hbp-authorbox strong{display:block;font-size:18px;font-weight:900;line-height:1.6}
.hbp-authorbox p{margin:4px 0 8px;font-size:14.5px;line-height:2;color:var(--muted)}
.hbp-authorbox a{font-size:14px;font-weight:800;color:var(--hb-gold-dark) !important;text-decoration:none !important}
.hbp-authorbox a::after{content:" ←"}
.hbp-endcta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px 28px;padding:clamp(22px,3vw,32px);border-radius:calc(22px * var(--hb-rs));background:var(--ink);color:#fff;background-image:radial-gradient(circle at 0% 0%,rgba(var(--hb-gold-rgb),.2),rgba(var(--hb-gold-rgb),0) 50%)}
.hbp-endcta strong{display:block;font-size:clamp(17px,1.7vw,20px);font-weight:900;line-height:1.7;color:#fff}
.hbp-endcta p{margin:2px 0 0;font-size:14.5px;color:rgba(255,255,255,.75)}
.hbp-endcta__actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
.hbp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:calc(12px * var(--hb-rs));text-decoration:none !important;font-size:15px;font-weight:900}
.hbp-btn--gold{background:var(--gold);color:var(--ink) !important}
.hbp-btn--gold:hover{background:var(--hb-gold-hover)}
.hbp-endcta__phone{font-size:14px;color:rgba(255,255,255,.8) !important;text-decoration:none !important}
.hbp-endcta__phone b{color:#fff;unicode-bidi:isolate}
.hbp-related h2{margin:12px 0 14px;font-size:clamp(19px,1.8vw,23px);font-weight:900;color:var(--ink)}

/* ---------- comments [hb_comments] ---------- */
.hbcm-wrap{margin-top:clamp(56px,8vw,96px) !important;padding-top:0;border-top:0;--ink:var(--hb-ink);--gold:var(--hb-gold);--muted:#5a6b64;--line:#e3e8e5;--field:#f7f8f6;--soft:#f6f3ea;margin:0 0 clamp(48px,6vw,88px);color:var(--ink);font-family:var(--e-global-typography-primary-font-family,inherit)}
.hbcm-wrap *{box-sizing:border-box;font-family:inherit}
.hbcm-title{display:flex;align-items:center;gap:10px;margin:0 0 26px;font-size:clamp(19px,1.8vw,23px);font-weight:900;color:var(--ink)}
.hbcm-title span{min-width:28px;padding:0 9px;border-radius:999px;background:var(--soft);color:var(--hb-gold-dark);font-size:14px;line-height:28px;text-align:center}
.hbcm-list,.hbcm-list .children{list-style:none;margin:0;padding:0}
.hbcm-list .children{margin:14px 32px 0 0;padding:0;border:0}
.hbcm-item{margin:0 0 18px}
.hbcm-card{padding:22px 24px;border:1px solid var(--line);border-radius:calc(18px * var(--hb-rs));background:#fff}
.bypostauthor > .hbcm-card{border-color:rgba(var(--hb-gold-rgb),.55);background:#fffdf7}
.hbcm-card__head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.hbcm-ava{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;background:var(--field);color:var(--ink);font-size:16px;font-weight:900}
.hbcm-ava.is-hadi{background:var(--ink);color:var(--gold)}
.hbcm-who{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px}
.hbcm-who strong{font-size:15px;font-weight:800}
.hbcm-who time{font-size:12.5px;color:var(--muted)}
.hbcm-badge{padding:1px 9px;border-radius:999px;background:var(--gold);color:var(--ink);font-size:11.5px;font-weight:800;line-height:1.9}
.hbcm-text{font-size:15px;line-height:2.2;color:#2f3d38}
.hbcm-text p{margin:0 0 .9em}
.hbcm-text p:last-child{margin:0}
.hbcm-pending{margin:0 0 8px;padding:6px 12px;border-radius:10px;background:var(--soft);font-size:13px;color:var(--hb-gold-dark)}
.hbcm-reply{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}
.hbcm-reply a{font-size:13.5px;font-weight:800;color:var(--hb-gold-dark) !important;text-decoration:none !important}
.hbcm-empty{margin:0 0 26px;color:var(--muted);font-size:14.5px}
.hbcm-stars{display:block;margin:-2px 0 6px;color:var(--gold);font-size:15px;letter-spacing:2px}
.hbcm-rate{display:flex;align-items:center;gap:12px;margin:0 0 12px}
.hbcm-rate > span{font-size:14px;font-weight:700}
.hbcm-rate__stars{display:inline-flex;flex-direction:row-reverse;gap:2px}
.hbcm-rate__stars input{position:absolute;opacity:0;width:1px;height:1px}
.hbcm-rate__stars label{font-size:26px;line-height:1;color:#d8dfda;cursor:pointer;transition:color .15s ease}
.hbcm-rate__stars input:checked ~ label,.hbcm-rate__stars label:hover,.hbcm-rate__stars label:hover ~ label{color:var(--gold)}
.hbcm-rate__stars input:focus-visible + label{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}
.hbcm-wrap .comment-respond{margin-top:32px;padding:clamp(18px,2.6vw,28px);border:1px solid var(--line);border-radius:calc(20px * var(--hb-rs));background:#fff}
.hbcm-list .comment-respond{margin:10px 0}
.hbcm-form__title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 6px;font-size:17px;font-weight:900;color:var(--ink)}
.hbcm-form__title small a{font-size:13px;font-weight:700;color:#a3432a !important;text-decoration:none !important}
.hbcm-note,.hbcm-wrap .logged-in-as{margin:0 0 14px;font-size:13px;color:var(--muted)}
.hbcm-wrap .logged-in-as a{color:var(--hb-gold-dark) !important}
.hbcm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}
.hbcm-form > *{grid-column:1 / -1}
.hbcm-form .comment-form-author,.hbcm-form .comment-form-email{grid-column:auto}
.hbcm-form p{margin:0 0 12px}
.hbcm-form label{display:block;margin-bottom:6px;font-size:14px;font-weight:700;color:var(--ink)}
.hbcm-form input[type="text"],.hbcm-form input[type="email"],.hbcm-form textarea{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid var(--line) !important;border-radius:calc(12px * var(--hb-rs)) !important;background:var(--field) !important;font-size:15px;color:var(--ink);box-shadow:none !important;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.hbcm-form input[type="email"]{text-align:right}
.hbcm-form textarea{min-height:130px;resize:vertical;line-height:1.9}
.hbcm-form input:focus,.hbcm-form textarea:focus{outline:none;border-color:var(--gold) !important;background:#fff !important;box-shadow:0 0 0 4px rgba(var(--hb-gold-rgb),.18) !important}
.hbcm-form .comment-form-cookies-consent{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.hbcm-form .comment-form-cookies-consent label{margin:0;font-weight:500;font-size:13px;color:var(--muted)}
.hbcm-form .form-submit{margin:4px 0 0}
.hbcm-submit,.hbcm-submit:hover,.hbcm-submit:focus{min-height:50px;padding:0 28px !important;border:0 !important;border-radius:calc(12px * var(--hb-rs)) !important;background:var(--ink) !important;color:#fff !important;font-size:15px !important;font-weight:800 !important;cursor:pointer}
.hbcm-submit:hover{background:var(--hb-ink-hover) !important}
@media (max-width:600px){
  .hbcm-form{grid-template-columns:minmax(0,1fr)}
  .hbcm-list .children{margin-right:14px}
  .hbcm-card{padding:18px 16px}
  .hbcm-item{margin-bottom:14px}
  .hbcm-wrap{margin-top:56px !important}
  .hbcm-submit{width:100%}
}

@media (max-width:1024px){
  .hbp-row .hbp-aside > .elementor-element,.hbp-row .hbp-aside > .e-con-inner > .elementor-element{position:static;align-self:stretch;width:100%}
  .hbp-side,.hbp-toc{width:100%}
  .hbp-sidecta{display:none}
}
@media (max-width:767px){
  .hbp-foot{margin-bottom:0}
        .hbp-authorbox{flex-direction:column;align-items:center;text-align:center}
  .hbp-endcta,.hbp-cta{text-align:center;justify-content:center}
  .hbp-endcta__actions{flex-direction:column;width:100%}
  .hbp-btn--gold,.hbp-cta__btn{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.hbp-toc summary::after{transition:none}}

/* ---------- article building blocks (write in the WordPress editor: Custom HTML / Code editor) ----------
   .hb-lead  intro paragraph · .hb-book  book card · .hb-tip  highlighted tip · .hb-steps  numbered steps */
.single-post .elementor-widget-theme-post-content .hb-lead{font-size:1.08em;line-height:2.15;color:var(--ink)}
.single-post .elementor-widget-theme-post-content .hb-book{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 24px;margin:28px 0;padding:22px;border:1px solid var(--line);border-radius:calc(20px * var(--hb-rs));background:#fff}
.single-post .elementor-widget-theme-post-content .hb-book{align-items:start}
.single-post .elementor-widget-theme-post-content .hb-book__cover{grid-column:1;grid-row:1 / span 3;margin:0}
.single-post .elementor-widget-theme-post-content .hb-book > h3,.single-post .elementor-widget-theme-post-content .hb-book > .hb-book__meta,.single-post .elementor-widget-theme-post-content .hb-book > p{grid-column:2}
.single-post .elementor-widget-theme-post-content .hb-book > p:empty,.single-post .elementor-widget-theme-post-content .hb-book > br{display:none}
.single-post .elementor-widget-theme-post-content .hb-book__cover img{display:block;width:150px;height:auto;aspect-ratio:1;object-fit:cover;border-radius:calc(14px * var(--hb-rs));box-shadow:0 14px 30px rgba(var(--hb-ink-rgb),.14)}
.single-post .elementor-widget-theme-post-content .hb-book h3{margin:0 0 6px !important;font-size:clamp(18px,1.6vw,21px);line-height:1.7}
.single-post .elementor-widget-theme-post-content .hb-book__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px !important;padding:0 !important;list-style:none}
.single-post .elementor-widget-theme-post-content .hb-book__meta li{margin:0 !important;padding:2px 11px !important;height:auto;border-radius:999px;background:var(--soft);font-size:12.5px;font-weight:700;line-height:1.9;color:var(--hb-gold-dark)}
.single-post .elementor-widget-theme-post-content .hb-book__meta li::marker{content:none}
.single-post .elementor-widget-theme-post-content .hb-book p{margin:0 0 .6em}
.single-post .elementor-widget-theme-post-content .hb-book .hb-audio{grid-column:1 / -1;margin:10px 0 0}
.single-post .elementor-widget-theme-post-content .hb-tip{margin:1.6em 0;padding:16px 20px;border-radius:calc(16px * var(--hb-rs));background:var(--ink);color:rgba(255,255,255,.85)}
.single-post .elementor-widget-theme-post-content .hb-tip strong{color:var(--gold)}
.single-post .elementor-widget-theme-post-content .hb-tip a{color:#fff !important;font-weight:800;box-shadow:inset 0 -2px 0 rgba(var(--hb-gold-rgb),.7);text-decoration:none !important}
@media (max-width:600px){
  .single-post .elementor-widget-theme-post-content .hb-book{grid-template-columns:minmax(0,1fr);padding:18px 16px;text-align:right}
  .single-post .elementor-widget-theme-post-content .hb-book__cover{grid-row:auto;justify-self:center}
  .single-post .elementor-widget-theme-post-content .hb-book > h3,.single-post .elementor-widget-theme-post-content .hb-book > .hb-book__meta,.single-post .elementor-widget-theme-post-content .hb-book > p{grid-column:1}
  .single-post .elementor-widget-theme-post-content .hb-book__cover img{width:140px}
}

/* ===== article blocks v2: download box, tongue twisters, exercise steps, figure ===== */
.hbp-cta{position:relative}
.hbp-cta__btn::after{content:"";position:absolute;inset:0;border-radius:inherit}
.hbp-cta:hover .hbp-cta__btn{background:var(--hb-ink-hover)}
.single-post .elementor-widget-theme-post-content .hb-dl,.single-post .elementor-widget-theme-post-content .hb-dl *{box-sizing:border-box}
.single-post .elementor-widget-theme-post-content .hb-dl{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin:1.6em 0;padding:20px 22px;border-radius:calc(20px * var(--hb-rs));background:var(--ink);color:#fff;scroll-margin-top:110px}
.single-post .elementor-widget-theme-post-content .hb-dl__body{flex:1 1 260px;min-width:0}
.single-post .elementor-widget-theme-post-content .hb-dl__title{display:block;font-size:17px;font-weight:900;line-height:1.7;color:#fff}
.single-post .elementor-widget-theme-post-content .hb-dl__sub{display:block;font-size:14px;line-height:1.9;color:rgba(255,255,255,.72)}
.single-post .elementor-widget-theme-post-content .hb-dl__btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 26px;border-radius:calc(14px * var(--hb-rs));background:var(--gold);color:var(--ink) !important;font-size:15.5px;font-weight:900;text-decoration:none !important;box-shadow:none !important;transition:transform .2s ease,background .2s ease}
.single-post .elementor-widget-theme-post-content .hb-dl__btn::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11m0 0-4.5-4.5M12 15l4.5-4.5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4v11m0 0-4.5-4.5M12 15l4.5-4.5M5 20h14'/%3E%3C/svg%3E") center/contain no-repeat}
.single-post .elementor-widget-theme-post-content .hb-dl__btn:hover{background:var(--hb-gold-hover);transform:translateY(-2px)}
.single-post .elementor-widget-theme-post-content .hb-dl__next{flex-basis:100%;margin:0;padding:12px 14px;border-radius:calc(12px * var(--hb-rs));background:rgba(255,255,255,.08);font-size:14.5px;line-height:1.9;color:rgba(255,255,255,.85)}
.single-post .elementor-widget-theme-post-content .hb-dl__next[hidden]{display:none}
.single-post .elementor-widget-theme-post-content .hb-dl__next strong{color:var(--gold)}
.single-post .elementor-widget-theme-post-content .hb-dl__next a{color:#fff !important;font-weight:800;box-shadow:inset 0 -2px 0 rgba(var(--hb-gold-rgb),.7);text-decoration:none !important}
.single-post .elementor-widget-theme-post-content .hb-tw{counter-reset:tw;display:grid;gap:8px;margin:1em 0 1.4em !important;padding:0 !important;list-style:none}
.single-post .elementor-widget-theme-post-content .hb-tw li{counter-increment:tw;position:relative;margin:0 !important;padding:12px 52px 12px 16px !important;border:1px solid var(--line);border-radius:calc(14px * var(--hb-rs));background:#fff;font-size:1.05em;font-weight:700;line-height:1.9;text-align:right !important}
.single-post .elementor-widget-theme-post-content .hb-tw li::before{content:counter(tw,persian);position:absolute;top:50%;right:12px;display:grid;place-items:center;width:28px;height:28px;margin-top:-14px;border-radius:50%;background:var(--soft);color:var(--hb-gold-dark);font-size:13px;font-weight:900}
.single-post .elementor-widget-theme-post-content .hb-ex{counter-reset:ex;margin:1em 0 1.4em !important;padding:0 !important;list-style:none}
.single-post .elementor-widget-theme-post-content .hb-ex li{counter-increment:ex;position:relative;margin:0 !important;padding:0 52px 22px 0 !important}
.single-post .elementor-widget-theme-post-content .hb-ex li::before{content:counter(ex,persian);position:absolute;top:0;right:0;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--gold);font-size:14px;font-weight:900}
.single-post .elementor-widget-theme-post-content .hb-ex li:not(:last-child)::after{content:"";position:absolute;top:40px;bottom:6px;right:16px;width:2px;border-radius:2px;background:var(--line)}
.single-post .elementor-widget-theme-post-content .hb-ex li > strong{font-size:1.05em;font-weight:900;line-height:34px}
.single-post .elementor-widget-theme-post-content .hb-ex__t{display:inline-block;margin-right:8px;padding:0 10px;border-radius:999px;background:var(--soft);color:var(--hb-gold-dark);font-size:12.5px;font-weight:800;line-height:1.9;vertical-align:middle}
.single-post .elementor-widget-theme-post-content .hb-ex li p{margin:2px 0 0 !important}
@media (max-width:600px){
  .single-post .elementor-widget-theme-post-content .hb-dl{padding:18px 16px;text-align:center}
  .single-post .elementor-widget-theme-post-content .hb-dl__btn{width:100%}
  .single-post .elementor-widget-theme-post-content .hb-dl__next{text-align:right}
  .single-post .elementor-widget-theme-post-content .hb-ex li{padding-right:46px !important}
}
/* figure: centered everywhere (also in the Elementor editor, where the post-content wrapper is absent) */
.hb-fig{display:block;max-width:480px !important;margin:1.8em auto !important;padding:0;text-align:center}
.hb-fig a{display:block;line-height:0}
.hb-fig img{display:block !important;width:100% !important;height:auto;margin:0 auto !important;border-radius:calc(16px * var(--hb-rs,1))}
.hb-fig figcaption{margin-top:10px;font-size:13px;line-height:1.8;color:#5a6b64;text-align:center !important}
