/* TinyHug HOT SALE / campaign layer — peach · teal · cream. Real product photos only. */
:root{--th-sale-bar-h:42px}

/* Thin sticky sale bar */
.announcement.th-sale-sticky{
  position:sticky;top:0;z-index:40;padding:0;
  background:linear-gradient(90deg,#f7d5cb 0%,#f6e6d4 48%,#d7e6df 100%)!important;
  color:#2a211c!important;border-bottom:1px solid rgba(42,33,28,.08);
  text-transform:none!important;letter-spacing:0!important;
  font-size:12.5px!important;font-weight:600!important
}
.announcement.th-sale-sticky a{
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  padding:8px 16px;color:#2a211c!important;text-decoration:none
}
.th-sale-fox{width:22px;height:22px;object-fit:contain;border-radius:50%;background:rgba(255,255,255,.55);box-shadow:0 2px 6px rgba(65,47,36,.1)}
.th-sale-pill{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:#bf452e;color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.th-sale-cta{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#2a211c;color:#fff!important;font-size:11.5px;font-weight:700}
.site-header{top:var(--th-sale-bar-h)!important}

/* Single trust strip under header */
.th-trust-compact{
  display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;
  padding:10px 16px;background:#fff;border-bottom:1px solid rgba(47,42,39,.08);
  font-size:12.5px;font-weight:600;color:#2f2a27
}
.th-trust-compact span{display:inline-flex;align-items:center;gap:7px}
.th-trust-compact span:before{content:"";width:5px;height:5px;border-radius:50%;background:#a7c9bc;box-shadow:0 0 0 3px rgba(167,201,188,.22)}

/* Weekend featured offer */
.th-weekend-sale{
  margin:20px clamp(16px,4vw,72px) 8px;padding:clamp(20px,3.6vw,34px);
  border-radius:28px;background:linear-gradient(135deg,#fffaf5 0%,#f7eee6 55%,#e8f2ee 100%);
  border:1px solid rgba(47,42,39,.07);box-shadow:0 14px 40px rgba(65,47,36,.07);
  display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:center
}
.th-weekend-copy .eyebrow{margin:0 0 8px}
.th-weekend-copy h2{
  margin:0 0 10px;font-family:'DM Serif Display',serif;font-weight:400;letter-spacing:-.03em;
  font-size:clamp(1.9rem,3.2vw,2.75rem);line-height:1.05;color:#2a211c
}
.th-weekend-copy p{margin:0 0 16px;color:#6f655f;line-height:1.6;max-width:44ch;font-size:15px}
.th-weekend-prices{display:grid;gap:7px;margin:0 0 18px;padding:0}
.th-weekend-prices li{list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:13px;color:#5c534d}
.th-weekend-prices strong{color:#bf452e;font-size:15px}
.th-weekend-prices s,.th-weekend-prices del{color:#a08d81;text-decoration:line-through}
.th-weekend-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.th-weekend-note{font-size:12px;color:#8a7f76}
.th-weekend-mosaic{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:1fr 1fr;gap:10px;min-height:280px}
.th-weekend-mosaic figure{margin:0;border-radius:20px;overflow:hidden;background:#efe4d8;border:1px solid rgba(92,67,47,.08)}
.th-weekend-mosaic figure.th-mosaic-hero,
.th-weekend-mosaic figure:first-child{grid-row:1/-1;min-height:0;aspect-ratio:auto;height:100%}
.th-weekend-mosaic img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;min-height:110px}
/* Clean square lifestyle — never crop product off-frame */
.th-weekend-mosaic figure.th-mosaic-hero img,
.th-weekend-mosaic figure:first-child img{object-fit:cover;object-position:center 40%;min-height:0}

/* Slim social proof near buy path */
.th-social-proof{padding:14px 18px;text-align:center;background:#fff;border-bottom:1px solid rgba(47,42,39,.07)}
.th-social-proof p{margin:0;font-size:13px;color:#6f655f}
.th-social-proof strong{color:#2a211c;font-weight:700}
.th-social-proof a{color:#9b665b;font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* Consistent struck prices: pair + bundle + offer math */
.bundle-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.bundle-price strong{color:#bf452e}
.bundle-price del,.bundle-price s{color:#a08d81;font-size:18px;font-weight:500;text-decoration:line-through}
.bundle-price span{font-size:13px;color:#6d5f56}
.bottle-pair-price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}
.bottle-pair-price strong{font-size:1.45rem;color:#bf452e}
.bottle-pair-price .th-price-was,
.bottle-pair-price s,
.bottle-pair-price del{color:#a08d81;font-size:.9rem;font-weight:500;text-decoration:line-through}
.bottle-pair-price .th-pair-note{font-size:.78rem;color:#6f675b;width:100%}
.pair-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.pair-price strong{color:#bf452e}
.pair-price del,.pair-price s{color:#a08d81;text-decoration:line-through;font-size:1.05rem}
.offer-math span{text-decoration:none!important;color:#6f655f!important;font-size:13px!important}
.offer-math s,.offer-math del{text-decoration:line-through;color:#9b918b}

/* Product card anatomy — consistent mobile-first */
.product-card{
  display:flex;flex-direction:column;background:#fff;border-radius:24px;padding:10px;
  border:1px solid rgba(47,42,39,.07);box-shadow:0 10px 28px rgba(65,47,36,.05)
}
.product-card .product-info{display:grid;gap:8px;padding:14px 8px 8px}
.product-card .product-info > div:first-child{min-width:0}
.product-card .product-info h3{margin:0 0 4px;font-size:15.5px;line-height:1.25;letter-spacing:-.01em}
.product-card .product-info p{margin:0;font-size:12px;color:#6f655f;line-height:1.4}
.product-card .th-price-sale{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:2px}
.product-card .product-actions{margin-top:auto;padding:4px 4px 6px}
.product-card .product-promo{padding:0 8px 10px;font-size:11px;color:#8a6c5f;line-height:1.35}
.badge.th-badge-sale,.th-sale-badge{
  background:#bf452e;color:#fff;border-radius:999px;font-weight:800;letter-spacing:.04em
}
.th-sale-badge{display:inline-flex;align-items:center;padding:3px 8px;font-size:10px}

/* Give Puki room; keep sticky ATC from colliding on PDP */
.product-sheet .th-sticky-atc{padding-right:88px;z-index:5;border-radius:0;box-shadow:0 -8px 24px rgba(65,47,36,.06)}
@media(min-width:821px){
  .product-sheet .th-sticky-atc{padding-right:18px}
}

@media(max-width:900px){
  .th-weekend-sale{grid-template-columns:1fr;padding:20px}
  .th-weekend-mosaic{min-height:200px}
}
@media(max-width:620px){
  :root{--th-sale-bar-h:auto}
  .announcement.th-sale-sticky a{gap:6px;padding:8px 12px;font-size:11.5px}
  .th-sale-cta{padding:5px 10px}
  .site-header{top:0!important}
  .th-trust-compact{gap:6px 14px;padding:9px 12px;font-size:11.5px}
  .th-weekend-sale{margin:14px 12px 4px;border-radius:22px;padding:18px}
  .th-weekend-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:8px;min-height:0}
  .th-weekend-mosaic figure.th-mosaic-hero,
  .th-weekend-mosaic figure:first-child{grid-row:auto;grid-column:1/-1;aspect-ratio:1/1;min-height:0;max-height:none}
  .th-weekend-mosaic figure.th-mosaic-hero img,
  .th-weekend-mosaic figure:first-child img{object-fit:contain;object-position:center center;min-height:0;background:#efe4d8}
  .th-social-proof{padding:12px 14px}
  .product-card{border-radius:20px;padding:8px}
  .product-card .product-media{height:300px}
  .product-card .product-info{padding:12px 6px 6px}
  .product-card .product-actions{grid-template-columns:1fr;gap:8px}
  .essentials-merch{gap:26px!important}
  .intro-section.section,#categories{padding-top:36px!important}
  .products-section{padding-top:28px!important}
}
