/*
Theme Name: lighthearts
Theme URI: https://lighthearts.net/
Author: lighthearts
Description: Dark WooCommerce storefront theme for lighthearts.
Version: 0.4.0
Text Domain: lighthearts
*/
:root{--lh-bg:#0d0f11;--lh-panel:#171a1e;--lh-text:#f5f5f5;--lh-muted:#aeb4bb;--lh-line:#2a2e33;--lh-accent:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--lh-bg);color:var(--lh-text);font-family:"Segoe UI",SegoeUI,Arial,sans-serif;line-height:1.55}
a{color:inherit}.lh-wrap{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(13,15,17,.94);border-bottom:1px solid var(--lh-line);backdrop-filter:blur(10px)}
.site-header .lh-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:30px}.site-title{font-size:1.35rem;font-weight:650;text-decoration:none;letter-spacing:.02em}
.site-nav{display:flex;gap:25px;align-items:center}.site-nav a{text-decoration:none;color:var(--lh-muted)}.site-nav a:hover{color:#fff}
.lh-hero{min-height:70vh;display:grid;place-items:center;text-align:center;padding:80px 0;background:radial-gradient(circle at center,#252a31 0,#0d0f11 62%)}
.lh-hero h1{font-size:clamp(3rem,8vw,7rem);line-height:.95;margin:.15em 0}.lh-kicker{text-transform:uppercase;letter-spacing:.18em;color:var(--lh-muted);font-size:.82rem}
.lh-lede{font-size:clamp(1.1rem,2vw,1.5rem);color:var(--lh-muted);max-width:760px;margin:20px auto 32px}
.lh-btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-block;background:#fff!important;color:#0d0f11!important;border-radius:999px!important;padding:13px 24px!important;text-decoration:none!important;font-weight:650!important}
.lh-section{padding:80px 0}.lh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.lh-card{background:var(--lh-panel);border:1px solid var(--lh-line);border-radius:20px;padding:34px;min-height:240px}
.lh-card h2{font-size:2rem;margin:.25em 0}.lh-card p{color:var(--lh-muted)}.site-footer{border-top:1px solid var(--lh-line);padding:35px 0;color:var(--lh-muted);margin-top:70px}
.woocommerce div.product,.woocommerce-cart-form,.woocommerce-checkout{color:var(--lh-text)}.woocommerce div.product p.price,.woocommerce div.product span.price{color:#fff}
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{background:#15181c;color:#fff;border:1px solid #3a3f46;border-radius:8px;padding:12px}
.lh-personalization{margin:22px 0;padding:22px;background:#15181c;border:1px solid #343941;border-radius:14px}.lh-personalization input{display:block;width:100%;max-width:260px;margin:8px 0 12px;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:760px){.site-nav{gap:12px;font-size:.9rem}.lh-grid{grid-template-columns:1fr}.lh-hero{min-height:58vh}.site-header .lh-wrap{flex-wrap:wrap;padding:12px 0}}

/* v0.3 commerce polish */
.woocommerce .products ul,.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;background:#15181c;border:1px solid #2a2e33;border-radius:18px;padding:18px;transition:transform .2s ease,border-color .2s ease}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);border-color:#555d66}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.25rem;color:#fff}
.woocommerce ul.products li.product .price{color:#d9dde1!important;font-size:1rem}
.woocommerce div.product{padding-top:55px}.woocommerce div.product .product_title{font-size:clamp(2.3rem,5vw,4.5rem);line-height:1}
.woocommerce div.product form.cart .variations select{min-width:220px}
.woocommerce-message,.woocommerce-info{background:#171a1e;color:#fff;border-top-color:#fff}
@media(max-width:800px){.woocommerce .products ul,.woocommerce ul.products{grid-template-columns:1fr}}


/* =========================================================
   lighthearts Storefront v0.4
   ========================================================= */
:root{
  --lh-bg:#0b0e11; --lh-panel:#14181c; --lh-panel2:#1a1f24;
  --lh-line:#2a3036; --lh-text:#f5f5f3; --lh-muted:#aeb5bc;
}
body.woocommerce, body.woocommerce-page{background:var(--lh-bg);color:var(--lh-text)}
.woocommerce .woocommerce-breadcrumb{color:var(--lh-muted);margin-bottom:28px}
.woocommerce .woocommerce-breadcrumb a{color:#fff}
.lh-shop-hero{padding:54px 0 24px}
.lh-shop-hero h1{font-size:clamp(3rem,7vw,6.4rem);line-height:.94;margin:.08em 0 .2em;letter-spacing:-.045em}
.lh-shop-hero p{max-width:680px;color:var(--lh-muted);font-size:1.15rem;line-height:1.65}
.lh-family-nav{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 48px}
.lh-family-nav a{border:1px solid var(--lh-line);border-radius:999px;padding:10px 16px;color:#fff;text-decoration:none;background:#111519}
.lh-family-nav a:hover{border-color:#747d86}
.woocommerce ul.products{margin-top:20px}
.woocommerce ul.products li.product{position:relative;overflow:hidden}
.woocommerce ul.products li.product a img{
  aspect-ratio:1/1;object-fit:cover;background:
  radial-gradient(circle at 50% 45%,#272d33 0,#181d22 44%,#0f1215 72%);
  border-radius:13px;margin-bottom:18px
}
.woocommerce ul.products li.product a img[src*="placeholder"]{opacity:.7}
.woocommerce ul.products li.product .button{border-radius:999px;padding:12px 17px}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:64px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto;float:none}
.woocommerce div.product div.images img{border-radius:18px;background:radial-gradient(circle,#262c32,#111519 70%)}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:#fff!important;font-size:1.4rem}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:1.15rem;color:var(--lh-muted);line-height:1.6}
.woocommerce div.product form.cart{margin-top:28px}
.woocommerce div.product form.cart .variations{margin-bottom:18px}
.woocommerce div.product form.cart .variations th{padding:12px 18px 12px 0;color:#fff}
.woocommerce div.product form.cart .variations select{
  background:#151a1f;color:#fff;border:1px solid #394149;border-radius:10px;padding:12px 38px 12px 13px
}
.lh-choice-row{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 18px}
.lh-choice{appearance:none;border:1px solid #3b434b;background:#14191e;color:#fff;border-radius:999px;padding:11px 17px;cursor:pointer}
.lh-choice:hover,.lh-choice.is-selected{background:#f6f6f4;color:#111;border-color:#f6f6f4}
.single_add_to_cart_button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  border-radius:999px!important;padding:14px 22px!important
}
.lh-personalize{
  margin:24px 0;padding:22px;border:1px solid var(--lh-line);border-radius:16px;background:var(--lh-panel)
}
.lh-personalize h3{margin:0 0 7px;font-size:1.25rem}
.lh-personalize p{color:var(--lh-muted);margin:0 0 16px}
.lh-message-lines{display:grid;gap:10px;max-width:340px}
.lh-message-lines input{
  width:100%;box-sizing:border-box;background:#0c1013;color:#fff;border:1px solid #3a424a;
  border-radius:9px;padding:12px 13px;font:600 1.05rem/1 "Segoe UI",sans-serif;letter-spacing:.12em;text-transform:uppercase
}
.lh-message-count{font-size:.84rem;color:var(--lh-muted);margin-top:10px}
.lh-product-note{margin-top:28px;padding-top:22px;border-top:1px solid var(--lh-line);color:var(--lh-muted)}
.woocommerce-tabs{grid-column:1/-1}
.woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order,.woocommerce-checkout .col2-set{
  background:var(--lh-panel);border:1px solid var(--lh-line);border-radius:16px;padding:22px
}
.woocommerce table.shop_table{border-color:var(--lh-line)}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--lh-line)}
@media(max-width:850px){
  .woocommerce div.product{grid-template-columns:1fr;gap:28px}
  .lh-shop-hero{padding-top:30px}
}
