@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//bbasalama.com/wp-content/themes/woodmart/fonts/woodmart-font-1-400.woff2?v=8.4.1") format("woff2");
}

:root {
	--wd-text-font: "Lexend", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 300;
	--wd-text-color: #767676;
	--wd-text-font-size: 16px;
	--wd-title-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 700;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 700;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: var(--wd-text-font);
	--wd-widget-title-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 700;
	--wd-widget-title-transform: capitalize;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: capitalize;
	--wd-header-el-font-size: 15px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(56,172,255);
	--wd-alternative-color: #fbbc34;
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(56,172,255);
	--btn-accented-bgcolor-hover: rgb(51,157,232);
	--btn-transform: capitalize;
	--wd-form-brd-width: 0px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(16,16,16);
	background-image: none;
}
html .wd-nav-mobile > li > a {
	text-transform: capitalize;
}
.page :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.single-product :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.woodmart-archive-blog :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.single-post :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.woodmart-archive-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.single-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
body, [class*=color-scheme-light], [class*=color-scheme-dark], .wd-search-form[class*="wd-header-search-form"] form.searchform, .wd-el-search .searchform {
	--wd-form-color: rgb(119,119,119);
	--wd-form-placeholder-color: rgb(119,119,119);
	--wd-form-bg: rgb(255,255,255);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 5px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 5px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 5px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 8px;
}

@media (min-width: 1222px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


.wd-page-title {
background-color: #0a0a0a;
}

/*
  BB CORE  v1  —  shared design system for every page built after the homepage
  Install ONCE: Elementor > Site Settings > Custom CSS  (paste this whole file).
  Every page block (06–16) uses these classes; all of them start with .bbx
  Fonts are loaded by each page block with a <link>, so nothing else is needed.
*/
.bbx{
  --bb-void:#05080E; --bb-deep:#0A1424; --bb-deep-2:#0E1A2E; --bb-star:#EEE7D7; --bb-dust:#9AA3B2; --bb-faint:#7C8595; --bb-line:rgba(238,231,215,.12);
  --bb-gold:#CDA85E; --bb-gold-ink:#16110A; --bb-signal:#7EB6DA; --bb-violet:#A99BE0; --bb-ember:#C9735A; --bb-paper:#E9E1CF; --bb-paper-ink:#2A2418;
  --accent:var(--bb-gold);
  --bb-display:"Newsreader","Iowan Old Style",Georgia,serif;
  --bb-body:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
  --bb-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --bb-header-space:110px;
  background:var(--bb-void); color:var(--bb-star); font-family:var(--bb-body); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased;
  overflow-x:clip; /* decorative glows never widen the page (clip keeps sticky elements working) */
}
.bbx *,.bbx *::before,.bbx *::after{box-sizing:border-box}
.bbx img{max-width:100%; height:auto}
.bbx a:focus-visible,.bbx button:focus-visible,.bbx input:focus-visible,.bbx summary:focus-visible,.bbx [tabindex]:focus-visible{outline:2px solid var(--accent); outline-offset:4px}
.bbx--story{--accent:var(--bb-gold)}
.bbx--cosmos{--accent:var(--bb-signal)}
.bbx--mind{--accent:var(--bb-violet)}

/* Layout */
.bbx-wrap{max-width:1240px; margin:0 auto; padding-left:max(20px,env(safe-area-inset-left,0px)); padding-right:max(20px,env(safe-area-inset-right,0px))}
.bbx-wrap--narrow{max-width:800px}
.bbx-sec{padding-block:clamp(64px,9vw,120px); border-top:1px solid var(--bb-line)}
.bbx-sec--first{border-top:0; padding-top:calc(var(--bb-header-space) + clamp(32px,5vw,72px))}
.bbx-sec--deep{background:linear-gradient(180deg,var(--bb-void),var(--bb-deep) 50%,var(--bb-void))}
.bbx-split{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,6vw,88px); align-items:center}
.bbx-split--wide-left{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.bbx-split--wide-right{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.bbx-split > *{min-width:0}
.bbx-grid-3{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(20px,3vw,32px)}
.bbx-grid-2{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(20px,3vw,32px)}
.bbx-head{display:flex; flex-wrap:wrap; justify-content:space-between; align-items:end; gap:16px 32px; margin-bottom:clamp(32px,4vw,52px)}

/* Type */
.bbx .bbx-h1{margin:0; padding:0; text-transform:none; font-family:var(--bb-display); font-weight:360; font-size:clamp(2.75rem,6.2vw,5.25rem); line-height:.98; letter-spacing:-.022em; color:var(--bb-star); text-wrap:balance}
.bbx .bbx-h2{margin:0; padding:0; text-transform:none; font-family:var(--bb-display); font-weight:380; font-size:clamp(2.125rem,4.4vw,3.5rem); line-height:1.04; letter-spacing:-.018em; color:var(--bb-star); text-wrap:balance}
.bbx .bbx-h3{margin:0; padding:0; text-transform:none; font-family:var(--bb-display); font-weight:400; font-size:clamp(1.375rem,2vw,1.75rem); line-height:1.2; color:var(--bb-star); text-wrap:balance}
.bbx .bbx-kicker{margin:0 0 14px; font-family:var(--bb-display); font-style:italic; font-size:1.125rem; color:var(--accent)}
.bbx .bbx-lede{margin:20px 0 0; max-width:38rem; font-size:clamp(1.0625rem,1.4vw,1.1875rem); color:var(--bb-dust)}
.bbx .bbx-p{margin:16px 0 0; max-width:40rem; color:var(--bb-dust)}
.bbx .bbx-p strong{color:var(--bb-star); font-weight:500}
.bbx .bbx-quote{margin:0; padding:0; border:0; font-family:var(--bb-display); font-style:italic; font-weight:350; font-size:clamp(1.5rem,3vw,2.375rem); line-height:1.3; color:var(--bb-star); text-wrap:balance}
.bbx .bbx-quote cite{display:block; margin-top:16px; font-family:var(--bb-body); font-style:normal; font-size:.9375rem; color:var(--accent)}
.bbx .bbx-small{font-size:.8125rem; color:var(--bb-faint)}
.bbx .bbx-mono{font-family:var(--bb-mono); font-size:.8125rem}

/* Actions */
.bbx-actions{display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; margin-top:32px}
.bbx .bbx-btn{display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 24px; border-radius:3px; border:1px solid var(--accent); background:var(--accent); color:var(--bb-gold-ink); font-family:var(--bb-body); font-weight:600; font-size:.9688rem; line-height:1.2; text-decoration:none; text-transform:none; letter-spacing:0; cursor:pointer; transition:background .2s,color .2s}
.bbx .bbx-btn:hover{background:transparent; color:var(--accent)}
.bbx .bbx-btn--ghost{background:transparent; color:var(--bb-star); border-color:rgba(238,231,215,.3)}
.bbx .bbx-btn--ghost:hover{border-color:var(--accent); color:var(--accent)}
.bbx .bbx-link{color:var(--bb-star); font-size:.9688rem; text-decoration:underline; text-decoration-color:color-mix(in srgb,var(--accent) 60%,transparent); text-underline-offset:5px; text-decoration-thickness:1px; background:none; border:0; padding:0; cursor:pointer; font-family:var(--bb-body)}
.bbx .bbx-link:hover{color:var(--accent)}

/* Chips and facts */
.bbx-chips{display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; list-style:none}
.bbx-chips li{margin:0; padding:4px 12px; border:1px solid var(--bb-line); border-radius:99px; font-size:.8125rem; line-height:1.5; color:var(--bb-dust)}
.bbx-chips li.is-on{border-color:color-mix(in srgb,var(--accent) 60%,transparent); color:var(--bb-star)}
.bbx-facts{display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:0; margin:36px 0 0; padding:0; border-top:1px solid var(--bb-line)}
.bbx-facts div{padding:14px 16px 0 0}
.bbx-facts dt{font-size:.75rem; color:var(--bb-faint)}
.bbx-facts dd{margin:2px 0 0; font-size:.9375rem; color:var(--bb-star); font-variant-numeric:tabular-nums}

/* Book cover in 3D */
.bbx-book3d{position:relative; width:min(100%,360px); margin:0 auto; perspective:1400px}
.bbx-book3d__inner{position:relative; aspect-ratio:2/3; transform-style:preserve-3d; transform:rotateY(-22deg) rotateX(4deg); transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.bbx-book3d:hover .bbx-book3d__inner{transform:rotateY(-8deg) rotateX(2deg)}
.bbx-book3d__front{position:absolute; inset:0; border-radius:2px 5px 5px 2px; overflow:hidden; box-shadow:0 0 0 1px rgba(238,231,215,.08)}
.bbx-book3d__front img{display:block; width:100%; height:100%; object-fit:cover; max-width:none}
.bbx-book3d__front::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(255,255,255,.08) 3%,transparent 9%,transparent 80%,rgba(255,255,255,.05))}
.bbx-book3d__spine{position:absolute; top:0; left:0; width:34px; height:100%; transform-origin:left; transform:rotateY(90deg) translateX(-34px); background:linear-gradient(90deg,#0a0f18,#1b2638)}
.bbx-book3d__pages{position:absolute; top:3px; right:0; width:32px; height:calc(100% - 6px); transform-origin:right; transform:rotateY(90deg) translateX(32px); background:repeating-linear-gradient(90deg,#efe9dc 0 2px,#d8d0bf 2px 3px)}
.bbx-book3d::after{content:""; position:absolute; left:8%; right:2%; bottom:-28px; height:40px; background:radial-gradient(closest-side,rgba(0,0,0,.75),transparent); filter:blur(6px); z-index:-1}
.bbx-book3d__glow{position:absolute; inset:-25%; z-index:-2; background:radial-gradient(circle,color-mix(in srgb,var(--accent) 30%,transparent),transparent 62%); pointer-events:none}
.bbx-badge{position:absolute; top:12px; right:12px; z-index:2; padding:3px 10px; border-radius:99px; background:var(--bb-gold); color:var(--bb-gold-ink); font-size:.75rem; font-weight:600}

/* Panels */
.bbx-panel{padding:clamp(22px,3vw,32px); border:1px solid var(--bb-line); border-radius:6px; background:rgba(14,26,46,.45)}
.bbx-panel--accent{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
.bbx-list{list-style:none; margin:16px 0 0; padding:0; display:grid; gap:10px}
.bbx-list li{position:relative; margin:0; padding-left:22px; color:var(--bb-dust); font-size:.9688rem}
.bbx-list li::before{content:""; position:absolute; left:2px; top:.62em; width:8px; height:8px; border-radius:50%; background:var(--accent)}
.bbx-list--no li::before{background:transparent; border:1px solid var(--bb-faint)}

/* Excerpt (book page) */
.bbx-excerpt{position:relative; max-width:720px; margin:0 auto; padding:clamp(28px,5vw,64px); border-radius:4px; background:var(--bb-paper); color:var(--bb-paper-ink); box-shadow:0 40px 80px -30px rgba(0,0,0,.9)}
.bbx-excerpt h3{margin:0 0 6px; font-family:var(--bb-mono); font-weight:400; font-size:.75rem; letter-spacing:.08em; color:#6B5F45}
.bbx-excerpt h4{margin:0 0 24px; font-family:var(--bb-display); font-weight:500; font-size:1.875rem; line-height:1.15; color:var(--bb-paper-ink)}
.bbx-excerpt p{margin:0 0 1em; font-family:var(--bb-display); font-size:1.1875rem; line-height:1.7; color:#2E2819}
.bbx-excerpt p:first-of-type::first-letter{float:left; font-size:3.6em; line-height:.85; padding:6px 10px 0 0; color:#8E6A28}
.bbx-excerpt__fade{position:relative; max-height:520px; overflow:hidden}
.bbx-excerpt__fade::after{content:""; position:absolute; left:0; right:0; bottom:0; height:140px; background:linear-gradient(180deg,rgba(233,225,207,0),var(--bb-paper))}
.bbx-excerpt.is-open .bbx-excerpt__fade{max-height:none}
.bbx-excerpt.is-open .bbx-excerpt__fade::after{display:none}
.bbx-excerpt__more{display:flex; flex-wrap:wrap; gap:12px 20px; align-items:center; margin-top:20px}
.bbx-excerpt .bbx-btn{--accent:#2A2418; color:#E9E1CF}
.bbx-excerpt .bbx-btn:hover{color:#2A2418}
.bbx-excerpt .bbx-link{color:#2A2418; text-decoration-color:rgba(42,36,24,.4)}

/* Series strip */
.bbx-series{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.4vw,28px)}
.bbx-series a{display:grid; grid-template-columns:72px minmax(0,1fr); gap:16px; align-items:center; padding:16px; border:1px solid var(--bb-line); border-radius:6px; color:inherit; text-decoration:none; transition:border-color .2s,background .2s}
.bbx-series a:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent); background:rgba(14,26,46,.5)}
.bbx-series a[aria-current="page"]{border-color:var(--accent); pointer-events:none}
.bbx-series img{display:block; width:72px; height:108px; object-fit:cover; border-radius:2px; max-width:none}
.bbx-series small{display:block; font-family:var(--bb-display); font-style:italic; font-size:.9375rem; color:var(--bb-gold)}
.bbx-series strong{display:block; font-weight:600; font-size:.9688rem; line-height:1.3; color:var(--bb-star)}

/* FAQ */
.bbx-faq{border-top:1px solid var(--bb-line)}
.bbx-faq details{border-bottom:1px solid var(--bb-line)}
.bbx-faq summary{list-style:none; cursor:pointer; display:grid; grid-template-columns:minmax(0,1fr) 22px; gap:16px; align-items:center; padding:20px 0; font-family:var(--bb-display); font-size:clamp(1.125rem,1.6vw,1.3125rem); line-height:1.3; color:var(--bb-star)}
.bbx-faq summary::-webkit-details-marker{display:none}
.bbx-faq summary:hover{color:var(--accent)}
.bbx-faq summary::after{content:"+"; width:22px; height:22px; border-radius:50%; border:1px solid color-mix(in srgb,var(--accent) 60%,transparent); color:var(--accent); font-family:var(--bb-body); font-size:16px; line-height:20px; text-align:center}
.bbx-faq details[open] summary::after{content:"−"; background:var(--accent); color:var(--bb-gold-ink)}
.bbx-faq details p{margin:0; padding:0 40px 22px 0; color:var(--bb-dust); max-width:44rem}
.bbx-faq details a{color:var(--bb-star)}

/* CTA band */
.bbx-cta{display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:clamp(20px,4vw,48px); align-items:center; padding:clamp(28px,4vw,44px); border:1px solid color-mix(in srgb,var(--bb-gold) 40%,transparent); border-radius:6px; background:radial-gradient(ellipse at 0% 50%,rgba(205,168,94,.12),transparent 60%),var(--bb-deep)}
.bbx-cta img{display:block; width:96px; aspect-ratio:3/4; object-fit:cover; border-radius:3px; transform:rotate(-4deg); max-width:none; box-shadow:0 18px 36px -14px rgba(0,0,0,.9)}
.bbx-cta .bbx-h3 + .bbx-p{margin-top:8px}

/* Author mini */
.bbx-author{display:grid; grid-template-columns:120px minmax(0,1fr); gap:28px; align-items:center}
.bbx-author img{display:block; width:120px; height:120px; border-radius:50%; object-fit:cover; object-position:50% 22%; max-width:none; box-shadow:0 0 0 1px rgba(205,168,94,.7),0 0 0 6px var(--bb-void),0 0 0 7px rgba(205,168,94,.25)}

/* Mobile sticky buy bar (book pages) */
.bbx-buybar{position:fixed; left:0; right:0; bottom:0; z-index:999; display:none; align-items:center; gap:12px; padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px)); background:rgba(5,8,14,.94); backdrop-filter:blur(10px); border-top:1px solid var(--bb-line); transform:translateY(110%); transition:transform .35s}
.bbx-buybar img{width:34px; height:51px; object-fit:cover; border-radius:2px; max-width:none}
.bbx-buybar strong{flex:1; min-width:0; font-size:.875rem; line-height:1.3; color:var(--bb-star); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.bbx-buybar .bbx-btn{min-height:44px; padding:0 16px; font-size:.875rem}
.bbx-buybar.is-on{transform:none}

@media (max-width:960px){
  .bbx-split,.bbx-split--wide-left,.bbx-split--wide-right,.bbx-grid-2{grid-template-columns:minmax(0,1fr)}
  .bbx-grid-3,.bbx-series{grid-template-columns:minmax(0,1fr)}
  .bbx-cta{grid-template-columns:minmax(0,1fr)}
  .bbx-cta img{width:80px}
  .bbx-buybar{display:flex}
  .bbx{--bb-header-space:84px}
}
@media (max-width:520px){
  .bbx-author{grid-template-columns:minmax(0,1fr)}
  .bbx-faq details p{padding-right:0}
}
@media (prefers-reduced-motion:reduce){
  .bbx *{transition:none !important; animation:none !important}
  .bbx-book3d__inner{transform:rotateY(-12deg)}
}

/* ===== Full-bleed: every BB block fills the screen width =====
   Breaks out of WoodMart / Elementor wrappers and their side padding, on every page.
   overflow-x:clip (not hidden) keeps sticky elements working. */
html,body{overflow-x:clip}
.bbh,.bbb,.bbd,.bbc,.bbf,.bbx{
  width:100vw !important; max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important;
  box-sizing:border-box;
}
.bbx.bbx--inline{width:auto !important; max-width:none !important; margin-left:0 !important; margin-right:0 !important}
/* Elementor wrappers that hold a BB block: no padding, no gaps */
.elementor-widget-html:has(.bbh,.bbb,.bbd,.bbc,.bbf,.bbx),
.elementor-widget-shortcode:has(.bbd,.bbx){width:100%; max-width:100%}
.e-con:has(> .e-con-inner > .elementor-widget-html .bbx),
.e-con:has(> .elementor-widget-html .bbx),
.e-con:has(> .elementor-widget-shortcode .bbx){--padding-top:0px; --padding-bottom:0px; --padding-left:0px; --padding-right:0px; --gap:0px}
