/* Flaeon — design layer on top of Storefront.
   Tokens come from projects/flaeon/web/styles.css (paper / ink / one accent). */

:root{
  --paper:#F5F3EF;
  --paper-2:#EDEAE4;
  --ink:#101012;
  --ink-2:#42424A;
  --muted:#8C8C93;
  --line:#DCD7CF;
  --accent:#E8451F;
  --card:#FFFFFF;
  --maxw:1280px;
  --gut:clamp(20px,5vw,64px);
  --font-sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Helvetica,Arial,sans-serif;
  --font-display:"Georgia","Times New Roman","Songti SC","SimSun",serif;
}

html,body{background:var(--paper);color:var(--ink);font-family:var(--font-sans)}

/* ---------- type ---------- */
h1,h2,h3,.site-branding .brand,.woocommerce-loop-product__title,.entry-title{
  font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;color:var(--ink)
}
h1.entry-title,.woocommerce-products-header__title{font-size:clamp(34px,5vw,60px);line-height:1.02;margin:0 0 .2em}
a{color:var(--ink)}

/* ---------- header ---------- */
.site-header{
  background:color-mix(in srgb,var(--paper) 88%,transparent);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  padding-block:14px;
}
.site-header .col-full{max-width:var(--maxw);padding-inline:var(--gut)}
.flaeon-brand .brand{font-family:var(--font-display);font-size:24px;letter-spacing:-.01em;text-decoration:none}
.flaeon-brand .brand span{color:var(--accent)}
.storefront-primary-navigation,.main-navigation{
  background:transparent;border:0
}
.main-navigation ul li a{font-size:14px;color:var(--ink-2)}
.main-navigation ul li a:hover{color:var(--ink)}
.site-search input[type=search]{
  background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:8px 14px
}

/* ---------- hero / page ---------- */
.storefront-breadcrumb{display:none}
.content-area,.site-main{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}

/* ---------- product grid ---------- */
ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,36px);margin:2.5rem 0}
ul.products::before,ul.products::after{display:none}
ul.products li.product{
  width:auto;margin:0;float:none;background:var(--card);border:1px solid var(--line);
  border-radius:2px;overflow:hidden;padding:0 0 18px;text-align:left;
  transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s
}
ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(16,16,18,.08)}
ul.products li.product img{border-radius:0;margin:0;aspect-ratio:4/5;object-fit:cover;background:var(--paper-2)}
ul.products li.product .woocommerce-loop-product__title{
  font-size:17px;padding:16px 18px 4px;letter-spacing:0
}
.flaeon-meta{margin:0;padding:0 18px;font-size:13px;color:var(--muted)}
ul.products li.product .price{
  display:block;padding:10px 18px 0;color:var(--ink);font-size:15px;font-weight:500
}
ul.products li.product .button{
  margin:16px 18px 0;background:var(--ink);color:var(--paper);border:0;border-radius:999px;
  padding:11px 18px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;width:auto
}
ul.products li.product .button:hover{background:var(--accent);color:#fff}
ul.products li.product .onsale{
  background:var(--accent);color:#fff;border-radius:999px;left:14px;top:14px;min-height:0;
  padding:5px 10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase
}

/* ---------- single product ---------- */
.single-product div.product{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,64px);align-items:start}
.single-product div.product .woocommerce-product-gallery{width:auto;float:none}
.single-product div.product .summary{width:auto;float:none;margin:0}
.single-product div.product .product_title{font-size:clamp(28px,3.4vw,44px);line-height:1.05}
.single-product div.product p.price{font-size:22px;color:var(--ink);margin:.6em 0}
.single-product .woocommerce-product-details__short-description{color:var(--ink-2)}
.single-product div.product form.cart .button,.single_add_to_cart_button{
  background:var(--ink);color:var(--paper);border-radius:999px;border:0;padding:14px 26px;
  text-transform:uppercase;letter-spacing:.05em;font-size:13px
}
.single_add_to_cart_button:hover{background:var(--accent);color:#fff}
.single-product div.product .quantity input{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px}

/* ---------- forms / buttons ---------- */
button,input[type=submit],.button{
  font-family:var(--font-sans)
}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  background:var(--paper-2);border-top:2px solid var(--ink);color:var(--ink)
}
.woocommerce-message::before,.woocommerce-info::before{color:var(--accent)}

/* ---------- footer ---------- */
.site-footer{
  background:var(--ink);color:color-mix(in srgb,var(--paper) 82%,transparent);margin-top:4rem
}
.site-footer a{color:var(--paper)}
.site-footer a:hover{color:var(--accent)}
.site-footer .col-full{max-width:var(--maxw);padding-inline:var(--gut)}

@media (max-width:900px){
  ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .single-product div.product{grid-template-columns:1fr}
}
@media (max-width:560px){
  ul.products{grid-template-columns:1fr}
}
