/*
Theme Name: BrightShelf Books
Author: BrightShelf Books
Description: A responsive bookstore theme with category tiles, promotional banners, product carousels, and WooCommerce integration. Includes optional sample catalog setup.
Version: 1.0.12
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: brightshelf-books
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: e-commerce, custom-logo, custom-menu, featured-images, full-width-template
*/
@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/poppins-400.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/poppins-500.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/poppins-600.ttf') format('truetype')}
@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/poppins-700.ttf') format('truetype')}
:root{--ink:#191919;--muted:#686868;--orange:#ee8d3a;--orange-dark:#9d470d;--border:#e7e3dd;--paper:#fff;--cream:#fbf8f4;--radius:16px}
*{box-sizing:border-box}html{scroll-padding-top:115px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Poppins,Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--orange-dark)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}img{display:block;max-width:100%;height:auto}svg{width:24px;height:24px;display:block}h1,h2,h3,h4{font-weight:500;line-height:1.3;margin:0 0 18px}h1{font-size:38px}h2{font-size:28px}p{margin:0 0 18px}ul{padding:0;list-style:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #146b96;outline-offset:4px}input,textarea,select{max-width:100%;border:1px solid #ccc;border-radius:5px;padding:12px;background:#fff;color:var(--ink)}label{display:block}.wrap{width:calc(100% - 80px);max-width:1440px;margin-inline:auto}.wide-wrap{width:calc(100% - 20px);max-width:1560px;margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{clip:auto;width:auto;height:auto;left:10px;top:10px;padding:12px;z-index:10000;background:white}.topbar{border-bottom:1px solid #ebebeb;font-size:14px}.topbar-inner{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:20px}.utility-links,.contact-links{display:flex;align-items:center;gap:18px}.utility-links a+a{border-left:1px solid #ddd;padding-left:18px}.contact-links{font-size:13px}.contact-links a{display:flex;gap:9px;align-items:center}.contact-links svg{color:var(--orange);width:16px;height:16px}.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #d9d9d9;box-shadow:0 1px 1px #00000006}.admin-bar .site-header{top:32px}.header-inner{height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.site-branding{flex:0 0 215px}.wordmark{display:inline-flex;align-items:center;flex-direction:column;line-height:1;color:#e88032!important}.wordmark>span{font-family:Georgia,'Times New Roman',serif;font-size:35px;letter-spacing:-1.9px;white-space:nowrap}.logo-sun{font-size:24px;vertical-align:top;margin-left:3px}.wordmark small{font-size:9px;letter-spacing:5px;color:#333;margin-top:9px;padding-left:7px;font-weight:500}.custom-logo-link img{max-width:215px;max-height:80px;width:auto}.main-menu{display:flex;align-items:center;gap:30px;margin:0}.main-menu>li{position:relative}.main-menu a{font-size:16px;font-weight:500;text-transform:uppercase;display:block;padding:14px 0}.main-menu [aria-current=page],.current-menu-item>a{color:var(--orange-dark)}.main-menu .sub-menu{display:none;position:absolute;background:#fff;min-width:230px;padding:12px 22px;box-shadow:0 5px 18px #0002}.main-menu li:hover>.sub-menu,.main-menu li:focus-within>.sub-menu{display:block}.header-actions{display:flex;align-items:center;gap:22px}.icon-button{border:0;padding:5px;background:transparent;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px}.icon-button:hover{color:var(--orange-dark)}.cart-link{position:relative}.cart-count{position:absolute;right:-5px;top:-5px;border-radius:50%;min-width:19px;height:19px;line-height:19px;font-size:10px;text-align:center;background:#191919;color:white}.menu-toggle{display:none}
.category-section{text-align:center;padding:12px 0 59px}.category-flourish{width:123px;height:39px;object-fit:contain;margin:0 auto 15px}.category-section h2{text-transform:uppercase;font-size:24px;font-weight:600;margin-bottom:10px}.category-section>p{font-size:16px;margin:0 0 28px}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:50px}.category-tile{display:flex;flex-direction:column;align-items:center}.category-tile img{width:164px;height:164px;object-fit:cover;border-radius:33px;box-shadow:0 0 5px #0005;transition:transform .2s}.category-tile:hover img{transform:translateY(-4px)}.category-tile h3{margin:9px 0 0;font-size:20px;text-transform:uppercase;font-weight:500}.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:48px}.promo-grid img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;box-shadow:0 0 5px #0005}.collection-section{max-width:1600px;margin:0 auto 52px}.collection-banner{display:block;width:100%;overflow:hidden;border-radius:12px;box-shadow:0 0 4px #0003}.collection-banner img{width:100%;height:auto;aspect-ratio:2232/705;object-fit:cover}.collection-heading{position:relative;text-align:center;padding:26px 30px 30px}.collection-heading h2{font-size:28px;text-transform:uppercase;margin:0}.collection-heading>a{position:absolute;right:38px;top:34px;font-size:13px}.collection-heading>a span{margin-left:9px}.product-carousel{position:relative;padding:12px 3px 0}.woocommerce ul.products,.products{margin:0;padding:0;list-style:none}.products:before,.products:after,.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.products.book-row{display:flex!important;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 0 9px}.products.book-row::-webkit-scrollbar{display:none}.products.book-row li.book-card{flex:0 0 calc((100% - 120px)/5);width:calc((100% - 120px)/5)!important;float:none;margin:0!important;scroll-snap-align:start}.book-card{position:relative;min-width:0;border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 1px 7px #906d3310;display:flex;flex-direction:column;transition:box-shadow .2s}.book-card:hover{box-shadow:0 5px 20px #906d3324}.book-cover{position:relative;background:#fff;overflow:hidden}.book-cover>a{display:block}.book-cover img,.woocommerce ul.products li.product .book-cover img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;margin:0!important;padding:4px}.book-info{position:relative;padding:16px 16px 18px;flex:1;display:flex;flex-direction:column}.book-info .woocommerce-loop-product__title,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px;font-weight:400;line-height:1.6;padding:0 20px 0 0;margin:0 0 9px;min-height:68px;overflow-wrap:anywhere}.book-info .wishlist-toggle{position:absolute;right:5px;top:10px;padding:7px}.wishlist-toggle svg{width:18px;height:18px}.wishlist-toggle[aria-pressed=true] svg{fill:#ee8d3a;stroke:#b35c19}.price,.woocommerce ul.products li.product .price{display:block;font-size:16px;font-weight:600;color:#b9601c;margin:0 0 14px}.price del,.woocommerce ul.products li.product .price del{color:#888;font-size:13px;display:inline;font-weight:400;margin-right:6px}.price ins,.woocommerce ul.products li.product .price ins{text-decoration:none;display:inline}.sale-badge{position:absolute;top:12px;left:12px;border-radius:4px;background:#e99a56;color:#171717;font-size:11px;padding:2px 7px}.quick-view{position:absolute;right:10px;bottom:10px;border-radius:50%;background:#fff;box-shadow:0 1px 8px #0002;opacity:0;transform:translateY(5px);transition:.2s}.book-card:hover .quick-view,.book-card:focus-within .quick-view{opacity:1;transform:none}.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.wp-element-button{display:inline-block;background:var(--orange);color:#191919;border:1px solid var(--orange);border-radius:5px;padding:12px 22px;line-height:1.5;font-size:14px;font-weight:500;text-align:center;text-decoration:none;cursor:pointer}.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{color:#fff;background:#a95318;border-color:#a95318}.book-info .button,.woocommerce ul.products li.product .button{margin-top:auto!important;font-size:12px;padding:9px 8px;width:100%;background:#fff;border:1px solid #ddd}.book-info .button:hover{background:var(--orange);border-color:var(--orange);color:#191919}.book-info a.added_to_cart{font-size:12px;text-align:center;margin-top:8px}.carousel-arrow{position:absolute;z-index:2;top:33%;border-radius:50%;background:white;box-shadow:0 1px 10px #0002;width:36px;height:36px}.carousel-arrow.previous{left:8px}.carousel-arrow.previous svg{transform:rotate(180deg)}.carousel-arrow.next{right:8px}.empty-collection{padding:30px;text-align:center;color:var(--muted)}.final-banner{max-width:1600px;margin:30px auto 45px}
.service-strip{border-top:1px solid #eee;border-bottom:1px solid #eee;padding:38px 0;background:#fff}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;text-align:center}.service img{width:54px;height:54px;object-fit:contain;margin:0 auto 16px}.service h3{font-size:15px;font-weight:500;margin-bottom:5px}.service p{font-size:12px;color:#555;margin:0}.site-footer{background:#faf9f6;padding-top:48px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr .7fr;gap:50px;padding-bottom:40px}.footer-grid h3{text-transform:uppercase;font-size:15px;font-weight:600;margin:12px 0 22px}.footer-grid p,.footer-grid li{font-size:13px;line-height:1.9;margin:0 0 10px}.footer-about .wordmark{margin-bottom:22px}.footer-about p{max-width:325px}.footer-shop-link{font-size:13px;color:var(--orange-dark)}.footer-bottom{border-top:1px solid #dfdfdb;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-size:12px;color:#555}.back-top{position:fixed;right:20px;bottom:20px;background:#191919;color:white;border-radius:50%;width:44px;height:44px;z-index:25;opacity:0;pointer-events:none;transition:opacity .2s}.back-top.visible{opacity:1;pointer-events:auto}.back-top:hover{background:var(--orange);color:#191919}
dialog{border:0;border-radius:14px;padding:32px;box-shadow:0 20px 90px #0004;max-width:calc(100vw - 32px);color:var(--ink)}dialog::backdrop{background:#0007;backdrop-filter:blur(3px)}.search-dialog{width:680px}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dialog-top h2{font-size:24px;margin:0}.search-dialog form,.search-form{display:flex;gap:10px}.search-dialog input[type=search]{min-width:0;flex:1}.search-dialog p{font-size:13px;color:#666;margin:16px 0 0}.quick-dialog{width:850px}.dialog-close{position:absolute;right:12px;top:12px}.quick-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:32px;align-items:center}.quick-image{width:100%;aspect-ratio:1;object-fit:contain}.quick-dialog h2{font-size:25px}.quick-price{font-size:22px;font-weight:600;color:#b9601c}.quick-dialog p:not(.quick-price){font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:#777;margin-bottom:15px}.store-toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);padding:13px 24px;background:#222;color:#fff;font-size:14px;border-radius:8px;z-index:100;opacity:0;pointer-events:none;max-width:calc(100vw - 30px);transition:.2s}.store-toast.visible{opacity:1;transform:translate(-50%,0)}
.content-main,.shop-main{padding-top:26px;padding-bottom:65px;min-height:50vh}.content-main h1,.shop-main h1{margin-bottom:22px}.entry-content{overflow-wrap:break-word}.entry-content>p,.entry-content>.contact-form{max-width:850px}.entry-content ul:not(.products){list-style:disc;padding-left:24px}.page-breadcrumb,.woocommerce .woocommerce-breadcrumb{color:#777;font-size:12px;margin:0 0 10px}.page-breadcrumb span{padding:0 9px}.woocommerce .woocommerce-result-count{font-size:13px;color:#666;padding-top:12px}.woocommerce .woocommerce-ordering select{font-size:13px;border:1px solid #ddd;padding:8px}.woocommerce ul.products:not(.book-row),ul.products.wishlist-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;clear:both}.woocommerce ul.products:not(.book-row) li.product,ul.products.wishlist-products li.product{float:none!important;width:100%!important;margin:0!important}.woocommerce div.product div.images img{max-height:650px;object-fit:contain}.woocommerce div.product .product_title{font-size:30px;line-height:1.4}.woocommerce div.product p.price{color:#b9601c;font-size:24px}.woocommerce div.product form.cart .button{padding:13px 24px}.woocommerce div.product form.cart div.quantity{margin-right:16px}.woocommerce .quantity .qty{width:70px;padding:12px 5px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0;border-bottom:1px solid #ddd}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#fff;border: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.active{border-bottom:2px solid var(--orange)}.woocommerce div.product .woocommerce-tabs .panel{padding:10px 0 25px}.woocommerce .product_meta{font-size:13px;color:#666}.woocommerce .product_meta>span{display:block;margin-bottom:7px}.woocommerce table.shop_table{border-color:#e5e1da;border-radius:10px}.woocommerce table.shop_table th{background:#faf8f4;padding:16px}.woocommerce table.shop_table td{padding:16px}.woocommerce-cart table.cart img{width:65px}.woocommerce .cart-collaterals .cart_totals h2{font-size:25px}.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--orange);background:#fbf8f3}.woocommerce .woocommerce-info:before,.woocommerce .woocommerce-message:before{color:#b9601c}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:12px;border:1px solid #ccc;border-radius:5px}.woocommerce form .form-row label{line-height:2.5}.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{border-color:#e5e1da;border-radius:10px}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-MyAccount-navigation li{padding:10px;border-bottom:1px solid #eee}.woocommerce-MyAccount-navigation .is-active{background:var(--cream);color:#9d470d}.woocommerce .related.products{clear:both;padding-top:35px}.woocommerce nav.woocommerce-pagination ul{border:none;margin-top:32px}.woocommerce nav.woocommerce-pagination ul li{border:1px solid #ddd;margin:3px;border-radius:4px}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--orange);color:#191919}.contact-form{position:relative;max-width:760px;padding:28px;background:var(--cream);border:1px solid var(--border);border-radius:12px;margin:30px 0}.contact-form label{font-size:14px;margin-bottom:18px}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:7px;background:white}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:12px;color:#666}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{padding:18px;background:#fff4e8;border-left:3px solid var(--orange);margin:20px 0;max-width:760px}.empty-page{text-align:center;padding-block:90px}.content-main article+article{border-top:1px solid #ddd;padding-top:30px;margin-top:30px}.entry-content figure{max-width:100%;margin-inline:0}.entry-content table{border-collapse:collapse}.entry-content th,.entry-content td{padding:10px;border:1px solid #ddd}.aligncenter{margin-left:auto;margin-right:auto}.alignwide{max-width:1200px}.alignfull{width:100%}.wp-caption,.gallery-caption{max-width:100%;font-size:13px}.bypostauthor{font-weight:500}
@media(min-width:1600px){.category-section{padding-top:25px}.category-grid{margin-top:36px}}
@media(max-width:1150px){.wrap{width:calc(100% - 40px)}.main-menu{gap:18px}.main-menu a{font-size:13px}.site-branding{flex-basis:195px}.wordmark>span{font-size:32px}.header-actions{gap:13px}.category-grid{gap:25px}.category-tile img{width:145px;height:145px}.products.book-row li.book-card{flex-basis:calc((100% - 72px)/4);width:calc((100% - 72px)/4)!important}.products.book-row{gap:24px}.footer-grid{gap:30px}.book-info{padding:13px}.woocommerce ul.products:not(.book-row),ul.products.wishlist-products{gap:20px}}
@media(max-width:850px){.contact-links{font-size:11px}.main-menu{gap:12px}.header-inner{gap:12px}.site-branding{flex-basis:175px}.wordmark>span{font-size:29px}.main-menu a{font-size:12px}.header-actions{gap:6px}.category-grid{gap:20px}.category-tile img{width:120px;height:120px;border-radius:25px}.category-tile h3{font-size:16px}.service-grid{gap:15px}.service h3{font-size:13px}.service p{font-size:11px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.woocommerce ul.products:not(.book-row),ul.products.wishlist-products{grid-template-columns:repeat(3,minmax(0,1fr))}.products.book-row li.book-card{flex-basis:calc((100% - 40px)/3);width:calc((100% - 40px)/3)!important}.products.book-row{gap:20px}.collection-heading h2{font-size:24px}.collection-heading>a{right:20px;top:31px}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.topbar-inner{justify-content:center;min-height:37px}.topbar{font-size:11px}.contact-links{display:none}.utility-links{gap:14px}.utility-links a+a{padding-left:14px}.header-inner{height:80px;gap:10px}.site-branding{flex:1;text-align:center}.wordmark>span{font-size:29px}.wordmark small{font-size:8px;margin-top:6px;letter-spacing:4px}.logo-sun{font-size:19px}.menu-toggle{display:flex}.header-actions{gap:6px}.header-actions .account-link{display:none}.icon-button{min-width:36px;min-height:36px}.header-actions svg{width:21px;height:21px}.cart-count{top:-2px;right:-1px}.site-branding .custom-logo-link img{max-height:60px;max-width:165px}.admin-bar .site-header{top:46px}#site-navigation{display:none;position:absolute;left:0;right:0;top:100%;padding:16px 25px;background:#fff;border-bottom:1px solid #ddd;box-shadow:0 10px 20px #0001}#site-navigation.is-open{display:block}.main-menu{display:block}.main-menu a{font-size:15px;padding:12px 0}.main-menu .sub-menu{position:static;display:block;box-shadow:none;padding-left:20px}.category-section{padding:18px 0 30px}.category-flourish{width:96px;height:31px;margin-bottom:12px}.category-section h2{font-size:21px}.category-section>p{font-size:13px;margin-bottom:22px}.category-grid{width:calc(100% - 26px);gap:18px 14px;grid-template-columns:repeat(3,1fr);justify-content:center}.category-tile img{width:100%;max-width:125px;height:auto;aspect-ratio:1;border-radius:24px}.category-tile h3{font-size:13px;margin-top:8px}.category-tile:nth-child(4){grid-column:1;margin-left:50%;width:100%}.category-tile:nth-child(5){grid-column:2;margin-left:50%;width:100%}.promo-grid{grid-template-columns:1fr;gap:15px;margin-bottom:26px;width:calc(100% - 24px)}.collection-section{margin-bottom:30px}.collection-banner{border-radius:8px}.collection-heading{padding:22px 16px 12px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:14px}.collection-heading h2{font-size:20px}.collection-heading>a{position:static;white-space:nowrap;font-size:11px}.product-carousel{padding:10px 12px 0}.products.book-row{gap:14px}.products.book-row li.book-card{flex-basis:calc((100% - 14px)/2);width:calc((100% - 14px)/2)!important}.book-card{border-radius:12px}.book-info{padding:11px}.book-info .woocommerce-loop-product__title,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px;min-height:76px;padding-right:12px;line-height:1.5}.book-info .wishlist-toggle{right:0;top:4px;padding:9px 4px;min-width:27px}.wishlist-toggle svg{width:15px;height:15px}.price,.woocommerce ul.products li.product .price{font-size:14px}.price del,.woocommerce ul.products li.product .price del{font-size:11px;margin-right:3px}.quick-view{opacity:1;transform:none;bottom:5px;right:5px;min-height:28px;min-width:28px;padding:5px}.quick-view svg{width:16px;height:16px}.sale-badge{top:7px;left:7px;font-size:10px}.carousel-arrow{width:28px;height:28px;min-width:28px;min-height:28px}.carousel-arrow svg{width:16px;height:16px}.carousel-arrow.previous{left:4px}.carousel-arrow.next{right:4px}.final-banner{margin:20px auto 28px}.service-strip{padding:28px 0}.service-grid{grid-template-columns:repeat(2,1fr);gap:25px 12px}.service:last-child{grid-column:1/-1}.service img{width:45px;height:45px;margin-bottom:9px}.service h3{font-size:13px}.footer-grid{gap:25px 22px;padding-bottom:25px}.footer-about{grid-column:1/-1}.footer-about p{max-width:none}.site-footer{padding-top:30px}.footer-grid h3{font-size:13px;margin:5px 0 15px}.footer-grid p,.footer-grid li{font-size:12px}.footer-bottom{display:block;font-size:11px;padding:18px 0}.footer-bottom span{display:block;margin:4px 0}.content-main,.shop-main{padding-top:24px;padding-bottom:35px}h1{font-size:29px}.woocommerce div.product .product_title{font-size:25px}.woocommerce ul.products:not(.book-row),ul.products.wishlist-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.woocommerce .woocommerce-result-count{font-size:11px}.woocommerce .woocommerce-ordering{max-width:54%}.woocommerce .woocommerce-ordering select{font-size:11px;width:100%}.quick-layout{grid-template-columns:1fr;gap:15px}.quick-image{max-height:220px}.quick-dialog{padding:28px 22px;max-height:90vh;overflow:auto}.quick-dialog h2{font-size:20px}.search-dialog{padding:24px 20px}.dialog-top h2{font-size:20px}.search-dialog form{flex-direction:column}.quick-price{margin-bottom:12px}.form-two{grid-template-columns:1fr;gap:0}.contact-form{padding:20px}.woocommerce table.shop_table td{padding:12px}.woocommerce-cart table.cart .product-thumbnail{display:block;text-align:center!important}.woocommerce-cart table.cart .product-thumbnail:before{display:none}.woocommerce-cart table.cart img{margin:auto}.button{padding:11px 20px}.store-toast{font-size:12px;text-align:center;width:max-content}}
@media(max-width:380px){.wordmark>span{font-size:25px}.header-actions{gap:0}.category-tile h3{font-size:12px}.collection-heading h2{font-size:17px}.collection-heading>a{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Featured collection banners. */
.home-slider{position:relative;background:#eef5f7;isolation:isolate}
.home-slides{position:relative;overflow:hidden}
.home-slide{visibility:hidden;opacity:0;position:absolute;inset:0;transition:opacity .5s ease,visibility .5s;pointer-events:none}
.home-slide.is-active{position:relative;visibility:visible;opacity:1;pointer-events:auto}
.home-slide-link{display:block;color:#102c46;text-decoration:none}
.home-slide-link>img{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:cover}
.home-slide-mobile{display:none}
.home-slider-controls[hidden]{display:none}
.home-slide-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:rgba(15,36,48,.55);color:#fff;font:36px/1 Arial;cursor:pointer;display:grid;place-items:center;padding:0 0 4px}
.home-slide-prev{left:16px}.home-slide-next{right:16px}
.home-slide-arrow:hover{background:#102c46}
.home-slide-toolbar{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;padding:2px 8px;background:rgba(255,255,255,.93);border-radius:24px;box-shadow:0 2px 10px #102c461a;z-index:2}
.home-slide-dot{width:28px;height:30px;border:0;background:none;cursor:pointer;display:grid;place-items:center;padding:0}
.home-slide-dot:after{content:'';width:8px;height:8px;border-radius:50%;background:#a4b2ba}
.home-slide-dot[aria-current=true]:after{background:#102c46;width:18px;border-radius:8px}
.home-slide-pause{width:30px;height:30px;border:0;border-left:1px solid #d6dfe3;background:none;color:#102c46;font-size:14px;cursor:pointer;padding:0}
.home-slider button:focus-visible,.home-slide-link:focus-visible{outline:3px solid #ee8d3a;outline-offset:-3px}
@media(max-width:700px){
.home-slide-link>img{aspect-ratio:1.65/1;object-fit:cover;object-position:right center}
.home-slide-mobile{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:18px 18px 62px;background:#f2f8fb}
.home-slide-mobile strong{font-size:26px;line-height:1.2;text-transform:uppercase;color:#102c46}
.home-slide-mobile>span{font-size:12px;color:#365266}
.home-slide-mobile b{display:inline-block;padding:10px 20px;margin-top:6px;border-radius:5px;background:#102c46;color:white;font-size:13px;text-transform:uppercase}
.home-slide-mobile b span{padding-left:8px}
.home-slide-arrow{top:28%;width:34px;height:34px;font-size:30px}.home-slide-prev{left:8px}.home-slide-next{right:8px}
.home-slide-toolbar{bottom:13px}
}
@media(prefers-reduced-motion:reduce){.home-slide{transition:none}}

/* Selected editorial category artwork, preserved from the approved sample. */
.editorial-category-grid{gap:16px;align-items:start}
.editorial-category-grid .category-tile{min-width:0}
.editorial-category-grid .category-tile img{width:100%;max-width:none;height:auto;aspect-ratio:420/508;object-fit:fill;border-radius:0;box-shadow:none}
.editorial-category-grid .category-tile h3{font-size:17px;font-weight:600;margin-top:12px}
@media(max-width:850px){.editorial-category-grid{gap:12px}.editorial-category-grid .category-tile h3{font-size:13px}}
@media(max-width:700px){.editorial-category-grid{width:calc(100% - 32px);grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.editorial-category-grid .category-tile:nth-child(4){grid-column:auto;margin-left:0;width:auto}.editorial-category-grid .category-tile:nth-child(5){grid-column:1/-1;justify-self:center;margin-left:0;width:calc((100% - 14px)/2)}.editorial-category-grid .category-tile h3{font-size:14px;margin-top:8px}}

/* Payment and trust strip. */
.footer-assurance{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.footer-assurance-inner{display:flex;align-items:center;justify-content:center;gap:36px;padding:22px 0}
.footer-payments{display:flex;align-items:center;gap:28px;flex-shrink:0}
.footer-payment-label{font-size:12px;font-weight:500;text-transform:uppercase;white-space:nowrap}
.footer-payments img{width:250px;height:auto}
.footer-trust{display:flex;align-items:center;justify-content:center;gap:30px;border-left:1px solid var(--border);padding-left:36px;margin:0}
.footer-trust li{display:flex;align-items:center;gap:10px;font-size:13px;white-space:nowrap}
.footer-trust-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;border-radius:50%;background:#f2f5f3;color:#25564c}
.footer-trust-icon svg{width:21px;height:21px}
.site-footer .footer-bottom{border-top:0}
@media(max-width:1100px){.footer-assurance-inner{flex-direction:column;gap:18px}.footer-trust{border-left:0;padding-left:0;gap:30px}}
@media(max-width:550px){.footer-assurance-inner{padding:22px 0;gap:20px}.footer-payments{flex-direction:column;gap:12px}.footer-payments img{width:250px;max-width:100%}.footer-trust{align-items:flex-start;justify-content:space-between;width:100%;gap:10px}.footer-trust li{flex:1;flex-direction:column;text-align:center;white-space:normal;gap:7px;font-size:11px;line-height:1.5}.footer-trust-icon{width:32px;height:32px}}

/* Contact details with matching teal line icons. */
.footer-contact{min-width:0}
.footer-grid .footer-contact h3{color:#156178;margin-bottom:30px}
.footer-contact h3:after{content:"";display:block;width:44px;height:3px;background:#156178;margin-top:13px}
.footer-contact-row{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:15px;margin-bottom:18px}
.footer-contact-icon{color:#156178;padding-top:2px}
.footer-contact-icon svg{width:23px;height:23px;stroke-width:1.8}
.footer-grid .footer-contact-row p{margin:0;line-height:1.5;overflow-wrap:anywhere}
.footer-contact-label{display:block;font-weight:500;margin-bottom:1px}
.footer-contact-row:last-child{margin-bottom:0}
@media(max-width:700px){.footer-contact{grid-column:1/-1}.footer-grid .footer-contact h3{margin-bottom:24px}.footer-contact-row{gap:14px;max-width:360px}.footer-grid .footer-contact-row p{font-size:13px}}

/* Compact mobile product purchase area. */
@media (max-width: 700px) {
  .single-product .shop-main { padding-top: 16px; }
  .single-product.woocommerce div.product div.images { margin-bottom: 18px; }
  .single-product.woocommerce div.product div.images .woocommerce-product-gallery__image img { height: 200px; max-height: 200px; width: 100%; object-fit: contain; }
  .single-product.woocommerce div.product div.summary { display: flex; flex-direction: column; margin-bottom: 24px; }
  .single-product.woocommerce div.product div.summary > * { order: 20; }
  .single-product.woocommerce div.product div.summary > .product_title { order: 1; font-size: 22px; line-height: 1.35; margin-bottom: 10px; }
  .single-product.woocommerce div.product div.summary > .woocommerce-product-rating { order: 2; margin-bottom: 10px; }
  .single-product.woocommerce div.product div.summary > .price { order: 3; font-size: 23px; margin-bottom: 12px; }
  .single-product.woocommerce div.product div.summary > .stock { order: 4; }
  .single-product.woocommerce div.product div.summary > form.cart { order: 5; margin: 0 0 16px; }
  .single-product.woocommerce div.product form.cart:not(.variations_form):not(.grouped_form) { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
  .single-product.woocommerce div.product form.cart div.quantity { margin: 0; }
  .single-product.woocommerce div.product form.cart .single_add_to_cart_button { min-height: 48px; flex: 1; }
  .single-product.woocommerce .quantity .qty { min-height: 48px; }
  .single-product.woocommerce div.product .woocommerce-product-details__short-description { font-size: 14px; line-height: 1.65; }
}

/* Book product layout. Scoped to product pages to preserve the rest of the store. */
.single-product .shop-main{max-width:1230px;padding-top:22px}
.single-product .woocommerce-breadcrumb{margin-bottom:38px;line-height:1.7}
.single-product.woocommerce div.product div.images{width:51%;margin-bottom:38px;padding:24px 22px 0}
.single-product.woocommerce div.product div.images img{width:100%;height:620px;max-height:620px;object-fit:contain}
.single-product.woocommerce div.product div.summary{width:43%;margin-bottom:38px}
.single-product.woocommerce div.product .product_title{font-size:28px;font-weight:600;line-height:1.25;margin-bottom:16px}
.single-product.woocommerce div.product .summary>.stock{display:none}
.bs-availability{display:inline-flex;align-items:center;gap:8px;border-radius:24px;background:#edf7ef;color:#246335;padding:8px 15px;font-size:12px;font-weight:500;margin:0 0 12px}
.bs-availability svg{width:20px;height:20px}
.bs-availability.out-of-stock{background:#fff1ee;color:#943520}
.bs-availability.available-on-backorder{background:#fff2dd;color:#815700}
.single-product.woocommerce div.product p.price{color:#d34158;font-size:34px;font-weight:600;line-height:1.35;margin-bottom:18px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.single-product.woocommerce div.product p.price del{font-size:15px;order:2;color:#777}
.single-product.woocommerce div.product p.price ins{order:1;text-decoration:none}
.bs-product-meta{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:12px;line-height:1.7;margin-bottom:16px;color:#555;overflow-wrap:anywhere}
.bs-product-meta strong{font-weight:500;color:#191919}
.bs-product-meta a{text-decoration:underline;text-underline-offset:3px}
.bs-product-facts{border:1px solid #e6ded5;border-radius:18px;padding:10px 20px;margin:0 0 18px;box-shadow:0 5px 18px #765b3a06;font-size:12px}
.bs-product-facts>div{display:grid;grid-template-columns:20px 108px minmax(0,1fr);align-items:start;gap:12px;padding:10px 0;border-bottom:1px solid #f1efed}
.bs-product-facts>div:last-child{border-bottom:0}
.bs-product-facts svg{width:18px;height:18px;color:#d77731}
.bs-product-facts dt{font-weight:500;color:#202020}
.bs-product-facts dd{margin:0;color:#555;overflow-wrap:anywhere}
.single-product .woocommerce-product-details__short-description{padding:18px 20px;border-radius:10px;background:#fff0e1;font-size:13px;line-height:1.55;margin-bottom:24px}
.single-product .woocommerce-product-details__short-description p{margin-bottom:9px}
.single-product .woocommerce-product-details__short-description p:last-child{margin-bottom:0}
.single-product.woocommerce div.product form.cart:not(.variations_form):not(.grouped_form){display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:0}
.single-product.woocommerce div.product form.cart div.quantity{display:flex;align-items:center;border:1px solid #d7d2cc;border-radius:28px;overflow:hidden;margin:0;flex:0 0 auto}
.single-product.woocommerce .quantity .qty{border:0;border-radius:0;width:44px;padding:10px 0;min-height:48px;-moz-appearance:textfield}
.single-product.woocommerce .quantity .qty::-webkit-inner-spin-button,.single-product.woocommerce .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.bs-quantity-step{border:0;background:transparent;width:38px;height:48px;padding:0;font-size:19px;color:#222}
.bs-quantity-step[hidden]{display:none}
.bs-quantity-step:hover{background:#f7f3ee}
.single-product.woocommerce div.product form.cart .single_add_to_cart_button{flex:1;min-height:48px;border-radius:28px;background:linear-gradient(110deg,#ed862f,#e96d25);color:#191919;border:0;font-size:16px;font-weight:500;box-shadow:0 5px 15px #e9832929;padding:12px 18px}
.single-product.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:#b85017;color:#fff}
.bs-purchase-note{flex:0 0 100%;display:flex;align-items:flex-start;gap:12px;border:1px dashed #d9cbbd;border-radius:12px;background:#fdfaf6;padding:16px;font-size:12px;line-height:1.6}
.bs-purchase-note>svg{width:24px;height:24px;flex-shrink:0;color:#bd641f}
.bs-purchase-note strong,.bs-purchase-note span{display:block}
.bs-purchase-note strong{font-size:13px;font-weight:500;margin-bottom:4px}
.bs-purchase-note span{color:#666}
.bs-purchase-note a{text-decoration:underline;text-underline-offset:3px;display:inline-block;margin-top:5px}
.bs-purchase-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%}
.single-product.woocommerce div.product form.cart .bs-buy-now{border-radius:26px;min-height:48px;background:#161616;border-color:#161616;color:#fff;font-size:15px;padding:11px 16px}
.single-product.woocommerce div.product form.cart .bs-buy-now:hover{background:#3d3d3d}
.bs-bulk-order{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #343434;border-radius:26px;min-height:48px;font-size:15px;font-weight:500;padding:10px}
.bs-bulk-order svg{width:19px;height:19px}
.bs-product-services{clear:both;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #f2e9df;border-radius:16px;background:#fff;padding:18px 8px;box-shadow:0 5px 24px #dca35c20;margin:25px 0 42px}
.bs-product-services a{display:flex;align-items:center;gap:10px;padding:0 14px;border-right:1px solid #e6ded5;min-width:0}
.bs-product-services a:last-child{border-right:0}
.bs-product-services svg{width:33px;height:33px;flex-shrink:0;color:#d8772e}
.bs-product-services strong{display:block;font-size:12px;font-weight:500}
.bs-product-services small{display:block;font-size:10px;line-height:1.5;margin-top:2px;color:#555}
.single-product.woocommerce .related.products{padding-top:0;margin-bottom:42px}
.single-product.woocommerce .related.products>h2{font-size:25px;font-weight:600;margin-bottom:24px}
.single-product.woocommerce .related ul.products{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.single-product.woocommerce div.product .woocommerce-tabs{clear:both;margin-top:34px}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;justify-content:center;gap:28px;padding:0;flex-wrap:wrap}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li{padding:0;margin:0}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-weight:500;padding:16px 2px;font-size:16px}
.single-product.woocommerce div.product .woocommerce-tabs .panel{font-size:14px;line-height:1.9;padding:20px 0}
.single-product .woocommerce-tabs .panel h2{font-size:23px;font-weight:500;margin-top:20px}
.single-product .woocommerce-tabs .panel ul{list-style:disc;padding-left:22px}
.single-product .woocommerce-tabs .panel dl{display:grid;grid-template-columns:180px 1fr;max-width:800px;margin-block:20px;border-top:1px solid var(--border)}
.single-product .woocommerce-tabs .panel dt,.single-product .woocommerce-tabs .panel dd{margin:0;padding:10px 12px;border-bottom:1px solid var(--border)}
.single-product .woocommerce-tabs .panel dt{background:#faf8f5;font-weight:500}
@media(max-width:1000px){.single-product.woocommerce div.product div.images{width:47%;padding-inline:0}.single-product.woocommerce div.product div.summary{width:49%}.bs-product-facts{padding:8px 14px}.bs-product-facts>div{grid-template-columns:18px 96px minmax(0,1fr);gap:8px}.bs-product-services{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.bs-product-services a{border:0}.single-product.woocommerce .related ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:768px){.single-product .woocommerce-breadcrumb{margin-bottom:18px}.single-product.woocommerce div.product div.images{float:none;width:100%;padding:0;margin-bottom:20px}.single-product.woocommerce div.product div.images img,.single-product.woocommerce div.product div.images .woocommerce-product-gallery__image img{height:240px;max-height:240px;width:100%;object-fit:contain}.single-product.woocommerce div.product div.summary{float:none;width:100%;display:flex;flex-direction:column;margin-bottom:28px}.single-product.woocommerce div.product div.summary>*{order:20}.single-product.woocommerce div.product div.summary>.product_title{order:1;font-size:23px;line-height:1.3;margin-bottom:12px}.single-product.woocommerce div.product div.summary>.woocommerce-product-rating{order:2}.single-product.woocommerce div.product div.summary>.bs-availability{order:3;align-self:flex-start;margin-bottom:10px}.single-product.woocommerce div.product div.summary>.price{order:4;font-size:29px;margin-bottom:14px}.single-product.woocommerce div.product div.summary>form.cart{order:5;margin-bottom:22px}.single-product.woocommerce div.product div.summary>.bs-product-meta{order:6}.single-product.woocommerce div.product div.summary>.bs-product-facts{order:7}.single-product.woocommerce div.product div.summary>.woocommerce-product-details__short-description{order:8;font-size:13px}.bs-product-services{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 30px;padding:20px 6px}.bs-product-services a{padding:0 8px}.bs-product-services a:last-child{grid-column:1/-1;justify-content:center}.single-product.woocommerce .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.single-product.woocommerce div.product .woocommerce-tabs ul.tabs{justify-content:flex-start;gap:16px}.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:13px;padding:13px 0}.single-product .woocommerce-tabs .panel dl{grid-template-columns:120px 1fr}.bs-product-facts>div{grid-template-columns:18px 102px minmax(0,1fr)}.bs-purchase-note{padding:14px;font-size:11px}.bs-purchase-note strong{font-size:12px}.single-product.woocommerce div.product form.cart:not(.variations_form):not(.grouped_form){gap:13px}}
