/* Tiệm Hoa Nắng — v5 mobile-first refinement */
:root{
  --thn-font:"Manrope","Segoe UI Variable","Segoe UI",sans-serif;
  --thn-display:"DM Serif Display",Georgia,serif;
  --thn-ink:#191919;
  --thn-muted:#595959;
  --thn-line:#e9e4df;
  --thn-paper:#ffffff;
  --thn-soft:#faf8f5;
  --thn-brand:#9a3652;
  --thn-brand-dark:#7f2c44;
  --thn-zalo:#0068ff;
  --thn-zalo-dark:#0059da;
}

body,
button,
input,
select,
textarea{
  font-family:var(--thn-font)!important;
  color:var(--thn-ink);
}

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:400!important;
  letter-spacing:-.018em!important;
  line-height:1.08!important;
}

.section-kicker,
.collection-row__eyebrow{
  font-family:var(--thn-font)!important;
  letter-spacing:.08em!important;
  font-weight:800!important;
}

/* Header */
.site-header{
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid var(--thn-line)!important;
}
.header-main{min-height:72px!important}
.brand__text strong{font-family:var(--thn-display)!important;font-size:19px!important;font-weight:400!important;letter-spacing:-.015em!important}
.brand__text small{font-size:9px!important}
.header-tools{margin-left:auto}
.header-search summary{
  border-radius:50%;
  transition:background .18s ease;
}
.header-search summary:hover{background:#f5f3f0}
.header-zalo,.announcement{display:none!important}

/* Brand buttons */
.cta-primary{
  min-height:44px!important;
  padding:11px 18px!important;
  border-radius:999px!important;
  background:var(--thn-brand)!important;
  color:#fff!important;
  border:1px solid var(--thn-brand)!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
}
.cta-primary:hover{background:var(--thn-brand-dark)!important;border-color:var(--thn-brand-dark)!important}

.cta-zalo,.mobile-menu__zalo,.nang-zalo-product,.mobile-sticky__zalo{
  background:var(--thn-zalo)!important;
  border-color:var(--thn-zalo)!important;
  color:#fff!important;
}
.cta-zalo:hover,.mobile-menu__zalo:hover,.nang-zalo-product:hover,.mobile-sticky__zalo:hover{
  background:var(--thn-zalo-dark)!important;
}

/* Hero */
.hero-banner{
  min-height:620px!important;
  background:#222!important;
}
.hero-banner__media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.hero-banner__shade{
  background:linear-gradient(90deg,rgba(10,10,10,.82) 0%,rgba(10,10,10,.58) 42%,rgba(10,10,10,.12) 82%)!important;
}
.hero-banner__content{
  max-width:610px!important;
  padding:78px 0!important;
  color:#fff!important;
}
.hero-banner h1{
  color:#fff!important;
  max-width:590px;
  font-size:clamp(44px,5vw,64px)!important;
}
.hero-banner .section-kicker{color:#fff!important}
.hero-banner__content>p:not(.section-kicker){
  color:#fff!important;
  max-width:570px!important;
  font-size:17px!important;
}

/* Circular categories */
.category-strip{background:#fff!important}
.category-card__image{
  border-radius:50%!important;
  background:#f7f4f1!important;
  overflow:hidden!important;
}
.category-card__image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:50%!important;
  padding:0!important;
}
.category-card strong{
  font-family:var(--thn-font)!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
}

/* Product collections */
.product-collections__intro{margin-bottom:42px!important}
.collection-row{border-bottom:1px solid var(--thn-line)!important}
.collection-row__head h3{font-size:clamp(26px,2.4vw,34px)!important}
.collection-row__head p:not(.collection-row__eyebrow){color:var(--thn-muted)!important}

.product-grid{align-items:start}
.product-card{text-align:center!important}
.product-card__image{
  aspect-ratio:4/5!important;
  background:#f7f5f2!important;
  overflow:hidden!important;
}
.product-card__image img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:8px!important;
}
.product-card__body{padding:13px 5px 0!important}
.product-card h3{
  display:-webkit-box!important;
  min-height:43px!important;
  max-height:43px!important;
  overflow:hidden!important;
  font-size:14px!important;
  line-height:1.52!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
.product-card__price{
  margin-top:8px!important;
  color:#292929!important;
  font-size:14px!important;
  font-weight:750!important;
}
.product-card__rating--empty{display:none!important}
.product-card__rating{
  min-height:18px!important;
  margin-top:6px!important;
}
.product-card__rating .star-rating{color:#d29a32!important}
.product-card__view{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  margin-top:10px!important;
  padding:7px 12px!important;
  border:1px solid #cfc9c4!important;
  border-radius:999px!important;
  color:#292929!important;
  font-size:10.5px!important;
  font-weight:750!important;
  text-decoration:none!important;
}
.product-card__view:hover{border-color:var(--thn-brand)!important;background:var(--thn-brand)!important;color:#fff!important}
.product-card__view{border-color:var(--thn-brand)!important;color:var(--thn-brand-dark)!important}

/* Trust gallery */
.real-gallery{background:var(--thn-soft)!important}
.real-gallery__item{border-radius:10px!important}
.real-gallery__item img{object-fit:cover!important}
.real-gallery__item figcaption{display:none!important}

/* Value cards */
.value-grid{background:#fff!important}
.value-grid__items{
  border-color:var(--thn-line)!important;
}
.value-card{border-color:var(--thn-line)!important}
.value-card h3{font-size:21px!important}
.value-card p{color:var(--thn-muted)!important}

/* Local + FAQ */
.local-seo{background:var(--thn-soft)!important}
.local-seo p,.faq-list details p{color:var(--thn-muted)!important}
.faq-list details,.faq-list details:last-child{border-color:var(--thn-line)!important}
.faq-list summary{font-weight:700!important}

/* Woo archive */
.woocommerce ul.products{
  align-items:start!important;
}
.woocommerce ul.products li.product{text-align:center!important}
.woocommerce ul.products li.product a img{
  aspect-ratio:4/5!important;
  object-fit:contain!important;
  padding:8px!important;
  background:#f7f5f2!important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display:-webkit-box!important;
  min-height:43px!important;
  max-height:43px!important;
  overflow:hidden!important;
  padding:0 4px!important;
  font-size:14px!important;
  line-height:1.52!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}
.woocommerce ul.products li.product .price{
  color:#292929!important;
  font-size:14px!important;
  font-weight:750!important;
}
.woocommerce ul.products li.product .button.nang-view-product{
  display:inline-flex!important;
  width:auto!important;
  min-height:36px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:10px auto 0!important;
  padding:7px 13px!important;
  border:1px solid #cfc9c4!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#292929!important;
  font-size:10.5px!important;
  font-weight:750!important;
}
.woocommerce ul.products li.product .button.nang-view-product{border-color:var(--thn-brand)!important;color:var(--thn-brand-dark)!important}
.woocommerce ul.products li.product .button.nang-view-product:hover{
  border-color:var(--thn-brand)!important;
  background:var(--thn-brand)!important;
  color:#fff!important;
}

/* Product detail */
.woocommerce div.product .product_title{
  font-size:clamp(30px,3.6vw,42px)!important;
}
.woocommerce div.product p.price{
  color:#222!important;
  font-size:20px!important;
  font-weight:760!important;
}
.nang-zalo-product{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  margin-top:18px!important;
  padding:12px 18px!important;
  border-radius:999px!important;
  box-shadow:0 8px 24px rgba(0,104,255,.16)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.04em!important;
}
.nang-zalo-product small{display:none!important}
.nang-zalo-note{
  margin:9px 0 0!important;
  color:#5b5b5b!important;
  font-size:11px!important;
  line-height:1.55!important;
  text-align:center!important;
}
.nang-assurance{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin:18px 0 0!important;
  padding-top:16px!important;
  border-top:1px solid var(--thn-line)!important;
}
.nang-assurance>div{
  display:grid!important;
  justify-items:center!important;
  gap:7px!important;
  padding:8px 6px!important;
  border:0!important;
  text-align:center!important;
}
.nang-assurance svg{color:#4d4d4d}
.nang-assurance p{margin:0!important}
.nang-assurance strong{font-size:10.5px!important}
.nang-assurance small{
  margin-top:3px!important;
  color:#5b5b5b!important;
  font-size:9px!important;
  line-height:1.45!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex!important;
  gap:24px!important;
  margin:34px 0 22px!important;
  padding:0!important;
  border-bottom:1px solid var(--thn-line)!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block!important;
  padding:0 0 11px!important;
  color:#5a5a5a!important;
  font-size:12px!important;
  font-weight:700!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:#111!important;
  border-bottom:2px solid #111!important;
}
.woocommerce div.product .woocommerce-tabs .panel{
  margin:0!important;
  padding:0!important;
}

/* Tam Kỳ */
.tamky-home-hero .hero-banner__shade{
  background:linear-gradient(90deg,rgba(15,15,15,.72),rgba(15,15,15,.48) 42%,rgba(15,15,15,.08) 80%)!important;
}
.tamky-location-card{
  border:1px solid var(--thn-line)!important;
  border-radius:12px!important;
  background:#fff!important;
}
.tamky-location-card a{color:var(--thn-brand)!important}
.tamky-final-cta{
  padding:58px 0!important;
  background:#1e1e1e!important;
}
.tamky-final-cta .cta-zalo{
  border-radius:999px!important;
  box-shadow:none!important;
}

/* Mobile */
@media(max-width:820px){
  .header-main{min-height:66px!important}
  .desktop-nav{display:none!important}
  .header-tools{display:flex!important;margin-left:auto!important}
  .mobile-menu{display:block!important;margin-left:0!important}
  .brand__text small{display:none!important}

  .hero-banner{
    min-height:clamp(500px,125vw,650px)!important;
  }
  .hero-banner__media img{
    object-position:center!important;
  }
  .hero-banner__shade{
    background:linear-gradient(180deg,rgba(7,7,7,.02) 12%,rgba(7,7,7,.34) 48%,rgba(7,7,7,.88) 100%)!important;
  }
  .hero-banner__inner{
    display:flex!important;
    align-items:flex-end!important;
    min-height:inherit!important;
  }
  .hero-banner__content{
    max-width:100%!important;
    padding:0 0 42px!important;
  }
  .hero-banner h1{
    max-width:560px!important;
    font-size:clamp(35px,9vw,48px)!important;
  }
  .hero-banner__content>p:not(.section-kicker){
    max-width:540px!important;
    font-size:15px!important;
  }

  .product-grid,
  .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:26px 12px!important;
  }

  .collection-row__head{
    display:grid!important;
    gap:12px!important;
  }
  .collection-row__head .text-link{justify-self:start}

  .real-gallery__grid--masonry{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:190px!important;
    gap:9px!important;
  }
  .real-gallery__item:nth-child(n){
    grid-column:span 1!important;
    grid-row:span 1!important;
  }
  .real-gallery__item:nth-child(1),
  .real-gallery__item:nth-child(5){
    grid-row:span 2!important;
  }

  .mobile-sticky{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:180!important;
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:0!important;
    border:0!important;
    border-top:1px solid #e5e0dc!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:0 -8px 24px rgba(0,0,0,.08)!important;
  }
  .mobile-sticky a{
    display:flex!important;
    min-height:58px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    padding:8px 6px!important;
    color:#333!important;
    font-size:10px!important;
    font-weight:750!important;
    border-right:1px solid #eee9e4!important;
  }
  .mobile-sticky a:last-child{border-right:0!important}
  .mobile-sticky__zalo{
    background:#fff!important;
    color:var(--thn-zalo)!important;
  }
  .mobile-sticky__zalo:hover{background:#f6f9ff!important;color:var(--thn-zalo-dark)!important}
  .mobile-sticky svg{flex:0 0 auto}
  body{padding-bottom:64px!important}

  .woocommerce div.product{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
}

@media(max-width:620px){
  .container{width:min(calc(100% - 22px),var(--container))!important}
  .header-search{display:block!important}
  .header-search summary{width:36px!important;height:36px!important}
  .brand__mark{width:38px!important;height:38px!important}
  .brand__text strong{font-size:15px!important}
  .mobile-menu summary{width:36px!important;height:36px!important}

  .product-collections__intro{
    margin-bottom:30px!important;
  }
  .product-collections__intro-copy{
    display:none!important;
  }
  .section-title h2{
    font-size:28px!important;
  }

  .category-grid{
    grid-template-columns:repeat(5,110px)!important;
    gap:12px!important;
    overflow-x:auto!important;
    padding:2px 2px 10px!important;
    scrollbar-width:none!important;
  }
  .category-grid::-webkit-scrollbar{display:none!important}
  .category-card__image{width:104px!important}
  .category-card strong{font-size:13px!important}

  .collection-row{
    margin-bottom:48px!important;
    padding-bottom:48px!important;
  }
  .collection-row__head h3{font-size:25px!important}
  .collection-row__head p:not(.collection-row__eyebrow){
    display:none!important;
  }

  .product-card h3,
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    min-height:42px!important;
    max-height:42px!important;
    font-size:13px!important;
  }
  .product-card__view,
  .woocommerce ul.products li.product .button.nang-view-product{
    min-height:34px!important;
    padding:7px 10px!important;
    font-size:10px!important;
  }

  .nang-assurance{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:4px!important;
  }
  .nang-assurance small{display:none!important}

  .tamky-final-cta .local-final-cta__inner{
    display:grid!important;
    gap:22px!important;
  }
}
