/* Preserve the existing controls within the approved visual identity. */
.functional-home .welcome-banner-wrap { padding:0 24px; margin:25px auto 8px; }
.functional-home .welcome-box p { max-width:720px; }
.functional-home .home-featured { padding-top:22px; padding-bottom:35px; }
.functional-home .approved-category-grid { max-width:1150px; margin:20px auto 22px; }
.functional-home .catalog-filterbar { margin:0 0 16px; }
.functional-home .catalog-status { margin-top:18px; }
.functional-home .catalog-status>span { font-size:12px; }
.home-product-card { position:relative; }
.home-product-card .product-info { align-items:stretch; padding:16px; }
.home-product-card .product-category { text-align:center; font-size:11px; margin-bottom:5px; }
.home-product-card .product-info h3 { text-align:center; margin-bottom:16px; }
.home-product-card .product-bottom { display:flex; align-items:center; justify-content:space-between; width:100%; gap:10px; margin:0 0 12px; }
.home-product-card .product-bottom small { display:block; font-size:10px; color:var(--muted); }
.home-product-card .product-bottom strong { font-size:20px; }
.home-product-card .add-button { display:flex; align-items:center; justify-content:center; width:44px; height:44px; flex:0 0 44px; border-radius:7px; }
.home-product-card .add-button span { display:none; }
.home-product-card .button { width:100%; min-height:40px; }
.wishlist-button,.related-card .wishlist-button { display:flex; align-items:center; justify-content:center; width:40px; height:40px; top:9px; right:9px; z-index:2; background:#fffaf1ee; color:var(--pink-dark); border:1px solid #ead9c4; }
.wishlist-button svg { width:21px; height:21px; }
.wishlist-button.active { background:var(--pink-light); border-color:var(--pink); color:var(--pink); }
.wishlist-button.active svg { fill:currentColor; }
.product-tag { display:block; font-size:10px; padding:5px 8px; max-width:calc(100% - 18px); }
.catalog-page .product-category { font-size:10px; margin-bottom:5px; }
.catalog-page .product-bottom { display:block; }
.catalog-page .product-bottom small { display:block; font-size:10px; color:var(--muted); }
.catalog-page .product-bottom .add-button { margin-top:12px; }
.related-card .product-category { font-size:10px; }
.related-card .wishlist-button { width:34px; height:34px; top:5px; right:5px; }
.related-card .product-info h3 { padding-right:25px; }
.related-card .product-bottom { display:flex; align-items:center; gap:8px; }
.related-card .product-bottom small { display:block; font-size:9px; }
.related-card .add-button { display:flex; align-items:center; justify-content:center; height:38px; width:38px; flex-basis:38px; border-radius:6px; }
.related-card .add-button span { display:none; }
.related-section .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.product-description>.eyebrow { margin-bottom:10px; }
.product-occasion { margin:12px 0; font-size:12px; }
.product-payments .payment-table { margin-top:20px; }
.gallery-glimpse .gallery-tile { aspect-ratio:410/234; }
.retained-vip { background:#f4eadc; }
.retained-vip .vip-strip-inner { grid-template-columns:1fr 1.3fr; padding-block:32px; gap:40px; }
.retained-vip .vip-copy h3 { font-size:30px; }
.footer-details { padding-bottom:24px; }
.footer-details p { margin-bottom:7px; }
@media(max-width:1100px) {
  .functional-home .catalog-filterbar { grid-template-columns:1fr 175px; }
  .functional-home .catalog-filterbar .store-chips { grid-column:1/-1; grid-row:2; }
}
@media(max-width:800px) {
  .retained-vip .vip-strip-inner { grid-template-columns:1fr; gap:20px; }
  .related-section .product-grid { grid-template-columns:1fr; }
}
@media(max-width:560px) {
  .functional-home .catalog-filterbar { grid-template-columns:1fr; }
  .functional-home .catalog-filterbar .store-chips { grid-column:1; grid-row:auto; }
  .functional-home .approved-category-grid { margin-top:18px; }
  .functional-home .catalog-status { align-items:flex-start; }
  .home-product-card .product-info { padding:12px 10px; }
  .home-product-card .product-info h3 { font-size:15px; min-height:40px; margin-bottom:9px; }
  .home-product-card .product-bottom { flex-wrap:wrap; }
  .home-product-card .product-bottom strong { font-size:18px; }
  .home-product-card .product-bottom small { font-size:9px; }
  .home-product-card .wishlist-button { width:36px; height:36px; }
  .home-product-card .product-tag { font-size:9px; padding:4px 6px; }
  .home-product-card .add-button { width:40px; height:44px; flex-basis:40px; }
  .retained-vip .vip-strip-inner { padding-block:28px; }
  .retained-vip .vip-form .button { width:100%; }
  .related-card .product-info h3 { padding-right:24px; }
}
