/* ==========================================================================
   HEARTH — storefront.css (v2 template pack)
   Design: Fraunces variable serif display + Inter body; full-bleed hero;
   block-theme container breakout; premium retail aesthetic.
   All hard-coded colors moved to :root vars so scripts/render.py can swap them.
   ========================================================================== */

:root {
  --bk-ink:         #202020;
  --bk-ink-2:       #26211f;
  --bk-muted:       #6a625b;
  --bk-bg:          #faf6ef;
  --bk-card:        #efe5da;
  --bk-line:        #e3d8cc;
  --bk-accent:      #8a594d;
  --bk-accent-2:    #c98a3a;
  --bk-deep:        #26211f;
  --bk-hero-dark:   #1f3028;
  --bk-hero-accent: #f4d8a4;
}

/* --- BLOCK-THEME CONTAINER BREAKOUT ---------------------------------------
   Kill twentytwentyfour/twentytwentyfive header + footer + fallback page-list.
   Un-trap main.wp-block-group so home content is full-bleed.
-------------------------------------------------------------------------- */
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part,
body > .wp-site-blocks > .wp-block-group > header.wp-block-template-part,
body > .wp-site-blocks > .wp-block-group > footer.wp-block-template-part { display:none !important; }

body.home .wp-block-page-list,
body.home .wp-block-navigation .wp-block-page-list { display:none !important; }

body.home main.wp-block-group,
body.home .entry-content,
body.home .wp-block-post-content,
body.home .wp-block-group.alignfull {
  max-width:none !important; width:100% !important; margin:0 !important; padding:0 !important;
}
body.home h1.wp-block-post-title,
body.home .wp-block-post-title { display:none !important; }
body.home .wp-site-blocks { padding-top:0 !important; padding-bottom:0 !important; }

/* --- WPAUTOP GRID BR FIX --------------------------------------------------
   WordPress' wpautop injects <br>/<p> between our <a> grid cards, and CSS
   Grid counts them as tracks (Z-pattern bug). Hide any non-<a> child of
   .bk-cats and any .products grid.
-------------------------------------------------------------------------- */
.bk-cats > *:not(a),
.bk-products .products > *:not(li) { display:none !important; }

/* --- GLOBAL / TYPO --------------------------------------------------------- */
* { box-sizing:border-box; }
html, body { margin:0; padding:0; }
body {
  font-family:"Inter","Helvetica Neue",Arial,sans-serif;
  font-size:16.5px; line-height:1.68; color:var(--bk-ink); background:var(--bk-bg);
  font-feature-settings:"ss01","cv11";
}
a { color:inherit; }
img { max-width:100%; display:block; }

.bk-eyebrow {
  display:inline-flex; align-items:center; gap:10px;
  font-size:12px; font-weight:800; letter-spacing:.28em; text-transform:uppercase;
  color:var(--bk-accent);
}
.bk-eyebrow:before { content:""; display:inline-block; width:36px; height:1px; background:var(--bk-accent); }

.bk-hero h1, .bk-section h2, .bk-cat-card span, .bk-service-card h3,
.bk-footer h3, .bk-newsletter h2, .woocommerce div.product .product_title {
  font-family:"Fraunces","Playfair Display",Georgia,serif;
  font-weight:600;
  letter-spacing:-.028em;
  font-variation-settings:"opsz" 96;
}
.bk-hero h1 { font-size:clamp(64px,7.4vw,124px); line-height:.94; letter-spacing:-.038em; font-variation-settings:"opsz" 120; }
.bk-hero h1 em, .bk-section h2 em {
  font-style:italic; font-weight:500; color:var(--bk-hero-accent);
  font-variation-settings:"opsz" 144;
}
.bk-section h2 em { color:var(--bk-accent); }
.bk-section h2 { font-size:clamp(42px,4.8vw,78px); line-height:.98; letter-spacing:-.045em; margin:0 0 22px; }

/* --- TOPBAR ---------------------------------------------------------------- */
.bk-topbar { background:var(--bk-ink-2); color:#fff; font-size:12px; letter-spacing:.14em; text-transform:uppercase; }
.bk-topbar-inner { max-width:1440px; margin:0 auto; padding:9px 6vw; display:flex; justify-content:center; gap:14px; flex-wrap:wrap; }
.bk-topbar .bk-dot { opacity:.5; }

/* --- HEADER ---------------------------------------------------------------- */
.bk-header {
  position:sticky; top:0; z-index:50;
  background:rgba(250,246,239,.94); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--bk-line);
}
.bk-header-inner {
  max-width:1440px; margin:0 auto; padding:16px 6vw;
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:22px;
}
.bk-logo { font-family:"Fraunces",serif; font-size:22px; font-weight:700; letter-spacing:.08em; text-decoration:none; }
.bk-nav { display:flex; gap:22px; justify-content:center; flex-wrap:wrap; }
.bk-nav a { font-size:12px; font-weight:700; letter-spacing:.18em; text-decoration:none; color:var(--bk-ink); }
.bk-nav a:hover { color:var(--bk-accent); }
.bk-cart { justify-self:end; font-size:12px; font-weight:800; letter-spacing:.18em; text-decoration:none; padding:9px 16px; border:1px solid var(--bk-ink); border-radius:2px; }
.bk-cart:hover { background:var(--bk-ink); color:#fff; }

/* Mobile toggle — hidden on desktop */
.bk-mobile-toggle { display:none; flex-direction:column; justify-content:center; gap:5px; background:none; border:none; cursor:pointer; padding:8px; -webkit-tap-highlight-color:transparent; }
.bk-mobile-toggle span { display:block; width:22px; height:2px; background:var(--bk-ink); border-radius:2px; transition:all .3s ease; }
.bk-mobile-toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.bk-mobile-toggle.active span:nth-child(2) { opacity:0; transform:scaleX(0); }
.bk-mobile-toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(6px,-6px); }

/* --- HOME WRAPPER — 100vw breakout ---------------------------------------- */
.bk-home { width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); overflow:hidden; }

/* --- HERO ------------------------------------------------------------------ */
.bk-hero { position:relative; height:min(820px,82vh); min-height:620px; overflow:hidden; background:var(--bk-hero-dark); }
.bk-slide { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; animation:bkFade 18s infinite; }
.bk-slide:nth-child(2) { animation-delay:6s; }
.bk-slide:nth-child(3) { animation-delay:12s; }
@keyframes bkFade { 0%,31% {opacity:1;} 36%,100% {opacity:0;} }
.bk-hero:after {
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg, rgba(20,31,26,.72), rgba(20,31,26,.22) 55%, rgba(20,31,26,.03));
}
.bk-hero-copy { position:relative; z-index:2; max-width:720px; margin-left:6vw; top:50%; transform:translateY(-50%); color:#fff; text-shadow:0 2px 24px rgba(0,0,0,.35); }
.bk-hero-copy .bk-eyebrow { color:var(--bk-hero-accent); }
.bk-hero-copy .bk-eyebrow:before { background:var(--bk-hero-accent); }
.bk-hero h1 { margin:22px 0 26px; color:#fff; }
.bk-hero p { font-size:21px; line-height:1.55; max-width:560px; margin:0 0 32px; color:rgba(255,255,255,.94); }
.bk-hero-cta { display:flex; gap:14px; flex-wrap:wrap; }

.bk-btn { display:inline-block; padding:14px 26px; font-size:13px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; text-decoration:none; border-radius:2px; }
.bk-btn-primary { background:var(--bk-hero-accent); color:var(--bk-ink-2); }
.bk-btn-primary:hover { background:#fff; }
.bk-btn-ghost { border:1px solid rgba(255,255,255,.7); color:#fff; }
.bk-btn-ghost:hover { background:#fff; color:var(--bk-ink); }
.bk-btn-ghost-light { border:1px solid rgba(255,255,255,.5); color:#fff; padding:12px 22px; margin-top:22px; }

/* --- SECTIONS -------------------------------------------------------------- */
.bk-section { padding:96px 6vw; }
.bk-section > .bk-eyebrow { display:flex; max-width:1400px; margin-left:auto; margin-right:auto; }
.bk-section > h2 { max-width:1400px; margin-left:auto; margin-right:auto; }
.bk-intro { background:var(--bk-bg); }
.bk-intro-grid { display:grid; grid-template-columns:1fr 1.2fr; gap:80px; align-items:start; max-width:1400px; margin:0 auto; }
.bk-lead { font-size:19px; line-height:1.65; color:var(--bk-ink); margin:0 0 32px; }
.bk-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; border-top:1px solid var(--bk-line); padding-top:28px; }
.bk-stat strong { display:block; font-family:"Fraunces",serif; font-weight:600; font-size:40px; letter-spacing:-.02em; color:var(--bk-accent); }
.bk-stat span { display:block; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--bk-muted); margin-top:4px; }

/* --- CATEGORIES ------------------------------------------------------------ */
.bk-cats-section { background:var(--bk-bg); }
.bk-cats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; margin-top:32px; max-width:1400px; margin-left:auto; margin-right:auto; }
.bk-cat-card {
  position:relative; min-height:430px; overflow:hidden;
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:28px; color:#fff; text-decoration:none;
  box-shadow:0 16px 44px rgba(36,56,47,.12);
  background:var(--bk-deep);
}
.bk-cat-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.bk-cat-card:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0), rgba(0,0,0,.62)); }
.bk-cat-card span, .bk-cat-card small { position:relative; z-index:1; }
.bk-cat-card span { font-family:"Fraunces",serif; font-size:32px; line-height:1; font-weight:700; }
.bk-cat-card small { font-size:13px; letter-spacing:.14em; text-transform:uppercase; opacity:.88; margin-top:8px; }
.bk-cat-card:hover img { transform:scale(1.04); }

/* --- WOOCOMMERCE PRODUCT GRIDS -------------------------------------------- */
.bk-products { background:var(--bk-bg); }
.bk-products .woocommerce, .bk-products .woocommerce-page { max-width:1400px; margin:32px auto 0; }
.bk-products ul.products,
.bk-products .wc-block-product-template,
.bk-products .wp-block-woocommerce-product-template {
  display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:26px !important; list-style:none !important; padding:0 !important; margin:0 !important;
}
.bk-products ul.products li.product { width:auto !important; margin:0 !important; padding:0 !important; float:none !important; }
.bk-products img { width:100% !important; max-width:100% !important; height:auto !important; object-fit:cover !important; }
.bk-products ul.products { overflow:hidden !important; max-width:100% !important; }
.bk-products ul.products li.product { overflow:hidden !important; }
.bk-products .price { color:var(--bk-ink) !important; font-weight:700 !important; font-size:16px !important; }
.bk-products .woocommerce-loop-product__title { font-family:"Inter",sans-serif !important; font-weight:600 !important; font-size:14.5px !important; letter-spacing:.02em !important; }

/* --- STORY ----------------------------------------------------------------- */
.bk-story { display:grid; grid-template-columns:420px 480px; gap:64px; justify-content:center; background:var(--bk-hero-dark); color:#fff; padding:0; }
.bk-story-media {  max-width:420px; width:100%; align-self:center;  margin:0;  min-height:460px; border-radius:12px;  background:    linear-gradient(rgba(20,31,26,.14), rgba(20,31,26,.14)),    radial-gradient(circle at 30% 30%, rgba(244,216,164,.35), transparent 50%),    radial-gradient(circle at 70% 70%, rgba(138,89,77,.55), transparent 55%),    var(--bk-hero-dark);}
.bk-story-copy { padding:60px 0; align-self:center; justify-self:start; max-width:480px; }
.bk-story-copy p { font-size:18px; line-height:1.65; color:rgba(255,255,255,.9); margin:22px 0 0; }

/* --- SERVICE --------------------------------------------------------------- */
.bk-service { background:var(--bk-bg); }
.bk-service-row { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; max-width:1400px; margin:0 auto; }
.bk-service-card { border-top:2px solid var(--bk-accent); padding:26px 0 0; }
.bk-service-card h3 { font-size:20px; margin:0 0 10px; }
.bk-service-card p { font-size:14.5px; line-height:1.6; color:var(--bk-muted); margin:0; }

/* --- NEWSLETTER ------------------------------------------------------------ */
.bk-newsletter { background:var(--bk-card); text-align:center; }
.bk-newsletter h2 { max-width:800px; margin:22px auto 12px; }
.bk-newsletter p { color:var(--bk-muted); max-width:520px; margin:0 auto 24px; }
.bk-newsletter-form { display:inline-flex; gap:0; width:100%; max-width:520px; }
.bk-newsletter-form input {
  flex:1; padding:14px 18px; border:1px solid var(--bk-line); border-right:none; border-radius:2px 0 0 2px; background:#fff; font:inherit;
}
.bk-newsletter-form button {
  padding:14px 22px; border:1px solid var(--bk-ink); background:var(--bk-ink); color:#fff;
  font-size:13px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; border-radius:0 2px 2px 0; cursor:pointer;
}

/* --- FOOTER ---------------------------------------------------------------- */
.bk-footer { background:var(--bk-ink-2); color:#fff; padding:80px 6vw 32px; }
.bk-footer-grid {
  max-width:1440px; margin:0 auto;
  display:grid; grid-template-columns:2.2fr 1fr 1fr 1.2fr; gap:56px; align-items:start;
}
.bk-footer-grid > div { min-width:0; }
.bk-footer h3 { color:#fff; font-family:"Fraunces",serif; font-size:26px; margin:0 0 14px; letter-spacing:-.02em; }
.bk-footer h4 { color:#fff; font-size:12px; font-weight:800; letter-spacing:.22em; text-transform:uppercase; margin:0 0 14px; }
.bk-footer a { display:block; color:rgba(255,255,255,.72); text-decoration:none; font-size:14px; padding:5px 0; }
.bk-footer a:hover { color:#fff; }
.bk-footer p.bk-muted { color:rgba(255,255,255,.62); font-size:14px; margin:0 0 8px; line-height:1.55; }
.bk-footer-bottom { max-width:1440px; margin:56px auto 0; padding-top:24px; border-top:1px solid rgba(255,255,255,.12); font-size:12.5px; color:rgba(255,255,255,.55); letter-spacing:.06em; }

/* --- PRODUCT DETAIL — service row ------------------------------------------ */
.bk-service-product { padding:60px 6vw 40px; background:var(--bk-bg); border-top:1px solid var(--bk-line); }

/* --- MOBILE ---------------------------------------------------------------- */
@media (max-width: 980px) {
  /* Header + Hamburger */
  .bk-header-inner { grid-template-columns:auto 1fr auto auto; gap:10px; padding:12px 16px; }
  .bk-header { backdrop-filter:none !important; }
  .bk-logo { font-size:18px; }
  .bk-mobile-toggle { display:flex; }
  .bk-cart { padding:7px 12px; font-size:11px; }

  /* Collapsible nav panel */
  .bk-nav {
    display:none; position:fixed; top:50px; left:0; right:0; bottom:0;
    background:#fff; flex-direction:column; padding:8px 0 24px;
    z-index:1001; overflow-y:auto; -webkit-overflow-scrolling:touch;
    box-shadow:0 4px 24px rgba(0,0,0,.18);
  }
  .bk-nav.open { display:flex; }
  .bk-nav a { padding:14px 20px; border-bottom:1px solid var(--bk-line); width:100%; min-height:48px; display:flex; align-items:center; font-size:13px; }
  .bk-nav a:active { background:var(--bk-card); }

  /* Topbar */
  .bk-topbar-inner { padding:7px 16px; font-size:11px; gap:8px; }

  /* Hero */
  .bk-hero { height:480px; min-height:380px; }
  .bk-hero-copy { margin:0 20px; top:auto; bottom:40px; transform:none; max-width:100%; }
  .bk-hero h1 { font-size:clamp(34px,9vw,48px); margin:14px 0 16px; }
  .bk-hero p { font-size:15px; margin-bottom:20px; }
  .bk-hero-cta { gap:10px; }
  .bk-btn { padding:11px 20px; font-size:12px; }
  .bk-btn-ghost { border:1px solid rgba(255,255,255,.9) !important; background:rgba(255,255,255,.1); }

  /* Sections */
  .bk-section { padding:48px 16px; }
  .bk-section h2 { font-size:clamp(28px,7vw,38px); }
  .bk-eyebrow { font-size:11px; gap:8px; }
  .bk-eyebrow:before { width:24px; }

  /* Intro */
  .bk-intro-grid { grid-template-columns:1fr; gap:28px; }
  .bk-lead { font-size:16px; }
  .bk-stats { grid-template-columns:1fr 1fr; gap:20px; }
  .bk-stat strong { font-size:32px; }

  /* Categories */
  .bk-cats { grid-template-columns:1fr 1fr; gap:14px; }
  .bk-cat-card { min-height:240px; padding:20px; }
  .bk-cat-card span { font-size:22px; }
  .bk-cat-card small { font-size:11px; }

  /* Products */
  .bk-products ul.products,
  .bk-products .wc-block-product-template,
  .bk-products .wp-block-woocommerce-product-template { grid-template-columns:repeat(2,1fr) !important; gap:14px !important; }
  .bk-products .woocommerce-loop-product__title { font-size:13px !important; }
  .bk-products .price { font-size:14px !important; }

  /* Story */
  .bk-story { grid-template-columns:1fr; gap:24px; }
  .bk-story-media { min-height:300px; max-width:100%; }
  .bk-story-copy { padding:32px 16px; max-width:100%; }
  .bk-story-copy p { font-size:16px; }

  /* Service */
  .bk-service-row { grid-template-columns:1fr 1fr; gap:20px; }
  .bk-service-card h3 { font-size:17px; }
  .bk-service-card p { font-size:13px; }

  /* Newsletter */
  .bk-newsletter-form { flex-direction:column; max-width:100%; }
  .bk-newsletter-form input { border-radius:2px; border-right:1px solid var(--bk-line); margin-bottom:8px; }
  .bk-newsletter-form button { border-radius:2px; }

  /* Footer */
  .bk-footer { padding:48px 16px 24px; }
  .bk-footer-grid { grid-template-columns:1fr 1fr; gap:32px 16px; }
  .bk-footer-grid > div:first-child { grid-column:1 / -1; }
  .bk-footer h3 { font-size:22px; }
  .bk-footer a { font-size:13px; }
  .bk-footer-bottom { font-size:11px; margin-top:32px; }

  /* Product detail */
  .woocommerce div.product { padding:20px 12px; flex-direction:column; gap:24px; }
  .woocommerce div.product div.images, .woocommerce div.product .summary { width:100% !important; }
  .woocommerce div.product .product_title { font-size:22px !important; }
  .woocommerce div.product .price { font-size:20px !important; }
  .woocommerce div.product form.cart .button { width:100%; padding:14px !important; }

  /* Page content */
  body.page:not(.home):not(.single-product) .ast-article-single { padding:32px 16px 48px !important; }
  body.page:not(.home):not(.single-product) .entry-header { padding:24px 16px 0 !important; }
  body.page:not(.home):not(.single-product) .entry-header h1 { font-size:26px !important; }
  body.page:not(.home):not(.single-product) .entry-content h2 { font-size:20px !important; }
  body.page:not(.home):not(.single-product) .entry-content p { font-size:14px !important; }

  /* Prevent overflow */
  body { overflow-x:hidden; position:relative; }
  .bk-home { width:100%; max-width:100%; margin-left:0; }

  /* WC notices */
  .woocommerce-message, .woocommerce-info, .woocommerce-error { padding:10px 14px !important; font-size:13px; }
  .woocommerce table.shop_table { font-size:13px; }
  .woocommerce table.shop_table th, .woocommerce table.shop_table td { padding:8px 6px; }
}

/* Small phones */
@media (max-width: 480px) {
  .bk-hero { height:420px; min-height:340px; }
  .bk-hero h1 { font-size:28px; }
  .bk-hero p { font-size:14px; }
  .bk-cats { gap:10px; }
  .bk-cat-card { min-height:200px; padding:16px; }
  .bk-cat-card span { font-size:18px; }
  .bk-products ul.products,
  .bk-products .wc-block-product-template,
  .bk-products .wp-block-woocommerce-product-template { gap:10px !important; }
  .bk-service-row { grid-template-columns:1fr; }
  .bk-section { padding:36px 12px; }
  .bk-footer-grid { grid-template-columns:1fr 1fr; gap:24px 12px; }
  .bk-stats { grid-template-columns:1fr; gap:12px; }
}

/* Very small phones */
@media (max-width: 360px) {
  .bk-hero { height:380px; }
  .bk-hero h1 { font-size:24px; }
  .bk-cats { grid-template-columns:1fr; }
  .bk-footer-grid { grid-template-columns:1fr; }
}

/* Hide star ratings — 0-review store */
.star-rating, .star-rating span, .wc-block-grid__product-rating { display: none !important; }

/* Footer company info */
.bk-footer-company { margin-top: 16px; padding: 16px; border-radius: 8px; background: rgba(255,255,255,.92); }
.bk-footer-company .bk-company-name { font-weight: 700; color: #000 !important; font-size: 13px; margin-bottom: 4px; }
.bk-footer-company p { font-size: 12px !important; line-height: 1.6 !important; margin-bottom: 4px !important; color: #333 !important; }

/* ===== PRODUCT DETAIL PAGE ===== */
/* Spec table */
.bk-spec-table { width: 100%; border-collapse: collapse; margin: 16px 0; }
.bk-spec-table td { padding: 8px 0; border-bottom: 1px solid var(--bk-line); font-size: 13.5px; }
.bk-spec-table td:first-child { font-weight: 600; color: var(--bk-ink); width: 40%; }
.bk-spec-table td:last-child { color: var(--bk-muted); }

/* Hide availability stock text */
.single-product .stock, .single-product .in-stock, .single-product .ast-stock-detail, .ast-stock-detail { display: none !important; }

/* Hide review elements */
.woocommerce-Reviews, .woocommerce-noreviews, #reviews, .reviews_tab { display: none !important; }

/* Product image */
.woocommerce div.product div.images img { border-radius: 8px; }
.woocommerce div.product div.images { margin-bottom: 24px; }

/* Product summary */
.woocommerce div.product .summary { padding: 0 20px; }
.woocommerce div.product div.images, .woocommerce div.product .summary { width: 48% !important; float: none !important; }
.woocommerce div.product { display: flex; flex-wrap: wrap; gap: 40px; max-width: 1300px; margin: 0 auto; padding: 40px 20px; align-items: flex-start; }
.woocommerce div.product::after { display: none !important; }

/* Product title */
.woocommerce div.product .product_title { font-size: 28px !important; margin-bottom: 8px !important; }

/* Price */
.woocommerce div.product .price { font-size: 22px !important; color: var(--bk-ink) !important; font-weight: 700; margin-bottom: 16px !important; }

/* Short description */
.woocommerce div.product .short-description { margin-bottom: 20px; }
.woocommerce div.product .short-description p { font-size: 15px; line-height: 1.7; color: var(--bk-muted); }

/* Add to cart button */
.woocommerce div.product form.cart .button { background: var(--bk-ink) !important; color: #fff !important; border-radius: 4px !important; padding: 14px 36px !important; font-weight: 600 !important; font-size: 14px !important; text-transform: uppercase; letter-spacing: 0.05em; }
.woocommerce div.product form.cart .button:hover { background: var(--bk-deep) !important; }

/* Quantity input */
.woocommerce .quantity .qty { padding: 10px; border: 1px solid var(--bk-line); border-radius: 4px; }

/* Product meta */
.product_meta { font-size: 12px; color: var(--bk-muted); margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--bk-line); }
.product_meta .sku_wrapper, .product_meta .posted_in { display: block; margin-bottom: 4px; }

/* Tabs — keep only Description */
.woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom: 1px solid var(--bk-line); margin-bottom: 20px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: none; background: transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom: 2px solid var(--bk-ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--bk-muted); font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; }

/* Breadcrumb */
.woocommerce-breadcrumb { font-size: 12px; color: var(--bk-muted); margin-bottom: 20px; }

/* Category badge */
.single-product .posted_in a { color: var(--bk-accent); font-weight: 600; }

/* Mobile */
@media (max-width: 768px) {
  .woocommerce div.product div.images, .woocommerce div.product .summary { width: 100% !important; }
  .woocommerce div.product { padding: 20px 16px; gap: 24px; }
}


/* ===== PAGE CONTENT (About, Contact, FAQ, Policy — NOT home/product/shop) ===== */
body.page:not(.home):not(.single-product) .ast-article-single {
  max-width: 860px !important;
  margin: 0 auto !important;
  padding: 60px 40px 80px !important;
  background: #fff;
}
body.page:not(.home):not(.single-product) .entry-content {
  max-width: 860px !important;
  margin: 0 auto !important;
}
body.page:not(.home):not(.single-product) .entry-header {
  max-width: 860px !important;
  margin: 0 auto !important;
  padding: 48px 40px 0 !important;
  text-align: center;
}
body.page:not(.home):not(.single-product) .entry-header h1 {
  font-family: 'Fraunces', serif !important;
  font-size: 32px !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 0 !important;
}
body.page:not(.home):not(.single-product) .entry-content h2 {
  font-family: 'Fraunces', serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  color: var(--bk-ink) !important;
  margin: 40px 0 16px !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
}
body.page:not(.home):not(.single-product) .entry-content h3 {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--bk-ink) !important;
  margin: 28px 0 12px !important;
  text-transform: uppercase;
  letter-spacing: 0.04em !important;
}
body.page:not(.home):not(.single-product) .entry-content p {
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: var(--bk-muted) !important;
  margin: 0 0 20px !important;
}
body.page:not(.home):not(.single-product) .entry-content ul,
body.page:not(.home):not(.single-product) .entry-content ol {
  margin: 0 0 20px !important;
  padding-left: 20px !important;
}
body.page:not(.home):not(.single-product) .entry-content li {
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: var(--bk-muted) !important;
  margin-bottom: 8px !important;
}
body.page:not(.home):not(.single-product) .entry-content li strong {
  color: var(--bk-ink) !important;
  font-weight: 600 !important;
}
body.page:not(.home):not(.single-product) .entry-content a {
  color: var(--bk-accent) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--bk-line) !important;
  text-underline-offset: 3px !important;
}
body.page:not(.home):not(.single-product) .entry-content a:hover {
  text-decoration-color: var(--bk-accent) !important;
}
body.page:not(.home):not(.single-product) .bk-company-info {
  border-left: 3px solid var(--bk-accent) !important;
  border-radius: 0 8px 8px 0 !important;
}

/* Breadcrumb on pages only */
body.page:not(.home):not(.single-product) .woocommerce-breadcrumb {
  max-width: 860px !important;
  margin: 0 auto 20px !important;
  padding: 20px 40px 0 !important;
}

/* Mobile — page content only */
@media (max-width: 768px) {
  body.page:not(.home):not(.single-product) .ast-article-single {
    padding: 32px 20px 60px !important;
  }
  body.page:not(.home):not(.single-product) .entry-header {
    padding: 32px 20px 0 !important;
  }
  body.page:not(.home):not(.single-product) .woocommerce-breadcrumb {
    padding: 16px 20px 0 !important;
  }
  body.page:not(.home):not(.single-product) .entry-content h2 {
    font-size: 19px !important;
  }
}
