/* MorphedColors.dk — Design System v1
   Minimal Scandinavian, performance-first.
   Accent color: warm gold via --color-accent
*/

:root{
  --color-bg:#0f0f10;
  --color-bg-soft:#161618;
  --color-surface:#1c1c1f;

  --color-text:#f5f5f5;
  --color-text-muted:#b5b5b8;

  --color-accent:#c6a54a;
  --color-accent-hover:#e1c063;

  --color-border:#2a2a2e;

  --font-primary: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif;
  --font-heading: var(--font-primary);

  --text-xs:0.75rem;
  --text-sm:0.875rem;
  --text-base:1rem;
  --text-lg:1.125rem;
  --text-xl:1.5rem;
  --text-2xl:2.25rem;
  --text-3xl:3rem;

  --space-xs:8px;
  --space-sm:16px;
  --space-md:32px;
  --space-lg:64px;
  --space-xl:120px;

  --radius-sm:6px;
  --radius-md:12px;
  --radius-lg:20px;

  --shadow-soft:0 6px 28px rgba(0,0,0,0.28);
  --shadow-glow:0 0 26px rgba(198,165,74,0.22);

  --container:1200px;

  --home-bg-image:url("../img/backgrounds/BG10.jpg");
  --home-bg-position-x:center;
  --home-bg-position-y:center;
  --home-bg-size:cover;
  --home-bg-attachment:scroll;
  --home-bg-min-height:100vh;
  --home-overlay-darkness:0.34;
  --home-overlay-glow:0.26;
  --home-panel-border-opacity:0.46;
  --home-panel-glow-opacity:0.26;
  --home-content-max-width:1440px;

  --home-topbar-frame-image:url("/assets/img/frames/home-topbar-frame.svg");
  --home-sidebar-frame-image:url("/assets/img/frames/home-ornate-frame-darkfantasy.svg");
  --home-callout-panel-image:url("/assets/img/frames/home-ornate-panel-darkfantasy.svg");
  --home-panel-texture-image:url("/assets/img/textures/panel-texture.png");
  --home-corner-top-left-image:url("/assets/img/decorations/corner-ornament-top-left.svg");
  --home-corner-top-right-image:url("/assets/img/decorations/corner-ornament-top-right.svg");
  --home-corner-bottom-left-image:url("/assets/img/decorations/corner-ornament-bottom-left.svg");
  --home-corner-bottom-right-image:url("/assets/img/decorations/corner-ornament-bottom-right.svg");
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--font-primary);
  color:var(--color-text);
  background:transparent;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  position:relative;
  isolation:isolate;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-color:var(--color-bg);
  background-image:var(--home-bg-image);
  background-position:var(--home-bg-position-x) var(--home-bg-position-y);
  background-size:var(--home-bg-size);
  background-repeat:no-repeat;
  transform:translateZ(0);
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(
      180deg,
      rgba(8,8,10, calc(var(--home-overlay-darkness) * 0.82)) 0%,
      rgba(8,8,10, var(--home-overlay-darkness)) 100%
    ),
    radial-gradient(
      1100px 620px at 50% 0%,
      rgba(198,165,74, var(--home-overlay-glow)),
      transparent 60%
    );
}

a{color:inherit}
img{max-width:100%; height:auto; display:block}

.container{
  width:min(92vw, var(--container));
  margin:0 auto;
}

.section{padding:24px 0}
.section--tight{padding:18px 0}

.skip-link{
  position:absolute;
  left:-9999px;
  top:8px;
  padding:10px 12px;
  border-radius:var(--radius-sm);
  background:var(--color-surface);
  border:1px solid var(--color-border);
}
.skip-link:focus{left:8px; z-index:9999}

/* Header / Nav */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:saturate(140%) blur(10px);
  background:rgba(15,15,16,0.56);
  border-bottom:1px solid rgba(255,255,255,var(--home-panel-border-opacity));
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.02) inset,
    0 0 24px rgba(198,165,74,var(--home-panel-glow-opacity));
  overflow:visible;
}

.site-header::before{
  content:"";
  position:absolute;
  inset:6px 18px 6px 18px;
  pointer-events:none;
  background-image:var(--home-topbar-frame-image);
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  opacity:0.95;
  z-index:0;
}

.site-header > .container{
  position:relative;
  z-index:1;
}
.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
  gap:16px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  min-width:0;
}

.brand--assets::before{
  content:none !important;
  display:none !important;
}

.brand-logo-mark,
.brand-logo-name{
  display:block;
  width:auto;
  object-fit:contain;
  flex:0 0 auto;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,0.48));
}

.brand-logo-mark{
  height:40px;
}

.brand-logo-name{
  height:21px;
  max-width:170px;
}

.site-brand-logo{
  display:block;
  max-height:34px;
  width:auto;
  flex:0 0 auto;
}

.site-brand-logo[hidden]{
  display:none !important;
}

.brand-mark{
  width:34px;
  height:34px;
  border-radius:10px;
  background:linear-gradient(135deg, rgba(198,165,74,0.95), rgba(198,165,74,0.35));
  box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset;
  flex:0 0 auto;
}

.brand-mark[hidden]{
  display:none !important;
}

.brand-name{
  font-weight:650;
  letter-spacing:0.2px;
  min-width:0;
}

.brand-name.is-logo-active{
  opacity:0.92;
}
.nav-links{
  display:none;
  gap:22px;
  align-items:center;
}
.nav-links a{
  text-decoration:none;
  color:var(--color-text-muted);
  font-size:var(--text-sm);
  transition:color .2s ease;
}
.nav-links a:hover{color:var(--color-text)}
.nav-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.icon-btn{
  width:42px;
  height:42px;
  border-radius:var(--radius-md);
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.02);
  display:grid;
  place-items:center;
  color:var(--color-text);
  cursor:pointer;
}
.icon-btn:hover{
  border-color:rgba(198,165,74,0.45);
  box-shadow:var(--shadow-glow);
}
.hamburger{display:grid; gap:4px}
.hamburger span{
  width:18px;
  height:2px;
  background:var(--color-text);
  opacity:0.85;
  border-radius:2px;
  transition:transform .18s ease, opacity .18s ease;
}

.icon-btn[aria-expanded="true"] .hamburger span:nth-child(1){
  transform:translateY(6px) rotate(45deg);
}

.icon-btn[aria-expanded="true"] .hamburger span:nth-child(2){
  opacity:0;
}

.icon-btn[aria-expanded="true"] .hamburger span:nth-child(3){
  transform:translateY(-6px) rotate(-45deg);
}

@media (min-width:860px){
  .nav-links{display:flex}
  .icon-btn[data-menu]{display:none}
}

/* Mobile menu */
.mobile-menu{
  display:block;
  max-height:0;
  opacity:0;
  overflow:hidden;
  visibility:hidden;
  transform:translateY(-4px);
  border-top:1px solid rgba(255,255,255,0.06);
  background:rgba(15,15,16,0.86);
  transition:max-height .22s ease, opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.mobile-menu[hidden]{
  display:none;
}
.mobile-menu.open{
  max-height:360px;
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.mobile-menu .inner{
  padding:10px 0 18px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.mobile-menu a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:12px 10px;
  border-radius:var(--radius-md);
  text-decoration:none;
  color:var(--color-text);
  border:1px solid transparent;
}
.mobile-menu a:hover{
  border-color:rgba(198,165,74,0.35);
  background:rgba(198,165,74,0.06);
}

@media (prefers-reduced-motion: reduce){
  .mobile-menu,
  .hamburger span{
    transition:none;
  }
}

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 22px;
  border-radius:var(--radius-md);
  text-decoration:none;
  font-weight:650;
  letter-spacing:0.2px;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
  white-space:nowrap;
}
.btn:active{transform:translateY(1px)}
.btn:focus-visible,
.icon-btn:focus-visible,
.mobile-menu a:focus-visible,
.nav-links a:focus-visible{
  outline:2px solid rgba(225,192,99,0.85);
  outline-offset:3px;
}
.btn-primary{
  background:var(--color-accent);
  color:#111;
  border:1px solid rgba(0,0,0,0.25);
}
.btn-primary:hover{
  background:var(--color-accent-hover);
  box-shadow:var(--shadow-glow);
}
.btn-secondary{
  background:rgba(255,255,255,0.02);
  color:var(--color-text);
  border:1px solid rgba(255,255,255,0.12);
}
.btn-secondary:hover{
  border-color:rgba(198,165,74,0.55);
  color:var(--color-accent-hover);
}

/* Hero */
.hero{
  padding:30px 0 12px;
  min-height:var(--home-bg-min-height);
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
  align-items:start;
}
.kicker{
  color:var(--color-text-muted);
  font-size:var(--text-sm);
  letter-spacing:0.22em;
  text-transform:uppercase;
}
h1{
  font-family:var(--font-heading);
  font-size:clamp(1.9rem, 4.4vw, 2.9rem);
  line-height:1.04;
  margin:8px 0 12px;
  letter-spacing:0;
}
.hero p{
  margin:0 0 18px;
  color:var(--color-text-muted);
  font-size:1.02rem;
  line-height:1.65;
  max-width:52ch;
}
.hero-actions{display:flex; gap:12px; flex-wrap:wrap}
.hero-proof{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.hero-proof span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.025);
  color:var(--color-text-muted);
  font-size:var(--text-xs);
}
.hero-note{
  margin-top:16px;
  font-size:var(--text-sm);
  color:var(--color-text-muted);
}
.hero-note b{color:var(--color-text); font-weight:650}

/* Preview collage */
.collage{
  position:relative;
  border-radius:var(--radius-lg);
  background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
  border:1px solid rgba(255,255,255,0.08);
  padding:18px;
  overflow:hidden;
}
.collage::before{
  content:"";
  position:absolute;
  inset:-30%;
  background:
    radial-gradient(circle at 40% 30%, rgba(198,165,74,0.18), transparent 45%),
    radial-gradient(circle at 70% 65%, rgba(255,255,255,0.06), transparent 55%);
  transform:rotate(8deg);
}
.collage-inner{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}
.card-shot{
  border-radius:14px;
  background:rgba(0,0,0,0.18);
  border:1px solid rgba(255,255,255,0.07);
  min-height:120px;
  overflow:hidden;
  box-shadow:none;
}
.card-shot .ph{
  height:100%;
  display:grid;
  place-items:center;
  color:rgba(245,245,245,0.55);
  font-size:var(--text-sm);
}
.card-shot.large{
  grid-column:span 2;
  min-height:170px;
}

/* Public home theme/layout shell */
#home-shell{
  position:relative;
  overflow:visible;
  min-height:0;
}

#home-shell::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(
      900px 520px at 50% 0%,
      rgba(198,165,74, var(--home-overlay-glow)),
      transparent 60%
    );
  z-index:0;
}

#home-shell > .container{
  position:relative;
  z-index:1;
}

.site-header,
main,
.footer{
  position:relative;
  z-index:1;
}

main{
  position:relative;
  z-index:1;
}

main > section:first-child{
  padding-top:18px;
}

main > section:last-of-type{
  padding-bottom:20px;
}

#home-shell .container{
  width:min(92vw, var(--home-content-max-width));
}

#home-shell .hero-grid > div:first-child,
#home-shell #home-featured-wrap,
.section .callout,
.section .trust{
  position:relative;
  border-radius:var(--radius-lg);
  border:1px solid rgba(255,255,255,var(--home-panel-border-opacity));
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.02) inset,
    0 0 24px rgba(198,165,74,var(--home-panel-glow-opacity));
  overflow:hidden;
  isolation:isolate;
}

#home-shell .hero-grid > div:first-child::before{
  content:"";
  position:absolute;
  inset:16px;
  pointer-events:none;
  background-image:var(--home-callout-panel-image);
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  opacity:0.12;
  z-index:0;
}

body[data-home-show-hero-panel-frame="false"] #home-shell .hero-grid > div:first-child::before{
  content:none;
}

#home-shell #home-featured-wrap::before{
  content:none;
}

body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before{
  content:"";
  position:absolute;
  inset:10px;
  pointer-events:none;
  background-image:var(--home-callout-panel-image);
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  opacity:0.18;
  z-index:0;
}

#home-shell .hero-grid > div:first-child{
  padding:30px 30px 24px;
  background:rgba(12,12,14,0.26);
}

#home-shell #home-featured-wrap{
  padding:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.008)),
    rgba(12,12,14,0.24);
}

body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.015)),
    rgba(12,12,14,0.28);
}

.section .callout{
  padding:26px 24px;
  background:rgba(12,12,14,0.24);
}

.section .trust{
  padding:16px 18px;
  background:rgba(12,12,14,0.20);
}

body[data-home-has-panel-texture="true"] #home-shell .hero-grid > div:first-child,
body[data-home-has-panel-texture="true"] #home-shell #home-featured-wrap{
  background-image:
    linear-gradient(180deg, rgba(12,12,14,0.82), rgba(12,12,14,0.72)),
    var(--home-panel-texture-image);
  background-repeat:no-repeat, repeat;
  background-size:auto, 420px auto;
  background-position:center, center;
}

.home-brand-logo,
.home-brand-emblem,
.home-corner{
  display:block;
}

.home-brand-logo[hidden],
.home-brand-emblem[hidden],
.home-corner[hidden]{
  display:none !important;
}

.home-brand-logo{
  max-height:64px;
  width:auto;
  margin:0 0 14px;
}

.home-brand-emblem{
  max-height:80px;
  width:auto;
  margin:0 0 14px;
}

.home-corner{
  position:absolute;
  width:84px;
  height:84px;
  object-fit:contain;
  opacity:0.58;
  pointer-events:none;
  z-index:2;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,0.20));
  display:none;
}

body[data-home-show-corner-ornaments="true"] .home-corner{
  display:block;
}

.home-corner--left{
  top:18px;
  left:18px;
}

.home-corner--right{
  top:18px;
  right:18px;
}

#home-shell.layout-text-left-featured-right .hero-grid{
  grid-template-columns:1fr;
}

#home-shell.layout-sidebar-left-content-right .hero-grid{
  grid-template-columns:1fr;
}

#home-shell.layout-full-hero .hero-grid{
  grid-template-columns:1fr;
}

#home-shell.layout-full-hero #home-featured-wrap{
  order:-1;
}

#home-shell.layout-full-hero .hero-grid > div:first-child{
  text-align:center;
}

#home-shell.layout-full-hero .hero-actions{
  justify-content:center;
}

#home-shell.layout-full-hero .hero-note{
  max-width:68ch;
  margin-left:auto;
  margin-right:auto;
}

#home-shell.content-width-wide .container{
  width:min(94vw, 1320px);
}

@media (min-width:920px){
  #home-shell.layout-text-left-featured-right .hero-grid{
    grid-template-columns:1.06fr 0.94fr;
    gap:28px;
  }

  #home-shell.layout-sidebar-left-content-right .hero-grid{
    grid-template-columns:minmax(280px, 0.72fr) minmax(0, 1.28fr);
    gap:28px;
    align-items:start;
  }

  #home-shell.layout-full-hero .hero-grid{
    grid-template-columns:1fr;
    gap:20px;
  }

  #home-shell.layout-full-hero #home-featured-wrap{
    max-width:920px;
    margin:0 auto;
  }

  #home-shell.layout-full-hero .hero-grid > div:first-child{
    max-width:880px;
    margin:0 auto;
  }

  .home-featured-card{
    grid-template-columns:220px minmax(0, 1fr);
    gap:18px;
    align-items:start;
  }

  .home-featured-card__media,
  .home-featured-card__image,
  .home-featured-card__placeholder{
    min-height:280px;
  }
}

/* Sections */
.section-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.section-title h2{
  margin:0;
  font-size:clamp(1.35rem, 2.7vw, 1.8rem);
  letter-spacing:0;
}
.section-title a{
  color:var(--color-text-muted);
  text-decoration:none;
  font-size:var(--text-sm);
}
.section-title a:hover{color:var(--color-text)}

/* Product grid */
.product-grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:18px;
}
@media (min-width:920px){
  .hero-grid{grid-template-columns:1.1fr 0.9fr; gap:34px}
  .product-grid{grid-template-columns:repeat(4, 1fr); gap:22px}
}
.product-card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:var(--radius-md);
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  text-decoration:none;
}
.product-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-soft);
  border-color:rgba(198,165,74,0.30);
}
.product-thumb{
  aspect-ratio:4/3;
  background:rgba(0,0,0,0.22);
  border-bottom:1px solid rgba(255,255,255,0.06);
  display:grid;
  place-items:center;
  color:rgba(245,245,245,0.45);
  font-size:var(--text-sm);
}
.product-body{padding:14px 14px 16px}
.product-title{margin:0 0 6px; font-weight:650}
.product-meta{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  color:var(--color-text-muted);
  font-size:var(--text-sm);
}
.badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:var(--text-xs);
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.03);
  color:var(--color-text);
}
.badge.hot{
  border-color:rgba(198,165,74,0.35);
  background:rgba(198,165,74,0.10);
}

/* Trust strip */
.trust{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  padding:18px;
  border-radius:var(--radius-lg);
  border:1px solid rgba(255,255,255,var(--home-panel-border-opacity));
  background:rgba(255,255,255,0.02);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.02) inset,
    0 0 24px rgba(198,165,74,var(--home-panel-glow-opacity));
}
.trust-item{
  display:flex;
  gap:12px;
  align-items:flex-start;
  color:var(--color-text-muted);
  font-size:var(--text-sm);
}
.trust-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  margin-top:6px;
  background:rgba(198,165,74,0.9);
  box-shadow:0 0 0 4px rgba(198,165,74,0.12);
}
@media(min-width:860px){
  .trust{grid-template-columns:repeat(4, 1fr)}
}

/* Bundle callout */
.callout{
  border-radius:var(--radius-lg);
  border:1px solid rgba(255,255,255,var(--home-panel-border-opacity));
  background:linear-gradient(180deg, rgba(198,165,74,0.10), rgba(255,255,255,0.02));
  padding:20px;
  display:flex;
  flex-direction:column;
  gap:10px;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.02) inset,
    0 0 24px rgba(198,165,74,var(--home-panel-glow-opacity));
}
.callout h3{
  margin:0 0 4px;
  font-size:1.22rem;
  line-height:1.15;
}

.callout p{
  margin:0;
  color:var(--color-text-muted);
  line-height:1.6;
}
.callout .row{display:flex; gap:12px; flex-wrap:wrap; margin-top:6px}

/* Footer */
.footer{
  padding:48px 0 56px;
  border-top:1px solid rgba(255,255,255,0.05);
  color:var(--color-text-muted);
  background:linear-gradient(180deg, rgba(10,10,12,0.08), rgba(10,10,12,0.22));
  box-shadow:none;
}
.footer-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
.footer a{color:var(--color-text-muted); text-decoration:none}
.footer a:hover{color:var(--color-text)}
.footer small{display:block; margin-top:10px}
@media(min-width:860px){
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}
}

body.theme-panel-style-glass-dark .site-header,
body.theme-panel-style-glass-dark .trust,
body.theme-panel-style-glass-dark .callout,
body.theme-panel-style-glass-dark .footer{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02)),
    rgba(12,12,14,0.34);
}

body.theme-panel-style-parchment .site-header,
body.theme-panel-style-parchment .trust,
body.theme-panel-style-parchment .callout,
body.theme-panel-style-parchment .footer{
  background:
    linear-gradient(180deg, rgba(198,165,74,0.14), rgba(255,255,255,0.03)),
    rgba(36,28,16,0.42);
}

body.theme-panel-style-ornate-dark .site-header,
body.theme-panel-style-ornate-dark .trust,
body.theme-panel-style-ornate-dark .callout,
body.theme-panel-style-ornate-dark .footer{
  background:
    radial-gradient(700px 260px at 50% 0%, rgba(198,165,74,0.10), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.015)),
    rgba(10,10,14,0.46);
}

/* HOME · readability pass */
#home-shell .hero-grid > div:first-child,
#home-shell #home-featured-wrap,
.section .callout,
.section .trust{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.02)),
    rgba(8,8,10,0.74);
  border-color:rgba(255,255,255,0.18);
  backdrop-filter:saturate(125%) blur(8px);
}

#home-shell .hero-grid > div:first-child,
#home-shell #home-featured-wrap{
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.045) inset,
    0 18px 44px rgba(0,0,0,0.30),
    0 0 30px rgba(198,165,74,0.12);
}

#home-shell .hero-grid > div:first-child::before,
body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before{
  opacity:0.05;
}

.section .callout,
.section .trust{
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.035) inset,
    0 14px 34px rgba(0,0,0,0.26);
}

.home-featured-card__title,
.home-featured-card__price,
.callout h3,
.trust-item b{
  text-shadow:0 2px 16px rgba(0,0,0,0.34);
}

.home-featured-card__text,
.hero p,
.callout p,
.muted{
  color:rgba(245,245,245,0.78);
}

/* Utility */
.muted{color:var(--color-text-muted)}

/* Shop controls */
.controls{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  margin:12px 0 18px;
}
.chips{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.chip{
  appearance:none;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.02);
  color:var(--color-text);
  border-radius:999px;
  padding:8px 12px;
  font-size:var(--text-sm);
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, transform .18s ease, color .18s ease;
}
.chip:hover{border-color:rgba(198,165,74,0.45)}
.chip[aria-pressed="true"]{
  border-color:rgba(198,165,74,0.55);
  background:rgba(198,165,74,0.10);
}
.input{
  display:flex;
  gap:10px;
  align-items:center;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.02);
  border-radius:var(--radius-md);
  padding:10px 12px;
  min-width:min(420px, 92vw);
}
.input input{
  width:100%;
  background:transparent;
  border:none;
  outline:none;
  color:var(--color-text);
  font-size:var(--text-base);
}
.select{
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.02);
  color:var(--color-text);
  border-radius:var(--radius-md);
  padding:12px 12px;
  font-size:var(--text-sm);
}
.pillrow{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
}
.pill{
  font-size:var(--text-xs);
  color:var(--color-text-muted);
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.02);
  padding:6px 10px;
  border-radius:999px;
}
.kpi{
  font-size:var(--text-sm);
  color:var(--color-text-muted);
}

/* Product page */
.page-head{
  padding:44px 0 20px;
}
.page-head .container,
.section.section--tight .container{
  max-width:1240px;
}
.page-head h1{
  margin:6px 0 8px;
  font-size:clamp(1.9rem, 4.8vw, 2.7rem);
}
.page-head p{
  margin:0;
  color:var(--color-text-muted);
  max-width:72ch;
}

.product-layout{
  display:grid;
  grid-template-columns:minmax(0, 720px) minmax(320px, 380px);
  gap:32px;
  align-items:start;
  justify-content:center;
  padding:var(--space-md) 0 var(--space-sm);
}
.product-layout > *{
  min-width:0;
}

.gallery{
  border-radius:24px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  padding:16px;
  overflow:hidden;
}
.gallery-main{
  width:100%;
  aspect-ratio:3 / 4;
  min-height:0;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  color:rgba(245,245,245,0.5);
}
.gallery-main img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

.thumbs{
  display:flex;
  gap:12px;
  margin-top:14px;
  flex-wrap:wrap;
}
.thumb{
  width:88px;
  height:88px;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.02);
  padding:0;
  cursor:pointer;
  display:grid;
  place-items:center;
  color:rgba(245,245,245,0.45);
  font-size:var(--text-xs);
}
.thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.thumb[aria-current="true"]{
  border-color:rgba(198,165,74,0.55);
  box-shadow:var(--shadow-glow);
}

.buybox{
  position:static;
  width:100%;
  min-width:0;
  align-self:start;
  border-radius:24px;
  border:1px solid rgba(255,255,255,0.08);
  background:#141417;
  padding:24px;
}
.price{
  font-size:clamp(2rem, 2.8vw, 2.6rem);
  font-weight:750;
  letter-spacing:0;
  margin:6px 0 16px;
}
.buybox .btn{
  width:100%;
  justify-content:center;
  margin-bottom:14px;
}
.micro{
  font-size:var(--text-sm);
  color:var(--color-text-muted);
  margin-top:10px;
  opacity:0.82;
  line-height:1.5;
}
.list{
  margin:14px 0 0;
  padding-left:20px;
  color:var(--color-text-muted);
}

.accordion{
  max-width:920px;
  border-radius:var(--radius-lg);
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  overflow:hidden;
}
.acc-item + .acc-item{
  border-top:1px solid rgba(255,255,255,0.06);
}
.acc-btn{
  width:100%;
  text-align:left;
  padding:14px 16px;
  background:transparent;
  border:none;
  color:var(--color-text);
  font-weight:650;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.acc-panel{
  padding:0 16px 14px;
  color:var(--color-text-muted);
  display:none;
}
.acc-item.open .acc-panel{
  display:block;
}

.smallgrid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(2, 1fr);
}

#related-wrap[style*="display:none"]{
  display:none !important;
}
#related:empty,
.section-title + #related:empty{
  display:none;
}

/* Legal page typography */
.prose{
  max-width:80ch;
}
.prose h1{font-size:clamp(1.9rem, 4.8vw, 2.6rem)}
.prose h2{font-size:1.2rem; margin-top:26px}
.prose p, .prose li{color:var(--color-text-muted)}
.prose a{color:var(--color-accent-hover)}

@media (min-width:920px){
  .smallgrid{
    grid-template-columns:repeat(4, 1fr);
  }
}

@media (max-width:1100px){
  .product-layout{
    grid-template-columns:1fr;
  }

  .gallery-main{
    aspect-ratio:4 / 5;
  }
}

@media (max-width:700px){
  .page-head{
    padding:28px 0 12px;
  }

  .gallery{
    padding:12px;
  }

  .thumb{
    width:72px;
    height:72px;
  }

  .buybox{
    padding:18px;
  }
}

#admin-product-sort{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

#admin-product-sort option{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

.admin-filter-bar .input,
.admin-filter-bar input,
.admin-filter-bar select{
  color: var(--color-text);
}

#admin-product-health{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

#admin-product-health option{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

.admin-health-metrics .js-health-metric{
  appearance: none;
  width: 100%;
  color: var(--color-text);
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--radius-lg);
}

.admin-health-metrics .js-health-metric:hover{
  border-color: rgba(198,165,74,0.35);
}

#admin-reset-filters{
  white-space: nowrap;
}

#admin-sales-period{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

#admin-sales-period option{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

#admin-purchases-period{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

#admin-purchases-period option{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

.admin-subnav{
  position: sticky;
  top: 72px;
  z-index: 20;
  margin: 0 0 24px;
  padding: 10px 0;
  background: rgba(15,15,16,0.88);
  backdrop-filter: saturate(140%) blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

.admin-subnav__inner{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.admin-subnav__link{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border-radius: 999px;
  text-decoration: none;
  color: var(--color-text-muted);
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.02);
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.admin-subnav__link:hover{
  border-color: rgba(198,165,74,0.45);
  color: var(--color-text);
}

.admin-subnav__link.is-active{
  color: var(--color-text);
  border-color: rgba(198,165,74,0.55);
  background: rgba(198,165,74,0.10);
}

.admin-sections{
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.admin-section{
  scroll-margin-top: 150px;
}

.admin-section__header{
  margin-bottom: 14px;
}

.admin-section__title{
  margin: 0;
  font-size: 1.25rem;
}

.admin-section__body{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

#admin-purchases-period,
#admin-purchases-search{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

#admin-purchases-period option{
  color: var(--color-text);
  background: var(--color-bg-soft);
}

.js-purchase-row:hover{
  background: rgba(255,255,255,0.03);
}

.btn-link{
  font: inherit;
}

.btn-link:hover{
  text-decoration: underline;
}

#admin-purchases-clear{
  white-space: nowrap;
}

/* Admin home editor */
#admin-home-form{
  display:grid;
  gap:18px;
}

#admin-home-form .card{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
}

#admin-home-form label{
  display:block;
  margin:0 0 6px;
  font-size:var(--text-sm);
  font-weight:600;
  color:var(--color-text);
}

#admin-home-form .input,
#admin-home-form input,
#admin-home-form textarea,
#admin-home-form select{
  width:100%;
  min-width:0;
  color:var(--color-text);
  background:var(--color-bg-soft);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:var(--radius-md);
  box-shadow:none;
}

#admin-home-form input,
#admin-home-form select{
  min-height:46px;
}

#admin-home-form textarea{
  min-height:120px;
  resize:vertical;
  font:inherit;
  line-height:1.5;
}

#admin-home-form input,
#admin-home-form textarea,
#admin-home-form select{
  padding:12px 14px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

#admin-home-form input:focus,
#admin-home-form textarea:focus,
#admin-home-form select:focus{
  border-color:rgba(198,165,74,0.55);
  box-shadow:0 0 0 3px rgba(198,165,74,0.12);
}

#admin-home-form select option{
  color:var(--color-text);
  background:var(--color-bg-soft);
}

#admin-home-form > .card > div:first-child{
  font-size:1rem;
  font-weight:700;
  margin-bottom:14px;
}

#admin-save-home-button{
  min-width:140px;
  white-space:nowrap;
}

@media (max-width: 860px){
  #admin-home-form{
    gap:14px;
  }

  #admin-home-form .card{
    padding:14px !important;
  }
}

.admin-home-editor__topbar{
  position:sticky;
  top:124px;
  z-index:12;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin:0 0 18px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:var(--radius-lg);
  background:rgba(15,15,16,0.92);
  backdrop-filter:saturate(140%) blur(10px);
  box-shadow:var(--shadow-soft);
}

.admin-home-editor__actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}

@media (max-width: 860px){
  .admin-home-editor__topbar{
    top:108px;
    align-items:flex-start;
    flex-direction:column;
  }

  .admin-home-editor__actions{
    width:100%;
  }

  .admin-home-editor__actions .btn{
    width:100%;
  }
}

/* Final home cleanup overrides */

/* Public home */
#home-shell #home-featured-wrap{
  min-height:0;
  transition:
    background .18s ease,
    box-shadow .18s ease,
    border-color .18s ease;
}

#home-featured-inner{
  height:auto;
}

body[data-home-show-featured-panel-frame="false"] #home-shell #home-featured-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.006)),
    rgba(12,12,14,0.20);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.015) inset,
    0 0 14px rgba(198,165,74,0.08);
}

body[data-home-show-featured-panel-frame="false"] #home-shell #home-featured-wrap::before{
  content:none;
}

body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.038), rgba(255,255,255,0.014)),
    rgba(12,12,14,0.29);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.025) inset,
    0 0 30px rgba(198,165,74,0.16);
}

body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before{
  opacity:0.22;
}

/* HOME · public featured card */
.home-featured-card{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  align-items:start;
  width:100%;
  min-width:0;
}

.home-featured-card__media{
  min-height:240px;
  border-radius:20px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}

.home-featured-card__image{
  width:100%;
  height:100%;
  min-height:240px;
  object-fit:cover;
  display:block;
}

.home-featured-card__placeholder{
  min-height:240px;
  display:grid;
  place-items:center;
  color:rgba(245,245,245,0.45);
  font-size:var(--text-sm);
}

.home-featured-card__body{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:10px;
  min-width:0;
  width:100%;
}

.home-featured-card__title{
  margin:0;
  font-size:clamp(1.35rem, 2vw, 1.75rem);
  line-height:1.08;
  letter-spacing:0;
  max-width:14ch;
}

.home-featured-card__text{
  margin:0;
  max-width:36ch;
  color:var(--color-text-muted);
  font-size:0.98rem;
  line-height:1.55;
}

.home-featured-card__price{
  margin-top:2px;
  font-size:1.35rem;
  line-height:1.05;
  font-weight:750;
}

.home-featured-card__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:6px;
}

/* HOME - admin featured preview */
.admin-home-preview__featured-fallback{
  border-radius:16px;
}

.admin-home-preview__featured-title{
  max-width:16ch;
}

.admin-home-preview__featured-text{
  max-width:32ch;
}

/* HOME · admin preview shell */
.admin-home-preview{
  display:grid;
  gap:18px;
}

.admin-home-preview__hero{
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
  align-items:start;
  width:min(100%, var(--home-preview-content-max-width, 1200px));
  margin:0 auto;
}

.admin-home-preview__hero-copy,
.admin-home-preview__featured-wrap,
.admin-home-preview__callout{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  border-radius:var(--radius-lg);
  border:1px solid rgba(255,255,255,var(--home-preview-panel-border-opacity, 0.28));
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.02) inset,
    0 0 24px rgba(198,165,74,var(--home-preview-panel-glow-opacity, 0.16));
}

.admin-home-preview__hero-copy{
  padding:30px 30px 24px;
  background:rgba(12,12,14,0.26);
}

.admin-home-preview__featured-wrap{
  padding:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.008)),
    rgba(12,12,14,0.24);
  transition:
    background .18s ease,
    box-shadow .18s ease,
    border-color .18s ease;
}

.admin-home-preview.preview-show-hero-frame .admin-home-preview__hero-copy::before{
  content:"";
  position:absolute;
  inset:16px;
  pointer-events:none;
  background-image:var(--home-preview-callout-panel-image, none);
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  opacity:0.12;
  z-index:0;
}

.admin-home-preview.preview-show-featured-frame .admin-home-preview__featured-wrap::before{
  content:"";
  position:absolute;
  inset:10px;
  pointer-events:none;
  background-image:var(--home-preview-callout-panel-image, none);
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  opacity:0.22;
  z-index:0;
}

.admin-home-preview:not(.preview-show-featured-frame) .admin-home-preview__featured-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.006)),
    rgba(12,12,14,0.20);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.015) inset,
    0 0 14px rgba(198,165,74,0.08);
}

.admin-home-preview:not(.preview-show-featured-frame) .admin-home-preview__featured-wrap::before{
  content:none;
}

.admin-home-preview.preview-show-featured-frame .admin-home-preview__featured-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.015)),
    rgba(12,12,14,0.30);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.025) inset,
    0 0 30px rgba(198,165,74,0.16);
}

.admin-home-preview.preview-show-corners .admin-home-preview__hero{
  position:relative;
}

.admin-home-preview.preview-show-corners .admin-home-preview__hero::before,
.admin-home-preview.preview-show-corners .admin-home-preview__hero::after{
  content:"";
  position:absolute;
  width:72px;
  height:72px;
  pointer-events:none;
  opacity:0.55;
  background-repeat:no-repeat;
  background-size:contain;
  z-index:2;
}

.admin-home-preview.preview-show-corners .admin-home-preview__hero::before{
  top:12px;
  left:12px;
  background-image:var(--home-preview-corner-top-left-image, none);
}

.admin-home-preview.preview-show-corners .admin-home-preview__hero::after{
  top:12px;
  right:12px;
  background-image:var(--home-preview-corner-top-right-image, none);
}

/* HOME · admin preview featured/product */
.admin-home-preview__product-card{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  align-items:start;
  width:100%;
  min-width:0;
}

.admin-home-preview__product-media{
  min-height:240px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}

.admin-home-preview__product-image{
  width:100%;
  height:100%;
  min-height:240px;
  object-fit:cover;
  display:block;
}

.admin-home-preview__product-empty{
  min-height:240px;
  display:grid;
  place-items:center;
  color:rgba(245,245,245,0.45);
  font-size:var(--text-sm);
}

.admin-home-preview__product-body{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
}

.admin-home-preview__product-title{
  margin:0;
  font-size:clamp(1.35rem, 2vw, 1.75rem);
  line-height:1.08;
  letter-spacing:0;
  max-width:10ch;
}

.admin-home-preview__product-text{
  margin:0;
  max-width:34ch;
  color:var(--color-text-muted);
  font-size:0.98rem;
  line-height:1.55;
}

.admin-home-preview__product-price{
  margin-top:2px;
  font-size:1.35rem;
  line-height:1.05;
  font-weight:750;
}

/* HOME · desktop home overrides */
@media (min-width:920px){
  .home-featured-card{
    grid-template-columns:230px minmax(0, 1fr);
    gap:20px;
    align-items:start;
  }

  .home-featured-card__media,
  .home-featured-card__image,
  .home-featured-card__placeholder{
    min-height:300px;
  }

  .admin-home-preview.layout-text-left-featured-right .admin-home-preview__hero{
    grid-template-columns:1.06fr 0.94fr;
    gap:28px;
  }

  .admin-home-preview.layout-sidebar-left-content-right .admin-home-preview__hero{
    grid-template-columns:minmax(280px, 0.72fr) minmax(0, 1.28fr);
    gap:28px;
  }

  .admin-home-preview.layout-full-hero .admin-home-preview__hero{
    grid-template-columns:1fr;
    gap:20px;
  }

  .admin-home-preview.layout-full-hero .admin-home-preview__featured-wrap{
    max-width:920px;
    margin:0 auto;
  }

  .admin-home-preview.layout-full-hero .admin-home-preview__hero-copy{
    max-width:880px;
    margin:0 auto;
    text-align:center;
  }

  .admin-home-preview.layout-full-hero .admin-home-preview__actions{
    justify-content:center;
  }

  .admin-home-preview.layout-full-hero .admin-home-preview__note{
    max-width:68ch;
    margin-left:auto;
    margin-right:auto;
  }

  .admin-home-preview__product-card{
    grid-template-columns:220px minmax(0, 1fr);
    gap:18px;
  }

  .admin-home-preview__product-media,
  .admin-home-preview__product-image,
  .admin-home-preview__product-empty{
    min-height:280px;
  }
}

/* HOME · tablet/mobile home overrides */
@media (max-width:919px){
  body{
    --home-overlay-darkness: 0.44;
    --home-overlay-glow: 0.22;
  }

  body::before{
    background-position:center top;
  }

  .site-header{
    background:rgba(15,15,16,0.34);
    border-bottom:1px solid rgba(255,255,255,0.06);
    box-shadow:
      0 0 0 1px rgba(255,255,255,0.015) inset,
      0 0 10px rgba(198,165,74,0.06);
  }

  .site-header::before{
    inset:8px 12px;
    opacity:0.62;
  }

  .nav{
    gap:12px;
    padding:9px 0;
  }

  .site-brand-logo{
    max-height:28px;
  }

  .brand{
    gap:10px;
  }

  .brand-logo-mark{
    height:31px;
  }

  .brand-logo-name{
    height:16px;
    max-width:122px;
  }

  .brand-name{
    font-size:0.88rem;
    opacity:0.92;
  }

  .icon-btn{
    width:40px;
    height:40px;
    background:rgba(255,255,255,0.03);
  }

  .hero{
    padding:18px 0 8px;
    min-height:auto;
  }

  #home-shell .container{
    width:min(94vw, var(--home-content-max-width));
  }

  #home-shell .hero-grid{
    gap:16px;
  }

  #home-shell .hero-grid > div:first-child{
    padding:22px 18px 18px;
    background:rgba(12,12,14,0.18);
  }

  #home-shell .hero-grid > div:first-child::before{
    inset:12px;
    opacity:0.10;
  }

  #home-shell #home-featured-wrap{
    margin-top:2px;
    padding:14px;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.01)),
      rgba(12,12,14,0.17);
  }

  body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap{
    background:
      linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.014)),
      rgba(12,12,14,0.20);
  }

  body[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before{
    inset:8px;
    opacity:0.18;
  }

  .home-brand-logo{
    max-height:42px;
    margin:0 0 10px;
  }

  .home-brand-emblem{
    max-height:58px;
    margin:0 0 10px;
  }

  .home-corner{
    width:56px;
    height:56px;
    opacity:0.50;
  }

  .home-corner--left{
    top:12px;
    left:12px;
  }

  .home-corner--right{
    top:12px;
    right:12px;
  }

  .kicker{
    font-size:0.68rem;
    letter-spacing:0.18em;
  }

  h1{
    font-size:clamp(1.9rem, 8vw, 2.45rem);
    line-height:1.02;
    margin:6px 0 10px;
  }

  .hero p{
    font-size:0.96rem;
    line-height:1.58;
    margin:0 0 16px;
    max-width:44ch;
  }

  .hero-actions{
    gap:10px;
  }

  .btn{
    padding:12px 16px;
    font-size:0.92rem;
  }

  .hero-proof{
    gap:7px;
    margin-top:12px;
  }

  .hero-proof span{
    min-height:30px;
    padding:6px 9px;
    font-size:0.72rem;
  }

  .hero-note{
    margin-top:12px;
    font-size:0.78rem;
  }

  .home-featured-card{
    gap:12px;
  }

  .home-featured-card__media{
    min-height:0;
    aspect-ratio:16 / 9;
    border-radius:16px;
  }

  .home-featured-card__image{
    width:100%;
    height:100%;
    min-height:0;
    object-fit:cover;
    object-position:center top;
  }

  .home-featured-card__placeholder{
    min-height:0;
    aspect-ratio:16 / 9;
  }

  .home-featured-card__body{
    gap:8px;
  }

  .home-featured-card__title{
    max-width:none;
    font-size:clamp(1.1rem, 5vw, 1.4rem);
    line-height:1.06;
  }

  .home-featured-card__text{
    max-width:none;
    font-size:0.92rem;
    line-height:1.45;
  }

  .home-featured-card__price{
    font-size:1.1rem;
  }

  .home-featured-card__actions{
    gap:8px;
    margin-top:4px;
  }

  .home-featured-card__actions .btn{
    flex:0 1 auto;
    padding:10px 14px;
    font-size:0.88rem;
  }

  .section{
    padding:16px 0;
  }

  .section-title{
    margin-bottom:14px;
  }

  .section-title h2{
    font-size:1.4rem;
  }

  .section .callout{
    padding:20px 18px;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.024), rgba(255,255,255,0.01)),
      rgba(12,12,14,0.16);
  }

  .callout h3{
    font-size:1.08rem;
  }

  .callout p{
    font-size:0.94rem;
    line-height:1.55;
  }

  .section .trust{
    padding:12px;
    gap:8px;
    border-radius:16px;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.006)),
      rgba(12,12,14,0.14);
  }

  .trust{
    grid-template-columns:1fr;
  }

  .trust-item{
    display:grid;
    grid-template-columns:10px 1fr;
    gap:10px;
    align-items:start;
    font-size:0.76rem;
    line-height:1.4;
  }

  .trust-dot{
    width:7px;
    height:7px;
    margin-top:6px;
    box-shadow:0 0 0 3px rgba(198,165,74,0.10);
  }

  .footer{
    padding:24px 0 30px;
    background:
      linear-gradient(180deg, rgba(10,10,12,0.02), rgba(10,10,12,0.10));
  }

  .footer-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .footer-grid > div{
    padding:0;
  }

  .footer .brand-name,
  .footer strong{
    font-size:0.9rem;
  }

  .footer,
  .footer a,
  .footer small,
  .footer p,
  .footer li{
    font-size:0.8rem;
    line-height:1.45;
  }

  .footer small{
    margin-top:6px;
    opacity:0.78;
  }
}

/* HOME · small mobile home overrides */
@media (max-width:640px){
  body{
    --home-overlay-darkness: 0.40;
    --home-overlay-glow: 0.24;
  }

  .container{
    width:min(95vw, var(--container));
  }

  .nav-actions .btn{
    padding:10px 12px;
  }

  #home-shell .hero-grid > div:first-child{
    padding:20px 16px 16px;
    background:rgba(12,12,14,0.14);
  }

  #home-shell #home-featured-wrap{
    padding:12px;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.032), rgba(255,255,255,0.012)),
      rgba(12,12,14,0.15);
  }

  .home-featured-card__media{
    aspect-ratio:4 / 3;
    border-radius:14px;
  }

  .home-featured-card__title{
    font-size:clamp(1.05rem, 5.4vw, 1.28rem);
  }

  .home-featured-card__text{
    font-size:0.9rem;
  }

  .home-featured-card__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .home-featured-card__actions .btn{
    width:100%;
    justify-content:center;
  }

  .home-corner{
    width:48px;
    height:48px;
  }

  .section .callout{
    padding:18px 16px;
  }

  .section .trust{
    padding:10px;
    gap:6px;
  }

  .trust-item{
    font-size:0.74rem;
    gap:8px;
  }

  .footer{
    padding:22px 0 28px;
  }

  .footer-grid{
    gap:10px;
  }
}

/* Admin home asset picker polish */
.admin-home-asset-picker{
  position:relative;
  overflow:hidden;
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.022), rgba(255,255,255,0.008)),
    rgba(12,12,14,0.18);
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.015) inset,
    0 0 18px rgba(198,165,74,0.08);
}

.admin-home-asset-picker::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(420px 180px at 50% 0%, rgba(198,165,74,0.06), transparent 65%);
  z-index:0;
}

.admin-home-asset-picker > *{
  position:relative;
  z-index:1;
}

.admin-home-asset-grid{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(auto-fit, minmax(140px, 1fr));
}

.js-home-asset-pick{
  appearance:none;
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  padding:10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.02);
  color:var(--color-text);
  text-align:left;
  cursor:pointer;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease,
    transform .18s ease;
}

.js-home-asset-pick:hover{
  border-color:rgba(198,165,74,0.38);
  background:rgba(255,255,255,0.035);
  transform:translateY(-1px);
}

.js-home-asset-pick:focus-visible{
  outline:none;
  border-color:rgba(198,165,74,0.55);
  box-shadow:
    0 0 0 3px rgba(198,165,74,0.12),
    0 0 20px rgba(198,165,74,0.10);
}

.js-home-asset-pick[aria-pressed="true"]{
  border-color:rgba(198,165,74,0.55);
  background:
    linear-gradient(180deg, rgba(198,165,74,0.10), rgba(198,165,74,0.04)),
    rgba(255,255,255,0.03);
  box-shadow:
    0 0 0 1px rgba(198,165,74,0.18),
    0 0 24px rgba(198,165,74,0.10);
}

.js-home-asset-pick img{
  display:block;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.admin-home-asset-picker .btn.btn-secondary{
  padding:8px 12px;
  min-height:auto;
}

@media (max-width:860px){
  .admin-home-asset-picker{
    padding:12px !important;
  }

  .admin-home-asset-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
  }

  .js-home-asset-pick{
    padding:8px;
    border-radius:12px;
  }

  .js-home-asset-pick > div:first-child{
    height:76px !important;
    border-radius:8px !important;
  }

  .js-home-asset-pick > div:last-child{
    font-size:0.78rem !important;
  }
}

@media (max-width:560px){
  .admin-home-asset-grid{
    grid-template-columns:1fr;
  }

  .js-home-asset-pick > div:first-child{
    height:84px !important;
  }
}

/* Admin home featured product picker polish */
#home-featured-product-selected{
  display:grid;
  gap:10px;
}

#home-featured-product-results{
  display:grid;
  gap:10px;
  padding:2px;
}

.js-home-featured-product-pick{
  appearance:none;
  display:grid;
  grid-template-columns:56px minmax(0, 1fr);
  gap:10px;
  align-items:center;
  width:100%;
  padding:10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.02);
  color:var(--color-text);
  text-align:left;
  cursor:pointer;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease,
    transform .18s ease;
}

.js-home-featured-product-pick:hover{
  border-color:rgba(198,165,74,0.38);
  background:rgba(255,255,255,0.035);
  transform:translateY(-1px);
}

.js-home-featured-product-pick:focus-visible{
  outline:none;
  border-color:rgba(198,165,74,0.55);
  box-shadow:
    0 0 0 3px rgba(198,165,74,0.12),
    0 0 20px rgba(198,165,74,0.10);
}

.js-home-featured-product-pick[aria-pressed="true"]{
  border-color:rgba(198,165,74,0.55);
  background:
    linear-gradient(180deg, rgba(198,165,74,0.10), rgba(198,165,74,0.04)),
    rgba(255,255,255,0.03);
  box-shadow:
    0 0 0 1px rgba(198,165,74,0.18),
    0 0 24px rgba(198,165,74,0.10);
}

#home-featured-product-selected .card,
#home-featured-product-results .card{
  border-radius:16px;
}

#home-featured-product-selected img,
.js-home-featured-product-pick img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

#home-featured-product-selected .btn.btn-secondary{
  min-height:auto;
  white-space:nowrap;
}

@media (max-width:860px){
  #home-featured-product-selected > .card{
    grid-template-columns:56px minmax(0, 1fr) !important;
  }

  #home-featured-product-selected > .card > div:last-child{
    grid-column:1 / -1;
    justify-content:flex-start !important;
  }

  .js-home-featured-product-pick{
    padding:9px;
    border-radius:12px;
  }
}

@media (max-width:560px){
  .js-home-featured-product-pick{
    grid-template-columns:48px minmax(0, 1fr);
    gap:9px;
    padding:8px;
  }

  #home-featured-product-selected > .card{
    grid-template-columns:48px minmax(0, 1fr) !important;
    gap:10px !important;
    padding:10px !important;
  }
}

/* Admin featured picker archived state */
.js-home-featured-product-pick[data-product-archived="true"]{
  border-color:rgba(255,255,255,0.07);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.012), rgba(255,255,255,0.006)),
    rgba(255,255,255,0.015);
  opacity:0.72;
}

.js-home-featured-product-pick[data-product-archived="true"]:hover{
  border-color:rgba(198,165,74,0.24);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0.008)),
    rgba(255,255,255,0.022);
  opacity:0.86;
}

.js-home-featured-product-pick[data-product-archived="true"] [class="mono"],
.js-home-featured-product-pick[data-product-archived="true"] .mono{
  opacity:0.58 !important;
}

.js-home-featured-product-pick[data-product-archived="true"] img{
  filter:saturate(0.82) brightness(0.92);
}

/* Admin featured picker toggle row */
#home-featured-show-archived{
  width:auto !important;
  min-height:auto !important;
  accent-color:var(--color-accent);
}

#admin-home-form label:has(#home-featured-show-archived){
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:500;
}

/* Admin featured picker counts */
#home-featured-product-counts{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin:0 0 10px;
}

#home-featured-product-counts .pill{
  background:rgba(255,255,255,0.025);
  border-color:rgba(255,255,255,0.10);
}

@media (max-width:560px){
  #home-featured-product-counts{
    gap:6px;
  }

  #home-featured-product-counts .pill{
    font-size:.72rem;
    padding:6px 9px;
  }
}

/* Admin featured search row */
#home-featured-clear-search-button{
  white-space:nowrap;
  min-height:auto;
}

@media (max-width:560px){
  #home-featured-clear-search-button{
    width:100%;
  }
}

/* Admin product action stack polish */
.action-stack{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.action-stack .btn{
  width:100%;
}

/* Admin product actions extended */
.action-stack .btn{
  min-height:auto;
}

@media (max-width:860px){
  .action-stack{
    gap:6px;
  }
}

/* Admin product featured badge */
#admin-products-body .badge.hot{
  vertical-align:middle;
}

/* Admin featured badge editor jump */
.js-open-featured-editor{
  white-space:nowrap;
}

#admin-products-body .badge.hot{
  display:inline-flex;
  align-items:center;
}

/* Admin featured badge actions */
.js-open-featured-editor,
.js-save-home-from-featured-badge{
  white-space:nowrap;
}

/* Admin featured badge actions */
.js-copy-featured-slug{
  white-space:nowrap;
}

/* Admin featured badge product page link */
.js-open-featured-product-page{
  white-space:nowrap;
  text-decoration:none;
}

/* Admin featured badge links */
.js-open-featured-product-page,
.js-open-featured-checkout{
  white-space:nowrap;
  text-decoration:none;
}

/* Admin featured switch action */
.js-switch-featured{
  white-space:nowrap;
}

.js-clear-featured{
  white-space:nowrap;
}

/* Product page polish pass 1 */
.product-intro-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.product-intro-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.025);
  color:var(--color-text-muted);
  font-size:var(--text-sm);
}

.gallery{
  box-shadow:0 20px 50px rgba(0,0,0,0.18);
}

.gallery-main{
  background:
    radial-gradient(circle at 50% 30%, rgba(198,165,74,0.08), transparent 55%),
    rgba(255,255,255,0.02);
}

.buybox{
  position:sticky;
  top:96px;
  box-shadow:0 20px 50px rgba(0,0,0,0.22);
}

.buybox-eyebrow{
  font-size:var(--text-sm);
  text-transform:uppercase;
  letter-spacing:.14em;
  color:var(--color-text-muted);
  opacity:.82;
  margin-bottom:8px;
}

.buybox-points{
  display:grid;
  gap:10px;
  margin:0 0 16px;
}

.buybox-point{
  position:relative;
  padding-left:18px;
  color:var(--color-text);
  font-size:var(--text-sm);
}

.buybox-point::before{
  content:"";
  position:absolute;
  left:0;
  top:.58em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:rgba(198,165,74,0.85);
  box-shadow:0 0 12px rgba(198,165,74,0.28);
}

.buybox-section-title{
  color:var(--color-text);
  font-weight:700;
  margin-bottom:4px;
}

.buybox-list{
  margin-top:12px;
}

.buybox-list li{
  margin-bottom:8px;
}

.buybox-note{
  margin-top:14px;
  color:var(--color-text-muted);
  font-size:var(--text-sm);
  line-height:1.5;
}

@media (max-width:1100px){
  .buybox{
    position:static;
    top:auto;
  }
}

@media (max-width:700px){
  .product-intro-meta{
    gap:8px;
  }

  .product-intro-chip{
    min-height:32px;
    padding:7px 10px;
    font-size:.78rem;
  }

  .buybox-points{
    gap:8px;
  }
}

/* HOME · final public contrast override */
body #home-shell #home-featured-wrap[hidden]{
  display:none !important;
}

/* HOME - full game UI frame correction */
body.home-page #home-shell .hero-grid > div:first-child,
body.home-page #home-shell #home-featured-wrap,
body.home-page.theme-panel-style-glass-dark .section .callout,
body.home-page.theme-panel-style-glass-dark .section .trust,
body.home-page.theme-panel-style-parchment .section .callout,
body.home-page.theme-panel-style-parchment .section .trust,
body.home-page.theme-panel-style-ornate-dark .section .callout,
body.home-page.theme-panel-style-ornate-dark .section .trust,
body.home-page .section .callout,
body.home-page .section .trust{
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  overflow:visible;
}

body.home-page[data-home-has-panel-texture="true"] #home-shell .hero-grid > div:first-child,
body.home-page[data-home-has-panel-texture="true"] #home-shell #home-featured-wrap,
body.home-page[data-home-has-panel-texture="true"] .section .callout,
body.home-page[data-home-has-panel-texture="true"] .section .trust{
  background-image:none;
}

body.home-page #home-shell .hero-grid > div:first-child::before,
body.home-page[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before,
body.home-page .section .callout::before,
body.home-page .section .trust::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  opacity:1;
  transform:none;
  z-index:0;
}

body.home-page #home-shell .hero-grid > div:first-child::before{
  background-image:var(--home-sidebar-frame-image);
  opacity:0.98;
}

body.home-page[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before,
body.home-page .section .callout::before{
  background-image:var(--home-callout-panel-image);
}

body.home-page .section .trust::before{
  background-image:var(--home-callout-panel-image);
  opacity:0.92;
}

body.home-page[data-home-show-hero-panel-frame="false"] #home-shell .hero-grid > div:first-child::before,
body.home-page[data-home-show-featured-panel-frame="false"] #home-shell #home-featured-wrap::before{
  content:none;
}

body.home-page #home-shell .hero-grid > div:first-child{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:clamp(430px, 36vw, 640px);
  padding:clamp(78px, 7vw, 118px) clamp(68px, 7vw, 112px);
}

body.home-page #home-shell #home-featured-wrap{
  display:grid;
  align-items:center;
  padding:clamp(72px, 6vw, 104px) clamp(58px, 6vw, 92px);
  min-height:clamp(380px, 32vw, 520px);
}

body.home-page .section .callout{
  align-items:center;
  justify-content:center;
  min-height:clamp(300px, 24vw, 390px);
  padding:clamp(78px, 7vw, 112px) clamp(80px, 9vw, 140px);
  text-align:center;
}

body.home-page .section .trust{
  padding:clamp(62px, 6vw, 92px) clamp(52px, 7vw, 110px);
}

body.home-page #home-shell .hero-grid > div:first-child > :not(.home-corner),
body.home-page #home-featured-inner,
body.home-page .section .callout > *,
body.home-page .section .trust > *{
  position:relative;
  z-index:1;
}

body.home-page #home-featured-inner.collage-inner{
  display:block;
  grid-template-columns:none;
  gap:0;
  width:100%;
  height:100%;
}

body.home-page .home-featured-card{
  width:min(100%, 660px);
  margin:0 auto;
  grid-template-columns:minmax(120px, 190px) minmax(0, 1fr);
  gap:clamp(16px, 2.4vw, 28px);
  align-items:center;
  min-height:100%;
  overflow:hidden;
}

body.home-page .home-featured-card__media{
  min-height:0;
  aspect-ratio:4 / 5;
  border-radius:18px;
  border:1px solid rgba(246,214,138,0.24);
  background:rgba(5,4,3,0.62);
  box-shadow:
    0 16px 34px rgba(0,0,0,0.34),
    0 0 0 1px rgba(255,255,255,0.04) inset;
}

body.home-page .home-featured-card__image{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:contain;
  padding:10px;
  background:rgba(0,0,0,0.30);
}

body.home-page .home-featured-card__placeholder{
  min-height:0;
  aspect-ratio:4 / 5;
}

body.home-page .home-featured-card__title{
  max-width:none;
  font-size:clamp(1.22rem, 1.7vw, 1.68rem);
  line-height:1.06;
  overflow-wrap:normal;
}

body.home-page .home-featured-card__text{
  max-width:none;
  font-size:0.94rem;
  line-height:1.45;
}

body.home-page .home-featured-card__body{
  max-width:none;
  min-width:0;
}

body.home-page .section .callout h3{
  max-width:48rem;
  font-size:clamp(1.28rem, 2.2vw, 1.8rem);
}

body.home-page .section .callout p{
  max-width:64ch;
}

body.home-page .section .callout .row{
  justify-content:center;
}

body.home-page .hero p,
body.home-page .callout p,
body.home-page .home-featured-card__text,
body.home-page .trust-item{
  color:rgba(255,250,236,0.82);
  text-shadow:0 2px 14px rgba(0,0,0,0.34);
}

body.home-page .kicker,
body.home-page .hero-note,
body.home-page .muted{
  color:rgba(255,239,197,0.70);
}

body.home-page .hero-proof span{
  border-color:rgba(246,214,138,0.20);
  background:rgba(10,7,5,0.38);
}

@media (max-width:919px){
  body.home-page #home-shell .hero-grid > div:first-child{
    min-height:0;
    padding:54px 28px 44px;
  }

  body.home-page #home-shell #home-featured-wrap{
    padding:54px 28px 46px;
    min-height:0;
  }

  body.home-page .home-featured-card{
    grid-template-columns:1fr;
  }

  body.home-page .home-featured-card__media{
    aspect-ratio:16 / 10;
  }

  body.home-page .section .callout{
    min-height:0;
    padding:58px 30px 52px;
  }

  body.home-page .section .trust{
    padding:50px 28px;
  }
}

/* HOME - cohesive game interface direction */
.home-game-sidebar{
  display:none;
}

body.home-page .section .callout::before,
body.home-page .section .trust::before{
  content:none;
}

body.home-page .section .callout,
body.home-page .section .trust{
  position:relative;
  border:1px solid rgba(223,172,74,0.58);
  border-radius:12px;
  background:
    radial-gradient(620px 260px at 16% 0%, rgba(223,172,74,0.22), transparent 68%),
    linear-gradient(180deg, rgba(62,42,27,0.90), rgba(13,10,8,0.94));
  box-shadow:
    0 18px 42px rgba(0,0,0,0.42),
    0 0 0 1px rgba(255,238,185,0.14) inset,
    0 0 28px rgba(223,172,74,0.14);
  overflow:hidden;
}

body.home-page .section .callout::after,
body.home-page .section .trust::after{
  content:"";
  position:absolute;
  inset:8px;
  border:1px solid rgba(246,214,138,0.16);
  border-radius:8px;
  pointer-events:none;
}

body.home-page .section .callout{
  min-height:0;
  align-items:flex-start;
  padding:30px 34px;
  text-align:left;
}

body.home-page .section .callout h3{
  max-width:48rem;
  font-size:clamp(1.22rem, 1.9vw, 1.6rem);
}

body.home-page .section .callout p{
  max-width:66ch;
}

body.home-page .section .callout .row{
  justify-content:flex-start;
}

body.home-page .section-title{
  align-items:center;
  margin:0 0 14px;
  padding:0 4px;
}

body.home-page .section-title h2{
  font-family:var(--font-heading);
  color:#f4dfaa;
  text-shadow:0 2px 18px rgba(0,0,0,0.58);
}

body.home-page .section-title a{
  color:rgba(255,242,207,0.78);
  text-shadow:0 2px 12px rgba(0,0,0,0.48);
}

.home-showcase{
  display:grid;
  gap:12px;
  width:min(100%, 430px);
  margin:0 auto;
  color:var(--color-text);
  text-align:center;
}

.home-showcase__header{
  display:grid;
  place-items:center;
  min-height:44px;
  border-radius:10px;
  border:1px solid rgba(223,172,74,0.38);
  background:linear-gradient(180deg, rgba(18,12,8,0.74), rgba(10,7,5,0.66));
  box-shadow:0 0 0 1px rgba(255,236,178,0.08) inset;
}

.home-showcase__header h2{
  margin:0;
  font-family:var(--font-heading);
  font-size:clamp(1.22rem, 2vw, 1.55rem);
  line-height:1.05;
  color:#f4dfaa;
  text-shadow:0 2px 12px rgba(0,0,0,0.52);
}

.home-showcase__tabs{
  display:flex;
  justify-content:center;
  gap:8px;
  padding:6px;
  border-radius:10px;
  border:1px solid rgba(223,172,74,0.22);
  background:rgba(8,6,4,0.58);
}

.home-showcase__tabs span{
  min-width:0;
  padding:6px 10px;
  border-radius:8px;
  color:rgba(255,242,207,0.82);
  font-size:0.78rem;
  font-weight:700;
  line-height:1;
}

.home-showcase__tabs span:first-child{
  color:#21150d;
  background:linear-gradient(180deg, #e1b94d, #ba8531);
}

.home-showcase__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(118px, 1fr));
  gap:10px;
}

.home-showcase-card{
  min-width:0;
  display:grid;
  gap:7px;
  padding:7px;
  border-radius:12px;
  border:1px solid rgba(223,172,74,0.36);
  background:rgba(10,7,5,0.62);
  box-shadow:0 0 0 1px rgba(255,236,178,0.07) inset;
}

.home-showcase-card__media{
  position:relative;
  display:block;
  aspect-ratio:3 / 4;
  overflow:hidden;
  border-radius:9px;
  background:rgba(0,0,0,0.52);
  border:1px solid rgba(255,236,178,0.12);
}

.home-showcase-card__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.home-showcase-card__media span{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:#f4dfaa;
  font-family:var(--font-heading);
  font-size:1.1rem;
}

.home-showcase-card__media strong{
  position:absolute;
  top:7px;
  right:7px;
  max-width:calc(100% - 14px);
  padding:5px 7px;
  border-radius:7px;
  background:rgba(30,19,10,0.88);
  border:1px solid rgba(223,172,74,0.48);
  color:#f7e7bb;
  font-size:0.75rem;
  line-height:1;
  text-shadow:0 1px 6px rgba(0,0,0,0.5);
}

.home-showcase-card h3{
  margin:0;
  font-size:0.78rem;
  line-height:1.12;
  font-weight:800;
}

.home-showcase-card h3 a{
  color:#f6e1ad;
  text-decoration:none;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.home-showcase-card p{
  display:none;
}

.home-showcase__all{
  justify-self:center;
  min-width:118px;
  padding:11px 18px;
  border-radius:8px;
  border:1px solid rgba(223,172,74,0.40);
  background:linear-gradient(180deg, rgba(65,45,28,0.86), rgba(19,13,9,0.90));
  color:#f7e7bb;
  text-decoration:none;
  font-weight:800;
  box-shadow:0 8px 18px rgba(0,0,0,0.26);
}

@media (min-width:1500px){
  body.home-page main#main{
    position:relative;
    isolation:isolate;
    width:min(94vw, 1680px);
    margin:0 auto;
    display:grid;
    grid-template-columns:290px minmax(0, 1fr);
    gap:0 34px;
    align-items:start;
    padding:22px 28px 42px;
  }

  body.home-page main#main::before{
    content:"";
    position:absolute;
    inset:0;
    border:1px solid rgba(246,214,138,0.08);
    background:
      radial-gradient(760px 420px at 58% 12%, rgba(223,172,74,0.11), transparent 72%),
      linear-gradient(90deg, rgba(4,4,5,0.16), rgba(5,5,6,0.32) 32%, rgba(5,5,6,0.20));
    box-shadow:0 24px 80px rgba(0,0,0,0.22);
    pointer-events:none;
    z-index:0;
  }

  body.home-page main#main > *{
    position:relative;
    z-index:1;
  }

  body.home-page main#main > .home-game-sidebar{
    display:flex;
    grid-column:1;
    grid-row:1 / span 4;
    position:sticky;
    top:74px;
    min-height:min(820px, calc(100vh - 104px));
    flex-direction:column;
    gap:14px;
    padding:34px 32px 36px;
    isolation:isolate;
    color:rgba(255,242,207,0.88);
  }

  .home-game-sidebar::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:url("/assets/img/frames/home-sidebar-frame.svg");
    background-repeat:no-repeat;
    background-position:center;
    background-size:100% 100%;
    opacity:0.98;
    pointer-events:none;
    z-index:0;
  }

  .home-game-sidebar::after{
    content:"";
    position:absolute;
    inset:34px 30px;
    border-radius:18px;
    background:
      radial-gradient(260px 220px at 50% 0%, rgba(223,172,74,0.12), transparent 70%),
      rgba(7,5,4,0.18);
    pointer-events:none;
    z-index:0;
  }

  .home-game-sidebar > *{
    position:relative;
    z-index:1;
  }

  .home-side-brand{
    display:grid;
    place-items:center;
    min-height:150px;
    padding:18px 16px;
    border-radius:14px;
    border:1px solid rgba(223,172,74,0.24);
    background:
      radial-gradient(180px 120px at 50% 26%, rgba(223,172,74,0.14), transparent 70%),
      rgba(5,4,3,0.48);
    text-decoration:none;
  }

  .home-side-brand img{
    width:min(100%, 220px);
    max-height:130px;
    object-fit:contain;
    filter:drop-shadow(0 10px 20px rgba(0,0,0,0.44));
  }

  .home-side-nav,
  .home-side-group{
    display:grid;
    border-radius:14px;
    overflow:hidden;
    border:1px solid rgba(223,172,74,0.20);
    background:rgba(10,7,5,0.36);
  }

  .home-side-title{
    padding:10px 18px 8px;
    color:#f4dfaa;
    border-bottom:1px solid rgba(223,172,74,0.18);
    background:rgba(223,172,74,0.06);
    font-family:var(--font-heading);
    font-size:0.92rem;
    font-weight:800;
    line-height:1.1;
  }

  .home-side-nav a,
  .home-side-group a,
  .home-side-group span{
    display:flex;
    align-items:center;
    min-height:40px;
    gap:10px;
    padding:9px 18px;
    color:rgba(255,242,207,0.88);
    border-bottom:1px solid rgba(223,172,74,0.18);
    text-decoration:none;
    font-weight:800;
    line-height:1.15;
  }

  .home-side-nav a:last-child,
  .home-side-group a:last-of-type,
  .home-side-group span:last-child{
    border-bottom:0;
  }

  .home-side-nav a::before,
  .home-side-group a::before,
  .home-side-group span::before{
    content:"";
    flex:0 0 auto;
    width:10px;
    height:10px;
    border-radius:2px;
    background:linear-gradient(180deg, #e8c55d, #9d6726);
    box-shadow:0 0 12px rgba(223,172,74,0.36);
  }

  .home-side-nav a:hover,
  .home-side-nav a:focus-visible,
  .home-side-group a:hover,
  .home-side-group a:focus-visible{
    color:#fff5d7;
    background:rgba(223,172,74,0.12);
  }

  body.home-page main#main > section{
    grid-column:2;
  }

  body.home-page main#main > section > .container{
    width:100%;
    max-width:none;
  }

  body.home-page .hero{
    min-height:0;
    padding:0 0 34px;
  }

  body.home-page #home-shell .container{
    width:100%;
  }

  body.home-page #home-shell .hero-grid{
    grid-template-columns:minmax(0, 1fr) minmax(380px, 500px);
    gap:40px;
    align-items:start;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    min-height:clamp(380px, 30vw, 500px);
    padding:clamp(78px, 6vw, 106px) clamp(62px, 5vw, 90px) clamp(62px, 5vw, 82px);
  }

  body.home-page #home-shell #home-featured-wrap{
    min-height:clamp(360px, 29vw, 460px);
    padding:58px 42px 48px;
  }

  body.home-page main#main > .section{
    padding:14px 0;
  }

  body.home-page main#main > .section .container{
    width:min(100%, 860px);
    margin-left:0;
  }

  body.home-page main#main > .section:last-of-type .container{
    width:100%;
  }
}

@media (min-width:1500px){
  body.home-page main#main{
    grid-template-columns:320px minmax(0, 1fr);
    gap:0 42px;
  }

  body.home-page #home-shell .hero-grid{
    grid-template-columns:minmax(0, 1fr) minmax(420px, 520px);
    gap:40px;
  }

  .home-showcase{
    width:min(100%, 500px);
  }
}

@media (max-width:1119px){
  body.home-page .home-game-sidebar{
    display:none;
  }
}

@media (max-width:620px){
  .home-showcase__grid{
    grid-template-columns:1fr;
  }

  .home-showcase-card{
    grid-template-columns:96px minmax(0, 1fr);
    align-items:center;
    text-align:left;
  }

  .home-showcase-card__media{
    aspect-ratio:4 / 5;
  }
}

/* HOME - full fantasy game UI continuation */
body.home-page{
  --game-gold:#e3b94d;
  --game-gold-soft:#f4dfaa;
  --game-ember:#9b5b24;
  --game-cyan:#5fd6e9;
  --game-panel:#170d09;
  background-color:#050403;
  background-image:var(--home-bg-image);
  background-position:var(--home-bg-position-x) var(--home-bg-position-y);
  background-size:var(--home-bg-size);
  background-repeat:no-repeat;
  background-attachment:fixed;
}

body.home-page::after{
  background:
    linear-gradient(180deg, rgba(4,5,6,0.18) 0%, rgba(5,5,6,0.04) 24%, rgba(5,5,6,0.22) 100%),
    radial-gradient(900px 520px at 58% 0%, rgba(227,185,77,0.17), transparent 68%),
    radial-gradient(520px 420px at 9% 86%, rgba(95,214,233,0.12), transparent 70%),
    radial-gradient(620px 500px at 92% 32%, rgba(255,238,185,0.08), transparent 72%),
    linear-gradient(90deg, rgba(2,2,3,0.32), transparent 22%, transparent 72%, rgba(2,2,3,0.22));
}

body.home-page .site-header{
  min-height:58px;
  background:
    linear-gradient(180deg, rgba(23,15,9,0.88), rgba(7,6,5,0.78)),
    rgba(8,8,9,0.70);
  border-bottom:1px solid rgba(227,185,77,0.24);
  box-shadow:
    0 12px 30px rgba(0,0,0,0.24),
    0 0 0 1px rgba(255,242,207,0.04) inset;
}

body.home-page .site-header::before{
  inset:7px max(18px, calc((100vw - 760px) / 2)) 7px max(18px, calc((100vw - 760px) / 2));
  opacity:0.92;
}

body.home-page .nav{
  width:min(94vw, 760px);
  margin:0 auto;
  padding:9px 0;
}

body.home-page .site-brand-logo{
  max-height:38px;
}

body.home-page .brand-name{
  color:#fff2ce;
  text-shadow:0 2px 10px rgba(0,0,0,0.55);
}

body.home-page .nav-links{
  gap:18px;
}

body.home-page .nav-links a{
  color:rgba(255,242,207,0.78);
  font-size:0.82rem;
  text-shadow:0 2px 10px rgba(0,0,0,0.54);
}

body.home-page .nav-links a:hover,
body.home-page .nav-links a:focus-visible{
  color:#fff7dc;
}

body.home-page #home-shell .hero-grid > div:first-child::before{
  background-image:var(--home-callout-panel-image);
  opacity:1;
}

body.home-page[data-home-show-corner-ornaments="true"] .home-corner{
  opacity:0.82;
}

body.home-page .home-brand-logo{
  max-height:86px;
  margin:0 auto 2px;
  filter:
    drop-shadow(0 12px 18px rgba(0,0,0,0.46))
    drop-shadow(0 0 15px rgba(227,185,77,0.20));
}

body.home-page .home-brand-emblem{
  max-height:92px;
  margin:0 auto 0;
  filter:
    drop-shadow(0 14px 22px rgba(0,0,0,0.52))
    drop-shadow(0 0 16px rgba(227,185,77,0.26));
}

body.home-page .kicker{
  color:rgba(244,223,170,0.76);
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.22em;
}

body.home-page h1{
  color:#fff8e5;
  text-shadow:0 3px 18px rgba(0,0,0,0.70);
}

body.home-page .btn{
  border-radius:8px;
  min-height:44px;
  box-shadow:0 9px 20px rgba(0,0,0,0.22);
}

body.home-page .btn-primary{
  background:linear-gradient(180deg, #e6bf55, #ba8731);
  border-color:rgba(255,243,198,0.28);
  color:#1b1008;
}

body.home-page .btn-primary:hover{
  background:linear-gradient(180deg, #f2d36f, #c8973d);
}

body.home-page .btn-secondary{
  background:rgba(8,6,5,0.50);
  border-color:rgba(244,223,170,0.22);
  color:#fff2ce;
}

body.home-page .btn-secondary:hover{
  border-color:rgba(95,214,233,0.48);
  color:#ffffff;
  box-shadow:0 0 22px rgba(95,214,233,0.12);
}

body.home-page .hero-proof span{
  border-radius:8px;
  border-color:rgba(244,223,170,0.18);
  background:rgba(7,5,4,0.44);
  color:rgba(255,242,207,0.72);
}

body.home-page .section .callout,
body.home-page .section .trust{
  background:
    linear-gradient(180deg, rgba(83,50,25,0.78), rgba(16,10,7,0.92)),
    rgba(8,6,5,0.82);
  border-color:rgba(227,185,77,0.50);
}

body.home-page .trust-dot{
  background:linear-gradient(180deg, var(--game-cyan), #276f87);
  box-shadow:
    0 0 0 4px rgba(95,214,233,0.10),
    0 0 16px rgba(95,214,233,0.28);
}

body.home-page .home-showcase{
  width:min(100%, 480px);
}

body.home-page .home-showcase__header,
body.home-page .home-showcase__tabs,
body.home-page .home-showcase-card,
body.home-page .home-showcase__all{
  border-color:rgba(227,185,77,0.42);
}

body.home-page .home-showcase-card{
  background:
    radial-gradient(180px 120px at 50% 0%, rgba(227,185,77,0.12), transparent 72%),
    rgba(7,5,4,0.68);
}

body.home-page .home-showcase-card__media{
  box-shadow:0 12px 24px rgba(0,0,0,0.28);
}

body.home-page .home-showcase-card__media img{
  object-fit:contain;
  padding:6px;
  background:#030303;
}

body.home-page .home-showcase-card__media.has-css-cover{
  position:relative;
  overflow:hidden;
}

body.home-page .home-showcase-card__media.has-css-cover .home-showcase-card__cover{
  position:absolute;
  inset:8px;
  display:block;
  border-radius:6px;
  background-image:var(--card-cover-image);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}

body.home-page .home-showcase-card__media.has-css-cover > strong{
  z-index:2;
}

body.home-page .home-showcase__all:hover,
body.home-page .home-showcase__all:focus-visible{
  color:#ffffff;
  border-color:rgba(95,214,233,0.55);
  box-shadow:
    0 8px 18px rgba(0,0,0,0.28),
    0 0 20px rgba(95,214,233,0.12);
}

body.home-page .footer{
  background:
    linear-gradient(180deg, rgba(7,5,4,0.42), rgba(7,5,4,0.78));
  border-top:1px solid rgba(227,185,77,0.18);
}

@media (min-width:1500px){
  body.home-page main#main{
    width:min(96vw, 1640px);
    grid-template-columns:300px minmax(0, 1fr);
    gap:0 36px;
    padding:26px 34px 52px;
  }

  body.home-page main#main::before{
    border-color:rgba(227,185,77,0.12);
    background:
      radial-gradient(740px 420px at 54% 7%, rgba(227,185,77,0.13), transparent 70%),
      radial-gradient(420px 360px at 4% 84%, rgba(95,214,233,0.08), transparent 70%),
      linear-gradient(90deg, rgba(3,3,4,0.16), rgba(6,5,5,0.24) 28%, rgba(6,5,5,0.12));
  }

  body.home-page main#main > .home-game-sidebar{
    top:78px;
    min-height:min(800px, calc(100vh - 112px));
    padding:30px 30px 34px;
  }

  .home-game-sidebar::before{
    opacity:1;
  }

  .home-side-brand{
    position:relative;
    overflow:hidden;
    min-height:134px;
    padding:12px 16px;
  }

  .home-side-brand img{
    display:none;
  }

  .home-side-brand::after{
    content:"";
    position:absolute;
    inset:18px 22px;
    z-index:1;
    background-image:url("/assets/img/logo/logo.png");
    background-position:center;
    background-repeat:no-repeat;
    background-size:contain;
    filter:
      drop-shadow(0 12px 18px rgba(0,0,0,0.52))
      drop-shadow(0 0 16px rgba(227,185,77,0.22));
  }

  body.home-page #home-shell .hero-grid > div:first-child:has(.home-brand-logo[hidden])::after{
    content:"";
    position:absolute;
    top:-84px;
    left:50%;
    width:min(310px, 46%);
    height:110px;
    z-index:2;
    pointer-events:none;
    transform:translateX(-50%);
    background-image:url("/assets/img/logo/logo.png");
    background-position:center;
    background-repeat:no-repeat;
    background-size:contain;
    filter:
      drop-shadow(0 14px 20px rgba(0,0,0,0.48))
      drop-shadow(0 0 18px rgba(227,185,77,0.24));
  }

  .home-side-nav a,
  .home-side-group a,
  .home-side-group span{
    min-height:38px;
    font-size:0.92rem;
  }

  body.home-page #home-shell .hero-grid{
    grid-template-columns:minmax(520px, 1fr) minmax(420px, 500px);
    gap:36px;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    min-height:clamp(390px, 28vw, 500px);
    padding:clamp(76px, 5.4vw, 100px) clamp(56px, 4.5vw, 82px) clamp(58px, 4vw, 76px);
  }

  body.home-page #home-shell #home-featured-wrap{
    min-height:clamp(360px, 28vw, 470px);
    padding:52px 40px 44px;
  }

  body.home-page main#main > .section{
    padding:16px 0;
  }

  body.home-page main#main > .section .container{
    width:min(100%, 900px);
  }

  body.home-page .section .callout{
    padding:28px 34px;
  }

  body.home-page .section .trust{
    padding:22px 24px;
  }
}

@media (min-width:1500px){
  body.home-page main#main{
    grid-template-columns:320px minmax(0, 1fr);
    gap:0 44px;
  }

  body.home-page #home-shell .hero-grid{
    grid-template-columns:minmax(620px, 1fr) minmax(460px, 540px);
    gap:42px;
  }
}

@media (max-width:1119px){
  body.home-page .site-header::before{
    inset:8px 12px;
  }

  body.home-page .nav{
    width:min(94vw, var(--container));
  }

  body.home-page #home-shell .hero-grid > div:first-child::before,
  body.home-page[data-home-show-featured-panel-frame="true"] #home-shell #home-featured-wrap::before{
    opacity:0.86;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    padding:58px 30px 44px;
  }

  body.home-page #home-shell #home-featured-wrap{
    padding:54px 30px 46px;
  }
}

@media (max-width:700px){
  body.home-page .hero-actions,
  body.home-page .section .callout .row{
    display:grid;
    grid-template-columns:1fr;
  }

  body.home-page .hero-actions .btn,
  body.home-page .section .callout .row .btn{
    width:100%;
  }

  body.home-page .home-showcase__tabs{
    gap:4px;
  }

  body.home-page .home-showcase__tabs span{
    padding:6px 8px;
    font-size:0.72rem;
  }
}

/* HOME - main hub frame target */
body.home-page{
  --hub-width:1180px;
  --hub-border:rgba(212,153,54,0.42);
  --hub-line:rgba(212,153,54,0.22);
  --hub-panel:rgba(5,5,4,0.72);
  --hub-panel-soft:rgba(31,20,11,0.70);
  background-color:#030302;
  background-image:none;
}

body.home-page::before{
  background:
    radial-gradient(900px 600px at 50% 12%, rgba(161,117,44,0.16), transparent 70%),
    linear-gradient(180deg, #050403, #030302);
}

body.home-page::after{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.42), transparent 18%, transparent 82%, rgba(0,0,0,0.48)),
    radial-gradient(520px 320px at 13% 74%, rgba(67,181,200,0.08), transparent 70%);
}

body.home-page .site-header{
  position:relative;
  top:auto;
  width:min(var(--hub-width), calc(100vw - 20px));
  min-height:58px;
  margin:10px auto 0;
  border:1px solid var(--hub-border);
  border-bottom:0;
  background:linear-gradient(180deg, rgba(8,6,4,0.98), rgba(4,4,3,0.96));
  box-shadow:0 18px 44px rgba(0,0,0,0.42);
}

body.home-page .site-header::before{
  content:none;
}

body.home-page .site-header > .container{
  width:100%;
  max-width:none;
}

body.home-page .nav{
  width:100%;
  min-height:58px;
  padding:0 18px;
  display:grid;
  grid-template-columns:220px minmax(0, 1fr) auto;
  gap:18px;
  align-items:center;
}

body.home-page .brand{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}

body.home-page .brand::before{
  content:"";
  flex:0 0 50px;
  width:50px;
  height:34px;
  background:url("/assets/img/logo/logo.png") left center / contain no-repeat;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,0.48));
}

body.home-page .site-brand-logo{
  display:none !important;
}

body.home-page .brand-mark{
  display:none !important;
}

body.home-page .brand-name{
  font-size:0.9rem;
  color:#f8e4ad;
}

body.home-page .nav-links{
  justify-content:center;
  gap:42px;
}

body.home-page .nav-links a{
  position:relative;
  padding:18px 0 16px;
  font-size:0.78rem;
  color:#d8bf86;
}

body.home-page .nav-links a:hover,
body.home-page .nav-links a:focus-visible{
  color:#f8d36c;
}

body.home-page .nav-links a:first-child::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:10px;
  height:2px;
  background:#c98e2f;
  box-shadow:0 0 10px rgba(227,185,77,0.45);
}

body.home-page .nav-actions{
  display:none;
}

body.home-page main#main{
  position:relative;
  isolation:isolate;
  width:min(var(--hub-width), calc(100vw - 20px));
  min-height:620px;
  margin:0 auto 10px;
  display:grid;
  grid-template-columns:205px minmax(0, 1fr);
  grid-template-rows:minmax(360px, auto) minmax(158px, auto);
  gap:0;
  padding:0;
  overflow:hidden;
  border:1px solid var(--hub-border);
  background:
    linear-gradient(90deg, rgba(2,2,2,0.92), rgba(6,6,5,0.50) 22%, rgba(4,4,3,0.86)),
    #050403;
  box-shadow:0 22px 70px rgba(0,0,0,0.46);
}

body.home-page main#main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.68) 0 205px, transparent 205px),
    radial-gradient(760px 360px at 52% 18%, rgba(226,187,88,0.12), transparent 70%);
}

body.home-page main#main > *{
  position:relative;
  z-index:1;
}

body.home-page .home-game-sidebar{
  display:flex;
  grid-column:1;
  grid-row:1 / 3;
  position:relative;
  top:auto;
  min-height:0;
  padding:14px;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:12px;
  border-right:1px solid var(--hub-line);
  background:linear-gradient(180deg, rgba(7,6,4,0.80), rgba(2,2,2,0.54));
}

body.home-page main#main > .home-game-sidebar{
  display:flex;
  top:auto !important;
  min-height:0 !important;
  padding:14px !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
}

body.home-page .home-game-sidebar::before,
body.home-page .home-game-sidebar::after{
  content:none;
}

body.home-page .home-side-brand{
  display:none !important;
  min-height:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

body.home-page .home-side-brand img{
  display:block;
  width:116px;
  height:42px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 5px 12px rgba(0,0,0,0.45));
}

body.home-page .home-side-brand::after{
  content:none;
}

body.home-page .home-side-nav,
body.home-page .home-side-group{
  border:1px solid var(--hub-line);
  border-radius:2px;
  overflow:hidden;
  background:rgba(5,5,4,0.44);
}

body.home-page .home-side-nav{
  margin-top:0 !important;
}

body.home-page .home-side-nav a,
body.home-page .home-side-group a,
body.home-page .home-side-group span{
  display:flex;
  min-height:36px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 13px;
  color:#d7c28b;
  border-bottom:1px solid rgba(212,153,54,0.13);
  font-size:0.76rem;
  font-weight:700;
  text-decoration:none;
}

body.home-page .home-side-nav a::before,
body.home-page .home-side-group a::before,
body.home-page .home-side-group span::before{
  content:"";
  flex:0 0 16px;
  width:16px;
  height:16px;
  border-radius:3px;
  background:
    radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%);
  box-shadow:0 0 10px rgba(226,185,78,0.22);
}

body.home-page .home-side-nav a[aria-current="page"]{
  background:linear-gradient(180deg, rgba(174,119,37,0.72), rgba(94,60,20,0.72));
  color:#fff0bf;
}

body.home-page .home-side-title{
  min-height:36px;
  padding:11px 13px 8px;
  border-bottom:1px solid rgba(212,153,54,0.18);
  background:rgba(18,12,7,0.66);
  color:#f0c36a;
  font-size:0.78rem;
  text-transform:uppercase;
}

body.home-page .hero{
  grid-column:2;
  grid-row:1 / 3;
  min-height:0;
  padding:0;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(1,1,1,0.02) 0%, rgba(1,1,1,0.10) 56%, rgba(5,4,3,0.92) 76%, rgba(5,4,3,0.97) 100%),
    linear-gradient(90deg, rgba(0,0,0,0.30), transparent 24%, transparent 76%, rgba(0,0,0,0.24)),
    var(--home-bg-image);
  background-position:center;
  background-size:cover;
}

body.home-page #home-shell .container{
  width:100%;
  height:100%;
}

body.home-page #home-shell .hero-grid{
  height:100%;
  min-height:calc(360px + 158px);
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:minmax(330px, 1fr) auto;
  gap:0;
}

body.home-page #home-shell .hero-grid > div:first-child{
  position:relative;
  width:min(620px, 68%);
  min-height:0;
  justify-self:center;
  align-self:center;
  padding:88px 28px 28px;
  text-align:center;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.home-page #home-shell .hero-grid > div:first-child::before{
  content:none;
}

body.home-page #home-shell .hero-grid > div:first-child:has(.home-brand-logo[hidden])::after{
  top:8px;
  width:220px;
  height:82px;
}

body.home-page .home-brand-logo{
  max-height:86px;
  margin:0 auto 8px;
}

body.home-page .kicker{
  min-height:0;
  margin:0 0 4px;
  font-size:0.78rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
}

body.home-page h1{
  max-width:590px;
  margin:0 auto 10px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(1.75rem, 3.35vw, 2.65rem);
  line-height:1.02;
  text-transform:uppercase;
  text-shadow:0 2px 4px rgba(0,0,0,0.75), 0 0 20px rgba(0,0,0,0.55);
}

body.home-page .hero p{
  width:min(420px, 100%);
  margin:0 auto 16px;
  color:#f3ead2;
  font-size:0.92rem;
  line-height:1.35;
  text-shadow:0 2px 8px rgba(0,0,0,0.72);
}

body.home-page .hero-actions{
  justify-content:center;
  gap:12px;
}

body.home-page .hero-actions .btn{
  min-width:190px;
  min-height:44px;
  justify-content:center;
  border-radius:4px;
  text-transform:uppercase;
  font-size:0.78rem;
  letter-spacing:0.04em;
}

body.home-page .hero-proof,
body.home-page .hero-note{
  display:none;
}

body.home-page #home-shell #home-featured-wrap{
  width:auto;
  min-height:0;
  padding:0 16px 15px;
  border:0;
  background:transparent;
  box-shadow:none;
}

body.home-page #home-shell #home-featured-wrap::before{
  content:none;
}

body.home-page #home-featured-inner.collage-inner{
  height:auto;
}

body.home-page .home-showcase{
  width:100%;
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-rows:28px 1fr;
  gap:0;
  padding:10px 12px 12px;
  border:1px solid var(--hub-border);
  background:rgba(3,3,3,0.82);
  box-shadow:0 0 0 1px rgba(255,233,171,0.05) inset;
}

body.home-page .home-showcase__header{
  grid-column:1;
  min-height:0;
  place-items:start;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

body.home-page .home-showcase__header h2{
  margin:0;
  color:#e9bd65;
  font-size:0.82rem;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

body.home-page .home-showcase__tabs{
  display:none;
}

body.home-page .home-showcase__all{
  grid-column:2;
  grid-row:1;
  min-width:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  color:#dfca95;
  font-size:0.72rem;
  align-self:start;
}

body.home-page .home-showcase__grid{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:10px;
}

body.home-page .home-showcase-card{
  position:relative;
  min-height:126px;
  padding:7px 7px 8px;
  gap:2px;
  border-radius:4px;
  border-color:rgba(212,153,54,0.36);
  background:
    linear-gradient(180deg, rgba(24,15,8,0.58), rgba(4,3,3,0.86));
}

body.home-page .home-showcase-card__media{
  aspect-ratio:16 / 9;
  border-radius:3px;
  box-shadow:none;
}

body.home-page .home-showcase-card__media.has-css-cover .home-showcase-card__cover{
  inset:0;
  border-radius:2px;
  background-size:cover;
}

body.home-page .home-showcase-card__media strong{
  top:auto;
  right:auto;
  left:50%;
  bottom:6px;
  transform:translateX(-50%);
  border:1px solid rgba(212,153,54,0.36);
  background:rgba(5,4,3,0.72);
  color:#f4d178;
  font-size:0.86rem;
}

body.home-page .home-showcase-card__badge{
  position:absolute;
  z-index:4;
  top:6px;
  right:6px;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(230,184,67,0.66);
  background:rgba(51,22,12,0.92);
  color:#f4d178;
  font-size:0.68rem;
  font-weight:900;
}

body.home-page .home-showcase-card h3{
  margin-top:5px;
  text-align:center;
  font-size:0.62rem;
  min-height:1.4em;
}

body.home-page .home-showcase-card__meta{
  display:block;
  margin:0 0 17px;
  text-align:center;
  color:#b9853f;
  font-size:0.52rem;
  font-weight:800;
  line-height:1.1;
  text-transform:uppercase;
}

body.home-page .home-showcase-card > p:not(.home-showcase-card__meta){
  display:none;
}

body.home-page main#main > .section{
  display:none;
}

body.home-page .footer{
  display:none;
}

@media (max-width:1119px){
  body.home-page .nav-actions{
    display:flex;
    justify-content:flex-end;
  }

  body.home-page .site-header,
  body.home-page main#main{
    width:100%;
    margin-left:0;
    margin-right:0;
    border-left:0;
    border-right:0;
  }

  body.home-page .home-game-sidebar{
    display:none;
  }

  body.home-page main#main{
    display:block;
    min-height:0;
    overflow:hidden;
  }

  body.home-page .hero{
    display:block;
  }

  body.home-page #home-shell .hero-grid{
    min-height:0;
    display:block;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    width:100%;
    padding:92px 20px 34px;
  }

  body.home-page #home-shell #home-featured-wrap{
    padding:0 12px 18px;
  }

  body.home-page .home-showcase__grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (min-width:1500px){
  body.home-page{
    --hub-width:min(1880px, calc(100vw - 96px));
  }

  body.home-page .site-header,
  body.home-page main#main{
    width:var(--hub-width);
  }

  body.home-page .site-header{
    min-height:clamp(56px, 6vh, 70px);
  }

  body.home-page .nav{
    min-height:clamp(56px, 6vh, 70px);
    padding:0 clamp(18px, 1.35vw, 30px);
    grid-template-columns:clamp(220px, 15vw, 300px) minmax(0, 1fr) auto;
    gap:clamp(18px, 2vw, 34px);
  }

  body.home-page main#main{
    min-height:clamp(680px, calc(100vh - 110px), 900px);
    grid-template-columns:clamp(220px, 15vw, 290px) minmax(0, 1fr);
    grid-template-rows:minmax(clamp(420px, 46vh, 620px), auto) minmax(clamp(180px, 21vh, 245px), auto);
  }

  body.home-page #home-shell .hero-grid{
    min-height:calc(clamp(420px, 46vh, 620px) + clamp(180px, 21vh, 245px));
    grid-template-rows:minmax(clamp(420px, 46vh, 620px), 1fr) auto;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    width:min(760px, 70%);
    padding:clamp(104px, 9vh, 142px) clamp(28px, 2vw, 48px) clamp(30px, 4vh, 52px);
  }

  body.home-page .home-brand-logo{
    max-height:clamp(96px, 10vh, 136px);
  }

  body.home-page #home-shell .hero-grid > div:first-child:has(.home-brand-logo[hidden])::after{
    width:clamp(230px, 17vw, 330px);
    height:clamp(86px, 10vh, 132px);
  }

  body.home-page h1{
    font-size:clamp(2.15rem, 3.2vw, 4.25rem);
  }

  body.home-page .hero p{
    width:min(560px, 100%);
    font-size:clamp(0.92rem, 0.9vw, 1.08rem);
  }

  body.home-page .hero-actions .btn{
    min-width:clamp(190px, 13vw, 260px);
    min-height:clamp(44px, 5vh, 58px);
  }

  body.home-page .home-side-nav a{
    min-height:clamp(36px, 4.2vh, 48px);
    font-size:clamp(0.76rem, 0.78vw, 0.92rem);
  }

  body.home-page .home-showcase{
    padding:clamp(10px, 1vw, 16px);
  }

  body.home-page .home-showcase__grid{
    gap:clamp(10px, 0.9vw, 16px);
  }

  body.home-page .home-showcase-card{
    min-height:clamp(142px, 18vh, 208px);
    padding:clamp(7px, 0.7vw, 11px);
  }

  body.home-page .home-showcase-card h3{
    font-size:clamp(0.62rem, 0.68vw, 0.82rem);
  }

  body.home-page .home-showcase-card__meta{
    font-size:clamp(0.52rem, 0.58vw, 0.72rem);
  }
}

/* HOME - fantasy game UI polish */
body.home-page .hero{
  position:relative;
}

body.home-page .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(520px 300px at 53% 16%, rgba(250,209,106,0.20), transparent 72%),
    radial-gradient(520px 300px at 86% 22%, rgba(255,223,142,0.13), transparent 70%),
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.24) 64%, rgba(2,2,2,0.88));
}

body.home-page #home-shell .container{
  position:relative;
  z-index:1;
}

body.home-page #home-shell .hero-grid > div:first-child{
  isolation:isolate;
  border:1px solid rgba(227,178,71,0.40);
  border-radius:5px;
  background:
    linear-gradient(180deg, rgba(22,14,8,0.60), rgba(5,4,3,0.42)),
    radial-gradient(420px 180px at 50% 0%, rgba(227,178,71,0.12), transparent 70%);
  box-shadow:
    0 18px 50px rgba(0,0,0,0.34),
    0 0 0 1px rgba(255,234,174,0.06) inset,
    0 0 26px rgba(220,149,45,0.08);
}

body.home-page #home-shell .hero-grid > div:first-child::before{
  content:"";
  position:absolute;
  inset:10px;
  z-index:-1;
  pointer-events:none;
  border:1px solid rgba(227,178,71,0.18);
  border-radius:3px;
  background:
    linear-gradient(135deg, rgba(255,220,132,0.10), transparent 18% 82%, rgba(255,220,132,0.08)),
    radial-gradient(360px 140px at 50% 0%, rgba(255,220,132,0.10), transparent 72%);
  opacity:0.72;
}

body.home-page #home-shell .hero-grid > div:first-child::after{
  filter:drop-shadow(0 10px 16px rgba(0,0,0,0.55));
}

body.home-page .home-brand-logo{
  filter:drop-shadow(0 14px 18px rgba(0,0,0,0.58));
}

body.home-page h1{
  color:#fff0c9;
  text-shadow:
    0 2px 3px rgba(0,0,0,0.82),
    0 0 18px rgba(0,0,0,0.58),
    0 0 14px rgba(230,169,60,0.15);
}

body.home-page .hero-actions .btn{
  box-shadow:
    0 12px 28px rgba(0,0,0,0.32),
    0 0 0 1px rgba(255,240,185,0.08) inset;
}

body.home-page .home-showcase{
  position:relative;
  grid-template-rows:30px 30px minmax(0, 1fr);
  gap:6px 0;
  overflow:hidden;
  border-color:rgba(227,178,71,0.50);
  background:
    linear-gradient(180deg, rgba(17,11,6,0.90), rgba(3,3,3,0.90)),
    radial-gradient(520px 140px at 50% 0%, rgba(227,178,71,0.10), transparent 72%);
  box-shadow:
    0 18px 44px rgba(0,0,0,0.36),
    0 0 0 1px rgba(255,234,174,0.06) inset;
}

body.home-page .home-showcase::before{
  content:"";
  position:absolute;
  inset:8px;
  pointer-events:none;
  border:1px solid rgba(227,178,71,0.16);
  border-radius:3px;
}

body.home-page .home-showcase__header{
  grid-column:1 / -1;
  justify-items:center;
}

body.home-page .home-showcase__header h2{
  min-width:min(300px, 52%);
  padding:5px 18px 6px;
  border:1px solid rgba(227,178,71,0.38);
  border-radius:5px;
  background:linear-gradient(180deg, rgba(67,39,16,0.90), rgba(15,10,7,0.88));
  color:#f9e0a2;
  text-align:center;
  text-transform:uppercase;
  box-shadow:0 0 0 1px rgba(255,232,170,0.05) inset;
}

body.home-page .home-showcase__tabs{
  grid-column:1 / -1;
  grid-row:2;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:0;
}

body.home-page .home-showcase__tabs span{
  min-width:78px;
  padding:5px 12px;
  border:1px solid rgba(227,178,71,0.22);
  border-radius:4px;
  background:rgba(6,5,4,0.72);
  color:#d7bd82;
  font-size:0.66rem;
  font-weight:800;
  text-align:center;
  text-transform:none;
}

body.home-page .home-showcase__tabs span:first-child{
  border-color:rgba(232,187,72,0.64);
  background:linear-gradient(180deg, #d9ac4d, #9b641d);
  color:#1d1308;
}

body.home-page .home-showcase__all{
  position:absolute;
  z-index:2;
  top:13px;
  right:16px;
  min-width:62px;
  white-space:nowrap;
  text-align:right;
}

body.home-page .home-showcase__grid{
  position:relative;
  z-index:1;
  grid-row:3;
  min-height:0;
}

body.home-page .home-showcase-card{
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  border-color:rgba(218,144,43,0.44);
  background:
    linear-gradient(180deg, rgba(34,18,9,0.72), rgba(4,4,4,0.92)),
    radial-gradient(140px 80px at 50% 0%, rgba(231,174,61,0.16), transparent 70%);
  box-shadow:
    0 10px 24px rgba(0,0,0,0.28),
    0 0 0 1px rgba(255,232,170,0.05) inset;
}

body.home-page .home-showcase-card::before{
  content:"";
  position:absolute;
  inset:5px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(227,178,71,0.14);
  border-radius:3px;
}

body.home-page .home-showcase-card > *{
  position:relative;
  z-index:1;
}

body.home-page .home-showcase-card__media{
  aspect-ratio:16 / 10;
  border:1px solid rgba(227,178,71,0.20);
  background:#030302;
}

body.home-page .home-showcase-card__media img{
  object-fit:contain;
  background:#030302;
}

body.home-page .home-showcase-card__media.has-css-cover .home-showcase-card__cover{
  inset:7px;
  background-color:#030302;
  background-size:contain;
}

body.home-page .home-showcase-card__media strong{
  bottom:8px;
  padding:3px 9px;
  border-color:rgba(232,187,72,0.55);
  background:linear-gradient(180deg, rgba(46,31,13,0.92), rgba(8,6,4,0.92));
  color:#f8d46f;
  font-size:0.82rem;
}

body.home-page .home-showcase-card h3{
  margin-top:7px;
  color:#f5dfaa;
  text-transform:none;
}

body.home-page .home-showcase-card h3 a{
  color:inherit;
}

body.home-page .home-showcase-card__meta{
  color:#f8e2ab;
  letter-spacing:0.02em;
}

@media (min-width:1500px){
  body.home-page .home-showcase{
    grid-template-rows:36px 34px minmax(0, 1fr);
  }

  body.home-page .home-showcase__tabs span{
    min-width:92px;
  }
}

body.home-page #home-shell .hero-grid > div:first-child{
  padding-top:72px;
  padding-bottom:22px;
}

body.home-page .home-brand-logo{
  max-height:78px;
  margin-bottom:4px;
}

@media (min-width:1500px){
  body.home-page #home-shell .hero-grid > div:first-child{
    width:min(720px, 68%);
    padding:clamp(76px, 7vh, 104px) clamp(26px, 1.8vw, 42px) clamp(22px, 3vh, 36px);
  }

  body.home-page .home-brand-logo{
    max-height:clamp(84px, 8.4vh, 112px);
  }

  body.home-page h1{
    font-size:clamp(2.05rem, 2.8vw, 3.75rem);
  }
}

@media (min-width:1120px) and (max-width:1499px){
  body.home-page #home-shell .hero-grid > div:first-child{
    padding:46px 24px 18px;
  }

  body.home-page .home-brand-logo{
    max-height:62px;
  }

  body.home-page h1{
    font-size:clamp(1.7rem, 2.75vw, 2.22rem);
    max-width:540px;
  }

  body.home-page .hero p{
    margin-bottom:12px;
    font-size:0.86rem;
  }

  body.home-page .hero-actions .btn{
    min-height:40px;
  }

  body.home-page .home-showcase{
    grid-template-rows:27px 27px minmax(0, 1fr);
    gap:5px 0;
    padding:8px 10px 10px;
  }

  body.home-page .home-showcase__header h2{
    padding:4px 14px 5px;
  }

  body.home-page .home-showcase__tabs span{
    min-width:74px;
    padding:4px 10px;
    font-size:0.62rem;
  }

  body.home-page .home-showcase-card{
    padding:6px;
  }

  body.home-page .home-showcase-card__media{
    aspect-ratio:16 / 9;
  }

  body.home-page .home-showcase-card h3{
    margin-top:5px;
    font-size:0.58rem;
  }

  body.home-page .home-showcase-card__meta{
    margin-bottom:10px;
    font-size:0.48rem;
  }
}

/* SHOP - merchant inventory game UI */
body.shop-page{
  --shop-frame-width:min(1880px, calc(100vw - 48px));
  --shop-border:rgba(212,153,54,0.42);
  --shop-line:rgba(212,153,54,0.22);
  --shop-panel:rgba(5,5,4,0.78);
  background:
    linear-gradient(90deg, rgba(0,0,0,0.72), rgba(5,4,3,0.22) 30%, rgba(5,4,3,0.32) 72%, rgba(0,0,0,0.72)),
    linear-gradient(180deg, rgba(0,0,0,0.26), rgba(0,0,0,0.58)),
    url("../img/backgrounds/BG03.png") center / cover fixed,
    #030302;
}

body.shop-page::before{
  background-color:transparent;
  background-image:
    linear-gradient(90deg, rgba(0,0,0,0.30), transparent 24%, transparent 76%, rgba(0,0,0,0.34)),
    linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.30));
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}

body.shop-page::after{
  background:
    radial-gradient(760px 360px at 54% 10%, rgba(227,185,77,0.16), transparent 70%),
    radial-gradient(520px 360px at 86% 72%, rgba(55,177,207,0.09), transparent 70%),
    linear-gradient(90deg, rgba(0,0,0,0.48), transparent 20%, transparent 80%, rgba(0,0,0,0.56));
}

body.shop-page .site-header{
  position:relative;
  top:auto;
  width:var(--shop-frame-width);
  min-height:66px;
  margin:10px auto 0;
  border:1px solid var(--shop-border);
  border-bottom:0;
  background:linear-gradient(180deg, rgba(8,6,4,0.98), rgba(4,4,3,0.96));
  box-shadow:0 18px 44px rgba(0,0,0,0.42);
}

body.shop-page .site-header::before{
  content:none;
}

body.shop-page .site-header > .container{
  width:100%;
  max-width:none;
}

body.shop-page .nav{
  width:100%;
  min-height:66px;
  padding:0 clamp(18px, 1.35vw, 30px);
  display:grid;
  grid-template-columns:clamp(220px, 15vw, 300px) minmax(0, 1fr) auto;
  gap:clamp(18px, 2vw, 34px);
  align-items:center;
}

body.shop-page .brand{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}

body.shop-page .brand::before{
  content:"";
  flex:0 0 50px;
  width:50px;
  height:34px;
  background:url("/assets/img/logo/logo.png") left center / contain no-repeat;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,0.48));
}

body.shop-page .brand-mark{
  display:none;
}

body.shop-page .brand-name{
  color:#f8e4ad;
  font-size:0.9rem;
}

body.shop-page .nav-links{
  justify-content:center;
  gap:42px;
}

body.shop-page .nav-links a{
  position:relative;
  padding:18px 0 16px;
  color:#d8bf86;
  font-size:0.78rem;
}

body.shop-page .nav-links a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:10px;
  height:2px;
  background:#c98e2f;
  box-shadow:0 0 10px rgba(227,185,77,0.45);
}

body.shop-page .nav-actions{
  display:none;
}

body.shop-page main#main{
  width:var(--shop-frame-width);
  margin:0 auto 14px;
  border:1px solid var(--shop-border);
  background:
    linear-gradient(90deg, rgba(2,2,2,0.92), rgba(8,6,4,0.58) 25%, rgba(4,4,3,0.88)),
    rgba(4,4,3,0.92);
  box-shadow:0 22px 70px rgba(0,0,0,0.46);
}

body.shop-page .shop-game-shell{
  min-height:calc(100vh - 96px);
  display:grid;
  grid-template-columns:290px minmax(0, 1fr);
  gap:0;
  overflow:hidden;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.74) 0 290px, rgba(0,0,0,0.12) 290px),
    radial-gradient(680px 300px at 55% 8%, rgba(227,185,77,0.12), transparent 70%);
}

body.shop-page .shop-merchant-panel{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:22px;
  border-right:1px solid var(--shop-line);
  background:linear-gradient(180deg, rgba(7,6,4,0.82), rgba(2,2,2,0.62));
}

body.shop-page .shop-merchant-brand{
  min-height:154px;
  display:grid;
  place-items:center;
  border:1px solid var(--shop-line);
  border-radius:4px;
  background:
    radial-gradient(220px 110px at 50% 0%, rgba(227,185,77,0.13), transparent 70%),
    rgba(5,5,4,0.54);
  text-decoration:none;
}

body.shop-page .shop-merchant-brand img{
  width:min(190px, 80%);
  max-height:96px;
  object-fit:contain;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,0.55));
}

body.shop-page .shop-panel-block{
  overflow:hidden;
  border:1px solid var(--shop-line);
  border-radius:4px;
  background:
    linear-gradient(180deg, rgba(29,17,9,0.68), rgba(5,5,4,0.58)),
    rgba(5,5,4,0.58);
}

body.shop-page .shop-panel-block h2{
  margin:0;
  padding:13px 16px 10px;
  border-bottom:1px solid rgba(212,153,54,0.18);
  color:#f0c36a;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.shop-page .shop-filter-list{
  display:grid;
}

body.shop-page .shop-filter-btn{
  appearance:none;
  min-height:42px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 16px;
  border:0;
  border-bottom:1px solid rgba(212,153,54,0.13);
  background:transparent;
  color:#d7c28b;
  font:inherit;
  font-size:0.82rem;
  font-weight:750;
  text-align:left;
  cursor:pointer;
}

body.shop-page .shop-filter-btn::before{
  content:"";
  width:13px;
  height:13px;
  flex:0 0 13px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%);
  box-shadow:0 0 10px rgba(226,185,78,0.22);
}

body.shop-page .shop-filter-btn:hover,
body.shop-page .shop-filter-btn:focus-visible{
  color:#fff0bf;
  background:rgba(198,132,38,0.18);
  outline:none;
}

body.shop-page .shop-filter-btn.is-active,
body.shop-page .shop-filter-btn[aria-pressed="true"]{
  background:linear-gradient(180deg, rgba(174,119,37,0.72), rgba(94,60,20,0.72));
  color:#fff0bf;
}

body.shop-page .shop-bag-panel{
  margin-top:0;
  padding-bottom:16px;
  text-align:center;
}

body.shop-page .shop-bag-count{
  margin:18px 0;
  color:#f7d574;
  font-size:2.4rem;
  font-weight:900;
  line-height:1;
}

body.shop-page .shop-bag-panel .btn{
  width:calc(100% - 32px);
  justify-content:center;
  margin:0 auto;
}

body.shop-page .shop-inventory-panel{
  min-width:0;
  padding:28px clamp(22px, 2.2vw, 42px) 24px;
}

body.shop-page .shop-inventory-header{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:22px;
  align-items:start;
  margin-bottom:18px;
}

body.shop-page .shop-inventory-header h1{
  margin:0 0 8px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.1rem, 3vw, 3.55rem);
  line-height:1;
  text-transform:uppercase;
  text-shadow:0 2px 3px rgba(0,0,0,0.82), 0 0 16px rgba(230,169,60,0.14);
}

body.shop-page .shop-inventory-header p{
  width:min(620px, 100%);
  margin:0;
  color:#f3ead2;
  line-height:1.45;
}

body.shop-page .shop-count{
  margin-top:10px !important;
  color:#f0c36a !important;
  font-weight:800;
}

body.shop-page .shop-controls{
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}

body.shop-page .shop-controls input,
body.shop-page .shop-controls select{
  min-height:42px;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:5px;
  background:rgba(5,5,4,0.80);
  color:#f6e8c2;
  box-shadow:0 0 0 1px rgba(255,232,172,0.035) inset;
}

body.shop-page .shop-controls input{
  width:min(360px, 34vw);
  padding:0 14px;
}

body.shop-page .shop-controls select{
  padding:0 40px 0 14px;
}

body.shop-page .shop-status{
  min-height:22px;
  margin:0 0 14px;
  color:#d7c28b;
  font-size:0.84rem;
}

body.shop-page .shop-status.is-error{
  color:#ffcf9f;
}

body.shop-page .shop-product-grid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}

body.shop-page .product-card{
  position:relative;
  overflow:hidden;
  display:flex;
  min-height:100%;
  flex-direction:column;
  border:1px solid rgba(218,144,43,0.44);
  border-radius:5px;
  background:
    linear-gradient(180deg, rgba(34,18,9,0.72), rgba(4,4,4,0.92)),
    radial-gradient(140px 80px at 50% 0%, rgba(231,174,61,0.16), transparent 70%);
  box-shadow:0 14px 34px rgba(0,0,0,0.30), 0 0 0 1px rgba(255,232,170,0.05) inset;
}

body.shop-page .product-card::before{
  content:"";
  position:absolute;
  inset:6px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(227,178,71,0.14);
  border-radius:3px;
}

body.shop-page .product-card > *{
  position:relative;
  z-index:1;
}

body.shop-page .product-card:hover{
  transform:translateY(-3px);
  border-color:rgba(232,187,72,0.60);
  box-shadow:0 18px 42px rgba(0,0,0,0.36), 0 0 22px rgba(227,178,71,0.11);
}

body.shop-page .product-card__badge{
  position:absolute;
  z-index:3;
  top:10px;
  right:10px;
  min-width:34px;
  min-height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(230,184,67,0.66);
  border-radius:50%;
  background:rgba(51,22,12,0.92);
  color:#f4d178;
  font-size:0.68rem;
  font-weight:900;
  text-transform:uppercase;
}

body.shop-page .product-card__media{
  position:relative;
  display:grid;
  min-height:0;
  aspect-ratio:16 / 11;
  margin:12px 12px 0;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(227,178,71,0.22);
  border-radius:4px;
  background:#030302;
  text-decoration:none;
}

body.shop-page .product-card__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#030302;
}

body.shop-page .product-card__media.has-card-image img{
  object-fit:cover;
}

body.shop-page .product-card__media strong{
  position:absolute;
  left:50%;
  bottom:10px;
  transform:translateX(-50%);
  padding:3px 10px;
  border:1px solid rgba(232,187,72,0.55);
  border-radius:5px;
  background:linear-gradient(180deg, rgba(46,31,13,0.92), rgba(8,6,4,0.92));
  color:#f8d46f;
  font-size:0.9rem;
}

body.shop-page .product-card__placeholder{
  width:100%;
  min-height:100%;
  display:grid;
  place-items:center;
  padding:22px;
  color:#f4d178;
  text-align:center;
  text-transform:uppercase;
  font-weight:900;
  line-height:1.15;
  background:
    radial-gradient(120px 80px at 50% 38%, rgba(227,178,71,0.16), transparent 70%),
    #030302;
}

body.shop-page .product-card__body{
  display:grid;
  gap:4px;
  padding:10px 14px 12px;
  text-align:center;
}

body.shop-page .product-card__kicker,
body.shop-page .product-card__format{
  margin:0;
  color:#b9853f;
  font-size:0.68rem;
  font-weight:900;
  line-height:1.1;
  text-transform:uppercase;
}

body.shop-page .product-card__title{
  min-height:2.35em;
  margin:0;
  color:#f7e3ad;
  font-size:0.88rem;
  line-height:1.18;
}

body.shop-page .product-card__title a{
  color:inherit;
  text-decoration:none;
}

body.shop-page .product-card__title a:hover,
body.shop-page .product-card__title a:focus-visible{
  color:#fff0bf;
}

body.shop-page .product-card__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:6px;
}

body.shop-page .product-card__actions .btn{
  min-height:32px;
  justify-content:center;
  padding:0 10px;
  border-radius:4px;
  font-size:0.68rem;
  text-transform:uppercase;
}

body.shop-page .product-card__actions .btn:only-child{
  grid-column:1 / -1;
}

body.shop-page .shop-trust-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:0;
  margin-top:24px;
  border:1px solid var(--shop-line);
  border-radius:4px;
  background:rgba(5,5,4,0.76);
}

body.shop-page .shop-trust-strip div{
  min-height:70px;
  display:grid;
  align-content:center;
  gap:2px;
  padding:12px 18px 12px 54px;
  border-right:1px solid rgba(212,153,54,0.14);
  color:#d7c28b;
  position:relative;
}

body.shop-page .shop-trust-strip div:last-child{
  border-right:0;
}

body.shop-page .shop-trust-strip div::before{
  content:"";
  position:absolute;
  left:20px;
  top:50%;
  width:22px;
  height:22px;
  transform:translateY(-50%);
  border:1px solid rgba(230,184,67,0.50);
  border-radius:4px;
  background:radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.18);
}

body.shop-page .shop-trust-strip b{
  color:#f0c36a;
  text-transform:uppercase;
}

body.shop-page .shop-trust-strip span{
  font-size:0.82rem;
}

body.shop-page .shop-empty-state{
  grid-column:1 / -1;
  min-height:220px;
  display:grid;
  place-items:center;
  gap:6px;
  border:1px solid var(--shop-line);
  border-radius:5px;
  background:rgba(5,5,4,0.76);
  text-align:center;
}

body.shop-page .shop-empty-state p{
  margin:0;
  color:#f8e8bd;
  font-size:1.2rem;
  font-weight:900;
}

body.shop-page .shop-empty-state span{
  color:#d7c28b;
}

body.shop-page .footer{
  display:none;
}

@media (max-width:1220px){
  body.shop-page{
    --shop-frame-width:calc(100vw - 20px);
  }

  body.shop-page .shop-game-shell{
    grid-template-columns:240px minmax(0, 1fr);
    background:
      linear-gradient(90deg, rgba(0,0,0,0.74) 0 240px, rgba(0,0,0,0.12) 240px),
      radial-gradient(680px 300px at 55% 8%, rgba(227,185,77,0.12), transparent 70%);
  }

  body.shop-page .shop-product-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:920px){
  body.shop-page .site-header,
  body.shop-page main#main{
    width:100%;
    margin-left:0;
    margin-right:0;
    border-left:0;
    border-right:0;
  }

  body.shop-page .nav{
    grid-template-columns:1fr auto;
  }

  body.shop-page .nav-links{
    display:none;
  }

  body.shop-page .nav-actions{
    display:flex;
    justify-content:flex-end;
  }

  body.shop-page .shop-game-shell{
    display:block;
    min-height:0;
  }

  body.shop-page .shop-merchant-panel{
    border-right:0;
    border-bottom:1px solid var(--shop-line);
  }

  body.shop-page .shop-merchant-brand,
  body.shop-page .shop-bag-panel{
    display:none;
  }

  body.shop-page .shop-filter-list{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    padding:10px;
    gap:8px;
  }

  body.shop-page .shop-filter-btn{
    min-width:0;
    min-height:38px;
    border:1px solid rgba(212,153,54,0.22);
    border-radius:5px;
    font-size:0.76rem;
  }

  body.shop-page .shop-inventory-panel{
    padding:24px 16px 26px;
  }

  body.shop-page .shop-inventory-header{
    grid-template-columns:1fr;
  }

  body.shop-page .shop-controls{
    justify-content:stretch;
  }

  body.shop-page .shop-controls input,
  body.shop-page .shop-controls select{
    width:100%;
  }

  body.shop-page .shop-product-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body.shop-page .shop-trust-strip{
    grid-template-columns:1fr;
  }

  body.shop-page .shop-trust-strip div{
    border-right:0;
    border-bottom:1px solid rgba(212,153,54,0.14);
  }

  body.shop-page .shop-trust-strip div:last-child{
    border-bottom:0;
  }
}

@media (max-width:560px){
  body.shop-page .shop-product-grid{
    grid-template-columns:1fr;
  }
}

/* PRODUCT - item inspection game UI */
body.product-page{
  --product-frame-width:min(1880px, calc(100vw - 48px));
  --product-border:rgba(212,153,54,0.42);
  --product-line:rgba(212,153,54,0.22);
  background:
    linear-gradient(90deg, rgba(0,0,0,0.74), rgba(5,4,3,0.24) 32%, rgba(5,4,3,0.34) 68%, rgba(0,0,0,0.74)),
    linear-gradient(180deg, rgba(0,0,0,0.28), rgba(0,0,0,0.58)),
    url("../img/backgrounds/BG08.png") center / cover fixed,
    #030302;
}

body.product-page::before{
  background-color:transparent;
  background-image:
    linear-gradient(90deg, rgba(0,0,0,0.32), transparent 22%, transparent 78%, rgba(0,0,0,0.34)),
    linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.30));
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}

body.product-page::after{
  background:
    radial-gradient(760px 360px at 50% 10%, rgba(227,185,77,0.16), transparent 70%),
    radial-gradient(520px 360px at 18% 76%, rgba(55,177,207,0.09), transparent 70%),
    linear-gradient(90deg, rgba(0,0,0,0.50), transparent 18%, transparent 82%, rgba(0,0,0,0.56));
}

body.product-page .site-header{
  position:relative;
  top:auto;
  width:var(--product-frame-width);
  min-height:66px;
  margin:10px auto 0;
  border:1px solid var(--product-border);
  border-bottom:0;
  background:linear-gradient(180deg, rgba(8,6,4,0.98), rgba(4,4,3,0.96));
  box-shadow:0 18px 44px rgba(0,0,0,0.42);
}

body.product-page .site-header::before{
  content:none;
}

body.product-page .site-header > .container{
  width:100%;
  max-width:none;
}

body.product-page .nav{
  width:100%;
  min-height:66px;
  padding:0 clamp(18px, 1.35vw, 30px);
  display:grid;
  grid-template-columns:clamp(220px, 15vw, 300px) minmax(0, 1fr) auto;
  gap:clamp(18px, 2vw, 34px);
  align-items:center;
}

body.product-page .brand{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}

body.product-page .brand::before{
  content:"";
  flex:0 0 50px;
  width:50px;
  height:34px;
  background:url("/assets/img/logo/logo.png") left center / contain no-repeat;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,0.48));
}

body.product-page .brand-mark{
  display:none;
}

body.product-page .brand-name{
  color:#f8e4ad;
  font-size:0.9rem;
}

body.product-page .nav-links{
  justify-content:center;
  gap:42px;
}

body.product-page .nav-links a{
  position:relative;
  padding:18px 0 16px;
  color:#d8bf86;
  font-size:0.78rem;
}

body.product-page .nav-links a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:10px;
  height:2px;
  background:#c98e2f;
  box-shadow:0 0 10px rgba(227,185,77,0.45);
}

body.product-page .nav-actions{
  display:none;
}

body.product-page main#main{
  width:var(--product-frame-width);
  margin:0 auto 14px;
  overflow:hidden;
  border:1px solid var(--product-border);
  background:
    linear-gradient(90deg, rgba(2,2,2,0.92), rgba(8,6,4,0.58) 25%, rgba(4,4,3,0.88)),
    rgba(4,4,3,0.92);
  box-shadow:0 22px 70px rgba(0,0,0,0.46);
}

body.product-page .product-inspection-shell{
  min-height:calc(100vh - 96px);
  padding:28px clamp(22px, 2.2vw, 42px) 30px;
  background:
    radial-gradient(760px 320px at 52% 6%, rgba(227,185,77,0.13), transparent 70%),
    linear-gradient(90deg, rgba(0,0,0,0.50), rgba(0,0,0,0.10) 52%, rgba(0,0,0,0.44));
}

body.product-page .product-back{
  min-height:38px;
  margin-bottom:20px;
  border-radius:4px;
  text-transform:uppercase;
  font-size:0.72rem;
}

body.product-page .product-status{
  min-height:22px;
  margin:0 0 14px;
  color:#d7c28b;
  font-size:0.84rem;
}

body.product-page .product-status.is-error{
  color:#ffcf9f;
}

body.product-page .product-layout{
  display:grid;
  grid-template-columns:minmax(300px, 480px) minmax(0, 1fr) minmax(300px, 390px);
  gap:22px;
  align-items:start;
}

body.product-page .product-artifact-panel,
body.product-page .product-lore-panel,
body.product-page .product-buy-panel{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(218,144,43,0.44);
  border-radius:5px;
  background:
    linear-gradient(180deg, rgba(34,18,9,0.72), rgba(4,4,4,0.92)),
    radial-gradient(220px 120px at 50% 0%, rgba(231,174,61,0.16), transparent 70%);
  box-shadow:0 14px 34px rgba(0,0,0,0.30), 0 0 0 1px rgba(255,232,170,0.05) inset;
}

body.product-page .product-artifact-panel::before,
body.product-page .product-lore-panel::before,
body.product-page .product-buy-panel::before{
  content:"";
  position:absolute;
  inset:8px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(227,178,71,0.14);
  border-radius:3px;
}

body.product-page .product-artifact-panel > *,
body.product-page .product-lore-panel > *,
body.product-page .product-buy-panel > *{
  position:relative;
  z-index:1;
}

body.product-page .product-artifact-panel{
  min-height:620px;
  display:grid;
  place-items:center;
  padding:28px;
}

body.product-page .product-cover-wrap{
  width:100%;
  display:grid;
  place-items:center;
}

body.product-page .product-cover-wrap img,
body.product-page .product-cover-placeholder{
  width:min(100%, 360px);
  aspect-ratio:4 / 5;
  border:1px solid rgba(227,178,71,0.30);
  border-radius:5px;
  background:#030302;
  box-shadow:
    0 28px 48px rgba(0,0,0,0.42),
    0 0 0 1px rgba(255,232,170,0.05) inset;
}

body.product-page .product-cover-wrap img{
  display:block;
  object-fit:contain;
  transform:rotate(-4deg);
  transform-origin:center;
  filter:drop-shadow(0 22px 28px rgba(0,0,0,0.50));
}

body.product-page .product-cover-placeholder{
  display:grid;
  place-items:center;
  padding:24px;
  color:#f4d178;
  text-align:center;
  text-transform:uppercase;
  font-weight:900;
  line-height:1.15;
}

body.product-page .product-badge-wrap{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
}

body.product-page .product-badge-wrap span{
  min-width:42px;
  min-height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(230,184,67,0.66);
  border-radius:50%;
  background:rgba(51,22,12,0.92);
  color:#f4d178;
  font-size:0.72rem;
  font-weight:900;
  text-transform:uppercase;
}

body.product-page .product-lore-panel{
  min-height:620px;
  padding:34px;
}

body.product-page .product-lore-panel h1{
  margin:4px 0 10px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2rem, 3vw, 3.45rem);
  line-height:1;
  text-transform:uppercase;
  text-shadow:0 2px 3px rgba(0,0,0,0.82), 0 0 16px rgba(230,169,60,0.14);
}

body.product-page #product-short-description{
  max-width:760px;
  margin:0 0 18px;
  color:#f3ead2;
  line-height:1.5;
}

body.product-page .product-formats{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 22px;
}

body.product-page .product-formats span{
  min-height:32px;
  display:inline-flex;
  align-items:center;
  padding:0 12px;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:5px;
  background:rgba(5,5,4,0.72);
  color:#f0c36a;
  font-size:0.72rem;
  font-weight:900;
  text-transform:uppercase;
}

body.product-page .product-stat-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin:0 0 24px;
}

body.product-page .product-stat{
  display:grid;
  gap:2px;
  padding:11px 12px;
  border:1px solid rgba(212,153,54,0.20);
  border-radius:5px;
  background:rgba(5,5,4,0.60);
}

body.product-page .product-stat span{
  color:#b9853f;
  font-size:0.68rem;
  font-weight:900;
  text-transform:uppercase;
}

body.product-page .product-stat b{
  color:#f6e8c2;
  font-size:0.94rem;
}

body.product-page .product-description-block{
  border-top:1px solid rgba(212,153,54,0.18);
  padding-top:20px;
}

body.product-page .product-description-block h2,
body.product-page .product-unlock-panel h2{
  margin:0 0 10px;
  color:#f0c36a;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.15rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.product-page .product-description{
  color:#e8dbc0;
  line-height:1.65;
  white-space:pre-line;
}

body.product-page .product-buy-panel{
  position:sticky;
  top:18px;
  min-height:0;
  padding:28px;
}

body.product-page .product-price{
  margin:6px 0 18px;
  color:#f8d46f;
  font-size:clamp(2.2rem, 3.2vw, 3.35rem);
  font-weight:950;
  line-height:1;
}

body.product-page .product-buy-actions{
  display:grid;
  gap:10px;
  margin-bottom:24px;
}

body.product-page .product-buy-actions .btn{
  min-height:48px;
  justify-content:center;
  border-radius:4px;
  text-transform:uppercase;
}

body.product-page .product-unlock-panel{
  border-top:1px solid rgba(212,153,54,0.18);
  padding-top:20px;
}

body.product-page .product-unlock-panel ul{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

body.product-page .product-unlock-panel li,
body.product-page .product-delivery-panel div{
  position:relative;
  padding-left:24px;
  color:#e8dbc0;
  line-height:1.45;
}

body.product-page .product-unlock-panel li::before,
body.product-page .product-delivery-panel div::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%);
  box-shadow:0 0 10px rgba(226,185,78,0.22);
}

body.product-page .product-delivery-panel{
  display:grid;
  gap:12px;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(212,153,54,0.18);
}

body.product-page .product-delivery-panel b{
  display:block;
  color:#f0c36a;
  font-size:0.78rem;
  text-transform:uppercase;
}

body.product-page .product-delivery-panel span{
  display:block;
  color:#d7c28b;
  font-size:0.86rem;
}

body.product-page .footer{
  display:none;
}

@media (max-width:1300px){
  body.product-page{
    --product-frame-width:calc(100vw - 20px);
  }

  body.product-page .product-layout{
    grid-template-columns:minmax(260px, 380px) minmax(0, 1fr);
  }

  body.product-page .product-buy-panel{
    grid-column:1 / -1;
    position:relative;
    top:auto;
  }
}

@media (max-width:920px){
  body.product-page .site-header,
  body.product-page main#main{
    width:100%;
    margin-left:0;
    margin-right:0;
    border-left:0;
    border-right:0;
  }

  body.product-page .nav{
    grid-template-columns:1fr auto;
  }

  body.product-page .nav-links{
    display:none;
  }

  body.product-page .nav-actions{
    display:flex;
    justify-content:flex-end;
  }

  body.product-page .product-inspection-shell{
    padding:20px 16px 26px;
  }

  body.product-page .product-layout{
    grid-template-columns:1fr;
  }

  body.product-page .product-artifact-panel,
  body.product-page .product-lore-panel{
    min-height:0;
  }

  body.product-page .product-artifact-panel{
    padding:24px;
  }

  body.product-page .product-cover-wrap img,
  body.product-page .product-cover-placeholder{
    width:min(100%, 310px);
  }

  body.product-page .product-cover-wrap img{
    transform:none;
  }

  body.product-page .product-lore-panel,
  body.product-page .product-buy-panel{
    padding:24px;
  }
}

@media (max-width:560px){
  body.product-page .product-stat-grid{
    grid-template-columns:1fr;
  }
}

/* LIBRARY - player inventory game UI */
body.library-page{
  --library-frame-width:min(1880px, calc(100vw - 28px));
  min-height:100vh;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.82), rgba(0,0,0,0.28) 22%, rgba(0,0,0,0.14) 54%, rgba(0,0,0,0.72)),
    radial-gradient(circle at 72% 22%, rgba(229,172,62,0.18), transparent 28rem),
    url("../img/backgrounds/BG01.png") center / cover fixed,
    #050403;
  color:#f3ead2;
}

body.library-page::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.48), transparent 28%, rgba(0,0,0,0.72)),
    radial-gradient(circle at 10% 92%, rgba(26,131,142,0.18), transparent 18rem);
  z-index:-1;
}

body.library-page::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 190px rgba(0,0,0,0.88);
  z-index:-1;
}

body.library-page .hidden{
  display:none !important;
}

body.library-page .site-header{
  width:var(--library-frame-width);
  margin:10px auto 0;
  border:1px solid rgba(187,126,36,0.34);
  border-bottom-color:rgba(212,153,54,0.2);
  background:linear-gradient(180deg, rgba(8,7,5,0.96), rgba(7,5,4,0.88));
  box-shadow:0 18px 70px rgba(0,0,0,0.50);
  backdrop-filter:blur(12px);
}

body.library-page .site-header::before{
  display:none;
}

body.library-page .site-header > .container{
  width:100%;
  max-width:none;
  padding:0 22px;
}

body.library-page .nav{
  min-height:68px;
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:18px;
  align-items:center;
}

body.library-page .brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#f3ead2;
}

body.library-page .brand::before{
  content:"MC";
  color:#f6bf42;
  font-family:Georgia, "Times New Roman", serif;
  font-size:2.1rem;
  font-weight:900;
  line-height:1;
  text-shadow:0 0 10px rgba(225,158,42,0.42), 0 2px 2px rgba(0,0,0,0.9);
}

body.library-page .brand-mark{
  display:none;
}

body.library-page .brand-name{
  color:#f5ead0;
  font-weight:900;
}

body.library-page .nav-links{
  display:flex;
  gap:30px;
  align-items:center;
}

body.library-page .nav-links a{
  position:relative;
  color:#d8c79f;
  font-size:0.88rem;
  text-decoration:none;
}

body.library-page .nav-links a[aria-current="page"]{
  color:#f5cc67;
}

body.library-page .nav-links a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-12px;
  height:2px;
  background:#dca33d;
  box-shadow:0 0 12px rgba(230,168,55,0.5);
}

body.library-page .nav-actions{
  display:none;
}

body.library-page main#main{
  width:var(--library-frame-width);
  min-height:calc(100vh - 92px);
  margin:0 auto;
  border:1px solid rgba(187,126,36,0.24);
  border-top:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.72), transparent 34%, rgba(0,0,0,0.78)),
    rgba(4,4,3,0.24);
}

body.library-page .library-game-shell{
  display:grid;
  grid-template-columns:280px minmax(0, 1fr);
  gap:24px;
  min-height:calc(100vh - 92px);
  padding:24px;
}

body.library-page .library-player-panel,
body.library-page .library-inventory-panel,
body.library-page .library-auth-card,
body.library-page .library-account-card,
body.library-page .library-results-panel,
body.library-page .library-empty-state,
body.library-page .library-activity-panel{
  position:relative;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(65,38,16,0.42), rgba(7,5,4,0.82) 56%),
    rgba(5,4,3,0.82);
  box-shadow:0 20px 70px rgba(0,0,0,0.42), inset 0 0 0 1px rgba(255,219,117,0.04);
}

body.library-page .library-player-panel::before,
body.library-page .library-inventory-panel::before,
body.library-page .library-auth-card::before,
body.library-page .library-account-card::before,
body.library-page .library-results-panel::before,
body.library-page .library-empty-state::before,
body.library-page .library-activity-panel::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(224,163,57,0.12);
  border-radius:3px;
  pointer-events:none;
}

body.library-page .library-player-panel > *,
body.library-page .library-inventory-panel > *,
body.library-page .library-auth-card > *,
body.library-page .library-account-card > *,
body.library-page .library-results-panel > *,
body.library-page .library-empty-state > *,
body.library-page .library-activity-panel > *{
  position:relative;
  z-index:1;
}

body.library-page .library-player-panel{
  align-self:start;
  min-height:720px;
  padding:18px;
}

body.library-page .library-player-brand{
  display:grid;
  place-items:center;
  min-height:150px;
  margin-bottom:16px;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:8px;
  background:radial-gradient(circle at 50% 20%, rgba(220,166,56,0.16), rgba(0,0,0,0.68) 62%);
  overflow:hidden;
}

body.library-page .library-player-brand img{
  width:min(78%, 220px);
  max-height:120px;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,0.6));
}

body.library-page .library-panel-block{
  margin-bottom:16px;
  padding:14px;
  border:1px solid rgba(212,153,54,0.16);
  border-radius:6px;
  background:rgba(0,0,0,0.22);
}

body.library-page .library-panel-block h2{
  margin:0 0 12px;
  color:#f2c35e;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.library-page .library-side-nav{
  display:grid;
  gap:0;
}

body.library-page .library-side-nav a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 10px 0 28px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#eadfc8;
  font-size:0.9rem;
  font-weight:850;
  text-decoration:none;
}

body.library-page .library-side-nav a:last-child{
  border-bottom:0;
}

body.library-page .library-side-nav a::before,
body.library-page .library-stats-panel div::before{
  content:"";
  position:absolute;
  left:8px;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.22);
}

body.library-page .library-side-nav a[aria-current="page"]{
  background:linear-gradient(90deg, rgba(212,153,54,0.26), rgba(212,153,54,0.04));
  color:#fff4d2;
}

body.library-page .library-stats-panel{
  display:grid;
  gap:10px;
}

body.library-page .library-stats-panel div{
  position:relative;
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-left:26px;
  color:#d7c28b;
  font-size:0.86rem;
}

body.library-page .library-stats-panel b{
  color:#f8d46f;
}

body.library-page .library-help-panel p{
  margin:0 0 14px;
  color:#d7c9a8;
  font-size:0.88rem;
  line-height:1.45;
}

body.library-page .library-help-panel .btn{
  min-height:38px;
  width:100%;
}

body.library-page .library-inventory-panel{
  min-height:720px;
  padding:28px;
  background:
    radial-gradient(circle at 78% 0%, rgba(215,170,61,0.16), transparent 24rem),
    linear-gradient(135deg, rgba(33,22,12,0.62), rgba(5,5,4,0.76) 62%);
}

body.library-page .library-inventory-header{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:20px;
  align-items:end;
  margin-bottom:22px;
}

body.library-page .library-inventory-header h1{
  max-width:900px;
  margin:4px 0 10px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.35rem, 4.4vw, 5.45rem);
  line-height:0.92;
  text-transform:uppercase;
  text-shadow:0 2px 3px rgba(0,0,0,0.85), 0 0 16px rgba(230,169,60,0.16);
}

body.library-page .library-inventory-header p{
  max-width:720px;
  margin:0;
  color:#e8dbc0;
  font-size:1rem;
  line-height:1.55;
}

body.library-page .library-console-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(280px, 0.7fr);
  gap:18px;
  margin-bottom:18px;
}

body.library-page .library-auth-card,
body.library-page .library-account-card,
body.library-page .library-empty-state,
body.library-page .library-activity-panel{
  padding:22px;
}

body.library-page .library-auth-card form{
  display:grid;
  gap:12px;
}

body.library-page .library-auth-card label{
  color:#f0c36a;
  font-size:0.78rem;
  font-weight:900;
  letter-spacing:0.06em;
  text-transform:uppercase;
}

body.library-page .library-login-row{
  display:grid;
  grid-template-columns:minmax(220px, 1fr) auto;
  gap:12px;
}

body.library-page .library-login-row input{
  min-width:0;
  min-height:48px;
  padding:0 14px;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:5px;
  background:rgba(0,0,0,0.48);
  color:#fff4dc;
  font:inherit;
}

body.library-page .library-login-row input::placeholder{
  color:rgba(232,219,192,0.45);
}

body.library-page .library-auth-card p{
  margin:0;
  color:#c9b88e;
  font-size:0.88rem;
  line-height:1.45;
}

body.library-page .library-status{
  min-height:24px;
  margin-top:14px;
  color:#d7c28b;
  font-size:0.9rem;
}

body.library-page .library-status.is-error{
  color:#ffb4a8;
}

body.library-page .library-account-card{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
}

body.library-page .library-account-card span{
  color:#f0c36a;
  font-size:0.72rem;
  font-weight:900;
  text-transform:uppercase;
}

body.library-page .library-account-card h2{
  margin:2px 0 4px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
}

body.library-page .library-account-card p{
  margin:0;
  color:#d7c28b;
}

body.library-page .library-results-panel{
  padding:24px;
  margin-bottom:18px;
}

body.library-page .library-results-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:end;
  margin-bottom:18px;
}

body.library-page .library-results-head h2,
body.library-page .library-empty-state h2,
body.library-page .library-activity-panel h2{
  margin:0 0 6px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.55rem;
  letter-spacing:0.02em;
}

body.library-page .library-results-head p,
body.library-page .library-empty-state p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.library-page .library-shop-link{
  color:#f0c36a;
  font-weight:850;
  text-decoration:none;
}

body.library-page .library-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
}

body.library-page .library-item-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(212,153,54,0.32);
  border-radius:6px;
  background:
    linear-gradient(160deg, rgba(54,31,14,0.58), rgba(5,5,4,0.86) 55%),
    rgba(0,0,0,0.48);
  box-shadow:inset 0 0 0 1px rgba(255,219,117,0.05);
}

body.library-page .library-item-media{
  display:grid;
  place-items:center;
  aspect-ratio:4 / 5;
  padding:10px;
  border-bottom:1px solid rgba(212,153,54,0.18);
  background:radial-gradient(circle at 50% 28%, rgba(236,190,72,0.16), rgba(0,0,0,0.66) 68%);
}

body.library-page .library-item-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 14px 24px rgba(0,0,0,0.55));
}

body.library-page .library-item-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  border:1px solid rgba(212,153,54,0.16);
  background:rgba(0,0,0,0.55);
}

body.library-page .library-item-placeholder span{
  color:#f6bf42;
  font-family:Georgia, "Times New Roman", serif;
  font-size:3rem;
  font-weight:900;
  text-shadow:0 0 14px rgba(225,158,42,0.38);
}

body.library-page .library-item-body{
  padding:14px;
}

body.library-page .library-item-topline{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
  color:#b9853f;
  font-size:0.66rem;
  font-weight:900;
  text-transform:uppercase;
}

body.library-page .library-item-topline b{
  color:#f8d46f;
}

body.library-page .library-item-card h3{
  min-height:2.8em;
  margin:0 0 10px;
  color:#fff4dc;
  font-size:1rem;
  line-height:1.28;
}

body.library-page .library-item-formats{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:14px;
}

body.library-page .library-item-formats span{
  min-height:26px;
  display:inline-flex;
  align-items:center;
  padding:0 9px;
  border:1px solid rgba(212,153,54,0.24);
  border-radius:4px;
  background:rgba(0,0,0,0.38);
  color:#f0c36a;
  font-size:0.66rem;
  font-weight:900;
  text-transform:uppercase;
}

body.library-page .library-item-actions{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
}

body.library-page .library-item-actions .btn{
  min-height:38px;
  justify-content:center;
  border-radius:4px;
  font-size:0.78rem;
  text-transform:uppercase;
}

body.library-page .library-missing-links{
  grid-column:1 / -1;
  min-height:38px;
  display:flex;
  align-items:center;
  padding:0 10px;
  border:1px solid rgba(212,153,54,0.16);
  color:#d7c28b;
  font-size:0.82rem;
}

body.library-page .library-empty-state{
  display:grid;
  gap:12px;
  justify-items:start;
  margin-bottom:18px;
}

body.library-page .library-activity-panel{
  display:grid;
  grid-template-columns:auto repeat(3, minmax(0, 1fr));
  gap:18px;
  align-items:start;
}

body.library-page .library-activity-panel h2{
  min-width:180px;
  margin:0;
}

body.library-page .library-activity-panel span{
  display:block;
  margin-bottom:4px;
  color:#f0c36a;
  font-size:0.72rem;
  font-weight:900;
  text-transform:uppercase;
}

body.library-page .library-activity-panel p{
  margin:0;
  color:#d7c9a8;
  line-height:1.45;
}

body.library-page .footer{
  display:none;
}

@media (max-width:1300px){
  body.library-page{
    --library-frame-width:calc(100vw - 20px);
  }

  body.library-page .library-game-shell{
    grid-template-columns:240px minmax(0, 1fr);
  }

  body.library-page .library-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  body.library-page .library-console-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:920px){
  body.library-page .site-header,
  body.library-page main#main{
    width:100%;
    margin-left:0;
    margin-right:0;
    border-left:0;
    border-right:0;
  }

  body.library-page .nav{
    grid-template-columns:1fr auto;
  }

  body.library-page .nav-links{
    display:none;
  }

  body.library-page .nav-actions{
    display:flex;
    justify-content:flex-end;
  }

  body.library-page .library-game-shell{
    grid-template-columns:1fr;
    padding:16px;
  }

  body.library-page .library-player-panel{
    order:2;
    min-height:0;
  }

  body.library-page .library-inventory-panel{
    order:1;
  }

  body.library-page .library-player-brand{
    min-height:96px;
  }

  body.library-page .library-player-brand img{
    width:min(70%, 180px);
    max-height:78px;
  }

  body.library-page .library-help-panel{
    display:none;
  }

  body.library-page .library-inventory-panel{
    min-height:0;
    padding:22px;
  }

  body.library-page .library-results-head{
    align-items:start;
    flex-direction:column;
  }

  body.library-page .library-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body.library-page .library-activity-panel{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  body.library-page .library-game-shell{
    padding:12px;
  }

  body.library-page .library-inventory-panel,
  body.library-page .library-auth-card,
  body.library-page .library-account-card,
  body.library-page .library-results-panel,
  body.library-page .library-empty-state,
  body.library-page .library-activity-panel{
    padding:18px;
  }

  body.library-page .library-inventory-header h1{
    font-size:2.35rem;
  }

  body.library-page .library-login-row{
    grid-template-columns:1fr;
  }

  body.library-page .library-account-card{
    align-items:flex-start;
    flex-direction:column;
  }

  body.library-page .library-grid{
    grid-template-columns:1fr;
  }

  body.library-page .library-item-card h3{
    min-height:0;
  }
}

/* HELP - guidebook game UI */
body.help-page{
  --help-frame-width:min(1880px, calc(100vw - 28px));
  min-height:100vh;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.82), rgba(0,0,0,0.34) 26%, rgba(0,0,0,0.18) 58%, rgba(0,0,0,0.78)),
    radial-gradient(circle at 82% 20%, rgba(52,188,220,0.14), transparent 24rem),
    radial-gradient(circle at 44% 8%, rgba(229,172,62,0.14), transparent 24rem),
    url("../img/backgrounds/BG05.png") center / cover fixed,
    #050403;
  color:#f3ead2;
}

body.help-page::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.48), transparent 30%, rgba(0,0,0,0.78)),
    radial-gradient(circle at 92% 72%, rgba(31,165,205,0.16), transparent 18rem);
  z-index:-1;
}

body.help-page::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 190px rgba(0,0,0,0.88);
  z-index:-1;
}

body.help-page .site-header{
  width:var(--help-frame-width);
  margin:10px auto 0;
  border:1px solid rgba(187,126,36,0.34);
  border-bottom-color:rgba(212,153,54,0.2);
  background:linear-gradient(180deg, rgba(8,7,5,0.96), rgba(7,5,4,0.88));
  box-shadow:0 18px 70px rgba(0,0,0,0.50);
  backdrop-filter:blur(12px);
}

body.help-page .site-header::before{
  display:none;
}

body.help-page .site-header > .container{
  width:100%;
  max-width:none;
  padding:0 22px;
}

body.help-page .nav{
  min-height:68px;
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:18px;
  align-items:center;
}

body.help-page .brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#f3ead2;
}

body.help-page .brand::before{
  content:"MC";
  color:#f6bf42;
  font-family:Georgia, "Times New Roman", serif;
  font-size:2.1rem;
  font-weight:900;
  line-height:1;
  text-shadow:0 0 10px rgba(225,158,42,0.42), 0 2px 2px rgba(0,0,0,0.9);
}

body.help-page .brand-mark{
  display:none;
}

body.help-page .brand-name{
  color:#f5ead0;
  font-weight:900;
}

body.help-page .nav-links{
  display:flex;
  gap:30px;
  align-items:center;
}

body.help-page .nav-links a{
  position:relative;
  color:#d8c79f;
  font-size:0.88rem;
  text-decoration:none;
}

body.help-page .nav-links a[aria-current="page"]{
  color:#f5cc67;
}

body.help-page .nav-links a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-12px;
  height:2px;
  background:#dca33d;
  box-shadow:0 0 12px rgba(230,168,55,0.5);
}

body.help-page .nav-actions{
  display:none;
}

body.help-page main#main{
  width:var(--help-frame-width);
  min-height:calc(100vh - 92px);
  margin:0 auto;
  border:1px solid rgba(187,126,36,0.24);
  border-top:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.72), transparent 36%, rgba(0,0,0,0.78)),
    rgba(4,4,3,0.24);
}

body.help-page .help-game-shell{
  display:grid;
  grid-template-columns:280px minmax(0, 1fr);
  gap:24px;
  min-height:calc(100vh - 92px);
  padding:24px;
}

body.help-page .help-guide-panel,
body.help-page .help-content-panel,
body.help-page .help-guide-card,
body.help-page .help-faq-panel{
  position:relative;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(65,38,16,0.42), rgba(7,5,4,0.82) 56%),
    rgba(5,4,3,0.82);
  box-shadow:0 20px 70px rgba(0,0,0,0.42), inset 0 0 0 1px rgba(255,219,117,0.04);
}

body.help-page .help-guide-panel::before,
body.help-page .help-content-panel::before,
body.help-page .help-guide-card::before,
body.help-page .help-faq-panel::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(224,163,57,0.12);
  border-radius:3px;
  pointer-events:none;
}

body.help-page .help-guide-panel > *,
body.help-page .help-content-panel > *,
body.help-page .help-guide-card > *,
body.help-page .help-faq-panel > *{
  position:relative;
  z-index:1;
}

body.help-page .help-guide-panel{
  align-self:start;
  min-height:720px;
  padding:18px;
}

body.help-page .help-guide-brand{
  display:grid;
  place-items:center;
  min-height:150px;
  margin-bottom:16px;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:8px;
  background:radial-gradient(circle at 50% 20%, rgba(220,166,56,0.16), rgba(0,0,0,0.68) 62%);
  overflow:hidden;
}

body.help-page .help-guide-brand img{
  width:min(78%, 220px);
  max-height:120px;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,0.6));
}

body.help-page .help-panel-block{
  margin-bottom:16px;
  padding:14px;
  border:1px solid rgba(212,153,54,0.16);
  border-radius:6px;
  background:rgba(0,0,0,0.22);
}

body.help-page .help-panel-block h2{
  margin:0 0 12px;
  color:#f2c35e;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.help-page .help-topic-list{
  display:grid;
}

body.help-page .help-topic-list a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 10px 0 28px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#eadfc8;
  font-size:0.9rem;
  font-weight:850;
  text-decoration:none;
}

body.help-page .help-topic-list a:last-child{
  border-bottom:0;
}

body.help-page .help-topic-list a::before{
  content:"";
  position:absolute;
  left:8px;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.22);
}

body.help-page .help-topic-list a[aria-current="page"]{
  background:linear-gradient(90deg, rgba(212,153,54,0.26), rgba(212,153,54,0.04));
  color:#fff4d2;
}

body.help-page .help-message-panel p{
  margin:0 0 14px;
  color:#d7c9a8;
  font-size:0.88rem;
  line-height:1.45;
}

body.help-page .help-message-panel .btn{
  min-height:38px;
  width:100%;
}

body.help-page .help-content-panel{
  min-height:720px;
  padding:28px;
  background:
    radial-gradient(circle at 82% 0%, rgba(31,165,205,0.16), transparent 22rem),
    linear-gradient(135deg, rgba(33,22,12,0.62), rgba(5,5,4,0.78) 62%);
}

body.help-page .help-hero{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(260px, 420px);
  gap:30px;
  align-items:center;
  margin-bottom:22px;
}

body.help-page .help-hero h1{
  max-width:950px;
  margin:4px 0 12px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.35rem, 4.4vw, 5.45rem);
  line-height:0.92;
  text-transform:uppercase;
  text-shadow:0 2px 3px rgba(0,0,0,0.85), 0 0 16px rgba(230,169,60,0.16);
}

body.help-page .help-hero p{
  max-width:720px;
  margin:0;
  color:#e8dbc0;
  font-size:1rem;
  line-height:1.55;
}

body.help-page .help-art{
  display:grid;
  place-items:center;
  min-height:250px;
  border:1px solid rgba(56,185,220,0.18);
  border-radius:8px;
  background:
    radial-gradient(circle at 50% 45%, rgba(63,203,239,0.26), transparent 50%),
    rgba(0,0,0,0.32);
  overflow:hidden;
}

body.help-page .help-art img{
  width:100%;
  height:100%;
  max-height:340px;
  object-fit:cover;
  opacity:0.85;
  filter:saturate(1.08) contrast(1.08);
}

body.help-page .help-card-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-bottom:18px;
}

body.help-page .help-guide-card{
  display:grid;
  grid-template-columns:58px minmax(0, 1fr);
  gap:14px;
  min-height:206px;
  padding:20px;
}

body.help-page .help-card-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(212,153,54,0.32);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(226,184,74,0.30), rgba(0,0,0,0.38));
  color:#f8d46f;
  font-weight:950;
  box-shadow:0 12px 30px rgba(0,0,0,0.28);
}

body.help-page .help-guide-card h2{
  margin:0 0 8px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.35rem;
  letter-spacing:0.02em;
}

body.help-page .help-guide-card p{
  margin:0 0 14px;
  color:#d7c9a8;
  line-height:1.5;
}

body.help-page .help-guide-card a{
  color:#f0c36a;
  font-weight:850;
  text-decoration:none;
}

body.help-page .help-faq-panel{
  padding:24px;
}

body.help-page .help-faq-panel h2{
  margin:0 0 14px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.55rem;
}

body.help-page .help-faq-list{
  display:grid;
  gap:10px;
}

body.help-page .help-faq-list details{
  border:1px solid rgba(212,153,54,0.18);
  border-radius:6px;
  background:rgba(0,0,0,0.30);
}

body.help-page .help-faq-list summary{
  min-height:48px;
  display:flex;
  align-items:center;
  padding:0 14px;
  color:#f0c36a;
  cursor:pointer;
  font-weight:900;
}

body.help-page .help-faq-list p{
  margin:0;
  padding:0 14px 14px;
  color:#d7c9a8;
  line-height:1.55;
}

body.help-page .footer{
  display:none;
}

@media (max-width:1300px){
  body.help-page{
    --help-frame-width:calc(100vw - 20px);
  }

  body.help-page .help-game-shell{
    grid-template-columns:240px minmax(0, 1fr);
  }

  body.help-page .help-card-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body.help-page .help-hero{
    grid-template-columns:1fr;
  }

  body.help-page .help-art{
    min-height:180px;
  }
}

@media (max-width:920px){
  body.help-page .site-header,
  body.help-page main#main{
    width:100%;
    margin-left:0;
    margin-right:0;
    border-left:0;
    border-right:0;
  }

  body.help-page .nav{
    grid-template-columns:1fr auto;
  }

  body.help-page .nav-links{
    display:none;
  }

  body.help-page .nav-actions{
    display:flex;
    justify-content:flex-end;
  }

  body.help-page .help-game-shell{
    grid-template-columns:1fr;
    padding:16px;
  }

  body.help-page .help-content-panel{
    order:1;
    min-height:0;
    padding:22px;
  }

  body.help-page .help-guide-panel{
    order:2;
    min-height:0;
  }

  body.help-page .help-guide-brand{
    min-height:96px;
  }

  body.help-page .help-guide-brand img{
    width:min(70%, 180px);
    max-height:78px;
  }

  body.help-page .help-message-panel{
    display:none;
  }

  body.help-page .help-card-grid{
    grid-template-columns:1fr;
  }

  body.help-page .help-guide-card{
    min-height:0;
  }
}

@media (max-width:560px){
  body.help-page .help-game-shell{
    padding:12px;
  }

  body.help-page .help-content-panel,
  body.help-page .help-guide-card,
  body.help-page .help-faq-panel{
    padding:18px;
  }

  body.help-page .help-hero h1{
    font-size:2.35rem;
  }

  body.help-page .help-art{
    min-height:150px;
  }

  body.help-page .help-guide-card{
    grid-template-columns:1fr;
  }
}

/* CONTACT - support desk refinements */
body.contact-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.84), rgba(0,0,0,0.30) 26%, rgba(0,0,0,0.20) 58%, rgba(0,0,0,0.78)),
    radial-gradient(circle at 74% 18%, rgba(229,172,62,0.16), transparent 24rem),
    radial-gradient(circle at 16% 84%, rgba(42,174,202,0.14), transparent 20rem),
    url("../img/backgrounds/BG12.png") center / cover fixed,
    #050403;
}

body.contact-page .contact-ticket-card{
  position:relative;
  align-self:stretch;
  display:grid;
  align-content:center;
  gap:12px;
  min-height:250px;
  padding:26px;
  border:1px solid rgba(212,153,54,0.30);
  border-radius:8px;
  background:
    radial-gradient(circle at 82% 12%, rgba(215,170,61,0.20), transparent 14rem),
    linear-gradient(150deg, rgba(78,44,17,0.64), rgba(5,5,4,0.84));
  box-shadow:0 20px 60px rgba(0,0,0,0.36), inset 0 0 0 1px rgba(255,219,117,0.05);
}

body.contact-page .contact-content-panel,
body.contact-page .contact-hero,
body.contact-page .contact-ticket-card,
body.contact-page .help-guide-card{
  min-width:0;
}

body.contact-page .contact-hero h1{
  font-size:clamp(2.3rem, 3.7vw, 4.65rem);
}

body.contact-page .contact-ticket-card::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(224,163,57,0.14);
  border-radius:4px;
  pointer-events:none;
}

body.contact-page .contact-ticket-card > *{
  position:relative;
  z-index:1;
}

body.contact-page .contact-ticket-card span{
  color:#f0c36a;
  font-size:0.76rem;
  font-weight:950;
  letter-spacing:0.12em;
  text-transform:uppercase;
}

body.contact-page .contact-ticket-card h2{
  margin:0;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.75rem;
  line-height:1.05;
}

body.contact-page .contact-ticket-card p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.contact-page .contact-ticket-card .btn{
  width:max-content;
  min-height:44px;
  margin-top:6px;
}

body.contact-page .contact-address-panel p{
  display:grid;
  gap:4px;
  margin:0 0 12px;
  color:#d7c9a8;
  font-size:0.88rem;
  line-height:1.45;
}

body.contact-page .contact-address-panel p:last-child{
  margin-bottom:0;
}

body.contact-page .contact-address-panel b{
  color:#f0c36a;
  font-size:0.72rem;
  text-transform:uppercase;
}

body.contact-page .contact-address-panel a{
  color:#fff4d2;
  overflow-wrap:anywhere;
  text-decoration:none;
}

body.contact-page .contact-card-grid{
  margin-bottom:18px;
}

body.contact-page .contact-info-panel,
body.contact-page .contact-checklist-panel{
  margin-bottom:18px;
}

body.contact-page .contact-channel-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}

body.contact-page .contact-channel-grid div{
  min-height:118px;
  padding:16px;
  border:1px solid rgba(212,153,54,0.18);
  border-radius:6px;
  background:rgba(0,0,0,0.30);
}

body.contact-page .contact-channel-grid span,
body.contact-page .contact-checklist-grid h3{
  display:block;
  margin-bottom:8px;
  color:#f0c36a;
  font-size:0.72rem;
  font-weight:950;
  letter-spacing:0.08em;
  text-transform:uppercase;
}

body.contact-page .contact-channel-grid a{
  color:#fff4d2;
  font-weight:900;
  overflow-wrap:anywhere;
  text-decoration:none;
}

body.contact-page .contact-channel-grid p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.contact-page .contact-checklist-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

body.contact-page .contact-checklist-grid article{
  padding:16px;
  border:1px solid rgba(212,153,54,0.18);
  border-radius:6px;
  background:rgba(0,0,0,0.30);
}

body.contact-page .contact-checklist-grid ul{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

body.contact-page .contact-checklist-grid li{
  position:relative;
  padding-left:22px;
  color:#d7c9a8;
  line-height:1.4;
}

body.contact-page .contact-checklist-grid li::before{
  content:"";
  position:absolute;
  left:0;
  top:0.42em;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.20);
}

@media (max-width:920px){
  body.contact-page .contact-ticket-card{
    min-height:0;
  }

  body.contact-page .contact-channel-grid,
  body.contact-page .contact-checklist-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  body.contact-page .contact-hero h1{
    font-size:2rem;
  }

  body.contact-page .contact-ticket-card{
    padding:18px;
  }

  body.contact-page .contact-ticket-card .btn{
    width:100%;
  }
}

/* THANK YOU - purchase complete screen */
body.thank-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.82), rgba(0,0,0,0.28) 26%, rgba(0,0,0,0.18) 58%, rgba(0,0,0,0.76)),
    radial-gradient(circle at 72% 18%, rgba(229,172,62,0.18), transparent 25rem),
    radial-gradient(circle at 20% 82%, rgba(42,174,202,0.15), transparent 20rem),
    url("../img/backgrounds/BG11.png") center / cover fixed,
    #050403;
}

body.thank-page .thank-game-shell,
body.thank-page .thank-content-panel,
body.thank-page .thank-next-panel,
body.thank-page .thank-complete-panel,
body.thank-page .thank-unlock-card,
body.thank-page .thank-reward-card,
body.thank-page .thank-step-card,
body.thank-page .thank-note-panel{
  min-width:0;
}

body.thank-page .thank-content-panel{
  min-height:720px;
  padding:28px;
  background:
    radial-gradient(circle at 72% 0%, rgba(227,185,77,0.20), transparent 24rem),
    radial-gradient(circle at 96% 58%, rgba(44,186,226,0.12), transparent 19rem),
    linear-gradient(135deg, rgba(30,21,10,0.72), rgba(4,4,3,0.82) 60%);
}

body.thank-page .thank-hero-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(280px, 430px);
  gap:20px;
  align-items:stretch;
  margin-bottom:20px;
}

body.thank-page .thank-complete-panel,
body.thank-page .thank-unlock-card,
body.thank-page .thank-reward-card,
body.thank-page .thank-step-card,
body.thank-page .thank-note-panel{
  position:relative;
  border:1px solid rgba(212,153,54,0.30);
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(78,46,16,0.46), rgba(7,5,4,0.88) 58%),
    rgba(4,4,3,0.84);
  box-shadow:0 20px 70px rgba(0,0,0,0.42), inset 0 0 0 1px rgba(255,219,117,0.04);
}

body.thank-page .thank-complete-panel::before,
body.thank-page .thank-unlock-card::before,
body.thank-page .thank-reward-card::before,
body.thank-page .thank-step-card::before,
body.thank-page .thank-note-panel::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(224,163,57,0.13);
  border-radius:3px;
  pointer-events:none;
}

body.thank-page .thank-complete-panel > *,
body.thank-page .thank-unlock-card > *,
body.thank-page .thank-reward-card > *,
body.thank-page .thank-step-card > *,
body.thank-page .thank-note-panel > *{
  position:relative;
  z-index:1;
}

body.thank-page .thank-complete-panel{
  display:grid;
  align-content:center;
  min-height:430px;
  padding:clamp(28px, 4vw, 58px);
  overflow:hidden;
}

body.thank-page .thank-complete-panel::after{
  content:"";
  position:absolute;
  inset:auto 10% -70px;
  height:150px;
  background:radial-gradient(ellipse at center, rgba(226,181,69,0.20), transparent 70%);
  pointer-events:none;
}

body.thank-page .thank-complete-panel .kicker,
body.thank-page .thank-reward-copy .kicker{
  color:#f0c36a;
  letter-spacing:0.18em;
}

body.thank-page .thank-complete-panel h1{
  max-width:980px;
  margin:8px 0 14px;
  color:#f9e9c0;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(3.1rem, 5.4vw, 6.8rem);
  line-height:0.88;
  text-transform:uppercase;
  text-shadow:0 3px 4px rgba(0,0,0,0.9), 0 0 18px rgba(230,169,60,0.18);
}

body.thank-page .thank-complete-panel p{
  max-width:720px;
  margin:0;
  color:#e8dbc0;
  font-size:1.08rem;
  line-height:1.58;
}

body.thank-page .thank-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

body.thank-page .thank-actions .btn,
body.thank-page .thank-unlock-card .btn{
  min-width:180px;
}

body.thank-page .thank-reward-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}

body.thank-page .thank-reward-badges span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(212,153,54,0.20);
  border-radius:999px;
  background:rgba(0,0,0,0.26);
  color:#d7c9a8;
  font-size:0.82rem;
}

body.thank-page .thank-unlock-card{
  display:grid;
  align-content:center;
  justify-items:start;
  gap:12px;
  min-height:430px;
  padding:28px;
  background:
    radial-gradient(circle at 50% 18%, rgba(222,178,72,0.22), transparent 12rem),
    linear-gradient(145deg, rgba(62,38,15,0.62), rgba(0,0,0,0.78) 66%);
}

body.thank-page .thank-unlock-icon{
  display:grid;
  place-items:center;
  width:118px;
  height:118px;
  border:1px solid rgba(235,190,76,0.38);
  border-radius:10px;
  background:radial-gradient(circle at 50% 30%, rgba(232,186,68,0.20), rgba(0,0,0,0.70) 68%);
  color:#f6bf42;
  font-family:Georgia, "Times New Roman", serif;
  font-size:2.7rem;
  font-weight:950;
  text-shadow:0 0 14px rgba(225,158,42,0.46), 0 2px 3px rgba(0,0,0,0.9);
}

body.thank-page .thank-unlock-card h2{
  margin:4px 0 0;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.8rem;
}

body.thank-page .thank-unlock-card p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.thank-page .thank-status-panel{
  display:grid;
  gap:10px;
}

body.thank-page .thank-status-panel div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#d7c9a8;
  font-size:0.88rem;
}

body.thank-page .thank-status-panel div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

body.thank-page .thank-status-panel b{
  color:#f4ce70;
}

body.thank-page .thank-reward-card{
  display:none;
  grid-template-columns:minmax(170px, 260px) minmax(0, 1fr);
  gap:24px;
  align-items:center;
  margin-bottom:20px;
  padding:24px;
}

body.thank-page .thank-reward-card.is-visible{
  display:grid;
}

body.thank-page .thank-reward-cover{
  display:grid;
  place-items:center;
  min-height:260px;
  border:1px solid rgba(212,153,54,0.24);
  border-radius:6px;
  background:
    radial-gradient(circle at 50% 20%, rgba(227,185,77,0.13), transparent 70%),
    rgba(0,0,0,0.52);
  overflow:hidden;
}

body.thank-page .thank-reward-cover img{
  width:100%;
  height:100%;
  max-height:360px;
  object-fit:cover;
  filter:contrast(1.06) saturate(1.08);
}

body.thank-page .thank-reward-copy h2{
  margin:8px 0 10px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(1.8rem, 3vw, 3.1rem);
  line-height:1;
}

body.thank-page .thank-reward-copy p{
  margin:0;
  max-width:780px;
  color:#d7c9a8;
  font-size:1rem;
  line-height:1.55;
}

body.thank-page .thank-pillrow{
  margin-bottom:14px;
}

body.thank-page .thank-step-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-bottom:20px;
}

body.thank-page .thank-step-card{
  min-height:180px;
  padding:20px;
}

body.thank-page .thank-step-card span{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  margin-bottom:18px;
  border:1px solid rgba(212,153,54,0.32);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(226,184,74,0.30), rgba(0,0,0,0.38));
  color:#f8d46f;
  font-weight:950;
}

body.thank-page .thank-step-card h2{
  margin:0 0 8px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.32rem;
}

body.thank-page .thank-step-card p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.thank-page .thank-note-panel{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  padding:22px;
}

body.thank-page .thank-note-panel h2{
  margin:0 0 8px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.28rem;
}

body.thank-page .thank-note-panel p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.thank-page .thank-note-panel a{
  display:inline-flex;
  margin-top:10px;
  color:#f0c36a;
  font-weight:850;
  text-decoration:none;
}

body.thank-page .footer{
  display:none;
}

@media (max-width:1300px){
  body.thank-page .thank-hero-grid{
    grid-template-columns:1fr;
  }

  body.thank-page .thank-unlock-card{
    min-height:0;
  }
}

@media (max-width:920px){
  body.thank-page .thank-content-panel{
    min-height:0;
  }

  body.thank-page .thank-complete-panel{
    min-height:0;
  }

  body.thank-page .thank-reward-card.is-visible{
    grid-template-columns:1fr;
  }

  body.thank-page .thank-reward-cover{
    min-height:220px;
  }

  body.thank-page .thank-step-grid,
  body.thank-page .thank-note-panel{
    grid-template-columns:1fr;
  }
}

@media (max-width:560px){
  body.thank-page .thank-content-panel,
  body.thank-page .thank-complete-panel,
  body.thank-page .thank-unlock-card,
  body.thank-page .thank-reward-card,
  body.thank-page .thank-step-card,
  body.thank-page .thank-note-panel{
    padding:18px;
  }

  body.thank-page .thank-complete-panel h1{
    font-size:2.45rem;
  }

  body.thank-page .thank-complete-panel p,
  body.thank-page .thank-reward-copy p{
    font-size:0.95rem;
  }

  body.thank-page .thank-actions .btn,
  body.thank-page .thank-unlock-card .btn{
    width:100%;
    min-width:0;
  }

  body.thank-page .thank-reward-cover{
    min-height:190px;
  }
}

/* ABOUT - archive / studio game UI */
body.about-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.84), rgba(0,0,0,0.30) 26%, rgba(0,0,0,0.18) 58%, rgba(0,0,0,0.76)),
    radial-gradient(circle at 74% 18%, rgba(229,172,62,0.16), transparent 24rem),
    radial-gradient(circle at 18% 86%, rgba(42,174,202,0.13), transparent 20rem),
    url("../img/backgrounds/BG02.png") center / cover fixed,
    #050403;
}

body.about-page .about-game-shell,
body.about-page .about-content-panel,
body.about-page .about-archive-panel,
body.about-page .about-hero,
body.about-page .about-crest-card,
body.about-page .about-statement-panel,
body.about-page .about-card,
body.about-page .about-expect-panel,
body.about-page .about-lore-panel,
body.about-page .about-contact-panel{
  min-width:0;
}

body.about-page .about-content-panel{
  min-height:720px;
  padding:28px;
  background:
    radial-gradient(circle at 74% 8%, rgba(227,185,77,0.18), transparent 24rem),
    radial-gradient(circle at 96% 64%, rgba(42,174,202,0.12), transparent 20rem),
    linear-gradient(135deg, rgba(34,23,11,0.72), rgba(4,4,3,0.82) 62%);
}

body.about-page .about-hero,
body.about-page .about-statement-panel,
body.about-page .about-card,
body.about-page .about-expect-panel,
body.about-page .about-lore-panel,
body.about-page .about-contact-panel{
  position:relative;
  border:1px solid rgba(212,153,54,0.30);
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(78,46,16,0.46), rgba(7,5,4,0.88) 58%),
    rgba(4,4,3,0.84);
  box-shadow:0 20px 70px rgba(0,0,0,0.42), inset 0 0 0 1px rgba(255,219,117,0.04);
}

body.about-page .about-hero::before,
body.about-page .about-statement-panel::before,
body.about-page .about-card::before,
body.about-page .about-expect-panel::before,
body.about-page .about-lore-panel::before,
body.about-page .about-contact-panel::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(224,163,57,0.13);
  border-radius:3px;
  pointer-events:none;
}

body.about-page .about-hero > *,
body.about-page .about-statement-panel > *,
body.about-page .about-card > *,
body.about-page .about-expect-panel > *,
body.about-page .about-lore-panel > *,
body.about-page .about-contact-panel > *{
  position:relative;
  z-index:1;
}

body.about-page .about-hero{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(260px, 420px);
  gap:28px;
  align-items:center;
  min-height:430px;
  margin-bottom:20px;
  padding:clamp(28px, 4vw, 58px);
  overflow:hidden;
}

body.about-page .about-hero::after{
  content:"";
  position:absolute;
  inset:-18% -12% auto auto;
  width:520px;
  height:520px;
  background:radial-gradient(circle, rgba(226,181,69,0.16), transparent 68%);
  pointer-events:none;
}

body.about-page .about-hero .kicker,
body.about-page .about-statement-panel .kicker,
body.about-page .about-expect-panel .kicker,
body.about-page .about-lore-panel .kicker{
  color:#f0c36a;
  letter-spacing:0.18em;
}

body.about-page .about-hero h1{
  max-width:980px;
  margin:8px 0 14px;
  color:#f9e9c0;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(3.1rem, 5.1vw, 6.45rem);
  line-height:0.9;
  text-transform:uppercase;
  text-shadow:0 3px 4px rgba(0,0,0,0.9), 0 0 18px rgba(230,169,60,0.18);
}

body.about-page .about-hero p,
body.about-page .about-statement-panel p,
body.about-page .about-expect-panel p,
body.about-page .about-lore-panel p,
body.about-page .about-contact-panel p{
  margin:0;
  color:#e8dbc0;
  font-size:1rem;
  line-height:1.58;
}

body.about-page .about-hero p{
  max-width:720px;
  font-size:1.08rem;
}

body.about-page .about-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

body.about-page .about-actions .btn{
  min-width:180px;
}

body.about-page .about-crest-card{
  display:grid;
  place-items:center;
  min-height:320px;
  border:1px solid rgba(212,153,54,0.30);
  border-radius:8px;
  background:
    radial-gradient(circle at 50% 24%, rgba(227,185,77,0.20), transparent 55%),
    linear-gradient(145deg, rgba(62,38,15,0.62), rgba(0,0,0,0.78) 66%);
  box-shadow:0 18px 60px rgba(0,0,0,0.38);
  overflow:hidden;
}

body.about-page .about-crest-card img{
  width:min(78%, 280px);
  max-height:240px;
  object-fit:contain;
  filter:drop-shadow(0 14px 22px rgba(0,0,0,0.65));
}

body.about-page .about-ledger-panel{
  display:grid;
  gap:10px;
}

body.about-page .about-ledger-panel div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#d7c9a8;
  font-size:0.88rem;
}

body.about-page .about-ledger-panel div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

body.about-page .about-ledger-panel b{
  color:#f4ce70;
}

body.about-page .about-statement-panel{
  margin-bottom:20px;
  padding:24px;
}

body.about-page .about-statement-panel h2,
body.about-page .about-expect-panel h2,
body.about-page .about-lore-panel h2,
body.about-page .about-contact-panel h2{
  margin:0 0 10px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(1.6rem, 2.5vw, 2.55rem);
  line-height:1.02;
}

body.about-page .about-card-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-bottom:20px;
}

body.about-page .about-card{
  min-height:210px;
  padding:22px;
}

body.about-page .about-card span{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  margin-bottom:18px;
  border:1px solid rgba(212,153,54,0.32);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(226,184,74,0.30), rgba(0,0,0,0.38));
  color:#f8d46f;
  font-weight:950;
}

body.about-page .about-card h2{
  margin:0 0 8px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.38rem;
}

body.about-page .about-card p{
  margin:0;
  color:#d7c9a8;
  line-height:1.5;
}

body.about-page .about-expect-panel{
  display:grid;
  grid-template-columns:minmax(0, 0.86fr) minmax(0, 1.14fr);
  gap:22px;
  align-items:start;
  margin-bottom:20px;
  padding:24px;
}

body.about-page .about-check-list{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

body.about-page .about-check-list li{
  position:relative;
  min-height:38px;
  padding:9px 12px 9px 34px;
  border:1px solid rgba(212,153,54,0.15);
  border-radius:6px;
  background:rgba(0,0,0,0.24);
  color:#e5d8ba;
  line-height:1.35;
}

body.about-page .about-check-list li::before{
  content:"";
  position:absolute;
  left:13px;
  top:14px;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.22);
}

body.about-page .about-split-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
  margin-bottom:20px;
}

body.about-page .about-lore-panel{
  min-height:260px;
  padding:24px;
}

body.about-page .about-lore-panel p + p{
  margin-top:12px;
}

body.about-page .about-contact-panel{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:24px;
}

body.about-page .about-contact-panel .btn{
  flex:0 0 auto;
}

body.about-page .footer{
  display:none;
}

@media (max-width:1300px){
  body.about-page .about-hero,
  body.about-page .about-expect-panel{
    grid-template-columns:1fr;
  }

  body.about-page .about-crest-card{
    min-height:220px;
  }
}

@media (max-width:920px){
  body.about-page .about-content-panel{
    min-height:0;
  }

  body.about-page .about-hero{
    min-height:0;
  }

  body.about-page .about-card-grid,
  body.about-page .about-split-grid{
    grid-template-columns:1fr;
  }

  body.about-page .about-card,
  body.about-page .about-lore-panel{
    min-height:0;
  }

  body.about-page .about-contact-panel{
    display:grid;
    justify-items:start;
  }
}

@media (max-width:560px){
  body.about-page .about-content-panel,
  body.about-page .about-hero,
  body.about-page .about-statement-panel,
  body.about-page .about-card,
  body.about-page .about-expect-panel,
  body.about-page .about-lore-panel,
  body.about-page .about-contact-panel{
    padding:18px;
  }

  body.about-page .about-hero h1{
    font-size:2.5rem;
  }

  body.about-page .about-hero p,
  body.about-page .about-statement-panel p,
  body.about-page .about-expect-panel p,
  body.about-page .about-lore-panel p,
  body.about-page .about-contact-panel p{
    font-size:0.95rem;
  }

  body.about-page .about-actions .btn,
  body.about-page .about-contact-panel .btn{
    width:100%;
    min-width:0;
  }

  body.about-page .about-crest-card{
    min-height:180px;
  }

  body.about-page .about-crest-card img{
    max-height:150px;
  }
}

/* MOBILE GUIDE ACCORDIONS - compact overview for Help and About */
body.help-page .mobile-overview-item > summary,
body.about-page .mobile-overview-item > summary{
  position:relative;
  z-index:2;
  list-style:none;
  cursor:pointer;
}

body.help-page .mobile-overview-item > summary::-webkit-details-marker,
body.about-page .mobile-overview-item > summary::-webkit-details-marker{
  display:none;
}

body.help-page details.help-guide-card{
  display:block;
}

body.help-page .help-guide-card > summary{
  display:grid;
  grid-template-columns:58px minmax(0, 1fr);
  gap:14px;
  align-items:start;
}

body.help-page .help-guide-card .mobile-overview-title,
body.about-page .mobile-overview-title{
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:0.02em;
  line-height:1.05;
}

body.help-page .help-guide-card .mobile-overview-body{
  padding-left:72px;
}

body.about-page details.about-expect-panel{
  display:block;
}

body.about-page .about-expect-panel .mobile-overview-body{
  display:grid;
  grid-template-columns:minmax(0, 0.86fr) minmax(0, 1.14fr);
  gap:22px;
  align-items:start;
}

body.about-page .about-statement-panel > summary,
body.about-page .about-card > summary,
body.about-page .about-expect-panel > summary,
body.about-page .about-lore-panel > summary{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}

body.about-page .mobile-overview-index{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border:1px solid rgba(212,153,54,0.32);
  border-radius:8px;
  background:linear-gradient(180deg, rgba(226,184,74,0.30), rgba(0,0,0,0.38));
  color:#f8d46f;
  font-weight:950;
}

@media (max-width:760px){
  body.help-page .help-game-shell{
    padding:10px;
  }

  body.help-page .help-guide-panel{
    display:none;
  }

  body.help-page .help-content-panel{
    padding:12px;
  }

  body.help-page .help-hero{
    margin-bottom:12px;
  }

  body.help-page .help-hero h1{
    font-size:clamp(2rem, 11vw, 2.45rem);
  }

  body.help-page .help-hero p{
    font-size:0.94rem;
  }

  body.help-page .help-art{
    display:none;
  }

  body.help-page .help-card-grid,
  body.about-page .about-card-grid,
  body.about-page .about-split-grid{
    gap:10px;
    margin-bottom:12px;
  }

  body.help-page .mobile-overview-item,
  body.about-page .mobile-overview-item{
    min-height:0 !important;
    padding:0 !important;
    overflow:hidden;
  }

  body.help-page .mobile-overview-item > summary,
  body.about-page .mobile-overview-item > summary{
    min-height:54px;
    display:flex;
    align-items:center;
    gap:12px;
    margin:0;
    padding:12px 44px 12px 14px;
  }

  body.help-page .mobile-overview-item > summary::after,
  body.about-page .mobile-overview-item > summary::after{
    content:"+";
    position:absolute;
    right:16px;
    top:50%;
    width:24px;
    height:24px;
    display:grid;
    place-items:center;
    transform:translateY(-50%);
    border:1px solid rgba(212,153,54,0.28);
    border-radius:50%;
    color:#f0c36a;
    font-weight:900;
  }

  body.help-page .mobile-overview-item[open] > summary::after,
  body.about-page .mobile-overview-item[open] > summary::after{
    content:"-";
  }

  body.help-page .help-guide-card > summary{
    grid-template-columns:none;
  }

  body.help-page .help-card-icon,
  body.about-page .mobile-overview-index{
    width:34px;
    height:34px;
    flex:0 0 34px;
    font-size:0.75rem;
  }

  body.help-page .help-guide-card .mobile-overview-title,
  body.about-page .mobile-overview-title{
    font-size:1rem;
  }

  body.help-page .mobile-overview-body,
  body.about-page .mobile-overview-body{
    padding:0 14px 14px;
  }

  body.help-page .help-guide-card .mobile-overview-body{
    padding-left:14px;
  }

  body.help-page .mobile-overview-body > h2,
  body.about-page .about-card .mobile-overview-body > h2,
  body.about-page .about-statement-panel .mobile-overview-body > h2,
  body.about-page .about-expect-panel .mobile-overview-body > div > h2,
  body.about-page .about-lore-panel .mobile-overview-body > h2{
    display:none;
  }

  body.about-page .about-archive-panel{
    display:none;
  }

  body.about-page .about-content-panel{
    padding:12px;
  }

  body.about-page .about-hero{
    margin-bottom:12px;
    padding:18px;
  }

  body.about-page .about-hero h1{
    font-size:clamp(2rem, 11vw, 2.45rem);
  }

  body.about-page .about-crest-card{
    display:none;
  }

  body.about-page .about-expect-panel .mobile-overview-body{
    display:block;
  }

  body.about-page .about-check-list{
    margin-top:12px;
  }

  body.about-page .about-contact-panel{
    padding:16px;
  }
}

/* LEGAL - readable codex game UI */
body.legal-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.86), rgba(0,0,0,0.34) 26%, rgba(0,0,0,0.20) 58%, rgba(0,0,0,0.80)),
    radial-gradient(circle at 78% 18%, rgba(229,172,62,0.14), transparent 24rem),
    radial-gradient(circle at 18% 82%, rgba(42,174,202,0.12), transparent 20rem),
    url("../img/backgrounds/BG03.png") center / cover fixed,
    #050403;
}

body.legal-page .legal-game-shell,
body.legal-page .legal-index-panel,
body.legal-page .legal-codex-panel,
body.legal-page .legal-panel-block{
  min-width:0;
}

body.legal-page .legal-game-shell{
  display:grid;
  grid-template-columns:300px minmax(0, 1fr);
  gap:24px;
  min-height:calc(100vh - 92px);
  padding:24px;
}

body.legal-page .legal-index-panel,
body.legal-page .legal-codex-panel,
body.legal-page .legal-panel-block{
  position:relative;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:6px;
  background:
    linear-gradient(135deg, rgba(65,38,16,0.42), rgba(7,5,4,0.86) 56%),
    rgba(5,4,3,0.84);
  box-shadow:0 20px 70px rgba(0,0,0,0.42), inset 0 0 0 1px rgba(255,219,117,0.04);
}

body.legal-page .legal-index-panel::before,
body.legal-page .legal-codex-panel::before,
body.legal-page .legal-panel-block::before{
  content:"";
  position:absolute;
  inset:7px;
  border:1px solid rgba(224,163,57,0.12);
  border-radius:3px;
  pointer-events:none;
}

body.legal-page .legal-index-panel > *,
body.legal-page .legal-codex-panel > *,
body.legal-page .legal-panel-block > *{
  position:relative;
  z-index:1;
}

body.legal-page .legal-index-panel{
  align-self:start;
  min-height:720px;
  padding:18px;
}

body.legal-page .legal-brand-card{
  display:grid;
  place-items:center;
  min-height:150px;
  margin-bottom:16px;
  border:1px solid rgba(212,153,54,0.28);
  border-radius:8px;
  background:radial-gradient(circle at 50% 20%, rgba(220,166,56,0.16), rgba(0,0,0,0.68) 62%);
  overflow:hidden;
}

body.legal-page .legal-brand-card img{
  width:min(78%, 220px);
  max-height:120px;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,0.6));
}

body.legal-page .legal-panel-block{
  margin-bottom:16px;
  padding:14px;
  background:rgba(0,0,0,0.22);
  box-shadow:none;
}

body.legal-page .legal-panel-block h2{
  margin:0 0 12px;
  color:#f2c35e;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.legal-page .legal-link-list{
  display:grid;
}

body.legal-page .legal-link-list a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 10px 0 28px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#eadfc8;
  font-size:0.9rem;
  font-weight:850;
  text-decoration:none;
}

body.legal-page .legal-link-list a:last-child{
  border-bottom:0;
}

body.legal-page .legal-link-list a::before{
  content:"";
  position:absolute;
  left:8px;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.22);
}

body.legal-page .legal-link-list a[aria-current="page"]{
  background:linear-gradient(90deg, rgba(212,153,54,0.26), rgba(212,153,54,0.04));
  color:#fff4d2;
}

body.legal-page .legal-summary-card{
  display:grid;
  gap:10px;
}

body.legal-page .legal-summary-card div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#d7c9a8;
  font-size:0.88rem;
}

body.legal-page .legal-summary-card div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

body.legal-page .legal-summary-card b{
  color:#f4ce70;
}

body.legal-page .legal-support-card p{
  margin:0 0 14px;
  color:#d7c9a8;
  font-size:0.88rem;
  line-height:1.45;
}

body.legal-page .legal-support-card .btn{
  min-height:38px;
  width:100%;
}

body.legal-page .legal-codex-panel{
  padding:clamp(24px, 3vw, 46px);
  background:
    radial-gradient(circle at 92% 4%, rgba(227,185,77,0.14), transparent 22rem),
    linear-gradient(135deg, rgba(33,22,12,0.64), rgba(5,5,4,0.84) 62%);
}

body.legal-page .legal-codex-panel .kicker{
  color:#f0c36a;
  letter-spacing:0.18em;
}

body.legal-page .legal-codex-panel h1{
  max-width:1020px;
  margin:8px 0 18px;
  color:#f9e9c0;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.65rem, 4.5vw, 5.8rem);
  line-height:0.94;
  text-transform:uppercase;
  overflow-wrap:anywhere;
  hyphens:auto;
  text-shadow:0 3px 4px rgba(0,0,0,0.9), 0 0 18px rgba(230,169,60,0.16);
}

body.legal-page .legal-codex-panel h2{
  margin:30px 0 10px;
  color:#f8e8bd;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(1.35rem, 2vw, 1.9rem);
  line-height:1.08;
}

body.legal-page .legal-codex-panel h3{
  margin:20px 0 8px;
  color:#f3d28a;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.08rem;
}

body.legal-page .legal-codex-panel p,
body.legal-page .legal-codex-panel li{
  max-width:980px;
  color:#e1d5bb;
  font-size:1rem;
  line-height:1.66;
}

body.legal-page .legal-codex-panel p{
  margin:0 0 13px;
}

body.legal-page .legal-codex-panel ul{
  display:grid;
  gap:7px;
  max-width:980px;
  margin:8px 0 18px;
  padding:0;
  list-style:none;
}

body.legal-page .legal-codex-panel li{
  position:relative;
  padding-left:24px;
}

body.legal-page .legal-codex-panel li::before{
  content:"";
  position:absolute;
  left:2px;
  top:0.78em;
  width:8px;
  height:8px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 10px rgba(226,185,78,0.20);
}

body.legal-page .legal-codex-panel a{
  color:#f0c36a;
  font-weight:800;
  text-decoration:none;
}

body.legal-page .legal-codex-panel a:hover,
body.legal-page .legal-codex-panel a:focus-visible{
  color:#ffe09b;
}

body.legal-page .footer{
  display:none;
}

@media (max-width:1300px){
  body.legal-page .legal-game-shell{
    grid-template-columns:250px minmax(0, 1fr);
  }
}

@media (max-width:920px){
  body.legal-page .legal-game-shell{
    grid-template-columns:1fr;
    padding:16px;
  }

  body.legal-page .legal-codex-panel{
    order:1;
    min-height:0;
    padding:22px;
  }

  body.legal-page .legal-index-panel{
    order:2;
    min-height:0;
  }

  body.legal-page .legal-brand-card{
    min-height:96px;
  }

  body.legal-page .legal-brand-card img{
    width:min(70%, 180px);
    max-height:78px;
  }

  body.legal-page .legal-support-card{
    display:none;
  }
}

@media (max-width:560px){
  body.legal-page .legal-game-shell{
    padding:12px;
  }

  body.legal-page .legal-codex-panel,
  body.legal-page .legal-index-panel{
    padding:18px;
  }

  body.legal-page .legal-codex-panel h1{
    font-size:2.05rem;
    line-height:1;
  }

  body.legal-page .legal-codex-panel p,
  body.legal-page .legal-codex-panel li{
    font-size:0.95rem;
    line-height:1.6;
  }
}

/* BACKGROUND VISIBILITY BOOST - let scene art carry more of the UI */
body.home-page{
  --home-overlay-darkness:0.18;
  --home-overlay-glow:0.30;
}

body.home-page::after{
  background:
    linear-gradient(180deg, rgba(4,5,6,0.08) 0%, rgba(5,5,6,0.02) 28%, rgba(5,5,6,0.16) 100%),
    radial-gradient(900px 520px at 58% 0%, rgba(227,185,77,0.20), transparent 68%),
    radial-gradient(520px 420px at 9% 86%, rgba(95,214,233,0.16), transparent 70%),
    radial-gradient(620px 500px at 92% 32%, rgba(255,238,185,0.10), transparent 72%),
    linear-gradient(90deg, rgba(2,2,3,0.18), transparent 22%, transparent 72%, rgba(2,2,3,0.16));
}

body.home-page main#main::before{
  background:
    radial-gradient(760px 420px at 58% 12%, rgba(223,172,74,0.10), transparent 72%),
    linear-gradient(90deg, rgba(4,4,5,0.08), rgba(5,5,6,0.16) 32%, rgba(5,5,6,0.08));
}

body.shop-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.52), rgba(5,4,3,0.06) 30%, rgba(5,4,3,0.12) 72%, rgba(0,0,0,0.55)),
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.30)),
    url("../img/backgrounds/BG03.png") center / cover fixed,
    #030302;
}

body.shop-page::before{
  background-image:
    linear-gradient(90deg, rgba(0,0,0,0.16), transparent 22%, transparent 78%, rgba(0,0,0,0.18)),
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.16));
}

body.shop-page::after{
  background:
    radial-gradient(760px 360px at 54% 10%, rgba(227,185,77,0.18), transparent 70%),
    radial-gradient(520px 360px at 86% 72%, rgba(55,177,207,0.12), transparent 70%),
    linear-gradient(90deg, rgba(0,0,0,0.24), transparent 20%, transparent 80%, rgba(0,0,0,0.26));
}

body.shop-page main#main{
  background:
    linear-gradient(90deg, rgba(2,2,2,0.46), rgba(8,6,4,0.16) 26%, rgba(4,4,3,0.38)),
    rgba(4,4,3,0.28);
  box-shadow:0 22px 70px rgba(0,0,0,0.30);
}

body.shop-page .shop-game-shell{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.46) 0 290px, rgba(0,0,0,0.02) 290px),
    radial-gradient(680px 300px at 55% 8%, rgba(227,185,77,0.14), transparent 70%);
}

body.shop-page .shop-merchant-panel{
  background:linear-gradient(180deg, rgba(7,6,4,0.64), rgba(2,2,2,0.34));
}

body.shop-page .shop-panel-block,
body.shop-page .shop-merchant-brand{
  background:
    linear-gradient(180deg, rgba(29,17,9,0.52), rgba(5,5,4,0.40)),
    rgba(5,5,4,0.34);
}

body.product-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.54), rgba(5,4,3,0.08) 32%, rgba(5,4,3,0.14) 68%, rgba(0,0,0,0.56)),
    linear-gradient(180deg, rgba(0,0,0,0.10), rgba(0,0,0,0.30)),
    url("../img/backgrounds/BG08.png") center / cover fixed,
    #030302;
}

body.product-page::before{
  background-image:
    linear-gradient(90deg, rgba(0,0,0,0.18), transparent 22%, transparent 78%, rgba(0,0,0,0.20)),
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.16));
}

body.product-page::after{
  background:
    radial-gradient(760px 360px at 50% 10%, rgba(227,185,77,0.18), transparent 70%),
    radial-gradient(520px 360px at 18% 76%, rgba(55,177,207,0.12), transparent 70%),
    linear-gradient(90deg, rgba(0,0,0,0.26), transparent 18%, transparent 82%, rgba(0,0,0,0.28));
}

body.product-page main#main{
  background:
    linear-gradient(90deg, rgba(2,2,2,0.48), rgba(8,6,4,0.18) 26%, rgba(4,4,3,0.40)),
    rgba(4,4,3,0.30);
  box-shadow:0 22px 70px rgba(0,0,0,0.32);
}

body.product-page .product-inspection-shell{
  background:
    radial-gradient(760px 320px at 52% 6%, rgba(227,185,77,0.15), transparent 70%),
    linear-gradient(90deg, rgba(0,0,0,0.30), rgba(0,0,0,0.04) 52%, rgba(0,0,0,0.26));
}

body.library-page,
body.help-page,
body.contact-page,
body.thank-page,
body.about-page,
body.legal-page{
  background-blend-mode:normal;
}

body.library-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.58), rgba(0,0,0,0.08) 24%, rgba(0,0,0,0.06) 58%, rgba(0,0,0,0.54)),
    radial-gradient(circle at 72% 22%, rgba(229,172,62,0.18), transparent 28rem),
    url("../img/backgrounds/BG01.png") center / cover fixed,
    #050403;
}

body.help-page{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.58), rgba(0,0,0,0.10) 26%, rgba(0,0,0,0.08) 58%, rgba(0,0,0,0.56)),
    radial-gradient(circle at 82% 20%, rgba(52,188,220,0.16), transparent 24rem),
    radial-gradient(circle at 44% 8%, rgba(229,172,62,0.16), transparent 24rem),
    url("../img/backgrounds/BG05.png") center / cover fixed,
    #050403;
}

body.library-page::before,
body.help-page::before{
  background:
    linear-gradient(180deg, rgba(0,0,0,0.22), transparent 32%, rgba(0,0,0,0.42)),
    radial-gradient(circle at 10% 92%, rgba(26,131,142,0.14), transparent 18rem);
}

body.library-page::after,
body.help-page::after{
  box-shadow:inset 0 0 130px rgba(0,0,0,0.58);
}

body.library-page main#main,
body.help-page main#main{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.34), transparent 38%, rgba(0,0,0,0.38)),
    rgba(4,4,3,0.12);
}

body.library-page .library-player-panel,
body.library-page .library-inventory-panel,
body.library-page .library-auth-card,
body.library-page .library-account-card,
body.library-page .library-results-panel,
body.library-page .library-empty-state,
body.library-page .library-activity-panel,
body.help-page .help-guide-panel,
body.help-page .help-content-panel,
body.help-page .help-guide-card,
body.help-page .help-faq-panel,
body.legal-page .legal-index-panel,
body.legal-page .legal-codex-panel,
body.legal-page .legal-panel-block{
  background:
    linear-gradient(135deg, rgba(65,38,16,0.30), rgba(7,5,4,0.66) 58%),
    rgba(5,4,3,0.58);
  box-shadow:0 20px 70px rgba(0,0,0,0.30), inset 0 0 0 1px rgba(255,219,117,0.04);
}

/* HOME FINAL - main hub */
body.home-page{
  --hub-width:min(1880px, calc(100vw - 96px));
  --hub-sidebar-width:clamp(220px, 14vw, 285px);
  min-height:100vh;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.62), rgba(0,0,0,0.08) 24%, rgba(0,0,0,0.06) 64%, rgba(0,0,0,0.56)),
    linear-gradient(180deg, rgba(0,0,0,0.10), rgba(0,0,0,0.42)),
    url("../img/backgrounds/BG10.jpg") center / cover fixed,
    #030302;
}

body.home-page::before{
  background:
    radial-gradient(780px 420px at 54% 13%, rgba(231,184,73,0.20), transparent 72%),
    radial-gradient(520px 460px at 10% 84%, rgba(73,195,211,0.14), transparent 72%),
    linear-gradient(90deg, rgba(0,0,0,0.24), transparent 24%, transparent 78%, rgba(0,0,0,0.28));
}

body.home-page::after{
  background:
    radial-gradient(920px 540px at 52% 10%, rgba(255,213,117,0.13), transparent 70%),
    linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.22)),
    linear-gradient(90deg, rgba(0,0,0,0.18), transparent 19%, transparent 82%, rgba(0,0,0,0.20));
}

body.home-page .site-header,
body.home-page main#main{
  width:var(--hub-width);
  max-width:var(--hub-width);
}

body.home-page .site-header{
  margin-top:10px;
  background:
    linear-gradient(180deg, rgba(8,6,4,0.90), rgba(4,4,3,0.82)),
    rgba(3,3,3,0.68);
  backdrop-filter:blur(8px);
}

body.home-page .nav{
  grid-template-columns:clamp(220px, 15vw, 300px) minmax(0, 1fr) auto;
}

body.home-page .nav-links{
  gap:clamp(22px, 2.1vw, 42px);
}

body.home-page .nav-links a:first-child::after{
  content:none;
}

body.home-page .nav-links a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:10px;
  height:2px;
  background:#c98e2f;
  box-shadow:0 0 10px rgba(227,185,77,0.45);
}

body.home-page main#main{
  min-height:calc(100vh - 92px);
  grid-template-columns:var(--hub-sidebar-width) minmax(0, 1fr);
  grid-template-rows:minmax(430px, 1fr) auto;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.50), rgba(0,0,0,0.06) 30%, rgba(0,0,0,0.18)),
    linear-gradient(180deg, rgba(0,0,0,0.10), rgba(0,0,0,0.30)),
    url("../img/backgrounds/BG10.jpg") center / cover,
    #050403;
  box-shadow:0 24px 80px rgba(0,0,0,0.34);
}

body.home-page main#main::before{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.42) 0 var(--hub-sidebar-width), rgba(0,0,0,0.03) var(--hub-sidebar-width)),
    radial-gradient(820px 420px at 52% 13%, rgba(226,187,88,0.18), transparent 70%),
    radial-gradient(520px 360px at 84% 26%, rgba(255,231,168,0.08), transparent 72%);
}

body.home-page .home-game-sidebar{
  background:
    linear-gradient(180deg, rgba(7,6,4,0.58), rgba(2,2,2,0.26)),
    rgba(5,4,3,0.18);
}

body.home-page .home-side-nav,
body.home-page .home-side-group{
  background:rgba(5,5,4,0.34);
  backdrop-filter:blur(3px);
}

body.home-page .hero{
  background:
    linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.06) 56%, rgba(0,0,0,0.56) 82%, rgba(0,0,0,0.72) 100%),
    linear-gradient(90deg, rgba(0,0,0,0.16), transparent 22%, transparent 78%, rgba(0,0,0,0.12));
}

body.home-page .hero::before{
  background:
    radial-gradient(560px 300px at 50% 16%, rgba(250,209,106,0.18), transparent 72%),
    radial-gradient(540px 320px at 84% 28%, rgba(255,223,142,0.10), transparent 70%),
    linear-gradient(180deg, rgba(0,0,0,0.00), rgba(0,0,0,0.12) 68%, rgba(2,2,2,0.48));
}

body.home-page #home-shell .hero-grid{
  min-height:calc(100vh - 92px);
  grid-template-rows:minmax(430px, 1fr) auto;
}

body.home-page #home-shell .hero-grid > div:first-child{
  width:min(760px, 70%);
  max-width:760px;
  padding:clamp(82px, 8vh, 124px) clamp(28px, 2.8vw, 56px) clamp(24px, 3vh, 42px);
  border-color:rgba(227,178,71,0.30);
  background:
    linear-gradient(180deg, rgba(22,14,8,0.38), rgba(5,4,3,0.24)),
    radial-gradient(420px 180px at 50% 0%, rgba(227,178,71,0.12), transparent 70%);
  backdrop-filter:blur(1.5px);
}

body.home-page #home-shell .hero-grid > div:first-child::before{
  opacity:0.50;
}

body.home-page #home-shell .hero-grid > div:first-child:has(.home-brand-logo[hidden])::after{
  top:clamp(4px, 1.2vh, 14px);
  width:clamp(230px, 17vw, 340px);
  height:clamp(88px, 10vh, 134px);
}

body.home-page .home-brand-logo{
  max-height:clamp(86px, 9vh, 128px);
}

body.home-page h1{
  max-width:700px;
  font-size:clamp(2.1rem, 3.4vw, 4.45rem);
  letter-spacing:0;
}

body.home-page .hero p{
  width:min(560px, 100%);
  color:#fff3d3;
  font-size:clamp(0.94rem, 0.95vw, 1.08rem);
}

body.home-page .hero-actions .btn{
  min-width:clamp(190px, 13vw, 260px);
}

body.home-page #home-shell #home-featured-wrap{
  padding:0 clamp(14px, 1.4vw, 24px) clamp(14px, 1.35vw, 24px);
}

body.home-page .home-showcase{
  grid-template-rows:34px 34px minmax(0, 1fr);
  gap:7px 0;
  padding:clamp(12px, 1vw, 18px);
  border-color:rgba(227,178,71,0.46);
  background:
    linear-gradient(180deg, rgba(17,11,6,0.70), rgba(3,3,3,0.58)),
    radial-gradient(620px 160px at 50% 0%, rgba(227,178,71,0.12), transparent 72%);
  backdrop-filter:blur(2px);
}

body.home-page .home-showcase__grid{
  grid-template-columns:repeat(6, minmax(116px, 1fr));
  gap:clamp(10px, 0.85vw, 16px);
}

body.home-page .home-showcase-card{
  min-height:clamp(154px, 17vh, 212px);
  background:
    linear-gradient(180deg, rgba(34,18,9,0.56), rgba(4,4,4,0.78)),
    radial-gradient(150px 90px at 50% 0%, rgba(231,174,61,0.14), transparent 70%);
}

body.home-page .home-showcase-card__media{
  aspect-ratio:16 / 9;
}

body.home-page .home-showcase-card h3{
  font-size:clamp(0.62rem, 0.66vw, 0.78rem);
}

body.home-page .home-showcase-card__meta{
  margin-bottom:clamp(8px, 0.8vh, 14px);
}

@media (max-width:1499px) and (min-width:1120px){
  body.home-page{
    --hub-width:min(1540px, calc(100vw - 48px));
    --hub-sidebar-width:220px;
  }

  body.home-page main#main{
    min-height:calc(100vh - 82px);
    grid-template-rows:minmax(360px, 1fr) auto;
  }

  body.home-page #home-shell .hero-grid{
    min-height:calc(100vh - 82px);
    grid-template-rows:minmax(360px, 1fr) auto;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    width:min(620px, 72%);
    padding:64px 28px 22px;
  }

  body.home-page h1{
    font-size:clamp(1.9rem, 3vw, 2.8rem);
  }

  body.home-page .home-showcase-card{
    min-height:138px;
  }
}

@media (max-width:1119px){
  body.home-page{
    --hub-width:100vw;
  }

  body.home-page main#main{
    min-height:0;
    background:
      linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.44)),
      url("../img/backgrounds/BG10.jpg") center / cover,
      #050403;
  }

  body.home-page #home-shell .hero-grid{
    min-height:0;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    width:100%;
    max-width:none;
  }
}

/* HOME SPLIT FINAL - side menu navigation + archive shell */
body.home-page{
  --hub-width:min(1880px, calc(100vw - 96px));
  --hub-sidebar-width:clamp(245px, 15vw, 315px);
  background:
    linear-gradient(90deg, rgba(0,0,0,0.56), rgba(0,0,0,0.08) 26%, rgba(0,0,0,0.08) 68%, rgba(0,0,0,0.56)),
    linear-gradient(180deg, rgba(0,0,0,0.16), rgba(0,0,0,0.44)),
    url("../img/backgrounds/BG03.png") center / cover fixed,
    #030302;
}

body.home-page::before{
  background:
    radial-gradient(820px 420px at 56% 14%, rgba(231,184,73,0.14), transparent 74%),
    radial-gradient(560px 420px at 11% 82%, rgba(73,195,211,0.12), transparent 72%),
    linear-gradient(90deg, rgba(0,0,0,0.20), transparent 26%, transparent 78%, rgba(0,0,0,0.22));
}

body.home-page::after{
  background:
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.26)),
    radial-gradient(980px 520px at 52% 9%, rgba(255,213,117,0.11), transparent 72%);
}

body.home-page .site-header{
  background:
    linear-gradient(180deg, rgba(8,6,4,0.94), rgba(4,4,3,0.88)),
    rgba(3,3,3,0.78);
}

body.home-page .nav{
  grid-template-columns:minmax(0, 1fr) auto;
  min-height:74px;
}

body.home-page .brand{
  justify-self:start;
  gap:14px;
}

body.home-page .brand::before{
  flex-basis:76px;
  width:76px;
  height:50px;
}

body.home-page .brand-name{
  font-size:1.15rem;
  letter-spacing:0.01em;
}

body.home-page .nav-links{
  display:none;
}

body.home-page main#main{
  min-height:calc(100vh - 106px);
  grid-template-columns:var(--hub-sidebar-width) minmax(0, 1fr);
  grid-template-rows:minmax(470px, 1fr) auto;
  gap:0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.48), rgba(0,0,0,0.10) 32%, rgba(0,0,0,0.22)),
    linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.36)),
    url("../img/backgrounds/BG03.png") center / cover,
    #050403;
}

body.home-page main#main::before{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.46) 0 var(--hub-sidebar-width), rgba(0,0,0,0.04) var(--hub-sidebar-width)),
    radial-gradient(820px 420px at 52% 13%, rgba(226,187,88,0.12), transparent 70%);
}

body.home-page .home-game-sidebar{
  background:
    linear-gradient(180deg, rgba(7,6,4,0.66), rgba(2,2,2,0.38)),
    rgba(5,4,3,0.26);
}

body.home-page .home-side-nav{
  display:grid;
  background:rgba(5,5,4,0.40);
}

body.home-page .home-side-nav a{
  min-height:clamp(42px, 4.5vh, 54px);
  padding:0 16px;
  font-size:clamp(0.82rem, 0.82vw, 0.98rem);
}

body.home-page .hero{
  background:
    linear-gradient(180deg, rgba(0,0,0,0.02) 0%, rgba(0,0,0,0.08) 58%, rgba(0,0,0,0.42) 84%, rgba(0,0,0,0.56) 100%);
}

body.home-page .hero::before{
  background:
    radial-gradient(600px 320px at 50% 18%, rgba(250,209,106,0.12), transparent 74%),
    linear-gradient(180deg, rgba(0,0,0,0.00), rgba(0,0,0,0.12) 68%, rgba(2,2,2,0.36));
}

body.home-page #home-shell .hero-grid{
  min-height:calc(100vh - 106px);
  grid-template-rows:minmax(470px, 1fr) auto;
  gap:clamp(18px, 2vh, 30px);
  padding:clamp(24px, 2.4vw, 46px) clamp(18px, 2vw, 36px) clamp(18px, 1.8vw, 32px);
}

body.home-page #home-shell .hero-grid > div:first-child{
  width:min(780px, 76%);
  min-height:clamp(430px, 46vh, 600px);
  display:grid;
  align-content:center;
  padding:clamp(96px, 9vh, 138px) clamp(34px, 3vw, 64px) clamp(34px, 4vh, 58px);
  border-color:rgba(227,178,71,0.36);
  background:
    linear-gradient(180deg, rgba(16,14,10,0.20), rgba(5,4,3,0.36)),
    radial-gradient(460px 220px at 58% 9%, rgba(255,225,142,0.18), transparent 72%),
    url("../img/backgrounds/BG10.jpg") center / cover;
  box-shadow:
    0 22px 70px rgba(0,0,0,0.36),
    0 0 0 1px rgba(255,234,174,0.07) inset;
  backdrop-filter:none;
}

body.home-page #home-shell .hero-grid > div:first-child::before{
  opacity:0.44;
}

body.home-page #home-shell .hero-grid > div:first-child:has(.home-brand-logo[hidden])::after{
  top:clamp(12px, 2vh, 28px);
}

body.home-page #home-shell #home-featured-wrap{
  padding:0;
}

body.home-page .home-showcase{
  background:
    linear-gradient(180deg, rgba(17,11,6,0.70), rgba(3,3,3,0.60)),
    rgba(5,4,3,0.48);
}

body.home-page .home-showcase-card{
  background:
    linear-gradient(180deg, rgba(34,18,9,0.62), rgba(4,4,4,0.82)),
    radial-gradient(150px 90px at 50% 0%, rgba(231,174,61,0.14), transparent 70%);
}

@media (max-width:1499px) and (min-width:1120px){
  body.home-page{
    --hub-width:min(1540px, calc(100vw - 48px));
    --hub-sidebar-width:230px;
  }

  body.home-page .nav{
    min-height:64px;
  }

  body.home-page #home-shell .hero-grid{
    min-height:calc(100vh - 94px);
    grid-template-rows:minmax(390px, 1fr) auto;
    padding:24px 22px 20px;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    width:min(700px, 76%);
    min-height:390px;
    padding:78px 32px 30px;
  }
}

@media (max-width:1119px){
  body.home-page .nav-links{
    display:none;
  }

  body.home-page main#main{
    background:
      linear-gradient(180deg, rgba(0,0,0,0.14), rgba(0,0,0,0.42)),
      url("../img/backgrounds/BG03.png") center / cover,
      #050403;
  }

  body.home-page #home-shell .hero-grid{
    padding:18px 12px;
  }

  body.home-page #home-shell .hero-grid > div:first-child{
    width:100%;
    min-height:420px;
    background:
      linear-gradient(180deg, rgba(16,14,10,0.20), rgba(5,4,3,0.38)),
      radial-gradient(460px 220px at 58% 9%, rgba(255,225,142,0.18), transparent 72%),
      url("../img/backgrounds/BG10.jpg") center / cover;
  }
}

/* HOME HERO BACKGROUND LOCK - BG03 stays outside, BG10 owns the center hero */
body.home-page #home-shell.hero,
body.home-page #home-shell{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.56), rgba(0,0,0,0.12) 18%, rgba(0,0,0,0.08) 66%, rgba(0,0,0,0.36)),
    linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.08) 42%, rgba(0,0,0,0.52) 100%),
    url("../img/backgrounds/BG10.jpg") center / cover no-repeat;
}

body.home-page #home-shell.hero::before,
body.home-page #home-shell::before{
  background:
    radial-gradient(760px 360px at 55% 16%, rgba(255,222,139,0.18), transparent 72%),
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.28) 78%, rgba(0,0,0,0.48));
}

body.home-page #home-shell .hero-grid > div:first-child{
  background:
    linear-gradient(180deg, rgba(15,12,8,0.26), rgba(4,3,2,0.36)),
    radial-gradient(520px 260px at 58% 10%, rgba(255,226,147,0.16), transparent 72%);
}

/* HOME HERO CARD COMPONENT - edit this block for the center card */
body.home-page{
  --home-hero-card-bg:url("/assets/img/backgrounds/BG10.jpg?v=20260710-11");
  --home-hero-card-width:min(1180px, calc(100% - clamp(48px, 6vw, 120px)));
  --home-hero-card-min-height:clamp(500px, 50vh, 700px);
  --home-hero-card-padding-y:clamp(112px, 10vh, 160px);
  --home-hero-card-padding-x:clamp(44px, 5vw, 92px);
}

body.home-page #home-shell.hero,
body.home-page #home-shell{
  background:transparent;
}

body.home-page #home-shell.hero::before,
body.home-page #home-shell::before{
  background:
    radial-gradient(900px 480px at 55% 18%, rgba(235,188,82,0.13), transparent 72%),
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.22) 70%, rgba(0,0,0,0.42));
}

body.home-page #home-shell .hero-grid{
  align-items:start;
  justify-items:center;
  grid-template-rows:minmax(var(--home-hero-card-min-height), auto) auto;
  gap:clamp(28px, 3vh, 54px);
}

body.home-page #home-shell .hero-grid > .home-hero-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:var(--home-hero-card-width);
  max-width:1180px;
  min-height:var(--home-hero-card-min-height);
  justify-self:center;
  align-self:center;
  display:grid;
  align-content:center;
  text-align:center;
  padding:var(--home-hero-card-padding-y) var(--home-hero-card-padding-x) clamp(48px, 5vh, 78px);
  border:1px solid rgba(230,185,84,0.34);
  border-radius:6px;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.46), rgba(0,0,0,0.10) 24%, rgba(0,0,0,0.10) 70%, rgba(0,0,0,0.42)),
    linear-gradient(180deg, rgba(8,7,5,0.10), rgba(5,4,3,0.24) 54%, rgba(2,2,2,0.46)),
    radial-gradient(680px 320px at 58% 14%, rgba(255,226,147,0.18), transparent 72%),
    var(--home-hero-card-bg) center / cover no-repeat;
  box-shadow:
    0 30px 90px rgba(0,0,0,0.44),
    0 0 0 1px rgba(255,238,176,0.07) inset,
    0 0 42px rgba(218,158,55,0.12);
}

body.home-page #home-shell .hero-grid > .home-hero-card::before{
  content:"";
  position:absolute;
  inset:20px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(240,197,91,0.22);
  border-radius:4px;
  background:
    linear-gradient(135deg, rgba(255,225,147,0.12), transparent 17% 83%, rgba(255,225,147,0.10)),
    radial-gradient(620px 220px at 55% 0%, rgba(255,226,147,0.12), transparent 74%);
  opacity:0.86;
}

body.home-page #home-shell .hero-grid > .home-hero-card > :not(.home-corner){
  position:relative;
  z-index:1;
}

body.home-page #home-shell .hero-grid > .home-hero-card .home-corner{
  z-index:2;
}

body.home-page #home-shell .hero-grid > .home-hero-card:has(.home-brand-logo[hidden])::after{
  content:"";
  position:absolute;
  top:clamp(22px, 3.2vh, 46px);
  left:50%;
  width:clamp(230px, 20vw, 390px);
  height:clamp(86px, 10vh, 142px);
  z-index:2;
  pointer-events:none;
  transform:translateX(-50%);
  background-image:url("/assets/img/logo/logo.png");
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  filter:
    drop-shadow(0 16px 24px rgba(0,0,0,0.54))
    drop-shadow(0 0 20px rgba(227,185,77,0.28));
}

@media (max-width:1499px) and (min-width:1120px){
  body.home-page{
    --home-hero-card-width:min(980px, calc(100% - 44px));
    --home-hero-card-min-height:clamp(420px, 48vh, 560px);
    --home-hero-card-padding-y:clamp(84px, 9vh, 122px);
    --home-hero-card-padding-x:clamp(32px, 4vw, 66px);
  }
}

@media (max-width:1119px){
  body.home-page{
    --home-hero-card-width:100%;
    --home-hero-card-min-height:420px;
    --home-hero-card-padding-y:92px;
    --home-hero-card-padding-x:22px;
  }

  body.home-page #home-shell .hero-grid > .home-hero-card::before{
    inset:12px;
  }
}

/* HOME FIELD BACKGROUND CLEANUP - remove the extra full-field image layer */
body.home-page main#main,
body.home-page main#main::before,
body.home-page #home-shell,
body.home-page #home-shell.hero,
body.home-page #home-shell::before,
body.home-page #home-shell.hero::before,
body.home-page #home-shell::after,
body.home-page .hero,
body.home-page .hero::before{
  background:none;
}

body.home-page #home-shell .hero-grid > .home-hero-card{
  background:
    linear-gradient(90deg, rgba(0,0,0,0.46), rgba(0,0,0,0.10) 24%, rgba(0,0,0,0.10) 70%, rgba(0,0,0,0.42)),
    linear-gradient(180deg, rgba(8,7,5,0.10), rgba(5,4,3,0.24) 54%, rgba(2,2,2,0.46)),
    radial-gradient(680px 320px at 58% 14%, rgba(255,226,147,0.18), transparent 72%),
    var(--home-hero-card-bg) center / cover no-repeat;
}

/* HOME HERO CARD FINAL - BG10 plus same edge treatment as latest releases */
body.home-page #home-shell .hero-grid > .home-hero-card{
  border:1px solid rgba(227,178,71,0.50);
  border-radius:6px;
  background-color:#050403;
  background-image:
    linear-gradient(180deg, rgba(17,11,6,0.36), rgba(3,3,3,0.32)),
    radial-gradient(520px 140px at 50% 0%, rgba(227,178,71,0.10), transparent 72%),
    url("/assets/img/backgrounds/BG10.jpg?v=20260710-11") !important;
  background-position:center, center, center !important;
  background-size:auto, auto, cover !important;
  background-repeat:no-repeat !important;
  box-shadow:
    0 18px 44px rgba(0,0,0,0.36),
    0 0 0 1px rgba(255,234,174,0.06) inset;
}

body.home-page #home-shell .hero-grid > .home-hero-card::before{
  inset:8px;
  border:1px solid rgba(227,178,71,0.16);
  border-radius:3px;
  background:none;
  opacity:1;
}

/* HOME HERO CARD WIDE FRAME - match latest releases card and expand width */
body.home-page{
  --home-hero-card-width:min(1320px, calc(100% - clamp(24px, 3.5vw, 72px)));
  --home-hero-card-min-height:clamp(520px, 54vh, 760px);
  --home-hero-card-padding-y:clamp(104px, 9vh, 150px);
  --home-hero-card-padding-x:clamp(44px, 5vw, 96px);
}

body.home-page #home-shell .hero-grid{
  grid-template-rows:minmax(var(--home-hero-card-min-height), auto) auto;
}

body.home-page #home-shell .hero-grid > .home-hero-card{
  width:var(--home-hero-card-width) !important;
  max-width:1320px !important;
  min-height:var(--home-hero-card-min-height) !important;
  padding:var(--home-hero-card-padding-y) var(--home-hero-card-padding-x) clamp(52px, 5vh, 84px) !important;
  border:1px solid rgba(227,178,71,0.50) !important;
  border-radius:6px !important;
  background-color:#050403 !important;
  background-image:
    linear-gradient(180deg, rgba(17,11,6,0.52), rgba(3,3,3,0.44)),
    radial-gradient(520px 140px at 50% 0%, rgba(227,178,71,0.10), transparent 72%),
    url("/assets/img/backgrounds/BG10.jpg?v=20260710-12") !important;
  background-position:center, center, center !important;
  background-size:auto, auto, cover !important;
  background-repeat:no-repeat !important;
  box-shadow:
    0 18px 44px rgba(0,0,0,0.36),
    0 0 0 1px rgba(255,234,174,0.06) inset !important;
}

body.home-page #home-shell .hero-grid > .home-hero-card::before{
  content:"";
  position:absolute;
  inset:8px !important;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(227,178,71,0.16) !important;
  border-radius:3px !important;
  background:none !important;
  opacity:1 !important;
}

@media (max-width:1499px) and (min-width:1120px){
  body.home-page{
    --home-hero-card-width:min(1180px, calc(100% - 32px));
    --home-hero-card-min-height:clamp(460px, 52vh, 640px);
    --home-hero-card-padding-y:clamp(86px, 8vh, 124px);
    --home-hero-card-padding-x:clamp(32px, 4vw, 74px);
  }
}

@media (max-width:1119px){
  body.home-page{
    --home-hero-card-width:100%;
    --home-hero-card-min-height:420px;
  }
}

/* HOME HERO CARD HEAVY FRAME - darker double-width outer frame */
body.home-page #home-shell .hero-grid > .home-hero-card{
  border:2px solid rgba(96,66,25,0.96) !important;
  box-shadow:
    0 0 0 4px rgba(5,3,2,0.88),
    0 0 0 7px rgba(183,127,40,0.38),
    0 18px 44px rgba(0,0,0,0.42),
    0 0 0 1px rgba(255,234,174,0.06) inset,
    0 0 0 8px rgba(6,4,3,0.42) inset,
    0 0 34px rgba(0,0,0,0.30) inset !important;
}

body.home-page #home-shell .hero-grid > .home-hero-card::before{
  inset:12px !important;
  border:2px solid rgba(18,11,5,0.72) !important;
  box-shadow:
    0 0 0 1px rgba(231,178,71,0.24),
    0 0 0 2px rgba(3,2,1,0.72) inset !important;
}

/* HOME SIDEBAR SHOP MATCH - same component rhythm as the other pages */
body.home-page{
  --hub-sidebar-width:290px;
}

body.home-page .home-game-sidebar.home-merchant-panel{
  min-height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  padding:22px !important;
  border-right:1px solid rgba(212,153,54,0.22) !important;
  background:linear-gradient(180deg, rgba(7,6,4,0.82), rgba(2,2,2,0.62)) !important;
  box-shadow:none !important;
}

body.home-page .home-game-sidebar.home-merchant-panel::before,
body.home-page .home-game-sidebar.home-merchant-panel::after{
  content:none !important;
}

body.home-page .home-side-brand.home-merchant-brand{
  min-height:150px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:1px solid rgba(212,153,54,0.28) !important;
  border-radius:8px !important;
  background:radial-gradient(circle at 50% 20%, rgba(220,166,56,0.16), rgba(0,0,0,0.68) 62%) !important;
  text-decoration:none !important;
  overflow:hidden !important;
}

body.home-page .home-side-brand.home-merchant-brand::after{
  content:none !important;
}

body.home-page .home-side-brand.home-merchant-brand img{
  display:block !important;
  width:min(78%, 220px) !important;
  height:auto !important;
  max-height:120px !important;
  object-fit:contain !important;
  object-position:center !important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,0.6)) !important;
}

body.home-page .home-panel-block{
  overflow:hidden;
  border:1px solid rgba(212,153,54,0.22);
  border-radius:4px;
  background:
    linear-gradient(180deg, rgba(29,17,9,0.68), rgba(5,5,4,0.58)),
    rgba(5,5,4,0.58);
}

body.home-page .home-panel-block h2{
  margin:0;
  padding:13px 16px 10px;
  border-bottom:1px solid rgba(212,153,54,0.18);
  color:#f0c36a;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.home-page .home-filter-list{
  display:grid !important;
  gap:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

body.home-page .home-filter-btn{
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:0 16px !important;
  border:0 !important;
  border-bottom:1px solid rgba(212,153,54,0.13) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#d7c28b !important;
  font-size:0.82rem !important;
  font-weight:750 !important;
  line-height:1.2 !important;
  text-align:left !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

body.home-page .home-filter-btn:last-child{
  border-bottom:0 !important;
}

body.home-page .home-filter-btn::before{
  content:"" !important;
  width:13px !important;
  height:13px !important;
  flex:0 0 13px !important;
  border-radius:3px !important;
  background:radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%) !important;
  box-shadow:0 0 10px rgba(226,185,78,0.22) !important;
}

body.home-page .home-filter-btn:hover,
body.home-page .home-filter-btn:focus-visible{
  color:#fff0bf !important;
  background:rgba(198,132,38,0.18) !important;
  outline:none !important;
}

body.home-page .home-filter-btn[aria-current="page"]{
  color:#fff0bf !important;
  background:linear-gradient(180deg, rgba(174,119,37,0.72), rgba(94,60,20,0.72)) !important;
}

body.home-page .home-bag-panel{
  margin-top:0;
  padding-bottom:16px;
  text-align:center;
}

body.home-page .home-bag-count{
  margin:18px 0;
  color:#f7d574;
  font-size:2.4rem;
  font-weight:900;
  line-height:1;
}

body.home-page .home-bag-panel .btn{
  width:calc(100% - 32px);
  justify-content:center;
  margin:0 auto;
}

body.home-page .home-game-sidebar .help-panel-block{
  margin-bottom:0;
  padding:14px;
  border:1px solid rgba(212,153,54,0.16);
  border-radius:6px;
  background:
    linear-gradient(180deg, rgba(29,17,9,0.34), rgba(0,0,0,0.16)),
    rgba(0,0,0,0.22);
}

body.home-page .home-game-sidebar .help-panel-block h2{
  margin:0 0 12px;
  color:#f2c35e;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

body.home-page .home-game-sidebar .help-topic-list{
  display:grid;
}

body.home-page .home-game-sidebar .help-topic-list a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 10px 0 28px;
  border-bottom:1px solid rgba(212,153,54,0.11);
  color:#eadfc8;
  font-size:0.9rem;
  font-weight:850;
  line-height:1.2;
  text-decoration:none;
}

body.home-page .home-game-sidebar .help-topic-list a:last-child{
  border-bottom:0;
}

body.home-page .home-game-sidebar .help-topic-list a::before{
  content:"";
  position:absolute;
  left:8px;
  width:10px;
  height:10px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f0c956, #704a16 70%);
  box-shadow:0 0 12px rgba(226,185,78,0.22);
}

body.home-page .home-game-sidebar .help-topic-list a:hover,
body.home-page .home-game-sidebar .help-topic-list a:focus-visible{
  color:#fff4d2;
  background:linear-gradient(90deg, rgba(212,153,54,0.20), rgba(212,153,54,0.04));
  outline:none;
}

body.home-page .home-game-sidebar .contact-address-panel{
  margin-top:auto;
}

body.home-page .home-game-sidebar .contact-address-panel p{
  display:grid;
  gap:4px;
  margin:0 0 12px;
  color:#d7c9a8;
  font-size:0.88rem;
  line-height:1.45;
}

body.home-page .home-game-sidebar .contact-address-panel p:last-child{
  margin-bottom:0;
}

body.home-page .home-game-sidebar .contact-address-panel b{
  color:#f0c36a;
  font-size:0.72rem;
  text-transform:uppercase;
}

body.home-page .home-game-sidebar .contact-address-panel a{
  color:#fff4d2;
  overflow-wrap:anywhere;
  text-decoration:none;
}

body.home-page .home-game-sidebar .contact-address-panel span{
  color:#d7c9a8;
}

@media (max-width:900px){
  body.home-page .home-game-sidebar.home-merchant-panel{
    border-right:0 !important;
    border-bottom:1px solid rgba(212,153,54,0.22) !important;
  }

  body.home-page .home-side-brand.home-merchant-brand,
  body.home-page .home-bag-panel{
    display:none !important;
  }

  body.home-page .home-filter-list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    padding:10px !important;
    gap:8px !important;
  }

  body.home-page .home-filter-btn{
    min-width:0 !important;
    min-height:38px !important;
    border:1px solid rgba(212,153,54,0.22) !important;
    border-radius:5px !important;
    font-size:0.76rem !important;
  }
}

/* SHARED SIDEBAR DROPDOWN NAV - all pages */
.site-sidebar-pages .site-sidebar-nav{
  display:grid;
}

.site-sidebar-pages .site-sidebar-section{
  border-bottom:1px solid rgba(212,153,54,0.13);
}

.site-sidebar-pages .site-sidebar-section:last-child{
  border-bottom:0;
}

.site-sidebar-pages .site-sidebar-tab{
  min-height:42px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  color:#d7c28b;
  font-size:0.82rem;
  font-weight:800;
  line-height:1.2;
  list-style:none;
  cursor:pointer;
  user-select:none;
}

.site-sidebar-pages .site-sidebar-tab::-webkit-details-marker{
  display:none;
}

.site-sidebar-pages .site-sidebar-tab::before{
  content:"";
  width:13px;
  height:13px;
  flex:0 0 13px;
  border-radius:3px;
  background:radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%);
  box-shadow:0 0 10px rgba(226,185,78,0.22);
}

.site-sidebar-pages .site-sidebar-tab::after{
  content:"";
  width:7px;
  height:7px;
  margin-left:auto;
  border-right:2px solid rgba(240,195,106,0.82);
  border-bottom:2px solid rgba(240,195,106,0.82);
  transform:rotate(45deg);
  transition:transform 0.16s ease, margin-top 0.16s ease;
}

.site-sidebar-pages .site-sidebar-tab:hover,
.site-sidebar-pages .site-sidebar-tab:focus-visible{
  color:#fff0bf;
  background:rgba(198,132,38,0.18);
  outline:none;
}

.site-sidebar-pages .site-sidebar-section[open] > .site-sidebar-tab{
  color:#fff0bf;
  background:linear-gradient(180deg, rgba(174,119,37,0.72), rgba(94,60,20,0.72));
}

.site-sidebar-pages .site-sidebar-section[open] > .site-sidebar-tab::after{
  margin-top:4px;
  transform:rotate(225deg);
}

.site-sidebar-pages .site-sidebar-subnav{
  display:grid;
  gap:4px;
  padding:9px 10px 12px 39px;
  background:
    linear-gradient(180deg, rgba(4,3,2,0.20), rgba(0,0,0,0.30)),
    rgba(0,0,0,0.10);
}

.site-sidebar-pages .site-sidebar-subnav a{
  min-height:32px;
  display:flex;
  align-items:center;
  padding:0 10px;
  border:1px solid transparent;
  border-radius:4px;
  color:#cdbb8b;
  font-size:0.78rem;
  font-weight:750;
  line-height:1.2;
  text-align:left;
  text-decoration:none;
}

.site-sidebar-pages .site-sidebar-subnav a:hover,
.site-sidebar-pages .site-sidebar-subnav a:focus-visible{
  color:#fff0bf;
  border-color:rgba(212,153,54,0.24);
  background:rgba(198,132,38,0.14);
  outline:none;
}

.site-sidebar-pages .site-sidebar-subnav a[aria-current="page"]{
  color:#fff4ca;
  border-color:rgba(227,185,77,0.34);
  background:rgba(198,132,38,0.22);
}

@media (max-width:900px){
  .site-sidebar-pages .site-sidebar-nav{
    padding:10px;
    gap:8px;
  }

  .site-sidebar-pages .site-sidebar-section{
    border:1px solid rgba(212,153,54,0.22);
    border-radius:5px;
    overflow:hidden;
  }

  .site-sidebar-pages .site-sidebar-tab{
    min-height:38px;
    font-size:0.76rem;
  }

  .site-sidebar-pages .site-sidebar-subnav{
    padding:8px 8px 10px 32px;
  }
}

/* STANDARDIZED SITE SIDEBAR - shared structure and behavior */
.site-sidebar-pages{
  padding:0 !important;
  overflow:hidden;
  border:1px solid rgba(212,153,54,0.34) !important;
  border-radius:6px !important;
  background:
    linear-gradient(180deg, rgba(31,20,10,0.90), rgba(5,4,3,0.94)),
    rgba(5,4,3,0.92) !important;
  box-shadow:
    0 14px 28px rgba(0,0,0,0.24),
    inset 0 0 22px rgba(212,153,54,0.035);
}

.site-sidebar-pages > h2{
  min-height:48px;
  margin:0 !important;
  display:flex;
  align-items:center;
  padding:0 16px !important;
  border-bottom:1px solid rgba(212,153,54,0.24);
  color:#efcf7d !important;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem !important;
  font-weight:800;
  letter-spacing:0;
  text-transform:uppercase;
}

.site-sidebar-pages .site-sidebar-nav{
  padding:0 !important;
  gap:0 !important;
}

.site-sidebar-pages .site-sidebar-section{
  margin:0 !important;
  border:0 !important;
  border-bottom:1px solid rgba(212,153,54,0.14) !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:hidden;
}

.site-sidebar-pages .site-sidebar-tab{
  min-height:46px !important;
  padding:0 16px !important;
  color:#deca94 !important;
  font-size:0.84rem !important;
  letter-spacing:0;
}

.site-sidebar-pages .site-sidebar-section[open] > .site-sidebar-tab{
  color:#fff2c3 !important;
  background:linear-gradient(180deg, rgba(153,101,29,0.78), rgba(92,57,18,0.82)) !important;
}

.site-sidebar-pages .site-sidebar-subnav{
  gap:2px !important;
  padding:8px 10px 10px 38px !important;
  background:rgba(0,0,0,0.26) !important;
}

.site-sidebar-pages .site-sidebar-subnav a{
  min-height:36px !important;
  padding:6px 10px !important;
  border-radius:4px !important;
  color:#d8c595 !important;
  font-size:0.8rem !important;
}

.site-sidebar-pages .site-sidebar-subnav a[aria-current="page"]{
  color:#fff4ca !important;
  border-color:rgba(227,185,77,0.42) !important;
  background:linear-gradient(90deg, rgba(174,119,37,0.32), rgba(91,58,19,0.22)) !important;
  box-shadow:inset 3px 0 0 #d8aa3e;
}

.site-sidebar-pages .site-sidebar-subnav a:focus-visible,
.site-sidebar-pages .site-sidebar-tab:focus-visible{
  outline:2px solid #edc45f !important;
  outline-offset:-3px;
}

.site-sidebar-mobile-toggle{
  display:none;
}

@media (max-width:900px){
  body.has-shared-sidebar .site-header .nav-links,
  body.has-shared-sidebar .site-header .nav-actions,
  body.has-shared-sidebar .site-header .mobile-menu{
    display:none !important;
  }

  aside:has(> .site-sidebar-pages){
    display:block !important;
    position:sticky !important;
    top:72px !important;
    z-index:45 !important;
    width:auto !important;
    min-height:0 !important;
    margin:10px 12px 0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  aside:has(> .site-sidebar-pages)::before,
  aside:has(> .site-sidebar-pages)::after,
  aside:has(> .site-sidebar-pages) > :not(.site-sidebar-pages){
    display:none !important;
  }

  aside:has(> .site-sidebar-pages) > .site-sidebar-pages{
    display:block !important;
    max-height:calc(100dvh - 90px);
    margin:0 !important;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:rgba(226,185,78,0.55) rgba(5,4,3,0.72);
  }

  .site-sidebar-pages > h2{
    min-height:48px;
    padding:0 !important;
  }

  .site-sidebar-heading-label{
    display:none;
  }

  .site-sidebar-mobile-toggle{
    width:100%;
    min-height:48px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:10px;
    padding:0 14px;
    border:0;
    background:transparent;
    color:#fff0bf;
    font:inherit;
    text-align:left;
    cursor:pointer;
  }

  .site-sidebar-mobile-toggle::before{
    content:"";
    width:14px;
    height:14px;
    border-radius:3px;
    background:radial-gradient(circle at 35% 30%, #f1ca55, #704916 70%);
    box-shadow:0 0 10px rgba(226,185,78,0.24);
  }

  .site-sidebar-mobile-toggle::after{
    content:"";
    width:8px;
    height:8px;
    border-right:2px solid #edc45f;
    border-bottom:2px solid #edc45f;
    transform:rotate(45deg);
    transition:transform 0.16s ease;
  }

  .site-sidebar-mobile-toggle[aria-expanded="true"]::after{
    transform:rotate(225deg);
  }

  .site-sidebar-mobile-toggle span{
    font-size:0.86rem;
    font-weight:900;
    text-transform:uppercase;
  }

  .site-sidebar-mobile-toggle small{
    justify-self:end;
    color:#d6c28d;
    font-family:Arial, sans-serif;
    font-size:0.72rem;
    font-weight:750;
    text-transform:none;
  }

  .site-sidebar-mobile-toggle:focus-visible{
    outline:2px solid #edc45f;
    outline-offset:-4px;
  }

  .site-sidebar-pages .site-sidebar-nav[hidden]{
    display:none !important;
  }
}

/* SHOP MARKET FILTER NAV - moved above products */
body.shop-page .shop-market-nav{
  margin:14px 0 20px;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  align-items:center;
  gap:14px;
  padding:10px 12px;
  border:1px solid rgba(212,153,54,0.38);
  border-radius:4px;
  background:
    linear-gradient(180deg, rgba(32,19,9,0.74), rgba(6,5,4,0.68)),
    rgba(5,4,3,0.66);
  box-shadow:
    inset 0 0 0 1px rgba(255,216,121,0.06),
    0 18px 36px rgba(0,0,0,0.22);
}

body.shop-page .shop-market-nav h2{
  margin:0;
  padding:0 14px 0 2px;
  border:0;
  color:#f0c36a;
  font-family:Georgia, "Times New Roman", serif;
  font-size:1rem;
  letter-spacing:0.04em;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
}

body.shop-page .shop-market-nav .shop-filter-list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:0;
}

body.shop-page .shop-market-nav .shop-filter-btn{
  min-height:34px;
  flex:0 0 auto;
  justify-content:center;
  padding:0 14px;
  border:1px solid rgba(212,153,54,0.24);
  border-radius:5px;
  background:linear-gradient(180deg, rgba(24,15,7,0.72), rgba(5,5,4,0.62));
  box-shadow:inset 0 0 0 1px rgba(255,216,121,0.03);
  text-align:center;
}

body.shop-page .shop-market-nav .shop-filter-btn::before{
  width:10px;
  height:10px;
  flex-basis:10px;
}

body.shop-page .shop-market-nav .shop-filter-btn:hover,
body.shop-page .shop-market-nav .shop-filter-btn:focus-visible{
  border-color:rgba(231,179,67,0.52);
}

body.shop-page .shop-market-nav .shop-filter-btn.is-active,
body.shop-page .shop-market-nav .shop-filter-btn[aria-pressed="true"]{
  border-color:rgba(231,179,67,0.62);
  background:linear-gradient(180deg, rgba(180,122,36,0.82), rgba(96,61,20,0.84));
}

@media (max-width:920px){
  body.shop-page .shop-market-nav{
    grid-template-columns:1fr;
    align-items:stretch;
    margin:14px 0 18px;
  }

  body.shop-page .shop-market-nav h2{
    padding:0 0 2px;
  }

  body.shop-page .shop-market-nav .shop-filter-list{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    padding:0;
  }

  body.shop-page .shop-market-nav .shop-filter-btn{
    width:100%;
    min-height:38px;
  }
}

@media (max-width:560px){
  body.shop-page .shop-market-nav .shop-filter-list{
    grid-template-columns:1fr;
  }
}

/* RESPONSIVE OVERVIEW PASS - tablet and phone */
@media (min-width:761px) and (max-width:920px){
  body.shop-page .shop-game-shell{
    display:grid;
    grid-template-columns:220px minmax(0, 1fr);
    min-height:calc(100vh - 72px);
    background:
      linear-gradient(90deg, rgba(0,0,0,0.74) 0 220px, rgba(0,0,0,0.12) 220px),
      radial-gradient(680px 300px at 55% 8%, rgba(227,185,77,0.12), transparent 70%);
  }

  body.shop-page .shop-merchant-panel{
    padding:16px 14px;
    border-right:1px solid var(--shop-line);
    border-bottom:0;
  }

  body.shop-page .shop-merchant-brand{
    display:grid;
    min-height:112px;
  }

  body.shop-page .shop-merchant-brand img{
    width:min(150px, 78%);
    max-height:78px;
  }

  body.shop-page .shop-inventory-panel{
    padding:22px 16px 26px;
  }

  body.shop-page .shop-inventory-header{
    gap:14px;
    margin-bottom:12px;
  }

  body.shop-page .shop-product-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
  }

  body.shop-page .shop-market-nav{
    grid-template-columns:1fr;
    gap:8px;
    margin:10px 0 14px;
  }

  body.shop-page .shop-market-nav .shop-filter-list{
    display:flex;
    flex-wrap:wrap;
    padding:0;
  }

  body.shop-page .shop-market-nav .shop-filter-btn{
    width:auto;
    min-width:max-content;
  }
}

@media (max-width:760px){
  body.home-page{
    --hub-width:100vw;
    --hub-sidebar-width:0px;
  }

  body.home-page .home-game-sidebar.home-merchant-panel,
  body.shop-page .shop-merchant-panel{
    display:block !important;
  }

  body.home-page .site-header,
  body.home-page main#main{
    width:100% !important;
    max-width:100% !important;
  }

  body.home-page main#main{
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto !important;
  }

  body.home-page main#main::before{
    background:
      radial-gradient(640px 340px at 50% 10%, rgba(226,187,88,0.14), transparent 70%),
      linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.40)) !important;
  }

  body.home-page main#main > section,
  body.home-page main#main > .section,
  body.home-page #home-shell,
  body.home-page #home-shell .container,
  body.home-page #home-shell #home-featured-wrap{
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:none !important;
  }

  body.home-page #home-shell.hero{
    min-height:auto;
    padding-top:16px;
    padding-bottom:18px;
  }

  body.home-page #home-shell .hero-grid{
    width:100%;
    gap:14px;
  }

  body.home-page #home-shell .hero-grid > .home-hero-card{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    min-height:min(520px, calc(100vh - 128px)) !important;
    padding:clamp(54px, 9vh, 86px) clamp(18px, 5vw, 30px) clamp(36px, 6vh, 58px) !important;
  }

  body.home-page .home-showcase{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
  }

  body.shop-page .shop-game-shell{
    display:block;
    min-height:0;
  }

  body.shop-page .shop-inventory-panel{
    padding:18px 12px 22px;
  }

  body.shop-page .shop-inventory-header{
    gap:12px;
    margin-bottom:10px;
  }

  body.shop-page .shop-inventory-header h1{
    font-size:clamp(2.1rem, 13vw, 3.4rem);
  }

  body.shop-page .shop-controls{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }

  body.shop-page .shop-status{
    margin:8px 0 0;
  }

  body.shop-page .shop-market-nav{
    grid-template-columns:1fr;
    gap:8px;
    margin:10px 0 14px;
    padding:10px;
  }

  body.shop-page .shop-market-nav h2{
    padding:0;
    font-size:0.88rem;
  }

  body.shop-page .shop-market-nav .shop-filter-list{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
    overflow:visible;
    padding:0;
  }

  body.shop-page .shop-market-nav .shop-filter-btn{
    width:100%;
    min-width:0;
    min-height:34px;
    padding:0 12px;
    font-size:0.72rem;
  }

  body.shop-page .shop-product-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
  }

  body.shop-page .product-card{
    min-height:auto;
  }

  body.shop-page .product-card__media{
    min-height:132px;
    aspect-ratio:3 / 4;
    margin:8px 8px 0;
  }

  body.shop-page .product-card__body{
    gap:6px;
    padding:10px 8px;
  }

  body.shop-page .product-card__title{
    min-height:0;
    font-size:0.82rem;
  }

  body.shop-page .product-card__kicker,
  body.shop-page .product-card__format{
    font-size:0.62rem;
  }

  body.shop-page .product-card__actions{
    grid-template-columns:1fr;
    gap:6px;
  }

  body.shop-page .product-card__actions .btn{
    min-height:32px;
    font-size:0.64rem;
  }

  body.shop-page .shop-trust-strip{
    margin-top:14px;
  }
}
