/* The homepage's Glacier showroom. Existing content, products and checkout stay.
   Shape, lighting and hierarchy remain visible without blur or animation. */
#ozark-storefront.home-shine {
  --home-showroom-width: 76rem;
  --home-showroom-edge: rgba(90, 160, 187, .26);
  --home-showroom-glass: linear-gradient(135deg, #ffffff 8%, #f8fdff 52%, #e3f3fa);
  background: radial-gradient(ellipse at 91% 13%, #d9f1fb, transparent 40rem), radial-gradient(ellipse at 5% 0, #eff8fc, transparent 36rem), #f7fbfd !important;
}

#ozark-storefront.home-shine .home-hero {
  display: block;
  width: min(var(--home-showroom-width), calc(100% - 5rem));
  max-width: none;
  margin: 0 auto;
  padding: clamp(2rem, 4vw, 3.5rem) 0 2rem;
  text-align: center;
  background: none !important;
}
#ozark-storefront.home-shine .home-hero-copy { width: min(100%, 46rem); min-width: 0; margin: 0 auto; padding: 0; }
#ozark-storefront.home-shine .home-hero h1 {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  color: #0a202b !important;
  -webkit-text-fill-color: #0a202b !important;
  background: none !important;
  font-size: clamp(2.125rem, 3.7vw, 3.25rem);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -.045em;
  text-shadow: none !important;
}
#ozark-storefront.home-shine .home-title-line { display: inline; }
#ozark-storefront.home-shine .home-hero h1 .accent {
  display: block;
  margin-top: .08em;
  color: #087ca7 !important;
  -webkit-text-fill-color: #087ca7 !important;
  background: none !important;
  text-shadow: none !important;
}
#ozark-storefront.home-shine .home-hero .shopper-intro {
  max-width: 42rem;
  margin: 1rem auto 0;
  padding: 0;
  color: #435f6e;
  font-size: 1rem;
  line-height: 1.65;
  font-weight: 450;
}

/* A visible, optional community invitation; no overlay or shopping interruption. */
#ozark-storefront.home-shine .home-discord-quick {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .625rem 1rem; margin: 1rem 0 0;
}
#ozark-storefront.home-shine .home-discord-quick > span { color: #526878; font-size: .875rem; line-height: 1.5; }
#ozark-storefront.home-shine .home-discord-quick-link {
  display: inline-flex; align-items: center; justify-content: center; gap: .625rem; min-height: 2.75rem; padding: .625rem 1rem;
  border: 1px solid #bccaf0; border-radius: 999px; background: linear-gradient(140deg, #fff, #eef1ff);
  color: #3e47a9; font-size: .875rem; font-weight: 650; text-decoration: none;
  box-shadow: inset 0 1px 0 #fff, 0 4px 12px #405fa00c;
  transition: translate 180ms ease, box-shadow 180ms ease;
}
#ozark-storefront.home-shine .home-discord-quick-link svg { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; }
#ozark-storefront.home-shine .home-community {
  display: grid; grid-template-columns: minmax(0, 1fr) 18rem; gap: 1.5rem; align-items: center;
  width: min(68rem, calc(100% - 5rem)); margin: 1.25rem auto; padding: 1.25rem 1.5rem;
  border: 1px solid #b6d5e8; border-radius: 1.25rem; scroll-margin-top: 7rem; isolation: isolate;
  background: radial-gradient(ellipse at 100% 0, #dfe5fc90, transparent 65%), linear-gradient(125deg, #ffffffed, #edf8fde8);
  box-shadow: inset 0 2px 0 #fff, inset 0 -1px 0 #c7e0ec, 0 16px 48px #174e6912;
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
}
#ozark-storefront.home-shine .home-community-copy { min-width: 0; }
#ozark-storefront.home-shine .home-community-eyebrow { display: flex; align-items: center; gap: .5rem; margin: 0 0 .5rem; color: #356581; font-size: .875rem; font-weight: 650; line-height: 1.4; letter-spacing: .055em; }
#ozark-storefront.home-shine .home-community-eyebrow img { width: 1.25rem; height: 1.25rem; object-fit: contain; }
#ozark-storefront.home-shine .home-community h2 { margin: 0; color: #0a202b; -webkit-text-fill-color: #0a202b; background: none; font-size: 1.5rem; font-weight: 750; line-height: 1.18; letter-spacing: -.035em; }
#ozark-storefront.home-shine .home-community-intro { max-width: 34rem; margin: .5rem 0 .875rem; color: #435f6e; font-size: 1rem; line-height: 1.5; }
#ozark-storefront.home-shine .home-community-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 0; padding: 0; list-style: none; }
#ozark-storefront.home-shine .home-community-benefits li { display: flex; align-items: start; gap: .5rem; min-width: 0; }
#ozark-storefront.home-shine .home-community-benefits svg { width: 1rem; height: 1rem; flex: 0 0 auto; margin-top: .125rem; color: #087ca7; }
#ozark-storefront.home-shine .home-community-benefits strong { display: block; color: #153747; font-size: .875rem; font-weight: 650; line-height: 1.4; }
#ozark-storefront.home-shine .home-community-benefits span { display: block; color: #526878; font-size: .875rem; line-height: 1.5; }
#ozark-storefront.home-shine .home-community-invite {
  display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); align-items: center; gap: .25rem .625rem; min-width: 0; padding: 1rem;
  border: 1px solid #c2cce8; border-radius: 1rem; text-align: left;
  background: radial-gradient(ellipse at 50% 0, #d9deffbd, transparent 75%), linear-gradient(150deg, #fffffff5, #e8edffb3);
  box-shadow: inset 0 2px 0 #fff, 0 12px 30px #4451a016;
}
#ozark-storefront.home-shine .home-community-discord { grid-column: 1; grid-row: 1 / 3; width: 2.25rem; height: 2.25rem; margin: 0; color: #5865f2; filter: drop-shadow(0 5px 9px #5865f229); }
#ozark-storefront.home-shine .home-community-invite-label { grid-column: 2; color: #515a91; font-size: .75rem; font-weight: 600; line-height: 1.4; letter-spacing: .055em; }
#ozark-storefront.home-shine .home-community-invite > strong { grid-column: 2; margin: 0; color: #192e4b; font-size: 1.125rem; font-weight: 700; line-height: 1.25; letter-spacing: -.025em; }
#ozark-storefront.home-shine .home-community-invite > p { grid-column: 1 / -1; margin: .5rem 0; color: #52617f; font-size: .875rem; line-height: 1.5; text-align: center; }
#ozark-storefront.home-shine .home-community-join {
  display: flex; grid-column: 1 / -1; align-items: center; justify-content: center; gap: .625rem; width: 100%; min-height: 2.75rem; padding: .625rem .75rem;
  border: 1px solid #4650c3; border-radius: .875rem; background: linear-gradient(135deg, #5865e8, #424ebf);
  color: #fff; -webkit-text-fill-color: #fff; font-size: .875rem; font-weight: 650; line-height: 1.4; text-decoration: none;
  box-shadow: inset 0 1px 0 #ffffff50, 0 7px 18px #4854c32e; transition: translate 180ms ease, box-shadow 180ms ease;
}
#ozark-storefront.home-shine .home-community-invite > small { grid-column: 1 / -1; margin-top: .375rem; color: #52617f; font-size: .875rem; line-height: 1.5; text-align: center; }
#ozark-storefront.home-shine :is(.home-discord-quick-link, .home-community-join):focus-visible { outline: 3px solid #087ca7; outline-offset: 4px; }
@media (hover: hover) and (pointer: fine) {
  #ozark-storefront.home-shine :is(.home-discord-quick-link, .home-community-join):hover { translate: 0 -2px; box-shadow: inset 0 1px 0 #ffffff70, 0 9px 22px #4854c330; }
}
@media (max-width: 900px) {
  #ozark-storefront.home-shine .home-community { width: min(36rem, calc(100% - 2rem)); grid-template-columns: minmax(0, 1fr); gap: 1rem; padding: 1rem; border-radius: 1.25rem; }
}
@media (max-width: 600px) {
  #ozark-storefront.home-shine .home-community-benefits { grid-template-columns: minmax(0, 1fr); gap: .5rem; }
}
@media (prefers-reduced-motion: reduce), (update: slow) {
  #ozark-storefront.home-shine :is(.home-discord-quick-link, .home-community-join) { transition: none !important; translate: none !important; }
}
@media print {
  #ozark-storefront.home-shine :is(.home-community, .home-community-invite) { box-shadow: none; background: #fff; -webkit-backdrop-filter: none; backdrop-filter: none; }
}

/* Compact product stages, with the included mods always visible. */
#ozark-storefront.home-shine .home-products {
  width: min(var(--home-showroom-width), calc(100% - 5rem));
  max-width: none;
  gap: 1rem;
  margin: .5rem auto 2rem;
  padding: 0;
  align-items: start;
}
#ozark-storefront.home-shine .home-products .pc {
  min-width: 0;
  border: 1px solid var(--home-showroom-edge) !important;
  border-radius: 1.5rem !important;
  background: var(--home-showroom-glass) !important;
  box-shadow: inset 0 2px 0 #fff, inset 1px 0 0 #fff, inset 0 -1px 0 #cae1eb, 0 8px 12px rgba(24, 76, 100, .035), 0 24px 50px rgba(24, 76, 100, .1) !important;
}
#ozark-storefront.home-shine .home-products .pc-media {
  height: 11rem;
  min-height: 0;
  aspect-ratio: auto;
  margin: .375rem .375rem 0;
  border: 1px solid rgba(var(--shine-rgb), .12) !important;
  border-radius: 1.125rem !important;
  background: radial-gradient(ellipse at 70% 22%, #fff 10%, transparent 65%), linear-gradient(130deg, #f8fcff, var(--shine-soft)) !important;
}
#ozark-storefront.home-shine .home-products .pc-media::after { inset: .375rem; border-color: rgba(255, 255, 255, .72); border-radius: .875rem !important; }
#ozark-storefront.home-shine .home-products .pc-media img { width: 100%; max-width: 100%; height: 100%; max-height: 100%; object-fit: contain; filter: drop-shadow(0 16px 15px rgba(20, 54, 76, .15)); }
#ozark-storefront.home-shine .home-products .pc-pill { top: auto; right: auto; left: .75rem; bottom: .625rem; padding: .375rem .625rem; color: #244c5e; font-size: .75rem; background: #ffffffed; border: 1px solid #ffffff; border-radius: .75rem; box-shadow: 0 4px 14px rgba(28, 81, 103, .07); }
#ozark-storefront.home-shine .home-products .pc-body { padding: 1.25rem 1.25rem 0; }
#ozark-storefront.home-shine .home-products .pc-head { gap: .75rem; margin-bottom: 1rem; }
#ozark-storefront.home-shine .home-products .pc-title { font-size: 1.375rem; font-weight: 700; letter-spacing: -.025em; line-height: 1.25; }
#ozark-storefront.home-shine .home-products .pc-product-overview { isolation: auto; z-index: auto; margin: 0; padding: 0; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
#ozark-storefront.home-shine .pc-product-overview::before { display: none; }
#ozark-storefront.home-shine .pc-product-overview-head { gap: .5rem; }
#ozark-storefront.home-shine .pc-product-overview-head span { font-size: .75rem; letter-spacing: .05em; }
#ozark-storefront.home-shine .pc-product-overview-head strong { margin-top: .25rem; font-size: .875rem; line-height: 1.35; }
#ozark-storefront.home-shine .pc-product-overview-head em { font-size: .75rem; padding: .25rem .375rem; }
#ozark-storefront.home-shine .pc-product-overview > p { margin: .5rem 0 .25rem; color: #4b606e; font-size: 1rem; line-height: 1.45; }
#ozark-storefront.home-shine .pc-included-mods { margin: .625rem 0 0; border: 0; background: none; }
#ozark-storefront.home-shine .pc-included-mods-label { margin: 0 0 .5rem; color: #075e80; font-size: .875rem; font-weight: 650; line-height: 1.4; }
#ozark-storefront.home-shine .pc-included-mods .pc-product-paths { margin-top: .25rem; padding-bottom: .25rem; }
#ozark-storefront.home-shine .pc-included-mods .pc-product-path { border: 0; border-top: 1px solid #dceaf0; border-radius: 0; background: none; padding: .75rem 0; box-shadow: none; }
#ozark-storefront.home-shine .pc-included-mods .pc-product-path strong { font-size: .9375rem; font-weight: 650; line-height: 1.4; }
#ozark-storefront.home-shine .pc-included-mods .pc-product-path small { color: #526878; font-size: .875rem; font-weight: 450; line-height: 1.5; }
#ozark-storefront.home-shine .home-products .pc-price-block { margin: .625rem 1.25rem 0; padding: 1rem 0 1.25rem; border-top: 1px solid #d6e6ee; }
#ozark-storefront.home-shine .home-products .pc-price .amount { color: #102b39 !important; font-size: 1.875rem; font-weight: 700; line-height: 1.2; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
#ozark-storefront.home-shine .home-products .pc-note { margin: .5rem 0 .875rem; color: #526878; font-size: .8125rem; font-weight: 450; line-height: 1.6; }
#ozark-storefront.home-shine .home-products .pc-cta-row { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); align-items: stretch; gap: .5rem; }
#ozark-storefront.home-shine .home-products :is(.pc-btn, .pc-details-link) { display: flex; align-items: center; justify-content: center; width: auto; min-width: 0; min-height: 3rem; margin: 0; padding: .75rem .625rem; font-size: .875rem; font-weight: 650; line-height: 1.3; border-radius: 1rem !important; text-decoration: none; }
#ozark-storefront.home-shine .home-products .pc-details-link { color: #23556b; border: 1px solid #bddae7; background: linear-gradient(140deg, #fff, #edf7fc); box-shadow: inset 0 1px 0 #fff; }
#ozark-storefront.home-shine .home-products .product-card-resources { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; margin-top: .5rem; }
#ozark-storefront.home-shine .home-products .product-card-resources a { justify-content: center; min-height: 2.5rem; padding: .5rem; border: 1px solid #d0e4ee; border-radius: .75rem; background: #ffffffa8; text-decoration: none; }
#ozark-storefront.home-shine .home-products .pc-owner-link { margin-top: .875rem; font-size: .875rem; font-weight: 550; line-height: 1.5; }

#ozark-storefront.home-shine .home-bundle { width: min(var(--home-showroom-width), calc(100% - 5rem)); max-width: none; margin: 1.5rem auto 2rem; padding: 0; }
#ozark-storefront.home-shine .home-bundle-card { border-radius: 1.5rem !important; background: linear-gradient(115deg, #e5f4fc, #ffffff 65%, #eaf6fc) !important; box-shadow: inset 0 2px 0 #fff, 0 22px 55px rgba(17, 82, 111, .1) !important; }
#ozark-storefront.home-shine .home-bundle-media { min-height: 11rem; }
#ozark-storefront.home-shine .home-bundle-media img { height: auto; max-height: 10rem; object-fit: contain; }
#ozark-storefront.home-shine :is(.home-bundle-copy, .home-bundle-purchase) { padding: 1.5rem; }
#ozark-storefront.home-shine .home-bundle-copy h2 { font-size: 1.5rem; line-height: 1.15; }
#ozark-storefront.home-shine .home-bundle-copy > p { margin-bottom: .75rem; color: #455f6d; font-size: 1rem; line-height: 1.45; }
#ozark-storefront.home-shine .home-bundle-price strong { font-size: 1.75rem; }
#ozark-storefront.home-shine .home-bundle-includes b { font-size: .875rem; }
#ozark-storefront.home-shine .home-bundle-includes small { font-size: .8125rem; line-height: 1.5; }

/* Keep the supporting homepage sections on the same compact type scale. */
#ozark-storefront.home-shine .demo-teaser { padding-top: 1.5rem; }
#ozark-storefront.home-shine :is(.dt-title, .op-heading h2) { font-size: clamp(1.5rem, 2.5vw, 2rem); line-height: 1.15; }
#ozark-storefront.home-shine .demo-teaser .dt-card { padding: 1rem; border-radius: 1.25rem; }
#ozark-storefront.home-shine .demo-teaser .dt-visual { height: 3.5rem; margin-bottom: .75rem; }
#ozark-storefront.home-shine .ownership-path { padding-block: 1.5rem 2.5rem; }
#ozark-storefront.home-shine .op-heading { margin-bottom: 1.25rem; }

/* Direct, finite hover feedback is separate from automatic entrance motion.
   Reduced motion gets only a small lift, with no scaling or artwork movement. */
@media (hover: hover) and (pointer: fine) {
  #ozark-storefront.home-shine[data-motion] :is(.home-products .pc, .home-bundle-card):not(.oz-motion-pending) {
    position: relative;
    z-index: 1;
    transform: none !important;
    translate: 0 0 !important;
    scale: 1 !important;
    transition: opacity 180ms ease, translate var(--home-card-response, 260ms) var(--sf-ease), scale var(--home-card-response, 260ms) var(--sf-ease), box-shadow var(--home-card-response, 260ms) ease, border-color var(--home-card-response, 260ms) ease !important;
    transition-delay: 0ms !important;
  }
  #ozark-storefront.home-shine[data-motion] :is(.home-products .pc, .home-bundle-card):not(.oz-motion-pending):is(:hover, :has(:focus-visible)) {
    z-index: 2;
    translate: 0 var(--home-card-lift, -8px) !important;
    scale: var(--home-card-scale, 1.015) !important;
    border-color: rgba(var(--shine-rgb, 8, 124, 167), .55) !important;
    box-shadow: inset 0 2px 0 #fff, inset 1px 0 0 #fff, 0 0 0 1px rgba(var(--shine-rgb, 8, 124, 167), .12), 0 12px 24px rgba(24, 76, 100, .13), 0 34px 65px rgba(24, 76, 100, .2) !important;
  }
}
#ozark-storefront.home-shine[data-motion="reduced"] {
  --home-card-lift: -3px;
  --home-card-scale: 1;
  --home-card-response: 140ms;
}
@media (prefers-reduced-motion: reduce), (update: slow) {
  #ozark-storefront.home-shine {
    --home-card-lift: -3px;
    --home-card-scale: 1;
    --home-card-response: 140ms;
  }
  #ozark-storefront.home-shine .pc-media img { transform: none !important; transition: none !important; }
}
@media (update: slow) {
  #ozark-storefront.home-shine[data-motion] {
    --home-card-lift: 0px;
    --home-card-scale: 1;
    --home-card-response: 0ms;
  }
}
@media (max-width: 1100px) and (min-width: 901px) {
  #ozark-storefront.home-shine .home-products { gap: 1rem; }
  #ozark-storefront.home-shine .home-products .pc-body { padding-inline: 1rem; }
  #ozark-storefront.home-shine .home-products .pc-price-block { margin-inline: 1rem; }
  #ozark-storefront.home-shine .home-products .pc-head { flex-wrap: wrap; }
}
@media (max-width: 900px) {
  #ozark-storefront.home-shine .home-hero { width: min(36rem, calc(100% - 2rem)); padding: 1.25rem 0; }
  #ozark-storefront.home-shine .home-hero-copy { padding: 0 .35rem; }
  #ozark-storefront.home-shine .home-hero h1 { font-size: clamp(1.75rem, 6vw, 2.125rem); }
  #ozark-storefront.home-shine .home-hero .shopper-intro { margin-top: .75rem; font-size: 1rem; line-height: 1.5; }
  #ozark-storefront.home-shine .home-products { width: min(36rem, calc(100% - 2rem)); margin: 1rem auto 1.5rem; }
  #ozark-storefront.home-shine .home-products .pc-media { height: 11rem; }
  #ozark-storefront.home-shine .home-products .product-card-resources a { min-height: 2.75rem; }
  #ozark-storefront.home-shine .home-bundle { width: min(36rem, calc(100% - 2rem)); margin: 1.5rem auto; }
}
@media (max-width: 360px) {
  #ozark-storefront.home-shine .home-products .pc-head { flex-wrap: wrap; }
}
@media print {
  #ozark-storefront.home-shine { background: #fff !important; }
  #ozark-storefront.home-shine :is(.home-products .pc, .home-bundle-card) { box-shadow: none !important; background: #fff !important; }
  #ozark-storefront.home-shine[data-motion] :is(.home-products .pc, .home-bundle-card):not(.oz-motion-pending):is(:hover, :has(:focus-visible)) { translate: none !important; scale: 1 !important; box-shadow: none !important; }
}
