/*
Theme Name: Happy Bee Bakes Child
Theme URI: https://happybeebakes.uk/
Description: Conversion-focused child theme for Happy Bee Bakes, based on Astra.
Author: Happy Bee Bakes
Version: 1.0.0
Template: astra
Text Domain: happy-bee-child
*/
:root{--hb-ink:#29241f;--hb-muted:#70675e;--hb-cream:#fbf7f0;--hb-paper:#fffdf9;--hb-honey:#b87536;--hb-honey-dark:#8d4f21;--hb-line:#e8dfd3;--hb-green:#4c5a45;--hb-radius:18px}
html{scroll-behavior:smooth}
body{color:var(--hb-ink);background:#fffdf9}
a{transition:color .18s ease,background-color .18s ease}
.ast-primary-header-bar{border-bottom:1px solid var(--hb-line)}
.site-title a,.site-title a:visited{color:var(--hb-ink)}
.hb-home{overflow:hidden}
.hb-container{width:min(1160px,calc(100% - 40px));margin-inline:auto}
.hb-eyebrow{display:inline-flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--hb-honey-dark)}
.hb-eyebrow:before{content:"";display:inline-block;width:28px;height:1px;background:currentColor}
.hb-hero{background:var(--hb-cream);padding:clamp(44px,7vw,88px) 0}
.hb-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,5vw,72px);align-items:center}
.hb-hero h1{font-size:clamp(2.6rem,5.2vw,4.65rem);line-height:1.02;letter-spacing:-.045em;margin:18px 0 22px;max-width:650px;color:var(--hb-ink)}
.hb-hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--hb-honey-dark)}
.hb-hero-copy{font-size:1.1rem;line-height:1.75;max-width:520px;color:#5e554c}
.hb-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 20px}
.hb-btn,.hb-btn:visited{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 23px;border-radius:4px;background:var(--hb-ink);color:#fff;font-weight:700;text-decoration:none;border:1px solid var(--hb-ink)}
.hb-btn:hover{background:var(--hb-honey-dark);border-color:var(--hb-honey-dark);color:#fff}
.hb-btn--light,.hb-btn--light:visited{background:transparent;color:var(--hb-ink);border-color:#cfc2b3}
.hb-btn--light:hover{background:#fff;color:var(--hb-ink);border-color:var(--hb-ink)}
.hb-hero-note{font-size:.9rem;color:var(--hb-muted);line-height:1.7}
.hb-hero-media{position:relative}
.hb-hero-image{display:block;width:100%;aspect-ratio:4/4.4;object-fit:cover;border-radius:48% 48% 5px 5px;background:#eee2d2}
.hb-image-caption{position:absolute;bottom:22px;left:-22px;max-width:230px;padding:17px 20px;background:#fffdf9;border:1px solid var(--hb-line);box-shadow:0 12px 35px #3e29120d}
.hb-image-caption strong{display:block;font-family:Georgia,serif;font-size:1.2rem;font-weight:400}
.hb-image-caption span{font-size:.82rem;color:var(--hb-muted)}
.hb-trust-strip{border-bottom:1px solid var(--hb-line);background:#fff;padding:20px 0}
.hb-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hb-trust-item{display:flex;gap:12px;align-items:center;font-size:.9rem;line-height:1.4}
.hb-trust-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--hb-cream);color:var(--hb-honey-dark);font-size:1.1rem;flex:0 0 auto}
.hb-trust-item strong{display:block;font-size:.94rem}
.hb-trust-item span{color:var(--hb-muted)}
.hb-section{padding:clamp(52px,7vw,88px) 0}
.hb-section--cream{background:var(--hb-cream)}
.hb-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
.hb-section-heading h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.035em;line-height:1.12;margin:12px 0 0;color:var(--hb-ink)}
.hb-section-heading p{max-width:440px;margin:0;color:var(--hb-muted);line-height:1.7}
.hb-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.hb-product-card{min-width:0;background:#fff;border:1px solid var(--hb-line);border-radius:var(--hb-radius);overflow:hidden;display:flex;flex-direction:column}
.hb-product-card a{text-decoration:none;color:inherit}
.hb-product-card .hb-product-photo{display:block;width:100%;aspect-ratio:4/4.2;object-fit:cover;background:#f1e8dd;transition:transform .25s ease}
.hb-product-photo-wrap{overflow:hidden;background:#f1e8dd}
.hb-product-card:hover .hb-product-photo{transform:scale(1.025)}
.hb-product-body{padding:18px;display:flex;flex-direction:column;gap:9px;flex:1}
.hb-product-body h3{font-size:1.14rem;line-height:1.3;margin:0;color:var(--hb-ink)}
.hb-product-body p{font-size:.9rem;line-height:1.6;color:var(--hb-muted);margin:0}
.hb-product-price{font-weight:700;color:var(--hb-honey-dark);margin-top:auto;padding-top:8px}
.hb-product-link{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:.9rem;margin-top:8px;padding-top:12px;border-top:1px solid var(--hb-line)}
.hb-product-link span:last-child{font-size:1.25rem}
.hb-center-cta{text-align:center;margin-top:30px}
.hb-story-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(30px,7vw,90px);align-items:center}
.hb-story-mark{font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.5rem);line-height:.98;letter-spacing:-.04em;color:var(--hb-honey-dark)}
.hb-story-copy h2{font-size:clamp(2rem,3.7vw,3rem);line-height:1.1;letter-spacing:-.035em;margin:14px 0 20px}
.hb-story-copy p{color:var(--hb-muted);line-height:1.8}
.hb-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:steps}
.hb-step{padding:24px;background:#fff;border:1px solid var(--hb-line);border-radius:var(--hb-radius)}
.hb-step-number{display:block;font-family:Georgia,serif;color:var(--hb-honey-dark);font-size:1.8rem;margin-bottom:12px}
.hb-step h3{font-size:1.1rem;margin:0 0 8px}
.hb-step p{font-size:.92rem;color:var(--hb-muted);line-height:1.65;margin:0}
.hb-delivery-band{background:var(--hb-green);color:#fff;padding:clamp(30px,5vw,50px);border-radius:var(--hb-radius);display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center}
.hb-delivery-band h2{color:#fff;font-size:clamp(1.7rem,3vw,2.5rem);margin:0 0 10px;line-height:1.1}
.hb-delivery-band p{color:#f1eee8;line-height:1.7;margin:0;max-width:650px}
.hb-delivery-band .hb-btn{background:#fff;color:var(--hb-ink);border-color:#fff;white-space:nowrap}
.hb-faq{max-width:850px;margin:0 auto}
.hb-faq details{border-bottom:1px solid var(--hb-line);padding:18px 0}
.hb-faq summary{cursor:pointer;font-weight:700;line-height:1.5}
.hb-faq details p{color:var(--hb-muted);line-height:1.75;margin:12px 0 0}
.hb-final-cta{text-align:center;background:#f4e9dc;padding:clamp(44px,7vw,76px) 22px}
.hb-final-cta h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;letter-spacing:-.04em;margin:12px auto 16px;max-width:700px}
.hb-final-cta p{max-width:590px;margin:0 auto 24px;color:var(--hb-muted);line-height:1.7}
.hb-smallprint{font-size:.82rem;color:var(--hb-muted);line-height:1.6}
.hb-order-note{padding:13px 16px;background:var(--hb-cream);border-left:3px solid var(--hb-honey);margin:14px 0 18px;font-size:.9rem;line-height:1.65;color:var(--hb-ink)}
.woocommerce .hb-order-note{clear:both}
.woocommerce div.product form.cart .single_add_to_cart_button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{border-radius:4px}
.woocommerce div.product .product_title{letter-spacing:-.025em}
.woocommerce ul.products li.product .button{border-radius:4px}
.woocommerce-message,.woocommerce-info{border-top-color:var(--hb-honey)}
.woocommerce-message:before,.woocommerce-info:before{color:var(--hb-honey-dark)}
.ast-footer-copyright{font-size:.85rem}
@media(max-width:900px){.hb-hero-grid{grid-template-columns:1fr 0.85fr;gap:28px}.hb-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hb-story-grid{gap:32px}.hb-image-caption{left:-8px}.hb-section-heading{align-items:start;flex-direction:column}.hb-section-heading p{max-width:620px}}
@media(max-width:640px){.hb-container{width:min(100% - 32px,540px)}.hb-hero{padding:42px 0 36px}.hb-hero-grid{grid-template-columns:1fr}.hb-hero h1{font-size:clamp(2.45rem,12vw,3.6rem)}.hb-hero-copy{font-size:1rem}.hb-hero-media{max-width:440px;margin:6px auto 0;width:100%}.hb-hero-image{aspect-ratio:4/3.8;border-radius:48% 48% 5px 5px}.hb-image-caption{bottom:12px;left:-4px;padding:12px 14px;max-width:205px}.hb-trust-grid{grid-template-columns:1fr;gap:14px}.hb-trust-item{align-items:flex-start}.hb-product-grid{gap:12px}.hb-product-body{padding:13px}.hb-product-body h3{font-size:1rem}.hb-product-body p{font-size:.83rem}.hb-product-price{font-size:.92rem}.hb-story-grid{grid-template-columns:1fr}.hb-story-mark{font-size:3.7rem}.hb-steps{grid-template-columns:1fr;gap:12px}.hb-step{padding:20px}.hb-delivery-band{grid-template-columns:1fr}.hb-delivery-band .hb-btn{justify-self:start;white-space:normal}.hb-hero-actions .hb-btn{flex:1}.hb-section{padding:48px 0}.hb-section-heading{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.hb-site-footer{background:#29241f;color:#fff;padding:30px 0 24px}.hb-site-footer-inner{display:grid;grid-template-columns:1fr auto;gap:14px 30px;align-items:center}.hb-site-footer strong{font-family:Georgia,serif;font-size:1.35rem;font-weight:400}.hb-site-footer p{margin:5px 0 0;color:#ded6cc;font-size:.9rem}.hb-site-footer nav{display:flex;flex-wrap:wrap;gap:10px 20px}.hb-site-footer nav a{color:#fff;text-decoration:none;font-size:.9rem}.hb-site-footer nav a:hover{text-decoration:underline}.hb-site-footer small{grid-column:1/-1;color:#c6bdb3;font-size:.8rem}@media(max-width:640px){.hb-site-footer-inner{grid-template-columns:1fr}.hb-site-footer nav{gap:14px}.hb-site-footer small{grid-column:auto}}

.hb-shop-intro{margin:0 0 28px;padding:28px;background:var(--hb-cream);border:1px solid var(--hb-line);border-radius:var(--hb-radius)}.hb-shop-intro h2{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.15;letter-spacing:-.03em;margin:10px 0}.hb-shop-intro p{color:var(--hb-muted);line-height:1.7;max-width:760px}.hb-shop-categories{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.hb-shop-categories a{display:inline-flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--hb-line);padding:11px 15px;border-radius:4px;text-decoration:none;color:var(--hb-ink);font-weight:700;font-size:.9rem}.hb-shop-categories a:hover{border-color:var(--hb-honey);color:var(--hb-honey-dark)}.hb-shop-categories span{font-size:1.1rem}.hb-shop-note{font-size:.85rem;margin-bottom:0}.woocommerce ul.products li.product{border:1px solid var(--hb-line);border-radius:14px;overflow:hidden;background:#fff;padding:0 0 16px;transition:box-shadow .2s ease,transform .2s ease}.woocommerce ul.products li.product:hover{box-shadow:0 10px 30px #33200f0c;transform:translateY(-2px)}.woocommerce ul.products li.product a img{width:100%;margin:0 0 14px;aspect-ratio:1/1;object-fit:cover}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .star-rating,.woocommerce ul.products li.product .button{margin-left:15px;margin-right:15px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem;line-height:1.4;padding:0 0 7px}.woocommerce ul.products li.product .price{color:var(--hb-honey-dark);font-weight:700;margin-bottom:12px}.woocommerce ul.products li.product .button{display:inline-flex;justify-content:center;align-items:center;min-height:42px}.woocommerce div.product .woocommerce-product-gallery img{border-radius:12px}.woocommerce div.product form.cart .variations select{min-height:44px;border-color:var(--hb-line);border-radius:4px}.woocommerce div.product .summary .price{color:var(--hb-honey-dark);font-weight:700}.woocommerce .quantity .qty{min-height:44px;border-color:var(--hb-line);border-radius:4px}@media(max-width:640px){.hb-shop-intro{padding:20px}.hb-shop-categories{display:grid;grid-template-columns:1fr}.hb-shop-categories a{justify-content:space-between}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.94rem}.woocommerce ul.products li.product .button{font-size:.85rem;padding:10px 12px}}
