/* ===== WooCommerce notices + empty cart + 404 (inc/wc-pages.php) ===== */

/* ---------- notices (classic + block) ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.wc-block-components-notice-banner{
  --n-c:var(--hb-ink);--n-bg:#f3f6f4;--n-line:#d7e3dc;--n-ic:var(--hb-ink);
  position:relative;display:flex !important;align-items:center;flex-wrap:wrap;gap:10px 16px;
  margin:0 0 20px !important;padding:14px 18px 14px 18px !important;padding-inline-start:54px !important;
  list-style:none !important;border:1px solid var(--n-line) !important;border-radius:calc(14px * var(--hb-rs)) !important;
  background:var(--n-bg) !important;color:var(--n-c) !important;box-shadow:none !important;outline:0;
  font-family:"Dana",Tahoma,sans-serif !important;font-size:14.5px !important;font-weight:600;line-height:1.9 !important;text-align:right;direction:rtl}
.woocommerce-message{--n-bg:#eef6f0;--n-line:#cfe5d6;--n-ic:#2e8a52}
.woocommerce-info{--n-bg:#f8f5ec;--n-line:#ece2c6;--n-ic:var(--hb-gold-dark)}
.woocommerce-error{--n-bg:#fdf3f0;--n-line:#f0cfc4;--n-ic:#b4513a;--n-c:#7a2f1d;flex-direction:column;align-items:flex-start;gap:4px}
.wc-block-components-notice-banner.is-success{--n-bg:#eef6f0;--n-line:#cfe5d6;--n-ic:#2e8a52}
.wc-block-components-notice-banner.is-info,.wc-block-components-notice-banner.is-warning{--n-bg:#f8f5ec;--n-line:#ece2c6;--n-ic:var(--hb-gold-dark)}
.wc-block-components-notice-banner.is-error{--n-bg:#fdf3f0;--n-line:#f0cfc4;--n-ic:#b4513a;--n-c:#7a2f1d}
.woocommerce-error li{margin:0 !important;padding:0 !important;list-style:none !important}
/* icon (replaces WooCommerce's icon font) */
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{
  content:"" !important;position:absolute;top:50%;right:16px;left:auto;width:26px;height:26px;margin-top:-13px;border-radius:50%;
  background:var(--n-ic) var(--n-mask) center/15px no-repeat !important;color:transparent !important;font-size:0 !important;font-family:inherit !important}
.woocommerce-error::before{top:16px;margin-top:0}
.woocommerce-message{--n-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
.woocommerce-info{--n-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 11v6M12 7h.01'/%3E%3C/svg%3E")}
.woocommerce-error{--n-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/svg%3E")}
.wc-block-components-notice-banner > svg{position:absolute;top:50%;right:16px;width:26px !important;height:26px !important;margin-top:-13px;padding:4px;border-radius:50%;background:var(--n-ic) !important;fill:#fff !important}
.wc-block-components-notice-banner__content{flex:1;color:inherit !important;font:inherit !important}
/* links + buttons inside notices */
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button),.woocommerce-error a:not(.button),.wc-block-components-notice-banner a:not(.button){color:var(--n-c) !important;font-weight:800;text-decoration:underline !important;text-underline-offset:3px;text-decoration-color:rgba(var(--hb-gold-rgb),.8)}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button,.wc-block-components-notice-banner .button,.wc-block-components-notice-banner .wc-forward{
  order:2;float:none !important;margin:0 !important;margin-inline-start:auto !important;padding:8px 18px !important;border:0 !important;border-radius:calc(10px * var(--hb-rs)) !important;
  background:var(--hb-ink) !important;color:#fff !important;font:inherit !important;font-size:13.5px !important;font-weight:800 !important;line-height:1.7 !important;text-decoration:none !important;box-shadow:none !important;transition:background .2s ease}
.woocommerce-message .button:hover,.woocommerce-info .button:hover,.woocommerce-error .button:hover{background:var(--hb-ink-hover) !important}
.woocommerce-NoticeGroup,.woocommerce-notices-wrapper{font-family:"Dana",Tahoma,sans-serif}
.woocommerce-notices-wrapper:empty{display:none}
@media (max-width:600px){
  .woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{font-size:14px !important;padding:12px 14px !important;padding-inline-start:48px !important}
  .woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{right:12px;width:24px;height:24px;margin-top:-12px}
  .woocommerce-message .button,.woocommerce-info .button{width:100%;text-align:center;margin-inline-start:0 !important}
}

/* ---------- shared card ---------- */
.hbx{--ink:var(--hb-ink);--gold:var(--hb-gold);--muted:#5a6b64;--line:#e6ebe8;--cream:#f6f3ea;
  max-width:1280px;margin:0 auto;padding:clamp(40px,7vw,96px) 20px clamp(56px,8vw,112px);color:var(--ink);font-family:"Dana",Tahoma,sans-serif;text-align:center}
.hbx *{box-sizing:border-box;font-family:inherit}
.hbx svg{display:block;flex-shrink:0}
.hbx a{text-decoration:none !important}
.hbx a:focus-visible,.hbx button:focus-visible,.hbx input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.hbx-card{max-width:600px;margin:0 auto}
.hbx-badge{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 22px;border-radius:50%;background:var(--cream);color:var(--hb-gold-dark);box-shadow:0 0 0 10px rgba(var(--hb-gold-rgb),.08)}
.hbx-badge svg{width:36px;height:36px}
.hbx-title{margin:0;font-size:clamp(23px,2.6vw,32px);font-weight:900;line-height:1.6;color:var(--ink)}
.hbx-lead{max-width:480px;margin:10px auto 0;font-size:clamp(14.5px,1.2vw,16px);line-height:2.1;color:var(--muted)}
.hbx-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.hbx-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 26px;border-radius:calc(14px * var(--hb-rs));font-size:15.5px;font-weight:800;line-height:1.5;transition:background .2s ease,transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.hbx-btn svg{width:18px;height:18px}
.hbx-btn--gold{background:var(--gold);color:var(--ink) !important}
.hbx-btn--gold:hover{background:var(--hb-gold-hover);transform:translateY(-2px);box-shadow:0 12px 28px rgba(var(--hb-gold-rgb),.35)}
.hbx-btn--line{border:1.5px solid var(--line);background:#fff;color:var(--ink) !important}
.hbx-btn--line:hover{border-color:var(--gold)}

/* empty cart: suggested courses */
.hbx--cart .hbx-more{margin-top:clamp(48px,6vw,80px);padding-top:clamp(32px,4vw,48px);border-top:1px solid var(--line);text-align:right}
.hbx-more__t{margin:0 0 20px;font-size:clamp(18px,1.8vw,22px);font-weight:900;line-height:1.6;color:var(--ink)}
/* the Elementor cart widget: hide its breadcrumb gap when the cart is empty */
.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce{width:100%}

/* ---------- 404 ---------- */
.hbx-main{width:100%}
.hbx-card--404{max-width:640px}
.hbx-code{margin:0 0 6px;font-size:clamp(84px,14vw,148px);font-weight:900;line-height:1;letter-spacing:-.02em;
  background:linear-gradient(180deg,var(--gold),var(--hb-gold-dark));-webkit-background-clip:text;background-clip:text;color:transparent}
.hbx-search{display:flex;align-items:center;gap:8px;max-width:520px;margin:28px auto 0;padding:6px;border-radius:calc(16px * var(--hb-rs));background:#fff;border:1.5px solid var(--line);transition:border-color .2s ease,box-shadow .2s ease}
.hbx-search:focus-within{border-color:var(--gold);box-shadow:0 0 0 4px rgba(var(--hb-gold-rgb),.18)}
.hbx-search > svg{width:20px;height:20px;margin-inline-start:10px;color:#8a9a92}
.hbx-search input[type=search]{flex:1;min-width:0;height:46px;padding:0 !important;border:0 !important;background:transparent !important;box-shadow:none !important;outline:none;font-size:15px;color:var(--ink) !important}
.hbx-search button,.hbx-search button:hover,.hbx-search button:focus{height:46px;padding:0 20px;border:0;border-radius:calc(12px * var(--hb-rs));background:var(--ink);color:#fff;font-size:14.5px;font-weight:800;cursor:pointer}
.hbx-search button:hover{background:var(--hb-ink-hover)}
.hbx-links{list-style:none;margin:32px 0 0;padding:6px;border:1px solid var(--line);border-radius:calc(20px * var(--hb-rs));background:#fff;text-align:right}
.hbx-links li{margin:0}
.hbx-links li + li{border-top:1px solid var(--line)}
.hbx-links a{display:flex;align-items:center;gap:14px;padding:12px;border-radius:calc(14px * var(--hb-rs));color:var(--ink) !important;transition:background .2s ease}
.hbx-links a:hover{background:#f7f8f6}
.hbx-links a > svg{width:18px;height:18px;margin-inline-start:auto;color:#9aa79f;transition:transform .2s ease,color .2s ease}
.hbx-links a:hover > svg{transform:translateX(-3px);color:var(--hb-gold-dark)}
.hbx-links__ic{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:calc(12px * var(--hb-rs));background:var(--ink);color:var(--gold)}
.hbx-links__ic svg{width:21px;height:21px}
.hbx-links__t{display:flex;flex-direction:column;font-size:15px;line-height:1.7}
.hbx-links__t b{font-weight:800}
.hbx-links__t small{font-size:13px;color:var(--muted)}
.hbx-home{display:inline-flex;align-items:center;gap:8px;margin-top:24px;font-size:14.5px;font-weight:800;color:var(--hb-gold-dark) !important}
.hbx-home svg{width:18px;height:18px}
.hbx-home:hover{color:var(--ink) !important}
@media (max-width:600px){
  .hbx{padding:36px 16px 64px}
  .hbx-cta .hbx-btn{flex:1 1 100%}
  .hbx-search > svg{display:none}
  .hbx-search input[type=search]{padding-inline-start:12px !important}
}
@media (prefers-reduced-motion:reduce){.hbx *{transition:none !important}}
.hbx .screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
