/*
Theme Name: Flowers by Hand
Theme URI: https://flowersbyhand.com
Author: Flowers by Hand
Description: Storefront theme for Flowers by Hand: handmade flowers, bows and decor.
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: flowersbyhand
*/

:root{
  --fbh-ink:var(--wp--preset--color--ink);
  --fbh-muted:var(--wp--preset--color--muted);
  --fbh-line:var(--wp--preset--color--line);
  --fbh-berry:var(--wp--preset--color--berry);
  --fbh-sage:var(--wp--preset--color--sage);
  --fbh-soft:var(--wp--preset--color--soft);
  --fbh-surface:var(--wp--preset--color--surface);
  --fbh-shadow:0 18px 40px -22px rgba(46,26,43,.35);
}
h1,h2,h3{text-wrap:balance}
:focus-visible{outline:2px solid var(--fbh-berry);outline-offset:3px}

/* header */
.wp-site-blocks > header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:50}
.fbh-announce{background:var(--fbh-ink);color:var(--wp--preset--color--paper);font-size:13px;font-weight:600;padding-block:8px}
.fbh-announce p{margin:0}
.fbh-header{background:color-mix(in srgb,var(--wp--preset--color--paper) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--fbh-line);padding-block:14px}
.fbh-header .wp-block-site-title{font-family:var(--wp--preset--font-family--display);font-size:26px;margin:0}
.fbh-header .wp-block-site-title a{color:var(--fbh-ink);text-decoration:none}
.fbh-header .wp-block-navigation a{font-weight:700;text-decoration:none}
.fbh-header .wp-block-navigation a:hover{color:var(--fbh-berry)}
.fbh-header .wc-block-mini-cart__button{border:1px solid var(--fbh-line);background:var(--fbh-surface);border-radius:999px;padding:8px 14px}

/* eyebrow labels */
.fbh-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--fbh-sage);margin-bottom:0}

/* hero */
.fbh-hero{padding-block:48px 24px}
.fbh-hero h1 em{font-style:normal;color:var(--fbh-berry)}
.fbh-hero .fbh-lede{font-size:18px;color:var(--fbh-muted);max-width:46ch}
.fbh-promise{display:flex;gap:22px;flex-wrap:wrap;font-size:14px;font-weight:700;color:var(--fbh-muted)}
.fbh-promise strong{color:var(--fbh-ink)}
.fbh-hero-art{position:relative;aspect-ratio:1/1;max-width:100%;border-radius:48% 52% 44% 56%/52% 44% 56% 48%;background:var(--fbh-soft);display:grid;place-items:center;overflow:hidden}
.fbh-hero-art svg{width:88%;height:88%}
.fbh-hero-wrap{position:relative;max-width:520px;margin-inline:auto}
.fbh-tag--top{top:8%;left:0}
.fbh-tag--bottom{bottom:10%;right:0}
.fbh-tag{position:absolute;white-space:nowrap;background:var(--fbh-surface);border:1px solid var(--fbh-line);border-radius:14px;padding:10px 14px;font-size:13px;font-weight:700;box-shadow:var(--fbh-shadow)}
.fbh-tag small{display:block;color:var(--fbh-muted);font-weight:600}

/* category cards */
.fbh-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fbh-cat{border:1px solid var(--fbh-line);background:var(--fbh-surface);border-radius:20px;padding:18px;display:flex;align-items:center;gap:16px;color:var(--fbh-ink);text-decoration:none}
.fbh-cat:hover{border-color:var(--fbh-berry)}
.fbh-cat__art{width:72px;height:72px;border-radius:16px;background:var(--fbh-soft);flex:none;display:grid;place-items:center}
.fbh-cat__art svg{width:62px;height:62px}
.fbh-cat strong{display:block;font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:22px}
.fbh-cat small{color:var(--fbh-muted);font-size:14px}
@media (max-width:720px){.fbh-cats{grid-template-columns:1fr}}

/* story */
.fbh-step{background:var(--fbh-surface);border:1px solid var(--fbh-line);border-radius:18px;padding:18px}
.fbh-step .fbh-num{font-family:var(--wp--preset--font-family--display);font-size:28px;color:var(--fbh-berry);margin:0;line-height:1}
.fbh-step h3{font-family:var(--wp--preset--font-family--body);font-weight:800;font-size:17px;margin-block:8px 4px}
.fbh-step p{color:var(--fbh-muted);font-size:15px;margin:0}

/* faq */
.fbh-faq .wp-block-details{border-bottom:1px solid var(--fbh-line);padding:16px 4px}
.fbh-faq summary{font-weight:800;cursor:pointer}
.fbh-faq .wp-block-details p{color:var(--fbh-muted)}

/* footer */
.fbh-footer{border-top:1px solid var(--fbh-line);padding-block:40px;color:var(--fbh-muted);font-size:14px;margin-top:64px}
.fbh-footer .wp-block-site-title{font-family:var(--wp--preset--font-family--display);font-size:22px}
.fbh-footer .wp-block-site-title a{color:var(--fbh-ink);text-decoration:none}
.fbh-footer a{color:var(--fbh-ink)}

.fbh-main{padding-block:40px}

/* ---------- WooCommerce: classic loops (shortcode) ---------- */
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;margin:0 !important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none !important}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;float:none !important;display:flex;flex-direction:column;gap:6px}
.woocommerce ul.products li.product a img{border-radius:22px;background:var(--fbh-soft);aspect-ratio:4/5;object-fit:cover;margin:0 0 6px !important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--wp--preset--font-family--body);font-weight:800;font-size:16px !important;padding:0 !important;color:var(--fbh-ink)}
.woocommerce ul.products li.product .price{color:var(--fbh-ink) !important;font-weight:800;font-size:15px !important}
.woocommerce ul.products li.product .button{margin-top:auto !important}
.woocommerce span.onsale{background:var(--fbh-berry);border-radius:999px;min-height:0;line-height:1;padding:7px 10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--fbh-berry);color:#fff;border-radius:999px;font-weight:800;padding:12px 20px}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--fbh-ink);color:#fff}

/* ---------- WooCommerce: block templates (shop, product, cart, checkout) ---------- */
.wc-block-components-product-image img,.wc-block-grid__product-image img,.woocommerce-product-gallery img,.wp-block-woocommerce-product-image-gallery img{border-radius:22px;background:var(--fbh-soft)}
.wc-block-components-product-price{font-weight:800}
.wc-block-components-product-sale-badge{background:var(--fbh-berry);color:#fff;border:0;border-radius:999px}
.wp-block-woocommerce-product-template .wp-block-post-title{font-family:var(--wp--preset--font-family--body);font-weight:800}
.wc-block-components-button:not(.is-link){border-radius:999px}
.wp-block-woocommerce-product-template .wp-block-post-title,.wc-block-components-product-name{font-size:17px !important}
.wp-block-woocommerce-product-template .wp-block-post-title a,.wc-block-components-product-name{color:var(--fbh-ink);text-decoration:none}
.wp-block-woocommerce-product-template .wp-block-post-title a:hover{color:var(--fbh-berry)}
.woocommerce-ordering select,.wc-block-catalog-sorting select,.wc-block-components-sort-select__select{border:1px solid var(--fbh-line);border-radius:999px;padding:8px 36px 8px 16px;background-color:var(--fbh-surface);color:var(--fbh-ink);font:inherit;font-size:14px}
.wc-block-components-notice-banner{border-radius:14px}
