/* fekbd — WooCommerce in black & white. Loaded only on shop, product, cart, checkout, account and /book/. */
.fk-woo-page{padding-bottom:var(--wp--preset--spacing--60)}
.fk-page-hero.is-small{padding-top:clamp(2.5rem,6vw,4.5rem);padding-bottom:clamp(1.5rem,3vw,2.25rem)}
.fk-page-hero.is-small .fk-page-title{font-size:var(--wp--preset--font-size--xx-large);margin:0}
.woocommerce,.woocommerce-page{--wc-red:#0a0a0a;--wc-green:#0a0a0a;--wc-primary:#0a0a0a;--wc-primary-text:#fff;--wc-secondary:#f5f5f5;--wc-secondary-text:#0a0a0a;--wc-highlight:#0a0a0a;--wc-highligh-text:#fff;--wc-content-bg:#fff;--wc-subtext:#6b6b6b;--wc-form-border-radius:0}
.woocommerce *{border-radius:0!important}

/* forms */
.woocommerce form .form-row{padding:0;margin:0 0 1rem}
.woocommerce form .form-row label{font-size:.875rem;font-weight:600;line-height:1.4;margin-bottom:.4rem;display:block}
.woocommerce form .form-row .required{color:var(--ink);text-decoration:none}
.woocommerce form .form-row :is(input.input-text,textarea,select),.woocommerce .quantity .qty,.woocommerce-page .select2-container .select2-selection,.woocommerce input[type=email],.woocommerce input[type=password],.woocommerce input[type=text]{width:100%;min-height:48px;padding:.75rem .9rem;border:1px solid var(--g3);background:var(--paper);color:var(--ink);font:inherit;line-height:1.3;box-shadow:none;transition:border-color .3s}
.woocommerce form .form-row :is(input.input-text,textarea,select):focus,.woocommerce .quantity .qty:focus{border-color:var(--ink);outline:0;box-shadow:0 0 0 1px var(--ink)}
.woocommerce form .form-row.woocommerce-invalid :is(input.input-text,select){border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.woocommerce form .form-row.woocommerce-invalid label{color:var(--ink)}
.woocommerce .quantity .qty{width:5rem;text-align:center}
.select2-container--default .select2-selection--single{height:48px;border:1px solid var(--g3)!important}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:.9rem}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px}
.select2-dropdown{border-color:var(--ink)!important}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--ink)!important}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon,.woocommerce form.lost_reset_password{border:1px solid var(--line);padding:clamp(1.25rem,3vw,2rem);margin:0 0 2rem}

/* buttons */
.woocommerce :is(a.button,button.button,input.button,#respond input#submit),.woocommerce :is(a.button.alt,button.button.alt,input.button.alt),.woocommerce #payment #place_order{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.8rem 1.35rem;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:inherit;font-size:.9375rem;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .35s var(--ease),color .35s var(--ease)}
.woocommerce :is(a.button,button.button,input.button,a.button.alt,button.button.alt):hover,.woocommerce #payment #place_order:hover{background:var(--g7);border-color:var(--g7);color:var(--paper)}
.woocommerce :is(a.button,button.button):disabled,.woocommerce :is(a.button,button.button).disabled{background:var(--g1);border-color:var(--line);color:var(--g5);opacity:1}
.woocommerce #payment #place_order{width:100%;min-height:56px;font-size:1rem;float:none}

/* notices */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error),.wc-block-components-notice-banner{margin:0 0 1.5rem;padding:1rem 1.25rem 1rem 3rem;border:1px solid var(--ink);border-top-width:1px;background:var(--paper);color:var(--ink);font-size:.9375rem;list-style:none}
.woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{color:var(--ink);top:1rem;left:1.1rem}
.woocommerce .woocommerce-error{background:var(--g1)}
.woocommerce :is(.woocommerce-message,.woocommerce-info) .button{float:right;min-height:36px;padding:.4rem .9rem;font-size:.8125rem}
.woocommerce-store-notice,p.demo_store{background:var(--ink)}

/* tables (cart, order review, orders, downloads) */
.woocommerce table.shop_table{border:0;border-top:1px solid var(--ink);border-collapse:collapse;margin:0 0 1.5rem;font-size:.9375rem}
.woocommerce table.shop_table :is(th,td){padding:.9rem .6rem;border:0;border-bottom:1px solid var(--line);vertical-align:middle}
.woocommerce table.shop_table th{font-weight:600;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:var(--g5)}
.woocommerce table.shop_table tfoot :is(th,td){font-size:.9375rem;text-transform:none;letter-spacing:0;color:var(--ink)}
.woocommerce table.shop_table .order-total :is(th,td){font-size:1.125rem;font-weight:700;border-bottom:1px solid var(--ink)}
.woocommerce table.shop_table img{width:56px;border:1px solid var(--line)}
.woocommerce a.remove{color:var(--ink)!important;border:1px solid var(--line);width:28px;height:28px;line-height:26px}
.woocommerce a.remove:hover{background:var(--ink);color:var(--paper)!important}
.woocommerce table.shop_table_responsive tr td::before{color:var(--g5)}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{border:1px solid var(--line);padding:1.5rem}
.woocommerce .cart-collaterals .cart_totals h2{font-size:1.25rem;margin:0 0 1rem}
.woocommerce table.cart td.actions .coupon .input-text{width:auto;min-width:10rem;margin-right:.5rem}

/* checkout + payment */
.woocommerce-checkout h3,#order_review_heading{font-size:1.25rem;letter-spacing:-.02em;margin:0 0 1rem}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{width:100%;float:none}
.woocommerce form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 clamp(1.5rem,4vw,3rem);align-items:start}
.woocommerce form.checkout>*{grid-column:1/-1}
.woocommerce form.checkout #customer_details{grid-column:1}
.woocommerce form.checkout #order_review_heading,.woocommerce form.checkout #order_review{grid-column:2}
.woocommerce form.checkout #order_review_heading{grid-row:1}
.woocommerce form.checkout #order_review{grid-row:2}
.woocommerce form.checkout #customer_details{grid-row:1/span 2}
@media (max-width:860px){.woocommerce form.checkout{grid-template-columns:1fr}.woocommerce form.checkout :is(#customer_details,#order_review_heading,#order_review){grid-column:1;grid-row:auto}}
.woocommerce-checkout #payment{background:var(--g1);border:1px solid var(--line)}
.woocommerce-checkout #payment ul.payment_methods{padding:1rem 1.25rem;border-bottom:1px solid var(--line)}
.woocommerce-checkout #payment ul.payment_methods li{line-height:1.5;margin:.25rem 0}
.woocommerce-checkout #payment ul.payment_methods li input{accent-color:var(--ink);margin-right:.5rem}
.woocommerce-checkout #payment div.payment_box{background:var(--paper);border:1px solid var(--line);color:var(--g7);font-size:.875rem;margin:.75rem 0 .25rem;padding:.9rem 1rem}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.form-row{padding:1.25rem}
.woocommerce-terms-and-conditions-wrapper,.woocommerce-privacy-policy-text{font-size:.8125rem;color:var(--g5)}
.woocommerce-privacy-policy-text p{margin:0 0 1rem}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{padding-left:1.25rem}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before,.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before{display:none}
.blockUI.blockOverlay{background:rgba(255,255,255,.7)!important}

/* thank-you */
.woocommerce-order>p.woocommerce-thankyou-order-received{font-size:clamp(1.25rem,2.4vw,1.75rem);font-weight:700;letter-spacing:-.03em;padding:1.25rem 1.5rem;border:1px solid var(--ink);background:var(--ink);color:var(--paper);margin:0 0 1.5rem}
.woocommerce ul.order_details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0 0 2rem;padding:0;border-top:1px solid var(--ink)}
.woocommerce ul.order_details::before,.woocommerce ul.order_details::after{display:none}
.woocommerce ul.order_details li{float:none;margin:0;padding:1rem 1rem 1rem 0;border-right:0;border-bottom:1px solid var(--line);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--g5)}
.woocommerce ul.order_details li strong{display:block;margin-top:.35rem;font-size:1rem;letter-spacing:0;text-transform:none;color:var(--ink)}
.woocommerce-order-downloads,.woocommerce-order-details,.woocommerce-customer-details{margin:0 0 2rem}
.woocommerce :is(.woocommerce-order-downloads,.woocommerce-order-details,.woocommerce-customer-details) h2{font-size:1.25rem;margin:0 0 1rem}
.woocommerce-order-downloads .download-file a.button,.woocommerce-table--order-downloads a.button{min-height:40px;padding:.5rem 1rem;font-size:.875rem}
.woocommerce .woocommerce-customer-details address{border:1px solid var(--line);padding:1rem 1.25rem;font-style:normal}

/* my account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
.woocommerce-account .woocommerce>.woocommerce-notices-wrapper,.woocommerce-account .woocommerce>:is(.u-columns,form,h2,.woocommerce-form-login){grid-column:1/-1}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.woocommerce-MyAccount-navigation li a{display:block;padding:.8rem 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--g7);font-weight:500;transition:color .3s,padding .4s var(--ease)}
.woocommerce-MyAccount-navigation li a:hover{color:var(--ink);padding-left:.35rem}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--ink);font-weight:700}
.woocommerce-MyAccount-content>p:first-child{font-size:1.0625rem}
.woocommerce-account .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.woocommerce-account .u-columns .col-1,.woocommerce-account .u-columns .col-2{width:auto;float:none}
.woocommerce-account .u-columns::before,.woocommerce-account .u-columns::after{display:none}
@media (max-width:760px){.woocommerce-account .woocommerce,.woocommerce-account .u-columns{grid-template-columns:1fr}}

/* products */
.woocommerce ul.products li.product{border:1px solid var(--line);padding:0 0 1rem;text-align:left;transition:border-color .5s var(--ease)}
.woocommerce ul.products li.product:hover{border-color:var(--ink)}
.woocommerce ul.products li.product a img{margin:0 0 1rem;border-bottom:1px solid var(--line)}
.woocommerce ul.products li.product :is(.woocommerce-loop-product__title,.price,.button){margin-left:1rem;margin-right:1rem}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.125rem;letter-spacing:-.02em;padding:0}
.woocommerce :is(div.product,ul.products li.product) .price{color:var(--ink);font-weight:700}
.woocommerce span.onsale{min-height:0;min-width:0;padding:.25rem .55rem;line-height:1.3;background:var(--ink);color:var(--paper);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase}
.woocommerce .star-rating span::before,.woocommerce p.stars a{color:var(--ink)}
.woocommerce div.product div.images img{border:1px solid var(--line)}
.woocommerce div.product .product_title{font-size:var(--wp--preset--font-size--xx-large);letter-spacing:-.04em;line-height:1.05}
.woocommerce div.product p.price{font-size:1.5rem;color:var(--ink)}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 1.5rem;border-bottom:1px solid var(--ink)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;margin:0 1.5rem 0 0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:.75rem 0;color:var(--g5)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.woocommerce nav.woocommerce-pagination ul{border:0}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0 .25rem}
.woocommerce nav.woocommerce-pagination ul li :is(a,span){min-width:44px;padding:.7rem;border:1px solid var(--line)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:var(--paper)}
.woocommerce .widget_shopping_cart .total,.woocommerce.widget_shopping_cart .total{border-top:1px solid var(--ink)}

/* ---------------------------------------------------------------- /book/ landing */
.fk-book-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center;padding:clamp(3rem,8vw,6rem) 0 clamp(2rem,5vw,4rem)}
.fk-book-title{font-size:clamp(2.4rem,6vw,4.75rem);line-height:.98;letter-spacing:-.05em;margin:0 0 1rem;font-weight:800}
.fk-book-by{font-size:1.0625rem;font-weight:600;margin:0 0 1.25rem}
.fk-book-buy{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;margin:1.75rem 0 .75rem}
.fk-book-price{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.04em;line-height:1}
.fk-book-price del{font-size:.5em;color:var(--g5);font-weight:500;margin-right:.4rem}
.fk-book-price ins{text-decoration:none}
.fk-book-3d{perspective:1400px;display:grid;place-items:center;padding:1rem}
.fk-book-obj{position:relative;width:min(100%,380px);transform:rotateY(-24deg) rotateX(4deg);transform-style:preserve-3d;transition:transform 1.4s var(--ease);box-shadow:30px 34px 60px -24px rgba(0,0,0,.45),2px 2px 0 rgba(0,0,0,.08)}
.fk-book-obj:hover{transform:rotateY(-14deg) rotateX(2deg)}
.fk-book-img{display:block;width:100%;height:auto;position:relative;z-index:2}
.fk-book-obj::before{content:"";position:absolute;inset:0 auto 0 0;width:14px;z-index:3;background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,0) 70%)}
.fk-book-pages{position:absolute;top:1.5%;bottom:1.5%;right:-18px;width:18px;background:repeating-linear-gradient(90deg,#fafafa 0 2px,#e5e5e5 2px 3px);transform:rotateY(90deg);transform-origin:left;z-index:1}
@media (max-width:820px){.fk-book-hero{grid-template-columns:1fr}.fk-book-3d{order:-1}.fk-book-obj{width:min(70vw,300px)}}
@media (prefers-reduced-motion:reduce){.fk-book-obj{transition:none}}
.fk-buy{scroll-margin-top:calc(var(--hd) + 16px)}
.fk-buy .woocommerce{margin-top:1.5rem}
.fk-buy form.checkout{border:1px solid var(--ink);padding:clamp(1.25rem,3vw,2.25rem);background:var(--paper)}
.fk-buy .woocommerce-billing-fields>h3{font-size:1.25rem}
.fk-guarantee{border-left:2px solid var(--ink);padding-left:1.25rem}
/* third-party gateways (e.g. EPS / bKash redirect): logos, descriptions, extra fields */
.woocommerce-checkout #payment ul.payment_methods li label{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-weight:600}
.woocommerce-checkout #payment ul.payment_methods li img{display:inline-block;max-height:28px;width:auto;margin:0 0 0 .25rem;vertical-align:middle;border:0;float:none}
.woocommerce-checkout #payment div.payment_box :is(input,select){width:100%;min-height:44px;padding:.6rem .8rem;border:1px solid var(--g3);background:var(--paper)}
.woocommerce-checkout #payment div.payment_box p:last-child{margin-bottom:0}
.woocommerce-checkout #payment div.payment_box fieldset{border:0;padding:0;margin:.5rem 0 0}
.fk-pay-note{display:flex;gap:.6rem;align-items:flex-start;margin:0 0 1rem;padding:.85rem 1rem;border:1px solid var(--ink);font-size:.875rem;line-height:1.5}
.fk-pay-note .fk-i{margin-top:.15em}
