/* BlueBio — brand system (coastal botanical) */
:root{
  --bb-ink:#16303a; --bb-ink-soft:#3d5a63; --bb-mist:#eef4f4; --bb-paper:#f7fafa;
  --bb-sea:#2f6f7e; --bb-sea-dk:#1f5563; --bb-line:#dbe7e7; --bb-leaf:#6f9a7d;
  --bb-serif:'Fraunces',Georgia,'Palatino Linotype',serif;
  --bb-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
}
body{background:var(--bb-paper);color:var(--bb-ink);font-family:var(--bb-sans);}
h1,h2,h3,h4,.bb-serif{font-family:var(--bb-serif);font-weight:600;letter-spacing:-.01em;color:var(--bb-ink);}
a{color:var(--bb-sea-dk);}
.ast-container,.site-content .ast-container{max-width:1240px;}

/* header */
.site-header,.ast-primary-header-bar{background:var(--bb-paper)!important;border-bottom:1px solid var(--bb-line);}
.site-header .custom-logo-link img,.ast-site-identity .custom-logo-link img{max-height:56px;width:auto;}
.main-header-menu a{font-family:var(--bb-sans);font-size:.82rem;letter-spacing:.09em;text-transform:uppercase;color:var(--bb-ink)!important;}
.main-header-menu a:hover{color:var(--bb-sea-dk)!important;}
.main-header-menu .sub-menu a{text-transform:none;letter-spacing:.02em;font-size:.9rem;}
.site-title,.ast-site-title-wrap .site-title{display:none!important;}

/* buttons */
.button,.wp-block-button__link,.ast-custom-button,button.single_add_to_cart_button,#place_order,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:var(--bb-sea)!important;border:0!important;color:#fff!important;border-radius:6px!important;
  letter-spacing:.02em;font-weight:600;box-shadow:none!important;}
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,#place_order:hover{
  background:var(--bb-sea-dk)!important;}

/* product grid */
.woocommerce ul.products li.product{display:flex!important;flex-direction:column!important;
  background:#fff;border:1px solid var(--bb-line);border-radius:12px;overflow:hidden;
  padding:0 0 18px 0;transition:box-shadow .2s,transform .2s;}
.woocommerce ul.products li.product:hover{box-shadow:0 12px 34px rgba(22,48,58,.10);transform:translateY(-3px);}
.woocommerce ul.products li.product a img{margin:0 0 14px 0;border-radius:0;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--bb-serif);font-size:1.02rem;padding:0 16px;color:var(--bb-ink);}
.woocommerce ul.products li.product .price{padding:6px 16px 12px;color:var(--bb-ink-soft);font-weight:600;
  position:static!important;float:none!important;transform:none!important;}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{margin:0 16px;position:static!important;float:none!important;transform:none!important;}
.ast-on-card-button,.ast-card-action-tooltip,.ast-select-options-trigger{display:none!important;}
.astra-shop-summary-wrap{display:flex;flex-direction:column;}
.woocommerce-product-gallery{opacity:1!important;}

/* single product */
.single-product div.product .product_title{font-family:var(--bb-serif);}
.single-product div.product p.price,.single-product div.product span.price{color:var(--bb-ink);}

/* footer */
.site-footer,.ast-small-footer{background:var(--bb-ink)!important;color:#cfe0e2;}
.site-footer a,.ast-small-footer a{color:#cfe0e2!important;}

/* hero + homepage sections (used by the hand-built front page) */
.bb-hero{background:linear-gradient(135deg,#16303a 0%,#2f6f7e 100%);color:#fff;padding:96px 24px;text-align:center;}
.bb-hero h1{color:#fff;font-size:clamp(2.1rem,4.6vw,3.4rem);margin:0 0 14px;}
.bb-hero p{color:#dcebec;font-size:1.12rem;max-width:640px;margin:0 auto 28px;}
.bb-hero .button{background:#fff!important;color:var(--bb-sea-dk)!important;}
.bb-band{max-width:1240px;margin:0 auto;padding:64px 24px;}
.bb-band h2{text-align:center;font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 8px;}
.bb-band .bb-sub{text-align:center;color:var(--bb-ink-soft);max-width:620px;margin:0 auto 40px;}
.bb-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;}
.bb-cat{position:relative;border-radius:14px;overflow:hidden;min-height:200px;display:flex;align-items:flex-end;
  background:var(--bb-mist);border:1px solid var(--bb-line);padding:20px;color:var(--bb-ink);font-family:var(--bb-serif);
  font-size:1.15rem;text-decoration:none;}
.bb-cat:hover{box-shadow:0 12px 30px rgba(22,48,58,.12);}
.bb-promise{background:var(--bb-mist);}
.bb-promise .bb-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;text-align:center;}
.bb-promise .bb-col h3{font-size:1.05rem;margin:12px 0 6px;}
.bb-promise .bb-col p{color:var(--bb-ink-soft);font-size:.95rem;}
