/* 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}
.stat::after{content:none!important;display:none!important;background:none!important;opacity:0!important;animation:none!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)}
}

/* 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)}
}
.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.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;
}

/* 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); }
}

/* 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);
  }
}
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;
  }
}

/* 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;
}

/* Home and bullion product content does not wait for a scroll reveal. */
body:is(.home-page,.bullion-home-page,.bullion-products-page) :is(.gf-scroll-reveal,.reveal,.trust-reveal-ready){
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  transition: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;
}

/* 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}
}

/* Reduce display-title scale consistently without flattening each component's typography. */
body h1,
body h2{zoom:.9}
html:has(body.catalog-concept-page.catalog-drawer-open),
body.catalog-concept-page.catalog-drawer-open{overflow:hidden!important;overscroll-behavior:none!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;
  }
}

/* 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;
}

/* 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;
  }
}
