/* Baseline motion policy. Legacy decorative animation stays disabled here;
 * the lightweight interaction system at the end of this file re-enables only
 * purposeful, compositor-friendly motion. */
html { scroll-behavior: smooth !important; }

body:not(.home-page),
body:not(.home-page) *,
body:not(.home-page) *::before,
body:not(.home-page) *::after,
body.home-page *:not(.hero-slider):not(.hero-slider *):not(.stats-grid):not(.stats-grid *),
body.home-page *:not(.hero-slider):not(.hero-slider *):not(.stats-grid):not(.stats-grid *)::before,
body.home-page *:not(.hero-slider):not(.hero-slider *):not(.stats-grid):not(.stats-grid *)::after {
  animation: none !important;
  will-change: auto !important;
}

body:not(.home-page) .reveal,
body:not(.home-page) .intro-drop,
body:not(.home-page) .intro-from-left,
body:not(.home-page) .intro-from-right,
body.home-page .reveal,
body.home-page .intro-drop,
body.home-page .intro-from-left,
body.home-page .intro-from-right {
  opacity: 1 !important;
  filter: none !important;
  transform: none !important;
}

body:not(.home-page) .navy-dot-layer,
body:not(.home-page) .gold-dust-layer,
body:not(.home-page) .ambient-gold,
body:not(.home-page) .gold-cursor-halo,
body:not(.home-page) .luxury-cursor,
body:not(.home-page) .gf-circle-motif,
body.home-page main > :not(.hero-slider) .navy-dot-layer,
body.home-page main > :not(.hero-slider) .gold-dust-layer,
body.home-page main > :not(.hero-slider) .ambient-gold,
body.home-page main > :not(.hero-slider) .gf-circle-motif,
body.home-page .full-bleed-stats .gf-circle-motif,
body.home-page .site-footer .navy-dot-layer,
body.home-page .site-footer .gold-dust-layer {
  display: none !important;
}

body:not(.home-page) .site-header,
body:not(.home-page) .search-panel,
body:not(.home-page) .modal,
body:not(.home-page) .collection-hero-card,
body:not(.home-page) .catalog-toolbar,
body.home-page .site-header,
body.home-page .search-panel,
body.home-page .modal {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Neutralize legacy hover transforms, filters, shine layers, and shadows while
 * retaining pointer/keyboard click behavior and visible focus outlines. */
body:not(.home-page) :is(a,button,.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.feature,.gold-panel,.bullion-card):not(.site-header .brand):not(.hero-arrow):not(.spotlight-arrow):not(.gallery-arrow):not(.offer-arrow):hover,
body.home-page :is(a,button,.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.feature,.gold-panel):not(.site-header .brand):not(.hero-slider *):not(.hero-arrow):not(.spotlight-arrow):not(.gallery-arrow):not(.offer-arrow):hover {
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
}

/* The header logo is an absolutely positioned brand anchor. Keep its desktop
 * centering transform while the shared hover-neutralizer is active. */
@media (min-width:981px) {
  .site-header .brand:hover,
  .site-header .brand:focus,
  .site-header .brand:focus-visible,
  .site-header .brand:active {
    transform: translateY(-50%) !important;
    filter: none !important;
    box-shadow: none !important;
  }
}

body:not(.home-page) .nav-links a::after,
body.home-page .site-header .nav-links a::after,
body.home-page main > :not(.hero-slider) a::after,
body.home-page .site-footer a::after {
  display: none !important;
}

.footer-form-status {
  display: block;
  flex-basis: 100%;
  margin-top: .5rem;
  font-size: .8rem;
}

body:not(.home-page) :is(.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.feature,.gold-panel,.hot-selling-item,.bullion-card):hover::before,
body:not(.home-page) :is(.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.feature,.gold-panel,.hot-selling-item,.bullion-card):hover::after,
body.home-page :is(.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.feature,.gold-panel,.hot-selling-item):not(.hero-slider *):hover::before,
body.home-page :is(.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.feature,.gold-panel,.hot-selling-item):not(.hero-slider *):hover::after {
  opacity: 0 !important;
  transform: none !important;
}

body:not(.home-page) :is(.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.image-frame,.hot-selling-image-card,.bullion-card):hover img,
body.home-page :is(.product-card,.category-card,.service-card,.news-card,.store-card,.testimonial,.image-frame,.hot-selling-image-card):not(.hero-slider *):hover img {
  transform: none !important;
  filter: none !important;
}

.gold-cursor-halo,
.luxury-cursor { display: none !important; }

/* Re-enable the requested shared interactions after the legacy static policy. */
.btn{transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease,color .24s ease!important}
.btn::after{content:''!important;display:block!important;position:absolute!important;inset:-120% auto auto -35%!important;width:28%!important;height:340%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent)!important;transform:translateX(-180%) rotate(22deg)!important;z-index:0!important;pointer-events:none!important}
.nav-actions .icon-btn{transition:background-color .24s ease,color .24s ease,border-color .24s ease,transform .24s ease,box-shadow .24s ease!important}
.nav-actions .icon-btn:hover,.nav-actions .icon-btn:focus-visible{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important;transform:translateY(-2px)!important;box-shadow:0 10px 22px rgba(13,27,61,.18)!important}
.cart-control{position:relative;display:inline-flex;align-items:center}
.cart-control .cart-count{right:-7px;top:-7px;z-index:3}
.bullion-nav-cta{transition:transform .24s ease,color .24s ease,opacity .24s ease!important}
.bullion-nav-cta:hover,.bullion-nav-cta:focus-visible{transform:translateY(-2px)!important;color:var(--navy)!important}
.home-page .full-bleed-stats .stats-grid::before{
  content:''!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  inset:-55% -10%!important;
  background:url('../images/components/trust-bar/trust-bar-background.png?v=trust-art-v2-20260910') center center/cover no-repeat!important;
  opacity:.42!important;
  transform:translate3d(0,0,0) scale(1.04) rotate(-7.5deg);
  transform-origin:center!important;
  animation:gfTrustBackdropSway 10s ease-in-out infinite!important;
  will-change:transform!important;
  backface-visibility:hidden!important;
  pointer-events:none!important;
}
.stat::after{content:none!important;display:none!important;background:none!important;opacity:0!important;animation:none!important}

/* A short, compositor-friendly sheen occasionally crosses the full trust bar.
 * JavaScript only adds the active class; the rotating artwork stays separate. */
.home-page .full-bleed-stats .stats-grid::after{
  content:''!important;
  display:block!important;
  position:absolute!important;
  z-index:3!important;
  top:-18%!important;
  bottom:-18%!important;
  left:-34%!important;
  width:28%!important;
  background:linear-gradient(105deg,transparent 12%,rgba(255,255,255,.05) 34%,rgba(255,245,207,.28) 50%,rgba(255,255,255,.07) 66%,transparent 88%)!important;
  opacity:0!important;
  transform:translate3d(0,0,0) skewX(-14deg)!important;
  pointer-events:none!important;
}
.home-page .full-bleed-stats .stats-grid.trust-sheen-active::after{
  animation:gfTrustSheenSweep 1.35s cubic-bezier(.22,.72,.24,1) both!important;
  will-change:transform,opacity!important;
}

@keyframes gfTrustSheenSweep{
  0%{opacity:0;transform:translate3d(0,0,0) skewX(-14deg)}
  18%,76%{opacity:1}
  100%{opacity:0;transform:translate3d(600%,0,0) skewX(-14deg)}
}

/* Motion belongs to the display layer, not the image file, so replacing the
 * artwork does not change or remove the animation. The scale stays constant;
 * only the rotation moves. */
@keyframes gfTrustBackdropSway{
  0%,100%{transform:translate3d(0,0,0) scale(1.04) rotate(-7.5deg)}
  50%{transform:translate3d(0,0,0) scale(1.04) rotate(7.5deg)}
}
@media(prefers-reduced-motion:reduce){
  .home-page .full-bleed-stats .stats-grid::before{
    animation:none!important;
    transform:translate3d(0,0,0) scale(1.04)!important;
    will-change:auto!important;
  }
  .home-page .full-bleed-stats .stats-grid::after,
  .home-page .full-bleed-stats .stats-grid.trust-sheen-active::after{
    animation:none!important;
    opacity:0!important;
    will-change:auto!important;
  }
}

/* Arrow controls stay anchored on hover/focus; only their colour treatment changes. */
:is(.offer-arrow,.spotlight-arrow,.hero-arrow,.gallery-arrow){
  transition-property:background-color,color,border-color,box-shadow!important;
}
:is(.offer-arrow,.spotlight-arrow,.hero-arrow,.gallery-arrow):is(:hover,:focus-visible,:active){
  transform:translateY(-50%)!important;
}
@media(max-width:640px){
  .hero-arrow:is(:hover,:focus-visible){transform:none!important}
}

/* Keep validation feedback above an open product modal, offset to its outer edge. */
.gf-toast{
  z-index:10000!important;
  top:clamp(76px,11vh,132px)!important;
  right:clamp(18px,4vw,64px)!important;
  left:auto!important;
  bottom:auto!important;
  transform:translate3d(0,-10px,0)!important;
  transition:opacity 220ms ease,visibility 220ms ease,transform 220ms var(--gf-motion-ease)!important;
}
.gf-toast.show{transform:translate3d(0,0,0)!important}
.gf-toast.product-validation-toast{
  top:var(--gf-toast-top)!important;
  right:auto!important;
  left:var(--gf-toast-left)!important;
  width:var(--gf-toast-width,210px);
  border-radius:16px;
  text-align:center;
  transform:translate3d(0,calc(-50% - 10px),0)!important;
}
.gf-toast.product-validation-toast.show{transform:translate3d(0,-50%,0)!important}

/* Required weight feedback: two calm red breaths instead of a harsh persistent error state. */
@keyframes gfWeightRequiredBreath{
  0%,100%{border-color:rgba(230,207,154,.65);box-shadow:0 0 0 0 rgba(220,72,62,0)}
  25%,55%{border-color:#ef7567;box-shadow:0 0 0 5px rgba(220,72,62,.2),0 0 20px rgba(220,72,62,.42)}
}
.variant-picker.weight-required-flash .variant-choose{
  animation:gfWeightRequiredBreath .82s ease-in-out 2 both!important;
}

@media(max-width:640px){
  .gf-toast{right:12px;top:72px;max-width:calc(100vw - 24px)}
}
.products-page .products-showcase-v2::before{content:none!important;display:none!important;background:none!important;opacity:0!important}
.interactive-sheen,
button:not([disabled]):not(.hero-arrow):not(.spotlight-arrow):not(.gallery-arrow):not(.offer-arrow):not(.back-top):not(.wish):not(.close-modal),
.nav-products-dropdown a,
.bullion-nav-cta,
.catalog-investment-cta{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate;
}
.interactive-sheen::after,
button:not([disabled]):not(.hero-arrow):not(.spotlight-arrow):not(.gallery-arrow):not(.offer-arrow):not(.back-top):not(.wish):not(.close-modal)::after,
.nav-products-dropdown a::after,
.bullion-nav-cta::after,
.catalog-investment-cta::after{
  content:''!important;
  position:absolute!important;
  top:-120%!important;
  left:-35%!important;
  width:28%!important;
  height:340%!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent)!important;
  transform:translateX(-180%) rotate(22deg)!important;
  transition:transform .7s cubic-bezier(.22,.72,.24,1)!important;
  pointer-events:none!important;
  z-index:0!important;
}
.interactive-sheen:hover::after,.interactive-sheen:focus-visible::after,
button:not([disabled]):not(.hero-arrow):not(.spotlight-arrow):not(.gallery-arrow):not(.offer-arrow):not(.back-top):not(.wish):not(.close-modal):hover::after,
button:not([disabled]):not(.hero-arrow):not(.spotlight-arrow):not(.gallery-arrow):not(.offer-arrow):not(.back-top):not(.wish):not(.close-modal):focus-visible::after,
.nav-products-dropdown a:hover::after,.nav-products-dropdown a:focus-visible::after,
.bullion-nav-cta:hover::after,.bullion-nav-cta:focus-visible::after,
.catalog-investment-cta:hover::after,.catalog-investment-cta:focus-visible::after{
  transform:translateX(520%) rotate(22deg)!important;
}
.shop-category-card{transition:transform .32s cubic-bezier(.22,.72,.24,1),box-shadow .32s ease!important}
.shop-category-card:hover,.shop-category-card:focus-within{transform:translateY(-6px)!important;box-shadow:0 24px 42px rgba(79,58,37,.22)!important}
.btn::after{transition:transform .7s cubic-bezier(.22,.72,.24,1)!important}
.btn{overflow:hidden!important;contain:paint!important}
.nav-products-dropdown{transition:opacity .24s ease,transform .24s ease,visibility .24s ease!important}
.nav-products-dropdown a{transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s ease,filter .28s ease!important}
.nav-products-dropdown a:hover,.nav-products-dropdown a:focus-visible{background:var(--navy)!important;border-color:var(--navy)!important;color:#fff!important;box-shadow:0 8px 18px rgba(13,27,61,.22)!important;transform:translateY(-2px)!important}
.nav-products-dropdown a:hover span,.nav-products-dropdown a:focus-visible span{color:#fff!important}
.nav-products-dropdown a:hover img,.nav-products-dropdown a:focus-visible img{filter:brightness(0) invert(1)!important;opacity:1!important}
.catalog-status-filter button:hover,
.catalog-status-filter button:focus-visible,
body.catalog-concept-page .catalog-category-chip:hover,
body.catalog-concept-page .catalog-category-chip:focus-visible{
  background:var(--navy)!important;
  border-color:var(--navy)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(13,27,61,.2)!important;
  transform:translateY(-2px)!important;
  outline:none!important;
}
body.catalog-concept-page .catalog-status-filter button:hover span,
body.catalog-concept-page .catalog-category-chip:hover span{color:#fff!important}
body.home-page .site-header .nav-links a::after,body:not(.home-page) .site-header .nav-links a::after{display:block!important;left:50%!important;right:50%!important;bottom:-8px!important;width:auto!important;height:1px!important;background:linear-gradient(90deg,var(--gold),var(--gold2))!important;box-shadow:0 0 12px rgba(198,161,91,.45)!important;transition:left .28s ease,right .28s ease,opacity .28s ease!important}
body.home-page .site-header .nav-links a:hover::after,body.home-page .site-header .nav-links a:focus-visible::after,body.home-page .site-header .nav-links a.active::after,body:not(.home-page) .site-header .nav-links a:hover::after,body:not(.home-page) .site-header .nav-links a:focus-visible::after,body:not(.home-page) .site-header .nav-links a.active::after{left:0!important;right:0!important}
.about-banner-v1-recommendation,.products-showcase-v2-recommendation,.stores-v4-recommendation{transition:transform .3s cubic-bezier(.22,.72,.24,1),box-shadow .3s ease,border-color .3s ease!important}
.about-banner-v1-recommendation:hover,.about-banner-v1-recommendation:focus-within,.products-showcase-v2-recommendation:hover,.products-showcase-v2-recommendation:focus-within,.stores-v4-recommendation:hover,.stores-v4-recommendation:focus-within{transform:translateY(-5px)!important;border-color:rgba(230,207,154,.82)!important;box-shadow:0 16px 34px rgba(3,12,31,.22),0 0 22px rgba(230,207,154,.14)!important}
.product-card,.category-card,.shop-category-card,.service-card,.news-card,.store-card,.hot-selling-card,.hot-selling-item,.luxury-category-card,.gold-world-card,.bullion-card{transition:transform .28s ease,box-shadow .28s ease,filter .28s ease!important}
.btn:hover,.btn:focus-visible{transform:translateY(-3px)!important;box-shadow:0 12px 26px rgba(13,27,61,.18),0 0 0 1px rgba(198,161,91,.16)!important}
.product-card:hover,.category-card:hover,.shop-category-card:hover,.service-card:hover,.news-card:hover,.store-card:hover,.hot-selling-card:hover,.hot-selling-item:hover,.luxury-category-card:hover,.gold-world-card:hover,.bullion-card:hover{transform:translateY(-6px)!important;box-shadow:0 22px 46px rgba(13,27,61,.16)!important}
.btn:hover::after,.btn:focus-visible::after{transform:translateX(520%) rotate(22deg)!important;transition:transform .7s cubic-bezier(.22,.72,.24,1)!important}
.nav-products-dropdown{transition:opacity .28s ease,transform .28s ease,visibility .28s ease!important}
.site-page-loader{animation:none!important;transition:transform .38s cubic-bezier(.22,.7,.25,1)!important}
.site-page-loader.is-complete{transition-duration:.38s!important}
.site-page-loader-logo{animation:none!important}
@media (prefers-reduced-motion: reduce){
  .site-page-loader,.site-page-loader-mark,.site-page-loader-progress-fill{transition:none!important;animation:none!important}
  .btn:hover,.btn:focus-visible,.product-card:hover,.category-card:hover,.shop-category-card:hover,.service-card:hover,.news-card:hover,.store-card:hover,.hot-selling-card:hover,.hot-selling-item:hover,.luxury-category-card:hover,.gold-world-card:hover,.bullion-card:hover{transform:none!important;box-shadow:none!important}
}

@supports (content-visibility: auto) {
  body:not(.home-page) main > section:nth-of-type(n+2),
  body.home-page main > section:not(.hero-slider) {
    content-visibility: auto;
    contain-intrinsic-size: auto 720px;
  }
}

/* Restored banner entrance motion: short, lightweight, and limited to the
 * requested editorial banners. All other pages and sections remain static. */
@keyframes gfBannerFadeUp {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}
@keyframes gfBannerLineIn {
  from { opacity: 0; transform: scaleX(0); }
  to { opacity: 1; transform: scaleX(1); }
}
@keyframes gfBannerLineVerticalIn {
  from { opacity: 0; transform: scaleY(0); }
  to { opacity: 1; transform: scaleY(1); }
}

body.banner-motion-ready .about-banner-v1-overline,
body.banner-motion-ready .about-banner-v1-title,
body.banner-motion-ready .about-banner-v1-title-secondary,
body.banner-motion-ready .about-banner-v1-description,
body.banner-motion-ready .about-banner-v1-cta,
body.banner-motion-ready .about-banner-v1-recommendation,
body.banner-motion-ready .about-banner-v1-total-label,
body.banner-motion-ready .about-banner-v1-card,
body.banner-motion-ready .stores-v4-overline,
body.banner-motion-ready .stores-v4-title,
body.banner-motion-ready .stores-v4-description,
body.banner-motion-ready .stores-v4-cta,
body.banner-motion-ready .stores-v4-count,
body.banner-motion-ready .stores-v4-recommendation {
  animation: gfBannerFadeUp .55s cubic-bezier(.22,.72,.24,1) both !important;
}

body.banner-motion-ready .about-banner-v1-overline,
body.banner-motion-ready .stores-v4-overline { animation-delay: .04s !important; }
body.banner-motion-ready .about-banner-v1-title,
body.banner-motion-ready .stores-v4-title { animation-delay: .1s !important; }
body.banner-motion-ready .about-banner-v1-title-secondary { animation-delay: .16s !important; }
body.banner-motion-ready .about-banner-v1-description,
body.banner-motion-ready .stores-v4-description { animation-delay: .22s !important; }
body.banner-motion-ready .about-banner-v1-cta,
body.banner-motion-ready .stores-v4-cta { animation-delay: .29s !important; }
body.banner-motion-ready .about-banner-v1-recommendation,
body.banner-motion-ready .stores-v4-recommendation { animation-delay: .35s !important; }
body.banner-motion-ready .about-banner-v1-total-label { animation-delay: .4s !important; }
body.banner-motion-ready .stores-v4-count { animation-delay: .4s !important; }
body.banner-motion-ready .about-banner-v1-card { animation-delay: .44s !important; }
body.banner-motion-ready .about-banner-v1-card:nth-child(2) { animation-delay: .49s !important; }
body.banner-motion-ready .about-banner-v1-card:nth-child(3) { animation-delay: .54s !important; }
body.banner-motion-ready .about-banner-v1-card:nth-child(4) { animation-delay: .59s !important; }

body.banner-motion-ready .about-banner-v1-line-h,
body.banner-motion-ready .stores-v4-line-h {
  animation: gfBannerLineIn .7s cubic-bezier(.22,.72,.24,1) .32s both !important;
}
body.banner-motion-ready .locations-page .stores-v4-line-h {
  transform-origin: left center !important;
}
body.banner-motion-ready .about-banner-v1-line-v,
body.banner-motion-ready .stores-v4-line-v {
  animation: gfBannerLineVerticalIn .42s cubic-bezier(.22,.72,.24,1) .28s both !important;
}

body.home-page .hero-text-motion-ready > *,
body.home-page .hero-text-motion-ready .hero-copy-group {
  animation: gfBannerFadeUp .48s cubic-bezier(.22,.72,.24,1) both !important;
}
body.home-page .hero-text-motion-ready > :nth-child(1),
body.home-page .hero-text-motion-ready .hero-copy-group { animation-delay: .04s !important; }

/* Homepage hero copy enters as three readable beats on every refresh. Keep
 * the parent static so each text element gets its own gentle rise and fade. */
@keyframes gfHomeCopyFadeUp {
  from { opacity: 0; transform: translate3d(0, 18px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}
body.home-page .hero-text-motion-ready .hero-copy-group {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
body.home-page .hero-text-motion-ready .hero-copy-group > .eyebrow,
body.home-page .hero-text-motion-ready .hero-copy-group > :is(h1,h2),
body.home-page .hero-text-motion-ready .hero-copy-group > p {
  animation: gfHomeCopyFadeUp .72s cubic-bezier(.22,.72,.24,1) both !important;
}
body.home-page .hero-text-motion-ready .hero-copy-group > .eyebrow { animation-delay: .08s !important; }
body.home-page .hero-text-motion-ready .hero-copy-group > :is(h1,h2) { animation-delay: .2s !important; }
body.home-page .hero-text-motion-ready .hero-copy-group > p { animation-delay: .34s !important; }

@media (prefers-reduced-motion: reduce) {
  body.home-page .hero-text-motion-ready .hero-copy-group > .eyebrow,
  body.home-page .hero-text-motion-ready .hero-copy-group > :is(h1,h2),
  body.home-page .hero-text-motion-ready .hero-copy-group > p {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* The editorial banner system is intentionally the small exception to the
 * static-site policy above. Restore the complete entrance sequence for About,
 * Stores, News, Services, and Contact, including their decorative elements. */
body.banner-motion-ready .about-banner-v1::before {
  animation: gfBannerAtmosphere 2.4s ease-out both !important;
}
body.banner-motion-ready .about-banner-v1-card::after {
  animation: gfBannerCardGlow .9s ease-out .72s both !important;
}

@keyframes gfBannerAtmosphere {
  from { opacity: 0; transform: scale(1.02); }
  to { opacity: .58; transform: scale(1); }
}
@keyframes gfBannerCardGlow {
  from { opacity: 0; box-shadow: 0 0 0 rgba(255,248,202,0); }
  42% { opacity: .72; box-shadow: 0 0 54px rgba(255,248,202,.36), 0 0 86px rgba(230,207,154,.18); }
  to { opacity: 0; box-shadow: 0 0 0 rgba(255,248,202,0); }
}

@keyframes gfTrustTextComplete {
  0%, 100% { text-shadow: 0 0 0 rgba(255,240,188,0); }
  50% { text-shadow: 0 0 26px rgba(255,240,188,.72), 0 0 48px rgba(230,207,154,.34); }
}

/* The About banner has no numeric counter in its current markup; its gold
   secondary lockup receives the equivalent single completion breath. */
@keyframes gfBannerGoldTextGlow {
  0%, 100% { text-shadow: 0 0 0 rgba(255,240,188,0); }
  50% { text-shadow: 0 0 24px rgba(255,240,188,.7), 0 0 46px rgba(230,207,154,.3); }
}

/* One gentle breath when the Stores counter reaches its final value. */
@keyframes gfStoresCountCompleteBreath {
  0%, 100% {
    filter:drop-shadow(0 0 0 rgba(255,240,188,0));
    text-shadow:0 0 6px rgba(239,217,149,.2);
  }
  50% {
    filter:drop-shadow(0 0 18px rgba(255,240,188,.72));
    text-shadow:0 0 24px rgba(255,240,188,.78),0 0 48px rgba(230,207,154,.38);
  }
}
.locations-page .stores-v4-count.count-complete {
  animation:gfStoresCountCompleteBreath .9s ease-in-out 1 both!important;
}
.about-page .about-banner-v1-title-secondary{
  animation:gfBannerGoldTextGlow .9s ease-in-out 1.05s 1 both!important;
}
body.banner-motion-ready .about-page .about-banner-v1-title-secondary{
  animation:gfBannerFadeUp .55s cubic-bezier(.22,.72,.24,1) .16s both, gfBannerGoldTextGlow .9s ease-in-out 1.05s 1 both!important;
}

@media (prefers-reduced-motion: reduce) {
  body.banner-motion-ready .about-banner-v1-overline,
  body.banner-motion-ready .about-banner-v1-title,
  body.banner-motion-ready .about-banner-v1-title-secondary,
  body.banner-motion-ready .about-banner-v1-description,
  body.banner-motion-ready .about-banner-v1-cta,
  body.banner-motion-ready .about-banner-v1-recommendation,
  body.banner-motion-ready .about-banner-v1-total-label,
  body.banner-motion-ready .about-banner-v1-card,
  body.banner-motion-ready .stores-v4-overline,
  body.banner-motion-ready .stores-v4-title,
  body.banner-motion-ready .stores-v4-description,
  body.banner-motion-ready .stores-v4-cta,
  body.banner-motion-ready .stores-v4-count,
  body.banner-motion-ready .stores-v4-recommendation,
  body.home-page .hero-text-motion-ready > *,
  body.home-page .hero-text-motion-ready .hero-copy-group {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* The trust bar keeps one intentional completion glow after its count-up. */
.home-page .full-bleed-stats.trust-count-complete .stats-grid{
  animation:gfTrustCountComplete .9s ease-in-out 1 both!important;
}
.home-page .full-bleed-stats.trust-count-complete .stats-grid .stat strong{
  animation:gfTrustTextComplete .9s ease-in-out 1 both!important;
}

/* Bullion CTAs keep their sheen, then fill gold on hover with dark content. */
.site-header .bullion-nav-cta:hover,
.site-header .bullion-nav-cta:focus-visible{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
  color:#101525!important;
  box-shadow:0 12px 26px rgba(198,161,91,.28)!important;
}
.site-header .bullion-nav-cta:hover span,
.site-header .bullion-nav-cta:focus-visible span,
.site-header .bullion-nav-cta:hover svg,
.site-header .bullion-nav-cta:focus-visible svg{
  color:#101525!important;
  stroke:#101525!important;
}

/* =========================================================
   Shared smooth UI motion
   One restrained motion language for touch, hover, overlays,
   disclosures and one-time scroll reveals across the site.
   ========================================================= */
:root{
  --gf-motion-fast:180ms;
  --gf-motion-medium:300ms;
  --gf-motion-slow:680ms;
  --gf-motion-ease:cubic-bezier(.22,.72,.24,1);
  --gf-reveal-distance:24px;
}

body.gf-motion-enabled .gf-scroll-reveal{
  opacity:0!important;
  transform:translate3d(0,var(--gf-reveal-distance),0)!important;
  transition:
    opacity var(--gf-motion-slow) ease-out var(--gf-reveal-delay,0ms),
    transform var(--gf-motion-slow) var(--gf-motion-ease) var(--gf-reveal-delay,0ms)!important;
}
body.gf-motion-enabled .gf-scroll-reveal.is-visible,
body.gf-motion-enabled .gf-scroll-reveal.visible{
  opacity:1!important;
  transform:none!important;
}

body.gf-motion-enabled :is(
  .site-header,.nav-links,.nav-links a,.nav-products-dropdown,
  .btn,.icon-btn:not(.menu-btn),.text-button,.wish,.quick,
  input,select,textarea,summary,
  .search-panel,.search-shell,.drawer-shade,.cart-drawer,
  .modal,.modal-card,.product-modal-card
){
  transition-timing-function:var(--gf-motion-ease)!important;
}

body.gf-motion-enabled .site-header{
  transition:background-color var(--gf-motion-medium) ease,border-color var(--gf-motion-medium) ease,box-shadow var(--gf-motion-medium) ease!important;
}
body.gf-motion-enabled :is(input,select,textarea){
  transition:border-color var(--gf-motion-fast) ease,background-color var(--gf-motion-fast) ease,box-shadow var(--gf-motion-fast) ease,color var(--gf-motion-fast) ease!important;
}
body.gf-motion-enabled :is(input,select,textarea):focus{
  border-color:var(--gold)!important;
  box-shadow:0 0 0 3px rgba(198,161,91,.16)!important;
}

body.gf-motion-enabled :is(
  .btn,.icon-btn:not(.menu-btn),.text-button,.wish,.quick,
  .gf-select-trigger,.gf-select-option,
  .filter-pills button,.catalog-status-filter button,.catalog-category-chip,
  .store-region,.variant-choose,.variant-option,.catalog-load-more,
  .checkout-line-controls button,.checkout-choice,.thumb
){
  transition:transform var(--gf-motion-fast) var(--gf-motion-ease),background-color var(--gf-motion-fast) ease,color var(--gf-motion-fast) ease,border-color var(--gf-motion-fast) ease,box-shadow var(--gf-motion-fast) ease,opacity var(--gf-motion-fast) ease!important;
  touch-action:manipulation;
}
body.gf-motion-enabled :is(.nav-links a,.footer-links a,.official-directory-link,.catalog-service-grid a){
  transition:transform var(--gf-motion-fast) var(--gf-motion-ease),color var(--gf-motion-fast) ease,opacity var(--gf-motion-fast) ease,background-color var(--gf-motion-fast) ease!important;
}
body.gf-motion-enabled :is(
  .btn,.icon-btn:not(.menu-btn),.text-button,.wish,.quick,
  .gf-select-trigger,.gf-select-option,
  .filter-pills button,.catalog-status-filter button,.catalog-category-chip,
  .store-region,.variant-choose,.variant-option,.catalog-load-more,
  .checkout-line-controls button,.checkout-choice,.thumb
):active{
  transform:translateY(1px) scale(.975)!important;
  transition-duration:90ms!important;
}

body.gf-motion-enabled :is(
  .product-card,.category-card,.shop-category-card,.service-card,.news-card,
  .store-card,.hot-selling-card,.hot-selling-item,.luxury-category-card,
  .gold-world-card,.bullion-card,.testimonial,.feature,.timeline-item,
  .value,.gold-panel,.contact-card,.gold-price-card,.checkout-step
){
  transition:opacity var(--gf-motion-medium) ease,transform var(--gf-motion-medium) var(--gf-motion-ease),box-shadow var(--gf-motion-medium) ease,border-color var(--gf-motion-medium) ease,background-color var(--gf-motion-medium) ease!important;
}
body.gf-motion-enabled :is(
  .product-card,.category-card,.shop-category-card,.service-card,.news-card,
  .store-card,.hot-selling-item,.luxury-category-card,.gold-world-card,.bullion-card
) img{
  transition:transform 620ms var(--gf-motion-ease),opacity var(--gf-motion-medium) ease!important;
}

@media (hover:hover) and (pointer:fine){
  body.gf-motion-enabled :is(
    .product-card,.category-card,.shop-category-card,.service-card,.news-card,
    .store-card,.hot-selling-card,.hot-selling-item,.luxury-category-card,
    .gold-world-card,.bullion-card,.testimonial,.feature,.timeline-item,.value
  ):hover{
    transform:translate3d(0,-5px,0)!important;
    box-shadow:0 20px 42px rgba(13,27,61,.14)!important;
  }
  body.gf-motion-enabled :is(
    .product-card,.category-card,.shop-category-card,.service-card,.news-card,
    .store-card,.hot-selling-item,.luxury-category-card,.gold-world-card,.bullion-card
  ):hover img{
    transform:scale(1.035)!important;
  }
  body.gf-motion-enabled :is(.store-region,.filter-pills button,.catalog-load-more):hover{
    transform:translateY(-2px)!important;
    border-color:var(--gold)!important;
    box-shadow:0 8px 18px rgba(13,27,61,.1)!important;
  }
  body.gf-motion-enabled :is(.footer-links a,.official-directory-link):hover{
    color:var(--gold2)!important;
    transform:translateX(3px)!important;
  }
}

body.gf-motion-enabled .nav-products-dropdown,
body.gf-motion-enabled .gf-select-menu,
body.gf-motion-enabled .variant-menu{
  transition:opacity 240ms ease,transform 260ms var(--gf-motion-ease),visibility 0s linear 260ms!important;
}
body.gf-motion-enabled .nav-products-menu:hover .nav-products-dropdown,
body.gf-motion-enabled .nav-products-menu:focus-within .nav-products-dropdown,
body.gf-motion-enabled .gf-select-wrap.is-open .gf-select-menu,
body.gf-motion-enabled .variant-menu.is-open{
  transition-delay:0s!important;
}

body.gf-motion-enabled :is(.gf-scrollbar,.store-list,.cart-lines,.search-shell,.variant-menu){
  scroll-behavior:smooth;
  overscroll-behavior:contain;
}

body.gf-motion-enabled .search-panel,
body.gf-motion-enabled .drawer-shade{
  transition:opacity var(--gf-motion-medium) ease,visibility 0s linear var(--gf-motion-medium)!important;
}
body.gf-motion-enabled .search-panel.open,
body.gf-motion-enabled .drawer-shade.open{
  transition-delay:0s!important;
}
body.gf-motion-enabled .search-shell{
  transition:transform var(--gf-motion-medium) var(--gf-motion-ease),opacity var(--gf-motion-medium) ease!important;
  opacity:0;
}
body.gf-motion-enabled .search-panel.open .search-shell{opacity:1}
body.gf-motion-enabled .cart-drawer{
  transition:transform 360ms var(--gf-motion-ease),visibility 0s linear 360ms!important;
}

/* Keeping modals mounted but invisible allows both opening and closing to
   transition instead of snapping when display changes. */
body.gf-motion-enabled .modal.product-modal{
  display:flex!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity 260ms ease,visibility 0s linear 260ms!important;
}
body.gf-motion-enabled .modal.product-modal.open{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transition-delay:0s!important;
}
body.gf-motion-enabled .product-modal-card{
  opacity:0;
  transform:translate3d(0,18px,0) scale(.985);
  transition:opacity var(--gf-motion-medium) ease,transform var(--gf-motion-medium) var(--gf-motion-ease)!important;
}
body.gf-motion-enabled .modal.product-modal.open .product-modal-card{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}

body.gf-motion-enabled details > summary,
body.gf-motion-enabled .checkout-chevron{
  transition:color var(--gf-motion-fast) ease,background-color var(--gf-motion-fast) ease,transform var(--gf-motion-medium) var(--gf-motion-ease)!important;
}
@keyframes gfDisclosureIn{
  from{opacity:0;transform:translate3d(0,-8px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
body.gf-motion-enabled details[open] > :not(summary){
  animation:gfDisclosureIn 280ms var(--gf-motion-ease) both!important;
}

@media(max-width:980px){
  body.gf-motion-enabled .nav-links{
    transition:opacity 240ms ease,transform 260ms var(--gf-motion-ease),visibility 0s linear 260ms!important;
  }
  body.gf-motion-enabled .nav-links.open{transition-delay:0s!important}
  body.gf-motion-enabled .nav-products-dropdown{
    display:grid!important;
    max-height:0;
    padding:0 0 0 18px;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    transform:translateY(-6px);
    transition:max-height 280ms var(--gf-motion-ease),padding 280ms var(--gf-motion-ease),opacity 220ms ease,transform 280ms var(--gf-motion-ease),visibility 0s linear 280ms!important;
  }
  body.gf-motion-enabled .nav-products-menu:focus-within .nav-products-dropdown{
    max-height:420px;
    padding:4px 0 8px 18px;
    opacity:1;
    visibility:visible;
    transform:none;
    transition-delay:0s!important;
  }
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  body.gf-motion-enabled .gf-scroll-reveal,
  body.gf-motion-enabled .gf-scroll-reveal.is-visible,
  body.gf-motion-enabled .gf-scroll-reveal.visible{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  body.gf-motion-enabled *,
  body.gf-motion-enabled *::before,
  body.gf-motion-enabled *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}

/* Final cascade: all site controls, cards and overlays use square corners. */
html body[class] :is(button,input[type="button"],input[type="submit"],input[type="reset"],.btn,[role="button"],[class*="button"],[class*="-cta"],[class*="card"],[class*="panel"],[class*="modal"],[class*="drawer"],[class*="dialog"],[class*="popup"],[class*="popover"],[class*="dropdown"],.hot-selling-item,.testimonial,.feature,.variant-menu,dialog),
html body[class] :is([class*="card"],[class*="panel"],[class*="modal"],[class*="drawer"],[class*="dialog"],[class*="popup"],[class*="popover"],[class*="dropdown"])::before,
html body[class] :is([class*="card"],[class*="panel"],[class*="modal"],[class*="drawer"],[class*="dialog"],[class*="popup"],[class*="popover"],[class*="dropdown"])::after,
html body[class] :is([class*="card"],[class*="panel"],[class*="modal"]) img{
  border-radius:0!important;
}
html body[class] .hero-dots button,
html body[class] .navy-dot,
html body[class] .cart-count,
html body[class] .favourites-nav-link.has-favourites::after{
  border-radius:999px!important;
}

/* Keep each outlet icon attached to its own contact-information column. */
.locations-page .store-card-body .store-meta{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:24px!important;
}
.locations-page .store-card-body .store-meta span::before{
  content:none!important;
}
.locations-page .store-card-body .store-meta > span{
  position:relative!important;
  min-width:0!important;
  padding-left:27px!important;
  text-align:left!important;
}
.locations-page .store-card-body .store-meta > span:first-child::before,
.locations-page .store-card-body .store-meta > span:last-child::before{
  position:absolute!important;
  top:3px!important;
  left:0!important;
  display:block!important;
  width:18px!important;
  color:var(--gold2)!important;
  font-size:.92rem!important;
  line-height:1!important;
  text-align:center!important;
}
.locations-page .store-card-body .store-meta > span:first-child::before{content:"☎"!important}
.locations-page .store-card-body .store-meta > span:last-child::before{content:"◷"!important}
.locations-page .store-card-body .store-meta > span:first-child a{
  display:inline-block!important;
  width:auto!important;
  white-space:nowrap!important;
}
.locations-page .store-card-body .store-meta > span:first-child a span{
  display:inline!important;
  padding:0!important;
}
@media(max-width:640px){
  .locations-page .store-card-body .store-meta{grid-template-columns:1fr!important;gap:12px!important}
}

/* September minimalist pass: restrained product cards and controls. */
.products-best-selling .hot-selling-item{
  border-color:rgba(198,161,91,.42)!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
.products-best-selling .hot-selling-image-card{
  margin:0!important;
  border-radius:0!important;
  background:#fff!important;
}
.products-best-selling .hot-selling-badge{display:none!important}
.products-best-selling .hot-selling-info{min-height:112px!important;padding:15px 14px 18px!important;gap:6px!important;background:#fff!important}
.products-best-selling .hot-selling-info h3{
  font-size:clamp(1.15rem,1.35vw,1.5rem)!important;
  line-height:1.08!important;
}
.products-best-selling .spotlight-arrow{
  width:42px!important;
  min-width:42px!important;
  height:52px!important;
  min-height:52px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--navy)!important;
  box-shadow:none!important;
  font:300 2.6rem/1 "Segoe UI Symbol",Arial,sans-serif!important;
}
.products-best-selling .spotlight-arrow:hover,
.products-best-selling .spotlight-arrow:focus-visible{
  background:transparent!important;
  color:#b6812e!important;
  box-shadow:none!important;
}

/* Minimal underlined text action shared by editorial modules. */
.minimal-text-link{
  display:inline-block!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:0 0 5px!important;
  border:0!important;
  border-bottom:1px solid currentColor!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  font:500 .94rem/1.25 Montserrat,Arial,sans-serif!important;
}
.minimal-text-link:hover,.minimal-text-link:focus-visible{color:#b6812e!important;background:transparent!important}

/* Restored gold-price editorial composition in the current navy/white palette. */
.catalog-gold-price-banner::after{
  content:''!important;
  display:block!important;
  right:-180px!important;
  top:-250px!important;
  width:600px!important;
  height:600px!important;
  border:1px solid rgba(210,163,77,.16)!important;
  border-radius:50%!important;
  background:none!important;
  box-shadow:0 0 0 40px rgba(210,163,77,.05),0 0 0 80px rgba(210,163,77,.03)!important;
  opacity:1!important;
}
.catalog-gold-price-inner{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr)!important}
.gold-price-card{border-radius:0!important;box-shadow:none!important}
.gold-price-copy{display:grid!important;justify-self:end!important;justify-items:start!important;align-content:center!important;width:min(100%,600px)!important;padding-left:clamp(34px,4vw,76px)!important;box-sizing:border-box!important;gap:0!important}
.gold-price-copy-kicker{margin-bottom:12px!important;color:#d8ad5d!important;font:700 .72rem/1.2 Montserrat,Arial,sans-serif!important;letter-spacing:.18em!important;text-transform:uppercase!important}
.gold-price-copy h2{margin:0!important;max-width:500px!important}
.gold-price-copy p{margin:24px 0 30px!important;max-width:520px!important;color:#dce4f0!important}
.gold-price-copy .gold-price-cta{border-radius:0!important;background:#d2a34d!important;color:#13213f!important}
.gold-price-copy .gold-price-cta:hover,.gold-price-copy .gold-price-cta:focus-visible{background:#e6cf9a!important;color:#13213f!important}
@media(max-width:900px){
  .catalog-gold-price-inner{grid-template-columns:minmax(0,1fr)!important;gap:38px!important}
  .gold-price-copy{justify-self:stretch!important;width:100%!important;padding-left:0!important}
}
@media(max-width:600px){
  .gold-price-card{padding:26px 20px 22px!important}
  .gold-price-copy .gold-price-cta{width:100%!important;justify-content:space-between!important}
}

/* Give the homepage story photograph more visual weight without soft corners. */
.home-page .home-highlights-section .container{
  width:min(calc(100% - 96px),1500px)!important;
  max-width:1500px!important;
  grid-template-columns:minmax(360px,.82fr) minmax(560px,1.18fr)!important;
  gap:clamp(60px,7vw,120px)!important;
}
.home-page .home-highlights-section .image-frame{width:100%!important;border-radius:0!important;overflow:hidden!important}
.home-page .home-highlights-section .image-frame img{
  display:block!important;
  width:100%!important;
  height:clamp(560px,38vw,700px)!important;
  border-radius:0!important;
  object-fit:cover!important;
}

/* Minimal editorial page banners: title, one primary action and four cards. */
@media(min-width:761px){
  .about-page .about-banner-v1-title{top:20%!important;opacity:1!important;transform:none!important}
  .about-page .about-banner-v1-cta{top:43%!important;opacity:1!important;transform:none!important}
  .about-page .about-banner-v1-values{top:58%!important}
  .about-page .about-banner-v1-card{height:205px!important;min-height:205px!important;opacity:1!important;transform:none!important}

  .locations-page .stores-v4-title{top:18%!important;opacity:1!important;transform:none!important}
  .locations-page .stores-v4-cta{top:48%!important;opacity:1!important;transform:none!important}
  .locations-page .stores-v4-count-stage{
    position:absolute!important;
    left:0!important;
    right:auto!important;
    top:65%!important;
    width:auto!important;
    height:auto!important;
  }
  .locations-page .stores-v4-count{
    position:static!important;
    display:block!important;
    opacity:1!important;
    transform:none!important;
    font-size:clamp(4.5rem,7vw,7rem)!important;
  }
}
@media(max-width:900px){
  .home-page .home-highlights-section .container{width:min(calc(100% - 40px),720px)!important;grid-template-columns:1fr!important;gap:38px!important}
  .home-page .home-highlights-section .image-frame img{height:auto!important;aspect-ratio:4/5!important}
}
@media(max-width:760px){
  .about-page .about-banner-v1-title{top:12%!important;opacity:1!important;transform:none!important}
  .about-page .about-banner-v1-cta{top:29%!important;opacity:1!important;transform:none!important}
  .about-page .about-banner-v1-values{top:40%!important}
  .about-page .about-banner-v1-card{opacity:1!important;transform:none!important}
  .locations-page .stores-v4-title{top:14%!important;opacity:1!important;transform:none!important}
  .locations-page .stores-v4-cta{top:43%!important;opacity:1!important;transform:none!important}
  .locations-page .stores-v4-count-stage{top:66%!important}
}

/* Reduce display-title scale consistently without flattening each component's typography. */
body h1,
body h2{zoom:.9}

/* Catalogue controls: compact sticky toolbar with dedicated side drawers. */
body.catalog-concept-page .concept-catalogue{position:relative!important;padding-top:0!important}
body.catalog-concept-page .catalog-sticky-tools{
  position:sticky!important;
  top:var(--gf-header-height,86px)!important;
  z-index:1450!important;
  padding:10px 0!important;
  border-top:1px solid rgba(198,161,91,.22)!important;
  border-bottom:1px solid rgba(13,27,61,.12)!important;
  background:rgba(255,253,249,.97)!important;
  box-shadow:0 8px 24px rgba(13,27,61,.06)!important;
  backdrop-filter:blur(12px)!important;
}
body.catalog-concept-page .catalog-sticky-tools .container{display:flex!important;justify-content:flex-end!important;gap:10px!important}
body.catalog-concept-page .catalog-drawer-trigger{
  min-width:128px!important;
  min-height:40px!important;
  padding:9px 18px!important;
  border:1px solid rgba(13,27,61,.28)!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--navy)!important;
  font:600 .76rem/1 Montserrat,Arial,sans-serif!important;
  cursor:pointer!important;
}
body.catalog-concept-page .catalog-drawer-trigger:hover,
body.catalog-concept-page .catalog-drawer-trigger:focus-visible,
body.catalog-concept-page .catalog-drawer-trigger[aria-expanded="true"]{background:var(--navy)!important;color:#fff!important}
body.catalog-concept-page .catalog-drawer-backdrop{
  position:fixed!important;inset:0!important;z-index:9990!important;
  visibility:hidden!important;opacity:0!important;pointer-events:none!important;
  background:rgba(4,12,31,.46)!important;transition:opacity .22s ease,visibility .22s ease!important;
}
body.catalog-concept-page .catalog-drawer-backdrop.is-open{visibility:visible!important;opacity:1!important;pointer-events:auto!important}
body.catalog-concept-page .catalog-side-drawer,
body.catalog-concept-page .concept-filter-column.catalog-side-drawer,
body.catalog-concept-page #catalogFilters,
body.catalog-concept-page #catalogSortPanel{
  position:fixed!important;top:0!important;bottom:0!important;z-index:10000!important;
  display:block!important;width:min(420px,92vw)!important;height:100dvh!important;max-height:100dvh!important;
  overflow-x:hidden!important;overflow-y:scroll!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;
  box-sizing:border-box!important;padding:30px 30px 38px!important;border:0!important;border-radius:0!important;
  background:#fffdfa!important;box-shadow:0 0 40px rgba(4,12,31,.2)!important;color:var(--navy)!important;
  visibility:hidden!important;transition:transform .28s ease,visibility .28s ease!important;
}
body.catalog-concept-page #catalogFilters{left:0!important;right:auto!important;transform:translateX(-102%)!important}
body.catalog-concept-page #catalogSortPanel{right:0!important;left:auto!important;transform:translateX(102%)!important}
body.catalog-concept-page .catalog-side-drawer.is-open,
body.catalog-concept-page #catalogFilters.is-open,
body.catalog-concept-page #catalogSortPanel.is-open{visibility:visible!important;transform:translateX(0)!important}
body.catalog-concept-page .catalog-drawer-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:28px!important;padding-bottom:15px!important;border-bottom:1px solid rgba(13,27,61,.14)!important}
body.catalog-concept-page .catalog-drawer-heading h2{margin:0!important;color:var(--navy)!important;font:500 2.25rem/1 'Cormorant Garamond',serif!important}
body.catalog-concept-page .catalog-drawer-close{width:40px!important;height:40px!important;border:0!important;background:transparent!important;color:var(--navy)!important;font-size:1.65rem!important;cursor:pointer!important}
body.catalog-concept-page .concept-filter-column .filter-heading{justify-content:flex-end!important;margin-bottom:14px!important}
body.catalog-concept-page .concept-filter-column .catalog-filter-row{display:block!important;min-height:0!important;margin:22px 0!important;padding:0!important}
body.catalog-concept-page .concept-filter-column .catalog-filter-label{display:block!important;margin-bottom:11px!important}
body.catalog-concept-page .concept-filter-column :is(.catalog-status-filter,.catalog-category-filter){display:flex!important;flex-wrap:wrap!important;gap:8px!important}
body.catalog-concept-page .catalog-sort-options{display:grid!important;gap:0!important}
body.catalog-concept-page .catalog-sort-options label{display:flex!important;align-items:center!important;gap:12px!important;padding:17px 2px!important;border-bottom:1px solid rgba(13,27,61,.11)!important;color:var(--navy)!important;font-size:.88rem!important;cursor:pointer!important}
body.catalog-concept-page .catalog-sort-options input{accent-color:var(--navy)!important}
html:has(body.catalog-concept-page.catalog-drawer-open),
body.catalog-concept-page.catalog-drawer-open{overflow:hidden!important;overscroll-behavior:none!important}
body.catalog-concept-page .concept-catalogue-shell{display:block!important;width:min(calc(100% - 72px),1500px)!important;max-width:1500px!important;padding-top:48px!important}
body.catalog-concept-page .catalogue-heading-inline{margin-bottom:28px!important}
body.catalog-concept-page .catalogue-heading-inline :is(h1,h2){white-space:normal!important}
body.catalog-concept-page .catalog-toolbar{margin:0 0 22px!important;padding:16px 0!important;border:0!important;border-top:1px solid rgba(13,27,61,.12)!important;border-bottom:1px solid rgba(13,27,61,.12)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.catalog-concept-page .catalog-filter-panel,
body.catalog-concept-page .mobile-filter-trigger,
body.catalog-concept-page .mobile-filter-backdrop{display:none!important}
body.catalog-concept-page .concept-products-grid .product-card{
  overflow:hidden!important;padding:0 0 16px!important;border:1px solid rgba(198,161,91,.38)!important;
  border-radius:0!important;background:#fff!important;box-shadow:none!important;
}
body.catalog-concept-page .concept-products-grid .product-img{border-radius:0!important;background:#f3ede3!important}
body.catalog-concept-page .concept-products-grid .product-card-actions{display:none!important}
@media(max-width:760px){
  body.catalog-concept-page .catalog-sticky-tools{top:var(--gf-header-height,70px)!important}
  body.catalog-concept-page .catalog-sticky-tools .container{justify-content:stretch!important;width:calc(100% - 24px)!important}
  body.catalog-concept-page .catalog-drawer-trigger{flex:1!important;min-width:0!important}
  body.catalog-concept-page .concept-catalogue-shell{width:calc(100% - 24px)!important;padding-top:34px!important}
}

/* Product popup: compact right-aligned variant controls and crisp actions. */
.product-modal :is(.modal-weight-row,.modal-size-row) .variant-picker{
  width:33.333%!important;
  min-width:120px!important;
  max-width:150px!important;
  justify-self:end!important;
}
.product-modal :is(.modal-weight-row,.modal-size-row) .variant-choose,
.product-modal .modal-actions .btn{
  border-radius:0!important;
}
.product-modal :is(.modal-weight-row,.modal-size-row) .variant-menu{
  width:100%!important;
  min-width:130px!important;
  border-radius:0!important;
}
@media(max-width:640px){
  .product-modal :is(.modal-weight-row,.modal-size-row) .variant-picker{
    width:45%!important;
    min-width:116px!important;
  }
}

/* Keep the four shared editorial-banner card rows close to the lower edge. */
@media(min-width:761px){
  .about-page .about-banner-v1-values{
    top:auto!important;
    bottom:clamp(18px,2.5vh,28px)!important;
  }
}

/* Our Stores total: right-aligned count with the reference L-shaped divider. */
.locations-page .stores-v4-count-stage{
  position:absolute!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:112px!important;
}
.locations-page .stores-v4-line-h{
  display:block!important;
  position:absolute!important;
  left:0!important;
  top:62px!important;
  width:calc(100% - clamp(170px,13vw,250px))!important;
  max-width:none!important;
  height:1px!important;
  background:#e6cf9a!important;
  box-shadow:0 0 8px rgba(230,207,154,.34)!important;
  opacity:1!important;
  transform:none!important;
}
.locations-page .stores-v4-line-h::before{
  content:''!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  bottom:0!important;
  width:1px!important;
  height:38px!important;
  background:#e6cf9a!important;
  box-shadow:0 0 8px rgba(230,207,154,.34)!important;
  opacity:1!important;
}
.locations-page .stores-v4-line-h::after{content:none!important;display:none!important}
.locations-page .stores-v4-count{
  position:absolute!important;
  right:0!important;
  left:auto!important;
  top:0!important;
  bottom:auto!important;
  display:block!important;
  margin:0!important;
  opacity:1!important;
  transform:none!important;
  font-size:clamp(5.2rem,8vw,8rem)!important;
  line-height:.82!important;
}
@media(max-width:760px){
  .locations-page .stores-v4-count-stage{left:0!important;right:0!important;width:100%!important;height:84px!important}
  .locations-page .stores-v4-line-h{top:47px!important;width:calc(100% - 105px)!important}
  .locations-page .stores-v4-line-h::before{height:28px!important}
  .locations-page .stores-v4-count{right:0!important;top:0!important;font-size:4rem!important}
}

/* Cart-drawer product cards use the same crisp geometry as the catalogue. */
.cart-drawer .cart-line,
.cart-drawer .cart-line>img,
.cart-drawer .cart-qty button{
  border-radius:0!important;
}

/* About banner v2: keep the CTA below the introductory paragraph. */
@media(min-width:761px){
  .about-page .about-banner-v1-cta{top:clamp(410px,62%,560px)!important}
}

/* The shared static-banner entrance is an explicitly requested page-load
   effect. Re-enable only this scoped animation after the broad legacy motion
   reset above; all other non-home-page animations remain disabled. */
body:not(.home-page) .gf-static-banner-intro{
  animation:gfSharedBannerZoomReset 4.5s cubic-bezier(.25,.46,.45,.94) both!important;
  will-change:transform!important;
}
body:not(.home-page) .gf-static-banner-intro>.gf-banner-intro-sheen.is-running{
  animation:gfSharedBannerSheenOnce 1.4s cubic-bezier(.2,.65,.3,1) .6s 1 both!important;
  will-change:transform,opacity!important;
}
@media(prefers-reduced-motion:reduce){
  body:not(.home-page) .gf-static-banner-intro{
    animation:none!important;
    will-change:auto!important;
  }
  body:not(.home-page) .gf-static-banner-intro>.gf-banner-intro-sheen.is-running{
    animation:none!important;
    will-change:auto!important;
  }
}

/* Do not turn the numeric fragments in opening hours into separate rows. */
.locations-page .store-card-body .store-meta > span .number-ledger{
  display:inline!important;position:static!important;padding:0!important;white-space:normal!important;
}
