/* Tiệm Hoa Nắng — v6 consult-first UX */
:root{
  --thn-font:"Manrope","Segoe UI",sans-serif;
  --thn-display:"Cormorant Garamond",Georgia,serif;
  --thn-paper:#ffffff;
  --thn-cream:#faf9f6;
  --thn-ink:#1f1f1f;
  --thn-body:#333333;
  --thn-muted:#66615e;
  --thn-line:#e8e2dc;
  --thn-brand:#8f3049;
  --thn-brand-dark:#76253b;
}

html,body{background:var(--thn-paper)!important}
body,button,input,select,textarea{
  font-family:var(--thn-font)!important;
  font-size:16px;
  color:var(--thn-body)!important;
}
h1,h2,h3,h4,h5,h6,
.brand__text strong,
.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce div.product .product_title{
  font-family:var(--thn-display)!important;
  font-weight:600!important;
  letter-spacing:-.018em!important;
  line-height:1.08!important;
  color:var(--thn-ink)!important;
}

/* Clean header: logo + menu only */
.site-header{background:#fff!important;border-bottom:1px solid var(--thn-line)!important}
.header-tools,.header-zalo,.announcement{display:none!important}
.desktop-nav{margin-left:auto!important}
.mobile-menu{margin-left:auto!important}
.header-main{min-height:72px!important}
.brand__text strong{font-size:21px!important}
.brand__text small{font-family:var(--thn-font)!important}

/* Hero */
.hero-banner{background:#181818!important}
.hero-banner__shade{
  background:linear-gradient(180deg,rgba(8,8,8,.03) 10%,rgba(8,8,8,.26) 48%,rgba(8,8,8,.82) 100%)!important;
}
.hero-banner h1,.hero-banner .section-kicker,.hero-banner__content>p:not(.section-kicker){color:#fff!important}
.hero-banner h1{font-size:clamp(42px,5.4vw,68px)!important}
.cta-primary{
  border-radius:2px!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.9)!important;
  color:#202020!important;
  box-shadow:none!important;
  letter-spacing:.07em!important;
}
.cta-primary:hover{background:var(--thn-brand)!important;border-color:var(--thn-brand)!important;color:#fff!important}

/* Light editorial sections */
.home-section,.category-strip,.product-collections,.value-grid,.faq-section{background:#fff!important}
.real-gallery,.local-seo,.tamky-hero,.local-hero{background:var(--thn-cream)!important}
.value-grid__items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.value-grid__items>.value-card:nth-child(3){display:none!important}
.value-grid__items>.value-card:nth-child(2){border-right:0!important}
.tamky-final-cta,.local-final-cta{
  background:var(--thn-cream)!important;
  color:var(--thn-ink)!important;
}
.tamky-final-cta h2,.tamky-final-cta p,.tamky-final-cta .section-kicker{color:inherit!important}

/* Product cards */
.product-card__image,
.woocommerce ul.products li.product a img{
  aspect-ratio:4/5!important;
  background:#f7f5f2!important;
  overflow:hidden!important;
}
.product-card__image img,
.woocommerce ul.products li.product a img{
  width:100%!important;height:100%!important;object-fit:contain!important;padding:8px!important;
}
.product-card h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  min-height:44px!important;
  max-height:44px!important;
}
.product-card__rating--empty{display:none!important}
.product-card__trust-rating{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:7px!important;
  color:#9a6a1f!important;
  font-size:12px!important;
  line-height:1!important;
}
.product-card__trust-rating>span{letter-spacing:.08em!important;font-size:12px!important}
.product-card__trust-rating small{color:var(--thn-muted)!important;font-size:10.5px!important;font-weight:700!important}
.home .product-card__rating,
.home .product-card__view{display:none!important}
.home .cta-primary,
.home .collection-row__head>.text-link,
.home .collection-row__eyebrow{display:none!important}
.product-card__view,
.woocommerce ul.products li.product .button.nang-view-product,
.woocommerce ul.products li.product .button.nang-zalo-order{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  margin-top:10px!important;
  padding:8px 13px!important;
  border:1px solid var(--thn-brand)!important;
  border-radius:2px!important;
  background:#fff!important;
  color:var(--thn-brand-dark)!important;
  font-family:var(--thn-font)!important;
  font-size:11px!important;
  font-weight:800!important;
}
.product-card__view:hover,
.woocommerce ul.products li.product .button.nang-view-product:hover,
.woocommerce ul.products li.product .button.nang-zalo-order:hover{
  background:var(--thn-brand)!important;color:#fff!important;
}

/* No ecommerce UI */
form.cart,.single_add_to_cart_button,.quantity,
.widget_shopping_cart,.woocommerce-mini-cart,.wc-block-mini-cart,
.cart-contents,.site-header .cart{display:none!important}

/* Product consultation CTA */
.nang-zalo-product{
  min-height:50px!important;
  border-radius:2px!important;
  background:var(--thn-brand)!important;
  border:1px solid var(--thn-brand)!important;
  box-shadow:none!important;
  color:#fff!important;
  font-family:var(--thn-font)!important;
  font-weight:800!important;
}
.nang-zalo-product:hover{background:var(--thn-brand-dark)!important;border-color:var(--thn-brand-dark)!important}
.nang-zalo-note{font-size:12px!important;color:var(--thn-muted)!important;text-align:left!important}
.nang-assurance{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  border-top:1px solid var(--thn-line)!important;
}
.nang-assurance>div{padding:10px 5px!important}
.nang-assurance strong{font-family:var(--thn-font)!important;font-size:11px!important}
.nang-assurance small{font-size:9.5px!important}

/* Hide common legacy floating-contact widgets; new sticky bar is the only mobile closer */
.float-contact,.floating-contact,.fixed-contact,.quick-contact,
.zalo-fixed,.messenger-fixed,.hotline-phone-ring-wrap,.fb-customerchat,
.vnw-helpbar,.vnw-sms-messenger,.vnw-alo-phone,.phonering-alo-phone{
  display:none!important;
}

/* Compact floating contact — no sticky bar. */
.mobile-sticky{display:none!important}
.contact-float{
  position:fixed!important;
  right:18px!important;
  bottom:20px!important;
  z-index:999!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
}
.contact-float a{
  width:48px!important;
  height:48px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  text-decoration:none!important;
  box-shadow:0 8px 22px rgba(22,22,22,.16)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.contact-float a:hover{transform:translateY(-2px)!important;box-shadow:0 10px 26px rgba(22,22,22,.2)!important}
.contact-float__phone{
  background:#fff!important;
  border:1px solid var(--thn-line)!important;
  color:var(--thn-ink)!important;
}
.contact-float__zalo{
  background:var(--thn-brand)!important;
  border:1px solid var(--thn-brand)!important;
  color:#fff!important;
  font-family:var(--thn-font)!important;
  font-weight:800!important;
  font-size:17px!important;
}
@media(max-width:820px){
  body{padding-bottom:0!important}
  .contact-float{right:14px!important;bottom:calc(14px + env(safe-area-inset-bottom))!important;gap:8px!important}
  .contact-float a{width:46px!important;height:46px!important}
  .hero-banner{min-height:clamp(520px,128vw,690px)!important}
  .hero-banner__content{padding:0 0 38px!important}
  .hero-banner h1{font-size:clamp(39px,11vw,52px)!important}
  .category-grid{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:108px!important;
    grid-template-columns:none!important;
    overflow-x:auto!important;
    gap:13px!important;
    scroll-snap-type:x proximity;
  }
  .category-card{scroll-snap-align:start}
}
/* v7 — cleaner catalog, customer-rating proof, floating contact */
.product-card__trust-rating{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin-top:6px!important;
  color:#b88722!important;
  font-family:var(--thn-font)!important;
  font-size:13px!important;
  letter-spacing:.035em!important;
}
.product-card__trust-rating small{
  color:var(--thn-muted)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:0!important;
}
.product-card__title{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  min-height:44px!important;
  max-height:44px!important;
  margin:0!important;
  font-family:var(--thn-font)!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.45!important;
  color:var(--thn-ink)!important;
}
.product-card__title a{color:inherit!important;text-decoration:none!important}
.archive-seo-intro{
  max-width:920px!important;
  margin:0 auto 28px!important;
  padding:20px 22px!important;
  border:1px solid var(--thn-line)!important;
  background:var(--thn-cream)!important;
}
.archive-seo-intro h2{
  margin:0 0 8px!important;
  font-size:30px!important;
}
.archive-seo-intro p{margin:0!important;color:var(--thn-muted)!important;line-height:1.7!important}
.seo-context-box{
  margin:30px 0 8px!important;
  padding:18px 20px!important;
  border-left:3px solid var(--thn-brand)!important;
  background:var(--thn-cream)!important;
}
.seo-context-box strong{
  font-family:var(--thn-display)!important;
  font-size:22px!important;
  color:var(--thn-ink)!important;
}
.seo-context-box p{margin:6px 0 0!important;line-height:1.65!important}
body.home .product-card__view,
body.home .collection-row__head>.text-link,
body.home .cta-primary,
.home-page .product-card__view,
.home-page .collection-row__head>.text-link,
.home-page .cta-primary{display:none!important}

.mobile-sticky{display:none!important}

.contact-float{
  position:fixed!important;
  right:18px!important;
  bottom:calc(18px + env(safe-area-inset-bottom))!important;
  z-index:999!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
}
.contact-float a{
  width:48px!important;
  height:48px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 8px 24px rgba(31,31,31,.16)!important;
  text-decoration:none!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.contact-float a:hover{transform:translateY(-2px)!important;box-shadow:0 10px 28px rgba(31,31,31,.20)!important}
.contact-float__phone{
  background:#fff!important;
  color:#1f1f1f!important;
  border:1px solid var(--thn-line)!important;
}
.contact-float__zalo{
  background:var(--thn-brand)!important;
  color:#fff!important;
  border:1px solid var(--thn-brand)!important;
  font-family:var(--thn-font)!important;
  font-size:15px!important;
  font-weight:800!important;
}
@media(max-width:820px){
  body{padding-bottom:0!important}
  .contact-float{right:14px!important;bottom:calc(14px + env(safe-area-inset-bottom))!important}
  .contact-float a{width:46px!important;height:46px!important}
}

.seo-link-hub{background:var(--thn-cream)!important}
.seo-link-hub__grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.seo-link-hub__grid a{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  min-height:118px!important;
  padding:18px!important;
  border:1px solid var(--thn-line)!important;
  background:#fff!important;
  color:var(--thn-ink)!important;
  text-decoration:none!important;
}
.seo-link-hub__grid strong{
  font-family:var(--thn-display)!important;
  font-size:19px!important;
  line-height:1.15!important;
  font-weight:600!important;
}
.seo-link-hub__grid span{
  color:var(--thn-muted)!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.seo-link-hub__grid a:hover{border-color:#c9b9ad!important;transform:translateY(-1px)}
@media(max-width:900px){.seo-link-hub__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){
  .seo-link-hub__grid{grid-template-columns:1fr!important}
  .seo-link-hub__grid a{min-height:0!important;padding:15px!important}

  .header-main{min-height:64px!important}
  .brand__mark{width:38px!important;height:38px!important}
  .brand__text strong{font-size:18px!important}
  .section-title h2{font-size:32px!important}
  .product-card h3,
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:15px!important;
  }
}