/* Bashem Crafts — component overrides on Twenty Twenty-Five + WooCommerce.
   Palette/type from theme.json; this nudges layout + WooCommerce toward the brand. */

:root {
  --bsh-primary: #2D5016;
  --bsh-primary-dark: #1f390f;
  --bsh-accent: #C9952A;
  --bsh-accent-dark: #a87a1d;
  --bsh-cream: #F7F2E8;
  --bsh-line: #e6ddca;
}

/* ---- kill the stray front-page title ---- */
.home .wp-block-post-title,
.page-id-24 .wp-block-post-title { display: none !important; }

/* ---- header: logo as a round badge ---- */
.wp-block-site-logo img { width: 48px; height: 48px; border-radius: 50%; }
.wp-block-site-title a { font-family: "Fraunces", Georgia, serif; color: var(--bsh-primary-dark); text-decoration: none; font-weight: 600; }
header .wp-block-navigation a { font-weight: 600; color: var(--bsh-primary-dark); }

/* ---- HERO ---- */
.bsh-hero { min-height: 540px; }
.bsh-hero .wp-block-column { align-self: stretch; }
.bsh-hero .has-primary-background-color { display: flex; flex-direction: column; justify-content: center; }
.bsh-eyebrow {
  font-weight: 700; font-size: .74rem; letter-spacing: .18em;
  text-transform: uppercase; color: var(--bsh-accent-dark);
}
.bsh-hero .bsh-eyebrow { color: var(--bsh-accent); }

/* placeholder photo frames */
.bsh-ph {
  display: flex; align-items: center; justify-content: center; text-align: center;
  border: 2px dashed var(--bsh-accent);
  color: var(--bsh-accent-dark);
  background:
    linear-gradient(135deg, rgba(201,149,42,.06) 25%, transparent 25%, transparent 50%, rgba(201,149,42,.06) 50%, rgba(201,149,42,.06) 75%, transparent 75%) 0 0 / 22px 22px,
    var(--bsh-cream);
  border-radius: 6px;
}
.bsh-hero .has-cream-background-color { padding: 2.5rem; }
.bsh-rounded img { border-radius: 8px; display: block; width: 100%; height: auto; }

/* single product brand touches */
.bsh-ship { color: #3f6a22; font-weight: 600; font-size: .98rem; margin: .3rem 0 1rem; }
.bsh-variance {
  background: #fbf7ee; border-left: 3px solid var(--bsh-accent);
  padding: 12px 15px; border-radius: 4px; font-size: .92rem; color: #5a5340;
  margin: 1.1rem 0; max-width: 48ch;
}
.woocommerce div.product .product_title { margin-bottom: .2rem; }
.woocommerce div.product p.price { margin-bottom: .4rem; }

/* ---- WooCommerce buttons -> ochre gold ---- */
.woocommerce a.button, .woocommerce button.button, .woocommerce .button,
.wc-block-components-button, .wp-block-button__link {
  background-color: var(--bsh-accent) !important;
  color: #fff !important; border-radius: 4px !important; font-weight: 600; border: 0;
}
.is-style-outline .wp-block-button__link {
  background: transparent !important; color: var(--bsh-primary-dark) !important;
  border: 1.5px solid currentColor !important;
}
/* outline button on the dark green hero needs light text/border */
.bsh-hero .is-style-outline .wp-block-button__link { color: #fff !important; border-color: #fff !important; }

/* close the white gap between header and hero on the front page */
body.home { padding-top: 0 !important; }
.home .wp-site-blocks { padding-top: 0 !important; }
.home .wp-site-blocks > * { margin-top: 0 !important; margin-block-start: 0 !important; }
.home .entry-content.wp-block-post-content { margin: 0 !important; padding-top: 0 !important; }
.home .entry-content.wp-block-post-content > :first-child { margin-top: 0 !important; margin-block-start: 0 !important; }
.home .bsh-hero { margin-top: 0 !important; margin-block-start: 0 !important; }
.home header.wp-block-template-part { margin-bottom: 0 !important; }
.home .wp-block-post-content.has-global-padding { padding-top: 0 !important; padding-block-start: 0 !important; }
.home .entry-content > .wp-block-columns:first-child { margin-block-start: 0 !important; }
.woocommerce a.button:hover, .woocommerce button.button:hover,
.wc-block-components-button:hover, .wp-block-button__link:hover { background-color: var(--bsh-accent-dark) !important; }

/* ---- prices + product cards ---- */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price, .woocommerce .price { color: var(--bsh-primary-dark); font-weight: 700; }
.woocommerce ul.products li.product {
  border: 1px solid var(--bsh-line); border-radius: 12px; overflow: hidden;
  padding: 0 0 16px; text-align: center; transition: box-shadow .18s, transform .18s; background:#fff;
}
.woocommerce ul.products li.product:hover { box-shadow: 0 8px 28px rgba(31,57,15,.08); transform: translateY(-3px); }
.woocommerce ul.products li.product img { margin: 0 0 12px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: "Fraunces", Georgia, serif; font-size: 1.05rem; color: var(--bsh-primary-dark); padding: 0 14px;
}
.woocommerce ul.products li.product .button { margin-top: 8px; }
.woocommerce span.onsale { background: var(--bsh-primary); color:#fff; border-radius: 999px; }

/* tighten WooCommerce product grid gap */
.woocommerce ul.products { gap: 24px; }

/* ---- accessibility: contrast fixes (WCAG AA) ---- */
/* product titles are links -> force forest green (gold-on-white failed contrast) */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.woocommerce-loop-product__link,
.woocommerce ul.products li.product .woocommerce-loop-product__title a { color: var(--bsh-primary-dark) !important; }
/* darken gold buttons so white text clears AA for large text */
.woocommerce a.button, .woocommerce button.button, .woocommerce .button,
.wc-block-components-button, .wp-block-button__link.has-accent-background-color,
.forminator-button-submit, .forminator-custom-form button[type="submit"] {
  background-color: var(--bsh-accent-dark) !important;
}

/* Forminator contact form — brand the submit button to ochre gold */
.forminator-ui .forminator-button-submit,
.forminator-custom-form button[type="submit"] {
  background-color: var(--bsh-accent) !important;
  border-color: var(--bsh-accent) !important;
}
.forminator-ui .forminator-button-submit:hover,
.forminator-custom-form button[type="submit"]:hover {
  background-color: var(--bsh-accent-dark) !important;
  border-color: var(--bsh-accent-dark) !important;
}
