/*! GyanBithy Fixes – site CSS (generated) */
/* ---- Bangla fonts (self-hosted, OFL licence) ---- */
@font-face{font-family:'Hind Siliguri';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/hind-siliguri-bengali-400-normal.woff2) format('woff2');unicode-range:U+0951-0952,U+0964-0965,U+0980-09FE,U+1CD0,U+1CD2,U+1CD5-1CD6,U+1CD8,U+1CE1,U+1CEA,U+1CED,U+1CF2,U+1CF5-1CF7,U+200C-200D,U+20B9,U+25CC,U+A8F1}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/hind-siliguri-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/hind-siliguri-bengali-600-normal.woff2) format('woff2');unicode-range:U+0951-0952,U+0964-0965,U+0980-09FE,U+1CD0,U+1CD2,U+1CD5-1CD6,U+1CD8,U+1CE1,U+1CEA,U+1CED,U+1CF2,U+1CF5-1CF7,U+200C-200D,U+20B9,U+25CC,U+A8F1}
@font-face{font-family:'Hind Siliguri';font-style:normal;font-display:swap;font-weight:600;src:url(fonts/hind-siliguri-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Anek Bangla';font-style:normal;font-display:swap;font-weight:700;src:url(fonts/anek-bangla-bengali-700-normal.woff2) format('woff2');unicode-range:U+0951-0952,U+0964-0965,U+0980-09FE,U+1CD0,U+1CD2,U+1CD5-1CD6,U+1CD8,U+1CE1,U+1CEA,U+1CED,U+1CF2,U+1CF5-1CF7,U+200C-200D,U+20B9,U+25CC,U+A8F1}
@font-face{font-family:'Anek Bangla';font-style:normal;font-display:swap;font-weight:700;src:url(fonts/anek-bangla-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---- 1) Brand colours: replace Astra's default blue with GyanBithy green ---- */
:root,
html:root,
html body {
  --ast-global-color-0: #075b3a;
  --ast-global-color-1: #054a2f;
  --gb-green: #075b3a;
  --gb-green-dark: #054a2f;
  --gb-gold: #c89b3c;
  --gb-bn-body: 'Hind Siliguri', 'Noto Sans Bengali', 'Nirmala UI', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --gb-bn-head: 'Anek Bangla', 'Hind Siliguri', 'Noto Sans Bengali', 'Nirmala UI', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

/* ---- 2) One Bangla font everywhere ---- */
body,
button,
input,
select,
textarea,
.woocommerce,
.woocommerce-page {
  font-family: var(--gb-bn-body);
}
h1, h2, h3,
.entry-title,
.page-title,
.product_title,
.woocommerce-loop-product__title,
.site-title,
.site-title a {
  font-family: var(--gb-bn-head);
}

/* ---- 3) Buttons: same shape everywhere ---- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .wc-buy-now-btn,
.single_add_to_cart_button,
.wc-buy-now-btn {
  border-radius: 8px;
}

/* ---- 4) Shop / archive pages ---- */
.woocommerce-shop #primary,
.post-type-archive-product #primary,
.tax-product_cat #primary {
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}
.woocommerce-shop .ast-archive-description,
.post-type-archive-product .ast-archive-description,
.tax-product_cat .ast-archive-description {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.woocommerce ul.products {
  margin: 0 0 1em !important;
  padding: 0 !important;
}
@media (max-width: 544px) {
  .woocommerce ul.products[class*="columns-"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 14px;
  }
  .woocommerce .woocommerce-result-count {
    float: none;
    margin: 0 0 10px;
  }
  .woocommerce .woocommerce-ordering {
    float: none;
    width: 100%;
    margin: 0 0 20px;
  }
  .woocommerce .woocommerce-ordering select {
    width: 100%;
  }
}
.woocommerce ul.products li.product .button {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin: 0 0 8px;
  padding: 11px 10px;
  line-height: 1.3;
  text-align: center;
}
/* no empty stars while a book has 0 reviews */
.woocommerce ul.products li.product .star-rating.empty {
  display: none;
}

/* ---- 5) Cart / checkout / account: breathing room under the header ---- */
.woocommerce-cart #primary,
.woocommerce-checkout #primary,
.woocommerce-account #primary {
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 24px 20px 48px !important;
  box-sizing: border-box !important;
}
/* Full Name was half width because "Last name" was removed */
.woocommerce-checkout #billing_first_name_field {
  width: 100% !important;
  float: none !important;
}

/* ---- 6) Home page ---- */
/* custom HTML block: full width and the same 1200px container as the rest */
.elementor-element-gbmaincontent1 {
  width: 100% !important;
  max-width: 100% !important;
}
.gb-winners .gb-inner,
.gb-reader-benefits .gb-inner,
.gb-combos .gb-inner {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* leftover developer note under the combo packages */
.gb-combos .gb-note {
  display: none !important;
}
/* reader-comments block (placeholder-looking text): remove this rule to show it again */
#gb-reader-benefits {
  display: none !important;
}
/* buttons on the home page: no underline */
.elementor-331 a,
.gb-winners a,
.gb-combos a {
  text-decoration: none !important;
}
/* tighter vertical rhythm (was 96px top and bottom) */
.elementor-331 > .e-con {
  padding-top: 64px !important;
  padding-bottom: 64px !important;
}
/* the custom HTML wrapper has its own section padding: keep it full-bleed */
.elementor-331 > .elementor-element-gbmainsection1 {
  padding: 0 !important;
}
/* "Why read these books": icon column was as wide as the text column */
.elementor-element-container_m2vzpd3t9 > .e-grid-base > .e-con > .e-con:first-child {
  flex: 0 0 auto !important;
  width: auto !important;
}
.elementor-element-container_m2vzpd3t9 > .e-grid-base > .e-con > .e-con:last-child {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0;
}
@media (max-width: 767px) {
  .elementor-331 > .e-con {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .elementor-331 > .elementor-element-gbmainsection1 {
    padding: 0 !important;
  }
  .gb-winners,
  .gb-combos {
    padding: 32px 16px !important;
  }
  /* four "Why GyanBithy" cards: 2 x 2 instead of one long column */
  .elementor-element-container_t4mr1o68z {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .elementor-element-container_t4mr1o68z > .e-con {
    padding: 20px 12px !important;
  }
}

/* ---- 7) Product page delivery note + footer policy bar (added by the plugin) ---- */
.gb-delivery-note {
  margin: 16px 0;
  padding: 12px 14px;
  background: #f6faf7;
  border-left: 4px solid var(--gb-green);
  border-radius: 6px;
  font-size: 15px;
  line-height: 1.6;
}
.gb-delivery-note a {
  color: var(--gb-green);
  font-weight: 600;
  text-decoration: underline;
}
.gb-footer-bar {
  padding: 14px 16px;
  background: #f8f5ee;
  border-top: 1px solid #e6dfcf;
  text-align: center;
  font-size: 14px;
  line-height: 1.8;
}
.gb-footer-bar a {
  display: inline-block;
  margin: 0 8px;
  color: var(--gb-green-dark);
  text-decoration: none;
}
.gb-footer-bar a:hover {
  text-decoration: underline;
}

/* ---- 8) Brand green on buttons and links (Astra's inline blue wins over the variable) ---- */
button:not(.menu-toggle), .ast-button, .ast-custom-button, .button, input#submit,
input[type="button"], input[type="submit"], input[type="reset"],
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .single_add_to_cart_button, .wc-buy-now-btn {
  background-color: #075b3a !important;
  border-color: #075b3a !important;
  color: #fff !important;
}
button:not(.menu-toggle):hover, .ast-button:hover, .button:hover, input#submit:hover,
input[type="submit"]:hover, .woocommerce a.button:hover, .woocommerce button.button:hover,
.single_add_to_cart_button:hover, .wc-buy-now-btn:hover {
  background-color: #054a2f !important;
  border-color: #054a2f !important;
}
.menu-toggle,
button.menu-toggle,
.ast-mobile-menu-buttons .menu-toggle {
  background-color: transparent !important;
  color: #075b3a !important;
  border-color: transparent !important;
}
a { color: #075b3a; }
a:hover { color: #054a2f; }
.woocommerce-info { border-top-color: #075b3a !important; }
.woocommerce-info::before { color: #075b3a !important; }

/* ---- 9) Stray fonts (Anek Devanagari, Roboto, Noto Serif, system) -> brand Bangla fonts ---- */
.elementor :where(p, li, a, span, strong, em, td, th, label, div, input, textarea, select, button):not([class*="icon"]):not([class*="fa-"]):not(.fas):not(.far):not(.fab):not(.eicon),
.elementor-widget-text-editor, .elementor-widget-text-editor * ,
.elementor-icon-list-text, .elementor-button-text, .elementor-heading-title {
  font-family: var(--gb-bn-body) !important;
}
.elementor h1, .elementor h2, .elementor h3,
.elementor h1.elementor-heading-title, .elementor h2.elementor-heading-title, .elementor h3.elementor-heading-title {
  font-family: var(--gb-bn-head) !important;
}
.elementor h4, .elementor h5, .elementor h6 { font-family: var(--gb-bn-body) !important; }
/* A long paragraph was built as a 30px heading with a glow: show it as normal reading text */
.elementor .elementor-element-0f532a9 h2.elementor-heading-title,
.elementor .elementor-element-0f532a9 .elementor-heading-title {
  font-family: var(--gb-bn-body) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
  color: #334155 !important;
  text-shadow: none !important;
}
@media (max-width: 767px) {
  .elementor .elementor-element-0f532a9 h2.elementor-heading-title { font-size: 16.5px !important; }
}

/* ---- 10) Combo landing page (.gbl) ---- */
body:has(.gbl) { overflow-x: clip; }
body:has(.gbl) .entry-header, body:has(.gbl) .ast-breadcrumbs-wrapper { display: none !important; }
body:has(.gbl) #primary, body:has(.gbl) .site-content .ast-container { padding: 0 !important; margin: 0 !important; max-width: none !important; width: 100% !important; display: block; }
body:has(.gbl) .entry-content, body:has(.gbl) article.page { margin: 0 !important; padding: 0 !important; }
.gbl { --g: #075b3a; --gd: #054a2f; --gold: #c89b3c; --cream: #f8f5ee; --ink: #1e293b; width: 100vw; margin-left: calc(50% - 50vw); color: var(--ink); font-family: var(--gb-bn-body); font-size: 17px; line-height: 1.7; }
.gbl * { box-sizing: border-box; }
.gbl h1, .gbl h2, .gbl h3 { font-family: var(--gb-bn-head) !important; margin: 0; line-height: 1.3; }
.gbl p { margin: 0 0 12px; }
.gbl a { text-decoration: none !important; }
.gbl-wrap { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 20px; }
.gbl-btn { display: inline-block; padding: 13px 24px; border-radius: 8px; font-weight: 600; font-size: 16px; line-height: 1.3; text-align: center; border: 2px solid transparent; cursor: pointer; }
.gbl .gbl-btn-wa { background: var(--g) !important; color: #fff !important; border-color: var(--g) !important; }
.gbl .gbl-btn-wa:hover { background: var(--gd) !important; border-color: var(--gd) !important; }
.gbl .gbl-btn-gold { background: var(--gold) !important; color: #1b1b1b !important; border-color: var(--gold) !important; }
.gbl .gbl-btn-gold:hover { background: #b88a2e !important; border-color: #b88a2e !important; }
.gbl .gbl-btn-ghost { background: transparent !important; color: var(--g) !important; border-color: var(--g) !important; }
.gbl .gbl-btn-ghost:hover { background: #eef5f1 !important; }
.gbl .gbl-btn-ghost-light { background: transparent !important; color: #fff !important; border-color: rgba(255,255,255,.7) !important; }
.gbl .gbl-btn-ghost-light:hover { background: rgba(255,255,255,.12) !important; }
.gbl-cta { display: flex; flex-wrap: wrap; gap: 12px; }
/* hero */
.gbl-hero { background: linear-gradient(135deg, #054a2f 0%, #075b3a 60%, #0a6b45 100%); color: #fff; padding: 64px 0; }
.gbl-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items: center; }
.gbl-eyebrow { color: var(--gold); font-weight: 600; letter-spacing: .02em; margin-bottom: 10px !important; }
.gbl-hero h1 { color: #fff !important; font-size: clamp(28px, 4.2vw, 46px); margin-bottom: 16px; }
.gbl-lead { font-size: 18px; color: #e3efe9; max-width: 560px; }
.gbl-chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 24px; }
.gbl-chips span { background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.3); padding: 6px 14px; border-radius: 999px; font-weight: 600; }
.gbl-hero-books { position: relative; height: 340px; }
.gbl-hero-books img { position: absolute; width: 210px; height: auto; border-radius: 10px; box-shadow: 0 12px 30px rgba(0,0,0,.35); background: #fff; }
.gbl-hero-books img:nth-child(1) { left: 0; top: 40px; transform: rotate(-6deg); }
.gbl-hero-books img:nth-child(2) { left: 28%; top: 0; z-index: 2; width: 230px; }
.gbl-hero-books img:nth-child(3) { right: 0; top: 56px; transform: rotate(6deg); }
/* trust strip */
.gbl-strip { background: var(--cream); border-bottom: 1px solid #e6dfcf; }
.gbl-strip ul { list-style: none; margin: 0; padding: 14px 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 32px; font-size: 15px; }
.gbl-strip li { margin: 0; padding: 0; }
.gbl-strip li::marker { content: ""; }
/* sections */
.gbl-sec { padding: 56px 0; }
.gbl-sec-alt { background: var(--cream); }
.gbl-sec h2, .gbl-final h2 { font-size: clamp(24px, 3.2vw, 34px); text-align: center; color: var(--g); margin-bottom: 8px; }
.gbl-sub { text-align: center; color: #475569; margin-bottom: 32px !important; }
/* packages */
.gbl-pkgs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; max-width: 880px; margin: 0 auto; }
.gbl-pkg { position: relative; background: #fff; border: 2px solid #dfe8e3; border-radius: 16px; padding: 28px 24px; text-align: center; box-shadow: 0 6px 20px rgba(7,91,58,.07); display: flex; flex-direction: column; }
.gbl-pkg-best { border-color: var(--gold); }
.gbl-pkg-badge { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); background: var(--gold); color: #1b1b1b; font-weight: 700; font-size: 14px; padding: 3px 16px; border-radius: 999px; white-space: nowrap; }
.gbl-pkg-name { font-family: var(--gb-bn-head); font-size: 22px; color: var(--g); margin-bottom: 2px !important; }
.gbl-pkg-count { font-weight: 600; margin-bottom: 10px !important; }
.gbl-pkg-old { color: #64748b; margin-bottom: 0 !important; }
.gbl-pkg-price { font-family: var(--gb-bn-head); font-size: 46px; line-height: 1.2; color: var(--g); margin-bottom: 2px !important; }
.gbl-pkg-save { display: inline-block; align-self: center; background: #e8f3ed; color: var(--gd); font-weight: 600; padding: 2px 14px; border-radius: 999px; margin-bottom: 16px !important; font-size: 15px; }
.gbl-pkg-list { list-style: none !important; margin: 0 0 20px !important; padding: 0 !important; text-align: left; font-size: 16px; flex: 1; }
.gbl-pkg-list li { padding: 6px 0 6px 26px; position: relative; margin: 0; border-bottom: 1px dashed #e5ebe8; }
.gbl-pkg-list li::before { content: "✓"; position: absolute; left: 0; color: var(--g); font-weight: 700; }
.gbl-pkg .gbl-btn { display: block; width: 100%; margin-top: 10px; }
/* gifts */
.gbl-gifts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; max-width: 880px; margin: 0 auto; }
.gbl-gift { background: #fff; border: 1px solid #e6dfcf; border-radius: 12px; padding: 22px 16px; text-align: center; }
.gbl-gift-n { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border-radius: 50%; background: var(--gold); color: #1b1b1b; font-weight: 700; margin-bottom: 8px; }
.gbl-gift h3 { font-size: 19px; color: var(--g); }
.gbl-gift p { font-size: 15px; color: #475569; margin: 6px 0 0; }
/* books */
.gbl-books { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.gbl .gbl-book { display: flex; flex-direction: column; color: var(--ink) !important; background: #fff; border: 1px solid #e7ece9; border-radius: 12px; overflow: hidden; }
.gbl-b-img { position: relative; display: block; background: #f3f3f0; }
.gbl-b-img img { display: block; width: 100%; height: auto; }
.gbl-b-oos { position: absolute; left: 10px; top: 10px; background: #64748b; color: #fff; font-size: 13px; padding: 2px 10px; border-radius: 999px; }
.gbl-b-title { padding: 12px 14px 4px; font-weight: 600; line-height: 1.45; font-size: 16px; }
.gbl-b-pr { padding: 0 14px 14px; color: var(--g); font-weight: 700; margin-top: auto; }
.gbl-b-pr s { color: #94a3b8; font-weight: 400; margin-left: 8px; }
/* steps */
.gbl-steps { list-style: none !important; margin: 24px auto 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; max-width: 920px; counter-reset: s; }
.gbl-steps li { background: #fff; border-radius: 12px; padding: 22px 18px; border: 1px solid #e6dfcf; counter-increment: s; margin: 0; }
.gbl-steps li::before { content: counter(s, bengali); display: flex; width: 36px; height: 36px; align-items: center; justify-content: center; border-radius: 50%; background: var(--g); color: #fff; font-weight: 700; margin-bottom: 10px; }
.gbl-steps strong { display: block; font-size: 18px; color: var(--g); margin-bottom: 4px; }
.gbl-steps span { font-size: 15.5px; color: #475569; }
/* faq */
.gbl-narrow { max-width: 760px; }
.gbl details { background: #fff; border: 1px solid #e3e8e5; border-radius: 10px; margin: 10px 0; padding: 0 16px; }
.gbl summary { cursor: pointer; font-weight: 600; padding: 14px 0; color: var(--g); }
.gbl details p { color: #475569; padding-bottom: 6px; }
/* final */
.gbl-final { background: var(--g); color: #fff; text-align: center; padding: 56px 0; }
.gbl-final h2 { color: #fff !important; }
.gbl-final p { color: #e3efe9; }
.gbl-final .gbl-cta { justify-content: center; margin-top: 18px; }
.gbl-sticky { display: none; }
@media (max-width: 900px) {
  .gbl-hero-grid { grid-template-columns: 1fr; gap: 24px; }
  .gbl-hero-books { height: 260px; max-width: 420px; margin: 0 auto; width: 100%; }
  .gbl-hero-books img { width: 150px; }
  .gbl-hero-books img:nth-child(2) { width: 170px; left: 30%; }
}
@media (max-width: 700px) {
  .gbl { font-size: 16px; }
  .gbl-hero { padding: 40px 0; }
  .gbl-sec { padding: 40px 0; }
  .gbl-pkgs, .gbl-gifts, .gbl-steps { grid-template-columns: 1fr; }
  .gbl-books { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .gbl-b-title { font-size: 14.5px; padding: 10px 10px 4px; }
  .gbl-b-pr { padding: 0 10px 12px; }
  .gbl-cta .gbl-btn { width: 100%; }
  .gbl-pkg-price { font-size: 40px; }
  .gbl-sticky { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; padding: 10px 16px; background: rgba(255,255,255,.96); border-top: 1px solid #e3e8e5; }
  .gbl-sticky .gbl-btn { display: block; width: 100%; }
  body:has(.gbl) .gb-footer-bar { padding-bottom: 76px; }
}


/* ---- 11) Homepage winners + combo offer: desktop and mobile layout ---- */
/* Winners: keep the three heading elements above the grid, never in a side column. */
.elementor-331 .gb-winners-section {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden;
}
.elementor-331 .gb-winners-section > .gb-winner-eyebrow,
.elementor-331 .gb-winners-section > .gb-winner-title,
.elementor-331 .gb-winners-section > .gb-winner-intro {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 900px !important;
  align-self: center !important;
  text-align: center !important;
}
.elementor-331 .gb-winners-section > .gb-winner-eyebrow { margin: 0 auto 8px !important; }
.elementor-331 .gb-winners-section > .gb-winner-title { margin: 0 auto 10px !important; }
.elementor-331 .gb-winners-section > .gb-winner-intro { margin: 0 auto 28px !important; }
.elementor-331 .gb-winners-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.elementor-331 .gb-winner-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  height: 100% !important;
  box-sizing: border-box !important;
}

/* Combo offer: section heading first, both package cards next, CTA last. */
.elementor-331 .elementor-element-container_ngrsa7am0 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 24px !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: 52px 24px !important;
  background: #f8f8f6 !important;
}
.elementor-331 .elementor-element-container_10qavtrvp {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  text-align: center !important;
}
.elementor-331 .elementor-element-container_10qavtrvp > * {
  width: 100% !important;
  max-width: 900px !important;
  text-align: center !important;
  margin-inline: auto !important;
}
.elementor-331 .elementor-element-container_qyoy3c0wf {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 22px !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
}
.elementor-331 .elementor-element-container_boookb4d7,
.elementor-331 .elementor-element-container_v50z4q31b {
  min-width: 0 !important;
  width: 100% !important;
  height: 100% !important;
  box-sizing: border-box !important;
  border: 1px solid #f8f8f6 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(7, 91, 58, .07) !important;
}
.elementor-331 .gb-package-books-grid {
  display: grid !important;
  align-items: start !important;
  gap: 12px !important;
  width: 100% !important;
}
.elementor-331 .elementor-element-gbc1grid.gb-package-books-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}
.elementor-331 .elementor-element-gbc2grid.gb-package-books-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.elementor-331 .gb-package-book-card {
  min-width: 0 !important;
  text-align: center !important;
}
.elementor-331 .gb-package-book-image {
  display: block !important;
  width: 100% !important;
  height: 170px !important;
  object-fit: contain !important;
  object-position: center bottom !important;
}
.elementor-331 .gb-package-order-button,
.elementor-331 .gb-package-order-button:hover {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
  background: #075b3a !important;
  border-color: #075b3a !important;
  color: #fff !important;
  border-radius: 8px !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1199px) {
  .elementor-331 .gb-winners-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .elementor-331 .elementor-element-container_qyoy3c0wf { gap: 16px !important; }
  .elementor-331 .gb-package-book-image { height: 145px !important; }
}
/* Mobile */
@media (max-width: 767px) {
  .elementor-331 .gb-winners-section { padding: 38px 16px !important; }
  .elementor-331 .gb-winners-section > .gb-winner-intro { margin-bottom: 20px !important; }
  .elementor-331 .gb-winners-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
  .elementor-331 .gb-winner-card { padding: 14px !important; border-radius: 10px !important; }
  .elementor-331 .elementor-element-container_ngrsa7am0 { padding: 36px 14px !important; gap: 18px !important; }
  .elementor-331 .elementor-element-container_qyoy3c0wf { grid-template-columns: minmax(0, 1fr) !important; gap: 16px !important; padding: 0 !important; }
  .elementor-331 .elementor-element-container_boookb4d7,
  .elementor-331 .elementor-element-container_v50z4q31b { padding: 16px !important; }
  .elementor-331 .elementor-element-gbc1grid.gb-package-books-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 8px !important; }
  .elementor-331 .elementor-element-gbc2grid.gb-package-books-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 8px !important; }
  .elementor-331 .gb-package-book-image { height: 135px !important; }
}
/* Narrow phones: keep winner names and locations readable. */
@media (max-width: 420px) {
  .elementor-331 .gb-winners-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .elementor-331 .gb-winner-card { padding: 14px 16px !important; }
  .elementor-331 .gb-package-book-image { height: 118px !important; }
}


/* ---- 12) Combo cards: stack gallery above copy; show the individual books ---- */
.elementor-331 .elementor-element-container_boookb4d7,
.elementor-331 .elementor-element-container_v50z4q31b {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 18px !important;
  overflow: hidden !important;
}
.elementor-331 .elementor-element-container_s6shz87bq,
.elementor-331 .elementor-element-container_dxabhpzad {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  align-self: stretch !important;
  overflow: visible !important;
}
.elementor-331 .elementor-element-container_s6shz87bq > .e-con,
.elementor-331 .elementor-element-container_dxabhpzad > .e-con {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}
.elementor-331 .elementor-element-container_yjtgp02qe,
.elementor-331 .elementor-element-container_qk8l0yi61 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
.elementor-331 .elementor-element-gbc1grid.gb-package-books-grid,
.elementor-331 .elementor-element-gbc2grid.gb-package-books-grid {
  position: relative !important;
  display: grid !important;
  align-items: start !important;
  justify-items: stretch !important;
  grid-auto-flow: row !important;
  grid-auto-rows: minmax(0, auto) !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
}
.elementor-331 .gb-package-book-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
.elementor-331 .gb-package-book-image {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
}
.elementor-331 .gb-package-book-title {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 2px !important;
  line-height: 1.45 !important;
  text-align: center !important;
  overflow-wrap: anywhere !important;
}
.elementor-331 .elementor-element-container_v50z4q31b .elementor-element-widget_yqic026h1,
.elementor-331 .elementor-element-container_v50z4q31b .e-widget_yqic026h1,
.elementor-331 .elementor-element-container_v50z4q31b img[data-id="widget_yqic026h1"] {
  display: none !important;
}
.elementor-331 .elementor-element-container_v50z4q31b .elementor-element-gbc2grid,
.elementor-331 .elementor-element-container_v50z4q31b .gb-package-books-grid {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
}
@media (min-width: 768px) {
  .elementor-331 .elementor-element-gbc1grid.gb-package-books-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .elementor-331 .elementor-element-gbc2grid.gb-package-books-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  .elementor-331 .elementor-element-container_boookb4d7,
  .elementor-331 .elementor-element-container_v50z4q31b {
    gap: 14px !important;
  }
  .elementor-331 .gb-package-book-image {
    height: 125px !important;
    min-height: 125px !important;
    max-height: 125px !important;
  }
}

/* ---- 13) Two clear actions on each combo card ---- */
.elementor-331 .gb-package-details-button,
.elementor-331 .gb-package-details-button .elementor-button,
.elementor-331 .gb-package-details-button a {
  display: flex !important;
  width: 100% !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  border: 1px solid #075b3a !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #075b3a !important;
  text-align: center !important;
  font-weight: 700 !important;
}
.elementor-331 .gb-package-order-button,
.elementor-331 .gb-package-order-button .elementor-button,
.elementor-331 .gb-package-order-button a {
  min-height: 44px !important;
}
.elementor-331 .gb-package-details-button,
.elementor-331 .gb-package-order-button {
  margin-top: 8px !important;
}


/* ---- 14) GyanBithy WooCommerce thank-you page ---- */
body.page-id-191.woocommerce-order-received {
  background: #f6f8f5 !important;
}
body.page-id-191.woocommerce-order-received .site-content,
body.page-id-191.woocommerce-order-received #primary,
body.page-id-191.woocommerce-order-received article.page {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
}
body.page-id-191.woocommerce-order-received .entry-content {
  padding: 34px 20px 56px !important;
}
.elementor-191 .gb-thankyou-heading-wrap {
  width: calc(100% - 32px) !important;
  max-width: 980px !important;
  margin: 0 auto 18px !important;
  padding: 38px 28px 22px !important;
  background: #fff !important;
  border: 1px solid #e6ece7 !important;
  border-top: 4px solid #c89b3c !important;
  border-radius: 16px 16px 12px 12px !important;
  box-shadow: 0 8px 28px rgba(20, 50, 35, .06) !important;
  text-align: center !important;
}
.elementor-191 .gb-thankyou-title .elementor-heading-title {
  color: #075b3a !important;
  font-family: var(--gb-bn-head) !important;
  font-size: clamp(30px, 4vw, 42px) !important;
  line-height: 1.25 !important;
  margin: 0 0 8px !important;
}
.elementor-191 .gb-thankyou-success .elementor-heading-title {
  color: #263b30 !important;
  font-family: var(--gb-bn-head) !important;
  font-size: clamp(18px, 2.2vw, 23px) !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}
.elementor-191 .gb-thankyou-intro .elementor-heading-title {
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #52645a !important;
  font-family: var(--gb-bn-body) !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
}
.elementor-191 .gb-thankyou-channel-wrap {
  width: 100% !important;
  max-width: 980px !important;
  margin: 0 auto 26px !important;
  padding: 0 20px !important;
  text-align: center !important;
}
.elementor-191 .gb-thankyou-channel-button .elementor-button {
  display: inline-flex !important;
  min-height: 54px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 28px !important;
  border: 1px solid #075b3a !important;
  border-radius: 9px !important;
  background: #075b3a !important;
  color: #fff !important;
  box-shadow: 0 5px 14px rgba(7, 91, 58, .16) !important;
  font-family: var(--gb-bn-body) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background .2s ease, transform .2s ease !important;
}
.elementor-191 .gb-thankyou-channel-button .elementor-button:hover {
  background: #054a2f !important;
  border-color: #054a2f !important;
  transform: translateY(-1px);
}
.elementor-191 .gb-thankyou-channel-button .elementor-button-icon {
  margin-right: 9px !important;
}
.elementor-191 .elementor-widget-woocommerce-purchase-summary {
  width: calc(100% - 32px) !important;
  max-width: 980px !important;
  margin: 0 auto 28px !important;
  padding: 24px !important;
  background: #fff !important;
  border: 1px solid #e2e9e3 !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px rgba(20, 50, 35, .045) !important;
  box-sizing: border-box !important;
}
.elementor-191 .elementor-widget-woocommerce-purchase-summary h2,
.elementor-191 .elementor-widget-woocommerce-purchase-summary h3 {
  color: #075b3a !important;
  font-family: var(--gb-bn-head) !important;
}
.elementor-191 .elementor-widget-woocommerce-purchase-summary table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.elementor-191 .elementor-widget-woocommerce-purchase-summary th,
.elementor-191 .elementor-widget-woocommerce-purchase-summary td {
  padding: 13px 12px !important;
  border-color: #e7ece8 !important;
  line-height: 1.65 !important;
}
.elementor-191 .elementor-widget-woocommerce-purchase-summary a {
  color: #075b3a !important;
}
@media (max-width: 767px) {
  body.page-id-191.woocommerce-order-received .entry-content {
    padding: 22px 10px 36px !important;
  }
  .elementor-191 .gb-thankyou-heading-wrap {
    width: 100% !important;
    margin-bottom: 14px !important;
    padding: 28px 16px 18px !important;
    border-radius: 12px !important;
  }
  .elementor-191 .gb-thankyou-title .elementor-heading-title {
    font-size: 31px !important;
  }
  .elementor-191 .gb-thankyou-success .elementor-heading-title {
    font-size: 19px !important;
  }
  .elementor-191 .gb-thankyou-intro .elementor-heading-title {
    font-size: 15.5px !important;
    line-height: 1.75 !important;
  }
  .elementor-191 .gb-thankyou-channel-wrap {
    margin-bottom: 18px !important;
    padding: 0 8px !important;
  }
  .elementor-191 .gb-thankyou-channel-button,
  .elementor-191 .gb-thankyou-channel-button .elementor-button {
    width: 100% !important;
  }
  .elementor-191 .gb-thankyou-channel-button .elementor-button {
    min-height: 50px !important;
    padding: 12px 14px !important;
    font-size: 16px !important;
  }
  .elementor-191 .elementor-widget-woocommerce-purchase-summary {
    width: 100% !important;
    padding: 16px 12px !important;
    margin-bottom: 18px !important;
    border-radius: 10px !important;
  }
  .elementor-191 .elementor-widget-woocommerce-purchase-summary th,
  .elementor-191 .elementor-widget-woocommerce-purchase-summary td {
    padding: 10px 7px !important;
    font-size: 14px !important;
    overflow-wrap: anywhere !important;
  }
}


/* ---- 15) Homepage hero: library artwork ---- */
.elementor-331 .gb-hero-library-wrap {
  flex: 0 0 45% !important;
  width: 45% !important;
  max-width: 430px !important;
  height: auto !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  margin-inline: auto !important;
}
.elementor-331 .gb-hero-library-image,
.elementor-331 .gb-hero-library-image img {
  display: block !important;
  width: 100% !important;
  max-width: 385px !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  position: relative !important;
  inset: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 10px !important;
  border: 1px solid rgba(200,155,60,.35) !important;
  box-shadow: 0 14px 34px rgba(36,48,41,.12) !important;
  transform: none !important;
}

/* ---- 16) Library showcase: reuse the three original hero book images ---- */
.elementor-331 .gb-library-showcase-section {
  width: 100% !important;
  padding: 64px 24px 72px !important;
  background: #fffdf8 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.elementor-331 .gb-library-showcase-inner {
  width: 100% !important;
  max-width: 1160px !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
}
.elementor-331 .gb-library-showcase-title .elementor-heading-title {
  margin: 0 !important;
  color: #075b3a !important;
  font-family: var(--gb-bn-head) !important;
  font-size: clamp(26px, 3vw, 36px) !important;
  font-weight: 700 !important;
  text-align: center !important;
  line-height: 1.35 !important;
}
.elementor-331 .gb-library-showcase-subtitle {
  max-width: 720px !important;
  margin: 0 auto !important;
  color: #66736b !important;
  font-family: var(--gb-bn-body) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  text-align: center !important;
}
.elementor-331 .gb-library-gallery {
  position: relative !important;
  width: 100% !important;
  max-width: 1080px !important;
  height: 430px !important;
  margin: 22px auto 0 !important;
  display: block !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-1,
.elementor-331 .gb-library-gallery > .gb-library-image-2,
.elementor-331 .gb-library-gallery > .gb-library-image-3 {
  position: absolute !important;
  display: block !important;
  width: 32% !important;
  height: 350px !important;
  padding: 12px !important;
  background: #fff !important;
  border: 1px solid #e8e0d1 !important;
  border-radius: 12px !important;
  box-shadow: 0 14px 32px rgba(36,48,41,.10) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-1 {
  left: 2% !important;
  top: 54px !important;
  z-index: 1 !important;
  transform: rotate(-4deg) !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-2 {
  left: 34% !important;
  top: 0 !important;
  z-index: 2 !important;
  transform: rotate(2deg) !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-3 {
  right: 2% !important;
  top: 78px !important;
  z-index: 3 !important;
  transform: rotate(4deg) !important;
}
.elementor-331 .gb-library-gallery .gb-library-image-1 img,
.elementor-331 .gb-library-gallery .gb-library-image-2 img,
.elementor-331 .gb-library-gallery .gb-library-image-3 img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  position: relative !important;
  inset: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 6px !important;
  background: #faf9f5 !important;
}
@media (max-width: 767px) {
  .elementor-331 .gb-hero-library-wrap {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 0 auto !important;
  }
  .elementor-331 .gb-hero-library-image img {
    width: 100% !important;
    max-width: 385px !important;
    height: auto !important;
  }
  .elementor-331 .gb-library-showcase-section {
    padding: 42px 16px 48px !important;
  }
  .elementor-331 .gb-library-gallery {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    height: auto !important;
    margin-top: 20px !important;
    padding: 8px 0 !important;
  }
  .elementor-331 .gb-library-gallery > .gb-library-image-1,
  .elementor-331 .gb-library-gallery > .gb-library-image-2,
  .elementor-331 .gb-library-gallery > .gb-library-image-3 {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 210px !important;
    padding: 8px !important;
    transform: none !important;
  }
  .elementor-331 .gb-library-gallery > .gb-library-image-3 {
    grid-column: 1 / -1 !important;
    width: min(70%, 260px) !important;
    justify-self: center !important;
  }
}
@media (max-width: 420px) {
  .elementor-331 .gb-library-gallery > .gb-library-image-1,
  .elementor-331 .gb-library-gallery > .gb-library-image-2,
  .elementor-331 .gb-library-gallery > .gb-library-image-3 {
    height: 175px !important;
    padding: 6px !important;
  }
}


/* ---- 17) Fix lazy-loaded hero artwork and tighten the book composition ---- */
.elementor-331 .gb-hero-library-wrap {
  min-height: 465px !important;
  background-image: url("https://gyanbithy.com/wp-content/uploads/2026/11/gyanbithy-library-showcase.webp") !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
}
.elementor-331 .gb-hero-library-image {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.elementor-331 .gb-library-gallery {
  max-width: 900px !important;
  height: 410px !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-1,
.elementor-331 .gb-library-gallery > .gb-library-image-2,
.elementor-331 .gb-library-gallery > .gb-library-image-3 {
  width: 36% !important;
  height: 340px !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-1 {
  left: 5% !important;
  top: 42px !important;
  transform: rotate(-3deg) !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-2 {
  left: 32% !important;
  top: 0 !important;
  transform: rotate(1.5deg) !important;
}
.elementor-331 .gb-library-gallery > .gb-library-image-3 {
  right: 5% !important;
  top: 58px !important;
  transform: rotate(3deg) !important;
}
@media (max-width: 767px) {
  .elementor-331 .gb-hero-library-wrap {
    min-height: 390px !important;
    background-size: contain !important;
  }
  .elementor-331 .gb-library-gallery {
    max-width: 100% !important;
    height: auto !important;
  }
  .elementor-331 .gb-library-gallery > .gb-library-image-1,
  .elementor-331 .gb-library-gallery > .gb-library-image-2,
  .elementor-331 .gb-library-gallery > .gb-library-image-3 {
    height: 210px !important;
  }
}
@media (max-width: 420px) {
  .elementor-331 .gb-hero-library-wrap {
    min-height: 340px !important;
  }
  .elementor-331 .gb-library-gallery > .gb-library-image-1,
  .elementor-331 .gb-library-gallery > .gb-library-image-2,
  .elementor-331 .gb-library-gallery > .gb-library-image-3 {
    height: 175px !important;
  }
}


/* ---- 18) Native Elementor hero image: editor and frontend parity ---- */
.elementor-331 .gb-hero-library-wrap {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 45% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 465px !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
.elementor-331 .gb-hero-library-wrap > .elementor-element,
.elementor-331 .gb-hero-library-wrap > .e-con,
.elementor-331 .gb-hero-library-wrap .elementor-widget,
.elementor-331 .gb-hero-library-wrap .e-widget {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.elementor-331 .gb-hero-library-image,
.elementor-331 .gb-hero-library-image img,
.elementor-331 .gb-hero-library-wrap img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 465px !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
}
.elementor-331 .gb-hero-library-wrap .gb-hero-library-image {
  overflow: visible !important;
}
.elementor-331 .gb-hero-library-wrap::before,
.elementor-331 .gb-hero-library-wrap::after {
  content: none !important;
  display: none !important;
}
@media (max-width: 767px) {
  .elementor-331 .gb-hero-library-wrap {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 22px auto 0 !important;
  }
  .elementor-331 .gb-hero-library-wrap img {
    width: min(100%, 420px) !important;
    max-height: 390px !important;
    margin: 0 auto !important;
  }
}


/* ---- 19) Force the actual hero attachment image to render ---- */
body.home.page-id-331 img#416,
body.home.page-id-331 img.gb-hero-library-image {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
  width: 100% !important;
  max-width: 385px !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  clip: auto !important;
  clip-path: none !important;
  filter: none !important;
  transform: none !important;
  z-index: 5 !important;
}
body.home.page-id-331 .gb-hero-library-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: auto !important;
  min-height: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}
