/*
Theme Name: NutriPeak
Template: storefront
Author: NutriPeak
Description: NutriPeak brand child theme — clinical performance look (emerald + amber, peak motif).
Version: 1.0
*/

:root{
  --np-ground:#F4F6F3; --np-surface:#FFFFFF; --np-surface2:#EEF2ED;
  --np-ink:#0F1E18; --np-muted:#54685E; --np-line:#E0E7E0;
  --np-brand:#0E6B57; --np-brand-dk:#0B5647; --np-accent:#E0952B; --np-accent-ink:#3d2708;
  --np-mint:#DCEFE7;
  --np-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --np-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
}

/* ---------- base ---------- */
body,.site{background:var(--np-ground);color:var(--np-ink);font-family:var(--np-font);}
body{font-size:16px;line-height:1.65;}
a{color:var(--np-brand);}
h1,h2,h3,h4{color:var(--np-ink);font-weight:800;letter-spacing:-.02em;}
.col-full{max-width:1180px;}

/* ---------- announcement bar (added via functions.php) ---------- */
.np-announce{background:var(--np-brand);color:#fff;font-family:var(--np-mono);font-size:.76rem;
  letter-spacing:.03em;display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:9px 16px;}
.np-announce span:nth-child(even){opacity:.45;}

/* ---------- header ---------- */
.site-header{background:var(--np-surface)!important;border-bottom:1px solid var(--np-line);
  padding-top:18px;padding-bottom:18px;}
.site-header .site-branding{margin-bottom:0;}
.site-title{font-size:1.4rem;font-weight:800;letter-spacing:-.03em;}
.site-title a{color:var(--np-ink)!important;text-shadow:none;}
.site-title a::before{content:"";display:inline-block;width:22px;height:22px;margin-right:9px;
  vertical-align:-3px;background-repeat:no-repeat;background-size:contain;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M2 27 L12 9 L18 19 L22 13 L30 27 Z" fill="%23E0952B"/><path d="M2 27 L12 9 L18 19" stroke="%230E6B57" stroke-width="2.6" fill="none" stroke-linejoin="round"/></svg>');}
.site-description{color:var(--np-muted);}
.storefront-primary-navigation{background:transparent!important;border-top:1px solid var(--np-line);}
.main-navigation ul li a{color:var(--np-ink);font-weight:600;}
.main-navigation ul li a:hover{color:var(--np-brand);}
.site-header-cart .cart-contents{color:var(--np-ink);}

/* ---------- buttons ---------- */
button,.button,input[type="submit"],.woocommerce a.button,.woocommerce button.button,
.woocommerce #respond input#submit,.woocommerce .widget_price_filter .price_slider_amount .button{
  background-color:var(--np-brand)!important;color:#fff!important;border-radius:999px!important;
  font-weight:600!important;letter-spacing:.01em;border:0;padding:.7em 1.5em;transition:filter .15s,transform .12s;}
button:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{
  filter:brightness(1.07);transform:translateY(-1px);}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit.alt,
.single_add_to_cart_button,.checkout-button{
  background-color:var(--np-accent)!important;color:var(--np-accent-ink)!important;}
.woocommerce a.button.alt:hover,.single_add_to_cart_button:hover,.checkout-button:hover{filter:brightness(1.05);}

/* ---------- product cards ---------- */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  background:var(--np-surface);border:1px solid var(--np-line);border-radius:14px;padding:14px;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s;}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);
  box-shadow:0 10px 30px rgba(15,30,24,.08);border-color:color-mix(in srgb,var(--np-brand) 40%,var(--np-line));}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.02rem;font-weight:700;padding-top:.4em;}
.woocommerce ul.products li.product .price{color:var(--np-ink);font-family:var(--np-mono);font-weight:700;}
.woocommerce ul.products li.product .price del{color:var(--np-muted);}
.woocommerce ul.products li.product img{border-radius:10px;}
.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{
  background:var(--np-accent);color:var(--np-accent-ink);border-radius:8px;}
.star-rating span{color:var(--np-accent);}

/* ---------- price / single product ---------- */
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--np-brand);font-family:var(--np-mono);font-weight:700;}
.woocommerce-message,.woocommerce-info{border-top-color:var(--np-brand);}
.woocommerce-message::before,.woocommerce-info::before{color:var(--np-brand);}

/* ---------- hero (homepage) ---------- */
.np-hero{background:linear-gradient(180deg,var(--np-mint),var(--np-ground));border-bottom:1px solid var(--np-line);
  padding:72px 20px;text-align:center;}
.np-hero .np-eyebrow{font-family:var(--np-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--np-brand);}
.np-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.05;margin:.3em auto;max-width:16ch;}
.np-hero p{color:var(--np-muted);font-size:1.15rem;max-width:44ch;margin:0 auto 1.4em;}
.np-hero .np-cta{display:inline-block;background:var(--np-accent);color:var(--np-accent-ink);
  border-radius:999px;padding:14px 30px;font-weight:700;text-decoration:none;}
.np-hero .np-cta:hover{filter:brightness(1.05);}
.np-trust{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:26px;
  font-family:var(--np-mono);font-size:.74rem;color:var(--np-muted);}
.np-section-title{text-align:center;margin:56px 0 8px;font-size:1.9rem;}
.np-section-sub{text-align:center;color:var(--np-muted);margin-bottom:8px;}

/* ---------- footer ---------- */
.site-footer{background:var(--np-ink);color:#c9d6cf;}
.site-footer a{color:#e7efe9;}
.site-footer .site-info{background:var(--np-ink);}

/* ---------- misc cleanup ---------- */
.storefront-handheld-footer-bar{background:var(--np-brand);}
.storefront-handheld-footer-bar ul li>a,.storefront-handheld-footer-bar ul li.cart>a{color:#fff;}
mark{background:var(--np-mint);}
