/*
Theme Name: Pecan & Petal
Template: storefront
Author: Facet
Description: 1-800-Flowers-style storefront for the Pecan & Petal demo.
Version: 1.0.0
*/

:root{
  --hcf-teal:#0f5b54;      /* gift-finder band */
  --hcf-teal-dark:#0a453f;
  --hcf-navy:#1c3a5e;      /* hero promo panel */
  --hcf-coral:#d1462f;     /* sale accents / star */
  --hcf-coral-dark:#b23a26;
  --hcf-ink:#262626;
  --hcf-muted:#6b6b6b;
  --hcf-line:#e7e7e7;
  --hcf-cream:#f7f4ef;
  --hcf-serif:Georgia,'Times New Roman',serif;
}

/* ---------- base ---------- */
body{color:var(--hcf-ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;background:#fff;}
a{color:var(--hcf-teal);}
.storefront-breadcrumb{max-width:1200px;margin:1rem auto;padding:0 2rem;}
h1,h2,h3{font-family:var(--hcf-serif);color:var(--hcf-ink);}
.button,button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit,.woocommerce input.button{
  background:var(--hcf-teal);color:#fff;border-radius:999px;font-weight:600;letter-spacing:.01em;border:0;padding:.7em 1.6em;text-transform:none;
}
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--hcf-teal-dark);color:#fff;}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--hcf-coral);}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--hcf-coral-dark);}

/* hide default storefront chrome we replace */
.storefront-handheld-footer-bar{display:none;}
.site-header{background:#fff !important;border-bottom:1px solid var(--hcf-line);padding:0 !important;}
.main-navigation, .site-branding, .site-search{display:none;} /* replaced by custom header */

/* ---------- top promo strip ---------- */
.hcf-topbar{background:var(--hcf-coral);color:#fff;text-align:center;font-size:.82rem;font-weight:600;letter-spacing:.02em;padding:.5rem 1rem;}
.hcf-topbar a{color:#fff;text-decoration:underline;}

/* ---------- custom header ---------- */
.hcf-header{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;padding:1.1rem 2rem;}
.hcf-logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;}
.hcf-logo svg{width:34px;height:34px;flex:0 0 auto;}
.hcf-logo .hcf-logo-txt{font-family:var(--hcf-serif);line-height:1;}
.hcf-logo .hcf-logo-txt b{display:block;font-size:1.28rem;font-weight:800;color:var(--hcf-teal);letter-spacing:.01em;}
.hcf-logo .hcf-logo-txt span{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--hcf-muted);}
.hcf-searchform{display:flex;align-items:stretch;border:2px solid var(--hcf-teal);border-radius:999px;overflow:hidden;max-width:640px;width:100%;margin:0 auto;}
.hcf-searchform input[type=search]{flex:1;border:0;padding:.7rem 1.2rem;font-size:1rem;outline:none;}
.hcf-searchform button{border-radius:0;background:var(--hcf-teal);padding:.6rem 1.6rem;}
.hcf-actions{display:flex;align-items:center;gap:1.6rem;}
.hcf-action{display:flex;flex-direction:column;align-items:center;gap:.15rem;text-decoration:none;color:var(--hcf-ink);font-size:.72rem;font-weight:600;}
.hcf-action svg{width:22px;height:22px;}
.hcf-action .hcf-cart-count{color:var(--hcf-coral);}

/* nav bar */
.hcf-nav{border-top:1px solid var(--hcf-line);border-bottom:1px solid var(--hcf-line);}
.hcf-nav ul{max-width:1240px;margin:0 auto;display:flex;justify-content:center;flex-wrap:wrap;gap:2rem;list-style:none;padding:.75rem 2rem;}
.hcf-nav a{color:var(--hcf-ink);text-decoration:none;font-size:.95rem;font-weight:600;padding-bottom:.15rem;border-bottom:2px solid transparent;}
.hcf-nav a:hover{color:var(--hcf-teal);border-bottom-color:var(--hcf-teal);}
.hcf-nav .hcf-nav-sale a{color:var(--hcf-coral);}
/* P2 mega-menu */
.hcf-nav li.has-mega{position:relative;}
.hcf-nav .hcf-mega{position:absolute;left:50%;transform:translateX(-50%);top:100%;min-width:440px;background:#fff;border:1px solid var(--hcf-line);border-radius:12px;box-shadow:0 18px 44px rgba(0,0,0,.16);padding:1.3rem;display:none;grid-template-columns:1fr 150px;gap:1.4rem;z-index:60;}
.hcf-nav .hcf-mega::before{content:"";position:absolute;top:-14px;left:0;right:0;height:16px;}
.hcf-nav li.has-mega:hover .hcf-mega,.hcf-nav li.has-mega:focus-within .hcf-mega{display:grid;}
.hcf-mega-links{display:flex;flex-direction:column;gap:.6rem;}
.hcf-mega-links a{border-bottom:0 !important;color:var(--hcf-ink) !important;font-weight:600;font-size:.94rem;padding:0 !important;}
.hcf-mega-links a:first-child{font-family:var(--hcf-serif);font-size:1.05rem;padding-bottom:.4rem !important;border-bottom:1px solid var(--hcf-line) !important;margin-bottom:.2rem;}
.hcf-mega-links a:hover{color:var(--hcf-teal) !important;}
.hcf-mega-feat{display:block;text-align:center;border:0 !important;padding:0 !important;}
.hcf-mega-feat .thumb{display:block;width:100%;aspect-ratio:1/1;border-radius:8px;background-size:cover;background-position:center;margin-bottom:.5rem;}
.hcf-mega-feat b{display:block;font-size:.86rem;color:var(--hcf-ink);line-height:1.2;}
.hcf-mega-feat .p{font-size:.86rem;color:var(--hcf-coral);font-weight:700;}
.hcf-mega-feat .p del{font-size:.78rem;}
/* P5 zip delivery banner */
.hcf-zipbar{background:var(--hcf-cream);border:1px solid var(--hcf-line);border-left:4px solid var(--hcf-teal);border-radius:8px;padding:.75rem 1.1rem;margin:0 0 1.4rem;font-size:.98rem;}
@media(max-width:900px){.hcf-nav .hcf-mega{display:none !important;}}

/* full-bleed helper (break out of Storefront .col-full) */
.hcf-fullbleed{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;}

/* ---------- gift finder band ---------- */
.hcf-giftfinder{background:var(--hcf-teal);color:#fff;}
.hcf-giftfinder .inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1rem;padding:1.4rem 2rem;}
.hcf-giftfinder h3{color:#fff;font-size:1.5rem;margin:0 1rem 0 0;}
.hcf-giftfinder .field{background:#fff;border-radius:8px;padding:.55rem .9rem;min-width:190px;}
.hcf-giftfinder .field label{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--hcf-muted);}
.hcf-giftfinder .field input,.hcf-giftfinder .field select{border:0;outline:none;font-size:1rem;width:100%;background:transparent;color:var(--hcf-ink);}
.hcf-giftfinder .gf-btn{background:#eaf3f1;color:var(--hcf-teal-dark);font-weight:800;border-radius:8px;padding:.85rem 1.6rem;text-decoration:none;}
.hcf-giftfinder .gf-btn:hover{background:#fff;}

/* ---------- hero (full-width immersive image + overlaid promo) ---------- */
.hcf-hero{position:relative;display:flex;align-items:center;justify-content:flex-end;min-height:560px;background-size:cover;background-position:center;}
.hcf-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,58,94,0) 26%,rgba(28,58,94,.55) 44%,rgba(28,58,94,.9) 58%,var(--hcf-navy) 72%);}
.hcf-hero .hero-panel{position:relative;z-index:2;color:#fff;width:54%;max-width:660px;padding:3rem 4.5rem 3rem 2.5rem;display:flex;flex-direction:column;justify-content:center;}
.hcf-hero .hero-panel .eyebrow{letter-spacing:.22em;text-transform:uppercase;font-size:.8rem;color:#cdd7e4;margin-bottom:.4rem;}
.hcf-hero .hero-panel h2{color:#fff;font-size:3rem;line-height:1.03;margin:0 0 1.2rem;padding-right:60px;}
.hcf-hero .hero-panel h2 em{color:#f2b8ad;font-style:italic;}
.hcf-hero .tiers{display:flex;gap:0;margin:0 0 1.4rem;}
.hcf-hero .tiers .tier{padding:0 1.3rem;border-left:1px solid rgba(255,255,255,.25);}
.hcf-hero .tiers .tier:first-child{padding-left:0;border-left:0;}
.hcf-hero .tiers .tier b{display:block;font-size:1.9rem;font-family:var(--hcf-serif);color:#fff;}
.hcf-hero .tiers .tier span{font-size:.9rem;color:#cdd7e4;}
.hcf-hero .hero-cta{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:5px;font-size:1.1rem;width:max-content;}
.hcf-hero .star{position:absolute;top:1.2rem;right:1.4rem;width:118px;height:118px;background:var(--hcf-coral);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:.66rem;line-height:1.15;letter-spacing:.02em;clip-path:polygon(50% 2%,63% 33%,97% 35%,70% 56%,80% 90%,50% 70%,20% 90%,30% 56%,3% 35%,37% 33%);}
.hcf-hero .star b{display:block;font-size:.62rem;}

/* ---------- section scaffold ---------- */
.hcf-section{max-width:1240px;margin:3rem auto;padding:0 2rem;}
.hcf-section > h2{text-align:center;font-size:2rem;margin:0 0 1.4rem;}

/* tabbed carousel */
.hcf-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:.6rem;margin-bottom:1.6rem;}
.hcf-tab{border:1px solid #cfcfcf;background:#fff;color:var(--hcf-ink);border-radius:999px;padding:.5rem 1.4rem;font-weight:700;font-size:.95rem;cursor:pointer;}
.hcf-tab.is-active{background:var(--hcf-navy);color:#fff;border-color:var(--hcf-navy);}
.hcf-panel{display:none;}
.hcf-panel.is-active{display:block;}

/* product loop -> clean responsive CSS grid (override Storefront floats) */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid !important;grid-template-columns:repeat(4,1fr);gap:1.2rem 1.4rem;margin:0 !important;}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr);}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,1fr);}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none !important;display:none !important;}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto !important;float:none !important;margin:0 0 1.4rem !important;text-align:center;}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr) !important;}}
/* product card polish */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{margin-bottom:2.2rem;}
.woocommerce ul.products li.product a img{border-radius:10px;margin-bottom:.9rem;box-shadow:0 1px 0 rgba(0,0,0,.04);}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:inherit;font-size:1rem;font-weight:600;color:var(--hcf-ink);padding:0 .3rem .2rem;}
.woocommerce ul.products li.product .price{color:var(--hcf-ink) !important;font-weight:800;font-size:1.05rem;}
.woocommerce ul.products li.product .price .amount{color:var(--hcf-ink);}
.woocommerce ul.products li.product .price::before{content:"starting at ";display:block;font-weight:500;font-size:.72rem;color:var(--hcf-muted);text-transform:none;}
.woocommerce ul.products li.product .button{margin-top:.7rem;}

/* ---------- occasion tiles ---------- */
.hcf-tiles{display:grid;grid-template-columns:repeat(6,1fr);gap:1.4rem;}
.hcf-tile{text-align:center;text-decoration:none;color:var(--hcf-ink);}
.hcf-tile{display:block;}
.hcf-tile .thumb{display:block;width:100%;aspect-ratio:1/1;border-radius:50%;background-size:cover;background-position:center;background-color:#e7ddcf;box-shadow:0 4px 14px rgba(0,0,0,.08);margin-bottom:.7rem;}
.hcf-tile span{font-weight:700;font-size:.95rem;}
.hcf-tile:hover span{color:var(--hcf-teal);}

/* ---------- collection banner ---------- */
.hcf-collection{position:relative;max-width:1240px;margin:3rem auto;padding:0 2rem;}
.hcf-collection .band{border-radius:14px;overflow:hidden;min-height:340px;background-size:cover;background-position:center;display:flex;align-items:center;}
.hcf-collection .band .copy{background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.8) 55%,rgba(255,255,255,0) 100%);padding:3rem;max-width:520px;}
.hcf-collection .band .copy h2{font-size:2.4rem;margin:0 0 .5rem;}
.hcf-collection .band .copy p{color:var(--hcf-muted);margin:0 0 1.2rem;font-size:1.05rem;}
.hcf-collection .band .copy a{background:var(--hcf-coral);color:#fff;border-radius:999px;padding:.7rem 1.7rem;text-decoration:none;font-weight:700;}

/* ---------- trust bar ---------- */
.hcf-trust{background:var(--hcf-cream);border-top:1px solid var(--hcf-line);border-bottom:1px solid var(--hcf-line);}
.hcf-trust .inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.8rem 2rem;text-align:center;}
.hcf-trust .item{display:flex;flex-direction:column;align-items:center;gap:.4rem;}
.hcf-trust .item svg{width:30px;height:30px;color:var(--hcf-teal);}
.hcf-trust .item b{font-size:.98rem;}
.hcf-trust .item span{font-size:.82rem;color:var(--hcf-muted);}

/* full-width woo pages (no blog sidebar) */
.hcf-fullwidth .content-area,.hcf-fullwidth #primary.content-area{width:100% !important;float:none !important;margin:0 auto !important;}
.hcf-fullwidth .widget-area,.hcf-fullwidth #secondary{display:none !important;}
.hcf-fullwidth .woocommerce ul.products{grid-template-columns:repeat(4,1fr);}

/* hide the redundant page title on the front page */
.home .entry-title,.home .page-header{display:none;}
.home .content-area,.home .site-content .col-full{padding-top:0;}

/* ---------- footer ---------- */
.site-footer{background:#20302e !important;color:#cdd7d3;}
.site-footer a{color:#e8efec;}
.hcf-foot{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;padding:3rem 2rem 1.5rem;}
.hcf-foot h4{color:#fff;font-family:inherit;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .9rem;}
.hcf-foot ul{list-style:none;margin:0;padding:0;}
.hcf-foot ul li{margin:.35rem 0;}
.hcf-foot ul li a{color:#dbe6e1;text-decoration:none;font-size:.92rem;}
.hcf-foot ul li a:hover{color:#fff;}
.hcf-foot .brand b{color:#fff;font-family:var(--hcf-serif);font-size:1.3rem;}
.hcf-foot .brand p{font-size:.9rem;color:#a9b6b2;max-width:32ch;}
.hcf-footbottom{border-top:1px solid rgba(255,255,255,.12);text-align:center;font-size:.8rem;color:#9fb0ab;padding:1.1rem;}

/* ---------- P3 badges ---------- */
.woocommerce ul.products li.product{position:relative;}
.woocommerce span.onsale{display:none !important;}
.hcf-badge{position:absolute;top:12px;left:12px;z-index:3;padding:.28rem .7rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.03em;color:#fff;text-transform:uppercase;}
.hcf-badge-sale{background:var(--hcf-coral);}
.hcf-badge-best{background:var(--hcf-navy);}

/* ---------- P1 star ratings ---------- */
.woocommerce .star-rating{color:var(--hcf-coral);font-size:.92rem;margin:.15rem auto .35rem;}
.woocommerce ul.products li.product .star-rating{display:block;}
.woocommerce ul.products li.product .woocommerce-loop-product__title + .star-rating{margin-top:.1rem;}
.hcf-rating-row{display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.8rem;color:var(--hcf-muted);}
del{color:var(--hcf-muted);font-weight:500;opacity:.8;}
ins{text-decoration:none;color:var(--hcf-coral) !important;}
.woocommerce ul.products li.product .price ins .amount{color:var(--hcf-coral);}

/* ---------- P8 horizontal carousels ---------- */
.hcf-carousel{position:relative;}
.hcf-arrow{position:absolute;top:34%;z-index:4;width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--hcf-line);box-shadow:0 3px 12px rgba(0,0,0,.14);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--hcf-ink);}
.hcf-arrow svg{width:20px;height:20px;}
.hcf-arrow.prev{left:-14px;} .hcf-arrow.next{right:-14px;}
.hcf-arrow:hover{background:var(--hcf-cream);}
.hcf-carousel .hcf-panel ul.products{display:flex !important;overflow-x:auto;scroll-behavior:smooth;gap:1.4rem;grid-template-columns:none !important;padding:.3rem .2rem 1rem;scrollbar-width:none;}
.hcf-carousel .hcf-panel ul.products::-webkit-scrollbar{display:none;}
.hcf-carousel .hcf-panel ul.products li.product{flex:0 0 250px;margin:0 !important;}
@media(max-width:900px){.hcf-carousel .hcf-panel ul.products li.product{flex:0 0 66vw;}.hcf-arrow{display:none;}}

/* ---------- P1 testimonials strip ---------- */
.hcf-testimonials{background:var(--hcf-cream);border-top:1px solid var(--hcf-line);border-bottom:1px solid var(--hcf-line);}
.hcf-testimonials .inner{max-width:1200px;margin:0 auto;padding:2.6rem 2rem;}
.hcf-testimonials h2{text-align:center;font-size:1.9rem;margin:0 0 .4rem;}
.hcf-testimonials .sub{text-align:center;color:var(--hcf-muted);margin:0 0 1.6rem;}
.hcf-testimonials .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;}
.hcf-quote{background:#fff;border:1px solid var(--hcf-line);border-radius:12px;padding:1.5rem;}
.hcf-quote .stars{color:var(--hcf-coral);letter-spacing:.1em;margin-bottom:.6rem;}
.hcf-quote p{margin:0 0 .9rem;font-size:1rem;line-height:1.5;}
.hcf-quote .who{font-weight:700;font-size:.9rem;}
.hcf-quote .who span{color:var(--hcf-muted);font-weight:500;}
@media(max-width:900px){.hcf-testimonials .grid{grid-template-columns:1fr;}}

/* ---------- P6 product-page gift options ---------- */
.hcf-pdp-options{margin:1.2rem 0;max-width:440px;clear:both;}
.hcf-field{display:block;margin-bottom:1rem;}
.hcf-field label{display:block;font-weight:700;font-size:.92rem;margin-bottom:.35rem;color:var(--hcf-ink);}
.hcf-field label span{font-weight:400;color:var(--hcf-muted);}
.hcf-field input[type=date],.hcf-field textarea{width:100%;border:1px solid var(--hcf-line);border-radius:8px;padding:.65rem .85rem;font-size:.95rem;font-family:inherit;}
.hcf-field textarea{resize:vertical;}
.hcf-addons{border-top:1px solid var(--hcf-line);padding-top:.9rem;margin-top:.3rem;}
.hcf-addons-title{display:block;font-weight:700;font-size:.92rem;margin-bottom:.55rem;}
.hcf-addon{display:flex;align-items:center;gap:.55rem;margin-bottom:.5rem;font-size:.95rem;cursor:pointer;}
.hcf-addon input{width:18px;height:18px;accent-color:var(--hcf-teal);}
.hcf-addon b{margin-left:auto;color:var(--hcf-teal);font-weight:700;}

/* ---------- P7 newsletter + cart polish ---------- */
.hcf-newsletter{grid-column:1 / -1;border-top:1px solid rgba(255,255,255,.12);margin-top:1.4rem;padding-top:1.4rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.hcf-newsletter b{color:#fff;font-family:var(--hcf-serif);font-size:1.05rem;}
.hcf-newsletter form{display:flex;gap:.5rem;flex:1;min-width:260px;max-width:440px;}
.hcf-newsletter input{flex:1;border:0;border-radius:999px;padding:.6rem 1rem;font-size:.95rem;}
.hcf-newsletter button{border-radius:999px;background:var(--hcf-coral);border:0;color:#fff;font-weight:700;padding:.6rem 1.3rem;cursor:pointer;}
.woocommerce-cart .cart_totals,.woocommerce-checkout .woocommerce-checkout-review-order{border:1px solid var(--hcf-line);border-radius:12px;padding:1.2rem;}
.woocommerce table.shop_table{border-radius:12px;overflow:hidden;}
.woocommerce .cart-collaterals .cart_totals>h2,.woocommerce-checkout h3{font-family:var(--hcf-serif);}

/* ---------- responsive ---------- */
@media(max-width:900px){
  .hcf-header{grid-template-columns:auto 1fr;gap:1rem;}
  .hcf-actions{grid-column:1/-1;justify-content:flex-end;}
  .hcf-hero{min-height:460px;justify-content:center;}
  .hcf-hero::before{background:linear-gradient(180deg,rgba(28,58,94,.25),rgba(28,58,94,.85));}
  .hcf-hero .hero-panel{width:100%;max-width:none;padding:2rem 1.4rem;}
  .hcf-tiles{grid-template-columns:repeat(3,1fr);}
  .hcf-trust .inner{grid-template-columns:repeat(2,1fr);}
  .hcf-foot{grid-template-columns:1fr 1fr;}
}
