/* v5.6.45 canonical shared-component rules. Overrides previously conflicting legacy variants. */
/* Keep the shop hero peach, with no inherited multicolor glow from generic inner-hero. */
.inner-hero.shop-hero{background:#efcfbb !important;background-image:linear-gradient(112deg,#f3cfb9 0%,#efd0c0 66%,#ead0c7 100%) !important}
.inner-hero.shop-hero::after{content:none !important;display:none !important}
/* Keep image and navigation interactions separate and independently accessible. */
.shop-grid .product-card,.product-grid .product-card{position:relative}
.shop-grid .tt-product-card-link,.product-grid .product-card{cursor:pointer}
.shop-grid .tt-product-card-link{position:relative;z-index:1;display:block;pointer-events:auto !important}
.shop-grid .tt-product-card-link .product-visual{pointer-events:none}
.product-grid>.product-card>.tt-preview-chip,.shop-grid .product-card>.tt-preview-chip{position:absolute;z-index:4;top:10px;right:10px;bottom:auto;opacity:0}
@media(hover:hover) and (pointer:fine){.product-card:hover>.tt-preview-chip,.product-card:focus-within>.tt-preview-chip{opacity:1;transform:none}}
/* Optical art fit: prohibit stretching; preserve the original image ratio. */
.fall-invitation-art img{width:100%;height:auto;object-fit:contain;aspect-ratio:auto;max-height:none}
.hero-picture img{image-rendering:auto}
/* Footer uniformly shared across all pages, including detail pages. */
.tt-product-page + .footer,.footer{background:var(--cream)}
@media(max-width:620px){
 .inner-hero.shop-hero{background-image:linear-gradient(145deg,#f3ceb7,#e9c7be) !important}
 .product-grid>.product-card>.tt-preview-chip,.shop-grid .product-card>.tt-preview-chip{display:none !important}
}

/* v5.6.46 single-source corrective components; no decorative overlay. */
:root{--tt-catalog-cream:#f5f1e8}
@media(min-width:861px){
  main>.hero{width:min(1500px,calc(100% - 4.5%))!important;height:clamp(370px,31vw,480px)!important;max-width:none!important;margin:22px auto 0!important;overflow:hidden!important}
  main>.hero .hero-picture{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important}
  main>.hero .hero-picture img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center center!important;opacity:1!important;transform:none!important}
  main>.hero .hero-copy{z-index:2!important;position:relative!important;width:calc(100% - 48px)!important;margin:auto!important}
  main>.hero:before{background:linear-gradient(90deg,rgba(255,250,243,.76) 0%,rgba(255,250,243,.45) 26%,transparent 52%)!important}
}
.inner-hero.shop-hero,.shop-hero{background-color:#f1c8ae!important;background-image:linear-gradient(110deg,#f3c6a8 0%,#f2c8b6 66%,#efcbd0 100%)!important}
.inner-hero.shop-hero::after{display:none!important;content:none!important}
.fall-invitation-art img{width:100%!important;height:auto!important;aspect-ratio:2700/1365!important;max-height:none!important;object-fit:contain!important}
.tt-related-create{position:relative!important;background:#46244b!important;padding:clamp(17px,2vw,28px)!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important}
.tt-related-create::before,.tt-related-create::after,.tt-related-create>div::before,.tt-related-create h3::before{display:none!important;content:none!important}
.tt-related-create h3{white-space:pre-line!important;font-weight:700!important;letter-spacing:-.025em!important}
.tt-related-head>a{display:inline-flex!important;min-height:42px!important;align-items:center!important;padding:10px 15px!important;border:1px solid #b8a4aa!important;border-radius:9px!important;font-weight:700!important;text-decoration:none!important}
.tt-related-card img{background:#f5f1e8!important;padding:0!important;object-fit:contain!important;border:0!important}
.tt-product-page+.footer .footer-brand p{font-family:'Caveat',cursive!important;font-style:normal!important;font-size:clamp(19px,2vw,28px)!important;font-weight:700!important;line-height:1.1!important}
@media(max-width:760px){.tt-related-head>a{font-size:12px!important;padding:7px 9px!important;min-height:36px!important}}
